:root{
  --yellow:#f4ff38;--ink:#050507;--paper:#f3f4ec;--muted:#9a9da8;
  --flavour-a:#1ee7ff;--flavour-b:#4362ff;--flavour-c:#b6fbff;
  --mix-a:#c735ff;--mix-b:#25f2ff;--mix-c:#ffdb3d;
  --ease:cubic-bezier(.16,.84,.23,1);--cursor-x:50vw;--cursor-y:50vh;
}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#050507;color:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea{font:inherit}button{color:inherit}.noscript{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#050507}.hidden{position:absolute!important;left:-10000px!important}
body:before{content:"";position:fixed;inset:0;z-index:-6;background:radial-gradient(circle at 50% 20%,#18212b 0,#080a0f 38%,#030305 76%);transition:background 1.2s var(--ease)}
#flavourBackdrop{position:fixed;inset:0;z-index:-5;width:100%;height:100%;opacity:.78;transition:opacity .8s}.wallpaper{position:fixed;inset:-12%;z-index:-4;overflow:hidden;filter:saturate(1.25);pointer-events:none}.wallpaper__blob{position:absolute;width:42vw;height:42vw;border-radius:50%;filter:blur(80px);opacity:.16;mix-blend-mode:screen;will-change:transform,background;transition:background 1s}.wallpaper__blob--a{left:-8%;top:2%;background:var(--flavour-a);animation:blobA 14s ease-in-out infinite alternate}.wallpaper__blob--b{right:-8%;top:18%;background:var(--flavour-b);animation:blobB 17s ease-in-out infinite alternate}.wallpaper__blob--c{left:30%;bottom:-25%;background:var(--flavour-c);animation:blobC 12s ease-in-out infinite alternate}.wallpaper__beam{position:absolute;width:80vw;height:12vw;border:1px solid color-mix(in srgb,var(--flavour-a) 36%,transparent);border-radius:50%;filter:blur(1px);opacity:.28;transform:rotate(-18deg)}.wallpaper__beam--a{left:-15%;top:28%;animation:beam 18s linear infinite}.wallpaper__beam--b{right:-25%;bottom:20%;transform:rotate(23deg);animation:beam 22s linear infinite reverse}.grain{position:fixed;inset:0;z-index:500;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.cursor-glow{position:fixed;z-index:2;left:var(--cursor-x);top:var(--cursor-y);width:44vw;height:44vw;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--flavour-a) 12%,transparent),transparent 66%);transition:background .8s}
@keyframes blobA{to{transform:translate(20vw,16vh) scale(1.25)}}@keyframes blobB{to{transform:translate(-18vw,-12vh) scale(.8)}}@keyframes blobC{to{transform:translate(8vw,-20vh) scale(1.15)}}@keyframes beam{to{transform:rotate(342deg)}}
.preloader{position:fixed;inset:0;z-index:900;background:#030304;display:grid;place-items:center;align-content:center;gap:20px;transition:opacity .8s,visibility .8s}.preloader.is-hidden{opacity:0;visibility:hidden}.preloader__sign{position:relative;width:min(530px,80vw);height:130px;display:flex;align-items:center;justify-content:center}.preloader__sign svg{position:absolute;left:2%;width:36%;height:100%;fill:none;stroke:var(--yellow);stroke-width:4;filter:drop-shadow(0 0 12px var(--yellow))}.preloader__sign path{stroke-dasharray:240;stroke-dashoffset:240;animation:draw 1.2s var(--ease) forwards}.preloader__sign path:nth-child(2){animation-delay:.12s}.preloader__sign path:nth-child(3){animation-delay:.24s}.preloader__sign strong{font-size:clamp(42px,7vw,86px);letter-spacing:-.055em;color:var(--yellow);text-shadow:0 0 18px #f4ff3866;opacity:0;animation:fadeIn .6s .65s forwards}.preloader p{font-size:10px;letter-spacing:.28em;color:#727681}.transition-curtain{position:fixed;inset:0;z-index:800;pointer-events:none;visibility:hidden}.curtain{position:absolute;left:0;width:100%;height:52%;background:#020203;transform:scaleY(0);will-change:transform}.curtain--top{top:0;transform-origin:top}.curtain--bottom{bottom:0;transform-origin:bottom}.transition-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0}.transition-mark svg{position:absolute;width:min(430px,72vw);height:160px;fill:none;stroke:var(--yellow);stroke-width:4;filter:drop-shadow(0 0 12px #f4ff38aa)}.transition-mark b{font-size:clamp(46px,7vw,96px);letter-spacing:-.06em;color:var(--yellow);margin-left:20%;text-shadow:0 0 18px #f4ff3866}.transition-curtain.is-running{visibility:visible}.transition-curtain.is-running .curtain{animation:curtain 1.15s var(--ease) forwards}.transition-curtain.is-running .transition-mark{animation:mark 1.15s ease forwards}.transition-curtain.is-running .transition-mark svg path{stroke-dasharray:240;stroke-dashoffset:240;animation:draw .46s .25s ease forwards}
@keyframes curtain{0%{transform:scaleY(0)}35%,65%{transform:scaleY(1)}100%{transform:scaleY(0)}}@keyframes mark{0%,25%,78%,100%{opacity:0}36%,65%{opacity:1}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadeIn{to{opacity:1}}
.hud{position:fixed;z-index:100;top:0;left:0;width:100%;height:84px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff13;background:linear-gradient(180deg,#050507d9,transparent);pointer-events:none}.brand,.hud__right{pointer-events:auto}.brand{display:flex;align-items:center;gap:13px;border:0;background:transparent;cursor:pointer;padding:10px 0}.brand__rails{position:relative;width:30px;height:28px}.brand__rails i{position:absolute;left:0;bottom:0;width:3px;background:var(--yellow);box-shadow:0 0 8px #f4ff38}.brand__rails i:nth-child(1){height:28px}.brand__rails i:nth-child(2){left:8px;height:20px}.brand__rails i:nth-child(3){left:16px;height:12px}.brand b{color:var(--yellow);font-size:18px;letter-spacing:-.03em}.hud__right{display:flex;align-items:center;gap:14px}.legal{font-size:9px;letter-spacing:.2em;color:#7d8089}.hud-button{height:34px;min-width:34px;border:1px solid #ffffff1d;background:#0a0b0f9c;padding:0 11px;cursor:pointer;font-size:10px;letter-spacing:.1em}.sound{display:flex;align-items:center;gap:3px}.sound i{width:2px;height:8px;background:#fff;animation:sound 1s ease-in-out infinite alternate;animation-play-state:paused}.sound[aria-pressed="true"] i{animation-play-state:running}.sound i:nth-child(2){height:14px;animation-delay:.2s}.sound i:nth-child(3){height:5px;animation-delay:.4s}.sound span{margin-left:5px}@keyframes sound{to{height:16px}}
.stage,.scene{position:fixed;inset:0}.scene{z-index:0;opacity:0;visibility:hidden;transform:translateY(8%);filter:blur(10px);pointer-events:none;transition:none;overflow:hidden}.scene.is-active{z-index:5;opacity:1;visibility:visible;transform:none;filter:none;pointer-events:auto}.scene.is-entering-down{animation:enterDown .72s .43s var(--ease) both}.scene.is-entering-up{animation:enterUp .72s .43s var(--ease) both}.scene.is-leaving-down{animation:leaveDown .54s var(--ease) both}.scene.is-leaving-up{animation:leaveUp .54s var(--ease) both}@keyframes enterDown{from{opacity:0;transform:translateY(38%) scale(.95);filter:blur(14px)}to{opacity:1;transform:none;filter:none}}@keyframes enterUp{from{opacity:0;transform:translateY(-38%) scale(.95);filter:blur(14px)}to{opacity:1;transform:none;filter:none}}@keyframes leaveDown{to{opacity:0;transform:translateY(-24%) scale(.96);filter:blur(12px)}}@keyframes leaveUp{to{opacity:0;transform:translateY(24%) scale(.96);filter:blur(12px)}}
.eyebrow{font-size:10px;letter-spacing:.26em;color:var(--yellow);font-weight:800}.primary-cta,.ghost-cta{height:58px;border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:0 22px;font-size:11px;font-weight:900;letter-spacing:.12em;cursor:pointer;transition:transform .25s,box-shadow .25s}.primary-cta{background:var(--yellow);color:#070805;box-shadow:0 12px 38px #f4ff381c}.primary-cta:hover{transform:translateY(-3px);box-shadow:0 16px 46px #f4ff383a}.primary-cta b{font-size:19px}.ghost-cta{background:transparent;border:1px solid #ffffff25}.ghost-cta:hover{border-color:#fff;transform:translateY(-3px)}.text-link{border:0;background:transparent;padding:15px 0;display:flex;justify-content:space-between;align-items:center;width:100%;border-top:1px solid #ffffff1c;color:#fff;font-size:10px;letter-spacing:.15em;font-weight:800;cursor:pointer}.text-link i{font-style:normal;font-size:18px;color:var(--yellow)}.section-kicker{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.18em;color:#8c909a}.section-kicker span{color:var(--yellow);font-weight:800}.section-kicker i{width:52px;height:1px;background:#ffffff29}.section-kicker b{font-weight:600}.scroll-cue,.vertical-hint{position:absolute;z-index:20;right:34px;bottom:28px;display:flex;align-items:center;gap:16px;color:#7f838c;font-size:8px;letter-spacing:.2em}.scroll-cue i,.vertical-hint i{width:1px;height:38px;background:linear-gradient(var(--yellow),transparent);animation:cue 1.8s ease-in-out infinite;transform-origin:top}@keyframes cue{0%,100%{transform:scaleY(.25);opacity:.35}50%{transform:scaleY(1);opacity:1}}
/* Street */
.scene--street{background:linear-gradient(180deg,#05070c44,#020203aa)}.street-world{position:absolute;inset:-4%;transform:translate3d(var(--px,0),var(--py,0),0) scale(1.05);transition:transform .35s ease-out}.sky-haze{position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,#27536a38,transparent 25%),linear-gradient(180deg,#061018,#030406 62%)}.moon-ring{position:absolute;right:18%;top:13%;width:150px;height:150px;border:1px solid #7ddfff1e;border-radius:50%;box-shadow:0 0 80px #4bd5ff1a,inset 0 0 50px #4bd5ff0d}.distant-buildings{position:absolute;left:0;right:0;bottom:28%;height:28%;opacity:.65;background:linear-gradient(90deg,#090c12 2%,transparent 2% 5%,#0a0d13 5% 11%,transparent 11% 15%,#080b10 15% 22%,transparent 22% 27%,#0b0e14 27% 34%,transparent 34% 40%,#0a0d12 40% 47%,transparent 47% 54%,#090b10 54% 61%,transparent 61% 67%,#0b0f15 67% 76%,transparent 76% 82%,#080b10 82% 89%,transparent 89%);clip-path:polygon(0 32%,6% 32%,6% 14%,13% 14%,13% 40%,20% 40%,20% 5%,29% 5%,29% 42%,40% 42%,40% 22%,48% 22%,48% 38%,57% 38%,57% 12%,66% 12%,66% 44%,76% 44%,76% 18%,86% 18%,86% 39%,100% 39%,100% 100%,0 100%)}.wet-road{position:absolute;left:-10%;right:-10%;bottom:-8%;height:42%;background:linear-gradient(180deg,#090a0c,#020203);transform:perspective(900px) rotateX(58deg);transform-origin:bottom}.wet-road:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 18%,#ffffff08 18.2% 18.4%,transparent 18.6% 36%),linear-gradient(90deg,transparent 25%,#f4ff3812 45%,#1ee7ff13 61%,transparent 78%);filter:blur(3px)}.wet-road i{position:absolute;top:20%;height:2px;width:25%;background:#ffffff12}.wet-road i:nth-child(1){left:5%}.wet-road i:nth-child(2){left:38%}.wet-road i:nth-child(3){right:5%}.powerline{position:absolute;height:1px;background:#303640;transform-origin:left}.powerline--one{left:-5%;top:24%;width:62%;transform:rotate(6deg)}.powerline--two{right:-5%;top:18%;width:48%;transform:rotate(-8deg)}.lamp{position:absolute;bottom:28%;width:5px;height:42%;background:#202632}.lamp:before{content:"";position:absolute;top:0;width:70px;height:4px;background:#272e39}.lamp i{position:absolute;top:3px;width:25px;height:8px;background:#dffbff;box-shadow:0 0 34px 14px #8cecff2b}.lamp--left{left:9%}.lamp--left:before{left:0}.lamp--left i{left:43px}.lamp--right{right:8%}.lamp--right:before{right:0}.lamp--right i{right:43px}.vapour{position:absolute;width:35vw;height:22vw;border-radius:50%;filter:blur(55px);opacity:.22;background:#4fdcff}.vapour--one{left:15%;bottom:20%;animation:vapour 11s ease-in-out infinite alternate}.vapour--two{right:4%;bottom:10%;background:#cf36ff;animation:vapour 14s ease-in-out infinite alternate-reverse}@keyframes vapour{to{transform:translate(10vw,-8vh) scale(1.2);opacity:.09}}.flavour-store{position:absolute;width:min(660px,58vw);height:430px;left:53%;bottom:17%;transform:translateX(-50%)}.store-shadow{position:absolute;left:3%;right:3%;bottom:-25px;height:70px;border-radius:50%;background:#000;filter:blur(25px)}.store-roof{position:absolute;left:3%;right:3%;top:95px;height:45px;background:linear-gradient(#272c35,#0e1116);clip-path:polygon(3% 0,97% 0,100% 100%,0 100%);box-shadow:0 12px 18px #000}.store-sign{position:absolute;z-index:4;left:5%;top:0;width:72%;height:125px;display:flex;align-items:center;background:#08090c;border:1px solid #ffffff22;box-shadow:0 8px 35px #000}.store-sign svg{width:31%;height:100%;fill:none;stroke:var(--yellow);stroke-width:5;filter:drop-shadow(0 0 8px #f4ff38)}.store-sign strong{display:block;color:var(--yellow);font-size:clamp(32px,4.6vw,66px);letter-spacing:-.07em;text-shadow:0 0 14px #f4ff386b}.store-sign small{display:block;font-size:8px;letter-spacing:.3em;color:#9ca07d}.store-shell{position:absolute;left:8%;right:0;top:132px;bottom:0;background:linear-gradient(180deg,#1b2028,#0b0e13);border:1px solid #ffffff1b;display:grid;grid-template-columns:1fr 26% 27%;overflow:hidden}.store-window{position:relative;background:linear-gradient(180deg,#141923,#080b10);border-right:7px solid #242a33;overflow:hidden}.store-window:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#ffffff09,transparent 38%,#ffffff06 43%,transparent 49%)}.shelf{position:absolute;left:5%;right:5%;height:4px;background:#484f59;box-shadow:0 10px 16px #000}.shelf--1{top:42%}.shelf--2{top:76%}.display-bottle{position:absolute;bottom:26%;width:32px;height:71px;border:2px solid #ffffff39;border-radius:7px 7px 12px 12px;box-shadow:0 0 22px currentColor;background:linear-gradient(90deg,#ffffff21,transparent 36%),currentColor}.display-bottle:before{content:"";position:absolute;left:7px;right:7px;top:-17px;height:16px;border-radius:3px 3px 0 0;background:#141820;border:1px solid #ffffff34}.bottle--cyan{left:12%;color:#25dcff}.bottle--pink{left:31%;color:#ff2bc8}.bottle--yellow{left:51%;color:#ffd53d}.bottle--green{left:70%;color:#74ff6b}.store-door{display:grid;place-items:center;background:#080a0e;border-right:5px solid #242a33;position:relative}.store-door:after{content:"";position:absolute;right:8px;top:48%;width:5px;height:5px;border-radius:50%;background:var(--yellow);box-shadow:0 0 9px var(--yellow)}.store-door span{border:1px solid #f4ff3854;color:var(--yellow);font-size:8px;padding:5px 8px;box-shadow:0 0 15px #f4ff381f}.store-panel{display:flex;flex-direction:column;justify-content:flex-end;padding:26px 19px;background:linear-gradient(145deg,#11151d,#07090d)}.store-panel b{font-size:12px;color:var(--yellow)}.store-panel small{font-size:8px;color:#747985;letter-spacing:.16em}.store-ground-light{position:absolute;left:20%;right:0;bottom:-15px;height:38px;background:linear-gradient(90deg,#f4ff3800,#f4ff3838,#1ee7ff20,#0000);filter:blur(15px)}.street-copy{position:absolute;z-index:10;left:6.5%;top:50%;width:min(540px,40vw);transform:translateY(-50%)}.street-copy h1{font-size:clamp(50px,6.5vw,104px);line-height:.88;letter-spacing:-.075em;margin:18px 0 23px}.street-copy h1 span,.street-copy h1 em{display:block}.street-copy h1 em{font-style:normal;color:var(--yellow)}.street-copy>p:not(.eyebrow){max-width:470px;color:#a9acb4;line-height:1.65;font-size:14px;margin-bottom:30px}
/* Store */
.scene--store{background:linear-gradient(135deg,#05080dce,#030305f5)}.store-ui{position:absolute;inset:110px 4.5% 58px;display:grid;grid-template-columns:minmax(280px,.85fr) minmax(390px,1.3fr) minmax(280px,.78fr);gap:2.6vw;align-items:center}.catalogue h2,.lab-copy h2{font-size:clamp(36px,4.2vw,68px);line-height:.95;letter-spacing:-.06em;margin:20px 0 34px;max-width:650px}.flavour-tabs{display:grid;gap:7px}.flavour-tab{width:100%;height:75px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:14px;border:1px solid #ffffff13;background:#090b10a8;text-align:left;padding:9px 14px;color:#fff;cursor:pointer;position:relative;overflow:hidden;transition:border .25s,background .25s,transform .25s}.flavour-tab:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tab,#fff);transform:scaleY(0);transition:transform .25s}.flavour-tab:hover,.flavour-tab.is-active{background:#10131a;border-color:#ffffff28;transform:translateX(7px)}.flavour-tab.is-active:after{transform:scaleY(1)}.flavour-tab:nth-child(1){--tab:#1ee7ff}.flavour-tab:nth-child(2){--tab:#ff2ba6}.flavour-tab:nth-child(3){--tab:#ffb527}.flavour-tab:nth-child(4){--tab:#6cff70}.flavour-tab>span:nth-child(2) b{display:block;font-size:12px}.flavour-tab small{display:block;margin-top:5px;color:#747985;font-size:7px;letter-spacing:.12em}.flavour-tab em{font-style:normal;color:var(--yellow);font-size:11px;font-weight:800}.mini-product{position:relative;width:29px;height:44px;margin:auto;border:1px solid #ffffff57;border-radius:5px 5px 9px 9px;background:linear-gradient(90deg,#ffffff32,transparent 40%),var(--tab);box-shadow:0 0 18px color-mix(in srgb,var(--tab) 50%,transparent)}.mini-product:before{content:"";position:absolute;left:7px;right:7px;top:-9px;height:9px;background:#242833;border-radius:2px 2px 0 0}.mini-product i{position:absolute;left:4px;right:4px;top:14px;height:13px;background:#06070a;border-radius:2px}.mini-product b{position:absolute;inset:0;display:grid;place-items:center;padding-top:14px;font-size:6px}.mini-product--glacier{--tab:#1ee7ff}.mini-product--berry{--tab:#ff2ba6}.mini-product--mango{--tab:#ffb527}.mini-product--lime{--tab:#6cff70}.product-theatre{position:relative;height:min(710px,78vh);display:flex;align-items:center;justify-content:center;perspective:1200px}.theatre-label{position:absolute;left:5%;right:5%;top:0;height:38px;border-bottom:1px solid #ffffff20;display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:.16em;color:#7c818b}.theatre-label i{height:1px;flex:1;background:#ffffff13}.theatre-label b{color:var(--yellow)}.product-halo{position:absolute;width:70%;height:70%;border-radius:50%;background:radial-gradient(circle,var(--flavour-a) 0,transparent 63%);filter:blur(38px);opacity:.16;animation:halo 3.5s ease-in-out infinite alternate}@keyframes halo{to{transform:scale(1.12);opacity:.28}}.display-case{position:relative;width:min(455px,88%);height:min(610px,78vh);border:1px solid #ffffff1a;background:linear-gradient(145deg,#11151d9c,#05070be8);box-shadow:0 45px 70px #0009,inset 0 0 90px #0007;overflow:hidden;transform:rotateY(-2deg)}.display-case:before{content:"";position:absolute;inset:10px;border:1px solid #ffffff0c}.case-top{position:absolute;top:0;left:0;right:0;height:10%;background:linear-gradient(#282e3a,#0b0d12);border-bottom:1px solid #ffffff22}.case-left,.case-right{position:absolute;top:10%;bottom:8%;width:7%;background:linear-gradient(90deg,#151922,#07090d);border-right:1px solid #ffffff18}.case-right{right:0;transform:scaleX(-1)}.case-base{position:absolute;left:0;right:0;bottom:0;height:8%;background:linear-gradient(#151922,#06070a);border-top:1px solid #ffffff1c}.case-scan{position:absolute;z-index:5;left:7%;right:7%;height:2px;background:var(--flavour-a);box-shadow:0 0 18px 5px var(--flavour-a);opacity:.4;animation:scan 4s ease-in-out infinite}@keyframes scan{0%,100%{top:15%;opacity:.05}50%{top:82%;opacity:.55}}.hero-bottle{position:absolute;z-index:4;left:50%;bottom:1%;width:min(70%,330px);height:auto;transform:translateX(-50%);filter:drop-shadow(0 30px 28px #000);transition:transform .55s var(--ease)}.display-case:hover .hero-bottle{transform:translateX(-50%) translateY(-10px) rotate(1deg) scale(1.025)}.fruit-orbit{position:absolute;z-index:3;width:62px;height:62px;border:1px solid color-mix(in srgb,var(--flavour-a) 55%,transparent);border-radius:50%;box-shadow:0 0 30px color-mix(in srgb,var(--flavour-a) 25%,transparent);display:grid;place-items:center;color:var(--flavour-a);animation:orbit 5s ease-in-out infinite}.fruit-orbit--a{left:12%;top:26%}.fruit-orbit--b{right:12%;top:62%;animation-delay:-2.2s}@keyframes orbit{50%{transform:translateY(-18px) rotate(180deg) scale(1.12)}}.product-shadow{position:absolute;bottom:4%;width:50%;height:34px;background:#000;border-radius:50%;filter:blur(18px)}.theatre-caption{position:absolute;bottom:0;left:7%;right:7%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.17em;color:#6f747e}.theatre-caption b{color:var(--flavour-a)}.product-console{border-left:1px solid #ffffff1b;padding-left:2.4vw}.console-status{display:flex;align-items:center;gap:9px;color:#787d88;font-size:8px;letter-spacing:.16em}.console-status i{width:7px;height:7px;background:#6cff70;border-radius:50%;box-shadow:0 0 9px #6cff70}.console-kicker{margin-top:56px;color:var(--flavour-a);font-size:9px;letter-spacing:.2em}.product-console h3{font-size:clamp(34px,3.3vw,58px);letter-spacing:-.06em;line-height:.95;margin:13px 0 18px}.product-console>p:not(.console-kicker){color:#a2a6af;line-height:1.6;font-size:13px;max-width:390px}.taste-data{margin:31px 0}.taste-data>div{display:grid;grid-template-columns:70px 32px 1fr;align-items:center;gap:11px;margin:14px 0;font-size:8px;letter-spacing:.12em;color:#818691}.taste-data b{color:#fff;font-size:10px}.taste-data i{height:2px;background:#ffffff12}.taste-data em{display:block;height:100%;background:var(--flavour-a);box-shadow:0 0 8px var(--flavour-a);transition:width .55s var(--ease)}.quantity{width:120px;height:42px;display:grid;grid-template-columns:1fr 1fr 1fr;border:1px solid #ffffff1e;margin-bottom:12px}.quantity button,.quantity strong{border:0;background:transparent;display:grid;place-items:center}.quantity button{cursor:pointer;color:#9ea2ab}.add-mix{width:100%;height:56px;border:0;background:var(--flavour-a);color:#040507;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-size:10px;letter-spacing:.12em;font-weight:900;cursor:pointer;box-shadow:0 0 32px color-mix(in srgb,var(--flavour-a) 22%,transparent);transition:transform .25s}.add-mix:hover{transform:translateY(-3px)}.tray{display:grid;grid-template-columns:1fr auto;gap:3px;margin:14px 0 28px;border:1px solid #ffffff14;background:#080a0f9c;padding:13px 15px;font-size:8px;letter-spacing:.16em;color:#797e87}.tray b{color:var(--yellow);font-size:18px;grid-row:span 2}.tray small{font-size:10px;color:#fff}.vertical-hint{right:3.7%;bottom:18px}
/* Lab */
.scene--lab{background:linear-gradient(135deg,#f1f0e7f5,#d8d8ccf2);color:#0a0b0d}.scene--lab .vertical-hint{color:#45464b}.scene--lab .vertical-hint i{background:linear-gradient(#111,transparent)}.lab-wall{position:absolute;inset:84px 0 auto;height:50px;border-bottom:1px solid #1112;display:flex;align-items:center;gap:20px;padding:0 5%;font-size:9px;letter-spacing:.22em;color:#47494f}.lab-wall i{height:1px;background:#1112;flex:1}.lab-layout{position:absolute;inset:134px 5% 50px;display:grid;grid-template-columns:1fr 1.1fr .65fr;gap:4vw;align-items:center}.scene--lab .section-kicker{color:#63656b}.scene--lab .section-kicker i{background:#1113}.scene--lab .section-kicker span{color:#08090b}.lab-copy>p{max-width:500px;line-height:1.65;color:#575960;font-size:14px}.sliders{margin:35px 0 30px;display:grid;gap:22px}.sliders label{display:grid;grid-template-columns:90px 1fr 34px;align-items:center;gap:12px;font-size:8px;letter-spacing:.16em;font-weight:800}.sliders input{appearance:none;height:3px;background:#1112;outline:none}.sliders input::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:#0a0b0d;border:4px solid #f2f1e8;box-shadow:0 0 0 1px #1114;cursor:pointer}.sliders b{text-align:right}.scene--lab .primary-cta{background:#0a0b0d;color:#fff;box-shadow:none}.formula-reactor{position:relative;height:min(690px,75vh);display:grid;place-items:center}.reactor-ring{position:absolute;border:1px solid color-mix(in srgb,var(--mix-a) 45%,transparent);border-radius:50%;animation:react 9s linear infinite}.reactor-ring--a{width:82%;aspect-ratio:1}.reactor-ring--b{width:64%;aspect-ratio:1;border-color:color-mix(in srgb,var(--mix-b) 50%,transparent);animation-direction:reverse;animation-duration:12s}.reactor-ring--c{width:46%;aspect-ratio:1;border-style:dashed;border-color:#1113;animation-duration:7s}@keyframes react{to{transform:rotate(360deg)}}.reactor-card{position:relative;width:min(400px,78%);height:86%;background:#0b0d12;color:#fff;box-shadow:0 40px 80px #2a2a2a50;overflow:hidden}.reactor-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 55%,var(--mix-a) 0,transparent 48%);opacity:.19;filter:blur(20px)}.reactor-top{position:absolute;left:22px;right:22px;top:20px;border-bottom:1px solid #ffffff1c;padding-bottom:12px;font-size:7px;letter-spacing:.18em;color:#8c919a}.custom-bottle{position:absolute;left:50%;top:47%;width:190px;height:390px;transform:translate(-50%,-50%);filter:drop-shadow(0 30px 24px #000)}.custom-cap{position:absolute;z-index:3;left:52px;top:0;width:86px;height:57px;border-radius:15px 15px 7px 7px;background:linear-gradient(90deg,#0c0d11,#4a4e59 50%,#090a0d);display:flex;justify-content:space-around;padding:0 10px}.custom-cap i{width:2px;background:#74798555}.custom-neck{position:absolute;z-index:2;left:60px;top:49px;width:70px;height:37px;background:#13161c;border:1px solid #ffffff28;border-radius:7px}.custom-body{position:absolute;inset:79px 0 0;border-radius:35px 35px 48px 48px;background:#151a22;border:2px solid #ffffff38;overflow:hidden}.custom-liquid{position:absolute;left:0;right:0;bottom:0;height:72%;background:linear-gradient(135deg,var(--mix-a),var(--mix-b) 58%,var(--mix-c));transition:height .45s,background .5s}.custom-liquid:before{content:"";position:absolute;left:0;right:0;top:-14px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--mix-a) 60%,#fff 10%)}.custom-liquid i{position:absolute;border-radius:50%;background:#ffffff25;animation:bubble 4s ease-in-out infinite}.custom-liquid i:nth-child(1){width:12px;height:12px;left:22%;bottom:18%}.custom-liquid i:nth-child(2){width:7px;height:7px;left:68%;bottom:42%;animation-delay:-1.2s}.custom-liquid i:nth-child(3){width:17px;height:17px;left:47%;bottom:6%;animation-delay:-2.2s}@keyframes bubble{50%{transform:translateY(-60px);opacity:.25}}.custom-shine{position:absolute;left:19px;top:28px;bottom:28px;width:15px;border-radius:50%;background:#ffffff2d;filter:blur(4px)}.custom-label{position:absolute;left:24px;right:24px;top:95px;height:128px;background:#08090c;border:1px solid #ffffff21;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.custom-label small{font-size:8px;letter-spacing:.2em}.custom-label strong{font-size:21px;color:var(--mix-c);margin:12px 0 8px}.custom-label span{font:8px monospace;color:#858a94;letter-spacing:.13em}.custom-shadow{position:absolute;left:20px;right:20px;bottom:-12px;height:28px;background:#000;border-radius:50%;filter:blur(12px)}.reactor-data{position:absolute;left:22px;right:22px;bottom:20px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.reactor-data div{border-top:1px solid #ffffff1d;padding-top:10px}.reactor-data span{display:block;color:#6f747e;font-size:7px;letter-spacing:.15em}.reactor-data b{font-size:11px}.formula-side{border-left:1px solid #1112;padding-left:2.5vw}.formula-side>span{font-size:8px;letter-spacing:.2em;color:#66686f}.formula-side>strong{display:block;font-size:clamp(32px,3vw,52px);line-height:.95;letter-spacing:-.06em;margin:23px 0;color:var(--mix-a)}.formula-side>p{font-size:13px;line-height:1.65;color:#55575d}.formula-tags{display:flex;flex-wrap:wrap;gap:6px;margin:25px 0 35px}.formula-tags i{font-style:normal;padding:7px 9px;border:1px solid #1113;font-size:7px;letter-spacing:.12em}.scene--lab .text-link{color:#111;border-color:#1113}.scene--lab .text-link i{color:#111}
/* Reveal */
.scene--reveal{background:#050507}.reveal-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:72px 72px;mask-image:radial-gradient(circle at center,#000,transparent 75%)}.reveal-orb{position:absolute;right:7%;top:50%;width:min(48vw,700px);aspect-ratio:1;transform:translateY(-50%)}.reveal-orb:before{content:"";position:absolute;inset:15%;border-radius:50%;background:conic-gradient(from 35deg,var(--flavour-a),var(--yellow),var(--flavour-b),var(--flavour-a));filter:blur(36px);opacity:.35;animation:spin 10s linear infinite}.reveal-orb i{position:absolute;inset:var(--inset,3%);border:1px solid #ffffff1f;border-radius:50%;animation:spin 12s linear infinite}.reveal-orb i:nth-child(2){--inset:18%;border-style:dashed;animation-direction:reverse}.reveal-orb i:nth-child(3){--inset:34%;border-color:var(--yellow);box-shadow:0 0 24px #f4ff3826}@keyframes spin{to{transform:rotate(360deg)}}.reveal-content{position:absolute;z-index:5;left:7%;top:50%;width:min(750px,58vw);transform:translateY(-50%)}.reveal-content h2{font-size:clamp(54px,7vw,112px);line-height:.86;letter-spacing:-.075em;margin:20px 0 28px}.reveal-content h2 span,.reveal-content h2 em{display:block}.reveal-content h2 em{font-style:normal;color:var(--yellow)}.reveal-content>p:not(.eyebrow){max-width:650px;color:#a4a8b0;line-height:1.7;font-size:14px}.jdc-lockup{margin:34px 0;display:grid;width:min(570px,100%);grid-template-columns:auto 1fr;gap:4px 20px;border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a;padding:19px 0}.jdc-lockup span{grid-row:span 2;color:#727680;font-size:8px;letter-spacing:.18em;padding-top:5px}.jdc-lockup strong{font-size:25px;letter-spacing:-.04em}.jdc-lockup small{font-size:8px;letter-spacing:.13em;color:#80848d}.reveal-actions{display:flex;gap:10px;flex-wrap:wrap}.scene--reveal footer{position:absolute;left:3%;right:3%;bottom:18px;display:flex;justify-content:space-between;color:#61656e;font-size:7px;letter-spacing:.14em}
/* dialog */
dialog{border:1px solid #ffffff24;background:#080a0f;color:#fff;width:min(610px,92vw);padding:0;box-shadow:0 40px 100px #000b}dialog::backdrop{background:#020203df;backdrop-filter:blur(10px)}dialog form{padding:42px;display:grid;gap:15px}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:28px;cursor:pointer}.dialog h2{font-size:36px;letter-spacing:-.05em;margin:0 0 13px}.dialog label{display:grid;gap:7px}.dialog label span{font-size:8px;letter-spacing:.18em;color:#858995}.dialog input,.dialog textarea{width:100%;background:#0e1117;border:1px solid #ffffff18;color:#fff;padding:13px;outline:none}.dialog input:focus,.dialog textarea:focus{border-color:var(--yellow)}.toast{position:fixed;z-index:1000;left:50%;bottom:30px;transform:translate(-50%,20px);opacity:0;background:#f4ff38;color:#080905;padding:12px 18px;font-size:10px;font-weight:900;letter-spacing:.08em;transition:.3s;pointer-events:none}.toast.is-visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:1100px){.store-ui{grid-template-columns:.8fr 1.1fr .75fr;gap:1.5vw}.flavour-tab{grid-template-columns:45px 1fr}.flavour-tab em{display:none}.catalogue h2{font-size:40px}.product-console{padding-left:18px}.lab-layout{grid-template-columns:1fr 1.05fr}.formula-side{display:none}}
@media(max-width:820px){.hud{height:66px;padding:0 18px}.legal,.sound span{display:none}.brand b{font-size:15px}.street-world{inset:-8%;transform:scale(1.04)}.flavour-store{width:90vw;height:350px;left:54%;bottom:22%}.store-sign{height:98px}.store-shell{top:105px}.street-copy{left:7%;right:7%;top:28%;width:auto;transform:none}.street-copy h1{font-size:clamp(48px,15vw,74px)}.street-copy>p:not(.eyebrow){font-size:12px;max-width:78%}.street-copy .primary-cta{height:52px}.scroll-cue,.vertical-hint{right:15px;bottom:14px}.store-ui{inset:78px 14px 42px;display:block}.catalogue{position:absolute;left:0;right:0;top:0;height:195px}.catalogue h2{font-size:36px;margin:14px 0 17px}.flavour-tabs{display:flex;overflow:auto;gap:7px;padding-bottom:7px;scrollbar-width:none}.flavour-tabs::-webkit-scrollbar{display:none}.flavour-tab{flex:0 0 165px;height:62px;grid-template-columns:39px 1fr;padding:7px}.flavour-tab:hover,.flavour-tab.is-active{transform:translateY(-3px)}.flavour-tab small{display:none}.mini-product{width:25px;height:36px}.product-theatre{position:absolute;left:0;right:42%;top:198px;bottom:0;height:auto}.display-case{width:100%;height:100%}.hero-bottle{width:76%}.theatre-label,.theatre-caption,.fruit-orbit{display:none}.product-console{position:absolute;left:61%;right:0;top:205px;bottom:0;border-left:1px solid #ffffff18;padding:0 0 0 14px;overflow:auto}.console-status,.console-kicker{display:none}.product-console h3{font-size:25px;margin:0 0 9px}.product-console>p:not(.console-kicker){font-size:10px;line-height:1.45}.taste-data{margin:14px 0}.taste-data>div{grid-template-columns:42px 22px 1fr;margin:10px 0}.quantity{width:100%;height:35px}.add-mix{height:47px;font-size:8px}.tray{margin:8px 0 12px;padding:9px}.text-link{font-size:7px}.scene--store .vertical-hint{display:none}.lab-wall{top:66px;height:39px}.lab-layout{inset:108px 17px 24px;display:block}.lab-copy h2{font-size:42px;margin:13px 0}.lab-copy>p{font-size:11px;max-width:80%}.sliders{margin:18px 0 20px;gap:13px}.formula-reactor{position:absolute;right:-34px;bottom:3%;width:66%;height:53%}.reactor-card{width:70%;height:88%}.custom-bottle{transform:translate(-50%,-50%) scale(.68)}.reactor-data{display:none}.formula-side{display:block;position:absolute;left:0;bottom:3%;width:43%;border-left:0;padding:0}.formula-side>span,.formula-side>p,.formula-tags{display:none}.formula-side>strong{font-size:30px;margin:0 0 20px}.formula-side .text-link{font-size:7px}.scene--lab .vertical-hint{display:none}.reveal-content{left:7%;right:7%;width:auto}.reveal-content h2{font-size:clamp(54px,14vw,82px)}.reveal-content>p:not(.eyebrow){font-size:12px;max-width:90%}.reveal-orb{right:-30%;width:95vw;opacity:.45}.jdc-lockup{margin:23px 0}.scene--reveal footer{display:none}}
@media(max-width:520px){.hud__right{gap:7px}.hud-button{padding:0 8px}.street-copy{top:24%}.street-copy>p:not(.eyebrow){max-width:95%}.flavour-store{bottom:16%;height:310px}.store-panel{display:none}.store-shell{grid-template-columns:1fr 30%}.store-sign{width:86%}.store-sign strong{font-size:38px}.catalogue h2{font-size:31px}.product-theatre{right:47%}.product-console{left:56%}.product-console h3{font-size:21px}.taste-data>div{grid-template-columns:38px 18px 1fr}.add-mix span{max-width:74px}.lab-copy h2{font-size:34px}.lab-copy>p{max-width:100%}.sliders label{grid-template-columns:72px 1fr 25px}.formula-reactor{right:-64px;width:78%}.reactor-card{width:74%}.reveal-content h2{font-size:clamp(48px,15.5vw,70px)}.reveal-actions{display:grid}.reveal-actions button{width:100%}dialog form{padding:33px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.wallpaper,#flavourBackdrop{display:none}}


/* V3 — readability and multilingual selector */
.language-picker{position:relative;pointer-events:auto}
.language-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-width:54px}
.language-toggle i{font-style:normal;font-size:12px;color:var(--yellow);transition:transform .25s var(--ease)}
.language-toggle[aria-expanded="true"] i{transform:rotate(180deg)}
.language-menu{position:absolute;z-index:160;top:calc(100% + 10px);right:0;width:190px;padding:7px;background:#080a0ff2;border:1px solid #ffffff24;box-shadow:0 24px 70px #000d;backdrop-filter:blur(18px)}
.language-menu[hidden]{display:none}
.language-menu button{width:100%;height:38px;border:0;background:transparent;color:#a9adb6;display:grid;grid-template-columns:34px 1fr;align-items:center;text-align:left;padding:0 10px;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.language-menu button:hover,.language-menu button:focus-visible{background:#ffffff0c;color:#fff;outline:0;transform:translateX(2px)}
.language-menu button[aria-checked="true"]{background:color-mix(in srgb,var(--yellow) 13%,transparent);color:var(--yellow)}
.language-menu b{font-size:9px;letter-spacing:.15em}.language-menu span{font-size:11px}

.scene--street:after{content:"";position:absolute;z-index:4;inset:0;pointer-events:none;background:linear-gradient(90deg,#030508fa 0%,#030508ed 29%,#030508bd 43%,#03050844 60%,transparent 75%)}
.street-world{z-index:1}
.street-copy{width:min(650px,52vw);isolation:isolate}
.street-copy:before{content:"";position:absolute;z-index:-1;left:-34px;right:-18px;top:-28px;bottom:-30px;background:linear-gradient(90deg,#04060bd9 0%,#04060ba6 72%,transparent 100%);filter:blur(1px);border-left:1px solid #ffffff0e;pointer-events:none}
.street-copy h1{font-size:clamp(48px,5.45vw,88px);line-height:.91;max-width:10.4ch;text-wrap:balance;overflow-wrap:normal;text-shadow:0 12px 35px #000}
.street-copy h1 span,.street-copy h1 em{width:fit-content;max-width:100%}
.street-copy h1 em{font-size:.91em}
.street-copy>p:not(.eyebrow){text-shadow:0 3px 15px #000}

@media(max-width:1400px){
  .flavour-store{left:70%;width:min(660px,58vw)}
  .store-sign{left:auto;right:0;width:66%}
  .street-copy{left:6%;width:min(610px,51vw)}
  .street-copy h1{font-size:clamp(46px,5.3vw,76px);max-width:10.1ch}
}
@media(max-width:1120px){
  .flavour-store{left:73%;width:min(630px,62vw);bottom:14%}
  .store-sign{width:62%}
  .street-copy{width:min(560px,53vw)}
  .street-copy h1{font-size:clamp(44px,5.5vw,66px);max-width:10.3ch}
  .street-copy>p:not(.eyebrow){max-width:430px}
}
@media(max-width:820px){
  .hud__right{gap:8px}.language-menu{position:fixed;top:62px;right:12px;width:min(220px,calc(100vw - 24px))}
  .scene--street:after{background:linear-gradient(180deg,#030508f7 0%,#030508e6 40%,#03050874 62%,transparent 78%)}
  .street-copy{top:14%;left:6%;right:6%;width:auto;padding-top:8px}
  .street-copy:before{left:-18px;right:-18px;top:-18px;bottom:-22px;background:linear-gradient(180deg,#04060be8 0%,#04060bb5 76%,transparent 100%)}
  .street-copy h1{font-size:clamp(42px,11.5vw,64px);max-width:10.2ch;margin:13px 0 17px}
  .street-copy>p:not(.eyebrow){max-width:34em;margin-bottom:22px}
  .flavour-store{left:56%;bottom:5%;width:96vw;height:330px;opacity:.9}
  .store-sign{left:auto;right:1%;width:62%;height:88px}
  .store-sign strong{font-size:clamp(28px,8vw,42px)}
}
@media(max-width:520px){
  .street-copy{top:12%}
  .street-copy h1{font-size:clamp(40px,12.4vw,56px);line-height:.9;max-width:9.4ch}
  .street-copy>p:not(.eyebrow){font-size:11px;line-height:1.5;margin-bottom:17px}
  .street-copy .primary-cta{max-width:100%;padding:0 16px;gap:15px;font-size:9px}
  .flavour-store{bottom:1%;height:285px;opacity:.75}
  .store-sign{width:67%;height:76px}
  .store-sign small{display:none}
  .scroll-cue{display:none}
}
html[data-lang="de"] .street-copy h1,html[data-lang="nl"] .street-copy h1{font-size:clamp(42px,4.8vw,74px);max-width:11.5ch}
html[data-lang="de"] .street-copy .primary-cta,html[data-lang="nl"] .street-copy .primary-cta{font-size:9px;letter-spacing:.09em}
@media(max-width:820px){html[data-lang="de"] .street-copy h1,html[data-lang="nl"] .street-copy h1{font-size:clamp(38px,9.8vw,56px);max-width:12ch}}
/* Keep the storefront identity completely clear of the hero copy on large screens. */
@media(min-width:1401px){
  .flavour-store{left:66%;bottom:14%;width:min(680px,56vw)}
  .store-sign{left:auto;right:0;width:66%}
}

/* V4 — storefront realism, darker lab, more motion */
@keyframes neonPulse{0%,100%{opacity:.96;text-shadow:0 0 10px #f4ff3870,0 0 18px #f4ff383a}50%{opacity:1;text-shadow:0 0 14px #f4ff38a0,0 0 28px #f4ff386e}}
@keyframes reflectionSweep{0%{transform:translateX(-28%) skewX(-18deg);opacity:0}20%{opacity:.14}55%{opacity:.18}100%{transform:translateX(122%) skewX(-18deg);opacity:0}}
@keyframes bottleBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes stageDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(2vw,-2vh,0) scale(1.08)}}
@keyframes storeFlicker{0%,100%{opacity:.95}48%{opacity:.9}50%{opacity:.84}52%{opacity:.96}}
@keyframes labNebula{0%{transform:translate3d(-2vw,-1vh,0) scale(1)}100%{transform:translate3d(3vw,2vh,0) scale(1.08)}}
@keyframes labLines{to{background-position:24vw 0,0 18vh}}
@keyframes labFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@keyframes revealSweep{0%{transform:translate3d(-10%,0,0)}100%{transform:translate3d(10%,0,0)}}

.scene--street .moon-ring{animation:stageDrift 18s ease-in-out infinite alternate}
.flavour-store{bottom:20%!important;left:67%!important;width:min(700px,56vw)!important;height:470px!important;filter:drop-shadow(0 24px 40px #000b)}
.store-shadow{left:8%;right:1%;bottom:-20px;height:82px;filter:blur(30px);opacity:.95}
.flavour-store::before{content:"";position:absolute;left:5%;right:1%;top:126px;bottom:-2px;background:linear-gradient(180deg,#161b24 0%,#0a0d11 22%,#080a0d 100%);border:1px solid #ffffff0d;box-shadow:0 30px 50px #0009;clip-path:polygon(1% 3%,99% 0,100% 100%,0 100%);opacity:.9}
.store-roof{left:4%;right:1%;top:116px;height:54px;background:linear-gradient(180deg,#343a46,#141920);clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);box-shadow:0 16px 22px #000,inset 0 1px 0 #ffffff16}
.store-sign{left:auto;right:1%;top:8px;width:68%;height:118px;background:linear-gradient(180deg,#0b0d11 0%,#07090c 100%);border:1px solid #ffffff21;box-shadow:0 14px 36px #000,inset 0 0 0 1px #ffffff06}
.store-sign:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,#ffffff0a 12%,transparent 26%,transparent 100%);mix-blend-mode:screen;animation:reflectionSweep 11s linear infinite}
.store-sign strong{animation:neonPulse 3.8s ease-in-out infinite}
.store-shell{left:6%;right:1%;top:150px;bottom:0;border-radius:2px;grid-template-columns:1fr 25% 25%;background:linear-gradient(180deg,#161c25,#090c11);box-shadow:inset 0 0 0 1px #ffffff08}
.store-window{background:linear-gradient(180deg,#16202c,#080d12 62%,#06080b);box-shadow:inset 0 0 0 1px #93b9d415,inset 0 -40px 80px #020305}
.store-window:before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 13% 15%,#e9fbff26 0 8px,transparent 9px),
  radial-gradient(circle at 36% 15%,#e9fbff24 0 8px,transparent 9px),
  radial-gradient(circle at 59% 15%,#e9fbff20 0 8px,transparent 9px),
  radial-gradient(circle at 82% 15%,#e9fbff20 0 8px,transparent 9px),
  linear-gradient(180deg,#ffffff0d 0,#ffffff00 18%),
  repeating-linear-gradient(90deg,transparent 0 23%,#ffffff08 23.2% 23.7%,transparent 23.9% 49%);
  opacity:.95}
.store-window:after{content:"";position:absolute;top:-6%;bottom:-6%;width:16%;background:linear-gradient(90deg,transparent,#ffffff14,transparent);transform:translateX(-28%) skewX(-18deg);animation:reflectionSweep 8.2s linear infinite}
.shelf{height:3px;background:linear-gradient(90deg,#7f8a96,#4e555f);box-shadow:0 8px 12px #000}
.display-bottle{bottom:20%;width:40px;height:96px;border:1px solid #ffffff46;background:linear-gradient(90deg,#ffffff38 0,#ffffff10 18%,transparent 44%),linear-gradient(180deg,#ffffff10,#0000 30%),currentColor;box-shadow:0 0 22px currentColor, inset 0 0 12px #ffffff26;animation:bottleBob 4.5s ease-in-out infinite}
.display-bottle:nth-of-type(1){animation-delay:-.4s}.display-bottle:nth-of-type(2){animation-delay:-1.1s}.display-bottle:nth-of-type(3){animation-delay:-1.8s}.display-bottle:nth-of-type(4){animation-delay:-2.5s}
.display-bottle:before{left:9px;right:9px;top:-18px;height:18px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#1f2530,#0e1219);border:1px solid #ffffff36}
.store-door{background:linear-gradient(180deg,#090c11,#05070b);box-shadow:inset 0 0 0 1px #ffffff08}
.store-door:before{content:"";position:absolute;left:16px;right:16px;top:14px;bottom:14px;border:1px solid #ffffff14}
.store-panel{background:linear-gradient(180deg,#121722,#090c11)}
.store-ground-light{left:16%;right:1%;bottom:-12px;height:42px;filter:blur(18px);opacity:.92;animation:storeFlicker 4.5s ease-in-out infinite}

.scene--store::before,.scene--lab::before,.scene--reveal::before{content:"";position:absolute;inset:-10%;pointer-events:none}
.scene--store::before{background:
  radial-gradient(circle at 16% 22%,color-mix(in srgb,var(--flavour-a) 20%,transparent),transparent 20%),
  radial-gradient(circle at 86% 68%,color-mix(in srgb,var(--flavour-b) 18%,transparent),transparent 20%),
  radial-gradient(circle at 48% 88%,color-mix(in srgb,var(--flavour-c) 14%,transparent),transparent 22%);
  animation:stageDrift 18s ease-in-out infinite alternate;opacity:.9}
.scene--store::after{content:"";position:absolute;right:4%;top:16%;width:28vw;height:28vw;border:1px solid #ffffff10;border-radius:50%;box-shadow:0 0 0 1px #ffffff05 inset;opacity:.35;animation:orbit 12s ease-in-out infinite}

.scene--lab{background:radial-gradient(circle at 18% 24%,#34144d52 0,transparent 20%),radial-gradient(circle at 82% 70%,#14dff02b 0,transparent 18%),linear-gradient(145deg,#06080d 0%,#0b0e13 34%,#090c10 100%)!important;color:#fff!important}
.scene--lab::before{background:
  radial-gradient(circle at 12% 22%,rgba(244,255,56,.09),transparent 15%),
  radial-gradient(circle at 74% 64%,rgba(37,242,255,.12),transparent 18%),
  radial-gradient(circle at 48% 80%,rgba(199,53,255,.11),transparent 18%);
  animation:labNebula 16s ease-in-out infinite alternate;opacity:1}
.scene--lab::after{content:"";position:absolute;inset:0;pointer-events:none;background:
  repeating-linear-gradient(90deg,transparent 0 24vw,rgba(255,255,255,.035) 24vw calc(24vw + 1px)),
  repeating-linear-gradient(0deg,transparent 0 18vh,rgba(255,255,255,.03) 18vh calc(18vh + 1px));
  mask-image:linear-gradient(180deg,transparent 0,#000 18%,#000 88%,transparent 100%);opacity:.34;animation:labLines 20s linear infinite}
.lab-wall,.lab-copy,.formula-reactor,.formula-side{position:relative;z-index:1}
.lab-wall{border-bottom:1px solid #ffffff14;color:#9da3ae;background:linear-gradient(90deg,#0a0d12d8 0,#0a0d1270 68%,transparent 100%);backdrop-filter:blur(12px)}
.lab-wall i{background:#ffffff17}
.scene--lab .section-kicker{color:#8e95a0}.scene--lab .section-kicker i{background:#ffffff21}.scene--lab .section-kicker span{color:var(--yellow)}
.lab-copy>p{color:#afb4be}
.sliders label{color:#dbe1e8}
.sliders input{background:#ffffff18}
.sliders input::-webkit-slider-thumb{background:#fff;border:4px solid #0b0d12;box-shadow:0 0 0 1px #ffffff25}
.sliders input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid #0b0d12;box-shadow:0 0 0 1px #ffffff25}
.scene--lab .primary-cta{background:#10131a;color:#fff;border:1px solid #ffffff14;box-shadow:0 18px 42px #00000040}
.scene--lab .primary-cta:hover{box-shadow:0 24px 52px #00000055}
.formula-reactor{overflow:visible}
.formula-reactor::before{content:"";position:absolute;left:12%;top:6%;width:30%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--mix-a) 26%,transparent),transparent 70%);filter:blur(26px);opacity:.65;animation:labFloat 10s ease-in-out infinite}
.formula-reactor::after{content:"";position:absolute;right:10%;bottom:8%;width:22%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--mix-b) 45%,transparent);border-radius:50%;opacity:.4;animation:react 14s linear infinite reverse}
.reactor-card{background:linear-gradient(180deg,#0d1016,#090b10);border:1px solid #ffffff16;box-shadow:0 40px 80px #0009,inset 0 0 0 1px #ffffff07}
.reactor-card:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0%,#ffffff0b 22%,transparent 38%,transparent 100%);transform:translateX(-30%);animation:reflectionSweep 10s linear infinite}
.reactor-top{color:#9ca3ad;border-bottom-color:#ffffff16}
.custom-body{background:#151a22;border-color:#ffffff32}
.formula-side{border-left:1px solid #ffffff14}
.formula-side>span,.formula-side>p{color:#afb4be}
.formula-tags i{border:1px solid #ffffff18;background:#ffffff05;color:#dce2ea}
.scene--lab .text-link{color:#fff;border-color:#ffffff1b}.scene--lab .text-link i{color:var(--yellow)}

.scene--reveal::before{background:radial-gradient(circle at 20% 30%,rgba(244,255,56,.10),transparent 18%),radial-gradient(circle at 80% 58%,rgba(37,242,255,.10),transparent 18%);animation:revealSweep 14s ease-in-out infinite alternate;opacity:.8}
.reveal-grid{animation:labLines 22s linear infinite}

@media(max-width:1400px){
  .flavour-store{left:68%!important;bottom:18%!important;width:min(680px,58vw)!important}
}
@media(max-width:1120px){
  .flavour-store{left:70%!important;bottom:15%!important;width:min(650px,62vw)!important;height:440px!important}
  .store-sign{width:64%}
}
@media(max-width:820px){
  .flavour-store{left:56%!important;bottom:9%!important;width:96vw!important;height:342px!important;opacity:.96}
  .store-sign{width:62%;height:86px;top:20px}
  .store-shell{top:112px}
}
@media(max-width:520px){
  .flavour-store{bottom:7%!important;height:300px!important}
  .store-sign{width:70%;height:76px;top:18px}
  .display-bottle{width:34px;height:84px}
}

/* V5 — cinematic navigation, premium facade, packshot detail */
.experience-transition{position:fixed;inset:0;z-index:790;pointer-events:none;visibility:hidden;overflow:hidden}
.transition-iris{position:absolute;inset:-8%;background:#030305;clip-path:circle(0% at var(--iris-x,70%) var(--iris-y,62%));opacity:0}
.transition-flavour-wave{position:absolute;inset:0;display:grid;place-items:center;opacity:0}
.transition-flavour-wave i{position:absolute;width:24vw;aspect-ratio:1;border-radius:50%;border:1px solid color-mix(in srgb,var(--flavour-a) 62%,transparent);box-shadow:0 0 45px color-mix(in srgb,var(--flavour-a) 28%,transparent),inset 0 0 45px color-mix(in srgb,var(--flavour-b) 16%,transparent)}
.transition-flavour-wave i:nth-child(2){width:40vw;border-color:color-mix(in srgb,var(--flavour-b) 50%,transparent)}
.transition-flavour-wave i:nth-child(3){width:58vw;border-color:#ffffff18}
.transition-code{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;gap:8px;text-align:center;opacity:0}
.transition-code span{font-size:clamp(34px,5vw,72px);font-weight:900;letter-spacing:-.06em;color:var(--yellow);text-shadow:0 0 18px #f4ff3860}
.transition-code b{font-size:7px;letter-spacing:.28em;color:#8e939d}
body[data-transition="street-store"] .experience-transition,body[data-transition="store-lab"] .experience-transition,body[data-transition="lab-reveal"] .experience-transition,body[data-transition="reverse"] .experience-transition{visibility:visible}
body[data-transition="street-store"] .transition-iris{animation:irisStreet 1.2s var(--ease) both}
body[data-transition="street-store"] .transition-code{animation:codeFlash 1.2s ease both}
body[data-transition="store-lab"] .transition-flavour-wave{animation:waveLayer 1.18s ease both}
body[data-transition="store-lab"] .transition-flavour-wave i{animation:wavePulse 1.18s var(--ease) both}
body[data-transition="store-lab"] .transition-flavour-wave i:nth-child(2){animation-delay:.06s}body[data-transition="store-lab"] .transition-flavour-wave i:nth-child(3){animation-delay:.12s}
body[data-transition="store-lab"] .transition-code{animation:codeFlash 1.18s ease both}
body[data-transition="lab-reveal"] .transition-iris{--iris-x:52%;--iris-y:52%;animation:irisReveal 1.2s var(--ease) both;background:radial-gradient(circle at 50% 50%,#f4ff38 0,#1ee7ff 18%,#090b10 54%,#020203 100%)}
body[data-transition="lab-reveal"] .transition-code{animation:codeFlash 1.2s ease both}
body[data-transition="reverse"] .transition-iris{--iris-x:50%;--iris-y:50%;animation:irisReverse 1.12s var(--ease) both}
body[data-transition="reverse"] .transition-code{animation:codeFlash 1.12s ease both}
@keyframes irisStreet{0%{opacity:0;clip-path:circle(0 at 70% 62%)}34%{opacity:1;clip-path:circle(18% at 70% 62%)}66%{opacity:1;clip-path:circle(78% at 70% 62%)}100%{opacity:0;clip-path:circle(130% at 70% 62%)}}
@keyframes irisReveal{0%{opacity:0;clip-path:circle(0 at 52% 52%)}38%{opacity:1;clip-path:circle(22% at 52% 52%)}68%{opacity:1;clip-path:circle(94% at 52% 52%)}100%{opacity:0;clip-path:circle(140% at 52% 52%)}}
@keyframes irisReverse{0%{opacity:0;clip-path:circle(130% at 50% 50%)}42%{opacity:1;clip-path:circle(30% at 50% 50%)}66%{opacity:1;clip-path:circle(30% at 50% 50%)}100%{opacity:0;clip-path:circle(130% at 50% 50%)}}
@keyframes waveLayer{0%,100%{opacity:0}22%,72%{opacity:1}}
@keyframes wavePulse{0%{transform:scale(.15) rotate(0);opacity:0}42%{opacity:1}72%{transform:scale(1.15) rotate(135deg);opacity:.65}100%{transform:scale(1.9) rotate(220deg);opacity:0}}
@keyframes codeFlash{0%,22%,75%,100%{opacity:0;filter:blur(8px);transform:translate(-50%,-50%) scale(.9)}38%,62%{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}}

.rain-field{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;opacity:.38}
.rain-field i{position:absolute;top:-20%;width:1px;height:12vh;background:linear-gradient(transparent,#8feaff88,transparent);transform:rotate(12deg);animation:rainDrop 2.8s linear infinite}
.rain-field i:nth-child(1){left:4%;animation-delay:-.2s}.rain-field i:nth-child(2){left:12%;animation-delay:-1.3s}.rain-field i:nth-child(3){left:21%;animation-delay:-2.2s}.rain-field i:nth-child(4){left:29%;animation-delay:-.8s}.rain-field i:nth-child(5){left:38%;animation-delay:-1.8s}.rain-field i:nth-child(6){left:47%;animation-delay:-2.5s}.rain-field i:nth-child(7){left:56%;animation-delay:-.4s}.rain-field i:nth-child(8){left:64%;animation-delay:-1.5s}.rain-field i:nth-child(9){left:72%;animation-delay:-2.4s}.rain-field i:nth-child(10){left:81%;animation-delay:-.9s}.rain-field i:nth-child(11){left:89%;animation-delay:-1.9s}.rain-field i:nth-child(12){left:96%;animation-delay:-2.7s}
@keyframes rainDrop{to{transform:translate(12vw,135vh) rotate(12deg)}}
.traffic-glow{position:absolute;z-index:2;bottom:16%;height:4px;width:23vw;border-radius:100%;filter:blur(5px);opacity:0;animation:trafficPass 10s ease-in-out infinite}
.traffic-glow--one{left:-28%;background:linear-gradient(90deg,transparent,#fff6ae,#ff365f,transparent);box-shadow:0 0 24px #ff365f}
.traffic-glow--two{right:-30%;background:linear-gradient(90deg,transparent,#3ff6ff,#fff,transparent);box-shadow:0 0 24px #3ff6ff;animation-delay:-5s;animation-direction:reverse}
@keyframes trafficPass{0%,18%{opacity:0;transform:translateX(0)}28%,58%{opacity:.75}76%,100%{opacity:0;transform:translateX(148vw)}}

.store-facade{position:absolute;left:1%;right:-1%;top:109px;bottom:-7px;background:linear-gradient(100deg,#131821 0,#242b35 7%,#0c1016 8%,#121720 91%,#303846 92%,#11151c 100%);clip-path:polygon(2% 0,98% 0,100% 100%,0 100%);border:1px solid #ffffff13;box-shadow:inset 0 1px 0 #ffffff0d}
.facade-pillar{position:absolute;top:0;bottom:0;width:22px;background:linear-gradient(90deg,#07090c,#363e4a 48%,#090b0f);box-shadow:inset 1px 0 #ffffff12}
.facade-pillar--left{left:4%}.facade-pillar--right{right:1%}
.facade-number{position:absolute;right:4.8%;top:14px;color:#8f97a3;font:9px/1 monospace;letter-spacing:.18em;writing-mode:vertical-rl}
.facade-line{position:absolute;left:6%;right:5%;top:44px;height:1px;background:#ffffff10}
.store-awning{position:absolute;z-index:5;left:7%;right:1%;top:137px;height:24px;display:grid;grid-template-columns:repeat(6,1fr);transform:perspective(500px) rotateX(-22deg);transform-origin:top;background:#0c1016;border:1px solid #ffffff11;box-shadow:0 10px 18px #0008}
.store-awning i{border-right:1px solid #ffffff12;background:linear-gradient(180deg,#242b35,#10141b)}
.window-interior{position:absolute;inset:0;pointer-events:none}
.window-interior small{position:absolute;left:7%;bottom:8%;font-size:6px;letter-spacing:.25em;color:#b1bdc755;z-index:3}
.pendant{position:absolute;top:0;width:1px;height:45px;background:#626b75}
.pendant:after{content:"";position:absolute;left:50%;bottom:-7px;width:14px;height:9px;transform:translateX(-50%);border-radius:10px 10px 4px 4px;background:#dffcff;box-shadow:0 0 18px 8px #dffcff30}
.pendant--one{left:22%}.pendant--two{left:50%;height:57px}.pendant--three{left:78%;height:39px}
.counter{position:absolute;left:8%;right:7%;bottom:12%;height:18%;background:linear-gradient(180deg,#202731,#080b0f);border-top:2px solid #59636d;box-shadow:0 -16px 34px #0008}
.back-wall{position:absolute;left:6%;right:6%;top:18%;height:12%;background:repeating-linear-gradient(90deg,#0d1218 0 10%,#161c24 10% 20%);opacity:.8}
.store-threshold{position:absolute;z-index:7;left:7%;right:1%;bottom:-9px;height:20px;background:linear-gradient(180deg,#343c47,#0a0d11);border-top:1px solid #ffffff20;display:flex;align-items:center;justify-content:flex-end;padding-right:18px;box-shadow:0 10px 16px #000}
.store-threshold i{position:absolute;left:10%;right:31%;top:5px;height:2px;background:linear-gradient(90deg,transparent,var(--yellow),var(--flavour-a),transparent);filter:blur(1px);opacity:.45}
.store-threshold span{font:6px monospace;letter-spacing:.18em;color:#808794}

.packshot-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:3}
.drop{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0 9%,color-mix(in srgb,var(--flavour-a) 66%,transparent) 21%,transparent 72%);box-shadow:0 0 22px color-mix(in srgb,var(--flavour-a) 32%,transparent);animation:packFloat 6s ease-in-out infinite}
.drop--1{width:18px;height:18px;left:14%;top:27%}.drop--2{width:11px;height:11px;right:17%;top:34%;animation-delay:-1.6s}.drop--3{width:24px;height:24px;right:11%;bottom:24%;animation-delay:-3.1s}.drop--4{width:8px;height:8px;left:19%;bottom:19%;animation-delay:-4.2s}
.shard{position:absolute;width:38px;height:2px;background:linear-gradient(90deg,transparent,var(--flavour-a),transparent);box-shadow:0 0 12px var(--flavour-a);animation:shardSpin 8s linear infinite}
.shard--1{left:8%;top:54%;transform:rotate(28deg)}.shard--2{right:8%;top:48%;transform:rotate(-34deg);animation-delay:-2.5s}.shard--3{left:24%;bottom:10%;transform:rotate(72deg);animation-delay:-5s}
@keyframes packFloat{0%,100%{transform:translateY(0) scale(.85);opacity:.35}50%{transform:translateY(-24px) scale(1.12);opacity:.9}}
@keyframes shardSpin{50%{transform:rotate(180deg) translateY(-18px);opacity:.25}100%{transform:rotate(360deg)}}
.hero-bottle{animation:heroBreathe 5.8s ease-in-out infinite}
@keyframes heroBreathe{0%,100%{filter:drop-shadow(0 30px 28px #000) drop-shadow(0 0 12px color-mix(in srgb,var(--flavour-a) 12%,transparent))}50%{filter:drop-shadow(0 38px 34px #000) drop-shadow(0 0 30px color-mix(in srgb,var(--flavour-a) 30%,transparent))}}
.display-case{backdrop-filter:blur(8px)}
.display-case:after{content:"";position:absolute;z-index:8;inset:-30%;background:linear-gradient(115deg,transparent 38%,#ffffff13 45%,#ffffff04 49%,transparent 56%);transform:translateX(-48%);animation:caseReflection 8.5s ease-in-out infinite;pointer-events:none}
@keyframes caseReflection{0%,24%{transform:translateX(-48%)}60%,100%{transform:translateX(48%)}}

.lab-ambient{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.lab-orb{position:absolute;border-radius:50%;filter:blur(2px);border:1px solid color-mix(in srgb,var(--mix-a) 38%,transparent);box-shadow:0 0 40px color-mix(in srgb,var(--mix-a) 16%,transparent);animation:labOrbit 14s ease-in-out infinite}
.lab-orb--one{width:90px;height:90px;left:6%;bottom:10%}.lab-orb--two{width:42px;height:42px;right:7%;top:20%;border-color:color-mix(in srgb,var(--mix-b) 48%,transparent);animation-delay:-5s}.lab-orb--three{width:170px;height:170px;right:20%;bottom:-6%;border-style:dashed;opacity:.35;animation-delay:-8s}
@keyframes labOrbit{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(36px,-30px,0) rotate(180deg)}}
.data-stream{position:absolute;font:6px monospace;letter-spacing:.24em;color:#ffffff24;white-space:nowrap;animation:dataSlide 18s linear infinite}
.data-stream--one{left:-16%;top:24%}.data-stream--two{right:-20%;bottom:17%;animation-direction:reverse;animation-duration:23s}
@keyframes dataSlide{to{transform:translateX(135vw)}}

.reveal-ticker{position:absolute;z-index:1;left:0;right:0;top:96px;height:28px;border-top:1px solid #ffffff0b;border-bottom:1px solid #ffffff0b;overflow:hidden;display:flex;align-items:center;opacity:.45;transform:rotate(-2deg) scale(1.05)}
.reveal-ticker span{white-space:nowrap;font-size:7px;letter-spacing:.28em;color:#a5aab3;animation:tickerMove 22s linear infinite}
@keyframes tickerMove{to{transform:translateX(-50%)}}

@media(max-width:1120px){
  .store-facade{top:104px}.store-awning{top:130px}.store-shell{top:145px}.store-threshold{bottom:-5px}
}
@media(max-width:820px){
  .traffic-glow{bottom:10%}.rain-field{opacity:.22}
  .store-facade{top:70px}.store-awning{top:93px}.store-shell{top:111px}.store-threshold{bottom:-3px}
  .facade-number,.facade-line{display:none}
  .transition-flavour-wave i{width:46vw}.transition-flavour-wave i:nth-child(2){width:68vw}.transition-flavour-wave i:nth-child(3){width:92vw}
  .reveal-ticker{top:76px}
}
@media(max-width:520px){
  .rain-field,.traffic-glow{display:none}.store-awning{height:18px}.store-threshold{display:none}
  .packshot-atmosphere .drop--3,.packshot-atmosphere .shard--3{display:none}
}
@media(prefers-reduced-motion:reduce){.experience-transition,.rain-field,.traffic-glow,.packshot-atmosphere,.lab-ambient,.reveal-ticker{display:none!important}}
/* Final V5 positioning: the storefront sits higher in the composition. */
@media(min-width:1401px){.flavour-store{bottom:23%!important}}
@media(min-width:1121px) and (max-width:1400px){.flavour-store{bottom:20%!important}}
@media(min-width:821px) and (max-width:1120px){.flavour-store{bottom:17%!important}}


/* V6 — alignment, clickability, neon hero, centered lab, unified ring transitions */
:root{--safe-b:env(safe-area-inset-bottom,0px)}
.catalogue,.flavour-tabs,.flavour-tab{position:relative}
.catalogue{z-index:25}.flavour-tabs{z-index:30}.flavour-tab{pointer-events:auto;touch-action:manipulation}

/* Hero title */
.street-copy h1{max-width:9.4ch!important;letter-spacing:-.085em;filter:drop-shadow(0 10px 28px #000)}
.street-copy h1 span,.street-copy h1 em{position:relative;display:block;width:fit-content;max-width:100%}
.street-copy h1 span{color:#fbfdff;text-shadow:0 0 10px rgba(255,255,255,.08),0 8px 25px rgba(0,0,0,.65)}
.street-copy h1 em{color:#f4ff38;text-shadow:0 0 10px rgba(244,255,56,.22),0 0 24px rgba(244,255,56,.18),0 0 52px rgba(244,255,56,.12),0 12px 30px rgba(0,0,0,.55);-webkit-text-stroke:1px rgba(248,255,150,.08)}
.street-copy h1 em::after{content:"";position:absolute;left:1%;right:8%;bottom:8%;height:14px;background:radial-gradient(circle at 50% 50%,rgba(244,255,56,.28),transparent 72%);filter:blur(14px);z-index:-1;pointer-events:none}
.street-copy .primary-cta{box-shadow:0 0 0 1px rgba(244,255,56,.14),0 18px 38px rgba(244,255,56,.14),0 0 45px rgba(244,255,56,.09)}

/* Raise storefront to avoid bottom UI clipping */
.flavour-store{bottom:29%!important}
@media(min-width:1121px) and (max-width:1400px){.flavour-store{bottom:26%!important}}
@media(min-width:821px) and (max-width:1120px){.flavour-store{bottom:21%!important}}
@media(max-width:820px){.flavour-store{bottom:calc(17% + var(--safe-b))!important;height:322px!important}}
@media(max-width:520px){.flavour-store{bottom:calc(14% + var(--safe-b))!important;height:286px!important}}
.scroll-cue,.vertical-hint{bottom:calc(20px + var(--safe-b))}

/* Tablet store layout: ensure all flavour buttons are clickable */
@media(min-width:641px) and (max-width:980px){
  .catalogue{height:244px;z-index:40}
  .flavour-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:10px;padding-bottom:0}
  .flavour-tab{flex:none!important;width:100%!important;height:68px!important;transform:none!important}
  .flavour-tab:hover,.flavour-tab.is-active{transform:translateY(-2px)!important}
  .product-theatre{top:250px!important;right:44%!important}
  .product-console{top:258px!important;left:59%!important;z-index:10}
}

/* Center lab bottle and improve layout */
.formula-reactor{display:grid;place-items:center}
.reactor-card{margin:0 auto}
.custom-bottle{left:50%;transform:translate(-50%,-50%)}
@media(min-width:821px){
  .formula-reactor{justify-self:center;align-self:center;width:100%}
  .reactor-card{width:min(360px,78%)}
}
@media(max-width:820px){
  .lab-layout{padding-bottom:0}
  .formula-reactor{position:absolute;left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:8%!important;width:min(76vw,420px)!important;height:48%!important}
  .reactor-card{width:min(100%,320px)!important;height:90%!important}
  .custom-bottle{transform:translate(-50%,-50%) scale(.7)!important}
  .formula-side{width:42%!important;bottom:5%!important}
}
@media(max-width:520px){
  .lab-layout{inset:104px 16px 24px!important;display:grid!important;grid-template-columns:1fr;grid-template-rows:auto auto auto;align-content:start}
  .lab-copy{max-width:none}
  .formula-reactor{position:relative!important;left:auto!important;right:auto!important;transform:none!important;bottom:auto!important;width:100%!important;height:auto!important;min-height:420px;margin:16px auto 0}
  .reactor-card{width:min(100%,320px)!important;height:380px!important}
  .custom-bottle{transform:translate(-50%,-50%) scale(.74)!important}
  .formula-side{position:relative!important;left:auto!important;bottom:auto!important;width:auto!important;margin-top:8px;display:block!important}
  .formula-side>span,.formula-side>p,.formula-tags{display:block}
  .formula-side .text-link{margin-top:12px}
}

/* Unified circular transitions like the provided reference */
.experience-transition{visibility:hidden;position:fixed;inset:0;z-index:790;pointer-events:none;overflow:hidden}
.transition-flavour-wave,.transition-iris,.transition-code{opacity:0}
.transition-iris{inset:0;background:radial-gradient(circle at 50% 50%,rgba(95,255,90,.12) 0,rgba(110,0,255,.10) 14%,rgba(5,5,7,.92) 30%,#020203 64%,#000 100%);clip-path:none}
.transition-flavour-wave{position:absolute;inset:0;display:grid;place-items:center}
.transition-flavour-wave::before{content:"";position:absolute;left:-10vw;top:50%;width:34vw;height:92vh;transform:translateY(-50%);background:linear-gradient(90deg,#000 0,#000 56%,rgba(0,0,0,0) 100%);clip-path:polygon(0 0,100% 50%,0 100%);filter:drop-shadow(0 0 30px rgba(0,0,0,.8))}
.transition-flavour-wave i{width:min(58vw,58vh);border-width:2px;box-shadow:0 0 40px rgba(96,255,90,.15),0 0 70px rgba(126,24,255,.12), inset 0 0 34px rgba(96,255,90,.12)}
.transition-flavour-wave i:nth-child(2){width:min(78vw,78vh);border-width:2px}
.transition-flavour-wave i:nth-child(3){width:min(102vw,102vh);border-width:1px;opacity:.45}
.transition-code span{font-size:clamp(46px,8vw,84px);letter-spacing:-.07em;text-shadow:0 0 16px rgba(244,255,56,.25),0 0 46px rgba(244,255,56,.12)}
.transition-code b{font-size:9px;letter-spacing:.34em;color:#b2b9c3}
body[data-transition] .experience-transition{visibility:visible}
body[data-transition] .transition-flavour-wave{animation:waveLayerV6 1.14s ease both;opacity:1}
body[data-transition] .transition-flavour-wave i{animation:ringPulseV6 1.14s var(--ease) both}
body[data-transition] .transition-flavour-wave i:nth-child(2){animation-delay:.04s}
body[data-transition] .transition-flavour-wave i:nth-child(3){animation-delay:.08s}
body[data-transition] .transition-iris{animation:irisFadeV6 1.14s ease both}
body[data-transition] .transition-code{animation:codeFlashV6 1.14s ease both}
@keyframes waveLayerV6{0%,100%{opacity:0}16%,78%{opacity:1}}
@keyframes ringPulseV6{0%{transform:scale(.18);opacity:0}28%{opacity:.95}56%{transform:scale(.92);opacity:.82}100%{transform:scale(1.22);opacity:0}}
@keyframes irisFadeV6{0%,100%{opacity:0}18%,74%{opacity:1}}
@keyframes codeFlashV6{0%,20%,82%,100%{opacity:0;transform:translate(-50%,-50%) scale(.92);filter:blur(8px)}36%,68%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none}}

/* language-specific hero scaling */
html[data-lang="en"] .street-copy h1{max-width:8.8ch!important}
html[data-lang="de"] .street-copy h1,html[data-lang="nl"] .street-copy h1{max-width:10.8ch!important}
@media(max-width:820px){html[data-lang="en"] .street-copy h1{font-size:clamp(40px,11vw,60px)!important}}


/* V7 — final premium finish */
html,body{height:100dvh;min-height:100svh}
.stage,.scene{height:100dvh;min-height:100svh}

/* More expressive neon typography */
.street-copy h1{position:relative;isolation:isolate}
.street-copy h1::before{content:"";position:absolute;z-index:-2;left:-5%;top:17%;width:88%;height:78%;background:radial-gradient(ellipse at 45% 48%,rgba(244,255,56,.11),transparent 62%);filter:blur(24px);animation:heroAura 5.8s ease-in-out infinite alternate}
.street-copy h1 span{background:linear-gradient(180deg,#fff 0%,#e9f4f5 58%,#9aa9ad 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 0 rgba(255,255,255,.2),0 15px 35px #000}
.street-copy h1 em{background:linear-gradient(180deg,#fbff74 0%,#eaff22 52%,#9cab00 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 9px rgba(244,255,56,.22))}
.street-copy h1 em::before{content:"";position:absolute;left:-2%;top:48%;width:104%;height:2px;background:linear-gradient(90deg,transparent,#ffffffc9 35%,#f4ff38 58%,transparent);box-shadow:0 0 12px #f4ff38;opacity:.45;animation:titleScan 4.8s ease-in-out infinite}
.hero-signal-strip{display:flex;align-items:center;gap:12px;width:min(440px,100%);margin:-5px 0 18px;color:#747b86;font:7px/1 monospace;letter-spacing:.2em}
.hero-signal-strip i{height:1px;flex:1;background:linear-gradient(90deg,#ffffff10,var(--yellow),#ffffff10);box-shadow:0 0 7px rgba(244,255,56,.28)}
.hero-signal-strip b{color:#aab19a;font-weight:500}
@keyframes heroAura{to{transform:translate(3%,2%) scale(1.08);opacity:.7}}
@keyframes titleScan{0%,22%{transform:translateY(-65px);opacity:0}35%{opacity:.5}68%{opacity:.25}100%{transform:translateY(75px);opacity:0}}

/* Storefront premium finishing */
.flavour-store{transform:translateX(-50%) perspective(1100px) rotateY(-1.2deg);transform-origin:center bottom}
.store-sign{backdrop-filter:blur(10px)}
.store-sign::before{content:"";position:absolute;left:0;right:0;bottom:-5px;height:5px;background:linear-gradient(90deg,transparent,#f4ff38 18%,#1ee7ff 62%,transparent);filter:blur(4px);opacity:.52}
.store-shell{box-shadow:0 32px 60px #000a,inset 0 0 0 1px #ffffff08,inset 0 0 85px #0008}
.store-door span{animation:openPulse 2.8s ease-in-out infinite}
.store-panel::before{content:"PX / 00";position:absolute;right:12px;top:13px;font:6px monospace;letter-spacing:.18em;color:#ffffff29}
.store-panel{position:relative}
.store-threshold::after{content:"";position:absolute;left:8%;right:5%;bottom:-18px;height:28px;background:linear-gradient(90deg,transparent,rgba(244,255,56,.16),rgba(30,231,255,.11),transparent);filter:blur(12px);transform:perspective(400px) rotateX(68deg)}
@keyframes openPulse{50%{box-shadow:0 0 24px rgba(244,255,56,.42);color:#fff}}

/* Store collection cards */
.flavour-tab{backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px #ffffff04}
.flavour-tab::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0,rgba(255,255,255,.055) 42%,transparent 58%);transform:translateX(-120%);transition:transform .65s var(--ease)}
.flavour-tab:hover::before,.flavour-tab.is-active::before{transform:translateX(110%)}
.flavour-tab.is-active{box-shadow:0 16px 30px #0007,inset 0 0 30px color-mix(in srgb,var(--tab) 7%,transparent)}

/* Premium product theatre */
.product-theatre{isolation:isolate}
.display-case{border-color:#ffffff20;background:linear-gradient(145deg,rgba(22,28,38,.82),rgba(3,5,8,.96));box-shadow:0 55px 100px #000c,inset 0 0 110px #0009,0 0 0 1px color-mix(in srgb,var(--flavour-a) 4%,transparent)}
.packshot-grid{position:absolute;z-index:1;inset:10% 8% 8%;background:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at 50% 55%,#000,transparent 78%);opacity:.28;animation:gridDrift 16s linear infinite}
.packshot-spec{position:absolute;z-index:7;top:14%;display:grid;gap:5px;font:7px monospace;letter-spacing:.15em;color:#707784}
.packshot-spec span{color:#ffffff35}.packshot-spec b{font-size:8px;color:#cfd5dd;font-weight:500}
.packshot-spec--left{left:11%}.packshot-spec--right{right:10%;text-align:right}
.bottle-plinth{position:absolute;z-index:2;left:50%;bottom:6%;width:58%;height:13%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--flavour-a) 26%,transparent),#020305 60%,transparent 72%);filter:drop-shadow(0 0 26px color-mix(in srgb,var(--flavour-a) 18%,transparent))}
.bottle-plinth i{position:absolute;left:8%;right:8%;top:41%;height:2px;background:linear-gradient(90deg,transparent,var(--flavour-a),var(--flavour-c),transparent);box-shadow:0 0 13px var(--flavour-a)}
.bottle-plinth em{position:absolute;inset:20% 8%;border:1px solid color-mix(in srgb,var(--flavour-a) 18%,transparent);border-radius:50%;animation:plinthPulse 4.2s ease-in-out infinite}
.hero-bottle{z-index:5;transform-origin:50% 70%;animation:heroPremium 5.6s ease-in-out infinite}
.product-halo{opacity:.22;filter:blur(46px)}
.case-scan{z-index:9;height:1px}
@keyframes gridDrift{to{background-position:42px 42px}}
@keyframes plinthPulse{50%{transform:scale(1.08);opacity:.42}}
@keyframes heroPremium{0%,100%{transform:translateX(-50%) translateY(0) rotate(-.35deg);filter:drop-shadow(0 30px 28px #000) drop-shadow(0 0 14px color-mix(in srgb,var(--flavour-a) 18%,transparent))}50%{transform:translateX(-50%) translateY(-8px) rotate(.45deg);filter:drop-shadow(0 42px 34px #000) drop-shadow(0 0 32px color-mix(in srgb,var(--flavour-a) 32%,transparent))}}

/* Lab alignment and technical finish */
.formula-reactor{isolation:isolate}
.reactor-crosshair{position:absolute;z-index:0;left:50%;top:50%;width:min(92%,540px);aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid #ffffff0b;border-radius:50%;animation:crosshairTurn 25s linear infinite}
.reactor-crosshair::before,.reactor-crosshair::after{content:"";position:absolute;left:50%;top:50%;background:#ffffff0c;transform:translate(-50%,-50%)}
.reactor-crosshair::before{width:118%;height:1px}.reactor-crosshair::after{width:1px;height:118%}
.reactor-crosshair i{position:absolute;width:8px;height:8px;border:1px solid var(--mix-b);box-shadow:0 0 10px color-mix(in srgb,var(--mix-b) 45%,transparent)}
.reactor-crosshair i:nth-child(1){left:8%;top:50%}.reactor-crosshair i:nth-child(2){right:8%;top:50%}.reactor-crosshair i:nth-child(3){left:50%;top:8%}.reactor-crosshair i:nth-child(4){left:50%;bottom:8%}
.reactor-chip{position:absolute;z-index:4;right:20px;top:20px;border:1px solid #ffffff14;background:#ffffff05;padding:7px 9px;color:#727984;font:6px monospace;letter-spacing:.16em}
.reactor-card{z-index:2;backdrop-filter:blur(12px)}
@keyframes crosshairTurn{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* Stronger common transition tunnel */
.transition-flavour-wave::after{content:"";position:absolute;left:50%;top:50%;width:min(26vw,26vh);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#050507 0 48%,rgba(6,8,10,.76) 58%,transparent 72%);box-shadow:0 0 70px #000,inset 0 0 35px #000}
.transition-flavour-wave i:nth-child(4){width:min(126vw,126vh);border-color:rgba(75,255,75,.16)}
.transition-flavour-wave i:nth-child(5){width:min(150vw,150vh);border-color:rgba(117,42,255,.13)}
body[data-transition] .transition-flavour-wave i:nth-child(4){animation-delay:.12s}
body[data-transition] .transition-flavour-wave i:nth-child(5){animation-delay:.16s}
.transition-code{z-index:3}
.transition-code::before{content:"";position:absolute;left:50%;top:50%;width:170%;height:170%;transform:translate(-50%,-50%);border:1px solid rgba(244,255,56,.22);border-radius:50%;box-shadow:0 0 40px rgba(244,255,56,.08);animation:transitionCore 2.6s linear infinite}
@keyframes transitionCore{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* Responsive finishing */
@media(min-width:641px) and (max-width:980px){
  .flavour-tabs{pointer-events:auto}.flavour-tab{z-index:2}
  .packshot-spec{display:none}
  .reactor-card{width:min(330px,82%)!important}
}
@media(max-width:820px){
  .hero-signal-strip{display:none}
  .street-copy h1 em::before{display:none}
  .store-sign{top:10px!important}
  .packshot-grid{background-size:28px 28px}
  .packshot-spec{display:none}
  .bottle-plinth{width:78%}
  .reactor-crosshair{width:min(94vw,430px)}
  .transition-code b{font-size:7px;letter-spacing:.22em}
}
@media(max-width:520px){
  .street-copy h1::before{opacity:.55}
  .flavour-store{bottom:calc(17% + var(--safe-b))!important}
  .store-sign{top:4px!important}
  .display-bottle{animation-duration:5.2s}
  .reactor-crosshair{width:360px;opacity:.65}
  .reactor-chip{display:none}
  .transition-flavour-wave::before{left:-22vw;width:55vw}
}
@media(prefers-reduced-motion:reduce){.street-copy h1::before,.street-copy h1 em::before,.reactor-crosshair,.hero-bottle,.packshot-grid,.transition-code::before{animation:none!important}}


/* V8 — storefront details, neon sign flicker, lab bottle closer to store bottle, mobile centering */
@keyframes neonSignFlicker{
  0%,18%,22%,24%,53%,57%,100%{opacity:1;filter:drop-shadow(0 0 6px rgba(244,255,56,.5)) drop-shadow(0 0 18px rgba(244,255,56,.22))}
  20%,23%,55%{opacity:.72;filter:drop-shadow(0 0 2px rgba(244,255,56,.2))}
}
@keyframes neonLogoPulse{0%,100%{opacity:.96}50%{opacity:1}}
@keyframes signSpark{0%,84%,100%{opacity:0;transform:translateX(-8%)}88%{opacity:.9}92%{opacity:0.2;transform:translateX(16%)}96%{opacity:.65;transform:translateX(28%)}}

/* Shop sign behaves more like a real neon sign */
.store-sign{
  overflow:hidden;
  box-shadow:0 14px 36px #000, inset 0 0 0 1px #ffffff06, 0 0 18px rgba(244,255,56,.06);
}
.store-sign svg,
.store-sign strong,
.store-sign small{animation:neonSignFlicker 6.8s steps(1,end) infinite}
.store-sign svg{animation-delay:.15s}
.store-sign strong{animation-delay:.05s}
.store-sign small{animation-delay:.25s}
.store-sign::after{animation:reflectionSweep 10s linear infinite, signSpark 6.8s steps(1,end) infinite}
.store-sign strong{letter-spacing:-.08em;text-shadow:0 0 10px rgba(244,255,56,.45),0 0 24px rgba(244,255,56,.28),0 0 42px rgba(244,255,56,.12)}
.store-sign small{color:#b4b97c;text-shadow:0 0 8px rgba(244,255,56,.15)}
.store-sign div{position:relative}
.store-sign div::before{content:"";position:absolute;left:-8px;right:-8px;top:22%;height:1px;background:linear-gradient(90deg,transparent,rgba(244,255,56,.55),transparent);filter:blur(.5px);opacity:.45}

/* Front display bottles look more premium and detailed */
.display-bottle{
  width:44px;height:108px;bottom:19%;border-radius:9px 9px 14px 14px;
  border:1px solid rgba(255,255,255,.36);
  background:
    linear-gradient(180deg,rgba(255,255,255,.1),transparent 26%),
    linear-gradient(90deg,rgba(255,255,255,.38) 0,rgba(255,255,255,.10) 14%,transparent 34%,rgba(255,255,255,.10) 82%,rgba(255,255,255,.03) 100%),
    linear-gradient(180deg,color-mix(in srgb,currentColor 96%,white 10%) 0 66%,color-mix(in srgb,currentColor 82%,black 8%) 66% 100%);
  box-shadow:0 0 24px color-mix(in srgb,currentColor 62%,transparent), inset 0 0 14px rgba(255,255,255,.18), inset 0 -20px 26px rgba(0,0,0,.16);
}
.display-bottle:before{
  left:10px;right:10px;top:-18px;height:18px;border-radius:4px 4px 0 0;
  background:linear-gradient(90deg,#1f2430,#454b58 55%,#0e1117);border:1px solid rgba(255,255,255,.22);
  box-shadow:0 2px 0 rgba(255,255,255,.08) inset;
}
.display-bottle:after{
  position:absolute;left:6px;right:6px;bottom:16px;height:34px;border-radius:7px;
  display:grid;align-content:start;justify-items:center;padding-top:4px;
  font:700 7px/1.15 Arial,sans-serif;letter-spacing:.15em;color:#fff;
  background:#06080b;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}
.display-bottle::selection{background:transparent}
.bottle--cyan:after{content:"PRISMIX\A GP";white-space:pre}
.bottle--pink:after{content:"PRISMIX\A BR";white-space:pre}
.bottle--yellow:after{content:"PRISMIX\A MV";white-space:pre}
.bottle--green:after{content:"PRISMIX\A LS";white-space:pre}
.bottle--cyan{left:10%}.bottle--pink{left:29%}.bottle--yellow{left:50%}.bottle--green{left:71%}
@media(max-width:820px){.display-bottle{width:38px;height:94px}.display-bottle:after{height:28px;font-size:6px;padding-top:3px}}
@media(max-width:520px){.display-bottle{width:34px;height:84px}.display-bottle:after{bottom:12px;height:24px;font-size:5px}}

/* Lab bottle closer to the packshot bottle */
.custom-bottle{width:208px;height:430px;top:50%;filter:drop-shadow(0 34px 28px rgba(0,0,0,.95)) drop-shadow(0 0 14px color-mix(in srgb,var(--mix-a) 14%,transparent))}
.custom-cap{left:57px;top:2px;width:94px;height:72px;border-radius:18px 18px 8px 8px;background:linear-gradient(90deg,#171a21,#4a4f5b 50%,#0a0c10);box-shadow:0 8px 18px rgba(0,0,0,.5)}
.custom-cap i{width:2px;background:rgba(124,130,141,.58)}
.custom-neck{left:67px;top:66px;width:74px;height:33px;border-radius:8px;background:#0d1016;border:1px solid rgba(255,255,255,.24)}
.custom-body{
  inset:94px 0 0;border-radius:36px 36px 52px 52px;
  background:linear-gradient(180deg,#11161d,#0d1218 56%,#0a0d12 100%);
  border:2px solid rgba(164,174,189,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), inset 0 -30px 40px rgba(0,0,0,.18);
}
.custom-body::before{content:"";position:absolute;left:16px;right:16px;top:14px;height:48px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}
.custom-liquid{left:6px;right:6px;bottom:6px;height:70%;border-radius:0 0 40px 40px;background:linear-gradient(135deg,var(--mix-a),var(--mix-b) 58%,var(--mix-c));box-shadow:inset 0 22px 24px rgba(255,255,255,.06)}
.custom-liquid:before{left:8px;right:8px;top:-12px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--mix-a) 58%,#fff 12%);box-shadow:0 0 8px color-mix(in srgb,var(--mix-a) 24%,transparent)}
.custom-liquid:after{content:"";position:absolute;left:10%;right:10%;bottom:4%;height:46%;background:radial-gradient(circle at 50% 110%,rgba(255,255,255,.28),transparent 54%);opacity:.65}
.custom-shine{left:18px;top:38px;bottom:44px;width:16px;border-radius:50%;background:rgba(255,255,255,.22);filter:blur(4px)}
.custom-label{
  left:28px;right:28px;top:124px;height:152px;border-radius:12px;
  background:#06080b;border:1px solid rgba(255,255,255,.18);
  justify-content:flex-start;padding-top:16px;gap:0;
}
.custom-label::before{content:"";position:absolute;left:14px;right:14px;top:16px;height:16px;border-radius:8px;background:var(--mix-a);box-shadow:0 0 12px color-mix(in srgb,var(--mix-a) 28%,transparent)}
.custom-label small{margin-top:34px;font-size:9px;letter-spacing:.24em;color:#fbfdff}
.custom-label strong{font-size:23px;line-height:1.05;color:var(--mix-b);margin:14px 0 10px;text-transform:uppercase}
.custom-label span{font:10px monospace;color:#9aa3b1;letter-spacing:.16em}
.custom-shadow{left:26px;right:26px;bottom:-14px;height:28px;background:#000;border-radius:50%;filter:blur(13px)}
.reactor-card{display:flex;align-items:center;justify-content:center}
.reactor-top{top:18px}
.reactor-data{bottom:18px}

/* Better vertical centering in reactor on mobile/tablet */
.formula-reactor{display:grid;place-items:center}
@media(max-width:820px){
  .formula-reactor{height:52%!important;bottom:4%!important}
  .reactor-card{width:min(100%,336px)!important;height:92%!important}
  .custom-bottle{top:50%!important;transform:translate(-50%,-50%) scale(.74)!important}
}
@media(max-width:520px){
  .formula-reactor{min-height:390px!important;height:390px!important;margin-top:18px!important}
  .reactor-card{height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .custom-bottle{top:50%!important;transform:translate(-50%,-50%) scale(.74)!important}
}


/* V9 — ultra polish */
:root{--vh:1vh;--scene-accent:var(--flavour-a)}
html,body,.stage,.scene{height:calc(var(--vh,1vh)*100);min-height:100svh}
body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}

/* Cinematic framing */
.cinema-bars{position:fixed;inset:0;z-index:470;pointer-events:none;opacity:.34}
.cinema-bars i{position:absolute;left:0;right:0;height:18px;background:linear-gradient(180deg,#000,transparent)}
.cinema-bars i:first-child{top:0}.cinema-bars i:last-child{bottom:0;transform:rotate(180deg)}
.scene-lens{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.scene-lens i{position:absolute;border-radius:50%;mix-blend-mode:screen;filter:blur(60px);opacity:.08;will-change:transform}
.scene-lens i:nth-child(1){width:28vw;height:28vw;left:-8vw;top:18vh;background:var(--flavour-a);animation:lensDriftA 18s ease-in-out infinite alternate}
.scene-lens i:nth-child(2){width:35vw;height:35vw;right:-10vw;top:32vh;background:var(--flavour-b);animation:lensDriftB 22s ease-in-out infinite alternate}
.scene-lens i:nth-child(3){width:25vw;height:25vw;left:38vw;bottom:-10vw;background:var(--flavour-c);animation:lensDriftC 16s ease-in-out infinite alternate}
@keyframes lensDriftA{to{transform:translate(16vw,8vh) scale(1.2)}}
@keyframes lensDriftB{to{transform:translate(-18vw,-12vh) scale(.82)}}
@keyframes lensDriftC{to{transform:translate(8vw,-13vh) scale(1.15)}}

/* Scene entry choreography */
.scene.is-active .section-kicker,.scene.is-active .eyebrow,.scene.is-active h1,.scene.is-active h2,.scene.is-active .street-copy>p,.scene.is-active .primary-cta,.scene.is-active .catalogue,.scene.is-active .product-theatre,.scene.is-active .product-console,.scene.is-active .lab-copy,.scene.is-active .formula-reactor,.scene.is-active .formula-side,.scene.is-active .reveal-content{animation:sceneReveal .82s var(--ease) both}
.scene.is-active h1,.scene.is-active h2{animation-delay:.05s}
.scene.is-active .street-copy>p,.scene.is-active .catalogue,.scene.is-active .lab-copy{animation-delay:.10s}
.scene.is-active .primary-cta,.scene.is-active .product-theatre,.scene.is-active .formula-reactor{animation-delay:.16s}
.scene.is-active .product-console,.scene.is-active .formula-side{animation-delay:.22s}
@keyframes sceneReveal{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}

/* Premium hover and magnetic feel */
.primary-cta,.ghost-cta,.add-mix,.flavour-tab,.language-toggle,.sound{will-change:transform}
.primary-cta:active,.ghost-cta:active,.add-mix:active{transform:translateY(0) scale(.985)}
.brand:hover .brand__rails i{box-shadow:0 0 15px #f4ff38,0 0 28px rgba(244,255,56,.26)}
.brand__rails i{transition:height .35s var(--ease),box-shadow .35s}
.brand:hover .brand__rails i:nth-child(1){height:32px}.brand:hover .brand__rails i:nth-child(2){height:25px}.brand:hover .brand__rails i:nth-child(3){height:17px}

/* Better neon sign: ignition, shimmer and tiny sparks */
.store-sign{isolation:isolate}
.store-sign::before{animation:signUnderGlow 3.8s ease-in-out infinite alternate}
@keyframes signUnderGlow{to{opacity:.85;filter:blur(6px)}}
.neon-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 8px 3px #f4ff38;opacity:0;z-index:4}
.neon-spark--a{left:12%;top:18%;animation:tinySpark 5.8s 1.2s infinite}
.neon-spark--b{right:19%;top:38%;animation:tinySpark 7.2s 3.1s infinite}
.neon-spark--c{left:48%;bottom:17%;animation:tinySpark 6.6s 4.4s infinite}
@keyframes tinySpark{0%,91%,100%{opacity:0;transform:scale(.2)}93%{opacity:1;transform:scale(1.3)}95%{opacity:.3;transform:scale(.7)}}
.store-sign svg path{stroke-dasharray:160 12;animation:neonTrace 7s linear infinite}
@keyframes neonTrace{to{stroke-dashoffset:-344}}

/* Storefront bottle micro-details */
.display-bottle{overflow:visible}
.display-bottle::after{box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 12px rgba(0,0,0,.35)}
.display-bottle{--shine-x:20%}
.display-bottle span{display:none}
.display-bottle{background-position:0 0,0 0,0 0}
.store-window .display-bottle{animation-name:bottleBob,bottleShimmer;animation-duration:5.2s,7.5s;animation-timing-function:ease-in-out,linear;animation-iteration-count:infinite,infinite}
@keyframes bottleShimmer{0%,35%{filter:brightness(.92)}50%{filter:brightness(1.16)}70%,100%{filter:brightness(.95)}}

/* Product theatre refinement */
.display-case{transition:transform .7s var(--ease),box-shadow .7s var(--ease)}
.product-theatre:hover .display-case{transform:rotateY(0deg) translateY(-4px);box-shadow:0 64px 120px #000d,inset 0 0 120px #0009,0 0 0 1px color-mix(in srgb,var(--flavour-a) 10%,transparent)}
.packshot-grid{opacity:.34}
.bottle-plinth::after{content:"";position:absolute;left:18%;right:18%;bottom:-14px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--flavour-a) 18%,transparent);filter:blur(12px);animation:plinthGlow 3.7s ease-in-out infinite alternate}
@keyframes plinthGlow{to{transform:scale(1.18);opacity:.35}}

/* Lab scanner / corners */
.reactor-card{isolation:isolate}
.reactor-scan{position:absolute;z-index:6;left:5%;right:5%;height:1px;top:14%;background:linear-gradient(90deg,transparent,var(--mix-b),var(--mix-a),transparent);box-shadow:0 0 12px var(--mix-b);opacity:.45;animation:reactorScan 5.2s ease-in-out infinite}
@keyframes reactorScan{0%,100%{top:16%;opacity:.08}50%{top:86%;opacity:.55}}
.reactor-corners{position:absolute;inset:14px;z-index:7;pointer-events:none}
.reactor-corners i{position:absolute;width:17px;height:17px;border-color:rgba(255,255,255,.18);border-style:solid}
.reactor-corners i:nth-child(1){left:0;top:0;border-width:1px 0 0 1px}.reactor-corners i:nth-child(2){right:0;top:0;border-width:1px 1px 0 0}.reactor-corners i:nth-child(3){left:0;bottom:0;border-width:0 0 1px 1px}.reactor-corners i:nth-child(4){right:0;bottom:0;border-width:0 1px 1px 0}
.custom-bottle{animation:labBottleFloat 6.2s ease-in-out infinite}
@keyframes labBottleFloat{0%,100%{margin-top:0}50%{margin-top:-7px}}

/* Mobile navigation and sizing */
@media(max-width:820px){
  .cinema-bars i{height:10px}
  .scene-lens i{filter:blur(40px);opacity:.07}
  .flavour-tabs{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-inline:2px}
  .flavour-tab{scroll-snap-align:center}
  .product-theatre:hover .display-case{transform:none}
  .scene.is-active .product-console,.scene.is-active .formula-side{animation-delay:.12s}
}
@media(max-width:520px){
  .street-copy h1 em{text-shadow:0 0 8px rgba(244,255,56,.18),0 0 22px rgba(244,255,56,.12)}
  .reactor-card{margin-inline:auto!important}
  .custom-bottle{top:50%!important;left:50%!important}
  .formula-reactor{place-items:center!important}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .scene.is-active *{animation:none!important}
  .scene-lens,.cinema-bars,.neon-spark,.reactor-scan{display:none!important}
}

@media(min-width:981px){.display-case{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,-2deg));}}


/* V10 — final polish fixes requested */
@keyframes premiumFlicker{
  0%,17%,19%,24%,54%,56%,100%{opacity:1;filter:brightness(1.18)}
  18%,55%{opacity:.78;filter:brightness(.82)}
  20%,22%{opacity:.9;filter:brightness(1.35)}
}
@keyframes neonAura{0%,100%{opacity:.82}50%{opacity:1}}

/* 1) First-page bottle labels made premium */
.display-bottle{
  width:38px;height:86px;border-radius:9px 9px 14px 14px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.14),transparent 24%),
    linear-gradient(90deg,rgba(255,255,255,.40) 0,rgba(255,255,255,.12) 14%,transparent 36%,rgba(255,255,255,.12) 86%,rgba(255,255,255,.02) 100%),
    linear-gradient(180deg,color-mix(in srgb,currentColor 96%,white 7%) 0 68%,color-mix(in srgb,currentColor 82%,black 8%) 68% 100%)!important;
  box-shadow:0 0 24px color-mix(in srgb,currentColor 62%,transparent), inset 0 0 12px rgba(255,255,255,.18), inset 0 -18px 24px rgba(0,0,0,.18);
}
.display-bottle:after{
  left:6px;right:6px;bottom:12px;height:27px;border-radius:8px;
  display:grid;place-items:center;white-space:pre;text-align:center;
  font:700 5.5px/1.15 Arial,sans-serif;letter-spacing:.14em;color:#f7f9fc;
  background:linear-gradient(180deg,#0b0d11,#05070a);border:1px solid rgba(255,255,255,.17);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 6px 12px rgba(0,0,0,.22);
}
.bottle--cyan:after{content:"PRISMIX\AGP"!important}
.bottle--pink:after{content:"PRISMIX\ABR"!important}
.bottle--yellow:after{content:"PRISMIX\AMV"!important}
.bottle--green:after{content:"PRISMIX\ALS"!important}
@media(max-width:520px){
  .display-bottle{width:34px;height:78px}
  .display-bottle:after{height:23px;bottom:10px;font-size:4.9px}
}

/* 2) Neon sign much more visible */
.store-sign{
  box-shadow:0 10px 34px rgba(0,0,0,.92), inset 0 0 0 1px rgba(255,255,255,.08), 0 0 14px rgba(244,255,56,.16), 0 0 46px rgba(244,255,56,.10)!important;
}
.store-sign::before{
  content:"";position:absolute;inset:-1px;
  background:radial-gradient(circle at 22% 50%,rgba(244,255,56,.12),transparent 28%),radial-gradient(circle at 70% 50%,rgba(244,255,56,.10),transparent 38%);
  pointer-events:none;mix-blend-mode:screen;animation:neonAura 3.4s ease-in-out infinite;
}
.store-sign svg,.store-sign strong,.store-sign small{animation:premiumFlicker 5.6s steps(1,end) infinite}
.store-sign svg{filter:drop-shadow(0 0 12px rgba(244,255,56,.75)) drop-shadow(0 0 28px rgba(244,255,56,.25))!important}
.store-sign strong{
  color:#fbff78!important;
  text-shadow:0 0 14px rgba(244,255,56,.75),0 0 30px rgba(244,255,56,.36),0 0 68px rgba(244,255,56,.18)!important;
}
.store-sign small{color:#d7dd9a!important;text-shadow:0 0 10px rgba(244,255,56,.22)}

/* 3) Store page bottle centered and fully visible on tablet/mobile */
@media(max-width:820px){
  .product-theatre{right:44%!important;top:212px!important;bottom:20px!important;display:flex;align-items:center;justify-content:center}
  .display-case{display:flex;align-items:center;justify-content:center;padding-top:16px}
  .hero-bottle{top:50%!important;bottom:auto!important;width:68%!important;transform:translate(-50%,-50%)!important}
  .display-case:hover .hero-bottle{transform:translate(-50%,-50%) scale(1.015)!important}
  .product-shadow{bottom:7%!important}
}
@media(max-width:520px){
  .product-theatre{right:48%!important;top:205px!important;bottom:18px!important}
  .display-case{padding-top:10px}
  .hero-bottle{width:62%!important;top:48%!important}
  .product-shadow{bottom:8%!important;width:44%!important}
}

/* 4) Lab page: proper tablet layout + no text overlap */
@media(min-width:521px) and (max-width:820px){
  .lab-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,340px)!important;grid-template-rows:auto auto!important;gap:18px 22px;align-items:start;inset:104px 18px 22px!important}
  .lab-copy{grid-column:1 / -1;max-width:none}
  .lab-copy>p{max-width:100%!important}
  .lab-copy .primary-cta{margin-top:8px}
  .formula-side{display:block!important;position:relative!important;grid-column:1;grid-row:2;left:auto!important;bottom:auto!important;width:auto!important;border-left:0!important;padding:0!important;align-self:start;z-index:2}
  .formula-side>span,.formula-side>p,.formula-tags{display:block!important}
  .formula-side>strong{font-size:clamp(28px,5vw,44px)!important;max-width:260px;line-height:.94;margin:8px 0 14px}
  .formula-side>p{max-width:280px}
  .formula-reactor{position:relative!important;grid-column:2;grid-row:2;right:auto!important;left:auto!important;bottom:auto!important;width:100%!important;height:430px!important;justify-self:center;align-self:start}
  .reactor-card{width:min(100%,320px)!important;height:100%!important}
  .custom-bottle{top:50%!important;transform:translate(-50%,-50%) scale(.66)!important}
}

/* 5) Lab mobile centering */
@media(max-width:520px){
  .formula-reactor{right:auto!important;left:0!important;width:100%!important;min-height:390px!important;height:390px!important;bottom:auto!important;margin-top:20px!important}
  .reactor-card{width:min(100%,320px)!important;height:100%!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .custom-bottle{top:50%!important;left:50%!important;transform:translate(-50%,-50%) scale(.69)!important}
}

/* 6) Final page heading styled like page 1 */
.reveal-content h2{
  max-width:10.2ch;filter:drop-shadow(0 10px 28px rgba(0,0,0,.65))
}
.reveal-content h2 span,.reveal-content h2 em{display:block;width:fit-content;max-width:100%}
.reveal-content h2 span{
  color:#fbfdff;text-shadow:0 0 10px rgba(255,255,255,.08),0 8px 25px rgba(0,0,0,.65)
}
.reveal-content h2 em{
  font-style:normal;color:#f4ff38!important;
  text-shadow:0 0 10px rgba(244,255,56,.22),0 0 24px rgba(244,255,56,.18),0 0 52px rgba(244,255,56,.12),0 12px 30px rgba(0,0,0,.55);
  -webkit-text-stroke:1px rgba(248,255,150,.08)
}
.reveal-content h2 em::after{
  content:"";position:absolute;left:1%;right:8%;bottom:8%;height:14px;background:radial-gradient(circle at 50% 50%,rgba(244,255,56,.28),transparent 72%);filter:blur(14px);z-index:-1;pointer-events:none
}
@media(max-width:820px){.reveal-content h2{max-width:11ch}}


/* V11 — lock fixes */
html,body{overflow-x:hidden!important}
.scene,.store-ui,.lab-layout,.reveal-content{max-width:100%}

/* Home bottles: remove ugly mini labels completely */
.display-bottle:after{display:none!important;content:none!important}

/* Make the PRISMIX neon sign much brighter with obvious flicker */
@keyframes hyperNeonFlicker{
  0%,8%,14%,18%,30%,34%,56%,60%,100%{opacity:1;filter:brightness(1.25)}
  10%,16%,32%,58%{opacity:.62;filter:brightness(.55)}
  12%,17%,33%,59%{opacity:.9;filter:brightness(1.45)}
}
@keyframes hyperGlowBreath{0%,100%{opacity:.82}50%{opacity:1}}
.store-sign{
  overflow:visible!important;
  box-shadow:0 14px 40px rgba(0,0,0,.95),0 0 18px rgba(244,255,56,.24),0 0 46px rgba(244,255,56,.18),0 0 86px rgba(244,255,56,.10),inset 0 0 0 1px rgba(255,255,255,.06)!important;
}
.store-sign::before{
  content:"";position:absolute;inset:-8px;pointer-events:none;border-radius:2px;
  background:radial-gradient(circle at 28% 52%,rgba(244,255,56,.22),transparent 28%),radial-gradient(circle at 75% 48%,rgba(244,255,56,.14),transparent 42%);
  filter:blur(18px);animation:hyperGlowBreath 2.8s ease-in-out infinite;
}
.store-sign::after{opacity:.95!important}
.store-sign svg,.store-sign strong,.store-sign small{animation:hyperNeonFlicker 3.4s steps(1,end) infinite!important}
.store-sign svg{filter:drop-shadow(0 0 14px rgba(244,255,56,.92)) drop-shadow(0 0 34px rgba(244,255,56,.34))!important}
.store-sign strong{color:#fdff91!important;text-shadow:0 0 18px rgba(244,255,56,.95),0 0 36px rgba(244,255,56,.46),0 0 74px rgba(244,255,56,.24)!important}
.store-sign small{color:#ecf0b1!important;text-shadow:0 0 12px rgba(244,255,56,.34)!important}

/* Stop the flavour cards from shifting the whole layout horizontally */
.flavour-tab{transform:none!important;will-change:auto}
.flavour-tab:hover,.flavour-tab.is-active{transform:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 0 0 1px color-mix(in srgb,var(--tab) 18%,transparent)!important}
@media(min-width:641px) and (max-width:1100px){
  .store-ui{overflow:hidden!important;inset:88px 18px 26px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:auto 1fr!important;gap:14px 18px!important;align-items:start!important}
  .catalogue{grid-column:1 / -1;position:relative!important;left:auto!important;right:auto!important;top:auto!important;height:auto!important}
  .catalogue h2{font-size:clamp(34px,5vw,52px)!important;margin:10px 0 18px!important;max-width:100%!important}
  .flavour-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;overflow:hidden!important;padding-bottom:0!important}
  .flavour-tab{width:100%!important;height:68px!important;padding:8px 10px!important}
  .product-theatre{grid-column:1;grid-row:2;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;height:600px!important;min-width:0!important}
  .display-case{width:100%!important;height:100%!important;display:flex;align-items:center;justify-content:center;padding-top:12px;overflow:hidden!important}
  .hero-bottle{top:50%!important;bottom:auto!important;left:50%!important;width:64%!important;transform:translate(-50%,-50%)!important}
  .display-case:hover .hero-bottle{transform:translate(-50%,-50%) scale(1.015)!important}
  .product-console{grid-column:2;grid-row:2;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;border-left:1px solid #ffffff18;padding:4px 0 0 18px!important;overflow:hidden!important;min-width:0!important}
  .product-console h3{font-size:clamp(34px,5vw,56px)!important;word-break:break-word}
  .product-console>p:not(.console-kicker){max-width:100%!important}
}

/* Lab page tablet/mobile: remove overlapping flavour name and keep text inside */
@media(max-width:1100px){
  .formula-side>strong{display:none!important}
  .formula-side>p{max-width:100%!important;overflow-wrap:anywhere}
}
@media(min-width:641px) and (max-width:1100px){
  .lab-layout{inset:104px 18px 24px!important;display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(300px,.95fr)!important;grid-template-rows:auto auto!important;gap:18px 24px!important;align-items:start!important}
  .lab-copy{grid-column:1 / -1;max-width:100%!important}
  .lab-copy h2{font-size:clamp(42px,6vw,66px)!important;max-width:100%!important}
  .lab-copy>p{max-width:100%!important}
  .formula-side{display:block!important;grid-column:1;grid-row:2;position:relative!important;left:auto!important;bottom:auto!important;width:auto!important;border-left:0!important;padding:0!important;min-width:0!important}
  .formula-side>span{display:block!important}
  .formula-tags{display:flex!important}
  .formula-reactor{grid-column:2;grid-row:2;position:relative!important;right:auto!important;left:auto!important;bottom:auto!important;width:100%!important;height:520px!important;min-width:0!important}
  .reactor-card{width:min(100%,340px)!important;height:100%!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.62)!important}
}
@media(max-width:640px){
  .lab-layout{inset:100px 16px 20px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;gap:14px!important;align-content:start!important}
  .lab-copy{max-width:100%!important}
  .formula-side{position:relative!important;left:auto!important;bottom:auto!important;width:auto!important;border-left:0!important;padding:0!important;display:block!important;order:2}
  .formula-side>span{display:block!important}
  .formula-side>p,.formula-tags{display:block!important}
  .formula-reactor{position:relative!important;right:auto!important;left:auto!important;bottom:auto!important;width:100%!important;height:390px!important;min-height:390px!important;order:3;margin-top:4px!important}
  .reactor-card{width:min(100%,320px)!important;height:100%!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.68)!important}
}

/* Last page: pin higher and keep all text visible */
.reveal-content{min-width:0!important}
@media(max-width:1100px){
  .scene--reveal{overflow:auto!important}
  .reveal-content{top:118px!important;left:7%!important;right:7%!important;width:auto!important;transform:none!important;max-height:calc(100dvh - 140px)!important;overflow:auto!important;padding-bottom:40px!important}
  .reveal-content h2{font-size:clamp(52px,9vw,92px)!important;max-width:9.8ch!important;margin:18px 0 22px!important}
  .reveal-content>p:not(.eyebrow){max-width:100%!important}
  .jdc-lockup{width:100%!important}
  .reveal-actions{display:grid!important;grid-template-columns:1fr!important}
}
@media(max-width:640px){
  .reveal-content{top:98px!important;max-height:calc(100dvh - 112px)!important;padding-bottom:28px!important}
  .reveal-content h2{font-size:clamp(46px,14vw,72px)!important;max-width:10.4ch!important}
}


/* ===== V12 lockdown fixes ===== */
html,body{overflow-x:hidden!important;max-width:100vw!important}
main{overflow-x:hidden!important}
.scene,.store-ui,.lab-layout,.catalogue,.product-theatre,.product-console,.formula-reactor,.formula-side,.reveal-content{min-width:0}

/* Store page: kill the mobile/tablet horizontal shift when selecting right-side flavours */
.flavour-tabs{overflow:visible!important;scroll-snap-type:none!important;overscroll-behavior-x:none!important}
.flavour-tab{transform:none!important;scroll-snap-align:none!important}
.flavour-tab:hover,.flavour-tab.is-active{transform:none!important}
@media(max-width:820px){
  .scene--store{overflow:hidden!important}
  .store-ui{left:16px!important;right:16px!important;inset:88px 16px 22px!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;gap:14px!important}
  .catalogue{grid-row:1;grid-column:1;position:relative!important;left:auto!important;right:auto!important;top:auto!important;min-width:0!important}
  .catalogue h2{margin:8px 0 16px!important;max-width:100%!important}
  .flavour-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  .flavour-tab{width:100%!important;min-width:0!important;height:64px!important;padding:8px 10px!important}
  .flavour-tab span:nth-child(2){min-width:0!important;overflow:hidden}
  .flavour-tab span:nth-child(2) b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .product-theatre{grid-row:2;grid-column:1;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;height:360px!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-top:2px!important}
  .display-case{width:min(100%,360px)!important;height:100%!important;transform:none!important}
  .hero-bottle{top:50%!important;bottom:auto!important;left:50%!important;width:min(62%,220px)!important;transform:translate(-50%,-50%)!important}
  .display-case:hover .hero-bottle{transform:translate(-50%,-50%) scale(1.015)!important}
  .product-console{grid-row:3;grid-column:1;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;border-left:0!important;border-top:1px solid #ffffff18!important;padding:16px 0 0!important;min-width:0!important;overflow:hidden!important}
  .product-console h3{font-size:clamp(34px,8vw,52px)!important;word-break:break-word!important}
  .product-console>p:not(.console-kicker){max-width:100%!important}
}

/* Lab page: avoid all overlaps and keep bottle visible on tablet */
.data-stream{pointer-events:none}
@media(max-width:1180px){
  .data-stream--one,.data-stream--two{display:none!important}
}
@media(min-width:821px) and (max-width:1280px){
  .lab-layout{inset:104px 24px 24px!important;display:grid!important;grid-template-columns:minmax(280px,360px) minmax(360px,1fr)!important;grid-template-rows:auto auto!important;gap:22px 34px!important;align-items:start!important}
  .lab-copy{grid-column:1 / -1!important;max-width:none!important}
  .lab-copy>p{max-width:100%!important}
  .formula-side{grid-column:1!important;grid-row:2!important;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;max-width:320px!important;border-left:0!important;padding:0!important;margin-top:0!important;z-index:2!important}
  .formula-side>p{max-width:100%!important;line-height:1.55!important}
  .formula-reactor{grid-column:2!important;grid-row:2!important;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;justify-self:end!important;align-self:start!important;width:100%!important;height:470px!important;min-width:0!important}
  .reactor-card{width:min(100%,360px)!important;height:100%!important;margin-left:auto!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.68)!important}
}
@media(min-width:521px) and (max-width:820px){
  .lab-layout{inset:104px 18px 20px!important;display:grid!important;grid-template-columns:1fr 320px!important;grid-template-rows:auto auto!important;gap:18px 22px!important;align-items:start!important}
  .lab-copy{grid-column:1 / -1!important;max-width:none!important}
  .lab-copy>p{max-width:100%!important}
  .formula-side{grid-column:1!important;grid-row:2!important;position:relative!important;left:auto!important;bottom:auto!important;width:auto!important;max-width:280px!important;border-left:0!important;padding:0!important;align-self:start!important;z-index:2!important}
  .formula-side>strong{display:none!important}
  .formula-side>p{max-width:100%!important;line-height:1.55!important}
  .formula-reactor{grid-column:2!important;grid-row:2!important;position:relative!important;right:auto!important;left:auto!important;bottom:auto!important;width:100%!important;height:430px!important;justify-self:end!important;align-self:start!important}
  .reactor-card{width:min(100%,310px)!important;height:100%!important;margin-left:auto!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.64)!important}
}

/* Lab mobile: bottle must appear above the formula-side text, not buried at the bottom */
@media(max-width:520px){
  .lab-layout{inset:100px 16px 18px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;gap:14px!important;align-content:start!important}
  .lab-copy{order:1;max-width:100%!important}
  .formula-reactor{order:2;position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;height:350px!important;min-height:350px!important;margin:4px auto 0!important;display:grid!important;place-items:center!important}
  .reactor-card{width:min(100%,300px)!important;height:100%!important;margin:0 auto!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.60)!important}
  .formula-side{order:3;position:relative!important;left:auto!important;bottom:auto!important;width:auto!important;max-width:100%!important;border-left:0!important;padding:0!important;margin-top:6px!important;display:block!important}
  .formula-side>strong{display:none!important}
  .formula-side>p{max-width:100%!important;line-height:1.55!important}
  .formula-side .text-link{margin-top:12px!important}
}

/* Final contact dialog: premium aligned neon form */
#contactDialog{border:1px solid rgba(255,255,255,.14)!important;border-radius:28px!important;background:linear-gradient(180deg,#07090f,#0a0d13)!important;color:#fff!important;width:min(860px,94vw)!important;padding:0!important;box-shadow:0 42px 100px rgba(0,0,0,.78),0 0 0 1px rgba(255,255,255,.03) inset,0 0 48px rgba(244,255,56,.06)!important;overflow:hidden!important}
#contactDialog::backdrop{background:rgba(2,3,5,.86)!important;backdrop-filter:blur(14px)!important}
#contactDialog form{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px 18px!important;padding:38px 36px 34px!important;align-items:start!important}
#contactDialog .eyebrow,#contactDialog h2,#contactDialog .primary-cta,#contactDialog label:nth-of-type(3),#contactDialog label:nth-of-type(4){grid-column:1 / -1!important}
#contactDialog .eyebrow{margin:0!important;color:var(--yellow)!important;letter-spacing:.24em!important;font-size:10px!important}
#contactDialog h2{margin:0 0 8px!important;font-size:clamp(30px,4vw,54px)!important;line-height:.95!important;letter-spacing:-.05em!important;max-width:12ch!important}
#contactDialog label{display:grid!important;gap:8px!important;min-width:0!important}
#contactDialog label span{font-size:10px!important;letter-spacing:.16em!important;color:#b8bfca!important}
#contactDialog input,#contactDialog textarea{width:100%!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.12)!important;background:linear-gradient(180deg,#0d1118,#0b0e14)!important;color:#fff!important;padding:16px 18px!important;outline:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 0 0 rgba(244,255,56,0)!important;transition:border-color .25s,box-shadow .25s,transform .25s!important}
#contactDialog textarea{min-height:144px!important;resize:vertical!important}
#contactDialog input::placeholder,#contactDialog textarea::placeholder{color:#646b77!important}
#contactDialog input:focus,#contactDialog textarea:focus{border-color:rgba(244,255,56,.58)!important;box-shadow:0 0 0 1px rgba(244,255,56,.18),0 0 18px rgba(244,255,56,.12)!important;transform:translateY(-1px)!important}
#contactDialog .primary-cta{margin-top:6px!important;border-radius:18px!important;min-height:60px!important;box-shadow:0 14px 34px rgba(244,255,56,.14)!important}
#contactDialog .dialog-close{position:absolute!important;right:18px!important;top:14px!important;width:42px!important;height:42px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:50%!important;background:rgba(255,255,255,.03)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:30px!important;line-height:1!important;cursor:pointer!important;transition:transform .2s,box-shadow .2s,background .2s!important}
#contactDialog .dialog-close:hover{transform:rotate(90deg)!important;background:rgba(255,255,255,.06)!important;box-shadow:0 0 18px rgba(244,255,56,.08)!important}
@media(max-width:640px){
  #contactDialog{width:min(94vw,560px)!important;border-radius:24px!important}
  #contactDialog form{grid-template-columns:1fr!important;padding:30px 20px 24px!important;gap:14px!important}
  #contactDialog h2{max-width:100%!important;font-size:clamp(28px,9vw,42px)!important}
  #contactDialog label,#contactDialog .primary-cta,#contactDialog .eyebrow,#contactDialog h2{grid-column:auto!important}
}


/* ===== V13 visual polish ===== */

/* Page 1: make the final "g" / whole last line sit above the strip beneath */
.street-copy h1{position:relative;z-index:6!important;margin-bottom:8px!important}
.street-copy h1 em{position:relative;z-index:7!important;display:inline-block;padding-right:.04em}
.hero-signal-strip{position:relative;z-index:2!important;margin-top:-10px!important}
.street-copy>p:not(.eyebrow){position:relative;z-index:3}
@media(min-width:821px){
  .street-copy h1 em{margin-bottom:-10px!important}
  .hero-signal-strip{margin-top:-14px!important}
}

/* Page 2: flavour names in matching neon colour */
.flavour-tab:nth-child(1) > span:nth-child(2) b{color:#68efff;text-shadow:0 0 10px rgba(30,231,255,.22),0 0 22px rgba(30,231,255,.12)}
.flavour-tab:nth-child(2) > span:nth-child(2) b{color:#ff67c8;text-shadow:0 0 10px rgba(255,43,166,.22),0 0 22px rgba(255,43,166,.12)}
.flavour-tab:nth-child(3) > span:nth-child(2) b{color:#ffd35d;text-shadow:0 0 10px rgba(255,181,39,.20),0 0 22px rgba(255,181,39,.10)}
.flavour-tab:nth-child(4) > span:nth-child(2) b{color:#8fff95;text-shadow:0 0 10px rgba(108,255,112,.24),0 0 22px rgba(108,255,112,.12)}
.flavour-tab.is-active > span:nth-child(2) b{
  color:var(--tab)!important;
  text-shadow:0 0 12px color-mix(in srgb,var(--tab) 34%,transparent),0 0 28px color-mix(in srgb,var(--tab) 18%,transparent)!important;
}
.product-console h3{
  color:var(--flavour-a)!important;
  text-shadow:0 0 10px color-mix(in srgb,var(--flavour-a) 28%,transparent),0 0 26px color-mix(in srgb,var(--flavour-a) 16%,transparent)!important;
}
.console-kicker{color:color-mix(in srgb,var(--flavour-a) 92%,#fff)!important}

/* Keep second page readable on large screens after the colour treatment */
@media(min-width:821px){
  .product-console h3{margin-bottom:20px!important}
}

/* ===== V14 hotfixes ===== */

/* Scene 1: ensure the "g" in signal feels in front of the HUD strip below */
.scene--street .street-copy h1{overflow:visible!important}
.scene--street .street-copy h1 em{position:relative!important;z-index:20!important}
.scene--street .street-copy h1 em:last-child{margin-bottom:-4px!important}
.scene--street .hero-signal-strip{position:relative!important;z-index:1!important;transform:translateY(14px)!important;margin-top:0!important}
.scene--street .street-copy>p:not(.eyebrow){position:relative;z-index:2}

/* Scene 2 tablet: keep theatre + stats visible together and prevent layout drift */
@media (min-width:521px) and (max-width:1024px){
  .scene--store{overflow:hidden!important}
  .store-ui{inset:100px 18px 20px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(250px,320px)!important;grid-template-rows:auto auto!important;gap:18px 22px!important;align-items:start!important}
  .catalogue{grid-column:1 / -1!important;grid-row:1!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;height:auto!important;min-width:0!important}
  .catalogue h2{margin:10px 0 18px!important;max-width:100%!important}
  .flavour-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;overflow:visible!important}
  .flavour-tab{width:100%!important;min-width:0!important;height:72px!important;transform:none!important}
  .flavour-tab:hover,.flavour-tab.is-active{transform:none!important}
  .product-theatre{grid-column:1!important;grid-row:2!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;height:470px!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important}
  .display-case{width:min(100%,430px)!important;height:100%!important;transform:none!important;margin:0 auto!important}
  .hero-bottle{left:50%!important;top:50%!important;bottom:auto!important;transform:translate(-50%,-50%)!important;width:min(66%,250px)!important}
  .display-case:hover .hero-bottle{transform:translate(-50%,-50%) scale(1.015)!important}
  .product-console{grid-column:2!important;grid-row:2!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;border-top:0!important;border-left:1px solid #ffffff18!important;padding:4px 0 0 18px!important;overflow:visible!important;min-width:0!important}
  .console-status{display:flex!important}
  .console-kicker{display:block!important;margin-top:8px!important}
  .product-console h3{font-size:clamp(34px,4.8vw,48px)!important;margin:10px 0 12px!important;word-break:break-word!important}
  .product-console>p:not(.console-kicker){font-size:12px!important;line-height:1.5!important;max-width:100%!important}
  .taste-data{display:block!important;margin:16px 0!important}
  .taste-data>div{display:grid!important;grid-template-columns:56px 28px 1fr!important;gap:10px!important;margin:12px 0!important}
  .quantity{width:100%!important;height:40px!important}
  .add-mix{height:52px!important;font-size:9px!important}
  .tray{margin:12px 0 16px!important;padding:12px!important}
}

/* Scene 3: keep explanatory text fully left of the reactor on tablet / small desktop */
@media (min-width:821px) and (max-width:1366px){
  .lab-layout{grid-template-columns:minmax(250px,290px) minmax(360px,1fr)!important;gap:20px 40px!important}
  .formula-side{grid-column:1!important;grid-row:2!important;max-width:250px!important;z-index:3!important}
  .formula-side>p{max-width:230px!important;font-size:13px!important;line-height:1.68!important;overflow-wrap:break-word!important}
  .formula-reactor{grid-column:2!important;grid-row:2!important;justify-self:end!important;padding-left:18px!important}
  .reactor-card{width:min(100%,340px)!important;margin-left:auto!important}
}
@media (min-width:521px) and (max-width:820px){
  .formula-side{max-width:240px!important}
  .formula-side>p{max-width:220px!important;font-size:12px!important;line-height:1.62!important}
  .reactor-card{width:min(100%,300px)!important;margin-left:auto!important}
}


/* ===== V15: exact corrections, tablet/foldable safe ===== */

/* 1. Hero: isolate the final word and put it unmistakably in front of the black shop sign. */
.scene--street .street-copy{z-index:80!important;overflow:visible!important}
.scene--street .street-copy h1,
.scene--street .street-copy h1 em{overflow:visible!important;isolation:isolate}
.scene--street .signal-word{
  display:inline-block!important;
  position:relative!important;
  z-index:120!important;
  transform:translate(30px,18px) scale(1.04)!important;
  transform-origin:left center!important;
  padding-right:.08em!important;
  filter:drop-shadow(0 0 10px rgba(244,255,56,.28))!important;
}
.scene--street .flavour-store{z-index:8!important}
.scene--street .store-sign{z-index:9!important}
@media(min-width:821px){
  .scene--street .signal-word{transform:translate(48px,28px) scale(1.06)!important}
}
@media(max-width:520px){
  .scene--street .signal-word{transform:translate(8px,6px) scale(1)!important}
}

/* 2. Tablet/foldable scene 2: use a compact two-column stage so stats cannot disappear below the fold. */
@media (max-width:900px) and (min-aspect-ratio: 0.72){
  .scene--store{overflow:hidden!important}
  .store-ui{
    inset:74px 12px 10px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.08fr) minmax(190px,.72fr)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    gap:10px 12px!important;
    align-items:stretch!important;
  }
  .catalogue{
    grid-column:1 / -1!important;grid-row:1!important;
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;
    height:auto!important;min-width:0!important;
  }
  .catalogue .section-kicker{margin-bottom:2px!important}
  .catalogue h2{font-size:clamp(28px,5.8vw,42px)!important;margin:4px 0 10px!important;line-height:.94!important}
  .flavour-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;width:100%!important;overflow:visible!important}
  .flavour-tab{height:52px!important;padding:5px 8px!important;grid-template-columns:34px 1fr!important;gap:8px!important;min-width:0!important}
  .mini-product{width:22px!important;height:31px!important}
  .mini-product:before{top:-6px!important;height:6px!important;left:6px!important;right:6px!important}
  .flavour-tab>span:nth-child(2) b{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .flavour-tab small,.flavour-tab em{display:none!important}
  .product-theatre{
    grid-column:1!important;grid-row:2!important;
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    height:100%!important;min-height:0!important;min-width:0!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  .display-case{width:min(100%,380px)!important;height:100%!important;max-height:none!important;transform:none!important;margin:0 auto!important}
  .hero-bottle{left:50%!important;top:50%!important;bottom:auto!important;width:min(62%,210px)!important;transform:translate(-50%,-50%)!important}
  .display-case:hover .hero-bottle{transform:translate(-50%,-50%) scale(1.01)!important}
  .product-console{
    grid-column:2!important;grid-row:2!important;
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    min-width:0!important;overflow:auto!important;
    border-top:0!important;border-left:1px solid #ffffff18!important;
    padding:2px 2px 4px 12px!important;
  }
  .console-status{display:none!important}
  .console-kicker{display:block!important;margin:0 0 5px!important;font-size:7px!important}
  .product-console h3{font-size:clamp(23px,5vw,34px)!important;margin:0 0 7px!important;line-height:.95!important}
  .product-console>p:not(.console-kicker){display:block!important;font-size:8.5px!important;line-height:1.4!important;margin:0!important;max-width:100%!important}
  .taste-data{display:block!important;margin:10px 0 11px!important}
  .taste-data>div{display:grid!important;grid-template-columns:38px 21px 1fr!important;gap:6px!important;margin:8px 0!important;font-size:6.5px!important}
  .taste-data b{font-size:8px!important}
  .quantity{width:100%!important;height:31px!important;margin-bottom:7px!important}
  .add-mix{height:38px!important;padding:0 9px!important;font-size:6.8px!important}
  .tray{margin:7px 0 8px!important;padding:7px 8px!important;font-size:6px!important}
  .tray b{font-size:14px!important}.tray small{font-size:8px!important}
  .product-console .text-link{font-size:6px!important;padding-top:8px!important}
}

/* 3. Lab tablet/foldable: constrain the copy to a true left column and keep a clear gutter. */
@media (max-width:900px) and (min-aspect-ratio: 0.72){
  .scene--lab{overflow:hidden!important}
  .lab-layout{
    inset:94px 14px 12px!important;
    display:grid!important;
    grid-template-columns:minmax(0,36%) minmax(0,64%)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    column-gap:26px!important;row-gap:12px!important;
    align-items:start!important;
  }
  .lab-copy{grid-column:1 / -1!important;grid-row:1!important;max-width:none!important}
  .lab-copy h2{font-size:clamp(32px,5.8vw,48px)!important;margin:6px 0 8px!important;max-width:100%!important}
  .lab-copy>p{font-size:9px!important;line-height:1.45!important;max-width:100%!important}
  .sliders{margin:12px 0 12px!important;gap:8px!important}
  .sliders label{grid-template-columns:62px 1fr 25px!important;gap:7px!important;font-size:6.5px!important}
  .lab-copy .primary-cta{height:43px!important;font-size:7px!important;margin-top:0!important}
  .formula-side{
    grid-column:1!important;grid-row:2!important;
    position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:auto!important;max-width:100%!important;min-width:0!important;
    padding:0 12px 0 0!important;margin:0!important;border-left:0!important;
    align-self:start!important;z-index:4!important;
  }
  .formula-side>span{display:block!important;font-size:7px!important;letter-spacing:.18em!important;margin-bottom:8px!important}
  .formula-side>strong{display:none!important}
  .formula-side>p{
    display:block!important;
    max-width:18ch!important;
    font-size:9.5px!important;
    line-height:1.6!important;
    margin:0 0 11px!important;
    overflow-wrap:normal!important;
  }
  .formula-tags{display:flex!important;flex-wrap:wrap!important;gap:4px!important}
  .formula-tags i{font-size:6px!important;padding:6px 7px!important}
  .formula-side .text-link{font-size:6px!important;margin-top:12px!important;line-height:1.35!important}
  .formula-reactor{
    grid-column:2!important;grid-row:2!important;
    position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:100%!important;height:100%!important;min-height:0!important;
    padding-left:8px!important;justify-self:stretch!important;align-self:stretch!important;
    overflow:visible!important;
  }
  .reactor-card{width:min(100%,330px)!important;height:100%!important;max-height:none!important;margin:0 0 0 auto!important}
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.58)!important}
}

/* ===== V16: final polish after foldable/tablet review ===== */

/* Page 1: put “signal.” back near its natural position, keep it above the black shop block,
   and lower the copy under the title a touch so the G stays fully visible. */
.scene--street .signal-word{
  transform:translate(3px,1px) scale(1.01)!important;
  z-index:120!important;
}
@media(min-width:821px){
  .scene--street .signal-word{transform:translate(8px,4px) scale(1.02)!important}
}
@media(max-width:520px){
  .scene--street .signal-word{transform:translate(4px,2px) scale(1)!important}
}
.scene--street .hero-signal-strip{margin-bottom:22px!important}
.scene--street .street-copy>p:not(.eyebrow){margin-top:8px!important}

/* Page 3 tablet/foldable: cleaner two-column rhythm, bottle card centered, less cramped side text. */
@media (max-width:900px) and (min-aspect-ratio: 0.72){
  .lab-layout{
    inset:94px 18px 14px!important;
    grid-template-columns:minmax(210px,240px) minmax(310px,350px)!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    column-gap:34px!important;
    row-gap:14px!important;
    justify-content:center!important;
    align-content:start!important;
    align-items:start!important;
  }
  .lab-copy{grid-column:1 / -1!important;max-width:none!important}
  .lab-copy h2{margin:6px 0 10px!important}
  .lab-copy>p{max-width:100%!important}
  .formula-side{
    grid-column:1!important;
    grid-row:2!important;
    max-width:235px!important;
    padding:2px 0 0!important;
    margin:0!important;
    align-self:start!important;
  }
  .formula-side>span{margin-bottom:10px!important}
  .formula-side>p{
    max-width:22ch!important;
    font-size:9px!important;
    line-height:1.75!important;
    margin:0 0 14px!important;
    text-wrap:pretty;
  }
  .formula-tags{display:flex!important;flex-wrap:wrap!important;gap:5px!important;margin-top:2px!important}
  .formula-side .text-link{margin-top:14px!important}
  .formula-reactor{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    height:100%!important;
    padding-left:0!important;
    justify-self:center!important;
    align-self:start!important;
    display:grid!important;
    place-items:start center!important;
  }
  .reactor-card{
    width:min(100%,340px)!important;
    height:100%!important;
    margin:0 auto!important;
  }
}

/* ===== V17: final positioning fixes ===== */

/* Final scene on desktop: move the whole content block upward so it reads as centered. */
@media (min-width:1101px){
  .scene--reveal .reveal-content{
    top:44%!important;
  }
}

/* Lab on tablet/foldable: center the reactor card on the viewport, not inside the remaining space. */
@media (min-width:521px) and (max-width:1100px) and (min-aspect-ratio:.72){
  .lab-layout{
    inset:94px 18px 14px!important;
    display:grid!important;
    grid-template-columns:27% 46% 27%!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    column-gap:0!important;
    row-gap:14px!important;
    justify-content:stretch!important;
    align-content:start!important;
    align-items:start!important;
  }
  .lab-copy{
    grid-column:1 / -1!important;
    grid-row:1!important;
    max-width:none!important;
  }
  .formula-side{
    grid-column:1!important;
    grid-row:2!important;
    width:auto!important;
    max-width:210px!important;
    padding:2px 22px 0 0!important;
    margin:0!important;
    align-self:start!important;
    justify-self:start!important;
  }
  .formula-side>p{
    max-width:20ch!important;
    font-size:9px!important;
    line-height:1.72!important;
  }
  .formula-reactor{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    margin:0!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    display:grid!important;
    place-items:start center!important;
  }
  .reactor-card{
    width:min(100%,340px)!important;
    height:100%!important;
    margin:0 auto!important;
  }
}


/* ===== V19 — definitive viewport-centering and final-scene lock ===== */

/* Tablet/foldable lab: the reactor is anchored to the viewport centre, never to a grid column. */
@media (min-width:521px) and (max-width:1280px) and (min-aspect-ratio:.70){
  .scene--lab{overflow:hidden!important;overscroll-behavior:none!important}
  .lab-layout{
    inset:94px 22px 16px!important;
    display:grid!important;
    grid-template-columns:240px 1fr!important;
    grid-template-rows:auto 1fr!important;
    gap:14px 28px!important;
    align-items:start!important;
  }
  .lab-copy{grid-column:1 / -1!important;grid-row:1!important;max-width:none!important}
  .formula-side{
    grid-column:1!important;grid-row:2!important;
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:220px!important;max-width:220px!important;
    padding:2px 18px 0 0!important;margin:0!important;
    justify-self:start!important;align-self:start!important;z-index:6!important;
  }
  .formula-side>strong{display:none!important}
  .formula-side>p{display:block!important;max-width:19ch!important;font-size:9px!important;line-height:1.72!important;margin:0 0 13px!important}
  .formula-tags{display:flex!important;gap:4px!important;flex-wrap:wrap!important}
  .formula-side .text-link{margin-top:13px!important}
  .formula-reactor{
    position:fixed!important;
    left:50vw!important;right:auto!important;
    top:61vh!important;bottom:auto!important;
    width:min(430px,44vw)!important;
    height:min(640px,56vh)!important;
    min-height:0!important;
    margin:0!important;padding:0!important;
    transform:translate(-50%,-50%)!important;
    display:grid!important;place-items:center!important;
    z-index:3!important;overflow:visible!important;
  }
  .reactor-card{
    width:min(100%,400px)!important;
    height:100%!important;
    margin:0 auto!important;
  }
  .custom-bottle{left:50%!important;top:50%!important;transform:translate(-50%,-50%) scale(.66)!important}
}

/* Final scene: higher on desktop, absolutely no internal or elastic scrolling on any device. */
.scene--reveal{
  overflow:hidden!important;
  overscroll-behavior:none!important;
  touch-action:none!important;
}
.scene--reveal .reveal-content{
  overflow:hidden!important;
  max-height:none!important;
  overscroll-behavior:none!important;
}
@media (min-width:1101px){
  .scene--reveal .reveal-content{
    top:36%!important;
    transform:translateY(-50%)!important;
  }
}
@media (min-width:821px) and (max-width:1100px){
  .scene--reveal .reveal-content{
    top:88px!important;
    transform:none!important;
    max-height:none!important;
    padding-bottom:0!important;
  }
}


/* ===== V20: desktop depth lines + Netlify form submission finish ===== */
@media (min-width:1101px){
  .scene--street .street-depth-lines{
    position:absolute;
    inset:0;
    z-index:3;
    pointer-events:none;
    opacity:.72;
  }
  .scene--street .street-depth-lines i{
    position:absolute;
    left:44%;
    width:32%;
    height:1px;
    background:linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,255,255,.12),rgba(255,255,255,.02));
    transform-origin:right center;
    filter:drop-shadow(0 0 4px rgba(144,211,255,.08));
  }
  .scene--street .street-depth-lines i:nth-child(1){top:53.5%;transform:rotate(-11deg)}
  .scene--street .street-depth-lines i:nth-child(2){top:58%;transform:rotate(-5deg);width:34%}
  .scene--street .street-depth-lines i:nth-child(3){top:62.5%;transform:rotate(0deg);width:36%}
  .scene--street .street-depth-lines i:nth-child(4){top:67%;transform:rotate(5deg);width:34%}
  .scene--street .street-depth-lines i:nth-child(5){top:71.5%;transform:rotate(10deg);width:32%}
  .scene--street .street-depth-lines::before,
  .scene--street .street-depth-lines::after{
    content:"";
    position:absolute;
    width:1px;
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0));
    filter:drop-shadow(0 0 6px rgba(244,255,56,.05));
  }
  .scene--street .street-depth-lines::before{left:59%;top:49%;height:18%;transform:rotate(2deg)}
  .scene--street .street-depth-lines::after{left:69%;top:48%;height:19%;transform:rotate(-1deg)}
}
@media (max-width:1100px){
  .street-depth-lines{display:none!important}
}


/* ===== V21 visible desktop perspective lines ===== */
@media (min-width:1101px){
  .scene--street .street-depth-lines{opacity:1!important;mix-blend-mode:screen}
  .scene--street .street-depth-lines i{
    height:1px!important;
    background:linear-gradient(90deg,rgba(131,207,255,0),rgba(131,207,255,.22) 38%,rgba(244,255,56,.28) 72%,rgba(244,255,56,0))!important;
    box-shadow:0 0 8px rgba(117,207,255,.08)!important;
  }
  .scene--street .street-depth-lines i:nth-child(1){top:50.5%!important;left:39%!important;width:38%!important;transform:rotate(-12deg)!important}
  .scene--street .street-depth-lines i:nth-child(2){top:55.5%!important;left:40%!important;width:37%!important;transform:rotate(-6deg)!important}
  .scene--street .street-depth-lines i:nth-child(3){top:60.5%!important;left:41%!important;width:36%!important;transform:rotate(0deg)!important}
  .scene--street .street-depth-lines i:nth-child(4){top:65.5%!important;left:40%!important;width:37%!important;transform:rotate(6deg)!important}
  .scene--street .street-depth-lines i:nth-child(5){top:70.5%!important;left:39%!important;width:38%!important;transform:rotate(12deg)!important}
  .scene--street .street-depth-lines::before,
  .scene--street .street-depth-lines::after{
    opacity:.8!important;
    background:linear-gradient(180deg,rgba(131,207,255,.18),rgba(244,255,56,.08),transparent)!important;
  }
}


/* ===== V22: unmistakable desktop depth + no-redirect Netlify form ===== */
@media (min-width:1101px){
  .scene--street .street-depth-lines{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:7!important;
    opacity:1!important;
    overflow:hidden!important;
    pointer-events:none!important;
    mix-blend-mode:screen!important;
  }
  .scene--street .street-depth-lines .depth-vanishing-point{
    position:absolute!important;
    left:66.5%!important;
    top:60.5%!important;
    width:10px!important;
    height:10px!important;
    border-radius:50%!important;
    background:#efff39!important;
    box-shadow:0 0 14px #efff39,0 0 40px rgba(239,255,57,.5)!important;
    transform:translate(-50%,-50%)!important;
    opacity:.78!important;
  }
  .scene--street .street-depth-lines i{
    position:absolute!important;
    left:66.5%!important;
    top:60.5%!important;
    width:90vw!important;
    height:1.5px!important;
    transform-origin:left center!important;
    background:linear-gradient(90deg,rgba(239,255,57,.68),rgba(70,224,255,.30) 32%,rgba(255,255,255,.10) 66%,transparent 100%)!important;
    box-shadow:0 0 7px rgba(89,224,255,.16)!important;
    opacity:.62!important;
  }
  .scene--street .street-depth-lines i:nth-of-type(1){transform:rotate(165deg)!important}
  .scene--street .street-depth-lines i:nth-of-type(2){transform:rotate(176deg)!important}
  .scene--street .street-depth-lines i:nth-of-type(3){transform:rotate(187deg)!important}
  .scene--street .street-depth-lines i:nth-of-type(4){transform:rotate(198deg)!important}
  .scene--street .street-depth-lines i:nth-of-type(5){transform:rotate(209deg)!important}
  .scene--street .street-depth-lines i:nth-of-type(6){transform:rotate(-15deg)!important;width:48vw!important}
  .scene--street .street-depth-lines i:nth-of-type(7){transform:rotate(-5deg)!important;width:48vw!important}
  .scene--street .street-depth-lines i:nth-of-type(8){transform:rotate(5deg)!important;width:48vw!important}
  .scene--street .street-depth-lines i:nth-of-type(9){transform:rotate(15deg)!important;width:48vw!important}
  .scene--street .street-depth-lines i:nth-of-type(10){transform:rotate(25deg)!important;width:48vw!important}
  .scene--street .street-depth-lines::before{
    content:""!important;
    position:absolute!important;
    left:40%!important;
    right:-8%!important;
    bottom:2%!important;
    height:43%!important;
    background:
      repeating-linear-gradient(90deg,transparent 0 9.7%,rgba(75,218,255,.17) 9.9% 10%,transparent 10.2% 20%),
      repeating-linear-gradient(0deg,transparent 0 13.8%,rgba(239,255,57,.14) 14% 14.15%,transparent 14.35% 28%)!important;
    transform:perspective(640px) rotateX(64deg)!important;
    transform-origin:center bottom!important;
    mask-image:linear-gradient(to top,rgba(0,0,0,.95),transparent 92%)!important;
    opacity:.78!important;
  }
  .scene--street .flavour-store{z-index:8!important}
  .scene--street .street-copy{z-index:10!important}
}
@media (max-width:1100px){.street-depth-lines{display:none!important}}

#contactDialog .contact-status{
  grid-column:1 / -1!important;
  min-height:18px!important;
  margin:0!important;
  color:#ff9f9f!important;
  font-size:11px!important;
  line-height:1.5!important;
}
#contactDialog .contact-success{
  padding:46px 38px 38px!important;
  min-height:430px!important;
  display:grid!important;
  align-content:center!important;
  gap:18px!important;
  background:
    radial-gradient(circle at 74% 32%,rgba(239,255,57,.12),transparent 26%),
    linear-gradient(180deg,#080b11,#07090e)!important;
}
#contactDialog .contact-success[hidden]{display:none!important}
#contactDialog .contact-success h2{margin:0!important;font-size:clamp(42px,6vw,72px)!important;line-height:.92!important;letter-spacing:-.055em!important}
#contactDialog .contact-success>p:not(.eyebrow){margin:0!important;color:#b4bac5!important;line-height:1.7!important;max-width:48ch!important}
#contactDialog .contact-success .primary-cta{margin-top:10px!important;border-radius:18px!important;min-height:60px!important}
#contactDialog button:disabled{opacity:.7!important;cursor:wait!important}


/* ===== V22.1: reliable form confirmation on tablet and mobile ===== */
#contactDialog{
  max-height:calc(100dvh - 24px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
#contactDialog.is-success form{
  display:none!important;
}
#contactDialog .contact-success{
  display:none!important;
  width:100%!important;
  min-height:min(430px,calc(100dvh - 26px))!important;
  box-sizing:border-box!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
#contactDialog.is-success .contact-success{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}
#contactDialog.is-success{
  width:min(760px,94vw)!important;
}
@media(max-width:820px){
  #contactDialog{
    width:min(94vw,620px)!important;
    max-height:calc(100dvh - 18px)!important;
    margin:auto!important;
  }
  #contactDialog .contact-success{
    min-height:min(390px,calc(100dvh - 20px))!important;
    padding:38px 26px 30px!important;
    align-content:center!important;
    gap:16px!important;
  }
  #contactDialog .contact-success h2{
    max-width:10ch!important;
    font-size:clamp(40px,9vw,62px)!important;
  }
  #contactDialog .contact-success>p:not(.eyebrow){
    max-width:36ch!important;
    font-size:14px!important;
  }
  #contactDialog .contact-success .primary-cta{
    width:100%!important;
  }
}
@media(max-width:520px){
  #contactDialog{
    width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:22px!important;
  }
  #contactDialog .contact-success{
    min-height:min(350px,calc(100dvh - 18px))!important;
    padding:32px 20px 24px!important;
    gap:14px!important;
  }
  #contactDialog .contact-success h2{
    max-width:9ch!important;
    font-size:clamp(36px,12vw,52px)!important;
  }
  #contactDialog .contact-success>p:not(.eyebrow){
    font-size:13px!important;
    line-height:1.6!important;
  }
}
