@import url('https://fonts.googleapis.com/css2?family=Inter:wght@350;400;450;500;550;600;650;700&display=swap');
:root{--blue:#53abe1;--ink:#282c30;--muted:#7b8084;--paper:#fafafa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:16px;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}p{line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:450;letter-spacing:-3.8px;line-height:1.05}h1{font-size:clamp(60px,6.5vw,94px);margin:22px 0}h2{font-size:52px}h3{font-size:19px;font-weight:500;letter-spacing:-.6px}.hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 8% 61%,#b8dff5 0,transparent 36%),radial-gradient(ellipse at 95% 58%,#b0dcf5 0,transparent 38%),linear-gradient(#52a9e1 20%,#70bce8 62%,#53aae2);border-radius:25px;color:white;height:1020px;overflow:hidden}header{position:relative;z-index:5;padding:24px 44px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:19px;letter-spacing:-.5px}.brand-icon{display:grid;place-items:center;border-radius:8px;background:#fff;color:#5aace0;font-size:23px;width:29px;height:29px}.top-link,.white-button{border-radius:50px;background:white;color:#5d6469;font-size:10px;font-weight:600;letter-spacing:.8px;padding:14px 23px;display:inline-block}.hero-copy{text-align:center;position:relative;z-index:4;padding-top:12px}.badge{display:inline-block;padding:7px 14px;border:1px solid #ffffff22;background:#ffffff1c;border-radius:50px;font-size:10px;font-weight:500;letter-spacing:1.5px}.hero-copy>p:not(.form-note):not(.form-status){font-size:15px;color:#f1f8fc;line-height:1.5;margin-bottom:27px}.waitlist{display:flex;align-items:center;background:#ffffff2e;border:1px solid #ffffff25;padding:6px 7px 6px 19px;border-radius:50px;width:440px;max-width:90%;margin:auto;backdrop-filter:blur(10px);box-shadow:0 0 0 6px #ffffff07}.waitlist input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:white;font-size:12px;padding:10px 0}.waitlist input::placeholder{color:#eff8ff}.waitlist button{border:0;background:white;color:#5e6469;font-size:9px;letter-spacing:.5px;border-radius:50px;white-space:nowrap;padding:15px 19px}.waitlist button span{margin-left:7px}.hero-copy .form-note{font-size:10px;margin:13px 0 0;color:#f0f8ff}.form-status{font-size:12px;min-height:20px;margin:8px auto 0;max-width:420px}.hero-device{position:absolute;top:465px;left:50%;transform:translateX(-50%);width:315px}.phone{width:315px;height:620px;background:#08090a;border:3px solid #969c9f;border-radius:49px;padding:7px;box-shadow:0 0 0 2px #323639,0 24px 60px #18465e26;color:#252c31;overflow:hidden}.status{height:41px;border-radius:37px 37px 0 0;background:#fafbfb;display:flex;justify-content:space-between;align-items:center;padding:0 20px;font-size:11px;position:relative}.status i{position:absolute;top:7px;left:50%;transform:translateX(-50%);width:90px;height:24px;background:#050606;border-radius:30px}.screen{background:#fafbfb;min-height:560px;padding:15px 15px 30px}.app-greeting{font-size:9px;display:flex;justify-content:space-between;color:#8e969c;align-items:center}.app-greeting>span{font-size:20px;color:#57abe0}.screen h3{font-size:20px;margin:7px 0 20px}.app-tags{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.8px;color:#9a9fa3;margin-bottom:10px}.exercise-scene{background:#e7eff0;border-radius:15px;position:relative;overflow:hidden}.exercise-scene svg{width:100%;height:250px;display:block}.tracking{position:absolute;bottom:8px;left:10px;font-size:7px;background:#fff9;padding:5px 8px;border-radius:20px;color:#56839b}.coach{display:flex;align-items:center;gap:12px;padding:14px 10px;border-radius:10px;background:white;margin:12px 0;font-size:11px;box-shadow:0 4px 14px #29384a05}.wave{color:#62afdf;white-space:nowrap}.coach small{display:block;font-size:8px;color:#8c959a;margin-top:4px}.app-stats{display:flex;gap:8px}.app-stats>div{background:#edf1f4;flex:1;padding:12px;border-radius:9px}.app-stats b{font-size:19px;font-weight:500}.app-stats small{font-size:11px;color:#9da7ad}.app-stats span{display:block;color:#9ba1a6;font-size:8px;margin-top:5px}.app-nav{display:flex;justify-content:space-around;font-size:12px;color:#80b7d7;padding-top:22px}.app-nav span{font-size:8px}.floating-card{position:absolute;right:-150px;top:245px;background:#fffc;backdrop-filter:blur(15px);border:1px solid #fff;border-radius:13px;box-shadow:0 9px 30px #246a9012;color:#43545e;display:flex;gap:12px;padding:18px 22px;font-size:12px;white-space:nowrap}.round-icon{background:#e4f1f7;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#66b1e0;font-size:20px}.floating-card small{display:block;font-size:9px;color:#83969f;margin-top:5px}.fog{position:absolute;inset:610px 0 0;background:linear-gradient(transparent 0,#75bde761 30%,#60b1e6eb 73%,#59ade5 100%);z-index:2;pointer-events:none}.milestones{position:absolute;z-index:3;bottom:50px;left:50%;transform:translateX(-50%);width:600px;max-width:90%;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px;border:1px solid #ffffff20;background:#ffffff14;border-radius:18px;backdrop-filter:blur(8px)}.milestones>div{background:#ffffff1a;border-radius:10px;text-align:center;padding:17px 5px;border:1px solid #ffffff10}.milestones b{display:block;font-size:25px;font-weight:400;margin-bottom:10px}.milestones span{font-size:8px;letter-spacing:1px;white-space:nowrap;color:#e0f2ff}.milestones .current{background:#ffffff30}.current i{display:inline-block;background:#fff;border-radius:50%;width:4px;height:4px;vertical-align:middle}.concept-caption{position:absolute;bottom:21px;left:0;right:0;text-align:center;color:#e5f4ff;font-size:9px;z-index:4}.section{max-width:1050px;margin:auto;padding:95px 0 0}.section-title{text-align:center;margin-bottom:48px}.section-title h2{margin:0 0 20px}.section-title p{font-size:14px;color:var(--muted)}.kicker{font-size:9px;letter-spacing:1.8px;color:#929aa1;display:block;margin-bottom:18px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.feature{background:#f0f2f2;border-radius:20px;text-align:center;padding:0 28px 26px;overflow:hidden}.feature h3{margin:0 0 12px}.feature>p{color:#7f8589;font-size:12px;max-width:340px;margin:0 auto;line-height:1.6}.feature-art{height:280px;position:relative;overflow:hidden;margin:0 -28px}.feature-art:after{content:'';position:absolute;bottom:0;left:0;right:0;height:65px;background:linear-gradient(transparent,#f0f2f2);pointer-events:none}.routine{display:flex;gap:10px;align-items:flex-start;background:white;padding:20px 16px;border-radius:10px;text-align:left;width:310px;box-shadow:0 10px 24px #0000000b;position:absolute;left:50%;top:90px;transform:translateX(-50%);font-size:11px}.routine>span:last-child{font-size:7px;color:#9ca3a6;margin-left:auto;white-space:nowrap}.routine small{font-size:9px;color:#a0a7aa;display:block;margin-top:6px}.task-icon{color:#81c881;background:#e9f7e9;border-radius:50%;padding:3px;font-size:9px}.task-icon.blue{color:#70b7dd;background:#e6f2fa}.tiny-tag{display:block;font-size:7px;color:#d49a7d;margin-top:12px;background:#fbf4ef;width:max-content;padding:4px;border-radius:3px}.routine.behind{top:61px;transform:translateX(-50%) scale(.87);opacity:.55}.routine.front{top:101px}.mini-phone .phone{position:absolute;top:40px;left:50%;transform:translateX(-50%) scale(.72);transform-origin:top}.audio-float{position:absolute;left:50%;top:114px;background:white;padding:16px;border-radius:10px;display:flex;gap:12px;text-align:left;font-size:11px;box-shadow:0 8px 30px #0000000a;width:255px;transform:translateX(-20%)}.audio-float small{font-size:8px;display:block;color:#9ba4a8;margin-top:5px}.tracking-frame{height:220px;width:210px;margin:30px auto 0;position:relative;background:#e7edef;border-radius:15px}.tracking-frame svg{height:100%;width:100%}.corner{position:absolute;width:23px;height:23px;border-color:#69b6e8;border-style:solid}.tl{top:12px;left:12px;border-width:2px 0 0 2px}.tr{top:12px;right:12px;border-width:2px 2px 0 0}.bl{bottom:12px;left:12px;border-width:0 0 2px 2px}.br{bottom:12px;right:12px;border-width:0 2px 2px 0}.vision-pill{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;background:white;border-radius:20px;padding:10px 15px;color:#7897a7;z-index:1}.progress-card{background:#fff;border-radius:13px;width:270px;margin:36px auto 0;padding:19px 21px;text-align:left;box-shadow:0 8px 28px #00000005}.progress-label{font-size:8px;color:#9aa5ab;display:flex;justify-content:space-between;letter-spacing:1px}.progress-card h4{font-size:19px;font-weight:450;margin:13px 0 4px}.bars{display:flex;align-items:flex-end;gap:10px;height:95px}.bars i{flex:1;height:var(--h);background:#c5e5f7;border-radius:5px 5px 0 0}.bars i:last-child{background:#68b5e7}.chart-days{display:flex;word-spacing:17px;font-size:8px;color:#a5adb1;padding-top:9px}.chart-caption{font-size:7px;color:#b0b5b9;display:block;margin-top:10px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;text-align:center}.step-num{background:#eff0f1;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;font-size:17px;margin:0 auto 24px;color:#697783}.steps h3{font-size:18px;margin-bottom:10px}.steps p{font-size:13px;color:var(--muted);max-width:270px;margin:auto}.life-panel{text-align:center;max-width:1050px;margin:95px auto 0;padding:65px 25px;border-radius:22px;color:white;background:radial-gradient(ellipse at 50% 130%,#c6e7f7,transparent 65%),#60b1e4}.life-panel h2{font-size:45px;margin:22px 0 30px}.goal-tabs{display:flex;gap:10px;justify-content:center}.goal-tabs button{border:1px solid #ffffff55;border-radius:30px;padding:12px 20px;background:#ffffff15;color:white;font-size:12px}.goal-tabs button.selected{background:white;color:#68a4ca}.life-panel p{font-size:13px;margin:24px 0 0;min-height:22px}.faq{max-width:690px;padding-bottom:95px}.faq h2{font-size:44px}.faq details{border-bottom:1px solid #e9ebec;padding:22px 0}.faq summary{cursor:pointer;list-style:none;font-size:15px;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:#969fa5}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);font-size:13px;margin:16px 24px 0 0}.closing{text-align:center;border-radius:22px;background:radial-gradient(ellipse at 100% 100%,#b2dff5,transparent 65%),#56ace1;color:white;padding:64px 20px}.closing h2{font-size:48px;margin:22px 0 28px}.closing p{font-size:11px;margin:22px 0 0;color:#e7f6ff}footer{display:flex;justify-content:space-between;align-items:center;padding:35px 30px;color:#92989b;font-size:11px}footer .brand{color:#4f5c64}footer .brand-icon{background:#e5f2fa}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid #224f87;outline-offset:5px}.waitlist:focus-within{box-shadow:0 0 0 3px #ffffff85}button:hover,.white-button:hover,.top-link:hover{filter:brightness(.97)}@media(max-width:1100px){.section{padding-left:24px;padding-right:24px}.life-panel{margin-left:24px;margin-right:24px}}@media(max-width:650px){body{padding:8px}.hero{height:930px;border-radius:20px}header{padding:20px}.brand{font-size:17px}.top-link{font-size:8px;padding:11px 13px}.hero-copy{padding-top:25px}h1{font-size:55px;letter-spacing:-2.8px;margin:24px 0}.hero-copy>p:not(.form-note):not(.form-status){font-size:12px;padding:0 18px}.waitlist{width:340px;padding-left:14px;max-width:93%}.waitlist button{font-size:8px;padding:14px 10px}.waitlist input{font-size:11px}.hero-device{top:440px;transform:translateX(-50%) scale(.85);transform-origin:top}.floating-card{right:-20px;top:255px;transform:scale(.83)}.fog{top:600px}.milestones{gap:5px;padding:7px;bottom:46px;max-width:94%}.milestones>div{padding:16px 2px}.milestones b{font-size:21px}.milestones span{font-size:6px;letter-spacing:.5px}.section{padding:65px 14px 0}.section-title{margin-bottom:30px}h2{font-size:36px;letter-spacing:-1.9px}.section-title p{font-size:12px}.feature-grid{grid-template-columns:1fr;gap:14px}.feature-art{height:260px}.feature{padding-bottom:27px}.feature h3{font-size:18px}.routine{width:275px}.audio-float{transform:translateX(-40%)}.steps{grid-template-columns:1fr;gap:30px}.step-num{margin-bottom:14px}.life-panel{margin:60px 0 0;padding:45px 14px}.life-panel h2{font-size:33px}.goal-tabs{gap:6px;flex-wrap:wrap}.goal-tabs button{font-size:10px;padding:11px 12px}.life-panel p{font-size:12px}.faq{padding-bottom:60px}.faq h2{font-size:34px}.faq summary{font-size:14px}.closing{padding:50px 20px}.closing h2{font-size:34px}footer{padding:28px 14px;gap:20px;flex-wrap:wrap}footer>span:last-child{width:100%;font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:650px){.hero-device{top:510px}.hero{height:1000px}.fog{top:670px}.hero-copy .form-status{padding:0 18px}}
@media(min-width:651px){.hero{height:1150px}.hero-device{top:610px}.fog{top:760px}}
@media(max-width:650px){.hero{height:1060px}.hero-device{top:570px}.fog{top:730px}}

/* Slow drifting light behind the hero, without moving the content. */
.hero::before,.hero::after{content:'';position:absolute;inset:-15%;z-index:-1;pointer-events:none;will-change:transform;}
.hero::before{background:radial-gradient(ellipse at 24% 30%,#d5effa80 0,transparent 48%),radial-gradient(ellipse at 78% 62%,#caeafb66 0,transparent 43%);animation:hero-light-drift 22s ease-in-out infinite alternate;}
.hero::after{background:radial-gradient(ellipse at 74% 22%,#278bd94d 0,transparent 48%),radial-gradient(ellipse at 18% 66%,#f0faff4d 0,transparent 42%);animation:hero-light-drift 29s ease-in-out -11s infinite alternate-reverse;}
@keyframes hero-light-drift{from{transform:translate3d(-3%,-2%,0) scale(1)}to{transform:translate3d(5%,4%,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.hero::before,.hero::after{animation:none;will-change:auto}}

/* Bring the app closer to the signup form. */
.hero-copy .form-status:empty{display:none}
@media(min-width:651px){.hero-device{top:475px}}
@media(max-width:650px){.hero-device{top:420px}}
@media(min-width:651px){.hero-device{top:505px}}
@media(max-width:650px){.hero-device{top:490px}}

/* Camera-led session preview and program discovery. */
.hero{height:1270px}
.hero-copy>p:not(.form-status){max-width:600px;margin-left:auto;margin-right:auto}
.hero .hero-device{position:relative;top:auto;left:auto;transform:none;margin:18px auto 0}
.session-phone{height:642px;background:#11171b;padding:7px;border-color:#919ba0;box-shadow:0 0 0 2px #354049,0 22px 60px #18465e35}
.session-phone .status{background:#f8fafb}
.session-screen{background:#f8fafb;padding:10px 10px 14px;border-radius:0 0 36px 36px;overflow:hidden}
.session-header{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:4px 2px 14px}
.session-header>div{flex:1}.session-header small{font-size:7px;letter-spacing:1px;color:#8d9ba3}.session-header h3{font-size:20px;margin:5px 0 0;letter-spacing:-.7px}.session-back{font-size:25px;color:#76848b;margin-right:2px}.session-step{font-size:9px;color:#96a5ac}
.camera-view{height:350px;border-radius:17px;overflow:hidden;position:relative;background:#4d5d65;color:white}
.camera-view>img{width:100%;height:100%;object-fit:cover;object-position:center 44%;display:block}
.camera-view:after{content:'';position:absolute;inset:0;background:linear-gradient(#142b3440,transparent 30%,transparent 48%,#142633e8 100%);pointer-events:none}
.camera-top{position:absolute;top:13px;left:11px;right:11px;z-index:1;display:flex;align-items:center;justify-content:space-between}
.camera-live{font-size:7px;letter-spacing:1px;border:1px solid #ffffff40;background:#12233245;padding:6px 8px;border-radius:20px;backdrop-filter:blur(5px)}.camera-live i{display:inline-block;background:#96edb9;width:4px;height:4px;border-radius:50%;margin-right:4px}.camera-demo{font-size:6px;letter-spacing:1px;background:#1e303d50;padding:5px;border-radius:4px}
.frame-corners{position:absolute;z-index:1;inset:46px 18px 125px;border:1px solid #ffffff35;border-radius:12px;pointer-events:none}
.camera-bottom{position:absolute;z-index:1;bottom:17px;left:16px;right:16px}.exercise-label{font-size:6px;letter-spacing:1.3px;color:#c3d4df}.camera-bottom h4{font-size:17px;font-weight:450;margin:5px 0 11px}.session-timer{display:flex;align-items:center;gap:8px}#warmup-time{font-size:41px;font-weight:450;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.timer-unit{font-size:12px;color:#c0d1df}.timer-unit small{display:block;font-size:6px;letter-spacing:.2px;margin-top:5px}.timer-track{height:3px;background:#ffffff25;border-radius:10px;margin-top:12px;overflow:hidden}.timer-track i{display:block;width:20%;height:100%;background:#a6dfff;transition:width 1s linear}
.session-coach{display:flex;gap:10px;align-items:center;padding:14px 3px 12px;font-size:9px;color:#42505a}.session-coach small{display:block;font-size:6px;letter-spacing:1px;color:#9da8ae;margin-top:5px}.session-controls{display:flex;justify-content:space-between;align-items:center;padding:8px 6px;border-top:1px solid #e8edf0}.session-controls>span{font-size:6px;color:#99a4ab;letter-spacing:1px}.session-controls small{display:block;font-size:11px;color:#586870;letter-spacing:0;margin-top:5px}.session-controls button{width:37px;height:37px;border:0;border-radius:50%;background:#dcedf8;color:#397da9;font-size:12px}.session-preview{font-size:6px;color:#9ba7ad;text-align:center;margin:5px 0 0}.warmup-note{top:225px;right:-172px;padding:16px 20px;background:#fffefc;box-shadow:0 15px 40px #246a9020}.hero .fog{top:930px;background:linear-gradient(transparent,#69b6e775 55%,#59ade5 100%)}
.program-previews{position:absolute;z-index:3;bottom:45px;left:50%;transform:translateX(-50%);width:880px;max-width:92%}.program-heading{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#f1faff;margin-bottom:12px}.program-heading span:last-child{opacity:.75}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#ffffff12;border:1px solid #ffffff25;border-radius:18px;padding:10px;backdrop-filter:blur(12px)}.program-card{position:relative;text-align:left;border:1px solid #ffffff20;background:#ffffff12;border-radius:11px;padding:18px 16px;color:white;transition:background .25s,transform .25s}.program-card.selected{background:#ffffffdd;color:#447e9f;border-color:white;box-shadow:0 5px 16px #4489b415}.program-card:hover{transform:translateY(-3px);background:#ffffff30}.program-card.selected:hover{background:white}.program-card>small{display:block;font-size:7px;letter-spacing:1.1px;margin-bottom:12px;opacity:.75}.program-card>b{display:block;font-size:15px;font-weight:500;letter-spacing:-.4px;line-height:1.3}.program-footer{display:block;font-size:8px;margin-top:15px;opacity:.75}.program-symbol{position:absolute;right:14px;top:13px;font-size:18px;opacity:.7}#program-description{font-size:10px;text-align:center;margin:13px auto 0;max-width:650px;line-height:1.5;color:#e9f7ff;min-height:30px}.concept-caption{bottom:14px}
@media(max-width:650px){.hero{height:1450px}.hero .hero-device{margin-top:15px;transform:scale(.88);transform-origin:top center}.hero-copy>p:not(.form-status){font-size:12px;padding:0 12px}.hero-copy>p br{display:none}.hero-copy>p{max-width:345px}.warmup-note{right:-12px;top:243px;transform:scale(.85);transform-origin:right}.hero .fog{top:970px}.program-previews{bottom:43px;max-width:94%;width:420px}.program-grid{grid-template-columns:1fr 1fr;gap:8px;padding:8px}.program-card{padding:15px 13px}.program-card>b{font-size:14px}.program-card>small{font-size:6px}.program-footer{font-size:7px;margin-top:10px}.program-symbol{font-size:15px}.program-heading{font-size:6px;letter-spacing:.7px}#program-description{font-size:9px;max-width:300px}.program-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.timer-track i,.program-card{transition:none}}
.hero{height:auto;padding-bottom:58px}
.program-previews{position:relative;bottom:auto;left:auto;transform:none;margin:28px auto 0}
.hero .hero-device{z-index:3}
@media(max-width:650px){.program-previews{margin-top:-42px}.hero{padding-bottom:56px}.hero .hero-device{z-index:auto}}
.hero-copy{padding-top:0}
.hero-copy h1{margin-top:14px;margin-bottom:18px}
.hero .hero-device{margin-top:12px}

/* Full-screen camera interface: large controls, minimal reading. */
.session-phone{height:642px;position:relative;-webkit-mask-image:linear-gradient(#000 0%,#000 72%,#000b 85%,transparent 100%);mask-image:linear-gradient(#000 0%,#000 72%,#000b 85%,transparent 100%)}
.session-phone .session-screen{position:relative;height:100%;padding:0;background:#47403d;border-radius:38px;overflow:hidden;color:white}
.session-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}
.session-shade{position:absolute;inset:0;background:linear-gradient(#172229b0,transparent 32%,#15232d22 44%,#13212dc9 75%,#13212dee);pointer-events:none}
.session-phone .status{position:relative;z-index:1;background:transparent;color:white;height:44px;padding:0 18px}
.session-phone .session-header{position:relative;display:block;padding:13px 20px 0}
.session-header .camera-live{font-size:8px;padding:6px 8px}.session-header .camera-demo{float:right;margin-top:5px;font-size:7px}
.session-header h3{font-size:32px;letter-spacing:-1px;margin:13px 0 6px;color:white;font-weight:500}.session-header small{font-size:8px;letter-spacing:.9px;color:#fff;opacity:.85}
.session-overlay{position:absolute;top:320px;left:20px;right:20px;text-align:center;color:white}
.session-overlay h4{font-size:19px;font-weight:500;margin:0 0 0;letter-spacing:-.3px}
.session-overlay #warmup-time{font-size:68px;line-height:1.15;font-weight:500;letter-spacing:-3px;display:block;text-shadow:0 2px 18px #0002}
.remaining-label{display:block;font-size:12px;color:#e1ebf0;margin-top:0}
.session-overlay .timer-track{margin:10px auto 0;width:160px;height:4px}
.voice-prompt{margin:10px 0;font-size:14px;color:#fff;line-height:1.3}.voice-prompt .wave{font-size:11px;margin-right:6px;color:#c3eaff}
.session-overlay button{border:1px solid #ffffff55;border-radius:35px;background:#f4fbff;color:#2d536b;height:47px;min-width:130px;font-size:16px;font-weight:600;padding:0 20px}
.hero .hero-device{z-index:1}
.hero .fog{z-index:2;top:auto;bottom:0;height:440px;background:linear-gradient(transparent,#65b4e644 30%,#5aaee5d9 73%,#59ade5);pointer-events:none}
.program-previews{z-index:3;margin-top:-67px}
.program-card{backdrop-filter:blur(8px)}
@media(max-width:650px){.hero .hero-device{z-index:1}.program-previews{margin-top:-120px}.hero .fog{height:530px}.session-overlay{top:310px}}

/* Matched spacing around signup; compact overlay and native-style status bar. */
.hero{--signup-gap:28px}
.hero-copy>p:not(.form-note):not(.form-status){margin-bottom:var(--signup-gap)}
.hero .hero-device{margin-top:var(--signup-gap)}
.program-previews{margin-top:-112px}
.session-phone .native-status{height:44px;padding:0 20px;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;align-items:center}
.native-status b{font-size:13px;font-weight:600;letter-spacing:-.3px;margin-left:5px}
.native-status .status-icons{width:57px;height:13px;display:block;margin-right:1px}
.session-phone .native-status i{width:88px;height:25px;top:7px}
.session-phone .session-header{padding-top:12px}
.session-header h3{margin-top:0}
.session-overlay .timer-track{margin-top:14px}
@media(max-width:650px){.program-previews{margin-top:-164px}.hero .hero-device{margin-top:var(--signup-gap)}}

/* Visible, slow-moving pools of light across the hero. */
.hero::before{inset:-22%;background:radial-gradient(ellipse 42% 40% at 22% 32%,#e2f6ffd9 0%,#b7e2fa88 35%,transparent 72%),radial-gradient(ellipse 36% 46% at 76% 66%,#d4f1ffb3 0%,transparent 70%);animation:zuma-light-flow 13s ease-in-out -4s infinite alternate;opacity:.9}
.hero::after{inset:-20%;background:radial-gradient(ellipse 40% 40% at 78% 24%,#168cdd99 0%,transparent 74%),radial-gradient(ellipse 38% 35% at 26% 67%,#e7f8ffc4 0%,transparent 70%);animation:zuma-blue-flow 17s ease-in-out -8s infinite alternate;opacity:.85}
@keyframes zuma-light-flow{0%{transform:translate3d(-9%,-6%,0) scale(1.02)}50%{transform:translate3d(3%,2%,0) scale(1.1)}100%{transform:translate3d(12%,8%,0) scale(1.04)}}
@keyframes zuma-blue-flow{0%{transform:translate3d(10%,-5%,0) scale(1.08)}50%{transform:translate3d(-2%,3%,0) scale(1.02)}100%{transform:translate3d(-11%,9%,0) scale(1.1)}}
@media(prefers-reduced-motion:reduce){.hero::before,.hero::after{animation:none;will-change:auto}}

/* Readable type and direct headings for older adults. */
body{font-size:18px}
.hero-copy>p:not(.form-note):not(.form-status){font-size:18px;line-height:1.55;max-width:660px}
.hero-copy .form-status{font-size:18px;max-width:560px}
.waitlist{width:570px;max-width:92%}
.waitlist input{font-size:18px;padding:13px 0}
.waitlist button,.top-link,.white-button{font-size:18px;letter-spacing:0;font-weight:500;padding:14px 20px;min-height:48px}
.waitlist button{color:#394f5e}
.program-grid{gap:12px;padding:12px}
.program-card{padding:24px 16px;min-height:108px;display:flex;align-items:center;justify-content:center;text-align:center}
.program-card>b{font-size:21px;line-height:1.3;font-weight:500}
.program-card.selected{color:#254f69;background:#fff}
.program-previews{margin-top:-112px}
.concept-caption{font-size:18px;color:white;bottom:17px;line-height:1.4}
.hero{padding-bottom:70px}
.section-title p,.steps p,.faq details p,.life-panel p,.closing p,footer,footer>span:last-child{font-size:18px;line-height:1.6}
.section-title p,.steps p,.faq details p{color:#58616a}
.section-title p{max-width:750px;margin-left:auto;margin-right:auto}
.feature{padding:0 26px 36px}
.feature>h3{font-size:27px;line-height:1.25;font-weight:500;letter-spacing:-.7px;max-width:450px;margin:0 auto}
.readable-art{height:270px;display:flex;align-items:center;justify-content:center}
.readable-art:after{display:none}
.program-illustration{width:80%;text-align:left}
.program-illustration>div{background:#ffffff80;border-radius:12px;padding:15px 18px;font-size:18px;color:#576a77;margin:8px 0;display:flex;align-items:center;gap:12px}
.program-illustration>div.highlight{background:white;box-shadow:0 8px 24px #26465a0a;color:#344d5e}
.program-illustration span{color:#5591b8}
.voice-illustration{width:80%;display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.large-wave{width:100%;font-size:42px;color:#559cca;margin-bottom:12px}
.voice-illustration>div{font-size:23px;background:white;border-radius:15px;padding:17px 21px;color:#415b6a}
.rep-illustration{display:flex;flex-direction:column;align-items:center;gap:10px;color:#536975;width:65%}
.rep-value{font-size:80px;letter-spacing:-4px;line-height:1;font-weight:500;color:#367ba8}.rep-value>span{font-size:36px;letter-spacing:-1px;color:#8699a5}
.rep-track{height:8px;border-radius:10px;background:#d9e4eb;width:100%;margin-top:12px;overflow:hidden}.rep-track i{display:block;height:100%;width:37.5%;background:#65acd8;border-radius:10px}
.progress-illustration{width:65%;color:#536975}.progress-illustration .bars{height:140px;margin-bottom:18px}
.steps h3{font-size:25px;line-height:1.25}.steps p{max-width:310px}
.goal-tabs button{font-size:18px;min-height:48px;padding:13px 22px}
.faq summary{font-size:21px;gap:20px;line-height:1.4;min-height:30px}
footer{gap:24px;flex-wrap:wrap;color:#59656d}
@media(max-width:650px){
 .hero-copy>p:not(.form-note):not(.form-status){font-size:18px;max-width:370px;padding:0 18px}
 header{gap:12px;padding:20px 16px}.top-link{font-size:18px;padding:12px 14px}
 .waitlist{flex-direction:column;border-radius:22px;padding:10px;gap:6px;width:355px}.waitlist input{width:100%;padding:13px 10px}.waitlist button{width:100%}
 .program-grid{gap:8px;padding:8px}.program-card{padding:18px 8px;min-height:112px}.program-card>b{font-size:19px}
 .program-previews{margin-top:-164px}.concept-caption{font-size:18px;padding:0 20px;bottom:18px}.hero{padding-bottom:89px}
 .section-title p,.steps p,.faq details p,.life-panel p,.closing p,footer>span:last-child{font-size:18px}
 .section-title p br{display:none}.feature>h3{font-size:25px}.feature{padding:0 18px 30px}
 .readable-art{height:250px}.program-illustration{width:85%}.program-illustration>div{padding:13px 12px;font-size:18px}
 .voice-illustration{width:90%}.voice-illustration>div{font-size:21px;padding:15px}.goal-tabs button{font-size:18px;padding:12px 16px}
 .faq summary{font-size:20px}.steps h3{font-size:24px}
}

/* Program cards: compact titles aligned to the left. */
.program-card{justify-content:flex-start;text-align:left;padding:22px 18px}
.program-card>b{font-size:16px;letter-spacing:-.02em;line-height:1.35}
.hero{padding-bottom:36px}
@media(max-width:650px){.program-card{padding:18px 14px;min-height:96px}.program-card>b{font-size:16px;letter-spacing:-.02em}.hero{padding-bottom:32px}}

/* Calm sky accents and consistent control typography. */
.hero-copy>p:not(.form-note):not(.form-status),
.section-title p,.steps p,.faq details p,.life-panel p,.closing p,
.hero-copy .form-status,.waitlist input,.waitlist button,
.top-link,.white-button,.goal-tabs button,.program-card>b{
 font-size:16px;letter-spacing:-.01em;
}
.waitlist input::placeholder{letter-spacing:-.01em}
.waitlist button,.top-link,.white-button{
 background:linear-gradient(155deg,#ffffff 8%,#f1faff 48%,#cfebfb 100%);
 color:#355b73;
 border:1px solid #ffffffb3;
 box-shadow:inset 0 1px 0 #fff,0 3px 12px #286e9b12;
 transition:background .25s,box-shadow .25s;
}
.waitlist button:hover,.top-link:hover,.white-button:hover{
 background:linear-gradient(155deg,#fff 0%,#e9f7ff 45%,#bce3fa 100%);
 box-shadow:inset 0 1px 0 #fff,0 5px 16px #286e9b20;
 filter:none;
}
.program-card.selected,.program-card.selected:hover,.goal-tabs button.selected{
 background:linear-gradient(145deg,#ffffff 0%,#eef9ff 48%,#d5effc 100%);
 color:#355b73;
 border-color:#ffffffb3;
 box-shadow:inset 0 1px 0 #fff,0 3px 12px #286e9b12;
}
@media(prefers-reduced-motion:reduce){.waitlist button,.top-link,.white-button{transition:none}}

/* Keep moving light away from the reading area. */
.hero{background:linear-gradient(155deg,#227ab3 0%,#318dca 42%,#63b3e3 80%,#59ade5 100%)}
.hero::before,.hero::after{-webkit-mask-image:linear-gradient(transparent 0%,#0002 25%,#000 57%);mask-image:linear-gradient(transparent 0%,#0002 25%,#000 57%)}
.hero-copy>p:not(.form-note):not(.form-status){color:#153e59}
.waitlist{background:#f0f9ffd9;border-color:#ffffffa6;box-shadow:0 0 0 6px #ffffff08}
.waitlist input,.waitlist input::placeholder{color:#355b73;opacity:1}
.feature>h3{font-size:25px;line-height:1.3}
.workout-window{height:190px;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}
.program-illustration>.workout-track{display:block;margin:0;padding:0;background:none;border-radius:0;box-shadow:none;transform:translateY(0);will-change:transform}
.workout-row{height:56px;margin-bottom:10px;background:#ffffff85;border:1px solid transparent;border-radius:12px;display:flex;align-items:center;gap:12px;padding:0 18px;font-size:18px;color:#536975;transition:background .55s,color .55s,box-shadow .55s,border-color .55s}
.workout-row.is-current{background:white;color:#285878;border-color:#d9eaf4;box-shadow:0 5px 16px #355a6f0a}
.workout-row>span:first-child{width:22px;flex:none;text-align:center;color:#4a8fb8;font-size:20px}
.voice-demo{display:flex;flex-direction:column;align-items:center;flex-wrap:nowrap;gap:23px;width:100%}
.voice-illustration>.listening-orb{position:relative;width:86px;height:86px;padding:21px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#fff,#d9effc 75%);color:#3d8fc1;box-shadow:0 6px 25px #478bad15;animation:zuma-listen 3.6s ease-in-out infinite}
.listening-orb svg{position:relative;z-index:1;width:44px;height:44px;display:block}
.voice-halo{position:absolute;inset:-10px;border:1px solid #75b5df55;border-radius:50%;animation:zuma-listen-halo 3.6s ease-in-out infinite}
.voice-illustration>.command-window{background:none;padding:0;border-radius:0;width:100%;height:56px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent)}
.command-track{display:flex;gap:12px;width:max-content;position:relative;left:50%;margin-left:-80px;will-change:transform}
.command-chip{width:160px;height:52px;flex-shrink:0;display:grid;place-items:center;background:#ffffff75;border:1px solid #e3e9ed;border-radius:16px;font-size:20px;color:#8799a4;transition:color .55s,background .55s,border-color .55s}
.command-chip.is-current{background:white;border-color:#cee5f4;color:#365e77}
@keyframes zuma-listen{0%,100%{transform:scale(.97)}50%{transform:scale(1.05)}}
@keyframes zuma-listen-halo{0%,100%{transform:scale(.95);opacity:.45}50%{transform:scale(1.14);opacity:.9}}
@media(max-width:650px){.feature>h3{font-size:23px}.workout-row{padding:0 12px;font-size:18px}.voice-demo{width:100%}.voice-illustration>.listening-orb{padding:21px}.voice-illustration>.command-window{padding:0}}
@media(prefers-reduced-motion:reduce){.listening-orb,.voice-halo{animation:none!important}.workout-row,.command-chip{transition:none}.workout-track,.command-track{will-change:auto}}

/* Soft listening motion and plain, readable workout details. */
.workout-row,.workout-row.is-current{color:#58616a;border:0}
.workout-row>span.workout-name{width:auto;flex:1;text-align:left;color:#58616a;font-size:18px;min-width:0}
.workout-row>span.workout-duration{flex:none;margin-left:auto;color:#58616a;font-size:16px;white-space:nowrap;font-variant-numeric:tabular-nums}
.voice-demo{gap:37px}
.voice-illustration>.listening-orb{background:#e4e7e9;color:#58616a;box-shadow:none;animation:zuma-listen 2.2s ease-in-out infinite;display:grid;place-items:center}
.voice-halo{inset:-13px;border:0;background:#dce0e3;animation:zuma-listen-halo 2.2s ease-in-out infinite}
.listening-lines{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:5px;width:48px;height:42px}
.listening-lines i{display:block;width:5px;height:29px;border-radius:5px;background:#68727a;animation:zuma-voice-wave 1.15s ease-in-out infinite alternate;transform-origin:center}
.listening-lines i:nth-child(1){height:16px;animation-delay:-.2s}.listening-lines i:nth-child(2){height:29px;animation-delay:-.75s}.listening-lines i:nth-child(3){height:39px;animation-delay:-.4s}.listening-lines i:nth-child(4){height:26px;animation-delay:-.95s}.listening-lines i:nth-child(5){height:17px;animation-delay:-.6s}
.command-chip,.command-chip.is-current{border:0;color:#58616a;box-shadow:none}
.command-chip{background:#ffffff7a}.command-chip.is-current{background:white}
@keyframes zuma-voice-wave{from{transform:scaleY(.4)}to{transform:scaleY(1)}}
@media(max-width:650px){.workout-row{gap:8px}.workout-row>span.workout-name{font-size:16px}.voice-demo{gap:34px}}
@media(prefers-reduced-motion:reduce){.listening-lines i{animation:none}}

/* Restore the approved airy hero. */
.hero{background:radial-gradient(ellipse at 8% 61%,#b8dff5 0,transparent 36%),radial-gradient(ellipse at 95% 58%,#b0dcf5 0,transparent 38%),linear-gradient(#52a9e1 20%,#70bce8 62%,#53aae2)}
.hero::before,.hero::after{-webkit-mask-image:none;mask-image:none}
.hero-copy>p:not(.form-note):not(.form-status){color:#f1f8fc}
.waitlist{background:#ffffff2e;border:1px solid #ffffff25;box-shadow:0 0 0 6px #ffffff07}
.waitlist input{color:white}
.waitlist input::placeholder{color:#eff8ff;opacity:1}
.hero .waitlist button,.hero .top-link{background:#fff;box-shadow:none;color:#485b68}
.hero .waitlist button:hover,.hero .top-link:hover{background:#f1f9ff;box-shadow:none}

/* Quieter details and a softer listening rhythm. */
.workout-row>span.workout-duration{color:#7b858c}
.voice-illustration>.listening-orb{background:#e9ecee;animation-duration:3.8s}
.voice-halo{background:#e5e8ea;animation-duration:3.8s}
.listening-lines{width:40px;height:35px;gap:4px}
.listening-lines i{width:4px;animation-duration:1.7s}
.listening-lines i:nth-child(1){height:13px}.listening-lines i:nth-child(2){height:23px}.listening-lines i:nth-child(3){height:31px}.listening-lines i:nth-child(4){height:21px}.listening-lines i:nth-child(5){height:14px}
/* Concept previews: one actionable cue, then a visible response. */
.pose-scene{width:280px;max-width:90%;position:relative;text-align:center}
.pose-scene svg{width:240px;height:170px;max-width:100%;display:block;margin:0 auto}
.moving-arm{transform-origin:120px 70px;animation:zuma-arm-correction 7s cubic-bezier(.4,0,.2,1) infinite}
.correction-cue{position:relative;height:48px;width:205px;margin:0 auto;border-radius:14px;background:white;color:#58616a;font-size:19px;box-shadow:0 5px 20px #52636d06}
.correction-cue>span{position:absolute;inset:0;display:grid;place-items:center}
.cue-before{animation:zuma-cue-before 7s ease-in-out infinite}.cue-after{animation:zuma-cue-after 7s ease-in-out infinite}
.adaptation-scene{width:320px;max-width:84%;display:flex;flex-direction:column;gap:12px;color:#58616a;font-size:18px;text-align:left}
.check-in-bubble{align-self:flex-end;padding:14px 18px;background:#e6eaed;border-radius:16px 16px 4px 16px;animation:zuma-check-in 8s ease-in-out infinite}
.coach-reply{align-self:flex-start;padding:14px 18px;background:white;border-radius:16px 16px 16px 4px;animation:zuma-coach-reply 8s ease-in-out infinite}
.adjusted-session{display:flex;align-items:center;gap:12px;padding:17px 16px;background:#ffffff9c;border-radius:13px;animation:zuma-session-adapt 8s ease-in-out infinite}
.adaptation-dot{width:9px;height:9px;background:#95b5a5;border-radius:50%;flex:none}.adaptation-check{margin-left:auto;color:#789688}
@keyframes zuma-arm-correction{0%,20%{transform:rotate(35deg)}48%,83%{transform:rotate(0)}100%{transform:rotate(35deg)}}
@keyframes zuma-cue-before{0%,34%{opacity:1;transform:translateY(0)}44%,85%{opacity:0;transform:translateY(-5px)}95%,100%{opacity:1;transform:translateY(0)}}
@keyframes zuma-cue-after{0%,34%{opacity:0;transform:translateY(5px)}48%,82%{opacity:1;transform:translateY(0)}95%,100%{opacity:0;transform:translateY(5px)}}
@keyframes zuma-check-in{0%,5%{opacity:.2;transform:translateY(6px)}15%,85%{opacity:1;transform:translateY(0)}100%{opacity:.2;transform:translateY(6px)}}
@keyframes zuma-coach-reply{0%,22%{opacity:0;transform:translateY(7px)}36%,85%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(7px)}}
@keyframes zuma-session-adapt{0%,42%{opacity:0;transform:translateY(7px)}56%,85%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(7px)}}
@media(max-width:650px){.adaptation-scene{font-size:16px;max-width:90%}.check-in-bubble,.coach-reply{padding:13px 14px}.adjusted-session{padding:15px 12px}}
@media(prefers-reduced-motion:reduce){.moving-arm,.cue-before,.cue-after,.check-in-bubble,.coach-reply,.adjusted-session{animation:none!important}.moving-arm{transform:rotate(0)}.cue-before{opacity:0}.cue-after,.check-in-bubble,.coach-reply,.adjusted-session{opacity:1;transform:none}}

/* One primary action; simple white section navigation. */
.hero-nav{display:flex;align-items:center;gap:30px}
.hero-nav a{color:#fff;font-size:16px;letter-spacing:-.01em;line-height:1.55;padding:12px 0;text-decoration:none;text-underline-offset:6px}
.hero-nav a:hover{text-decoration:underline}
.primary-access{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ffffffc0;border-radius:40px;padding:16px 30px;min-height:54px;background:linear-gradient(155deg,#fff,#f1faff 60%,#d7eefb);color:#355b73;font-size:16px;letter-spacing:-.01em;font-weight:500;box-shadow:inset 0 1px 0 #fff,0 4px 14px #286e9b12}
.primary-access:hover{background:#eff9ff}
#features,#how-it-works,#contact{scroll-margin-top:32px}
#contact p{max-width:620px;margin-left:auto;margin-right:auto}
#early-access-dialog{border:0;border-radius:24px;padding:42px 32px 30px;max-width:min(440px,90vw);color:#435662;background:#f8fbfd;box-shadow:0 20px 90px #173d5933}
#early-access-dialog::backdrop{background:#19394d66;backdrop-filter:blur(5px)}
#early-access-dialog h2{font-size:30px;letter-spacing:-1px;margin:15px 0 18px}
#early-access-dialog p{font-size:16px;line-height:1.6}
.dialog-close{position:absolute;top:10px;right:12px;border:0;background:transparent;font-size:28px;color:#58616a;width:44px;height:44px}
.dialog-done{border:0;border-radius:25px;background:#dceffa;color:#355b73;font-size:16px;padding:13px 24px;min-height:48px}
@media(max-width:650px){header{flex-wrap:wrap;gap:10px;padding:20px 16px}.hero-nav{gap:19px;flex-wrap:wrap}.hero-nav a{font-size:16px}.primary-access{padding:15px 27px}}
@media(max-width:380px){.hero-nav{width:100%;justify-content:space-between;gap:12px}}

/* Spoken correction cue. Decorative only; no audio autoplay. */
.correction-cue{width:235px;max-width:100%}
.correction-cue>.cue-before,.correction-cue>.cue-after{left:35px;right:6px}
.pose-scene .correction-speaker{position:absolute;left:14px;top:13px;width:23px;height:23px;margin:0;color:#7393a5}
.speaker-wave{animation:zuma-speaking 1.8s ease-in-out infinite}
.speaker-wave.far{animation-delay:.25s}
@keyframes zuma-speaking{0%,100%{opacity:.35}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.speaker-wave{animation:none;opacity:1}}

/* Quiet navigation hover: brighten smoothly without an underline. */
.hero-nav a{color:rgba(255,255,255,.8);text-decoration:none;transition:color 240ms ease}
.hero-nav a:hover,.hero-nav a:focus-visible{color:#fff;text-decoration:none}
@media(prefers-reduced-motion:reduce){.hero-nav a{transition:none}}

/* More breathing room and individual visual identities for programs. */
.hero-copy{padding-top:34px}
.hero-copy h1{font-weight:400}
.primary-access{font-weight:400}
.program-previews{width:960px}
.program-grid{padding:12px;gap:12px;border-radius:24px;background:#ffffff0c;border-color:#ffffff30;box-shadow:inset 0 1px 0 #ffffff18}
.program-card{position:relative;isolation:isolate;overflow:hidden;min-height:172px;padding:82px 20px 23px;align-items:flex-end;border-radius:16px;background:linear-gradient(150deg,#ffffff26,#ffffff0d);border:1px solid #ffffff36;box-shadow:inset 0 1px 0 #ffffff22;transition:background .3s,box-shadow .3s,border-color .3s,transform .3s}
.program-card:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 92% 0%,#ffffff26,transparent 72%);pointer-events:none}
.program-card>b{font-size:16px;font-weight:400;letter-spacing:-.01em;line-height:1.4;position:relative}
.program-art{position:absolute;top:7px;right:17px;width:76px;height:76px;color:#e9f7ff;opacity:.85;transition:transform .4s,opacity .4s}
.program-card.selected,.program-card.selected:hover{background:linear-gradient(145deg,#fff 0%,#eef9ff 55%,#d3edfc 100%);border-color:#ffffffeb;box-shadow:0 9px 25px #285d8017,inset 0 1px 0 #fff;color:#355b73}
.program-card.selected .program-art{color:#6f9eb9;opacity:.9}
.program-card.selected .program-card:hover{background:linear-gradient(150deg,#ffffff3b,#ffffff20);border-color:#ffffff85;transform:translateY(-3px)}
.program-card:hover .program-art{transform:translateY(-2px);opacity:1}
@media(max-width:650px){.hero-copy{padding-top:22px}.program-grid{gap:8px;padding:8px;border-radius:21px}.program-card{min-height:155px;padding:73px 14px 17px}.program-card>b{font-size:16px;font-weight:400}.program-art{width:65px;height:65px;right:10px;top:5px}.program-selection{left:15px;top:20px}.program-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.program-card,.program-art{transition:none}.program-card:hover,.program-card:hover .program-art{transform:none}}

/* Independence-led copy, keeping the existing sky composition. */
.hero-copy h1{font-size:clamp(40px,5.3vw,72px);font-weight:400;line-height:1.08;letter-spacing:-.07308em;max-width:1000px;margin-left:auto;margin-right:auto}
.hero-copy>p{max-width:740px;margin-left:auto;margin-right:auto}
.life-panel #goal-copy{max-width:650px;margin-left:auto;margin-right:auto;line-height:1.65}
.life-panel .program-example-note{font-size:16px;line-height:1.5;max-width:610px;margin:24px auto 0;color:#586b78}
@media(max-width:650px){.hero-copy h1{font-size:clamp(33px,7.4vw,47px)}.hero-copy>p br{display:none}.adaptation-scene{font-size:16px}.life-panel #goal-copy{font-size:18px}}

/* A consistent, restrained line-icon set aligned with the program labels. */
.program-card{padding:78px 20px 23px}
.program-art{top:24px;left:20px;right:auto;width:30px;height:30px;color:currentColor;opacity:.85}
.program-card.selected .program-art{color:currentColor;opacity:.85}
.program-card:hover .program-art{transform:none}
@media(max-width:650px){.program-card{padding:69px 14px 17px}.program-art{top:21px;left:14px;right:auto;width:28px;height:28px}}

/* Keep a preceding voice command in the loop, including after each reset. */
.command-track{margin-left:-252px}
.command-chip{background:#ffffffbf}
.voice-illustration>.command-window{-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
/* A steady inner disc and a separately expanding, constant-color halo. */
.voice-illustration>.listening-orb{animation:none;background:transparent}
.listening-orb::after{content:'';position:absolute;inset:0;border-radius:50%;background:#dce2e6;z-index:0}
.voice-halo{background:#e7eaec;opacity:1;animation:zuma-halo-expand 3.8s ease-in-out infinite}
@keyframes zuma-halo-expand{0%,100%{transform:scale(.95)}50%{transform:scale(1.14)}}

/* Compact program previews and a little more room below the primary action. */
.hero .hero-device{margin-top:calc(var(--signup-gap,28px) + 14px)}
.program-card{min-height:140px;padding:65px 20px 19px}
.program-art{top:19px}
.program-card:hover{transform:none}
@media(max-width:650px){.program-card{min-height:132px;padding:58px 14px 16px}.program-art{top:16px}}

/* Tighter typography, clearer hierarchy, and an audio-led assistant preview. */
.program-card>b,.feature>h3{letter-spacing:-.025em}
.workout-row,.command-chip{background:#e1e5e8;color:#7a838b}
.workout-row>span.workout-name,.workout-row>span.workout-duration{color:#7a838b}
.workout-row.is-current,.command-chip.is-current{background:#fff;color:#58616a}
.workout-row.is-current>span.workout-name{color:#58616a}
.guidance-illustration{display:flex;flex-direction:column;align-items:center;gap:37px;width:100%}
.guidance-orb{position:relative;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;color:#667782}
.guidance-orb::after{content:'';position:absolute;inset:0;border-radius:50%;background:#dae3e9;z-index:0}
.guidance-orb>.voice-halo{background:#e5eaed}
.guidance-orb svg{position:relative;z-index:1;width:33px;height:33px}
.guidance-window{height:52px;width:270px;max-width:90%;overflow:hidden;border-radius:16px;background:white}
.guidance-track{will-change:transform}
.guidance-message{display:grid;place-items:center;height:52px;margin-bottom:8px;font-size:18px;color:#58616a;letter-spacing:-.01em;white-space:nowrap}
.personal-plans-window{width:84%;height:190px;overflow:hidden;mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}
.personal-plans-track{will-change:transform}
.personal-plan{display:flex;align-items:center;justify-content:space-between;gap:12px;height:56px;margin-bottom:10px;padding:0 18px;border-radius:12px;background:#e1e5e8;color:#7a838b;font-size:18px;letter-spacing:-.01em;transition:background .55s,color .55s}
.personal-plan.is-current{background:white;color:#58616a}
.plan-match{font-size:16px;white-space:nowrap;opacity:0;transition:opacity .55s;color:#708b7e}
.personal-plan.is-current .plan-match{opacity:1}
@media(max-width:650px){.personal-plans-window{width:90%}.personal-plan{font-size:16px;padding:0 12px;gap:8px}.plan-match{font-size:16px}.guidance-message{font-size:17px}}
@media(prefers-reduced-motion:reduce){.personal-plan,.plan-match{transition:none}.guidance-track,.personal-plans-track{will-change:auto}}

/* Inactive previews retain white surfaces, with opacity doing the quieting. */
.workout-row,.command-chip,.personal-plan{background:#fff;color:#58616a;opacity:.45;transition:opacity .55s ease,box-shadow .55s ease}
.workout-row>span.workout-name,.workout-row>span.workout-duration{color:#58616a}
.workout-row.is-current,.command-chip.is-current,.personal-plan.is-current{background:#fff;color:#58616a;opacity:1}
@media(prefers-reduced-motion:reduce){.workout-row,.command-chip,.personal-plan{transition:none}}

/* Program previews with clear time commitments and a consistent blue icon set. */
.personal-plans-demo{flex-direction:column;gap:8px}
.personal-plans-window{width:84%;height:224px;flex:none;mask-image:linear-gradient(transparent,#000 14%,#000 86%,transparent)}
.personal-plans-track{position:relative;top:-41px}
.personal-plan{height:94px;margin-bottom:12px;padding:16px 18px;justify-content:flex-start;gap:16px;border-radius:18px}
.personal-plan.is-current{box-shadow:0 6px 18px #335f8410}
.plan-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#eaf7ff,#d8ecfa);color:#548fb8}
.plan-icon svg{width:26px;height:26px}
.plan-body{min-width:0;display:flex;flex-direction:column;gap:9px;text-align:left}
.plan-title{font-size:18px;font-weight:500;line-height:1.2;letter-spacing:-.025em;color:#435b6b}
.plan-meta{display:flex;align-items:center;gap:14px;color:#7b8a95;font-size:16px;line-height:1.2;white-space:nowrap}
.plan-meta>span{display:flex;align-items:center;gap:5px}
.plan-meta>span+span{padding-left:14px;border-left:1px solid #dce5eb}
.plan-meta svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.plan-preview-note{font-size:16px;color:#7b858c;line-height:1.2}
@media(max-width:650px){.personal-plans-window{width:94%;height:214px}.personal-plans-track{top:-46px}.personal-plan{padding:14px 12px;gap:10px}.plan-icon{width:36px;height:40px;border-radius:12px}.plan-icon svg{width:23px;height:23px}.plan-title{font-size:16px}.plan-meta{gap:9px}.plan-meta>span+span{padding-left:9px}}

/* Shared visual language across all four feature previews. */
.feature-grid{--preview-ink:#435b6b;--preview-blue:#548fb8;--preview-shadow:0 6px 18px #335f8410;--preview-tint:linear-gradient(145deg,#eaf7ff,#d8ecfa)}
.workout-row{border-radius:18px}
.workout-row>span.workout-name,.workout-row.is-current>span.workout-name{color:var(--preview-ink);font-weight:500;letter-spacing:-.025em}
.workout-row>span.workout-duration{display:flex;align-items:center;gap:5px;color:var(--preview-blue);padding:8px 10px;background:var(--preview-tint);border-radius:10px}
.workout-duration svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.workout-row.is-current,.command-chip.is-current{box-shadow:var(--preview-shadow)}
.command-chip,.command-chip.is-current,.guidance-message{color:var(--preview-ink);font-weight:500;letter-spacing:-.025em}
.command-chip,.guidance-window{border-radius:18px}
.guidance-window{box-shadow:var(--preview-shadow)}
.listening-orb::after,.guidance-orb::after{background:var(--preview-tint)}
.voice-halo,.guidance-orb>.voice-halo{background:#e2edf4}
.listening-lines i{background:var(--preview-blue)}
.guidance-orb{color:var(--preview-blue)}
@media(max-width:650px){.workout-row{gap:7px}.workout-row>span.workout-duration{padding:7px;gap:4px}.workout-row>span.workout-name{font-size:16px}}

/* Titles lead each feature; previews keep their own unhurried rhythm. */
.feature-grid .feature{padding-top:30px;padding-bottom:16px}
.feature-grid .feature>h3{letter-spacing:-.04em;margin:0 auto 12px;min-height:65px;display:flex;flex-direction:column;justify-content:center}
.guidance-window{width:max-content;max-width:94%;height:auto;min-height:52px;overflow:visible;flex:none;padding:0 22px}
.guidance-track{will-change:auto}
.guidance-message{height:52px;margin:0;white-space:nowrap}
@media(max-width:650px){.feature-grid .feature{padding-top:26px;padding-bottom:12px}.feature-grid .feature>h3{min-height:60px;margin-bottom:8px}.guidance-window{padding:0 18px}}

/* Smaller artwork only; keep feature headings and card dimensions. */
.feature-grid .feature-art{transform:scale(.88);transform-origin:center}
.life-panel.human-goals{background:#edf5fa;color:#282c30;padding:70px 54px;max-width:1200px;margin:90px auto 0;text-align:left;border-radius:28px}
.human-goals-heading{text-align:center;margin-bottom:48px}
.human-goals-heading h2{color:#282c30}
.life-panel.human-goals p{font-size:16px;letter-spacing:-.01em;line-height:1.7;color:#64737d;max-width:none}
.human-goals-heading>p{margin-bottom:0}
.human-goals-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:32px}
.human-goals-list>li{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:48px;padding-bottom:32px;border-bottom:1px solid #d8e5ed}
.human-goals-list>li:last-child{padding-bottom:0;border-bottom:0}
.human-goals-list img{display:block;width:100%;height:245px;object-fit:cover;border-radius:20px}
.human-goals-list h3{font-size:32px;font-weight:450;line-height:1.12;letter-spacing:-.045em;margin:0 0 18px;color:#344e5f}
.life-panel.human-goals .human-goals-list p{margin:0;max-width:460px}
@media(max-width:800px){.life-panel.human-goals{padding:48px 28px}.human-goals-list>li{gap:28px}.human-goals-list h3{font-size:28px}.human-goals-list img{height:265px}}
@media(max-width:650px){.life-panel.human-goals{margin-top:60px;padding:40px 20px;border-radius:22px}.human-goals-heading{margin-bottom:32px}.human-goals-heading p br{display:none}.human-goals-list>li{grid-template-columns:1fr;gap:24px;padding-bottom:30px}.human-goals-list img{height:220px}.human-goals-list h3{font-size:29px}.human-goals-list{gap:30px}}

/* Real movement in the phone; preserve the existing overlays and bottom fade. */
.session-video{object-position:center center}
.video-toggle{position:absolute;z-index:4;top:63px;right:16px;display:grid;place-items:center;width:38px;height:38px;min-width:38px;padding:0;border:1px solid #ffffff50;border-radius:50%;background:#20313c55;backdrop-filter:blur(8px);color:white;font-size:16px;line-height:1}
.video-toggle[hidden]{display:none}
.video-toggle::after{content:'';position:absolute;inset:-4px}

.session-phone .session-overlay{top:365px}
@media(max-width:650px){.session-phone .session-overlay{top:355px}}

/* Keep the full-body home exercise visible above the timer. */
.session-shade{background:linear-gradient(#172229a6,transparent 24%,transparent 53%,#13212d66 69%,#13212dee)}

.hero header .header-logo{display:block;width:106px;height:auto;flex:none}
@media(max-width:650px){.hero header .header-logo{width:97px;height:auto}}

.hero-copy h1{max-width:1200px;padding-left:20px;padding-right:20px}

/* Keep the session timer above the phone's lower fade. */
.session-phone .session-overlay{top:310px;z-index:2;text-shadow:0 2px 16px #13212d80}
.session-overlay .timer-track{background:#ffffff60;width:180px;height:5px}
.session-overlay .timer-track i{background:#dcf3ff;transition:width .2s linear}
@media(max-width:650px){.session-phone .session-overlay{top:305px}}
@media(prefers-reduced-motion:reduce){.session-overlay .timer-track i{transition:none}}

/* Crossfade the camera feeds without moving the phone or the page. */
.session-video{opacity:0;transition:opacity .7s cubic-bezier(.22,.61,.36,1);pointer-events:none}
.session-video.is-active{opacity:1}
.session-phone .session-header,.session-phone .status{z-index:2}
.session-phone .session-header h3{font-size:26px;letter-spacing:-.035em}
.program-card{position:relative;overflow:hidden}
.program-card::after{content:'';position:absolute;bottom:9px;left:18px;width:calc(100% - 36px);transform:scaleX(var(--preview-progress,0));transform-origin:left;height:2px;border-radius:2px;background:#75b5db;opacity:0;transition:opacity .35s}
.program-card.selected::after{opacity:.7}
@media(prefers-reduced-motion:reduce){.session-video,.program-card::after{transition:none}}

/* Consistent session heading across all four previews. */
.session-phone .session-header{padding:0 20px}
.session-phone .session-header h3{font-size:22px;margin:3px 0 0}
/* Match the three standing subjects in-camera; preserve the seated composition. */
.session-video[data-framing="strength"]{transform:none}
.session-video[data-framing="balance"]{transform:scale(1.14)}
.session-phone .session-overlay{transition:none}


/* A visual explanation of the phone setup and hands-free coaching. */
.how .section-title{margin-bottom:42px}
.setup-steps{gap:24px;text-align:left}
.setup-steps article{min-width:0}
.setup-photo{position:relative;margin:0 0 23px;aspect-ratio:4/3;overflow:hidden;border-radius:22px;background:#eef0f0}
.setup-photo img{display:block;width:100%;height:100%;object-fit:cover}
.setup-steps h3{font-size:24px;font-weight:500;letter-spacing:-.035em;line-height:1.2;margin:0 0 12px}
.setup-steps p{font-size:16px;letter-spacing:-.01em;line-height:1.6;max-width:34ch;margin:0;color:#58616a}
.setup-cue{position:absolute;left:14px;bottom:14px;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;background:#ffffffed;color:#476474;font-size:16px;letter-spacing:-.01em;box-shadow:0 4px 18px #233e4d0a}
.setup-cue svg{width:20px;height:20px;flex:none;color:#599bc6}
@media(max-width:900px) and (min-width:651px){.setup-steps{gap:18px}.setup-steps h3{font-size:21px}.setup-cue{left:8px;bottom:8px;padding:8px 10px;gap:6px}.setup-cue svg{width:17px}}
@media(max-width:650px){.how .section-title{margin-bottom:30px}.setup-steps{gap:34px}.setup-photo{margin-bottom:18px;border-radius:20px}.setup-steps h3{font-size:24px}.setup-steps p{max-width:none}}

/* A little more headroom beneath the iOS island for the standing previews. */
.session-video[data-framing="stairs"]{transform:none}

/* Compact mobile navigation, keeping the desktop links. */
.nav-toggle{display:none}
@media(max-width:800px){
 .hero>header{flex-wrap:nowrap;gap:16px}
 .nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;border:0;background:transparent;color:white;flex:none;filter:none}
 .nav-toggle span{display:block;width:22px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
 .nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .nav-open .nav-toggle span:nth-child(2){opacity:0}
 .nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .hero-nav{display:none;position:absolute;left:16px;right:16px;top:calc(100% - 4px);width:auto;padding:12px 20px;background:#328cc8f5;backdrop-filter:blur(18px);border:1px solid #ffffff26;border-radius:20px;box-shadow:0 12px 32px #1e608b18}
 .nav-open .hero-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;animation:nav-reveal .18s ease-out}
 .hero-nav a{font-size:16px;padding:13px 4px;color:#ffffffe6}
 .hero-nav a:hover,.hero-nav a:focus-visible{color:white}
}
@keyframes nav-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.nav-toggle span{transition:none}.nav-open .hero-nav{animation:none}}

/* A photographic story, one everyday moment at a time. */
.moments{max-width:1200px;margin:100px auto 0}
.moments-heading{text-align:center;margin:0 auto 40px;padding:0 20px}
.moments-heading h2{margin-bottom:22px}
.moments-heading p{color:#64737d;font-size:16px;letter-spacing:-.01em;margin:0}
.moments-stage{position:relative;isolation:isolate;height:640px;overflow:hidden;border-radius:28px;background:#576256;color:#fff}
.moment-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.2s ease,visibility 1.2s;pointer-events:none}
.moment-slide.is-active{opacity:1;visibility:visible}
.moment-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#14221f28 48%,#14221fcc 100%)}
.moment-slide img{width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1)}
.moment-slide.is-active img{animation:moment-drift 9s ease-out both}
@keyframes moment-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
.moment-slide[data-moment="1"] img{object-position:center 38%}
.moment-copy{position:absolute;z-index:1;left:50px;right:50px;bottom:108px;transform:translateY(10px);transition:transform 1.2s ease,opacity .7s;opacity:0}
.is-active .moment-copy{transform:translateY(0);opacity:1}
.moment-copy h3{font-size:clamp(32px,4vw,54px);font-weight:450;line-height:1.08;letter-spacing:-.05em;margin:0 0 18px;color:#fff}
.moment-copy p{font-size:16px;letter-spacing:-.01em;line-height:1.6;color:#ffffffe8;margin:0;max-width:38ch}
.moments-controls{position:absolute;z-index:2;bottom:28px;left:50px;right:40px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.moments-choices{display:flex;gap:24px}
.moments-choices button{position:relative;border:0;border-radius:0;color:#ffffffb3;background:transparent;padding:12px 0;font-size:16px;letter-spacing:-.01em;transition:color .3s}
.moments-choices button:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:2px;background:#fff;opacity:0;transform:scaleX(.4);transition:opacity .4s,transform .4s}
.moments-choices button.is-active,.moments-choices button:hover{color:#fff}
.moments-choices button.is-active:after{opacity:.9;transform:scaleX(1)}
.moments-stage.is-paused img{animation-play-state:paused}
@media(max-width:650px){.moments{margin-top:65px}.moments-heading{margin-bottom:30px}.moments-stage{height:520px;border-radius:22px}.moment-copy{left:24px;right:24px;bottom:105px}.moment-copy h3{font-size:35px}.moments-controls{left:24px;right:24px;bottom:22px}.moments-choices{gap:20px}.moment-slide img{object-position:52% center}}
@media(prefers-reduced-motion:reduce){.moment-slide,.moment-slide img,.moment-copy{transition:none}.moment-slide.is-active img{transform:none;animation:none}}

/* High-resolution photography, with crops chosen to keep faces in view. */
.moment-slide[data-moment="0"] img{object-position:center 35%}
.moment-slide[data-moment="1"] img{object-position:center 25%}
.moment-slide[data-moment="2"] img{object-position:center 30%}
.moment-slide[data-moment="3"] img{object-position:center 29%}
@media(max-width:650px){.moments-choices{gap:22px}.moment-slide[data-moment="0"] img{object-position:47% center}.moment-slide[data-moment="1"] img{object-position:55% center}.moment-slide[data-moment="2"] img{object-position:38% center}.moment-slide[data-moment="3"] img{object-position:center 35%}}
@media(max-width:360px){.moments-choices{gap:16px}.moments-choices button{font-size:15px}}

.moment-slide picture{display:block;width:100%;height:100%}
@media(max-width:650px){.moment-slide[data-moment="1"] img{object-position:center 35%}.moment-slide[data-moment="2"] img{object-position:18% center}}

/* Editorial stories and an invitation to collaborate. */
.stories-section{max-width:1200px;padding:90px 0 0}
.stories-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}.stories-heading h2{font-size:44px;margin:0}.stories-heading>p{font-size:16px;letter-spacing:-.01em;color:#64737d;max-width:250px;margin:0 0 4px}
.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.story-card{display:block;min-width:0}.story-card img{display:block;width:100%;height:235px;object-fit:cover;border-radius:20px}.story-card:nth-child(2) img{object-position:center 29%}.story-card:nth-child(3) img{object-position:center 35%}
.story-card>div{padding:24px 4px 0}.story-card h3{font-size:26px;font-weight:500;line-height:1.15;letter-spacing:-.045em;margin:0 0 14px}.story-card p{font-size:16px;color:#64737d;letter-spacing:-.01em;margin:0 0 20px;max-width:31ch}.story-card span{color:#4587b0;font-size:16px;letter-spacing:-.01em;transition:color .25s}.story-card:hover span{color:#245d80}
.partners-section{max-width:1200px;margin:90px auto 0;display:grid;grid-template-columns:1.2fr 1fr;gap:64px;padding:48px;border-radius:26px;background:#edf5fa;align-items:center}.partners-section h2{font-size:40px;margin-bottom:22px}.partners-section p{font-size:16px;letter-spacing:-.01em;color:#64737d;max-width:44ch;margin-bottom:22px}.text-action{padding:8px 0;border:0;background:transparent;color:#397fae;font-size:16px;letter-spacing:-.01em}.partners-section ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.partners-section li{display:flex;align-items:center;gap:18px;background:#ffffffa6;padding:20px;border-radius:16px;font-size:18px;letter-spacing:-.02em;color:#486273}.partners-section li span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#e0f1fc;color:#599bc6;font-size:24px}
/* The entire page ending lives inside one blue footer. */
footer.site-footer{display:block;background:radial-gradient(ellipse at 10% 0%,#86c7ed80,transparent 60%),linear-gradient(125deg,#54abe0,#328ecb);color:white;border-radius:26px;padding:0 54px;overflow:hidden;font-size:16px;letter-spacing:-.01em}
.footer-cta{text-align:center;padding:76px 0 65px}.footer-cta h2{font-size:clamp(36px,4.4vw,60px);letter-spacing:-.055em;margin:0 0 24px}.footer-cta>p{font-size:16px;max-width:48ch;line-height:1.6;margin:0 auto 28px;color:#ffffffe6}
.footer-grid{border-top:1px solid #ffffff30;display:grid;grid-template-columns:1.7fr 1fr 1fr .8fr 1fr;gap:32px;padding:46px 0}
.site-footer .brand{color:white}.footer-logo{display:block;width:106px;height:auto}.footer-about>p{max-width:24ch;font-size:16px;line-height:1.6;color:#ffffffe0;margin:22px 0 0}
.footer-grid h3{font-size:16px;font-weight:500;letter-spacing:-.01em;margin:0 0 18px;color:white}.footer-grid nav,.footer-social{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-grid nav h3,.footer-social h3{margin-bottom:6px}
.footer-grid a:not(.brand),.footer-grid button,.footer-social>span{color:#ffffffcf;font-size:16px;letter-spacing:-.01em;line-height:1.5;transition:color .25s}.footer-grid button{border:0;background:transparent;padding:0;text-align:left}.footer-grid a:hover,.footer-grid button:hover{color:#fff;filter:none}.social-pending{opacity:.65}
.footer-bottom{border-top:1px solid #ffffff30;padding:24px 0;display:flex;justify-content:space-between;gap:20px;color:#ffffffcf;font-size:14px}.footer-bottom a{transition:color .25s}.footer-bottom a:hover{color:#fff}.site-footer :focus-visible{outline-color:#fff}
.info-dialog{border:0;border-radius:24px;padding:44px 32px 30px;max-width:min(480px,90vw);color:#435662;background:#f8fbfd}.info-dialog::backdrop{background:#15394d60;backdrop-filter:blur(4px)}.info-dialog h2{font-size:34px;letter-spacing:-.04em;margin-bottom:20px}.info-dialog p{font-size:16px;color:#64737d}
@media(max-width:950px){.stories-section{padding-left:20px;padding-right:20px}.footer-grid{grid-template-columns:repeat(4,1fr)}.footer-about{grid-column:1/-1}.footer-about>p{max-width:38ch}.partners-section{gap:32px;padding:36px}.story-card h3{font-size:23px}}
@media(max-width:650px){.stories-section{padding:65px 14px 0}.stories-heading{display:block}.stories-heading h2{font-size:35px;margin-bottom:18px}.stories-heading>p{max-width:none}.story-grid{grid-template-columns:1fr;gap:36px}.story-card img{height:230px}.story-card h3{font-size:27px}.story-card p{max-width:none}.partners-section{grid-template-columns:1fr;gap:26px;margin-top:64px;padding:28px 22px;border-radius:22px}.partners-section h2{font-size:34px}.partners-section li{font-size:16px}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:34px 20px;padding:32px 0}footer.site-footer{padding:0 24px;border-radius:22px}.footer-cta{padding:54px 0 44px}.footer-cta h2{font-size:37px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:12px;font-size:13px}}

/* Standalone footer, without the closing promotional block. */
.site-footer .footer-grid{border-top:0}
