:root{
  --ink:#0a1117;
  --navy:#062f54;
  --navy2:#083b68;
  --brand:#30c99d;
  --brand-dark:#159f79;
  --brand-soft:#e8f8f3;
  --bg:#f5f7f8;
  --surface:#ffffff;
  --muted:#647282;
  --line:#dfe5e8;
  --container:1180px;
  --shadow:0 12px 28px rgba(6,47,84,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Roboto,Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
.section{padding:74px 0}
.section-soft{background:var(--bg)}
.kicker{font-size:16px;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--brand-dark)}
.section-head{max-width:720px;margin-bottom:30px}
.section-head.center{text-align:center;margin-inline:auto}
.section-head h2{font-size:36px;line-height:1.08;letter-spacing:-.035em;margin:9px 0 10px;font-weight:800}
.section-head p{margin:0;color:var(--muted);font-size:18px;line-height:1.7}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;font-size:17px;font-weight:800;border:0;border-radius:4px;transition:.18s ease}
.btn-green{background:var(--brand);color:#07110e}
.btn-green:hover{background:#3bd7aa;transform:translateY(-1px)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{background:var(--navy2)}
.btn-white{background:#fff;color:var(--navy)}
.text-link{font-size:17px;font-weight:800;color:var(--brand-dark)}

/* header */
.topline{height:6px;background:var(--navy)}
.header{position:sticky;top:0;z-index:80;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 16px rgba(10,17,23,.035)}
.header-inner{height:72px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand-icon{width:30px;height:44px;object-fit:cover;object-position:center;border:0}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-name{font-size:24px;font-weight:800;letter-spacing:-.025em;text-transform:uppercase;color:#05080b}
.brand-tag{font-size:16px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#3e4852;margin-top:5px;white-space:nowrap}
.nav{display:flex;align-items:center;justify-content:center;gap:30px}
.nav-item{position:relative}
.nav>a,.nav-item>a{display:flex;align-items:center;gap:7px;height:72px;font-size:16px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#536171;position:relative}
.nav>a:hover,.nav>a.active,.nav-item:hover>a{color:var(--ink)}
.nav>a:after,.nav-item>a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;background:var(--brand);transition:right .18s ease}
.nav>a:hover:after,.nav>a.active:after,.nav-item:hover>a:after{right:0}
.chev{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.dropdown{position:absolute;top:65px;left:-16px;min-width:220px;padding:8px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s ease}
.nav-item:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown a{display:block;padding:10px 12px;font-size:17px;color:#455362;font-weight:700;border-radius:3px}
.dropdown a:hover{background:var(--brand-soft);color:#0b3f33}
.header-actions{display:flex;align-items:center;gap:10px}
.search{width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:4px;display:grid;place-items:center;font-size:21px;color:#42505f}
.menu{display:none;border:0;background:transparent;font-size:28px;color:var(--ink);padding:6px}

/* hero */
.hero{background:#fff;padding:22px 0 0}
.hero-banner{min-height:465px;position:relative;overflow:hidden;background:#0b2538}
.hero-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,31,.9) 0%,rgba(4,19,31,.72) 42%,rgba(4,19,31,.16) 72%,rgba(4,19,31,.05) 100%)}
.hero-content{position:relative;z-index:2;width:52%;padding:68px 54px;color:#fff}
.hero-content .kicker{color:#8be8cc}
.hero h1{font-size:52px;line-height:1.02;letter-spacing:-.045em;margin:12px 0 16px;font-weight:800;max-width:10ch}
.hero p{font-size:18px;line-height:1.68;color:#dce8ef;margin:0 0 24px;max-width:53ch}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.hero-note{position:absolute;z-index:2;right:30px;bottom:26px;width:320px;background:#fff;color:var(--ink);border-top:4px solid var(--brand);padding:17px 18px;box-shadow:0 14px 32px rgba(0,0,0,.16)}
.hero-note small{display:block;font-size:16px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--brand-dark);margin-bottom:6px}
.hero-note strong{display:block;font-size:18px;line-height:1.3;margin-bottom:5px}
.hero-note span{font-size:16px;color:var(--muted);line-height:1.45}

/* utility strip */
.utility-strip{margin-top:0;background:#fff;border:1px solid var(--line);border-top:0;display:grid;grid-template-columns:repeat(4,1fr)}
.utility-item{padding:18px 20px;display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;border-right:1px solid var(--line)}
.utility-item:last-child{border-right:0}
.utility-icon{width:34px;height:34px;background:var(--brand-soft);color:var(--brand-dark);display:grid;place-items:center;font-size:16px;font-weight:800}
.utility-item strong{display:block;font-size:17px;margin:1px 0 4px;font-weight:800}
.utility-item span{display:block;font-size:16px;line-height:1.45;color:var(--muted)}

/* topics */
.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#fff}
.topic-card{padding:25px 22px;min-height:160px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.18s ease}
.topic-card:nth-child(4n){border-right:0}
.topic-card:nth-last-child(-n+4){border-bottom:0}
.topic-card:hover{background:#fbfdfc}
.topic-no{font-size:16px;font-weight:800;color:var(--brand-dark);letter-spacing:.12em}
.topic-card h3{font-size:18px;line-height:1.25;margin:14px 0 7px;font-weight:800}
.topic-card p{font-size:17px;line-height:1.6;color:var(--muted);margin:0;max-width:26ch}
.topic-arrow{position:absolute;right:18px;top:18px;font-size:18px;color:#9ba6af}

/* dark band */
.dark-band{background:var(--navy);color:#fff}
.band-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;padding:48px 0}
.band-copy h2{font-size:36px;letter-spacing:-.035em;line-height:1.08;margin:7px 0 10px;font-weight:800}
.band-copy p{margin:0;color:#c6d8e8;font-size:18px;line-height:1.7;max-width:60ch}
.band-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.18)}
.metric{padding:8px 20px}
.metric strong{display:block;font-size:36px;line-height:1;font-weight:800;color:#fff;margin-bottom:6px}
.metric span{display:block;font-size:16px;line-height:1.45;color:#b8ccdd;text-transform:uppercase;letter-spacing:.08em;font-weight:700}

/* news */
.news-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:start}
.featured-story{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--line);min-height:390px}
.featured-story img{width:100%;height:100%;object-fit:cover;min-height:390px}
.featured-copy{padding:34px 30px;display:flex;flex-direction:column;justify-content:center}
.story-meta{font-size:16px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--brand-dark)}
.featured-copy h3{font-size:32px;line-height:1.12;letter-spacing:-.03em;margin:11px 0 10px;font-weight:800}
.featured-copy p{font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 18px}
.news-list{border-top:3px solid var(--navy)}
.news-row{display:grid;grid-template-columns:76px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.news-row .date{font-size:16px;line-height:1.5;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.news-row h4{font-size:18px;line-height:1.35;margin:0 0 6px;font-weight:800}
.news-row span{font-size:16px;color:var(--brand-dark);font-weight:700}

/* countries */
.country-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:18px;row-gap:20px}
.country{position:relative;min-height:300px;overflow:hidden;background:#102738;border:1px solid rgba(8,18,24,.06)}
.country img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.country:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,19,30,.05),rgba(5,19,30,.82))}
.country:hover img{transform:scale(1.025)}
.country-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff}
.country-copy small{font-size:16px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#8de7ce}
.country-copy h3{font-size:32px;margin:6px 0 7px;line-height:1;font-weight:800}
.country-copy p{margin:0 0 13px;font-size:16px;line-height:1.55;color:#d9e5ec}
.country-cta{display:inline-block;font-size:16px;font-weight:800;color:#fff;border-bottom:1px solid var(--brand);padding-bottom:2px}
.country-index{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fff}
.country-index a{padding:15px 18px;border-right:1px solid var(--line);font-size:17px;font-weight:800;display:flex;justify-content:space-between;align-items:center}
.country-index a:nth-child(3n){border-right:0}
.country-index a:hover{background:var(--brand-soft)}

/* calculators */
.calc-section{background:#f1f4f5}
.calc-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:44px;align-items:center}
.calc-intro h2{font-size:40px;line-height:1.05;letter-spacing:-.04em;margin:10px 0 12px;font-weight:800}
.calc-intro p{font-size:18px;line-height:1.7;color:var(--muted);margin:0 0 20px}
.calc-list{background:#fff;border:1px solid var(--line)}
.calc-row{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
.calc-row:last-child{border-bottom:0}
.calc-icon{width:42px;height:42px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand-dark);font-weight:800;font-size:16px}
.calc-row strong{display:block;font-size:18px;margin-bottom:3px;font-weight:800}
.calc-row span{font-size:16px;color:var(--muted)}
.calc-row b{font-size:18px;color:#8b98a3}
.calc-row:hover b{color:var(--brand-dark);transform:translateX(2px)}

/* guides */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.article-card{background:#fff;border:1px solid var(--line)}
.article-card img{width:100%;height:205px;object-fit:cover}
.article-body{padding:20px}
.article-body h3{font-size:21px;line-height:1.3;letter-spacing:-.015em;margin:8px 0 8px;font-weight:800}
.article-body p{font-size:17px;line-height:1.6;color:var(--muted);margin:0 0 13px}

/* faq / newsletter */
.faq-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:54px;align-items:start}
.faq-list{border-top:2px solid var(--navy)}
.faq{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{font-size:18px;font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px}
.faq summary::-webkit-details-marker{display:none}
.faq p{font-size:17px;line-height:1.65;color:var(--muted);margin:11px 0 0}
.newsletter{margin-top:70px;background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:32px 34px}
.newsletter h3{font-size:28px;line-height:1.12;margin:5px 0 7px;font-weight:800}
.newsletter p{font-size:17px;color:#c7d7e5;margin:0}
.signup{display:flex;gap:8px}
.signup input{width:260px;border:0;background:#fff;padding:0 14px;height:44px;color:var(--ink);outline:none}

/* footer */
.footer{background:#071725;color:#cbd9e4;padding:48px 0 18px}
.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:42px;padding-bottom:34px}
.footer .brand-name{color:#fff}
.footer .brand-tag{color:#a9bac7}
.footer p{font-size:16px;line-height:1.65;color:#aebfcb;max-width:42ch}
.footer h4{font-size:16px;letter-spacing:.13em;text-transform:uppercase;color:#88e2c9;margin:5px 0 13px}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:8px 0;font-size:16px;color:#cbd9e4}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:14px;display:flex;justify-content:space-between;gap:20px;font-size:16px;color:#8498a8}

@media(max-width:1020px){
  .header-inner{grid-template-columns:170px 1fr auto}.nav{gap:18px}.nav>a,.nav-item>a{font-size:16px}
  .hero-content{width:60%;padding:54px 40px}.hero h1{font-size:40px}.hero-note{width:285px}
  .utility-strip{grid-template-columns:repeat(2,1fr)}.utility-item:nth-child(2){border-right:0}.utility-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .topic-grid{grid-template-columns:repeat(2,1fr)}.topic-card:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.topic-card:nth-child(2n){border-right:0}.topic-card:nth-last-child(-n+2){border-bottom:0}
  .news-layout,.calc-layout,.faq-layout{grid-template-columns:1fr}.news-list{margin-top:4px}
  .band-inner{grid-template-columns:1fr;gap:28px}.band-metrics{border-left:0;border-top:1px solid rgba(255,255,255,.16);padding-top:22px}
}
@media(max-width:820px){
  .header-inner{display:flex;height:66px}.brand{margin-right:auto}.nav{display:none;position:absolute;left:0;right:0;top:66px;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px;flex-direction:column;align-items:flex-start;gap:0}.nav.open{display:flex}.nav>a,.nav-item>a{height:auto;padding:11px 0}.nav>a:after,.nav-item>a:after,.dropdown{display:none}.header-actions .btn,.search{display:none}.menu{display:block}
  .hero{padding-top:14px}.hero-banner{min-height:510px}.hero-content{width:72%;padding:52px 34px}.hero-note{right:18px;bottom:18px}
  .featured-story{grid-template-columns:1fr}.featured-story img{min-height:260px;height:260px}.country-grid,.card-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .container{width:min(calc(100% - 28px),var(--container))}.section{padding:56px 0}.section-head h2{font-size:32px}.brand-icon{width:27px;height:39px}.brand-name{font-size:21px}.brand-tag{font-size:16px}
  .hero-banner{min-height:600px}.hero-banner:after{background:linear-gradient(180deg,rgba(4,19,31,.83) 0%,rgba(4,19,31,.66) 65%,rgba(4,19,31,.5) 100%)}.hero-content{width:100%;padding:44px 24px}.hero h1{font-size:40px;max-width:11ch}.hero p{font-size:18px}.hero-note{left:20px;right:20px;bottom:18px;width:auto}.utility-strip{grid-template-columns:1fr}.utility-item{border-right:0;border-bottom:1px solid var(--line)!important}.utility-item:last-child{border-bottom:0!important}
  .topic-grid,.country-grid,.card-grid{grid-template-columns:1fr}.topic-card:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}.topic-card:last-child{border-bottom:0}.band-metrics{grid-template-columns:1fr}.metric{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1)}.metric:last-child{border-bottom:0}.featured-copy{padding:25px 22px}.featured-copy h3{font-size:28px}.country{min-height:290px}.calc-intro h2{font-size:36px}.newsletter{grid-template-columns:1fr;padding:26px 22px}.signup{flex-direction:column}.signup input{width:100%}.footer-grid{grid-template-columns:1fr 1fr;gap:26px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}
}

.page{display:none}.page.active{display:block;animation:pageIn .18s ease}@keyframes pageIn{from{opacity:.55}to{opacity:1}}
.page-hero{padding:68px 0 42px;background:linear-gradient(180deg,#f7f9fa,#fff);border-bottom:1px solid var(--line)}
.page-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:end}.breadcrumbs{font-size:16px;color:var(--muted);margin-bottom:16px}.page-hero h1{font-size:52px;line-height:1;letter-spacing:-.045em;margin:8px 0 13px;font-weight:800;max-width:14ch}.page-hero p{font-size:18px;line-height:1.7;color:var(--muted);max-width:60ch;margin:0}.page-aside{border-left:3px solid var(--brand);padding:10px 0 10px 22px}.page-aside strong{display:block;font-size:18px;line-height:1.35;margin-bottom:8px}.page-aside span{font-size:16px;line-height:1.6;color:var(--muted)}
.archive-grid{display:grid;grid-template-columns:1fr 300px;gap:42px}.post-list{border-top:3px solid var(--navy)}.post-item{display:grid;grid-template-columns:100px 1fr 80px;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);align-items:start}.post-item .date{font-size:16px;line-height:1.5;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.post-item h3{font-size:24px;line-height:1.25;margin:6px 0 8px;font-weight:800}.post-item p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}.post-item .read{text-align:right;font-size:16px;color:var(--brand-dark);font-weight:800}.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.filterbar button{border:1px solid var(--line);background:#fff;padding:9px 13px;font-size:16px;font-weight:800;cursor:pointer}.filterbar button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.sidebox{background:var(--bg);border-top:3px solid var(--brand);padding:22px}.sidebox h3{font-size:18px;margin:0 0 14px}.sidebox a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:700}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.guide-card{border:1px solid var(--line);background:#fff}.guide-img{height:190px;overflow:hidden}.guide-img img{width:100%;height:100%;object-fit:cover}.guide-body{padding:21px}.guide-body h3{font-size:24px;line-height:1.25;margin:8px 0 9px;font-weight:800}.guide-body p{font-size:17px;line-height:1.62;color:var(--muted);margin:0 0 15px}
.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.tool-card{background:#fff;border:1px solid var(--line);padding:24px}.tool-top{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:18px}.tool-card h3{font-size:24px;margin:3px 0 6px;font-weight:800}.tool-card p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}.tool-badge{width:48px;height:48px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-dark);font-size:16px;font-weight:800}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.field label,.contact-form label{display:block;font-size:16px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:6px;color:#4b5967}.field input,.field select,.contact-form input,.contact-form textarea{width:100%;height:44px;border:1px solid var(--line);padding:0 12px;background:#fff;color:var(--ink);outline:none}.contact-form textarea{height:140px;padding-top:12px;resize:vertical}.result{margin-top:14px;background:var(--navy);color:#fff;padding:16px}.result small{display:block;font-size:16px;text-transform:uppercase;letter-spacing:.09em;color:#a9c3d6}.result strong{display:block;font-size:32px;margin-top:4px}.calc-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.country-index-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.country-info{border:1px solid var(--line);background:#fff;overflow:hidden}.country-info img{height:230px;width:100%;object-fit:cover}.country-info-body{padding:20px}.country-info h3{font-size:24px;margin:4px 0 8px}.country-info p{font-size:17px;line-height:1.62;color:var(--muted);margin:0 0 14px}.facts{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.facts span{font-size:16px;background:var(--brand-soft);color:#0c4d3b;padding:6px 8px;font-weight:800}.country-detail-hero{position:relative;min-height:390px;overflow:hidden;background:#0e2838}.country-detail-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.country-detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,31,.92),rgba(5,20,31,.36))}.country-detail-copy{position:relative;z-index:2;color:#fff;padding:72px 0;width:60%}.country-detail-copy .kicker{color:#92edd4}.country-detail-copy h1{font-size:52px;line-height:1;margin:8px 0 12px;font-weight:800}.country-detail-copy p{font-size:18px;line-height:1.7;color:#dbe9f0}.country-nav-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-top:28px}.country-nav-grid a{padding:18px;border-right:1px solid var(--line);font-size:17px;font-weight:800;background:#fff}.country-nav-grid a:last-child{border-right:0}.country-nav-grid a:hover{background:var(--brand-soft)}
.prose-wrap{display:grid;grid-template-columns:220px minmax(0,760px) 1fr;gap:34px;align-items:start}.toc{position:sticky;top:105px;border-top:3px solid var(--brand);padding-top:14px}.toc strong{font-size:16px;text-transform:uppercase;letter-spacing:.1em}.toc a{display:block;font-size:16px;color:var(--muted);padding:8px 0;border-bottom:1px solid var(--line)}.prose{font-size:18px;line-height:1.78}.prose .lead{font-size:24px;line-height:1.6;color:#344451}.prose h2{font-size:32px;line-height:1.2;margin:34px 0 10px}.prose p,.prose li{color:#354452}.article-side{background:var(--bg);padding:20px;border-top:3px solid var(--navy)}.article-side h4{font-size:18px;margin:0 0 10px}.article-side a{display:block;font-size:16px;font-weight:700;padding:9px 0;border-bottom:1px solid var(--line)}
.about-grid,.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px}.value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.value-card,.contact-card{border:1px solid var(--line);padding:20px;background:#fff}.value-card strong{display:block;font-size:18px;margin-bottom:7px}.value-card p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}.contact-form{display:grid;gap:12px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-note{background:var(--brand-soft);padding:22px;border-left:3px solid var(--brand-dark)}.contact-note h3{margin:0 0 8px}.contact-note p{font-size:17px;line-height:1.6;color:#345447;margin:0}
.search-panel{position:fixed;inset:0;background:rgba(4,15,24,.82);z-index:120;display:none;align-items:flex-start;justify-content:center;padding:120px 20px}.search-panel.open{display:flex}.search-box{width:min(760px,100%);background:#fff;padding:26px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.search-box-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.search-box input{width:100%;height:52px;border:1px solid var(--line);padding:0 15px;font-size:18px}.search-results{margin-top:15px;border-top:1px solid var(--line)}.search-result{display:block;padding:13px 0;border-bottom:1px solid var(--line)}.search-result strong{display:block;font-size:18px;margin-bottom:3px}.search-result span{font-size:16px;color:var(--muted)}
@media(max-width:1020px){.archive-grid,.about-grid,.contact-grid,.page-hero-grid{grid-template-columns:1fr}.archive-grid aside,.page-aside{display:none}.guide-grid,.country-index-grid{grid-template-columns:repeat(2,1fr)}.prose-wrap{grid-template-columns:180px 1fr}.article-side{display:none}}
@media(max-width:820px){.tools-grid{grid-template-columns:1fr}.country-detail-copy{width:78%}.country-nav-grid{grid-template-columns:repeat(2,1fr)}.prose-wrap{grid-template-columns:1fr}.toc{display:none}}
@media(max-width:620px){.page-hero{padding:50px 0 30px}.page-hero h1,.country-detail-copy h1{font-size:40px}.post-item{grid-template-columns:60px 1fr}.post-item .read{display:none}.guide-grid,.country-index-grid,.form-grid,.row2,.value-grid{grid-template-columns:1fr}.country-detail-copy{width:100%;padding:54px 0}.country-nav-grid{grid-template-columns:1fr}.country-nav-grid a{border-right:0;border-bottom:1px solid var(--line)}.country-nav-grid a:last-child{border-bottom:0}}

/* NexaGulf V3 editorial redesign */
:root{--ng-ink:#08131c;--ng-navy:#092f4f;--ng-navy-deep:#041f35;--ng-mint:#29c49a;--ng-mint-dark:#0f8063;--ng-sand:#f1eee7;--ng-paper:#fff;--ng-smoke:#f5f6f4;--ng-line:#d9dfdf;--ng-muted:#61707b;--ng-container:1200px}
body,button,input,select,textarea{font-family:Roboto,Arial,sans-serif!important}body{background:var(--ng-paper);color:var(--ng-ink)}
.container{width:min(calc(100% - 48px),var(--ng-container))}
.ng-topbar{background:var(--ng-navy-deep);color:#c8d7e1;font-size:16px;letter-spacing:.03em}
.ng-topbar-inner{height:34px;display:flex;align-items:center;gap:24px}.ng-topbar-inner>span:first-child{font-weight:700;color:#fff}.ng-topbar-inner a{margin-left:auto;color:#fff}.ng-updated{color:#91a8b8}
.ng-header{position:sticky;top:0;z-index:90;background:#fff;border-bottom:1px solid var(--ng-line)}
.ng-masthead{height:84px;display:grid;grid-template-columns:260px 1fr 260px;align-items:center;gap:28px}
.ng-brand{display:flex;align-items:center;gap:12px}.ng-brand img{width:30px;height:43px;object-fit:cover}.ng-brand span{display:flex;flex-direction:column}.ng-brand strong{font-size:28px;line-height:1;font-weight:800;letter-spacing:-.045em;text-transform:uppercase}.ng-brand small{font-size:16px;line-height:1;margin-top:7px;text-transform:uppercase;letter-spacing:.17em;color:#5e6972;font-weight:800}
.ng-country-links{display:flex;justify-content:center;gap:0}.ng-country-links a{min-width:58px;padding:7px 12px;border-right:1px solid var(--ng-line);font-size:16px;font-weight:800;letter-spacing:.09em;text-align:center;color:#53616b}.ng-country-links a:first-child{border-left:1px solid var(--ng-line)}.ng-country-links a:hover{color:var(--ng-mint-dark);background:#f2faf7}
.ng-head-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.ng-search,.ng-news-btn,.ng-menu{height:40px;border:1px solid var(--ng-line);background:#fff;padding:0 16px;font:800 16px Roboto,Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.ng-news-btn{display:inline-flex;align-items:center;background:var(--ng-mint);border-color:var(--ng-mint);color:#041913}.ng-menu{display:none}
.ng-nav-wrap{border-top:1px solid var(--ng-line)}.ng-nav{height:48px;display:flex;align-items:center;gap:38px}.ng-nav a{height:48px;display:flex;align-items:center;position:relative;font-size:16px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;color:#4e5a63}.ng-nav a:first-child{color:var(--ng-mint-dark)}.ng-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:3px;background:var(--ng-mint);transition:.2s}.ng-nav a:hover:after,.ng-nav a.active:after{right:0}.ng-nav a:hover{color:var(--ng-ink)}
.ng-lead-section{padding:0}
.ng-wide-banner{height:560px;position:relative;overflow:hidden;background:#0a273b}.ng-wide-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,20,32,.92) 0%,rgba(3,20,32,.73) 43%,rgba(3,20,32,.2) 74%,rgba(3,20,32,.08) 100%)}.ng-wide-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .65s ease}.ng-wide-banner:hover>img{transform:scale(1.012)}.ng-wide-banner-inner{height:100%;position:relative;z-index:2;display:flex;align-items:center}.ng-photo-label{display:none}.ng-lead-copy{width:min(620px,58%);padding:42px 0;color:#fff}.ng-meta,.ng-brief-item small,.ng-story-row small{font-size:16px;font-weight:800;letter-spacing:.085em;text-transform:uppercase;color:var(--ng-mint-dark)}.ng-wide-banner .ng-meta{color:#72dfc2}.ng-lead-copy h1{margin:10px 0 14px;font-size:52px;line-height:1.01;letter-spacing:-.05em;font-weight:800}.ng-lead-copy h1 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.ng-lead-copy p{max-width:590px;margin:0;color:#d7e3ea;font-size:18px;line-height:1.68}.ng-read-link{display:inline-flex;gap:12px;margin-top:20px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff}.ng-read-link span{color:#72dfc2}
.ng-briefing{display:grid;grid-template-columns:repeat(3,1fr) 260px;border-bottom:1px solid var(--ng-line);padding:0}.ng-briefing-head{grid-column:1/-1;height:48px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--ng-ink);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.ng-briefing-head a{font-size:16px;color:var(--ng-mint-dark)}.ng-brief-item{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:20px 20px 20px 0;border-right:1px solid var(--ng-line)}.ng-brief-item+.ng-brief-item{padding-left:20px}.ng-index{font-size:16px;color:#96a0a7;font-weight:800;padding-top:2px}.ng-brief-item h2{font-size:18px;line-height:1.28;margin:5px 0 7px;font-weight:800;letter-spacing:-.015em}.ng-brief-item>div>span{font-size:16px;color:var(--ng-muted)}.ng-brief-item:hover h2{color:var(--ng-mint-dark)}.ng-brief-note{margin:0;padding:20px;background:var(--ng-sand);border-left:3px solid var(--ng-mint-dark)}.ng-brief-note strong{font-size:16px;text-transform:uppercase;letter-spacing:.07em}.ng-brief-note p{margin:6px 0 0;font-size:16px;line-height:1.55;color:#58636a}
.ng-fast-nav{min-height:58px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--ng-line);font-size:16px}.ng-fast-nav span{font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ng-muted)}.ng-fast-nav a{font-weight:800;color:var(--ng-navy)}.ng-fast-nav a:hover{color:var(--ng-mint-dark)}
.ng-section{padding:78px 0}.ng-eyebrow{display:block;margin-bottom:9px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--ng-mint-dark)}.ng-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:19px;border-bottom:3px solid var(--ng-ink)}.ng-heading-row h2,.ng-topics-head h2,.ng-tools-intro h2{margin:0;font-size:36px;line-height:1.08;letter-spacing:-.035em;font-weight:800}.ng-heading-row p{max-width:630px;margin:9px 0 0;color:var(--ng-muted);font-size:17px;line-height:1.6}.ng-heading-row>a{font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ng-mint-dark);white-space:nowrap}
.ng-coverage-section{background:#fff}.ng-coverage-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:56px}.ng-story-row{display:grid;grid-template-columns:62px 1fr 46px;gap:20px;align-items:start;padding:24px 0;border-bottom:1px solid var(--ng-line)}.ng-story-country{width:46px;height:46px;display:grid;place-items:center;background:var(--ng-navy);color:#fff;font-size:16px;font-weight:800;letter-spacing:.06em}.ng-story-row h3{margin:5px 0 6px;font-size:24px;line-height:1.25;letter-spacing:-.018em}.ng-story-row p{margin:0;font-size:17px;line-height:1.55;color:var(--ng-muted)}.ng-story-time{padding-top:20px;text-align:right;font-size:16px;color:var(--ng-muted)}.ng-story-row:hover h3{color:var(--ng-mint-dark)}.ng-topics{border-top:3px solid var(--ng-ink)}.ng-topics-head{padding:20px 0 19px}.ng-topics-head h2{font-size:28px}.ng-topics>a{min-height:66px;display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center;border-top:1px solid var(--ng-line)}.ng-topics>a>span{font-size:16px;color:#94a0a8;font-weight:800}.ng-topics strong{font-size:18px}.ng-topics b{font-size:18px;color:var(--ng-mint-dark)}.ng-topics>a:hover strong{color:var(--ng-mint-dark)}
.ng-countries-section{background:var(--ng-navy-deep);color:#fff}.ng-heading-row-light{border-color:rgba(255,255,255,.25)}.ng-heading-row-light p{color:#aec1ce}.ng-heading-row-light>a{color:#72dfc2}.ng-country-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.16);margin-top:30px}.ng-country-grid>a{min-height:250px;padding:26px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);position:relative}.ng-country-grid>a:nth-last-child(-n+3){border-bottom:0}.ng-country-grid>a:hover{background:rgba(255,255,255,.045)}.ng-code{font-size:16px;color:#72dfc2;font-weight:800;letter-spacing:.12em}.ng-country-grid h3{font-size:24px;line-height:1.15;margin:12px 0 4px}.ng-country-grid p{margin:0 0 20px;color:#94abba;font-size:16px}.ng-country-grid dl{margin:0}.ng-country-grid dl>div{display:flex;justify-content:space-between;padding:7px 0;border-top:1px solid rgba(255,255,255,.12);font-size:16px}.ng-country-grid dt{color:#99adba}.ng-country-grid dd{margin:0;font-weight:800}.ng-country-grid b{position:absolute;left:26px;bottom:24px;color:#72dfc2;font-size:16px}.ng-data-note{margin:25px 0 0;color:#88a0af;font-size:16px;line-height:1.5}
.ng-tools-section{background:var(--ng-sand)}.ng-tools-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:78px;align-items:start}.ng-tools-intro h2{font-size:40px}.ng-tools-intro p{margin:16px 0 22px;font-size:18px;line-height:1.7;color:#58656e}.ng-solid-link{display:inline-flex;padding:13px 17px;background:var(--ng-navy);color:#fff;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border-radius:4px}.ng-tool-list{border-top:3px solid var(--ng-ink)}.ng-tool-list>a{min-height:91px;display:grid;grid-template-columns:52px 1fr auto;gap:18px;align-items:center;border-bottom:1px solid #cfd3cd}.ng-tool-list>a>span{width:44px;height:44px;display:grid;place-items:center;background:#fff;color:var(--ng-mint-dark);font-size:16px;font-weight:800}.ng-tool-list h3{font-size:18px;margin:0 0 4px}.ng-tool-list p{font-size:16px;color:#667078;margin:0}.ng-tool-list b{font-size:18px;color:var(--ng-mint-dark)}.ng-tool-list>a:hover h3{color:var(--ng-mint-dark)}
.ng-standards-section{background:#fff}.ng-standard-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ng-line);margin-top:26px}.ng-standard-grid article{padding:22px 24px 8px;border-right:1px solid var(--ng-line)}.ng-standard-grid span{font-size:16px;color:var(--ng-mint-dark);font-weight:800}.ng-standard-grid h3{font-size:18px;margin:15px 0 8px}.ng-standard-grid p{font-size:17px;line-height:1.6;color:var(--ng-muted);margin:0}
.ng-brief-signup{padding:0 0 78px;background:#fff}.ng-brief-signup-inner{padding:36px 38px;background:var(--ng-navy);color:#fff;display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.ng-brief-signup-inner>div>span{font-size:16px;text-transform:uppercase;letter-spacing:.12em;color:#72dfc2;font-weight:800}.ng-brief-signup h2{margin:0 0 6px;font-size:32px;letter-spacing:-.025em}.ng-brief-signup p{margin:0;color:#b9ccda;font-size:16px}.ng-signup-form{width:390px}.ng-signup-form label{display:block;margin-bottom:7px;font-size:16px;text-transform:uppercase;letter-spacing:.1em;color:#b9ccda;font-weight:800}.ng-signup-form>div{display:grid;grid-template-columns:1fr auto}.ng-signup-form input{height:46px;border:0;padding:0 14px}.ng-signup-form button{height:46px;border:0;background:var(--ng-mint);padding:0 20px;font-weight:800;font-size:16px;text-transform:uppercase}.ng-signup-form small{display:block;margin-top:7px;color:#8da5b5;font-size:16px}
/* Shuraa-inspired below-fold system, adapted for NexaGulf */
.ng-shuraa-section{padding:96px 0}.ng-shuraa-head{max-width:780px;margin:0 auto 44px;text-align:center}.ng-shuraa-head>span,.ng-split-heading>div>span,.ng-calculator-intro>span,.ng-process-intro>span,.ng-stats-copy>span,.ng-trust-shell>div>span{display:block;margin-bottom:11px;color:var(--ng-mint-dark);font-size:16px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ng-shuraa-head h2,.ng-split-heading h2,.ng-calculator-intro h2,.ng-process-intro h2,.ng-stats-copy h2,.ng-trust-shell h2{margin:0;font-size:40px;line-height:1.08;letter-spacing:-.042em;font-weight:800}.ng-shuraa-head p{max-width:650px;margin:15px auto 0;color:var(--ng-muted);font-size:18px;line-height:1.7}
.ng-hubs-section{background:#fff}.ng-hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ng-hub-grid>a{min-height:248px;padding:28px 25px 24px;border:1px solid #e0e5e3;border-radius:4px;background:#fff;box-shadow:0 8px 24px rgba(6,47,84,.045);display:flex;flex-direction:column;justify-content:space-between;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.ng-hub-grid>a:hover{transform:translateY(-5px);border-color:#b7dfd2;box-shadow:0 20px 46px rgba(6,47,84,.11)}.ng-hub-mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e8f8f3;color:var(--ng-mint-dark);font-size:16px;font-weight:800;letter-spacing:.06em}.ng-hub-grid h3{margin:22px 0 9px;font-size:24px;letter-spacing:-.025em}.ng-hub-grid p{min-height:58px;margin:0;color:var(--ng-muted);font-size:17px;line-height:1.58}.ng-hub-grid b{display:block;margin-top:17px;color:var(--ng-navy);font-size:16px;text-transform:uppercase;letter-spacing:.055em}.ng-hub-grid>a:hover b{color:var(--ng-mint-dark)}
.ng-market-rail{background:var(--ng-navy-deep);color:#fff}.ng-market-rail-inner{min-height:104px;display:grid;grid-template-columns:1.6fr repeat(6,.45fr) 1.25fr;align-items:center;gap:0}.ng-market-rail-inner>div{display:flex;flex-direction:column}.ng-market-rail-inner>div strong{font-size:18px}.ng-market-rail-inner>div span{margin-top:4px;color:#93a8b6;font-size:16px;text-transform:uppercase;letter-spacing:.08em}.ng-market-rail-inner>span{height:36px;display:grid;place-items:center;border-left:1px solid rgba(255,255,255,.16);color:#d9e5ec;font-size:16px;font-weight:800;letter-spacing:.1em}.ng-market-rail-inner>a{text-align:right;color:#72dfc2;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.ng-featured-section{background:#f4f5f2}.ng-split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:36px}.ng-split-heading h2{max-width:720px}.ng-split-heading>a{margin-bottom:8px;color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.ng-feature-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:18px}.ng-feature-card{height:440px;position:relative;overflow:hidden;border-radius:4px;background:#092f4f}.ng-feature-card-wide{height:440px}.ng-feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.ng-feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,19,31,.04) 20%,rgba(3,19,31,.94) 100%)}.ng-feature-card:hover img{transform:scale(1.035)}.ng-feature-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px;color:#fff}.ng-feature-overlay small{color:#72dfc2;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.ng-feature-overlay h3{margin:9px 0 10px;font-size:28px;line-height:1.15;letter-spacing:-.03em}.ng-feature-card:not(.ng-feature-card-wide) .ng-feature-overlay h3{font-size:24px}.ng-feature-overlay p{margin:0 0 14px;color:#c9d7df;font-size:16px;line-height:1.55}.ng-feature-overlay b{font-size:16px;text-transform:uppercase;letter-spacing:.06em;color:#fff}
.ng-stats-section{padding:64px 0;background:var(--ng-navy);color:#fff;position:relative;overflow:hidden}.ng-stats-section:after{content:"";position:absolute;width:410px;height:410px;border:1px solid rgba(114,223,194,.14);border-radius:50%;right:-150px;top:-170px;box-shadow:0 0 0 55px rgba(114,223,194,.035),0 0 0 110px rgba(114,223,194,.025)}.ng-stats-layout{position:relative;z-index:2;display:grid;grid-template-columns:1.45fr repeat(4,.62fr);align-items:center}.ng-stats-copy{padding-right:42px}.ng-stats-copy>span{color:#72dfc2}.ng-stats-copy h2{font-size:36px}.ng-stats-copy p{margin:10px 0 0;color:#b9cbd7;font-size:17px}.ng-stat{min-height:116px;padding:12px 22px;border-left:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;justify-content:center}.ng-stat strong{font-size:40px;line-height:1;color:#72dfc2;letter-spacing:-.04em}.ng-stat span{max-width:100px;margin-top:8px;color:#c4d2db;font-size:16px;line-height:1.45;text-transform:uppercase;letter-spacing:.07em}
.ng-calculator-section{background:#eef8f4}.ng-calculator-shell{display:grid;grid-template-columns:.78fr 1.22fr;border-radius:4px;overflow:hidden;box-shadow:0 24px 70px rgba(6,47,84,.12)}.ng-calculator-intro{padding:55px 48px;background:var(--ng-mint);color:#051b15;display:flex;flex-direction:column;justify-content:center}.ng-calculator-intro>span{color:#075744}.ng-calculator-intro h2{font-size:40px}.ng-calculator-intro p{margin:16px 0 25px;font-size:18px;line-height:1.7;color:#17483b}.ng-calculator-intro>a{align-self:flex-start;padding:14px 18px;background:var(--ng-navy-deep);color:#fff;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.ng-calculator-grid{display:grid;grid-template-columns:repeat(2,1fr);background:#fff}.ng-calculator-grid>a{min-height:220px;padding:30px;border-right:1px solid var(--ng-line);border-bottom:1px solid var(--ng-line);display:flex;flex-direction:column}.ng-calculator-grid>a:nth-child(2n){border-right:0}.ng-calculator-grid>a:nth-last-child(-n+2){border-bottom:0}.ng-calculator-grid>a>span{width:48px;height:48px;display:grid;place-items:center;border-radius:4px;background:#e8f8f3;color:var(--ng-mint-dark);font-size:16px;font-weight:800}.ng-calculator-grid h3{margin:20px 0 8px;font-size:24px}.ng-calculator-grid p{margin:0;color:var(--ng-muted);font-size:17px;line-height:1.55}.ng-calculator-grid b{margin-top:auto;padding-top:20px;color:var(--ng-mint-dark);font-size:16px;text-transform:uppercase;letter-spacing:.05em}.ng-calculator-grid>a:hover{background:#fbfdfc}
.ng-country-showcase{background:#fff}.ng-country-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ng-country-image-grid>a{overflow:hidden;border:1px solid var(--ng-line);border-radius:4px;background:#fff;box-shadow:0 10px 30px rgba(6,47,84,.055);transition:transform .25s ease,box-shadow .25s ease}.ng-country-image-grid>a:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(6,47,84,.12)}.ng-country-image{height:225px;display:block;overflow:hidden}.ng-country-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ng-country-image-grid>a:hover img{transform:scale(1.035)}.ng-country-body{display:block;padding:24px}.ng-country-body small{color:var(--ng-mint-dark);font-size:16px;font-weight:800;letter-spacing:.1em}.ng-country-body h3{margin:8px 0 5px;font-size:28px;letter-spacing:-.025em}.ng-country-body p{margin:0;color:var(--ng-muted);font-size:16px}.ng-country-body b{display:block;margin-top:18px;color:var(--ng-navy);font-size:16px;text-transform:uppercase;letter-spacing:.05em}.ng-country-disclaimer{max-width:830px;margin:24px auto 0;text-align:center;color:#7b868d;font-size:16px;line-height:1.55}
.ng-process-section{background:#f4f5f2}.ng-process-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:88px;align-items:start}.ng-process-intro{position:sticky;top:190px}.ng-process-intro h2{font-size:40px}.ng-process-intro p{margin:16px 0 23px;color:var(--ng-muted);font-size:18px;line-height:1.7}.ng-process-intro>a{color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.ng-process-steps{border-top:1px solid #ccd4d2}.ng-process-steps article{min-height:145px;display:grid;grid-template-columns:72px 1fr;gap:22px;align-items:center;border-bottom:1px solid #ccd4d2}.ng-process-steps article>span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--ng-navy);color:#fff;font-size:16px;font-weight:800}.ng-process-steps h3{margin:0 0 8px;font-size:24px}.ng-process-steps p{max-width:520px;margin:0;color:var(--ng-muted);font-size:17px;line-height:1.6}
.ng-resource-section{background:#fff}.ng-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.ng-resource-grid>a{overflow:hidden;border-radius:4px;background:#fff;border:1px solid var(--ng-line);box-shadow:0 10px 30px rgba(6,47,84,.05);transition:transform .25s ease,box-shadow .25s ease}.ng-resource-grid>a:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(6,47,84,.11)}.ng-resource-grid img{width:100%;height:220px;object-fit:cover}.ng-resource-grid>a>span{display:block;padding:25px}.ng-resource-grid small{color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.ng-resource-grid h3{margin:9px 0 10px;font-size:24px;line-height:1.25;letter-spacing:-.02em}.ng-resource-grid p{margin:0;color:var(--ng-muted);font-size:17px;line-height:1.6}.ng-resource-grid b{display:block;margin-top:18px;color:var(--ng-navy);font-size:16px;text-transform:uppercase;letter-spacing:.05em}
/* Editorial homepage hierarchy */
.ng-editorial-section{padding:92px 0;background:#fff}.ng-editorial-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:52px;margin-bottom:38px}.ng-editorial-heading>div{max-width:760px}.ng-editorial-heading h2,.ng-topic-intro h2{margin:0;font-size:40px;line-height:1.08;letter-spacing:-.04em;font-weight:800}.ng-editorial-heading p{max-width:680px;margin:13px 0 0;color:var(--ng-muted);font-size:18px;line-height:1.65}.ng-editorial-heading>a{margin-bottom:6px;color:var(--ng-mint-dark);font-size:16px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.ng-latest-section{background:#f3f5f2}.ng-latest-header{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;padding-bottom:32px;border-bottom:1px solid #cbd3cf}.ng-latest-header>div{max-width:760px}.ng-latest-header h2{max-width:690px;margin:0;font-size:40px;line-height:1.05;letter-spacing:-.045em;font-weight:800}.ng-latest-header p{max-width:680px;margin:15px 0 0;color:var(--ng-muted);font-size:18px;line-height:1.65}.ng-latest-header>a{min-width:154px;height:48px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--ng-navy-deep);color:#fff;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ng-latest-header>a span{color:#72dfc2;font-size:18px}.ng-latest-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(410px,.82fr);gap:24px;margin-top:30px}.ng-latest-lead{min-height:590px;position:relative;overflow:hidden;background:var(--ng-navy-deep)}.ng-latest-lead:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,31,53,.03) 22%,rgba(4,31,53,.24) 52%,rgba(4,31,53,.96) 100%)}.ng-latest-lead>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.ng-latest-lead-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:38px 40px;color:#fff}.ng-latest-lead small,.ng-update-list small{color:#72dfc2;font-size:16px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ng-latest-lead h3{max-width:650px;margin:11px 0 12px;font-size:36px;line-height:1.08;letter-spacing:-.04em}.ng-latest-lead p{max-width:600px;margin:0;color:#d0dee6;font-size:17px;line-height:1.6}.ng-latest-lead b{display:flex;align-items:center;gap:12px;margin-top:21px;color:#fff;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ng-latest-lead b i{color:#72dfc2;font-style:normal;font-size:18px}.ng-latest-lead:hover>img{transform:scale(1.025)}.ng-update-list{display:grid;grid-template-rows:repeat(3,1fr);gap:12px}.ng-update-list>a{min-height:0;padding:12px;display:grid;grid-template-columns:128px minmax(0,1fr) 24px;gap:18px;align-items:center;background:#fff;border:1px solid #dbe1de}.ng-update-list>a>img{width:128px;height:100%;min-height:150px;object-fit:cover}.ng-update-list>a>span{min-width:0}.ng-update-list small{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ng-mint-dark)}.ng-update-list time{color:#7d8991;font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;white-space:nowrap}.ng-update-list h3{margin:9px 0 7px;font-size:21px;line-height:1.2;letter-spacing:-.025em}.ng-update-list p{margin:0;color:var(--ng-muted);font-size:16px;line-height:1.5}.ng-update-list>a>b{color:var(--ng-navy);font-size:18px}.ng-update-list>a:hover{border-color:#7fcdb7}.ng-update-list>a:hover h3{color:var(--ng-mint-dark)}
.ng-topic-section{padding:78px 0;background:#f2f4f1;color:var(--ng-ink);border-top:1px solid var(--ng-line);border-bottom:1px solid var(--ng-line)}.ng-topic-layout{display:grid;grid-template-columns:.56fr 1.44fr;gap:86px;align-items:start}.ng-topic-intro{padding-top:5px}.ng-topic-intro h2{font-size:40px;max-width:320px}.ng-topic-intro>p{max-width:360px;margin:16px 0 0;color:var(--ng-muted);font-size:17px;line-height:1.65}.ng-topic-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:38px}.ng-topic-grid>a{min-height:108px;padding:21px 0;display:grid;grid-template-columns:30px 1fr auto;gap:15px;align-items:center;border-top:1px solid #cbd2cf}.ng-topic-grid>a:nth-last-child(-n+2){border-bottom:1px solid #cbd2cf}.ng-topic-grid>a:hover strong{color:var(--ng-mint-dark)}.ng-topic-grid span{align-self:start;padding-top:4px;color:var(--ng-mint-dark);font-size:16px;font-weight:800}.ng-topic-grid strong{display:block;font-size:18px;line-height:1.25}.ng-topic-grid p{margin:6px 0 0;color:var(--ng-muted);font-size:16px;line-height:1.45}.ng-topic-grid b{color:var(--ng-navy);font-size:18px}
.ng-country-showcase{padding-top:92px}.ng-country-heading{margin-bottom:38px}.ng-guides-section{background:#f4f5f2}.ng-guides-section .ng-editorial-heading{border-top:0;padding-top:0}
.ng-trust-section{padding:96px 0;background:#fff}.ng-trust-shell{padding:58px 62px;border-radius:4px;background:var(--ng-navy-deep);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px;position:relative;overflow:hidden}.ng-trust-shell:after{content:"";position:absolute;width:300px;height:300px;right:-110px;bottom:-170px;border:65px solid rgba(41,196,154,.09);border-radius:50%}.ng-trust-shell>div,.ng-trust-shell>ul{position:relative;z-index:2}.ng-trust-shell>div>span{color:#72dfc2}.ng-trust-shell h2{font-size:40px}.ng-trust-shell>div p{margin:15px 0 24px;color:#b9cbd7;font-size:18px;line-height:1.7}.ng-trust-shell>div a{display:inline-flex;padding:13px 17px;background:var(--ng-mint);color:#041913;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.ng-trust-shell ul{list-style:none;margin:0;padding:0}.ng-trust-shell li{padding:16px 0 16px 52px;border-bottom:1px solid rgba(255,255,255,.14);position:relative}.ng-trust-shell li:last-child{border-bottom:0}.ng-trust-shell li:before{content:"✓";position:absolute;left:0;top:16px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(41,196,154,.15);color:#72dfc2;font-weight:800}.ng-trust-shell li strong{display:block;font-size:18px}.ng-trust-shell li span{display:block;margin-top:5px;color:#9fb2bf;font-size:16px;line-height:1.5}
.ng-brief-signup{padding:0 0 96px}.ng-brief-signup-inner{border-radius:4px;padding:42px 46px}
/* About page */
.ng-about-page{background:#fff}.ng-about-hero{padding:72px 0 82px;background:var(--ng-navy-deep);color:#fff;overflow:hidden}.ng-about-hero-grid{min-height:560px;display:grid;grid-template-columns:minmax(0,.93fr) minmax(460px,1.07fr);gap:76px;align-items:center}.ng-about-path{display:flex;align-items:center;gap:9px;margin-bottom:30px;color:#9fb4c2;font-size:16px;text-transform:uppercase;letter-spacing:.08em}.ng-about-path a{color:#72dfc2}.ng-about-hero-copy h1{max-width:650px;margin:0;font-size:64px;line-height:1.01;letter-spacing:-.052em;font-weight:800}.ng-about-hero-copy>p{max-width:610px;margin:24px 0 0;color:#c0d0da;font-size:18px;line-height:1.72}.ng-about-actions{display:flex;align-items:center;gap:26px;margin-top:32px}.ng-about-actions>a:first-child{height:48px;padding:0 20px;display:inline-flex;align-items:center;background:var(--ng-mint);color:#041913;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ng-about-actions>a:last-child{color:#fff;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.ng-about-visual{height:520px;position:relative}.ng-about-visual:before{content:"";position:absolute;width:68%;height:72%;left:-20px;bottom:-20px;background:var(--ng-mint)}.ng-about-visual>img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover}.ng-about-visual:after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(4,31,53,.03) 48%,rgba(4,31,53,.78) 100%)}.ng-about-visual-note{position:absolute;z-index:3;left:32px;right:32px;bottom:28px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.ng-about-visual-note strong{font-size:24px;letter-spacing:-.025em}.ng-about-visual-note span{color:#d2e0e7;font-size:16px}
.ng-about-proof{background:var(--ng-mint);color:#062019}.ng-about-proof-grid{display:grid;grid-template-columns:repeat(3,1fr)}.ng-about-proof-grid>div{min-height:132px;padding:27px 34px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(4,31,53,.2)}.ng-about-proof-grid>div:last-child{border-right:1px solid rgba(4,31,53,.2)}.ng-about-proof-grid strong{font-size:36px;line-height:1;letter-spacing:-.04em}.ng-about-proof-grid span{margin-top:9px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.065em;color:#174b3e}
.ng-about-purpose{padding:104px 0}.ng-about-purpose-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:100px;align-items:start}.ng-about-purpose-copy h2,.ng-about-method-copy h2,.ng-about-section-head h2,.ng-about-standards h2,.ng-about-next h2{margin:0;font-size:40px;line-height:1.07;letter-spacing:-.043em;font-weight:800}.ng-about-purpose-copy p{margin:20px 0 0;color:var(--ng-muted);font-size:18px;line-height:1.75}.ng-about-principles{border-top:3px solid var(--ng-ink)}.ng-about-principles article{min-height:150px;padding:26px 0;display:grid;grid-template-columns:56px 1fr;gap:25px;align-items:start;border-bottom:1px solid var(--ng-line)}.ng-about-principles article>span{width:42px;height:42px;display:grid;place-items:center;background:#e4f6f0;color:var(--ng-mint-dark);font-size:16px;font-weight:800}.ng-about-principles h3{margin:0 0 9px;font-size:24px;letter-spacing:-.02em}.ng-about-principles p{max-width:600px;margin:0;color:var(--ng-muted);font-size:17px;line-height:1.65}
.ng-about-method{padding:102px 0;background:#f2f4f1}.ng-about-method-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:108px;align-items:start}.ng-about-method-copy{position:sticky;top:190px}.ng-about-method-copy p{margin:19px 0 25px;color:var(--ng-muted);font-size:18px;line-height:1.72}.ng-about-method-copy a{color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ng-about-steps{border-top:3px solid var(--ng-ink)}.ng-about-steps article{min-height:142px;padding:25px 0;display:grid;grid-template-columns:72px 1fr;gap:24px;align-items:center;border-bottom:1px solid #cad1ce}.ng-about-steps article>span{font-size:32px;line-height:1;color:#a6b1ad;font-weight:800;letter-spacing:-.04em}.ng-about-steps h3{margin:0 0 8px;font-size:24px}.ng-about-steps p{max-width:620px;margin:0;color:var(--ng-muted);font-size:17px;line-height:1.62}
.ng-about-coverage{padding:104px 0;background:var(--ng-navy-deep);color:#fff}.ng-about-section-head{display:grid;grid-template-columns:1fr .72fr auto;gap:50px;align-items:end;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.22)}.ng-about-section-head h2{max-width:580px}.ng-about-section-head p{max-width:430px;margin:0;color:#adc0cc;font-size:17px;line-height:1.65}.ng-about-section-head>a{padding-bottom:4px;color:#72dfc2;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}.ng-about-country-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ng-about-country-grid>a{height:282px;position:relative;overflow:hidden;background:#0a3454}.ng-about-country-grid>a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,31,53,.03) 30%,rgba(4,31,53,.94) 100%)}.ng-about-country-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ng-about-country-grid>a:hover img{transform:scale(1.035)}.ng-about-country-grid>a>span{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:grid;grid-template-columns:1fr auto;align-items:end}.ng-about-country-grid small{grid-column:1/-1;margin-bottom:8px;color:#72dfc2;font-size:16px;font-weight:800;letter-spacing:.1em}.ng-about-country-grid strong{font-size:24px}.ng-about-country-grid b{color:#72dfc2;font-size:18px}
.ng-about-standards{padding:100px 0;background:#fff}.ng-about-standards-shell{padding:60px 64px;display:grid;grid-template-columns:.88fr 1.12fr;gap:86px;background:var(--ng-mint);color:#061e18}.ng-about-standards h2{font-size:40px}.ng-about-standards-shell>div p{max-width:480px;margin:18px 0 0;color:#164d3e;font-size:18px;line-height:1.7}.ng-about-standards ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(4,31,53,.28)}.ng-about-standards li{padding:18px 0;display:grid;grid-template-columns:.58fr 1.42fr;gap:25px;border-bottom:1px solid rgba(4,31,53,.28)}.ng-about-standards li strong{font-size:17px}.ng-about-standards li span{color:#174c3f;font-size:16px;line-height:1.55}
.ng-about-next{padding:0 0 96px;background:#fff}.ng-about-next-inner{min-height:210px;padding:44px 48px;display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center;background:var(--ng-navy);color:#fff}.ng-about-next h2{max-width:670px;font-size:40px}.ng-about-next p{margin:12px 0 0;color:#b7cad6;font-size:17px}.ng-about-next-inner>div:last-child{display:flex;align-items:center;gap:24px}.ng-about-next-inner>div:last-child a:first-child{height:47px;padding:0 18px;display:inline-flex;align-items:center;background:var(--ng-mint);color:#061e18;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.ng-about-next-inner>div:last-child a:last-child{font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}
/* Blog archive */
.ng-blog-page{background:#f4f5f2}.ng-blog-hero{padding:86px 0 126px;background:var(--ng-navy-deep);color:#fff}.ng-blog-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:72px;align-items:end}.ng-blog-hero h1{max-width:760px;margin:0;font-size:64px;line-height:1;letter-spacing:-.052em;font-weight:800}.ng-blog-hero p{max-width:700px;margin:23px 0 0;color:#b7c9d4;font-size:18px;line-height:1.7}.ng-blog-hero-note{min-width:220px;padding:20px 0 4px;border-top:1px solid rgba(255,255,255,.32);display:flex;flex-direction:column;gap:8px}.ng-blog-hero-note strong{font-size:18px}.ng-blog-hero-note span{color:#9fb5c2;font-size:16px;text-transform:uppercase;letter-spacing:.07em}
.ng-blog-feature-section{margin-top:-72px;position:relative;z-index:2}.ng-blog-feature{min-height:500px;display:grid;grid-template-columns:1.28fr .72fr;background:#fff;box-shadow:0 20px 48px rgba(3,25,42,.12)}.ng-blog-feature-image{min-height:500px;overflow:hidden}.ng-blog-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.ng-blog-feature:hover img{transform:scale(1.025)}.ng-blog-feature-copy{padding:52px 48px;display:flex;flex-direction:column;justify-content:center}.ng-blog-feature-copy small,.ng-blog-card-body small{color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.ng-blog-feature h2{margin:18px 0 17px;font-size:40px;line-height:1.08;letter-spacing:-.038em}.ng-blog-feature p{margin:0;color:var(--ng-muted);font-size:17px;line-height:1.7}.ng-blog-feature b{margin-top:29px;color:var(--ng-navy);font-size:16px;text-transform:uppercase;letter-spacing:.06em}
.ng-blog-archive{padding:104px 0}.ng-blog-archive-head{padding-bottom:28px;margin-bottom:34px;border-bottom:3px solid var(--ng-ink);display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:end}.ng-blog-archive-head h2{max-width:610px;margin:0;font-size:40px;line-height:1.06;letter-spacing:-.043em}.ng-blog-archive-head p{max-width:470px;margin:0;color:var(--ng-muted);font-size:17px;line-height:1.65}.ng-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ng-blog-card{min-height:510px;display:flex;flex-direction:column;background:#fff;border:1px solid #d8dedb;transition:transform .25s ease,box-shadow .25s ease}.ng-blog-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(5,30,48,.09)}.ng-blog-card-image{height:225px;overflow:hidden;background:#dfe6e2}.ng-blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ng-blog-card:hover img{transform:scale(1.035)}.ng-blog-card-body{padding:26px 26px 24px;display:flex;flex:1;flex-direction:column}.ng-blog-card-body strong{margin:14px 0 12px;font-size:24px;line-height:1.17;letter-spacing:-.026em}.ng-blog-card-body>span{color:var(--ng-muted);font-size:16px;line-height:1.62}.ng-blog-card-body b{margin-top:auto;padding-top:24px;color:var(--ng-navy);font-size:16px;text-transform:uppercase;letter-spacing:.06em}
/* Unified article pages */
.ng-article-page{background:#fff}.ng-article-banner{height:610px;position:relative;overflow:hidden;background:var(--ng-navy-deep);color:#fff}.ng-article-banner>img{width:100%;height:100%;object-fit:cover}.ng-article-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,37,.96) 0%,rgba(3,22,37,.87) 45%,rgba(3,22,37,.35) 76%,rgba(3,22,37,.18) 100%)}.ng-article-banner-inner{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding-top:45px;padding-bottom:58px}.ng-article-back{width:max-content;color:#d9e5ea;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.ng-article-banner-copy{max-width:825px}.ng-article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:0;margin-bottom:20px}.ng-article-meta span{color:#72dfc2;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.ng-article-meta span+span:before{content:"/";margin:0 11px;color:rgba(255,255,255,.5)}.ng-article-banner h1{margin:0;font-size:52px;line-height:1.02;letter-spacing:-.047em;font-weight:800}.ng-article-banner-copy>p{max-width:710px;margin:21px 0 0;color:#d2dee5;font-size:18px;line-height:1.65}.ng-article-byline{display:flex;align-items:center;gap:19px;margin-top:28px;color:#d9e5ea;font-size:16px;text-transform:uppercase;letter-spacing:.055em}.ng-article-byline span{padding-left:19px;border-left:1px solid rgba(255,255,255,.35);color:#a9bdc9}
.ng-article-body-section{padding:84px 0 104px}.ng-article-layout{display:grid;grid-template-columns:190px minmax(0,700px) 220px;gap:58px;align-items:start;justify-content:space-between}.ng-article-toc{position:sticky;top:172px;padding-top:17px;border-top:3px solid var(--ng-ink)}.ng-article-toc>strong,.ng-article-side strong{display:block;margin-bottom:15px;font-size:16px;text-transform:uppercase;letter-spacing:.075em}.ng-article-toc nav{display:flex;flex-direction:column}.ng-article-toc a{padding:10px 0;border-bottom:1px solid var(--ng-line);color:#5a6973;font-size:16px;line-height:1.4}.ng-article-toc a:hover{color:var(--ng-mint-dark)}.ng-article-lead{margin:0 0 42px;padding-bottom:38px;border-bottom:1px solid var(--ng-line);font-size:24px;line-height:1.58;letter-spacing:-.014em}.ng-article-prose section{scroll-margin-top:180px;margin:0 0 44px}.ng-article-prose h2{margin:0 0 16px;font-size:36px;line-height:1.12;letter-spacing:-.034em}.ng-article-prose section p{margin:0;color:#485963;font-size:18px;line-height:1.78}.ng-article-prose ul{margin:19px 0 0;padding:0;list-style:none}.ng-article-prose li{position:relative;padding:12px 0 12px 27px;border-bottom:1px solid var(--ng-line);color:#344751;font-size:17px;line-height:1.55}.ng-article-prose li:before{content:"✓";position:absolute;left:0;top:12px;color:var(--ng-mint-dark);font-weight:800}.ng-article-source-note{margin-top:62px;padding:30px 32px;background:#e4f6f0;border-left:4px solid var(--ng-mint)}.ng-article-source-note strong{font-size:18px}.ng-article-source-note p{margin:8px 0 0;color:#35554a;font-size:16px;line-height:1.65}.ng-article-side{position:sticky;top:172px}.ng-article-side>div{padding:24px;background:#f2f4f1}.ng-article-side a{display:block;padding:13px 0;border-top:1px solid #d3dad6;color:var(--ng-navy);font-size:16px;font-weight:800}.ng-article-next{padding:0 0 92px}.ng-article-next>.container{min-height:210px;padding:43px 48px;display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center;background:var(--ng-navy-deep);color:#fff}.ng-article-next h2{max-width:650px;margin:0;font-size:36px;line-height:1.1;letter-spacing:-.035em}.ng-article-next p{margin:11px 0 0;color:#aec2ce;font-size:16px}.ng-article-next .container>div:last-child{display:flex;align-items:center;gap:22px}.ng-article-next a:first-child{height:46px;padding:0 18px;display:inline-flex;align-items:center;background:var(--ng-mint);color:#062019;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.ng-article-next a:last-child{font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
/* Unified rounded-card language */
.guide-card,.tool-card,.country-info,.value-card,.contact-card,.contact-note,.sidebox,.search-box,.ng-update-list>a,.ng-latest-lead,.ng-blog-feature,.ng-blog-card,.ng-article-source-note,.ng-article-side>div,.ng-about-standards-shell,.ng-about-country-grid>a,.ng-about-next-inner,.ng-article-next>.container{border-radius:4px;overflow:hidden}
.ng-latest-lead,.ng-blog-feature,.ng-about-standards-shell,.ng-about-next-inner,.ng-article-next>.container{border-radius:4px}
.topic-grid,.country-nav-grid,.result{border-radius:4px;overflow:hidden}
.filterbar button,.field input,.field select,.contact-form input,.contact-form textarea,.btn,.ng-latest-header>a,.ng-calculator-intro>a,.ng-trust-shell>div a,.ng-about-actions>a:first-child,.ng-about-next-inner>div:last-child a:first-child,.ng-article-next a:first-child{border-radius:4px}
.tool-badge,.facts span{border-radius:4px}
/* Global inner-page consistency */
.page:not([data-page="home"]){background:#fff}.page:not([data-page="home"]) .section{padding:88px 0}.page:not([data-page="home"]) .section-soft{background:#f3f5f2}
.page-hero{padding:82px 0;background:var(--ng-navy-deep);color:#fff;border-bottom:0}.page-hero-grid{min-height:300px;grid-template-columns:minmax(0,1.15fr) minmax(310px,.65fr);gap:78px;align-items:center}.breadcrumbs{margin-bottom:22px;color:#91a9b8;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.075em}.page-hero .kicker{display:none}.page-hero h1{max-width:760px;margin:0 0 18px;color:#fff;font-size:52px;line-height:1.02;letter-spacing:-.047em}.page-hero p{max-width:680px;color:#c0d0da;font-size:18px;line-height:1.7}.page-aside{padding:27px 28px;border:0;border-radius:4px;background:var(--ng-mint);color:#062019}.page-aside strong{margin-bottom:9px;color:#062019;font-size:21px}.page-aside span{color:#1e5547;font-size:16px;line-height:1.62}
.section-head{max-width:760px;margin-bottom:36px}.section-head h2{margin:0 0 12px;font-size:40px;line-height:1.08;letter-spacing:-.04em}.section-head p{font-size:18px;line-height:1.7}
.guide-card,.tool-card,.country-info,.value-card,.contact-card,.ng-blog-card{border-color:#d8dfdc;box-shadow:0 9px 28px rgba(6,47,84,.055);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.guide-card:hover,.tool-card:hover,.country-info:hover,.value-card:hover,.ng-blog-card:hover{transform:translateY(-4px);border-color:#b7dfd2;box-shadow:0 20px 44px rgba(6,47,84,.105)}.guide-img,.country-info img{height:220px}.guide-body,.country-info-body{padding:24px}.guide-body h3,.country-info h3{font-size:24px;line-height:1.23;letter-spacing:-.025em}
.field input,.field select,.contact-form input,.contact-form textarea,.search-box input{min-height:48px;border-color:#d3dcda;background:#fff}.field input:focus,.field select:focus,.contact-form input:focus,.contact-form textarea:focus,.search-box input:focus{border-color:var(--ng-mint-dark);box-shadow:0 0 0 3px rgba(41,196,154,.13)}.contact-card{padding:28px}.contact-note{padding:24px 26px;border-left:0;border-top:4px solid var(--ng-mint-dark)}
.btn{min-height:46px;padding-inline:20px}.tool-badge{width:50px;height:50px}.result{padding:18px}.sidebox{padding:25px;border-top:4px solid var(--ng-mint)}
.ng-blog-hero,.ng-about-hero{background:var(--ng-navy-deep)}.ng-blog-hero h1,.ng-about-hero-copy h1,.ng-article-banner h1,.country-detail-copy h1{font-size:52px;line-height:1.02;letter-spacing:-.047em}.ng-blog-hero p,.ng-about-hero-copy>p,.ng-article-banner-copy>p,.country-detail-copy p{font-size:18px;line-height:1.7}.ng-about-visual{border-radius:4px;overflow:hidden}.country-detail-hero{min-height:520px}.country-detail-hero:after{background:linear-gradient(90deg,rgba(3,22,37,.96) 0%,rgba(3,22,37,.82) 45%,rgba(3,22,37,.28) 82%,rgba(3,22,37,.12) 100%)}.country-detail-copy{width:68%;padding:110px 0}.country-detail-copy .kicker{display:none}
.ng-blog-archive-head h2,.ng-about-purpose-copy h2,.ng-about-method-copy h2,.ng-about-section-head h2,.ng-about-standards h2{font-size:40px;line-height:1.08;letter-spacing:-.042em}.ng-blog-feature,.ng-blog-card,.ng-country-image-grid>a,.ng-resource-grid>a,.ng-about-country-grid>a{border:1px solid #d8dfdc}.ng-article-layout{column-gap:54px}
.footer{background:var(--ng-navy-deep)}
@media(max-width:1020px){.ng-masthead{grid-template-columns:220px 1fr auto}.ng-country-links a{min-width:48px;padding-inline:8px}.ng-coverage-grid{grid-template-columns:1fr}.ng-briefing{grid-template-columns:repeat(3,1fr)}.ng-briefing-head,.ng-brief-note{grid-column:1/-1}.ng-brief-note{margin-top:0}.ng-tools-layout{gap:40px}.ng-standard-grid{grid-template-columns:repeat(2,1fr)}.ng-standard-grid article{padding-bottom:24px;border-bottom:1px solid var(--ng-line)}}
@media(max-width:820px){.ng-topbar-inner span:nth-child(2){display:none}.ng-masthead{height:70px;display:flex}.ng-country-links{display:none}.ng-head-actions{margin-left:auto}.ng-news-btn{display:none}.ng-menu{display:block}.ng-nav-wrap{border-top:0;background:#fff}.ng-nav{display:none;height:auto;position:absolute;left:0;right:0;top:104px;width:100%;padding:10px 24px 18px;background:#fff;border-bottom:1px solid var(--ng-line);flex-direction:column;align-items:stretch;gap:0}.ng-nav.open{display:flex}.ng-nav a{height:44px;border-bottom:1px solid var(--ng-line)}.ng-lead-copy h1{font-size:40px}.ng-lead-media{height:300px}.ng-briefing{grid-template-columns:1fr}.ng-briefing-head,.ng-brief-note{grid-column:auto}.ng-fast-nav{overflow:auto;white-space:nowrap}.ng-country-grid{grid-template-columns:repeat(2,1fr)}.ng-country-grid>a:nth-last-child(-n+3){border-bottom:1px solid rgba(255,255,255,.16)}.ng-country-grid>a:nth-last-child(-n+2){border-bottom:0}.ng-tools-layout{grid-template-columns:1fr}.ng-brief-signup-inner{grid-template-columns:1fr}.ng-signup-form{width:100%}}
@media(max-width:620px){.container{width:min(calc(100% - 28px),var(--ng-container))}.ng-topbar-inner{height:30px}.ng-topbar-inner>a{font-size:16px}.ng-masthead{height:64px}.ng-brand img{width:25px;height:36px}.ng-brand strong{font-size:24px}.ng-brand small{display:none}.ng-search{padding:0 11px}.ng-menu{padding:0 11px}.ng-nav{top:94px}.ng-wide-banner{height:520px}.ng-wide-banner:after{background:linear-gradient(180deg,rgba(3,20,32,.3) 0%,rgba(3,20,32,.86) 70%,rgba(3,20,32,.96) 100%)}.ng-wide-banner>img{object-position:63% center}.ng-wide-banner-inner{align-items:flex-end}.ng-lead-copy{width:100%;padding:38px 0 42px}.ng-lead-copy h1{font-size:40px;line-height:1.03}.ng-lead-copy p{font-size:18px}.ng-photo-label{display:none}.ng-briefing{grid-template-columns:1fr}.ng-briefing-head,.ng-brief-note{grid-column:auto}.ng-brief-item,.ng-brief-item+.ng-brief-item{padding:18px 0;border-right:0}.ng-fast-nav{margin-inline:-14px;padding-inline:14px}.ng-section{padding:58px 0}.ng-heading-row{align-items:flex-start}.ng-heading-row h2,.ng-topics-head h2,.ng-tools-intro h2{font-size:32px}.ng-heading-row>a{display:none}.ng-story-row{grid-template-columns:48px 1fr;gap:13px}.ng-story-country{width:40px;height:40px}.ng-story-time{display:none}.ng-story-row h3{font-size:21px}.ng-country-grid{grid-template-columns:1fr;border-left:0}.ng-country-grid>a{min-height:235px;border-left:1px solid rgba(255,255,255,.16)}.ng-country-grid>a:nth-last-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}.ng-country-grid>a:last-child{border-bottom:0}.ng-standard-grid{grid-template-columns:1fr}.ng-standard-grid article{border-left:1px solid var(--ng-line)}.ng-brief-signup{padding-bottom:58px}.ng-brief-signup-inner{padding:28px 22px}.ng-signup-form>div{grid-template-columns:1fr}.ng-signup-form button{width:100%}}
@media(max-width:1100px){.ng-hub-grid{grid-template-columns:repeat(2,1fr)}.ng-market-rail-inner{grid-template-columns:1.4fr repeat(6,.45fr)}.ng-market-rail-inner>a{display:none}.ng-feature-grid{grid-template-columns:1.2fr 1fr}.ng-feature-card:last-child{grid-column:1/-1;height:330px}.ng-stats-layout{grid-template-columns:1.2fr repeat(2,.7fr)}.ng-stat:nth-last-child(-n+2){border-top:1px solid rgba(255,255,255,.16)}.ng-calculator-shell{grid-template-columns:1fr}.ng-calculator-intro{padding:48px}.ng-process-layout{gap:48px}}
@media(max-width:820px){.ng-shuraa-section{padding:72px 0}.ng-shuraa-head h2,.ng-split-heading h2,.ng-calculator-intro h2,.ng-process-intro h2,.ng-trust-shell h2{font-size:36px}.ng-market-rail-inner{grid-template-columns:1fr repeat(3,.45fr)}.ng-market-rail-inner>span:nth-of-type(n+4){display:none}.ng-feature-grid{grid-template-columns:1fr 1fr}.ng-feature-card-wide{grid-column:1/-1}.ng-feature-card:last-child{grid-column:auto;height:400px}.ng-country-image-grid,.ng-resource-grid{grid-template-columns:repeat(2,1fr)}.ng-process-layout,.ng-trust-shell{grid-template-columns:1fr}.ng-process-intro{position:static}.ng-trust-shell{gap:32px;padding:46px}.ng-stats-layout{grid-template-columns:1fr 1fr}.ng-stats-copy{grid-column:1/-1;padding:0 0 28px}.ng-stat{border-top:1px solid rgba(255,255,255,.16)}.ng-calculator-grid>a{min-height:205px}}
@media(max-width:620px){.ng-shuraa-section{padding:58px 0}.ng-shuraa-head{margin-bottom:30px}.ng-shuraa-head h2,.ng-split-heading h2,.ng-calculator-intro h2,.ng-process-intro h2,.ng-trust-shell h2{font-size:32px}.ng-shuraa-head p{font-size:17px}.ng-hub-grid{grid-template-columns:1fr;gap:12px}.ng-hub-grid>a{min-height:0;padding:20px;display:grid;grid-template-columns:48px 1fr;gap:16px}.ng-hub-mark{width:46px;height:46px}.ng-hub-grid h3{margin:2px 0 7px}.ng-hub-grid p{min-height:0}.ng-market-rail-inner{min-height:88px;grid-template-columns:1fr repeat(2,.5fr)}.ng-market-rail-inner>span:nth-of-type(n+3){display:none}.ng-split-heading{align-items:flex-start;margin-bottom:26px}.ng-split-heading>a{display:none}.ng-feature-grid{grid-template-columns:1fr}.ng-feature-card,.ng-feature-card-wide,.ng-feature-card:last-child{grid-column:auto;height:360px}.ng-feature-overlay{padding:22px}.ng-feature-overlay h3{font-size:24px}.ng-stats-section{padding:50px 0}.ng-stats-copy h2{font-size:32px}.ng-stat{min-height:105px;padding:14px}.ng-stat strong{font-size:40px}.ng-calculator-shell{border-radius:4px}.ng-calculator-intro{padding:34px 24px}.ng-calculator-grid{grid-template-columns:1fr}.ng-calculator-grid>a,.ng-calculator-grid>a:nth-child(2n),.ng-calculator-grid>a:nth-last-child(-n+2){min-height:190px;border-right:0;border-bottom:1px solid var(--ng-line)}.ng-calculator-grid>a:last-child{border-bottom:0}.ng-country-image-grid,.ng-resource-grid{grid-template-columns:1fr}.ng-country-image{height:210px}.ng-process-layout{gap:30px}.ng-process-steps article{grid-template-columns:54px 1fr;gap:14px;min-height:132px}.ng-process-steps article>span{width:44px;height:44px}.ng-process-steps h3{font-size:21px}.ng-trust-section{padding-bottom:58px}.ng-trust-shell{padding:34px 24px;border-radius:4px}.ng-brief-signup{padding-bottom:58px}}
@media(max-width:900px){.ng-editorial-section{padding:72px 0}.ng-editorial-heading h2{font-size:36px}.ng-latest-header h2{font-size:40px}.ng-latest-grid{grid-template-columns:1fr;gap:18px}.ng-latest-lead{min-height:520px}.ng-latest-lead>img{height:100%}.ng-update-list>a{min-height:174px}.ng-topic-layout{grid-template-columns:1fr;gap:28px}.ng-topic-intro h2{max-width:none}.ng-country-showcase{padding-top:72px}}
@media(max-width:620px){.ng-editorial-section{padding:58px 0}.ng-editorial-heading{align-items:flex-start;gap:20px;margin-bottom:28px}.ng-editorial-heading h2,.ng-topic-intro h2{font-size:32px}.ng-editorial-heading>a{display:none}.ng-latest-header{align-items:flex-start;flex-direction:column;gap:22px;padding-bottom:24px}.ng-latest-header h2{font-size:36px}.ng-latest-header p{font-size:17px}.ng-latest-header>a{height:44px}.ng-latest-lead{min-height:470px}.ng-latest-lead>img{height:100%}.ng-latest-lead-copy{padding:26px 22px}.ng-latest-lead h3{font-size:28px}.ng-latest-lead p{font-size:16px}.ng-update-list>a{min-height:138px;padding:9px;grid-template-columns:92px minmax(0,1fr) 18px;gap:12px}.ng-update-list>a>img{width:92px;min-height:118px}.ng-update-list h3{font-size:18px}.ng-update-list p{display:none}.ng-update-list small{font-size:16px}.ng-topic-section{padding:52px 0}.ng-topic-grid{grid-template-columns:1fr}.ng-topic-grid>a{min-height:86px;padding:15px 0}.ng-topic-grid>a:nth-last-child(-n+2){border-bottom:0}.ng-topic-grid>a:last-child{border-bottom:1px solid #cbd2cf}.ng-country-showcase{padding-top:58px}.ng-trust-section{padding-top:58px}}
@media(max-width:1020px){.ng-about-hero-grid{grid-template-columns:1fr;gap:56px}.ng-about-hero-copy h1{max-width:760px}.ng-about-visual{height:460px}.ng-about-purpose-grid,.ng-about-method-grid,.ng-about-standards-shell{grid-template-columns:1fr;gap:54px}.ng-about-method-copy{position:static}.ng-about-section-head{grid-template-columns:1fr auto}.ng-about-section-head p{grid-column:1/-1;grid-row:2}.ng-about-section-head>a{grid-column:2;grid-row:1}.ng-about-country-grid{grid-template-columns:repeat(2,1fr)}.ng-about-next-inner{grid-template-columns:1fr;gap:28px}}
@media(max-width:700px){.ng-about-hero{padding:46px 0 58px}.ng-about-hero-grid{min-height:0;gap:40px}.ng-about-path{margin-bottom:22px}.ng-about-hero-copy h1{font-size:40px;line-height:1.03}.ng-about-hero-copy>p{font-size:18px}.ng-about-actions{align-items:flex-start;flex-direction:column;gap:18px}.ng-about-visual{height:340px}.ng-about-visual:before{left:-10px;bottom:-10px}.ng-about-visual-note{left:20px;right:20px;bottom:18px;align-items:flex-start;flex-direction:column;gap:5px}.ng-about-proof-grid{grid-template-columns:1fr}.ng-about-proof-grid>div,.ng-about-proof-grid>div:last-child{min-height:105px;padding:22px 18px;border-left:0;border-right:0;border-bottom:1px solid rgba(4,31,53,.2)}.ng-about-purpose,.ng-about-method,.ng-about-coverage,.ng-about-standards{padding:64px 0}.ng-about-purpose-grid,.ng-about-method-grid,.ng-about-standards-shell{gap:38px}.ng-about-purpose-copy h2,.ng-about-method-copy h2,.ng-about-section-head h2,.ng-about-standards h2,.ng-about-next h2{font-size:36px}.ng-about-principles article{grid-template-columns:46px 1fr;gap:14px}.ng-about-steps article{grid-template-columns:48px 1fr;gap:14px}.ng-about-steps article>span{font-size:28px}.ng-about-section-head{grid-template-columns:1fr;gap:15px;align-items:start}.ng-about-section-head p,.ng-about-section-head>a{grid-column:auto;grid-row:auto}.ng-about-country-grid{grid-template-columns:1fr;gap:12px}.ng-about-country-grid>a{height:235px}.ng-about-standards-shell{padding:34px 24px}.ng-about-standards li{grid-template-columns:1fr;gap:7px}.ng-about-next{padding-bottom:60px}.ng-about-next-inner{padding:34px 24px}.ng-about-next h2{font-size:32px}.ng-about-next-inner>div:last-child{align-items:flex-start;flex-direction:column;gap:18px}}
@media(max-width:1040px){.ng-blog-grid{grid-template-columns:repeat(2,1fr)}.ng-blog-feature{grid-template-columns:1fr 1fr}.ng-article-layout{grid-template-columns:165px minmax(0,1fr);gap:42px}.ng-article-side{display:none}}
@media(max-width:820px){.ng-blog-hero{padding:68px 0 112px}.ng-blog-hero-grid{grid-template-columns:1fr}.ng-blog-hero h1{font-size:52px}.ng-blog-hero-note{display:none}.ng-blog-feature{grid-template-columns:1fr}.ng-blog-feature-image{height:360px;min-height:0}.ng-blog-feature-copy{padding:38px}.ng-blog-archive-head{grid-template-columns:1fr;gap:16px}.ng-article-banner{height:590px}.ng-article-banner h1{font-size:40px}.ng-article-layout{grid-template-columns:1fr}.ng-article-toc{position:static}.ng-article-toc nav{display:grid;grid-template-columns:repeat(2,1fr);column-gap:24px}.ng-article-next>.container{grid-template-columns:1fr;gap:28px}}
@media(max-width:620px){.ng-blog-hero{padding:48px 0 92px}.ng-blog-hero h1{font-size:40px}.ng-blog-hero p{font-size:18px}.ng-blog-feature-section{margin-top:-48px}.ng-blog-feature-image{height:270px}.ng-blog-feature-copy{padding:28px 24px}.ng-blog-feature h2{font-size:32px}.ng-blog-archive{padding:66px 0}.ng-blog-archive-head h2{font-size:36px}.ng-blog-grid{grid-template-columns:1fr;gap:16px}.ng-blog-card{min-height:0}.ng-blog-card-image{height:220px}.ng-blog-card-body{min-height:280px;padding:23px 21px}.ng-article-banner{height:620px}.ng-article-banner:after{background:linear-gradient(180deg,rgba(3,22,37,.45) 0%,rgba(3,22,37,.84) 45%,rgba(3,22,37,.97) 100%)}.ng-article-banner>img{object-position:62% center}.ng-article-banner-inner{padding-top:30px;padding-bottom:38px}.ng-article-banner h1{font-size:40px;line-height:1.04}.ng-article-banner-copy>p{font-size:17px}.ng-article-meta span{font-size:16px}.ng-article-meta span+span:before{margin:0 7px}.ng-article-byline{align-items:flex-start;flex-direction:column;gap:7px}.ng-article-byline span{padding-left:0;border-left:0}.ng-article-body-section{padding:58px 0 72px}.ng-article-toc nav{grid-template-columns:1fr}.ng-article-lead{font-size:21px}.ng-article-prose h2{font-size:32px}.ng-article-next{padding-bottom:58px}.ng-article-next>.container{padding:32px 24px}.ng-article-next h2{font-size:32px}.ng-article-next .container>div:last-child{align-items:flex-start;flex-direction:column}}
@media(max-width:1020px){.page-hero-grid{min-height:0;grid-template-columns:1fr;gap:34px}.page:not([data-page="home"]) .section{padding:72px 0}.country-detail-copy{width:78%}}
@media(max-width:620px){.page-hero{padding:58px 0}.page-hero h1,.ng-blog-hero h1,.ng-about-hero-copy h1,.country-detail-copy h1{font-size:40px;line-height:1.04}.page-hero p,.ng-blog-hero p,.ng-about-hero-copy>p,.country-detail-copy p{font-size:18px}.page:not([data-page="home"]) .section{padding:62px 0}.section-head{margin-bottom:28px}.section-head h2{font-size:36px}.country-detail-hero{min-height:470px}.country-detail-copy{width:100%;padding:78px 0}.guide-card,.tool-card,.country-info,.value-card,.contact-card,.contact-note,.sidebox,.search-box,.ng-update-list>a,.ng-latest-lead,.ng-blog-feature,.ng-blog-card,.ng-article-source-note,.ng-article-side>div,.ng-about-standards-shell,.ng-about-country-grid>a,.ng-about-next-inner,.ng-article-next>.container{border-radius:4px}.guide-body,.country-info-body,.contact-card{padding:22px}.guide-img,.country-info img{height:210px}}
@media(max-width:400px){
  .ng-search,.ng-menu{padding:0 10px;font-size:16px}
  .ng-head-actions{gap:6px}
  .ng-brand img{width:22px;height:32px}
  .ng-brand strong{font-size:21px}
  .container{width:calc(100% - 24px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* ============================================================
   V4 REPAIR LAYER — typographic floor 16px + layout corrections
   Everything below assumes the rescaled type system above.
   ============================================================ */

/* --- 0. Base rhythm ------------------------------------------------ */
html{-webkit-text-size-adjust:100%}
body{font-size:17px;line-height:1.6;text-rendering:optimizeLegibility}
h1,h2,h3,h4{text-wrap:balance}
p{text-wrap:pretty}
:focus-visible{outline:3px solid var(--ng-mint-dark);outline-offset:2px;border-radius:4px}
.ng-skip{position:absolute;left:12px;top:12px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;z-index:999;padding:14px 20px;background:var(--ng-navy);color:#fff;font-weight:800}
.ng-skip:focus{width:auto;height:auto;overflow:visible;clip-path:none}
img{height:auto}

/* Micro-labels: at 16px the old wide tracking overflows its boxes.
   Tighten tracking instead of shrinking type. */
.kicker,.story-meta,.ng-meta,.ng-eyebrow,.ng-code,.ng-index,.topic-no,
.ng-brief-item small,.ng-story-row small,.ng-article-meta span,
.ng-brand small,.brand-tag,.footer h4,.breadcrumbs,.ng-about-path,
.field label,.contact-form label,.ng-signup-form label,
.ng-topbar,.ng-country-links a,.ng-nav a,.footer-bottom,
.ng-market-rail-inner>span,.ng-market-rail-inner>div span,
.ng-stat span,.ng-about-proof-grid span,.metric span{letter-spacing:.04em}
.ng-brand small,.brand-tag{letter-spacing:.06em;font-size:16px}

/* --- 1. Header ----------------------------------------------------- */
.ng-topbar-inner{height:auto;min-height:46px;flex-wrap:wrap;gap:8px 24px;padding:8px 0}
.ng-masthead{height:auto;min-height:92px;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;padding:14px 0}
.ng-brand strong{font-size:32px}
.ng-country-links a{min-width:0;padding:10px 14px}
.ng-head-actions{gap:10px}
.ng-search,.ng-news-btn,.ng-menu{height:50px;padding:0 18px}
.ng-nav{height:auto;min-height:60px;gap:30px;flex-wrap:wrap}
.ng-nav a{height:auto;min-height:60px;padding:6px 0}
.ng-nav a[aria-current="page"]{color:var(--ng-ink)}
.ng-nav a[aria-current="page"]:after{right:0}

/* --- 2. Hero / lead ------------------------------------------------ */
.ng-wide-banner{height:auto;min-height:600px}
.ng-lead-copy{width:min(680px,60%);padding:64px 0}
.ng-lead-copy h1{font-size:clamp(36px,4.6vw,58px)}
.ng-photo-label{font-size:16px;letter-spacing:.04em;padding:10px 14px}
.ng-read-link{min-height:48px;align-items:center}

/* --- 3. Editorial rows / grids ------------------------------------- */
.ng-story-row{grid-template-columns:74px minmax(0,1fr) auto;gap:22px}
.ng-story-country{width:56px;height:56px}
.ng-story-time{white-space:nowrap;padding-top:22px}
.ng-brief-item{grid-template-columns:40px minmax(0,1fr)}
.ng-briefing{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(260px,.85fr)}
.ng-briefing-head{height:auto;min-height:56px;padding:10px 0}
.ng-fast-nav{min-height:66px;flex-wrap:wrap;gap:12px 24px;padding:12px 0}
.ng-topics>a{min-height:76px;grid-template-columns:36px minmax(0,1fr) auto}
.ng-tool-list>a{min-height:104px;grid-template-columns:60px minmax(0,1fr) auto}
.ng-tool-list>a>span{width:52px;height:52px}
.ng-hub-grid p{min-height:0}
.ng-hub-grid>a{min-height:0;padding:30px 26px}
.ng-topic-grid>a{min-height:0;grid-template-columns:34px minmax(0,1fr) auto}
.ng-country-grid>a{min-height:280px}
.ng-standard-grid article{padding-bottom:22px}
.ng-process-steps article{min-height:0;padding:28px 0;grid-template-columns:78px minmax(0,1fr)}
.ng-about-principles article,.ng-about-steps article{min-height:0;padding:28px 0}
.ng-stat{min-height:132px}
.ng-stat span{max-width:150px}
.ng-trust-shell li{padding-left:58px}
.ng-latest-header>a{min-width:190px;height:56px}
.ng-update-list>a{min-height:0}

/* Market rail: 8 fixed columns can't hold 16px type — go fluid. */
.ng-market-rail-inner{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;min-height:0;padding:22px 0}
.ng-market-rail-inner>div{flex:1 1 220px}
.ng-market-rail-inner>span{height:auto;padding:8px 14px;border-left:0;background:rgba(255,255,255,.07);border-radius:4px;letter-spacing:.03em}
.ng-market-rail-inner>a{margin-left:auto;text-align:right}

/* --- 4. Article / prose -------------------------------------------- */
.ng-article-layout{grid-template-columns:230px minmax(0,720px) 250px;column-gap:48px}
.prose-wrap{grid-template-columns:230px minmax(0,760px) minmax(0,1fr)}
.ng-article-banner{height:auto;min-height:640px}
.ng-article-banner h1{font-size:clamp(34px,4.6vw,56px)}
.ng-article-toc a{line-height:1.45}
.post-item{grid-template-columns:120px minmax(0,1fr) auto;gap:24px}
.post-item .read{white-space:nowrap}
.toc a{line-height:1.45}

/* --- 5. Forms & controls (44px+ touch targets) ---------------------- */
.btn,.ng-solid-link,.ng-calculator-intro>a,.ng-trust-shell>div a{min-height:54px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center}
.field input,.field select,.contact-form input,.contact-form textarea,.search-box input,.signup input{min-height:54px;font-size:17px}
.contact-form textarea{min-height:170px}
.ng-signup-form input,.ng-signup-form button{height:56px}
.signup input{width:300px}
.search{width:50px;height:50px}
.filterbar button{min-height:48px;padding:0 18px}
.country-index a,.country-nav-grid a{min-height:64px}

/* --- 6. Footer ----------------------------------------------------- */
.footer p,.footer li{line-height:1.7}
.footer-bottom{flex-wrap:wrap;gap:8px 24px;padding-top:20px}

/* --- 7. Page hero / cards ------------------------------------------ */
.page-hero h1{font-size:clamp(34px,4.4vw,54px)}
.ng-blog-hero h1{font-size:clamp(36px,5vw,60px)}
.ng-blog-card{min-height:0}
.ng-blog-card-body{min-height:0}
.guide-card,.tool-card,.country-info,.value-card,.contact-card{display:flex;flex-direction:column}
.guide-body,.country-info-body,.article-body{flex:1;display:flex;flex-direction:column}
.guide-body .btn,.country-info-body .btn,.article-body .text-link{margin-top:auto}
.facts span{padding:8px 12px}
.result strong{font-size:36px}

/* ============================================================
   CALCULATOR SUITE (2026)
   ============================================================ */
.calc-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.calc-toolbar button{min-height:50px;padding:0 18px;border:1px solid var(--ng-line);background:#fff;border-radius:4px;
  font-size:16px;font-weight:800;letter-spacing:.02em;color:#4a5860;cursor:pointer;transition:.16s ease}
.calc-toolbar button:hover{border-color:var(--ng-mint-dark);color:var(--ng-mint-dark)}
.calc-toolbar button.active{background:var(--ng-navy);border-color:var(--ng-navy);color:#fff}
.calc-search{flex:1 1 260px;min-height:50px;padding:0 16px;border:1px solid var(--ng-line);border-radius:4px;font-size:17px;background:#fff}

.calc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;min-width:0}
.ncalc{min-width:0;overflow-wrap:anywhere;background:#fff;border:1px solid #d8dfdc;border-radius:4px;padding:28px;box-shadow:0 9px 28px rgba(6,47,84,.055);
  transition:box-shadow .24s ease,border-color .24s ease}
.ncalc:hover{border-color:#b7dfd2;box-shadow:0 20px 44px rgba(6,47,84,.1)}
.ncalc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
.ncalc-head h3{margin:8px 0 8px;font-size:24px;line-height:1.2;letter-spacing:-.02em;font-weight:800}
.ncalc-head p{margin:0;font-size:16px;line-height:1.55;color:var(--ng-muted)}
.ncalc-tag{font-size:16px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ng-mint-dark)}
.ncalc-badge{flex:0 0 auto;min-width:60px;height:60px;padding:0 10px;display:grid;place-items:center;border-radius:4px;
  background:var(--ng-mint);color:#04211a;font-size:16px;font-weight:800;letter-spacing:.02em}
.ncalc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.ncalc-f{display:flex;flex-direction:column;min-width:0}
.ncalc-f.wide{grid-column:1/-1}
.ncalc-f label{margin-bottom:8px;font-size:16px;font-weight:800;color:#42525c;letter-spacing:.01em}
.ncalc-f input,.ncalc-f select{width:100%;min-width:0;max-width:100%;text-overflow:ellipsis;min-height:54px;padding:0 14px;border:1px solid #d3dcda;border-radius:4px;
  background:#fff;color:var(--ng-ink);font-size:17px;font-weight:700;outline:none;transition:.16s ease}
.ncalc-f input:focus,.ncalc-f select:focus{border-color:var(--ng-mint-dark);box-shadow:0 0 0 3px rgba(41,196,154,.14)}
.ncalc-f small{margin-top:7px;font-size:16px;line-height:1.45;color:#7a858c}
.ncalc-out{margin-top:22px;padding:22px 24px;border-radius:4px;background:var(--ng-navy-deep);color:#fff}
.ncalc-out>small{display:block;font-size:16px;letter-spacing:.04em;text-transform:uppercase;font-weight:800;color:#8fe6cb}
.ncalc-out>strong{display:block;margin-top:8px;font-size:36px;line-height:1.05;letter-spacing:-.035em;font-weight:800}
.ncalc-rows{margin-top:18px;border-top:1px solid rgba(255,255,255,.18)}
.ncalc-rows>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.11);font-size:17px}
.ncalc-rows>div:last-child{border-bottom:0}
.ncalc-rows dt,.ncalc-rows span:first-child{color:#b3c6d2}
.ncalc-rows b{font-weight:800;text-align:right;white-space:nowrap;overflow-wrap:anywhere}
.ncalc-flag{margin-top:16px;padding:12px 16px;border-radius:4px;font-size:16px;font-weight:800;line-height:1.5}
.ncalc-flag.ok{background:rgba(41,196,154,.16);color:#8fe6cb}
.ncalc-flag.warn{background:rgba(255,183,77,.16);color:#ffcf8b}
.ncalc-note{margin:16px 0 0;font-size:16px;line-height:1.55;color:#6d7880}
.calc-disclaimer{margin-top:34px;padding:26px 28px;border-radius:4px;background:#fff;border:1px solid var(--ng-line)}
.calc-disclaimer h3{margin:0 0 10px;font-size:21px}
.calc-disclaimer p{margin:0;font-size:16px;line-height:1.65;color:var(--ng-muted)}
.calc-empty{grid-column:1/-1;padding:40px;text-align:center;font-size:18px;color:var(--ng-muted)}

/* --- 8. Responsive corrections for the bigger type ------------------ */
@media(min-width:821px) and (max-width:1180px){
  .ng-article-layout{grid-template-columns:210px minmax(0,1fr)}
  .ng-article-side{display:none}
}
@media(max-width:820px){
  .ng-article-layout,.prose-wrap{grid-template-columns:minmax(0,1fr)}
  .ng-article-toc,.toc{position:static}
  .ng-article-side,.article-side{display:none}
}
.ng-article-prose h2,.prose h2,.ng-article-prose h3{overflow-wrap:break-word}
@media(max-width:1020px){
  .ng-masthead{grid-template-columns:auto minmax(0,1fr) auto}
  .ng-country-links{display:none}
  .ng-briefing{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ng-nav{gap:22px}
}
@media(max-width:900px){
  .calc-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:820px){
  .ng-masthead{min-height:78px;padding:10px 0}
  .ng-nav{top:auto}
  .ng-nav a{min-height:52px}
  .ng-lead-copy{width:100%}
  .ng-story-row{grid-template-columns:60px minmax(0,1fr)}
  .ng-story-time{display:none}
  .post-item{grid-template-columns:96px minmax(0,1fr)}
  .post-item .read{display:none}
  .ncalc-fields{grid-template-columns:minmax(0,1fr)}
  .ncalc{padding:24px 20px}
}
@media(max-width:620px){
  body{font-size:17px}
  .ng-brand strong{font-size:24px}
  .ng-brand small{display:none}
  .ng-search,.ng-menu{padding:0 12px}
  .ng-head-actions{gap:8px;min-width:0}
  .ng-brand{min-width:0}
  .ng-topbar-inner>span:nth-child(2){display:none}
  .ng-wide-banner{min-height:560px}
  .ng-lead-copy{padding:40px 0}
  .ncalc-out>strong{font-size:32px}
  .ncalc-rows>div{flex-direction:column;gap:4px}
  .ncalc-rows b{text-align:left;white-space:normal}
  .calc-toolbar button{flex:1 1 auto}
  .signup input{width:100%}
  .section-head h2,.ng-editorial-heading h2{font-size:32px}
}


/* ============ COUNTRY HUB ============ */
.c-verified{background:var(--ng-sand);border-bottom:1px solid var(--ng-line)}
.c-verified p{margin:0;padding:18px 0;font-size:16px;line-height:1.6;color:#4d5a62}
.c-verified strong{color:var(--ng-ink)}
.c-quicknav{position:sticky;top:var(--ng-headerH,152px);z-index:60;background:#fff;border-bottom:1px solid var(--ng-line);box-shadow:0 4px 14px rgba(10,17,23,.04)}
.c-quicknav .container{display:flex;gap:28px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.c-quicknav .container::-webkit-scrollbar{display:none}
.c-quicknav a{flex:0 0 auto;min-height:58px;display:flex;align-items:center;font-size:16px;font-weight:800;color:#54626b;white-space:nowrap;border-bottom:3px solid transparent}
.c-quicknav a:hover{color:var(--ng-mint-dark);border-bottom-color:var(--ng-mint)}
[id^='c-sec-'],#c-tools,#c-portals,#c-faq{scroll-margin-top:calc(var(--ng-headerH,152px) + 70px)}
.c-facts-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:56px;align-items:start}
.c-facts-layout h2{margin:0 0 24px;font-size:36px;line-height:1.08;letter-spacing:-.035em;font-weight:800}
.c-facts{margin:0;border-top:3px solid var(--ng-ink)}
.c-facts>div{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:24px;padding:16px 0;border-bottom:1px solid var(--ng-line)}
.c-facts dt{margin:0;font-size:17px;font-weight:800;color:var(--ng-ink)}
.c-facts dd{margin:0;font-size:17px;line-height:1.55;color:var(--ng-muted)}
.c-alerts{padding:28px 30px;border-radius:4px;background:var(--ng-navy-deep);color:#fff}
.c-alerts h3{margin:0 0 16px;font-size:18px;letter-spacing:.02em;color:#8fe6cb;text-transform:uppercase}
.c-alerts ul{margin:0;padding:0;list-style:none}
.c-alerts li{padding:14px 0 14px 26px;position:relative;font-size:17px;line-height:1.6;color:#c8d8e2;border-bottom:1px solid rgba(255,255,255,.13)}
.c-alerts li:last-child{border-bottom:0}
.c-alerts li:before{content:"";position:absolute;left:0;top:23px;width:9px;height:9px;border-radius:50%;background:var(--ng-mint)}
.c-topic{margin-bottom:52px}
.c-topic:last-child{margin-bottom:0}
.c-topic h2{margin:0 0 22px;padding-bottom:16px;border-bottom:3px solid var(--ng-ink);font-size:32px;letter-spacing:-.03em;font-weight:800}
.c-topic-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.c-topic-list>a{display:flex;flex-direction:column;padding:26px;border:1px solid #d8dfdc;border-radius:4px;background:#fff;
  box-shadow:0 8px 24px rgba(6,47,84,.045);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.c-topic-list>a:hover{transform:translateY(-4px);border-color:#b7dfd2;box-shadow:0 20px 44px rgba(6,47,84,.1)}
.c-topic-list strong{font-size:21px;line-height:1.25;letter-spacing:-.02em}
.c-topic-list span{margin:10px 0 0;font-size:16px;line-height:1.55;color:var(--ng-muted)}
.c-topic-list b{margin-top:auto;padding-top:20px;font-size:16px;text-transform:uppercase;letter-spacing:.05em;color:var(--ng-navy)}
.c-topic-list>a:hover b{color:var(--ng-mint-dark)}
.c-tools-section{background:var(--ng-mint);color:#04211a}
.c-tools-section h2{margin:0 0 10px;font-size:36px;letter-spacing:-.035em;font-weight:800}
.c-tools-section p{margin:0 0 26px;font-size:17px;line-height:1.6;color:#164c3e}
.c-tool-row{display:flex;flex-wrap:wrap;gap:14px}
.c-tool-row a{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 22px;border-radius:4px;
  background:var(--ng-navy-deep);color:#fff;font-size:17px;font-weight:800;transition:.18s ease}
.c-tool-row a:hover{background:#062b48;transform:translateY(-2px)}
.c-tool-row b{color:var(--ng-mint)}
#cPortals h2,#cNews h2,#cFaq h2,#cCompare h2{margin:0 0 26px;font-size:36px;letter-spacing:-.035em;font-weight:800}
.c-portals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.c-portals>div{padding:24px;border:1px solid var(--ng-line);border-radius:4px;background:#fff}
.c-portals strong{display:block;font-size:21px;letter-spacing:-.02em}
.c-portals span{display:block;margin:10px 0 12px;font-size:16px;line-height:1.55;color:var(--ng-muted)}
.c-portals small{display:block;font-size:16px;font-weight:800;color:var(--ng-mint-dark)}
.c-news{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.c-news>a{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:4px;background:var(--ng-smoke);
  border:1px solid var(--ng-line);transition:.2s ease}
.c-news>a:hover{border-color:#b7dfd2;transform:translateY(-3px)}
.c-news small{font-size:16px;font-weight:800;letter-spacing:.04em;color:var(--ng-mint-dark);text-transform:uppercase}
.c-news strong{font-size:18px;line-height:1.3;letter-spacing:-.02em}
.c-faq-layout .faq-list{max-width:900px;border-top:3px solid var(--ng-ink)}
.c-faq-layout .faq summary{font-size:18px;min-height:32px;align-items:center}
.c-faq-layout .faq p{font-size:17px;max-width:820px}
.c-compare-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-compare{width:100%;min-width:640px;border-collapse:collapse;text-align:left}
.c-compare th,.c-compare td{padding:18px 20px;border-bottom:1px solid var(--ng-line);font-size:17px}
.c-compare thead th{border-bottom:3px solid var(--ng-ink);font-size:16px;text-transform:uppercase;letter-spacing:.05em;color:#54626b}
.c-compare tbody th{font-weight:800}
.c-compare tbody th a:hover{color:var(--ng-mint-dark);text-decoration:underline}
.c-compare tr.is-current{background:var(--ng-brand-soft,#e8f8f3)}
.c-compare tr.is-current td,.c-compare tr.is-current th{font-weight:800}
@media(max-width:1100px){
  .c-facts-layout{grid-template-columns:minmax(0,1fr);gap:36px}
  .c-portals,.c-news{grid-template-columns:repeat(2,minmax(0,1fr))}
  .c-topic-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .c-topic-list,.c-portals,.c-news{grid-template-columns:minmax(0,1fr)}
  .c-facts>div{grid-template-columns:minmax(0,1fr);gap:6px}
  .c-facts-layout h2,#cPortals h2,#cNews h2,#cFaq h2,#cCompare h2,.c-tools-section h2{font-size:32px}
  .c-topic h2{font-size:24px}
  .c-quicknav a{min-height:52px;font-size:16px}
  .c-quicknav .container{gap:20px}
  .c-tool-row a{width:100%;justify-content:space-between}
}


/* --- article banner: remove the dead vertical gap --- */
.ng-article-banner{height:auto;min-height:0}
.ng-article-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ng-article-banner-inner{position:relative;inset:auto;display:flex;flex-direction:column;
  justify-content:flex-end;gap:34px;min-height:430px;padding-top:34px;padding-bottom:52px}
.ng-article-banner-copy{margin-top:0}
.ng-article-banner-copy>p{margin-top:16px}
.ng-article-byline{margin-top:22px}
.ng-article-body-section{padding:64px 0 88px}
@media(max-width:820px){
  .ng-article-banner-inner{min-height:400px;gap:26px;padding-top:26px;padding-bottom:42px}
}
@media(max-width:620px){
  .ng-article-banner-inner{min-height:340px;gap:20px;padding-top:20px;padding-bottom:34px}
  .ng-article-body-section{padding:46px 0 62px}
}


/* --- article banner: breathing room + typographic tune-up --- */
.ng-article-banner-inner{min-height:520px;gap:40px;padding-top:44px;padding-bottom:66px}
.ng-article-banner-copy{max-width:880px}
.ng-article-banner h1{font-size:clamp(34px,4.4vw,54px);line-height:1.06;letter-spacing:-.032em;
  max-width:26ch;text-wrap:balance}
.ng-article-meta{margin-bottom:24px}
.ng-article-meta span{font-size:16px;letter-spacing:.055em}
.ng-article-meta span+span:before{margin:0 13px}
.ng-article-banner-copy>p{max-width:62ch;margin-top:22px;font-size:18px;line-height:1.6;color:#cddae2}
.ng-article-byline{margin-top:30px;gap:20px;font-size:16px;letter-spacing:.045em;color:#c9d8e1}
.ng-article-byline span{padding-left:20px}

/* body copy: wider measure control + tighter heading rhythm */
.ng-article-lead{font-size:24px;line-height:1.55;letter-spacing:-.012em;color:#2f4049;
  margin-bottom:44px;padding-bottom:40px}
.ng-article-prose section{margin:0 0 52px}
.ng-article-prose h2{margin:0 0 18px;line-height:1.14;letter-spacing:-.03em;text-wrap:balance}
.ng-article-prose section p{font-size:18px;line-height:1.75;max-width:68ch}
.ng-article-prose li{font-size:17px;line-height:1.6;padding:14px 0 14px 30px}
.ng-article-prose li:before{top:14px}

@media(max-width:820px){
  .ng-article-banner-inner{min-height:460px;gap:32px;padding-top:34px;padding-bottom:52px}
  .ng-article-banner h1{max-width:none}
}
@media(max-width:620px){
  .ng-article-banner-inner{min-height:400px;gap:24px;padding-top:26px;padding-bottom:42px}
  .ng-article-meta{margin-bottom:18px}
  .ng-article-banner-copy>p{font-size:17px;margin-top:18px}
  .ng-article-byline{margin-top:24px}
  .ng-article-lead{font-size:21px;margin-bottom:34px;padding-bottom:30px}
  .ng-article-prose section{margin-bottom:42px}
}


/* ================================================================
   TYPOGRAPHY SYSTEM — final layer
   Fixes three things the rescale left behind:
   1. a flattened scale (837 of ~1050 elements sat on 16/17px)
   2. line-heights that varied 1.0-1.7 at the same size
   3. body copy with no measure cap
   Hierarchy in the small tier is now carried by weight, colour and
   case rather than size, because 16px is the floor.
   ================================================================ */
:root{
  --t-micro:16px;   /* labels, eyebrows, meta      800 upper */
  --t-small:16px;   /* captions, card descriptions 400 */
  --t-ui:17px;      /* buttons, nav, table cells   */
  --t-body:18px;    /* prose paragraphs            */
  --t-lead:21px;    /* standfirst                  */
  --t-h3:22px;
  --t-h2:36px;
  --measure:68ch;
}

/* ---- 1. Line-height and tracking by role ------------------------ */
h1,h2,h3,h4,h5,h6{margin-block:0;font-weight:800}
h1{line-height:1.05;letter-spacing:-.038em}
h2{line-height:1.1;letter-spacing:-.032em}
h3{line-height:1.22;letter-spacing:-.022em}
h4,h5,h6{line-height:1.32;letter-spacing:-.012em}

/* Card and list titles are marked up as strong/b in this template,
   so they need the same treatment as real headings. */
.c-topic-list strong,.ng-topic-grid strong,.ng-blog-card-body strong,
.ng-update-list h3,.c-news strong,.ncalc-head h3,.c-portals strong,
.ng-hub-grid h3,.ng-feature-overlay h3,.ng-country-body h3,
.ng-resource-grid h3,.article-body h3,.guide-body h3{line-height:1.24;letter-spacing:-.022em}

p,li,dd,figcaption,blockquote{line-height:1.65;letter-spacing:0}

/* ---- 2. The micro tier: same size, different voice --------------- */
.kicker,.story-meta,.ng-meta,.ng-eyebrow,.ng-code,.ng-index,.topic-no,
.ncalc-tag,.c-portals small,.c-news small,.ng-brief-item small,
.ng-story-row small,.ng-article-meta span,.ng-blog-card-body small,
.ng-blog-feature-copy small,.ng-feature-overlay small,.ng-country-body small,
.ng-resource-grid small,.breadcrumbs,.ng-about-path,.footer h4,
.field label,.contact-form label,.ncalc-f label,.ng-signup-form label,
.ncalc-out>small,.c-compare thead th{
  font-size:var(--t-micro);line-height:1.4;font-weight:800;letter-spacing:.05em}

/* Body-adjacent secondary text — regular weight, muted, no caps. */
.ncalc-head p,.ncalc-note,.ncalc-f small,.c-topic-list span,
.c-portals span,.ng-hub-grid p,.ng-topic-grid p,.ng-tool-list p,
.ng-standard-grid p,.ng-resource-grid p,.ng-country-grid p,
.article-body p,.guide-body p,.country-info p,.value-card p,
.calc-disclaimer p,.ng-country-disclaimer,.footer p,.footer li{
  font-size:var(--t-small);line-height:1.6;font-weight:400;letter-spacing:0}

/* ---- 3. Interface tier ------------------------------------------ */
.btn,.ng-solid-link,.ng-nav a,.ng-country-links a,.c-quicknav a,
.calc-toolbar button,.filterbar button,.ng-tool-row a,.c-tool-row a,
.ng-read-link,.text-link,.ng-latest-header>a,.ng-editorial-heading>a,
.ng-heading-row>a,.c-compare td,.c-compare tbody th{
  font-size:var(--t-ui);line-height:1.3;letter-spacing:.01em}

/* ---- 4. Reading tier: real prose, with a measure ----------------- */
.ng-article-prose section p,.prose p,.ng-article-prose li,.prose li{
  font-size:var(--t-body);line-height:1.75;max-width:var(--measure)}
.ng-article-lead,.prose .lead{
  font-size:var(--t-lead);line-height:1.55;letter-spacing:-.012em;max-width:60ch;font-weight:400}
.c-alerts li,.ng-trust-shell li span{line-height:1.6;max-width:62ch}
.faq p,.c-faq-layout .faq p{line-height:1.65;max-width:64ch}

/* Nothing that reads as a paragraph should span the full width. */
.section-head p,.ng-heading-row p,.ng-editorial-heading p,.ng-latest-header p,
.ng-shuraa-head p,.ng-tools-intro p,.ng-process-intro p,.page-hero p,
.ng-blog-hero p,.ng-about-hero-copy>p,.country-detail-copy p,
.calc-disclaimer p,.c-verified p,.c-tools-section p,.ng-calculator-intro p,
.ng-brief-signup p,.ng-about-next p,.ng-stats-copy p{max-width:66ch}
.ng-country-disclaimer{max-width:74ch}

/* ---- 5. Display tier: tighter as it gets larger ------------------ */
.ng-lead-copy h1,.page-hero h1,.ng-blog-hero h1,.ng-about-hero-copy h1,
.ng-article-banner h1,.country-detail-copy h1{
  line-height:1.06;letter-spacing:-.034em;max-width:26ch;text-wrap:balance}
.ng-latest-header h2,.ng-editorial-heading h2,.ng-blog-archive-head h2,
.ng-about-purpose-copy h2,.ng-about-method-copy h2,.ng-about-standards h2,
.ng-shuraa-head h2,.ng-split-heading h2,.ng-calculator-intro h2,
.ng-process-intro h2,.ng-trust-shell h2,.ng-stats-copy h2,.section-head h2,
.c-facts-layout h2,.c-tools-section h2,#cPortals h2,#cNews h2,#cFaq h2,
#cCompare h2,.c-topic h2,.ng-heading-row h2,.ng-topics-head h2,
.ng-tools-intro h2,.ng-article-prose h2,.prose h2{
  line-height:1.1;letter-spacing:-.032em;text-wrap:balance}
.ng-lead-copy h1 a{letter-spacing:inherit}

/* Numerals in results and stats read better lining and tabular. */
.ncalc-out>strong,.ncalc-rows b,.result strong,.ng-stat strong,
.metric strong,.ng-about-proof-grid strong,.c-compare td{
  font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1}
.ncalc-out>strong{line-height:1.08;letter-spacing:-.03em}

/* ---- 6. Rhythm --------------------------------------------------- */
.ng-article-prose section{margin-bottom:52px}
.ng-article-prose section p+p{margin-top:20px}
.c-facts dd,.c-facts dt{line-height:1.55}
.faq summary{line-height:1.35;letter-spacing:-.012em}

@media(max-width:820px){
  :root{--t-body:17px;--t-lead:20px;--t-h2:30px}
  .ng-article-prose section p,.prose p{line-height:1.7}
}
@media(max-width:620px){
  :root{--measure:100%}
  .ng-lead-copy h1,.page-hero h1,.ng-blog-hero h1,.ng-about-hero-copy h1,
  .ng-article-banner h1,.country-detail-copy h1{max-width:none;line-height:1.08;letter-spacing:-.028em}
  h2{letter-spacing:-.026em}
}


/* --- news archive: country thumbnails --- */
.post-item{grid-template-columns:104px 132px minmax(0,1fr) auto;gap:22px;align-items:start}
.post-thumb{display:block;height:96px;border-radius:4px;overflow:hidden;background:var(--ng-smoke)}
.post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.post-item:hover .post-thumb img{transform:scale(1.05)}
@media(max-width:1020px){
  .post-item{grid-template-columns:96px 116px minmax(0,1fr)}
  .post-item .read{display:none}
}
@media(max-width:700px){
  .post-item{grid-template-columns:92px minmax(0,1fr);gap:16px;padding:20px 0}
  .post-thumb{grid-column:1;grid-row:1/span 2;align-self:start;height:92px}
  .post-item .date{grid-column:2;grid-row:1;margin-bottom:2px}
  .post-item>div:not(.date):not(.read){grid-column:2;grid-row:2}
}


/* --- display weight: 900 is too heavy at large sizes ---------------
   Roboto Black holds up at 16-24px but turns into a slab above ~30px.
   Weight now steps DOWN as size goes up, tracking compensates. */
.ng-lead-copy h1,.page-hero h1,.ng-blog-hero h1,.ng-about-hero-copy h1,
.ng-article-banner h1,.country-detail-copy h1,.ng-lead-copy h1 a{
  font-weight:700;letter-spacing:-.028em}
.ng-latest-header h2,.ng-editorial-heading h2,.ng-blog-archive-head h2,
.ng-about-purpose-copy h2,.ng-about-method-copy h2,.ng-about-standards h2,
.ng-shuraa-head h2,.ng-split-heading h2,.ng-calculator-intro h2,
.ng-process-intro h2,.ng-trust-shell h2,.ng-stats-copy h2,.section-head h2,
.c-facts-layout h2,.c-tools-section h2,#cPortals h2,#cNews h2,#cFaq h2,
#cCompare h2,.c-topic h2,.ng-heading-row h2,.ng-tools-intro h2,
.ng-article-prose h2,.prose h2,.ng-blog-feature h2,.ng-about-next h2{
  font-weight:700;letter-spacing:-.026em}
.ng-topics-head h2,.ncalc-out>strong,.result strong,.ng-stat strong,
.metric strong,.ng-about-proof-grid strong{font-weight:800;letter-spacing:-.024em}
/* Card titles keep more weight — they are small and need the presence. */
.c-topic-list strong,.ng-blog-card-body strong,.ncalc-head h3,
.ng-hub-grid h3,.ng-feature-overlay h3,.ng-country-body h3,
.ng-resource-grid h3,.article-body h3,.guide-body h3,.post-item h3,
.ng-story-row h3,.c-news strong{font-weight:800}
@media(max-width:620px){
  .ng-lead-copy h1,.page-hero h1,.ng-blog-hero h1,.ng-about-hero-copy h1,
  .ng-article-banner h1,.country-detail-copy h1{font-weight:800;letter-spacing:-.024em}
}


/* remaining display-scale items that were still Black */
.ng-latest-lead h3,.ng-topic-intro h2,.ng-brief-signup h2,
.ng-about-section-head h2,.ng-about-hero-copy h2,.ng-blog-feature h2,
.ng-article-next h2,.c-alerts h3{font-weight:700;letter-spacing:-.026em}
.ng-process-steps article>span,.ng-about-steps article>span{font-weight:800}


/* ================================================================
   TYPOGRAPHY NORMALIZE — final pass
   The layers above used explicit selector lists, so anything not
   named kept its legacy value. Result: 5 line-heights for body
   copy, 3 for card titles, 5 trackings in the label tier.
   This block is structural, so nothing falls through. It is last
   in the sheet and carries .page/header/footer specificity, which
   wins ties against the original single-class rules.
   ================================================================ */
:root{
  --lh-display:1.08;  --ls-display:-.028em;
  --lh-h2:1.15;       --ls-h2:-.026em;
  --lh-h3:1.25;       --ls-h3:-.02em;
  --lh-title:1.3;     --ls-title:-.012em;
  --lh-prose:1.75;
  --lh-text:1.6;
  --lh-label:1.4;     --ls-label:.05em;
}

/* ---- headings ---------------------------------------------------- */
.page h1,header h1,footer h1{line-height:var(--lh-display);letter-spacing:var(--ls-display);font-weight:700}
.page h2,header h2,footer h2{line-height:var(--lh-h2);letter-spacing:var(--ls-h2);font-weight:700}
.page h3,header h3,footer h3{line-height:var(--lh-h3);letter-spacing:var(--ls-h3);font-weight:800}
.page h4,.page h5,.page h6,footer h4{line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:800}

/* h2/h3 that render small enough to read as titles get title metrics */
.page .ng-topics-head h2,.page .ng-brief-item h2{line-height:var(--lh-h3);letter-spacing:var(--ls-h3)}
.page .ng-story-row h3,.page .post-item h3,.page .ng-update-list h3,
.page .article-body h3,.page .guide-body h3,.page .ng-hub-grid h3,
.page .ng-country-body h3,.page .ng-resource-grid h3,.page .ncalc-head h3,
.page .ng-feature-overlay h3,.page .ng-tool-list h3,.page .sidebox h3,
.page .contact-note h3,.page .calc-disclaimer h3,.page .c-alerts h3,
.page .article-side h4{line-height:var(--lh-title);letter-spacing:var(--ls-title)}

/* Titles marked up as strong/b inside cards — same metrics as a heading */
.page .c-topic-list>a strong,.page .ng-blog-card-body strong,
.page .c-news strong,.page .c-portals strong,.page .ng-topic-grid strong,
.page .value-card strong,.page .page-aside strong,.page .ng-trust-shell li strong,
.page .c-facts dt,.page .ng-about-standards li strong,
.page .ng-blog-hero-note strong,.page .hero-note strong{
  line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:800}

/* ---- text ---------------------------------------------------------- */
.page p,.page li,.page dd,.page blockquote,footer p,footer li{
  line-height:var(--lh-text);letter-spacing:0;font-weight:400}
.page .ng-article-prose section p,.page .prose p,
.page .ng-article-prose li,.page .prose li{line-height:var(--lh-prose)}
.page .ng-article-lead,.page .prose .lead{line-height:1.55;letter-spacing:-.012em;font-weight:400}

/* ---- label tier: one tracking, one leading, one weight ------------- */
.page .kicker,.page .story-meta,.page .ng-meta,.page .ng-eyebrow,.page .ng-code,
.page .ng-index,.page .topic-no,.page .ncalc-tag,.page .breadcrumbs,
.page .ng-about-path,.page .ng-article-meta span,.page .ncalc-out>small,
.page .field label,.page .contact-form label,.page .ncalc-f label,
.page .ng-signup-form label,.page .c-compare thead th,footer h4,
.page .c-portals small,.page .c-news small,.page .ng-brief-item small,
.page .ng-story-row small,.page .ng-blog-card-body small,
.page .ng-blog-feature-copy small,.page .ng-feature-overlay small,
.page .ng-country-body small,.page .ng-resource-grid small,
.page .ng-article-byline,.page .ng-stat span,.page .metric span,
.page .ng-about-proof-grid span,.page .ng-hub-grid b,.page .ng-country-body b,
.page .ng-resource-grid b,.page .ng-blog-card-body b,.page .c-topic-list b{
  line-height:var(--lh-label);letter-spacing:var(--ls-label);font-weight:800}

/* Descriptive small text is NOT a label — regular weight, normal tracking */
.page .ncalc-head p,.page .ncalc-note,.page .ncalc-f small,
.page .c-topic-list span,.page .c-portals span,.page .ng-hub-grid p,
.page .ng-topic-grid p,.page .ng-tool-list p,.page .ng-standard-grid p,
.page .ng-resource-grid p,.page .ng-country-grid p,.page .article-body p,
.page .guide-body p,.page .country-info p,.page .value-card p,
.page .ng-country-disclaimer,.page .page-aside span,.page .c-facts dd,
.page .ng-trust-shell li span,.page .hero-note span{
  line-height:var(--lh-text);letter-spacing:0;font-weight:400}

/* ---- links --------------------------------------------------------- */
/* A link inside prose or a card inherits its context rather than
   forcing 900, which was making body copy look bolded at random. */
.page p a,.page li a,.page dd a,.page .c-compare tbody th a{
  font-weight:inherit;letter-spacing:inherit;line-height:inherit}
/* Standalone calls to action share one weight. */
.page .text-link,.page .ng-read-link,.page .ng-latest-header>a,
.page .ng-editorial-heading>a,.page .ng-heading-row>a,.page .ng-split-heading>a,
.page .ng-about-section-head>a,.page .country-cta,.page .c-quicknav a,
.page .btn,.page .ng-solid-link,.page .c-tool-row a{font-weight:800;line-height:1.3}

/* ---- numerals ------------------------------------------------------ */
.page .ncalc-out>strong,.page .result strong,.page .ng-stat strong,
.page .metric strong,.page .ng-about-proof-grid strong,.page .c-compare td{
  font-variant-numeric:tabular-nums lining-nums}
.page .ncalc-out>strong,.page .result strong,.page .ng-stat strong,
.page .metric strong,.page .ng-about-proof-grid strong{
  line-height:1.08;letter-spacing:-.026em;font-weight:800}

@media(max-width:820px){
  :root{--lh-prose:1.7;--lh-display:1.1;--ls-display:-.024em}
}
@media(max-width:620px){
  :root{--ls-h2:-.022em;--ls-display:-.02em}
  .page h1,header h1{font-weight:800}
}


/* ---- normalize, round two: the stragglers -------------------------
   Every value below was flagged by the audit as a one-off. ---------- */

/* 1. Nothing under 26px stays at 900. Black is a display weight and
      at label size it just reads as smudge. */
.page .ng-photo-label,.page .faq summary,.page .filterbar button,
.page .ncalc-badge,.page .ng-about-actions>a,.page .ng-about-method-copy a,
.page .ng-article-byline strong,.page .ng-calculator-intro>a,
.page .ng-country-links a,.page .ng-latest-lead-copy b,
.page .ng-topics b,.page .ng-tool-list b,.page .country-index a,
.page .country-nav-grid a,.page .ng-topic-grid b,.page .facts span,
.page .c-compare tbody th,.page .c-compare tr.is-current td,
header .ng-country-links a,header .ng-nav a{font-weight:800}
.page .brand-name,.footer .brand-name{font-weight:800}

/* 2. One leading for every label; 1.0 clipped descenders. */
.page .brand-tag,.footer .brand-tag,.page .ng-photo-label,
.page .post-item .date,.page .news-row .date,.footer-bottom span{
  line-height:var(--lh-label);letter-spacing:var(--ls-label)}

/* 3. Body-size text lands on one of two leadings: 1.6 or prose 1.75. */
.page .faq p,.page .ng-blog-card-body>span,.page .ncalc-flag,
.page .ng-trust-shell li span,.page .c-alerts li,.page .toc a,
.page .ng-article-toc a,.page .search-result span,.page .dropdown a{
  line-height:var(--lh-text)}

/* 4. Interface tracking: 0.01em was a half-measure. Buttons and
      nav share the label tracking; table cells and CTAs sit at 0. */
.page .btn,.page .ng-solid-link,.page .filterbar button,
.page .calc-toolbar button,.page .ng-news-btn,.page .ng-search,
.page .ng-menu,header .ng-nav a,header .ng-country-links a,
.page .c-quicknav a{letter-spacing:var(--ls-label)}
.page .c-tool-row a,.page .ng-read-link,.page .text-link,
.page .ng-latest-header>a,.page .ng-editorial-heading>a,
.page .ng-heading-row>a,.page .c-compare td,.page .c-compare tbody th{
  letter-spacing:0}


/* ---- weight system, final ------------------------------------------
   Three weights only: 400 body, 800 emphasis/labels, 700 display.
   Every legacy `font-weight:800` was rewritten to 800 at source, so
   nothing can fall through a selector list. ------------------------- */
.page h1,.page h2,header h1,header h2{font-weight:700}
.page .ng-lead-copy h1,.page .ng-article-banner h1,.page .page-hero h1,
.page .ng-blog-hero h1,.page .ng-about-hero-copy h1,
.page .country-detail-copy h1,.page .ng-lead-copy h1 a{font-weight:700}
.page .ng-brand small,header .ng-brand small,.footer .brand-tag{line-height:1.4}
.page .ncalc-badge{letter-spacing:.05em}
.page .post-item .read,.page .ng-story-time{font-weight:800;letter-spacing:.05em;line-height:1.4}
@media(max-width:620px){.page h1,header h1{font-weight:800}}

/* last three one-offs the audit surfaced */
.page time,.footer time{font-weight:400;line-height:var(--lh-text)}
.page .ng-shuraa-head p,.page .ng-about-hero-copy>p,
.page .ng-tools-intro p,.page .ng-process-intro p{line-height:var(--lh-text)}
.page .ng-about-visual-note span,.page .ng-about-hero-copy span{line-height:var(--lh-text)}


/* ================= v6 : header, interaction & a11y ================= */
@media(min-width:821px){
  .ng-topbar-inner{height:36px;gap:20px}
  .ng-topbar .ng-country-links{display:flex;margin-left:auto;gap:0}
  .ng-topbar .ng-country-links a{min-width:auto;padding:4px 11px;border-right:1px solid rgba(255,255,255,.16);color:#c3d3de;font-size:15px;font-weight:800;letter-spacing:.09em}
  .ng-topbar .ng-country-links a:first-child{border-left:1px solid rgba(255,255,255,.16)}
  .ng-topbar .ng-country-links a:hover{color:#fff;background:rgba(255,255,255,.07)}
  .ng-masthead{height:78px;display:flex;align-items:center;gap:40px}
  .ng-masthead .ng-nav{flex:1;justify-content:center;height:78px;gap:30px}
  .ng-masthead .ng-nav a{height:78px}
  .ng-head-actions{margin-left:0}
}
/* interaction states */
*{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2.5px solid var(--ng-mint-dark);outline-offset:2px;border-radius:2px}
.btn,.ng-solid-link,.ng-search,.ng-menu,.ng-read-link,.country-cta,.text-link,.ng-latest-header>a,.ng-editorial-heading>a,.ng-heading-row>a{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
.btn:hover,.ng-solid-link:hover{transform:translateY(-1px)}
.ng-solid-link:hover{background:var(--ng-navy-deep)}
.ng-search:hover,.ng-menu:hover{background:var(--ng-smoke);border-color:#c3ccce}
/* card lift — subtle, purposeful */
.country-info,.ng-blog-card,.ng-latest-lead,.post-item,.ng-hub-grid>a{transition:transform .18s ease,box-shadow .18s ease}
.country-info:hover,.ng-blog-card:hover,.ng-latest-lead:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(6,47,84,.12)}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* v6 : guides — featured-first editorial layout (break uniform 3-up) */
@media(min-width:821px){
  .ng-guides-section .ng-resource-grid{grid-template-columns:1.55fr 1fr;grid-template-rows:auto auto;gap:22px}
  .ng-guides-section .ng-resource-grid>a:first-child{grid-row:1 / span 2}
  .ng-guides-section .ng-resource-grid>a:first-child img{height:340px}
  .ng-guides-section .ng-resource-grid>a:first-child h3{font-size:32px;line-height:1.15}
  .ng-guides-section .ng-resource-grid>a:nth-child(2) img,
  .ng-guides-section .ng-resource-grid>a:nth-child(3) img{height:158px}
  .ng-guides-section .ng-resource-grid>a:nth-child(2) span,
  .ng-guides-section .ng-resource-grid>a:nth-child(3) span{padding:20px 22px}
}

/* v6 : interior page-hero — kill the empty navy void */
@media(min-width:821px){
  .page-hero{padding:58px 0 54px}
  .page-hero-grid{min-height:auto;align-items:center;gap:64px}
}

/* v7 : interior hero banner image (replaces green info-card) */
@media(min-width:821px){
  .page-hero-grid{align-items:stretch}
  .page-hero-grid>div:first-child{align-self:center}
  .page-hero-visual{position:relative;border-radius:4px;overflow:hidden;min-height:296px;height:100%}
  .page-hero-visual img{width:100%;height:100%;min-height:296px;object-fit:cover;display:block}
  .page-hero-visual:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(4,31,53,.06) 42%,rgba(4,31,53,.84) 100%)}
  .page-hero-visual-note{position:absolute;z-index:3;left:26px;right:26px;bottom:22px}
  .page-hero-visual-note strong{display:block;color:#fff;font-size:22px;letter-spacing:-.02em;margin-bottom:4px}
  .page-hero-visual-note span{color:#d4e2e9;font-size:16px;line-height:1.5}
}
.page-hero-visual{position:relative;border-radius:4px;overflow:hidden;min-height:198px;margin-top:8px}
.page-hero-visual img{width:100%;height:198px;object-fit:cover;display:block}
.page-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,31,53,.06) 42%,rgba(4,31,53,.84) 100%)}
.page-hero-visual-note{position:absolute;z-index:3;left:18px;right:18px;bottom:14px}
.page-hero-visual-note strong{display:block;color:#fff;font-size:19px;margin-bottom:3px}
.page-hero-visual-note span{color:#d4e2e9;font-size:15px;line-height:1.45}

/* v8 : full-width banner hero (replaces contained image card) */
.page-hero-banner{position:relative;padding:0;min-height:360px;overflow:hidden;background:#0e2838;display:flex;align-items:center;border-bottom:0}
.page-hero-banner .page-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.page-hero-banner:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,22,37,.95) 0%,rgba(4,22,37,.84) 44%,rgba(4,22,37,.42) 80%,rgba(4,22,37,.2) 100%)}
.page-hero-banner .page-hero-inner{position:relative;z-index:2;color:#fff;padding:66px 0}
.page-hero-banner .page-hero-inner .breadcrumbs,.page-hero-banner .page-hero-inner h1,.page-hero-banner .page-hero-inner p{max-width:640px}
.page-hero-banner .page-hero-inner .breadcrumbs{color:#9fb7c4}
.page-hero-banner .page-hero-inner .kicker{color:var(--ng-mint)}
.page-hero-banner .page-hero-inner h1{color:#fff}
.page-hero-banner .page-hero-inner p{color:#d4e2e9}
@media(max-width:820px){
  .page-hero-banner{min-height:0}
  .page-hero-banner .page-hero-inner{padding:46px 0}
  .page-hero-banner .page-hero-inner .breadcrumbs,.page-hero-banner .page-hero-inner h1,.page-hero-banner .page-hero-inner p{max-width:100%}
  .page-hero-banner:after{background:linear-gradient(180deg,rgba(4,22,37,.82) 0%,rgba(4,22,37,.9) 100%)}
}

/* ===== About redesign + Blog banner ===== */
.page-hero-banner .ng-about-actions{margin-top:30px;display:flex;align-items:center;gap:22px}
.page-hero-banner .ng-about-actions a:first-child{display:inline-flex;padding:13px 22px;background:var(--ng-mint);color:#04241b;border-radius:4px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:15px}
.page-hero-banner .ng-about-actions a:last-child{color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:15px}
@media(max-width:820px){.page-hero-banner .ng-about-actions{flex-direction:column;align-items:flex-start;gap:14px}}

/* proof strip: de-greened, light, big numbers */
.ng-about-proof{background:#fff;color:var(--ng-ink);border-top:1px solid var(--ng-line);border-bottom:1px solid var(--ng-line)}
.ng-about-proof-grid>div{min-height:0;padding:38px 36px;border-left:1px solid var(--ng-line);position:relative}
.ng-about-proof-grid>div:first-child{border-left:0}
.ng-about-proof-grid>div:before{content:"";position:absolute;top:0;left:36px;width:34px;height:3px;background:var(--ng-mint)}
.ng-about-proof-grid strong{font-size:46px;color:var(--ng-navy);letter-spacing:-.032em}
.ng-about-proof-grid span{margin-top:11px;color:var(--ng-muted);font-weight:800;letter-spacing:.05em}
@media(max-width:760px){.ng-about-proof-grid>div{border-left:0;border-top:1px solid var(--ng-line)}.ng-about-proof-grid>div:first-child{border-top:0}.ng-about-proof-grid>div:before{left:36px}}

/* method: horizontal process strip (distinct from purpose list) */
.ng-about-method-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:46px}
.ng-about-method-head h2{margin:0}
.ng-about-method-head p{margin:14px 0 0;max-width:660px;color:var(--ng-muted);font-size:18px;line-height:1.7}
.ng-about-method-head>a{white-space:nowrap;color:var(--ng-mint-dark);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.ng-about-process{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ng-ink)}
.ng-about-process article{padding:26px 28px 32px 0;border-right:1px solid var(--ng-line)}
.ng-about-process article:last-child{border-right:0;padding-right:0}
.ng-about-process span{display:block;font-size:30px;font-weight:800;color:var(--ng-mint-dark);letter-spacing:-.02em;margin-bottom:16px}
.ng-about-process h3{margin:0 0 9px;font-size:20px;letter-spacing:-.02em}
.ng-about-process p{margin:0;color:var(--ng-muted);font-size:16px;line-height:1.6}
@media(max-width:900px){.ng-about-method-head{flex-direction:column;align-items:flex-start;gap:16px}.ng-about-process{grid-template-columns:1fr 1fr}.ng-about-process article{border-right:0;border-bottom:1px solid var(--ng-line);padding:22px 0}.ng-about-process article:nth-child(odd){padding-right:20px}}
@media(max-width:560px){.ng-about-process{grid-template-columns:1fr}}

/* single-line section headings — only on full desktop */
@media(min-width:1280px){
  .ng-editorial-heading>div,
  .ng-latest-header h2,
  .ng-split-heading h2,
  .ng-about-section-head h2,
  .ng-blog-archive-head h2,
  .ng-article-next h2,
  .section-head h2,
  .ng-about-method-head h2,
  .ng-about-next h2{max-width:none;white-space:nowrap}
}

/* Explore GCC topics. -> single line (widen its column) */
@media(min-width:821px){
  .ng-topic-layout{grid-template-columns:.66fr 1.34fr}
  .ng-topic-intro h2{max-width:none}
}
@media(min-width:1280px){ .ng-topic-intro h2{white-space:nowrap} }

/* ===== de-AI: crisp editorial surfaces ===== */
/* resting: no floaty shadows — use hairline borders */
.ng-resource-grid>a,.ng-hub-grid>a,.country-info,.ng-blog-card,.ng-blog-feature,.ng-calculator-grid>a,.ng-topic-grid>a,.ng-about-country-grid>a,.country-index-grid>*,.card-grid>*,.ng-latest-lead,.ng-latest-card,.post-item,.calc-card{box-shadow:none}
.country-info,.ng-blog-card,.ng-latest-lead,.post-item{border:1px solid var(--ng-line)}
/* subtle, purposeful hover (not a big float) */
.ng-resource-grid>a:hover,.ng-hub-grid>a:hover,.country-info:hover,.ng-blog-card:hover,.ng-latest-lead:hover,.ng-about-country-grid>a:hover{box-shadow:none;border-color:var(--ng-navy);transform:translateY(-2px)}
.ng-blog-feature{box-shadow:0 10px 28px rgba(3,25,42,.09)}
/* squared icon marks (less app-badge feel) */
.ng-hub-mark,.calc-badge,.ng-calc-badge,.c-topic-mark{border-radius:4px!important}
[id]{scroll-margin-top:150px}
body.ng-modal-open{overflow:hidden}
.ng-nav a:first-child{color:#4e5a63}
.ng-nav a:first-child:hover,.ng-nav a:first-child[aria-current="page"]{color:var(--ng-ink)}


/* ============================================================
   V9 — COMPLETE LAYOUT / SPACING AUDIT
   Final cascade layer: removes squeeze/overflow edge cases and
   normalises vertical rhythm across desktop, tablet and mobile.
   ============================================================ */
:root{
  --ng-section-y:84px;
  --ng-section-y-md:68px;
  --ng-section-y-sm:54px;
  --ng-gap-xl:56px;
  --ng-gap-lg:36px;
  --ng-gap-md:24px;
  --ng-gap-sm:16px;
  --ng-card-pad:24px;
}
html,body{max-width:100%}
body{overflow-x:hidden}
.page,.container,.page>*{min-width:0}
img,svg,video{max-width:100%}

/* Grid/flex children that previously caused text squeeze or overflow. */
.ng-editorial-heading>*,.ng-latest-header>*,.ng-split-heading>*,
.ng-topic-layout>*,.ng-tools-layout>*,.ng-trust-shell>*,
.ng-brief-signup-inner>*,.ng-about-purpose-grid>*,.ng-about-method-grid>*,
.ng-about-section-head>*,.ng-about-standards-shell>*,
.ng-about-next-inner>*,.ng-article-next>.container>*{min-width:0}

/* Never force editorial headings onto one line; natural wrapping is safer. */
.ng-editorial-heading h2,.ng-latest-header h2,.ng-split-heading h2,
.ng-about-section-head h2,.ng-blog-archive-head h2,.ng-article-next h2,
.section-head h2,.ng-about-method-head h2,.ng-about-next h2,
.ng-topic-intro h2{white-space:normal!important}

/* ----- vertical rhythm --------------------------------------- */
.ng-editorial-section,.ng-topic-section,.ng-shuraa-section,.ng-trust-section,
.ng-blog-archive,.ng-about-purpose,.ng-about-method,.ng-about-coverage,
.ng-about-standards{padding:var(--ng-section-y) 0}
.page:not([data-page="home"]) .section{padding:80px 0}
.ng-article-body-section{padding:76px 0 88px}
.ng-brief-signup,.ng-about-next,.ng-article-next{padding-top:0;padding-bottom:var(--ng-section-y)}

/* Section heads: consistent separation from the content below. */
.section-head,.ng-editorial-heading,.ng-country-heading{margin-bottom:32px}
.ng-blog-archive-head{margin-bottom:32px;padding-bottom:24px;gap:44px}
.ng-about-method-head{margin-bottom:36px}
.ng-about-section-head{margin-bottom:32px;padding-bottom:22px;gap:36px}
.ng-shuraa-head{margin-bottom:36px}

/* Common grids: remove oversized dead space while keeping hierarchy. */
.ng-topic-layout{gap:56px}
.ng-tools-layout{gap:56px}
.ng-about-purpose-grid,.ng-about-method-grid{gap:64px}
.ng-trust-shell{gap:56px;padding:50px 52px}
.ng-country-image-grid,.ng-resource-grid,.ng-blog-grid{gap:20px}
.guide-grid,.country-index-grid,.tools-grid,.card-grid{gap:20px}
.form-grid,.row2,.contact-form{gap:14px}

/* Card interiors share a predictable inset. */
.guide-body,.country-info-body,.ng-country-body,.ng-resource-grid>a>span,
.ng-blog-card-body{padding:24px}
.tool-card,.value-card,.contact-card{padding:24px}

/* ----- CTA / action audit ------------------------------------ */
.ng-about-next-inner,.ng-article-next>.container{
  min-height:0;
  padding:40px 44px;
  grid-template-columns:minmax(0,1fr) max-content;
  gap:40px;
  align-items:center;
}
.ng-about-next-inner>div:last-child,
.ng-article-next>.container>div:last-child{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:12px;
}
.ng-about-next-inner>div:last-child a,
.ng-article-next>.container>div:last-child a{
  min-height:46px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  white-space:nowrap;
  border-radius:4px;
  font-size:15px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.ng-about-next-inner>div:last-child a:first-child,
.ng-article-next>.container>div:last-child a:first-child{
  background:var(--ng-mint);
  color:#061e18;
}
.ng-about-next-inner>div:last-child a:last-child,
.ng-article-next>.container>div:last-child a:last-child{
  color:#fff;
  border:1px solid rgba(255,255,255,.30);
  background:transparent;
}
.ng-about-next-inner>div:last-child a:hover,
.ng-article-next>.container>div:last-child a:hover{transform:none}

/* Other two-column action shells switch before they start squeezing. */
.ng-brief-signup-inner{gap:32px;padding:36px 40px}
.ng-signup-form{max-width:390px;width:100%}

/* Header/content rows must be allowed to wrap cleanly. */
.ng-editorial-heading,.ng-latest-header,.ng-split-heading,.ng-heading-row{
  column-gap:32px;
  row-gap:18px;
}
.ng-about-actions,.hero-actions{flex-wrap:wrap}

/* Tables / horizontal content: contain instead of pushing the page width. */
.c-compare-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-compare{min-width:660px}

/* Footer rhythm. */
.footer{padding:52px 0 20px}
.footer-grid{gap:34px;padding-bottom:30px}

@media(max-width:1200px){
  /* This is the exact class of squeeze shown in the supplied screenshot. */
  .ng-about-next-inner,.ng-article-next>.container{
    grid-template-columns:1fr;
    gap:24px;
    padding:36px 40px;
  }
  .ng-about-next h2,.ng-article-next h2{max-width:760px}
  .ng-brief-signup-inner{grid-template-columns:1fr}
  .ng-signup-form{max-width:560px}
  .ng-about-purpose-grid,.ng-about-method-grid{gap:48px}
  .ng-topic-layout,.ng-tools-layout{gap:44px}
}

@media(max-width:900px){
  :root{--ng-section-y:var(--ng-section-y-md)}
  .ng-editorial-heading,.ng-latest-header,.ng-split-heading,.ng-heading-row{
    flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:16px
  }
  .ng-editorial-heading>a,.ng-latest-header>a,.ng-split-heading>a,.ng-heading-row>a{margin:0}
  .ng-editorial-section,.ng-topic-section,.ng-shuraa-section,.ng-trust-section,
  .ng-blog-archive,.ng-about-purpose,.ng-about-method,.ng-about-coverage,
  .ng-about-standards{padding:var(--ng-section-y-md) 0}
  .page:not([data-page="home"]) .section{padding:68px 0}
  .ng-article-body-section{padding:64px 0 74px}
  .ng-brief-signup,.ng-about-next,.ng-article-next{padding-bottom:68px}
  .ng-topic-layout,.ng-tools-layout,.ng-about-purpose-grid,.ng-about-method-grid{gap:36px}
  .ng-trust-shell{gap:32px;padding:40px 34px}
  .ng-about-section-head{gap:20px}
  .ng-blog-archive-head{gap:20px}
}

@media(max-width:620px){
  :root{--ng-section-y:var(--ng-section-y-sm)}
  .container{width:calc(100% - 28px)}
  .ng-editorial-section,.ng-topic-section,.ng-shuraa-section,.ng-trust-section,
  .ng-blog-archive,.ng-about-purpose,.ng-about-method,.ng-about-coverage,
  .ng-about-standards{padding:var(--ng-section-y-sm) 0}
  .page:not([data-page="home"]) .section{padding:54px 0}
  .ng-article-body-section{padding:52px 0 60px}
  .ng-brief-signup,.ng-about-next,.ng-article-next{padding-bottom:54px}
  .section-head,.ng-editorial-heading,.ng-country-heading{margin-bottom:24px}
  .ng-about-method-head,.ng-shuraa-head{margin-bottom:28px}
  .ng-blog-archive-head{margin-bottom:26px;padding-bottom:20px}
  .ng-about-next-inner,.ng-article-next>.container{padding:28px 22px;gap:20px}
  .ng-about-next-inner>div:last-child,
  .ng-article-next>.container>div:last-child{
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  .ng-about-next-inner>div:last-child a,
  .ng-article-next>.container>div:last-child a{width:100%;min-height:46px}
  .ng-brief-signup-inner{padding:28px 22px;gap:24px}
  .ng-trust-shell{padding:30px 22px;gap:28px}
  .guide-body,.country-info-body,.ng-country-body,.ng-resource-grid>a>span,
  .ng-blog-card-body,.tool-card,.value-card,.contact-card{padding:20px}
  .guide-grid,.country-index-grid,.tools-grid,.card-grid,
  .ng-country-image-grid,.ng-resource-grid,.ng-blog-grid{gap:14px}
  .form-grid,.row2,.contact-form{gap:12px}
  .footer{padding:44px 0 18px}
  .footer-grid{gap:24px;padding-bottom:26px}
}
