@font-face{font-family:Antonio;src:url("fonts/antonio.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:Mulish;src:url("fonts/mulish.woff2") format("woff2");font-weight:400 800;font-display:swap}
:root{--orange:#E09000;--char:#2B2B2B;--char2:#3a3a3a;--ink:#2B2B2B;--ink2:#4a4a4a;--muted:#5e5e5e;--paper:#faf8f5;--paper2:#f1ede6;--card:#fff;--line:#e2dcd2;
  --head:Antonio,"Arial Narrow",Arial,sans-serif;--body:Mulish,Calibri,"Trebuchet MS",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:#8a5600;text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--char)}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--char);color:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{left:1rem;top:1rem}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.08;margin:0;text-transform:uppercase;letter-spacing:.01em}
h2{font-size:clamp(2.1rem,4.6vw,3.2rem);margin-bottom:1.1rem;color:var(--char)}
h3{font-size:1.45rem;margin-bottom:.5rem;color:var(--char)}
p{margin:0 0 1rem}
strong{font-weight:800}
cite{font-style:normal}
.muted{color:var(--muted)}

.topbar{background:var(--char);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem clamp(1rem,4vw,2.5rem)}
.brand img{width:96px;height:auto}
.topcta{font-family:var(--head);text-transform:uppercase;letter-spacing:.06em;font-size:1rem;color:var(--char);background:var(--orange);text-decoration:none;padding:.45rem .95rem;border-radius:8px;white-space:nowrap}
.topcta:hover{background:#f0a520;color:var(--char)}

.hero{background:var(--char);color:#fff;padding:clamp(2rem,5vw,4rem) 1.25rem clamp(2.5rem,6vw,4.5rem);border-bottom:6px solid var(--orange)}
.hero-inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.35fr .85fr;gap:clamp(1.5rem,5vw,4rem);align-items:center}
.kicker{font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);font-weight:800;margin-bottom:.7rem}
h1{font-size:clamp(3.1rem,9vw,6rem);color:#fff}
.h1-sub{display:block;font-size:clamp(1.15rem,2.6vw,1.6rem);letter-spacing:.12em;color:var(--orange);margin-top:.5rem;font-weight:600}
.subtitle{font-family:var(--head);font-size:clamp(1.3rem,3vw,1.8rem);text-transform:uppercase;margin:1rem 0 1.2rem;color:#fff;line-height:1.2}
.placeholder{display:inline-block;border:2px dashed var(--orange);color:var(--orange);padding:.2rem .7rem;border-radius:6px}
.lede{font-size:1.1rem;color:#e9e6e1;max-width:36em}
.lede strong{color:#fff}
.toc{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.4rem}
.toc a{font-size:.86rem;text-decoration:none;color:#fff;border:1px solid #5a5a5a;padding:.28rem .75rem;border-radius:999px;white-space:nowrap}
.toc a:hover{border-color:var(--orange);color:var(--orange)}
.portrait{margin:0;justify-self:center;max-width:360px;width:100%}
.portrait img{width:100%;border-radius:14px;border:4px solid var(--orange);box-shadow:0 22px 44px -24px rgba(0,0,0,.7)}
.portrait figcaption{font-size:.8rem;color:#bdb8b0;margin-top:.6rem;text-align:center}

.epigraph{padding:clamp(2.5rem,7vw,4.5rem) 1.25rem;background:var(--paper2);border-bottom:1px solid var(--line)}
.epigraph blockquote{max-width:46rem;margin:0 auto;position:relative;padding-left:1.4rem;border-left:5px solid var(--orange)}
.epigraph p{font-size:clamp(1.25rem,2.8vw,1.65rem);line-height:1.45;color:var(--char);font-weight:700}
.epigraph footer{font-size:1rem;color:var(--ink2);font-weight:700}
.epigraph footer::before{content:"— "}
.epigraph .src{display:block;font-weight:400;font-size:.88rem;margin-top:.3rem}

.block{max-width:1120px;margin:0 auto;padding:clamp(2.75rem,7vw,5rem) 1.25rem;border-bottom:1px solid var(--line)}
.eyebrow{font-family:var(--head);color:var(--orange);font-size:1.3rem;font-weight:700;letter-spacing:.12em;margin-bottom:.2rem}
.wide{max-width:46em;font-size:1.08rem;color:var(--ink2)}
.cards{display:grid;gap:1.2rem;margin-top:1.6rem}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card{background:var(--card);border:1px solid var(--line);border-top:5px solid var(--orange);border-radius:12px;padding:1.4rem 1.4rem .6rem}
.stat-split{display:grid;grid-template-columns:1.6fr .8fr;gap:clamp(1.5rem,5vw,3.5rem);align-items:start}
.stats{background:var(--char);color:#fff;border-radius:14px;padding:1.4rem 1.5rem .4rem}
.stat{display:flex;flex-direction:column;margin-bottom:1.1rem}
.stat .num{font-family:var(--head);font-size:2.3rem;font-weight:700;color:var(--orange);line-height:1}
.stat .lbl{font-size:.95rem;color:#e9e6e1}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,3.5rem);align-items:start}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.4rem}
.tile{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.3rem .4rem}
.tile .num{display:block;font-family:var(--head);font-size:2.6rem;font-weight:700;color:var(--orange);line-height:1.05;margin-bottom:.4rem}
.tile p{font-size:.98rem;color:var(--ink2)}
.quotes{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2rem}
.quotes blockquote{margin:0;background:var(--char);color:#fff;border-radius:12px;padding:1.3rem 1.5rem}
.quotes p{font-size:1.08rem;font-weight:700}
.quotes footer{font-size:.9rem;color:var(--orange)}
.book-feature{display:grid;grid-template-columns:220px 1fr;gap:clamp(1.25rem,4vw,2.5rem);align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:clamp(1.2rem,3vw,2rem);margin-bottom:1.8rem}
.cover img{border-radius:6px;box-shadow:0 16px 30px -18px rgba(0,0,0,.55)}
.btn{display:inline-block;font-family:var(--head);text-transform:uppercase;letter-spacing:.06em;font-size:1.1rem;background:var(--orange);color:var(--char);text-decoration:none;padding:.6rem 1.2rem;border-radius:9px}
.btn:hover{background:#f0a520;color:var(--char)}
.booklist{margin:0 0 1rem;padding-left:1.2rem}
.booklist li{margin-bottom:.35rem}
.booklist li::marker{color:var(--orange)}
.timeline{list-style:none;margin:1.4rem 0 0;padding:0;border-left:3px solid var(--orange);max-width:52rem}
.timeline li{display:grid;grid-template-columns:5.2rem 1fr;gap:1rem;padding:.55rem 0 .2rem 1.2rem;position:relative}
.timeline li::before{content:"";position:absolute;left:-.55rem;top:1.05rem;width:.8rem;height:.8rem;border-radius:50%;background:var(--char);border:2px solid var(--orange)}
.timeline .yr{font-family:var(--head);font-size:1.35rem;font-weight:700;color:var(--char)}
.timeline p{margin:0 0 .4rem}
.pull{margin:0;background:var(--char);color:#fff;border-radius:14px;padding:1.6rem 1.7rem;border-left:6px solid var(--orange)}
.pull p{font-size:1.3rem;font-weight:700;line-height:1.45}
.pull footer{color:var(--orange);font-size:.92rem}
.linkgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1rem}
.linkcard{display:flex;flex-direction:column;gap:.3rem;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;color:var(--char)}
.linkcard:hover{border-color:var(--orange)}
.linkcard .lk{font-family:var(--head);text-transform:uppercase;letter-spacing:.08em;color:#8a5600;font-size:1rem}
.linkcard .lt{font-weight:800;line-height:1.35;overflow-wrap:anywhere}
.linkcard.accent{background:var(--orange);border-color:var(--orange)}
.linkcard.accent .lk{color:var(--char)}
.fr{margin-top:2.2rem}
.reading{padding-left:1.2rem;color:var(--ink2)}
.reading li{margin-bottom:.4rem;overflow-wrap:anywhere}
.site-foot{background:var(--char);color:#d9d5ce;text-align:center;padding:2.2rem 1.25rem;font-size:.95rem;border-top:6px solid var(--orange)}
.site-foot a{color:var(--orange)}
.site-foot .credit{font-family:var(--head);text-transform:uppercase;font-size:1.5rem;letter-spacing:.06em}
@media (max-width:900px){
  .hero-inner,.stat-split,.two-col,.quotes{grid-template-columns:1fr}
  .cards.three,.tiles{grid-template-columns:1fr 1fr}
  .linkgrid{grid-template-columns:1fr 1fr}
  .portrait{max-width:240px;justify-self:start;order:-1}
}
@media (max-width:560px){
  body{font-size:17px}
  .cards.three,.tiles,.linkgrid{grid-template-columns:1fr}
  .book-feature{grid-template-columns:1fr}
  .book-feature .cover{max-width:180px}
  .timeline li{grid-template-columns:1fr;gap:0}
  .brand img{width:78px}
  .topcta{font-size:.9rem}
}
