/* Loaded last. Desktop styles remain untouched outside these responsive ranges. */
.gritt-menu-toggle,.profile-mobile-toggle{display:none}
@media(max-width:1100px),(max-width:1366px) and (pointer:coarse){
 .gritt-nav{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:16px 5%;min-height:82px}
 .gritt-nav .gritt-time{display:none}
 .gritt-nav .gritt-wordmark{font-size:27px;grid-column:1;grid-row:1}
 .gritt-nav .gritt-nav-cta{grid-column:2;grid-row:1;min-width:0;min-height:48px;padding:12px 16px;gap:15px;font-size:14px}
 .gritt-menu-toggle{display:block;grid-column:3;grid-row:1;min-width:68px;min-height:48px;padding:10px;background:#0b151d;color:#fff;border:1px solid #51ade260;font:700 15px Inter,Arial,sans-serif;cursor:pointer}
 .gritt-nav nav{display:none;position:absolute;top:100%;left:5%;right:5%;max-height:calc(100svh - 110px);overflow:auto;overscroll-behavior:contain;background:#080e13;border:1px solid #51ade250;box-shadow:0 24px 48px #0009;padding:14px 22px;gap:0;z-index:70}
 .gritt-nav.menu-open nav{display:flex;flex-direction:column;align-items:stretch;animation:gritt-menu-reveal .2s ease-out both}
 .gritt-nav nav>a,.gritt-nav .gritt-program-menu summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 0;font-size:16px;line-height:1.4;letter-spacing:-.02em}
 .gritt-program-menu{width:100%}
 .gritt-nav .gritt-program-links{position:static;width:auto;max-width:none;padding:4px 0 12px 16px;border:0;border-left:2px solid #51ade2;box-shadow:none;gap:0;background:transparent}
 .gritt-nav .gritt-program-links a{min-height:46px;font-size:15px;padding:10px 0;display:flex;align-items:center}
 .gritt-nav :is(a,button,summary):focus-visible{outline:2px solid #8bd2ff;outline-offset:3px}
 .scroll-letter,.motion-line-inner,.roll-line{transform:none!important;opacity:1!important}
 .scroll-title,.motion-line{overflow:visible!important;clip-path:none!important}
 .read-word{opacity:1!important;filter:none!important}
 .kinetic-bridge{display:none}
 .section-label,.eyebrow,.p-label,.p-down,.p-kicker,.p-explore,.editorial-explore,.card-top{font-size:14px!important;line-height:1.5}
 .p-button{font-size:16px;min-height:48px}.p-down{min-height:44px;display:inline-flex;align-items:center}
 .pricing-page .full-plans .price>span:not(.amount),.pricing-page .plan-details p,.pricing-page .plan-details a,.pricing-page .foundation-inclusions,.pricing-page .foundation-price>span,.pricing-page .first-class-note,.pricing-page .team-banner .button{font-size:16px;line-height:1.5}
 .pricing-page .first-class-note>span{font-size:14px}
 .pricing-page .pricing-jumps{position:relative;top:auto;display:grid;grid-template-columns:1fr 1fr}
 .pricing-page .pricing-jumps a{font-size:15px;line-height:1.4;min-width:0;min-height:56px}
 .pricing-page :is(.pricing-note,.plan-note,.contract-note,.saving-note,.price-note,.price-card p,.price-card li,.price-card .button,.flex-card p,.flex-card li){font-size:16px;line-height:1.5}
 .pricing-page .section{padding-block:64px}.pricing-page .full-plans{scroll-margin-top:24px}
 .pricing-page .full-plans .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pricing-page .price-card{min-width:0}.pricing-page .price-card .button{min-height:52px}
 .home-rebuild .opening{min-height:620px;height:85svh;max-height:900px}
 .home-rebuild .people .profile{position:relative;top:auto;min-height:0;padding-block:48px 64px}
 .home-rebuild .profile-copy h2{margin-bottom:35px}
 .home-rebuild .profile-copy>p:last-child{margin-top:28px;line-height:1.45}
 .home-rebuild .roll-title{margin-block:60px}
 .home-rebuild .facts p,.home-rebuild .program-panel p,.home-rebuild .questions details>p{font-size:16px;line-height:1.5}
 .home-rebuild .home-footer a,.home-rebuild .underlink{font-size:16px;min-height:44px;padding-block:10px}
 .home-rebuild .coach-tile>div{flex-wrap:wrap;gap:8px}.home-rebuild .coach-tile>div span{font-size:14px}
 .p-intro,.p-process,.p-rates,.p-faq{padding-block:64px}.p-feature{padding-block:48px 64px}
 .page-close{padding-block:70px;min-height:0}.page-close>div{margin-top:32px}
 .editorial-intro{padding-block:64px;min-height:0}.coach-directory article{padding-block:64px}
 .contact-page .contact-heading{padding-top:32px;padding-bottom:24px}
 .contact-page .contact-heading h1{margin-bottom:18px}
 .contact-page .contact-tabs button{min-height:60px;padding-block:14px}
 .contact-page .contact-quick{padding-top:32px;padding-bottom:60px}
 .contact-page .journey{display:block}
 .contact-page .journey-world.has-profile{position:sticky;top:0;z-index:25;background:#09141d;max-height:65svh;overflow:auto;border-bottom:1px solid #51ade260;box-shadow:0 8px 25px #0006}
 .contact-page .journey-world>img{opacity:.15}
 .contact-page .has-profile .journey-world-copy{padding:12px 5% 0}
 .contact-page .gritt-profile{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:0 10px;align-items:center}
 .contact-page .profile-caption{grid-column:1;grid-row:1}
 .contact-page .profile-caption>span{font-size:12px;line-height:1.4;letter-spacing:.05em}
 .contact-page .profile-caption strong{font-size:22px;line-height:1.1;margin-top:6px}
 .contact-page .gritt-profile svg{grid-column:2;grid-row:1/3;width:150px;height:120px;max-height:none;margin:0}
 .contact-page .gritt-profile .profile-axis-labels{font-size:13px}
 .contact-page .gritt-profile .profile-insight,.contact-page .focus-scale,.contact-page .focus-edit{display:none}
 .contact-page .profile-mobile-toggle{position:relative;z-index:2;display:block;margin:0 5% 8px;padding:10px 0;min-height:44px;background:none;border:0;color:#8dd5ff;font:700 15px Inter,Arial,sans-serif;cursor:pointer}
 .contact-page .journey-world:after{pointer-events:none}
 .contact-page .profile-expanded .gritt-profile{display:block}
 .contact-page .profile-expanded .gritt-profile svg{width:100%;height:220px;max-width:400px;margin:auto}
 .contact-page .profile-expanded .profile-insight,.contact-page .profile-expanded .focus-scale,.contact-page .profile-expanded .focus-edit{display:block;font-size:15px;line-height:1.4}
 .contact-page .journey .join-workspace{padding:28px 6% 55px;scroll-margin-top:180px}
 .contact-page #brief-stage{scroll-margin-top:190px}
 .contact-page .journey .brief-progress-track{margin-bottom:24px}
 .contact-page .journey .brief-top{font-size:14px}
 .contact-page .journey .choice{min-height:60px;padding:15px;font-size:18px}
 .contact-page .journey #brief-stage h2{font-size:clamp(32px,5vw,48px)}
 .contact-page .journey .brief-field input,.contact-page .journey .brief-field textarea{font-size:18px}
 .motion-control{font-size:13px!important;min-height:44px;max-width:140px;bottom:12px;right:12px}
}
@keyframes gritt-menu-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:600px){
 .gritt-nav{padding:12px 5%;gap:8px;min-height:76px}
 .gritt-nav .gritt-wordmark{font-size:25px}
 .gritt-nav .gritt-nav-cta{font-size:12px;gap:8px;padding:10px;min-height:46px}
 .gritt-nav .gritt-nav-cta span{font-size:19px}.gritt-menu-toggle{min-width:58px;min-height:46px;font-size:14px}
 .home-rebuild .opening{height:78svh;min-height:560px;max-height:720px}
 .home-rebuild .opening h1{left:6%;font-size:16vw;bottom:112px}.home-rebuild .opening-note{font-size:22px;bottom:28px;line-height:1.15}
 .home-rebuild .story-layout{gap:25px}.home-rebuild .story-support{margin-top:28px}
 .home-rebuild .full-photo{height:420px}.home-rebuild .first-class{min-height:500px}
 .home-rebuild .first-class .roll-title{margin-block:80px 50px}
 .home-rebuild .program-panel{grid-template-columns:1fr;padding:16px;gap:22px}
 .home-rebuild .program-panel img,.home-rebuild .program-coach-photo{height:240px;min-height:0}
 .home-rebuild .program-panel>div{gap:18px}.home-rebuild .program-panel h3{font-size:32px}
 .home-rebuild .team-grid{grid-template-columns:1fr 1fr;gap:28px 16px}
 .home-rebuild .coach-tile h3{font-size:23px}.home-rebuild .coach-tile>div span{font-size:12px}
 .home-rebuild .pressure>div{padding-bottom:44px;flex-wrap:wrap}.home-rebuild .pressure>div p{font-size:16px}
 .home-rebuild .questions{margin-top:32px}.home-rebuild .quote-grid article{min-height:300px}
 .pricing-page .full-plans .pricing-grid{grid-template-columns:1fr}.pricing-page .price-card:last-child{grid-column:auto}
 .pricing-page .full-plans .price-card{padding:28px 22px}.pricing-page .price-card h3{font-size:30px}
 .pricing-page .price-card p,.pricing-page .price-card li{font-size:16px!important}
 .pricing-page .pricing-jumps{padding-inline:5%}.pricing-page .pricing-jumps a{font-size:14px;padding:12px 8px}
 .p-hero{min-height:600px;height:85svh;max-height:780px}.p-hero-copy{padding-top:135px}
 .p-process{grid-template-columns:minmax(0,1fr)}.p-process>*{min-width:0}.p-process h2{font-size:clamp(32px,9vw,44px)}
 .coach-directory h2{font-size:14vw}
 .p-triptych article:nth-child(n){padding-top:0}.p-triptych{gap:40px}.p-triptych figure{height:360px}
 .p-duo figure,.p-duo figure:nth-child(2){height:330px;margin-top:0}
 .interior-page .editorial-hero{min-height:560px;height:80svh}.interior-page .editorial-hero-copy{padding-top:125px}
 .contact-page .contact-heading h1{font-size:54px;line-height:.95}
 .contact-page .contact-heading>p:last-child{font-size:18px;line-height:1.45}
 .contact-page .contact-eyebrow{font-size:12px;margin-bottom:16px}
 .contact-page .contact-tabs{gap:12px}.contact-page .contact-tabs button{font-size:16px;line-height:1.3}
 .contact-page .contact-tabs button span{font-size:14px;margin-top:4px}
 .contact-page .contact-quick h2{font-size:30px}.contact-page .contact-form-panel>p{font-size:17px;margin-bottom:20px}
 .contact-page .gritt-profile{grid-template-columns:minmax(0,1fr) 130px}
 .contact-page .gritt-profile svg{width:130px;height:105px}
 .contact-page .profile-caption strong{font-size:20px}
 .contact-page .journey .choices{grid-template-columns:1fr}
 .contact-page .journey .brief-actions .button{width:100%;min-height:54px}
 .contact-page .journey .step-intro{font-size:18px;line-height:1.45}
}
@media(prefers-reduced-motion:reduce){.gritt-nav.menu-open nav{animation:none}}

/* Clearer navigation and an explicit invitation on every program card. */
.gritt-nav nav>a,.gritt-nav .gritt-program-menu>summary{font-size:16px!important;line-height:1.35;letter-spacing:-.025em}
.gritt-nav .gritt-program-links a{font-size:15px!important;line-height:1.4}
.gritt-nav .gritt-program-links{width:280px}
.home-rebuild .program-panel{height:auto;min-height:290px;background:#0a1116;border-color:#51ade280;cursor:pointer;transition:background .25s,border-color .25s,box-shadow .25s}
.home-rebuild .program-panel>div{gap:18px;min-width:0}
.home-rebuild .program-panel .program-explore{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:46px;margin-top:auto;padding-top:14px;border-top:1px solid #51ade255;color:#80ccf8;font-size:16px;font-weight:750;letter-spacing:-.025em;line-height:1.3}
.program-explore>span{display:grid;place-items:center;flex:0 0 34px;height:34px;background:#51ade2;color:#050505;font-size:23px;transition:transform .25s,background .25s}
.home-rebuild .program-panel:hover,.home-rebuild .program-panel:focus-visible{background:#102530;border-color:#8bd2ff;box-shadow:inset 0 0 0 1px #51ade2}
.program-panel:hover .program-explore>span,.program-panel:focus-visible .program-explore>span{transform:translate(2px,-2px);background:#b2e3ff}
.program-panel:focus-visible{outline:2px solid #b2e3ff;outline-offset:5px}
.p-pathways a{border-bottom:1px solid #51ade270;padding:15px 12px;transition:background .25s,color .25s}
.p-pathways a:hover,.p-pathways a:focus-visible{background:#102530;color:#91d5fb}
@media(max-width:1100px),(max-width:1366px) and (pointer:coarse){
 .gritt-nav nav>a,.gritt-nav .gritt-program-menu>summary{font-size:19px!important}
 .gritt-nav .gritt-program-links a{font-size:17px!important}
 .gritt-nav .gritt-program-links{width:auto}
 .gritt-menu-toggle{font-size:16px}
 .home-rebuild .program-panel{min-height:0}
}
@media(prefers-reduced-motion:reduce){.program-panel,.program-explore>span,.p-pathways a{transition:none!important}.program-explore>span{transform:none!important}}

