/*
Theme Name: Eco DataPlace
Theme URI: https://www.ecodataplace.com
Author: Endurance Kwamu
Author URI: https://www.ecodataplace.com
Description: Economic data hub theme for Eco DataPlace: indicator board, market ticker, exchange rate board and converter, stock market, money markets, investment, budget, tax and industry pages, country profiles, open datasets with CSV and Excel downloads, Mailchimp newsletter and a contact form. All figures are editable under Appearance → Eco DataPlace.
Version: 1.13.1
Requires at least: 6.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ecodataplace
*/

/* IBM Plex Sans (IBM, SIL Open Font Licence), self-hosted: the typeface of ecodatatechnologies.com. */
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-ext-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-ext-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-ext-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-latin-ext-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  /* Institutional light palette: white ground, navy ink, one green accent, gold and coral only for data states. */
  --ink:#0f1b2d; --paper:#ffffff; --soft:#f4f6f9; --card:#ffffff; --line:#e2e6eb; --muted:#5a6676;
  --indigo:#12305f; --indigo-2:#1f4f9a; --night:#0b1a33;
  --green:#0a7d52; --marigold:#f5b400; --coral:#e4312b; --yellow:#f5b400; --red:#e4312b; --teal:#369494; --deep:#1c4e63; --charcoal:#3b3b3b; --gray:#8d9ba3; --gray-l:#d5dbdf; --on-dark:#f3f6ff;
  --r:10px;
  --f-display:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-ui:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-mono:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  color-scheme:light;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.6}
img{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--marigold);outline-offset:2px;border-radius:6px}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--f-display);text-wrap:balance;line-height:1.08;margin:0}
p{margin:0}
.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-weight:600}
.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;font:600 15px/1 var(--f-body);padding:14px 20px;border-radius:999px;text-decoration:none;transition:transform .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn:disabled{opacity:.6;cursor:wait;transform:none}
.btn-gold{background:var(--marigold);color:#1b1404}
.btn-ghost{background:transparent;color:var(--on-dark);box-shadow:inset 0 0 0 1.5px rgba(243,246,255,.45)}
.btn-ink{background:var(--indigo-2);color:#fff}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* header */
header.top{position:sticky;top:0;z-index:20;background:var(--indigo);color:var(--on-dark)}
.nav{display:flex;align-items:center;gap:20px;padding-block:12px;position:relative}
.brand{display:flex;align-items:center;text-decoration:none}
.logo{display:block;height:36px;width:auto}
.links{display:flex;gap:2px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.links a{text-decoration:none;font-size:14px;font-weight:500;padding:8px 10px;border-radius:8px;opacity:.88}
.links a:hover,.links a[aria-current="page"]{background:rgba(255,255,255,.1);opacity:1}
.links .donate{background:var(--marigold);color:#1b1404;opacity:1;font-weight:600}
.menu-btn{display:none;margin-left:auto;background:none;border:1.5px solid rgba(255,255,255,.35);color:var(--on-dark);border-radius:10px;padding:8px 12px;font:600 14px var(--f-body);cursor:pointer}
@media (max-width:1140px){
  .menu-btn{display:block}
  .links{display:none;position:absolute;left:0;right:0;top:100%;background:var(--indigo);flex-direction:column;padding:8px 16px 16px}
  .links.open{display:flex}
  .links a{padding:12px 10px}
}

/* ticker */
.ticker{background:var(--night);color:var(--on-dark);font-family:var(--f-mono);font-size:13px;overflow:hidden;border-top:1px solid rgba(255,255,255,.08)}
.ticker-track{display:flex;gap:40px;width:max-content;padding-block:9px;animation:scroll 60s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker span{display:inline-flex;gap:8px;align-items:baseline;white-space:nowrap}
.ticker b{color:#fff;font-weight:600}
.ticker em{font-style:normal;font-size:12px}
.ticker .u{color:#6ff0b9}.ticker .d{color:#ff9a85}.ticker .n{color:#ffd27a}
.ticker .grp{color:#f7b733;font-weight:600;letter-spacing:.1em;font-size:11px}
@keyframes scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}

/* hero */
.hero{position:relative;background:var(--indigo);color:var(--on-dark);overflow:hidden}
.adire{position:absolute;inset:0;width:100%;height:100%;opacity:.2;pointer-events:none}
.hero-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;padding-block:72px 80px;align-items:center}
.hero h1{font-size:clamp(38px,5.8vw,70px);font-weight:700;letter-spacing:-.035em;margin-top:14px}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,#f7b733,#ffcf6b);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{font-size:clamp(17px,1.6vw,20px);max-width:34em;opacity:.9;margin:22px 0 30px}
.hero .eyebrow{color:#f7b733}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.trust{display:flex;gap:28px;flex-wrap:wrap;margin-top:36px;font-size:14px;opacity:.85}
.trust strong{display:block;font-family:var(--f-display);font-size:26px;color:#fff}
@media (max-width:900px){.hero-inner{grid-template-columns:1fr;padding-block:48px 56px}}

/* page hero (section pages) */
.phero{position:relative;background:var(--indigo);color:var(--on-dark);overflow:hidden}
.phero .wrap{position:relative;padding-block:56px 60px}
.phero h1{font-size:clamp(34px,5vw,58px);font-weight:700;letter-spacing:-.03em;margin-top:12px;max-width:16em}
.phero p{max-width:40em;opacity:.88;margin-top:16px;font-size:18px}
.phero .eyebrow{color:#f7b733}
.crumbs{font-family:var(--f-mono);font-size:12px;opacity:.7}
.crumbs a{text-decoration:none}

/* indicator board */
.board{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:22px;min-width:0}
.board-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}
.board-head h2{font-size:18px;font-weight:700}
.board-head small{font-family:var(--f-mono);font-size:11px;opacity:.7}
.ind{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}
.ind:first-of-type{border-top:0}
.ind .k{font-size:14px;opacity:.85}
.ind .v{font-family:var(--f-mono);font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}
.ind .meta{font-size:12px;opacity:.6;font-family:var(--f-mono)}
.chip{justify-self:end;font-family:var(--f-mono);font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}
.chip.good{background:rgba(47,197,138,.18);color:#6ff0b9}
.chip.warn{background:rgba(247,183,51,.2);color:#ffd27a}
.chip.flat{background:rgba(255,255,255,.12);color:#dfe6ff}
.meter{grid-column:1/-1;height:6px;background:rgba(255,255,255,.1);border-radius:6px;margin-top:8px;overflow:hidden}
.meter i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#2fc58a,#f7b733)}

/* sections */
.band{padding-block:80px}
.band.tight{padding-top:0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.sec-head h2{font-size:clamp(28px,3.8vw,46px);font-weight:700;letter-spacing:-.025em;max-width:16em;margin-top:8px}
.sec-head p{max-width:30em;color:var(--muted)}
.dark{background:var(--indigo);color:var(--on-dark);position:relative;overflow:hidden}
.dark .sec-head p{color:rgba(243,246,255,.75)}
.dark .eyebrow{color:#f7b733}

/* stat grid */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;min-width:0}
.stat b{display:block;font-family:var(--f-display);font-size:34px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--accent,var(--ink))}
.stat .l{display:block;margin-top:6px;font-weight:600}
.stat .n{display:block;margin-top:4px;font-size:14px;color:var(--muted)}
.stat .s{display:block;margin-top:10px;font-family:var(--f-mono);font-size:11px;color:var(--muted);letter-spacing:.04em}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;min-width:0;text-decoration:none;display:flex;flex-direction:column;gap:10px}
a.card{transition:transform .15s ease,box-shadow .15s ease}
a.card:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(16,35,58,.45)}
.card h3{font-size:21px;font-weight:700}
.card p{color:var(--muted);font-size:15px}
.card .dot{width:12px;height:12px;border-radius:4px}
.card .more{margin-top:auto;font-weight:600;font-size:14px;color:var(--green)}

/* section tiles on home */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tile{position:relative;overflow:hidden;border-radius:18px;padding:26px;min-height:210px;display:flex;flex-direction:column;gap:10px;text-decoration:none;background:var(--card);border:1px solid var(--line);transition:transform .15s ease}
.tile:hover{transform:translateY(-2px)}
.tile::after{content:"";position:absolute;right:-50px;top:-50px;width:160px;height:160px;border-radius:50%;background:var(--accent);opacity:.14}
.tile h3{font-size:24px;font-weight:700}
.tile p{color:var(--muted);font-size:15px;max-width:26em}
.tile .fig{margin-top:auto;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.tile .fig b{font-family:var(--f-display);font-size:28px;color:var(--accent)}
.tile .fig span{font-size:13px;color:var(--muted)}
@media (max-width:900px){.tiles{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tiles{grid-template-columns:1fr}}

/* audiences */
.aud{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.aud article{padding:28px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.aud h3{font-size:22px;margin:14px 0 8px}
.aud p{color:var(--muted)}
.ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center}
@media (max-width:820px){.aud{grid-template-columns:1fr}}

/* phases */
.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.phase{border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:22px;background:rgba(255,255,255,.04);min-width:0}
.phase.live{background:linear-gradient(160deg,rgba(11,138,90,.45),rgba(255,255,255,.04));border-color:rgba(111,240,185,.5)}
.phase .st{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}
.phase .st i{width:8px;height:8px;border-radius:50%;background:#f7b733}
.phase.live .st i{background:#6ff0b9;box-shadow:0 0 0 4px rgba(111,240,185,.2)}
.phase h3{font-size:22px;margin:12px 0 10px}
.phase ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.phase li{font-size:13px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.1)}
@media (max-width:980px){.phases{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.phases{grid-template-columns:1fr}}

/* inline forms */
.req{margin-top:28px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.req label{font-weight:600}
.req select,.req input{font:500 15px var(--f-body);padding:12px 14px;border-radius:999px;border:0;background:#fff;color:#10233a;min-width:0}
.note{font-size:14px;min-height:1.4em;width:100%}
.note.ok{color:#6ff0b9}.note.err{color:#ffb4a6}
.light .note.ok{color:var(--green)}.light .note.err{color:var(--coral)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* briefs */
.briefs{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}
.brief{border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:12px;min-height:230px;text-decoration:none;border:1px solid var(--line);background:var(--card)}
.brief.feature{background:var(--marigold);color:#1b1404;border-color:transparent}
.brief .tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.brief h3{font-size:22px;font-weight:700}
.brief.feature h3{font-size:clamp(24px,2.8vw,34px)}
.brief p{opacity:.85;font-size:15px}
.brief .foot{margin-top:auto;font-family:var(--f-mono);font-size:12px;opacity:.7}
@media (max-width:900px){.briefs{grid-template-columns:1fr}}

/* newsletter */
.news{background:var(--green);color:#fff;border-radius:24px;padding:48px;display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:center}
.news h2{font-size:clamp(28px,3.4vw,42px);font-weight:700;letter-spacing:-.02em}
.news p{opacity:.9;margin-top:10px}
.news form{display:flex;gap:10px;flex-wrap:wrap;position:relative}
.news input[type=email],.news input[type=text]{flex:1 1 200px;min-width:0;font:500 16px var(--f-body);padding:14px 18px;border-radius:999px;border:0;color:#10233a;background:#fff}
.news .note.ok{color:#fff}.news .note.err{color:#ffe1d9}
.news label.eyebrow{color:#fff;width:100%}
@media (max-width:820px){.news{grid-template-columns:1fr;padding:28px}}

/* rate board */
.rates-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:start}
.rb{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;min-width:0}
.rb-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}
.rb-head h3{font-size:20px}
.rb-head small{font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.rt-wrap{overflow-x:auto}
.rt{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;min-width:520px}
.rt th{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:right;padding:12px 24px;font-weight:600;white-space:nowrap}
.rt th:first-child,.rt td:first-child{text-align:left}
.rt td{padding:16px 24px;border-top:1px solid var(--line);text-align:right;font-family:var(--f-mono);font-size:16px}
.rt td:first-child{font-family:var(--f-body);font-size:15px}
.rt .cur{display:flex;align-items:center;gap:10px;font-weight:600}
.rt .cc{font-family:var(--f-mono);font-size:11px;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:3px 6px}
.rt .sub{display:block;font-size:12px;color:var(--muted);font-weight:400}
.rt .na{color:var(--muted)}
.tag-ind{font-family:var(--f-mono);font-size:10px;color:var(--muted);border:1px dashed var(--line);border-radius:4px;padding:1px 5px;margin-left:6px}
.gap{padding:22px 24px;border-top:1px solid var(--line);display:grid;gap:12px}
.gap-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}
.gap-row b{font-family:var(--f-display);font-size:28px;color:var(--coral);font-variant-numeric:tabular-nums}
.gap-bar{position:relative;height:12px;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--marigold),var(--coral))}
.gap-bar i{position:absolute;top:-5px;width:4px;height:22px;border-radius:2px;background:var(--ink)}
.gap-scale{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.mini{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.mini div{padding:18px 24px;border-left:1px solid var(--line);min-width:0}
.mini div:first-child{border-left:0}
.mini b{display:block;font-family:var(--f-mono);font-size:20px;font-variant-numeric:tabular-nums}
.mini span{font-size:13px;color:var(--muted)}
@media (max-width:560px){.mini{grid-template-columns:1fr}.mini div{border-left:0;border-top:1px solid var(--line)}.mini div:first-child{border-top:0}}
@media (max-width:900px){.rates-grid{grid-template-columns:1fr}}

/* converter */
.conv{background:var(--indigo);color:var(--on-dark);border-radius:20px;padding:26px;min-width:0}
.conv h3{font-size:22px}
.conv .s{margin:6px 0 18px;font-size:14px;opacity:.75}
.seg{display:inline-flex;background:rgba(255,255,255,.08);border-radius:999px;padding:4px;margin-bottom:18px}
.seg button{all:unset;cursor:pointer;padding:8px 16px;border-radius:999px;font-weight:600;font-size:14px}
.seg button[aria-pressed="true"]{background:var(--marigold);color:#1b1404}
.seg button:focus-visible{outline:3px solid var(--marigold);outline-offset:2px}
.field{display:grid;grid-template-columns:1fr 112px;gap:8px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:10px 10px 10px 16px;align-items:center}
.field label{grid-column:1/-1;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.field input,.field output{all:unset;font-family:var(--f-mono);font-size:26px;font-weight:600;font-variant-numeric:tabular-nums;min-width:0;overflow:hidden;text-overflow:ellipsis}
.field select{font:600 15px var(--f-body);background:#fff;color:#10233a;border:0;border-radius:10px;padding:10px}
.swap{display:flex;justify-content:center;margin:-6px 0}
.swap button{all:unset;cursor:pointer;width:40px;height:40px;border-radius:50%;background:var(--marigold);color:#1b1404;display:grid;place-items:center;position:relative;z-index:1;box-shadow:0 0 0 5px var(--indigo)}
.swap button:focus-visible{outline:3px solid #fff}
.used{margin-top:16px;font-family:var(--f-mono);font-size:12px;opacity:.8;line-height:1.7}
.used .warn{color:#ffd27a}
.disclaim{font-size:13px;color:var(--muted);margin-top:18px;max-width:70em}

/* budget bar */
.stack{display:flex;height:56px;border-radius:14px;overflow:hidden;margin:8px 0 18px}
.stack div{height:100%}
.legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.legend div{display:flex;gap:10px;align-items:flex-start}
.legend i{width:14px;height:14px;border-radius:4px;margin-top:4px;flex:none}
.legend b{display:block;font-family:var(--f-mono);font-size:18px;font-variant-numeric:tabular-nums}
.legend span{font-size:14px;color:var(--muted)}

/* checker */
.checker{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;display:grid;gap:16px;max-width:760px}
.checker .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.checker label{display:grid;gap:6px;font-weight:600;font-size:14px}
.checker input[type=text]{font:500 17px var(--f-mono);padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.checker .cb{display:flex;gap:10px;align-items:center;font-weight:500}
.verdict{border-radius:12px;padding:16px 18px;font-weight:600}
.verdict.yes{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}
.verdict.no{background:color-mix(in srgb,var(--coral) 14%,transparent);color:var(--coral)}
.verdict small{display:block;font-weight:400;color:var(--muted);margin-top:4px}

/* sources */
.sources{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.sources ul{margin:8px 0 0;padding-left:18px;display:grid;gap:4px}
.sources a{color:var(--ink)}

/* prose */
.prose{max-width:68ch;display:grid;gap:16px;font-size:17px}
.prose h2{font-size:28px;margin-top:16px}

/* country list */
.clist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.citem{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-radius:12px;background:var(--card);border:1px solid var(--line);text-decoration:none}
.citem .nm{font-weight:600}
.citem .rg{display:block;font-size:13px;color:var(--muted)}
.pill{font-family:var(--f-mono);font-size:11px;padding:3px 9px;border-radius:999px;font-weight:600;white-space:nowrap}
.pill.live{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}
.pill.next{background:color-mix(in srgb,var(--marigold) 22%,transparent);color:color-mix(in srgb,var(--marigold) 70%,var(--ink))}
.pill.planned{background:color-mix(in srgb,var(--muted) 16%,transparent);color:var(--muted)}

/* support + footer */
.support{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;border-top:1px solid var(--line);padding-top:40px;margin-top:64px}
.support h3{font-size:26px}
.support p{color:var(--muted);margin-top:6px;max-width:40em}
@media (max-width:700px){.support{grid-template-columns:1fr}}
footer.site{background:var(--night);color:#c9d4ec;padding-block:48px;font-size:14px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
footer.site h4{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#f7b733;margin:0 0 12px}
footer.site ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer.site a{text-decoration:none}
footer.site a:hover{color:#fff}
.legal{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;opacity:.8}
@media (max-width:820px){.fgrid{grid-template-columns:1fr 1fr}}


/* ---------- WordPress additions ---------- */
.admin-bar header.top{top:32px}
@media (max-width:782px){.admin-bar header.top{top:0}}
.custom-logo{display:block;height:22px;width:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{position:fixed;left:12px;top:12px;z-index:100;background:#fff;color:#10233a;padding:10px 14px;border-radius:8px;clip:auto;width:auto;height:auto}
.links ul{display:contents;list-style:none;margin:0;padding:0}
.links li{display:contents}
.links .current-menu-item>a,.links .current_page_item>a{background:rgba(255,255,255,.1);opacity:1}
.links .sub-menu{display:none}
.entry-content{max-width:72ch;font-size:17px;display:grid;gap:16px}
.entry-content>*{margin:0}
.entry-content h2{font-size:30px;margin-top:20px}
.entry-content h3{font-size:22px;margin-top:12px}
.entry-content a{color:var(--green)}
.entry-content ul,.entry-content ol{padding-left:22px;display:grid;gap:6px}
.entry-content blockquote{border-left:4px solid var(--marigold);padding:4px 0 4px 18px;color:var(--muted)}
.entry-content img{height:auto;border-radius:12px}
.entry-content table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}
.entry-content td,.entry-content th{border:1px solid var(--line);padding:8px 12px}
.entry-content .wp-block-button__link{background:var(--marigold);color:#1b1404;border-radius:999px;padding:12px 20px;text-decoration:none;font-weight:600}
.alignwide{max-width:100%}
.aligncenter{margin-inline:auto}
.wp-caption-text,.wp-element-caption{font-size:13px;color:var(--muted)}
.post-meta{font-family:var(--f-mono);font-size:12px;opacity:.8;margin-top:14px}
.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:40px}
.pagination .page-numbers{padding:8px 14px;border-radius:10px;border:1px solid var(--line);text-decoration:none;background:var(--card)}
.pagination .current{background:var(--indigo-2);color:#fff;border-color:transparent}
.content-block{margin-top:48px}
.content-block:first-child{margin-top:0}
.stat b{color:var(--accent,var(--ink))}
.links li.donate>a{background:var(--marigold);color:#1b1404;opacity:1;font-weight:600}

/* ---------- v1.2: search, numbers, open data, infographics, switcher, announcement ---------- */
.sbox{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 18px;max-width:640px;color:var(--muted)}
.sbox input{flex:1;min-width:0;border:0;background:transparent;font:500 16px var(--f-body);color:var(--ink);padding:10px 0;outline:none}
.sbox:focus-within{outline:3px solid var(--marigold);outline-offset:2px}
.sbox .btn{padding:12px 18px}
.sbox-dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:rgba(243,246,255,.7);margin-top:4px}
.sbox-dark input{color:#fff}
.sbox-dark input::placeholder{color:rgba(243,246,255,.6)}
.numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden}
.numbers a{display:flex;flex-direction:column;gap:4px;padding:22px 24px;text-decoration:none;border-left:1px solid var(--line)}
.numbers a:first-child{border-left:0}
.numbers a:hover{background:color-mix(in srgb,var(--green) 6%,transparent)}
.numbers b{font-family:var(--f-display);font-size:40px;font-weight:700;letter-spacing:-.03em;color:var(--green);line-height:1}
.numbers span{font-size:14px;color:var(--muted)}
@media (max-width:640px){.numbers a{border-left:0;border-top:1px solid var(--line)}.numbers a:first-child{border-top:0}}
.odata{display:grid;grid-template-columns:2fr 1fr;gap:20px;align-items:start}
.odata.no-info{grid-template-columns:1fr}
.odata-sets{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.odata-info{display:grid;gap:10px}
.more-link{font-weight:600;color:var(--green);text-decoration:none}
@media (max-width:900px){.odata{grid-template-columns:1fr}}
.dcard .dmeta{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap;font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.dcard .dmeta span:first-child{color:var(--green);font-weight:600}
.dtable{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.dt-tools{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--line)}
.dt-tools input{font:500 15px var(--f-body);padding:10px 14px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);min-width:0;flex:1 1 220px;max-width:360px}
.dt-tools span{font-family:var(--f-mono);font-size:12px}
.dt{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;min-width:480px}
.dt th{text-align:left;border-bottom:1px solid var(--line);background:var(--paper)}
.dt th button{all:unset;cursor:pointer;display:block;width:100%;padding:12px 18px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;white-space:nowrap}
.dt th button:focus-visible{outline:3px solid var(--marigold);outline-offset:-3px}
.dt th[aria-sort] button{color:var(--ink)}
.dt td{padding:13px 18px;border-top:1px solid var(--line);font-size:15px}
.dt td.num{font-family:var(--f-mono);text-align:right;white-space:nowrap}
.dt tbody tr:hover{background:color-mix(in srgb,var(--green) 5%,transparent)}
.btn-ghost-dark{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.igrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.icard{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--card);border:1px solid var(--line);text-decoration:none;transition:transform .15s ease}
.icard:hover{transform:translateY(-2px)}
.ithumb{display:block;aspect-ratio:4/3;background:var(--paper);overflow:hidden;max-width:100%}
.ithumb img{width:100%;height:100%;object-fit:cover;display:block}
.iph{display:grid;place-items:center;height:100%;color:var(--muted);font-size:14px}
.ibody{display:grid;gap:6px;padding:16px 18px}
.ibody strong{font-family:var(--f-display);font-size:18px;line-height:1.25}
.info-full{margin:0}
.info-full img{width:100%;height:auto;border-radius:16px;border:1px solid var(--line)}
.report-dl{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 22px;border-radius:14px;background:color-mix(in srgb,var(--marigold) 14%,var(--card));border:1px solid var(--line);margin-bottom:32px}
.report-dl div{display:grid}
.cswitch{position:relative;margin-left:14px}
.cswitch summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;padding:7px 12px;border-radius:999px;border:1.5px solid rgba(255,255,255,.25);white-space:nowrap}
.cswitch summary::-webkit-details-marker{display:none}
.cswitch[open] summary{background:rgba(255,255,255,.1)}
.cdot{width:8px;height:8px;border-radius:50%;background:#6ff0b9;box-shadow:0 0 0 3px rgba(111,240,185,.2)}
.cmenu{position:absolute;top:calc(100% + 8px);left:0;z-index:30;min-width:230px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 20px 40px -20px rgba(0,0,0,.5);display:grid;max-height:70vh;overflow:auto}
.cmenu a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;text-decoration:none;font-size:14px}
.cmenu a:hover{background:var(--paper)}
@media (max-width:560px){.cswitch{margin-left:auto}.cswitch+.menu-btn{margin-left:8px}.cmenu{left:auto;right:0}}
.announce{background:var(--marigold);color:#1b1404;font-size:14px}
.announce .wrap{display:flex;align-items:center;gap:14px;padding-block:9px}
.announce span{flex:1;min-width:0;font-weight:500}
.announce a{font-weight:700;white-space:nowrap}
.announce button{all:unset;cursor:pointer;font-size:20px;line-height:1;padding:0 4px}
.announce button:focus-visible{outline:2px solid #1b1404}
[hidden]{display:none!important}
@media (min-width:1141px){.links a{padding:8px 7px;font-size:13.5px;white-space:nowrap}.cswitch{margin-left:8px}}

/* ---------- v1.3: live markets ---------- */
.live-band{background:var(--paper);padding-top:28px}
.live{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 18px;display:grid;gap:12px}
.live-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.live-title{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--coral)}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--coral);animation:livepulse 1.8s ease-out infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--coral) 60%,transparent)}100%{box-shadow:0 0 0 9px transparent}}
@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}
.live-time{font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.live-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.live-item{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:12px 14px;border-radius:12px;background:var(--paper);min-width:0;transition:background .6s ease}
.live-item.flash-u{background:color-mix(in srgb,var(--green) 18%,var(--paper))}
.live-item.flash-d{background:color-mix(in srgb,var(--coral) 18%,var(--paper))}
.li-label{font-size:13px;color:var(--muted)}
.li-tag{justify-self:end;font-family:var(--f-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;font-weight:600;white-space:nowrap}
.li-tag.live{background:color-mix(in srgb,var(--coral) 16%,transparent);color:var(--coral)}
.li-tag.delayed{background:color-mix(in srgb,var(--muted) 16%,transparent);color:var(--muted)}
.li-val{font-family:var(--f-mono);font-size:20px;font-variant-numeric:tabular-nums}
.li-chg{justify-self:end;align-self:center;font-family:var(--f-mono);font-size:12px;font-weight:600}
.li-chg.u{color:var(--green)}.li-chg.d{color:var(--coral)}.li-chg.n{color:var(--muted)}
.live-item .li-label{grid-column:1}.live-item .li-tag{grid-column:2;grid-row:1}
.live-item .li-val{grid-column:1;grid-row:2}.live-item .li-chg{grid-column:2;grid-row:2}
.live-note{font-size:12px;color:var(--muted)}
.li-tag.closed{background:color-mix(in srgb,var(--muted) 16%,transparent);color:var(--muted)}

/* =====================================================================
   v1.4 Institutional skin: white, calm and credible
   ===================================================================== */
body{background:#fff}
:focus-visible{outline-color:var(--indigo-2)}
h1,h2,h3{font-weight:600;letter-spacing:-.01em}
.btn{border-radius:8px;font-family:var(--f-ui)}
.btn-gold{background:var(--indigo);color:#fff}
.btn-gold:hover{background:var(--indigo-2)}
.btn-ink{background:var(--indigo)}
.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--indigo-2)}
.eyebrow{color:var(--green)}

/* header */
header.top{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
.links a{opacity:1;color:var(--ink);font-family:var(--f-ui)}
.links a:hover,.links a[aria-current="page"],.links .current-menu-item>a,.links .current_page_item>a{background:var(--soft);opacity:1;color:var(--indigo-2)}
.links .donate,.links li.donate>a{background:var(--indigo);color:#fff!important;border-radius:8px}
.links li.donate>a:hover{background:var(--indigo-2)}
.menu-btn{border-color:var(--line);color:var(--ink)}
@media (max-width:1140px){.links{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px -24px rgba(15,27,45,.4)}}
.cswitch summary{border-color:var(--line);color:var(--ink)}
.cswitch[open] summary{background:var(--soft)}
.cdot{background:var(--green);box-shadow:0 0 0 3px #e3f2eb}
.announce{background:var(--indigo);color:#fff}
.announce a{color:#fff}
.announce button{color:#fff}
.announce button:focus-visible{outline-color:#fff}

/* ticker */
.ticker{background:var(--soft);color:var(--ink);border-top:1px solid var(--line)}
.ticker b{color:var(--ink)}
.ticker .u{color:var(--green)}.ticker .d{color:var(--coral)}.ticker .n{color:var(--muted)}
.ticker .grp{color:var(--indigo-2)}

/* hero */
.hero{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
.hero .adire,.phero .adire,.dark .adire{display:none}
.hero-inner{padding-block:72px 76px}
.hero .eyebrow{color:var(--green)}
.hero h1{font-size:clamp(38px,5.2vw,64px);font-weight:600;letter-spacing:-.025em;line-height:1.04}
.hero h1 em{background:none;-webkit-text-fill-color:currentColor;color:var(--indigo-2);font-style:normal;font-weight:inherit}
.hero .lead{color:var(--muted);opacity:1;font-size:clamp(17px,1.5vw,19px)}
.trust{opacity:1;color:var(--muted)}
.trust strong{color:var(--ink);font-family:var(--f-display)}
.sbox-dark{background:#fff;border-color:var(--line);color:var(--muted)}
.sbox-dark input{color:var(--ink)}
.sbox-dark input::placeholder{color:var(--muted)}
.sbox{border-radius:10px}
.sbox .btn{border-radius:7px}

/* indicator board */
.board{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 1px 2px rgba(15,27,45,.04),0 18px 40px -26px rgba(15,27,45,.35);border-radius:14px}
.board-head h2{font-family:var(--f-display)}
.board-head small,.ind .k,.ind .meta{opacity:1;color:var(--muted)}
.ind{border-top-color:var(--line)}
.chip.good{background:#e3f2eb;color:var(--green)}
.chip.warn{background:#fbf0d9;color:#8a5a00}
.chip.flat{background:var(--soft);color:var(--muted)}
.meter{background:var(--soft)}
.meter i{background:var(--indigo-2)}

/* page banner */
.phero{background:var(--soft);color:var(--ink);border-bottom:1px solid var(--line)}
.phero .wrap{padding-block:52px 56px}
.phero h1{font-weight:600;letter-spacing:-.02em}
.phero p{opacity:1;color:var(--muted)}
.phero .eyebrow{color:var(--green)}
.crumbs{opacity:1;color:var(--muted)}
.crumbs a:hover{color:var(--indigo-2)}
.post-meta{opacity:1;color:var(--muted)}

/* sections */
.sec-head h2{font-weight:600;letter-spacing:-.02em}
.dark{background:var(--soft);color:var(--ink);border-block:1px solid var(--line)}
.dark .sec-head p{color:var(--muted)}
.dark .eyebrow{color:var(--green)}
.phase{border-color:var(--line);background:#fff}
.phase li{background:var(--soft)}
.phase.live{background:#fff;border-color:var(--line);box-shadow:inset 0 3px 0 var(--green)}
.phase .st i{background:var(--marigold)}
.phase.live .st i{background:var(--green);box-shadow:0 0 0 4px #e3f2eb}
.req select,.req input{border:1px solid var(--line)}
.note.ok,.light .note.ok{color:var(--green)}.note.err,.light .note.err{color:var(--coral)}
.tile{border-top:3px solid var(--accent);border-radius:10px}
.tile::after{display:none}
.tile h3{font-size:22px}
.card,.stat,.aud article,.brief{border-radius:10px}
.numbers{border-radius:12px}
.numbers b{color:var(--indigo);font-family:var(--f-display);font-weight:600}
.brief.feature{background:var(--indigo);color:#fff}
.brief.feature .tag,.brief.feature .foot{opacity:.8}
.news{background:var(--soft);color:var(--ink);border:1px solid var(--line);border-radius:14px}
.news p{opacity:1;color:var(--muted)}
.news .eyebrow{color:var(--green)!important}
.news input[type=email],.news input[type=text]{border:1px solid var(--line)}
.news .note.ok{color:var(--green)}.news .note.err{color:var(--coral)}
.conv{background:var(--indigo);border-radius:14px}
.seg button[aria-pressed="true"]{background:#fff;color:var(--indigo)}
.swap button{background:#fff;color:var(--indigo)}
.rb,.dtable,.checker,.live{border-radius:14px}
.live-band{background:#fff}
.icard,.ithumb{border-radius:10px}
footer.site{background:var(--night)}

/* new donor-facing sections */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.pillar{padding:28px 28px 8px 0}
.pillar+.pillar{padding-left:28px;border-left:1px solid var(--line)}
.pillar .num{font-family:var(--f-mono);font-size:12px;color:var(--muted);letter-spacing:.1em}
.pillar h3{font-size:24px;margin:10px 0 8px}
.pillar p{color:var(--muted)}
@media (max-width:820px){.pillars{grid-template-columns:1fr}.pillar,.pillar+.pillar{padding:22px 0;border-left:0;border-top:1px solid var(--line)}}
.commit{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.commit div{padding:22px;border:1px solid var(--line);border-radius:10px;background:#fff}
.commit b{display:flex;align-items:center;gap:8px;font-family:var(--f-display);font-size:20px;font-weight:600;margin-bottom:6px}
.commit b svg{flex:none;color:var(--green)}
.commit p{color:var(--muted);font-size:15px}
@media (max-width:980px){.commit{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.commit{grid-template-columns:1fr}}
.partners{display:flex;flex-wrap:wrap;gap:14px 36px;align-items:center}
.partners a,.partners span{display:flex;align-items:center;min-height:48px;color:var(--muted);font-weight:600;text-decoration:none}
.partners img{max-height:48px;width:auto;filter:grayscale(1);opacity:.8;transition:filter .2s,opacity .2s}
.partners a:hover img{filter:none;opacity:1}
.support-band{background:var(--indigo);color:#fff}
.support-band .wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center;padding-block:64px}
.support-band h2{font-size:clamp(28px,3.4vw,42px);font-weight:600;letter-spacing:-.02em}
.support-band p{opacity:.85;margin-top:12px;max-width:40em}
.support-band .eyebrow{color:#9fd8bf}
.support-band .cta-row{justify-content:flex-end}
.support-band .btn-gold{background:#fff;color:var(--indigo)}
.support-band .btn-ghost{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
@media (max-width:820px){.support-band .wrap{grid-template-columns:1fr}.support-band .cta-row{justify-content:flex-start}}
.legal .lic{display:block;margin-top:4px}
.brand .logo,.brand .custom-logo{height:36px}
@media (max-width:420px){.brand .logo{height:30px}}
.brand .logo,.brand .custom-logo{height:34px}
@media (min-width:1141px) and (max-width:1300px){.nav .cswitch .cname{display:none}}
@media (min-width:1301px){.wrap.nav{max-width:1280px}}
.brand .logo,.brand .custom-logo{height:30px}
@media (max-width:420px){.brand .logo{height:24px}}

/* =====================================================================
   v1.5 Data pages: charts, KPIs, tables, calculator, country explorer
   ===================================================================== */
.echart{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:grid;gap:12px;min-width:0}
.echart-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.echart-title{font-family:var(--f-display);font-size:19px;font-weight:600}
.echart-ranges{display:inline-flex;background:var(--soft);border-radius:8px;padding:3px;gap:2px}
.echart-ranges button{all:unset;cursor:pointer;font:600 13px var(--f-mono);padding:6px 10px;border-radius:6px;color:var(--muted)}
.echart-ranges button[aria-pressed="true"]{background:#fff;color:var(--indigo);box-shadow:0 1px 2px rgba(15,27,45,.12)}
.echart-ranges button:focus-visible{outline:2px solid var(--indigo-2)}
.echart-stats{display:flex;gap:28px;flex-wrap:wrap}
.echart-stats:empty{display:none}
.echart-stats div{display:grid;gap:2px}
.echart-stats span{font-size:12px;color:var(--muted)}
.echart-stats b{font-family:var(--f-mono);font-size:18px;font-variant-numeric:tabular-nums}
.echart-stats b.up,.kn.up,.pit-diff.up{color:var(--green)}
.echart-stats b.down,.kn.down,.pit-diff.down{color:var(--coral)}
.echart-canvas{position:relative;width:100%;min-width:0}
.echart-foot{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.echart-foot span{flex:1;min-width:200px}
.echart-foot a{color:var(--indigo-2);font-weight:600;text-decoration:none}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.kpi{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:#fff;display:grid;gap:4px;min-width:0}
.kpi b{font-family:var(--f-display);font-size:28px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.15}
.kpi .kl{font-weight:600;font-size:14px}
.kpi .kn{font-size:13px;color:var(--muted)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.grid2.align-c{align-items:center}
@media (max-width:860px){.grid2{grid-template-columns:1fr}}
.panel-t{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#fff;min-width:0}
.panel-t h3{font-size:18px;margin-bottom:10px}
.dt.simple{min-width:0}
.dt.simple th,.dt.simple td{padding:10px 12px}
.dt.simple thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--soft);font-weight:600}
.dt.simple td.pos{color:var(--green);font-weight:600}
.dt.simple td.neg{color:var(--coral);font-weight:600}
.dt.compare{min-width:640px}
.dt.compare tbody th{text-align:left;font-weight:600;padding:12px;border-top:1px solid var(--line);background:#fff;width:22%}
.dt.compare td{vertical-align:top;font-size:15px}
.dt tr.hl td{background:color-mix(in srgb,var(--green) 10%,#fff);font-weight:600}
.pit{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff;display:grid;gap:16px}
.pit-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:end}
.pit-in label{display:grid;gap:6px;font-weight:600;font-size:14px}
.pit-in input[type=text]{font:500 17px var(--f-mono);padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--soft);color:var(--ink)}
.pit-in .cb{display:flex;gap:10px;align-items:center;font-weight:500}
.pit-out{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px;align-items:center}
.pit-out>div:not(.pit-diff){background:var(--soft);border-radius:12px;padding:16px 18px;display:grid;gap:4px}
.pit-out b{font-family:var(--f-display);font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}
.pit-out small{color:var(--muted);font-size:13px}
.pit-diff{font-family:var(--f-display);font-size:20px;font-weight:600}
@media (max-width:760px){.pit-out{grid-template-columns:1fr}}
.cal{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cal>div{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:#fff}
.cal h3{font-size:19px;margin-bottom:10px}
.cal ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cal li{display:grid;grid-template-columns:130px 1fr;gap:12px;font-size:15px}
.cal li b{font-family:var(--f-mono);font-size:13px;color:var(--indigo-2)}
@media (max-width:760px){.cal{grid-template-columns:1fr}.cal li{grid-template-columns:1fr;gap:2px}}
.alert-cta{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:28px}
.alert-cta h2{font-size:clamp(24px,2.6vw,32px);font-weight:600;margin-top:6px}
.alert-cta p{color:var(--muted);margin-top:8px}
@media (max-width:820px){.alert-cta{grid-template-columns:1fr}}
.news-inline{display:flex;gap:10px;flex-wrap:wrap}
.news-inline input[type=email]{flex:1 1 220px;min-width:0;font:500 16px var(--f-body);padding:13px 16px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.check{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}
.check li{position:relative;padding-left:28px;font-size:15px}
.check li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;border-radius:4px;background:var(--green);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='black' stroke-width='3'/%3E%3C/svg%3E") center/80% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='black' stroke-width='3'/%3E%3C/svg%3E") center/80% no-repeat}
.cx{display:grid;gap:22px}
.cx-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.cx-title{font-size:clamp(28px,3.6vw,42px);margin-top:6px}
.cx-pick{display:grid;gap:6px;font-weight:600;font-size:14px}
.cx select,.cx input[type=search]{font:500 15px var(--f-body);padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);min-width:0;max-width:100%}
.cx-pick select{min-width:260px}
.cx-block{border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#fff;display:grid;gap:12px;min-width:0}
.cx-block h3{font-size:20px}
.cx-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cx-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.cx-note{font-size:13px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;padding:6px 11px;border-radius:999px;border:1px solid var(--line);background:#fff}
.chip-btn i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.chip-btn:focus-visible{outline:2px solid var(--indigo-2)}
@media (max-width:560px){.cx-pick select{min-width:0;width:100%}.cx-pick{width:100%}}
.cx>*,.grid2>*{min-width:0}
.cx-controls{min-width:0;max-width:100%}
.cx-controls select{flex:1 1 180px;width:auto;max-width:100%;text-overflow:ellipsis}
@media (max-width:560px){.cx-controls{width:100%}.cx-controls select,.cx-controls input{flex:1 1 100%;width:100%}}
.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.dt.compare tbody th{vertical-align:top}

/* ---------- Industries (1.6) ---------- */
.sector-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.sector-nav a{flex:0 0 auto;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:7px 14px;background:#fff;white-space:nowrap}
.sector-nav a:hover{border-color:var(--indigo-2);color:var(--indigo-2)}
.sector-nav a[aria-current="page"]{background:var(--indigo);border-color:var(--indigo);color:#fff}
.sector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.sector-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:22px 22px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;color:var(--ink);min-width:0;overflow:hidden;transition:box-shadow .2s,transform .2s}
.sector-card::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--sc,var(--indigo-2))}
.sector-card:hover{box-shadow:0 10px 30px rgba(15,27,45,.08);transform:translateY(-2px)}
.sector-card .eyebrow{color:var(--sc,var(--indigo-2))}
.sc-fig{display:flex;flex-direction:column}
.sc-fig b{font-family:var(--f-display);font-size:26px;line-height:1.1}
.sc-fig small{color:var(--muted);font-size:13px}
.sector-card .more{margin-top:auto;font-weight:600;font-size:14px;color:var(--indigo-2)}
.sub-h{margin:30px 0 12px;font-size:19px}
.cbars{display:flex;flex-direction:column;gap:10px;max-width:900px}
.cbar{display:grid;grid-template-columns:minmax(120px,240px) 1fr 76px;align-items:center;gap:12px;font-size:14px}
.cbar .cl{color:var(--ink);font-weight:500}
.cbar .ct{position:relative;height:14px;background:var(--soft);border-radius:4px;overflow:hidden}
.cbars.has-neg .cbar .ct::after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:#9aa7b8}
.cbar .ct i{display:block;height:100%;border-radius:4px}
.cbar b{font-family:var(--f-ui);font-variant-numeric:tabular-nums;font-size:13px;text-align:right}
@media (max-width:600px){.cbar{grid-template-columns:1fr 64px;gap:4px 10px}.cbar .cl{grid-column:1/-1}.cbar .ct{grid-column:1}}

/* ---------- Colour refresh (1.6.1): BudgIT-style yellow, red, teal and grey ---------- */
.eyebrow::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;background:var(--yellow);vertical-align:-1px;box-shadow:12px 0 0 var(--red);margin-right:20px}
.kpi{border:0;color:#fff;background:var(--deep);position:relative;overflow:hidden}
.kpi::after{content:"";position:absolute;right:-26px;bottom:-26px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.10)}
.kpi .kn{color:rgba(255,255,255,.85)}
.kpis .kpi:nth-child(6n+1){background:var(--yellow);color:#1b1404}
.kpis .kpi:nth-child(6n+1) .kn{color:#4a3a00}
.kpis .kpi:nth-child(6n+2){background:var(--red)}
.kpis .kpi:nth-child(6n+3){background:var(--deep)}
.kpis .kpi:nth-child(6n+4){background:var(--charcoal)}
.kpis .kpi:nth-child(6n+5){background:var(--teal)}
.kpis .kpi:nth-child(6n+6){background:#e9edf0;color:var(--ink)}
.kpis .kpi:nth-child(6n+6) .kn{color:var(--muted)}
.kpi .kn.up::before{content:"▲ ";font-size:10px}
.kpi .kn.down::before{content:"▼ ";font-size:10px}
.kpi .kn.up,.kpi .kn.down{font-weight:600}
.stat{border-top:5px solid var(--yellow)}
.stats .stat:nth-child(4n+2){border-top-color:var(--red)}
.stats .stat:nth-child(4n+3){border-top-color:var(--teal)}
.stats .stat:nth-child(4n+4){border-top-color:var(--charcoal)}
.echart{border-top:5px solid var(--yellow)}
.grid2 > div:nth-child(2) .echart{border-top-color:var(--red)}
.cards .card .dot{width:28px;height:6px;border-radius:2px}
.cards .card:nth-child(4n+1){border-top:4px solid var(--yellow)}
.cards .card:nth-child(4n+2){border-top:4px solid var(--red)}
.cards .card:nth-child(4n+3){border-top:4px solid var(--teal)}
.cards .card:nth-child(4n+4){border-top:4px solid var(--charcoal)}
.sector-card{background:var(--sc);border:0;color:#fff}
.sector-card::before{display:none}
.sector-card::after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:rgba(255,255,255,.12)}
.sector-card .eyebrow,.sector-card .more,.sector-card .sc-fig small{color:rgba(255,255,255,.9)}
.sector-card .eyebrow::before{background:#fff;box-shadow:12px 0 0 rgba(255,255,255,.5)}
.sector-card.on-light{color:#1b1404}
.sector-card.on-light .eyebrow,.sector-card.on-light .more,.sector-card.on-light .sc-fig small{color:#3a2e00}
.sector-card.on-light .eyebrow::before{background:#1b1404;box-shadow:12px 0 0 var(--red)}
.cbar .ct{background:#eef1f3}
.phero{border-bottom:6px solid var(--yellow);box-shadow:inset 0 -6px 0 0 var(--yellow)}
.rb-note{margin:0;padding:10px 24px 0;font-size:12.5px;color:var(--muted)}
.rt .cur .sub{white-space:nowrap}
.rt tr.x td{padding-top:10px;padding-bottom:10px;font-size:15px}
.rt tr.x .cur{white-space:nowrap;font-weight:500}
.rt tr.x td.na{text-align:center}
.rt tr.usd td{background:color-mix(in srgb,var(--yellow) 10%,#fff)}
.rt th,.rt td{padding-left:16px;padding-right:16px}
.rt tr.x .cc{min-width:38px;text-align:center}

/* ---------- Flags and language selector (1.7) ---------- */
img.flag{display:inline-block;width:auto;height:14px;aspect-ratio:4/3;border-radius:2px;box-shadow:0 0 0 1px rgba(15,27,45,.12);object-fit:cover;flex:0 0 auto;vertical-align:-2px}
.hsel{display:flex;align-items:center;gap:6px;margin-left:14px}
.hsel .cswitch{margin-left:0}
.cswitch summary img.flag{height:13px}
.cm-name{display:flex;align-items:center;gap:10px}
.lswitch{position:relative}
.lswitch summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:7px 10px;border-radius:999px;border:1.5px solid var(--line);color:var(--ink);white-space:nowrap}
.lswitch summary::-webkit-details-marker{display:none}
.lswitch[open] summary{background:var(--soft)}
.lswitch .lcode{font-family:var(--f-mono);font-size:12px;letter-spacing:.04em}
.lmenu{position:absolute;top:calc(100% + 8px);right:0;z-index:30;min-width:240px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 20px 40px -20px rgba(0,0,0,.35);display:grid}
.lmenu a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;text-decoration:none;font-size:15px;color:var(--ink)}
.lmenu a:hover{background:var(--soft)}
.lmenu a[aria-current]{font-weight:700;background:color-mix(in srgb,var(--yellow) 14%,#fff)}
.lmenu a[dir="rtl"]{font-family:system-ui,"Segoe UI",Tahoma,sans-serif}
.lnote{margin:6px 8px 4px;padding-top:8px;border-top:1px solid var(--line);font-size:12px;line-height:1.45;color:var(--muted);max-width:250px}
@media (max-width:560px){.hsel{margin-left:auto}.hsel+.menu-btn{margin-left:8px}.hsel .cname{display:none}.lmenu{right:-60px}.cmenu{right:0;left:auto}}
@media (max-width:360px){.lswitch summary svg:last-child{display:none}}
/* Country explorer: flags, maps and country card */
.cx-title img.flag{height:30px;margin-right:12px;vertical-align:-3px;border-radius:3px}
.cx-card{display:grid;grid-template-columns:auto 1fr;gap:18px 22px;align-items:center;padding:18px 20px;border-radius:12px;background:var(--deep);color:#fff;margin-bottom:18px;position:relative;overflow:hidden}
.cx-card::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:rgba(245,180,0,.18)}
.cx-card img.flag{height:66px;border-radius:6px;box-shadow:0 0 0 3px rgba(255,255,255,.25)}
.cx-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 18px;margin:0}
.cx-card dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.cx-card dd{margin:2px 0 0;font-weight:600;font-size:15px}
@media (max-width:560px){.cx-card{grid-template-columns:1fr}.cx-card img.flag{height:48px}}
.cx-maps{display:grid;grid-template-columns:1fr 1.6fr;gap:20px;align-items:start}
@media (max-width:900px){.cx-maps{grid-template-columns:1fr}}
.cx-map{position:relative;background:#eef3f6;border-radius:10px;overflow:hidden;min-width:0}
.cx-map svg{display:block;width:100%;height:auto}
.cx-map path{fill:#d3dbe0;stroke:#fff;stroke-width:.5;vector-effect:non-scaling-stroke;transition:fill .2s}
.cx-map path.sel{fill:var(--red);stroke:#fff;stroke-width:1.5}
.cx-map path.reg{fill:#aebcc5}
.cx-map.choro path{cursor:pointer}
.cx-map.choro path:hover{stroke:var(--ink);stroke-width:1.2}
.cx-map.choro path.sel{stroke:var(--ink);stroke-width:2.2}
.cx-map .pin{fill:var(--yellow);stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke}
.cx-tip{position:absolute;pointer-events:none;background:var(--ink);color:#fff;font-size:12.5px;padding:6px 9px;border-radius:6px;white-space:nowrap;transform:translate(-50%,-120%);opacity:0;transition:opacity .1s;display:flex;gap:6px;align-items:center}
.cx-tip img.flag{height:11px}
.cx-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:var(--muted)}
.cx-legend i{display:inline-block;width:26px;height:10px;border-radius:2px}
.cx-legend .lg-steps{display:flex;gap:2px;align-items:center}
.cx-zoom{position:absolute;right:8px;top:8px;display:flex;gap:4px}
.cx-zoom button{all:unset;cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}
.cx-zoom button[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
td .flag{margin-right:8px}
.chip-btn img.flag{height:11px;margin-right:2px}
@media (min-width:1141px){.lswitch summary{padding:6px 8px;gap:4px}.lswitch summary svg:last-child{display:none}.hsel{margin-left:8px;gap:4px}}
@media (min-width:1141px) and (max-width:1360px){.links a{padding:8px 5px;font-size:13px}.nav{gap:12px}}
@media (max-width:560px){.nav{position:relative}.hsel .cswitch,.hsel .lswitch{position:static}.hsel .cmenu,.hsel .lmenu{left:12px;right:12px;min-width:0;top:calc(100% - 4px)}}
@media (max-width:560px){.lnote{max-width:none}}

/* ---------- About Us (1.8) ---------- */
.mv{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}
.mv-card{position:relative;overflow:hidden;border-radius:14px;padding:34px 34px 38px;min-width:0}
.mv-card p{font-family:var(--f-display);font-size:clamp(22px,2.4vw,30px);line-height:1.3;font-weight:600;margin-top:12px}
.mv-card.mission{background:var(--deep);color:#fff}
.mv-card.mission .eyebrow{color:var(--yellow)}
.mv-card.mission .eyebrow::before{background:#fff}
.mv-card.vision{background:var(--yellow);color:#1b1404}
.mv-card.vision .eyebrow{color:#1b1404}
.mv-card.vision .eyebrow::before{background:var(--red);box-shadow:12px 0 0 #1b1404}
.mv-card::after{content:"";position:absolute;right:-50px;bottom:-50px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.12)}
.mv-card.mission::before{content:"\201C";position:absolute;right:24px;top:-10px;font-family:var(--f-display);font-size:150px;line-height:1;color:rgba(245,180,0,.35)}
@media (max-width:820px){.mv{grid-template-columns:1fr}.mv-card{padding:26px}}
.story{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:start}
.story-text p{font-size:17px;line-height:1.7;max-width:62ch;margin-bottom:14px}
.timeline{list-style:none;margin:0;padding:6px 0 0 0;position:relative}
.timeline::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:3px;background:linear-gradient(var(--yellow),var(--red),var(--teal))}
.timeline li{position:relative;padding:0 0 22px 36px}
.timeline li::before{content:"";position:absolute;left:0;top:4px;width:21px;height:21px;border-radius:50%;background:#fff;border:5px solid var(--yellow)}
.timeline li:nth-child(3n+2)::before{border-color:var(--red)}
.timeline li:nth-child(3n+3)::before{border-color:var(--teal)}
.timeline b{display:block;font-family:var(--f-mono);font-size:13px;letter-spacing:.06em;color:var(--red)}
.timeline span{display:block;margin-top:4px;font-size:15.5px;line-height:1.5}
@media (max-width:900px){.story{grid-template-columns:1fr;gap:12px}}
.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.person{display:grid;grid-template-columns:96px 1fr;gap:18px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;border-top:5px solid var(--yellow);min-width:0}
.people .person:nth-child(4n+2){border-top-color:var(--red)}
.people .person:nth-child(4n+3){border-top-color:var(--teal)}
.people .person:nth-child(4n+4){border-top-color:var(--charcoal)}
.person .ph{width:96px;height:96px;border-radius:50%;object-fit:cover;display:grid;place-items:center}
.person .ini{color:#fff;font-family:var(--f-display);font-size:34px;font-weight:700}
.person h3{font-size:21px}
.person .role{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-top:4px}
.person .bio{font-size:15px;color:var(--muted);margin-top:8px;line-height:1.55}
.person .li{display:inline-block;margin-top:10px;font-size:14px;font-weight:600;color:var(--deep)}
.people.small .person{grid-template-columns:64px 1fr}
.people.small .ph{width:64px;height:64px}
.people.small .ini{font-size:24px}
.gf{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gf-card{border:1px solid var(--line);border-radius:14px;padding:26px;background:#fff;border-left:6px solid var(--deep);min-width:0}
.gf-card + .gf-card{border-left-color:var(--yellow)}
.gf-card h3{font-size:22px;margin-bottom:10px}
.gf-card p{font-size:16px;line-height:1.65}
.gf .org{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}
.gf .org dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.gf .org dd{margin:2px 0 0;font-weight:600}
@media (max-width:820px){.gf{grid-template-columns:1fr}}
/* In-page jump navigation (1.8) */
.jump{position:relative;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.jump .wrap{display:flex;gap:6px;align-items:center;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.jump .wrap::-webkit-scrollbar{display:none}
.jump-l{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;margin-right:6px}
.jump a{flex:0 0 auto;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--ink);padding:6px 12px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.jump a:hover,.jump a.on{background:var(--yellow);border-color:var(--yellow);color:#1b1404}
section[id],h3[id]{scroll-margin-top:120px}
/* Tax laws with official downloads (1.8) */
.laws{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.law{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:14px;background:#fff;border-top:5px solid var(--yellow);min-width:0}
.laws .law:nth-child(4n+2){border-top-color:var(--red)}
.laws .law:nth-child(4n+3){border-top-color:var(--teal)}
.laws .law:nth-child(4n+4){border-top-color:var(--charcoal)}
.law-no{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.law h3{font-size:20px;line-height:1.25}
.law p{font-size:15px;color:var(--muted)}
.law-links{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding-top:6px}
.law-btn{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;text-decoration:none;color:var(--deep);padding:8px 12px;border-radius:8px;border:1px solid var(--line)}
.law-btn::before{content:"↗";font-size:13px;color:var(--muted)}
.law-btn.pdf{background:var(--deep);color:#fff;border-color:var(--deep)}
.law-btn.pdf::before{content:"";width:16px;height:16px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b400' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 10l5 5 5-5M5 21h14'/%3E%3C/svg%3E")}
.law-btn:hover{border-color:var(--yellow)}
.law-btn.pdf:hover{background:#163f50}
.dt.levies td,.dt.levies th{font-size:14px;vertical-align:top}
.dt.levies{min-width:900px}
.dt.wht td{white-space:nowrap}

/* ---------- Rich colour for tables, calendars and lists (1.8) ---------- */
/* Data tables: deep-teal header, yellow rule, soft zebra rows, coloured row labels */
.dt thead th{background:var(--deep);border-bottom:4px solid var(--yellow)}
.dt thead th button,.dt.simple thead th{color:#fff}
.dt th[aria-sort] button{color:var(--yellow)}
.dt.simple thead th{background:var(--deep);border-bottom:4px solid var(--yellow)}
.dt tbody tr:nth-child(even){background:color-mix(in srgb,var(--teal) 6%,#fff)}
.dt tbody tr:hover{background:color-mix(in srgb,var(--yellow) 14%,#fff)}
.dt.compare tbody th[scope="row"]{color:var(--deep);font-weight:700;border-left:4px solid var(--yellow)}
.dt.compare tbody tr:nth-child(4n+2) th[scope="row"]{border-left-color:var(--red)}
.dt.compare tbody tr:nth-child(4n+3) th[scope="row"]{border-left-color:var(--teal)}
.dt.compare tbody tr:nth-child(4n+4) th[scope="row"]{border-left-color:var(--charcoal)}
.rt-wrap:has(> .dt){border-radius:12px;overflow:auto;box-shadow:0 0 0 1px var(--line)}
/* Rate cells in the withholding tax table */
.dt.wht td{font-family:var(--f-mono);font-weight:600;color:var(--red)}
/* Payroll levies: coloured "due" and "if late" columns */
.dt.levies td:nth-child(5){color:var(--deep);font-weight:600}
.dt.levies td:nth-child(6){color:var(--red)}
.dt.levies td:nth-child(2){font-weight:600}
/* Penalties table (Taxation): red penalty column */
#deadlines .dt td{color:var(--red);font-weight:500}
#tp .dt td:last-child{color:var(--red)}
#tp .dt td:nth-child(3){color:var(--deep);font-weight:600}
/* Filing calendar: coloured cards and date badges */
.cal > div{border:0;border-radius:14px;padding:22px;background:color-mix(in srgb,var(--yellow) 12%,#fff);border-top:6px solid var(--yellow)}
.cal > div + div{background:color-mix(in srgb,var(--red) 7%,#fff);border-top-color:var(--red)}
.cal h3{color:var(--deep)}
.cal li{padding-bottom:10px;border-bottom:1px dashed color-mix(in srgb,var(--deep) 18%,transparent)}
.cal li:last-child{border-bottom:0;padding-bottom:0}
.cal li b{display:inline-block;align-self:start;background:var(--deep);color:#fff;border-radius:6px;padding:4px 8px;font-size:12px;line-height:1.35}
.cal > div + div li b{background:var(--red)}
/* Tick lists */
.check li::before{background:var(--teal)}
.check li:nth-child(3n+2)::before{background:var(--red)}
.check li:nth-child(3n+3)::before{background:var(--yellow)}
.alert-cta{background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 16%,#fff),#fff 60%);border-top:6px solid var(--yellow)}
/* Section intro headings on long pages get a coloured underline */
.sec-head h2{background-image:linear-gradient(var(--yellow),var(--yellow));background-repeat:no-repeat;background-size:64px 5px;background-position:0 100%;padding-bottom:12px}
/* Rate board in the same colours */
.rt thead th{background:var(--deep);color:#fff;border-bottom:4px solid var(--yellow)}
.rt tbody tr.x:nth-child(even) td{background:color-mix(in srgb,var(--teal) 6%,#fff)}
.rt tbody tr.x:hover td{background:color-mix(in srgb,var(--yellow) 14%,#fff)}
.rt tr.x .cc{background:var(--deep);color:#fff;border-color:var(--deep)}
.rt tr.usd .cc{background:var(--yellow);color:#1b1404;border-color:var(--yellow)}
.rt tr.x td:nth-child(2){color:var(--deep);font-weight:600}
/* Stock market weekly panels in colour (1.8) */
.panel-t{border:0;border-top:6px solid var(--yellow);box-shadow:0 0 0 1px var(--line);padding:0;overflow:hidden}
.panel-t h3{margin:0;padding:14px 18px;font-size:17px;color:#fff;background:var(--deep)}
.panel-t > p,.panel-t > .rt-wrap{margin:0}
.panel-t > p{padding:14px 18px}
.panel-t .rt-wrap{border-radius:0;box-shadow:none}
.panel-t.gain{border-top-color:var(--teal)}.panel-t.gain h3{background:var(--teal)}
.panel-t.lose{border-top-color:var(--red)}.panel-t.lose h3{background:var(--red)}
.panel-t.sect{border-top-color:var(--yellow)}.panel-t.sect h3{background:var(--deep)}
.panel-t.trad{border-top-color:var(--yellow)}.panel-t.trad h3{background:var(--yellow);color:#1b1404}
.panel-t.inv{border-top-color:var(--charcoal)}.panel-t.inv h3{background:var(--charcoal)}
.panel-t.act{border-top-color:var(--red)}.panel-t.act h3{background:var(--deep)}
.dt td.pos{color:#0a7d52;font-weight:700}
.dt td.neg{color:var(--red);font-weight:700}
/* Numbered steps */
.steps{list-style:none;counter-reset:st;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.steps li{counter-increment:st;position:relative;padding:20px 20px 20px 74px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px var(--line);min-width:0}
.steps li::before{content:counter(st);position:absolute;left:18px;top:18px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:20px;background:var(--yellow);color:#1b1404}
.steps li:nth-child(4n+2)::before{background:var(--red);color:#fff}
.steps li:nth-child(4n+3)::before{background:var(--teal);color:#fff}
.steps li:nth-child(4n+4)::before{background:var(--deep);color:#fff}
.steps b{display:block;font-size:17px;color:var(--deep)}
.steps span{display:block;margin-top:6px;font-size:15px;color:var(--muted);line-height:1.55}
/* Best performing stocks (1.8) */
.best{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:20px;align-items:stretch}
.best-top{position:relative;overflow:hidden;border-radius:14px;padding:26px;background:var(--yellow);color:#1b1404;display:flex;flex-direction:column;gap:6px}
.best-top::after{content:"";position:absolute;right:-50px;bottom:-50px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.22)}
.best-top .eyebrow{color:#1b1404}
.best-top .eyebrow::before{background:var(--red);box-shadow:12px 0 0 #1b1404}
.best-top h3{font-size:28px;line-height:1.15}
.best-pct{font-family:var(--f-display);font-size:clamp(44px,6vw,64px);line-height:1;font-weight:700;color:var(--deep)}
.best-top p{font-family:var(--f-mono);font-size:14px;margin-top:auto}
.best-list{padding:20px;border-radius:14px;box-shadow:0 0 0 1px var(--line);background:#fff;display:flex;align-items:center}
.best-list .cbars{width:100%;max-width:none}
@media (max-width:820px){.best{grid-template-columns:1fr}}
.best-table td:last-child,#largest td:last-child{text-align:left;font-family:var(--f-body)}

/* Excel downloads (1.8) */
.btn-xl{background:var(--yellow);color:#1b1404}
.btn-xl:hover{background:#e0a500}
.echart-foot a[href*="download=xlsx"]{color:var(--teal);font-weight:600}
#excel{background:#fff8e1;padding-top:48px;padding-bottom:48px;border-top:4px solid var(--yellow)}
#excel .law{border-top:4px solid var(--teal)}
#excel .law:nth-child(2){border-top-color:var(--red)}
#excel .law:nth-child(3){border-top-color:var(--yellow)}
.dt-tools input[type=search]:focus{outline:none;border-color:var(--teal)}
table.archive td:first-child{font-weight:700;color:var(--deep);white-space:nowrap}
table.archive td a[download]{color:var(--teal);font-weight:600}
table.archive td:nth-child(4){white-space:nowrap}

/* Country: latest official figures (1.8) */
.cx-live{margin:22px 0 4px;padding:22px;border-radius:16px;background:#fff8e1;border-top:4px solid var(--yellow)}
.cx-live-head h3{margin:0 0 4px;font-size:20px}
.cx-live-head p{margin:0 0 16px;font-size:14px;max-width:760px}
.cx-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.cx-live-i{background:#fff;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;border-left:4px solid var(--gray)}
.cx-live-i.good{border-left-color:var(--teal)}
.cx-live-i.warn{border-left-color:var(--red)}
.cx-live-i .k{font-size:13px;color:var(--charcoal);font-weight:600}
.cx-live-i .v{font-family:var(--f-display,serif);font-size:24px;font-weight:700;color:var(--deep)}
.cx-live-i .meta{font-size:12px;color:var(--gray)}
.cx-live-i .chip{align-self:flex-start;margin-top:4px}
.cx-live-links{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.cx-live-links a{font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--deep);color:#fff;text-decoration:none}
.cx-live-links a:hover{background:var(--teal)}
.cx-live[hidden]{display:none}
.citem .pill.live{background:var(--teal);color:#fff;padding:4px 10px;height:auto}
.citem .pill.next{background:var(--yellow);color:#1b1404}
a.citem{border-left:4px solid var(--teal)}
a.citem:hover{border-color:var(--teal);box-shadow:0 6px 18px rgba(28,78,99,.12)}

/* Publications: topic filter and search (1.8) */
.pub-tools{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:28px}
.pub-filter{display:flex;flex-wrap:wrap;gap:8px}
.pub-filter a{font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;background:#fff;border:1.5px solid var(--gray-l);color:var(--charcoal);text-decoration:none}
.pub-filter a small{font-weight:500;color:var(--gray);margin-left:2px}
.pub-filter a:hover{border-color:var(--teal);color:var(--deep)}
.pub-filter a[aria-current="page"]{background:var(--deep);border-color:var(--deep);color:#fff}
.pub-filter a[aria-current="page"] small{color:var(--yellow)}
.pub-tools .sbox{flex:0 1 380px;margin:0}
.card .more time{font-weight:700}
@media (max-width:760px){.pub-tools .sbox{flex:1 1 100%}}

/* Money Markets and Investment (1.8) */
.mm-note{margin:12px 0 0;padding:12px 16px;border-left:4px solid var(--yellow);background:#fff8e1;border-radius:0 10px 10px 0;font-size:14px}
.mm-src{font-size:13px;margin-top:10px}
.corridor{margin-top:26px;padding:22px 24px 28px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--line);border-top:6px solid var(--red)}
.corridor h3{margin:0 0 4px;font-size:20px}
.corridor > p.muted{margin:0 0 20px;font-size:14px;max-width:780px}
.cor-track{position:relative;height:12px;border-radius:999px;background:var(--gray-l);margin:52px 6px 104px}
.cor-band{position:absolute;top:0;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--yellow),var(--red))}
.cor-m{position:absolute;top:-8px;width:4px;height:28px;margin-left:-2px;border-radius:2px;background:var(--charcoal)}
.cor-m b{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-size:15px;color:var(--deep);white-space:nowrap}
.cor-m small{position:absolute;top:32px;left:50%;transform:translateX(-50%);font-size:12px;color:var(--gray);white-space:nowrap}
.cor-m.mpr{background:var(--red);width:6px;margin-left:-3px}
.cor-m.mpr b{color:var(--red)}
.cor-m.mpr small{color:var(--red);font-weight:700}
.cor-d{position:absolute;top:2px;transform:translateX(-50%)}
.cor-d i{display:block;width:12px;height:12px;margin:-2px auto 0;border-radius:50%;background:#fff;border:3px solid var(--deep)}
.cor-d em{position:absolute;top:44px;left:50%;transform:translateX(-50%);font-style:normal;font-size:12px;font-weight:700;color:var(--deep);white-space:nowrap;background:#e8f3f3;padding:2px 8px;border-radius:999px}
.cor-d.on i{border-color:var(--teal)}
.cor-d.on em{top:68px;background:#fff8e1}
.cor-note{margin:0;font-size:14px;font-weight:600;color:var(--deep)}
.terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.terms > div{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 0 0 1px var(--line);border-left:4px solid var(--teal);display:flex;flex-direction:column;gap:6px}
.terms > div:nth-child(3n+2){border-left-color:var(--yellow)}
.terms > div:nth-child(3n){border-left-color:var(--red)}
.terms b{color:var(--deep)}
.terms span{font-size:14px;color:var(--charcoal)}
.inv-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.inv-notes p{margin:0;padding:14px 18px;border-radius:12px;background:#fff8e1;font-size:14px;border-top:4px solid var(--yellow)}
.inv-notes p + p{background:#e8f3f3;border-top-color:var(--teal)}
.inv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.share-list{list-style:none;margin:0;padding:12px 18px 16px;counter-reset:sl}
.share-list li{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 0;border-bottom:1px solid var(--line);counter-increment:sl}
.share-list li:last-child{border-bottom:0}
.share-list .sl-k{font-weight:600;color:var(--charcoal)}
.share-list .sl-k::before{content:counter(sl) ". ";color:var(--gray)}
.share-list .sl-v{font-weight:700;color:var(--deep);text-align:right}
.share-list .sl-v small{font-weight:500;color:var(--gray)}
.share-list .sl-bar{grid-column:1/-1;height:8px;border-radius:999px;background:var(--gray-l);overflow:hidden}
.share-list .sl-bar i{display:block;height:100%;border-radius:999px}
.inv-opts th[scope=row]{white-space:nowrap;color:var(--deep)}
.inv-opts td{vertical-align:top;font-size:14px}
.inv-opts .pos{color:var(--green);font-weight:700}
.inv-opts .neg{color:var(--red);font-weight:700}
.risk{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;margin-right:4px}
.risk.low{background:#e8f3f3;color:var(--teal)}
.risk.mid{background:#fff3cc;color:#8a6500}
.risk.high{background:#fde5e4;color:var(--red)}
@media (max-width:900px){.inv-grid{grid-template-columns:1fr}.inv-notes{grid-template-columns:1fr}}

/* Desktop header on two rows: brand and selectors above, the full menu below (1.8, 11 menu items) */
@media (min-width:1141px){
  .nav{flex-wrap:wrap;row-gap:0;padding-bottom:0}
  .links{order:3;flex:1 1 100%;margin:8px 0 0;padding:6px 0 8px;border-top:1px solid var(--line);flex-wrap:nowrap;justify-content:flex-start;gap:2px}
  .links a{padding:8px 10px;font-size:14px}
  .links li.donate>a{margin-left:auto}
  .links li.donate>a{padding:8px 14px}
  .hsel{margin-left:auto}
}
@media (min-width:1141px) and (max-width:1260px){.links a{padding:8px 8px;font-size:13.5px}}
@media (min-width:1141px) and (max-width:1360px){.nav{column-gap:20px;row-gap:0}.nav .cswitch .cname{display:inline}}
.jump ~ section[id],section[id]{scroll-margin-top:150px}
.cor-m.ceil b,.cor-m.ceil small{left:0;transform:none}
.cor-m.mpr b,.cor-m.mpr small{left:auto;right:0;transform:none}

/* Contact and Donate (1.8) */
.contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:start}
.contact-side{display:flex;flex-direction:column;gap:18px}
.cform{background:#fff;border-radius:16px;padding:24px;box-shadow:0 0 0 1px var(--line);border-top:6px solid var(--yellow);display:flex;flex-direction:column;gap:14px}
.cform label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--charcoal)}
.cform label small{font-weight:400;color:var(--gray)}
.cform input,.cform select,.cform textarea{font:inherit;font-weight:400;padding:11px 13px;border:1.5px solid var(--gray-l);border-radius:10px;background:#fff;color:var(--ink);width:100%;box-sizing:border-box}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(54,148,148,.15)}
.cform-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cform-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cform-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform-ok{padding:12px 16px;border-radius:10px;background:#e8f3f3;color:var(--deep);border-left:4px solid var(--teal)}
.cform-err{padding:12px 16px;border-radius:10px;background:#fde5e4;color:#8f1d19;border-left:4px solid var(--red)}
.cdetails{margin:0;padding:6px 18px 12px}
.cdetails > div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}
.cdetails > div:last-child{border-bottom:0}
.cdetails dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray)}
.cdetails dd{margin:0;font-weight:600;color:var(--deep);word-break:break-word}
.cdetails a{color:var(--teal)}
.routes{list-style:none;margin:0;padding:6px 0}
.routes a{display:flex;flex-direction:column;gap:3px;padding:12px 18px;text-decoration:none;border-bottom:1px solid var(--line);color:inherit}
.routes li:last-child a{border-bottom:0}
.routes a:hover{background:#fff8e1}
.routes b{color:var(--deep)}
.routes b::after{content:" →";color:var(--red)}
.routes span{font-size:13px;color:var(--charcoal)}
.give-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.give{background:#fff;border-radius:16px;padding:22px;box-shadow:0 0 0 1px var(--line);border-top:6px solid var(--yellow);display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.give-bank{border-top-color:var(--teal)}
.give-org{border-top-color:var(--red)}
.give-no{font-family:var(--f-mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--gray)}
.give h3{margin:0;font-size:22px}
.give p{margin:0;font-size:15px}
.give .cdetails{padding:0;width:100%}
.give-promise{margin-top:22px;padding:20px 24px;border-radius:16px;background:var(--deep);color:#fff}
.give-promise h3{margin:0 0 6px;color:var(--yellow)}
.give-promise p{margin:0;color:#e9f1f4}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){.cform-row{grid-template-columns:1fr}}
.cdetails dd .cdir{display:inline-block;margin-top:6px;font-size:13px}
.cdetails dd .cdir::after{content:" ↗"}
.faddr{line-height:1.5}
.fphone a{white-space:nowrap}
.consent{display:block;width:100%;font-size:12px;line-height:1.4;opacity:.8;margin-top:6px}
.consent a{color:inherit;text-decoration:underline}

/* Weekly report building blocks (1.8.1) */
.entry-content th{background:var(--deep);color:#fff;text-align:left;font-weight:600}
.entry-content tbody tr:nth-child(even) td{background:#f6f8f9}
.entry-content .wr-key{background:#fff8e1;border-left:5px solid var(--yellow);border-radius:0 12px 12px 0;padding:16px 20px 16px 38px;margin:0 0 26px}
.entry-content .wr-key li{margin:6px 0}
.entry-content .wr-label{margin:38px 0 0;font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--red);font-weight:700}
.entry-content .wr-label + h2{margin-top:4px;padding-left:12px;border-left:5px solid var(--teal);font-size:26px}
.entry-content .wr-more{font-size:14px;font-weight:700;margin-top:6px}
.entry-content .wr-more a{color:var(--teal)}
.entry-content table.wr-dash td:first-child{font-weight:600;color:var(--deep)}

/* In the news (1.8.1) */
.news-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.news-list li{background:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 0 0 1px var(--line);border-left:4px solid var(--teal);display:flex;flex-direction:column;gap:6px}
.news-list li:nth-child(3n+2){border-left-color:var(--yellow)}
.news-list li:nth-child(3n){border-left-color:var(--red)}
.news-list a{font-weight:600;color:var(--deep);text-decoration:none;line-height:1.4}
.news-list a:hover{color:var(--teal);text-decoration:underline}
.news-list a::after{content:" ↗";font-size:.85em;color:var(--gray)}
.nl-meta{font-size:12.5px;color:var(--gray)}
.nl-meta b{color:var(--charcoal);font-weight:600}
.nl-sec{font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--red)}
.home-news{margin-top:36px}
.home-news h3{font-size:22px;margin:0 0 14px}

/* Grouped dropdown menu (1.8.1): one header row again */
.links .menu-item-has-children{display:block;position:relative}
.links .sub-toggle{font:inherit;font-size:14px;font-weight:500;color:var(--ink);background:none;border:0;border-radius:8px;padding:8px 10px;cursor:pointer;font-family:var(--f-ui);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.links .sub-toggle.group::after,.links .sub-toggle.caret::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:4px;transition:transform .15s}
.links .sub-toggle.caret{padding:8px 6px 8px 0}
.links .open > .sub-toggle::after{transform:rotate(-135deg) translateY(-1px)}
.links .sub-toggle:hover,.links .open > .sub-toggle,.links .current-group > .sub-toggle{background:var(--soft);color:var(--indigo-2)}
.links .sub-menu{list-style:none;margin:0;padding:8px;display:none;flex-direction:column;gap:2px}
.links .sub-menu li{display:block}
.links .sub-menu a{display:block;padding:9px 12px;border-radius:8px;white-space:nowrap}
.links .open > .sub-menu{display:flex}
@media (min-width:1141px){
  .nav{flex-wrap:nowrap;padding-bottom:12px}
  .links{order:2;flex:0 1 auto;margin:0 0 0 auto;padding:0;border-top:0;gap:4px}
  .links a,.links .sub-toggle{font-size:15px}
  .links li.donate>a{margin-left:8px}
  .hsel{order:3;margin-left:12px}
  .links .sub-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:#fff;border-radius:12px;box-shadow:0 18px 40px -16px rgba(15,27,45,.35),0 0 0 1px var(--line);border-top:4px solid var(--yellow);z-index:60}
  .links .menu-item-has-children:hover > .sub-menu,.links .menu-item-has-children:focus-within > .sub-menu{display:flex}
  .links .menu-item-has-children:hover > .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
}
@media (max-width:1140px){
  .links{z-index:70;max-height:calc(100vh - 72px);overflow-y:auto}
  .links .menu-item-has-children{width:100%}
  .links .sub-toggle{width:100%;justify-content:space-between;padding:12px 10px;font-size:16px;font-weight:600}
  .links .sub-toggle.caret{width:auto;position:absolute;right:0;top:0}
  .links .sub-menu{padding:0 0 8px 14px;border-left:3px solid var(--yellow);margin-left:10px}
  .links .sub-menu a{padding:10px}
}

/* Homepage tiles (1.8.2): eight areas sit in four columns on wide screens, two below. */
@media (min-width:1141px){.tiles.n8{grid-template-columns:repeat(4,1fr)}}
@media (min-width:601px) and (max-width:1140px){.tiles.n8{grid-template-columns:1fr 1fr}}
@media (min-width:1141px){.tiles.n8 .fig{flex-direction:column;align-items:flex-start;gap:2px}}

/* A real page with a dropdown (About Us, 1.8.4): line up the link and its caret. */
@media (min-width:1141px){
  .links .menu-item-has-children{display:flex;align-items:center}
  .links .menu-item-has-children > a{padding-right:2px}
  .links .menu-item-has-children > .sub-toggle.caret{padding:8px 6px}
}
@media (max-width:1140px){
  .links .menu-item-has-children > a{display:block;font-size:16px;font-weight:600;padding:12px 10px}
  .links .menu-item-has-children > .sub-toggle.caret{top:10px}
}

/* Portrait infographics (1.8.5): keep the full image to a readable width. */
.info-full{max-width:760px;margin-left:auto;margin-right:auto}
.info-full + .cta-row{max-width:760px;margin-left:auto;margin-right:auto}
.ithumb img{object-position:50% 0}
.post-type-archive-infographic .ithumb{aspect-ratio:4/5}

/* Infographic download and share (1.8.6). */
.share-box{max-width:760px;margin:20px auto 0;background:var(--soft);border-radius:16px;padding:18px 20px;display:grid;gap:12px}
.share-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.share-l{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;min-width:92px}
.sbtn{display:inline-flex;align-items:center;gap:6px;border:0;cursor:pointer;font:600 14px/1 var(--f-ui);padding:10px 14px;border-radius:999px;text-decoration:none;color:#fff;background:var(--indigo)}
.sbtn:hover{filter:brightness(1.08)}
.sbtn:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
.sbtn-dl{background:var(--indigo)}
.sbtn-native{background:var(--yellow);color:#1b1404}
.sbtn-whatsapp{background:#157a42}
.sbtn-x{background:#0f1419}
.sbtn-facebook{background:#1b5fc1}
.sbtn-linkedin{background:#0a66c2}
.sbtn-telegram{background:#1570a6}
.sbtn-email,.sbtn-copy{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.share-note{font-size:13px;color:var(--muted);margin:0}
.share-follow{font-size:14px;margin:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.share-follow a{color:var(--indigo-2);font-weight:600}
@media (max-width:600px){.share-l{min-width:100%}.sbtn{padding:10px 12px}}

/* "What this means" under each infographic (1.8.8). */
.single-infographic .entry-content{max-width:760px;margin-left:auto;margin-right:auto}
.single-infographic .entry-content h3{margin-top:18px}
.single-infographic .sources{max-width:760px;margin-left:auto;margin-right:auto}

/* Bigger, bolder logo in the header (1.9.0). */
.brand .logo,.brand .custom-logo{height:44px!important;width:auto}
@media (min-width:1141px) and (max-width:1300px){.brand .logo,.brand .custom-logo{height:38px!important}}
@media (max-width:1140px){.brand .logo,.brand .custom-logo{height:38px!important}}
.brand{flex:none}
@media (max-width:560px){
  .brand .logo,.brand .custom-logo{height:28px!important}
  .hsel{gap:4px}
  .hsel .cswitch summary,.hsel .lswitch summary{padding:6px 8px}
  .menu-btn{padding:8px 10px}
  .hsel+.menu-btn{margin-left:6px}
}
@media (max-width:420px){.brand .logo,.brand .custom-logo{height:23px!important}.lswitch summary svg:last-child{display:none}}
@media (max-width:370px){.brand .logo,.brand .custom-logo{height:21px!important}.lswitch summary svg:first-child{display:none}}
@media (max-width:340px){.brand .logo,.brand .custom-logo{height:19px!important}.hsel .lswitch{display:none}}
/* An uploaded logo with a wide emblem needs more height to stay legible. */
.brand .custom-logo{height:58px!important}
@media (max-width:1300px){.brand .custom-logo{height:50px!important}}
@media (max-width:560px){.brand .custom-logo{height:42px!important}}


/* =====================================================================
   1.10 Professional refresh: classic serif headlines with a clean sans,
   calmer colour, crisper cards and buttons, insight-style articles.
   ===================================================================== */
body{font-size:17px;line-height:1.6;font-feature-settings:"kern","liga"}
body,.btn,input,select,textarea,button{font-family:var(--f-body)}
.tnum,.ticker,.chip,.pill,.li-tag,.rb td,.dt td,table td{font-variant-numeric:tabular-nums}
h1,h2,h3{letter-spacing:-.012em}
.eyebrow{font-family:var(--f-ui);font-size:13px;letter-spacing:.08em;font-weight:700;color:var(--indigo-2)}
.eyebrow::before{width:18px;height:3px;background:var(--yellow);box-shadow:none;margin-right:10px;vertical-align:4px}
.hero .eyebrow,.phero .eyebrow{color:var(--indigo-2)}
.dark .eyebrow{color:#f7d27a}
.sec-head h2{background-image:none;padding-bottom:0;font-weight:600;letter-spacing:-.015em}
.sec-head p{font-size:17px}
.band + .band,.band + .band.tight{border-top:1px solid var(--line)}
.btn{border-radius:4px;font-weight:600;letter-spacing:.01em}
.sbox{border-radius:6px}.sbox .btn{border-radius:4px}
.news input[type=email],.news input[type=text],.req select,.req input{border-radius:4px}
.tile,.card,.brief,.icard,.panel,.kpi,.phase,.aud article,.commit > div,.pillar,.news,.rate-board,.converter,.cards > *{border-radius:8px}
.tile{border-top-width:3px}
.tile .fig b{color:var(--ink)}
.tile:hover{box-shadow:0 10px 30px -18px rgba(15,27,45,.35)}
.ticker{font-family:var(--f-ui);font-size:14px}
.ticker .grp{letter-spacing:.06em}
.chip,.pill,.li-tag{font-family:var(--f-ui);letter-spacing:.02em}
.entry-content{font-size:18px;line-height:1.7}
.entry-content h2{margin-top:1.6em}
.lead{font-size:19px;line-height:1.55}
.brief .tag,.card .tag{font-family:var(--f-ui);letter-spacing:.06em;font-weight:700}
.brief .foot,.brief time{font-family:var(--f-ui)}

/* Articles: reading column with a contacts and share sidebar (1.10). */
.art-dek{font-size:20px;line-height:1.5;color:var(--ink);max-width:40em;margin-top:14px}
.post-meta{font-family:var(--f-ui);font-size:14.5px;color:var(--muted);margin-top:14px}
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
.art-grid .entry-content{max-width:720px}
.art-aside{position:sticky;top:96px;display:grid;gap:16px}
.aside-box{border-top:3px solid var(--indigo);background:var(--soft);padding:16px 18px;border-radius:0 0 8px 8px;font-size:15px}
.aside-h{font-family:var(--f-ui);font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--indigo-2);margin-bottom:8px}
.aside-name{font-weight:700;margin:0}
.aside-text{color:var(--muted);margin:4px 0}
.aside-box a{color:var(--indigo-2);font-weight:600}
.aside-share{display:flex;flex-wrap:wrap;gap:6px}
.ash{font:600 13.5px/1 var(--f-ui);padding:8px 11px;border-radius:4px;background:#fff;color:var(--ink)!important;border:1px solid var(--line);text-decoration:none;cursor:pointer}
.ash:hover{border-color:var(--indigo-2)}
.aside-rel{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.aside-rel a{display:block;line-height:1.35;text-decoration:none}
.aside-rel span{font-size:13px;color:var(--muted)}
.aside-sub .btn{margin-top:8px;padding:10px 16px}
.entry-content .wr-key{border-left:4px solid var(--indigo);background:var(--soft);border-radius:0 8px 8px 0}
@media (max-width:980px){.art-grid{grid-template-columns:1fr}.art-aside{position:static}}
.phero{border-bottom:3px solid var(--yellow);box-shadow:none}
.aside-box a.btn{color:#fff}

/* 1.10.6 page headers: dark ash with an Afrocentric pattern (Adire, Uli and cowrie motifs) */
.phero{background:#353b42;color:#fff;border-bottom:4px solid var(--yellow);box-shadow:none;isolation:isolate}
.phero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22180%22%20height=%22180%22%20viewBox=%220%200%20180%20180%22%3E%3Cg%20fill=%22none%22%20stroke=%22%23fff%22%20stroke-width=%221.6%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Ccircle%20cx=%2245%22%20cy=%2245%22%20r=%228%22/%3E%3Ccircle%20cx=%2245%22%20cy=%2245%22%20r=%2216%22/%3E%3Ccircle%20cx=%2245%22%20cy=%2245%22%20r=%2224%22/%3E%3Ccircle%20cx=%2277.0%22%20cy=%2245.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2272.7%22%20cy=%2261.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2261.0%22%20cy=%2272.7%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2245.0%22%20cy=%2277.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2229.0%22%20cy=%2272.7%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2217.3%22%20cy=%2261.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2213.0%22%20cy=%2245.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2217.3%22%20cy=%2229.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2229.0%22%20cy=%2217.3%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2245.0%22%20cy=%2213.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2261.0%22%20cy=%2217.3%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%2272.7%22%20cy=%2229.0%22%20r=%222%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Cpath%20d=%22M135%2013%20L167%2045%20L135%2077%20L103%2045%20Z%20M135%2027%20L153%2045%20L135%2063%20L117%2045%20Z%20M135%2027%20V63%20M117%2045%20H153%22/%3E%3Ccircle%20cx=%22111%22%20cy=%2221%22%20r=%222.2%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%22159%22%20cy=%2221%22%20r=%222.2%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%22159%22%20cy=%2269%22%20r=%222.2%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%22111%22%20cy=%2269%22%20r=%222.2%22%20fill=%22%23fff%22%20stroke=%22none%22/%3E%3Cellipse%20cx=%2245%22%20cy=%22135%22%20rx=%2220%22%20ry=%2230%22/%3E%3Cpath%20d=%22M45%20113%20C40%20127%2040%20143%2045%20157%22/%3E%3Cpath%20d=%22M42.8%20117%20h-5%22/%3E%3Cpath%20d=%22M42.2%20123%20h-5%22/%3E%3Cpath%20d=%22M41.6%20129%20h-5%22/%3E%3Cpath%20d=%22M41.0%20135%20h-5%22/%3E%3Cpath%20d=%22M41.6%20141%20h-5%22/%3E%3Cpath%20d=%22M42.2%20147%20h-5%22/%3E%3Cpath%20d=%22M42.8%20153%20h-5%22/%3E%3Cpolyline%20points=%22137.0,135.0%20137.3,135.7%20137.2,136.6%20136.8,137.6%20136.0,138.4%20134.9,138.9%20133.5,139.0%20132.1,138.7%20130.8,137.8%20129.8,136.4%20129.2,134.7%20129.3,132.7%20130.0,130.8%20131.4,129.1%20133.3,127.9%20135.7,127.3%20138.2,127.6%20140.6,128.7%20142.7,130.6%20144.0,133.1%20144.5,136.1%20144.0,139.2%20142.5,142.1%20140.1,144.5%20136.9,146.0%20133.3,146.4%20129.7,145.6%20126.3,143.7%20123.7,140.7%20122.1,136.9%20121.8,132.7%20122.9,128.5%20125.3,124.7%20128.9,121.8%20133.3,120.2%20138.1,120.0%20142.9,121.4%20147.0,124.3%20150.1,128.5%20151.8,133.5%20151.7,139.0%20150.0,144.2%20146.5,148.8%20141.8,152.1%20136.1,153.7%20130.0,153.4%20124.3,151.3%20119.4,147.3%20116.0,141.9%20114.4,135.6%20114.9,129.0%20117.5,122.7%20122.0,117.5%20128.1,114.0%20135.0,112.5%20142.2,113.3%20148.9,116.3%20154.4,121.5%20158.0,128.1%20159.4,135.7%20158.3,143.5%20154.7,150.6%20149.0,156.4%20141.7,160.1%20133.4,161.3%20125.1,159.8%20117.6,155.7%20111.6,149.4%20107.9,141.4%20106.9,132.5%22/%3E%3Cpolyline%20points=%220,85%2010,95%2020,85%2030,95%2040,85%2050,95%2060,85%2070,95%2080,85%2090,95%20100,85%20110,95%20120,85%20130,95%20140,85%20150,95%20160,85%20170,95%20180,85%22/%3E%3Cpath%20d=%22M90%200%20V20%20M90%2070%20V110%20M90%20160%20V180%22%20stroke-dasharray=%222%206%22/%3E%3C/g%3E%3C/svg%3E") right top/180px 180px repeat;opacity:.11;-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 85%);mask-image:linear-gradient(90deg,transparent 30%,#000 85%)}
.phero .wrap{position:relative;z-index:1}
.phero h1{color:#fff}
.phero p{color:rgba(255,255,255,.88)}
.phero .eyebrow{color:var(--yellow)}
.phero .eyebrow::before{background:var(--yellow)}
.phero .crumbs,.phero .crumbs a{color:rgba(255,255,255,.78)}
.phero .crumbs a:hover{color:#fff}
.phero a:not(.btn){color:#fff}
@media (max-width:700px){.phero::before{background-size:130px 130px;opacity:.09;-webkit-mask-image:linear-gradient(90deg,transparent 10%,#000 90%);mask-image:linear-gradient(90deg,transparent 10%,#000 90%)}}
.phero .post-meta,.phero .art-dek{color:rgba(255,255,255,.82)}

/* 1.10.7: no gold line under the page header */
.phero{border-bottom:0}

/* 1.10.7: icon-only social and share buttons */
.sicons{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;vertical-align:middle}
.sico{position:relative;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:0;padding:0;cursor:pointer;color:#fff!important;background:var(--indigo);text-decoration:none;transition:transform .15s,filter .15s}
.sico svg{display:block}
.sico:hover{transform:translateY(-1px);filter:brightness(1.1)}
.sico:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
.sico-whatsapp{background:#157a42}
.sico-x{background:#0f1419}
.sico-facebook{background:#1b5fc1}
.sico-linkedin{background:#0a66c2}
.sico-telegram{background:#1570a6}
.sico-instagram{background:#c1356b}
.sico-email,.sico-copy{background:#fff;color:var(--ink)!important;box-shadow:inset 0 0 0 1.5px var(--line)}
.sico-copy.copied{background:var(--green);color:#fff!important;box-shadow:none}
.sico-copy.copied::after{content:"Link copied";position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);white-space:nowrap;font:600 12px/1 var(--f-ui);background:var(--ink);color:#fff;padding:6px 8px;border-radius:4px}
.aside-share{display:flex;flex-wrap:wrap;gap:8px}
.aside-share .sico{width:36px;height:36px}
.share-follow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.share-follow .sico{width:34px;height:34px}
.cdl dd .sicons,.card .sicons{margin-top:6px}

/* WhatsApp or WhatsApp Business chooser (Android and iPhone) */
.wa-pick{position:relative;display:inline-flex}
.wa-menu{position:absolute;z-index:30;bottom:calc(100% + 8px);left:0;min-width:230px;background:#fff;border-radius:8px;box-shadow:0 10px 30px rgba(15,27,45,.18),0 0 0 1px var(--line);padding:6px;display:grid;gap:2px}
.wa-menu[hidden]{display:none}
.wa-menu a,.wa-menu button{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:10px;border-radius:6px;font:600 15px/1.2 var(--f-ui);color:var(--ink);cursor:pointer}
.wa-menu a:hover,.wa-menu button:hover,.wa-menu a:focus-visible,.wa-menu button:focus-visible{background:var(--soft)}
.wa-menu svg{color:#157a42;flex:none}
.wa-menu small{display:block;font-weight:400;font-size:12.5px;color:var(--muted)}

/* 1.10.8: grey download buttons that describe the file */
.dl-list{flex:1;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}
.dlbtn{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;border-radius:8px;background:#e7e9ec;color:var(--ink)!important;text-decoration:none;border:1px solid #d5d9de;transition:background .15s,border-color .15s;max-width:100%}
.dlbtn:hover{background:#dde0e4;border-color:#c4c9cf}
.dlbtn:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
.dl-ico{flex:none;display:grid;place-items:center;width:40px;height:46px;border-radius:4px 12px 4px 4px;background:#fff;border:1px solid #c9ced4;font:700 11px/1 var(--f-ui);letter-spacing:.04em;color:#4a5560}
.dl-pdf{color:#b8231e}
.dl-txt{display:grid;gap:3px;min-width:0}
.dl-txt b{font:600 15px/1.2 var(--f-ui)}
.dl-txt small{font:400 12.5px/1.35 var(--f-ui);color:#59636e}

/* WhatsApp first; small button beside it for WhatsApp Business (phones only) */
.wa-more{all:unset;box-sizing:border-box;position:absolute;right:-5px;bottom:-5px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#157a42;box-shadow:0 0 0 1.5px #157a42;cursor:pointer;z-index:2}
.wa-more:focus-visible{outline:3px solid var(--yellow);outline-offset:1px}
.wa-more[aria-expanded="true"]{background:#157a42;color:#fff}
.wa-menu{min-width:250px}

/* 1.10.10: dark ash announcement strip and footer, matching the page headers */
.announce{background:#353b42;color:#fff}
.announce a{color:#fff}
footer.site{background:#2f343a;color:#d3d8dd}
footer.site a{color:#e6e9ec}
footer.site a:hover{color:#fff}
footer.site .legal{border-top-color:rgba(255,255,255,.12)}

em,i,cite,address,blockquote{font-style:normal}
.entry-content em,.content-block em{font-weight:600}

/* =====================================================================
   1.13 Type and format of ecodatatechnologies.com: IBM Plex Sans throughout,
   the same palette, quieter details and comfortable reading
   ===================================================================== */
:root{
  --f-display:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-ui:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --f-mono:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --ink:#16222e; --muted:#55616d; --line:#dde2e7; --r:6px;
  --ash:#353b42; --ash-2:#2f343a; --navy:#2e4a6b; --navy-2:#3f6a94; --sun:#f5b400;
  --ok:#0a7d52; --ok-bg:#e3f2eb; --cream:#fbf0d9; --mist:#f4f6f9;
  --indigo:#2e4a6b; --indigo-2:#3f6a94; /* softened slate navy, as on ecodatatechnologies.com */
}
body{font-family:var(--f-body);font-size:16.5px;line-height:1.6;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;font-style:normal;letter-spacing:-.012em;line-height:1.15}
.hero h1{font-size:clamp(36px,4.6vw,56px);font-weight:600;letter-spacing:-.02em;line-height:1.06}
.hero h1 em,h1 em,h2 em,h3 em{font-style:normal;font-weight:600;color:var(--navy);-webkit-text-fill-color:var(--navy)}
.phero h1{font-weight:600;letter-spacing:-.018em}
.sec-head h2{font-size:clamp(26px,3vw,36px);font-weight:600;letter-spacing:-.015em;background:none!important;padding-bottom:0!important}
.sec-head p{font-size:16px}
/* Labels: plain, small, no decorative dash */
.eyebrow{font-family:var(--f-ui);font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{display:none!important}
.phero .eyebrow{color:#cfd6dd}
.hero .eyebrow{color:var(--muted)}
.dark .eyebrow{color:#cfd6dd}
/* Numbers line up in tables and tiles */
.v,.ind .v,.stat b,.numbers b,.kpi b,.tile .fig b,.trust strong,.gap-row b,.pit-out b,.sc-fig b,table td{font-variant-numeric:tabular-nums lining-nums}
.stat b,.numbers b,.kpi b,.tile .fig b,.trust strong,.sc-fig b{font-family:var(--f-display);font-weight:600;letter-spacing:-.01em}
/* Quieter surfaces: smaller radii, no lift on hover */
.btn{border-radius:5px;font-weight:600;letter-spacing:0}
.card,.tile,.brief,.panel,.board,.news-panel,.pillar,.commit>div,.aud article,.phase,.dlbtn,.share-box,.aside-box,.mv-card,.ibox,.cform,.rates-grid>*{border-radius:6px}
.btn:hover,a.card:hover,.tile:hover,.brief:hover{transform:none!important}
a.card:hover,.tile:hover,.brief:hover{box-shadow:0 6px 18px -14px rgba(22,34,46,.45)}
/* Buttons: slate navy, as on ecodatatechnologies.com */
.btn-gold{background:var(--navy);color:#fff}
.btn-gold:hover{background:var(--navy-2)}
.btn-ink{background:var(--navy);color:#fff}
.links .donate,.links li.donate>a{background:var(--navy)!important;color:#fff!important;border-radius:5px}
.links li.donate>a:hover{background:var(--navy-2)!important}
/* Links read as links */
.more-link,.sec-head p a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.entry-content a{text-underline-offset:3px;text-decoration-thickness:1px}
/* Comfortable long-form reading */
.entry-content{font-size:17px;line-height:1.7;max-width:44em}
.entry-content h2{font-size:26px;margin:1.6em 0 .5em}
.entry-content h3{font-size:20px;margin:1.4em 0 .4em}
.entry-content p,.entry-content li{color:#24313d}
/* No italics anywhere */
em,i,cite,address,blockquote{font-style:normal}
/* Focus and motion */
:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Print: clean pages for reports and dataset pages */
@media print{
  .ticker,.announce,header.top,footer.site,.news-panel,.cta-row,.btn,.share-box,.aside-share,.live-band{display:none!important}
  body{font-size:11pt;color:#000;background:#fff}
  .phero{background:#fff!important;color:#000!important;padding:0}
  .phero h1,.phero p,.phero .eyebrow,.phero .crumbs,.phero .crumbs a{color:#000!important}
  .phero::before{display:none}
  .band{padding-block:18px!important}
  a{color:#000;text-decoration:underline}
}

/* 1.13.1: justified text. Paragraphs of running text are justified, with hyphenation so the
   spacing stays even. Headings, labels, buttons, tables, figures and short notes stay ranged left. */
main p,main li,.entry-content p,.entry-content li,.content-block p,.content-block li,.sec-head p,.brief p,.pillar p,.aud p,.commit p,.mv-card p,.phero p,.hero .lead,.tile p,.card p,footer.site p{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.tile p,main li:has(>a:only-child),nav li,.menu li,.links li,.lg li,.share-row,.sicons,.crumbs,.post-meta,.eyebrow,.muted small,.tag,.lnote,.share-note,.news-list li,.phases li,.trust div,.fig,.btn,table p,figcaption,.kpi,.stat,.numbers,.rates-grid p,.converter p,.legal,.ft-src,[style*="text-align:center"],.center{text-align:left;hyphens:manual}
[style*="text-align:center"]{text-align:center}
