/* Our Story — chapter-structured story page, homepage design system */
:root{--teal:#114C5F;--teal-deep:#0A3645;--teal-dark:#062836;--teal-darker:#062f37;--cream:#fbf6e8;--cream-2:#f3ead0;--paper:#fffdf6;--lime:#C8E150;--lime-deep:#b8d63b;--lime-wash:#eef2ce;--lime-ink:#6f8a2c;--pink:#ff8fae;--ink:#062836;--ink-soft:rgba(15,31,36,.72);--rule:rgba(17,76,95,.16);--max:1280px;--pad:clamp(20px,4vw,56px);--sec:clamp(46px,5.4vw,86px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Inter",system-ui,sans-serif;overflow-x:hidden}
.os-br-m{display:none}
a{color:var(--teal);text-decoration:none}
a:hover{color:var(--pink)}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:"Bricolage Grotesque",sans-serif;letter-spacing:-.03em;margin:0;font-weight:900;color:var(--teal)}
em{font-style:normal;font-family:"Dancing Script",cursive;color:var(--pink);font-weight:700;font-size:1.06em}
em.lime{color:var(--lime-ink)}
/* nav */
.g-nav{position:sticky;top:0;z-index:60;background:rgba(251,246,232,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--rule)}
.g-nav-inner{max-width:var(--max);margin:0 auto;padding:14px var(--pad);display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.g-logo{display:inline-flex;align-items:center;gap:10px}
.g-logo img{width:52px;height:52px;display:block}
.g-nav .g-logo span{display:none}
.g-logo span{font-family:"Fraunces",serif;font-weight:800;font-size:23px;color:var(--teal)}
.g-links{display:flex;gap:28px;justify-content:center}
.g-links a{font-size:14.5px;font-weight:500;color:var(--teal-deep)}
.g-links a.on{color:var(--pink)}
.g-cta{border:0;background:var(--teal);color:var(--paper);font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:14px;padding:12px 22px;border-radius:999px;box-shadow:0 10px 24px rgba(17,76,95,.24);transition:transform .2s,background .2s;justify-self:end;white-space:nowrap}
.g-cta:hover{background:var(--teal-deep);transform:translateY(-2px)}
/* buttons, same as homepage */
.os-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:999px;padding:15px 27px;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:15.5px;transition:transform .2s,background .2s,box-shadow .2s,border-color .2s;white-space:nowrap}
.os-btn-lime{background:var(--lime);color:var(--teal-darker)}
.os-btn-lime:hover{background:var(--lime-deep);color:var(--teal-darker);transform:translateY(-1px);box-shadow:0 10px 24px rgba(184,214,59,.4)}
.os-btn-ghost-light{background:rgba(255,253,246,.1);border-color:rgba(255,253,246,.55);color:var(--cream)}
.os-btn-ghost-light:hover{background:rgba(255,253,246,.2);border-color:var(--cream);color:var(--cream)}
/* chapter scaffolding */
.os-sec{position:relative;overflow:hidden;padding:var(--sec) 0}
.os{position:relative;max-width:var(--max);margin:0 auto;padding:0 var(--pad);z-index:1}
.os-cream{background:var(--cream)}
.os-warm{background:var(--cream-2)}
.os-dark{background:var(--teal-deep);color:var(--cream)}
.os-dark h2,.os-dark h3,.os-dark h4{color:var(--cream)}
.os-dark em{color:var(--lime)}
.os-dark .os-body{color:rgba(251,246,232,.84)}
/* small non-numbered label (cards, epilogue) */
.os-tag{display:inline-flex;align-items:center;padding:7px 15px;border-radius:999px;background:var(--cream-2);color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
.os-dark .os-tag{background:rgba(251,246,232,.14);color:var(--cream)}
/* chapter marker — four variants, switched by a body class */
.os-chapter{font-family:"Inter",sans-serif;text-transform:uppercase;color:var(--teal)}
/* v1 — soft teal pill, homepage city-chip style */
.chv-1 .os-chapter{display:inline-flex;align-items:center;padding:10px 22px;border-radius:999px;background:var(--cream-2);color:var(--teal);font-size:13px;font-weight:800;letter-spacing:.17em;white-space:nowrap}
.chv-1 .os-chapter::before{content:"Chapter " attr(data-num) "  ·  "}
.chv-1 .os-dark .os-chapter,.os-dark .chv-1 .os-chapter{background:rgba(251,246,232,.14);color:var(--cream)}
/* v2 — oversized outlined number beside the label */
.chv-2 .os-chapter{display:flex;align-items:center;gap:16px;font-size:13.5px;font-weight:800;letter-spacing:.2em;color:var(--teal)}
.chv-2 .os-chapter::before{content:attr(data-num);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(46px,5vw,68px);font-weight:900;letter-spacing:-.05em;line-height:.78;color:transparent;-webkit-text-stroke:2px var(--teal);text-stroke:2px var(--teal)}
.chv-2 .os-chapter::after{content:"";flex:0 0 46px;height:4px;border-radius:2px;background:var(--lime)}
/* v3 — numbered disc plus rule */
.chv-3 .os-chapter{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:800;letter-spacing:.19em;color:var(--teal);width:100%}
.chv-3 .os-chapter::before{content:attr(data-num);display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:50%;background:var(--teal);color:var(--cream);font-family:"Bricolage Grotesque",sans-serif;font-size:19px;font-weight:900;letter-spacing:-.02em}
.chv-3 .os-chapter::after{content:"";flex:1 1 auto;height:2px;background:linear-gradient(90deg,var(--lime),rgba(200,225,80,0))}
/* v4 — handwritten chapter line above the label */
.chv-4 .os-chapter{display:flex;flex-direction:column;align-items:flex-start;gap:2px;font-size:12.5px;font-weight:800;letter-spacing:.2em;color:var(--teal)}
.chv-4 .os-chapter::before{content:"Chapter " attr(data-word);font-family:"Caveat",cursive;font-size:clamp(30px,3.2vw,42px);font-weight:700;letter-spacing:0;text-transform:none;color:#c9426b;line-height:1}
.os-dark .os-chapter{color:var(--cream)}
.os-dark .chv-2 .os-chapter::before,.chv-2 .os-dark .os-chapter::before{-webkit-text-stroke-color:var(--lime)}
.os-dark .chv-3 .os-chapter::before,.chv-3 .os-dark .os-chapter::before{background:var(--lime);color:var(--teal-darker)}
.os-dark .chv-4 .os-chapter::before,.chv-4 .os-dark .os-chapter::before{color:var(--lime)}
.os-eyebrow{display:inline-block;padding:8px 16px;border-radius:999px;background:var(--cream-2);color:var(--teal);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.os-dark .os-eyebrow{background:rgba(200,225,80,.18);color:var(--lime)}
.os-h2{font-size:clamp(31px,4vw,58px);line-height:1.02;max-width:20ch}
.os-h2 u{text-decoration:none;box-shadow:inset 0 -.14em 0 var(--lime)}
.os-dark .os-h2 u{box-shadow:inset 0 -.14em 0 rgba(200,225,80,.6)}
.os-body{margin:0;font-size:clamp(15.5px,1.2vw,17.5px);line-height:1.62;color:var(--ink-soft);text-wrap:pretty}
.os-body + .os-body{margin-top:1em}
.os-body strong{font-weight:700;color:var(--teal)}
.os-dark .os-body strong{color:var(--cream)}
.os-script{font-family:"Caveat",cursive;font-weight:700;font-size:clamp(23px,2.4vw,32px);color:#c9426b;margin:0;line-height:1.2}
.os-script.lime{color:var(--lime-ink)}
.os-dark .os-script{color:var(--lime)}
.os-reveal{opacity:0;transform:perspective(1200px) rotateX(7deg) translateY(38px) scale(.985);transform-origin:50% 0;transition:opacity .72s ease,transform .95s cubic-bezier(.2,.9,.24,1)}
.os-reveal.in{opacity:1;transform:none}
.os-hero .os-reveal{transform:translateY(20px)}
.os-hero .os-reveal.in{transform:none}
/* two-column chapter row */
.os-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,64px);align-items:center}
.os-row.stretch{align-items:stretch}
.os-row.top{align-items:start}
.os-row.stretch .os-shot{aspect-ratio:auto;height:auto;align-self:stretch}
.os-row.stretch .os-shot img{position:absolute;inset:0;width:100%;height:100%}
.os-row.flip .os-row-copy{order:2}
.os-row-copy{display:flex;flex-direction:column;gap:clamp(13px,1.5vw,18px);align-items:flex-start}
.os-row-copy > .os-chapter{margin-bottom:clamp(2px,.6vw,8px)}
.os-shot{position:relative;border-radius:26px;overflow:hidden;aspect-ratio:4/3;border:5px solid var(--teal-deep);box-shadow:0 30px 62px -36px rgba(8,40,54,.55)}
.os-dark .os-shot{border-color:var(--lime)}
.os-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.22,1,.28,1)}
.os-shot:hover img{transform:scale(1.04)}
.os-dark .os-shot{box-shadow:0 30px 62px -36px rgba(0,0,0,.7)}
/* hero */
.os-hero{position:relative;min-height:calc(100vh - 69px);display:grid;align-items:center;padding:clamp(56px,7vw,104px) 0;overflow:hidden}
.os-hero-bg{position:absolute;inset:0;z-index:0}
.os-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.os-hero-bg picture{position:absolute;inset:0;display:block}
@media (max-width:820px){.os-hero-bg img{object-position:50% 30%}}
.os-hero-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,40,54,.46) 0%,rgba(8,40,54,.7) 58%,rgba(8,40,54,.82) 100%)}
.os-hero-in{position:relative;z-index:2;max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}
.os-hero-in .os-eyebrow{background:rgba(255,253,246,.16);color:#fffdf6;border:1px solid rgba(255,253,246,.3);backdrop-filter:blur(6px)}
.os-hero-q{font-family:"Bricolage Grotesque",sans-serif;font-weight:900;letter-spacing:-.035em;color:#fffdf6;font-size:clamp(35px,5.4vw,86px);line-height:1;max-width:22ch;margin:0;text-shadow:0 2px 26px rgba(8,40,54,.5)}
.os-hero-q em{color:var(--lime)}
.os-word{position:relative;display:inline-block;isolation:isolate}
.os-word .os-l{display:inline-block;white-space:pre}
.os-word-line{position:absolute;left:-.04em;width:calc(100% + .08em);bottom:-.2em;height:.34em;opacity:0;pointer-events:none}
.os-word-line path{fill:none;stroke:var(--lime);stroke-width:5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
/* 1 — letters glow left to right */
.wdv-1 .os-word .os-l{animation:wGlow 5.4s ease-in-out infinite;animation-delay:calc(var(--i) * .085s)}
@keyframes wGlow{0%,64%,100%{text-shadow:0 2px 26px rgba(8,40,54,.5)}20%{text-shadow:0 0 16px rgba(93,196,224,.95),0 0 34px rgba(30,140,175,.75),0 2px 26px rgba(8,40,54,.5)}}
/* 2 — paint squiggle draws underneath */
.wdv-2 .os-word-line{opacity:1}
.wdv-2 .os-word-line path{animation:wDraw 6s cubic-bezier(.5,0,.3,1) infinite}
@keyframes wDraw{0%{stroke-dashoffset:1}26%,74%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
/* 3 — soft marker highlight sweeps through */
.wdv-3 .os-word::before{content:"";position:absolute;z-index:-1;left:-.1em;right:-.1em;top:.14em;bottom:.08em;border-radius:.32em;background:var(--lime);opacity:.34;transform-origin:0 50%;animation:wSweep 6.4s ease-in-out infinite}
@keyframes wSweep{0%{transform:scaleX(0);opacity:0}22%,68%{transform:scaleX(1);opacity:.34}100%{transform:scaleX(1);opacity:0}}
/* 4 — thick brush underline, letters lift gently */
.wdv-4 .os-word-line{opacity:1;bottom:-.24em;height:.4em}
.wdv-4 .os-word-line path{stroke-width:11;stroke:rgba(255,143,174,.9);animation:wDraw 7s cubic-bezier(.4,0,.3,1) infinite}
.wdv-4 .os-word .os-l{animation:wLift 7s ease-in-out infinite;animation-delay:calc(var(--i) * .06s)}
@keyframes wLift{0%,58%,100%{transform:translateY(0)}22%{transform:translateY(-.07em)}}
@media (prefers-reduced-motion:reduce){.os-word .os-l,.os-word::before,.os-word-line path{animation:none!important}.wdv-2 .os-word-line path,.wdv-4 .os-word-line path{stroke-dashoffset:0}}
.os-hero-sub{margin:0;max-width:50ch;font-size:clamp(15px,1.25vw,17px);line-height:1.6;color:rgba(255,253,246,.9);text-shadow:0 1px 14px rgba(8,40,54,.5)}
.os-hero-scroll{margin-top:6px;display:inline-flex;align-items:center;gap:9px;color:rgba(255,253,246,.82);font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.os-hero-scroll i{font-style:normal;animation:osNudge 2.1s ease-in-out infinite}
@keyframes osNudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.os-hero-brush{position:absolute;right:-6%;top:-8%;width:clamp(200px,24vw,380px);z-index:1;color:var(--lime);opacity:.34;animation:osDrift 21s ease-in-out infinite;pointer-events:none}
.os-hero-brush path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:osDraw 24s ease-in-out infinite alternate}
@keyframes osDraw{0%{stroke-dashoffset:1}62%{stroke-dashoffset:0}100%{stroke-dashoffset:-.35}}
@keyframes osDrift{0%{transform:translate3d(0,0,0) rotate(0) scale(1)}33%{transform:translate3d(2%,-2.4%,0) rotate(3deg) scale(1.03)}66%{transform:translate3d(-1.6%,2.2%,0) rotate(-2.6deg) scale(.98)}100%{transform:translate3d(0,0,0) rotate(0) scale(1)}}
@media (prefers-reduced-motion:reduce){.os-hero-brush,.os-hero-scroll i{animation:none}}
/* ch01: copy + quote in the left column, one tall image on the right */
.os-ch1{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:clamp(24px,3.4vw,52px);align-items:start}
.os-ch1 .os-row-copy{grid-column:1;grid-row:1}
.os-ch1-shot{grid-column:2;grid-row:1/3;align-self:stretch;aspect-ratio:auto;border-radius:26px}
.os-ch1-shot img{position:absolute;inset:0;width:100%;height:100%}
.os-ch1 .os-pull{grid-column:1;grid-row:2;margin:0;align-self:end}
@media (max-width:900px){
  .os-ch1{grid-template-columns:1fr;grid-template-rows:auto}
  .os-ch1 .os-row-copy,.os-ch1-shot,.os-ch1 .os-pull{grid-column:1;grid-row:auto}
  .os-ch1-shot{aspect-ratio:5/4}
}
/* ch01 pull quote */
.os-pull{position:relative;margin:clamp(30px,3.4vw,46px) 0 clamp(10px,1.4vw,18px);background:#fff;border:4px solid var(--teal-deep);border-radius:24px;padding:clamp(26px,2.8vw,38px) clamp(26px,3vw,44px);box-shadow:14px 14px 0 var(--lime);text-align:center}
.os-pull p em{font-style:italic}
.os-pull-u{font-style:normal;color:var(--teal);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.os-dark .os-pull{background:var(--cream);border-color:var(--cream)}
.os-dark .os-pull p{color:var(--teal)}
.os-dark .os-pull p em{color:var(--pink)}
.os-dark .os-quotemark{color:var(--pink)}
.os-quotemark{position:absolute;width:clamp(42px,4.6vw,64px);color:var(--pink);pointer-events:none}
.os-quotemark svg{display:block;width:100%;height:auto;fill:currentColor}
.os-quotemark.tr{top:calc(-1 * clamp(16px,1.8vw,24px));right:clamp(18px,2.4vw,34px)}
.os-quotemark.bl{bottom:calc(-1 * clamp(16px,1.8vw,24px));left:clamp(18px,2.4vw,34px);transform:scale(-1,-1)}
.os-pull p{margin:0;font-family:"Bricolage Grotesque",sans-serif;font-weight:900;letter-spacing:-.03em;font-size:clamp(16px,1.65vw,23px);line-height:1.2;color:var(--teal);font-style:italic}
.os-pull p em{font-size:1em}
/* the hand-drawn link from chapter 02 into chapter 03 */
.os-link{background:var(--cream);padding:clamp(14px,2vw,28px) 0 0;overflow:visible}
.os-link + .os-sec{padding-top:0}
.os-link-in{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,64px);align-items:center}
.os-link-note{grid-column:1;justify-self:end;margin:0;font-family:"Caveat",cursive;font-weight:700;font-size:clamp(20px,2.1vw,29px);line-height:1.12;color:#c9426b;text-align:right;transform:rotate(-3deg);white-space:nowrap;flex:0 0 auto}
.os-link-note .lk-w{display:block;clip-path:inset(0 100% -18% 0);transition:clip-path .82s cubic-bezier(.45,.1,.6,1) var(--w,0s)}
.os-link.in .os-link-note .lk-w{clip-path:inset(0 -6% -18% 0)}
.os-link-arrow{grid-column:2;justify-self:center;width:clamp(54px,6vw,86px);height:auto;overflow:visible}
.os-link-arrow path{fill:none;stroke:#c9426b;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset .9s cubic-bezier(.4,.05,.3,1) 1.85s}
.os-link-arrow .lk-head{transition-delay:2.5s}
.os-link.in .os-link-arrow path{stroke-dashoffset:0}
@media (max-width:820px){
  .os-link{padding-top:14px}
  .os-link-in{grid-template-columns:auto auto;justify-content:center;gap:12px}
  .os-link-note{font-size:19px}
  .os-link-arrow{width:44px}
}
/* ch03 polaroid cluster */
.os-memories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1vw,13px);align-content:start}
.os-mem{position:relative;border-radius:20px;overflow:hidden;background:var(--paper);box-shadow:0 22px 50px -32px rgba(8,40,54,.55);border:8px solid var(--paper);transition:transform .4s cubic-bezier(.22,1,.28,1),box-shadow .4s}
.os-mem img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.os-mem.wide{grid-column:1/-1}
.os-mem.wide img{aspect-ratio:16/10}
.os-mem:nth-child(2){transform:rotate(-2.2deg)}
.os-mem:nth-child(3){transform:rotate(1.8deg)}
.os-mem:nth-child(4){transform:rotate(2.2deg)}
.os-mem:nth-child(5){transform:rotate(-1.6deg)}
.os-mem:hover{transform:rotate(0) translateY(-5px);box-shadow:0 30px 60px -28px rgba(8,40,54,.6);z-index:2}
.os-mem-cap{position:absolute;inset:auto 0 0 0;padding:22px 14px 12px;background:linear-gradient(180deg,rgba(6,40,54,0),rgba(6,40,54,.78));color:var(--paper);font-family:"Caveat",cursive;font-weight:700;font-size:17px}
/* ch04 stats */
.os-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(11px,1.4vw,18px);margin-top:clamp(24px,3vw,38px)}
.os-stat{border-radius:22px;padding:clamp(20px,2.4vw,32px) clamp(16px,1.8vw,24px);display:flex;flex-direction:column;gap:7px;justify-content:center}
.os-stat b{font-family:"Bricolage Grotesque",sans-serif;font-weight:900;font-size:clamp(31px,3.8vw,54px);line-height:.92;letter-spacing:-.04em}
.os-stat span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.os-stat-lime{background:var(--lime);color:var(--teal-dark)}
.os-stat-lime span{color:rgba(6,40,54,.7)}
.os-stat-pink{background:var(--pink);color:#4a1226}
.os-stat-pink span{color:rgba(74,18,38,.72)}
.os-stat-teal{background:var(--teal);color:var(--paper)}
.os-stat-teal span{color:rgba(255,253,246,.78)}
.os-stat-paper{background:var(--paper);color:var(--teal);box-shadow:0 20px 44px -34px rgba(8,40,54,.4)}
.os-stat-paper span{color:rgba(17,76,95,.68)}
.os-stat-cream{background:var(--cream-2);color:var(--teal)}
.os-stat-cream span{color:rgba(17,76,95,.68)}
/* drifting swirls behind sections — thin, free-flowing strokes */
.os-blob{position:absolute;z-index:0;pointer-events:none;width:min(560px,58%);left:-4%;top:8%;color:rgba(200,225,80,.26);animation:osDrift 26s ease-in-out infinite}
.os-blob svg{display:block;width:100%;height:auto;overflow:visible}
.os-blob path{fill:none;stroke:currentColor;stroke-width:26;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:osDraw 30s ease-in-out infinite alternate}
.os-blob.fat path{stroke-width:44}
.os-blob.pink{color:rgba(255,143,174,.44)}
.os-blob.pink path{stroke-width:46}
.os-blob.tl path,.os-blob.br path{stroke-width:46}
.os-blob.tl{left:-9%;top:0;width:min(560px,53%);animation:osWander 23s ease-in-out infinite}
.os-blob.br{left:auto;top:auto;right:-8%;bottom:-2%;width:min(600px,56%);animation:osWander 29s ease-in-out infinite reverse}
@keyframes osWander{0%{transform:translate3d(0,0,0) rotate(0) scale(1)}22%{transform:translate3d(11%,-5%,0) rotate(9deg) scale(1.08)}44%{transform:translate3d(-7%,7%,0) rotate(-7deg) scale(.94)}68%{transform:translate3d(13%,4%,0) rotate(5deg) scale(1.05)}100%{transform:translate3d(0,0,0) rotate(0) scale(1)}}
@media (prefers-reduced-motion:reduce){.os-link-note .lk-w{clip-path:none;transition:none}.os-blob,.os-blob.tl,.os-blob.br{animation:none}.os-blob path{animation:none;stroke-dashoffset:0}}
/* stat styles — 4 variants */
.stv-2 .os-stat{background:rgba(251,246,232,.07)!important;border:1.5px solid rgba(200,225,80,.34);color:var(--cream)!important;box-shadow:none!important}
.stv-2 .os-stat b{color:var(--lime)}
.stv-2 .os-stat span{color:rgba(251,246,232,.66)!important}
.stv-3 .os-stat{background:none!important;border:2px solid rgba(251,246,232,.28);color:var(--cream)!important;box-shadow:none!important}
.stv-3 .os-stat span{color:var(--lime)!important}
.stv-4 .os-stats{gap:0}
.stv-4 .os-stat{background:none!important;border:0;border-left:1px solid rgba(251,246,232,.2);border-radius:0;color:var(--cream)!important;box-shadow:none!important;padding:6px clamp(14px,2vw,28px)}
.stv-4 .os-stat:first-child{border-left:0}
.stv-4 .os-stat b{color:var(--cream)}
.stv-4 .os-stat span{color:var(--lime)!important}
/* centred chapter head */
.os-head-c{max-width:1020px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(13px,1.6vw,20px)}
.os-head-c .os-h2{max-width:24ch}
.os-head-c .os-body{max-width:none}
.chv-2 .os-head-c .os-chapter,.chv-3 .os-head-c .os-chapter{justify-content:center;width:auto}
.chv-3 .os-head-c .os-chapter::after{display:none}
.chv-4 .os-head-c .os-chapter{align-items:center}
/* expandable cards */
.os-card-top{width:100%;border:0;background:none;padding:clamp(16px,1.8vw,22px);display:flex;flex-direction:column;gap:12px;align-items:flex-start;text-align:left}
.os-card-more{display:inline-flex;align-items:center;gap:9px;margin-top:2px;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:14px;color:var(--teal)}
.os-card-more i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--lime);color:var(--teal-darker);font-style:normal;font-size:18px;box-shadow:0 8px 20px rgba(6,40,54,.28);transition:transform .3s cubic-bezier(.22,1,.28,1)}
.os-card.open .os-card-more i{transform:rotate(180deg)}
.os-card-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.22,1,.28,1)}
.os-card.open .os-card-body{grid-template-rows:1fr}
.os-card-bodyin{overflow:hidden;padding:0 clamp(22px,2.4vw,32px);display:flex;flex-direction:column;gap:14px}
.cdv-2 .os-card.open .os-card-bodyin{padding-top:clamp(20px,2.2vw,30px)}
.os-card.open .os-card-bodyin{padding-bottom:clamp(24px,2.6vw,34px)}
/* ch05 three cards */
.os-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,26px);margin-top:clamp(26px,3vw,42px);align-items:start}
.os-card{display:flex;flex-direction:column;background:var(--paper);border-radius:26px;overflow:hidden;box-shadow:0 26px 56px -38px rgba(8,40,54,.5);transition:transform .35s cubic-bezier(.22,1,.28,1),box-shadow .35s}
.os-card:hover{transform:translateY(-6px);box-shadow:0 34px 64px -34px rgba(8,40,54,.55)}
.os-card-shot{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;border:4px solid var(--lime);border-radius:18px;background:var(--cream-2)}
.os-card-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.22,1,.28,1)}
.os-card:hover .os-card-shot img{transform:scale(1.05)}
.os-card h3{font-size:clamp(21px,2vw,27px);line-height:1.05}
.os-card-bodyin h3{color:var(--teal);margin-bottom:2px;text-shadow:none}
.os-card .os-body{font-size:15.5px}
.os-card-tail{margin:0;font-family:"Bricolage Grotesque",sans-serif;font-weight:900;font-size:16.5px;letter-spacing:-.02em;color:var(--lime-ink)}
/* card treatments — 4 variants */
/* 2 — copy sits over the photo */
.cdv-2 .os-card-top{position:relative;padding:0;min-height:clamp(250px,24vw,330px);justify-content:flex-end;gap:14px}
.cdv-2 .os-card-shot{position:absolute;inset:0;width:100%;aspect-ratio:auto;border:0;border-radius:0}
.cdv-2 .os-card-top::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,40,54,.06) 34%,rgba(6,40,54,.7) 100%)}
.cdv-2 .os-card-top > :not(.os-card-shot){position:relative;z-index:2;margin-left:clamp(18px,2vw,26px);margin-right:clamp(18px,2vw,26px)}
.cdv-2 .os-card-top > .os-card-more{margin-bottom:clamp(18px,2vw,24px)}
.cdv-2 .os-card-top h3{color:var(--paper);text-shadow:0 2px 16px rgba(6,40,54,.5)}
.cdv-2 .os-card .os-card-bodyin h3{color:var(--teal)}
.cdv-2 .os-card .os-tag{background:none;border:0;padding:0;color:#fff;font-size:clamp(16px,1.5vw,18.5px);letter-spacing:.1em;text-shadow:0 2px 14px rgba(6,40,54,.8),0 1px 3px rgba(6,40,54,.6)}
.cdv-2 .os-card .os-card-more{color:var(--paper)}
.cdv-2 .os-card{border:4px solid var(--lime)}
/* 3 — teal card, full-bleed photo */
.cdv-3 .os-card{background:var(--teal-deep);box-shadow:0 26px 56px -38px rgba(0,0,0,.6)}
.cdv-3 .os-card-top{padding:0 clamp(20px,2.2vw,28px) clamp(4px,.6vw,8px)}
.cdv-3 .os-card-shot{border:0;border-radius:0;margin:0 calc(-1 * clamp(20px,2.2vw,28px)) clamp(16px,1.8vw,22px);width:auto}
.cdv-3 .os-card h3{color:var(--cream)}
.cdv-3 .os-card .os-body{color:rgba(251,246,232,.84)}
.cdv-3 .os-card .os-body strong{color:var(--cream)}
.cdv-3 .os-card .os-tag{background:rgba(200,225,80,.2);color:var(--lime)}
.cdv-3 .os-card .os-card-more{color:var(--lime)}
.cdv-3 .os-card .os-card-more i{background:var(--lime);color:var(--teal-darker)}
.cdv-3 .os-card .os-card-tail{color:var(--lime)}
/* 4 — retro block: cream card, hard lime shadow, photo top */
.cdv-4 .os-card{background:var(--paper);border:3px solid var(--teal-deep);border-radius:22px;box-shadow:11px 11px 0 var(--lime)}
.cdv-4 .os-card:hover{transform:translateY(-4px)}
.cdv-4 .os-card:nth-child(2){box-shadow:11px 11px 0 var(--pink)}
.cdv-4 .os-card:nth-child(3){box-shadow:11px 11px 0 #e8b04b}
.cdv-4 .os-card-shot{border:0;border-bottom:3px solid var(--teal-deep);border-radius:0;margin:calc(-1 * clamp(16px,1.8vw,22px)) calc(-1 * clamp(16px,1.8vw,22px)) clamp(14px,1.6vw,20px);width:auto}
/* ch06 founder + mind map */
.os-founder{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(26px,4vw,60px);align-items:start}
.os-founder-shot{border-radius:26px;overflow:hidden;aspect-ratio:4/5;border:5px solid var(--lime);box-shadow:0 30px 62px -34px rgba(0,0,0,.7);position:sticky;top:96px}
.os-founder-shot img{width:100%;height:100%;object-fit:cover;display:block}
.os-founder-copy{display:flex;flex-direction:column;gap:clamp(13px,1.5vw,18px);align-items:flex-start}
.os-founder-copy .os-body{max-width:62ch}
.os-name{margin:0;font-family:"Bricolage Grotesque",sans-serif;font-weight:900;font-size:18px;color:var(--cream);letter-spacing:-.02em}
.os-name i{display:block;margin-top:5px;font-style:normal;font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}
.os-diagram{width:100%;max-width:520px;margin:clamp(10px,1.4vw,18px) 0 0;background:rgba(251,246,232,.06);border:1px solid rgba(200,225,80,.22);border-radius:22px;padding:14px 10px}
.os-diagram svg{display:block;width:100%;height:auto;overflow:visible}
.os-diagram .dg-ink{fill:none;stroke:var(--pink);stroke-linecap:round;stroke-linejoin:round}
.os-diagram .dg-a{stroke-width:4.4}
.os-diagram .dg-b{stroke-width:3.4}
.os-diagram text{font-family:"Caveat",cursive;font-weight:700;fill:var(--cream);letter-spacing:.04em}
.os-diagram .dg-lab{font-size:33px}
.os-diagram .dg-hub-t{font-size:29px;fill:var(--lime)}
.os-diagram .dg-ink{stroke-dasharray:var(--len,600);stroke-dashoffset:var(--len,600);transition:stroke-dashoffset 1.1s cubic-bezier(.4,.05,.3,1) var(--d,0s)}
.os-diagram text{opacity:0;transition:opacity .5s ease var(--d,0s),transform .6s cubic-bezier(.22,1,.28,1) var(--d,0s);transform:translateY(6px)}
.os-reveal.in .os-diagram .dg-ink{stroke-dashoffset:0}
.os-reveal.in .os-diagram text{opacity:1;transform:none}
/* ch07 locations */
.os-loc-panel{margin-top:clamp(26px,3.2vw,44px);background:var(--teal-deep);border-radius:28px;padding:clamp(26px,3.2vw,46px) clamp(20px,3vw,40px)}
.os-maps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3.4vw,56px);align-items:end;max-width:820px;margin:0 auto}
.os-map{position:relative;opacity:0;transform:translateY(-30px) rotate(-4deg);transition:opacity .55s ease var(--d,0s),transform .75s cubic-bezier(.3,1.5,.4,1) var(--d,0s)}
.os-reveal.in .os-map{opacity:1;transform:none}
.os-map svg{display:block;width:100%;height:auto;overflow:visible;max-height:180px}
.os-map .geo{fill:var(--cream);stroke:none}
.os-map .arc-t{display:none}
.os-loc-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3.4vw,56px);max-width:820px;margin:clamp(16px,2vw,24px) auto 0;text-align:center}
.os-loc-list h4{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--lime)}
.os-loc-list p{margin:6px 0 0;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(16px,1.6vw,21px);color:var(--cream)}
.os-city-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(9px,1.2vw,16px);margin-top:clamp(18px,2.2vw,28px)}
.os-city-strip figure{margin:0;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;border:4px solid var(--teal-deep)}
.os-city-strip img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.22,1,.28,1)}
.os-city-strip figure:hover img{transform:scale(1.05)}
.os-city-strip figcaption{position:absolute;inset:auto 0 0 0;padding:22px 12px 10px;background:linear-gradient(180deg,rgba(6,40,54,0),rgba(6,40,54,.78));color:var(--paper);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
/* community subsection */
.os-community{margin-top:clamp(30px,3.6vw,54px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.os-community.os-panel{background:var(--teal-deep);border-radius:28px;padding:clamp(30px,3.6vw,52px) clamp(20px,3vw,44px)}
.os-community.os-panel h2,.os-community.os-panel .os-h2{color:var(--cream)}
.os-community.os-panel .os-h2 em{color:var(--pink)}
.os-community.os-panel .os-body{color:rgba(251,246,232,.86)}
.os-community.os-panel .os-eyebrow{background:rgba(200,225,80,.18);color:var(--lime)}
.os-community .os-h2{max-width:22ch}
.os-community .os-body{max-width:62ch}
.os-partners{width:100%;margin:clamp(18px,2.4vw,32px) auto 0;background:var(--cream);border-radius:22px;padding:clamp(16px,2vw,26px) clamp(18px,3vw,40px);display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:clamp(14px,3vw,46px);box-shadow:0 22px 48px -34px rgba(8,40,54,.35)}
.os-partners.narrow{width:70%;max-width:640px}
.os-partners img{display:block;width:clamp(90px,11vw,138px);height:clamp(44px,4.8vw,64px);object-fit:contain;flex:0 1 auto;min-width:0}
/* epilogue */
.os-epilogue{position:relative;overflow:hidden;padding:clamp(56px,7vw,110px) 0;background:var(--teal-deep)}
.os-epi-bg{position:absolute;inset:0;z-index:0}
.os-epi-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.os-epi-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,54,69,.86) 0%,rgba(10,54,69,.9) 100%)}
.os-epi-in{position:relative;z-index:2;max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}
.os-epi-in h2{font-size:clamp(34px,4.8vw,72px);line-height:1;color:var(--cream);max-width:20ch}
.os-epi-in h2 em{color:var(--pink)}
.os-epi-in .os-body{color:rgba(251,246,232,.86);max-width:58ch}
.os-epi-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}
/* footer */
.g-footer{background:var(--teal-dark);color:var(--cream);padding:clamp(48px,5vw,80px) var(--pad) 24px}
.g-footer-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(24px,4vw,60px)}
.g-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.g-footer-brand .g-logo img{width:112px;height:112px;filter:brightness(0) invert(1)}
.g-footer-brand .g-logo span{display:none}
.g-footer-brand p.g-footer-tag{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:25px;color:var(--lime);margin:6px 0 4px;max-width:none}
.g-footer-brand p{margin:0;font-size:13.5px;line-height:1.5;color:rgba(251,246,232,.7);max-width:32ch}
.g-social{display:flex;gap:18px;margin-top:14px}
.g-social a{display:grid;place-items:center;width:auto;height:auto;border:0;border-radius:0;color:var(--cream);font:800 12px/1 "Inter",sans-serif}
.g-social a svg{width:27px;height:27px;display:block;transition:transform .2s}
.g-social a:hover svg{transform:translateY(-2px)}
.g-social a:hover svg [stroke]{stroke:var(--lime)}
.g-social a:hover svg [fill],.g-social a:hover svg[fill]{fill:var(--lime)}
.g-footer-col h5{font-family:"Bricolage Grotesque",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--lime);margin:0 0 14px}
.g-footer-col a{display:block;padding:5px 0;font-size:14px;color:rgba(251,246,232,.78)}
.g-footer-col a:hover{color:var(--lime)}
.g-footer-base{max-width:var(--max);margin:clamp(28px,4vw,54px) auto 0;padding-top:20px;border-top:1px solid rgba(251,246,232,.12);display:flex;justify-content:center;font-size:12.5px;color:rgba(251,246,232,.6)}
/* ---- image swapper ---- */
.os-swap-toggle{position:fixed;bottom:18px;right:18px;z-index:300;display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border:0;border-radius:999px;background:rgba(6,40,54,.9);backdrop-filter:blur(10px);color:var(--cream);font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:13px;box-shadow:0 14px 34px rgba(6,40,54,.4);transition:background .2s,transform .2s}
.os-swap-toggle:hover{transform:translateY(-2px)}
.os-swap-toggle.on{background:var(--lime);color:var(--teal-dark)}
.os-swap-dot{width:9px;height:9px;border-radius:50%;background:rgba(251,246,232,.45)}
.os-swap-toggle.on .os-swap-dot{background:var(--teal-deep)}
body.os-swapping [data-swap]{cursor:pointer;outline:3px dashed var(--lime);outline-offset:-6px}
body.os-swapping [data-swap]:hover{outline-style:solid;outline-color:var(--pink)}
.os-picker{position:fixed;inset:0;z-index:320;display:grid;place-items:center;padding:clamp(12px,3vw,44px);background:rgba(6,40,54,.62);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s}
.os-picker.open{opacity:1;visibility:visible}
.os-picker-card{width:min(1080px,100%);max-height:86vh;display:flex;flex-direction:column;background:var(--paper);border-radius:24px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(6,40,54,.6)}
.os-picker-head{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:18px clamp(16px,2.4vw,26px);border-bottom:1px solid var(--rule)}
.os-picker-head h3{font-size:20px;color:var(--teal)}
.os-picker-for{margin:3px 0 0;font-size:12px;color:rgba(6,40,54,.58)}
.os-picker-q{font:inherit;font-size:14px;padding:9px 15px;border-radius:999px;border:1.5px solid var(--rule);background:var(--cream);color:inherit;min-width:min(240px,42vw)}
.os-picker-q:focus{outline:none;border-color:var(--teal)}
.os-picker-x{width:38px;height:38px;border:0;border-radius:50%;background:rgba(17,76,95,.1);color:var(--teal);font-size:22px;line-height:1;display:grid;place-items:center;transition:background .2s}
.os-picker-x:hover{background:var(--pink);color:var(--paper)}
.os-picker-grid{overflow:auto;padding:clamp(14px,2vw,22px);display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;background:var(--cream)}
.os-picker-item{border:1.5px solid var(--rule);background:var(--paper);border-radius:14px;padding:0;overflow:hidden;text-align:left;display:flex;flex-direction:column;transition:border-color .18s,transform .18s}
.os-picker-item:hover{border-color:var(--teal);transform:translateY(-3px)}
.os-picker-thumb{display:block;aspect-ratio:1;background:rgba(17,76,95,.08);position:relative}
.os-picker-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .3s}
.os-picker-thumb.ready img{opacity:1}
.os-picker-name{display:block;padding:7px 9px;font-size:10.5px;line-height:1.3;color:rgba(6,40,54,.7);word-break:break-word;border-top:1px solid var(--rule)}
@media (max-width:1080px){
  .os-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .os-cards{grid-template-columns:1fr;max-width:640px;margin-left:auto;margin-right:auto}
  .os-card{flex-direction:column}
  .os-card-shot{aspect-ratio:16/10}
  .os-founder{grid-template-columns:1fr;gap:26px}
  .os-founder-shot{position:static;max-width:420px;aspect-ratio:4/5}
  .os-strip{grid-template-columns:repeat(3,1fr)}
  .os-strip figure:nth-child(n+4){display:none}
}
@media (max-width:900px){
  .os-row{grid-template-columns:1fr;gap:24px}
  .os-row.flip .os-row-copy{order:0}
  .os-mem{border-width:6px}
  .os-mem:hover{transform:translateY(-4px)}
}
@media (max-width:820px){
  .g-nav-inner{padding:10px 18px;gap:8px;grid-template-columns:1fr auto}
  .g-links{grid-column:1/-1;grid-row:2;gap:18px;justify-content:center;padding-top:2px}
  .g-links a{font-size:13px}
  .g-logo span{font-size:19px}
  .g-cta{font-size:13px;padding:10px 16px}
  :root{--sec:clamp(34px,8vw,52px)}
  /* mobile-only tweaks — desktop layout untouched */
  .os-br-m{display:inline}
  #ch01{scroll-margin-top:84px}
  .os-hero-brush{display:none}
  .os-blob.fat,.os-dark .os-blob{display:none}
  .os-row.stretch .os-shot,.os-ch1-shot{align-self:start;height:auto;aspect-ratio:5/4}
  .os-head-c{align-items:flex-start;text-align:left}
  .os-head-c .os-h2{max-width:none}
  .os-link{padding-top:14px;padding-bottom:18px}
  .os-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .os-stat{flex-direction:column;align-items:flex-start;gap:5px;padding:15px 14px;border-radius:18px}
  .os-stat:nth-child(1){order:1}
  .os-stat:nth-child(2){order:3}
  .os-stat:nth-child(3){order:2}
  .os-stat:nth-child(4){order:4}
  .os-stat b{font-size:27px}
  .os-stat span{font-size:9.5px;letter-spacing:.11em;line-height:1.3}
  .os-hero{min-height:calc(100vh - 96px)}
  .os-hero-q{font-size:clamp(24px,6.6vw,34px);max-width:none}
  .os-word{position:relative;display:inline-block;isolation:isolate}
.os-word .os-l{display:inline-block;white-space:pre}
.os-word-line{position:absolute;left:-.04em;width:calc(100% + .08em);bottom:-.2em;height:.34em;opacity:0;pointer-events:none}
.os-word-line path{fill:none;stroke:var(--lime);stroke-width:5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
/* 1 — letters glow left to right */
.wdv-1 .os-word .os-l{animation:wGlow 5.4s ease-in-out infinite;animation-delay:calc(var(--i) * .085s)}
@keyframes wGlow{0%,64%,100%{text-shadow:0 2px 26px rgba(8,40,54,.5)}20%{text-shadow:0 0 16px rgba(93,196,224,.95),0 0 34px rgba(30,140,175,.75),0 2px 26px rgba(8,40,54,.5)}}
/* 2 — paint squiggle draws underneath */
.wdv-2 .os-word-line{opacity:1}
.wdv-2 .os-word-line path{animation:wDraw 6s cubic-bezier(.5,0,.3,1) infinite}
@keyframes wDraw{0%{stroke-dashoffset:1}26%,74%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
/* 3 — soft marker highlight sweeps through */
.wdv-3 .os-word::before{content:"";position:absolute;z-index:-1;left:-.1em;right:-.1em;top:.14em;bottom:.08em;border-radius:.32em;background:var(--lime);opacity:.34;transform-origin:0 50%;animation:wSweep 6.4s ease-in-out infinite}
@keyframes wSweep{0%{transform:scaleX(0);opacity:0}22%,68%{transform:scaleX(1);opacity:.34}100%{transform:scaleX(1);opacity:0}}
/* 4 — thick brush underline, letters lift gently */
.wdv-4 .os-word-line{opacity:1;bottom:-.24em;height:.4em}
.wdv-4 .os-word-line path{stroke-width:11;stroke:rgba(255,143,174,.9);animation:wDraw 7s cubic-bezier(.4,0,.3,1) infinite}
.wdv-4 .os-word .os-l{animation:wLift 7s ease-in-out infinite;animation-delay:calc(var(--i) * .06s)}
@keyframes wLift{0%,58%,100%{transform:translateY(0)}22%{transform:translateY(-.07em)}}
@media (prefers-reduced-motion:reduce){.os-word .os-l,.os-word::before,.os-word-line path{animation:none!important}.wdv-2 .os-word-line path,.wdv-4 .os-word-line path{stroke-dashoffset:0}}
.os-hero-sub{font-size:14.5px}
  .os-h2{font-size:clamp(27px,8.4vw,38px);max-width:none}
  .os-body{font-size:15px;text-wrap:auto}
  .os-chapter{font-size:9.5px;padding:6px 12px;letter-spacing:.13em}
  .os-shot{border-radius:20px;aspect-ratio:5/4}
  .os-pull{padding:22px 18px;border-radius:20px}
  .os-pull p{font-size:20px}
  .os-stat-note{text-align:left}
  .os-strip{grid-template-columns:repeat(2,1fr)}
  .os-strip figure:nth-child(n+3){display:none}
  .os-card{flex-direction:column}
  .os-card-top{padding:14px}
  .cdv-2 .os-card-top{padding:0}
  .os-card-bodyin{padding:0 18px}
  .os-diagram .dg-lab{font-size:38px}
  .os-diagram .dg-hub-t{font-size:34px}
  .os-loc-panel{border-radius:22px;padding:22px 16px}
  .os-maps,.os-loc-list{gap:12px}
  .os-map svg{max-height:110px}
  .os-loc-list h4{font-size:9.5px;letter-spacing:.1em}
  .os-loc-list p{font-size:14px}
  .os-city-strip{grid-template-columns:repeat(2,1fr)}
  .os-partners{gap:12px;padding:14px;border-radius:18px}
  .os-partners.narrow{width:100%;max-width:none}
  .os-partners img{width:22%;height:36px}
  .os-epi-actions{flex-direction:column;align-items:stretch;width:100%;max-width:340px}
  .os-btn{padding:14px 22px;font-size:15px}
  .os-swap-toggle{bottom:12px;right:12px;font-size:12px;padding:9px 14px}
  .os-picker-head{grid-template-columns:1fr auto;row-gap:10px}
  .os-picker-q{grid-column:1/-1;min-width:0;width:100%}
  .os-picker-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:9px}
  .g-footer-grid{grid-template-columns:repeat(3,1fr);gap:18px 12px}
  .g-footer-brand{grid-column:1/-1}
  .g-footer-brand .g-logo span{display:none}
  .g-footer-col h5{font-size:10.5px;margin-bottom:6px}
  .g-footer-col a{font-size:11.5px}
}
