:root{--paper:#FAF3E9;--ink:#111;--green:#06351B;--deep:#042610;--muted:#F1E7D6;--soft:#4A4338;--pad:clamp(1.25rem,5vw,4rem);--max:1240px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font-family:'Playfair Display',Georgia,serif;font-size:1.0625rem;line-height:1.6;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:'Anton','Arial Narrow',Impact,sans-serif;font-weight:400;text-transform:uppercase;line-height:1.02;letter-spacing:.01em}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
#wixheadless-banner-container{display:none!important}
/* header */
.top{background:var(--paper);border-bottom:1px solid var(--ink)}
.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding-top:.9rem;padding-bottom:.9rem}
.mark{font-family:'Anton',sans-serif;text-transform:uppercase;text-decoration:none;font-size:1.15rem;letter-spacing:.06em;color:var(--green)}
.nav{display:flex;flex-wrap:wrap;gap:.25rem 1.4rem;list-style:none}
.nav a{font-family:'Anton',sans-serif;text-transform:uppercase;text-decoration:none;letter-spacing:.08em;font-size:.95rem;padding:.35rem 0;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
.nav a:hover,.nav a[aria-current=page]{border-color:var(--green);color:var(--green)}
/* rule motif */
.rule{display:flex;align-items:center;gap:1rem;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.rule i{flex:1;height:6px;border-top:3px solid var(--ink);border-bottom:1px solid var(--ink)}
.rule b{color:var(--green);font-size:1rem;line-height:1}
.dateline{font-family:'Playfair Display',serif;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
/* hero */
.hero{padding:clamp(2rem,6vw,4.5rem) 0}
.hero .wrap{display:grid;gap:2.5rem;align-items:center}
.hero h1{font-size:clamp(3rem,11.5vw,7.6rem);margin:.9rem 0 1rem}
.hero h1 span{color:var(--green);display:block}
.sub{font-size:clamp(1.15rem,2.6vw,1.6rem);font-style:italic;font-weight:400;max-width:34ch}
.by{margin-top:1.2rem;font-style:italic;font-size:1.15rem}
.by strong{font-weight:700;font-style:italic}
.strip{display:inline-block;margin-top:1.4rem;border:2px solid var(--ink);padding:.45rem .9rem;font-family:'Anton',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:.9rem}
.btn{display:inline-block;margin-top:1.8rem;background:var(--green);color:var(--paper);font-family:'Anton',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:1.1rem;padding:1rem 2rem;text-decoration:none;border:2px solid var(--green);transition:transform .25s,background .25s,color .25s}
.btn:hover{transform:translateY(-3px);background:var(--paper);color:var(--green)}
.btn.alt{background:transparent;color:var(--green)}
.btn.alt:hover{background:var(--green);color:var(--paper)}
.btn.light{background:var(--paper);color:var(--green);border-color:var(--paper)}
.btn.light:hover{background:transparent;color:var(--paper)}
.cover{width:min(100%,520px);margin:0 auto;box-shadow:0 18px 40px rgba(17,17,17,.28);transform:rotate(1.6deg);transition:transform .4s}
.cover:hover{transform:rotate(0)}
/* print photo */
.print{background:#fff;padding:.7rem .7rem 0;box-shadow:0 12px 30px rgba(17,17,17,.25);transform:rotate(var(--r,-1.5deg));transition:transform .35s}
.print:hover{transform:rotate(0) scale(1.02)}
.print img{width:100%}
.print figcaption{font-style:italic;font-size:.95rem;padding:.7rem .2rem .8rem;color:var(--ink)}
/* bands */
.band{padding:clamp(3rem,8vw,6rem) 0}
.band.green{background:var(--green);color:var(--paper)}
.band.muted{background:var(--muted)}
.band .wrap.two{display:grid;gap:2.5rem;align-items:center}
.band h2{font-size:clamp(2.2rem,6vw,4.4rem);margin-bottom:1rem}
.band.green h2{color:var(--paper)}
.big-line{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(2rem,6.4vw,4.2rem);line-height:1.04}
.kicker{font-family:'Anton',sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:.95rem;color:var(--green);margin-bottom:.8rem}
.band.green .kicker{color:#CFE3D2}
.quote{font-size:clamp(1.5rem,3.8vw,2.5rem);line-height:1.25;font-style:italic;font-weight:700}
.quote em{color:var(--green)}
/* chapters list */
.chapters{list-style:none;border-top:3px solid var(--ink)}
.chapters li{border-bottom:1px solid var(--ink)}
.chapters a{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;align-items:center;text-decoration:none;padding:1.4rem .2rem;transition:padding .25s,background .25s,color .25s}
.chapters a:hover{padding-left:1rem;background:var(--green);color:var(--paper)}
.chapters h3{font-size:clamp(1.8rem,5vw,3.2rem)}
.chapters p{grid-column:1;font-style:italic;color:inherit;opacity:.85}
.chapters .arrow{grid-row:1/3;grid-column:2;font-family:'Anton',sans-serif;font-size:2rem}
/* visual break */
.fullbleed{position:relative;height:clamp(260px,52vw,560px);overflow:hidden;background:var(--muted)}
.fullbleed img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.fullbleed figcaption{position:absolute;left:var(--pad);bottom:1rem;background:var(--paper);padding:.35rem .8rem;font-style:italic;font-size:.95rem}
/* mosaic */
.mosaic{display:grid;gap:1.6rem;grid-template-columns:1fr}
.mosaic .print:nth-child(2){--r:1.4deg}.mosaic .print:nth-child(3){--r:-.8deg}.mosaic .print:nth-child(4){--r:1.1deg}
/* text */
.prose p{margin-bottom:1.2rem;max-width:62ch}
.prose.drop p:first-of-type::first-letter{font-family:'Anton',sans-serif;float:left;font-size:5.2rem;line-height:.82;padding:.35rem .6rem 0 0;color:var(--green)}
.block{display:grid;gap:2rem;align-items:start}
.block h2{font-size:clamp(2.4rem,7vw,4.6rem)}
.block .role{font-style:italic;color:var(--soft);margin-bottom:1.2rem}
.links{list-style:none;border-top:1px solid var(--ink);margin:1rem 0 .5rem;max-width:34rem}
.links li{border-bottom:1px solid var(--ink);padding:.5rem 0;font-family:'Anton',sans-serif;text-transform:uppercase;letter-spacing:.06em}
.links a{color:var(--green)}
.cite{font-style:italic;margin-top:.5rem}
/* footer */
.foot{background:var(--deep);color:var(--paper);padding:3rem 0 4.5rem;text-align:center}
.foot .mark{color:var(--paper);font-size:1.6rem;display:block;margin-bottom:.4rem}
.foot p{font-style:italic;opacity:.9}
.badge{position:fixed;right:12px;bottom:12px;z-index:50;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:.3rem .65rem;font-family:'Playfair Display',serif;font-size:.78rem;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.badge:hover{background:var(--green);color:var(--paper)}
/* motion */
.rv{opacity:0;transform:translateY(18px);transition:opacity .45s ease,transform .45s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.btn,.print,.cover,.chapters a{transition:none}.btn:hover{transform:none}}
a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
@media (min-width:820px){
 .hero .wrap{grid-template-columns:1.25fr 1fr}
 .band .wrap.two{grid-template-columns:1fr 1fr}
 .band .wrap.two.rev>:first-child{order:2}
 .mosaic{grid-template-columns:repeat(6,1fr)}
 .mosaic .print:nth-child(1){grid-column:1/4}
 .mosaic .print:nth-child(2){grid-column:4/7;margin-top:3rem}
 .mosaic .print:nth-child(3){grid-column:1/4}
 .mosaic .print:nth-child(4){grid-column:4/7;margin-top:2rem}
 .block{grid-template-columns:1fr 1fr;gap:4rem}
}
/* headline second line in a brighter accent green so it reads as green beside black */
.hero h1 span{color:#0E7A3C}
.band.green .quote em{color:#CFE3D2}
/* video frame */
.video{position:relative;aspect-ratio:16/9;background:var(--ink);border:3px solid var(--ink);box-shadow:0 14px 34px rgba(17,17,17,.28);margin-top:1.5rem}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.band .wrap>.cite{margin-top:1rem}
.intro{font-size:clamp(1.5rem,4.4vw,2.8rem);max-width:30ch;text-transform:none;font-family:'Playfair Display',serif;font-weight:700;font-style:italic;line-height:1.2}
