:root{--plum:#3D2C4E;--plum2:#2a1e37;--coral:#E07A5F;--coral2:#ec8f76;--cream:#FBF6F0;--ink:#2b2233;--mute:#6e6575}
*{box-sizing:border-box;margin:0;padding:0}
body{font:400 17px/1.65 'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--cream)}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
.demo{position:sticky;top:0;z-index:50;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;padding:8px 16px;background:#07070A;color:#F3F1EC;font:600 13px 'DM Sans',sans-serif}
.demo b{color:#FF2E40}.demo a{text-decoration:underline}
.wrap{width:min(1120px,100%);margin:0 auto;padding:0 22px}
.steps-bar{display:flex;justify-content:center;gap:10px;padding:18px 16px;font:600 13px 'DM Sans',sans-serif;color:var(--mute)}
.steps-bar span{display:flex;align-items:center;gap:8px}
.steps-bar i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#eadfd3;font-style:normal;font-size:12px}
.steps-bar .on{color:var(--plum)}.steps-bar .on i{background:var(--coral);color:#fff}
.steps-bar .sep{width:30px;height:2px;background:#e0d4c6;align-self:center}
.brand{text-align:center;font:400 30px 'DM Serif Display',serif;color:var(--plum);padding:10px 0 0}
h1{font:400 clamp(40px,5vw,66px)/1.05 'DM Serif Display',serif;color:var(--plum)}
h1 em{color:var(--coral);font-style:italic}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:17px 28px;border-radius:12px;background:var(--coral);color:#fff;font:700 17px 'DM Sans',sans-serif;border:0;cursor:pointer;box-shadow:0 14px 30px -12px rgba(224,122,95,.7);transition:transform .2s,background .2s}
.btn:hover{background:var(--coral2);transform:translateY(-2px)}
.optin{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding:40px 0 80px}
.tag{display:inline-block;padding:7px 14px;border-radius:999px;background:#f6dcd3;color:#a0452e;font-weight:700;font-size:13px;letter-spacing:.06em;margin-bottom:18px}
.optin p.lead{margin:20px 0;color:var(--mute);font-size:19px}
.bul{list-style:none;display:grid;gap:10px;margin:0 0 26px}
.bul li{display:flex;gap:12px}.bul li::before{content:"✦";color:var(--coral)}
.form{background:#fff;border-radius:18px;padding:26px;box-shadow:0 30px 60px -30px rgba(61,44,78,.45)}
.form input{width:100%;padding:15px;border-radius:10px;border:1px solid #e3d9ce;font:400 16px 'DM Sans',sans-serif;margin-bottom:12px;background:var(--cream)}
.form .btn{width:100%}
.form small{display:block;text-align:center;color:var(--mute);font-size:13px;margin-top:10px}
.mock{position:relative}
.mock img{border-radius:20px}
.mock .cover{position:absolute;left:12%;top:16%;width:34%;aspect-ratio:3/4;border-radius:6px;background:linear-gradient(160deg,var(--plum),var(--plum2));color:#fff;padding:14px;font:400 18px/1.1 'DM Serif Display',serif;box-shadow:0 20px 40px -10px rgba(0,0,0,.5);transform:rotate(-6deg)}
.mock .cover small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:.14em;color:var(--coral2);margin-bottom:8px}
.proof{background:var(--plum);color:#f2e9f7;padding:60px 0}
.proof .wrap{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
.proof img{width:220px;height:220px;object-fit:cover;border-radius:50%;border:6px solid rgba(255,255,255,.12)}
.proof h2{font:400 34px 'DM Serif Display',serif}
.proof p{color:#d8cde2;margin-top:10px}
.center{text-align:center;padding:50px 0 80px}
.video{position:relative;max-width:820px;margin:30px auto;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:var(--plum) url(../../img/coach-hero.webp) center/cover}
.video::before{content:"";position:absolute;inset:0;background:rgba(42,30,55,.45)}
.video span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:86px;height:86px;border-radius:50%;background:var(--coral);display:grid;place-items:center;box-shadow:0 0 0 14px rgba(224,122,95,.25)}
.video span::after{content:"";border-left:24px solid #fff;border-block:15px solid transparent;margin-left:6px}
.center p{color:var(--mute);max-width:600px;margin:14px auto}
.cal{max-width:820px;margin:30px auto;background:#fff;border-radius:18px;padding:28px;box-shadow:0 30px 60px -30px rgba(61,44,78,.45);display:grid;grid-template-columns:1fr 1fr;gap:28px;text-align:left}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;font-size:14px}
.days b{font-size:12px;color:var(--mute);font-weight:600}
.days button{aspect-ratio:1;border-radius:50%;border:0;background:transparent;font:500 14px 'DM Sans',sans-serif;cursor:pointer;color:#bbb}
.days button.av{color:var(--plum);background:#f6dcd3;font-weight:700}
.days button.av.on{background:var(--coral);color:#fff}
.slots{display:grid;gap:8px;align-content:start}
.slots button{padding:13px;border-radius:10px;border:1px solid #e3d9ce;background:var(--cream);font:600 15px 'DM Sans',sans-serif;cursor:pointer;color:var(--plum)}
.slots button.on,.slots button:hover{border-color:var(--coral);background:#fff3ef}
footer.site{padding:30px 0;color:var(--mute);font-size:14px;text-align:center}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#07070A;color:#fff;padding:14px 20px;border-radius:10px;opacity:0;transition:opacity .3s;pointer-events:none;z-index:60}
.toast.on{opacity:1}
@media (max-width:860px){.optin,.proof .wrap,.cal{grid-template-columns:1fr}.proof img{width:150px;height:150px}}
