/*
Theme Name: FinPrism
Theme URI: https://finprism.org
Author: FinPrism
Description: Editorial theme for FinPrism — Finance, made clear. Ported from the FinPrism Lovable design.
Version: 1.0.1
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: finprism
*/

/* ---------- Tokens ---------- */
:root{
 --font-sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
 --font-label:'Trispace','IBM Plex Mono',ui-monospace,monospace;
 --logo-ink:#0B0F19;--logo-arrow-top:#6B7383;--logo-arrow-bottom:#2A303C;
 --background:oklch(1 0 0);--foreground:oklch(0.096926 0 0);--body:oklch(0.367848 0.029202 266.442);
 --muted-foreground:oklch(0.521878 0.044857 267.519);--muted:oklch(0.654819 0.034544 255.642);--card:oklch(1 0 0);
 --primary:oklch(0.501676 0.239564 265.373);--primary-foreground:oklch(1 0 0);--secondary:oklch(0.983061 0.008026 278.640);
 --accent:oklch(0.983061 0.008026 278.640);--accent-foreground:oklch(0.096926 0 0);--border:oklch(0.931161 0.015471 269.979);
 --ink-border:oklch(0.096926 0 0);--highlight:oklch(0.955601 0.213960 114.324);--highlight-foreground:oklch(0.096926 0 0);
 --positive:oklch(0.43 0.125 154);--negative:oklch(0.51 0.195 27);
 --shadow-hard:3px 3px 0 0 var(--ink-border);--shadow-pressed:1px 1px 0 0 var(--ink-border);
 color-scheme:light;
}
.dark{
 --logo-ink:#FFFFFF;--logo-arrow-top:#D5DAE3;--logo-arrow-bottom:#8C95A6;
 --background:oklch(0.226521 0.018579 266.155);--card:oklch(0.253 0.023 265);--foreground:oklch(0.979 0.004 270);
 --body:oklch(0.852 0.019 265);--muted-foreground:oklch(0.748 0.031 265);--secondary:oklch(0.265 0.025 265);
 --accent:oklch(0.3 0.03 265);--accent-foreground:oklch(0.979 0.004 270);--border:oklch(0.367848 0.029202 266.442);
 --ink-border:oklch(0.72 0.014 265);--primary:oklch(0.733 0.144 265);--primary-foreground:oklch(0.17 0.02 265);
 --positive:oklch(0.78 0.145 154);--negative:oklch(0.74 0.155 27);
 color-scheme:dark;
}

/* ---------- Base / reset ---------- */
*,*::before,*::after{box-sizing:border-box;border:0 solid var(--border);margin:0;padding:0;letter-spacing:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--background);color:var(--body);font-family:var(--font-sans);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--foreground);font-family:var(--font-sans);line-height:1.25;font-weight:900}
h1{font-weight:700}
a{color:inherit;text-decoration:none;transition:color .15s}
img,svg{display:block;max-width:100%}
img{height:auto}
ul,ol{list-style:none}
button,input{font:inherit;color:inherit;background:none}
button{cursor:pointer}
a,button,input{-webkit-tap-highlight-color:transparent}
button,a,input,summary{outline-offset:4px}
::selection{background:var(--highlight);color:var(--highlight-foreground)}
mark{background:var(--highlight);color:var(--highlight-foreground);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
input{color:var(--foreground)}
table{border-collapse:collapse}

/* ---------- Small utilities used by templates ---------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-3{gap:12px}
.ml-auto{margin-left:auto}.mt-3{margin-top:12px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-5{margin-bottom:20px}.pb-10{padding-bottom:40px}
.max-w-3xl{max-width:48rem}.border-b-0{border-bottom:0!important}
.text-primary{color:var(--primary)}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.text-muted-foreground{color:var(--muted-foreground)}

/* ---------- Buttons (pill + hard shadow) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:999px;font-size:14px;font-weight:700;height:44px;padding:0 20px;transition:transform .15s,box-shadow .15s,background-color .15s}
.btn svg{width:16px;height:16px;flex-shrink:0}
.btn-primary{border:1px solid var(--ink-border);background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-hard)}
.btn-outline{border:1px solid var(--ink-border);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-hard)}
.btn-primary:hover,.btn-outline:hover{transform:translate(2px,2px);box-shadow:var(--shadow-pressed)}
.btn-sm{height:40px;padding:0 16px}
.btn-icon{width:40px;height:40px;padding:0;border-radius:999px;display:inline-grid;place-items:center;color:var(--foreground)}
.btn-icon:hover{background:var(--accent);color:var(--accent-foreground)}
.btn-icon svg{width:21px;height:21px}
.btn-icon.is-current{background:var(--primary);color:var(--primary-foreground);border:1px solid var(--ink-border);box-shadow:var(--shadow-hard)}

/* ---------- Layout / header ---------- */
.site-container{width:min(1200px,calc(100% - 80px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:40;background:var(--background);border-bottom:1px solid var(--border)}
.admin-bar .site-header{top:32px}
.header-inner{height:88px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px}
.wordmark{color:var(--logo-ink);display:inline-flex;align-items:center;gap:10px;height:32px;font-family:var(--font-sans);font-size:36px;font-weight:800;line-height:1;letter-spacing:-.03em}
.logo-mark{display:block;width:auto;height:38px;flex-shrink:0}
.logo-triangle{stroke:var(--logo-ink)}.logo-gap{fill:var(--background);stroke:var(--background)}.logo-arrow-top{fill:var(--logo-arrow-top)}.logo-arrow-bottom{fill:var(--logo-arrow-bottom)}
.desktop-nav{display:flex;justify-content:center;gap:32px;color:var(--foreground);font-size:15px;font-weight:700}
.desktop-nav a:hover,.desktop-nav .current-menu-item>a,.desktop-nav .current-menu-parent>a,.desktop-nav a.is-current{color:var(--primary)}
.desktop-nav ul{display:flex;gap:32px}
.header-tools{display:flex;gap:10px;color:var(--foreground)}
.menu-toggle{display:none}
.mobile-nav{display:grid;padding-block:12px 24px;gap:18px}
.mobile-nav[hidden]{display:none}
.mobile-nav a{display:flex;justify-content:space-between;color:var(--foreground);font-weight:700}
.icon-sun{display:none}.dark .icon-sun{display:block}.dark .icon-moon{display:none}

/* ---------- Ticker (continuous scroll) ---------- */
.ticker{border-bottom:1px solid var(--border);background:var(--secondary);overflow:hidden;height:54px;display:flex;align-items:center}
.ticker-track{display:flex;width:max-content;animation:fp-ticker 70s linear infinite}
.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}
.ticker-group{display:flex;flex-shrink:0}
.ticker-item{display:flex;align-items:center;gap:9px;white-space:nowrap;font:14px var(--font-label);padding:0 26px;border-right:1px solid var(--border)}
.ticker-item strong{color:var(--foreground);font-weight:400}
.ticker-change{display:inline-flex;align-items:center;gap:5px}
.trend-icon{width:9px;height:8px;flex-shrink:0}
.market-change{display:flex;align-items:center;justify-content:flex-end;gap:5px}
@keyframes fp-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ticker{overflow-x:auto}.ticker-track{animation:none}.ticker-group[aria-hidden],.ticker-item[aria-hidden]{display:none}}

/* ---------- Home ---------- */
.graph-paper{background-color:var(--background);background-image:repeating-linear-gradient(0deg,transparent,transparent 39px,var(--border) 39px,var(--border) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,var(--border) 39px,var(--border) 40px)}
.home-intro{padding:38px 0 45px;border-bottom:1px solid var(--border)}
.intro-kicker{display:flex;justify-content:space-between;gap:20px;font:14px var(--font-label);color:var(--muted-foreground);margin-bottom:23px;text-transform:uppercase}
.intro-kicker span:first-child{color:var(--primary)}
.home-intro h1{font-size:56px;line-height:1.3;margin-bottom:14px}
.home-intro p{font-size:19px;max-width:720px}
.editorial-hero{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:42px;padding-block:40px}
.lead-card{border:1px solid var(--ink-border);border-radius:8px;box-shadow:var(--shadow-hard);background:var(--card);overflow:hidden}
.lead-image{display:block;width:100%;aspect-ratio:1.7;object-fit:cover}
.lead-body{padding:26px 28px}
.lead-title{font-size:32px;line-height:1.25;margin:18px 0 14px;font-weight:900}
.lead-card:hover h2{color:var(--primary)}
.lead-body p{font-size:18px;line-height:1.5}
.top-stories .section-heading{margin:0 0 8px}.top-stories .section-heading h2{font-size:28px}
.top-story{padding:19px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:28px minmax(0,1fr);gap:15px}
.top-story h3{font-size:19px;line-height:1.3;margin-top:8px}
.top-story a:hover h3{color:var(--primary)}
.story-number{font:16px var(--font-label);color:var(--muted);padding-top:3px}
.top-story .card-meta{font-size:14px;margin-top:10px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:26px}
.section-heading h2{font-size:30px;line-height:1.25}
.eyebrow{font:14px/1.5 var(--font-label);text-transform:uppercase;color:var(--muted-foreground)}
.chip{display:inline-flex;align-items:center;border:1px solid var(--ink-border);border-radius:999px;padding:4px 11px;color:var(--foreground);font:14px/1.4 var(--font-label);text-transform:uppercase;background:var(--card)}
.text-link{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--primary);flex-shrink:0}
.text-link:hover{text-decoration:underline}
.text-link svg{width:16px;height:16px}
.card-meta{font:14px/1.5 var(--font-label);color:var(--muted-foreground);display:flex;align-items:center;gap:8px;margin-top:18px;flex-wrap:wrap}
.card-meta svg{width:14px;height:14px}.card-meta .arrow{width:20px;height:20px;margin-left:auto;color:var(--primary)}
.briefing{border-block:1px solid var(--ink-border);padding:28px 0;margin:4px 0 48px;display:grid;grid-template-columns:160px 1fr;gap:34px}
.briefing-heading{display:flex;gap:10px;align-items:flex-start;color:var(--foreground);padding-top:3px}
.briefing-heading svg{width:22px;height:22px;flex-shrink:0}
.briefing-heading .eyebrow{color:var(--foreground);font-size:16px}
.briefing-items{display:grid;grid-template-columns:1fr 1fr;gap:22px 34px}
.briefing-item{position:relative;padding-left:18px;font-size:17px;line-height:1.45}
.briefing-item:before{content:'•';position:absolute;left:0;color:var(--foreground)}
.briefing-item strong{color:var(--foreground);font-weight:800}
.briefing-item a:hover strong{color:var(--primary)}
.briefing-item p{margin-top:4px;font-size:16px}
.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px}
.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.article-card{min-width:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--card);transition:border-color .15s}
.article-card:hover{border-color:var(--ink-border)}
.article-card .card-image{display:block;width:calc(100% - 24px);margin:12px 12px 0;aspect-ratio:1.65;object-fit:cover;border-radius:8px}
.card-body{padding:18px 20px 20px}
.card-kicker{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font:14px/1.5 var(--font-label);color:var(--muted-foreground)}
.card-kicker span:first-child{text-transform:uppercase;color:var(--foreground)}
.article-card h3{font-size:20px;line-height:1.25;margin:13px 0 12px;font-weight:900}
.article-card a:hover h3{color:var(--primary)}
.article-card p{font-size:17px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.widget{border:1px solid var(--border);border-radius:8px;padding:24px;background:var(--card)}
.market-widget h3{font-size:22px;margin-bottom:8px}
.market-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid var(--border);font-size:15px;color:var(--foreground)}
.market-row>div{text-align:right;font:14px/1.6 var(--font-label)}
.market-row .market-change{color:var(--muted-foreground)}.market-row .market-change.text-positive{color:var(--positive)}.market-row .market-change.text-negative{color:var(--negative)}
.market-widget .text-link{margin-top:22px}
.sidebar-stack{display:grid;align-content:start;gap:32px}
.ad-slot{background:var(--secondary);border:1px dashed var(--border);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;color:var(--muted-foreground);font:12px var(--font-label);text-transform:uppercase;min-height:90px;border-radius:8px}
.ad-slot.sidebar{min-height:250px}
.home-ad{margin:42px 0}
.home-spacer{height:48px}
.guides-band{background:var(--secondary);border-top:1px solid var(--border);padding:44px 0 54px}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.guide-card{border:1px solid var(--ink-border);box-shadow:var(--shadow-hard);border-radius:8px;padding:26px;background:var(--card);display:flex;flex-direction:column;align-items:flex-start;transition:transform .15s,box-shadow .15s}
.guide-card:hover{transform:translate(2px,2px);box-shadow:var(--shadow-pressed)}
.guide-icon{color:var(--foreground);margin-bottom:20px}.guide-icon svg{width:24px;height:24px}
.guide-card h3{font-size:20px;margin:12px 0 8px}
.guide-card .card-meta{width:100%;margin-top:auto;padding-top:20px}
.empty-state{border:1px dashed var(--border);border-radius:8px;padding:40px;text-align:center;color:var(--muted-foreground);font:15px/1.6 var(--font-label)}

/* ---------- Image placeholder (no featured image yet) ---------- */
.img-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--secondary),color-mix(in oklab,var(--primary) 14%,var(--secondary)));color:var(--muted)}
.img-placeholder svg{width:22%;height:auto;opacity:.55}

/* ---------- Category / pages ---------- */
.page-banner{padding:42px 0;border-bottom:1px solid var(--border);margin-bottom:40px}
.page-title{font-size:48px;line-height:1.3;font-weight:700}
.page-banner p{max-width:720px;margin-top:16px;font-size:19px}
.category-content{padding-bottom:54px}
.category-featured{margin-bottom:38px}
.category-featured .lead-image{height:310px}
.category-controls{display:flex;flex-wrap:wrap;justify-content:space-between;gap:22px;align-items:center;margin-bottom:26px}
.category-controls h2{font-size:25px}
.category-tabs{display:flex;gap:12px}
.pagination{display:flex;justify-content:center;gap:14px;margin-top:36px}
.pagination .page-numbers{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:999px;border:1px solid var(--ink-border);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-hard);font-weight:700;font-size:14px}
.pagination .page-numbers.current{background:var(--primary);color:var(--primary-foreground)}
.pagination .page-numbers.dots{border:0;box-shadow:none;background:none}
.content-section{padding:40px 0;border-bottom:1px solid var(--border)}
.content-section h2{font-size:30px;margin-bottom:22px}
.standards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 48px}
.standards-grid svg{width:26px;height:26px;color:var(--primary)}
.standards-grid h3{font-size:22px;margin:15px 0}
.standards-grid p{font-size:18px}

/* ---------- Article ---------- */
.article-page{padding-block:32px 52px}
.breadcrumb{display:flex;gap:10px;font:14px var(--font-label);margin-bottom:28px;color:var(--muted-foreground)}
.breadcrumb a:hover{color:var(--primary)}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:56px}
.article-heading{margin-bottom:24px}
.article-kicker{font:14px/1.7 var(--font-label);color:var(--muted-foreground);text-transform:uppercase}
.article-heading h1{font-size:48px;line-height:1.25;font-weight:700;margin:18px 0}
.standfirst{font-size:21px;line-height:1.5;color:var(--body)}
.byline{font:14px var(--font-label);margin:22px 0;color:var(--muted-foreground)}
.article-image{width:100%;aspect-ratio:1.75;object-fit:cover;border-radius:8px}
.image-caption{font:12px/1.6 var(--font-label);color:var(--muted-foreground);margin-top:8px}
.prose{max-width:70ch;font-size:19px;line-height:1.6;margin-top:28px}
.prose h2{font-size:30px;margin:36px 0 16px}
.prose h3{font-size:22px;margin:28px 0 12px}
.prose p{margin-bottom:20px}
.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{margin:0 0 20px 1.2em}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin-bottom:8px}
.prose blockquote{border-left:3px solid var(--ink-border);padding-left:18px;margin:24px 0;font-style:italic;color:var(--foreground)}
.prose img{border-radius:8px;margin:24px 0}
.prose table{width:100%;font-size:16px;margin:24px 0}.prose th,.prose td{border-top:1px solid var(--border);padding:10px 12px 10px 0;text-align:left}
.prose th{font:12px/1.5 var(--font-label);color:var(--muted-foreground);text-transform:uppercase}
.care-card{border:1px solid var(--ink-border);border-radius:8px;box-shadow:var(--shadow-hard);padding:28px;margin:34px 0;background:var(--card)}
.care-card h2{font-size:28px;margin:0 0 24px}
.care-label{display:inline;background:var(--highlight);color:var(--highlight-foreground);padding:3px 7px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.care-card h3{font-size:19px;margin:20px 0 8px}
.care-card p{font-size:18px;line-height:1.6;margin:0}
.impact-card{border:1px solid var(--border);border-radius:8px;padding:26px;margin:34px 0;background:var(--secondary)}
.impact-card h2{font-size:28px;margin-bottom:22px}
.table-scroll{overflow-x:auto}
.impact-table{width:100%;text-align:left;font-size:14px}
.impact-table th{font:12px/1.5 var(--font-label);color:var(--muted-foreground);padding:0 12px 13px 0;vertical-align:bottom;font-weight:400}
.impact-table td{padding:15px 12px 15px 0;border-top:1px solid var(--border);vertical-align:top;line-height:1.6}
.impact-table td:first-child{font-family:var(--font-label);color:var(--foreground);white-space:nowrap}
.impact-table td:nth-child(2){white-space:nowrap;font-weight:700;text-transform:capitalize}
.impact-disclaimer{font:12px/1.6 var(--font-label);color:var(--muted-foreground);margin-top:18px}
.sources{font:14px/1.8 var(--font-label);padding-top:24px;border-top:1px solid var(--border)}
.sources a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}
.share-row{display:flex;align-items:center;gap:6px;margin:22px 0}
.share-row>span{font:13px var(--font-label);margin-left:8px;color:var(--primary)}
.share-row .btn-icon svg{width:18px;height:18px}
.article-aside{padding-top:10px}
.article-aside>div{position:sticky;top:116px;display:grid;gap:32px}
.trending>h3{font-size:25px}.trending .top-story h3{font-size:18px}
.related-section{border-top:1px solid var(--border);padding-top:36px;margin-top:42px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.sample-note{border:1px dashed var(--ink-border);border-radius:8px;padding:10px 14px;margin-bottom:22px;font:13px/1.6 var(--font-label);color:var(--foreground);background:var(--secondary)}

/* ---------- Footer ---------- */
footer.site-footer{border-top:1px solid var(--border);background:var(--background)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:70px;padding:48px 0}
.footer-grid h3{font-size:19px;margin-bottom:20px}
.footer-grid p{font-size:16px;max-width:330px;margin-top:20px}
.footer-grid ul{display:grid;gap:12px;font-size:16px}
.footer-grid a:hover{color:var(--primary)}
.footer-bottom{border-top:1px solid var(--border);padding:22px 0 30px;font:12px/1.6 var(--font-label);color:var(--muted-foreground);display:flex;justify-content:space-between;gap:26px}
.footer-bottom span:last-child{max-width:620px}

/* ---------- Search dialog ---------- */
.search-dialog{width:min(660px,calc(100% - 36px));max-height:75vh;overflow:auto;background:var(--card);color:var(--foreground);border:1px solid var(--ink-border);border-radius:8px;padding:28px;position:fixed;top:100px;margin:auto;box-shadow:var(--shadow-hard)}
.search-dialog h2{font-size:25px}
.search-dialog::backdrop{background:color-mix(in oklab,var(--foreground) 35%,transparent)}
.search-dialog input[type=search],.search-form-inline input[type=search]{display:block;width:100%;background:var(--background);border:1px solid var(--ink-border);border-radius:8px;padding:14px;margin-bottom:16px;font-size:17px}
.search-result{padding:18px 0;border-bottom:1px solid var(--border)}
.search-result a{display:block;font-size:19px;font-weight:800;margin-top:12px;color:var(--foreground)}
.search-result a:hover{color:var(--primary)}
.news-layout>*,.article-layout>*,.guide-grid>*,.footer-grid>*,.related-grid>*{min-width:0}

/* ---------- 404 ---------- */
.notfound{min-height:60vh;display:grid;place-items:center;text-align:center;padding:60px 0}
.notfound h1{font-size:96px;line-height:1}
.notfound h2{font-size:24px;margin:16px 0 8px}

/* ---------- Responsive ---------- */
@media(max-width:1100px){.desktop-nav,.desktop-nav ul{gap:20px}.header-inner{gap:22px}.editorial-hero{grid-template-columns:minmax(0,1fr) 300px;gap:30px}.news-layout{grid-template-columns:minmax(0,1fr) 260px;gap:26px}.article-layout{gap:30px;grid-template-columns:minmax(0,1fr) 240px}.article-heading h1{font-size:42px}.lead-title{font-size:28px}.lead-body{padding:22px}.card-kicker{font-size:13px}.footer-grid{gap:35px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:767px){.site-container{width:calc(100% - 36px)}.header-inner{height:74px;grid-template-columns:minmax(0,1fr) auto;gap:8px}.wordmark{font-size:31px;height:28px;gap:10px}.wordmark .logo-mark{height:33px}.header-tools{gap:3px}.desktop-nav{display:none}.menu-toggle{display:inline-grid}.ticker{height:49px}.home-intro{padding:28px 0 32px}.intro-kicker{font-size:12px;margin-bottom:22px}.intro-kicker span:last-child{display:none}.home-intro h1{font-size:36px;line-height:1.3;max-width:350px}.home-intro p{font-size:18px}.editorial-hero{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:28px 34px}.lead-image{aspect-ratio:1.6}.lead-title{font-size:27px}.lead-body{padding:21px}.lead-body p{font-size:17px}.top-story{padding:20px 0}.top-story h3{font-size:20px}.briefing{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:36px;padding-block:26px}.briefing-heading{align-items:center}.briefing-heading br{display:none}.briefing-items{grid-template-columns:minmax(0,1fr);gap:22px}.news-layout{grid-template-columns:minmax(0,1fr);gap:32px}.article-grid{grid-template-columns:minmax(0,1fr);gap:24px}.card-body{padding:18px 20px 22px}.card-kicker{font-size:14px}.section-heading{align-items:flex-start;gap:18px;flex-wrap:wrap}.section-heading h2{font-size:28px}.section-heading .text-link{font-size:14px;padding-top:6px}.guide-grid,.standards-grid{grid-template-columns:minmax(0,1fr)}.guides-band{padding:34px 0 42px}.guide-card{padding:24px}.page-title{font-size:36px}.page-banner{padding-block:30px;margin-bottom:28px}.page-banner p{font-size:18px}.category-featured .lead-image{height:auto}.category-controls h2{font-size:24px}.content-section{padding:30px 0}.content-section h2{font-size:28px}.article-layout{grid-template-columns:minmax(0,1fr)}.article-heading h1{font-size:36px}.standfirst{font-size:19px}.article-image{aspect-ratio:1.5}.article-page{padding-top:24px}.prose{font-size:18px}.prose h2{font-size:28px}.care-card{padding:22px}.care-card h2{font-size:25px;line-height:1.5}.impact-card{padding:20px}.impact-table{display:block}.impact-table thead{display:none}.impact-table tbody{display:grid;gap:16px}.impact-table tr{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border);padding-top:16px;gap:12px 16px}.impact-table td{display:flex;flex-direction:column;border:0;padding:0;white-space:normal;font-size:14px}.impact-table td::before{content:attr(data-label);font:12px/1.5 var(--font-label);color:var(--muted-foreground);margin-bottom:5px;text-transform:none;font-weight:400}.impact-table td:last-child{grid-column:1/-1}.article-aside>div{position:static}.article-aside{margin-top:24px}.article-aside .trending{display:none}.related-grid{grid-template-columns:minmax(0,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding-block:36px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid h3{font-size:18px}.footer-grid ul{font-size:15px}.footer-bottom{flex-direction:column;gap:12px}.search-dialog{padding:22px;top:80px}.search-dialog h2{font-size:22px}.notfound h1{font-size:72px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
