body{margin:0;background:#F7F3FF}
a{color:#6B3FD4}a:hover{color:#1A0F2E}
.dpr{background:#F7F3FF;color:#1A0F2E;font-family:'Instrument Sans',system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.dpr *{box-sizing:border-box}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px}
.d{font-family:'Big Shoulders Display',Impact,sans-serif;font-weight:900;text-transform:uppercase;line-height:.86;letter-spacing:-.005em;margin:0}
.kick{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#6B3FD4;margin:0 0 18px}
.muted{color:#5E5275}
.deep{color:#6B3FD4}
.ph{color:#6B3FD4;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;border:0;cursor:pointer;font-family:inherit;transition:transform .3s cubic-bezier(.3,1.6,.5,1),box-shadow .25s ease,background .25s ease;white-space:nowrap}
.btn:hover{transform:translateY(-3px) scale(1.04)}
.btn:active{transform:scale(.96)}
.btn-p{background:#9A6DF2;color:#1A0F2E;box-shadow:0 8px 0 #6B3FD4}
.btn-p:hover{color:#1A0F2E;background:#B08CF7;box-shadow:0 11px 0 #6B3FD4,0 20px 40px rgba(154,109,242,.4)}
.btn-y{background:#FFDB4D;color:#1A0F2E;box-shadow:0 8px 0 #C99A00}
.btn-y:hover{color:#1A0F2E;box-shadow:0 11px 0 #C99A00,0 20px 40px rgba(255,219,77,.45)}
.btn-ink{background:#1A0F2E;color:#F7F3FF}
.btn-ink:hover{color:#F7F3FF;box-shadow:0 14px 34px rgba(26,15,46,.35)}
.btn-o{background:transparent;color:#1A0F2E;box-shadow:inset 0 0 0 2px #1A0F2E}
.btn-o:hover{color:#1A0F2E;background:#fff}
.btn-w{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.btn-w:hover{color:#fff;background:rgba(255,255,255,.22)}
/* nav */
.nav-shell{position:fixed;top:0;left:0;right:0;z-index:50;padding:0;pointer-events:none;transition:top .5s cubic-bezier(.3,1.4,.5,1),padding .5s ease}
.nav-bar{pointer-events:auto;max-width:1280px;margin:0 auto;height:92px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(255,255,255,0);border-radius:0;box-shadow:none;transition:max-width .5s cubic-bezier(.3,1.4,.5,1),height .4s ease,padding .4s ease,background .3s ease,border-radius .5s ease,box-shadow .4s ease}
.nav-shell.is-pill{top:16px;padding:0 24px}
.is-pill .nav-bar{max-width:1200px;height:72px;padding:0 10px 0 22px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);border-radius:999px;box-shadow:0 10px 40px rgba(46,20,100,.18),inset 0 0 0 1px rgba(154,109,242,.18)}
.nav-shell:not(.is-pill) .links a{color:#fff}
.nav-shell:not(.is-pill) .links a:hover{background:rgba(255,255,255,.14);color:#fff}
.nav-shell:not(.is-pill) .nav-wa{color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.nav-shell:not(.is-pill) .nav-wa:hover{background:rgba(255,255,255,.14)}
.nav-shell:not(.is-pill) .menu-btn{background:#fff;color:#1A0F2E}
.logo-ink{display:none}.is-pill .logo-ink{display:block}.is-pill .logo-white{display:none}
.links{display:flex;gap:6px}
.links a{color:#1A0F2E;text-decoration:none;font-size:15px;font-weight:600;padding:10px 16px;border-radius:999px;transition:background .2s}
.links a:hover{background:#EEE6FF;color:#1A0F2E}
.menu-btn{display:none}
.drop{pointer-events:auto;max-width:1200px;margin:10px auto 0;background:#fff;border-radius:28px;padding:12px;box-shadow:0 20px 50px rgba(46,20,100,.2);display:flex;flex-direction:column}
.drop a{color:#1A0F2E;text-decoration:none;font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:34px;text-transform:uppercase;padding:10px 16px;border-radius:18px;text-align:center}
.drop a:hover{background:#EEE6FF}
/* hero */
.hero{position:relative;min-height:940px;display:flex;align-items:center;overflow:hidden;padding:150px 0 200px;background:#1B0B40;color:#fff}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.9;animation:drift 16s ease-in-out infinite alternate}
@keyframes drift{0%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-30px) scale(1.12)}100%{transform:translate(-30px,40px) scale(.95)}}
.hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:260px;background:linear-gradient(to bottom,rgba(247,243,255,0),#F7F3FF 92%);z-index:1;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:center;position:relative;z-index:3;width:100%}
.hero-h{font-size:clamp(84px,12vw,212px);line-height:.82}
.grad-txt{background:linear-gradient(100deg,#FFDB4D 0%,#FF8AD8 45%,#C9B3FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.pill{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;border-radius:999px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.pill b{background:#FFDB4D;color:#1A0F2E;border-radius:999px;padding:4px 10px;font-size:12px;letter-spacing:.08em}
.can-stage{position:relative;height:700px;display:flex;align-items:center;justify-content:center}
.can-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,216,.55),rgba(154,109,242,.35) 45%,rgba(154,109,242,0) 70%);filter:blur(10px);animation:breathe 6s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
.hero-can{position:relative;z-index:2;height:640px;width:auto;filter:drop-shadow(0 50px 50px rgba(20,0,60,.55)) drop-shadow(0 0 40px rgba(201,179,255,.35));animation:float 6s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-22px) rotate(-4deg)}}
.can-shadow{position:absolute;bottom:18px;width:260px;height:36px;border-radius:50%;background:radial-gradient(ellipse,rgba(10,0,30,.55),rgba(10,0,30,0) 70%);animation:shadow 6s ease-in-out infinite;z-index:1}
@keyframes shadow{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.85);opacity:.7}}
.spin{position:absolute;z-index:3;width:170px;height:170px;animation:spin 18s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.sticker{position:absolute;z-index:4;border-radius:999px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:bob 4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-12px) rotate(-5deg)}}
/* bubbles */
.bubbles{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.bub{position:absolute;bottom:-40px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.9) 0 12%,rgba(255,255,255,.18) 32%,rgba(255,255,255,.03) 70%);animation:rise linear infinite}
.lite .bub{border-color:rgba(154,109,242,.55);background:radial-gradient(circle at 32% 30%,#fff 0 14%,rgba(154,109,242,.16) 36%,rgba(154,109,242,.03) 70%)}
.bub:nth-child(1){left:3%;width:14px;height:14px;animation-duration:11s;animation-delay:-2s}
.bub:nth-child(2){left:9%;width:6px;height:6px;animation-duration:7s;animation-delay:-5s}
.bub:nth-child(3){left:15%;width:22px;height:22px;animation-duration:14s;animation-delay:-9s}
.bub:nth-child(4){left:22%;width:8px;height:8px;animation-duration:9s;animation-delay:-1s}
.bub:nth-child(5){left:30%;width:12px;height:12px;animation-duration:12s;animation-delay:-7s}
.bub:nth-child(6){left:37%;width:5px;height:5px;animation-duration:6s;animation-delay:-3s}
.bub:nth-child(7){left:44%;width:16px;height:16px;animation-duration:13s;animation-delay:-10s}
.bub:nth-child(8){left:50%;width:7px;height:7px;animation-duration:8s;animation-delay:-4s}
.bub:nth-child(9){left:56%;width:28px;height:28px;animation-duration:17s;animation-delay:-12s}
.bub:nth-child(10){left:62%;width:6px;height:6px;animation-duration:7s;animation-delay:-6s}
.bub:nth-child(11){left:68%;width:13px;height:13px;animation-duration:11s;animation-delay:-2s}
.bub:nth-child(12){left:74%;width:9px;height:9px;animation-duration:9s;animation-delay:-8s}
.bub:nth-child(13){left:80%;width:20px;height:20px;animation-duration:15s;animation-delay:-5s}
.bub:nth-child(14){left:86%;width:5px;height:5px;animation-duration:6s;animation-delay:-1s}
.bub:nth-child(15){left:91%;width:11px;height:11px;animation-duration:10s;animation-delay:-9s}
.bub:nth-child(16){left:96%;width:16px;height:16px;animation-duration:12s;animation-delay:-3s}
.bub:nth-child(17){left:26%;width:4px;height:4px;animation-duration:5s;animation-delay:-2s}
.bub:nth-child(18){left:72%;width:4px;height:4px;animation-duration:5s;animation-delay:-4s}
.bub:nth-child(19){left:47%;width:10px;height:10px;animation-duration:10s;animation-delay:-6s}
.bub:nth-child(20){left:83%;width:32px;height:32px;animation-duration:19s;animation-delay:-14s}
@keyframes rise{0%{transform:translate(0,0) scale(.6);opacity:0}8%{opacity:1}35%{transform:translate(12px,-340px) scale(.85)}65%{transform:translate(-10px,-660px) scale(1)}100%{transform:translate(6px,-1050px) scale(1.1);opacity:0}}
/* marquee */
.band{position:relative;z-index:5;margin:-90px -40px 0;transform:rotate(-2.2deg);background:#1A0F2E;color:#F7F3FF;padding:22px 0;overflow:hidden;box-shadow:0 20px 50px rgba(46,20,100,.25)}
.band2{position:absolute;z-index:4;left:-40px;right:-40px;top:14px;transform:rotate(2deg);background:#FFDB4D;height:72px}
.marq-track{display:flex;width:max-content;animation:marq 30s linear infinite}
.marq-item{display:flex;align-items:center;gap:32px;padding-right:32px;font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:44px;line-height:1;text-transform:uppercase;white-space:nowrap}
.star{width:26px;height:26px;flex:0 0 auto}
@keyframes marq{to{transform:translateX(-50%)}}
/* sections */
.sec{padding:140px 0;position:relative}
.tint{background:#EEE6FF}
.night{background:#150A26;color:#F7F3FF}
.night .muted{color:#BFB3D6}
.night .kick{color:#C9B3FF}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px}
.h2{font-size:clamp(64px,9vw,148px)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.stack{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.btn-row{display:flex;flex-wrap:wrap;gap:16px}
/* menu */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{min-height:46px;padding:0 22px;border-radius:999px;border:2px solid #1A0F2E;background:#fff;color:#1A0F2E;font:700 15px 'Instrument Sans',sans-serif;cursor:pointer;transition:transform .2s,background .2s}
.chip:hover{transform:translateY(-2px) rotate(-1deg);background:#EEE6FF}
.chip.on{background:#1A0F2E;color:#F7F3FF}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.card{position:relative;border-radius:32px;overflow:hidden;background:#fff;transition:transform .45s cubic-bezier(.2,.9,.3,1.3),box-shadow .45s ease;display:flex;flex-direction:column;box-shadow:0 2px 0 rgba(26,15,46,.06),0 20px 40px rgba(46,20,100,.08)}
.card:hover{transform:translateY(-12px) rotate(-1deg)}
.card.g-blue:hover{box-shadow:0 30px 70px rgba(62,140,220,.4)}
.card.g-red:hover{box-shadow:0 30px 70px rgba(210,40,40,.35)}
.card.g-lime:hover{box-shadow:0 30px 70px rgba(150,170,20,.4)}
.card.g-purple:hover{box-shadow:0 30px 70px rgba(154,109,242,.5)}
.card.g-green:hover{box-shadow:0 30px 70px rgba(30,170,60,.4)}
.card.g-orange:hover{box-shadow:0 30px 70px rgba(245,140,30,.4)}
.shot{position:relative;aspect-ratio:1/1;overflow:hidden;margin:10px 10px 0;border-radius:24px}
.shot img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block;transition:transform .6s cubic-bezier(.2,.9,.3,1)}
.card:hover .shot img{transform:scale(1.08) rotate(1deg)}
.fizz{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s}
.card:hover .fizz{opacity:1}
.fizz i{position:absolute;bottom:-14px;border-radius:50%;border:1.5px solid rgba(255,255,255,.9);background:rgba(255,255,255,.18);animation:rise 3s linear infinite}
.fizz i:nth-child(1){left:20%;width:10px;height:10px;animation-duration:2.6s}
.fizz i:nth-child(2){left:38%;width:6px;height:6px;animation-duration:2s;animation-delay:-.6s}
.fizz i:nth-child(3){left:55%;width:14px;height:14px;animation-duration:3.2s;animation-delay:-1.2s}
.fizz i:nth-child(4){left:70%;width:7px;height:7px;animation-duration:2.3s;animation-delay:-.3s}
.fizz i:nth-child(5){left:84%;width:9px;height:9px;animation-duration:2.8s;animation-delay:-1.8s}
.badge{position:absolute;top:14px;left:14px;z-index:2;background:#FFDB4D;color:#1A0F2E;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;transform:rotate(-4deg)}
.price-tag{position:absolute;bottom:14px;right:14px;z-index:2;background:#fff;color:#1A0F2E;font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:28px;line-height:1;padding:10px 14px;border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.card-body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.add{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;background:#EEE6FF;color:#1A0F2E;text-decoration:none;font-weight:700;font-size:14px;transition:background .2s,transform .2s}
.add:hover{background:#9A6DF2;color:#1A0F2E;transform:scale(1.04)}
/* signature */
.sig-stage{position:relative;display:flex;align-items:center;justify-content:center;height:560px}
.sig-disc{position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#C9B3FF,#9A6DF2 55%,#6B3FD4);box-shadow:0 40px 100px rgba(107,63,212,.4)}
.sig-ring{position:absolute;width:520px;height:520px;border-radius:50%;border:2px dashed rgba(107,63,212,.35);animation:spin 40s linear infinite}
.sig-can{position:relative;z-index:2;height:500px;width:auto;filter:drop-shadow(0 40px 40px rgba(40,10,90,.45));animation:float 6s ease-in-out infinite}
.spec{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:2px solid rgba(26,15,46,.1);font-size:16px;width:100%}
.spec b{font-weight:700}
/* cans section */
.feat{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;text-align:left}
.feat-i{width:56px;height:56px;border-radius:18px;background:#FFDB4D;display:flex;align-items:center;justify-content:center;color:#1A0F2E;transform:rotate(-6deg)}
.arch{position:relative;width:420px;max-width:100%;aspect-ratio:9/14;border-radius:999px 999px 36px 36px;overflow:hidden;box-shadow:0 40px 120px rgba(61,217,245,.25),0 0 0 8px rgba(255,255,255,.06);background:#1A1028}
.arch video{width:100%;height:100%;object-fit:cover;display:block}
/* packages */
.tier{border-radius:32px;padding:40px 32px;background:#fff;display:flex;flex-direction:column;gap:22px;transition:transform .35s;box-shadow:0 20px 50px rgba(46,20,100,.08)}
.tier:hover{transform:translateY(-8px) rotate(-.5deg)}
.tier.hot{background:#1A0F2E;color:#F7F3FF;transform:translateY(-18px) rotate(-1deg);box-shadow:0 40px 90px rgba(46,20,100,.35)}
.tier.hot .muted{color:#BFB3D6}
.tier.hot .spec{border-color:rgba(255,255,255,.14)}
.tier.hot:hover{transform:translateY(-26px) rotate(0)}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;font-size:15px;text-align:left}
.ticks li{display:flex;gap:10px;align-items:flex-start}
.tick{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#9A6DF2;color:#1A0F2E;display:flex;align-items:center;justify-content:center;margin-top:1px}
/* steps */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:0}
.step{display:flex;flex-direction:column;gap:12px;background:#fff;border-radius:28px;padding:28px;transition:transform .3s}
.step:hover{transform:translateY(-6px) rotate(1deg)}
.step-n{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:84px;line-height:.9;color:transparent;-webkit-text-stroke:2px #9A6DF2}
/* gallery */
.reel{display:flex;gap:18px;overflow-x:auto;padding:0 40px 24px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9A6DF2 transparent}
.tile{flex:0 0 auto;height:460px;border-radius:28px;overflow:hidden;scroll-snap-align:start;position:relative;background:#EEE6FF}
.tile:nth-child(even){transform:translateY(28px)}
.tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.tile:hover img{transform:scale(1.06)}
.tile-cap{position:absolute;left:14px;bottom:14px;background:#fff;color:#1A0F2E;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:700}
.quote{background:#fff;border-radius:28px;padding:32px;display:flex;flex-direction:column;gap:18px;box-shadow:0 20px 50px rgba(46,20,100,.08);text-align:left}
.quote:nth-child(2){transform:rotate(1.2deg)}
/* faq */
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:20px 24px;margin-bottom:10px;background:#fff;border:0;border-radius:22px;color:#1A0F2E;font:700 19px 'Instrument Sans',sans-serif;text-align:left;cursor:pointer;transition:background .2s}
.faq-q:hover{background:#F7F3FF}
.faq-a{display:none;padding:4px 24px 24px;color:#5E5275;max-width:720px}
.faq-a.open{display:block}
.plus{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#EEE6FF;display:flex;align-items:center;justify-content:center;transition:transform .3s,background .3s}
.plus.open{transform:rotate(45deg);background:#9A6DF2}
.faq-head{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
/* booking */
.book{background:#9A6DF2;color:#1A0F2E;padding:140px 0;position:relative;overflow:hidden}
.book .kick{color:#1A0F2E}
.book .bub{border-color:rgba(26,15,46,.3);background:radial-gradient(circle at 32% 30%,#fff 0 14%,rgba(255,255,255,.25) 36%,transparent 70%)}
.form{background:#fff;border-radius:32px;padding:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;box-shadow:0 40px 100px rgba(26,15,46,.3);text-align:left}
.fld{display:flex;flex-direction:column;gap:6px}
.fld label{font-size:13px;font-weight:700;color:#1A0F2E}
.fld input,.fld select,.fld textarea{min-height:52px;border-radius:14px;border:2px solid #E2D8F5;background:#F7F3FF;padding:12px 14px;font:16px 'Instrument Sans',sans-serif;color:#1A0F2E}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:#1A0F2E;background:#fff}
.full{grid-column:1/-1}
.seg{display:flex;gap:6px;background:#EEE6FF;padding:6px;border-radius:999px}
.seg button{flex:1;min-height:46px;border-radius:999px;border:0;background:transparent;font:700 15px 'Instrument Sans',sans-serif;color:#1A0F2E;cursor:pointer}
.seg button.on{background:#1A0F2E;color:#F7F3FF}
.done{background:#1A0F2E;color:#F7F3FF;border-radius:32px;padding:64px 40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}
.steps-ind{display:flex;gap:8px;align-items:center;background:#fff;border-radius:999px;padding:8px 14px;margin:0 auto 16px;width:max-content;max-width:100%;font-size:13px;font-weight:700;box-shadow:0 10px 30px rgba(26,15,46,.15)}
.si{display:flex;align-items:center;gap:8px;color:#5E5275}
.si i{width:28px;height:28px;border-radius:50%;background:#EEE6FF;display:flex;align-items:center;justify-content:center;font-style:normal}
.si.on{color:#1A0F2E}.si.on i{background:#1A0F2E;color:#fff}
.si.si-done i{background:#9A6DF2;color:#1A0F2E}
.si-line{width:22px;height:2px;background:#E2D8F5}
.review{background:#fff;border-radius:32px;padding:36px;box-shadow:0 40px 100px rgba(26,15,46,.3);display:flex;flex-direction:column;gap:20px;text-align:left}
.sum{background:#F7F3FF;border-radius:20px;padding:4px 20px}
.sum .spec{border-color:rgba(26,15,46,.08);font-size:15px}
.sum .spec:last-child{border-bottom:0}
.amt{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:68px;line-height:.9}
.methods{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.methods span{font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;background:#EEE6FF}
.spinner{width:68px;height:68px;border-radius:50%;border:6px solid rgba(255,255,255,.15);border-top-color:#FFDB4D;animation:spin 1s linear infinite}
.linkbtn{background:none;border:0;color:#6B3FD4;font:700 14px 'Instrument Sans',sans-serif;cursor:pointer;text-decoration:underline;min-height:44px;padding:0 4px}
.demo-tag{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:#FFDB4D;color:#1A0F2E;padding:4px 10px;border-radius:999px}
.wa-float{display:none}
footer a{color:#F7F3FF;text-decoration:none}
footer a:hover{color:#C9B3FF}
.mega{font-size:clamp(80px,16.5vw,250px);line-height:.8;background:linear-gradient(100deg,#9A6DF2,#FF8AD8 50%,#FFDB4D);-webkit-background-clip:text;background-clip:text;color:transparent}
.foot-cols{display:flex;flex-wrap:wrap;gap:72px;font-size:15px}
.foot-col{display:flex;flex-direction:column;gap:10px}
.nomotion .bub,.nomotion .blob,.nomotion .marq-track,.nomotion .sticker,.nomotion .fizz i,.nomotion .hero-can,.nomotion .sig-can,.nomotion .spin,.nomotion .sig-ring,.nomotion .can-glow,.nomotion .can-shadow{animation:none}
@media (prefers-reduced-motion:reduce){.bub,.blob,.marq-track,.sticker,.fizz i,.hero-can,.sig-can,.spin,.sig-ring,.can-glow,.can-shadow{animation:none}.card:hover,.tier:hover,.btn:hover,.step:hover{transform:none}}
@media (max-width:1020px){
.hero-grid,.split{grid-template-columns:1fr}
.grid3{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tiers{grid-template-columns:1fr !important;max-width:520px;margin:0 auto}.tier.hot{transform:none}
.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.links,.nav-wa{display:none !important}.menu-btn{display:inline-flex}
.can-stage{height:560px}.hero-can{height:500px}
.nav-bar{padding:0 32px}
.hero{text-align:center;padding-bottom:180px}
.hero-copy{align-items:center !important}
.hero-copy p{margin-left:auto !important;margin-right:auto !important}
.can-stage{order:2}
.hero .btn-row,.mc .btn-row{justify-content:center}
.mc{text-align:center}
.mc .sec-head{flex-direction:column;align-items:center;justify-content:center}
.mc .sec-head p{margin-left:auto;margin-right:auto}
.mc .stack{align-items:center}
.mc .stack p{margin-left:auto !important;margin-right:auto !important}
.mc .chips{justify-content:center}
.card-body{align-items:center;text-align:center}
.feat{grid-template-columns:1fr;justify-items:center;text-align:center;max-width:460px}
.tier{text-align:center}
.step{align-items:center;text-align:center}
.tile:nth-child(even){transform:none}
.grid3.quotes{grid-template-columns:1fr;max-width:560px;margin:0 auto}
.quote{text-align:center;align-items:center}.quote:nth-child(2){transform:none}
.faq-head{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:16px;width:100%}
.faq-sub{display:none}
.faq-cta{flex:0 0 auto}
.book .stack{align-items:center;text-align:center}
.form{max-width:620px;margin:0 auto}
.foot-top{flex-direction:column;align-items:center;text-align:center}
.foot-cols{justify-content:center;gap:40px;text-align:center}
.foot-col{align-items:center}
.foot-bottom{justify-content:center !important;text-align:center}
}
@media (max-width:640px){
.wrap{padding:0 20px}.reel{padding:0 20px 24px}
.sec,.book{padding:88px 0}
.nav-bar{height:76px;padding:0 20px}
.nav-shell.is-pill{top:10px;padding:0 12px}
.is-pill .nav-bar{height:62px;padding:0 6px 0 16px}
.nav-book{min-height:46px !important;padding:0 18px !important;font-size:14px !important;box-shadow:0 5px 0 #6B3FD4 !important}
.hero{padding:110px 0 170px;min-height:0;text-align:center}
.hero-copy{align-items:center !important}
.hero-h{font-size:84px}
.pill{font-size:11px}
.can-stage{height:400px;order:2}.hero-can{height:340px}.can-glow{width:320px;height:320px}.can-shadow{width:160px}
.spin{width:110px;height:110px}
.hero-sticker{width:104px !important;height:104px !important}
.hero-sticker .d{font-size:30px !important}
.band{margin-top:-70px}.marq-item{font-size:30px;gap:22px;padding-right:22px}.star{width:18px;height:18px}.band2{height:56px}
.mc{text-align:center}
.mc .sec-head{justify-content:center}
.mc .stack{align-items:center}
.mc .chips{justify-content:center}
.mc .btn-row,.hero .btn-row{justify-content:center}
.h2{font-size:64px}
.grid3{gap:12px}
.card{border-radius:22px}.shot{margin:6px 6px 0;border-radius:18px}
.card-body{padding:12px 12px 14px;gap:8px;align-items:center;text-align:center}
.card-body .d{font-size:24px !important}
.card-body .muted{font-size:11px !important}
.price-tag{font-size:18px;padding:6px 9px;border-radius:10px;bottom:8px;right:8px}
.badge{font-size:9px;padding:5px 8px;top:8px;left:8px}
.add{min-height:44px;padding:0 12px;font-size:13px;width:100%}
.add-label{display:none}
.sig-stage{height:330px}.sig-disc{width:250px;height:250px}.sig-ring{width:300px;height:300px}.sig-can{height:290px}
.feat{grid-template-columns:1fr;justify-items:center;text-align:center}
.arch{width:250px}
.tier{padding:32px 24px;text-align:center;align-items:stretch}
.steps{grid-template-columns:1fr}.step{align-items:center;text-align:center}
.tile{height:320px}.tile:nth-child(even){transform:none}
.grid3.quotes{grid-template-columns:1fr}
.quote{text-align:center;align-items:center}.quote:nth-child(2){transform:none}
.faq-head{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:12px;width:100%}
.faq-head .h2{font-size:52px}
.faq-cta{min-height:46px !important;padding:0 16px !important;font-size:14px !important;flex:0 0 auto}
.faq-sub{display:none}
.faq-q{font-size:16px;padding:16px 18px;min-height:64px}
.form{grid-template-columns:1fr;padding:24px}
.book .stack{align-items:center;text-align:center}
.foot-top{flex-direction:column;align-items:center;text-align:center}
.foot-cols{justify-content:center;gap:36px;text-align:center}
.foot-col{align-items:center}
.foot-bottom{justify-content:center !important;text-align:center}
.wa-float{display:inline-flex;position:fixed;right:16px;bottom:16px;z-index:40;width:62px;height:62px;border-radius:50%;background:#FFDB4D;color:#1A0F2E;align-items:center;justify-content:center;box-shadow:0 6px 0 #C99A00,0 16px 30px rgba(0,0,0,.3)}
}

/* ---------- Production additions (not in canvas) ---------- */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
section[id],footer{scroll-margin-top:96px}
[hidden]{display:none !important}
img,video{max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;left:16px;top:-80px;z-index:200;background:#1A0F2E;color:#fff;padding:12px 18px;border-radius:12px;font-weight:700;text-decoration:none}
.skip:focus{top:16px;color:#fff}
:focus-visible{outline:3px solid #6B3FD4;outline-offset:3px}
.night :focus-visible,.hero :focus-visible,footer :focus-visible,.done :focus-visible,.agegate :focus-visible{outline-color:#FFDB4D}
fieldset{border:0;margin:0;padding:0;min-width:0;display:contents}
.fld input:invalid:not(:placeholder-shown):not(:focus){border-color:#D0405A}
.form-err{grid-column:1/-1;margin:0;padding:12px 16px;border-radius:14px;background:#FFE3E8;color:#8A1530;font-size:14px;font-weight:600}
.btn[disabled]{opacity:.6;cursor:progress;transform:none}
.hp{position:absolute;left:-9999px}
.menu-empty{grid-column:1/-1;text-align:center;padding:40px 0}
body.locked{overflow:hidden}

/* age gate */
.agegate{position:fixed;inset:0;z-index:300;background:#0B0711;color:#F7F5FB;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;transition:opacity .5s ease,visibility .5s}
.agegate.leaving{opacity:0;visibility:hidden}
.agegate-glow{position:absolute;width:760px;height:760px;max-width:160vw;max-height:160vw;border-radius:50%;background:radial-gradient(circle,rgba(154,109,242,.35),rgba(154,109,242,0) 66%);pointer-events:none}
.agegate-in{position:relative;display:flex;flex-direction:column;align-items:center;gap:28px;text-align:center;max-width:640px}
.agegate h1{margin:8px 0 0;font-size:clamp(56px,10vw,96px);line-height:.9}
.agegate .ag-btn{min-width:160px;min-height:56px;padding:0 32px;border-radius:999px;font:600 17px 'Instrument Sans',sans-serif;border:0;cursor:pointer}
.agegate .ag-yes{background:#9A6DF2;color:#0B0711}
.agegate .ag-yes:hover{background:#C9B3FF}
.agegate .ag-no{background:transparent;color:#F7F5FB;box-shadow:inset 0 0 0 1.5px rgba(247,245,251,.4)}
.agegate .ag-no:hover{box-shadow:inset 0 0 0 1.5px #C9B3FF}
.band-wrap{overflow-x:clip}
html{overflow-x:clip}
@media (max-width:640px){.book-h{font-size:clamp(44px,13.5vw,64px) !important;overflow-wrap:anywhere}.book .stack{min-width:0}}
.split>*{min-width:0}
.form{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:640px){.form{grid-template-columns:minmax(0,1fr)}.book-h{font-size:clamp(34px,12vw,64px) !important}}
.fld input,.fld select,.fld textarea{width:100%;min-width:0}
/* result cards */
.done-title{font-size:clamp(56px,12vw,104px);line-height:.9;padding-bottom:.04em}
.done p{overflow-wrap:break-word}
.si.si-done i{position:relative;color:transparent}
.si.si-done i::after{content:'';position:absolute;width:6px;height:11px;border:solid #1A0F2E;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}
@media (max-width:640px){.done{padding:44px 22px;border-radius:26px}.steps-ind{padding:6px 10px;gap:6px;font-size:12px}.si{gap:6px}.si i{width:24px;height:24px}.si-line{width:12px}}
@media (max-width:360px){.si-line{display:none}}
/* summary rows: labels never wrap, values right-align */
.sum .spec>span{flex:0 0 auto}
.sum .spec>b{text-align:right;min-width:0}
.review .btn{white-space:normal;text-align:center;line-height:1.2}
.amt{font-size:clamp(44px,13vw,68px)}
@media (max-width:640px){
.review{padding:24px 18px;gap:16px;border-radius:26px}
.review .d{font-size:clamp(36px,11vw,48px) !important}
.review .seg button{font-size:14px;padding:0 8px}
.sum{padding:2px 14px}
.sum .spec{font-size:14px;gap:12px}
}
.btn svg{flex:0 0 auto}
/* Footer wordmark: sized to its container so it never clips.
   "DRINK PURPLE" in Big Shoulders 900 is ~5.12x its font-size wide,
   so 19.2% of the container width fills it with a little room to spare. */
footer .wrap{container-type:inline-size}
.mega{font-size:clamp(40px,14vw,230px);white-space:nowrap;padding-bottom:.04em}
@supports (font-size:1cqi){.mega{font-size:19.2cqi}}
