@font-face{font-family:'Barlow Condensed';src:url('/assets/barlow-condensed-extrabold.215a85d1dde4d5ea.woff2') format('woff2'),url('/assets/barlow-condensed-extrabold.68c1829975557e57.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('/assets/barlow-condensed-bold.fd3de3175e72bcae.woff2') format('woff2'),url('/assets/barlow-condensed-bold.53550669f93c07de.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Archivo;src:url('/assets/archivo-regular.71095863b31e8a6f.woff2') format('woff2'),url('/assets/archivo-regular.01170409e32e2212.ttf') format('truetype');font-weight:400 500;font-display:swap}
@font-face{font-family:Archivo;src:url('/assets/archivo-bold.e9b195cfb358bad5.woff2') format('woff2'),url('/assets/archivo-bold.bed60488c2f5c0b2.ttf') format('truetype');font-weight:600 700;font-display:swap}
:root{--chalk:#f5f2ea;--green:#17402a;--orange:#e4570f;--text:#1a1a16;--muted:#55534b;--line:#d8d4c8;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-family:Archivo,Arial,sans-serif;background:var(--chalk);color:var(--text);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}button{font:inherit}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p,figure{margin:0}p{line-height:1.7}h1,h2{font-family:var(--display);font-weight:800;line-height:1.02;color:var(--green)}h1{font-size:clamp(64px,7.3vw,106px);letter-spacing:-1.8px}h2{font-size:clamp(42px,4.4vw,64px);letter-spacing:-.8px}h3{font-size:19px;line-height:1.35;color:var(--green);font-weight:600}svg{width:24px;height:24px;flex-shrink:0}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--orange);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:16px;letter-spacing:1.5px;line-height:1.5;font-weight:600;color:var(--green);margin-bottom:22px}.underlined{position:relative;display:inline-block}.underlined:after{content:'';display:block;position:absolute;bottom:-7px;inset-inline-start:1px;height:5px;width:100%;background:var(--orange)}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;color:var(--green)}.text-link:hover{color:#a43f0a}.header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:center;font-family:var(--display);font-size:28px;font-weight:800;letter-spacing:0;color:var(--green)}.wordmark img{width:42px;height:42px;margin-inline-end:6px}.wordmark-dot{color:var(--orange)}nav{display:flex;gap:32px;align-items:center}nav a{font-size:16px;min-height:44px;display:flex;align-items:center}nav a:hover{color:#a43f0a}nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}.nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 20px;background:var(--green);border:1px solid var(--green);border-radius:5px;color:var(--chalk);min-height:48px;font-size:16px}.nav-cta:hover{background:#0f2e1d;color:white}.skip-link{position:fixed;inset-inline-start:16px;top:-100px;padding:14px;background:var(--green);color:white;z-index:20}.skip-link:focus{top:12px}
.hero{padding-top:58px;padding-bottom:30px}.hero-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:65px;margin-bottom:48px}.hero-intro{padding-bottom:4px;max-width:370px}.hero-intro>p:first-child{font-size:21px;color:var(--green);margin-bottom:10px;font-weight:500}.hero-intro>p+p{font-size:18px;color:var(--muted)}.hero-intro .text-link{margin-top:22px}.hero-photo-frame{position:relative;aspect-ratio:16/9;border-radius:9px;overflow:hidden;background:#10271a;box-shadow:0 20px 50px rgba(23,64,42,.12)}.hero-photo-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,38,25,.2),transparent 48%,rgba(228,87,15,.05));pointer-events:none}.hero-photo-frame picture,.hero-photo-frame img{display:block;width:100%;height:100%}.hero-photo-frame img{object-fit:cover;object-position:center 48%;filter:saturate(.88) contrast(1.04) sepia(.07)}.hero-photo-mark{position:absolute;z-index:1;inset-inline-start:24px;bottom:24px;padding:11px 15px;background:rgba(245,242,234,.94);border-inline-start:4px solid var(--orange);color:var(--green);font-size:16px;font-weight:700;letter-spacing:1px;max-width:calc(100% - 48px)}.hero-photo figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-top:19px;font-size:16px;color:var(--muted)}.hero-photo figcaption>span:first-child{color:var(--green);font-size:18px}.hero-photo figcaption a{text-decoration:underline;text-underline-offset:4px}.hero-photo figcaption a:hover{color:#a43f0a}
.product-section{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:100px;padding-block:76px 100px}.product-copy>p:not(.eyebrow){font-size:18px;color:var(--muted);margin-top:25px;max-width:440px}.product-features{margin-top:34px}.product-features article{display:flex;gap:22px;padding-block:22px;border-top:1px solid var(--line)}.product-features article>span{font-family:var(--display);font-size:20px;color:var(--muted);padding-top:2px}.product-features p{color:var(--muted);margin-top:8px;font-size:16px}.product-stage{position:relative;align-self:stretch;background:#e8e7df;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:65px 28px 35px;min-width:0}.stage-label{position:absolute;top:25px;inset-inline-start:0;width:100%;text-align:center;font-size:16px;letter-spacing:1.3px;color:var(--muted)}.phone{position:relative;width:318px;max-width:100%;border:5px solid var(--green);border-radius:30px;background:var(--chalk);padding:12px 17px 16px;flex-shrink:0}.phone-top{display:flex;justify-content:space-between;font-size:16px;font-weight:600;padding:0 5px 18px}.app-heading{display:flex;align-items:center;justify-content:space-between}.app-wordmark{font-family:var(--display);font-size:28px;font-weight:800;color:var(--green)}.avatar{height:32px;width:32px;border-radius:50%;background:#e3e7dc;color:var(--green);display:grid;place-items:center;font-size:16px}.app-greeting{font-family:var(--display);font-size:16px;letter-spacing:1px;margin:19px 0 7px;color:var(--muted)}.squad-heading{display:flex;justify-content:space-between;align-items:center;gap:5px}.squad-heading h2{font-size:26px;letter-spacing:0}.team-chip{font-size:16px;border:1px solid var(--line);border-radius:12px;padding:3px 7px}.session-date{font-size:16px;margin-top:10px;display:flex;justify-content:space-between;gap:8px}.session-info{display:flex;justify-content:space-between;gap:8px;font-size:16px;border-top:1px solid var(--line);margin-top:10px;padding:11px 0;color:var(--green)}.session-card{background:white;border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:10px;padding:13px 12px}.session-kicker{font-size:16px;color:var(--muted)}.session-card h3{font-family:var(--display);font-weight:800;font-size:26px;line-height:1.1;margin-top:6px}.mini-pitch{height:103px;background:#e3e7dc;border:1px solid #bbcab8;border-radius:4px;margin:12px 0;position:relative;overflow:hidden}.mini-pitch:before{content:'';position:absolute;inset:9px;border:1px solid #a7b8a3}.mini-pitch:after{content:'';position:absolute;inset-inline-start:50%;height:100%;border-inline-start:1px solid #a7b8a3}.mini-circle{width:44px;height:44px;border:1px solid #a7b8a3;border-radius:50%;position:absolute;inset-inline-start:calc(50% - 22px);top:calc(50% - 22px)}.player{position:absolute;width:12px;height:12px;background:var(--green);border:2px solid white;border-radius:50%;z-index:1}.p1{inset-inline-start:20%;top:25%}.p2{inset-inline-start:42%;top:65%}.p3{inset-inline-start:70%;top:30%}.p4{inset-inline-start:82%;top:65%}.p5{inset-inline-start:50%;top:20%}.p6{inset-inline-start:62%;top:70%}.orange{background:var(--orange)}.pass-line{position:absolute;inset-inline-start:25%;top:40%;width:45px;border-top:2px dashed var(--green);transform:rotate(40deg)}#drill-list>div{display:flex;gap:9px;align-items:center;padding:7px 0;border-top:1px solid #e5e2d9;font-size:16px}#drill-list>div>span{color:var(--muted)}#drill-list strong{font-weight:500}#drill-list b{margin-inline-start:auto;color:var(--green);font-weight:600}.preview-button{width:100%;border:1px solid var(--green);background:var(--chalk);color:var(--green);min-height:48px;border-radius:6px;margin-top:12px;font-family:var(--display);font-size:18px;font-weight:700;letter-spacing:.6px}.preview-button:hover{background:#e3e7dc}.preview-caption{font-size:16px;text-align:center;line-height:1.4;margin-top:10px;color:var(--muted)}
.coaching-note{background:var(--green);color:var(--chalk);padding-block:75px}.coaching-note-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:15px 90px;align-items:end}.coaching-note .eyebrow{grid-column:1/-1;color:#d9dfd4}.coaching-note h2{color:var(--chalk);font-size:72px}.coaching-note h2 span{color:#d1dba9}.coaching-note p:not(.eyebrow){color:#d9dfd4;font-size:19px;max-width:450px;padding-bottom:3px}.release-section{display:flex;justify-content:space-between;align-items:center;gap:45px;padding-block:65px;border-bottom:1px solid var(--line)}.release-section h2{font-size:48px}.release-section p:not(.eyebrow){max-width:600px;color:var(--muted);margin-top:20px}.release-section .text-link{flex-shrink:0}.faq-section{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding-block:75px}.faqs details{border-bottom:1px solid var(--line)}.faqs summary{min-height:76px;padding-block:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:18px;font-weight:500;cursor:pointer;list-style:none}.faqs summary::-webkit-details-marker{display:none}.faqs summary span{font-size:25px;color:var(--green)}.faqs details[open] summary span{transform:rotate(45deg)}.faqs details p{padding-bottom:22px;color:var(--muted)}.faqs a{text-decoration:underline;text-underline-offset:4px}.download-section{display:flex;align-items:center;justify-content:space-between;gap:45px;border-top:1px solid var(--line);padding-block:55px}.download-section h2{font-size:72px}.download-section p:not(.eyebrow){margin-top:18px;color:var(--muted)}.store-links{display:flex;gap:12px;flex-wrap:wrap}.store-badge{display:flex;align-items:center;gap:11px;padding:12px 16px;border-radius:6px;background:var(--green);color:var(--chalk);min-height:68px;min-width:182px;border:1px solid var(--green)}.store-badge:hover{background:#0f2e1d}.store-badge small{display:block;font-size:16px;line-height:1.3}.store-badge strong{font-size:22px;font-weight:600;line-height:1.2}.store-badge svg{width:26px;height:32px}.release-note{font-size:16px}.download-email{margin-bottom:14px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding:40px 0;border-top:1px solid var(--line)}.footer-top p{font-size:16px;color:var(--muted);margin-top:10px}.social-area>span{font-size:16px;letter-spacing:1px;font-weight:600}.social-links{display:flex;gap:10px;margin-top:14px}.social-links a{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--green)}.social-links a:hover{background:#e3e7dc}.social-links svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.footer-bottom{border-top:1px solid var(--line);padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:16px}.footer-bottom a{display:flex;align-items:center;min-height:44px}
.pricing-hero{padding-block:65px 45px;max-width:1000px;text-align:center}.pricing-hero h1{font-size:90px}.pricing-hero .eyebrow{margin-bottom:20px}.hero-description{font-size:18px;color:var(--muted);margin-top:28px}.pricing-hero .hero-description{margin-inline:auto;max-width:600px}.pricing-status{max-width:650px;margin:25px auto 0;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.section-heading p{color:var(--muted)}.plans-section{padding-block:15px 65px}.plans-section h2{font-size:38px}.plan-price{font-family:var(--display);font-weight:700;font-size:34px;color:var(--green);margin-top:20px;line-height:1.2}.yearly-card{background:#e8ebe1;border-color:#c8d0bf}.plan-availability{margin-top:auto;padding-top:24px;color:var(--muted);font-size:16px}.pricing-disclosure{margin-top:24px;max-width:800px;color:var(--muted)}.coach-section{padding-block:55px;background:var(--green);color:var(--chalk)}.coach-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.coach-section .eyebrow,.coach-section h2,.coach-section h3{color:var(--chalk)}.coach-section h2{font-size:60px}.coach-section h2 span{color:#d1dba9}.coach-section p:not(.eyebrow){margin-top:20px;color:#d7ddd3;max-width:460px}.feature-list article{display:flex;gap:22px;padding-block:22px;border-top:1px solid #54705b}.feature-list article>span{font-size:16px;color:#d1dba9}.feature-list h3{font-size:18px}.feature-list article p{margin-top:9px!important}.pricing-outro{border-block:1px solid var(--line);padding-block:35px;display:flex;align-items:center;justify-content:space-between;gap:30px}.pricing-outro h2{font-size:36px}.section{padding-block:70px}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero-heading{gap:35px;grid-template-columns:1.3fr 1fr}h1{font-size:74px}.hero-intro>p+p{font-size:16px}.product-section{gap:45px}.product-copy h2{font-size:51px}.product-stage{padding-inline:18px}.coaching-note-inner{gap:20px 45px}.coaching-note h2{font-size:62px}.download-section{gap:25px}.store-links{flex-direction:column}.section-heading{align-items:flex-start;flex-direction:column;gap:15px}}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.header{height:80px}.wordmark{font-size:25px}.wordmark img{width:34px;height:34px;margin-inline-end:4px}nav{gap:18px}nav>a:not(.nav-cta):not(.pricing-nav){display:none}.nav-cta{padding:11px 14px;gap:12px}.hero{padding-top:36px}.hero-heading{grid-template-columns:1fr;gap:28px;margin-bottom:30px}.hero .eyebrow{font-size:16px;letter-spacing:1px;margin-bottom:17px}h1{font-size:clamp(55px,10.3vw,78px);letter-spacing:-1px}.hero-intro{max-width:500px}.hero-intro>p:first-child{font-size:20px}.hero-intro>p+p{font-size:18px}.hero-intro .text-link{margin-top:14px}.hero-photo-frame{aspect-ratio:4/3}.hero-photo-frame img{object-position:55% center}.hero-photo-mark{inset-inline-start:16px;bottom:16px}.hero-photo figcaption{align-items:flex-start;flex-direction:column;gap:7px;font-size:16px}.hero-photo figcaption>span:first-child{font-size:18px}.product-section{grid-template-columns:1fr;gap:34px;padding-block:35px 55px}.product-copy h2{font-size:48px}.product-copy>p:not(.eyebrow){font-size:18px}.product-features{margin-top:26px}.product-stage{min-height:670px;padding:65px 20px 30px}.phone{width:318px}.coaching-note{padding-block:50px}.coaching-note-inner{grid-template-columns:1fr;gap:20px}.coaching-note .eyebrow{margin-bottom:0}.coaching-note h2{font-size:58px}.coaching-note p:not(.eyebrow){font-size:18px}.release-section{align-items:flex-start;flex-direction:column;gap:20px;padding-block:48px}.release-section h2{font-size:44px}.faq-section{grid-template-columns:1fr;gap:24px;padding-block:50px}.faq-section h2{font-size:46px}.faqs summary{font-size:17px;min-height:72px}.download-section{align-items:flex-start;flex-direction:column;gap:25px;padding-block:45px}.download-section h2{font-size:60px}.store-links{flex-direction:row}.footer-top{flex-direction:column;gap:25px;padding-block:30px}.footer-bottom{flex-wrap:wrap;gap:8px 24px}.footer-bottom>span:last-of-type{width:100%;order:5}.pricing-hero{padding-block:40px 30px;text-align:start}.pricing-hero h1{font-size:clamp(49px,10vw,72px)}.pricing-status{margin-top:20px}.plans-section{padding-bottom:45px}.plans-section h2{font-size:34px}.coach-grid{grid-template-columns:1fr;gap:30px}.coach-section h2{font-size:52px}.pricing-outro{align-items:flex-start;flex-direction:column;gap:22px}.pricing-outro h2{font-size:32px}.section{padding-block:45px}}
@media(max-width:360px){.wordmark{font-size:22px}.wordmark img{width:28px;height:28px}nav{gap:12px}.nav-cta{padding:10px}.nav-cta span{display:none}.hero-intro .text-link{gap:9px}.hero-photo-mark{inset-inline-start:12px;bottom:12px;letter-spacing:.5px;padding:8px 11px;max-width:calc(100% - 24px)}.product-copy h2{font-size:42px}.product-stage{padding-inline:9px}.phone{padding-inline:12px;border-width:4px}.session-card{padding-inline:9px}.coaching-note h2{font-size:51px}}
/* Quiet secondary typography lets the hero carry the brand voice. */
.home-page .product-copy h2,.home-page .compare-teaser h2,.home-page .release-section h2,.home-page .faq-section h2,.home-page .download-section h2,.founder-heading h2,.compare-page h2{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-1.2px;text-wrap:balance}
.home-page .eyebrow,.compare-page .eyebrow{letter-spacing:1.1px;margin-bottom:16px}
.home-page .product-section{padding-block:55px 70px;gap:75px}
.home-page .product-copy>p:not(.eyebrow){margin-top:20px}
.compare-teaser{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:50px;border-top:1px solid var(--line);align-items:center}
.compare-teaser-copy p{font-size:18px;color:var(--muted);max-width:490px}
.compare-teaser .text-link{margin-top:18px}
.founder-section{background:var(--green);color:var(--chalk);padding-block:65px}
.founder-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}
.founder-heading .eyebrow,.founder-heading h2{color:var(--chalk)}
.founder-heading>p:last-child{color:#d9dfd4;margin-top:24px}
.founder-letter{max-width:600px}
.founder-letter>p{font-size:21px;line-height:1.75;letter-spacing:-.2px}
.founder-letter>p+p{margin-top:20px;color:#d9dfd4}
.founder-signoff{display:flex;align-items:center;gap:18px;margin-top:30px}
.founder-rule{width:36px;height:2px;background:#d1dba9}
.founder-signoff strong,.founder-signoff span:not(.founder-rule){display:block;font-size:16px}
.founder-signoff p>span{color:#d9dfd4}
.home-page .release-section{padding-block:44px}
.home-page .faq-section{padding-block:55px}
.home-page .download-section{padding-block:44px}
.compare-hero{padding-block:55px 45px}
.compare-hero h1{font-size:clamp(46px,6.2vw,86px);max-width:1080px;letter-spacing:-1.2px;line-height:1.04;text-wrap:balance}
.compare-hero h1>span{color:var(--green)}
.compare-lede{font-size:20px;color:var(--muted);max-width:660px;margin-top:24px}
.compare-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:24px}
.compare-availability{margin-top:18px;color:var(--muted);font-size:16px}
.coaching-week{background:var(--green);color:var(--chalk);padding-block:50px}
.coaching-week-grid{display:grid;grid-template-columns:1fr .9fr;gap:85px;align-items:center}
.coaching-week .eyebrow,.coaching-week h2,.coaching-week h3{color:var(--chalk)}
.week-steps{list-style:none;padding:0;margin:28px 0 0;counter-reset:week}
.week-steps li{position:relative;padding:16px 0 16px 38px;border-top:1px solid #54705b;counter-increment:week}
.week-steps li:before{content:'0' counter(week);position:absolute;inset-inline-start:0;top:17px;font-family:var(--display);font-size:20px;color:#d1dba9}
.week-steps p{color:#d9dfd4;margin-top:5px}
.example-session{background:var(--chalk);color:var(--green);padding:28px;border-top:3px solid var(--orange)}
.example-session figcaption{font-size:16px;letter-spacing:.6px}
.example-session-day{font-family:var(--display);font-size:44px;font-weight:700;line-height:1.1;margin-top:20px}
.example-session-meta{margin-top:14px;font-size:16px;display:flex;gap:8px 20px;flex-wrap:wrap;justify-content:space-between}
.example-session-meta span{color:var(--muted)}
.example-drills{list-style:none;padding:0;margin:20px 0 0}
.example-drills li{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding:12px 0;line-height:1.5}
.example-drills strong{margin-inline-start:auto;font-family:var(--display);font-size:23px}
.example-note{border-top:1px solid var(--line);padding-top:16px;color:var(--muted)}
.example-note strong{display:block;color:var(--green);margin-bottom:5px}
.example-disclosure{font-size:16px;color:var(--muted);margin-top:18px;line-height:1.5}
.comparison-section{padding-block:55px}
.comparison-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:28px}
.comparison-heading p{color:var(--muted)}
.comparison-matrix{min-width:0}
.comparison-matrix>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;cursor:pointer;color:var(--green);font-size:18px;font-weight:600;border-block:1px solid var(--line);padding-block:14px;list-style:none}
.comparison-matrix>summary::-webkit-details-marker{display:none}
.comparison-matrix>summary span{font-size:24px}
.comparison-matrix[open]>summary span{transform:rotate(45deg)}
.matrix-hint{font-size:16px;color:var(--muted);margin-block:16px}
.matrix-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:6px}
.comparison-table{width:100%;min-width:1160px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:16px;line-height:1.55}
.comparison-table caption{text-align:start;padding-bottom:18px;color:var(--muted)}
.comparison-table th,.comparison-table td{padding:20px 16px;text-align:start;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:break-word}
.comparison-table thead th{font-size:17px;line-height:1.3;color:var(--green);border-top:1px solid var(--line)}
.comparison-table th:first-child{width:14%;padding-inline-start:10px;position:sticky;inset-inline-start:0;background:var(--chalk);z-index:1;box-shadow:1px 0 var(--line)}
.comparison-table thead th:nth-child(2){background:var(--green);color:var(--chalk)}
.comparison-table td:nth-child(2){background:#e8ebe1;color:var(--green)}
.comparison-table th:not(:first-child),.comparison-table td{width:17.2%}
.comparison-table td:nth-child(n+3){color:var(--muted)}
.comparison-table tbody th{font-weight:600;color:var(--green)}
.comparison-label{display:none}
.comparison-footnote{margin-top:20px;color:var(--muted);max-width:850px;font-size:16px}
.comparison-footnote a{text-decoration:underline;text-underline-offset:4px}
.competitor-fit{padding-block:55px;border-top:1px solid var(--line)}
.competitor-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:0 28px}
.competitor-cards article{border-top:3px solid var(--orange);padding:18px 0 28px}
.competitor-cards .eyebrow{font-size:16px;margin-bottom:13px}
.competitor-cards h3{font-family:Archivo,Arial,sans-serif;font-size:21px;line-height:1.35;font-weight:600;color:var(--green);max-width:490px}
.competitor-cards article>p:not(.eyebrow){color:var(--muted);margin-top:12px;max-width:500px}
.competitor-cards a{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:12px;color:var(--green);font-size:16px;text-decoration:underline;text-underline-offset:4px}
.competitor-cards a:hover{color:#a43f0a}
.comparison-choice{display:grid;grid-template-columns:1fr .9fr;gap:85px;padding-block:45px;border-block:1px solid var(--line);align-items:center}
.comparison-choice>div>p:not(.eyebrow){margin-top:20px;color:var(--muted);max-width:540px}
.comparison-choice .text-link{margin-top:20px}
.founder-aside{border-inline-start:2px solid var(--orange);padding:8px 0 8px 30px}
.founder-aside>p:not(.eyebrow):not(.founder-aside-signoff){font-size:20px;color:var(--green);line-height:1.65}
.founder-aside-signoff{margin-top:18px;font-weight:600;color:var(--green)}
.founder-aside-signoff span{font-weight:400;color:var(--muted)}
.compare-faq{padding-block:50px}
.comparison-sources{border-top:1px solid var(--line);padding-block:25px 30px}
.compare-page .comparison-sources h2{font-size:18px;letter-spacing:0;line-height:1.4;margin-bottom:12px}
.comparison-sources p{font-size:16px;max-width:960px;color:var(--muted)}
.comparison-sources p+p{margin-top:10px}
.comparison-sources a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px){.home-page .product-section,.compare-teaser,.founder-layout,.comparison-heading,.coaching-week-grid,.comparison-choice{gap:40px}.competitor-cards{gap:0 24px}}
@media(max-width:900px){.home-page .product-section{padding-block:30px 45px;gap:30px}.compare-teaser,.founder-layout,.comparison-heading,.coaching-week-grid,.comparison-choice{grid-template-columns:1fr;gap:24px}.compare-teaser{padding-block:35px}.founder-section{padding-block:42px}.founder-heading>p:last-child{margin-top:16px}.founder-letter>p{font-size:18px}.founder-signoff{margin-top:22px}.home-page .release-section{padding-block:35px}.home-page .faq-section{padding-block:40px}.home-page .download-section{padding-block:35px}.compare-hero{padding-block:34px}.compare-hero h1{font-size:clamp(44px,7.5vw,66px);letter-spacing:-.7px}.compare-lede{font-size:18px;margin-top:20px}.compare-actions{gap:10px 24px;margin-top:20px}.compare-availability{margin-top:16px}.coaching-week{padding-block:35px}.coaching-week-grid{gap:26px}.week-steps{margin-top:24px}.example-session{padding:24px;max-width:580px;width:100%}.example-session-day{font-size:38px}.comparison-section{padding-block:35px}.comparison-heading{gap:16px;margin-bottom:22px}.comparison-choice{padding-block:35px;gap:30px}.founder-aside{padding-inline-start:22px}.founder-aside>p:not(.eyebrow):not(.founder-aside-signoff){font-size:18px}.compare-faq{padding-block:35px}.comparison-sources{padding-block:24px}.competitor-fit{padding-block:35px}.competitor-cards{grid-template-columns:1fr;gap:0}}
@media(max-width:600px){.compare-teaser .text-link{gap:10px}.competitor-cards h3{font-size:20px}}
@media(max-width:900px){.header{position:relative;height:auto;min-height:118px;flex-wrap:wrap;padding-block:16px 6px;gap:12px}.header nav{width:100%;gap:24px;justify-content:flex-start}.header nav>a:not(.nav-cta):not(.pricing-nav){display:flex}.header .nav-cta{position:absolute;top:14px;inset-inline-end:0}.header .wordmark{min-height:44px}}
/* Public contact links use native email actions and remain available without scripts. */
.footer-contact{display:flex;flex-wrap:wrap;gap:16px 72px;border-top:1px solid var(--line);padding-block:26px}
.footer-contact>div{min-width:0}
.footer-contact span{display:block;color:var(--muted);font-size:16px;line-height:1.5}
.footer-contact a,.founder-email,.founder-signoff a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-contact a{color:var(--green)}
.footer-bottom{flex-wrap:wrap}

.footer-top .wordmark{min-height:44px}
.founder-email{color:var(--green)}
.founder-aside .founder-email{display:flex;width:fit-content}
.founder-signoff a{color:var(--chalk)}
.footer-contact a:hover,.founder-email:hover{color:#a43f0a}
.founder-signoff a:hover{color:#d1dba9}
/* Privacy policy and parents notice: long-form reading with a contents list. */
.legal-page h2{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:clamp(26px,2.6vw,32px);line-height:1.25;letter-spacing:-.6px;text-wrap:balance}
.legal-page h3{margin-top:24px}
.legal-page section[id]{scroll-margin-top:24px}
.legal-hero{padding-block:52px 40px;border-bottom:1px solid var(--line)}
.breadcrumb+.legal-hero{padding-top:26px}
.legal-hero h1{font-size:clamp(48px,6vw,84px);letter-spacing:-1px;max-width:1000px}
.legal-lede{font-size:19px;color:var(--muted);max-width:680px;margin-top:22px}
.legal-meta{margin-top:18px;font-size:16px;color:var(--muted)}
.legal-meta strong{color:var(--green);font-weight:600}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:70px;align-items:start;padding-block:44px 64px}
.legal-toc{display:block;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto;border-top:3px solid var(--orange);padding-top:14px}
.legal-toc>p{font-weight:600;color:var(--green)}
.legal-toc ol{list-style:none;margin:6px 0 0;padding:0;counter-reset:toc}
.legal-toc li{counter-increment:toc}
.legal-toc a{gap:12px;line-height:1.35;color:var(--muted)}
.legal-toc a:before{content:counter(toc,decimal-leading-zero);min-width:22px;font-family:var(--display);font-weight:700;color:var(--green)}
.legal-toc a:hover{color:var(--green)}
.legal-body{max-width:760px;min-width:0}
.legal-body>section{padding-block:32px;border-top:1px solid var(--line)}
.legal-body>section.legal-summary{border-top:0}
.legal-body p+p,.legal-body h2+p,.legal-body h2+ul,.legal-body h3+p,.legal-body h3+ul,.legal-body p+ul,.legal-body ul+p{margin-top:14px}
.legal-body h3+ul{margin-top:10px}
.legal-body ul{margin:0;padding-inline-start:22px}
.legal-body li{line-height:1.7}
.legal-body li+li{margin-top:6px}
.legal-body a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.legal-body a:hover{color:#a43f0a}
.legal-summary{background:#e8ebe1;border-inline-start:4px solid var(--green);border-radius:0 8px 8px 0;padding:24px 28px}
.legal-page .legal-summary h2{font-size:22px;letter-spacing:-.3px}
.legal-table-wrap{margin-top:18px;max-width:100%;overflow-x:auto}
.legal-table{width:100%;min-width:520px;border-collapse:collapse;font-size:16px;line-height:1.55}
.legal-table caption{text-align:start;color:var(--muted);padding-bottom:10px}
.legal-table th,.legal-table td{padding:12px 16px 12px 0;text-align:start;vertical-align:top;border-bottom:1px solid var(--line)}
.legal-table thead th{color:var(--green);border-bottom:2px solid var(--green)}
.legal-table tbody th{font-weight:600;color:var(--green);width:36%}
.legal-note{margin-top:18px;padding-inline-start:16px;border-inline-start:2px solid var(--orange);color:var(--muted)}
.data-lists{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}
.data-list{border:1px solid var(--line);border-radius:8px;padding:20px 22px;background:#faf8f3}
.legal-page .data-list h3{margin-top:0}
.legal-body .data-list ul{list-style:none;padding:0;margin-top:10px}
.data-list li{position:relative;padding:8px 0 8px 28px;border-top:1px solid var(--line)}
.legal-body .data-list li+li{margin-top:0}
.data-list li:before{position:absolute;inset-inline-start:2px;top:8px;font-weight:700}
.data-list-yes li:before{content:'✓';color:var(--green)}
.data-list-no li:before{content:'✕';color:#a43f0a}
.legal-template{margin-top:16px;padding:22px 24px;background:#faf8f3;border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:0 0 8px 8px}
.legal-template .template-optional{color:var(--muted);font-style:italic}
@media(max-width:900px){.legal-hero{padding-block:34px 28px}.legal-hero h1{font-size:clamp(44px,9vw,68px)}.legal-lede{font-size:18px}.legal-layout{grid-template-columns:1fr;gap:24px;padding-block:28px 44px}.legal-toc{position:static;max-height:none}.data-lists{grid-template-columns:1fr}}
@media(max-width:600px){.footer-contact{gap:16px 30px;padding-block:24px}.legal-summary,.legal-template{padding:20px}}
/* Guides and campaign pages share the calmer secondary type scale. */
.support-page h2,.campaign-page h2{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-1px;text-wrap:balance}
.support-hero{padding-block:58px 42px;border-bottom:1px solid var(--line)}
.support-hero h1{font-size:clamp(48px,6vw,82px);letter-spacing:-1px;max-width:1000px}
.support-hero>p:not(.eyebrow){font-size:19px;color:var(--muted);max-width:610px;margin-top:24px}
.support-jumps{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:24px}
.support-guide{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding-block:55px}
.support-note{max-width:350px;margin-top:22px;color:var(--muted)}
.guide-steps{list-style:none;padding:0;margin:0;counter-reset:guide}
.guide-steps li{position:relative;padding:22px 0 22px 44px;border-top:1px solid var(--line);counter-increment:guide}
.guide-steps li:before{content:'0' counter(guide);position:absolute;inset-inline-start:0;top:22px;font-family:var(--display);font-size:22px;color:var(--green)}
.guide-steps p{margin-top:8px;color:var(--muted)}
.guide-steps .guide-example{font-size:16px;padding-inline-start:14px;border-inline-start:2px solid var(--orange);margin-top:15px}
.support-faq{border-top:1px solid var(--line);padding-block:45px}
.support-contact-section{background:var(--green);color:var(--chalk);padding-block:55px}
.support-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}
.support-contact-section h2,.support-contact-section h3,.support-contact-section .eyebrow,.support-contact-section a{color:var(--chalk)}
.support-contact-section p:not(.eyebrow){color:#d9dfd4;margin-top:16px;max-width:490px}
.support-contact-options article+article{margin-top:28px;padding-top:25px;border-top:1px solid #54705b}
.support-contact-options .text-link{margin-top:12px}
.contact-address{display:block;color:#d9dfd4;line-height:1.5;font-size:16px;margin-top:5px}
.support-page footer{padding-top:28px}
.campaign-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:94px;border-bottom:1px solid var(--line)}
.campaign-preview{display:flex;gap:16px;align-items:baseline;padding-block:18px;color:var(--muted);font-size:16px;border-bottom:1px solid var(--line)}
.campaign-preview>span{font-weight:600;color:var(--green);flex-shrink:0}
.campaign-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;padding-block:52px 62px}
.campaign-promise h1{font-size:clamp(56px,6.4vw,92px);letter-spacing:-1.4px;line-height:1.03}
.campaign-promise h1 span{display:block}
.campaign-promise>p:not(.eyebrow){font-size:19px;color:var(--muted);margin-top:25px;max-width:480px}
.campaign-promise>.nav-cta{margin-top:25px}
.campaign-promise>.campaign-caption{font-size:16px;margin-top:22px}
.campaign-session{box-shadow:0 16px 50px #17402a0d;border-inline:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px}
.campaign-session .example-session-day{font-size:42px}
.campaign-workflow{padding-block:55px;background:var(--green);color:var(--chalk)}
.campaign-workflow .eyebrow,.campaign-workflow h2,.campaign-workflow h3{color:var(--chalk)}
.campaign-section-heading>p:not(.eyebrow){margin-top:18px;color:#d9dfd4;max-width:520px;font-size:18px}
.campaign-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;list-style:none;padding:0;margin:35px 0 0;counter-reset:campaign}
.campaign-steps li{border-top:1px solid #54705b;padding-top:18px;counter-increment:campaign}
.campaign-steps li:before{content:'0' counter(campaign);display:block;font-family:var(--display);font-size:22px;color:#d1dba9;margin-bottom:15px}
.campaign-steps p{margin-top:12px;color:#d9dfd4}
.campaign-purpose{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;padding-block:55px}
.campaign-purpose>div>p:not(.eyebrow){margin-top:20px;color:var(--muted);max-width:480px}
.campaign-plans{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;padding-block:45px;border-block:1px solid var(--line)}
.campaign-plans>div>p:not(.eyebrow){color:var(--muted);max-width:440px;margin-top:20px}
.campaign-plans .text-link{margin-top:18px}
.campaign-outro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:45px}
.campaign-outro p{color:var(--muted);margin-top:12px}
@media(max-width:1050px){.support-guide,.support-contact-grid,.campaign-hero,.campaign-purpose,.campaign-plans{gap:40px}.campaign-steps{gap:28px}}
@media(max-width:900px){.support-hero{padding-block:35px}.support-hero h1{font-size:clamp(46px,7.5vw,68px)}.support-guide,.support-contact-grid,.campaign-hero,.campaign-purpose,.campaign-plans{grid-template-columns:1fr;gap:30px}.support-guide{padding-block:35px}.support-note{max-width:550px}.support-jumps{gap:10px 22px}.support-faq{padding-block:35px}.support-contact-section{padding-block:35px}.campaign-hero{padding-block:35px 40px}.campaign-promise h1{font-size:clamp(55px,9vw,80px)}.campaign-preview{display:block;padding-block:14px}.campaign-preview p{margin-top:5px}.campaign-session{max-width:580px;width:100%;padding:26px}.campaign-workflow{padding-block:38px}.campaign-steps{grid-template-columns:1fr;gap:22px;margin-top:26px}.campaign-steps li{padding-top:16px}.campaign-steps li:before{margin-bottom:10px}.campaign-purpose,.campaign-plans{padding-block:35px}.campaign-outro{align-items:flex-start;flex-direction:column;padding-block:35px}}
@media(max-width:600px){.campaign-header{flex-wrap:wrap;gap:8px;padding-block:14px;min-height:0}.campaign-header nav{width:100%;gap:20px;justify-content:space-between}.campaign-header nav>a{display:flex!important}.campaign-header .nav-cta{font-size:16px;padding:11px 12px;gap:8px}.campaign-session .example-session-day{font-size:36px}.guide-steps li{padding-inline-start:36px}}
/* Pricing: two plan cards, the full terms line, what is included, the trial timeline. */
.pricing-page h2{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-1px;text-wrap:balance}
.price-hero{padding-block:64px 40px;max-width:920px;text-align:center}
.price-hero h1{font-size:clamp(52px,6.6vw,92px);letter-spacing:-1.2px}
.price-lede{font-size:19px;color:var(--muted);max-width:640px;margin:22px auto 0}
.price-plans{padding-block:8px 56px}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:920px;margin-inline:auto;align-items:stretch}
.price-card{display:flex;flex-direction:column;padding:34px 34px 30px;border:1px solid var(--line);border-radius:14px;background:#faf8f3}
.price-card-featured{background:var(--green);border-color:var(--green);color:var(--chalk);box-shadow:0 24px 60px #17402a2e}
.price-tag{align-self:flex-start;margin-bottom:18px;padding:4px 12px;border-radius:999px;background:var(--chalk);color:var(--green);font-size:16px;font-weight:600;letter-spacing:1px}
.price-card-name{font-family:Archivo,Arial,sans-serif;font-size:16px;font-weight:600;line-height:1.7;letter-spacing:1.5px;text-transform:uppercase;color:var(--green)}
.validation-badge{display:inline-flex;align-items:center;min-height:44px;margin-block:0 20px}
.price-card-featured .price-card-name{color:var(--chalk)}
.price-amount{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-top:10px}
.price-figure{font-family:var(--display);font-weight:800;font-size:clamp(64px,7vw,88px);line-height:1;letter-spacing:-1px;color:var(--green)}
.price-card-featured .price-figure{color:var(--chalk)}
.price-unit{font-size:18px;color:var(--muted)}
.price-sub{margin-top:10px;font-weight:600;color:var(--green)}
.price-card-featured .price-unit,.price-card-featured .price-sub{color:#d9dfd4}
.price-points{list-style:none;padding:0;margin:24px 0 28px;border-top:1px solid var(--line)}
.price-points li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--line);line-height:1.5}
.price-points li:before{content:'✓';position:absolute;inset-inline-start:2px;top:12px;font-weight:700;color:var(--green)}
.price-card-featured .price-points,.price-card-featured .price-points li{border-color:#54705b}
.price-card-featured .price-points li:before{color:#d1dba9}
.price-cta{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:52px;padding:14px 20px;border-radius:6px;background:var(--green);color:var(--chalk);font-weight:600;font-size:17px}
.price-cta:hover{background:#0f2e1d;color:#fff}
.price-card-featured .price-cta{background:var(--chalk);color:var(--green)}
.price-card-featured .price-cta:hover{background:#fff;color:var(--green)}
.price-terms{max-width:920px;margin:26px auto 0;color:var(--muted);font-size:16px;text-align:center;line-height:1.7}
.price-terms a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.price-included{padding-block:56px;border-top:1px solid var(--line)}
.price-section-heading{max-width:640px}
.price-section-heading>p:not(.eyebrow){margin-top:16px;color:var(--muted);font-size:18px}
.included-grid{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}
.included-grid li{padding:22px 0;border-top:3px solid var(--orange)}
.included-grid p{color:var(--muted);margin-top:8px}
.trial-section{background:var(--green);color:var(--chalk);padding-block:56px}
.trial-section .eyebrow,.trial-section h2,.trial-section h3{color:var(--chalk)}
.trial-steps{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.trial-steps li{border-top:1px solid #54705b;padding-top:18px}
.trial-day{font-family:var(--display);font-weight:800;font-size:28px;line-height:1.1;color:#d1dba9;letter-spacing:.5px}
.trial-steps h3{margin-top:8px}
.trial-steps p:not(.trial-day){color:#d9dfd4;margin-top:8px}
.founding-note{margin-top:56px;padding:32px 36px;border:1px solid var(--line);border-inline-start:4px solid var(--orange);border-radius:0 12px 12px 0;background:#faf8f3}
.founding-note>p:not(.eyebrow){color:var(--muted);margin-top:12px;max-width:720px}
@media(max-width:1050px){.included-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.price-hero{padding-block:36px 28px}.price-hero h1{font-size:clamp(46px,10vw,72px)}.price-lede{font-size:18px}.price-grid{grid-template-columns:1fr;max-width:560px}.price-card{padding:28px 24px 24px}.price-included,.trial-section{padding-block:38px}.trial-steps{grid-template-columns:1fr;gap:22px}.founding-note{margin-top:38px;padding:24px 22px}}
@media(max-width:600px){.included-grid{grid-template-columns:1fr}}
/* AI session planner: what the coach sets and what the generator returns. */
.generator-spec{padding-block:55px}
.generator-spec-heading>p:not(.eyebrow){margin-top:18px;color:var(--muted);max-width:580px;font-size:18px}
.generator-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 32px;margin-top:30px}
.generator-spec-grid article{border-top:3px solid var(--orange);padding-top:16px}
.generator-spec-grid p{color:var(--muted);margin-top:8px}
.generator-spec-note{margin-top:30px;color:var(--muted)}
.generator-spec-note a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px){.generator-spec-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.generator-spec{padding-block:38px}.generator-spec-grid{grid-template-columns:1fr}}
/* Drills directory, drill pages and the homepage drill teaser. */
.drills-page h2,.drills-teaser h2{font-family:Archivo,Arial,sans-serif;font-weight:600;font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-1px;text-wrap:balance}
.drills-teaser{padding-block:50px;border-top:1px solid var(--line)}
.drills-teaser-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:30px}
.drills-teaser-copy p{font-size:18px;color:var(--muted);max-width:490px}
.drills-teaser-copy .text-link{margin-top:14px}
.drill-cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.drill-card{position:relative;display:flex;flex-direction:column;height:100%;padding:22px 24px 24px;background:#faf8f3;border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:0 0 8px 8px;transition:background .15s,border-color .15s}
.drill-card:hover{background:#fff;border-color:#b9c3b1;border-top-color:var(--orange)}
.drill-card-meta{font-size:16px;color:var(--muted);line-height:1.5}
.drill-card h3{font-family:var(--display);font-size:30px;font-weight:700;line-height:1.1;margin-top:8px}
.drill-card h3 a::after{content:'';position:absolute;inset:0}
.drill-card-teaser{color:var(--muted);margin-top:10px}
.drill-card-more{margin-top:auto;padding-top:14px;color:var(--green);font-weight:600;font-size:16px}
.drills-hero{padding-block:58px 44px}
.drills-hero h1{font-size:clamp(48px,6vw,84px);letter-spacing:-1px;max-width:1000px}
.drills-lede{font-size:19px;color:var(--muted);max-width:640px;margin-top:24px}
.drills-scale-note{max-width:640px;margin-top:16px;padding-inline-start:16px;border-inline-start:2px solid var(--orange);color:var(--muted);font-size:16px;line-height:1.7}
.drills-scale-note strong{color:var(--green)}
.drill-jumps{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.drill-jumps a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:22px;color:var(--green);font-size:16px}
.drill-jumps a:hover{border-color:var(--green);background:#e8ebe1}
.drill-category{display:grid;grid-template-columns:.75fr 2fr;gap:60px;padding-block:44px;border-top:1px solid var(--line)}
.drill-category-heading p{color:var(--muted);margin-top:12px;max-width:340px}
.drill-category .drill-cards,.drill-related .drill-cards{grid-template-columns:repeat(2,1fr)}
.sample-sessions{background:var(--green);color:var(--chalk);padding-block:55px;margin-top:20px}
.sample-sessions-heading .eyebrow,.sample-sessions-heading h2{color:var(--chalk)}
.sample-sessions-heading p:not(.eyebrow){color:#d9dfd4;margin-top:16px;max-width:520px}
.session-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}
.session-plan{background:var(--chalk);color:var(--green);padding:24px;border-top:3px solid var(--orange)}
.session-plan-kicker{font-size:16px;letter-spacing:.6px;color:var(--muted)}
.session-plan h3{font-family:var(--display);font-size:32px;font-weight:700;line-height:1.1;margin-top:10px}
.session-plan>p:not(.session-plan-kicker){color:var(--muted);margin-top:6px}
.session-plan .example-drills li{padding-block:4px}
.session-plan .example-drills a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.session-plan .example-drills a:hover{color:#a43f0a}
.drills-plan{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-block:50px;border-bottom:1px solid var(--line)}
.drills-plan>div>p:not(.eyebrow){color:var(--muted);margin-top:16px;max-width:520px}
.drills-plan-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex-shrink:0}
.drills-note{padding-block:28px 34px}
.drills-page .drills-note h2{font-size:18px;letter-spacing:0;line-height:1.4;margin-bottom:8px}
.drills-note p{color:var(--muted);max-width:900px;font-size:16px}
.breadcrumb{padding-top:18px}
.breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;font-size:16px;color:var(--muted)}
.breadcrumb li{display:flex;align-items:center}
.breadcrumb li+li:before{content:'/';margin-inline:12px;color:#8a877c}
.breadcrumb a{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.drill-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;padding-block:22px 44px;border-bottom:1px solid var(--line)}
.drill-hero .eyebrow{margin-bottom:16px}
.drill-hero h1{font-size:clamp(52px,6.4vw,92px);letter-spacing:-1.2px}
.drill-lede{font-size:19px;color:var(--muted);margin-top:22px;max-width:600px}
.drill-facts{margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:24px;border-top:1px solid var(--line)}
.drill-facts>div{padding:14px 0;border-bottom:1px solid var(--line);min-width:0}
.drill-facts>div:last-child{grid-column:1/-1}
.drill-facts dt{font-size:16px;color:var(--muted)}
.drill-facts dd{margin:4px 0 0;color:var(--green);font-weight:600;line-height:1.5}
.drill-body{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;padding-block:45px 55px}
.drill-main>section{margin-top:38px}
.drills-page .drill-main h2{font-size:clamp(26px,2.4vw,32px)}
.drill-diagram{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px 24px 18px}
.drill-diagram>svg{display:block;width:100%;height:auto;max-width:620px;max-height:560px;margin-inline:auto}
.drill-diagram figcaption{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.diagram-scale{font-size:16px;color:var(--muted);line-height:1.5}
.diagram-keys{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:8px;font-size:16px;color:var(--muted)}
.diagram-key{display:inline-flex;align-items:center;gap:8px}
.diagram-key svg{width:26px;height:14px}
.drill-card-figure{aspect-ratio:3/2;margin-bottom:16px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px}
.drill-card-figure svg{display:block;width:100%;height:100%}
.drill-list,.drill-steps{list-style:none;padding:0;margin:14px 0 0}
.drill-list li{position:relative;padding:12px 0 12px 26px;border-top:1px solid var(--line);line-height:1.6}
.drill-list li:before{content:'';position:absolute;inset-inline-start:2px;top:24px;width:10px;height:3px;background:var(--orange)}
.drill-steps{counter-reset:step}
.drill-steps li{position:relative;padding:13px 0 13px 40px;border-top:1px solid var(--line);counter-increment:step;line-height:1.6}
.drill-steps li:before{content:'0' counter(step);position:absolute;inset-inline-start:0;top:13px;font-family:var(--display);font-size:20px;color:var(--green)}
.drill-side{display:flex;flex-direction:column;gap:22px;align-self:start;position:sticky;top:24px}
.drill-adapt{border:1px solid var(--line);border-radius:8px;padding:22px 24px}
.drills-page .drill-adapt h2{font-size:22px;letter-spacing:-.3px}
.drill-adapt .drill-list{margin-top:10px}
.drill-adapt .drill-list li:first-child{border-top:0}
.drill-plan-card{background:var(--green);color:var(--chalk);border-radius:8px;padding:24px}
.drill-plan-card .eyebrow{color:#d1dba9;margin-bottom:10px}
.drill-plan-card p:not(.eyebrow){color:#d9dfd4}
.drill-plan-card .text-link{color:var(--chalk);margin-top:10px}
.drill-plan-card .text-link:hover{color:#d1dba9}
.drill-related{padding-block:45px 55px;border-top:1px solid var(--line)}
.drill-related h2{margin-bottom:24px}
.drill-related>.text-link{margin-top:20px}
@media(max-width:1050px){.drills-teaser-heading,.drill-category,.drill-hero,.drill-body{gap:40px}.drill-cards,.session-plans{gap:18px}}
@media(max-width:900px){.drills-teaser{padding-block:35px}.drills-teaser-heading{grid-template-columns:1fr;gap:16px;margin-bottom:22px}.drills-teaser .drill-cards,.session-plans{grid-template-columns:1fr}.drills-hero{padding-block:35px 30px}.drills-hero h1{font-size:clamp(44px,8vw,68px)}.drills-lede{font-size:18px}.drill-category{grid-template-columns:1fr;gap:18px;padding-block:32px}.sample-sessions{padding-block:38px}.drills-plan{flex-direction:column;align-items:flex-start;gap:24px;padding-block:35px}.drill-hero{grid-template-columns:1fr;gap:26px;padding-block:16px 32px}.drill-hero h1{font-size:clamp(46px,9vw,72px)}.drill-lede{font-size:18px}.drill-body{grid-template-columns:1fr;gap:32px;padding-block:30px 40px}.drill-side{position:static}.drill-related{padding-block:35px 40px}}
@media(max-width:600px){.drill-category .drill-cards,.drill-related .drill-cards{grid-template-columns:1fr}.drill-diagram{padding:12px}.drill-card{padding:20px}.drill-card h3{font-size:27px}}
@media(max-width:400px){.header nav{gap:0;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* ─── Languages ─────────────────────────────────────────────────────────────
   The header menu is a native <details>, so it opens without JavaScript. Names are endonyms, never flags.
   Non-Latin languages fall back to the reader's system fonts: Archivo and Barlow Condensed stay first so
   FCommit's own Latin letters keep the brand, and Arabic and Hebrew need their tracking left alone. */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.lang-menu{position:relative}
.lang-menu summary{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding-inline:11px;border:1px solid var(--line);border-radius:5px;font-size:16px;color:var(--green);list-style:none;cursor:pointer}
.lang-menu summary::-webkit-details-marker{display:none}
.lang-menu summary:hover{border-color:var(--green);color:#a43f0a}
.lang-menu summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.lang-code{font-weight:600;letter-spacing:.5px}
.lang-panel{position:absolute;z-index:30;top:calc(100% + 10px);inset-inline-end:0;width:min(430px,calc(100vw - 32px));max-height:min(72vh,580px);overflow:auto;padding:20px;background:var(--chalk);border:1px solid var(--line);border-radius:10px;box-shadow:0 24px 60px rgba(23,64,42,.18)}
.lang-menu:not([open]) .lang-panel{display:none}
.lang-panel-title{font-family:var(--display);font-weight:800;font-size:23px;line-height:1.1;letter-spacing:.5px;color:var(--green);margin-bottom:12px}
.lang-panel ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}
.lang-panel a{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:44px;padding:8px 10px;border-radius:6px;border-inline-start:3px solid transparent}
.lang-panel a:hover{background:#e8ebe1}
.lang-panel a[aria-current]{background:#e8ebe1;border-inline-start-color:var(--orange)}
.lang-name{font-size:17px;font-weight:600;color:var(--green)}
.lang-region{font-size:16px;line-height:1.35;color:var(--muted)}
.lang-note{background:#e8ebe1;border-bottom:1px solid var(--line);color:var(--green);font-size:16px;padding-block:11px}
.lang-note .wrap{display:block}
.lang-suggest{position:fixed;z-index:40;bottom:20px;inset-inline:auto 20px;display:flex;align-items:center;gap:10px;max-width:min(380px,calc(100vw - 32px));padding:6px 8px 6px 16px;background:var(--green);color:var(--chalk);border-radius:8px;box-shadow:0 18px 40px rgba(23,64,42,.28)}
.lang-suggest a{display:flex;align-items:center;min-height:44px;font-size:16px;text-decoration:underline;text-underline-offset:4px}
.lang-suggest-close{min-width:44px;min-height:44px;border:0;border-radius:6px;background:none;color:inherit;font-size:24px;line-height:1}
.lang-suggest-close:hover{background:#0f2e1d}
@media(max-width:900px){.lang-menu{position:static}.lang-panel{top:calc(100% + 1px);inset-inline:0;width:auto;border-radius:0 0 10px 10px}}
@media(max-width:600px){.lang-suggest{inset-inline:16px;bottom:16px;padding-inline-start:14px}.lang-panel{max-width:100vw;overflow-x:hidden}.lang-panel ul{grid-template-columns:1fr;gap:0}.lang-name,.lang-region{overflow-wrap:anywhere}}
/* Longer words (Nederlands, Dansk) plus the code would push the nav row past 320px; the globe alone stays a 44px target, and the menu keeps its screen-reader name. */
@media(max-width:400px){.lang-menu summary{padding-inline:8px;gap:5px}.lang-code{display:none}}
:lang(ja),:lang(ko),:lang(zh-Hans){font-family:Archivo,'Hiragino Sans','Noto Sans JP','Yu Gothic',Meiryo,sans-serif}
:lang(ja),:lang(ko),:lang(zh-Hans),:lang(ar),:lang(he){letter-spacing:normal}
:lang(ja) *,:lang(ko) *,:lang(zh-Hans) *,:lang(ar) *,:lang(he) *{letter-spacing:normal}
:lang(ja){--display:'Barlow Condensed','Hiragino Sans','Noto Sans JP','Yu Gothic',sans-serif}
:lang(ko){font-family:Archivo,'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;--display:'Barlow Condensed','Apple SD Gothic Neo','Noto Sans KR',sans-serif;word-break:keep-all}
:lang(zh-Hans){font-family:Archivo,'PingFang SC','Noto Sans SC','Microsoft YaHei','Hiragino Sans GB',sans-serif;--display:'Barlow Condensed','PingFang SC','Noto Sans SC','Microsoft YaHei',sans-serif}
:lang(ar){font-family:Archivo,'Noto Sans Arabic','Geeza Pro','Segoe UI',Tahoma,sans-serif;--display:'Noto Kufi Arabic','Noto Sans Arabic','Geeza Pro',sans-serif}
:lang(he){font-family:Archivo,'Noto Sans Hebrew','Arial Hebrew','Segoe UI',Arial,sans-serif;--display:'Noto Sans Hebrew','Arial Hebrew',Arial,sans-serif}
:lang(ja) h1,:lang(ko) h1,:lang(zh-Hans) h1,:lang(ar) h1,:lang(he) h1{font-size:clamp(38px,5.2vw,74px);line-height:1.22}
:lang(ja) h2,:lang(ko) h2,:lang(zh-Hans) h2,:lang(ar) h2,:lang(he) h2{font-size:clamp(30px,3.6vw,50px);line-height:1.3}
:lang(ja) p,:lang(ko) p,:lang(zh-Hans) p,:lang(ar) p,:lang(he) p{line-height:1.85}
/* Compound languages put single words (FUSSBALLTRAINING, VOETBALTRAINING) in the display headings that are
   wider than a 320px screen, and Korean's keep-all refuses to break inside a word. Break only when needed, with
   `anywhere` rather than `break-word`: only `anywhere` also shrinks the min-content width, which is what lets a
   grid column narrow to the screen instead of forcing the page wider. */
h1,h2,h3,.eyebrow,.price-figure,.lang-name{overflow-wrap:anywhere}
.hero-heading>div,.hero-intro,.compare-teaser>div,.compare-teaser-copy,.product-copy,.drills-teaser-heading>div{min-width:0}
/* Korean keeps words whole (keep-all), so a run with no spaces — "ChatGPT·Claude·Coachbetter·FootballGPT와" —
   has no break opportunity at all. Allow an emergency break in running text; the keep-all default still applies. */
:lang(ko) p,:lang(ko) li,:lang(ko) dd,:lang(ko) summary,:lang(ko) figcaption{overflow-wrap:anywhere}
/* Cyrillic, Thai, the Urdu Nastaliq script and Hausa's hooked letters (ɓ ɗ ƙ ƴ) are outside the self-hosted
   subsets, so those languages name their own fallbacks. Archivo stays first to keep FCommit's Latin letters. */
:lang(uk){font-family:Archivo,'Noto Sans','Segoe UI',Roboto,Arial,sans-serif;--display:'Barlow Condensed','Noto Sans','Segoe UI',Roboto,sans-serif}
:lang(ha){font-family:Archivo,'Noto Sans','DejaVu Sans','Segoe UI',Arial,sans-serif}
:lang(th){font-family:Archivo,'Noto Sans Thai','Leelawadee UI',Thonburi,Tahoma,sans-serif;--display:'Barlow Condensed','Noto Sans Thai','Leelawadee UI',Tahoma,sans-serif}
:lang(ur){font-family:Archivo,'Noto Nastaliq Urdu','Noto Sans Arabic','Jameel Noori Nastaleeq',Tahoma,sans-serif;--display:'Noto Nastaliq Urdu','Noto Sans Arabic',Tahoma,sans-serif}
:lang(th),:lang(ur),:lang(th) *,:lang(ur) *{letter-spacing:normal}
/* Thai writes without spaces between words, so running text needs an emergency break like Korean's. */
:lang(th) p,:lang(th) li,:lang(th) dd,:lang(th) summary,:lang(th) figcaption{overflow-wrap:anywhere}
:lang(th) p,:lang(ur) p{line-height:1.9}
:lang(th) h1,:lang(th) h2,:lang(ur) h1,:lang(ur) h2{line-height:1.5;font-size:clamp(34px,4.8vw,68px)}
:lang(de),:lang(nl),:lang(da),:lang(sv){hyphens:auto}
[dir=rtl] .founding-note{border-radius:12px 0 0 12px}
[dir=rtl] .legal-summary{border-radius:8px 0 0 8px}
/* Long nav labels (Ukrainian, Turkish) must wrap rather than push the language menu off a 320px screen. */
@media(max-width:900px){.header nav{flex-wrap:wrap;column-gap:24px;row-gap:6px}}
@media(max-width:400px){.header nav{column-gap:14px}}
/* Touch targets: the header wordmark and nav links meet 44px at every width, not only below 900px. */
.header .wordmark{min-height:44px}
.header nav>a:not(.nav-cta){min-width:44px;justify-content:center}
/* iPad portrait fits both plan cards side by side; only phones need the single column stack. */
@media(min-width:701px) and (max-width:900px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px}}
/* Footer nav links and the collapsed language button are standalone controls, so they get 44px too. */
.footer-bottom a{min-width:44px;justify-content:center}
.lang-menu summary{min-width:44px;justify-content:center}
/* Footer: a quiet brand band, then one row of labelled columns, then a legal strip.
   The brand band deliberately carries no tracked-caps label, so it reads as a different zone from
   the columns below; the social block sits in the row as a fourth column, aligned with the rest.
   The company identity lives on /terms/#contact (noindex), not on every indexed page. */
.footer-top{border-top:1px solid var(--line);display:block;padding-block:46px 34px}
.footer-top p{max-width:36ch}
.footer-nav{display:grid;grid-template-columns:1fr 1fr 1fr 1.15fr;gap:34px 40px;padding-block:34px 46px;border-top:1px solid var(--line)}
.footer-col{display:flex;flex-direction:column;align-items:flex-start}
/* One label treatment for all four columns: deliberate structure instead of a near-miss echo. */
.footer-col h2,.social-area>span{display:block;font-family:var(--display);font-weight:600;font-size:17px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.footer-col>a{display:flex;align-items:center;min-height:44px;font-size:17px;color:var(--text)}
.footer-col>a:hover{color:#a43f0a}
.footer-col>a[aria-current=page]{color:var(--green);font-weight:600}
/* The contact block keeps its markup so its translations stay valid; only the layout changes. */
.footer-col .footer-contact{display:grid;gap:12px;border:0;padding:0;margin-top:12px}
.footer-col .footer-contact a{min-height:34px}
/* .social-handles was styled only by `.footer-top p`, which no longer reaches it after the move. */
.social-area .social-links{margin-top:2px}
.social-handles{font-size:16px;line-height:1.5;color:var(--muted);margin-top:14px}
.footer-bottom{border-top:1px solid var(--line);padding-block:18px 30px;gap:12px 28px}
/* The old bottom strip held a second tagline; with one span left it must not stretch full width. */
.footer-bottom>span:last-of-type{width:auto;order:0}
@media(max-width:900px){.footer-top{padding-block:34px 26px}.footer-nav{grid-template-columns:1fr 1fr;gap:28px 30px;padding-block:26px 34px}}
/* Two columns are kept down to small phones: a single column stacks four tracked-caps labels into one
   long run, which is the repetition this footer is meant to avoid. Emails may wrap, never overflow. */
@media(max-width:560px){.footer-nav{gap:24px 20px}.social-handles{margin-top:10px}}
@media(max-width:359px){.footer-nav{grid-template-columns:1fr;gap:22px}}
/* Password reset (/reset-password/), the one form. 16px floor, 44px targets, AA error text (#a43f0a). */
.reset{max-width:560px;padding-block:8px 96px}.reset-note{font-size:18px}.reset-form{display:grid;gap:6px}.reset-form label{font-weight:600;color:var(--green);margin-top:18px}.reset-form input[type=password],.reset-form input[type=text]{font:inherit;font-size:16px;min-height:48px;padding:10px 14px;border:1px solid var(--muted);border-radius:5px;background:white;color:var(--text)}.reset-form input:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.reset-form input[aria-invalid=true]{border-color:#a43f0a}.reset-hint{font-size:16px;color:var(--muted)}.reset-error{font-size:16px;color:#a43f0a}.reset-error:empty{display:none}.reset-form .reset-show{display:flex;align-items:center;gap:12px;min-height:44px;font-weight:500;color:var(--text);margin-top:8px}.reset-show input{width:24px;height:24px;margin:0;accent-color:var(--green)}.reset-form .nav-cta{margin-top:24px;justify-self:start}.reset-state{display:grid;gap:18px;justify-items:start}.reset-state h2{font-size:clamp(34px,4vw,48px)}
