:root{--cream:#f5f0e8;--ink:#171717;--pink:#ff2d8b;--yellow:#ffe135;--blue:#17a9ff;--green:#80e342;--line:2px solid var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--cream)}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}button,a{font:inherit}button{color:inherit}a{color:inherit}img{max-width:100%;display:block}::selection{color:var(--cream);background:var(--pink)}
.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:10px 14px;transform:translateY(-150%);background:var(--yellow);border:var(--line)}.skip-link:focus{transform:none}
.ticker{height:34px;overflow:hidden;color:var(--cream);background:var(--ink);font-family:"Bebas Neue";letter-spacing:.12em;white-space:nowrap}.ticker__track{display:flex;width:max-content;animation:ticker 24s linear infinite}.ticker span{padding:7px 0;min-width:max-content}@keyframes ticker{to{transform:translateX(-50%)}}
.nav{position:absolute;z-index:20;top:34px;left:0;right:0;height:82px;padding:15px clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;color:var(--cream);border-bottom:1px solid #ffffff47}.wordmark{font-family:"New Rocker";font-size:clamp(2rem,4vw,3.1rem);line-height:1;text-decoration:none}.nav nav{display:flex;gap:28px}.nav nav a{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.nav nav a:hover{color:var(--yellow)}
.pill{min-height:48px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);font-weight:800;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;border:var(--line);border-radius:999px;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:.18s}.pill:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}.pill--dark{color:var(--cream);background:var(--ink);border-color:var(--cream);box-shadow:4px 4px 0 var(--cream)}.pill--pink{background:var(--pink)}.pill--yellow{background:var(--yellow)}.pill--cream{background:var(--cream)}
.hero{position:relative;min-height:min(880px,calc(100svh - 34px));padding:154px clamp(24px,7vw,100px) 84px;display:flex;align-items:center;overflow:hidden;color:var(--cream);background:#0b1424}.hero__photo,.hero__wash{position:absolute;inset:0}.hero__photo{background:url("assets/partay-rooftop-hero.jpg") center 38%/cover no-repeat;animation:heroIn 1.2s ease both}.hero__wash{background:linear-gradient(90deg,#030914eb 0%,#0309149e 44%,#0309140f 78%),linear-gradient(0deg,#0007,transparent 45%)}@keyframes heroIn{from{transform:scale(1.08);filter:saturate(.6)}}.hero__content{position:relative;z-index:3;max-width:680px}.eyebrow,.kicker{margin:0 0 18px;font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1{margin:0;font-family:"Bebas Neue";font-size:clamp(5.5rem,10.8vw,10.5rem);font-weight:400;letter-spacing:-.025em;line-height:.73}.hero h1 span{display:block}.hero h1 em{display:block;margin:.15em 0 .1em;color:var(--yellow);font-family:"New Rocker";font-size:.38em;font-style:normal;line-height:1;transform:rotate(-6deg);transform-origin:left center}.hero__lede{max-width:560px;margin:24px 0 0;font-size:clamp(1rem,1.4vw,1.2rem);font-weight:600;line-height:1.6}.hero__actions{display:flex;align-items:center;gap:24px;margin-top:28px}.text-link{padding:10px 0;color:var(--cream);background:none;border:0;border-bottom:1px solid;cursor:pointer}.hero__proof{display:flex;gap:clamp(24px,4vw,60px);margin-top:46px}.hero__proof div{display:grid}.hero__proof strong{color:var(--yellow);font-family:"Bebas Neue";font-size:2rem;font-weight:400}.hero__proof span{font-size:.7rem;font-weight:700;text-transform:uppercase}.hero__stamp{position:absolute;z-index:4;right:4.5vw;bottom:68px;width:150px;aspect-ratio:1;display:grid;place-content:center;text-align:center;color:var(--ink);background:var(--yellow);border:3px solid var(--ink);border-radius:50%;box-shadow:8px 8px 0 var(--pink);font-family:"Bebas Neue";font-size:1.5rem;line-height:.85;transform:rotate(8deg);animation:bob 3s ease-in-out infinite}.hero__stamp b{font-family:"New Rocker";font-size:1.1rem}@keyframes bob{50%{transform:rotate(4deg) translateY(-9px)}}.bubbles i{position:absolute;z-index:2;width:10px;aspect-ratio:1;bottom:-30px;border:1px solid #fff9;border-radius:50%;animation:bubble 7s infinite ease-in}.bubbles i:nth-child(1){left:54%}.bubbles i:nth-child(2){left:62%;width:18px;animation-delay:2s}.bubbles i:nth-child(3){left:71%;animation-delay:3.3s}.bubbles i:nth-child(4){left:82%;width:15px;animation-delay:1.1s}.bubbles i:nth-child(5){left:90%;width:23px;animation-delay:4.6s}.bubbles i:nth-child(6){left:47%;width:5px;animation-delay:5.2s}@keyframes bubble{0%{transform:translateY(0) scale(.7);opacity:0}15%{opacity:1}100%{transform:translateY(-760px) scale(1.4);opacity:0}}
.thirst{padding:clamp(70px,9vw,130px) clamp(24px,7vw,100px);display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:6vw;background:var(--yellow)}.thirst h2,.section-heading h2,.anywhere h2,.reveal-price h2,.closing h2{margin:0;font-family:"Bebas Neue";font-size:clamp(4.4rem,8vw,8rem);font-weight:400;line-height:.82}.thirst__copy>p:last-child{max-width:460px;font-size:1.1rem;font-weight:600;line-height:1.65}.scribble{color:var(--pink);font-family:"New Rocker";font-size:.7em}.glass-row{display:flex;align-items:end;justify-content:center;gap:clamp(12px,3vw,40px);min-height:430px}.glass{--tilt:0deg;position:relative;width:clamp(110px,14vw,190px);height:clamp(260px,31vw,420px);padding:0;overflow:hidden;color:#fff;background:#ffffff2e;border:3px solid var(--ink);border-radius:16px 16px 40px 40px;box-shadow:inset 0 0 0 7px #ffffff40,9px 12px 0 #17171726;cursor:pointer;transform-origin:bottom;transition:.35s}.glass:after{content:"";position:absolute;inset:14% 0 0;background:var(--liquid)}.glass:hover,.glass.active{transform:translateY(-16px) rotate(var(--tilt))}.glass.blue{--liquid:linear-gradient(#46d7ff,#0074e9);--tilt:-3deg}.glass.pink{--liquid:linear-gradient(#ff75bb,#ec006c);--tilt:2deg}.glass.green{--liquid:linear-gradient(#bdff60,#45b92b);--tilt:4deg}.glass span{position:absolute;z-index:4;left:10px;right:10px;bottom:24px;font-family:"Bebas Neue";font-size:clamp(1.6rem,2.6vw,2.6rem);line-height:.82}.ice{position:absolute;z-index:3;width:38%;aspect-ratio:1;top:23%;background:#ffffff73;border:2px solid #ffffffbf;transform:rotate(23deg)}.ice.one{left:8%}.ice.two{right:8%;top:36%;transform:rotate(-17deg)}.glass .lime{position:absolute;z-index:5;width:48%;aspect-ratio:1;right:-20%;top:8%;border:9px solid #c9ff5d;border-radius:50%;background:#ffffff40}
.flavours{padding:clamp(80px,10vw,150px) clamp(24px,7vw,100px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:64px}.section-heading h2 span,.anywhere h2 span,.closing h2 span{color:var(--pink)}.flavour-stage{--flavour:var(--blue);min-height:610px;display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden;background:var(--flavour);border:3px solid var(--ink);box-shadow:12px 12px 0 var(--ink);transition:.5s}.flavour-stage[data-active-flavour=pink]{--flavour:var(--pink)}.flavour-stage[data-active-flavour=green]{--flavour:var(--green)}.flavour-copy{position:relative;z-index:2;padding:clamp(34px,5vw,70px);display:flex;flex-direction:column;justify-content:center}.flavour-count{font-family:"Bebas Neue";font-size:1.5rem}.flavour-copy h3{margin:10px 0;font-family:"Bebas Neue";font-size:clamp(4.2rem,8vw,8.5rem);font-weight:400;line-height:.78}.flavour-role{margin:22px 0 4px;font-family:"New Rocker";font-size:1.5rem}.flavour-line{font-family:"Bebas Neue";font-size:1.7rem}.flavour-copy>p:last-of-type{max-width:500px;min-height:3.2em;line-height:1.6;font-weight:600}.flavour-tabs{display:flex;gap:8px;margin-top:25px}.flavour-tabs button{padding:10px 14px;background:transparent;border:2px solid var(--ink);border-radius:999px;font-weight:800;cursor:pointer}.flavour-tabs button.active{color:var(--cream);background:var(--ink)}.flavour-visual{position:relative;display:grid;place-items:center;min-height:580px;overflow:hidden;border-left:3px solid var(--ink)}.sunburst{position:absolute;width:850px;aspect-ratio:1;background:repeating-conic-gradient(#ffffff38 0 8deg,transparent 8deg 18deg);animation:spin 30s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}#productPack{position:relative;z-index:2;width:min(72%,390px);max-height:540px;object-fit:contain;filter:drop-shadow(18px 22px 0 #0003);transform:rotate(-5deg);transition:.35s}#productPack:hover{transform:rotate(1deg) scale(1.04)}.price-sticker{position:absolute;z-index:3;right:7%;bottom:10%;width:105px;aspect-ratio:1;display:grid;place-content:center;text-align:center;background:var(--yellow);border:3px solid var(--ink);border-radius:50%;font-family:"Bebas Neue";font-size:2.4rem;line-height:.65;transform:rotate(8deg)}.price-sticker small{font-size:.65rem}
.how{padding:clamp(80px,10vw,150px) clamp(24px,7vw,100px);color:var(--cream);background:var(--ink)}.light h2 span{color:var(--yellow)}.steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #4c4c4c}.step{position:relative;min-height:420px;padding:38px;display:flex;flex-direction:column;align-items:center;justify-content:end;text-align:center;border-right:1px solid #4c4c4c}.step:last-child{border:0}.step__no{position:absolute;left:25px;top:22px;color:#777;font-family:"Bebas Neue";font-size:2rem}.step__icon{margin-bottom:36px;display:grid;place-items:center}.sachet-mini{width:90px;height:140px;color:var(--ink);background:var(--pink);border:3px solid var(--cream);font-family:"New Rocker";font-size:1.25rem;transform:rotate(-8deg);animation:tearWiggle 2.6s ease-in-out infinite}@keyframes tearWiggle{0%,100%{transform:rotate(-8deg) translateY(0)}25%{transform:rotate(-14deg) translateY(-8px) scale(1.04)}50%{transform:rotate(-4deg) translateY(-3px)}75%{transform:rotate(-11deg) translateY(-6px) scale(1.02)}}.water-cup{position:relative;width:100px;height:135px;overflow:hidden;border:3px solid var(--cream);border-radius:8px 8px 28px 28px}.water-cup i{position:absolute;inset:38% 0 0;background:var(--blue);animation:wave 2s infinite}@keyframes wave{50%{transform:translateY(8px) rotate(2deg)}}.stir-icon{width:120px;aspect-ratio:1;color:var(--yellow);border:4px solid var(--yellow);border-radius:50%;font-size:5rem;animation:spin 6s linear infinite}.step h3{margin:0;font-family:"Bebas Neue";font-size:3.4rem;font-weight:400}.step p{color:#bbb;line-height:1.6}
.anywhere{min-height:760px;display:grid;grid-template-columns:1.2fr .8fr;background:var(--pink)}.anywhere__photo{position:relative;min-height:650px;margin:0;overflow:hidden;border-right:3px solid var(--ink)}.anywhere__photo img{width:100%;height:100%;object-fit:cover}.anywhere__photo figcaption{position:absolute;left:25px;bottom:25px;padding:10px 14px;background:var(--yellow);border:var(--line);font-size:.75rem;font-weight:800;text-transform:uppercase;transform:rotate(-2deg)}.anywhere__copy{padding:clamp(55px,7vw,100px);display:flex;flex-direction:column;justify-content:center}.anywhere__copy>p:not(.kicker){max-width:520px;font-size:1.05rem;font-weight:600;line-height:1.65}.anywhere h2 span{color:var(--yellow)}.occasion-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.occasion-pills span{padding:10px 14px;border:2px solid;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase}
.scenes{padding:clamp(80px,10vw,150px) clamp(24px,7vw,100px)}.scene-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.scene-card{position:relative;min-height:380px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;color:var(--cream);border:var(--line);border-radius:12px;overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}.scene-card:hover{transform:translateY(-10px) rotate(-1deg);box-shadow:8px 12px 0 var(--ink)}.scene-card__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;transition:transform .5s ease}.scene-card:hover .scene-card__bg{transform:scale(1.08)}.scene-card__overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#00000070 0%,#00000030 40%,#000000e6 100%)}.scene-card__no{position:relative;z-index:3;align-self:flex-start;padding:6px 12px;color:var(--ink);background:var(--yellow);border:2px solid var(--ink);border-radius:999px;font-family:"Bebas Neue";font-size:1.1rem;line-height:1;box-shadow:3px 3px 0 var(--ink)}.scene-card:nth-child(2) .scene-card__no{background:var(--pink);color:#fff}.scene-card:nth-child(3) .scene-card__no{background:var(--blue);color:#fff}.scene-card:nth-child(4) .scene-card__no{background:var(--cream);color:var(--ink)}.scene-card__body{position:relative;z-index:3;margin-top:auto}.scene-card h3{margin:0 0 8px;font-family:"Bebas Neue";font-size:clamp(2.4rem,3vw,3rem);font-weight:400;line-height:.88;color:#fff;text-shadow:0 2px 8px #0008}.scene-card p{margin:0;font-size:.9rem;font-weight:600;line-height:1.45;color:#e8e8e8;text-shadow:0 1px 4px #0009}
.insight{padding:clamp(70px,8vw,110px) clamp(24px,7vw,100px);display:grid;grid-template-columns:.7fr 1fr .8fr;align-items:center;gap:5vw;color:var(--cream);background:var(--ink);border-block:14px solid var(--pink)}.insight__number{color:var(--yellow);font-family:"Bebas Neue";font-size:clamp(8rem,18vw,16rem);line-height:.7}.insight__copy p{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:700;line-height:1.4}.insight__citation{display:block;margin-top:12px;color:var(--yellow);font-size:.78rem;font-weight:600;opacity:.9}.insight__aside{padding:25px;border:2px solid var(--pink);font-family:"New Rocker";font-size:1.3rem;line-height:1.5;transform:rotate(3deg)}
.where{padding:clamp(80px,10vw,150px) clamp(24px,7vw,100px);color:var(--cream);background:#0b0b0b}.where__top{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:5vw}.where__top .section-heading{display:block}.where__note{max-width:440px;padding:22px;display:flex;gap:14px;border:1px solid #555;line-height:1.6}.pulse{flex:0 0 12px;height:12px;margin-top:5px;background:var(--pink);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 14px #ff2d8b00}}.availability{display:grid;grid-template-columns:1fr 1fr 1.3fr;margin-top:60px;border:1px solid #555}.city-card,.bulk-card{min-height:390px;padding:35px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;border-right:1px solid #555}.availability article:last-child{border:0}.availability p{color:#aaa;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.availability h3{margin:auto 0;font-family:"Bebas Neue";font-size:clamp(3rem,5vw,5.5rem);font-weight:400;line-height:.84}.bulk-card{color:var(--ink);background:var(--pink)}.bulk-card p{color:var(--ink)}
.reveal-price{position:relative;min-height:680px;display:grid;place-items:center;overflow:hidden;text-align:center;background:var(--yellow)}.reveal-price:before{content:"";position:absolute;width:900px;aspect-ratio:1;background:repeating-conic-gradient(transparent 0 9deg,#fff6 9deg 18deg);animation:spin 40s linear infinite}.price-before,.price-after{position:relative;z-index:2}.price-before p{font-family:"New Rocker";font-size:1.8rem}.price-button{margin-top:35px;padding:17px 28px;color:var(--cream);background:var(--ink);border:0;border-radius:999px;font-weight:800;cursor:pointer;animation:nudge 1.5s infinite}@keyframes nudge{50%{transform:scale(1.05)}}.price-after{display:none}.price-after.show{display:block;animation:pop .5s}@keyframes pop{from{transform:scale(.2) rotate(-10deg);opacity:0}}.price-after span,.price-after strong{font-family:"Bebas Neue";line-height:.7}.price-after span{font-size:6rem;vertical-align:top}.price-after strong{font-size:clamp(14rem,30vw,27rem)}.price-after p{font-weight:900;letter-spacing:.12em}
.closing{--closing-accent:var(--green);--closing-glow:#80e34255;position:relative;min-height:760px;padding:clamp(80px,10vw,140px) clamp(24px,7vw,100px);display:grid;grid-template-columns:1fr 1fr;align-items:center;color:var(--cream);background:radial-gradient(circle at 76% 48%,var(--closing-glow),transparent 29%),var(--ink);overflow:hidden;isolation:isolate;transition:background .7s ease}.closing[data-closing-flavour=blue]{--closing-accent:var(--blue);--closing-glow:#17a9ff66}.closing[data-closing-flavour=pink]{--closing-accent:var(--pink);--closing-glow:#ff2d8b66}.closing__content{position:relative;z-index:5}.closing__content .wordmark{margin:0 0 30px;color:var(--yellow);font-size:4rem}.closing__content>p:not(.wordmark){max-width:420px;margin:30px 0;color:#bbb;line-height:1.6}.closing__visual{position:relative;min-height:520px;display:grid;place-items:center;perspective:900px}.closing__visual:before{content:"";position:absolute;width:360px;aspect-ratio:1;background:var(--closing-accent);border-radius:50%;filter:blur(95px);opacity:.22;animation:closingGlow 2.4s ease-in-out infinite;transition:background .6s}.closing__visual img{position:relative;z-index:4;width:min(68%,330px);max-height:500px;object-fit:contain;filter:drop-shadow(18px 20px 0 var(--pink));transform:rotate(7deg);transition:filter .6s}.closing[data-closing-flavour=blue] .closing__visual img{filter:drop-shadow(18px 20px 0 #ffe135)}.closing[data-closing-flavour=pink] .closing__visual img{filter:drop-shadow(18px 20px 0 #17a9ff)}.closing__visual img.is-leaving{animation:packLeave .25s cubic-bezier(.7,0,1,.4) both}.closing__visual img.is-entering{animation:packEnter .42s cubic-bezier(.16,1,.3,1) both}@keyframes packLeave{to{opacity:0;transform:translate3d(90px,-20px,0) rotate(18deg) scale(.74);filter:blur(8px)}}@keyframes packEnter{from{opacity:0;transform:translate3d(-100px,40px,0) rotate(-18deg) scale(.72);filter:blur(10px)}to{opacity:1;transform:rotate(7deg)}}@keyframes closingGlow{50%{transform:scale(1.16);opacity:.36}}.orbit{position:absolute;z-index:1;width:430px;aspect-ratio:1;border:2px dashed var(--closing-accent);border-radius:50%;animation:spin 18s linear infinite;transition:border-color .6s}.orbit:before,.orbit:after{content:"";position:absolute;border-radius:50%;inset:35px;border:1px solid color-mix(in srgb,var(--closing-accent) 65%,transparent);animation:spin 12s linear infinite reverse}.orbit:after{inset:74px;border-style:dotted;animation-duration:8s;animation-direction:normal}.closing__fx{position:absolute;z-index:2;inset:0;pointer-events:none}.closing__fx i{position:absolute;width:18px;aspect-ratio:1;border:2px solid var(--closing-accent);border-radius:50%;opacity:.75;animation:fizzUp 3.2s ease-in infinite;transition:border-color .6s,background .6s}.closing__fx i:nth-child(1){left:20%;bottom:10%;animation-delay:-.4s}.closing__fx i:nth-child(2){left:35%;bottom:2%;width:10px;animation-delay:-1.7s}.closing__fx i:nth-child(3){left:68%;bottom:8%;width:26px;animation-delay:-2.5s}.closing__fx i:nth-child(4){left:79%;bottom:22%;width:12px;animation-delay:-.9s}.closing__fx i:nth-child(5){left:8%;bottom:30%;width:8px;animation-delay:-2.1s}.closing__fx i:nth-child(6){left:88%;bottom:4%;width:7px;animation-delay:-1.2s}@keyframes fizzUp{0%{transform:translateY(0) scale(.6);opacity:0}18%{opacity:.8}100%{transform:translateY(-420px) scale(1.4);opacity:0}}.closing__fx b{position:absolute;z-index:-1;width:85px;height:24px;right:7%;top:19%;background:var(--closing-accent);border-radius:60% 20% 55% 30%;opacity:.32;transform:rotate(-28deg);animation:splashFloat 5s ease-in-out infinite;transition:background .6s}.closing__fx b:nth-of-type(2){right:67%;top:65%;width:55px;transform:rotate(48deg);animation-delay:-1.8s}.closing__fx b:nth-of-type(3){right:12%;top:70%;width:42px;transform:rotate(18deg);animation-delay:-3.1s}@keyframes splashFloat{50%{translate:0 -18px;rotate:10deg;scale:1.14}}.closing[data-closing-flavour=green] .closing__fx b{height:35px;border-radius:100% 0 100% 0;opacity:.42}.closing[data-closing-flavour=pink] .closing__fx i{border-radius:42% 58% 33% 67%;background:#ff2d8b33}.closing__flavour{position:absolute;z-index:5;right:1%;top:7%;padding:9px 13px;color:var(--ink);background:var(--closing-accent);border:2px solid var(--ink);font-family:"Bebas Neue";font-size:1.1rem;letter-spacing:.08em;transform:rotate(3deg);transition:background .6s}.closing__dots{position:absolute;z-index:6;bottom:2%;display:flex;gap:10px}.closing__dots button{width:13px;aspect-ratio:1;padding:0;background:transparent;border:2px solid var(--cream);border-radius:50%;cursor:pointer;transition:.25s}.closing__dots button.active{width:34px;background:var(--closing-accent);border-color:var(--closing-accent);border-radius:999px}
footer{min-height:140px;padding:35px clamp(24px,5vw,70px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;background:var(--pink);border-top:3px solid var(--ink)}.footer__links{display:flex;gap:20px;align-items:center}.footer__links a{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;color:var(--ink)}.footer__links a:hover{text-decoration:underline}footer p{margin:0;font-size:.7rem;font-weight:700;text-transform:uppercase}.floating-order{position:fixed;z-index:40;right:20px;bottom:20px;padding:15px 18px;background:var(--yellow);border:var(--line);border-radius:999px;box-shadow:5px 5px 0 var(--ink);font-size:.72rem;font-weight:900;cursor:pointer}
.ugc-campaign{padding:clamp(60px,7vw,100px) clamp(24px,7vw,100px);background:var(--cream);border-bottom:3px solid var(--ink)}.ugc-campaign__inner{max-width:800px;margin:0 auto;text-align:center}.ugc-campaign h2 span{color:var(--pink)}.ugc-campaign__actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin-top:28px;text-align:center}
.contact-section{padding:clamp(80px,10vw,140px) clamp(24px,7vw,100px);background:var(--ink);color:var(--cream);text-align:center}.contact-section h2 span{color:var(--yellow)}.contact-lead{max-width:540px;margin:15px auto 45px;font-size:1.1rem;font-weight:600;color:#ccc}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}.contact-card{background:#222;border:2px solid #444;border-radius:16px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;transition:.25s}.contact-card:hover{border-color:var(--yellow);transform:translateY(-6px)}.contact-icon{font-size:3rem;margin-bottom:12px}.contact-card h3{margin:0 0 8px;font-family:"Bebas Neue";font-size:2.2rem;font-weight:400;color:#fff}.contact-card p{margin:0 0 20px;font-size:.85rem;color:#bbb;line-height:1.5}.pill--green{background:#25d366;color:#fff;border-color:var(--ink)}
.order-modal{width:min(620px,calc(100% - 28px));padding:clamp(28px,6vw,60px);color:var(--ink);background:var(--cream);border:3px solid var(--ink);box-shadow:14px 14px 0 var(--pink)}.order-modal::backdrop{background:#000c;backdrop-filter:blur(5px)}.order-modal h2{margin:0;font-family:"Bebas Neue";font-size:clamp(3.5rem,8vw,6rem);font-weight:400;line-height:.82}.modal-close{position:absolute;top:12px;right:14px;width:38px;aspect-ratio:1;background:var(--yellow);border:var(--line);border-radius:50%;font-size:1.7rem;cursor:pointer}.order-options{display:grid;gap:10px;margin-top:28px}.order-option{width:100%;padding:18px;display:grid;text-align:left;text-decoration:none;background:#fff;border:var(--line);cursor:pointer}.order-option:hover{background:var(--yellow)}.order-option span{font-size:.62rem;font-weight:900;letter-spacing:.12em}.order-option strong{margin:5px 0}.order-option small{color:#555}.modal-note,.copy-status{font-size:.72rem;font-weight:700}.copy-status{min-height:1em;color:#078046}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.in-view{opacity:1;transform:none}
/* Loader Styles */
#site-loader { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; background: var(--ink); transition: opacity 0.6s ease, visibility 0.6s ease; }
#site-loader.hidden { opacity: 0; visibility: hidden; pointer-events: none; }
#site-loader .party-mascot-wrapper { margin-bottom: 0; width: clamp(180px, 24vw, 260px); }
#site-loader .mascot-img { animation: logoHueCycleFast 0.5s infinite linear; }
#site-loader .mascot-glow { animation: glowCycle 0.5s infinite, scalePulse 1.2s ease-in-out infinite alternate; }

/* Party Mascot Styles */
.party-mascot-wrapper { position: relative; width: clamp(150px, 18vw, 200px); margin-bottom: 28px; perspective: 1000px; }
.party-mascot-float { width: 100%; height: 100%; animation: floatMascot 5s ease-in-out infinite; transform-style: preserve-3d; }
.party-mascot { position: relative; width: 100%; height: 100%; animation: swayMascot 4s ease-in-out infinite; transform-style: preserve-3d; }
.mascot-img { width: 100%; height: auto; display: block; object-fit: contain; transform: translateZ(20px); animation: logoHueCycle 6s infinite ease-in-out; }

@keyframes floatMascot { 0%, 100% { transform: translateY(0px) rotateX(0deg); } 50% { transform: translateY(-16px) rotateX(8deg); } }
@keyframes swayMascot { 0%, 100% { transform: rotate(0deg) rotateY(-6deg); } 50% { transform: rotate(4deg) rotateY(10deg); } }

@keyframes logoHueCycle {
  0%, 25% { filter: hue-rotate(155deg) saturate(2.6) brightness(1.1) drop-shadow(0 0 20px rgba(23,169,255,0.75)) drop-shadow(0 15px 30px rgba(0,0,0,0.5)); }
  33%, 58% { filter: hue-rotate(285deg) saturate(3.2) brightness(1.05) drop-shadow(0 0 20px rgba(255,45,139,0.75)) drop-shadow(0 15px 30px rgba(0,0,0,0.5)); }
  66%, 91% { filter: hue-rotate(50deg) saturate(2.4) brightness(1.15) drop-shadow(0 0 20px rgba(128,227,66,0.75)) drop-shadow(0 15px 30px rgba(0,0,0,0.5)); }
  100% { filter: hue-rotate(155deg) saturate(2.6) brightness(1.1) drop-shadow(0 0 20px rgba(23,169,255,0.75)) drop-shadow(0 15px 30px rgba(0,0,0,0.5)); }
}

@keyframes logoHueCycleFast {
  0%, 25% { filter: hue-rotate(155deg) saturate(2.6) brightness(1.1) drop-shadow(0 0 25px rgba(23,169,255,0.9)) drop-shadow(0 20px 35px rgba(0,0,0,0.6)); }
  33%, 58% { filter: hue-rotate(285deg) saturate(3.2) brightness(1.05) drop-shadow(0 0 25px rgba(255,45,139,0.9)) drop-shadow(0 20px 35px rgba(0,0,0,0.6)); }
  66%, 91% { filter: hue-rotate(50deg) saturate(2.4) brightness(1.15) drop-shadow(0 0 25px rgba(128,227,66,0.9)) drop-shadow(0 20px 35px rgba(0,0,0,0.6)); }
  100% { filter: hue-rotate(155deg) saturate(2.6) brightness(1.1) drop-shadow(0 0 25px rgba(23,169,255,0.9)) drop-shadow(0 20px 35px rgba(0,0,0,0.6)); }
}

.mascot-glow { position: absolute; top: 50%; left: 50%; width: 140%; height: 140%; transform: translate(-50%, -50%) translateZ(-20px); border-radius: 50%; filter: blur(32px); opacity: 0.6; z-index: -1; animation: glowCycle 6s infinite, scalePulse 3s ease-in-out infinite alternate; }

@keyframes glowCycle {
  0%, 25% { background: var(--blue); }
  33%, 58% { background: var(--pink); }
  66%, 91% { background: var(--green); }
  100% { background: var(--blue); }
}
@keyframes scalePulse { 0% { transform: translate(-50%, -50%) translateZ(-20px) scale(0.85); } 100% { transform: translate(-50%, -50%) translateZ(-20px) scale(1.18); } }

.sparkles-container { position: absolute; inset: -15%; pointer-events: none; }
.sparkle { position: absolute; color: #fff; font-size: 1.4rem; line-height: 1; text-shadow: 0 0 10px rgba(255, 255, 255, 0.9); animation: sparkleTwinkle 2s infinite alternate ease-in-out; }
.sparkle.s1 { top: 6%; left: 4%; font-size: 1.6rem; animation-delay: 0s; }
.sparkle.s2 { top: 8%; right: 4%; font-size: 1.8rem; animation-delay: 0.5s; }
.sparkle.s3 { bottom: 18%; left: 0%; font-size: 1.2rem; animation-delay: 1.1s; }
.sparkle.s4 { bottom: 10%; right: 2%; font-size: 1.5rem; animation-delay: 0.8s; }

@keyframes sparkleTwinkle {
  0% { opacity: 0.2; transform: scale(0.6) rotate(0deg); }
  100% { opacity: 1; transform: scale(1.3) rotate(45deg); filter: drop-shadow(0 0 8px #fff); }
}
/* ==========================================================================
   5-TIER RESPONSIVE BREAKPOINT SYSTEM
   ========================================================================== */

/* Tier 1: Extra Large Displays (>= 1440px) */
@media (min-width: 1440px) {
  .hero__content { max-width: 780px; }
  .hero h1 { font-size: 10.5rem; }
  .flavour-stage { min-height: 660px; }
  .scene-cards { gap: 20px; }
}

/* Tier 2: Desktop & Laptops (1024px - 1439px) */
@media (max-width: 1280px) {
  .hero { padding-inline: clamp(24px, 5vw, 72px); }
  .scene-card h3 { font-size: clamp(2rem, 2.5vw, 2.8rem); }
}

/* Tier 3: Tablets & iPads (768px - 1023px) */
@media (max-width: 1024px) {
  .nav nav { display: none; }
  .hero { align-items: flex-end; }
  .hero__wash { background: linear-gradient(0deg, #030914f7 0%, #03091473 65%, #03091426 100%); }
  .hero__stamp { right: 28px; bottom: 260px; width: 120px; font-size: 1.3rem; }
  .thirst, .flavour-stage, .anywhere, .closing { grid-template-columns: 1fr; }
  .flavour-visual { border-left: 0; border-top: 3px solid var(--ink); min-height: 520px; }
  .anywhere__photo { min-height: 520px; border-right: 0; border-bottom: 3px solid var(--ink); }
  .scene-cards { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .insight { grid-template-columns: 1fr 1fr; }
  .insight__aside { grid-column: 1 / -1; }
  .where__top { grid-template-columns: 1fr; }
  .availability { grid-template-columns: 1fr 1fr; }
  .bulk-card { grid-column: 1 / -1; border-top: 1px solid #555; border-right: 0; }
}

/* Tier 4: Small Tablets & Mobile Landscape (480px - 767px) */
@media (max-width: 768px) {
  .hero { min-height: 820px; padding: 130px 24px 60px; }
  .steps { grid-template-columns: 1fr; }
  .step { min-height: 320px; border-right: 0; border-bottom: 1px solid #4c4c4c; }
  .insight { grid-template-columns: 1fr; text-align: center; }
  .insight__number { font-size: 12rem; }
  .insight__aside { grid-column: auto; }
  .scene-card { min-height: 320px; }
  .contact-cards { grid-template-columns: 1fr; }
  .closing { text-align: center; grid-template-columns: 1fr; }
  .closing__visual { min-height: 420px; }
  .orbit { width: 340px; }
  footer { flex-direction: column; align-items: flex-start; gap: 16px; padding-bottom: 90px; }
  .footer__links { flex-wrap: wrap; gap: 12px; }
  .floating-order { left: 16px; right: 16px; width: calc(100% - 32px); text-align: center; }
}

/* Tier 5: Mobile Portrait (< 480px) */
@media (max-width: 480px) {
  .nav { height: 64px; padding: 10px 16px; }
  .nav .wordmark { font-size: 1.85rem; }
  .nav .pill { min-height: 42px; padding: 8px 12px; font-size: .68rem; }
  .hero { min-height: 780px; padding: 110px 16px 40px; }
  .hero__photo { background-position: 62% center; }
  .hero h1 { font-size: clamp(4.5rem, 20vw, 6.8rem); }
  .hero__actions { flex-direction: column; align-items: stretch; gap: 10px; }
  .hero__actions .pill { width: 100%; }
  .hero__proof { gap: 16px; }
  .hero__stamp { right: 16px; bottom: 210px; width: 92px; font-size: 1.1rem; }
  .thirst, .flavours, .how, .scenes, .where, .closing { padding-inline: 16px; }
  .thirst h2, .section-heading h2, .anywhere h2, .closing h2 { font-size: clamp(3.6rem, 16vw, 5.2rem); }
  .glass-row { min-height: 310px; gap: 6px; }
  .glass span { font-size: 1.3rem; }
  .flavour-copy { padding: 28px 18px 34px; }
  .flavour-copy h3 { font-size: 4.2rem; }
  .flavour-visual { min-height: 420px; }
  #productPack { width: 78%; max-height: 360px; }
  .anywhere__photo { min-height: 380px; }
  .anywhere__copy { padding: 45px 18px; }
  .scene-cards, .availability { grid-template-columns: 1fr; }
  .city-card, .bulk-card { min-height: 300px; border-right: 0; border-bottom: 1px solid #555; }
  .price-after strong { font-size: 13rem; }
}

/* Reduced Motion Safety */
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  .reveal { opacity: 1; transform: none; }
}

/* ==========================================================================
   SEO ADDITIONS: solid nav for inner pages, FAQ, recipes strip
   ========================================================================== */
.nav--solid{position:sticky;top:0;background:var(--ink);border-bottom:3px solid var(--pink)}
.nav--solid + main.legal-page{padding-top:56px}
.faq{padding:clamp(80px,10vw,140px) clamp(24px,7vw,100px);background:var(--cream)}
.faq__list{max-width:980px}
.faq details{margin-bottom:14px;background:#fff;border:var(--line);border-radius:12px;box-shadow:5px 5px 0 var(--ink);transition:.18s}
.faq details[open]{box-shadow:5px 5px 0 var(--pink)}
.faq summary{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:800;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";flex:0 0 auto;width:34px;aspect-ratio:1;display:grid;place-items:center;background:var(--yellow);border:var(--line);border-radius:50%;font-size:1.3rem;transition:transform .2s}
.faq details[open] summary:after{transform:rotate(45deg);background:var(--pink)}
.faq details p{margin:0;padding:0 24px 22px;max-width:760px;font-weight:600;line-height:1.65;color:#333}
.faq details a{font-weight:800}
.journal{padding:clamp(80px,10vw,140px) clamp(24px,7vw,100px);color:var(--cream);background:var(--ink)}
.journal__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.journal-card{min-height:280px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;color:var(--ink);text-decoration:none;border:3px solid var(--cream);border-radius:14px;box-shadow:8px 8px 0 var(--cream);transition:.2s}
.journal-card:hover{transform:translate(4px,4px);box-shadow:4px 4px 0 var(--cream)}
.journal-card span{margin-bottom:auto;align-self:flex-start;padding:6px 12px;background:var(--cream);border:var(--line);border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.journal-card h3{margin:24px 0 8px;font-family:"Bebas Neue";font-size:clamp(2.4rem,3.4vw,3.2rem);font-weight:400;line-height:.88}
.journal-card p{margin:0;font-weight:700}
.journal-card--blue{background:var(--blue)}.journal-card--green{background:var(--green)}.journal-card--pink{background:var(--pink)}
.journal__all{margin:44px 0 0}
@media (max-width:1024px){.journal__grid{grid-template-columns:1fr}.journal-card{min-height:220px}}
@media (max-width:480px){.faq,.journal{padding-inline:16px}.faq summary{padding:16px 18px}.faq details p{padding:0 18px 18px}}
