/* World Wind Sports — one stylesheet. Tokens live in :root; change them here only. */
:root{
  --ink:#04161F;        /* deep water: text, dark sections */
  --deep:#0A2735;       /* night bay: secondary dark */
  --bay:#0F7C8C;        /* mid water: links on light */
  --foam:#F4EDE3;       /* pale foam: alternating light sections */
  --salt:#FFFFFF;
  --sage:#FF5A1F;       /* accent (swappable) */
  --sage-lt:#7FE7DC;    /* accent on dark */
  --line:rgba(4,22,31,.14);
  --line-dk:rgba(255,255,255,.16);
  --muted:#55636A;
  --muted-dk:rgba(255,255,255,.68);
  --display:"Archivo",system-ui,sans-serif;
  --body:"Inter",system-ui,sans-serif;
  --gutter:clamp(20px,5vw,72px);
  --max:1320px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
main{overflow-x:clip}
body{margin:0;background:var(--salt);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--sage);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:var(--salt);padding:8px 12px}

/* type */
.d1,.d2,.d3{font-family:var(--display);font-stretch:125%;font-weight:800;letter-spacing:-.025em;margin:0}
.d1{font-size:clamp(46px,8.4vw,128px);line-height:.9}
.d2{font-size:clamp(34px,5vw,72px);line-height:.95}
.d3{font-size:clamp(24px,2.6vw,34px);line-height:1.05;font-stretch:112%}
.lede{font-size:clamp(19px,1.9vw,25px);line-height:1.45;max-width:34em;margin:0}
.small{font-size:14px;line-height:1.5}
.muted{color:var(--muted)}
.prose p{max-width:38em;margin:0 0 1em}
.label{font:600 14px/1.3 var(--body);color:var(--sage);margin:0 0 14px}
.dark .label{color:var(--sage-lt)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:999px;font:600 16px/1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .2s,color .2s}
.btn-solid{background:var(--sage);color:#fff}
.btn-solid:hover{background:#E8460C}
.btn-light{background:#fff;color:var(--ink)}
.btn-light:hover{background:var(--foam)}
.btn-ghost{border-color:currentColor;background:transparent}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* header */
.top{position:fixed;inset:0 0 auto;z-index:50;color:#fff;transition:background .3s,color .3s,box-shadow .3s}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}
.top.solid,.top.light{background:rgba(255,255,255,.96);color:var(--ink);box-shadow:0 1px 0 var(--line);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:800 19px/1 var(--display);font-stretch:125%;letter-spacing:-.01em;white-space:nowrap}
.brand svg{width:34px;height:34px}
.nav{display:flex;align-items:center;gap:26px}
.nav a{text-decoration:none;font:500 15px/1 var(--body);opacity:.92}
.nav a:hover,.nav a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:6px}
.top .btn{padding:11px 20px;font-size:15px}
.icon-btn{background:none;border:0;color:inherit;padding:8px;cursor:pointer;display:grid;place-items:center}
.icon-btn svg{width:22px;height:22px}
.menu-btn{display:none}
@media (max-width:980px){
  .nav{display:none}.menu-btn{display:grid}
  .nav.open{display:flex;position:fixed;inset:76px 0 auto;flex-direction:column;align-items:flex-start;gap:0;background:#fff;color:var(--ink);padding:8px var(--gutter) 24px;box-shadow:0 12px 30px rgba(4,22,31,.15)}
  .nav.open a{padding:14px 0;font-size:19px;width:100%;border-bottom:1px solid var(--line)}
  .top .give-top{display:none}
}

/* search overlay */
.search{position:fixed;inset:0;z-index:80;background:rgba(4,22,31,.97);color:#fff;display:none;padding:120px var(--gutter) 40px;overflow:auto}
.search.open{display:block}
.search input{width:100%;max-width:900px;background:none;border:0;border-bottom:2px solid var(--line-dk);color:#fff;font:700 clamp(28px,4vw,52px)/1.2 var(--display);font-stretch:112%;padding:8px 0;outline:none}
.search input:focus{border-color:var(--sage-lt)}
.search ul{list-style:none;padding:0;margin:28px 0 0;max-width:900px}
.search li a{display:block;padding:14px 0;border-bottom:1px solid var(--line-dk);text-decoration:none}
.search li span{display:block;color:var(--muted-dk);font-size:14px}
.search .close{position:absolute;top:22px;right:var(--gutter)}

/* hero */
.hero{position:relative;min-height:100svh;color:#fff;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink)}
.hero .slides,.hero .slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .slides img{opacity:0;animation:fade 32s infinite;transform:scale(1.04)}
.hero .slides img:nth-child(1){animation-delay:0s;opacity:1}
.hero .slides img:nth-child(2){animation-delay:8s}
.hero .slides img:nth-child(3){animation-delay:16s}
.hero .slides img:nth-child(4){animation-delay:24s}
@keyframes fade{0%{opacity:0;transform:scale(1.08)}4%{opacity:1}25%{opacity:1}30%{opacity:0;transform:scale(1)}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.hero .slides img:not(:first-child){display:none}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,31,.55) 0%,rgba(4,22,31,0) 60%),linear-gradient(180deg,rgba(4,22,31,.45) 0%,rgba(4,22,31,0) 30%,rgba(4,22,31,.15) 55%,rgba(4,22,31,.85) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-bottom:clamp(40px,8vh,88px)}
.hero .d1{max-width:13ch;font-size:clamp(44px,7.4vw,112px)}
.hero .lede{margin:26px 0 34px;color:rgba(255,255,255,.9);max-width:30em}
.hero .fine{margin-top:28px;font-size:13px;color:rgba(255,255,255,.7)}
.disciplines{display:flex;gap:18px;margin-bottom:22px;font:600 15px/1 var(--body);color:rgba(255,255,255,.8)}
.disciplines span{padding-bottom:6px;border-bottom:2px solid rgba(255,255,255,.35)}

/* page hero (inner pages) */
.phero{position:relative;color:#fff;background:var(--ink);min-height:min(72vh,720px);display:flex;align-items:flex-end;overflow:hidden}
.phero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,.5) 0%,rgba(4,22,31,.1) 35%,rgba(4,22,31,.88) 100%)}
.phero .wrap{position:relative;z-index:2;width:100%;padding-top:140px;padding-bottom:clamp(36px,6vh,72px)}
.phero .lede{margin-top:20px;color:rgba(255,255,255,.9)}
.phero.short{min-height:0}
.crumb{font-size:14px;margin:0 0 18px;color:rgba(255,255,255,.8)}
.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}

/* sections */
.sec{padding:clamp(72px,11vw,150px) 0}
.sec.tight{padding:clamp(56px,7vw,96px) 0}
.foam{background:var(--foam)}
.dark{background:var(--ink);color:#fff}
.dark .muted{color:var(--muted-dk)}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,64px)}
.head .lede{margin-top:18px}
.statement{font-family:var(--display);font-stretch:100%;font-weight:500;font-size:clamp(26px,3.3vw,46px);line-height:1.18;letter-spacing:-.015em;max-width:24em;margin:0}
.statement + .statement{margin-top:.8em;color:var(--muted)}

/* pillars (Patagonia/Amnesty colour-block tiles) */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pillar{position:relative;min-height:440px;border-radius:6px;overflow:hidden;color:#fff;text-decoration:none;display:flex;align-items:flex-end;background:var(--deep)}
.pillar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pillar:hover img{transform:scale(1.04)}
.pillar::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,0) 30%,rgba(4,22,31,.9))}
.pillar div{position:relative;z-index:2;padding:26px}
.pillar h3{margin:0 0 10px}
.pillar p{margin:0;font-size:16px;line-height:1.45;color:rgba(255,255,255,.88)}
@media (max-width:1000px){.pillars{grid-template-columns:1fr 1fr}.pillar{min-height:340px}}
@media (max-width:560px){.pillars{grid-template-columns:1fr}.pillar{min-height:300px}}

/* atlas (map + hover card) */
.atlas{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(20px,3vw,40px);align-items:start}
.atlas-map{position:relative}
.atlas-tools{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.chip-btn{background:transparent;border:1.5px solid var(--line-dk);color:#fff;border-radius:999px;padding:9px 16px;font:600 14px/1 var(--body);cursor:pointer}
.chip-btn[aria-pressed=true]{background:#fff;color:var(--ink);border-color:#fff}
.atlas svg{width:100%;height:auto;display:block;overflow:hidden}
.atlas .land{fill:none;stroke:rgba(201,213,168,.45);stroke-linecap:round}
.pt{cursor:pointer}
.pt circle.dot{fill:var(--sage-lt);stroke:var(--ink);stroke-width:2}
.pt.open circle.dot{fill:#fff}
.pt circle.halo{fill:none;stroke:var(--sage-lt);opacity:.0}
.pt.on circle.dot{fill:#fff}
.pt.on circle.halo{opacity:.9}
.pt text{fill:#fff;font:600 13px var(--body);paint-order:stroke;stroke:var(--ink);stroke-width:4px;pointer-events:none}
.pt:focus{outline:none}.pt:focus-visible circle.halo{opacity:1;stroke:#fff}
.cluster circle{fill:var(--sage);stroke:#fff;stroke-width:2}
.cluster text{fill:#fff;font:700 13px var(--body);text-anchor:middle;dominant-baseline:central;stroke:none}
.card-panel{background:#fff;color:var(--ink);border-radius:6px;overflow:hidden;position:sticky;top:96px}
.card-panel img{width:100%;aspect-ratio:16/10;object-fit:cover}
.card-panel .in{padding:22px 24px 26px}
.card-panel h3{margin:6px 0 2px}
.card-panel ul{margin:16px 0 18px;padding:0;list-style:none}
.card-panel li{padding:9px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.45}
.status{display:inline-block;font:600 12.5px/1 var(--body);padding:6px 10px;border-radius:999px;background:var(--foam);color:var(--ink)}
.status.active{background:var(--sage);color:#fff}
.status.open{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--sage)}
.meta{font-size:14px;color:var(--muted);margin:0}
.sports{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.sports span{font-size:13px;padding:5px 10px;border-radius:999px;background:var(--foam)}
.atlas-list{margin-top:28px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 24px}
.atlas-list h4{grid-column:1/-1;margin:18px 0 6px;font:600 14px/1 var(--body);color:var(--sage-lt)}
.atlas-list a{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-dk);text-decoration:none;font-size:15px}
.atlas-list a span{color:var(--muted-dk);font-size:13px}
.atlas-list a:hover,.atlas-list a.on{color:var(--sage-lt)}
@media (max-width:980px){.atlas{grid-template-columns:1fr}.card-panel{position:static}}

/* chapter cards grid */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 22px}
.ccard{text-decoration:none;display:block}
.ccard .ph{aspect-ratio:4/3;border-radius:6px;overflow:hidden;background:var(--foam);margin-bottom:16px}
.ccard img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ccard:hover img{transform:scale(1.04)}
.ccard h3{margin:8px 0 6px}
.ccard p{margin:0;font-size:15.5px;line-height:1.5;color:var(--muted)}
@media (max-width:900px){.cards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cards{grid-template-columns:1fr}}

/* type explainer */
.types{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}
.types div{padding:26px 22px 8px 0;border-right:1px solid var(--line);margin-right:22px}
.types div:last-child{border-right:0}
.types h3{font:700 19px/1.2 var(--display);font-stretch:112%;margin:0 0 10px}
.types p{font-size:15px;line-height:1.5;margin:0 0 10px;color:var(--muted)}
@media (max-width:1100px){.types{grid-template-columns:1fr 1fr}.types div{border-right:0;border-bottom:1px solid var(--line)}}
@media (max-width:560px){.types{grid-template-columns:1fr}}

/* chapter page */
.glance{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(32px,6vw,96px);align-items:start}
.facts{border:1px solid var(--line);border-radius:6px;padding:8px 24px 22px}
.facts dl{margin:0}
.facts dt{font:600 13px/1 var(--body);color:var(--muted);margin-top:18px}
.facts dd{margin:6px 0 0;font-size:16px;line-height:1.45}
.facts a:not(.btn){color:var(--bay)}
@media (max-width:980px){.glance{grid-template-columns:1fr}}
.guide{display:grid;grid-template-columns:300px minmax(0,1fr);gap:clamp(24px,5vw,80px);padding:clamp(48px,6vw,80px) 0;border-top:1px solid var(--line)}
.guide:first-of-type{border-top:0}
.guide .intro p{color:var(--muted);font-size:16px;margin:14px 0 0}
.gsecs{display:grid;grid-template-columns:1fr 1fr;gap:36px 40px}
.gsec h3{font:700 20px/1.2 var(--display);font-stretch:112%;margin:0 0 10px}
.gsec p{margin:0 0 .7em;font-size:16px;line-height:1.55}
.gsec .src{font-size:13px;color:var(--muted);margin-top:6px}
.does{list-style:none;padding:0;margin:0}
.does li{padding:18px 0;border-top:1px solid var(--line);font-size:18px;line-height:1.5}
@media (max-width:900px){.guide{grid-template-columns:1fr}.gsecs{grid-template-columns:1fr}}

/* give (SAS-style picker) */
.give-grid{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:clamp(32px,6vw,96px);align-items:start}
.picker{background:#fff;color:var(--ink);border-radius:6px;padding:28px}
.picker fieldset{border:0;padding:0;margin:0}
.picker legend{font:700 22px/1.2 var(--display);font-stretch:112%;margin-bottom:16px}
.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.opt{position:relative}
.opt input{position:absolute;opacity:0}
.opt label{display:flex;flex-direction:column;justify-content:center;min-height:86px;padding:12px 14px;border:2px solid var(--line);border-radius:6px;cursor:pointer;font:800 24px/1 var(--display);font-stretch:112%}
.opt label small{font:500 13px/1.3 var(--body);margin-top:6px;color:var(--muted)}
.opt input:checked+label{border-color:var(--sage);background:#F4F7EE}
.opt input:focus-visible+label{outline:3px solid var(--sage);outline-offset:2px}
.picked{margin:20px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.picked h4{margin:0 0 6px;font:700 18px/1.2 var(--body)}
.picked p{margin:0 0 6px;font-size:15px;line-height:1.5}
.picked .pays{color:var(--sage);font-weight:600}
.picker .btn{width:100%;justify-content:center}
.honesty{font-size:13px;line-height:1.5;color:var(--muted);margin:16px 0 0}
.dark .honesty{color:var(--muted-dk)}
.dark .picker .honesty{color:var(--muted)}
@media (max-width:1050px){.give-grid{grid-template-columns:1fr}}
@media (max-width:480px){.opts{grid-template-columns:1fr 1fr}}

/* ladder table */
.ladder{border-top:2px solid var(--ink)}
.rung{display:grid;grid-template-columns:220px 150px minmax(0,1fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--line);align-items:baseline}
.rung h3{margin:0}
.rung .amt{font:800 30px/1 var(--display);font-stretch:112%}
.rung .cap{display:block;font:500 13px/1.3 var(--body);color:var(--muted);margin-top:8px}
.rung p{margin:0 0 6px;font-size:16px;line-height:1.55;max-width:44em}
.rung.lead{background:linear-gradient(90deg,#F4F7EE,transparent)}
@media (max-width:800px){.rung{grid-template-columns:1fr;gap:8px}}

/* sponsor */
.sponsor{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.slot{border:1px solid var(--line-dk);border-radius:6px;padding:24px}
.slot h3{font:700 20px/1.2 var(--display);font-stretch:112%;margin:0 0 8px}
.slot .price{font:800 26px/1.1 var(--display);font-stretch:112%;margin:12px 0}
.slot p{font-size:15px;line-height:1.5;margin:0;color:var(--muted-dk)}
.slot .left{display:inline-block;margin-top:14px;font:600 13px/1 var(--body);color:var(--sage-lt)}
.light-slots .slot{border-color:var(--line)}
.light-slots .slot p{color:var(--muted)}
.light-slots .slot .left{color:var(--sage)}
@media (max-width:1000px){.sponsor{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.sponsor{grid-template-columns:1fr}}

/* budget */
.budget{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}
.budget div{padding:22px 0;border-top:1px solid var(--line)}
.budget h3{font:700 18px/1.25 var(--body);margin:0 0 6px}
.budget p{margin:0;font-size:15.5px;line-height:1.5;color:var(--muted)}
@media (max-width:900px){.budget{grid-template-columns:1fr}}

/* split feature */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.split .ph{border-radius:6px;overflow:hidden;aspect-ratio:4/5}
.split .ph img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.split{grid-template-columns:1fr}.split .ph{aspect-ratio:4/3}}

/* reach */
.reach{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.reach>div:last-child{max-width:40em}
.reach .num{font:800 clamp(72px,14vw,220px)/.82 var(--display);font-stretch:125%;letter-spacing:-.04em}
@media (max-width:800px){.reach{grid-template-columns:1fr}}

/* partners */
.plist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));border-top:1px solid var(--line)}
.plist div{padding:28px 24px 28px 0;border-bottom:1px solid var(--line)}
.plist strong{display:block;font:800 22px/1.15 var(--display);font-stretch:112%}
.plist span{display:block;margin-top:8px;font-size:15px;color:var(--muted)}
.plist a{color:var(--bay);font-size:15px}

/* forms */
.signup{display:flex;gap:10px;flex-wrap:wrap;max-width:560px}
.signup input{flex:1 1 260px;padding:15px 18px;border-radius:999px;border:1.5px solid var(--line-dk);background:transparent;color:#fff;font:400 16px var(--body)}
.signup input::placeholder{color:var(--muted-dk)}
.form-note{font-size:14px;color:var(--muted-dk);margin-top:12px;min-height:1.4em}

/* wall */
.wall{border:1.5px dashed var(--line);border-radius:6px;padding:40px;text-align:center;color:var(--muted)}

/* footer */
.foot{background:var(--ink);color:#fff;padding:80px 0 40px}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.foot h4{font:600 14px/1 var(--body);color:var(--sage-lt);margin:0 0 16px}
.foot ul{list-style:none;padding:0;margin:0}
.foot li{margin:0 0 10px}
.foot a{text-decoration:none;color:rgba(255,255,255,.85);font-size:15px}
.foot a:hover{color:#fff;text-decoration:underline}
.foot .legal{margin-top:56px;padding-top:24px;border-top:1px solid var(--line-dk);font-size:13px;line-height:1.6;color:var(--muted-dk)}
.foot .legal p{margin:0 0 4px}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}

.give-h{font-size:clamp(30px,3.8vw,54px)}

/* far views: labels only on hover/focus */
.atlas .pt.far text{opacity:0;transition:opacity .15s;pointer-events:none}
.atlas .pt.far:hover text,.atlas .pt.far:focus text,.atlas .pt.far.on text{opacity:1}
.atlas .pt.far:hover,.atlas .pt.far.on{z-index:2}

.card-panel .access{margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--line-dk);font-size:14px;line-height:1.5;opacity:.85}

/* ---- FX trial (cumbuco) ---- */
.phero.fx>img{animation:heroZoom 2.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes heroZoom{from{transform:scale(1.14);filter:brightness(.6)}to{transform:scale(1);filter:none}}
.phero.fx .wrap>*{animation:rise 1s cubic-bezier(.2,.7,.2,1) both}
.phero.fx .wrap>*:nth-child(1){animation-delay:.25s}.phero.fx .wrap>*:nth-child(2){animation-delay:.4s}
.phero.fx .wrap>*:nth-child(3){animation-delay:.55s}.phero.fx .wrap>*:nth-child(4){animation-delay:.75s}
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
.fxon .rv{opacity:0;transform:translateY(36px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0)*90ms)}
.fxon .rv.in{opacity:1;transform:none}
.fxon .rv-img{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.7,0,.2,1);transition-delay:calc(var(--d,0)*120ms)}
.fxon .rv-img.in{clip-path:inset(0 0 0 0)}
.fxon .rv-img img{transform:scale(1.2);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.fxon .rv-img.in img{transform:scale(1)}
.band{position:relative;height:clamp(420px,80vh,820px);overflow:hidden;background:var(--ink);color:#fff;display:flex;align-items:flex-end}
.band-img{position:absolute;inset:-12% 0;will-change:transform}
.band-img img{width:100%;height:100%;object-fit:cover}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,.15),rgba(4,22,31,.85))}
.band .wrap{position:relative;z-index:2;width:100%;padding-bottom:clamp(48px,9vh,110px)}
.band-k{font:600 14px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--sage-lt);margin:0 0 18px}
.band-h{font:900 clamp(40px,7vw,112px)/.95 var(--display);font-stretch:118%;margin:0;letter-spacing:-.01em}
.fxon .band-h{clip-path:inset(0 0 100% 0);transform:translateY(30px);transition:clip-path 1.2s cubic-bezier(.7,0,.2,1) .15s,transform 1.2s cubic-bezier(.2,.7,.2,1) .15s}
.fxon .band.in .band-h{clip-path:inset(0 0 -10% 0);transform:none}
.fxon .slot{transition:opacity .9s,transform .9s,border-color .3s,background .3s}
.fxon .slot:hover{border-color:var(--sage-lt);background:rgba(255,255,255,.04)}

h1,h2,h3,.d1,.d2,.d3,.band-h{text-wrap:balance}
p,li{text-wrap:pretty}

/* ===== v2: emotional type system ===== */
.mix{font-family:var(--display);letter-spacing:-.03em;line-height:.9;margin:0}
.mix b{font-weight:900;font-stretch:125%;text-transform:uppercase}
.mix i{font-style:normal;font-weight:200;font-stretch:100%;letter-spacing:-.02em}
.mix em{font-style:normal;font-weight:900;font-stretch:125%;text-transform:uppercase;color:var(--sage)}
.dark .mix i,.hero .mix i,.phero .mix i,.band .mix i{color:rgba(255,255,255,.92)}
.hero .mix{font-size:clamp(48px,8.6vw,148px);max-width:12ch}
.hero .mix b,.hero .mix em{display:inline}
.kicker{font:700 13px/1 var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--sage);margin:0 0 22px;display:flex;align-items:center;gap:14px}
.kicker::before{content:"";width:42px;height:2px;background:currentColor}
.dark .kicker,.hero .kicker,.phero .kicker,.band .kicker{color:var(--sage-lt)}
.manifesto{font-family:var(--display);font-size:clamp(40px,6.4vw,104px);line-height:.95;letter-spacing:-.03em;margin:0;max-width:16ch}
.manifesto b{font-weight:900;font-stretch:125%;text-transform:uppercase;display:block}
.manifesto i{font-style:normal;font-weight:200;display:block}
.manifesto em{font-style:normal;font-weight:900;font-stretch:125%;text-transform:uppercase;color:var(--sage);display:block}
.manifesto-sub{font-size:clamp(19px,1.8vw,24px);line-height:1.5;max-width:34em;margin:clamp(32px,4vw,56px) 0 0;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dk);margin-top:clamp(48px,6vw,80px)}
.stats div{padding:28px 24px 0 0}
.stats strong{display:block;font:900 clamp(48px,6vw,96px)/.85 var(--display);font-stretch:125%;letter-spacing:-.04em}
.stats strong span{color:var(--sage)}
.stats p{margin:12px 0 0;font:300 16px/1.4 var(--body);color:var(--muted-dk);max-width:16em}
@media(max-width:800px){.stats{grid-template-columns:1fr 1fr}}
.grain{position:relative;isolation:isolate}
.grain::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.07;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.phero .mix{font-size:clamp(56px,10vw,168px)}
.phero .mix i{display:block;font-size:.34em;letter-spacing:0;margin-top:.35em;text-transform:none}
h2.mix{font-size:clamp(36px,5.4vw,84px)}
h2.mix.sm{font-size:clamp(28px,3.4vw,52px)}
.disciplines span{border-bottom-color:var(--sage)}

/* partner logo wall */
.logo-wall{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.logo-tile{background:var(--foam);aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px;text-decoration:none;color:var(--ink);transition:background .35s}
.logo-tile:hover{background:#fff}
.lt-art{height:64px;display:flex;align-items:center;justify-content:center}
.lt-art img{max-height:64px;max-width:190px;width:auto;filter:grayscale(1) contrast(1.1);opacity:.75;transition:filter .35s,opacity .35s,transform .35s}
.logo-tile:hover .lt-art img{filter:none;opacity:1;transform:scale(1.05)}
.wm{font:900 34px/1 var(--display);font-stretch:125%;letter-spacing:-.03em;text-transform:uppercase;opacity:.8;transition:opacity .35s,color .35s;text-align:center}
.wm span{color:var(--sage);font-weight:200}
.logo-tile:hover .wm{opacity:1}
.lt-role{margin:0;font:600 12px/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center}

.iso-mark{font-size:clamp(96px,16vw,240px)!important;line-height:.8;letter-spacing:-.05em}
.iso-mark b{color:var(--sage)}
.iso-name{font:200 clamp(20px,2.4vw,34px)/1.1 var(--display);letter-spacing:.02em;margin:18px 0 0;color:#fff}

/* ===== v3: 1ISO energy on WWS ===== */
.marq{overflow:hidden;border-top:1px solid var(--line-dk);padding:16px 0}
.marq-t{display:flex;gap:22px;width:max-content;animation:mq 90s linear infinite;font:900 20px/1 var(--display);font-stretch:125%;text-transform:uppercase;white-space:nowrap}
.marq-t i{font-style:normal;font-weight:200;color:var(--sage)}
.marq:hover .marq-t{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.hero .hero-marq{position:absolute;left:0;right:0;bottom:0;z-index:3;background:rgba(4,22,31,.5);backdrop-filter:blur(6px)}
.hero.fx-home .wrap{padding-bottom:clamp(110px,14vh,150px)}
.hero.fx-home::after{background:linear-gradient(100deg,rgba(4,22,31,.9) 0%,rgba(4,22,31,.55) 42%,rgba(4,22,31,.05) 75%),linear-gradient(0deg,rgba(4,22,31,.9) 0%,rgba(4,22,31,0) 40%),radial-gradient(120% 80% at 100% 0%,rgba(255,90,31,.25),transparent 55%)}
.hero.fx-home .wrap>*{animation:rise 1.1s cubic-bezier(.2,.7,.2,1) both}
.hero.fx-home .wrap>*:nth-child(2){animation-delay:.12s}.hero.fx-home .wrap>*:nth-child(3){animation-delay:.28s}.hero.fx-home .wrap>*:nth-child(4){animation-delay:.42s}
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
/* issues carousel */
.issues-sec{background:var(--ink);color:#fff;padding-bottom:clamp(72px,9vw,130px)}
.issues-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(32px,4vw,56px)}
.car-nav{display:flex;gap:10px;flex:none}
.car-b{width:56px;height:56px;border-radius:50%;border:1.5px solid rgba(255,255,255,.4);background:transparent;color:#fff;font-size:22px;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.car-b:hover{background:var(--sage);border-color:var(--sage);color:var(--ink);transform:scale(1.06)}
.car{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)));padding:0 max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter))) 24px;scrollbar-width:none}
.car::-webkit-scrollbar{display:none}
.issue{position:relative;flex:0 0 clamp(280px,30vw,420px);scroll-snap-align:start}
.issue-btn{all:unset;display:block;cursor:pointer;width:100%;border-radius:10px;overflow:hidden;position:relative;aspect-ratio:3/4;background:var(--deep)}
.issue-btn:focus-visible{outline:3px solid var(--sage);outline-offset:4px}
.issue-ph,.issue-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.issue-ph img{filter:saturate(.75) contrast(1.05);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s}
.issue-btn:hover .issue-ph img{transform:scale(1.07);filter:none}
.issue-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,0) 35%,rgba(4,22,31,.95))}
.issue-tx{position:absolute;left:0;right:0;bottom:0;padding:26px;z-index:2}
.issue-tag{display:inline-block;font:700 11.5px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);background:var(--sage);padding:7px 10px;border-radius:999px}
.issue h3{font:900 clamp(26px,2.4vw,36px)/1 var(--display);font-stretch:118%;letter-spacing:-.02em;margin:14px 0 14px}
.issue-more{font:600 14px/1 var(--body);color:rgba(255,255,255,.85);display:inline-flex;gap:10px;align-items:center}
.issue-more i{font-style:normal;width:26px;height:26px;border-radius:50%;border:1.5px solid currentColor;display:inline-grid;place-items:center;transition:transform .3s,background .3s}
.issue-btn:hover .issue-more i{transform:rotate(90deg);background:var(--sage);border-color:var(--sage);color:var(--ink)}
.tip{position:absolute;left:18px;right:18px;top:18px;z-index:3;background:#fff;color:var(--ink);font:500 14.5px/1.4 var(--body);padding:14px 16px;border-radius:8px;box-shadow:0 12px 40px rgba(0,0,0,.35);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .25s,transform .25s}
.tip::after{content:"";position:absolute;left:24px;bottom:-7px;width:14px;height:14px;background:#fff;transform:rotate(45deg)}
.issue:hover .tip,.issue-btn:focus-visible+.tip{opacity:1;transform:none}
.modal{border:0;padding:0;border-radius:14px;max-width:min(920px,94vw);width:100%;background:#fff;color:var(--ink);overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr}
.modal:not([open]){display:none}
.modal::backdrop{background:rgba(4,22,31,.78);backdrop-filter:blur(6px)}
.modal[open]{animation:mIn .45s cubic-bezier(.2,.7,.2,1)}
@keyframes mIn{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}
.modal-ph{min-height:320px}.modal-ph img{width:100%;height:100%;object-fit:cover}
.modal-in{padding:clamp(28px,4vw,48px);max-height:86vh;overflow:auto}
.modal h3{font:900 clamp(30px,3.4vw,46px)/.98 var(--display);font-stretch:118%;letter-spacing:-.02em;margin:16px 0 20px}
.modal-body p{font-size:17px;line-height:1.6;color:var(--muted);margin:0 0 1em}
.modal .btn-ghost{color:var(--ink)}
.modal-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(4,22,31,.85);color:#fff;font-size:26px;cursor:pointer;z-index:2}
@media(max-width:760px){.modal{grid-template-columns:1fr}.modal-ph{min-height:200px;max-height:240px}.issues-head{flex-direction:column;align-items:flex-start}}
/* ===== partner loop ===== */
.plogo{background:transparent;padding:36px 0 32px;overflow:hidden;width:100vw;margin-left:calc(50% - 50vw)}
.plogo-v{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16%,#000 84%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 16%,#000 84%,transparent 100%)}
.plogo-t{display:flex;width:max-content;animation:plogo 48s linear infinite}
.plogo:hover .plogo-t{animation-play-state:paused}
@keyframes plogo{to{transform:translateX(-50%)}}
.pl-item{flex:0 0 auto;width:300px;display:flex;flex-direction:column;align-items:center;gap:18px;text-decoration:none;color:var(--ink);opacity:.9;transition:opacity .3s,transform .3s}
.pl-item:hover{opacity:1;transform:translateY(-3px)}
.pl-art{height:60px;display:flex;align-items:center;justify-content:center}
.pl-art img{max-height:46px;max-width:210px;width:auto}
.pl-art img[src*="rideengine"]{max-height:56px}
.pl-role{font:600 11px/1.35 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:center;max-width:230px}
.pl-mx{font:800 44px/1 "Syne",sans-serif;letter-spacing:-.01em;color:var(--ink)}.pl-mx span{color:#C8960A;font-weight:700}
.pl-kc{font-family:var(--display);font-size:30px;line-height:1;color:var(--ink);white-space:nowrap}.pl-kc b{font-weight:900;font-stretch:125%}.pl-kc i{font-style:normal;font-weight:200;margin-left:.18em}
.pl-ithos{display:flex;align-items:center}.pl-ithos img{height:56px;width:56px;border-radius:12px}
.pl-iso{height:42px;width:auto}
@media (max-width:760px){.pl-item{width:220px}.plogo-t{animation-duration:36s}}
@media (prefers-reduced-motion:reduce){.plogo-t{animation:none;flex-wrap:wrap;justify-content:center;width:auto}.plogo-half{display:none!important}}

/* same-name manifesto */
.samename{background:#fff}
.sn-disc{display:flex;gap:18px;flex-wrap:wrap;margin:6px 0 18px;font:700 13px/1 var(--display);letter-spacing:.22em;text-transform:uppercase;opacity:.55}
.sn-disc span+span:before{content:"·";margin-right:18px}
.sn-h{margin:0 0 48px;line-height:.92}
.sn-h span{display:block}
.sn-a{font:italic 300 clamp(48px,8vw,128px)/.95 'Fraunces',serif;letter-spacing:-.02em}
.sn-b{font:900 clamp(56px,10vw,168px)/.9 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em;padding-left:8vw}
.sn-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:start}
.sn-big{font:italic 400 clamp(24px,2.6vw,36px)/1.25 'Fraunces',serif;margin:0}
.sn-big em{font-style:italic;font-weight:600;color:var(--accent,#0a6cff)}
.sn-body p{font-size:17px;line-height:1.65;margin:0 0 16px;opacity:.8}
.spine{background:#f6f3ec;text-align:center}
.sp-line{font:italic 300 clamp(34px,5.4vw,84px)/1.08 'Fraunces',serif;letter-spacing:-.015em;margin:0 auto;max-width:15ch}
.sp-line em{font-weight:600}
.sp-sub{margin:28px 0 0;font:700 13px/1 var(--display);letter-spacing:.22em;text-transform:uppercase;opacity:.55}
@media(max-width:820px){.sn-grid{grid-template-columns:1fr;gap:28px}.sn-b{padding-left:0}}

/* full-width zoomable map */
.map-sec{padding-top:0}
.map-sec .atlas{display:block;max-width:none;margin:0 0 clamp(36px,5vw,64px)}
.map-sec .atlas-map{position:relative;padding:0 clamp(12px,2vw,28px)}
.map-sec .atlas-tools{position:absolute;top:14px;left:clamp(20px,3vw,40px);z-index:3;margin:0}
.map-sec .atlas svg{width:100%;height:auto;min-height:420px;touch-action:none;cursor:grab;user-select:none}
.map-sec .atlas svg:active{cursor:grabbing}
.zoom-ctl{position:absolute;left:clamp(20px,3vw,40px);bottom:24px;z-index:3;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1.5px var(--line-dk)}
.zoom-ctl button{width:42px;height:42px;background:rgba(8,34,46,.85);color:#fff;border:0;font:600 20px/1 var(--body);cursor:pointer}
.zoom-ctl button+button{border-top:1px solid var(--line-dk)}
.zoom-ctl button:hover{background:var(--sage)}
.zoom-hint{position:absolute;left:calc(clamp(20px,3vw,40px) + 56px);bottom:28px;z-index:3;margin:0;font-size:12.5px;color:var(--muted-dk)}
.map-sec .card-panel{position:absolute;top:70px;right:clamp(20px,3vw,40px);width:330px;z-index:3;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.map-sec .card-panel img{aspect-ratio:16/8}
.map-sec .card-panel ul{display:none}
.atlas.zoomed .pt text{opacity:1}
.map-sec .atlas-list{margin-top:32px}
@media (max-width:980px){.map-sec .card-panel{position:static;width:auto;margin:16px 0 0}.map-sec .card-panel ul{display:block}.zoom-hint{display:none}.map-sec .atlas svg{min-height:0}.map-sec .atlas-tools{position:static;margin:0 0 12px}}

/* search overlay layout (only when open) */
.search.open{display:flex;flex-direction:column;align-items:center;padding:18vh 24px 40px}
.search label{display:block;width:min(720px,100%);margin:0 0 14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.search input,.search ul{width:min(720px,100%)}
.search input{font-size:clamp(24px,3.4vw,40px)}

/* card docked right, beside Find your chapter */
.atlas-below{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:40px;align-items:start}
.map-sec .atlas-below .card-panel{position:sticky;top:96px;right:auto;width:auto;margin-top:8px;z-index:2}
.atlas-below .atlas-list{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
@media (max-width:980px){.atlas-below{grid-template-columns:1fr}.map-sec .atlas-below .card-panel{position:static}}
/* hero marquee — WWS style, distinct from 1ISO ticker */
.hero .hero-marq{background:linear-gradient(to top,rgba(4,22,31,.55),rgba(4,22,31,0));backdrop-filter:none;border-top:0;padding:22px 0 18px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hero .hero-marq .marq-t{animation-duration:160s;gap:28px;font:500 15px/1 var(--body,inherit);font-stretch:100%;text-transform:none;letter-spacing:.06em;color:rgba(255,255,255,.88)}
.hero .hero-marq .marq-t i{font-size:0;width:6px;height:6px;border-radius:50%;background:var(--sage);align-self:center;display:inline-block}

[data-count] sup{font-size:.42em;vertical-align:top;position:relative;top:.12em;margin-left:.06em;line-height:1}
/* stats: even distribution */
.stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.stats div{padding:32px clamp(16px,2.2vw,36px) 4px;border-left:1px solid var(--line-dk);display:flex;flex-direction:column}
.stats div:first-child{border-left:0;padding-left:0}
.stats strong{font-size:clamp(44px,5.2vw,84px);white-space:nowrap}
.stats p{margin-top:16px;max-width:15em}
@media(max-width:800px){.stats div{padding:28px 16px 8px}.stats div:nth-child(odd){border-left:0;padding-left:0}.stats div:nth-child(n+3){border-top:1px solid var(--line-dk)}}
@media(max-width:800px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* stats: equal columns, numbers fit their cell */
.stats div{padding:32px 28px 4px}
.stats div:first-child{padding-left:0}
.stats div:last-child{padding-right:0}
.stats strong{font-size:clamp(38px,4.2vw,68px);letter-spacing:-.03em}
.stats p{font-size:15px;max-width:14em}
@media(max-width:800px){.stats div{padding:28px 16px 8px}.stats div:nth-child(odd){padding-left:0}.stats strong{font-size:clamp(40px,11vw,60px)}}

/* map fits the screen: capped height, whole view visible, clears the fixed header */
.map-sec{scroll-margin-top:76px}
.map-sec .atlas svg{height:min(calc(100vh - 140px),720px);min-height:380px}
@media (max-width:980px){.map-sec .atlas svg{height:auto;min-height:0}}

/* chapter photo gallery */
.gal-band{padding:clamp(20px,3vw,36px) 0 0}
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;height:clamp(320px,42vw,560px)}
.gal-i{position:relative;margin:0;overflow:hidden;border-radius:14px;background:#0b1d26}
.gal-big{grid-row:1/3}
.gal-i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.gal-i:hover img{transform:scale(1.04)}
.gal-i figcaption{position:absolute;left:10px;bottom:8px;font-size:11px;color:#fff;opacity:.8;text-shadow:0 1px 3px rgba(0,0,0,.6)}
.gal-i figcaption a{color:inherit}
@media(max-width:800px){.gal{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}.gal-big{grid-column:1/3;grid-row:auto;aspect-ratio:16/10}.gal-i:not(.gal-big){aspect-ratio:1}.gal-i:nth-child(5){display:none}}

.gal-cred{margin-top:10px;font-size:11.5px;color:var(--muted,#7a8a90);opacity:.75}
.gal-cred a{color:inherit;text-decoration:none}.gal-cred a:hover{text-decoration:underline}

.cred-grp{margin-top:40px}.cred-grp h2{margin:0 0 10px}.cred-grp ul{margin:0;padding-left:18px;line-height:1.7}
.gal-cred{opacity:.9}.gal-cred a{font-size:12.5px;letter-spacing:.02em}

.wx-frame{position:relative;border-radius:14px;overflow:hidden;background:#0b1b22;aspect-ratio:16/8;min-height:420px;box-shadow:0 20px 50px -30px rgba(0,0,0,.45)}
.wx-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:700px){.wx-frame{aspect-ratio:auto;height:520px}}

.wx-frame.wa{aspect-ratio:auto;min-height:0;background:none;box-shadow:none}
.wx-frame.wa{height:min(72vh,620px);min-height:440px;border-radius:14px;overflow:hidden}
.wx-frame.wa>[data-windywidget],.wx-frame.wa>[data-windywidget]>*,.wx-frame.wa iframe{width:100%!important;height:100%!important;min-height:100%!important}

.guide.gx{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;padding:88px 0;border-top:0}
.guide.gx+.guide.gx{border-top:1px solid rgba(0,0,0,.07)}
.guide.gx.rev .gx-img{order:2}
.gx-img{margin:0;position:sticky;top:96px;border-radius:16px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 60px -35px rgba(0,0,0,.45)}
.gx-img img{width:100%;height:100%;object-fit:cover;display:block}
.gx-body h2{margin:0 0 14px}.gx-intro{font-size:18px;opacity:.75;margin:0 0 32px;max-width:34em}
.gx-body .gsecs{display:grid;grid-template-columns:1fr;gap:28px}
.gx-body .gsec{padding-left:18px;border-left:3px solid var(--accent,#ef6b3a)}
@media(max-width:900px){.guide.gx{grid-template-columns:1fr;gap:28px;padding:56px 0}.guide.gx.rev .gx-img{order:0}.gx-img{position:static;aspect-ratio:16/10}}

/* ===== rich chapter page (Mailchimp-style density + motion) ===== */
.btn-xl{padding:20px 36px;font-size:18px}
.qstrip{background:var(--ink);color:#fff;border-top:1px solid var(--line-dk)}
.qs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.qs>div{padding:20px 18px;border-left:1px solid var(--line-dk);min-width:0}
.qs>div:first-child{border-left:0;padding-left:0}
.qs small{display:block;font:500 12px/1.2 var(--body);color:var(--muted-dk);margin-bottom:8px}
.qs b{display:block;font:700 16px/1.3 var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qs a{color:var(--sage-lt);text-decoration:none}
@media (max-width:980px){.qs{grid-template-columns:repeat(2,minmax(0,1fr))}.qs>div{border-left:0;padding-left:0;border-top:1px solid var(--line-dk)}}
.s2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.s2-prose{font-size:clamp(18px,1.5vw,21px)}
.s2-col{position:relative;padding-bottom:70px}
.s2-a,.s2-b{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(4,22,31,.18)}
.s2-a img,.s2-b img{width:100%;height:100%;object-fit:cover;display:block}
.s2-a{aspect-ratio:4/5;width:82%}
.s2-b{position:absolute;right:0;bottom:0;width:52%;aspect-ratio:1;border:6px solid #fff}
.s2-note{position:absolute;left:-18px;top:28px;background:var(--sage);color:#fff;border-radius:14px;padding:16px 20px;box-shadow:0 18px 40px rgba(255,90,31,.35);max-width:220px}
.s2-note b{display:block;font:900 40px/1 var(--display);font-stretch:125%}
.s2-note span{font-size:13.5px;line-height:1.35;display:block;margin-top:6px}
@media (max-width:900px){.s2{grid-template-columns:1fr}.s2-note{left:12px}}
/* hover-expand cards */
.xgrid{display:flex;gap:14px;height:min(620px,80vh)}
.xcard{flex:1 1 0;min-width:0;border-radius:20px;overflow:hidden;background:#fff;display:flex;flex-direction:column;cursor:pointer;transition:flex .6s cubic-bezier(.2,.8,.2,1),background .35s,color .35s,filter .35s,opacity .35s;box-shadow:0 1px 0 var(--line),0 14px 34px rgba(4,22,31,.07);outline:none}
.xc-img{height:46%;overflow:hidden;flex:none;transition:height .55s cubic-bezier(.2,.8,.2,1)}
.xc-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s}
.xc-b{padding:22px 24px 24px;display:flex;flex-direction:column;min-height:0;flex:1}
.xc-b h3{font-size:clamp(20px,1.8vw,28px);margin:0 0 10px}
.xc-t{margin:0;font-size:15px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.xc-full{opacity:0;visibility:hidden;max-height:0;overflow:auto;transition:opacity .3s;scrollbar-width:thin}
.xc-s h4{font:700 14px/1.3 var(--body);margin:14px 0 6px}
.xc-s p{margin:0 0 6px;font-size:14.5px;line-height:1.5}
.xc-s .src{font-size:12px;opacity:.75}
.xcard.on{flex:2.7;background:var(--sage);color:#fff}
.xcard.on .xc-img{height:30%}
.xcard.on .xc-img img{transform:scale(1.05)}
.xcard.on .xc-t{display:none}
.xcard.on .xc-full{opacity:1;visibility:visible;max-height:none;flex:1;transition-delay:.25s}
.xcard.on .mix i{color:rgba(255,255,255,.9)}
.xgrid .xcard:not(.on){filter:grayscale(.85);opacity:.8}
.xgrid .xcard:not(.on):hover{filter:none;opacity:1}
.xcard:focus-visible{box-shadow:0 0 0 3px var(--ink)}
@media (max-width:900px){.xgrid{flex-direction:column;height:auto}.xcard,.xcard.on{flex:none;background:#fff;color:var(--ink);filter:none!important;opacity:1!important}.xc-img,.xcard.on .xc-img{height:220px}.xc-t{display:none}.xc-full{opacity:1;visibility:visible;max-height:none}.xcard.on .mix i{color:inherit}}
/* people marquees */
.people{overflow:hidden}
.xm{display:grid;gap:14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.xm-row{overflow:hidden;padding:6px 0 16px}
.xm-t{display:flex;gap:14px;width:max-content;animation:mq var(--d,70s) linear infinite}
.xm-row.rev .xm-t{animation-direction:reverse}
.xm:hover .xm-t{animation-play-state:paused}
.xm-c{display:flex;align-items:center;gap:12px;padding:12px 22px 12px 12px;border-radius:16px;background:#fff;white-space:nowrap;box-shadow:0 1px 0 var(--line),0 10px 26px rgba(4,22,31,.08);transition:transform .25s,box-shadow .25s}
.xm-c:hover{transform:translateY(-4px);box-shadow:0 1px 0 var(--line),0 18px 36px rgba(4,22,31,.14)}
.xm-c b{display:block;font:700 15px/1.25 var(--body)}
.xm-c small{display:block;font-size:12.5px;line-height:1.3;color:var(--muted)}
.xm-av{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none;background:var(--foam);display:grid;place-items:center;font-weight:800;color:var(--ink)}
.xm-sc{width:42px;height:42px;border-radius:12px;flex:none;background:var(--sage);color:#fff;display:grid;place-items:center;font:900 18px/1 var(--display)}
.xm-f{background:var(--sage-lt)}
.xm-k{background:var(--ink);color:#fff;max-width:520px}
.xm-k b{white-space:normal;max-width:440px}
.xm-k small{color:var(--muted-dk)}
@media (prefers-reduced-motion:reduce){.xm-t{animation:none}}
/* closer band */
.closer-h{font-family:var(--display);font-weight:200;font-size:clamp(34px,5vw,76px);line-height:1.02;letter-spacing:-.03em;text-align:center;max-width:16em;margin:0 auto}
.closer-h span{display:block;font-weight:900;font-stretch:125%;color:var(--sage)}
/* scroll reveal */
[data-rv]{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
[data-rv].rv-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-rv]{opacity:1;transform:none}}
.s2-col{position:sticky;top:110px}@media (max-width:900px){.s2-col{position:relative;top:auto}}

/* ===== Mailchimp-layout chapter page ===== */
:root{--serif:"Fraunces",Georgia,serif;--mc-bg:#F6F4EF;--mc-card:#FFFFFF;--mc-hi:#FF5A1F}
.mc-h1,.mc-h2,.mc-big,.mc-close-h,.mc-card h3,.mc-plan h3,.mc-q p{font-family:var(--serif);font-optical-sizing:auto;letter-spacing:-.015em}
.mc-h2{font-weight:400;font-size:clamp(30px,3.2vw,46px);line-height:1.1;margin:0}
.mc-sub{color:var(--muted);font-size:17px;margin:12px 0 0;max-width:40em}
.mc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.mc-center{text-align:center;margin:48px 0 0;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.mc-sec{padding:clamp(72px,9vw,120px) 0;background:var(--mc-bg)}
.mc-pill,.mc-pill-o{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font:600 15px/1 var(--body);text-decoration:none;padding:15px 28px;transition:background .2s,color .2s,transform .2s}
.mc-pill{background:var(--mc-hi);color:#fff;border:2px solid var(--mc-hi)}
.mc-pill:hover{background:#E44A12;border-color:#E44A12}
.mc-pill.dark{background:var(--ink);border-color:var(--ink)}
.mc-pill.xl{padding:19px 44px;font-size:17px}
.mc-pill-o{border:1.5px solid var(--ink);color:var(--ink);background:transparent;padding:12px 22px;font-size:14px}
.mc-pill-o:hover{background:var(--ink);color:#fff}
.mc-pill-o.light{border-color:#fff;color:#fff}.mc-pill-o.light:hover{background:#fff;color:var(--ink)}
.full{width:100%}
.mc-arr{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--mc-hi);color:#fff;margin-left:8px;transition:transform .25s}
.mc-arr svg{width:15px;height:15px}
.mc-link{display:inline-flex;align-items:center;font:600 15px/1.2 var(--body);color:var(--ink);text-decoration:none;margin-top:auto;padding-top:22px}
.mc-link:hover .mc-arr{transform:translateX(4px)}
.mc-link.light{color:#fff}
/* hero */
.mc-hero{position:relative;min-height:min(92vh,860px);display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--ink);text-align:center}
.mc-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mc-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,.55),rgba(4,22,31,.45) 40%,rgba(4,22,31,.75))}
.mc-hero-in{position:relative;z-index:2;padding-top:130px;padding-bottom:70px}
.mc-crumb{font-size:14px;color:rgba(255,255,255,.8);margin:0 0 26px;display:flex;gap:12px;justify-content:center;align-items:center}
.mc-crumb a{color:inherit;text-decoration:none}
.mc-h1{font-weight:400;font-size:clamp(44px,6.4vw,92px);line-height:1.02;margin:0 auto;max-width:14em}
.mc-h1 em{font-style:italic;color:var(--mc-hi);font-weight:400}
.mc-lede{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:rgba(255,255,255,.88);max-width:36em;margin:26px auto 36px}
.mc-proof{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:56px}
.mc-proof-n{font-size:17px;margin-right:10px}.mc-proof-n b{font-family:var(--serif);font-size:34px;font-weight:500;margin-right:6px;color:#fff}
.mc-chip{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 16px;font-size:14px;background:rgba(255,255,255,.08);backdrop-filter:blur(6px)}
/* 2x2 expanding cards */
.mc-row{display:flex;gap:24px;margin-bottom:24px}
.mc-card{flex:1 1 0;min-width:0;background:var(--mc-card);border-radius:20px;border:1px solid rgba(4,22,31,.08);transition:flex .55s cubic-bezier(.2,.8,.2,1),background .3s,color .3s,filter .3s,opacity .3s;cursor:default;outline:none}
.mc-card-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:22px;padding:34px;height:100%;min-height:440px}
.mc-copy{display:flex;flex-direction:column;min-width:0}
.mc-ic{width:30px;height:30px;color:var(--ink);margin-bottom:22px}
.mc-card h3{font-weight:400;font-size:clamp(24px,2vw,30px);line-height:1.15;margin:0 0 12px}
.mc-intro{font-size:15.5px;line-height:1.5;color:var(--muted);margin:0 0 18px}
.mc-list{list-style:none;margin:0;padding:0}
.mc-list li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45;margin:0 0 10px}
.mc-ck{width:20px;height:20px;flex:none;margin-top:1px;color:var(--ink)}
.mc-list li.fade{opacity:.35;max-height:3.1em;overflow:hidden;transition:opacity .3s}
.mc-list li:nth-child(n+5){display:none}
.mc-src{font-size:12px;color:var(--muted);margin:6px 0 0;display:none}
.mc-fig{margin:0;border-radius:16px;overflow:hidden;align-self:start;aspect-ratio:4/5}
.mc-fig img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.mc-row:hover .mc-card{filter:grayscale(.6);opacity:.65}
.mc-row .mc-card:hover,.mc-row .mc-card:focus-within,.mc-row .mc-card:focus{flex:1.45;background:var(--mc-hi);color:#fff;filter:none;opacity:1}
.mc-card:hover .mc-intro,.mc-card:focus .mc-intro{color:rgba(255,255,255,.85)}
.mc-card:hover .mc-ic,.mc-card:hover .mc-ck,.mc-card:hover .mc-link,.mc-card:focus .mc-ic,.mc-card:focus .mc-ck,.mc-card:focus .mc-link{color:#fff}
.mc-card:hover .mc-ck path,.mc-card:focus .mc-ck path{stroke:var(--mc-hi)}
.mc-card:hover .mc-list li.fade,.mc-card:focus .mc-list li.fade{opacity:1;max-height:none}
.mc-card:hover .mc-list li:nth-child(n+5),.mc-card:focus .mc-list li:nth-child(n+5){display:flex}
.mc-card:hover .mc-src,.mc-card:focus .mc-src{display:block;color:rgba(255,255,255,.75)}
.mc-card:hover .mc-arr,.mc-card:focus .mc-arr{background:#fff;color:var(--mc-hi)}
.mc-card:hover .mc-fig img{transform:scale(1.05)}
@media (max-width:980px){.mc-row{flex-direction:column}.mc-card-in{grid-template-columns:1fr;min-height:0}.mc-fig{aspect-ratio:16/10;order:-1}.mc-row:hover .mc-card{filter:none;opacity:1}.mc-list li.fade{opacity:1;max-height:none}}
/* schools logo strip */
.mc-logos{background:var(--mc-bg);padding:10px 0 70px;text-align:center}
.mc-logos p{font-size:14px;color:var(--muted);margin:0 0 22px}
.mc-logos-t{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 56px;padding:0 var(--gutter)}
.mc-logos-t span{font-family:var(--serif);font-size:clamp(22px,2.2vw,32px);font-weight:600;color:rgba(4,22,31,.55);letter-spacing:-.02em;transition:color .2s}
.mc-logos-t span:hover{color:var(--ink)}
/* dark rotating stat band */
.mc-dark{background:#241C15;color:#fff}
.mc-stats{padding:clamp(72px,9vw,120px) 0}
.mc-st-w{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:40px;align-items:center}
.mc-st-slides{display:grid}
.mc-st{grid-area:1/1;opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s;pointer-events:none}
.mc-st.on{opacity:1;transform:none;pointer-events:auto}
.mc-kick{color:var(--mc-hi);font-size:15px;font-weight:600;margin:0 0 16px}
.mc-big{font-weight:400;font-size:clamp(32px,4vw,58px);line-height:1.12;margin:0;max-width:18em}
.mc-big mark{background:var(--mc-hi);color:#fff;padding:0 .14em;border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.mc-fine{font-size:12.5px;color:rgba(255,255,255,.55);margin:18px 0 0}
.mc-bars{display:flex;flex-direction:column;gap:10px}
.mc-bar{width:6px;height:36px;border-radius:4px;border:0;background:rgba(255,255,255,.3);cursor:pointer;padding:0}
.mc-bar.on{background:var(--mc-hi)}
/* story carousel */
.mc-story{overflow:hidden}
.mc-story .mc-h2{margin-bottom:44px}
.mc-track-w{overflow:visible}
.mc-track{display:flex;gap:28px;padding-left:max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)));transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.mc-slide{flex:0 0 min(1140px,86vw);display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 1px 0 rgba(4,22,31,.08),0 24px 50px rgba(4,22,31,.08);opacity:.45;transition:opacity .5s}
.mc-slide.on{opacity:1}
.mc-photo{position:relative;min-height:520px}
.mc-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mc-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.7))}
.mc-q{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:34px;color:#fff}
.mc-tag{font-size:13px;opacity:.85}
.mc-q p{font-size:clamp(20px,1.8vw,27px);line-height:1.3;margin:10px 0 0;font-weight:400}
.mc-side{padding:36px;display:flex;flex-direction:column}
.mc-num{padding:18px 0;border-bottom:1px solid var(--line)}
.mc-num:first-child{padding-top:0}
.mc-num b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(34px,3.2vw,52px);line-height:1}
.mc-num span{display:block;font-size:14px;color:var(--muted);margin-top:8px}
.mc-attr{font-size:14px;color:var(--muted);margin:auto 0 0;padding-top:22px}
.mc-dots{display:flex;gap:8px;justify-content:center;margin-top:30px}
.mc-dot{width:30px;height:5px;border-radius:4px;border:0;background:rgba(4,22,31,.2);cursor:pointer;padding:0}
.mc-dot.on{background:var(--ink)}
@media (max-width:900px){.mc-slide{grid-template-columns:1fr}.mc-photo{min-height:380px}}
/* staggered integration rows */
.mc-people{overflow:hidden}
.mc-irows{display:grid;gap:18px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.mc-irow{overflow:hidden;padding:4px 0 10px}
.mc-irow:nth-child(2){margin-left:-140px}
.mc-it{display:flex;gap:18px;width:max-content;animation:mq var(--d,80s) linear infinite}
.mc-irow.rev .mc-it{animation-direction:reverse}
.mc-irows:hover .mc-it{animation-play-state:paused}
.mc-int{display:flex;align-items:center;gap:16px;width:340px;padding:20px 22px;background:#fff;border-radius:16px;border:1px solid rgba(4,22,31,.08);transition:transform .25s,box-shadow .25s}
.mc-int:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(4,22,31,.12)}
.mc-int b{display:block;font:700 16px/1.25 var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mc-int small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;line-height:1.4;color:var(--muted);margin-top:3px}
.mc-int>span:last-child{min-width:0}
.mc-int-ic{width:52px;height:52px;flex:none;border-radius:12px;background:var(--mc-bg);display:grid;place-items:center;font:800 15px/1 var(--body);color:var(--ink);object-fit:cover}
img.mc-int-ic{border-radius:50%}
.mc-int-ic.acc{background:var(--mc-hi);color:#fff;font-family:var(--serif);font-size:24px}
.mc-int-ic.dk{background:var(--ink);color:#fff;font-family:var(--serif);font-size:22px;font-style:italic}
@media (prefers-reduced-motion:reduce){.mc-it{animation:none}}
/* pricing-style sponsors */
.mc-plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.mc-plan{position:relative;background:#fff;border-radius:20px;border:1px solid rgba(4,22,31,.1);padding:30px;display:flex;flex-direction:column}
.mc-plan.hi{border:2px solid var(--mc-hi);box-shadow:0 24px 50px rgba(255,90,31,.14)}
.mc-flag{position:absolute;top:-13px;left:30px;background:var(--mc-hi);color:#fff;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px}
.mc-plan h3{font-weight:400;font-size:26px;margin:0 0 8px}
.mc-price{font-family:var(--serif);font-size:clamp(30px,2.6vw,40px);margin:0 0 22px}
.mc-plan .mc-list{margin-bottom:26px;flex:1}
@media (max-width:1100px){.mc-plans{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.mc-plans{grid-template-columns:1fr}}
/* closing dark band */
.mc-close{padding:clamp(90px,11vw,150px) 0;text-align:center}
.mc-close-h{font-weight:400;font-size:clamp(34px,4.4vw,64px);line-height:1.1;max-width:17em;margin:0 auto}
.mc-close-h em{font-style:italic;color:var(--mc-hi)}
.mc-close-p{color:rgba(255,255,255,.75);font-size:18px;max-width:36em;margin:22px auto 34px}
.mc-close-b{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.mc-close .honesty{color:rgba(255,255,255,.55);margin-top:22px}
.wx{background:#fff}
.mc-h1,.mc-h2,.mc-big,.mc-close-h,.mc-card h3,.mc-plan h3,.mc-q p,.mc-num b,.mc-price,.mc-logos-t span{font-style:normal}.mc-h1 em,.mc-close-h em{font-style:italic}

/* ===== mc-card v2: exact Mailchimp expand behaviour ===== */
.mc-card{overflow:hidden;filter:none!important;opacity:1!important}
.mc-card-in{padding:0;gap:0;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);transition:grid-template-columns .55s cubic-bezier(.2,.8,.2,1)}
.mc-copy{padding:34px;transition:background .3s,color .3s}
.mc-fig{margin:34px 34px 34px 0;border-radius:16px;aspect-ratio:4/5;align-self:start;transition:margin .5s cubic-bezier(.2,.8,.2,1),border-radius .5s}
.mc-list li:nth-child(1){opacity:1}.mc-list li:nth-child(2){opacity:.7}.mc-list li:nth-child(3){opacity:.45}.mc-list li:nth-child(4){opacity:.3}
/* hovered card: ~2x wide, colour on copy half, photo full-bleed right half */
.mc-row .mc-card:hover,.mc-row .mc-card:focus,.mc-row .mc-card:focus-within{flex:2;background:#fff;color:inherit}
.mc-card:hover .mc-card-in,.mc-card:focus .mc-card-in{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.mc-card:hover .mc-copy,.mc-card:focus .mc-copy{background:var(--mc-hi);color:#fff}
.mc-card:hover .mc-fig,.mc-card:focus .mc-fig{margin:0;border-radius:0;aspect-ratio:auto;align-self:stretch;height:100%}
.mc-card:hover .mc-list li,.mc-card:focus .mc-list li{opacity:1}
.mc-card:hover .mc-link,.mc-card:focus .mc-link{color:#fff}
.mc-card:hover .mc-arr,.mc-card:focus .mc-arr{background:var(--ink);color:#fff}
/* the other card: plain white, faded text, no photo */
.mc-row:hover .mc-card:not(:hover){flex:1;background:#fff}
.mc-row:hover .mc-card:not(:hover) .mc-card-in{grid-template-columns:minmax(0,1fr) 0}
.mc-row:hover .mc-card:not(:hover) .mc-fig{margin:34px 0;opacity:0}
.mc-row:hover .mc-card:not(:hover) .mc-copy{opacity:.45}
.mc-row:hover .mc-card:not(:hover) .mc-link{visibility:hidden}
@media (max-width:980px){.mc-card-in{grid-template-columns:1fr}.mc-fig{margin:0 0 0 0;border-radius:0;aspect-ratio:16/10;order:-1}.mc-row:hover .mc-card:not(:hover) .mc-copy{opacity:1}.mc-row:hover .mc-card:not(:hover) .mc-fig{opacity:1;margin:0}.mc-row:hover .mc-card:not(:hover) .mc-card-in{grid-template-columns:1fr}}

/* ===== mc-card v3: zero text reflow — copy column fixed at 1/3 row width ===== */
.mc-row{container-type:inline-size}
.mc-card{height:500px}
.mc-card-in{display:flex;height:100%;min-height:0}
.mc-copy{flex:0 0 calc((100cqw - 24px)/3);width:calc((100cqw - 24px)/3);box-sizing:border-box;overflow:hidden;transition:background .3s,color .3s,opacity .3s}
.mc-fig{flex:1 1 auto;min-width:0;width:auto;height:calc(100% - 68px);aspect-ratio:auto;align-self:flex-start}
.mc-card:hover .mc-fig,.mc-card:focus .mc-fig{height:100%}
.mc-row .mc-card:hover,.mc-row .mc-card:focus,.mc-row .mc-card:focus-within{flex:2}
.mc-row:hover .mc-card:not(:hover) .mc-fig{margin:34px 0;opacity:0}
/* no height changes on hover: same items, same clamp, only opacity */
.mc-list{max-height:250px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 80%,transparent);mask-image:linear-gradient(#000 80%,transparent)}
.mc-list li.fade,.mc-card:hover .mc-list li.fade,.mc-card:focus .mc-list li.fade{max-height:3.1em}
.mc-card:hover .mc-list li:nth-child(n+5),.mc-card:focus .mc-list li:nth-child(n+5){display:none}
.mc-card:hover .mc-src,.mc-card:focus .mc-src{display:none}
@media (max-width:980px){.mc-card{height:auto}.mc-card-in{flex-direction:column}.mc-copy{flex:none;width:auto}.mc-fig{height:auto;aspect-ratio:16/10}}

/* ===== mc-card v4: wider panels, Mailchimp proportions (fixed copy, squarer photos) ===== */
#guide .wrap{max-width:1500px}
.mc-card{height:520px}
.mc-copy{flex:0 0 calc((100cqw - 24px)*.29);width:calc((100cqw - 24px)*.29)}
.mc-fig{flex:1 1 auto;min-width:0;align-self:flex-start;aspect-ratio:auto;margin:40px 40px 0 0;height:calc((100cqw - 24px)*.25);max-height:calc(100% - 80px);border-radius:16px;transition:height .55s cubic-bezier(.2,.8,.2,1),margin .55s cubic-bezier(.2,.8,.2,1),border-radius .55s,opacity .3s}
.mc-card:hover .mc-fig,.mc-card:focus .mc-fig,.mc-card:focus-within .mc-fig{margin:0;height:100%;max-height:100%;border-radius:0}
.mc-row:hover .mc-card:not(:hover) .mc-fig{margin:40px 0 0;opacity:0}
@media (max-width:980px){.mc-card{height:auto}.mc-copy{flex:none;width:auto}.mc-fig{height:auto;aspect-ratio:16/10;margin:0;border-radius:0;max-height:none}}

/* ===== mc-card v5: show ALL bullets, no clamp/mask; card grows to fit; later bullets lighter but readable ===== */
.mc-row{align-items:stretch}
.mc-card{height:auto}
.mc-card-in{height:100%;align-items:stretch}
.mc-list,.mc-card:hover .mc-list,.mc-card:focus .mc-list{max-height:none;overflow:visible;-webkit-mask-image:none;mask-image:none}
.mc-list li.fade,.mc-card:hover .mc-list li.fade,.mc-card:focus .mc-list li.fade{max-height:none;opacity:.5}
.mc-card:hover .mc-list li.fade,.mc-card:focus .mc-list li.fade{opacity:1}
.mc-card:hover .mc-list li:nth-child(n+5),.mc-card:focus .mc-list li:nth-child(n+5){display:flex}
.mc-card:hover .mc-src,.mc-card:focus .mc-src{display:block}
.mc-copy{padding-bottom:34px}
.mc-fig{max-height:none}
.mc-card:hover .mc-fig,.mc-card:focus .mc-fig,.mc-card:focus-within .mc-fig{height:auto;align-self:stretch;max-height:none}

/* mc hero slider */
.mc-hero>img.mc-hs{opacity:0;transition:opacity 1.4s ease,transform 7s ease;transform:scale(1.04)}
.mc-hero>img.mc-hs.on{opacity:1;transform:scale(1)}
.mc-hs-dots{position:absolute;left:0;right:0;bottom:22px;z-index:3;display:flex;gap:10px;justify-content:center}
.mc-hs-dot{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.45);cursor:pointer}
.mc-hs-dot.on{background:#fff;transform:scale(1.25)}
@media (prefers-reduced-motion: reduce){.mc-hero>img.mc-hs{transition:none;transform:none}}
/* windy full width */
.wx .wx-frame.wx-full{width:100%;max-width:none;margin:24px 0 0;border-radius:0;border-left:0;border-right:0}

/* windy tall, to the bottom */
section.wx:has(.wx-full){padding-bottom:0}
.wx .wx-frame.wa.wx-full{height:calc(100vh - 40px);min-height:620px;max-height:none;margin-top:18px}
.wx:has(.wx-full) .gal-cred{margin:6px 0 0}

/* windy clean: no branding, no gaps */
/* logo stays visible and clickable: required by windy.app terms */
section.wx:has(.wx-full){padding-bottom:0!important;margin-bottom:0!important}
.wx .wx-frame.wa.wx-full{margin-top:0!important;margin-bottom:0!important}
.wx:has(.wx-full) .head{margin-bottom:20px}

/* windy: a little taller than original, not full screen */
.wx .wx-frame.wa.wx-full{height:min(76vh,720px)!important;min-height:520px!important}

.wx-src{text-align:right;padding-top:8px;padding-bottom:10px}
.wx-src a{font-size:12px;letter-spacing:.02em;color:var(--muted,#6b7a80);text-decoration:none;opacity:.8}
.wx-src a:hover{opacity:1;text-decoration:underline}
/* seamless loops: JS fills each track to cover the viewport and sets the exact one-set distance */
@keyframes mqx{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-1 * var(--loop)),0,0)}}
.loop-ready{animation-name:mqx!important;will-change:transform}
/* atlas: constant-size labels, collision hiding, selected label wins */
.atlas .pt.lab-x text.lab{opacity:0}
.atlas .pt.on text.lab,.atlas .pt:hover text.lab,.atlas .pt:focus text.lab{opacity:1!important}
.atlas .cluster circle{vector-effect:non-scaling-stroke}
.map-sec .atlas-tools{position:static;margin:0 clamp(20px,3vw,40px) 14px;padding-top:8px}
.atlas .pt circle{vector-effect:non-scaling-stroke}
.atlas .pt circle.dot{stroke-width:1.5px}
.atlas .pt circle.halo{stroke-width:2px}
.atlas .land-fill{fill:url(#lp);stroke:none}
.atlas #lp circle{fill:rgba(201,213,168,.5)}
.atlas .land-edge{fill:none;stroke:rgba(201,213,168,.22);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.map-sec .atlas svg{height:min(calc(100vh - 150px),760px)!important;min-height:400px}
@media (max-width:980px){.map-sec .atlas svg{height:min(68vh,540px)!important;min-height:320px}}
/* rider board */
.bd-top{display:flex;gap:16px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin:28px 0 18px}
.bd-top select{font:inherit;padding:10px 14px;border-radius:10px;border:1px solid var(--line);background:#fff;min-width:260px}
#bd-list{border-top:1px solid var(--line)}
.bd-row{display:flex;justify-content:space-between;gap:20px;padding:18px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.bd-row:hover b{color:var(--mc-hi,#ff5a1f)}
.bd-row b{display:block;font:700 18px/1.3 var(--body)}
.bd-row small,.bd-post small{color:var(--muted);font-size:13.5px}
.bd-n{flex:none;color:var(--muted);font-size:14px;align-self:center}
.bd-form{display:grid;gap:14px;max-width:720px;margin-top:40px;padding:28px;background:#fff;border-radius:16px;border:1px solid var(--line)}
.bd-form label{display:grid;gap:6px;font-size:14px;font-weight:600}
.bd-form input,.bd-form select,.bd-form textarea{font:inherit;font-weight:400;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#fff}
.bd-form .btn{justify-self:start}
.bd-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.bd-back{display:inline-block;margin:6px 0 22px;font-size:14px}
.bd-post{padding:20px 0;border-top:1px solid var(--line)}
.bd-post header{display:flex;gap:12px;align-items:baseline;margin-bottom:8px}
.bd-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
.bd-rep{margin-left:auto;background:none;border:0;color:var(--muted);font-size:12.5px;cursor:pointer;text-decoration:underline}

/* ===== Give / claim / admin ===== */
.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}
.gx-free{margin:26px 0 0;padding:16px 18px;border-radius:12px;background:rgba(255,255,255,.07);font-size:16px;line-height:1.5}
.gx-free a{color:inherit;text-decoration:underline}
.gx-how{margin:26px 0 0;padding:0;list-style:none;display:grid;gap:10px;counter-reset:gx}
.gx-how li{counter-increment:gx;display:flex;gap:12px;align-items:baseline;font-size:16px;color:var(--muted-dk,#b9c4c9)}
.gx-how li::before{content:counter(gx);flex:none;width:26px;height:26px;border-radius:50%;background:var(--sage,#7fa18a);color:#08222E;font:800 13px/26px var(--body);text-align:center}
.gx-how b{color:#fff}
.picker.gx{padding:26px 28px}
.gx fieldset{border:0;margin:0 0 22px;padding:0}
.gx legend{font:800 13px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}
.gx-tiers{display:grid;gap:8px}
.gx-tier{position:relative;display:grid;grid-template-columns:auto 1fr;gap:2px 12px;padding:14px 16px;border-radius:12px;border:1.5px solid var(--line,#dfe5e3);cursor:pointer;transition:border-color .2s,background .2s}
.gx-tier input{grid-row:1/4;margin-top:4px;accent-color:var(--mc-hi,#ff5a1f);width:18px;height:18px}
.gx-tier.on{border-color:var(--mc-hi,#ff5a1f);background:rgba(255,90,31,.06)}
.gx-tier:focus-within{outline:3px solid var(--ink,#08222E);outline-offset:2px}
.gx-top{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.gx-top b{font:800 22px/1 var(--display);font-stretch:112%}
.gx-top span{font-weight:700}
.gx-top em{font-style:normal;font-size:12px;font-weight:700;padding:3px 8px;border-radius:99px;background:var(--mc-hi,#ff5a1f);color:#fff}
.gx-cap{font-size:13px;color:var(--muted,#5b6b72)}
.gx-left{font-weight:700;color:var(--ink,#08222E)}
.gx-perk{font-size:14px;line-height:1.45;color:var(--muted,#5b6b72);display:none}
.gx-tier.on .gx-perk{display:block}
.gx-spwrap{margin-top:12px}
.gx-spwrap summary{cursor:pointer;font-weight:700;padding:8px 0}
.gx select,.gx input:not([type=radio]):not([type=checkbox]),.gx textarea{width:100%;font:inherit;padding:12px 14px;border-radius:10px;border:1px solid var(--line,#dfe5e3);background:#fff;color:var(--ink,#08222E)}
.gx label{display:grid;gap:6px;font-size:14px;font-weight:600;margin:0 0 12px}
.gx label.gx-r{display:flex;gap:10px;align-items:center;font-weight:500;font-size:15px}
.gx-amt{font-size:16px;margin:4px 0 12px}
.gx-steps{list-style:none;padding:0;margin:18px 0;display:grid;gap:8px;counter-reset:st}
.gx-steps li{counter-increment:st;display:flex;gap:10px;align-items:center;color:var(--muted,#5b6b72)}
.gx-steps li::before{content:counter(st);width:24px;height:24px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font:700 12px/1 var(--body);flex:none}
.gx-steps li.done{color:var(--ink,#08222E);font-weight:700}
.gx-steps li.done::before{content:"✓";background:var(--sage,#7fa18a);border-color:var(--sage,#7fa18a);color:#08222E}
.gx-link{width:100%;margin:8px 0;font:13px/1.4 ui-monospace,monospace}
.gx-closed{padding:12px 14px;border-radius:10px;background:#fff4e5;color:#5a3600}
.gx-faq{border-top:1px solid var(--line,#dfe5e3);padding:14px 0}
.gx-faq summary{cursor:pointer;font:700 18px/1.3 var(--body)}
.gx-faq p{margin:10px 0 0;max-width:760px;color:var(--muted,#5b6b72);line-height:1.6}
.btn.sm{padding:8px 14px;font-size:14px}
.cl-box{max-width:760px}
.cl-warn{padding:12px 14px;border-radius:10px;background:#fff4e5;color:#5a3600}
.cl-ok{padding:12px 14px;border-radius:10px;background:#e8f5ec;color:#0f4d2a}
.cl-ents{list-style:none;padding:0;margin:8px 0 24px}
.cl-ent{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line,#dfe5e3)}
.cl-ent small{color:var(--muted,#5b6b72)}
.cl-ent.fulfilled small{color:#0f4d2a;font-weight:700}
.ad-head{display:flex;justify-content:space-between;align-items:center}
.ad-msg{min-height:22px}.ad-msg.bad{color:#b3261e}
.ad-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);gap:28px;align-items:start}
.ad-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.ad-tab{border:1px solid var(--line,#dfe5e3);background:#fff;border-radius:99px;padding:7px 12px;font:600 13px var(--body);cursor:pointer}
.ad-tab.on{background:var(--ink,#08222E);color:#fff}
.ad-t{width:100%;border-collapse:collapse;font-size:13.5px}
.ad-t th,.ad-t td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line,#dfe5e3);vertical-align:top}
.ad-t tbody tr{cursor:pointer}.ad-t tbody tr:hover,.ad-t tbody tr:focus{background:#f3f6f5;outline:none}
.ad-side{position:sticky;top:96px;background:#fff;border:1px solid var(--line,#dfe5e3);border-radius:14px;padding:18px;max-height:calc(100vh - 120px);overflow:auto}
.ad-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px}.ad-dl dt{color:var(--muted,#5b6b72)}.ad-dl dd{margin:0;overflow-wrap:anywhere}
.ad-acts{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.ad-ent{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line,#dfe5e3);font-size:14px}.ad-ent span{flex:1 1 100%}
.ad-log{font-size:12.5px;padding-left:16px;color:var(--muted,#5b6b72)}
.bd-form .ck{display:flex;gap:8px;align-items:flex-start;font-weight:500}
@media (max-width:900px){.ad-grid{grid-template-columns:1fr}.ad-side{position:static;max-height:none}}

/* ===== Augment pass: principles, status ribbon, proof bar, scroll choreography ===== */
:root{--sun:#FFE01B;--coral:#FF5A1F;--mint:#7FE7DC}
.sec.sun{background:var(--sun);color:var(--ink)}
.pq-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px}
.pq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pq{margin:0;background:#fff;border:2px solid var(--ink);border-radius:22px;padding:28px 26px 22px;box-shadow:8px 8px 0 var(--ink);display:flex;flex-direction:column;justify-content:space-between;min-height:220px;transition:transform .25s,box-shadow .25s}
.pq:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 var(--ink)}
.pq-1{background:var(--ink);color:#fff}.pq-1 figcaption{color:var(--mint)}
.pq-2{background:var(--mint)}
.pq blockquote{margin:0;font:800 clamp(21px,2.1vw,28px)/1.18 var(--display);font-stretch:112%;letter-spacing:-.015em}
.pq blockquote::before{content:"\201C";display:block;font:900 64px/0.6 var(--display);color:var(--coral);margin-bottom:14px}
.pq figcaption{margin-top:22px;font:700 12.5px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pq figcaption::before{content:"";display:inline-block;width:22px;height:2px;background:currentColor;vertical-align:middle;margin-right:10px}
@media (max-width:980px){.pq-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.pq-grid{grid-template-columns:1fr}.pq-head{display:block}}

.sxw{position:relative;background:var(--ink);padding:18px 0;overflow:hidden;border-top:3px solid var(--sun);border-bottom:3px solid var(--sun)}
.sxr{display:flex;width:max-content;animation:sxm 140s linear infinite}
.sxr.rev{animation-direction:reverse;margin-top:12px}
.sxw:hover .sxr,.sxw:focus-within .sxr,.sxw.paused .sxr{animation-play-state:paused}
.sxt{display:flex;gap:12px;padding-right:12px}
@keyframes sxm{to{transform:translateX(-50%)}}
.sx{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;text-decoration:none;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:99px;padding:8px 16px 8px 8px;font-size:14px;transition:background .2s,transform .2s}
.sx:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.sx b{font:800 10.5px var(--body);letter-spacing:.09em;text-transform:uppercase;border-radius:99px;padding:5px 9px;background:var(--mint);color:var(--ink)}
.sx strong{font:800 15px var(--display);font-stretch:112%}
.sx span{color:rgba(255,255,255,.66)}
.sx-open b{background:var(--sun)}.sx-flag b{background:var(--coral);color:#fff}.sx-free b{background:#fff}.sx-topic b{background:transparent;color:var(--mint);border:1px solid var(--mint)}
.sx-taken b{background:rgba(255,255,255,.2);color:#fff}
.sx-pause{position:absolute;right:12px;bottom:10px;background:var(--ink);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:99px;font:600 12px var(--body);padding:5px 12px;cursor:pointer;opacity:.75}
.sx-pause:hover,.sx-pause:focus-visible{opacity:1}
@media (prefers-reduced-motion:reduce){.sxr{animation:none}.sxw{overflow-x:auto}.sx-pause{display:none}}

.pbar{background:var(--sun);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.pbar-in{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}
.pbar-in>div{padding:26px 18px;border-left:2px solid var(--ink)}
.pbar-in>div:first-child{border-left:0}
.pbar strong{display:block;font:900 clamp(30px,3.4vw,46px)/1 var(--display);font-stretch:125%;letter-spacing:-.03em}
.pbar span{display:block;margin-top:8px;font:600 13.5px/1.35 var(--body)}
@media (max-width:980px){.pbar-in{grid-template-columns:repeat(3,1fr)}.pbar-in>div:nth-child(4){border-left:0}.pbar-in>div:nth-child(n+4){border-top:2px solid var(--ink)}}
@media (max-width:560px){.pbar-in{grid-template-columns:repeat(2,1fr)}.pbar-in>div{border-left:0!important;border-top:2px solid var(--ink)}.pbar-in>div:nth-child(-n+2){border-top:0}.pbar-in>div:nth-child(even){border-left:2px solid var(--ink)!important}}

/* scroll choreography (JS adds .sr-on; no JS or reduced motion = everything visible) */
.sr-on .sr{opacity:0;transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .95s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--sd,0)*85ms)}
.sr-on .sr-l{transform:translateX(-64px)}
.sr-on .sr-r{transform:translateX(64px)}
.sr-on .sr-t{transform:translateY(-30px)}
.sr-on .sr-u{transform:translateY(48px)}
.sr-on .sr-z{transform:scale(.92)}
.sr-on .sr.sr-in{opacity:1;transform:none}

/* ===== Banner row (replaces the chip ticker): one slow row of photo + color-block banners ===== */
.bnw{position:relative;background:var(--sun);padding:34px 0 30px;overflow:hidden;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.bnr{display:flex;width:max-content;animation:bnm var(--bnd,260s) linear infinite}
.bnw:hover .bnr,.bnw:focus-within .bnr,.bnw.paused .bnr{animation-play-state:paused}
.bnt{display:flex;gap:18px;padding-right:18px}
@keyframes bnm{to{transform:translateX(-50%)}}
.bn{position:relative;flex:0 0 auto;width:290px;height:190px;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 20px;text-decoration:none;color:#fff;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);transition:transform .25s,box-shadow .25s;isolation:isolate}
.bn:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--ink)}
.bn>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s}
.bn:hover>img{transform:scale(1.06)}
.bn:not(.bn-block)::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,22,40,0) 30%,rgba(10,22,40,.82))}
.bn b{position:absolute;top:14px;left:14px;font:800 10.5px var(--body);letter-spacing:.09em;text-transform:uppercase;border-radius:99px;padding:6px 10px;background:#fff;color:var(--ink)}
.bn-open b{background:var(--sun)}.bn-flag b{background:var(--coral);color:#fff}
.bn strong{font:800 24px/1.05 var(--display);font-stretch:112%;letter-spacing:-.01em}
.bn span{margin-top:6px;font:500 14px/1.3 var(--body);opacity:.85}
.bn-block{width:240px}
.bn-block strong{font-size:30px}
.bn-ink{background:var(--ink)}.bn-ink b{background:var(--sun)}
.bn-sun{background:#fff;color:var(--ink)}.bn-sun b{background:var(--ink);color:#fff}
.bn-mint{background:var(--mint);color:var(--ink)}.bn-mint b{background:var(--ink);color:#fff}
.bn-coral{background:var(--coral)}.bn-coral b{background:#fff;color:var(--coral)}
.bn-taken b{background:var(--ink)!important;color:#fff!important}
.bn-pause{position:absolute;right:16px;bottom:8px;background:var(--ink);color:#fff;border:0;border-radius:99px;font:600 12px var(--body);padding:5px 12px;cursor:pointer}
@media (max-width:640px){.bn{width:230px;height:160px}.bn-block{width:200px}.bn strong{font-size:20px}}
@media (prefers-reduced-motion:reduce){.bnr{animation:none}.bnw{overflow-x:auto}.bn-pause{display:none}}

/* ===== Home pass 2: palette, tier cards, spine slider, proof bar, newsletter ===== */
:root{--sage:#FF6A13;--coral:#FF6A13}
.btn-sun{background:var(--sun);color:var(--ink);font-weight:700}
.btn-sun:hover{background:#fff}

/* proof bar v2 */
.pbar{background:var(--sun)}
.pbar-in>div{padding:30px 22px 26px;position:relative}
.pbar strong{font:900 clamp(34px,3.8vw,54px)/.95 var(--display);font-stretch:125%;letter-spacing:-.035em;color:var(--ink)}
.pbar-in>div:last-child strong{display:inline-block;background:var(--ink);color:var(--sun);padding:6px 14px 8px;border-radius:12px;transform:rotate(-3deg)}
.pbar span{margin-top:12px;font:700 12px/1.4 var(--body);letter-spacing:.09em;text-transform:uppercase;color:rgba(4,22,31,.78);max-width:15em}
.pbar-in>div::after{content:"";position:absolute;left:22px;top:18px;width:26px;height:4px;border-radius:2px;background:var(--coral)}

/* tier cards (home fund section) */
.tc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tcard{position:relative;display:flex;flex-direction:column;gap:6px;padding:22px 22px 20px;border-radius:20px;text-decoration:none;border:2px solid var(--ink);box-shadow:6px 6px 0 rgba(0,0,0,.35);transition:transform .25s,box-shadow .25s;min-height:210px}
.tcard:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 rgba(0,0,0,.45)}
.tcard h3{margin:4px 0 0;font:800 22px/1.1 var(--display);font-stretch:112%}
.tc-amt{font:900 40px/1 var(--display);font-stretch:125%;letter-spacing:-.03em}
.tcard p{margin:4px 0 10px;font-size:14.5px;line-height:1.45;opacity:.85}
.tc-cap{align-self:flex-start;font:800 10.5px var(--body);letter-spacing:.09em;text-transform:uppercase;padding:5px 10px;border-radius:99px;background:rgba(4,22,31,.1)}
.tc-go{margin-top:auto;font:700 14px var(--body);display:inline-flex;align-items:center;gap:6px}
.tc-go svg{width:14px;height:14px}
.tc-sun{background:var(--sun);color:var(--ink)}
.tc-white{background:#fff;color:var(--ink)}
.tc-mint{background:var(--mint);color:var(--ink)}
.tc-ink{background:var(--deep);color:#fff;border-color:var(--sun)}.tc-ink .tc-cap{background:var(--sun);color:var(--ink)}
.tc-coral{background:var(--coral);color:#fff}.tc-coral .tc-cap{background:#fff;color:var(--coral)}
.tc-free{background:transparent;color:#fff;border:2px dashed var(--sun)}.tc-free .tc-amt{color:var(--sun)}.tc-free .tc-cap{background:var(--sun);color:var(--ink)}
@media (max-width:640px){.tc-grid{grid-template-columns:1fr}}

/* spine: photo slider behind the line */
.sp-photo{position:relative;background:var(--ink);color:#fff;overflow:hidden;isolation:isolate;padding:clamp(110px,14vw,190px) 0}
.sp-bg{position:absolute;inset:0;z-index:-2}
.sp-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:spx 36s infinite;animation-delay:calc(var(--i)*6s);transform:scale(1.08)}
.sp-bg img:first-child{opacity:1}
@keyframes spx{0%{opacity:0;transform:scale(1.08)}4%{opacity:1}17%{opacity:1}22%{opacity:0;transform:scale(1)}100%{opacity:0}}
.sp-photo::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,rgba(4,22,31,.55),rgba(4,22,31,.86))}
.sp-photo .sp-line{color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.sp-photo .sp-line em{color:var(--sun)}
.sp-photo .sp-sub{color:rgba(255,255,255,.85)}
.sp-pause{position:absolute;right:18px;bottom:16px;background:rgba(4,22,31,.7);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:99px;font:600 12px var(--body);padding:6px 13px;cursor:pointer}
.sp-photo.paused .sp-bg img{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.sp-bg img{animation:none}.sp-pause{display:none}}

/* campaigns line (every signup) */
.camp-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:16px 0 0;font-size:14.5px;line-height:1.45;color:rgba(255,255,255,.82)}
.camp-line a{color:var(--sun);font-weight:700}
.camp-dot{width:9px;height:9px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 0 rgba(255,224,27,.7);animation:cdot 2s infinite}
@keyframes cdot{70%{box-shadow:0 0 0 9px rgba(255,224,27,0)}100%{box-shadow:0 0 0 0 rgba(255,224,27,0)}}

/* footer newsletter */
.foot-nl{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:end;padding:0 0 44px;margin-bottom:48px;border-bottom:1px solid var(--line-dk)}
.foot-nl h3{margin:6px 0 8px;font:900 clamp(28px,3vw,40px)/1 var(--display);font-stretch:118%;color:#fff}
.foot-nl p{margin:0;color:rgba(255,255,255,.7)}
@media (max-width:800px){.foot-nl{grid-template-columns:1fr;gap:20px}}

/* newsletter pop-up */
.nlp{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px}
.nlp[hidden]{display:none}
.nlp-back{position:absolute;inset:0;background:rgba(4,22,31,.6);backdrop-filter:blur(6px);opacity:0;transition:opacity .35s}
.nlp-card{position:relative;display:grid;grid-template-columns:1fr 1.15fr;width:min(940px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--ink);color:#fff;border-radius:26px;border:3px solid var(--sun);box-shadow:14px 14px 0 var(--sun);opacity:0;transform:translateY(40px) scale(.96);transition:opacity .45s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1)}
.nlp.on .nlp-back{opacity:1}.nlp.on .nlp-card{opacity:1;transform:none}
.nlp-ph{position:relative;min-height:420px}
.nlp-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nlp-sticker{position:absolute;left:22px;bottom:22px;background:var(--sun);color:var(--ink);font:900 20px/1 var(--display);font-stretch:118%;text-transform:uppercase;padding:14px 16px;border-radius:14px;transform:rotate(-5deg);box-shadow:5px 5px 0 var(--ink)}
.nlp-body{padding:44px 40px 30px}
.nlp-body h2{margin:6px 0 12px;font:900 clamp(38px,4.4vw,58px)/.95 var(--display);font-stretch:118%;letter-spacing:-.03em}
.nlp-body h2 em{font-style:normal;color:var(--sun)}
.nlp-lede{margin:0 0 22px;color:rgba(255,255,255,.78)}
.nlp .signup{max-width:none}
.nlp-x{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:var(--sun);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.nlp-x svg{width:18px;height:18px}
.nlp-later{margin-top:18px;background:none;border:0;color:rgba(255,255,255,.6);font:500 13px var(--body);text-decoration:underline;cursor:pointer;padding:0}
@media (max-width:760px){.nlp-card{grid-template-columns:1fr}.nlp-ph{min-height:170px}.nlp-body{padding:28px 24px 22px}}

/* partner logos */
.pl-kc2 img{height:56px;width:auto}

/* signup feedback */
.dark .form-note,.foot .form-note,.nlp .form-note{color:#fff;font-size:14.5px}
.form-note[data-state=success],.form-note.nl-ok{color:var(--sun)!important;font-weight:700}
.form-note[data-state=success]::before{content:"✓ "}
.form-note[data-state=error]{color:#FFB199!important}
.nlp .nl-consent,.dark .nl-consent,.foot .nl-consent,.nlp label,.foot label{color:rgba(255,255,255,.8)}
.nlp-done{display:flex;flex-direction:column;align-items:flex-start;gap:4px;animation:nlin .5s cubic-bezier(.2,.7,.2,1)}
.nlp-check{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--sun);color:var(--ink);font:900 34px/1 var(--display);margin-bottom:14px;animation:nlpop .6s cubic-bezier(.3,1.6,.5,1)}
.nlp-done .btn{margin-top:22px}
@keyframes nlin{from{opacity:0;transform:translateY(14px)}}
@keyframes nlpop{from{transform:scale(0)}}

/* fix pass: proof bar fit, compact footer signup, Kite Creatures name */
.pbar .pbar-in{max-width:1560px}
.pbar-in>div{min-width:0;padding:30px 16px 26px}
.pbar strong{font-size:clamp(26px,2.75vw,46px);white-space:nowrap}
.pbar-in>div::after{left:16px}
.foot-nl{align-items:center;padding-bottom:36px}
.foot-nl .signup{display:flex;flex-wrap:wrap;gap:10px;margin:0;max-width:none}
.foot-nl .signup input{flex:1 1 220px;min-width:0;height:50px;margin:0}
.foot-nl .signup .btn{height:50px;margin:0}
.foot-nl .signup label:not(.skip){flex-basis:100%;margin:2px 0 0;font-size:12.5px;line-height:1.35}
.foot-nl .signup .form-note{flex-basis:100%;margin:4px 0 0;font-size:13px}
.foot-nl .camp-line{margin-top:10px;font-size:13.5px}
.pl-kc2{display:inline-flex;align-items:center;gap:12px}
.pl-kc2 b{font:900 24px/1 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}

/* ===== Board v2 ===== */
.bd-hero{position:relative;background:var(--ink);color:#fff;padding:150px 0 70px;overflow:hidden}
.bd-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38}
.bd-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,31,.92) 30%,rgba(4,22,31,.35))}
.bd-hero .wrap{position:relative;z-index:1}
.bd-hero .kicker{color:var(--sun)}
.bd-hero h1{margin:0;max-width:13em;font:900 clamp(44px,6.4vw,92px)/.92 var(--display);font-stretch:125%;letter-spacing:-.035em;text-transform:uppercase}
.bd-hero h1 em{font-style:normal;color:var(--sun);display:block}
.bd-lede{max-width:36em;margin:22px 0 28px;font-size:19px;color:rgba(255,255,255,.82)}
.bd-newbtn{font-size:17px;padding:16px 26px}
.bd-sec{background:var(--foam);padding:56px 0 90px}
.bd-shell{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px;align-items:start}
.bd-side{position:sticky;top:92px;max-height:calc(100vh - 110px);overflow:auto;background:#fff;border:2px solid var(--ink);border-radius:18px;padding:18px 14px;box-shadow:6px 6px 0 var(--sun)}
.bd-side-k{margin:6px 8px 10px;font:800 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.bd-side-k+div{margin-bottom:18px}
.bd-find{width:100%;font:inherit;font-size:14px;padding:9px 12px;margin:0 0 10px;border-radius:10px;border:1px solid var(--line)}
.bd-reg{margin:12px 8px 4px;font:700 11.5px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--coral)}
.bd-b{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--ink);font-size:14.5px;font-weight:600}
.bd-b i{font-style:normal;font-size:12px;font-weight:700;min-width:24px;text-align:center;padding:3px 7px;border-radius:999px;background:var(--foam)}
.bd-b:hover{background:var(--foam)}
.bd-b.on{background:var(--ink);color:#fff}.bd-b.on i{background:var(--sun);color:var(--ink)}
.bd-top{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:0 0 18px}
.bd-top h2{margin:0;font:900 clamp(30px,3.4vw,46px)/1 var(--display);font-stretch:118%;letter-spacing:-.02em}
.bd-crumb{margin:0 0 8px;font:700 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
#bd-list{display:grid;gap:10px}
.bd-row{display:flex;align-items:center;gap:16px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s,border-color .2s}
.bd-row:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink);border-color:var(--ink)}
.bd-row:hover b{color:inherit}
.bd-l{flex:1;min-width:0}
.bd-row b{display:flex;align-items:center;gap:8px;font:700 17.5px/1.3 var(--body)}
.bd-row small{display:block;margin-top:4px;color:var(--muted);font-size:13.5px}
.bd-tag{display:inline-block;margin-right:6px;padding:3px 9px;border-radius:999px;background:var(--foam);color:var(--ink);font:700 11.5px/1.3 var(--body);letter-spacing:.04em}
.bd-pin{font-style:normal;font:800 10px/1 var(--body);letter-spacing:.1em;padding:4px 7px;border-radius:6px;background:var(--sun);color:var(--ink)}
.bd-n{flex:none;display:grid;justify-items:center;min-width:64px}
.bd-n strong{font:900 24px/1 var(--display)}.bd-n small{margin:2px 0 0!important;font-size:11.5px!important;text-transform:uppercase;letter-spacing:.08em}
.bd-av{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font:800 14px/1 var(--body);border:2px solid var(--ink)}
.bd-av-sun{background:var(--sun);color:var(--ink)}.bd-av-mint{background:var(--mint);color:var(--ink)}.bd-av-coral{background:var(--coral);color:#fff}.bd-av-ink{background:var(--ink);color:#fff}
.bd-av-wws{background:var(--ink);color:var(--sun);font-size:11px}
.bd-empty{padding:40px;background:#fff;border:2px dashed var(--ink);border-radius:16px;text-align:center}.bd-empty b{font:900 24px/1.1 var(--display)}.bd-empty p{margin:8px 0 18px;color:var(--muted)}
.bd-rules{margin:28px 0 0;font-size:13.5px;color:var(--muted);max-width:52em}
.bd-th{margin:10px 0 18px;font:900 clamp(28px,3vw,42px)/1.05 var(--display);font-stretch:118%}
.bd-back{display:inline-block;margin:0 0 18px;font-weight:600;font-size:14px}
.bd-post{display:flex;gap:16px;padding:20px;margin:0 0 10px;background:#fff;border:1px solid var(--line);border-radius:14px}
.bd-op{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--sun)}
.bd-pw{flex:1;min-width:0}
.bd-post header{display:flex;gap:12px;align-items:baseline;margin-bottom:8px}
.bd-post small{color:var(--muted);font-size:13px}
.bd-reply{margin-top:22px;max-width:none}
.bd-modal{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:20px}
.bd-modal[hidden]{display:none}
.bd-mback{position:absolute;inset:0;background:rgba(4,22,31,.6);backdrop-filter:blur(6px);opacity:0;transition:opacity .25s}
.bd-mcard{position:relative;width:min(640px,100%);max-height:calc(100vh - 40px);overflow:auto;margin:0;border:2px solid var(--ink);box-shadow:10px 10px 0 var(--sun);opacity:0;transform:translateY(24px);transition:opacity .3s,transform .35s cubic-bezier(.2,.7,.2,1)}
.bd-modal.on .bd-mback{opacity:1}.bd-modal.on .bd-mcard{opacity:1;transform:none}
.bd-mcard h3{margin:0;font:900 30px/1 var(--display);font-stretch:118%}
.bd-x{position:absolute;right:14px;top:10px;background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:var(--ink)}
@media (max-width:900px){.bd-shell{grid-template-columns:1fr}.bd-side{position:static;max-height:none}.bd-chs{max-height:260px;overflow:auto}}
@media (max-width:560px){.bd-top .btn{display:none}.bd-row{padding:14px}.bd-av{width:36px;height:36px}}

/* ===== Rider board v3: full-width three-pane app ===== */
.bx{padding-top:76px;background:#EEF1F2;--bx-h:calc(100vh - 76px - 74px);--bx-line:#DCE2E5}
@supports (height:100dvh){.bx{--bx-h:calc(100dvh - 76px - 74px)}}
.bx-bar{background:var(--ink);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.bx-bar-in{display:flex;align-items:center;gap:28px;height:74px;padding:0 24px;max-width:none}
.bx-id{display:flex;align-items:center;gap:14px;min-width:0}
.bx-logo{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--sun);color:var(--ink);flex:none}.bx-logo svg{width:26px;height:26px}
.bx-id h1{margin:0;font:800 20px/1.1 var(--display);font-stretch:112%;letter-spacing:-.01em}
.bx-id p{margin:3px 0 0;font-size:13px;color:rgba(255,255,255,.66);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bx-stats{display:flex;gap:22px;margin-left:auto;font-size:13px;color:rgba(255,255,255,.66)}
.bx-stats b{color:#fff;font:800 15px/1 var(--body);margin-right:2px}
.bx-new{display:inline-flex;align-items:center;gap:6px;flex:none;padding:11px 18px;border-radius:10px;border:0;background:var(--sun);color:var(--ink);font:700 14.5px/1 var(--body);cursor:pointer;transition:filter .15s,transform .15s}
.bx-new:hover{filter:brightness(.95)}.bx-new:active{transform:translateY(1px)}.bx-new span{font-size:18px;line-height:0}
.bx-new.sm,.bx-ghost.sm{padding:8px 14px;font-size:13.5px}
.bx-ghost{display:inline-flex;align-items:center;padding:11px 16px;border-radius:10px;border:1px solid var(--bx-line);background:#fff;color:var(--ink);font:600 14px/1 var(--body);text-decoration:none;cursor:pointer}
.bx-ghost:hover{border-color:var(--ink)}
.bx-app{display:grid;grid-template-columns:264px minmax(340px,440px) minmax(0,1fr);height:var(--bx-h);min-height:560px;border-bottom:1px solid var(--bx-line)}
.bx-side,.bx-list,.bx-read{min-height:0;overflow:auto;overscroll-behavior:contain}
.bx-side{background:#F7F9FA;border-right:1px solid var(--bx-line);padding:14px 10px 28px}
.bx-boards{display:grid;gap:2px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--bx-line)}
.bx-b{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:500}
.bx-b:hover{background:#E8EDEF}
.bx-b.on{background:var(--ink);color:#fff}
.bx-ico{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#E2E8EB;font-size:12px;font-weight:700}
.bx-b.on .bx-ico{background:var(--sun);color:var(--ink)}
.bx-bl{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bx-b i{font-style:normal;font-size:11.5px;font-weight:700;color:var(--muted)}.bx-b.on i{color:var(--sun)}
.bx-side-h{margin:4px 10px 8px;font:700 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.bx-find{width:100%;font:inherit;font-size:13.5px;padding:8px 11px;margin:0 0 8px;border-radius:8px;border:1px solid var(--bx-line);background:#fff}
.bx-reg{margin:0 0 2px}
.bx-regh{display:flex;align-items:center;width:100%;gap:8px;padding:8px 10px;border:0;background:none;border-radius:8px;cursor:pointer;font:600 13px/1.2 var(--body);color:var(--ink);text-align:left}
.bx-regh:hover{background:#E8EDEF}
.bx-regh::before{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s;flex:none;opacity:.6}
.bx-reg.open .bx-regh::before{transform:rotate(45deg)}
.bx-regh span{flex:1}.bx-regh i{font-style:normal;font-size:11.5px;color:var(--muted)}
.bx-regl{display:none;padding:0 0 6px 12px}.bx-reg.open .bx-regl{display:grid;gap:1px}
.bx-regl .bx-b{font-size:13.5px;padding:6px 10px}
.bx-list{background:#fff;border-right:1px solid var(--bx-line);display:flex;flex-direction:column}
.bx-lh{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);padding:16px 18px 12px;border-bottom:1px solid var(--bx-line)}
.bx-sel{display:none;width:100%;margin:0 0 12px;font:inherit;font-size:14px;padding:9px 12px;border-radius:8px;border:1px solid var(--bx-line);background:#fff}
.bx-lt{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.bx-lt h2{margin:0;font:800 22px/1.1 var(--display);font-stretch:110%;letter-spacing:-.01em}
.bx-crumb{margin:0 0 5px;font:700 11px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--bay)}
.bx-count{font-size:12.5px;color:var(--muted);white-space:nowrap}
.bx-tools{display:grid;gap:10px}
.bx-q{width:100%;font:inherit;font-size:14px;padding:9px 12px 9px 34px;border-radius:8px;border:1px solid var(--bx-line);background:#F7F9FA url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2355636A' stroke-width='2'%3E%3Ccircle cx='7' cy='7' r='5'/%3E%3Cpath d='M11 11l4 4'/%3E%3C/svg%3E") 11px 50%/14px no-repeat}
.bx-q:focus,.bx-find:focus,.bx-sel:focus{outline:2px solid var(--ink);outline-offset:-1px;background-color:#fff}
.bx-sort{display:flex;gap:4px;padding:3px;border-radius:9px;background:#EEF1F2}
.bx-sort button{flex:1;padding:7px 6px;border:0;border-radius:7px;background:none;font:600 12.5px/1 var(--body);color:var(--muted);cursor:pointer}
.bx-sort button.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(4,22,31,.12)}
.bx-rows{flex:1}
.bx-row{display:flex;gap:12px;padding:13px 18px;border-bottom:1px solid #EDF0F2;color:inherit;text-decoration:none;position:relative}
.bx-row:hover{background:#F7F9FA}
.bx-row.on{background:#FFFBE0}.bx-row.on::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ink)}
.bx-row .bx-av{width:34px;height:34px;font-size:12px}
.bx-rc{flex:1;min-width:0;display:grid;gap:3px}
.bx-rt{font:600 14.5px/1.35 var(--body);color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bx-rx{font-size:13px;line-height:1.4;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bx-rm{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.bx-tag{display:inline-block;padding:2px 8px;border-radius:6px;background:#E6F2F3;color:#0B5F6B;font:600 11.5px/1.5 var(--body);text-decoration:none;white-space:nowrap}
a.bx-tag:hover{background:#D4EAEC}
.bx-off{display:inline-block;padding:2px 7px;border-radius:6px;background:var(--ink);color:var(--sun);font:700 10.5px/1.5 var(--body);letter-spacing:.04em}
.bx-rn{flex:none;display:grid;justify-items:end;align-content:start;gap:4px;min-width:38px;padding-top:1px}
.bx-rn b{display:inline-grid;place-items:center;min-width:28px;padding:3px 7px;border-radius:999px;background:#EEF1F2;font:700 12px/1.2 var(--body);color:var(--ink)}
.bx-rn small{font-size:11.5px;color:var(--muted)}
.bx-more{display:block;width:calc(100% - 36px);margin:14px 18px 22px;padding:11px;border:1px dashed var(--bx-line);border-radius:10px;background:#fff;font:600 13.5px/1 var(--body);color:var(--ink);cursor:pointer}
.bx-more:hover{border-color:var(--ink)}
.bx-sk{height:64px;margin:10px 18px;border-radius:10px;background:linear-gradient(90deg,#EEF1F2 25%,#F7F9FA 50%,#EEF1F2 75%);background-size:200% 100%;animation:bxsk 1.2s infinite linear}
@keyframes bxsk{to{background-position:-200% 0}}
.bx-empty{margin:28px 18px;padding:32px 22px;border:1px dashed var(--bx-line);border-radius:12px;text-align:center}
.bx-empty b{display:block;font:700 16px/1.3 var(--body)}.bx-empty p{margin:6px 0 16px;color:var(--muted);font-size:14px}
.bx-none{padding:18px;color:var(--muted);font-size:14px}
.bx-av{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font:700 13px/1 var(--body)}
.bx-av-sun{background:#FFF2A6;color:#5A4A00}.bx-av-mint{background:#CFF5F1;color:#0B5F6B}.bx-av-sky{background:#D8E9FF;color:#1D4A86}.bx-av-ink{background:#DCE2E5;color:var(--ink)}.bx-av-sand{background:#F1E6D6;color:#6A4B22}
.bx-av-wws{background:var(--ink);color:var(--sun);font-size:10.5px;letter-spacing:.02em}
.bx-read{background:#fff}
.bx-ov,.bx-th,.bx-posts,.bx-compose{max-width:820px;margin:0 auto;padding-left:40px;padding-right:40px}
.bx-ov{padding-top:44px;padding-bottom:50px}
.bx-ov h2{margin:0;font:800 clamp(30px,2.8vw,42px)/1.05 var(--display);font-stretch:112%;letter-spacing:-.02em}
.bx-ovl{margin:12px 0 22px;font-size:16.5px;line-height:1.55;color:var(--muted);max-width:38em}
.bx-ovs{display:flex;gap:36px;margin:0 0 24px;padding:18px 0;border-top:1px solid var(--bx-line);border-bottom:1px solid var(--bx-line)}
.bx-ovs b{display:block;font:800 28px/1 var(--display)}.bx-ovs span{font-size:13px;color:var(--muted)}
.bx-ovb{display:flex;gap:10px;flex-wrap:wrap}
.bx-h3{margin:34px 0 12px;font:700 12px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.bx-hot{display:grid;border:1px solid var(--bx-line);border-radius:12px;overflow:hidden}
.bx-hot a{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #EDF0F2;text-decoration:none;color:var(--ink);font-weight:600;font-size:14.5px}
.bx-hot a:last-child{border-bottom:0}.bx-hot a:hover{background:#F7F9FA}.bx-hot i{font-style:normal;font-weight:500;font-size:13px;color:var(--muted);white-space:nowrap}
.bx-rules{margin:0;padding:0 0 0 18px;display:grid;gap:6px;font-size:14px;color:var(--muted)}
.bx-th{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);padding-top:24px;padding-bottom:16px;border-bottom:1px solid var(--bx-line);max-width:none}
.bx-th>*{max-width:740px}
.bx-th h2{margin:10px 0 6px;font:800 clamp(24px,2.2vw,32px)/1.15 var(--display);font-stretch:108%;letter-spacing:-.015em}
.bx-tmeta{margin:0 0 14px;font-size:13.5px;color:var(--muted)}
.bx-acts{display:flex;gap:8px}
.bx-back{display:none;margin:0 0 12px;padding:0;border:0;background:none;font:600 14px/1 var(--body);color:var(--bay);cursor:pointer}
.bx-posts{padding-top:8px}
.bx-post{display:flex;gap:14px;padding:22px 0;border-bottom:1px solid #EDF0F2}
.bx-op{padding-top:24px}
.bx-op .bx-body{font-size:16.5px}
.bx-pw{flex:1;min-width:0}
.bx-post header{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px;font-size:14px}
.bx-post time{font-size:12.5px;color:var(--muted)}
.bx-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15.5px;line-height:1.65;color:#1B2B33}
.bx-rep{margin-left:auto;padding:0;border:0;background:none;font-size:12px;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .15s}
.bx-post:hover .bx-rep,.bx-rep:focus-visible,.bx-rep:disabled{opacity:1}.bx-rep:hover{text-decoration:underline}
.bx-div{margin:6px 0 0;padding:12px 0 0;font:700 11.5px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.bx-compose{padding-top:22px;padding-bottom:60px}
.bx-compose h3{margin:0 0 12px;font:700 16px/1 var(--body)}
.bx-compose label{display:grid;gap:5px;font-size:13px;font-weight:600;color:var(--muted);max-width:280px;margin-bottom:10px}
.bx-compose input,.bx-compose textarea{font:inherit;font-size:15px;padding:10px 12px;border-radius:10px;border:1px solid var(--bx-line);background:#fff;color:var(--ink)}
.bx-compose textarea{width:100%;min-height:110px;resize:vertical;line-height:1.5}
.bx-compose input:focus,.bx-compose textarea:focus{outline:2px solid var(--ink);outline-offset:-1px}
.bx-cf{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.bx-cf .form-note{margin:0;font-size:13px}
.bx-mcard{border:0;border-radius:16px;box-shadow:0 30px 80px rgba(4,22,31,.35);padding:28px}
.bx-mcard h3{font:800 24px/1.1 var(--display);font-stretch:110%}
.bx-mcard input,.bx-mcard select,.bx-mcard textarea{border-color:var(--bx-line);border-radius:10px}
.bx-mfoot{display:flex;justify-content:space-between;align-items:center;gap:14px}.bx-mfoot p{margin:0}
@media (max-width:1240px){.bx-app{grid-template-columns:minmax(320px,400px) minmax(0,1fr)}.bx-side{display:none}.bx-sel{display:block}.bx-stats{display:none}.bx-bar .bx-new{margin-left:auto}}
@media (max-width:860px){
 .bx{--bx-h:calc(100vh - 76px - 64px)}
 .bx-bar-in{height:64px;padding:0 16px}.bx-id p{display:none}
 .bx-app{grid-template-columns:1fr}
 .bx-read{display:none}.bx-app.reading .bx-read{display:block}.bx-app.reading .bx-list{display:none}
 .bx-back{display:inline-block}.bx-ov,.bx-th,.bx-posts,.bx-compose{padding-left:18px;padding-right:18px}
}
#bd-list.bx-rows{display:block;flex:1 0 auto;border-top:0;align-content:start}
.bx-rc{align-content:start}
.bx-ov,.bx-th,.bx-posts,.bx-compose{max-width:none;margin:0;padding-left:36px;padding-right:36px}
.bx-th>*,.bx-posts>*,.bx-compose>*{max-width:1080px}
.bx-ov>*{max-width:900px}
.bx-compose label{max-width:320px}
.bx-sort{position:relative}
.bx-sort button{position:relative;z-index:1;transition:color .2s}
.bx-sort button.on{background:none;box-shadow:none}
.bx-sortpill{position:absolute;top:3px;bottom:3px;left:0;width:0;border-radius:7px;background:#fff;box-shadow:0 1px 3px rgba(4,22,31,.16)}
.bx-sort.ready .bx-sortpill{transition:transform .32s cubic-bezier(.2,.8,.2,1),width .32s cubic-bezier(.2,.8,.2,1)}

/* spine slider v2: fast crossfade, previous photo held underneath, no blank frame */
.sp-bg{background:var(--ink)}
.sp-bg img{animation:none!important;opacity:0;transform:none;transition:opacity .7s ease;z-index:0}
.sp-bg img.was{opacity:1;z-index:1;transition:none}
.sp-bg img.on{opacity:1;z-index:2}
.pl-art img[src*="rideengine"]{max-height:88px!important;width:auto}
/* map flush to top: pills float over the map again (line 871 had made them static) */
.map-sec .atlas-tools{position:absolute!important;top:14px;left:clamp(20px,3vw,40px);margin:0!important;padding:0!important;z-index:3}
.map-sec .atlas-map{padding-top:0!important}
@media (max-width:980px){.map-sec .atlas-tools{top:10px;left:12px}}

/* ===== Initiatives v2 ===== */
.ini-nav{position:sticky;top:64px;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line,#e6e1d8)}
.ini-nav .wrap{display:flex;gap:6px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}
.ini-nav a{flex:0 0 auto;display:inline-flex;gap:10px;align-items:center;padding:10px 16px;border-radius:999px;font-weight:600;font-size:15px;color:var(--ink);text-decoration:none}
.ini-nav a span{font-size:12px;opacity:.5}
.ini-nav a:hover{background:rgba(4,22,31,.06)}
.ini{padding-bottom:clamp(60px,8vw,110px);scroll-margin-top:120px}
.ini:nth-of-type(odd){background:var(--foam,#f4ede3)}
.ini-band{position:relative;height:clamp(340px,56vh,600px);overflow:hidden;color:#fff;display:flex;align-items:flex-end}
.ini-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ini-band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,31,0) 35%,rgba(4,22,31,.78))}
.ini-band .wrap{position:relative;z-index:1;padding-bottom:clamp(28px,4vw,52px);width:100%}
.ini-band h2{color:#fff;margin:0}
.ini-k{display:flex;gap:14px;align-items:center;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:13px;margin:0 0 14px;color:rgba(255,255,255,.9)}
.ini-k span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--sage,#FF5A1F);color:#fff;letter-spacing:0}
.ini-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:clamp(18px,2.5vw,32px);margin-top:clamp(-56px,-4vw,-36px);position:relative;z-index:2}
.ini-c{background:#fff;border-radius:16px;padding:clamp(22px,2.4vw,32px);box-shadow:0 14px 40px rgba(4,22,31,.10);border-top:4px solid var(--sage,#FF5A1F)}
.ini-c h3{font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 14px;color:rgba(4,22,31,.6)}
.ini-what p{font-size:clamp(18px,1.5vw,21px);line-height:1.5;margin:0;color:var(--ink)}
.ini-ul{list-style:none;margin:0;padding:0}
.ini-ul li{position:relative;padding:9px 0 9px 28px;border-top:1px solid rgba(4,22,31,.08);font-size:16px;line-height:1.4}
.ini-ul li:first-child{border-top:0}
.ini-ul li::before{content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;border-left:2.5px solid var(--sage,#FF5A1F);border-bottom:2.5px solid var(--sage,#FF5A1F);transform:rotate(-45deg)}
.ini-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ini-nets{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.ini-net{display:block;padding:28px;border:1px solid var(--line-dk,rgba(255,255,255,.14));border-radius:16px;color:#fff;text-decoration:none;transition:background .2s,transform .2s}
.ini-net:hover{background:rgba(255,255,255,.05);transform:translateY(-3px)}
.ini-net h3{font-size:26px;margin:14px 0 8px;color:#fff}
.ini-net p{margin:0 0 8px}
.ini-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.1)}
.ini-close{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.ini-close .ini-cta{margin:0}
@media (max-width:980px){.ini-grid,.ini-nets{grid-template-columns:1fr}.ini-grid{margin-top:-28px}.ini-nav{top:56px}}

/* initiatives interactive */
.ix{display:grid;grid-template-columns:300px 1fr;gap:28px;margin-top:44px;background:#fff;border-radius:20px;padding:18px;box-shadow:0 14px 40px rgba(4,22,31,.08)}
.ix-tabs{display:flex;flex-direction:column;gap:4px}
.ix-tabs button{display:flex;gap:14px;align-items:center;text-align:left;padding:14px 16px;border:0;border-radius:12px;background:none;font:600 16px/1.3 inherit;color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.ix-tabs button span{font-size:12px;font-weight:700;opacity:.55;min-width:46px}
.ix-tabs button:hover{background:rgba(4,22,31,.05)}
.ix-tabs button[aria-selected=true]{background:var(--ink);color:#fff}
.ix-tabs button[aria-selected=true] span{opacity:.8;color:var(--sun,#FFC23D)}
.ix-pan{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;animation:ixin .35s ease}
.ix-ph{aspect-ratio:4/3;border-radius:14px;overflow:hidden}.ix-ph img{width:100%;height:100%;object-fit:cover}
.ix-pan p{font-size:18px;line-height:1.55;margin-top:12px}
@keyframes ixin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ix-strip{display:flex;gap:16px;overflow-x:auto;padding:14px max(20px,calc((100vw - 1200px)/2)) 20px;scroll-snap-type:x mandatory;cursor:grab;scrollbar-width:thin}
.ix-strip.drag{cursor:grabbing;scroll-snap-type:none}.ix-strip.drag a{pointer-events:none}
.ix-strip a{flex:0 0 260px;scroll-snap-align:start;position:relative;border-radius:14px;overflow:hidden;color:#fff;text-decoration:none;aspect-ratio:4/5}
.ix-strip img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ix-strip a:hover img{transform:scale(1.06)}
.ix-strip a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(4,22,31,.8))}
.ix-strip span,.ix-strip small{position:absolute;left:16px;z-index:1}.ix-strip span{bottom:30px;font-weight:800;font-size:19px}.ix-strip small{bottom:12px;opacity:.8}
.ix-pick{display:grid;grid-template-columns:340px 1fr;gap:28px;margin-top:44px;background:var(--ink);color:#fff;border-radius:20px;padding:28px;min-height:300px}
.ix-pick .muted{color:rgba(255,255,255,.7)}
.ix-pick select{width:100%;margin-top:18px;height:52px;border-radius:12px;padding:0 14px;font:600 16px inherit;border:0}
.ix-pick-r{display:grid;grid-template-columns:220px 1fr;gap:22px;animation:ixin .35s ease}
.ix-pick-r img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px}
.ix-pick-r h4{font-size:26px;margin:0 0 4px;color:#fff}.ix-pick-r .pl{opacity:.75;margin:0 0 12px}
.ix-pick-r .st{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;padding:5px 10px;border-radius:999px;background:var(--sage,#FF5A1F);margin-bottom:10px}
.ix-pick-r ul{margin:0;padding-left:18px}.ix-pick-r li{margin:6px 0;line-height:1.45}
.ix-pick-r a{color:var(--sun,#FFC23D);font-weight:700}
.ix-tiers{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.ix-tiers button{display:flex;flex-direction:column;gap:4px;padding:16px 22px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:none;color:#fff;cursor:pointer;text-align:left;font:inherit;transition:all .2s}
.ix-tiers button b{font-size:24px}.ix-tiers button span{font-size:14px;opacity:.8}
.ix-tiers button[aria-pressed=true]{background:#fff;color:var(--ink);transform:translateY(-3px)}
.ix-tp{margin-top:22px;max-width:760px;animation:ixin .35s ease}.ix-tp p{font-size:18px;line-height:1.55;color:rgba(255,255,255,.88);margin:0 0 18px}
@media (max-width:980px){.ix,.ix-pick,.ix-pan,.ix-pick-r{grid-template-columns:1fr}.ix-tabs{flex-direction:row;overflow-x:auto}.ix-tabs button{flex:0 0 auto}}

/* fix: hidden panels were forced visible by display:grid */
.ix-pan[hidden],.ix-tp[hidden],[data-pan][hidden]{display:none!important}
.ix-body{min-height:0}
.ini-sec{scroll-margin-top:130px}

/* initiatives: tighten dead space, fix headline clipping */
.ini{padding-bottom:clamp(28px,3.5vw,48px);scroll-margin-top:140px}
.ix-gift{padding-top:clamp(36px,4vw,56px)!important;padding-bottom:clamp(28px,3vw,40px)!important}
.ix-gift .ix-tpans{margin-bottom:0}
.ini .wrap>.kicker{margin-top:24px}
.ini-band .wrap{padding-bottom:clamp(52px,7vw,88px)}
.ini-grid{margin-top:clamp(-28px,-2vw,-16px)}

/* initiatives: titles clear the cards; give picker uses the full width */
.ini-band .wrap{padding-bottom:clamp(40px,5vw,64px)}
.ini-grid{margin-top:clamp(24px,3vw,40px)!important}
.ix-gcol{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.ix-gph{margin:0;border-radius:18px;overflow:hidden;position:relative}
.ix-gph img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.ix-gph figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;font-size:15px;line-height:1.45;color:#fff;background:linear-gradient(transparent,rgba(8,34,46,.85))}
@media (max-width:900px){.ix-gcol{grid-template-columns:1fr}}
.ix-gcol{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.ix-gcol .ix-tiers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.ix-gcol .ix-tiers button{min-width:0;padding:14px 12px}
.ix-gcol .ix-tiers b{font-size:clamp(17px,1.6vw,22px)}
@media (max-width:700px){.ix-gcol .ix-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* give modal */
.gm{width:min(980px,96vw);height:min(92vh,980px);max-width:none;max-height:none;padding:0;border:0;border-radius:20px;overflow:hidden;background:#08222E;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.gm::backdrop{background:rgba(4,18,25,.72);backdrop-filter:blur(3px)}
.gm[open]{display:flex;flex-direction:column;animation:gmin .28s ease}
@keyframes gmin{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.gm-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 18px 14px 24px;color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.gm-bar b{font:800 17px/1 var(--body)}
.gm-x{width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.gm-x:hover,.gm-x:focus-visible{background:#FFD23F;color:#08222E}
.gm-f{flex:1;width:100%;border:0;opacity:0;transition:opacity .25s}
.gm.ready .gm-f{opacity:1}.gm.ready .gm-load{display:none}
.gm-load{position:absolute;inset:60px 0 0;display:grid;place-items:center;color:rgba(255,255,255,.7)}
@media (max-width:640px){.gm{width:100vw;height:100dvh;border-radius:0}}
html.embed body{padding-top:0!important}
html.embed #givex{padding-top:28px}

[id]{scroll-margin-top:140px}

html.embed,html.embed body{background:#08222E}

/* in-place payment */
.gx-pay{background:#fff;border-radius:14px;padding:18px;margin-top:8px;min-height:320px}
.gx-pay-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 4px 14px;border-bottom:1px solid var(--line,#dfe5e3);margin-bottom:14px;color:#08222E}
.gx-pay-h b{font:800 18px/1.2 var(--body)}.gx-pay-h span{font:800 22px/1 var(--display)}

/* initiatives hero: vivid crossfade + jump cards */
.ini-hero{min-height:min(88vh,860px)}
.ih-slides,.ih-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ih-slides img{opacity:0;animation:ihf 24s infinite}
.ih-slides img:nth-child(1){opacity:1;animation-delay:0s}.ih-slides img:nth-child(2){animation-delay:6s}.ih-slides img:nth-child(3){animation-delay:12s}.ih-slides img:nth-child(4){animation-delay:18s}
@keyframes ihf{0%{opacity:0;transform:scale(1.06)}4%{opacity:1}25%{opacity:1}30%{opacity:0;transform:scale(1)}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.ih-slides img{animation:none}.ih-slides img:not(:first-child){display:none}}
.ini-hero::after{background:linear-gradient(180deg,rgba(4,22,31,.55) 0%,rgba(4,22,31,.05) 30%,rgba(4,22,31,.35) 60%,rgba(4,22,31,.92) 100%)}
.ih-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:clamp(28px,4vw,44px)}
.ih-cards a{display:grid;gap:4px;padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.22);color:#fff;text-decoration:none;transition:transform .2s,background .2s}
.ih-cards a:hover,.ih-cards a:focus-visible{transform:translateY(-3px);background:rgba(255,255,255,.2)}
.ih-cards b{font:800 13px/1 var(--body);color:var(--sun,#FFD23F);letter-spacing:.08em}
.ih-cards span{font:800 18px/1.2 var(--body)}.ih-cards small{font-size:13.5px;color:rgba(255,255,255,.78)}
.ih-cards a:last-child{background:var(--sun,#FFD23F);color:#08222E;border-color:transparent}.ih-cards a:last-child b,.ih-cards a:last-child small{color:#08222E}
@media (max-width:860px){.ih-cards{grid-template-columns:1fr 1fr}}

/* board login */
.bx-acct{display:flex;align-items:center;gap:10px;margin-left:12px}
.bx-in{border:1.5px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:99px;padding:10px 16px;font:700 14px var(--body);cursor:pointer}
.bx-in:hover{background:#fff;color:#08222E}
.bx-me{display:flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:14px}.bx-me .bx-av{width:30px;height:30px;font-size:11px}
.bx-acct .bx-link{color:rgba(255,255,255,.75)}
.bx-link{background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;font:inherit;font-size:13px}
.bx-login{width:min(440px,94vw);border:0;border-radius:18px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.4);color:#08222E}
.bx-login::backdrop{background:rgba(4,18,25,.7);backdrop-filter:blur(3px)}
.bx-login[open]{animation:gmin .25s ease}
.bx-login h3{font:800 26px/1.15 var(--display);margin:4px 0 8px}
.bx-lk{font:800 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--mc-hi,#ff5a1f);margin:0}
.bx-ls{color:#5b6b72;margin:0 0 16px}
.bx-login form{display:grid;gap:12px}.bx-login label{display:grid;gap:6px;font-weight:600;font-size:14px}
.bx-login input{font:inherit;padding:12px 14px;border:1px solid #dfe5e3;border-radius:10px}
.bx-login .bd-x{position:absolute;right:14px;top:12px}
.bx-test{background:#fff4e5;color:#5a3600;border-radius:10px;padding:10px 12px;font-size:14px}
.bx-gate{display:grid;gap:8px;justify-items:start}

/* ===== shop ===== */
.sh-hero{min-height:min(64vh,620px)}
.sh-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.sh-pills span{padding:8px 14px;border-radius:99px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);font-weight:700;font-size:14px}
.sh-sec{background:#f6f3ee}
.sh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}
.sh-card{background:#fff;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(8,34,46,.06),0 12px 30px rgba(8,34,46,.06);transition:transform .25s,box-shadow .25s}
.sh-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(8,34,46,.12)}
.sh-ph{aspect-ratio:1;background:radial-gradient(circle at 50% 40%,#fff 0,#eef1ef 70%);display:grid;place-items:center;padding:8%}
.sh-ph svg{width:100%;height:100%;transition:transform .35s}.sh-card:hover .sh-ph svg{transform:scale(1.04) rotate(-1deg)}
.sh-body{padding:20px 22px 22px;display:grid;gap:12px;flex:1;align-content:start}
.sh-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.sh-top h2{font:800 20px/1.2 var(--body);margin:0}.sh-pr{font:800 22px/1 var(--display)}
.sh-blurb{margin:0;color:#5b6b72;font-size:14.5px;line-height:1.5}
.sh-sw{display:flex;flex-wrap:wrap;gap:8px}.sh-sw:empty{display:none}
.sh-sw button{width:30px;height:30px;border-radius:50%;background:var(--sw);border:2px solid #fff;box-shadow:0 0 0 1.5px #cfd6d4;cursor:pointer}
.sh-sw button[aria-pressed=true]{box-shadow:0 0 0 2.5px #08222E}
.sh-sz{display:flex;flex-wrap:wrap;gap:6px}.sh-sz:empty{display:none}
.sh-sz button{min-width:46px;padding:8px 10px;border-radius:10px;border:1.5px solid #dfe5e3;background:#fff;font:700 13px var(--body);cursor:pointer}
.sh-sz button[aria-pressed=true]{background:#08222E;border-color:#08222E;color:#fff}
.sh-add{margin-top:auto;width:100%}.sh-note{margin:0;color:#b3261e;font-size:13px;min-height:1em}
.sh-gear{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(28px,4vw,48px);padding:24px 28px;border-radius:20px;background:#08222E;color:#fff}.sh-gear .muted{color:rgba(255,255,255,.72);margin:6px 0 0}.sh-gear .btn-ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.sh-fab{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;align-items:center;gap:8px;padding:14px 18px;border:0;border-radius:99px;background:#FFD23F;color:#08222E;font:800 15px var(--body);box-shadow:0 12px 30px rgba(0,0,0,.25);cursor:pointer}
.sh-fab span{background:#08222E;color:#FFD23F;border-radius:99px;min-width:24px;padding:3px 7px;font-size:13px}
.sh-bag{margin:0 0 0 auto;height:100dvh;max-height:none;width:min(460px,100vw);border:0;padding:0;background:#fff;display:none;flex-direction:column;color:#08222E}
.sh-bag[open]{display:flex;animation:shin .3s ease}@keyframes shin{from{transform:translateX(30px);opacity:0}to{transform:none;opacity:1}}
.sh-bag::backdrop{background:rgba(4,18,25,.6)}
.sh-bh{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #e6ebe9}.sh-bh b{font:800 20px var(--body)}.sh-bh .gm-x{background:#eef1ef;color:#08222E}
.sh-bb{padding:18px 22px;overflow:auto;flex:1}
.sh-lines{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sh-lines li{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center}
.sh-mini{width:64px;height:64px;border-radius:12px;background:#f1f3f2;padding:6px}.sh-mini svg{width:100%;height:100%}
.sh-lines small{display:block;color:#5b6b72;font-size:13px}
.sh-q{display:inline-flex;align-items:center;gap:10px;margin-top:6px;border:1px solid #dfe5e3;border-radius:99px;padding:2px 6px}.sh-q button{border:0;background:none;font:700 16px var(--body);cursor:pointer;width:24px}
.sh-reg{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:20px 0 10px}.sh-reg button{padding:10px;border-radius:10px;border:1.5px solid #dfe5e3;background:#fff;font:700 13px var(--body);cursor:pointer}.sh-reg button[aria-pressed=true]{border-color:#08222E;background:#08222E;color:#fff}
.sh-tot{display:grid;grid-template-columns:1fr auto;gap:6px;margin:12px 0}.sh-tot dt{color:#5b6b72}.sh-tot dd{margin:0;text-align:right;font-weight:700}.sh-tot dt:last-of-type,.sh-tot dd:last-of-type{font:800 18px var(--body);color:#08222E;padding-top:8px;border-top:1px solid #e6ebe9}
.sh-free{font-size:13px;color:#0f4d2a;margin:0 0 10px}.sh-pay{width:100%}.sh-err{color:#b3261e;font-size:14px}.sh-fine{font-size:12.5px;color:#5b6b72}
.sh-empty{color:#5b6b72}.sh-thx h3{font:800 24px/1.2 var(--display);margin:8px 0}.sh-thx p{color:#5b6b72}
@media (max-width:900px){.sh-grid{grid-template-columns:1fr 1fr}}@media (max-width:600px){.sh-grid{grid-template-columns:1fr}.sh-gear{flex-direction:column;align-items:flex-start}}
.sh-fab[hidden]{display:none}
.sh-ph img,.sh-mini img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.sh-ph:has(img){padding:0;background:#fff}
.sh-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.sh-tabs button{padding:10px 18px;border-radius:99px;border:1.5px solid #d6dcda;background:#fff;font:700 14px var(--body);cursor:pointer}.sh-tabs button[aria-selected=true]{background:#08222E;border-color:#08222E;color:#fff}
.sh-card[hidden]{display:none}
.sh-sec{padding-top:clamp(28px,4vw,48px)!important}
.sh-pr{white-space:nowrap}

/* r16 campaign entry: slim strip at the very top (scrolls away; the fixed header sits under it until then) + highlighted nav link */
:root{--cs-h:34px}
.cstrip{display:block;position:relative;z-index:51;height:var(--cs-h);background:var(--ink);color:#fff;text-decoration:none;font:600 13px/var(--cs-h) var(--body);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 14px}
.cstrip-in{display:inline-flex;align-items:center;gap:6px}
.cstrip u{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#FFE01B;color:#FFE01B}
.cstrip:hover u{text-decoration-thickness:2px}
.cstrip:focus-visible{outline:3px solid #FFE01B;outline-offset:-3px}
.cstrip-dot{width:7px;height:7px;border-radius:50%;background:#FFE01B;flex:none;box-shadow:0 0 0 3px rgba(255,224,27,.22)}
.top{top:max(0px,calc(var(--cs-h) - var(--sy,0px)))}
body:has(.wws-back) .cstrip{display:none}
.nav a.nav-cta{order:-1;opacity:1;background:#FFE01B;color:#04161F;font-weight:700;padding:9px 16px;border-radius:999px;text-decoration:none;box-shadow:0 2px 10px rgba(4,22,31,.18)}
.nav a.nav-cta:hover,.nav a.nav-cta[aria-current]{text-decoration:none;background:#fff04d}
@media (max-width:980px){
  .nav.open{top:calc(76px + max(0px,calc(var(--cs-h) - var(--sy,0px))))}
  .nav.open a.nav-cta{width:auto;align-self:stretch;margin:10px 0 6px;padding:14px 18px;border-bottom:0;font-size:19px;text-align:center}
}
@media (max-width:400px){.cstrip{font-size:12.5px;padding:0 10px}.cstrip-sep{display:none}}
@media print{.cstrip{display:none}}
