@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--ink:#202124;--muted:#6f7377;--paper:#f8f8f6;--white:#fff;--line:#e5e5e1;--accent:#ef3c23;--accent-dark:#cb2e1a;--soft-accent:#fff0eb;--blue:#2855ad}*{box-sizing:border-box}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:DM Sans,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.site-header{height:78px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nav-wrap{max-width:1240px;height:100%;padding:0 28px;margin:auto;display:flex;align-items:center;justify-content:space-between}.brand,.login-brand{gap:10px;font-family:Space Grotesk,sans-serif;font-weight:700;font-size:19px;letter-spacing:.14em}.brand,.brand-mark,.login-brand{display:inline-flex;align-items:center}.brand-mark{width:34px;height:34px;justify-content:center;color:#fff;background:var(--accent);border-radius:9px;box-shadow:0 7px 16px rgba(239,60,35,.2)}.main-nav{display:flex;align-items:center;gap:35px;color:#777;font-size:14px;font-weight:600}.main-nav a{padding:28px 0 25px;border-bottom:2px solid transparent}.main-nav a.active,.main-nav a:hover{color:var(--ink);border-color:var(--accent)}.nav-logout{display:inline-flex;gap:7px;align-items:center;color:#777;border:0;background:none;font-size:13px;font-weight:600;padding:8px 0}.nav-logout:hover{color:var(--accent)}.mobile-menu{display:none;background:transparent;border:0}.page-shell{max-width:1240px;margin:auto;padding:57px 28px 70px}.hero-grid{min-height:360px;display:grid;grid-template-columns:1fr 325px;grid-gap:28px;gap:28px;align-items:stretch}.hero-copy{padding:34px 16px 26px 2px}.eyebrow{display:inline-flex;gap:7px;align-items:center;color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,sans-serif}h1{font-size:clamp(48px,6vw,76px);line-height:.99;letter-spacing:-.07em;margin:21px 0;max-width:730px}.hero-copy em,.login-content em,h1 em{color:var(--accent);font-style:normal}.hero-copy p{max-width:520px;color:var(--muted);line-height:1.7;font-size:16px}.hero-actions{display:flex;align-items:center;gap:23px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 20px;border-radius:7px;border:1px solid transparent;font-weight:700;font-size:13px;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:white;background:var(--accent);box-shadow:0 10px 22px rgba(239,60,35,.19)}.button-primary:hover{background:var(--accent-dark);box-shadow:0 13px 26px rgba(239,60,35,.27)}.button-light,.button-secondary{color:var(--ink);background:#fff}.button-secondary{border-color:var(--line)}.button-ghost{color:var(--muted);background:transparent;border:0}.button-full{width:100%}.hero-note{color:var(--muted);font-size:12px;gap:7px}.hero-note,.tiny-check{display:inline-flex;align-items:center}.tiny-check{justify-content:center;width:21px;height:21px;color:var(--accent);background:var(--soft-accent);border-radius:50%}.hero-stat{position:relative;padding:35px;overflow:hidden;color:#fff;background:#25272b;border-radius:13px;box-shadow:0 18px 40px rgba(35,37,41,.14)}.stat-kicker{font-size:10px;letter-spacing:.18em;opacity:.65}.hero-stat strong{display:block;margin-top:53px;font-family:Space Grotesk;font-size:124px;line-height:.8;letter-spacing:-.1em}.stat-caption{display:block;margin-top:19px;color:#c5c5c5;font-size:13px;line-height:1.5}.stat-spark{position:absolute;width:230px;height:230px;right:-85px;bottom:-84px;border:1px solid rgba(255,255,255,.2);border-radius:50%}.stat-spark:after{content:"";position:absolute;inset:26px;border:1px solid rgba(239,60,35,.6);border-radius:50%}.today-strip{min-height:135px;display:flex;justify-content:space-between;align-items:center;padding:30px 36px;margin:35px 0 60px;background:var(--accent);color:#fff;border-radius:12px;box-shadow:0 18px 35px rgba(239,60,35,.17)}.eyebrow-dark{color:rgba(255,255,255,.7)}.today-strip h2{margin:10px 0 5px;font-size:27px;letter-spacing:-.04em}.today-strip p{margin:0;color:rgba(255,255,255,.8);font-size:13px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.section-heading h2{margin:8px 0 0;font-size:30px;letter-spacing:-.05em}.progress-label{color:#929292;font-size:12px}.week-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:14px;gap:14px}.workout-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:transform .25s,box-shadow .25s}.workout-card.featured,.workout-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(33,35,38,.1)}.workout-card.featured{border-color:rgba(239,60,35,.4)}.card-topline{display:flex;justify-content:space-between;align-items:center;gap:4px;padding:16px 16px 0}.day-label{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.intensity{display:inline-flex;align-items:center;gap:5px;color:#878787;white-space:nowrap;font-size:10px}.intensity-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#b8b8b8}.intensity-medium .intensity-dot{background:#e9a13f}.intensity-high .intensity-dot{background:var(--accent)}.card-art{height:145px;padding:6px 13px 0;background:linear-gradient(145deg,#fff,#f3f3f0)}.card-body{padding:16px}.card-body h3{margin-bottom:8px;font-size:18px;letter-spacing:-.04em}.card-body p{min-height:56px;margin-bottom:15px;color:var(--muted);font-size:12px;line-height:1.55}.card-meta{display:flex;gap:11px;color:#8c8c8c;font-size:10px}.card-meta span{display:inline-flex;align-items:center;gap:4px}.card-link{display:flex;align-items:center;justify-content:space-between;padding-top:16px;margin-top:16px;border-top:1px solid var(--line);color:var(--accent);font-size:12px;font-weight:700}.card-link svg{transition:transform .2s}.card-link:hover svg{transform:translate(3px,-3px)}.exercise-art{position:relative;width:100%;height:245px;display:flex;align-items:center;justify-content:center;overflow:hidden}.exercise-art svg{width:92%;height:92%;overflow:visible}.exercise-art-compact{height:140px}.exercise-art-compact svg{width:100%}.art-line{stroke:#27292d;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.art-accent{stroke:var(--accent);stroke-width:3}.art-ground{stroke:#deded9;stroke-width:2;stroke-linecap:round}.figure-animate{transform-origin:center;animation:breathe 2.4s ease-in-out infinite}.art-plank .figure-animate,.art-pushup .figure-animate{animation-name:plankMove}.art-cardio .figure-animate{animation-name:pulse}.art-lunge .figure-animate{animation-name:lungeMove}.art-core .figure-animate{animation-name:coreMove}.art-orbit{position:absolute;display:block;width:8px;height:8px;border-radius:50%;background:#f2b3a8;opacity:.65}.orbit-one{top:24%;right:16%;animation:floatOne 3s ease-in-out infinite}.orbit-two{bottom:25%;left:16%;width:5px;height:5px;background:#e8ba61;animation:floatTwo 3.5s ease-in-out infinite}.safety-note{margin:34px 0 0;color:#999;font-size:11px;text-align:center}.loading-state{min-height:60vh;display:flex;justify-content:center;align-items:center;gap:10px;color:var(--muted);font-size:14px}.loader{width:17px;height:17px;border:2px solid #f5c5bc;border-top:2px solid var(--accent);border-radius:50%;animation:spin .8s linear infinite}.feedback{margin:60px auto;max-width:500px;padding:20px;border-radius:8px}.error-box{color:#a33120;background:#fff0ed}.login-page{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1fr 1fr;background:#fff}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:43px 10%;overflow:hidden;color:white;background:#25272b}.login-brand,.login-quote{position:relative;z-index:1}.login-quote{margin-bottom:20%}.login-quote svg{color:var(--accent)}.login-quote p{margin:18px 0 12px;font-family:Space Grotesk;font-size:clamp(35px,4vw,61px);line-height:.98;letter-spacing:-.07em}.login-quote em{color:#ff745f;font-style:normal}.login-quote span{color:#ababab;font-size:13px}.login-lines{position:absolute;width:560px;height:560px;right:-190px;bottom:-160px;border:1px solid rgba(255,255,255,.18);border-radius:50%}.login-lines:after,.login-lines:before{content:"";position:absolute;border:1px solid rgba(239,60,35,.65);border-radius:50%}.login-lines:before{inset:43px}.login-lines:after{inset:89px}.login-panel{display:flex;align-items:center;padding:60px 12%}.login-content{width:min(100%,390px)}.login-content h1{margin:23px 0 17px;font-size:59px}.login-intro{color:var(--muted);font-size:15px;line-height:1.6}.login-form{margin-top:34px}.login-form label{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:9px}.input-wrap{height:53px;display:flex;align-items:center;gap:10px;padding:0 15px;margin-bottom:13px;color:#a5a5a5;border:1px solid var(--line);border-radius:7px;transition:border .2s,box-shadow .2s}.input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px rgba(239,60,35,.1)}.input-wrap input{width:100%;border:0;outline:0;color:var(--ink);background:transparent;letter-spacing:.32em;font-size:20px}.form-error{margin:0 0 14px;color:var(--accent-dark);font-size:12px}.login-footer{margin-top:34px;color:#aaa;font-size:11px}.back-link{display:inline-flex;gap:7px;align-items:center;color:#858585;font-size:12px;font-weight:700}.back-link:hover{color:var(--accent)}.detail-page{padding-top:35px}.detail-hero{display:grid;grid-template-columns:1fr 460px;grid-gap:55px;gap:55px;align-items:center;min-height:415px}.detail-hero h1{margin:18px 0 17px;font-size:clamp(46px,6vw,73px)}.detail-hero p{max-width:520px;color:var(--muted);line-height:1.7}.detail-tags{display:flex;flex-wrap:wrap;align-items:center;gap:17px;margin:25px 0 30px}.plain-tag{display:inline-flex;align-items:center;gap:6px;color:#838383;font-size:12px}.detail-art{background:#fff;border-radius:13px}.exercise-list{padding-top:40px}.exercise-row{display:grid;grid-template-columns:44px 130px 1fr auto;grid-gap:18px;gap:18px;align-items:center;min-height:133px;padding:14px 23px;margin-bottom:10px;background:#fff;border:1px solid var(--line);border-radius:10px}.exercise-number{color:#b4b4b4;font-family:Space Grotesk;font-size:21px}.exercise-row .exercise-art{height:100px;background:#fafaf8;border-radius:6px}.exercise-row .art-orbit{display:none}.exercise-info h3{margin:0 0 5px;font-size:17px}.exercise-info p{margin-bottom:8px;color:var(--muted);font-size:12px}.exercise-info span{color:var(--accent);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.exercise-row>strong{color:var(--ink);font-family:Space Grotesk;font-size:14px}.session-page{max-width:1040px;padding-top:35px}.back-button{border:0;background:transparent;padding:0}.session-header{display:flex;justify-content:space-between;align-items:flex-end;margin:42px 0 23px}.session-header h1{margin:12px 0 0;font-size:42px}.session-clock{display:flex;flex-direction:column;align-items:flex-end}.session-clock span{color:#999;font-size:10px;letter-spacing:.13em}.session-clock strong{margin-top:5px;font-family:Space Grotesk;font-size:34px;letter-spacing:-.06em}.session-progress{height:5px;background:#e8e8e4;border-radius:8px;overflow:hidden}.session-progress span{display:block;height:100%;background:var(--accent);transition:width .3s}.active-exercise{display:grid;grid-template-columns:1fr 1fr;grid-gap:50px;gap:50px;align-items:center;margin-top:31px;padding:22px;background:#fff;border-radius:13px}.active-art{background:#f9f9f6;border-radius:9px}.active-art .exercise-art{height:390px}.active-copy{padding:25px}.step-label{color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.active-copy h2{margin:15px 0 10px;font-size:39px;letter-spacing:-.06em}.active-copy p{color:var(--muted);line-height:1.65}.target-box{display:grid;grid-template-columns:1fr auto;padding:15px 0 17px;margin:28px 0 27px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.target-box span{color:#999;font-size:10px;letter-spacing:.15em}.target-box strong{grid-row:span 2;color:var(--accent);font-family:Space Grotesk;font-size:34px}.target-box small{margin-top:8px;color:#aaa;font-size:11px}.session-actions{display:flex;gap:9px}.complete-card{max-width:630px;margin:8vh auto;padding:65px 45px;text-align:center;background:#fff;border-radius:15px;box-shadow:0 18px 45px rgba(33,35,38,.08)}.complete-icon{width:66px;height:66px;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;color:#fff;background:var(--accent);border-radius:50%}.complete-card h1{margin:17px 0 14px;font-size:57px}.complete-card p{max-width:420px;margin:0 auto;color:var(--muted);line-height:1.6}.complete-card .hero-actions{justify-content:center}@keyframes breathe{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@keyframes plankMove{0%,to{transform:translateX(0) rotate(0deg)}50%{transform:translateX(3px) rotate(.6deg)}}@keyframes pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-7px) scale(1.015)}}@keyframes lungeMove{0%,to{transform:translateX(0)}50%{transform:translateX(3px) translateY(3px)}}@keyframes coreMove{0%,to{transform:rotate(0)}50%{transform:rotate(-1deg)}}@keyframes floatOne{0%,to{transform:translate(0)}50%{transform:translate(-5px,-8px)}}@keyframes floatTwo{0%,to{transform:translate(0)}50%{transform:translate(5px,-6px)}}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:1050px){.week-grid{grid-template-columns:repeat(3,1fr)}.workout-card:last-child{display:none}.hero-grid{grid-template-columns:1fr 280px}.detail-hero{grid-template-columns:1fr 390px}}@media (max-width:760px){.site-header{height:67px}.nav-wrap{padding:0 18px}.mobile-menu{display:block;color:var(--ink)}.main-nav{display:none;position:absolute;top:67px;left:0;right:0;padding:10px 18px 20px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.06)}.main-nav.is-open{display:flex}.main-nav a{padding:13px 0;border:0}.nav-logout{padding:13px 0;border-top:1px solid var(--line)}.page-shell{padding:33px 18px 50px}.hero-grid{display:block;min-height:auto}.hero-copy{padding:22px 0 25px}.hero-copy h1{font-size:54px}.hero-stat{min-height:170px;padding:24px}.hero-stat strong{margin-top:30px;font-size:82px}.stat-caption{position:absolute;top:53px;left:145px}.today-strip{display:block;padding:24px;margin:25px 0 42px}.today-strip .button{margin-top:19px}.section-heading h2{font-size:26px}.week-grid{grid-template-columns:repeat(2,1fr)}.card-topline,.workout-card:last-child{display:block}.card-topline .intensity{margin-top:8px}.card-body p{min-height:auto}.login-page{display:block;min-height:calc(100vh - 67px)}.login-visual{min-height:285px;padding:25px 25px 0}.login-quote{margin:26px 0 35px}.login-quote p{margin:10px 0;font-size:38px}.login-panel{padding:43px 25px}.login-content h1{font-size:50px}.detail-hero{display:flex;flex-direction:column-reverse;gap:20px;align-items:stretch;padding-top:25px}.detail-art .exercise-art{height:260px}.detail-hero h1{font-size:53px}.exercise-row{grid-template-columns:29px 90px 1fr;gap:10px;padding:10px}.exercise-row>strong{grid-column:3}.exercise-info p{display:none}.session-header{margin-top:32px}.session-header h1{font-size:32px}.active-exercise{display:flex;flex-direction:column;gap:18px;padding:12px}.active-art .exercise-art{height:270px}.active-copy{width:100%;padding:13px}.active-copy h2{font-size:34px}.complete-card{padding:45px 22px}.complete-card h1{font-size:48px}}@media (max-width:430px){.week-grid{grid-template-columns:1fr}.card-art{height:170px}.hero-copy h1{font-size:48px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.detail-tags{gap:10px}.session-actions{flex-direction:column}.session-actions .button{width:100%}}