*,*::before,*::after{box-sizing:border-box}
:root{
  --ink:#0A1D3A;--ink-deep:#061020;--ink-2:#0E2547;
  --body:#4E5F73;--muted:#63727F;--faint:#A9B4C1;
  --accent-text:#E85B00;   /* the brand orange, held to 3:1 as large display text on paper */
  --hairline:#E3E7EC;--hairline-2:#EEF1F4;
  --canvas:#FFFFFF;--cream:#FAF9F7;--band:#F5F6F8;
  --accent:#FF6A00;--accent-deep:#E55F00;
  --fd:'Playfair Display',Georgia,'Times New Roman',serif;
  --fb:'Inter',system-ui,-apple-system,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);--ease-cine:cubic-bezier(.19,1,.22,1);--ease-out:cubic-bezier(.23,1,.32,1);
  --gut:clamp(20px,4.4vw,64px);--maxw:1240px;--pad:clamp(52px,5.6vw,92px);
  --nav-h:78px;--glass:rgba(252,251,249,.72);--glass-dark:rgba(9,22,44,.60);
  /* grounds are lit, not filled: every surface has a light source and a falloff */
  --lit-paper:radial-gradient(122% 78% at 50% -14%,#FFFFFF 0%,#FDFCFB 40%,#F7F6F3 100%);
  --lit-cream:radial-gradient(128% 82% at 50% -16%,#FFFFFF 0%,#FCFBF8 36%,#F5F3EE 74%,#EFEDE7 100%);
  --lit-band:radial-gradient(124% 84% at 20% -12%,#FBFCFD 0%,#F3F5F8 48%,#E8EBF0 100%);
  --lit-navy:radial-gradient(104% 78% at 12% -10%,#183D73 0%,#0D2550 32%,#08182F 70%,#050D1C 100%);
  --edge:max(var(--gut),calc((100vw - var(--maxw)) / 2 + var(--gut)));
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--body);font-family:var(--fb);font-size:16.5px;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;
  font-feature-settings:'cv05' 1,'cv08' 1,'cv11' 1,'ss03' 1;text-rendering:optimizeLegibility}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{margin:0;font-family:var(--fd);color:var(--ink);font-weight:700;line-height:1.05;letter-spacing:-.014em;font-optical-sizing:auto;text-wrap:balance}
p{margin:0;text-wrap:pretty}ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
::selection{background:rgba(255,106,0,.16);color:var(--ink)}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut)}
section{position:relative;scroll-margin-top:calc(var(--nav-h) + 8px)}
.dark{background-color:var(--ink);background-image:linear-gradient(to bottom,rgba(4,11,24,.72),rgba(4,11,24,0) 26%),var(--lit-navy);color:rgba(255,255,255,.72);position:relative;isolation:isolate}
.dark::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;z-index:1;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18) 20%,rgba(255,255,255,.18) 80%,transparent)}
.paper{background-color:#fff;background-image:var(--lit-paper)}
.band{background-color:var(--band);background-image:var(--lit-band)}
.dark h1,.dark h2,.dark h3,.dark h4{color:#fff}
.eyebrow{font-family:var(--fb);font-size:11.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0 0 28px}
.dark .eyebrow{color:rgba(255,255,255,.5)}
.display{font-family:var(--fd);font-weight:700;color:var(--ink);font-size:clamp(28px,3.8vw,52px);line-height:1.04;letter-spacing:-.02em}
.display .it{font-style:italic;color:var(--accent-text);font-weight:600}
.dark .display .it,.dark .ch-title .it{color:var(--accent)}
.dark .display{color:#fff}
.lede{font-size:clamp(15.5px,1.15vw,17.5px);line-height:1.6;color:var(--body);max-width:58ch;text-wrap:pretty}
.dark .lede{color:rgba(255,255,255,.68)}
.small{font-size:14.5px;line-height:1.6;color:var(--muted)}
.numbig{font-family:var(--fd);font-weight:700;font-size:clamp(30px,2.8vw,44px);line-height:.86;letter-spacing:-.03em;color:#D2DAE3;font-variant-numeric:lining-nums;display:block;transition:color .55s var(--ease-cine)}
.dark .numbig{color:rgba(255,255,255,.22)}

/* ================= buttons ================= */
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;font-family:var(--fb);font-size:12.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;padding:12px 12px 12px 24px;border:1px solid transparent;border-radius:2px;position:relative;overflow:hidden;isolation:isolate;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .16s var(--ease-out),box-shadow .4s var(--ease-cine)}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:#fff;opacity:0;transform:translateY(101%);transition:transform .55s var(--ease-cine),opacity .4s ease}
.btn:hover::before{opacity:.09;transform:none}
.btn:active{transform:scale(.975)}
.btn svg{width:38px;height:38px;padding:11px;flex:none;box-sizing:border-box;border-radius:2px;background:rgba(255,255,255,.13);transition:transform .42s var(--ease-cine),background .35s var(--ease-cine)}
.btn:hover svg{transform:translateX(5px);background:rgba(255,255,255,.24)}
.btn-solid{background:var(--ink);color:#fff;box-shadow:0 20px 44px -24px rgba(10,29,58,.62)}.btn-solid svg{color:var(--accent)}
.btn-solid:hover{background:var(--ink-deep);box-shadow:0 26px 52px -24px rgba(10,29,58,.7)}
.btn-ghost{border-color:rgba(10,29,58,.24);color:var(--ink)}.btn-ghost svg{color:var(--accent);background:rgba(10,29,58,.06)}
.btn-ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-ghost:hover svg{background:rgba(255,255,255,.16)}.btn-ghost:hover::before{opacity:0}
.dark .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}.dark .btn-ghost svg{background:rgba(255,255,255,.12)}
.dark .btn-ghost:hover{background:#fff;color:var(--ink)}.dark .btn-ghost:hover svg{background:rgba(10,29,58,.08)}
.btn-accent{background:var(--accent);color:var(--ink);box-shadow:0 20px 44px -20px rgba(255,106,0,.62)}
.btn-accent svg{color:var(--ink);background:rgba(10,29,58,.13)}
.btn-accent:hover{background:var(--accent-deep);box-shadow:0 26px 54px -20px rgba(255,106,0,.72)}
.btn-accent:hover svg{background:rgba(10,29,58,.2)}
.reassure{font-size:13.5px;color:var(--muted);margin-top:18px}
.dark .reassure{color:rgba(255,255,255,.46)}

/* ================= chrome: a floating island that condenses on scroll and inverts over dark ground ================= */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:clamp(10px,1.5vw,18px) clamp(12px,2.4vw,30px);pointer-events:none}
.nav-in{pointer-events:auto;position:relative;height:var(--nav-h);max-width:1560px;margin:0 auto;padding-inline:clamp(16px,2.2vw,32px);display:flex;align-items:center;gap:clamp(18px,2.6vw,44px);border:1px solid transparent;border-radius:3px;
  transition:height .5s var(--ease-cine),background-color .5s var(--ease-cine),border-color .5s var(--ease-cine),box-shadow .5s var(--ease-cine)}
.nav.stuck .nav-in{height:62px;background-color:var(--glass);border-color:rgba(10,29,58,.09);
  -webkit-backdrop-filter:blur(24px) saturate(1.75);backdrop-filter:blur(24px) saturate(1.75);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 28px 64px -36px rgba(10,29,58,.44),0 2px 10px -7px rgba(10,29,58,.18)}
.nav.on-dark.stuck .nav-in{background-color:var(--glass-dark);border-color:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 28px 64px -34px rgba(0,0,0,.72)}
.brand{display:inline-flex;align-items:baseline;gap:10px;flex:none;color:var(--ink);transition:color .45s var(--ease-cine);--logo-box:var(--ink);--logo-on-box:#fff}
.nav.on-dark .brand,.foot .brand,.fit-head .brand{--logo-box:#fff;--logo-on-box:var(--ink);color:#fff}
.logo{display:block;height:40px;width:auto;aspect-ratio:1576/392;overflow:visible}
.nav.stuck .logo{height:36px}
.foot .logo{height:54px}
@media (max-width:640px){.logo{height:34px}.nav.stuck .logo{height:32px}}
.nav-links{display:flex;align-items:center;gap:clamp(16px,2vw,34px);margin-left:auto}
.nav-links a{font-size:12.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);opacity:.78;white-space:nowrap;position:relative;padding-block:8px;transition:color .45s var(--ease-cine),opacity .25s ease}
.nav.on-dark .nav-links a{color:#fff;opacity:.82}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .34s var(--ease)}
.nav-links a:hover{opacity:1}.nav-links a:hover::after{transform:scaleX(1)}
.nav-links a[aria-current="page"]{opacity:1}.nav-links a[aria-current="page"]::after{transform:scaleX(1)}
.nav-ic{display:flex;align-items:center;gap:14px;padding-left:clamp(12px,1.6vw,26px);border-left:1px solid rgba(10,29,58,.14);transition:border-color .45s var(--ease-cine)}
.nav.on-dark .nav-ic{border-left-color:rgba(255,255,255,.18)}
.nav-ic a{color:var(--muted);transition:color .3s ease}.nav-ic a:hover{color:var(--accent)}.nav-ic svg{width:17px;height:17px}
.nav.on-dark .nav-ic a{color:rgba(255,255,255,.68)}
.nav-cta{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;white-space:nowrap;background:var(--ink);padding:13px 16px 13px 20px;border-radius:2px;
  box-shadow:0 14px 30px -18px rgba(10,29,58,.6);transition:background .35s var(--ease-cine),color .35s var(--ease-cine),transform .16s var(--ease-out),box-shadow .35s var(--ease-cine)}
.nav-cta i{display:grid;place-items:center;width:22px;height:22px;border-radius:2px;background:rgba(255,255,255,.13);transition:background .35s var(--ease-cine),transform .4s var(--ease-cine)}
.nav-cta svg{width:13px;height:13px;color:var(--accent)}
.nav-cta:hover{background:var(--accent);box-shadow:0 16px 34px -16px rgba(255,106,0,.55)}
.nav-cta:hover i{background:rgba(255,255,255,.22);transform:translateX(3px)}
.nav-cta:hover svg{color:#fff}
.nav-cta:active{transform:scale(.975)}
.nav.on-dark .nav-cta{background:#fff;color:var(--ink)}
.nav.on-dark .nav-cta i{background:rgba(10,29,58,.09)}
.nav.on-dark .nav-cta:hover{background:var(--accent);color:#fff}
.nav-prog{position:absolute;left:1px;right:1px;bottom:0;height:1.5px;background:var(--accent);transform:scaleX(0);transform-origin:left;opacity:0;transition:opacity .4s ease}
.nav.stuck .nav-prog{opacity:1}
.burger{display:none;width:42px;height:42px;place-items:center;margin-left:auto}
.burger span{display:block;width:20px;height:1.5px;background:var(--ink);position:relative;transition:background .3s ease}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:20px;height:1.5px;background:var(--ink);transition:transform .3s var(--ease),background .3s ease}
.nav.on-dark .burger span,.nav.on-dark .burger span::before,.nav.on-dark .burger span::after{background:#fff}
.burger span::before{top:-6px}.burger span::after{top:6px}
.burger[aria-expanded="true"] span{background:transparent!important}
.burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
.mmenu{position:fixed;left:0;right:0;top:0;bottom:0;z-index:49;background:rgba(6,16,32,.96);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);padding:calc(var(--nav-h) + 34px) var(--gut) 30px;display:none;overflow-y:auto}
.mmenu.open{display:block}
.mmenu a{display:block;padding:16px 0;font-size:13px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(255,255,255,.12);opacity:0;transform:translateY(12px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}
.mmenu.open a{opacity:1;transform:none}
.mmenu.open a:nth-child(1){transition-delay:.05s}.mmenu.open a:nth-child(2){transition-delay:.1s}.mmenu.open a:nth-child(3){transition-delay:.15s}.mmenu.open a:nth-child(4){transition-delay:.2s}.mmenu.open a:nth-child(5){transition-delay:.25s}.mmenu.open a:nth-child(6){transition-delay:.3s}.mmenu.open a:nth-child(7){transition-delay:.35s}
.mmenu .btn{width:100%;margin-top:22px;display:inline-flex}
.mmenu .btn-accent{color:var(--ink)}

/* ================= HERO: a true split. Copy on paper left, the real photograph bleeding to the right edge. ================= */
.hero{position:relative;background:#fff;color:var(--ink)}
.hero{padding-top:calc(var(--nav-h) + clamp(22px,3vw,40px))}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(540px,calc(100svh - var(--nav-h) - 40px),760px)}
.hero-copy{position:relative;z-index:2;background-image:var(--lit-paper);padding:clamp(36px,4.4vw,60px) clamp(28px,4vw,64px) clamp(36px,4.4vw,60px) var(--hero-edge);display:flex;flex-direction:column;justify-content:center;--hero-edge:max(var(--gut),calc((100vw - 1560px) / 2 + clamp(20px,3vw,48px) + 24px))}
.hero .eyebrow{margin-bottom:clamp(16px,2vw,26px)}
.hero h1{position:relative;color:var(--ink);font-size:clamp(40px,4.7vw,72px);line-height:.98;letter-spacing:-.03em;margin:0 0 clamp(18px,2vw,26px);text-wrap:initial}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.hero h1 .ln>span{display:block;transform:translateY(112%);transition:transform 1.15s var(--ease-cine)}
.hero h1 .ln:nth-child(2)>span{transition-delay:.1s}
body.ready .hero h1 .ln>span{transform:none}
.hero h1 .it{font-style:italic;color:var(--accent-text);font-weight:600}
.hero-sub{font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.58;color:var(--body);max-width:44ch;margin-bottom:clamp(22px,2.4vw,30px)}
.hero-act{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hero .reassure{margin-top:0}
.hstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(28px,3.2vw,44px);padding-top:clamp(20px,2.4vw,30px);border-top:1px solid var(--hairline)}
.hstat{padding-right:16px}
.hstat+.hstat{border-left:1px solid var(--hairline);padding-left:clamp(14px,1.8vw,26px)}
.hstat svg{width:22px;height:22px;color:var(--accent);stroke-width:1.5;margin-bottom:12px}
.hstat .n{font-family:var(--fd);font-size:clamp(24px,2.1vw,32px);font-weight:700;color:var(--ink);line-height:1;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.hstat .n sup{font-size:.46em;vertical-align:.7em;font-weight:600}
.hstat .l{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);line-height:1.45;margin-top:9px;max-width:22ch}
.hero-photo{position:relative;margin:0;overflow:hidden;background:var(--ink);min-height:420px}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transform-origin:50% 30%;opacity:0;transform:scale(1.05);transition:opacity 1.3s var(--ease-cine) .15s,transform 2.1s var(--ease-cine) .15s}
body.ready .hero-photo img{opacity:1;transform:none;animation:breathe 26s ease-in-out 2.4s infinite alternate}
@keyframes breathe{from{transform:scale(1)}to{transform:scale(1.035)}}
.hero-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(6,16,32,.16),transparent 22%)}
.hero-quote{position:absolute;left:clamp(20px,3vw,44px);bottom:clamp(22px,3vw,44px);z-index:2;max-width:300px;padding:18px 20px 16px 22px;border-left:2px solid var(--accent);background:rgba(255,255,255,.96);box-shadow:0 28px 56px -30px rgba(6,16,32,.6)}
.hero-quote p{font-family:var(--fd);font-style:italic;font-weight:500;font-size:15.5px;line-height:1.42;color:var(--ink);letter-spacing:-.008em}
.hero-quote cite{display:block;margin-top:10px;font-style:normal;font-family:var(--fb);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-text)}
.hv{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease-cine),transform .9s var(--ease-cine)}
body.ready .hv{opacity:1;transform:none;transition-delay:calc(var(--i,0) * 70ms + .18s)}

/* ================= credential band: the reference's press strip, with what Josh can actually claim ================= */
.cred{background-color:var(--ink);background-image:linear-gradient(to bottom,rgba(4,11,24,.5),rgba(4,11,24,0) 40%),var(--lit-navy);position:relative;color:#fff}
.cred::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16) 20%,rgba(255,255,255,.16) 80%,transparent)}
.cred-in{display:flex;align-items:center;gap:clamp(24px,3vw,48px);max-width:1560px;margin:0 auto;padding:clamp(22px,2.4vw,30px) clamp(20px,3vw,48px)}
.cred-lab{flex:none;font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);padding-right:clamp(20px,2.6vw,40px);border-right:1px solid rgba(255,255,255,.18);line-height:1.5}
.cred-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:1;min-width:0;gap:14px 24px}
@media (min-width:1500px){.cred-list{display:flex;justify-content:space-between;align-items:center;gap:clamp(14px,2vw,36px)}}
.cred-list li{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.86)}
.cred-list li b{font-family:var(--fd);font-weight:700;font-size:20px;letter-spacing:-.01em;text-transform:none;color:#fff;margin-right:8px;font-variant-numeric:lining-nums}
.cred-list li{display:inline-flex;align-items:baseline;white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .7s var(--ease-cine),transform .7s var(--ease-cine)}
body.ready .cred-list li{opacity:1;transform:none}
body.ready .cred-list li:nth-child(1){transition-delay:.9s}body.ready .cred-list li:nth-child(2){transition-delay:1s}body.ready .cred-list li:nth-child(3){transition-delay:1.1s}body.ready .cred-list li:nth-child(4){transition-delay:1.2s}

/* ================= fit finder: Josh's abbreviated questionnaire, one step per screen, on the page ================= */
.fit{padding-block:clamp(60px,6.4vw,100px)}
.fit-head{text-align:center;max-width:760px;margin:0 auto clamp(32px,3.6vw,52px)}
.fit-head .logo{height:36px;margin:0 auto 28px}
.fit-head .eyebrow{margin-bottom:16px}
.fit-head h2{font-size:clamp(30px,3.6vw,48px);color:#fff;letter-spacing:-.024em;line-height:1.02;margin-bottom:16px}
.fit-head h2 .it{font-style:italic;color:var(--accent);font-weight:600}
.fit-head .lede{margin:0 auto;max-width:54ch}
.fitbox{position:relative;max-width:900px;margin:0 auto;border:1px solid rgba(255,255,255,.16);background:rgba(4,11,24,.42);box-shadow:0 40px 90px -50px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.06);padding:clamp(24px,3.2vw,40px) clamp(20px,3.4vw,48px) clamp(24px,3.2vw,36px)}
.fitbox::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--accent)}
.fittop{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.14)}
.fitstep{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.fitbar{display:flex;gap:4px;width:170px}
.fitbar i{flex:1;height:2px;background:rgba(255,255,255,.18);transition:background .4s var(--ease-out)}
.fitbar i.on{background:var(--accent)}
.fitstage{transition:opacity .22s var(--ease-out),transform .22s var(--ease-out)}
.fitstage.out{opacity:0;transform:translateY(8px)}
.fitq{font-size:clamp(22px,2.4vw,31px);color:#fff;line-height:1.14;letter-spacing:-.018em;margin-bottom:10px}
.fithint{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.58);margin-bottom:22px;max-width:64ch}
.fitopts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fitopts.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fitopt{display:block;width:100%;text-align:left;padding:17px 20px;border:1px solid rgba(255,255,255,.22);border-radius:2px;color:#fff;background:rgba(255,255,255,.02);transition:border-color .25s ease,background .3s var(--ease-out),transform .16s var(--ease-out),color .3s var(--ease-out)}
.fitopt b{display:block;font-size:15px;font-weight:600;letter-spacing:-.005em;line-height:1.3}
.fitopt span{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:rgba(255,255,255,.58);transition:color .3s var(--ease-out)}
.fitopt.multi{padding-left:46px;position:relative}
.fitopt.multi::before{content:"";position:absolute;left:18px;top:19px;width:14px;height:14px;border:1px solid rgba(255,255,255,.45);border-radius:2px;transition:background .2s,border-color .2s}
.fitopt.multi[aria-pressed="true"]::before{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 3px var(--ink)}
@media (hover:hover) and (pointer:fine){.fitopt:hover{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.06)}}
.fitopt:active{transform:scale(.985)}
.fitopt[aria-checked="true"]{background:#fff;color:var(--ink);border-color:#fff}
.fitopt[aria-checked="true"] span{color:var(--muted)}
.fitopt.multi[aria-pressed="true"]{border-color:rgba(255,255,255,.7);background:rgba(255,255,255,.08)}
.fitfoot{margin-top:14px;font-size:13px;color:rgba(255,255,255,.5)}
.fitgroup{padding:18px 0;border-top:1px solid rgba(255,255,255,.12)}
.fitgroup:first-child{border-top:0;padding-top:0}
.fitgroup .gl{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:12px}
.fitrow{display:flex;flex-wrap:wrap;gap:8px}
.fitrow .fitopt{width:auto;padding:11px 16px;font-size:14px}
.fitrow .fitopt b{font-size:14px;font-weight:500}
.fitfields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.fitfield{display:block}.fitfield.wide{grid-column:1/-1}
.fitfield .fl{display:block;font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:8px}
.fitfield .fl em{font-style:normal;color:var(--accent)}
.fitfield input,.fitfield textarea,.fitfield select{width:100%;font:inherit;font-size:15.5px;color:#fff;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.22);border-radius:2px;padding:13px 15px;outline:0;transition:border-color .25s ease,background .25s ease;-webkit-appearance:none;appearance:none}
.fitfield textarea{min-height:88px;resize:vertical}
.fitfield select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF6A00' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;padding-right:40px}
.fitfield select option{color:var(--ink)}
.fitfield input::placeholder,.fitfield textarea::placeholder{color:rgba(255,255,255,.34)}
.fitfield input:focus,.fitfield textarea:focus,.fitfield select:focus{border-color:var(--accent);background:rgba(255,255,255,.08)}
.fitfield.err input,.fitfield.err select{border-color:#FFB27A}
.fiterr{display:none;margin-top:6px;font-size:12.5px;color:#FFB27A}
.fitfield.err .fiterr{display:block}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px}
.chips span{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.2);padding:6px 10px;border-radius:2px}
.consent{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;align-items:start;margin-top:18px;font-size:13px;line-height:1.5;color:rgba(255,255,255,.6);cursor:pointer}
.consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--accent)}
.consent.err{color:#FFB27A}
.fitnav{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:26px}
.fitnav .btn{padding:12px 12px 12px 22px}
.fitnav .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}
.fitnav .btn-ghost svg{background:rgba(255,255,255,.12);color:var(--accent)}
.fitnav .btn-ghost:hover{background:#fff;color:var(--ink)}
.fitskip{margin-left:auto;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:2px;transition:color .25s}
.fitskip:hover{color:#fff}
.fitnav .reassure{margin:0;color:rgba(255,255,255,.5);flex-basis:100%}
.fitdone{text-align:center;padding:clamp(18px,3vw,40px) 0}
.fitdone .mark{width:54px;height:54px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;color:var(--accent)}
.fitdone .mark svg{width:22px;height:22px}
.fitdone h3{font-size:clamp(24px,2.6vw,34px);color:#fff;letter-spacing:-.02em;margin-bottom:12px}
.fitdone p{font-size:16px;line-height:1.6;color:rgba(255,255,255,.66);max-width:48ch;margin:0 auto}
.fitdone .btn{margin-top:26px}
.fitfall{text-align:center;padding:20px 0}
.fitfall .btn{margin-top:10px}

/* ================= chapters ================= */
.chapter{padding-block:var(--pad)}
.chapter.tight{padding-top:0}
.ch-open{display:grid;grid-template-columns:minmax(0,1fr);align-items:end;margin-bottom:clamp(28px,3.4vw,52px);padding-bottom:clamp(22px,2.6vw,36px);border-bottom:1px solid var(--hairline)}
.dark .ch-open{border-bottom-color:rgba(255,255,255,.14)}
.dark .ch-head{padding-bottom:6px}
.ch-run{font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.ch-run i{width:22px;height:1px;background:var(--accent);flex:none}
.dark .ch-run{color:rgba(255,255,255,.5)}
.ch-title{font-family:var(--fd);font-weight:700;color:var(--ink);font-size:clamp(28px,3.3vw,46px);line-height:1.04;letter-spacing:-.022em}
.dark .ch-title{color:#fff}
.ch-title .it{font-style:italic;color:var(--accent-text);font-weight:600}
.hl{background:linear-gradient(rgba(255,106,0,.2),rgba(255,106,0,.2));-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:.02em .1em;margin:0 -.1em;border-radius:2px}
.dark .hl{background:linear-gradient(rgba(255,106,0,.3),rgba(255,106,0,.3))}
.ch-open.center{text-align:center;justify-items:center;border-bottom:0;padding-bottom:0}
.ch-open.center .ch-run{justify-content:center}
.ch-open.center .ch-title{max-width:22ch}

/* full-bleed photograph with clip reveal */
.bleed{position:relative;overflow:hidden;margin:0}
.bleed img{width:100%;height:clamp(340px,40vw,540px);object-fit:cover;object-position:center 58%;transform:scale(1.06);transition:transform 1.8s var(--ease-cine)}
.bleed.in img{transform:none}
.bleed .veil{position:absolute;inset:0;background:var(--canvas);transform-origin:top;transition:transform 1.3s var(--ease-cine)}
.dark .bleed .veil{background:var(--ink)}
.bleed.in .veil{transform:scaleY(0)}
.bleed figcaption{position:absolute;left:0;right:0;bottom:0;padding:clamp(38px,4.6vw,68px) 0 clamp(28px,3.4vw,48px);background:linear-gradient(to top,rgba(4,11,24,.9) 0%,rgba(4,11,24,.72) 46%,rgba(4,11,24,.28) 76%,transparent 100%)}
.bleed figcaption span{display:block;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut);font-family:var(--fd);font-size:clamp(16px,1.5vw,21px);font-weight:500;line-height:1.35;color:#fff;letter-spacing:-.01em}
.bleed figcaption span b{display:flex;align-items:center;gap:12px;font-family:var(--fb);font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.bleed figcaption span b::before{content:"";width:22px;height:1px;background:var(--accent);flex:none}

/* the position: three columns that narrow, the third lit navy */
.pov{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.02fr) minmax(0,.86fr);margin-top:clamp(48px,5.5vw,86px);border-top:1px solid var(--hairline)}
.pov-c{padding:34px 32px 34px 0;border-right:1px solid var(--hairline)}
.pov-c:nth-child(2){padding-left:34px}
.pov-c:last-child{border-right:0;background-color:var(--ink);background-image:var(--lit-navy);padding:44px 36px;box-shadow:0 40px 90px -50px rgba(10,29,58,.6)}
.pov-c .numbig{margin-bottom:24px}
.pov-c:last-child .numbig{color:rgba(255,255,255,.26)}
.pov-c p{font-family:var(--fd);font-size:clamp(17px,1.5vw,22px);line-height:1.3;color:var(--ink);font-weight:500;letter-spacing:-.012em}
.pov-c:nth-child(2) p{font-size:clamp(19px,1.68vw,24px)}
.pov-c:last-child p{color:#fff;font-size:clamp(18px,1.5vw,21px)}

/* broker vs coach comparison (about page) */
.cmp-wrap{margin-top:0}
.cmp-lead{font-family:var(--fd);font-size:clamp(22px,2.4vw,34px);font-weight:700;color:var(--ink);line-height:1.1;letter-spacing:-.02em;max-width:22ch;margin-bottom:clamp(30px,3.6vw,52px)}
.cmp-lead .it{font-style:italic;color:var(--accent-text);font-weight:600}
.cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--hairline)}
.cmp-h{padding:22px clamp(22px,2.6vw,34px);border-bottom:1px solid var(--hairline);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.cmp-i{display:grid;grid-template-columns:18px minmax(0,1fr);gap:15px;align-items:start;padding:20px clamp(20px,2.2vw,28px);border-bottom:1px solid var(--hairline-2);font-size:15.5px;line-height:1.54}
.cmp-i svg{width:18px;height:18px;margin-top:2px;color:var(--faint)}
.cmp-h,.cmp-i{border-right:1px solid var(--hairline)}
.cmp-r{background:var(--ink);color:#fff;border-right:0}
.cmp-r.cmp-h{border-bottom-color:rgba(255,255,255,.18);color:var(--accent)}
.cmp-r.cmp-i{border-bottom-color:rgba(255,255,255,.11)}
.cmp-r svg{color:var(--accent)}
.cmp-last{border-bottom:0}

/* the process: photograph left, five steps right */
.proc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(34px,4.6vw,74px);align-items:start}
.proc-fig{position:sticky;top:calc(var(--nav-h) + 34px);overflow:hidden}
.proc-fig img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 78%;transition:transform 1.3s var(--ease-cine)}
.proc-fig:hover img{transform:scale(1.028)}
.proc-fig .cap{margin-top:20px;font-size:14px;color:var(--muted);line-height:1.55}
.proc-list{border-top:1px solid var(--hairline)}
.proc-row{display:grid;grid-template-columns:clamp(50px,5vw,80px) minmax(0,1fr);gap:clamp(14px,2.2vw,30px);padding-block:26px;border-bottom:1px solid var(--hairline);align-items:start}
.proc-row>*{transition:transform .45s var(--ease-cine)}
@media (hover:hover){.proc-row:hover>*{transform:translateX(12px)}.proc-row:hover .numbig{color:var(--accent)}}
.proc-row h3{font-family:var(--fd);font-size:clamp(18px,1.4vw,22px);font-weight:700;margin-bottom:9px;letter-spacing:-.01em}
.proc-row p{font-size:15.5px;line-height:1.6;max-width:56ch}

/* where the money is: reasons + category strip */
.why{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.14);margin-bottom:clamp(44px,5vw,72px)}
.why-c{padding:clamp(24px,2.4vw,34px) clamp(24px,2.8vw,40px) clamp(24px,2.4vw,34px) 0;border-bottom:1px solid rgba(255,255,255,.14)}
.why-c:nth-child(odd){border-right:1px solid rgba(255,255,255,.14)}
.why-c:nth-child(even){padding-left:clamp(30px,3.4vw,52px)}
.why-c:nth-child(n+3){border-bottom:0}
.why-c .numbig{margin-bottom:16px;font-size:clamp(32px,2.6vw,42px)}
.why-c h3{font-size:clamp(17px,1.4vw,21px);margin-bottom:12px;letter-spacing:-.014em}
.why-c p{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.68);max-width:38ch}
.strip-wrap{position:relative}
.strip{display:flex;gap:3px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-inline:var(--edge);scroll-padding-inline:var(--edge)}
.strip::-webkit-scrollbar{display:none}
.cat{position:relative;flex:0 0 clamp(280px,30vw,440px);height:clamp(320px,36vw,480px);overflow:hidden;background:var(--ink-deep);scroll-snap-align:start}
.cat img{width:100%;height:100%;object-fit:cover;opacity:.88;transition:opacity .5s var(--ease-cine),transform .9s var(--ease-cine)}
.cat:hover img{opacity:1;transform:scale(1.04)}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(6,16,32,.92),rgba(6,16,32,.05) 60%)}
.cat .lab{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(26px,2.6vw,38px) clamp(22px,2.2vw,30px)}
.cat .lab b{display:block;font-family:var(--fd);font-size:clamp(17px,1.4vw,22px);font-weight:700;color:#fff;letter-spacing:-.01em}
.cat .lab span{display:block;font-size:14px;color:rgba(255,255,255,.72);margin-top:8px;line-height:1.45}
.strip-nav{display:flex;gap:2px;justify-content:flex-end;margin-top:22px;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}
.strip-nav button{width:52px;height:52px;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center;color:#fff;transition:background .3s,border-color .3s,color .3s,transform .16s var(--ease-out)}
.strip-nav button:hover{background:#fff;color:var(--ink);border-color:#fff}.strip-nav button:active{transform:scale(.96)}
.strip-nav svg{width:18px;height:18px}
.cats-foot{margin-top:clamp(28px,3vw,44px);font-family:var(--fd);font-size:clamp(17px,1.5vw,21px);font-weight:500;line-height:1.36;color:rgba(255,255,255,.92);max-width:56ch}

/* the insider (about page): the portrait fills its column, the name set under it */
.insider{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-height:clamp(520px,70vh,720px)}
.insider-fig{position:relative;overflow:hidden;background:var(--ink)}
.insider-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;transform:scale(1.04);opacity:0;transition:opacity 1.4s var(--ease-cine),transform 2.2s var(--ease-cine)}
.insider-fig.in img{opacity:1;transform:none}
.insider-fig::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,13,28,.9) 0%,rgba(5,13,28,.3) 30%,transparent 52%)}
.insider-fig .name{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 clamp(24px,3.4vw,56px) clamp(30px,3.6vw,56px) max(var(--gut),calc((100vw - 1600px)/2 + var(--gut)))}
.insider-fig .name span{display:block;font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.insider-fig .name b{display:block;font-family:var(--fd);font-size:clamp(30px,3.4vw,52px);line-height:.94;letter-spacing:-.03em;color:#fff;font-weight:700}
.insider-fig .name em{display:block;font-style:normal;margin-top:16px;font-size:15px;line-height:1.5;color:rgba(255,255,255,.7);max-width:40ch}
.insider-copy{padding:var(--pad) max(var(--gut),calc((100vw - 1600px)/2 + var(--gut))) var(--pad) clamp(28px,4vw,72px);align-self:center}
.tl{border-top:1px solid rgba(255,255,255,.16);margin-top:40px}
.tl-r{display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,1fr);gap:clamp(14px,2.4vw,34px);padding-block:24px;border-bottom:1px solid rgba(255,255,255,.12);align-items:start}
.tl-r h3{font-family:var(--fd);font-size:17px;font-weight:700;color:#fff;line-height:1.3}
.tl-r p{font-size:16px;line-height:1.6;color:rgba(255,255,255,.66);max-width:52ch}
.pq{margin-top:44px;padding-top:32px;border-top:2px solid var(--accent)}
.pq q{display:block;font-family:var(--fd);font-style:italic;font-weight:600;font-size:clamp(20px,1.9vw,26px);line-height:1.24;color:#fff;letter-spacing:-.014em;quotes:none;hanging-punctuation:first;text-indent:-.42em}
.pq q::before{content:"\201C"}.pq q::after{content:"\201D"}

/* the show */
.pod{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(32px,4.4vw,68px);align-items:start}
.pod .lede{font-family:var(--fd);font-size:clamp(20px,2.1vw,30px);line-height:1.32;font-weight:500;color:var(--ink);letter-spacing:-.014em;max-width:24ch}
.pod-side{border-left:1px solid var(--hairline);padding-left:clamp(24px,2.6vw,40px)}
.pod-k{display:flex;align-items:center;gap:12px;font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.pod-k::before{content:"";width:22px;height:1px;background:var(--accent);flex:none}
.pod-start{font-size:17px;line-height:1.56;color:var(--body);margin-bottom:28px;max-width:34ch}
.guests{margin-top:clamp(48px,5.5vw,80px);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);overflow:hidden;position:relative;background:rgba(255,255,255,.5)}
.guests-l{position:absolute;left:0;top:0;bottom:0;z-index:2;display:flex;align-items:center;padding-inline:var(--gut) 34px;background:linear-gradient(90deg,#F7F8FA 62%,rgba(247,248,250,0));font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.gtrack{display:flex;width:max-content;animation:belt 60s linear infinite;padding-block:26px}
.guests:hover .gtrack{animation-play-state:paused}
.gpass{display:flex;flex:none}
.gitem{flex:none;padding-right:64px;font-family:var(--fd);font-size:clamp(20px,2vw,28px);font-weight:600;color:var(--ink);white-space:nowrap;letter-spacing:-.01em}
.gitem span{font-family:var(--fb);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-left:14px}
@keyframes belt{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.epidx{list-style:none;margin:clamp(38px,4.4vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(34px,4vw,68px);border-top:1px solid var(--hairline)}
.epidx li{display:grid;grid-template-columns:clamp(38px,3.4vw,54px) minmax(0,1fr);gap:clamp(12px,1.6vw,22px);align-items:baseline;padding:clamp(18px,1.9vw,24px) 0;border-bottom:1px solid var(--hairline-2)}
.epidx li>*{transition:transform .42s var(--ease-cine),color .32s var(--ease-cine)}
@media (hover:hover){.epidx li:hover>*{transform:translateX(7px)}.epidx li:hover .epn{color:var(--accent)}}
.epn{font-family:var(--fd);font-weight:700;font-size:clamp(19px,1.6vw,24px);color:var(--muted);letter-spacing:-.02em;font-variant-numeric:lining-nums}
.epidx b{display:block;font-family:var(--fd);font-size:clamp(17.5px,1.42vw,21px);font-weight:700;color:var(--ink);line-height:1.28;letter-spacing:-.012em}
.epidx span{display:block;margin-top:8px;font-size:12.5px;line-height:1.5;color:var(--muted)}

/* the call: contact + faq */
.call{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(40px,6vw,110px);align-items:start}
.call-l{position:sticky;top:calc(var(--nav-h) + 40px)}
.call-l .display{font-size:clamp(34px,4.2vw,60px);margin-bottom:26px}
.call.solo{grid-template-columns:minmax(0,1fr);max-width:860px}
.ctiles{display:grid;gap:2px;margin-top:36px;border:1px solid rgba(255,255,255,.16)}
.ctile{display:flex;align-items:center;gap:15px;padding:22px 24px;transition:background .3s var(--ease-cine)}
.ctile:hover{background:rgba(255,255,255,.06)}
.ctile svg{width:20px;height:20px;color:var(--accent);flex:none;stroke-width:1.5}
.ctile .k{display:block;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.ctile .v{display:block;font-size:14.5px;font-weight:600;color:#fff;margin-top:4px;word-break:break-word}
/* the closing on the home page: centred, like the reference's "book a call" */
.close-c{text-align:center;max-width:760px;margin:0 auto}
.close-c .lede{margin:0 auto}
.close-c .btn{margin-top:30px}
.close-c .ctiles{grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px;margin:clamp(40px,4.6vw,64px) auto 0;text-align:left}
.close-c .ctile{border-right:1px solid rgba(255,255,255,.12)}.close-c .ctile:last-child{border-right:0}
.faq-l{border-top:1px solid rgba(255,255,255,.16)}
.faq-i{border-bottom:1px solid rgba(255,255,255,.12)}
.faq-q{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:24px;align-items:start;padding:22px 0;text-align:left;font-family:var(--fd);font-size:clamp(17px,1.4vw,21px);font-weight:700;color:#fff;line-height:1.3;letter-spacing:-.012em;transition:color .25s}
.faq-q:hover{color:var(--accent)}
.faq-ic{width:22px;height:22px;position:relative;margin-top:5px;transition:transform .4s var(--ease)}
.faq-ic::before,.faq-ic::after{content:"";position:absolute;left:50%;top:50%;background:var(--accent);transform:translate(-50%,-50%);transition:opacity .3s}
.faq-ic::before{width:13px;height:1.5px}.faq-ic::after{width:1.5px;height:13px}
.faq-i.open .faq-ic{transform:rotate(90deg)}.faq-i.open .faq-ic::after{opacity:0}
.faq-a{overflow:hidden;height:0;transition:height .44s var(--ease)}
.faq-a p{font-size:15.5px;line-height:1.66;color:rgba(255,255,255,.7);max-width:62ch;padding-bottom:28px}
.teaser-act{margin-top:34px}

/* ================= photographs move with the scroll (native timeline, no hijack) ================= */
@supports (animation-timeline: view()){
  .bleed img,.proc-fig>img,.insider-fig img{animation:zoomin linear both;animation-timeline:view();animation-range:entry 0% cover 55%}
  @keyframes zoomin{from{transform:scale(1.16) translateY(3%)}to{transform:scale(1) translateY(0)}}
  .bleed figcaption{animation:capin linear both;animation-timeline:view();animation-range:entry 40% cover 70%}
  @keyframes capin{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
}
/* categories: an accordion that opens under the cursor on desktop */
@media (min-width:1060px) and (pointer:fine){
  .strip{display:flex;gap:3px;overflow:visible;scroll-snap-type:none;padding-inline:var(--gut);max-width:1600px;margin:0 auto}
  .cat{flex:1 1 0;min-width:0;transition:flex 1.05s var(--ease-cine)}
  .strip:hover .cat{flex:.74}
  .strip .cat:hover{flex:2.4}
  .strip .cat:hover img{opacity:1;transform:scale(1.03)}
  .cat .lab{transition:opacity .7s var(--ease-cine)}
  .strip:hover .cat:not(:hover) .lab{opacity:.28}
  .strip:hover .cat:not(:hover) .lab span{opacity:0}
  .strip-nav{display:none}
}

/* ================= footer: a closing plate ================= */
.foot{background:var(--ink-deep);color:rgba(255,255,255,.6);padding-block:clamp(48px,5vw,76px) 30px;font-size:14px;position:relative}
.foot::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14) 22%,rgba(255,255,255,.14) 78%,transparent)}
.foot .brand{--logo-box:#fff;--logo-on-box:var(--ink);color:#fff}
.foot-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,4vw,64px);align-items:center;padding-bottom:clamp(36px,4vw,56px);border-bottom:1px solid rgba(255,255,255,.12)}
.foot-line{font-family:var(--fd);font-weight:700;font-size:clamp(22px,2.3vw,34px);line-height:1.04;letter-spacing:-.024em;color:#fff;max-width:18ch;text-wrap:balance}
.foot-line span{font-style:italic;font-weight:600;color:var(--accent)}
.foot .btn-ghost{border-color:rgba(255,255,255,.34);color:#fff}
.foot .btn-ghost:hover{background:#fff;color:var(--ink)}
.foot-g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,4vw,80px);padding-block:clamp(36px,4vw,56px);border-bottom:1px solid rgba(255,255,255,.12)}
.foot-brand p{line-height:1.65;max-width:38ch;margin-top:20px;color:rgba(255,255,255,.56)}
.foot h4{font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:18px}
.foot li{margin-bottom:11px}.foot li a{color:rgba(255,255,255,.78);transition:color .25s}.foot li a:hover{color:var(--accent)}
.fsoc{display:flex;gap:2px;margin-top:22px}
.fsoc a{width:42px;height:42px;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;color:rgba(255,255,255,.7);transition:border-color .25s,color .25s}
.fsoc a:hover{border-color:var(--accent);color:var(--accent)}.fsoc svg{width:16px;height:16px}
.flegal{padding-top:28px;font-size:12px;line-height:1.7;color:rgba(255,255,255,.34);columns:2;column-gap:clamp(28px,4vw,64px)}
.flegal p{break-inside:avoid}.flegal p+p{margin-top:12px}
.fcopy{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:12px 26px;justify-content:space-between;font-size:12.5px;color:rgba(255,255,255,.42)}

/* ================= motion ================= */
[data-r]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease-cine),transform .9s var(--ease-cine),filter .9s var(--ease-cine)}
[data-r].in{opacity:1;transform:none}
.ch-title[data-r],h2[data-r]{filter:blur(5px)}.ch-title[data-r].in,h2[data-r].in{filter:none}
[data-d="1"]{transition-delay:.09s}[data-d="2"]{transition-delay:.18s}[data-d="3"]{transition-delay:.27s}[data-d="4"]{transition-delay:.36s}

/* ================= inner pages ================= */
.page-head{padding:calc(var(--nav-h) + clamp(44px,5.6vw,80px)) 0 clamp(36px,4.4vw,64px);position:relative}
.page-head .ch-open{margin-bottom:0;border-bottom:0;padding-bottom:0}
.page-head .ch-title{font-size:clamp(30px,3.9vw,54px);max-width:16ch}
.page-head .lede{margin-top:22px}

/* ================= responsive ================= */
@media (min-width:1700px){:root{--maxw:1440px}}
@media (min-width:2200px){:root{--maxw:1600px}}
@media (max-width:1240px){.nav-links{gap:14px}.nav-links a{font-size:11.5px;letter-spacing:.12em}}
/* short laptop windows: the whole hero, stats included, stays above the fold */
@media (max-height:780px) and (min-width:901px){.hero{padding-top:calc(var(--nav-h) + 12px)}.hero-copy{padding-block:24px}.hero .eyebrow{margin-bottom:14px}.hero h1{margin-bottom:16px}.hero-sub{margin-bottom:18px}.hstats{margin-top:22px;padding-top:18px}.hstat svg{margin-bottom:8px}}
@media (max-width:1060px){
  .nav-links,.nav-ic,.nav-cta{display:none}.burger{display:grid}
  .cred-in{flex-direction:column;align-items:stretch;gap:16px}.cred-lab{border-right:0;padding-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:14px}
  .proc{grid-template-columns:minmax(0,1fr)}.proc-fig{position:static}.proc-fig img{aspect-ratio:16/9}
  .why-c{padding-right:24px}.why-c:nth-child(even){padding-left:24px}
  .insider{grid-template-columns:minmax(0,1fr)}.insider-fig{min-height:min(78vw,560px)}
  .insider-copy{padding:clamp(48px,6vw,80px) var(--gut)}
  .pod{grid-template-columns:minmax(0,1fr);gap:32px}.pod-side{border-left:0;border-top:1px solid var(--hairline);padding:26px 0 0}
  .call{grid-template-columns:minmax(0,1fr);gap:44px}.call-l{position:static}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:minmax(0,1fr);min-height:0}
  .hero-photo{order:-1;min-height:min(92vw,520px)}
  .hero-photo img{object-position:50% 30%}
  .hero{padding-top:calc(var(--nav-h) + 16px)}.hero-copy{padding:clamp(36px,7vw,56px) var(--gut) clamp(40px,7vw,60px)}
  .hero h1{font-size:clamp(36px,9vw,60px)}
  .hero-quote{display:none}
  .fitopts,.fitopts.cols-3{grid-template-columns:minmax(0,1fr)}.fitfields{grid-template-columns:minmax(0,1fr)}.fitskip{margin-left:0}
  .ch-open{grid-template-columns:minmax(0,1fr);gap:10px}
  .pov{grid-template-columns:minmax(0,1fr)}.pov-c,.pov-c:nth-child(2){border-right:0;border-bottom:1px solid var(--hairline);padding:30px 0}.pov-c:last-child{padding:30px 28px;border-bottom:0}
  .cmp{grid-template-columns:minmax(0,1fr)}.cmp>*{border-right:0}.cmp>:nth-child(odd){order:0}.cmp>:nth-child(even){order:1}.cmp>:nth-child(7){border-bottom:1px solid var(--hairline)}.cmp-last{border-bottom:0}
  .close-c .ctiles{grid-template-columns:minmax(0,1fr)}.close-c .ctile{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.close-c .ctile:last-child{border-bottom:0}
  .foot-g{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.foot-g>div:first-child{grid-column:1/-1}.foot-top{grid-template-columns:minmax(0,1fr)}.flegal{columns:1}
}
@media (max-width:640px){
  :root{--gut:20px;--pad:clamp(56px,12vw,80px)}
  
  .hstats{grid-template-columns:minmax(0,1fr);gap:0;padding-top:0}
  .hstat,.hstat+.hstat{border-left:0;border-bottom:1px solid var(--hairline);padding:14px 0;display:grid;grid-template-columns:22px auto minmax(0,1fr);align-items:center;gap:14px}
  .hstat svg{margin:0}.hstat .l{margin-top:0;max-width:none}
  .btn{width:100%;padding:19px 22px}.hero-cta{align-self:stretch}.fitnav .btn{width:100%}
  .cred-list{grid-template-columns:minmax(0,1fr)}.cred-list li{white-space:normal}
  .why{grid-template-columns:minmax(0,1fr)}.why-c,.why-c:nth-child(odd),.why-c:nth-child(even){border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:26px 0}.why-c:last-child{border-bottom:0}
  .cat{flex-basis:78vw;height:clamp(300px,90vw,420px)}
  .tl-r{grid-template-columns:minmax(0,1fr);gap:8px}.epidx{grid-template-columns:minmax(0,1fr)}
  .foot-g{grid-template-columns:minmax(0,1fr)}.fcopy{flex-direction:column}.foot .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  [data-r]{opacity:1;transform:none;filter:none}.hv{opacity:1;transform:none}.cred-list li{opacity:1;transform:none}
  .hero h1 .ln>span{transform:none}.hero-photo img{opacity:1;transform:none;animation:none}
  .bleed .veil{transform:scaleY(0)}.bleed img{transform:none}.insider-fig img{transform:none;opacity:1}
  .gtrack{animation:none}
}

/* ================= podcast: one stage, every episode plays in it ================= */
.feat{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.vstage{position:relative;aspect-ratio:16/9;background:var(--ink);overflow:hidden;box-shadow:0 50px 100px -50px rgba(10,29,58,.6)}
.vstage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vposter{position:absolute;inset:0;width:100%;height:100%;display:block;padding:0;cursor:pointer}
.vposter img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-cine),filter .6s var(--ease-cine)}
.vposter::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(6,16,32,.72),rgba(6,16,32,.12) 55%,rgba(6,16,32,.2));transition:opacity .5s var(--ease-cine)}
.vposter:hover img{transform:scale(1.03)}
.vposter:hover::after{opacity:.75}
.pl{position:absolute;z-index:2;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 20px 40px -18px rgba(0,0,0,.6);transition:transform .35s var(--ease-cine),background .3s}
.pl svg{width:20px;height:20px;margin-left:2px}
.pl.big{left:50%;top:50%;width:84px;height:84px;transform:translate(-50%,-50%)}.pl.big svg{width:30px;height:30px}
.vposter:hover .pl.big{transform:translate(-50%,-50%) scale(1.06);background:var(--accent)}
.feat-copy .ch-run{margin-bottom:14px}
.feat-title{font-family:var(--fd);font-weight:700;color:var(--ink);font-size:clamp(26px,2.6vw,36px);line-height:1.08;letter-spacing:-.02em;margin-bottom:12px}
.feat-guest{font-size:15px;color:var(--body);margin-bottom:16px;line-height:1.5}
.feat-copy .small{margin-bottom:18px}
.feat-meta{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

/* ================= about: three pillars ================= */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hairline)}
.pillar{padding:32px clamp(20px,2.6vw,40px) 32px 0;border-right:1px solid var(--hairline)}
.pillar+.pillar{padding-left:clamp(20px,2.6vw,40px)}.pillar:last-child{border-right:0}
.pillar .numbig{margin-bottom:18px;font-size:clamp(30px,2.6vw,40px)}
.pillar h3{font-size:clamp(19px,1.5vw,23px);margin-bottom:12px;letter-spacing:-.014em}
.pillar p{font-size:15.5px;line-height:1.6;color:var(--body);max-width:36ch}
.pillars-foot{margin-top:clamp(30px,3.4vw,48px);font-family:var(--fd);font-size:clamp(18px,1.6vw,23px);font-weight:500;line-height:1.36;color:var(--ink);max-width:56ch;letter-spacing:-.01em}

/* ================= process: three paths ================= */
.paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
.path{padding:clamp(26px,2.8vw,40px);background:#fff;border:1px solid var(--hairline);transition:transform .5s var(--ease-cine),box-shadow .5s var(--ease-cine),border-color .4s}
@media (hover:hover){.path:hover{transform:translateY(-4px);box-shadow:0 40px 80px -48px rgba(10,29,58,.5);border-color:transparent}.path:hover .numbig{color:var(--accent)}}
.path .numbig{margin-bottom:18px;font-size:clamp(30px,2.6vw,40px)}
.path h3{font-size:clamp(19px,1.5vw,23px);margin-bottom:12px;letter-spacing:-.014em}
.path p{font-size:15px;line-height:1.6;color:var(--body)}

/* ================= home: who you are working with ================= */
.who{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,84px);align-items:center}
.who-fig{margin:0;position:relative;max-width:440px;aspect-ratio:4/5;overflow:hidden;background:var(--ink-deep);box-shadow:0 50px 100px -50px rgba(0,0,0,.8)}
.who-fig img{width:100%;height:100%;object-fit:cover;object-position:50% 100%}
.who-fig figcaption{position:absolute;left:0;right:0;bottom:0;padding:70px 24px 22px;background:linear-gradient(to top,rgba(5,13,28,.92),rgba(5,13,28,0));font-size:13px;line-height:1.5;color:rgba(255,255,255,.7)}
.who-fig figcaption span{display:block;font-family:var(--fd);font-size:22px;font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:4px}
.who-copy .ch-open{margin-bottom:clamp(20px,2.4vw,34px)}
.who-list{border-top:1px solid rgba(255,255,255,.14);margin-bottom:30px}
.who-i{display:grid;grid-template-columns:minmax(0,.32fr) minmax(0,1fr);gap:clamp(14px,2.4vw,34px);padding-block:20px;border-bottom:1px solid rgba(255,255,255,.12)}
.who-i h3{font-family:var(--fd);font-size:18px;font-weight:700;color:#fff;line-height:1.3}
.who-i p{font-size:15.5px;line-height:1.6;color:rgba(255,255,255,.68)}

/* ================= the offer ================= */
.offers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.offer{padding:30px clamp(18px,2.2vw,32px) 30px 0;border-right:1px solid var(--hairline)}
.offer+.offer{padding-left:clamp(18px,2.2vw,32px)}.offer:last-child{border-right:0}
.offer b{display:block;font-family:var(--fd);font-weight:700;font-size:clamp(30px,2.6vw,40px);line-height:1;letter-spacing:-.03em;color:var(--accent-text);margin-bottom:16px;font-variant-numeric:lining-nums}
.offer h3{font-size:17px;margin-bottom:10px;letter-spacing:-.012em}
.offer p{font-size:14.5px;line-height:1.6;color:var(--body)}
.offers-foot{margin-top:24px;font-size:15px;color:var(--body);max-width:70ch}
.offers-foot a,.tlink{color:var(--accent-text);font-weight:600;border-bottom:1px solid currentColor;transition:color .25s}
.offers-foot a:hover,.tlink:hover{color:var(--ink)}

/* ================= request an introduction: a light form in numbered groups ================= */
.rform{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--hairline);padding:clamp(24px,3.4vw,48px) clamp(20px,3.4vw,48px);position:relative;box-shadow:0 40px 90px -56px rgba(10,29,58,.45)}
.rform::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--accent)}
.rf-set{border:0;margin:0;padding:0 0 clamp(26px,3vw,40px);min-width:0;position:relative}
.rf-set+.rf-set{padding-top:clamp(26px,3vw,40px)}
.rf-set+.rf-set::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--hairline)}
.rf-set legend{display:flex;align-items:baseline;gap:14px;font-family:var(--fd);font-size:clamp(20px,1.8vw,26px);font-weight:700;color:var(--ink);letter-spacing:-.016em;margin-bottom:16px;padding:0}
.rf-n{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--accent-text);font-family:var(--fb)}
.rf-lead{font-size:14.5px;line-height:1.6;color:var(--muted);max-width:64ch;margin-bottom:20px}
.rf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.rf-f{display:block}.rf-f.wide{grid-column:1/-1}
.rf-f .fl{display:block;font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.rf-f .fl em{font-style:normal;color:var(--accent-text)}
.rf-f input,.rf-f textarea,.rf-f select{width:100%;font:inherit;font-size:15.5px;color:var(--ink);background:#fff;border:1px solid #CBD3DC;border-radius:2px;padding:13px 15px;outline:0;transition:border-color .25s ease,box-shadow .25s ease;-webkit-appearance:none;appearance:none}
.rf-f textarea{min-height:96px;resize:vertical}
.rf-f select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF6A00' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;padding-right:40px}
.rf-f input::placeholder,.rf-f textarea::placeholder{color:#A9B4C1}
.rf-f input:focus,.rf-f textarea:focus,.rf-f select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,106,0,.14)}
.rf-f .fh{display:block;margin-top:7px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.rf-f.err input,.rf-f.err select,.rf-f.err textarea{border-color:#E85B00}
.rf-f.err .fiterr{display:block;color:#E85B00}
.rf-consent{color:var(--body)}.rf-consent.err{color:#E85B00}
.rf-nav .reassure{color:var(--muted)}
.rf-done h3{color:var(--ink)}.rf-done p{color:var(--body)}.rf-done .mark{color:var(--accent-text);border-color:var(--accent-text)}
.rf-done{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--hairline);padding:clamp(40px,5vw,72px) clamp(20px,3.4vw,48px)}
.rf-done .btn-ghost{border-color:rgba(10,29,58,.24);color:var(--ink)}

@media (max-width:1060px){
  .feat{grid-template-columns:minmax(0,1fr)}.epgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .offers{grid-template-columns:repeat(2,minmax(0,1fr))}.offer{border-bottom:1px solid var(--hairline)}.offer:nth-child(even){border-right:0}.offer:nth-child(n+3){border-bottom:0}.offer:nth-child(3){padding-left:0}
  .who{grid-template-columns:minmax(0,1fr)}.who-fig{max-width:380px}
}
@media (max-width:900px){
  .pillars,.paths{grid-template-columns:minmax(0,1fr)}.pillar,.pillar+.pillar{padding:26px 0;border-right:0;border-bottom:1px solid var(--hairline)}.pillar:last-child{border-bottom:0}
  .who-i{grid-template-columns:minmax(0,1fr);gap:8px}
  .eparch{grid-template-columns:minmax(0,1fr)}
  .rf-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .epgrid{grid-template-columns:minmax(0,1fr)}
  .offers{grid-template-columns:minmax(0,1fr)}.offer,.offer+.offer{padding:24px 0;border-right:0;border-bottom:1px solid var(--hairline)}.offer:last-child{border-bottom:0}
  .rf-nav .btn{width:100%}
}

/* =====================================================================================
   ROUND 18: the photographed site. One device: a real photograph of Josh in every room,
   each one different, framed like a print (hairline mat = the editorial double bezel).
   ===================================================================================== */

/* matted photograph: outer shell (mat) + inner core (print). square corners, the page's register */
.mat{position:relative;margin:0;padding:8px;background:rgba(10,29,58,.035);border:1px solid var(--hairline);box-shadow:0 40px 80px -48px rgba(10,29,58,.42)}
.mat .core{display:block;overflow:hidden;position:relative}
.mat .core>img{display:block;width:100%;height:auto;object-fit:cover;object-position:50% 28%}
.mat.r45 .core>img{aspect-ratio:4/5}.mat.r32 .core>img{aspect-ratio:3/2}.mat.r34 .core>img{aspect-ratio:3/4}.mat.r11 .core>img{aspect-ratio:1/1}
.mat .core::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 0 0 1px rgba(10,29,58,.06)}
.dark .mat,.band.dk .mat{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);box-shadow:0 50px 100px -50px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05)}
.dark .mat .core::after{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.06)}
.mat figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:14px 4px 4px;font-size:12px;letter-spacing:.06em;color:var(--muted);line-height:1.45}
.mat figcaption b{font-family:var(--fd);font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--ink);text-transform:none}
.dark .mat figcaption{color:rgba(255,255,255,.55)}.dark .mat figcaption b{color:#fff}
.mat .core>img{transition:transform 1.4s var(--ease-cine)}
@media (hover:hover){.mat:hover .core>img{transform:scale(1.025)}}

/* split page head: copy on the lit navy, the photograph bleeding to the viewport edge */
.page-head.ph-split{padding:0}
.ph-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:stretch;min-height:clamp(500px,64vh,680px)}
.ph-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--nav-h) + clamp(36px,4.6vw,64px)) clamp(28px,4vw,64px) clamp(44px,5vw,72px) var(--hero-edge);--hero-edge:max(var(--gut),calc((100vw - 1560px) / 2 + clamp(20px,3vw,48px) + 24px))}
.ph-copy .ch-open{margin-bottom:0;border-bottom:0;padding-bottom:0}
.ph-copy .ch-title{max-width:none}
.ph-copy .lede{margin-top:22px;max-width:52ch}
.ph-act{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:30px}
.ph-act .reassure{margin:0}
.ph-fig{position:relative;margin:0;overflow:hidden;background:var(--ink-deep);min-height:420px}
.ph-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 32%;opacity:0;transform:scale(1.05);transition:opacity 1.3s var(--ease-cine) .1s,transform 2.2s var(--ease-cine) .1s}
body.ready .ph-fig img{opacity:1;transform:none}
.ph-fig::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(5,13,28,.55),rgba(5,13,28,0) 26%),linear-gradient(to top,rgba(5,13,28,.5),rgba(5,13,28,0) 32%)}
.ph-fig .plate{position:absolute;left:clamp(20px,3vw,44px);bottom:clamp(20px,3vw,40px);z-index:2;color:#fff;max-width:320px}
.ph-fig .plate b{display:block;font-family:var(--fd);font-size:clamp(18px,1.5vw,22px);font-weight:700;letter-spacing:-.015em;line-height:1.15}
.ph-fig .plate span{display:block;margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.ph-fig .plate::before{content:"";display:block;width:26px;height:2px;background:var(--accent);margin-bottom:14px}
@media (max-width:900px){
  .ph-grid{grid-template-columns:minmax(0,1fr);min-height:0}
  .ph-fig{order:-1;min-height:min(96vw,540px)}
  .ph-copy{padding:clamp(34px,7vw,56px) var(--gut) clamp(40px,7vw,60px)}
  .ph-copy .ch-title{max-width:none}
}

/* the about page: story rail beside a matted portrait that stays with you */
.story{display:grid;grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);gap:clamp(36px,5.4vw,96px);align-items:start}
.story-fig{position:sticky;top:calc(var(--nav-h) + 34px)}
.story-fig .pq{margin-top:34px;padding-top:24px}
.paper .pq q,.band .pq q{color:var(--ink)}
.story-rail{border-top:1px solid var(--hairline)}
.story-r{display:grid;grid-template-columns:clamp(46px,4.6vw,68px) minmax(0,1fr);gap:clamp(14px,2.2vw,30px);padding-block:clamp(22px,2.4vw,30px);border-bottom:1px solid var(--hairline);align-items:start}
.story-r>*{transition:transform .45s var(--ease-cine)}
@media (hover:hover){.story-r:hover>*{transform:translateX(10px)}.story-r:hover .numbig{color:var(--accent)}}
.story-r .numbig{font-size:clamp(26px,2.4vw,36px);padding-top:4px}
.story-r h3{font-size:clamp(18px,1.45vw,22px);margin-bottom:8px;letter-spacing:-.012em}
.story-r p{font-size:15.5px;line-height:1.62;max-width:58ch}
.story-photo{grid-column:1/-1;padding:clamp(8px,1vw,14px) 0 clamp(26px,2.6vw,36px);border-bottom:1px solid var(--hairline)}
.story-photo .mat{max-width:100%}
.story-lede{font-family:var(--fd);font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.3;color:var(--ink);letter-spacing:-.014em;max-width:30ch;margin-bottom:clamp(28px,3.2vw,44px)}

/* home: the show, as a poster that opens the player page */
.show{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(32px,4.6vw,72px);align-items:center}
.show-poster{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--ink);box-shadow:0 60px 110px -56px rgba(10,29,58,.62)}
.show-poster img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transition:transform 1.6s var(--ease-cine)}
.show-poster::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,13,28,.88) 0%,rgba(5,13,28,.36) 46%,rgba(5,13,28,.08) 100%);transition:opacity .6s var(--ease-cine)}
.show-poster:hover img{transform:scale(1.035)}
.show-lock{position:absolute;left:clamp(22px,3vw,44px);right:clamp(22px,3vw,44px);bottom:clamp(22px,3vw,40px);z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;color:#fff}
.show-lock small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:12px}
.show-lock b{display:block;font-family:var(--fd);font-weight:700;font-size:clamp(26px,3vw,44px);line-height:.96;letter-spacing:-.025em}
.show-lock b i{font-style:italic;font-weight:600;color:var(--accent)}
.show-lock em{display:block;font-style:normal;margin-top:12px;font-size:13.5px;color:rgba(255,255,255,.72)}
.show-poster .pl{position:static;flex:none;width:64px;height:64px;transition:transform .35s var(--ease-cine),background .3s}
.show-poster:hover .pl{background:var(--accent);transform:scale(1.06)}
.show-chip{position:absolute;left:clamp(22px,3vw,44px);top:clamp(20px,3vw,36px);z-index:2;font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fff;padding:7px 10px;border:1px solid rgba(255,255,255,.35);background:rgba(5,13,28,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.show-copy .pod-k{margin-top:26px}

/* podcast: the host */
.host{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(34px,5vw,88px);align-items:center}
.host .ch-open{margin-bottom:clamp(18px,2vw,28px)}
.host-copy p+p{margin-top:14px}
.host-copy .btn{margin-top:28px}
.host-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--hairline)}
.host-facts div{padding:18px 18px 0 0;border-right:1px solid var(--hairline)}
.host-facts div+div{padding-left:18px}.host-facts div:last-child{border-right:0}
.host-facts b{display:block;font-family:var(--fd);font-size:clamp(22px,2vw,30px);font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1;font-variant-numeric:lining-nums}
.host-facts span{display:block;margin-top:8px;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);line-height:1.45}

/* contact: what happens on the call, three beats that narrow */
.beats{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1.02fr) minmax(0,.9fr);border-top:1px solid var(--hairline)}
.beat{padding:32px 32px 32px 0;border-right:1px solid var(--hairline)}
.beat:nth-child(2){padding-left:32px}
.beat:last-child{border-right:0;background-color:var(--ink);background-image:var(--lit-navy);padding:40px 34px;box-shadow:0 40px 90px -50px rgba(10,29,58,.6)}
.beat .numbig{margin-bottom:20px}.beat:last-child .numbig{color:rgba(255,255,255,.26)}
.beat h3{font-size:clamp(19px,1.5vw,23px);margin-bottom:10px;letter-spacing:-.014em}
.beat p{font-size:15px;line-height:1.6;color:var(--body)}
.beat:last-child h3{color:#fff}.beat:last-child p{color:rgba(255,255,255,.7)}

/* process: the three paths narrow like the position columns, the third lit navy */
.paths{grid-template-columns:minmax(0,1.24fr) minmax(0,1.02fr) minmax(0,.9fr);gap:0;border-top:1px solid var(--hairline)}
.path{background:transparent;border:0;border-right:1px solid var(--hairline);padding:32px 32px 32px 0}
.path:nth-child(2){padding-left:32px}
.path:last-child{border-right:0;background-color:var(--ink);background-image:var(--lit-navy);padding:40px 34px;box-shadow:0 40px 90px -50px rgba(10,29,58,.6)}
.path:last-child h3{color:#fff}.path:last-child p{color:rgba(255,255,255,.7)}.path:last-child .numbig{color:rgba(255,255,255,.26)}
@media (hover:hover){.path:hover{transform:none;box-shadow:none;border-color:var(--hairline)}.path:last-child:hover{box-shadow:0 40px 90px -50px rgba(10,29,58,.6)}}

/* home: the who block, the process figure and the request intro carry mats */
.who-fig.mat{max-width:460px;aspect-ratio:auto}
.who-fig.mat img{position:static;aspect-ratio:4/5;object-position:50% 22%}
.who-fig.mat figcaption{position:static;padding:14px 4px 4px;background:none}
.who-fig.mat figcaption span{font-family:var(--fb);font-size:12px;font-weight:400;letter-spacing:.06em;color:rgba(255,255,255,.58);margin:0;display:inline}
.proc-fig .mat{margin-bottom:20px}
.proc-fig .mat .core>img{transition:transform 1.4s var(--ease-cine)}
.proc-fig .mat .core>img{aspect-ratio:4/5;object-position:50% 20%}

@media (max-width:1060px){
  .story{grid-template-columns:minmax(0,1fr)}.story-fig{position:static;max-width:440px}
  .show{grid-template-columns:minmax(0,1fr)}
  .host{grid-template-columns:minmax(0,1fr)}.host .mat{max-width:440px}
  .proc-fig .mat{max-width:520px}.proc-fig .mat>img{aspect-ratio:4/5}
}
@media (max-width:900px){
  .beats,.paths{grid-template-columns:minmax(0,1fr)}
  .beat,.beat:nth-child(2),.path,.path:nth-child(2){padding:28px 0;border-right:0;border-bottom:1px solid var(--hairline)}
  .beat:last-child,.path:last-child{padding:30px 28px;border-bottom:0}
  .host-facts{grid-template-columns:minmax(0,1fr)}.host-facts div,.host-facts div+div{padding:14px 0;border-right:0;border-bottom:1px solid var(--hairline)}.host-facts div:last-child{border-bottom:0}
  .rf-intro{grid-template-columns:minmax(0,1fr)}.rf-intro .mat{max-width:240px}
}
@media (max-width:640px){
  .show-lock{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){.ph-fig img{opacity:1;transform:none}}


/* ================= ROUND 20 ================= */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* contact tiles never break an address mid-word */
.ctile .v{word-break:normal;overflow-wrap:normal;white-space:nowrap;font-size:14px}
.close-c .ctiles{max-width:1020px}
.close-c .ctile{padding:20px 22px}


/* ---- a slim conversion band ---- */
.fitband{padding-block:clamp(30px,3.4vw,46px)}
.fitband .wrap{display:flex;align-items:center;justify-content:space-between;gap:clamp(20px,4vw,64px);flex-wrap:wrap}
.fitband p{font-family:var(--fd);font-size:clamp(18px,1.7vw,24px);font-weight:500;line-height:1.34;color:#fff;max-width:46ch;letter-spacing:-.012em}

/* ---- the full library: one list, newest first, searchable ---- */
.ix-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;padding-bottom:clamp(20px,2.4vw,32px);border-bottom:1px solid var(--hairline)}
.ix-search{position:relative;display:block;flex:0 1 360px;min-width:240px}
.ix-search svg{position:absolute;left:14px;top:50%;width:17px;height:17px;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.ix-search input{width:100%;font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid #CBD3DC;border-radius:2px;padding:13px 14px 13px 42px;outline:0;-webkit-appearance:none;appearance:none;transition:border-color .25s,box-shadow .25s}
.ix-search input::placeholder{color:#94A1B0}
.ix-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,106,0,.14)}
.ix-meta{margin:16px 0 6px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ix-none{padding:28px 0;font-size:15px;color:var(--body)}

/* ---- contact: the calendar, framed ---- */
.book{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
.cal{position:relative;background:#fff;border:1px solid var(--hairline);box-shadow:0 50px 100px -60px rgba(10,29,58,.5)}
.cal::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--accent)}
.cal-top{display:flex;justify-content:space-between;gap:16px;padding:16px clamp(16px,2vw,26px);border-bottom:1px solid var(--hairline);font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.cal-top span:first-child{display:flex;align-items:center;gap:12px;color:var(--ink)}
.cal-top i{width:22px;height:1px;background:var(--accent);flex:none}
.cal-body{padding:6px;min-height:700px;background:#fff}
.cal-body iframe{display:block;width:100%;min-height:700px;border:0}
.book-rail{position:sticky;top:calc(var(--nav-h) + 28px)}
.steps3{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
.steps3 li{display:grid;grid-template-columns:clamp(46px,4vw,60px) minmax(0,1fr);gap:16px;padding:22px 0;border-bottom:1px solid var(--hairline)}
.steps3 .numbig{font-size:clamp(26px,2.2vw,34px)}
.steps3 h3{font-size:18px;margin-bottom:7px;letter-spacing:-.012em}
.steps3 p{font-size:14.5px;line-height:1.6;color:var(--body)}
.book-alt{margin-top:18px;font-size:14px;color:var(--muted);text-align:center}
#call .call{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
#call .ch-open{margin-bottom:clamp(18px,2vw,26px)}
#call .ctiles{margin-top:28px}

/* ---- request: the form beside a sticky rail ---- */
.rq{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:clamp(28px,4.4vw,72px);align-items:start}
.rq-rail{position:sticky;top:calc(var(--nav-h) + 28px)}
.rq-photo{max-width:230px}
.rq-steps{margin-top:30px}
.rq .rform,.rq .rf-done{max-width:none;margin:0;grid-column:2}

/* ---- phones: one action always in reach ---- */
.mbar{display:none}
@media (max-width:900px){
  .mbar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:48;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(6,16,32,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid rgba(255,255,255,.12);transform:translateY(110%);transition:transform .5s var(--ease-cine)}
  .mbar.on{transform:none}
  .mbar .btn{flex:1;width:auto;padding:13px 12px 13px 18px;font-size:12px}
  .mbar .btn svg{width:32px;height:32px;padding:9px}
  .mbar-call{flex:none;display:grid;place-items:center;width:58px;border:1px solid rgba(255,255,255,.28);border-radius:2px;color:#fff}
  .mbar-call svg{width:19px;height:19px}
  .foot{padding-bottom:96px}
}
@media (max-width:1060px){
  .book{grid-template-columns:minmax(0,1fr)}.book-rail{position:static}
  .cal-body,.cal-body iframe{min-height:1080px}
  .rq{grid-template-columns:minmax(0,1fr)}.rq-rail{display:contents}.rq-photo{order:0;max-width:240px}.rq .rform,.rq .rf-done{order:1;grid-column:auto}.rq-steps{order:2;margin-top:0}
  #call .call{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .fitband .btn{width:100%}.ix-search{flex-basis:100%}
  .cal-top span:last-child{display:none}
}
@media (prefers-reduced-motion:reduce){.mbar{transition:none}}

@media (max-height:860px) and (min-width:1061px){.rq-rail{position:static}}

.who-list{border-top:0}
.who-copy .ch-open{margin-bottom:0}


/* ================= ROUND 21 ================= */
/* page heads: each page opens on its own device */
.ph-stats{display:flex;flex-wrap:wrap;gap:12px clamp(28px,4vw,64px);margin-top:clamp(28px,3.4vw,44px);padding-top:clamp(20px,2.4vw,28px);border-top:1px solid rgba(255,255,255,.14);list-style:none;padding-left:0}
.ph-stats li{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);display:flex;align-items:baseline;gap:10px}
.ph-stats b{font-family:var(--fd);font-size:clamp(24px,2.2vw,32px);font-weight:700;color:#fff;letter-spacing:-.02em;font-variant-numeric:lining-nums}
.ph-k{margin-top:clamp(36px,4.4vw,64px);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.page-head .paths{margin-top:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;border-top:0}
.page-head .path,.page-head .path:nth-child(2),.page-head .path:last-child{background:#fff;background-image:none;border:0;padding:clamp(24px,2.6vw,36px);box-shadow:none;color:var(--body)}
.page-head .path h3,.page-head .path:last-child h3{color:var(--ink)}.page-head .path p,.page-head .path:last-child p{color:var(--body)}
.page-head .path .numbig,.page-head .path:last-child .numbig{color:#D2DAE3}
.page-head .paths .path:first-child{border-radius:2px 0 0 2px}.page-head .paths .path:last-child{border-radius:0 2px 2px 0}
@media (hover:hover){.page-head .path:hover .numbig{color:var(--accent)}}
.page-head .ph-act{margin-top:26px}

/* the closing: two doors, no tiles */
.close-act{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.close-c .btn{margin-top:0}
.close-c .reassure{margin-top:18px}
.close-c .reassure .tlink{color:rgba(255,255,255,.85);border-bottom-color:rgba(255,255,255,.4)}

/* ---- podcast: the stage ---- */
.watch-head{text-align:center;max-width:820px;margin:0 auto clamp(24px,2.8vw,36px)}
.watch-head .ch-run{justify-content:center;margin-bottom:14px}
.watch-title{font-family:var(--fd);font-weight:700;color:var(--ink);font-size:clamp(28px,3.4vw,46px);line-height:1.06;letter-spacing:-.022em}
#watch .vstage{max-width:1080px;margin:0 auto}
.watch-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start;max-width:1080px;margin:clamp(26px,3vw,40px) auto 0;padding-top:clamp(22px,2.6vw,32px);border-top:1px solid var(--hairline)}
.watch-b{font-family:var(--fd);font-size:clamp(18px,1.6vw,23px);font-weight:500;line-height:1.36;color:var(--ink);letter-spacing:-.01em;max-width:34ch}
.watch-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font-size:13.5px;color:var(--muted)}
.watch-meta span+span::before{content:"";display:inline-block;width:1px;height:11px;background:currentColor;opacity:.3;margin:0 12px -1px 0}
.watch-side{padding:clamp(20px,2.2vw,28px);background:#fff;border:1px solid var(--hairline);box-shadow:0 30px 60px -44px rgba(10,29,58,.4)}
.watch-side p{font-size:14.5px;line-height:1.6;color:var(--body);margin-bottom:16px}

/* ---- podcast: the library, every episode as a video card ---- */
.vgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3vw,44px) clamp(18px,2.2vw,32px)}
.vc[hidden]{display:none}
.vc-b{display:block;width:100%;text-align:left;padding:0;cursor:pointer}
.vc .thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ink);margin-bottom:14px;padding:5px;border:1px solid var(--hairline);background:#fff;box-shadow:0 26px 50px -36px rgba(10,29,58,.42);transition:transform .5s var(--ease-cine),box-shadow .5s var(--ease-cine)}
.vc .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease-cine)}
.vc .thumb::after{content:"";position:absolute;inset:5px;pointer-events:none;background:linear-gradient(to top,rgba(6,16,32,.55),rgba(6,16,32,0) 45%);transition:opacity .4s}
.vc .pl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;z-index:2;background:rgba(255,255,255,.94);color:var(--ink);transition:transform .35s var(--ease-cine),background .3s,color .3s}
.vc .chip{position:absolute;z-index:3;left:14px;top:13px;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:rgba(6,16,32,.62);padding:5px 8px;border-radius:2px}
.vc .dur{position:absolute;z-index:3;right:13px;bottom:14px;font-size:11px;font-weight:600;color:#fff;letter-spacing:.06em}
.vc b{display:block;font-family:var(--fd);font-size:clamp(16.5px,1.35vw,19.5px);font-weight:700;color:var(--ink);line-height:1.26;letter-spacing:-.012em;transition:color .3s}
.vc .g{display:block;margin-top:6px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.vc .b{display:block;margin-top:9px;font-size:14px;line-height:1.55;color:var(--body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (hover:hover){
  .vc-b:hover .thumb{transform:translateY(-4px);box-shadow:0 40px 70px -40px rgba(10,29,58,.55)}
  .vc-b:hover .thumb img{transform:scale(1.04)}
  .vc-b:hover .pl{background:var(--accent);color:var(--ink);transform:translate(-50%,-50%) scale(1.08)}
  .vc-b:hover b{color:var(--accent-text)}
}
.vc-b:active .thumb{transform:scale(.99)}
.vc.playing .thumb{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),0 26px 50px -36px rgba(10,29,58,.42)}
.vc.playing b{color:var(--accent-text)}
.vc.playing .pl{background:var(--accent);color:var(--ink)}
.vc.playing .chip::before{content:"Now playing · "}

/* ---- contact: the fit finder is the page ---- */
.fit-page{padding-top:calc(var(--nav-h) + clamp(40px,5vw,72px))}
.fit-page .fit-head h1{font-family:var(--fd);font-size:clamp(32px,4.2vw,58px);color:#fff;letter-spacing:-.024em;line-height:1.02;margin-bottom:16px;font-weight:700}
.fit-page .fit-head h1 .it{font-style:italic;color:var(--accent);font-weight:600}
.inq{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);max-width:1080px;margin:0 auto}
.inq-c{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(28px,3vw,40px) clamp(20px,2.2vw,30px);background:#fff;border:1px solid var(--hairline);transition:transform .5s var(--ease-cine),box-shadow .5s var(--ease-cine),border-color .4s}
.inq-c .ic{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(10,29,58,.16);border-radius:50%;color:var(--accent-text);margin-bottom:18px}
.inq-c .ic svg{width:22px;height:22px}
.inq-c h3{font-size:clamp(19px,1.5vw,22px);margin-bottom:10px;letter-spacing:-.014em}
.inq-c p{font-size:14.5px;line-height:1.6;color:var(--body);max-width:30ch;margin-bottom:18px}
.inq-c b{display:inline-flex;align-items:center;gap:10px;font-family:var(--fb);font-size:14px;font-weight:700;color:var(--ink);letter-spacing:.01em;margin-top:auto}
.inq-c b svg{width:16px;height:16px;color:var(--accent)}
@media (hover:hover){.inq-c:hover{transform:translateY(-4px);box-shadow:0 40px 80px -48px rgba(10,29,58,.45);border-color:transparent}.inq-c:hover .ic{background:var(--accent);border-color:var(--accent);color:var(--ink)}}
#book .cal{max-width:1080px;margin:0 auto}
.faq-wrap{max-width:860px}

@media (max-width:1060px){
  .vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-head .paths{grid-template-columns:minmax(0,1fr)}
  .page-head .paths .path:first-child,.page-head .paths .path:last-child{border-radius:0}
  .watch-row{grid-template-columns:minmax(0,1fr)}
  .inq{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .vgrid{grid-template-columns:minmax(0,1fr)}
  .ph-stats{gap:12px 22px}
  .close-act .btn{width:100%}
}

/* ================= ROUND 22: industries, resales, the booking page, the call widget ================= */
/* industries: twelve photographed doors, each one a link into the fit finder */
.indgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,34px) clamp(16px,2vw,28px)}
.ind{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--hairline);transition:transform .5s var(--ease-cine),box-shadow .5s var(--ease-cine),border-color .4s}
.ind .thumb{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:var(--ink)}
.ind .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.3s var(--ease-cine)}
.ind .thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(6,16,32,.72),rgba(6,16,32,0) 55%)}
.ind .thumb .numbig{position:absolute;left:18px;bottom:14px;z-index:2;color:#fff;font-size:clamp(30px,2.6vw,40px);opacity:.92}
.ind .body{display:flex;flex-direction:column;flex:1;padding:clamp(20px,2.2vw,28px)}
.ind h3{font-size:clamp(19px,1.5vw,23px);margin-bottom:10px;letter-spacing:-.014em;transition:color .3s}
.ind p{font-size:14.5px;line-height:1.6;color:var(--body);margin-bottom:18px}
.ind b{display:inline-flex;align-items:center;gap:10px;margin-top:auto;font-family:var(--fb);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ink)}
.ind b svg{width:15px;height:15px;color:var(--accent);transition:transform .35s var(--ease-cine)}
@media (hover:hover){.ind:hover{transform:translateY(-5px);box-shadow:0 46px 90px -52px rgba(10,29,58,.55);border-color:transparent}.ind:hover .thumb img{transform:scale(1.05)}.ind:hover h3{color:var(--accent-text)}.ind:hover b svg{transform:translateX(5px)}}

/* resales: a listing is a card of numbers with no brand on it */
.rsgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin-top:clamp(24px,3vw,40px)}
.rsgrid:empty{display:none}
.rs-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--hairline);padding:clamp(22px,2.4vw,30px);position:relative;transition:transform .5s var(--ease-cine),box-shadow .5s var(--ease-cine)}
.rs-card::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--accent);opacity:0;transition:opacity .3s}
.rs-card .k{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.rs-card h3{font-size:clamp(19px,1.5vw,22px);letter-spacing:-.014em;margin:6px 0 4px}
.rs-card .loc{font-size:14px;color:var(--body);margin-bottom:18px}
.rs-nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.rs-nums span{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.rs-nums b{display:block;margin-top:6px;font-family:var(--fd);font-size:clamp(17px,1.4vw,21px);font-weight:700;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:lining-nums;white-space:nowrap}
.rs-card .note{font-size:14px;line-height:1.55;color:var(--body);margin:16px 0 18px}
.rs-card .btn{margin-top:auto;align-self:flex-start}
.rs-card .id{position:absolute;right:18px;top:18px;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--faint)}
@media (hover:hover){.rs-card:hover{transform:translateY(-4px);box-shadow:0 40px 80px -48px rgba(10,29,58,.5)}.rs-card:hover::before{opacity:1}}
.rs-empty{max-width:640px;margin:clamp(24px,3vw,40px) 0 0;padding:clamp(26px,3vw,40px);background:#fff;border:1px solid var(--hairline)}
.rs-empty-t{font-family:var(--fd);font-size:clamp(20px,1.9vw,26px);font-weight:700;color:var(--ink);letter-spacing:-.016em;margin-bottom:10px}
.rs-empty p+p{font-size:15px;line-height:1.6;color:var(--body);margin-bottom:22px}
.rs-form{max-width:900px;margin:0 auto}
.rs-picked{display:flex;align-items:center;gap:14px;margin:-6px 0 24px;padding:12px 14px;border:1px solid var(--hairline);background:var(--band)}
.rs-picked .k{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.rs-picked b{font-size:14px;color:var(--ink)}
.rs-picked button{margin-left:auto;width:28px;height:28px;font-size:20px;line-height:1;color:var(--muted)}

/* the booking page: logo plate, no nav, bigger H1, the calendar, three steps */
.bookpage{background:#fff}
.plate{display:flex;align-items:center;justify-content:center;padding:clamp(20px,2.6vw,32px) var(--gut) 0}
.plate .logo{height:44px}
.bk{padding:clamp(32px,4vw,56px) 0 clamp(56px,6vw,96px)}
.bk-head{text-align:center;max-width:820px;margin:0 auto clamp(30px,3.6vw,48px)}
.bk-head .eyebrow{margin-bottom:18px}
.bk-head h1{font-size:clamp(38px,5.2vw,72px);letter-spacing:-.03em;line-height:.98;margin-bottom:18px}
.bk-head h1 .it{font-style:italic;color:var(--accent-text);font-weight:600}
.bk-head .lede{margin:0 auto}
.bk-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,3.4vw,56px);align-items:start}
.bk-who{display:flex;align-items:center;gap:16px;margin:0 0 22px}
.bk-who img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--hairline)}
.bk-who b{display:block;font-family:var(--fd);font-size:19px;font-weight:700;color:var(--ink);letter-spacing:-.012em}
.bk-who span{display:block;font-size:13.5px;line-height:1.5;color:var(--body);margin-top:3px}
.bk-cred{list-style:none;margin:0 0 26px;padding:16px 0 0;border-top:1px solid var(--hairline);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.bk-cred li{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.4}
.bk-cred b{font-family:var(--fd);font-size:18px;font-weight:700;color:var(--ink);letter-spacing:-.01em;text-transform:none;margin-right:6px;font-variant-numeric:lining-nums}
.bk-cred sup{font-size:.55em;vertical-align:.6em}
.plate-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:20px var(--gut);border-top:1px solid var(--hairline);font-size:12.5px;color:var(--muted)}
.cal-cred{text-align:center;font-family:var(--fd);font-size:clamp(17px,1.5vw,21px);font-weight:500;color:var(--ink);letter-spacing:-.01em;line-height:1.4;max-width:60ch;margin:-10px auto 26px}

/* the one exclusive */
.excl{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:clamp(28px,3.4vw,48px);padding:clamp(28px,3.4vw,48px);background-color:var(--ink);background-image:linear-gradient(to bottom,rgba(4,11,24,.5),rgba(4,11,24,0) 40%),var(--lit-navy);color:rgba(255,255,255,.72);box-shadow:0 50px 100px -56px rgba(10,29,58,.6)}
.excl .ch-run{color:rgba(255,255,255,.55);margin-bottom:14px}
.excl-t{font-family:var(--fd);font-size:clamp(22px,2.3vw,32px);font-weight:700;line-height:1.14;letter-spacing:-.02em;color:#fff}
.excl-t .it{font-style:italic;font-weight:600;color:var(--accent)}
.excl-r p{font-size:15px;line-height:1.6;margin-bottom:20px}
.excl .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}.excl .btn-ghost svg{background:rgba(255,255,255,.12)}.excl .btn-ghost:hover{background:#fff;color:var(--ink)}

/* the call widget: Josh's face, one line, always in reach on desktop */
.callw{position:fixed;right:22px;bottom:22px;z-index:47;display:none;align-items:center;gap:14px;padding:10px 14px 10px 10px;background:#fff;border:1px solid var(--hairline);box-shadow:0 30px 60px -30px rgba(10,29,58,.5),0 2px 8px -4px rgba(10,29,58,.2);transform:translateY(24px);opacity:0;transition:transform .6s var(--ease-cine),opacity .6s var(--ease-cine)}
.callw.on{transform:none;opacity:1}
.callw img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none}
.callw .t{display:block;font-family:var(--fd);font-size:15.5px;font-weight:700;color:var(--ink);letter-spacing:-.01em;line-height:1.2}
.callw .s{display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.callw .go{display:grid;place-items:center;width:38px;height:38px;background:var(--ink);color:var(--accent);flex:none;transition:background .3s,color .3s,transform .35s var(--ease-cine)}
.callw .go svg{width:16px;height:16px}
.callw a.main{display:flex;align-items:center;gap:14px}
@media (hover:hover){.callw a.main:hover .go{background:var(--accent);color:var(--ink);transform:translateX(3px)}}
.callw .x{position:absolute;right:-8px;top:-8px;width:24px;height:24px;border-radius:50%;background:var(--ink);color:#fff;font-size:15px;line-height:1;border:2px solid #fff}
@media (min-width:901px){.callw{display:flex}}

@media (max-width:1060px){.indgrid,.rsgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.bk-grid{grid-template-columns:minmax(0,1fr)}.excl{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.indgrid,.rsgrid{grid-template-columns:minmax(0,1fr)}.rs-nums{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bk-cred{grid-template-columns:minmax(0,1fr)}}

/* =====================================================================
   ROUND 23 (2026-09-24): the finishing upgrade layer.
   Real Playfair now loads (the font URL was broken for 22 rounds), so the
   type is re-weighted for it; more air between chapters; one uppercase
   voice instead of eleven; the call widget stops covering content.
   ===================================================================== */
:root{--pad:clamp(68px,7.4vw,124px)}

/* type, retuned for real Playfair */
h1,h2{letter-spacing:-.02em}
h3,h4{font-weight:600;letter-spacing:-.004em;line-height:1.22}
.it,.foot-line span{font-weight:600}
.numbig,.hstat .n,.offer b,.cred-list li b{font-variant-numeric:lining-nums}
.ch-title{line-height:1.06}

/* hero: the headline owns the column, the one-liner reads as his voice, not a caps label */
.hero h1{font-size:clamp(44px,5.8vw,90px);line-height:.96;letter-spacing:-.028em}
.hero .eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--fd);font-style:italic;font-weight:500;font-size:clamp(15px,1.15vw,17.5px);letter-spacing:0;text-transform:none;color:var(--body);line-height:1.35}
.hero .eyebrow::before{content:"";width:28px;height:1px;background:var(--accent);flex:none}
.hstat .n{font-size:clamp(28px,2.4vw,38px);font-weight:600}
.hstat .l{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--body);margin-top:8px}
.hstat svg{display:none}

/* credentials: one row from laptop width up, labels in sentence case */
@media (min-width:1100px){.cred-list{display:flex;justify-content:space-between;align-items:center;gap:48px}}
.cred-list li{font-size:13.5px;font-weight:500;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.78)}
.cred-list li b{font-size:22px;font-weight:600;margin-right:10px}

/* buttons: one notch lighter; the hero and the closing keep the full size */
.btn{font-size:12px;letter-spacing:.12em;padding:10px 10px 10px 22px;gap:18px}
.btn svg{width:34px;height:34px;padding:10px}
.hero-cta,.close-c .btn,.bk-head .btn{padding:12px 12px 12px 24px}
.hero-cta svg,.close-c .btn svg{width:38px;height:38px;padding:11px}

/* the reframe line over the café photograph: legible for the whole pass, not faded in late */
.bleed figcaption span{font-size:clamp(22px,2.3vw,34px);line-height:1.22;max-width:var(--maxw)}
.bleed figcaption span b{font-size:11px}
@supports (animation-timeline: view()){
  .bleed figcaption{animation:none}
  .bleed figcaption span{animation:capin linear both;animation-timeline:view();animation-range:entry 10% entry 70%}
}

/* statement chapters get more room than list chapters */
#position{padding-top:clamp(96px,10vw,168px)}
#position .ch-title{font-size:clamp(32px,3.8vw,56px);max-width:none}
.chapter + .chapter:not(.dark):not(.paper){border-top:1px solid var(--hairline-2)}

/* numerals only where there is a real sequence (process, story); elsewhere the heading leads */
.why-c .numbig,.pillar .numbig,.beat .numbig{display:none}

/* industries: sentence-case link, not a twelfth caps label */
.ind b{font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}

/* offer: the large line never wraps under its own heading */
.offer b{white-space:nowrap;font-weight:600}
.offer h3{font-size:18px}

/* footer: a quiet signature, not a second closing */
.foot h4{font-family:var(--fb);font-size:11px;font-weight:600;letter-spacing:.2em}
body:has(.close-c) .foot-top{display:none}
body:has(.close-c) .foot-g{padding-top:clamp(44px,4.6vw,64px)}
.page-about .foot-top{display:none}
.foot-g{grid-template-columns:minmax(0,1.2fr) minmax(0,1.3fr) minmax(0,.8fr)}
.foot-g>div:nth-child(2) ul{columns:2;column-gap:40px}
.foot-g>div:nth-child(2) li{break-inside:avoid}
.flegal p{font-size:11.5px;line-height:1.6;color:rgba(255,255,255,.4)}

/* call widget: no wider than it needs to be */
.callw{max-width:340px}

/* phone: the headline arrives sooner */
@media (max-width:640px){
  :root{--pad:clamp(56px,14vw,76px)}
  .hero .eyebrow{font-size:15px}
  .hero-photo{aspect-ratio:4/3;max-height:44svh;min-height:0}
  .hstat,.hstat+.hstat{grid-template-columns:auto minmax(0,1fr)}
  .foot-g>div:nth-child(2) ul{columns:2;column-gap:20px}
}
.hstat .sfx{color:var(--accent-text)}
/* an emphasis sentence gets its own line; it never starts mid-line after a full stop */
.it.br{display:block}
.foot-line span{white-space:nowrap}
[hidden]{display:none!important}
.ph-stats li{font-size:13.5px;font-weight:500;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.62)}
.ph-stats b{text-transform:none;font-weight:600}
/* resales empty state spans the column: statement left, action right */
.rs-empty{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(28px,4vw,64px);align-items:center;padding:clamp(30px,3.4vw,48px) clamp(28px,3.6vw,52px);border-top:2px solid var(--accent)}
.rs-empty>*{grid-column:1}.rs-empty>.btn,.rs-empty>a{grid-column:2;grid-row:1 / span 2}
.rs-empty p+p{margin-bottom:0;max-width:60ch}
@media (max-width:760px){.rs-empty{grid-template-columns:minmax(0,1fr)}.rs-empty>.btn,.rs-empty>a{grid-column:1;grid-row:auto;margin-top:20px;justify-self:start}}

/* =====================================================================
   ROUND 24 (2026-09-30): Josh's "Website Edits" doc applied.
   New copy everywhere, the fit finder re-formatted so it no longer looks
   like The Franchise Insiders' form, five-card and six-card grids, every
   industry from the confidential questionnaire, the spots line.
   ===================================================================== */

/* his one-liner, louder: the first thing read on the site */
.hero .eyebrow.hero-line{font-size:clamp(18px,1.55vw,24px);color:var(--ink);line-height:1.3}
.hero .eyebrow.hero-line b{font-style:normal;font-weight:700}
.hero .eyebrow.hero-line em{color:var(--accent-text);font-weight:600}
.hero-quote{max-width:370px}
.hero-quote p{font-size:15px;line-height:1.45}

/* a one-sentence lede under a chapter title */
.ch-lede{margin-top:18px;font-size:clamp(16px,1.2vw,18px);line-height:1.6;color:var(--body);max-width:62ch}
.ch-lede.wide{max-width:82ch}
.dark .ch-lede{color:rgba(255,255,255,.7)}

/* the ten-a-month line */
.spots{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:13.5px;line-height:1.45;color:var(--body)}
.spots:empty{display:none}
.spots i{display:none}
.spots b{color:var(--ink);font-weight:700}
.dark .spots,.fit .spots{color:rgba(255,255,255,.66)}.dark .spots b,.fit .spots b{color:#fff}
.bk-head .spots{justify-content:inherit}

/* credentials: six items, three by two */
@media (min-width:1100px){.cred-list.six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 40px}}
.cred-list.six li b sup{font-size:.55em;vertical-align:.6em}

/* fit finder: a working session with Josh, not a centred card with a logo on top */
.fit .fit-head{text-align:left;max-width:1080px;margin-inline:auto}
.fit .fit-head .lede{margin:0;max-width:62ch}
.fit .fit-head h2 .it.br,.fit-page .fit-head h1 .it.br{display:block}
.fitbox.fit2{max-width:1080px;display:grid;grid-template-columns:minmax(0,290px) minmax(0,1fr);padding:0;border-color:rgba(255,255,255,.14)}
.fitbox.fit2::before{display:none}
.fitrail{padding:clamp(26px,2.6vw,36px) clamp(22px,2.2vw,30px);background:rgba(255,255,255,.035);border-right:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:26px}
.fitwho{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;margin:0}
.fitwho img{width:64px;height:64px;object-fit:cover;border-radius:50%;border:2px solid var(--accent)}
.fitwho b{display:block;font-family:var(--fd);font-size:17px;font-weight:600;color:#fff}
.fitwho span{display:block;margin-top:4px;font-family:var(--fd);font-style:italic;font-size:13.5px;line-height:1.35;color:rgba(255,255,255,.66)}
.fitsteps{list-style:none;margin:0;padding:0;counter-reset:fs;border-top:1px solid rgba(255,255,255,.12)}
.fitsteps li{counter-increment:fs;display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px;font-weight:500;color:rgba(255,255,255,.42);transition:color .3s var(--ease-out)}
.fitsteps li::before{content:counter(fs,decimal-leading-zero);flex:none;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;font-size:11px;font-weight:700;letter-spacing:.04em;font-variant-numeric:lining-nums;transition:background .3s,border-color .3s,color .3s}
.fitsteps li.on{color:#fff}
.fitsteps li.on::before{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.fitsteps li.done{color:rgba(255,255,255,.7)}
.fitsteps li.done::before{content:"\2713";border-color:rgba(255,106,0,.6);color:var(--accent)}
.fitrail-note{margin-top:auto;font-size:13px;line-height:1.5;color:rgba(255,255,255,.5)}
.fitmain{padding:clamp(26px,3vw,44px) clamp(22px,3.2vw,48px) clamp(26px,3vw,40px);min-width:0}
.fit2 .fittop{padding-bottom:0;margin-bottom:18px;border-bottom:0}
.fit2 .fitstep{color:var(--accent)}
.fitdone-note{margin-top:14px!important;font-size:14px!important;color:rgba(255,255,255,.5)!important}
@media (max-width:900px){
  .fitbox.fit2{grid-template-columns:minmax(0,1fr)}
  .fitrail{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);padding:20px 22px;gap:0}
  .fitsteps,.fitrail-note{display:none}
}

/* proven business models: three across, two wider below */
.why.five{grid-template-columns:repeat(6,minmax(0,1fr))}
.why.five .why-c{grid-column:span 2;padding:clamp(26px,2.6vw,36px) clamp(22px,2.6vw,38px);border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.why.five .why-c:first-child,.why.five .why-c:nth-child(4){padding-left:0}
.why.five .why-c:nth-child(3),.why.five .why-c:nth-child(5){border-right:0}
.why.five .why-c.wide{grid-column:span 3;border-bottom:0}
.why.five .why-c p{max-width:46ch}
@media (max-width:900px){.why.five{grid-template-columns:minmax(0,1fr)}.why.five .why-c,.why.five .why-c.wide{grid-column:auto;padding:26px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.why.five .why-c:last-child{border-bottom:0}}

/* every industry: a scrolling rail at every width (thirteen will not fit an accordion) */
a.cat{display:block;color:inherit}
.cat.noimg{background-color:var(--ink);background-image:var(--lit-navy)}
.cat .glyph,.ind .thumb .glyph{position:absolute;left:clamp(20px,2vw,28px);top:clamp(18px,2vw,26px);z-index:1;font-family:var(--fd);font-style:italic;font-weight:600;font-size:clamp(54px,5.4vw,84px);line-height:1;letter-spacing:-.03em;color:rgba(255,255,255,.1)}
.ind .thumb.noimg{background-color:var(--ink);background-image:var(--lit-navy)}
@media (min-width:1060px) and (pointer:fine){
  .strip-wrap.all .strip{overflow-x:auto;scroll-snap-type:x mandatory;max-width:none;margin:0;padding-inline:var(--edge);scroll-padding-inline:var(--edge)}
  .strip-wrap.all .cat,.strip-wrap.all .strip:hover .cat,.strip-wrap.all .strip .cat:hover{flex:0 0 clamp(260px,22vw,330px)}
  .strip-wrap.all .cat{height:clamp(320px,28vw,420px)}
  .strip-wrap.all .strip:hover .cat:not(:hover) .lab,.strip-wrap.all .strip:hover .cat:not(:hover) .lab span{opacity:1}
  .strip-wrap.all .strip-nav{display:flex}
}

/* the offer: six cards, two rows of three */
.offers.six{grid-template-columns:repeat(3,minmax(0,1fr))}
.offers.six .offer{padding:30px clamp(18px,2.4vw,34px);border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.offers.six .offer:nth-child(3n+1){padding-left:0}
.offers.six .offer:nth-child(3n){border-right:0}
.offers.six .offer:nth-child(n+4){border-bottom:0}
@media (max-width:1060px){
  .offers.six{grid-template-columns:repeat(2,minmax(0,1fr))}
  .offers.six .offer,.offers.six .offer:nth-child(3n),.offers.six .offer:nth-child(n+4){padding:28px 24px;border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
  .offers.six .offer:nth-child(odd){padding-left:0}
  .offers.six .offer:nth-child(even){border-right:0}
  .offers.six .offer:nth-child(n+5){border-bottom:0}
}
@media (max-width:640px){
  .offers.six{grid-template-columns:minmax(0,1fr)}
  .offers.six .offer,.offers.six .offer:nth-child(n){padding:24px 0;border-right:0;border-bottom:1px solid var(--hairline)}
  .offers.six .offer:last-child{border-bottom:0}
}

/* how it works: five paths, three then two, and the closing line */
.page-head .paths.five{grid-template-columns:repeat(6,minmax(0,1fr))}
.page-head .paths.five .path{grid-column:span 2}
.page-head .paths.five .path:nth-child(n+4){grid-column:span 3}
.paths-foot{margin-top:clamp(22px,2.6vw,34px);max-width:86ch;font-size:16px;line-height:1.65;color:rgba(255,255,255,.72)}
.paths-foot .it{font-family:var(--fd);font-style:italic;font-weight:600;font-size:1.2em;color:#fff;margin-right:6px}
@media (max-width:1060px){.page-head .paths.five{grid-template-columns:minmax(0,1fr)}.page-head .paths.five .path,.page-head .paths.five .path:nth-child(n+4){grid-column:auto}}

/* industries head: a second, quieter way in */
.ph-alt{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:22px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);max-width:760px}
.ph-alt p{flex:1 1 300px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.66)}
.ph-alt .btn-ghost{border-color:rgba(255,255,255,.3);color:#fff}.ph-alt .btn-ghost svg{background:rgba(255,255,255,.12);color:var(--accent)}.ph-alt .btn-ghost:hover{background:#fff;color:var(--ink)}

/* resales: four plain labels, and the three ways in */
.ph-stats.dots{gap:12px 18px}
.ph-stats.dots li+li::before{content:"";width:1px;height:12px;background:currentColor;opacity:.28;margin-right:10px;align-self:center}
.ways-foot{margin-top:clamp(24px,2.8vw,36px);font-family:var(--fd);font-size:clamp(18px,1.6vw,22px);line-height:1.4;color:var(--ink);max-width:60ch}
.ways-foot .it{font-style:italic;font-weight:500;color:var(--ink)}

/* compare table: five rows on a phone */
@media (max-width:640px){.cmp.five>:nth-child(7){border-bottom:1px solid var(--hairline-2)}}
/* the reframe rows carry longer copy now: even columns, one size */
.pov{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr)}
.pov-c p,.pov-c:nth-child(2) p,.pov-c:last-child p{font-size:clamp(17px,1.4vw,21px);line-height:1.36}
.hero .eyebrow.hero-line::before{align-self:flex-start;margin-top:.72em}

/* =====================================================================
   ROUND 26 (2026-10-09): who you're working with, the one-liner as a
   recurring signature, and an industry explorer instead of an arrow rail.
   ===================================================================== */

/* hero stats: offer numbers, the band below carries the credentials */
.hstat .to{font-size:.46em;font-style:italic;font-weight:500;margin:0 .22em;color:var(--accent-text);vertical-align:.18em}

/* who you're working with: identity left, six credentials in a quiet 3 x 2 ledger */
.wb{background-color:var(--ink);background-image:linear-gradient(to bottom,rgba(4,11,24,.5),rgba(4,11,24,0) 40%),var(--lit-navy);color:#fff;position:relative}
.wb::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16) 20%,rgba(255,255,255,.16) 80%,transparent)}
.wb-in{max-width:var(--maxw);margin:0 auto;padding:clamp(34px,3.6vw,52px) var(--gut);display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:center}
.wb-id{display:grid;grid-template-columns:76px minmax(0,1fr);gap:18px;align-items:center;padding-right:clamp(20px,3vw,48px);border-right:1px solid rgba(255,255,255,.12)}
.wb-id img{width:76px;height:76px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--ink),0 0 0 3px var(--accent)}
.wb-k{font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.wb-name{font-family:var(--fd);font-size:clamp(22px,1.8vw,26px);font-weight:600;line-height:1.1;color:#fff;letter-spacing:-.012em}
.wb-role{margin-top:6px;font-size:13.5px;line-height:1.45;color:rgba(255,255,255,.62)}
.wb-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.wb-stats li{padding:16px clamp(16px,1.8vw,28px);border-left:1px solid rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.1)}
.wb-stats li:nth-child(-n+3){border-top:0}
.wb-stats li:nth-child(3n+1){border-left:0;padding-left:0}
.wb-stats b{display:block;font-family:var(--fd);font-size:clamp(24px,2vw,30px);font-weight:600;line-height:1;letter-spacing:-.02em;color:#fff;font-variant-numeric:lining-nums}
.wb-stats b sup{font-size:.5em;vertical-align:.7em;margin-left:1px}
.wb-stats span{display:block;margin-top:8px;font-size:13.5px;line-height:1.4;color:rgba(255,255,255,.66)}
.wb-4 .wb-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.wb-4 .wb-stats li{border-top:0}.wb-4 .wb-stats li:nth-child(3n+1){border-left:1px solid rgba(255,255,255,.1);padding-left:clamp(16px,1.8vw,28px)}.wb-4 .wb-stats li:first-child{border-left:0;padding-left:0}
@media (max-width:1060px){
  .wb-in{grid-template-columns:minmax(0,1fr);gap:26px}
  .wb-id{border-right:0;padding-right:0;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.12)}
  .wb-4 .wb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wb-4 .wb-stats li:nth-child(3){border-left:0;padding-left:0}.wb-4 .wb-stats li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.1)}
}
@media (max-width:640px){
  .wb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wb-stats li,.wb-stats li:nth-child(n){border-left:0;border-top:1px solid rgba(255,255,255,.1);padding:16px 14px 16px 0}
  .wb-stats li:nth-child(-n+2){border-top:0}
  .wb-stats li:nth-child(even){border-left:1px solid rgba(255,255,255,.1);padding-left:16px}
}

/* the home "who" chapter now opens on his one-liner */
#who .ch-title{font-size:clamp(28px,3vw,44px)}

/* industry explorer */
.inx-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:clamp(28px,4vw,64px);align-items:end;margin-bottom:clamp(22px,2.6vw,34px)}
.inx-head .ch-run{margin:0}
.inx-sub{font-size:15.5px;line-height:1.6;color:rgba(255,255,255,.66);max-width:60ch}
.inx{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:clamp(28px,4vw,64px);align-items:stretch}
.inx-list{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.14)}
.inx-i{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:center;gap:8px;width:100%;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;color:rgba(255,255,255,.5);font-family:var(--fd);font-size:clamp(16px,1.25vw,19px);font-weight:500;letter-spacing:-.008em;transition:color .5s var(--ease-cine),transform .6s var(--ease-cine)}
.inx-i .n{font-family:var(--fb);font-size:11px;font-weight:600;letter-spacing:.12em;color:rgba(255,255,255,.32);font-variant-numeric:lining-nums;transition:color .5s var(--ease-cine)}
.inx-i .go{display:grid;place-items:center;width:24px;height:24px;color:var(--accent);opacity:0;transform:translateX(-8px);transition:opacity .45s var(--ease-cine),transform .55s var(--ease-cine)}
.inx-i .go svg{width:16px;height:16px}
.inx-i .bar{position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left}
.inx-i[aria-selected="true"]{color:#fff;transform:translateX(10px)}
.inx-i[aria-selected="true"] .n{color:var(--accent)}
.inx-i[aria-selected="true"] .go{opacity:1;transform:none}
.inx-i[aria-selected="true"] .bar{transform:scaleX(1);transition:transform .7s var(--ease-cine)}
.inx.auto .inx-i[aria-selected="true"] .bar{transition:none;animation:inxbar 5.2s linear both}
@keyframes inxbar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (hover:hover){.inx-i:hover{color:#fff}}
.inx-i:focus-visible{outline:1px solid var(--accent);outline-offset:4px}
.inx-stage{padding:8px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);box-shadow:0 60px 120px -60px rgba(0,0,0,.8)}
.inx-core{position:relative;height:100%;min-height:clamp(420px,40vw,600px);overflow:hidden;background:var(--ink-deep)}
.inx-f{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 50%;opacity:0;transform:scale(1.06);transition:opacity .9s var(--ease-cine),transform 1.8s var(--ease-cine)}
.inx-f.on{opacity:1;transform:none}
.inx-veil{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,14,30,.94) 0%,rgba(5,14,30,.55) 34%,rgba(5,14,30,0) 64%);pointer-events:none}
.inx-cap{position:absolute;left:0;right:0;bottom:0;padding:clamp(24px,3vw,44px);transition:opacity .22s var(--ease-out),transform .3s var(--ease-out)}
.inx-cap.swap{opacity:0;transform:translateY(8px)}
.inx-k{display:block;font-size:11px;font-weight:600;letter-spacing:.18em;color:rgba(255,255,255,.55);margin-bottom:12px;font-variant-numeric:lining-nums}
.inx-k b{color:var(--accent);font-weight:700}
.inx-cap h3{font-family:var(--fd);font-size:clamp(26px,2.6vw,38px);font-weight:600;line-height:1.05;letter-spacing:-.02em;color:#fff;margin-bottom:12px}
.inx-cap p{font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.78);max-width:46ch;margin-bottom:22px}
#money .cats-foot{margin-top:clamp(40px,4.4vw,64px)}
@media (max-width:900px){
  .inx-head,.inx{grid-template-columns:minmax(0,1fr)}
  .inx-head{gap:12px}
  .inx{gap:14px}
  .inx-list{flex-direction:row;overflow-x:auto;scrollbar-width:none;border-top:0;gap:8px;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scroll-snap-type:x proximity}
  .inx-list::-webkit-scrollbar{display:none}
  .inx-i{flex:none;width:auto;display:flex;gap:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.2);font-family:var(--fb);font-size:14px;white-space:nowrap;scroll-snap-align:start}
  .inx-i .go,.inx-i .bar{display:none}
  .inx-i[aria-selected="true"]{transform:none;background:#fff;color:var(--ink);border-color:#fff}
  .inx-i[aria-selected="true"] .n{color:var(--accent-text)}
  .inx-stage{order:2}
  .inx-core{min-height:0;aspect-ratio:4/5}
}
@media (prefers-reduced-motion:reduce){.inx-f,.inx-i,.inx-cap{transition:none}}

/* footer signature */
.fsig{font-family:var(--fd);font-style:italic;color:rgba(255,255,255,.62)}
@media (max-width:760px){.fcopy{flex-wrap:wrap;gap:6px 18px}}
@media (min-width:1061px){.wb-in{grid-template-columns:minmax(0,370px) minmax(0,1fr)}}
.inx-i[aria-selected="true"]{transform:none}
.inx-i .n,.inx-i .t{transition:transform .6s var(--ease-cine),color .5s var(--ease-cine)}
.inx-i[aria-selected="true"] .n,.inx-i[aria-selected="true"] .t{transform:translateX(10px)}
@media (max-width:900px){.inx-i[aria-selected="true"] .n,.inx-i[aria-selected="true"] .t{transform:none}}
@media (max-width:900px){
  .inx-list{margin-inline:0;padding-inline:0}
  .inx-veil{background:linear-gradient(to top,rgba(5,14,30,.96) 0%,rgba(5,14,30,.78) 48%,rgba(5,14,30,.1) 86%)}
}
/* hero one-liner: two clean lines, never a broken phrase */
.hero .eyebrow.hero-line em{display:block}
/* who: the photograph holds its place while the long rows scroll past */
.who{align-items:start}
@media (min-width:901px){.who-fig{position:sticky;top:120px}}
/* the guide-and-rebate rule: a deliberate note, not a stray paragraph */
.offers-foot.note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 22px;align-items:baseline;max-width:none;margin-top:clamp(22px,2.4vw,30px);padding:18px 24px;background:#fff;border:1px solid var(--hairline);border-left:2px solid var(--accent);font-size:14.5px;line-height:1.6}
.offers-foot.note b{font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-text);white-space:nowrap}
@media (max-width:640px){.offers-foot.note{grid-template-columns:minmax(0,1fr)}}
.hero-act .spots{margin-top:2px}

/* fit form: a white sheet on the dark section, built in the questionnaire's language
   (square corners, lettered options with a tick, underline fields, serif questions) so the
   short form and the full questionnaire read as one instrument. */
.fitbox,.fitbox.fit2{background:#fff;color:var(--ink);border:0;border-radius:0;box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 34px 80px -30px rgba(0,0,0,.62),0 90px 160px -70px rgba(0,0,0,.55)}
.fitbox.fit2::before{display:block;left:0;right:0;top:0;height:3px;background:var(--accent);z-index:2}
.fitbox .fitrail{background:radial-gradient(128% 82% at 50% -16%,#FFFFFF,#FCFBF8 36%,#F5F3EE 74%,#EFEDE7);border-right:1px solid #E7E3DA;gap:28px}
.fitbox .fitwho{grid-template-columns:58px minmax(0,1fr)}
.fitbox .fitwho img{width:58px;height:58px;border:0;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--accent),0 12px 26px -12px rgba(10,29,58,.5)}
.fitbox .fitwho b{color:var(--ink);font-size:18px}
.fitbox .fitwho span{color:var(--body)}
.fitbox .fitsteps{counter-reset:fs;border-top:1px solid #E3DED3}
.fitbox .fitsteps li{gap:14px;padding:13px 0;border-bottom:1px solid #E8E4DB;color:#8792A0;font-size:14px;letter-spacing:-.003em}
.fitbox .fitsteps li::before{width:26px;height:26px;border:1px solid #D9D4CA;border-radius:0;background:transparent;font-size:10.5px;color:#8792A0;font-variant-numeric:tabular-nums}
.fitbox .fitsteps li.on{color:var(--ink);font-weight:600}
.fitbox .fitsteps li.on::before{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:none}
.fitbox .fitsteps li.done{color:var(--body)}
.fitbox .fitsteps li.done::before{content:"\2713";background:var(--accent);border-color:var(--accent);color:var(--ink);font-size:12px}
.fitbox .fitrail-note{color:var(--muted);padding-top:18px;border-top:1px solid #E3DED3;font-size:13px}
.fitbox .fitmain{background:#fff;padding:clamp(30px,3.4vw,52px) clamp(24px,3.6vw,56px) clamp(30px,3.2vw,44px)}
.fitbox .fittop{border:0;padding:0;margin-bottom:20px}
.fitbox .fitstep{display:inline-flex;align-items:center;gap:12px;font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--muted)}
.fitbox .fitstep::before{content:"";width:22px;height:1px;background:var(--accent)}
.fitbox .fitq{font-family:var(--fd);font-weight:700;color:var(--ink);font-size:clamp(27px,2.7vw,38px);line-height:1.1;letter-spacing:-.018em;margin-bottom:12px;text-wrap:balance}
.fitbox .fithint{color:var(--muted);font-size:15.5px;line-height:1.6;margin-bottom:28px;text-wrap:pretty}
.fitbox .fitopts{gap:9px;counter-reset:fk}
.fitbox .fitopt{counter-increment:fk;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:15px;align-items:center;padding:16px 46px 16px 16px;background:#fff;color:var(--ink);border:1px solid var(--hairline);border-radius:0;box-shadow:none;transition:border-color .34s var(--ease-out),transform .34s var(--ease-out),background .34s var(--ease-out),color .34s var(--ease-out)}
.fitbox .fitopt::before{content:counter(fk,upper-alpha);position:static;grid-row:1 / span 2;align-self:center;width:27px;height:27px;display:grid;place-items:center;border:1px solid var(--hairline);border-radius:0;background:transparent;box-shadow:none;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--muted);transition:border-color .34s,background .34s,color .34s}
.fitbox .fitopt::after{content:"";position:absolute;right:20px;top:50%;width:6px;height:12px;border:solid var(--accent);border-width:0 2px 2px 0;transform:translateY(-62%) rotate(45deg) scale(.5);opacity:0;transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}
.fitbox .fitopt>b,.fitbox .fitopt>span{grid-column:2}
.fitbox .fitopt b{font-size:15.5px;font-weight:600}
.fitbox .fitopt span{margin-top:3px;color:var(--muted)}
@media (hover:hover) and (pointer:fine){.fitbox .fitopt:hover{transform:translateX(3px);border-color:var(--ink);background:#fff;box-shadow:none}.fitbox .fitopt:hover::before{border-color:var(--ink);color:var(--ink)}}
.fitbox .fitopt[aria-checked="true"],.fitbox .fitopt.multi[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:none}
.fitbox .fitopt[aria-checked="true"] span,.fitbox .fitopt.multi[aria-pressed="true"] span{color:rgba(255,255,255,.68)}
.fitbox .fitopt[aria-checked="true"]::before,.fitbox .fitopt.multi[aria-pressed="true"]::before{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.fitbox .fitopt[aria-checked="true"]::after,.fitbox .fitopt.multi[aria-pressed="true"]::after{opacity:1;transform:translateY(-62%) rotate(45deg) scale(1)}
.fitbox .fitopt.multi{padding-left:16px}
.fitbox .fitopt.multi::before{content:"";left:auto;top:auto}
.fitbox .fitopt.multi[aria-pressed="true"]::before{content:"\2713";font-size:12px}
.fitbox .fitfoot{color:var(--muted)}
.fitbox .fitgroup{border-top-color:var(--hairline-2);padding:20px 0}
.fitbox .fitgroup .gl,.fitbox .fitfield .fl{font-size:11px;letter-spacing:.18em;color:var(--muted)}
.fitbox .fitrow{gap:8px}
.fitbox .fitrow .fitopt{display:inline-flex;padding:11px 17px;transform:none}
.fitbox .fitrow .fitopt::before,.fitbox .fitrow .fitopt::after{display:none}
@media (hover:hover) and (pointer:fine){.fitbox .fitrow .fitopt:hover{transform:translateY(-2px)}}
.fitbox .fitfields{gap:26px 30px}
.fitbox .fitfield .fl{margin-bottom:6px}
.fitbox .fitfield .fl em{color:var(--accent-text)}
.fitbox .fitfield input,.fitbox .fitfield textarea,.fitbox .fitfield select{color:var(--ink);background-color:transparent;border:0;border-bottom:1.5px solid var(--hairline);border-radius:0;padding:4px 2px 10px;font-size:18px;line-height:1.45;box-shadow:none;transition:border-color .28s var(--ease-out),box-shadow .28s var(--ease-out)}
.fitbox .fitfield select{padding-right:30px;background-position:right 4px center}
.fitbox .fitfield textarea{min-height:64px}
.fitbox .fitfield input::placeholder,.fitbox .fitfield textarea::placeholder{color:var(--faint)}
@media (hover:hover){.fitbox .fitfield input:hover,.fitbox .fitfield textarea:hover,.fitbox .fitfield select:hover{border-bottom-color:#C6D0DB}}
.fitbox .fitfield input:focus,.fitbox .fitfield textarea:focus,.fitbox .fitfield select:focus{background-color:transparent;border-bottom-color:var(--ink);box-shadow:0 1.5px 0 0 var(--ink)}
.fitbox .fitfield.err input,.fitbox .fitfield.err select{border-bottom-color:#C94E00;box-shadow:0 1.5px 0 0 #C94E00}
.fitbox .fiterr,.fitbox .consent.err{color:#C94E00}
.fitbox .chips{gap:6px;margin-bottom:28px}
.fitbox .chips span{color:var(--ink);background:#F5F3EE;border:1px solid #E7E3DA;border-radius:0;font-size:10.5px;letter-spacing:.12em}
.fitbox .consent{color:var(--muted);margin-top:24px}
.fitbox .fitnav{margin-top:32px}
.fitbox .fitnav .btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.fitbox .fitnav .btn-ghost svg{background:transparent;color:var(--accent-text)}
.fitbox .fitnav .btn-ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.fitbox .fitnav .btn-ghost:hover svg{color:var(--accent)}
.fitbox .fitskip{color:var(--muted);border-bottom-color:var(--hairline)}
.fitbox .fitskip:hover{color:var(--ink);border-bottom-color:var(--ink)}
.fitbox .fitnav .reassure{color:var(--muted);font-size:13px}
.fitbox .fitdone .mark{border-radius:0;border-color:var(--accent);color:var(--accent-text)}
.fitbox .fitdone h3{color:var(--ink);font-family:var(--fd)}
.fitbox .fitdone p{color:var(--body)}
.fitbox .fitdone-note{color:var(--muted)!important}
@media (max-width:900px){.fitbox .fitrail{border-right:0;border-bottom:1px solid #E7E3DA}}
@media (max-width:640px){.fitbox .fitfields{gap:22px}}
.fitbox .fitrow.stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fitbox .fitrow.stack .fitopt{display:flex;align-items:center;text-align:left;padding:13px 16px}
.fitbox .fitrow.stack .fitopt b{font-size:14.5px;line-height:1.4}
.fitbox .fitother{margin-top:22px}
@media (max-width:640px){.fitbox .fitrow.stack{grid-template-columns:minmax(0,1fr)}}

/* offer ledger: the figures go ink, so orange is rationed back to the emphasis line, the CTA and
   one short tick per cell (six orange headlines in a row read as a price sheet, not an offer) */
.offer b{color:var(--ink);position:relative;padding-top:18px}
.offer b::before{content:"";position:absolute;left:0;top:0;width:22px;height:2px;background:var(--accent)}
.fitbox .fitopt.multi{padding-right:16px}
.fitbox .fitopt.multi::after{display:none}
.fitbox .fitopt.multi::before,.fitbox .fitopt.multi[aria-pressed="true"]::before{box-shadow:none}
.fitbox .fitopt.multi[aria-pressed="true"]::before{color:var(--ink);font-weight:800}
.fitbox .fitfield textarea{resize:none}
.fitbox .fitnav .btn-ghost{padding:12px 22px 12px 16px;gap:14px}
@media (max-width:640px){.fitbox .fitnav .btn-ghost{justify-content:center}}

/* ROUND 31: Josh centred at every width; the quote card never crosses his centre line */
@media (min-width:901px){.hero-quote{max-width:min(300px,calc(50% - 72px))}}
@media (min-width:901px) and (max-width:1180px){.hero-quote{padding:14px 16px 13px 18px}.hero-quote p{font-size:13.5px;line-height:1.45}}
/* ROUND 31: later grid overrides (rounds 23/24) were unscoped and undid the phone stacking */
@media (max-width:900px){
  .pov{grid-template-columns:minmax(0,1fr)}
  .foot-g{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-g>div:first-child{grid-column:1/-1}
}
@media (max-width:600px){
  .foot-g{grid-template-columns:minmax(0,1fr)}
  .show-poster{aspect-ratio:4/5}.show-poster img{object-position:50% 20%}.show-chip{display:none}
}

/* how-it-works film: one poster, one play button, real controls once it starts */
.vid{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ink-deep)}
.vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--ink-deep)}
.vid-play{position:absolute;inset:0;z-index:2;display:grid;place-items:center;width:100%;border:0;padding:0;margin:0;cursor:pointer;background:linear-gradient(to bottom,rgba(4,11,24,.55),rgba(4,11,24,.04) 40%);color:#fff;font:inherit;transition:opacity .45s var(--ease-cine)}
.vid-play img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform 1.4s var(--ease-cine)}
.vid-btn{display:grid;place-items:center;width:clamp(64px,6.4vw,88px);height:clamp(64px,6.4vw,88px);border-radius:50%;background:var(--accent);color:var(--ink);box-shadow:0 22px 50px -18px rgba(255,106,0,.7),0 0 0 10px rgba(255,255,255,.14);transition:transform .45s var(--ease-cine),box-shadow .45s var(--ease-cine)}
.vid-btn svg{width:34%;height:34%;margin-left:7%}
.vid-meta{position:absolute;left:clamp(16px,2vw,26px);right:clamp(16px,2vw,26px);top:clamp(14px,1.8vw,22px);text-shadow:0 1px 10px rgba(4,11,24,.6);display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-align:left}
.vid-meta span:last-child{color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
@media (hover:hover){.vid-play:hover .vid-btn{transform:scale(1.07);box-shadow:0 26px 56px -16px rgba(255,106,0,.8),0 0 0 14px rgba(255,255,255,.16)}.vid-play:hover img{transform:scale(1.025)}}
.vid.on .vid-play{opacity:0;pointer-events:none}
.vid-play:focus-visible{outline:2px solid var(--accent);outline-offset:-6px}

/* homepage: the film sits inside the "who you're working with" band, under the stats */
.wb-film{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut) clamp(44px,5vw,80px)}
.wb-film-in{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:center;padding-top:clamp(34px,3.6vw,52px);border-top:1px solid rgba(255,255,255,.1)}
.wb-film h2{font-family:var(--fd);font-size:clamp(26px,2.5vw,36px);line-height:1.06;letter-spacing:-.02em;color:#fff;font-weight:700}
.wb-film h2 .it{display:block;font-style:italic;font-weight:600;color:var(--accent)}
.wb-film p:not(.wb-k){margin-top:16px;font-size:15px;line-height:1.6;color:rgba(255,255,255,.66);max-width:34ch}
.wb-film .mat{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);box-shadow:0 50px 100px -50px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05)}

/* how it works page: the film fills the right side of the head */
.ph-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(32px,4.4vw,80px);align-items:center}
.ph-film{margin:0}
@media (max-width:900px){
  .wb-film-in,.ph-grid{grid-template-columns:minmax(0,1fr)}
  .wb-film p:not(.wb-k){max-width:52ch}
}
@media (prefers-reduced-motion:reduce){.vid-play,.vid-btn,.vid-play img{transition:none}}
