:root{--plum:#2B0F26;--plum2:#3D1636;--wine:#5A2149;--blush:#F2B8BC;--rose:#B5707A;--gold:#D9A866;--cream:#FBF5F1;--ink:#2B0F26;--muted:#6F5866}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Jost,system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6;font-size:17px}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.08;letter-spacing:-.01em}
em{font-style:italic;color:var(--rose)}
a{color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.narrow{max-width:760px}
.bar{background:var(--gold);color:var(--plum);font-size:14px;display:flex;gap:14px;justify-content:center;align-items:center;padding:9px 16px;flex-wrap:wrap;text-align:center}
.bar a{font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--plum)}
.nav{position:sticky;top:0;z-index:10;background:rgba(251,245,241,.92);backdrop-filter:blur(10px);display:flex;justify-content:space-between;align-items:center;padding:12px 28px;border-bottom:1px solid #EEDFD8}
.brand img{display:block;height:46px;width:auto}
.nav nav{display:flex;gap:26px;align-items:center;font-size:15px}
.nav nav a{text-decoration:none;color:var(--muted)}
.nav nav a:hover{color:var(--plum)}
.nav .pill{background:var(--plum);color:var(--cream)!important;padding:9px 18px;border-radius:99px}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 20%,#5A2149 0%,var(--plum) 55%,#1C0919 100%);color:var(--cream);padding:120px 24px 140px}
.silk{position:absolute;inset:0;width:100%;height:100%;opacity:.9}
.hero-in{position:relative;max-width:820px;margin:0 auto;text-align:center}
.eyebrow{text-transform:uppercase;letter-spacing:.26em;font-size:13px;color:var(--gold);margin-bottom:22px}
.hero h1{font-size:clamp(48px,8vw,96px);font-weight:500}
.hero h1 em{color:var(--blush)}
.lede{font-size:19px;max-width:640px;margin:26px auto 36px;color:#EBD9DE;font-weight:400}
.wait{display:flex;gap:10px;max-width:520px;margin:0 auto;background:rgba(255,255,255,.08);border:1px solid rgba(242,184,188,.35);padding:7px;border-radius:99px}
.wait input{flex:1;background:transparent;border:0;color:var(--cream);font:inherit;padding:10px 16px;outline:0}
.wait input::placeholder{color:#C9AFB8}
.wait button,.offer-form button,.btn{background:var(--blush);color:var(--plum);border:0;font:600 15px Jost,sans-serif;padding:13px 24px;border-radius:99px;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .15s,background .15s}
.wait button:hover,.offer-form button:hover,.btn:hover{transform:translateY(-1px);background:#F7CACD}
.fine{font-size:13.5px;color:#C9AFB8;margin-top:14px}
section{padding:96px 0}
section h2{font-size:clamp(36px,5vw,56px);text-align:center}
.sub{text-align:center;color:var(--muted);max-width:620px;margin:14px auto 52px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grid3 article{background:#fff;border-radius:22px;padding:36px 30px;border:1px solid #F0E2DC}
.num{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:42px;color:var(--gold)}
.grid3 h3{font-size:30px;margin:6px 0 10px}
.grid3 p{color:var(--muted)}
.classes{background:#F5E9E4}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{border-radius:22px;padding:150px 26px 26px;color:var(--cream);position:relative;overflow:hidden;min-height:300px}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 15%,rgba(242,184,188,.45),transparent 55%);pointer-events:none}
.card>*{position:relative}
.c1{background:linear-gradient(160deg,#6A2754,#2B0F26)}.c2{background:linear-gradient(160deg,#8C4A5A,#3D1636)}.c3{background:linear-gradient(160deg,#3D1636,#140612)}
.c4{background:linear-gradient(160deg,#B5707A,#5A2149)}.c5{background:linear-gradient(160deg,#A9814A,#4A2236)}.c6{background:linear-gradient(160deg,#5A2149,#2B0F26)}
.card .meta{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.card h3{font-size:32px;margin:6px 0 8px}
.card p{color:#EBD9DE;font-size:15.5px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.plan{background:#fff;border:1px solid #F0E2DC;border-radius:24px;padding:36px 30px;display:flex;flex-direction:column}
.plan.feat{background:var(--plum);color:var(--cream);border-color:var(--plum);transform:translateY(-10px);box-shadow:0 24px 50px -24px rgba(43,15,38,.6)}
.tag{font-size:12.5px;text-transform:uppercase;letter-spacing:.2em;color:var(--gold)}
.plan h3{font-size:58px;margin:8px 0 4px}
.plan h3 small{font-size:20px;font-family:Jost,sans-serif;font-weight:400;opacity:.7}
.plan>p{color:var(--muted);margin-bottom:18px}
.plan.feat>p{color:#D8C2C9}
.plan ul{list-style:none;margin-bottom:28px;flex:1}
.plan li{padding:7px 0 7px 26px;position:relative;border-top:1px solid rgba(181,112,122,.18)}
.plan li::before{content:"";position:absolute;left:4px;top:15px;width:9px;height:9px;border-radius:50%;background:var(--blush)}
.btn{text-align:center}
.btn.ghost{background:transparent;border:1.5px solid var(--plum);color:var(--plum)}
.btn.ghost:hover{background:var(--plum);color:var(--cream)}
.split{background:#fff}
.two{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.split h2{text-align:left;font-size:44px;margin-bottom:18px}
.split p{color:var(--muted);margin-bottom:14px}
.faq details{border-bottom:1px solid #E8D6CF;padding:20px 4px}
.faq summary{cursor:pointer;font-family:"Cormorant Garamond",serif;font-size:25px;font-weight:600;list-style:none;display:flex;justify-content:space-between}
.faq summary::after{content:"+";color:var(--rose)}
.faq details[open] summary::after{content:"\2013"}
.faq details p{color:var(--muted);margin-top:10px}
.faq h2{margin-bottom:30px}
.offer{background:radial-gradient(ellipse at 10% 0%,#5A2149,var(--plum) 60%);color:var(--cream)}
.offer h2{text-align:left;font-size:clamp(40px,5vw,60px)}
.offer h2 em{color:var(--blush)}
.eyebrow.light{margin-bottom:12px}
.pitch>p{color:#E3CFD6;margin:18px 0 22px}
.checks{list-style:none}
.checks li{padding:10px 0 10px 32px;position:relative;color:#E3CFD6;border-top:1px solid rgba(242,184,188,.15)}
.checks li::before{content:"\2713";position:absolute;left:4px;color:var(--gold);font-weight:600}
.checks strong{color:var(--cream);font-weight:500}
.offer-form{background:var(--cream);color:var(--ink);border-radius:26px;padding:34px 30px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.offer-form h3{font-size:36px;margin-bottom:14px}
.offer-form label{display:block;font-size:14px;font-weight:500;margin-bottom:12px}
.offer-form label span{font-weight:400;color:var(--muted)}
.offer-form input,.offer-form textarea{display:block;width:100%;margin-top:5px;padding:12px 14px;border:1px solid #E2CFC8;border-radius:12px;font:inherit;background:#fff;color:var(--ink)}
.offer-form input:focus,.offer-form textarea:focus{outline:2px solid var(--blush);border-color:var(--rose)}
.offer-form button{width:100%;background:var(--plum);color:var(--cream);margin-top:6px;padding:15px}
.offer-form button:hover{background:var(--wine)}
.offer-form .fine{color:var(--muted)}
footer{background:#1C0919;color:#BFA6AF;text-align:center;padding:44px 24px;font-size:14px}
footer img{height:42px;width:auto;margin-bottom:12px}
@media(max-width:900px){
  .nav nav a:not(.pill){display:none}
  .grid3,.cards,.plans,.two{grid-template-columns:1fr}
  .plan.feat{transform:none}
  .hero{padding:80px 20px 100px}
  section{padding:70px 0}
}
@media(max-width:520px){
  .wait{flex-direction:column;border-radius:22px}
  .brand img{height:38px}
  .bar{font-size:13px}
}
