:root{--char:#151716;--paper:#f3efe6;--ink:#171917;--stone:#e3ddce;--muted:#5b5f55;--accent:#5d6134;--line:rgba(23,25,23,.16);--sage:#a3b4a4;--olive:#4f5330;--cream:#f1ede3;--gut:max(20px,calc((100vw - 1180px)/2));
--disp:'Barlow Condensed','Arial Narrow','Roboto Condensed',sans-serif;--body:'Barlow',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#181a19;--ink:#f1ede3;--stone:#212422;--muted:#b3b6ab;--accent:#a3b4a4;--line:rgba(241,237,227,.16)}}
:root[data-theme="dark"]{--paper:#181a19;--ink:#f1ede3;--stone:#212422;--muted:#b3b6ab;--accent:#a3b4a4;--line:rgba(241,237,227,.16)}
*,*::before,*::after{box-sizing:inherit}
html{height:100%;scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}
body{margin:0;min-height:100%;background:var(--char);color:var(--cream);font:400 1.0625rem/1.6 var(--body)}
img,video{max-width:100%;display:block}
a{color:inherit}
.skip{position:absolute;left:-999px;top:8px;background:var(--cream);color:var(--char);padding:10px 14px;z-index:9}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--sage);outline-offset:3px}
section,footer,header{padding-inline:var(--gut)}
section{padding-block:clamp(56px,9vw,112px)}
.dark{background:var(--char);color:var(--cream);--muted:#b9bcb0;--accent:var(--sage);--line:rgba(241,237,227,.16);--btnbg:var(--cream);--btnink:var(--char)}
.olive{background:var(--olive);color:var(--cream);--muted:#d6d8c4;--accent:#cfd8c3;--line:rgba(241,237,227,.22);--btnbg:var(--cream);--btnink:var(--char)}
.light{background:var(--paper);color:var(--ink);--btnbg:var(--ink);--btnink:var(--paper)}
.stone{background:var(--stone);color:var(--ink);--btnbg:var(--ink);--btnink:var(--paper)}
h1,h2,h3{font-family:var(--disp);margin:0;font-weight:800;line-height:.95}
h2{font-size:clamp(2.4rem,6vw,4.4rem);text-transform:uppercase;letter-spacing:.005em}
h2 em{font-style:normal;color:var(--accent)}
h3{font-size:1.5rem;font-weight:700;line-height:1.1}
p{margin:0 0 1em}
.kick{font:600 .875rem/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}
.lead{color:var(--muted);font-size:1.125rem;max-width:56ch}
/* header */
header{background:var(--char);display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:16px;border-bottom:1px solid rgba(241,237,227,.12)}
.mark{font:800 1.25rem/1 var(--disp);letter-spacing:.14em;text-decoration:none}
.tag{font:600 .8125rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:#b9bcb0}
@media(max-width:560px){.tag{display:none}}
/* button */
.btn{display:inline-grid;grid-template-columns:1fr auto;column-gap:18px;align-items:center;text-align:left;min-height:64px;padding:12px 22px;border-radius:8px;background:var(--btnbg);color:var(--btnink);text-decoration:none;box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 10px 26px -12px rgba(0,0,0,.55);transition:transform .2s,box-shadow .2s}
.btn b{font-weight:800}.btn .m{font:700 1.125rem/1.2 var(--body)}.btn small{grid-column:1;font:500 .875rem/1.3 var(--body);opacity:.78}
.btn i{grid-column:2;grid-row:1/3;font-style:normal;font-size:1.5rem;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--btnink);color:var(--btnbg);transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.btn:hover i{transform:translate(2px,-2px)}
/* hero */
.hero{padding-block:clamp(28px,5vw,72px) clamp(40px,6vw,88px);background:radial-gradient(1200px 520px at 85% -10%,rgba(141,160,143,.16),transparent 60%),var(--char)}
.hgrid{display:grid;gap:18px;grid-template-areas:"label" "h1" "sub" "video" "cta";align-items:start}
.label{grid-area:label;font:700 .9375rem/1.2 var(--body);letter-spacing:.16em;color:var(--sage);margin:0;display:flex;align-items:center;gap:12px}
.label::before{content:"";width:28px;height:2px;background:var(--sage)}
.hero h1{grid-area:h1;font-size:clamp(2.6rem,6.4vw,5.6rem);letter-spacing:-.005em}
.sub{grid-area:sub;color:#cfd1c6;font-size:clamp(1rem,1.5vw,1.25rem);max-width:46ch;margin:0}
.cta{grid-area:cta;margin-top:6px}
.vid{grid-area:video;border-radius:10px;overflow:hidden;background:#000;box-shadow:0 30px 60px -30px rgba(0,0,0,.8);outline:1px solid rgba(241,237,227,.14)}
.vid video{width:100%;aspect-ratio:16/9;background:#000}
@media(min-width:900px){.hgrid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:clamp(32px,5vw,72px);grid-template-areas:"label video" "h1 video" "sub video" "cta video";grid-template-rows:auto auto auto 1fr;row-gap:22px;align-items:center}.hgrid>.cta{align-self:start}}
/* carousel */
.chead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}
.ctl{display:flex;align-items:center;gap:12px}.count{font:600 .9375rem var(--body);min-width:56px;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}
.ctl button{width:52px;height:52px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;font-size:1.4rem;cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s,opacity .2s}
.ctl button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.dark .ctl button:hover:not(:disabled),.olive .ctl button:hover:not(:disabled){background:var(--cream);color:var(--char)}
.ctl button:disabled{opacity:.3;cursor:default}
.track{position:relative;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px var(--gut) 8px;margin-inline:calc(var(--gut) * -1);scrollbar-width:none;overscroll-behavior-x:contain}
.track::-webkit-scrollbar{display:none}.track>*{scroll-snap-align:start;flex:0 0 auto}
.track{scroll-padding-inline:var(--gut)}
.slide{margin:0;--sh:clamp(340px,62svh,600px)}
.slide img{height:var(--sh);width:auto;max-width:calc(100vw - 40px);object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 18px 40px -26px rgba(0,0,0,.5)}
.slide figcaption{margin-top:12px;font:600 1rem/1.3 var(--body);color:var(--muted)}
.note{margin:28px 0 0;padding-left:16px;border-left:3px solid var(--accent);color:var(--muted);max-width:62ch}
.card{width:min(86vw,410px);display:flex;flex-direction:column;justify-content:space-between;gap:22px;padding:28px;border:1px solid var(--line);border-radius:10px;background:rgba(127,127,110,.07)}
.card blockquote{margin:0;font:500 1.125rem/1.55 var(--body)}.card cite{font:700 1.375rem/1.1 var(--disp);font-style:normal;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}
/* videos */
.vgrid{display:grid;gap:26px}@media(min-width:760px){.vgrid{grid-template-columns:1fr 1fr}}
.vgrid figure{margin:0}.vgrid video{width:100%;aspect-ratio:16/9;border-radius:10px;background:#000;outline:1px solid var(--line)}
.vgrid figcaption{margin-top:12px;font:600 1rem var(--body);color:var(--muted)}
/* feature quote */
.feat{max-width:900px}.feat blockquote{margin:22px 0 26px;font:600 clamp(1.3rem,2.4vw,1.8rem)/1.4 var(--body);letter-spacing:-.005em}
.feat cite{font:800 1.5rem var(--disp);font-style:normal;letter-spacing:.08em;text-transform:uppercase}
.qm{font:800 6rem/.6 var(--disp);color:#cfd8c3;display:block;height:44px}
/* app */
.two{display:grid;gap:clamp(28px,5vw,72px);align-items:center}@media(min-width:900px){.two{grid-template-columns:1.1fr .9fr}.two.flip{grid-template-columns:.8fr 1.2fr}}
.app img{border-radius:12px;width:100%;height:auto;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.pair{display:grid;gap:0;margin:26px 0;border-top:1px solid var(--line)}@media(min-width:600px){.pair{grid-template-columns:1fr 1fr;gap:28px}}
.pair div{padding:18px 0;border-bottom:1px solid var(--line)}.pair h3{margin-bottom:6px;color:var(--accent)}.pair p{margin:0;color:var(--muted)}
.offer{font-weight:600;color:inherit;max-width:56ch}
/* coaches */
.coach img{width:100%;max-width:480px;height:auto;border-radius:12px;box-shadow:0 26px 50px -30px rgba(0,0,0,.6)}
.hours{font-size:clamp(2.8rem,8vw,6rem)}
.who{display:grid;gap:10px;margin:22px 0;padding:18px 0;border-block:1px solid var(--line)}.who p{margin:0}.who b{font:800 1.4rem var(--disp);letter-spacing:.05em;text-transform:uppercase}
.quals{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.quals li{padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-weight:500;font-size:.9375rem}
/* steps */
.steps{display:grid;gap:0;margin-top:36px;counter-reset:s}@media(min-width:800px){.steps{grid-template-columns:repeat(3,1fr);gap:36px}}
.step{padding:24px 0;border-top:2px solid var(--ink)}.step span{font:800 3.4rem/1 var(--disp);color:var(--accent);display:block;margin-bottom:12px}.step p{color:var(--muted);margin:8px 0 0}
/* final */
.final{text-align:left}.final .box{margin:30px 0;padding:22px 24px;border:1px solid var(--line);border-radius:10px;max-width:640px;background:rgba(0,0,0,.14)}.final .box p{margin:0}.final .box strong{display:block;font:800 1.75rem/1.1 var(--disp);letter-spacing:.02em;margin-bottom:8px}
/* faq */
.faq{max-width:820px;margin-top:34px;border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;padding:22px 4px;font:700 1.25rem/1.3 var(--body)}summary::-webkit-details-marker{display:none}
summary .n{font:800 1rem var(--disp);color:var(--accent);letter-spacing:.1em}summary::after{content:"+";margin-left:auto;font:400 1.8rem/1 var(--body);transition:transform .25s}details[open] summary::after{transform:rotate(45deg)}
details .a{padding:0 4px 24px 44px;color:var(--muted);max-width:66ch}details .a p:last-child{margin:0}
/* footer */
footer{background:var(--char);padding-block:44px;display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:center;color:#b9bcb0}
footer nav{display:flex;flex-wrap:wrap;gap:10px 22px}footer nav a{color:var(--cream);font-weight:600;text-decoration:none;padding:6px 0;border-bottom:1px solid rgba(241,237,227,.3)}footer nav a:hover{border-color:var(--cream)}
.rv-on{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.rv-on.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.rv-on{opacity:1;transform:none}}

.brand-logo{display:block;position:relative;width:155px;height:103px;overflow:hidden;border-radius:5px;background:#fff}.brand-logo img{position:absolute;max-width:none;width:178px;height:178px;left:-12px;top:-40px}footer .brand-logo{width:155px;margin-bottom:8px}@media(max-width:560px){header .brand-logo{width:125px;height:83px}header .brand-logo img{width:144px;height:144px;left:-10px;top:-32px}}

.featured-story{padding-block:clamp(30px,4vw,52px)}.featured-story .kick{margin-bottom:10px}.featured-story .qm{font-size:4rem;height:26px}.featured-story blockquote{margin:14px 0 18px;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.4}.featured-story cite{font-size:1.25rem}

.hgrid{grid-template-areas:"h1" "sub" "video" "cta"}@media(min-width:900px){.hgrid{grid-template-areas:"h1 video" "sub video" "cta video";grid-template-rows:auto auto 1fr}}

.hero .sub{color:var(--sage);font-size:clamp(1.1rem,1.65vw,1.375rem);font-weight:600;line-height:1.5}

.hero .sub{color:#b8bd8b}

.tracking-choice{position:fixed;z-index:100;bottom:18px;left:18px;right:18px;max-width:620px;background:#f3efe6;color:#171917;padding:20px;border-radius:10px;box-shadow:0 8px 40px #0005;font-size:14px;line-height:1.5}.tracking-choice p{margin:0 0 12px}.tracking-choice div{display:flex;gap:10px}.tracking-choice button{padding:10px 20px;border:1px solid #5d6134;border-radius:6px;cursor:pointer;background:transparent;color:#171917;font:600 14px var(--body)}.tracking-choice button:last-child{background:#5d6134;color:#fff}.cookie-settings{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit;font-size:12px}
