/* ALAPA — afrolatin.org shared styles
   Layout: a "public record" grid — a narrow margin column carries labels and source tags, a wide column carries the story.
   The gold bar is the hyphen in Afro-Latino: one line joining two halves. */
:root{
  --ink:#16192B; --ink-2:#2A2E45;
  --ivory:#F6F0E4; --paper:#FBF8F1; --line:#DCD2C0;
  --terra:#A3482A; --terra-soft:#F0DDD2;
  --gold:#C99A2E; --gold-text:#8A6516;
  --muted:#5A5866;
  --bg:var(--ivory); --fg:var(--ink); --surface:var(--paper);
  --band:var(--ink); --band-fg:#F3ECDF; --band-muted:#B9B4C4; --band-gold:#E2B24C;
  --ok:#2F6B4A; --ok-bg:#DCEBE1; --warn:#8A5A00; --warn-bg:#F6E7C4; --ph:#5B4A8C; --ph-bg:#E6E0F2; --prop:#7A3A22; --prop-bg:#F0DDD2;
  --f-display:"Gloock", "Iowan Old Style", Georgia, serif;
  --f-body:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;
  --s-1:.8125rem; --s0:1rem; --s1:1.1875rem; --s2:1.5rem; --s3:2rem; --s4:clamp(2.25rem,5vw,3.5rem); --s5:clamp(2.75rem,7.4vw,5.6rem);
  --wrap:1180px;
  --mk-fill:#16192B; --mk-stroke:transparent;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#11131F; --fg:#EFE7D8; --surface:#191C2C; --line:#33374F; --ivory:#11131F; --paper:#191C2C;
  --terra:#E58460; --terra-soft:#3A2420; --gold:#E2B24C; --gold-text:#E2B24C; --muted:#A9A6B5;
  --band:#0A0C15; --band-fg:#EFE7D8; --band-muted:#A9A6B5; --band-gold:#E2B24C;
  --ok:#8FD1A9; --ok-bg:#1E3328; --warn:#F0C66B; --warn-bg:#3A2E12; --ph:#C2B3F0; --ph-bg:#2B2645; --prop:#F0A585; --prop-bg:#3A2420; --mk-stroke:#EFE7D8;
  color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#11131F; --fg:#EFE7D8; --surface:#191C2C; --line:#33374F; --ivory:#11131F; --paper:#191C2C;
  --terra:#E58460; --terra-soft:#3A2420; --gold:#E2B24C; --gold-text:#E2B24C; --muted:#A9A6B5;
  --band:#0A0C15; --band-fg:#EFE7D8; --band-muted:#A9A6B5; --band-gold:#E2B24C;
  --ok:#8FD1A9; --ok-bg:#1E3328; --warn:#F0C66B; --warn-bg:#3A2E12; --ph:#C2B3F0; --ph-bg:#2B2645; --prop:#F0A585; --prop-bg:#3A2420; --mk-stroke:#EFE7D8;
  color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:var(--s0);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media (min-width:720px){.wrap{padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:max(32px,env(safe-area-inset-right,0px))}}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--terra)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:2px}
h1,h2,h3{font-family:var(--f-display);font-weight:400;line-height:1.08;text-wrap:balance;margin:0;letter-spacing:-.01em}
h3{font-family:var(--f-body);font-weight:700;font-size:var(--s1);line-height:1.3;letter-spacing:0}
p{margin:0;max-width:65ch}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:12px 16px;z-index:100}
.skip:focus{left:16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* review strip */
.review{background:var(--ph-bg);color:var(--ph);font-family:var(--f-mono);font-size:.75rem;border-bottom:1px solid var(--line)}
.review .wrap{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding-block:8px}
.review button{font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:999px;padding:4px 12px;min-height:32px;cursor:pointer}
.review a{font-weight:500}

/* header */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--bg);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:16px;min-height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.brand .mark{display:block;width:30px;height:36px;flex:none}
.brand .mark svg,.crest svg{display:block;width:100%;height:100%}
.brand b{font-family:"Unbounded",var(--f-body);font-weight:700;font-size:1.05rem;letter-spacing:.28em}
.brand span{font-size:.72rem;line-height:1.25;color:var(--muted);max-width:15ch;display:none}
@media (min-width:1080px){.brand span{display:block}}
nav.primary ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
nav.primary a{display:block;padding:10px 12px;text-decoration:none;font-weight:500;font-size:.95rem;border-radius:4px}
nav.primary a[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--gold)}
.lang{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.lang button{font:600 .8rem var(--f-body);letter-spacing:.06em;background:transparent;color:var(--fg);border:0;padding:0 14px;min-height:40px;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--ink);color:#F6F0E4}
:root[data-theme="dark"] .lang button[aria-pressed="true"]{background:var(--gold);color:#11131F}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .lang button[aria-pressed="true"]{background:var(--gold);color:#11131F}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 .95rem var(--f-body);text-decoration:none;padding:0 22px;min-height:48px;border-radius:999px;border:2px solid var(--fg);background:transparent;color:var(--fg);cursor:pointer}
.btn:hover{color:var(--fg);background:color-mix(in srgb,var(--fg) 8%,transparent)}
.btn.solid{background:var(--terra);border-color:var(--terra);color:#fff}
:root[data-theme="dark"] .btn.solid{color:#11131F}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .btn.solid{color:#11131F}}
.btn.solid:hover{filter:brightness(1.08);color:#fff}
.btn.pending{border-style:dashed}
.menu-btn{display:none}
.mob-donate{display:none}
@media (max-width:959px){
  .menu-btn{display:inline-flex;min-height:44px;padding:0 16px}
  nav.primary{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);padding:8px max(16px,env(safe-area-inset-left,0px)) 16px max(16px,env(safe-area-inset-right,0px))}
  nav.primary[data-open="false"]{display:none}
  nav.primary ul{flex-direction:column}
  nav.primary a{padding:14px 8px;font-size:1.05rem}
  .bar .donate-top{display:none}
  .mob-donate{display:block}.mob-donate a{color:var(--terra);font-weight:700}
}
@media (max-width:420px){.bar{gap:10px}.brand b{letter-spacing:.2em}.lang button{padding:0 11px}}

/* tags */
.tag{display:inline-flex;align-items:center;gap:6px;font:500 .7rem/1.3 var(--f-mono);letter-spacing:.02em;padding:3px 8px;border-radius:3px;vertical-align:middle;white-space:normal}
.tag::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.tag.v{background:var(--ok-bg);color:var(--ok)}
.tag.c{background:var(--warn-bg);color:var(--warn)}
.tag.p{background:var(--ph-bg);color:var(--ph)}
.tag.d{background:var(--prop-bg);color:var(--prop)}
body.clean .tag, body.clean .rv{display:none!important}
.ph-text{background:var(--ph-bg);color:var(--ph);padding:0 4px;border-radius:2px}
body.clean .ph-text{background:transparent;color:inherit}

/* sections */
section{padding-block:clamp(56px,9vw,112px)}
section + section{border-top:1px solid var(--line)}
.rec{display:grid;gap:20px 48px}
@media (min-width:900px){.rec{grid-template-columns:220px minmax(0,1fr)}}
.label{font:500 .75rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--terra)}
.label .n{color:var(--muted)}
.rec > .side{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.stack{display:flex;flex-direction:column;gap:20px;min-width:0}
.lede{font-size:var(--s1);line-height:1.55}
.muted{color:var(--muted)}
.bridge{display:inline-block;width:56px;height:6px;background:var(--gold);vertical-align:middle;margin:0 .12em;border-radius:1px}

/* hero */
.hero{padding-block:clamp(48px,8vw,104px) clamp(48px,7vw,88px)}
.hero-grid{display:grid;gap:40px;align-items:end}
@media (min-width:960px){.hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}
.hero h1{font-size:var(--s5)}
.hero h1 em{font-style:normal;color:var(--terra)}
.hero .eyebrow{font:500 .8rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:24px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}

/* photo placeholders */
.photo{position:relative;background:var(--ink);color:#EFE7D8;border-radius:2px;overflow:hidden;aspect-ratio:4/5;max-width:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;isolation:isolate}
.photo::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(120% 80% at 80% 10%, rgba(201,154,46,.35), transparent 60%),
  repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px),
  linear-gradient(160deg,#2A2E45,#16192B 55%,#3a1f17)}
.photo.wide{aspect-ratio:16/10}
.photo.sq{aspect-ratio:1/1}
.photo.deco{align-items:center;justify-content:center}
.photo.deco .deco-mark{width:38%;max-width:200px;aspect-ratio:200/240;opacity:.92}
.photo.deco .deco-mark svg{display:block;width:100%;height:100%}
.photo.deco .mk-shield{fill:#0E1020;stroke:#E2B24C;stroke-width:3}

/* mission */
.quote{border-left:6px solid var(--gold);padding:4px 0 4px 24px;font-family:var(--f-display);font-size:clamp(1.3rem,2.4vw,1.75rem);line-height:1.35;max-width:38ch;margin:0}

/* work themes */
.themes{display:grid;gap:0;border-top:2px solid var(--fg)}
.theme{display:grid;gap:12px 32px;padding-block:28px;border-bottom:1px solid var(--line)}
@media (min-width:760px){.theme{grid-template-columns:80px minmax(0,1fr) minmax(0,1fr)}}
.theme .glyph{font-family:var(--f-display);font-size:2.6rem;line-height:1;color:var(--terra)}
.theme h3{font-family:var(--f-display);font-weight:400;font-size:var(--s2);line-height:1.15}

/* record / evidence */
.band{background:var(--band);color:var(--band-fg)}
.band .label{color:var(--band-gold)}
.band .muted{color:var(--band-muted)}
.band a:hover{color:var(--band-gold)}
.band + section{border-top:0}
.ledger{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18)}
.ledger li{display:grid;gap:6px 32px;padding-block:22px;border-bottom:1px solid rgba(255,255,255,.18)}
@media (min-width:760px){.ledger li{grid-template-columns:160px minmax(0,1fr) auto;align-items:baseline}}
.ledger .when{font:500 .85rem var(--f-mono);color:var(--band-gold);font-variant-numeric:tabular-nums}
.ledger .what{font-size:var(--s1)}
.ledger .src{font:400 .78rem var(--f-mono);color:var(--band-muted)}

/* paths */
.paths{display:grid;gap:16px}
@media (min-width:760px){.paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
.path{background:var(--surface);border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;gap:14px;border-radius:2px}
.path .who{font:500 .75rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--terra)}
.path h3{font-family:var(--f-display);font-weight:400;font-size:1.6rem;line-height:1.15}
.path .next{border-top:1px dashed var(--line);padding-top:14px;font-size:.92rem}
.path .next strong{display:block;font-size:.72rem;font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:4px}
.path .go{margin-top:auto;padding-top:6px}

/* resource list */
.rlist{list-style:none;margin:0;padding:0;border-top:2px solid var(--fg)}
.rlist li{display:grid;gap:6px 24px;padding-block:18px;border-bottom:1px solid var(--line)}
@media (min-width:760px){.rlist li{grid-template-columns:140px minmax(0,1fr) auto;align-items:baseline}}
.rlist .kind{font:500 .75rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rlist .t{font-weight:600}

/* donate band */
section.give{background:var(--terra-soft);border-top:6px solid var(--terra)}
.give-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:2px solid var(--fg)}
@media (min-width:760px){.give-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}}
.give-list li{display:flex;flex-direction:column;gap:6px;padding-block:18px;border-bottom:1px solid var(--line)}
.give-list strong{font-family:var(--f-display);font-weight:400;font-size:1.35rem;line-height:1.2}

/* closing */
.closing h2{font-size:var(--s4);max-width:18ch}
.mk-shield{fill:var(--mk-fill);stroke:var(--mk-stroke);stroke-width:6;stroke-linejoin:round}
.crest{width:120px;height:144px}
@media (max-width:899px){.crest{width:84px;height:101px}}

/* page head */
.phead{padding-block:clamp(48px,7vw,88px) 24px}
.phead h1{font-size:var(--s4);max-width:20ch}
.phead .lede{margin-top:20px}
.crumb{font:500 .75rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--terra);margin-bottom:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.crumb a{text-decoration:none}
.crumb a:hover{text-decoration:underline}

/* two col prose */
.cols{display:grid;gap:32px}
@media (min-width:860px){.cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
.facts{display:grid;gap:0;border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:minmax(110px,38%) minmax(0,1fr);gap:16px;padding-block:12px;border-bottom:1px solid var(--line)}
.facts dt{font:500 .78rem var(--f-mono);color:var(--muted);letter-spacing:.04em}
.facts dd{margin:0;min-width:0;overflow-wrap:anywhere}
dl{margin:0}

.notice{border:2px solid var(--line);border-left:6px solid var(--gold);padding:16px 20px;background:var(--surface);max-width:640px}
.notice.warn{border-left-color:var(--terra)}
.notice strong{display:block;margin-bottom:4px}
ol.flow{margin:0;padding-left:1.4em;display:grid;gap:8px}

/* footer */
footer.site{background:var(--band);color:var(--band-fg);padding-block:64px 40px}
footer.site .grid{display:grid;gap:32px}
@media (min-width:860px){footer.site .grid{grid-template-columns:1.4fr 1fr 1fr}}
footer.site h2{font-size:2rem}
footer.site ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer.site .small{font-size:.82rem;color:var(--band-muted)}
footer.site .label{color:var(--band-gold)}
footer.site .legal{border-top:1px solid rgba(255,255,255,.18);margin-top:40px;padding-top:20px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.82rem;color:var(--band-muted)}
footer.site .foot-brand{display:flex;align-items:center;gap:14px}
footer.site .foot-brand svg{width:44px;height:53px;flex:none;--mk-stroke:#F3ECDF}
footer.site .wordmark{font-family:"Unbounded",var(--f-body);font-weight:700;font-size:1.4rem;letter-spacing:.28em}
.copy-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.copy-row button{font:500 .75rem var(--f-mono);background:transparent;color:inherit;border:1px solid currentColor;border-radius:999px;padding:4px 10px;min-height:32px;cursor:pointer}

/* ==========================================================
   Stories & Updates — newsroom layer
   A lead story with a "Latest" rail, topic kickers, bylines,
   a card grid, an updates sign-up band, and article pages.
   ========================================================== */
.kicker{font:500 .72rem/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--terra);text-decoration:none}
a.kicker:hover{text-decoration:underline}
.byline{font-size:.86rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.byline .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.6}
.byline strong{color:var(--fg);font-weight:600}

/* story image: real photo or the crest placeholder */
.simg{position:relative;overflow:hidden;border-radius:2px;background:var(--ink);aspect-ratio:3/2;isolation:isolate}
.simg img{width:100%;height:100%;object-fit:cover}
.simg.ph{display:flex;align-items:center;justify-content:center}
.simg.ph::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(120% 80% at 80% 10%, rgba(201,154,46,.32), transparent 60%),
  repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px),
  linear-gradient(160deg,#2A2E45,#16192B 55%,#3a1f17)}
.simg.ph[data-topic="culture"]::before{background:radial-gradient(120% 80% at 20% 10%, rgba(201,154,46,.4), transparent 60%),repeating-linear-gradient(65deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px),linear-gradient(160deg,#3a1f17,#16192B 60%,#2A2E45)}
.simg.ph[data-topic="community"]::before{background:radial-gradient(110% 80% at 70% 90%, rgba(47,107,74,.55), transparent 60%),repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px),linear-gradient(160deg,#2A2E45,#16192B)}
.simg.ph[data-topic="news"]::before{background:radial-gradient(120% 80% at 50% 0%, rgba(163,72,42,.45), transparent 60%),repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px),linear-gradient(160deg,#2A2E45,#16192B)}
.simg.ph .deco-mark{width:22%;max-width:120px;aspect-ratio:200/240;opacity:.9}
.simg.ph .deco-mark svg{display:block;width:100%;height:100%}
.simg.ph .mk-shield{fill:#0E1020;stroke:#E2B24C;stroke-width:3}

/* cards */
.scard{display:flex;flex-direction:column;gap:12px;min-width:0}
.scard h3{font-family:var(--f-display);font-weight:400;font-size:1.45rem;line-height:1.15;text-wrap:balance}
.scard h3 a{text-decoration:none}
.scard h3 a::after{content:"";position:absolute;inset:0}
.scard{position:relative}
.scard .kicker{position:relative;z-index:1}
.scard:hover h3 a{text-decoration:underline;text-decoration-thickness:2px}
.scard .dek{color:var(--muted);font-size:.96rem}
.scard:focus-within{outline:3px solid var(--gold);outline-offset:6px;border-radius:2px}
.scard:focus-within a:focus-visible{outline:none}

/* lead + latest rail */
.lead-grid{display:grid;gap:36px;border-top:2px solid var(--fg);padding-top:28px}
@media (min-width:960px){.lead-grid{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:48px}}
.lead .simg{aspect-ratio:16/10}
.lead h3{font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.06}
.lead .dek{font-size:var(--s1);color:var(--fg);opacity:.86}
.rail{display:flex;flex-direction:column;min-width:0}
.rail > .label{padding-bottom:12px;border-bottom:1px solid var(--line)}
.rail ol{list-style:none;margin:0;padding:0;counter-reset:r}
.rail li{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px 12px;padding-block:16px;border-bottom:1px solid var(--line);counter-increment:r}
.rail li::before{content:counter(r);font-family:var(--f-display);font-size:1.5rem;line-height:1;color:var(--gold-text)}
.rail li h4{margin:2px 0 6px;font:600 1.02rem/1.32 var(--f-body)}
.rail li h4 a{text-decoration:none}
.rail li h4 a::after{content:"";position:absolute;inset:0}
.rail li:hover h4 a{text-decoration:underline}
.rail li .kicker{position:relative;z-index:1}
.rail .meta{font-size:.8rem;color:var(--muted)}

.sgrid{display:grid;gap:40px 28px;border-top:2px solid var(--fg);padding-top:28px}
@media (min-width:640px){.sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.sgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* topic filter */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips button{font:600 .88rem var(--f-body);color:var(--fg);background:transparent;border:1.5px solid var(--line);border-radius:999px;padding:0 16px;min-height:40px;cursor:pointer}
.chips button:hover{border-color:var(--fg)}
.chips button[aria-pressed="true"]{background:var(--fg);border-color:var(--fg);color:var(--bg)}
.empty{border:1px dashed var(--line);padding:28px;color:var(--muted);text-align:center}

/* updates sign-up band */
.updates{display:grid;gap:20px 48px;align-items:center}
@media (min-width:860px){.updates{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}
.updates h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.updates .follow{display:flex;flex-wrap:wrap;gap:10px}

/* home news block */
.home-news .sgrid{border-top:0;padding-top:0}

/* ---------- article page ---------- */
.article-head{padding-block:clamp(36px,6vw,72px) 28px}
.article-head .in{max-width:860px}
.article-head h1{font-size:clamp(2.2rem,5.4vw,4rem);line-height:1.04;margin-top:14px}
.article-head .dek{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.45;margin-top:18px;max-width:52ch}
.article-head .byline{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
.hero-fig{margin:0}
.hero-fig .simg{aspect-ratio:16/9}
.hero-fig figcaption{font:400 .8rem/1.5 var(--f-mono);color:var(--muted);margin-top:10px;max-width:860px}
.article-grid{display:grid;gap:32px 48px;padding-block:40px clamp(56px,8vw,96px)}
@media (min-width:1000px){.article-grid{grid-template-columns:200px minmax(0,680px) minmax(0,1fr)}}
.article-side{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
@media (min-width:1000px){.article-side{position:sticky;top:96px;align-self:start}}
.share{display:flex;flex-wrap:wrap;gap:8px}
@media (min-width:1000px){.share{flex-direction:column}}
.share a,.share button{display:inline-flex;align-items:center;gap:8px;font:500 .82rem var(--f-body);color:var(--fg);text-decoration:none;background:transparent;border:1.5px solid var(--line);border-radius:999px;padding:0 14px;min-height:40px;cursor:pointer}
.share a:hover,.share button:hover{border-color:var(--fg);color:var(--fg)}
.share svg{width:16px;height:16px;flex:none}

.prose{font-size:1.125rem;line-height:1.72;min-width:0}
.prose > * + *{margin-top:1.15em}
.prose p{max-width:none}
.prose h2{font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.15;margin-top:1.8em}
.prose h3{font-size:1.2rem;margin-top:1.6em}
.prose blockquote{margin:1.8em 0;border-left:6px solid var(--gold);padding:4px 0 4px 24px;font-family:var(--f-display);font-size:clamp(1.4rem,2.6vw,1.85rem);line-height:1.32}
.prose ul,.prose ol{padding-left:1.3em}
.prose li + li{margin-top:.4em}
.prose a{color:var(--terra)}
.prose figure{margin:1.8em 0}
.prose figcaption{font:400 .8rem/1.5 var(--f-mono);color:var(--muted);margin-top:8px}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.2em 0}
.prose > p:first-child::first-letter{font-family:var(--f-display);float:left;font-size:4.2em;line-height:.85;padding:.06em .1em 0 0;color:var(--terra)}

.support{margin-top:48px;background:var(--terra-soft);border-top:6px solid var(--terra);padding:28px;display:grid;gap:14px}
.support h2{font-size:1.75rem;margin:0}
.support p{font-size:1rem;line-height:1.6}
.about-box{margin-top:28px;border-top:2px solid var(--fg);padding-top:18px;display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:start;font-size:.95rem}
.about-box .crest{width:56px;height:67px}
.related{border-top:1px solid var(--line)}
.draft-banner{background:var(--ph-bg);color:var(--ph);font:500 .78rem var(--f-mono);padding:10px 0;border-bottom:1px solid var(--line)}
[data-l][hidden]{display:none!important}
.byline .avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;margin-right:4px}
/* single lead story (no Latest column yet): image beside text */
@media (min-width:960px){
  .lead-grid > .scard.lead:only-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);column-gap:48px;row-gap:14px;align-content:center}
  .lead-grid > .scard.lead:only-child > a:first-child{grid-row:1 / span 5;align-self:center}
  .lead-grid > .scard.lead:only-child > :not(a:first-child){grid-column:2}
  .lead-grid > .scard.lead:only-child > .kicker{align-self:end}
}
