*,*::before,*::after{box-sizing:border-box}
body{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,p,figure,blockquote{margin:0}
button{padding:0;font:inherit;color:inherit;background:none;border:0;cursor:pointer}
img,svg,video{display:block;max-inline-size:100%}
:root{
 font-synthesis:none;
 --serif:"Playfair",Georgia,serif;
 --sans:"Onest",system-ui,sans-serif;
 --gap:var(--s-2);--pad:var(--s-6);--pr:28px;
 --nude:#EFE2E4;--cream:#FCF7F8;--red:#6A1FB0;--wine:#24103A;--blush:#F2D2DC;--skin:#EAD6D0;--ink2:#24103A;--on-red:#FFF8FB;--wine-muted:#D9C8EA;--red-muted:#E9DAFF;
}
@media (min-width:768px){:root{--gap:var(--s-3);--pad:var(--s-12);--pr:36px}}
@media (min-width:1280px){:root{--gap:var(--s-4);--pad:var(--s-16);--pr:44px}}
body{background:var(--nude);color:var(--ink2);font:var(--fs-body)/var(--lh-body) var(--sans);padding:var(--gap)}
::selection{background:var(--red);color:var(--on-red)}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.skip{position:absolute;inset-inline-start:var(--s-4);inset-block-start:-80px;padding:var(--s-3) var(--s-4);background:var(--cream);color:var(--ink2);z-index:var(--z-toast)}
.skip:focus-visible{inset-block-start:var(--s-2)}
.page{max-inline-size:1760px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap)}
.page>*,.grid>*,.hero>*{min-inline-size:0}
.grid{display:grid;gap:var(--gap)}

/* panels */
.pn{position:relative;border-radius:var(--pr);padding:var(--pad);overflow:clip;background:var(--cream)}
.pn--red{background:var(--red);color:var(--on-red)}
.pn--wine{background:var(--wine);color:var(--on-red)}
.pn--blush{background:var(--blush)}
.pn--skin{background:var(--skin);color:var(--ink2)}
.pn--skin .arcs{color:#fff;opacity:.45}
.pn--skin .d1 i{color:var(--red)}
.pn--skin .h-tag,.pn--skin .h-text .lead{color:#5A4560}
.pn--media{padding:0;background:var(--wine)}
.pn--media>img,.pn--media>.vv{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.pn--red :focus-visible,.pn--wine :focus-visible,.pn--media :focus-visible{outline-color:var(--on-red)}
.chip{position:absolute;z-index:3;display:grid;gap:var(--s-1);padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:rgb(36 16 58/.32);backdrop-filter:blur(18px) saturate(1.3);box-shadow:inset 0 1px 0 rgb(255 255 255/.45);color:var(--on-red);font-size:var(--fs-sm);line-height:1.25}
.chip b{font:600 var(--fs-h3)/1 var(--sans);font-variant-numeric:tabular-nums}
.chip--dark{background:rgb(36 16 58/.45);box-shadow:inset 0 1px 0 rgb(255 255 255/.18)}

/* type: italic serif whisper + bold sans voice */
.d1{font:500 clamp(44px,4.4vw + 20px,112px)/.98 var(--serif);font-variation-settings:"opsz" 100;letter-spacing:-.03em}
.d2{font:500 clamp(30px,1.8vw + 18px,60px)/1.05 var(--serif);font-variation-settings:"opsz" 100;letter-spacing:-.02em;max-inline-size:16ch}
.d1 i,.d2 i{font-style:italic;font-weight:400}
.pn--red .d1 i,.pn--red .d2 i{color:var(--blush)}
.pn--wine .d1 i,.pn--wine .d2 i{color:#C9A2FF}
.pn:not(.pn--red):not(.pn--wine) .d2 i{color:var(--red)}
.mega{font:700 clamp(72px,8vw,176px)/.84 var(--sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums;white-space:nowrap}
.lead{font-size:var(--fs-lead);line-height:var(--lh-lead)}
.soft{color:var(--ink-muted)}
.pn--red .soft{color:var(--red-muted)}
.pn--wine .soft{color:var(--wine-muted)}
.small{font-size:var(--fs-sm)}
.num{font-variant-numeric:tabular-nums}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-3);min-block-size:56px;padding-inline:var(--s-8);border-radius:var(--r-md);background:var(--red);color:var(--on-red);font:600 var(--fs-body)/1 var(--sans);text-decoration:none;white-space:nowrap;transition:background-color var(--t-fast) ease,transform var(--t-press) var(--ease-out)}
.btn:active{transform:scale(.97)}
@media (hover:hover){.btn:hover{background:#561896}}
.btn--cream{background:var(--cream);color:var(--wine)}
@media (hover:hover){.btn--cream:hover{background:#fff}}
.btn--line{background:none;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
@media (hover:hover){.btn--line:hover{background:color-mix(in oklch,currentColor 10%,transparent)}}
.arrow{display:inline-flex;align-items:center;gap:var(--s-2);min-block-size:var(--hit);color:inherit;font-weight:600;text-decoration:none}
.arrow::after{content:"→";transition:transform var(--t-base) var(--ease-out)}
@media (hover:hover){.arrow:hover::after{transform:translateX(4px)}}

/* nav */
.nav{position:sticky;inset-block-start:var(--gap);z-index:var(--z-nav);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;block-size:64px;padding-inline:var(--s-6) var(--s-2);border-radius:var(--r-md);background:rgb(252 247 248/.86);backdrop-filter:blur(16px)}
.nav ul{display:flex;gap:var(--s-8)}
.nav ul a{color:var(--ink2);text-decoration:none;font-weight:500;font-size:var(--fs-sm);min-block-size:var(--hit);display:inline-flex;align-items:center}
@media (hover:hover){.nav ul a:hover{color:var(--red)}}
.brand{display:block;inline-size:150px;color:var(--red)}
.brand svg{inline-size:100%;block-size:auto}
.nav .btn{justify-self:end;min-block-size:48px;padding-inline:var(--s-6);font-size:var(--fs-sm)}

/* supergraphic: arcs from the ♀ ring */
.arcs{position:absolute;inset:0;z-index:0;pointer-events:none;color:var(--on-red);opacity:.16}
.arcs svg{inline-size:100%;block-size:100%}

/* hero */
.hero{display:grid;gap:var(--gap);grid-template-columns:repeat(12,1fr);grid-template-rows:1fr 1fr;min-block-size:calc(100svh - 64px - 3 * var(--gap))}
.h-main{grid-column:1/9;grid-row:1/3;display:flex;min-block-size:640px}
.h-text{position:relative;z-index:2;max-inline-size:50%;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-12)}
.h-text .lead{color:var(--wine-muted);max-inline-size:24em;margin-block:var(--s-6) var(--s-8)}
.h-tag{font-weight:500}
.h-cut{position:absolute;z-index:1;inset-block-end:0;inset-inline-end:0;inline-size:56%;block-size:auto;max-block-size:94%;object-fit:contain;object-position:100% 100%;filter:drop-shadow(0 30px 40px rgb(36 16 58/.28))}
.h-main .chip{inset-inline-end:var(--s-8);inset-block-start:var(--s-8)}
.h-vid{grid-column:9/13;grid-row:1/2;min-block-size:300px}
.h-vid .chip{inset-inline-start:var(--s-4);inset-block-end:var(--s-4)}
.h-seal{grid-column:9/11;grid-row:2/3;display:grid;place-items:center;padding:var(--s-4)}
.seal{position:relative;inline-size:min(100%,220px);aspect-ratio:1;color:var(--wine)}
.seal svg{position:absolute;inset:0;inline-size:100%;block-size:100%}
.seal text{font:600 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;fill:currentColor}
.seal .ring-text{transform-origin:50% 50%;animation:spin 24s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.h-fact{grid-column:11/13;grid-row:2/3;display:flex;flex-direction:column;justify-content:space-between;padding:var(--s-8)}
.h-fact .mega{font-size:clamp(40px,2.9vw,68px)}

/* author */
.author{grid-template-columns:5fr 7fr}
.author .pn--media{min-block-size:720px}
.author .pn--media img{object-position:50% 20%}
.author__side{display:grid;gap:var(--gap);grid-template-rows:auto 1fr}
.quote{font:italic 400 clamp(28px,1.8vw + 16px,52px)/1.18 var(--serif);font-variation-settings:"opsz" 100;letter-spacing:-.01em;max-inline-size:22ch}
.quote+p{margin-block-start:var(--s-8);color:var(--wine-muted)}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-6)}
.pillars svg{inline-size:72px;block-size:52px;color:var(--red);margin-block-end:var(--s-4)}
.pillars b{display:block;font:700 var(--fs-h3)/1.15 var(--sans);letter-spacing:-.02em;margin-block-end:var(--s-1)}
.pillars span{font-size:var(--fs-sm);color:var(--ink-muted)}

/* program bento */
.prog__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s-6)}
.prog__head .lead{max-inline-size:28em}
.prog{grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(200px,15vw,280px)}
.prog .pn--media .chip{inset-inline-start:var(--s-3);inset-block-end:var(--s-3);font-weight:500}
.prog .pn--media .chip b{font-size:var(--fs-body)}
.prog .w2{grid-column:span 2}.prog .h2r{grid-row:span 2}
.prog .pn--red{display:flex;flex-direction:column;justify-content:space-between}

/* who */
.who{grid-template-columns:7fr 5fr}
.who .pn--red{min-block-size:640px}
.who__list{display:grid;margin-block-start:var(--s-12);counter-reset:w;position:relative;z-index:2;max-inline-size:44rem}
.who__list li{display:grid;grid-template-columns:auto 1fr;gap:var(--s-1) var(--s-6);padding-block:var(--s-6);border-block-start:1px solid rgb(233 218 255/.4)}
.who__list li::before{counter-increment:w;content:"0" counter(w);grid-row:span 2;font:italic 400 var(--fs-h3)/1.2 var(--serif);color:var(--red-muted);font-variant-numeric:tabular-nums}
.who__list b{font:700 clamp(22px,1vw + 16px,32px)/1.15 var(--sans);letter-spacing:-.02em}
.who__list span{color:var(--red-muted)}
.who .pn--blush{display:flex;align-items:flex-end;justify-content:center;padding:0;min-block-size:640px}
.who .pn--blush img{inline-size:86%;block-size:auto;max-block-size:94%;object-fit:contain;object-position:50% 100%}

/* results: chips over body */
.res{grid-template-columns:5fr 7fr}
.res__body{min-block-size:720px;background:linear-gradient(160deg,#EAD6D0,#D9B9C9)}
.res__body img{position:absolute;inset-block-end:0;inset-inline-start:50%;translate:-50% 0;block-size:96%;inline-size:auto;max-inline-size:none}
.res__body .chip:nth-of-type(1){inset-inline-start:var(--s-6);inset-block-start:22%}
.res__body .chip:nth-of-type(2){inset-inline-end:var(--s-6);inset-block-start:46%}
.res__body .chip:nth-of-type(3){inset-inline-start:var(--s-8);inset-block-end:12%}
.res__txt{display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-12)}
.steps{display:grid;gap:var(--s-8)}
.steps li{display:grid;grid-template-columns:minmax(160px,auto) 1fr;gap:var(--s-8);align-items:baseline;padding-block-start:var(--s-6);border-block-start:1px solid var(--line-strong)}
.steps .mega{font-size:clamp(48px,3.4vw + 16px,96px);color:var(--red)}
.steps p{color:var(--ink-muted);max-inline-size:32ch}

/* trial */
.trial{display:grid;grid-template-columns:7fr 5fr;gap:var(--s-12);align-items:end}
.trial .mega{font-size:clamp(104px,15vw,280px)}
.trial .mega small{font-size:.34em;letter-spacing:0;margin-inline-start:var(--s-2)}
.trial h2{margin-block-start:var(--s-6)}
.ticks{display:grid;gap:var(--s-3);margin-block-end:var(--s-8)}
.ticks li{display:grid;grid-template-columns:auto 1fr;gap:var(--s-3);align-items:baseline;font-size:var(--fs-lead)}
.ticks li::before{content:"";inline-size:9px;aspect-ratio:1;border-radius:50%;background:var(--blush);translate:0 -3px}
.trial .small{margin-block-start:var(--s-4)}

/* live reels */
.reels__row{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(200px,16vw,290px);gap:var(--s-3);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-block-start:var(--s-12);margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad)}
.reels__row::-webkit-scrollbar{display:none}
.reels__row li{position:relative;aspect-ratio:9/16;border-radius:var(--r-lg);overflow:clip;scroll-snap-align:start;background:var(--wine)}
.reels__row .vv{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.reels__row .chip{inset-inline:var(--s-3) auto;inset-block-end:var(--s-3);font-weight:500}

/* tariffs */
.tar__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s-6)}
.seg{display:inline-flex;padding:var(--s-1);border-radius:var(--r-md);background:var(--nude)}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0}
.seg span{display:inline-flex;align-items:center;min-block-size:var(--hit);padding-inline:var(--s-6);border-radius:var(--r-md);font-weight:600;cursor:pointer;transition:background-color var(--t-fast) ease,color var(--t-fast) ease}
.seg input:checked+span{background:var(--wine);color:var(--on-red)}
.seg input:focus-visible+span{outline:2px solid var(--red);outline-offset:2px}
.plans{grid-template-columns:1.25fr 1fr 1fr}
.plan{display:flex;flex-direction:column;gap:var(--s-6);min-block-size:540px}
.plan h3{font:700 var(--fs-h3)/1.15 var(--sans);letter-spacing:-.02em}
.plan .sub{font:italic 400 var(--fs-body)/1.3 var(--serif);font-variation-settings:"opsz" 100;margin-block-start:var(--s-1)}
.plan .price{font:700 clamp(44px,2.4vw + 26px,72px)/1 var(--sans);letter-spacing:-.045em;font-variant-numeric:tabular-nums;white-space:nowrap}
.plan .price small{display:block;margin-block-start:var(--s-2);font:500 var(--fs-sm)/1 var(--sans);letter-spacing:0}
.plan ul{display:grid;gap:var(--s-2);flex:1}
.plan li{padding-inline-start:var(--s-6);position:relative}
.plan li::before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.6em;inline-size:8px;aspect-ratio:1;border-radius:50%;background:var(--red)}
.pn--red.plan li::before{background:var(--blush)}
.plan .btn{inline-size:100%}

/* course */
.course{grid-template-columns:7fr 5fr}
.course .pn--wine{display:flex;flex-direction:column;gap:var(--s-8)}
.course .d2 i{color:#C9A2FF}
.cfmt{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}
.cfmt article{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-8);border-radius:var(--r-lg);background:rgb(255 248 251/.08);box-shadow:inset 0 0 0 1px rgb(255 248 251/.18)}
.cfmt article.on{background:var(--red);box-shadow:none}
.cfmt h3{font:700 var(--fs-h3)/1.15 var(--sans)}
.cfmt .price{font:700 clamp(36px,1.4vw + 26px,52px)/1 var(--sans);letter-spacing:-.04em;white-space:nowrap}
.cfmt ul{display:grid;gap:var(--s-2);flex:1;font-size:var(--fs-sm);color:var(--wine-muted)}
.cfmt article.on ul{color:var(--red-muted)}
.cfmt li::before{content:"— "}
.cfmt .btn{inline-size:100%}
.course .pn--media{min-block-size:640px}
.course .pn--media img{object-position:50% 30%}
.course .pn--media .chip{inset-inline-start:var(--s-4);inset-block-end:var(--s-4)}

/* review */
.review{grid-template-columns:4fr 8fr}
.review__vid{padding:0;background:var(--wine);aspect-ratio:9/14}
.review__vid video{inline-size:100%;block-size:100%;object-fit:cover}
.review .pn--blush{display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-12)}
.review .mega{color:var(--red)}

/* faq */
.faq{display:grid;grid-template-columns:4fr 8fr;gap:var(--s-12)}
.faq details{border-block-end:1px solid var(--line-strong)}
.faq details:first-child{border-block-start:1px solid var(--line-strong)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:var(--s-6);align-items:center;min-block-size:var(--hit);padding-block:var(--s-6);font:600 var(--fs-h3)/1.3 var(--sans);letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";display:grid;place-items:center;inline-size:40px;aspect-ratio:1;border-radius:50%;background:var(--nude);font:500 24px/1 var(--sans);transition:transform var(--t-base) var(--ease-out),background-color var(--t-fast) ease}
.faq details[open] summary::after{transform:rotate(45deg);background:var(--blush)}
.faq details p{padding-block-end:var(--s-6);max-inline-size:62ch;color:var(--ink-muted)}

/* final */
.fin{display:grid;grid-template-columns:1fr 1fr;align-items:end;min-block-size:680px}
.fin__txt{position:relative;z-index:2;align-self:center}
.fin .lead{color:var(--red-muted);margin-block:var(--s-6) var(--s-8);max-inline-size:26em}
.fin img.cut{position:absolute;z-index:1;inset-block-end:0;inset-inline-end:4%;block-size:94%;inline-size:auto;max-inline-size:none;filter:drop-shadow(0 30px 40px rgb(36 16 58/.28))}
.contacts{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-6);margin-block-start:var(--s-8)}
.contacts a{color:var(--on-red);font-weight:600;min-block-size:var(--hit);display:inline-flex;align-items:center;text-underline-offset:.2em}

/* footer */
.foot{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--s-8);font-size:var(--fs-sm);color:var(--wine-muted);padding-block-end:0}
.foot b{display:block;color:var(--on-red);font-weight:600;margin-block-end:var(--s-3)}
.foot ul{display:grid;gap:var(--s-1)}
.foot a{color:var(--on-red);text-decoration:none;min-block-size:var(--hit);display:inline-flex;align-items:center}
@media (hover:hover){.foot a:hover{color:var(--blush)}}
.wordmark{grid-column:1/-1;margin-block-start:var(--s-16);font:700 clamp(72px,17.6vw,320px)/.78 var(--sans);letter-spacing:-.06em;color:var(--blush);white-space:nowrap;translate:0 12%}
.wordmark i{font:italic 400 1.05em/1 var(--serif);font-variation-settings:"opsz" 100;letter-spacing:-.03em;color:var(--red)}

/* reveal + hero entrance */
.reveal{transition:opacity var(--t-reveal) var(--ease-out),transform var(--t-reveal) var(--ease-out)}
.reveal.is-armed:not(.is-in){opacity:0;transform:translateY(var(--reveal-shift))}
html.motion .hero>.pn{animation:rise var(--t-reveal-long) var(--ease-out) both}
html.motion .hero>.pn:nth-child(2){animation-delay:60ms}
html.motion .hero>.pn:nth-child(3){animation-delay:120ms}
html.motion .hero>.pn:nth-child(4){animation-delay:180ms}
html.motion .h-cut{animation:lift var(--t-reveal-long) var(--ease-out) 120ms both}
@keyframes rise{from{opacity:0;transform:translateY(24px) scale(.98)}}
@keyframes lift{from{opacity:0;transform:translateY(48px)}}
@media (prefers-reduced-motion:reduce){html.motion .hero>.pn,html.motion .h-cut{animation:none}.seal .ring-text{animation:none}}

/* responsive */
@media (max-width:1279px){
 .hero{grid-template-columns:repeat(6,1fr);grid-template-rows:auto auto}
 .h-main{grid-column:1/7;grid-row:auto}
 .h-vid{grid-column:1/4;grid-row:auto;min-block-size:360px}.h-seal{grid-column:4/5;grid-row:auto}.h-fact{grid-column:5/7;grid-row:auto}
 .author,.who,.res,.course,.review{grid-template-columns:1fr 1fr}
 .pillars{grid-template-columns:1fr 1fr}
 .plans{grid-template-columns:1fr 1fr}.plans .plan:first-child{grid-column:1/-1}
 .prog{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1023px){
 .nav ul{display:none}.nav{grid-template-columns:1fr auto}
 .author,.who,.res,.course,.review,.faq,.trial,.fin{grid-template-columns:1fr}
 .h-main{flex-direction:column;min-block-size:0;padding-block-end:0}
 .h-text{max-inline-size:none}
 .h-cut{position:relative;inset:auto;block-size:auto;max-block-size:none;inline-size:min(100%,560px);margin:var(--s-8) auto 0}
 .h-vid{grid-column:1/4}.h-seal{grid-column:4/7}.h-fact{grid-column:1/7}
 .fin{min-block-size:0;padding-block-end:0}.fin img.cut{position:relative;inset:auto;block-size:auto;inline-size:min(100%,480px);margin:var(--s-8) auto 0}
 .who .pn--blush{min-block-size:520px}
 .res__body{min-block-size:620px}
 .cfmt{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
 .nav{block-size:56px;padding-inline:var(--s-4) var(--s-1)}.brand{inline-size:120px}.nav .btn{min-block-size:var(--hit);padding-inline:var(--s-4)}
 .hero{grid-template-columns:1fr 1fr}
 .h-main{grid-column:1/3}.h-vid{grid-column:1/3;min-block-size:56svh}.h-seal{grid-column:1/2}.h-fact{grid-column:2/3;padding:var(--s-6)}
 .h-fact .mega{font-size:40px}
 .h-text .btn,.trial .btn,.fin .btn{inline-size:100%}
 .pillars{grid-template-columns:1fr}
 .author .pn--media{min-block-size:520px}
 .prog{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.prog .w2{grid-column:span 2}
 .who .pn--red{min-block-size:0}
 .steps li{grid-template-columns:1fr;gap:var(--s-2)}
 .plans,.cfmt,.foot{grid-template-columns:1fr}.plan{min-block-size:0}
 .course .pn--media{min-block-size:480px}
 .review__vid{aspect-ratio:9/16}
 .seg{inline-size:100%}.seg label{flex:1}.seg span{inline-size:100%;justify-content:center;padding-inline:var(--s-2)}
 .btn{white-space:normal;text-align:center}
 .res__body .chip{font-size:13px}
}
