:root{
--bg:#f4efe6;
--ink:#211d17;
--ink-70:rgba(33,29,23,0.7);
--ink-50:rgba(33,29,23,0.5);
--ink-10:rgba(33,29,23,0.1);
--accent:#8a2f28;
--highlight:#c9b896;
--surface:#fbf8f1;
--font-display:"PP Editorial Old",Georgia,"Times New Roman",serif;
--font-body:"Source Serif Pro",Georgia,serif;
--font-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",monospace;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.62;}
a{color:var(--accent);}
img{max-width:100%;height:auto;}

a:focus-visible,button:focus-visible,[role="button"]:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

/* PUBLISHER HEADER (publication-coded, editorial palette) */
.publisher-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,4vw,3rem);background:var(--surface);border-bottom:1px solid var(--ink-10);}
.publisher-wordmark{font-family:var(--font-display);font-size:1.6rem;letter-spacing:0.01em;color:var(--ink);}
.publisher-tagline{display:block;font-family:var(--font-mono);font-size:0.6rem;text-transform:uppercase;letter-spacing:0.14em;color:var(--ink-50);margin-top:0.15rem;}
.publisher-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1.2rem;margin:0;padding:0;}
.publisher-nav a{font-family:var(--font-mono);font-size:0.72rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--ink-70);text-decoration:none;}
.publisher-nav a:hover{color:var(--accent);}

/* LAYOUT */
.publisher-layout{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1160px;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
.article-main{max-width:70ch;padding-top:1.5rem;}

/* BREADCRUMBS + BYLINE */
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:0.4rem;margin:1rem 0 0.75rem;padding:0;font-family:var(--font-mono);font-size:0.65rem;text-transform:uppercase;letter-spacing:0.09em;color:var(--ink-50);}
.breadcrumbs li:not(:last-child)::after{content:"/";margin-left:0.4rem;color:var(--ink-50);}
.breadcrumbs a{color:var(--ink-50);text-decoration:none;}
.byline-card{border-top:1px solid var(--ink-10);border-bottom:1px solid var(--ink-10);padding:0.75rem 0;margin-bottom:1rem;}
.byline-name{font-family:var(--font-mono);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.08em;}
.byline-meta{font-family:var(--font-mono);font-size:0.65rem;color:var(--ink-50);margin-top:0.25rem;letter-spacing:0.06em;}
.ad-label{font-family:var(--font-mono);font-size:0.62rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--accent);border:1px solid var(--accent);display:inline-block;padding:0.25rem 0.6rem;margin:0 0 1.5rem;}

/* HERO SPLIT LEDGER */
.hero--split-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem;}
.hero__ledger{background:var(--surface);border:1px solid var(--ink-10);border-top:3px solid var(--accent);padding:1.5rem;position:relative;}
.ledger-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem;}
.kicker{font-family:var(--font-mono);font-size:0.62rem;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent);}
.ledger-index{font-family:var(--font-display);font-style:italic;font-size:1.4rem;color:var(--highlight);}
.spec-strip{display:grid;gap:0;margin:0 0 1rem;}
.spec-row{display:grid;grid-template-columns:1fr auto;gap:0.75rem;align-items:baseline;border-top:1px solid var(--ink-10);padding:0.55rem 0;}
.spec-row dt{font-family:var(--font-mono);font-size:0.66rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-70);}
.spec-row dd{margin:0;font-family:var(--font-display);font-size:1.05rem;text-align:right;}
.spec-strip--confirmed .spec-row dd{color:var(--ink);}
.spec-strip--unknown{border-left:3px solid var(--highlight);padding-left:0.75rem;background:rgba(201,184,150,0.14);}
.spec-strip--unknown .spec-row dt{color:var(--accent);}
.spec-strip--unknown .spec-row dd{font-style:italic;font-size:0.92rem;color:var(--ink-70);}
.ledger-annotation{position:absolute;right:0.75rem;bottom:0.5rem;width:130px;height:auto;opacity:0.85;pointer-events:none;}
.hero__h1{font-family:var(--font-display);font-size:clamp(2.1rem,5.5vw,3.4rem);line-height:1.08;margin:0 0 0.75rem;max-width:20ch;}
.hero__subhead{font-family:var(--font-display);font-style:italic;font-size:clamp(1.05rem,2vw,1.35rem);color:var(--accent);margin:0 0 1.25rem;max-width:38ch;}
.hero-body p{margin:0 0 0.9rem;}

/* SECTIONS + CHAPTER DIVIDERS */
.section{margin:0 0 2.6rem;}
.chapter-divider{display:flex;align-items:baseline;gap:0.9rem;border-top:1px solid var(--ink);padding-top:0.6rem;margin-bottom:1.1rem;}
.chapter-num{font-family:var(--font-mono);font-size:0.85rem;letter-spacing:0.1em;color:var(--accent);}
.chapter-title{font-family:var(--font-mono);font-size:0.66rem;text-transform:uppercase;letter-spacing:0.14em;color:var(--ink-50);}
.section h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.15;margin:0 0 1rem;max-width:24ch;}
.section p{margin:0 0 1rem;}
.contextual-link a{font-family:var(--font-mono);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.06em;}

/* METRIC TILES */
.metric-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--ink-10);border:1px solid var(--ink-10);margin:1.5rem 0;}
.metric-tile{background:var(--surface);padding:1rem 0.75rem;text-align:center;}
.metric-num{display:block;font-family:var(--font-display);font-size:1.9rem;color:var(--accent);line-height:1;}
.metric-label{display:block;font-family:var(--font-mono);font-size:0.6rem;text-transform:uppercase;letter-spacing:0.09em;color:var(--ink-50);margin-top:0.4rem;}

/* OFFER + CTA */
.offer-subhead{font-family:var(--font-display);font-style:italic;font-size:1.2rem;color:var(--accent);margin-bottom:1.25rem;}
.offer-ledger{background:var(--surface);border:1px solid var(--ink-10);padding:1.25rem;margin:1.5rem 0;}
.offer-ledger .kicker{display:block;margin-bottom:0.75rem;}
.cta-block{margin:1.75rem 0 0;}
.cta{display:inline-block;font-family:var(--font-mono);font-size:0.85rem;text-transform:uppercase;letter-spacing:0.06em;text-decoration:none;padding:0.95rem 1.7rem;border:2px solid var(--accent);}
.cta--primary{background:var(--accent);color:var(--surface);}
.cta--primary:hover{background:#71241e;border-color:#71241e;}
.cta--secondary{background:transparent;color:var(--accent);}
.cta--secondary:hover{background:var(--accent);color:var(--surface);}
.cta-anchor{list-style:none;display:flex;flex-wrap:wrap;gap:0.9rem;padding:0;margin:0.9rem 0 0;font-family:var(--font-mono);font-size:0.66rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-50);}
.cta-anchor li{border-left:2px solid var(--highlight);padding-left:0.5rem;}

/* SIDEBAR */
.publisher-sidebar{background:var(--surface);border:1px solid var(--ink-10);padding:1.25rem;align-self:start;}
.sidebar-head{font-family:var(--font-mono);font-size:0.66rem;text-transform:uppercase;letter-spacing:0.12em;color:var(--accent);border-bottom:1px solid var(--ink-10);padding-bottom:0.6rem;margin-bottom:0.9rem;}
.sidebar-articles{list-style:none;margin:0;padding:0;}
.sidebar-articles li{border-bottom:1px solid var(--ink-10);}
.sidebar-articles a{display:flex;gap:0.75rem;align-items:flex-start;text-decoration:none;color:var(--ink);padding:0.75rem 0;font-family:var(--font-body);font-size:0.9rem;line-height:1.35;}
.sidebar-articles a:hover span{color:var(--accent);}
.sidebar-thumb{flex:0 0 48px;width:48px;height:48px;background:var(--highlight);opacity:0.55;}

/* STICKY MOBILE CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:20;display:none;text-align:center;background:var(--accent);color:var(--surface);font-family:var(--font-mono);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.05em;text-decoration:none;padding:0.95rem 1rem;box-shadow:0 -2px 8px rgba(33,29,23,0.12);}
.sticky-cta.is-visible{display:block;}

/* FOOTER */
.publisher-footer{background:var(--surface);border-top:1px solid var(--ink-10);margin-top:3rem;padding:2rem clamp(1rem,4vw,3rem);}
.publisher-footer__brand{margin-bottom:1rem;}
.publisher-wordmark--footer{font-size:1.25rem;}
.publisher-footer__nav{display:flex;flex-wrap:wrap;gap:1.2rem;margin-bottom:1.25rem;}
.publisher-footer__nav a{font-family:var(--font-mono);font-size:0.66rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink-70);text-decoration:none;}
.publisher-footer__nav a:hover{color:var(--accent);}
.disclosures p{font-size:0.78rem;line-height:1.5;color:var(--ink-70);margin:0 0 0.7rem;max-width:80ch;}
.copyright{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.06em;color:var(--ink-50);}

/* SCROLL REVEAL */
.section,.hero__ledger{opacity:1;}
.reveal-init{opacity:0;transform:translateY(12px);}
.reveal-in{opacity:1;transform:translateY(0);transition:opacity 0.5s ease-out,transform 0.5s ease-out;}
@media(prefers-reduced-motion:reduce){.reveal-init{opacity:1;transform:none;}.reveal-in{transition:none;}}

/* RESPONSIVE */
@media(min-width:768px){
.hero--split-grid{grid-template-columns:0.9fr 1.1fr;gap:2rem;align-items:start;}
.hero__ledger{position:sticky;top:1.5rem;}
.metric-tiles{grid-template-columns:repeat(4,1fr);}
.sticky-cta{max-width:420px;left:auto;right:1.5rem;bottom:1.5rem;border-radius:2px;}
}
@media(min-width:1024px){
.publisher-layout{grid-template-columns:minmax(0,1fr) 300px;gap:3rem;}
.publisher-sidebar{position:sticky;top:1.5rem;}
}
@media(max-width:767px){
.sticky-cta{max-width:none;}
}