 :root{--violet:#7352a7;--pink:#e5a9c2;--ink:#342742;--muted:#756a7d;--cream:#faf7f2;--lav:#eee4f7;--line:rgba(52,39,66,.13);--shell:min(1160px,calc(100% - 36px))}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6}a{text-decoration:none;color:inherit}.shell{width:var(--shell);margin:auto}.demo-note{background:#382b47;color:#f3e9fa;text-align:center;padding:8px;font-size:.78rem}.header{position:sticky;top:0;z-index:10;background:rgba(250,247,242,.9);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{height:80px;display:flex;align-items:center;justify-content:space-between}.logo{font-weight:950;letter-spacing:.17em}.nav nav{display:flex;gap:28px;align-items:center;font-weight:700}.nav .cta{background:var(--violet);color:white;padding:11px 17px;border-radius:999px}.menu{display:none;border:0;background:none;font-size:1.5rem}.hero{min-height:760px;display:grid;align-items:center;overflow:hidden;position:relative;background:linear-gradient(140deg,#fbf7f3,#efe4f7)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative;z-index:2}.eyebrow{font-size:.72rem;letter-spacing:.18em;color:var(--violet);font-weight:900}.hero h1,.page-hero h1{font-size:clamp(3.4rem,6.5vw,6.7rem);line-height:.92;letter-spacing:-.065em;margin:20px 0}.hero p{font-size:1.08rem;color:var(--muted);max-width:590px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{padding:14px 20px;border-radius:999px;font-weight:800}.btn.primary{background:var(--violet);color:white}.btn.secondary{border:1px solid var(--line);background:white}.art{height:540px;position:relative}.orb{position:absolute;border-radius:50%}.orb.main{width:420px;height:420px;background:linear-gradient(145deg,#aa87d6,#edb8cc);right:10px;top:30px}.orb.small{width:180px;height:180px;background:#ffe0a9;left:10px;bottom:20px}.silhouette{position:absolute;width:170px;height:380px;right:135px;top:70px;border:32px solid rgba(52,39,66,.75);border-top-color:transparent;border-radius:50% 50% 45% 45%;transform:rotate(-12deg)}.rating{position:absolute;left:0;top:80px;background:white;border-radius:20px;padding:18px;box-shadow:0 25px 70px rgba(52,39,66,.14)}.rating strong{font-size:1.7rem}.rating small{display:block;color:var(--muted)}.section{padding:100px 0}.head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.head h2{font-size:clamp(2.4rem,4.3vw,4.2rem);line-height:1;letter-spacing:-.055em;margin:10px 0}.head p{max-width:430px;color:var(--muted)}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.class-card{background:white;border:1px solid var(--line);border-radius:26px;padding:28px;min-height:400px;display:flex;flex-direction:column}.class-card:nth-child(2){background:var(--violet);color:white}.class-card .shape{height:150px;border-radius:22px;background:linear-gradient(145deg,var(--lav),#f4c7d8);margin-bottom:25px;position:relative;overflow:hidden}.class-card .shape:after{content:"";position:absolute;width:150px;height:150px;border:25px solid rgba(115,82,167,.38);border-radius:50%;right:-30px;bottom:-40px}.class-card h3{font-size:1.6rem}.class-card p{color:var(--muted)}.class-card:nth-child(2) p{color:rgba(255,255,255,.65)}.class-card a{margin-top:auto;font-weight:800}.quote{background:#eadff3;padding:95px 0}.quote blockquote{font-size:clamp(2.3rem,4.6vw,4.5rem);line-height:1.05;letter-spacing:-.055em;margin:0;max-width:980px}.quote p{color:var(--violet);font-weight:800}.page-hero{background:linear-gradient(140deg,#e9dcf3,#fff6f1);padding:110px 0}.page-hero p{max-width:720px;color:var(--muted)}.schedule{display:grid;gap:12px}.schedule article{display:grid;grid-template-columns:110px 1fr 130px;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:22px 0}.schedule article>span{color:var(--violet);font-weight:900}.schedule h3{margin:0}.coach-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.coach{background:white;border:1px solid var(--line);border-radius:26px;padding:28px}.coach-visual{height:300px;border-radius:20px;background:linear-gradient(145deg,#c9ade3,#f0becf);position:relative;overflow:hidden}.coach-visual:after{content:"";position:absolute;width:180px;height:260px;border:35px solid rgba(52,39,66,.65);border-top-color:transparent;border-radius:50%;right:60px;top:30px;transform:rotate(8deg)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.form{background:white;border:1px solid var(--line);border-radius:26px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.form label{display:grid;gap:5px;font-size:.78rem;font-weight:700}.form input,.form select,.form textarea{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fdfbfe}.form .full{grid-column:1/-1}.form button{border:0;border-radius:999px;background:var(--violet);color:white;padding:14px;font-weight:800}.result{background:#eee2f6;color:#4d3566;padding:12px;border-radius:10px}.footer{background:#2d2239;color:white;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer p,.footer a{color:rgba(255,255,255,.58)}.footer-col{display:grid;gap:8px}.foot-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:20px;color:rgba(255,255,255,.35);font-size:.78rem}@media(max-width:850px){.nav nav{display:none;position:absolute;top:80px;left:18px;right:18px;background:white;padding:18px;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.12);flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.menu{display:block}.hero-grid,.contact-grid{grid-template-columns:1fr}.art{height:430px}.class-grid{grid-template-columns:1fr}.coach-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:600px){.hero{min-height:auto;padding:75px 0}.hero h1,.page-hero h1{font-size:3.2rem}.section{padding:75px 0}.head{display:block}.schedule article{grid-template-columns:70px 1fr}.schedule article a{grid-column:2}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.orb.main{width:340px;height:340px}.silhouette{right:90px}}