/* A photographic, continuously moving sensory stage. */
header{color:#f4eee7;border-color:#fff3}.hero{background:#1c1b24;color:#f4eee7;isolation:isolate}.hero-atmosphere{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#181820e8 0%,#1c1b26a8 38%,#1c1b2640 72%),url('assets/glass.webp') 65% 45%/cover no-repeat;transform:scale(1.06);animation:light-drift 20s ease-in-out infinite alternate;transition:opacity 1s}.hero-atmosphere:after{content:'';position:absolute;inset:-10%;background:url('assets/iris.webp') 30% 25%/160% auto;mix-blend-mode:screen;opacity:.12;mask-image:linear-gradient(90deg,transparent 25%,#000 65%);animation:air-drift 17s ease-in-out infinite alternate}.hero:after{opacity:.1}.hero h1{font-size:clamp(95px,10.4vw,170px);margin-top:110px;width:56%;letter-spacing:-.055em}.hero-top .eyebrow{font-size:10px;letter-spacing:2px}.hero .hero-bottom p{font-size:23px}.hero .text-link{border-color:#ddd4df77}.hero-index{border-color:#ddd4df44}.stage-wrap{left:44%;right:-1%;top:170px;bottom:105px}.stage-help{display:none}.spray-button{bottom:25px;background:#eee8ec12;color:#f5f0ed;border-color:#eee8ec66;font-size:11px;padding:11px 20px}.spray-button:hover{background:#eee8ec30}.light-pool{bottom:7%;background:radial-gradient(ellipse,#100b17af,transparent 66%);transform:rotate(-20deg)}.world-selector{position:relative;z-index:6;display:flex;gap:8px;margin-top:40px;width:max-content;border:1px solid #f2e9f14d;padding:5px;border-radius:40px;background:#201d2722;backdrop-filter:blur(10px)}.world-selector button{font-size:12px;padding:12px 25px;border-radius:30px;color:#eae2e9;transition:color .4s,background .4s}.world-selector button[aria-pressed=true]{background:#eae6e0;color:#25212b}.hero-bottom{bottom:145px}#motion-toggle{position:absolute;right:34px;bottom:-35px;z-index:6;pointer-events:auto;color:#e9e3ea;font-size:9px;padding:9px;border-bottom:1px solid #e9e3ea55}#cursor{color:#eee7f1;border-color:#eee7f188;background:#eee7f110}.flavor-story{min-height:720px;position:relative;overflow:hidden;color:#f6f0df;background:#2b2924;padding:85px 6%;isolation:isolate}.flavor-story>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.flavor-story:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#1d1b23c9,transparent 85%)}.flavor-story>div{max-width:550px}.flavor-story h2{margin:100px 0 30px;font-size:clamp(80px,8vw,130px)}.flavor-story p{font-size:12px}.flavor-story button{color:inherit}.hero [src$='bottle-still.webp'],.hero [src$='flavor-still.webp']{mix-blend-mode:normal}.hero #fallback{mask-image:radial-gradient(ellipse,#000 42%,transparent 72%)}body[data-world=flavor] .hero-atmosphere{background-image:linear-gradient(90deg,#151722e8 0%,#181b26aa 38%,#181b2630 72%),url('assets/flavor.webp');background-position:65% 45%}body[data-world=flavor] .hero-atmosphere:after{opacity:.02}body[data-world=flavor] .world-selector button[aria-pressed=true]{background:#e5d4a3}.motion-paused .hero-atmosphere,.motion-paused .hero-atmosphere:after{animation-play-state:paused}
@keyframes light-drift{from{transform:scale(1.06) translate(-.5%,0)}to{transform:scale(1.12) translate(1%,1%)}}@keyframes air-drift{from{transform:translate(-3%,-2%)}to{transform:translate(4%,3%)}}
@media(max-width:900px){.hero h1{font-size:105px}.stage-wrap{left:40%;right:-8%}}
@media(max-width:600px){header{height:76px}.wordmark span{font-size:6px;max-width:70px;letter-spacing:1.5px}.hero{height:850px;min-height:850px;padding-top:105px}.hero h1{font-size:clamp(68px,19vw,106px);margin-top:36px;width:100%;line-height:.84}.hero-top .eyebrow{font-size:8px;letter-spacing:1.4px}.world-selector{margin-top:24px;padding:3px;gap:0}.world-selector button{font-size:11px;padding:10px 20px}.stage-wrap{top:325px;left:-8%;right:-8%;bottom:130px}.spray-button{bottom:7px;font-size:10px;padding:9px 16px}.hero-bottom{bottom:58px;align-items:center}.hero .hero-bottom p{font-size:17px}.hero-index{bottom:18px}.hero-atmosphere{background-position:58% center}.hero-atmosphere:after{background-size:260% auto;background-position:50% 50%;opacity:.16}#motion-toggle{right:26px;bottom:-31px;font-size:8px}.flavor-story{min-height:650px;padding:60px 6%}.flavor-story>img{object-position:60% center}.flavor-story h2{font-size:83px;margin-top:90px}.flavor-story:after{background:linear-gradient(90deg,#1d1b23b0,transparent)}.hero .text-link{gap:12px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.hero-atmosphere,.hero-atmosphere:after{animation:none}#motion-toggle{display:none}}
#stage canvas{mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 4%,#000 96%,transparent);mask-composite:intersect}

/* Final restraint pass: typography-led controls and reserved layout zones. */
.world-selector{border:0;border-radius:0;padding:0;gap:30px;background:none;backdrop-filter:none}
.world-selector button{border-radius:0;padding:10px 0;background:none!important;border-bottom:1px solid transparent;color:#d8d0dc;letter-spacing:.04em}
.world-selector button[aria-pressed=true]{color:#fff!important;border-bottom-color:#f2e9ef}
.spray-button{border:0;border-bottom:1px solid #eee8ec70;border-radius:0;background:none;backdrop-filter:none;padding:9px 0;font-size:10px;letter-spacing:.05em}
.spray-button:hover{background:none;border-bottom-color:#fff}.spray-symbol{display:none}
#motion-toggle{width:36px;height:36px;padding:8px;border:0;opacity:.55;font-size:14px;right:28px;bottom:-32px}#motion-toggle:hover,#motion-toggle:focus-visible{opacity:1}
.hero-bottom{bottom:115px}.hero-index{pointer-events:none}
#stage canvas{mask-image:linear-gradient(90deg,transparent,#000 21%,#000 79%,transparent),linear-gradient(180deg,transparent,#000 15%,#000 82%,transparent);mask-composite:intersect}
@media(min-width:601px) and (max-width:1100px){.hero h1{font-size:clamp(82px,10.2vw,112px);width:58%}.hero{min-height:860px}.stage-wrap{left:43%;right:-6%;top:235px;bottom:120px}.hero-bottom{bottom:120px}.world-selector{margin-top:34px}}
@media(max-width:600px){.hero{height:900px;min-height:900px}.hero h1{font-size:clamp(64px,18vw,100px)}.world-selector{margin-top:25px;gap:26px}.world-selector button{padding:10px 0}.stage-wrap{top:350px;bottom:150px;left:-7%;right:-7%}.hero-bottom{bottom:65px;justify-content:flex-start}.hero .text-link{font-size:9px}.spray-button{bottom:10px}#motion-toggle{right:30px;bottom:-30px}.hero-index{bottom:22px}.flavor-story .eyebrow{display:block;line-height:1.8}}
@media(max-width:360px){.hero h1{font-size:64px}.stage-wrap{top:325px}.hero{height:865px;min-height:865px}}
/* A passing studio light, followed by a quiet pointer-controlled reflection. */
.hero h1{color:#c8bdcd;text-shadow:0 2px 18px #100a1d45}
.headline-light,.headline-sweep{position:absolute;inset:0;display:block;pointer-events:none;user-select:none;color:#fff7ec;text-shadow:none}
.headline-light{opacity:0;mask-image:radial-gradient(ellipse 190px 145px at var(--light-x,0px) var(--light-y,0px),#000 8%,#0009 38%,transparent 100%)}
.headline-sweep{mask-image:linear-gradient(110deg,transparent 35%,#0003 43%,#000 50%,#0003 57%,transparent 65%);mask-size:300% 100%;mask-position:100% 0;animation:headline-illumination 2.8s cubic-bezier(.24,.05,.25,1) .25s both}
.pointer-light{position:absolute;left:0;top:0;width:480px;height:480px;z-index:2;pointer-events:none;opacity:0;background:radial-gradient(ellipse,#f5dfd524 0%,#d9c6ee13 32%,transparent 68%);will-change:transform,opacity}
#cursor{width:32px;height:32px;border:1px solid #fff3;border-radius:50%;background:none;backdrop-filter:none;transition:none;box-shadow:0 0 16px #eee1;will-change:transform,opacity}
.motion-paused .headline-sweep{animation-play-state:paused}
@keyframes headline-illumination{0%{mask-position:100% 0;opacity:0}12%{opacity:1}82%{opacity:1}100%{mask-position:0% 0;opacity:0}}
@media(hover:none),(pointer:coarse){.pointer-light,.headline-light,#cursor{display:none}.hero h1{color:#ddd1df}}
@media(prefers-reduced-motion:reduce){.headline-sweep,.headline-light,.pointer-light,#cursor{display:none}.hero h1{color:#eee5eb;text-shadow:none}}
.ingredient-choices{display:flex;gap:26px;position:relative;z-index:6;margin:24px 0}.ingredient-choices button{padding:9px 0;font-size:11px;color:inherit;opacity:.65;border-bottom:1px solid transparent}.ingredient-choices button[aria-pressed=true]{opacity:1;border-color:currentColor}.hero-ingredients{display:none;margin-top:17px;color:#eee4ed}.hero-ingredients button{font-size:10px}body[data-world=flavor] .hero-ingredients{display:flex}.flavor-story>img{transition:filter .8s,transform .25s ease-out;will-change:transform}body[data-ingredient=botanical] .flavor-story>img,body[data-world=flavor][data-ingredient=botanical] .hero-atmosphere{filter:hue-rotate(42deg) saturate(.7)}body[data-ingredient=vanilla] .flavor-story>img,body[data-world=flavor][data-ingredient=vanilla] .hero-atmosphere{filter:saturate(.15) sepia(.2)}.hero-atmosphere{transition:filter .8s}.air-canvas{position:absolute;inset:0;z-index:1;pointer-events:none;width:100%;height:100%}.air-action{display:flex;color:inherit;margin-top:14px}.air-touched .ritual-sculpture{opacity:1}.ritual-sculpture{transition:opacity .8s}.ritual-copy .light-link{width:max-content;max-width:100%}@media(max-width:600px){.hero-ingredients{margin-top:8px;gap:22px}.hero-ingredients button{font-size:9px;padding:5px 0}.ingredient-choices{gap:24px}.flavor-story h2{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.air-canvas{display:none}.flavor-story>img{transform:none!important}}
body[data-ingredient=botanical] #fallback[src$='flavor-still.webp']{filter:hue-rotate(42deg) saturate(.7)}body[data-ingredient=vanilla] #fallback[src$='flavor-still.webp']{filter:saturate(.15) sepia(.2)}
/* Thin optical surfaces with colored edge reflections; the active underline remains. */
.glass-surface{isolation:isolate;position:relative;border:1px solid #efe6f22b!important;border-radius:12px;background:linear-gradient(125deg,#f4e8fa0d,#17121e24 55%,#bdd9e80b)!important;box-shadow:inset 0 1px 0 #fff2,0 5px 20px #0b071410;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.glass-surface:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse 110px 65px at var(--glass-x,24%) var(--glass-y,0%),#c5e9ff26, #d7acd823 36%,transparent 78%);opacity:.42;transition:opacity .35s}
.glass-surface:after{content:'';position:absolute;inset:-1px;z-index:-1;pointer-events:none;border:1px solid transparent;border-radius:inherit;background:linear-gradient(115deg,#deecfa55,#fff0 35%,#deb3e626 75%,#fff1) border-box;mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.glass-surface.glass-lit:before{opacity:1}.world-selector.glass-surface{padding:5px 16px;margin-left:-16px;gap:30px}.ingredient-choices.glass-surface{width:max-content;max-width:100%;padding:4px 14px;gap:24px}.hero-ingredients.glass-surface{margin-left:-14px}.spray-button.glass-surface{position:absolute;padding:10px 18px;border-radius:10px}.air-action.glass-surface{padding:12px 18px;width:max-content;max-width:100%;margin-top:22px;color:#eee6f0}.glass-surface button{position:relative;z-index:1}.glass-surface:focus-visible{outline-color:#d4c5df}
@media(max-width:600px){.world-selector.glass-surface{padding:3px 13px;margin-left:-13px}.hero-ingredients.glass-surface{padding:2px 11px;margin-left:-11px;gap:22px}.ingredient-choices.glass-surface{gap:19px}.spray-button.glass-surface{padding:9px 16px}}
@media(prefers-reduced-motion:reduce){.glass-surface:before{transition:none;opacity:.4}}

/* Clip decorative overhang without creating a focus-scroll container. */
.hero{overflow:clip}

/* The hero leads with the worlds themselves. Accessible choices appear only on keyboard focus. */
.world-selector.accessible-worlds{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.world-selector.accessible-worlds:focus-within{width:max-content!important;height:auto!important;padding:8px 16px!important;clip-path:none;top:115px;left:4.5%}
.hero .hero-ingredients,.hero #spray{display:none!important}
.hero>#motion-toggle{right:4.5%;bottom:78px;top:auto;color:#e9e3ea;border:0;font-size:11px;padding:12px;min-width:40px;min-height:40px}
@media(max-width:600px){.hero>#motion-toggle{bottom:68px}.world-selector.accessible-worlds:focus-within{top:78px}}
/* Give the sculpture and atmosphere more of the first screen. */
@media(min-width:901px){.hero h1{font-size:clamp(76px,8vw,128px);width:45%}.stage-wrap{left:29%;right:-5%;top:115px;bottom:65px}}
@media(max-width:600px){.hero h1{font-size:clamp(64px,17vw,90px)}.stage-wrap{top:290px;bottom:105px;left:-12%;right:-12%}}

.hero-flavor-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#151722e8 0%,#181b26aa 38%,#181b2630 72%),url('assets/flavor.webp') 65% 45%/cover no-repeat;opacity:0;transition:opacity 1.4s cubic-bezier(.2,.6,.2,1),filter .8s;transform:scale(1.06)}
body[data-world=flavor] .hero-atmosphere{background-image:linear-gradient(90deg,#181820e8 0%,#1c1b26a8 38%,#1c1b2640 72%),url('assets/glass.webp')}
body[data-world=flavor] .hero-flavor-atmosphere{opacity:1}
body[data-ingredient=botanical] .hero-flavor-atmosphere{filter:hue-rotate(42deg) saturate(.7)}body[data-ingredient=vanilla] .hero-flavor-atmosphere{filter:saturate(.15) sepia(.2)}
@media(prefers-reduced-motion:reduce){.hero-flavor-atmosphere{transition:none}}

.hero-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.hero-booking{font-size:10px;letter-spacing:.04em;opacity:.8;display:inline-flex;gap:16px;align-items:center}.hero-booking:hover,.hero-booking:focus-visible{opacity:1}.hero-booking span{transition:transform .35s}.hero-booking:hover span{transform:translate(2px,-2px)}
.ingredient-choices:after{content:'';position:absolute;left:0;bottom:4px;width:var(--active-width,32px);height:1px;background:currentColor;transform:translateX(var(--active-left,14px));transition:transform .7s cubic-bezier(.2,.7,.2,1),width .7s cubic-bezier(.2,.7,.2,1);pointer-events:none;z-index:2;border:0;border-radius:0;mask:none}
.ingredient-choices button[aria-pressed=true]{border-color:transparent}.ingredient-previous{z-index:-1!important;transition:none!important}.flavor-story>img{transition:filter 1.1s cubic-bezier(.2,.7,.2,1),transform .25s ease-out}
#stage:after{content:'';position:absolute;inset:15%;pointer-events:none;background:radial-gradient(ellipse,#e2d3f012,transparent 68%);opacity:0;transition:opacity .6s;z-index:3}#stage:hover:after,#stage:focus-visible:after{opacity:.65}#stage.scene-press:after{opacity:1}.pointer-light{background:radial-gradient(ellipse,#f5dfd52e 0%,#d9c6ee1a 32%,transparent 68%)}
@media(max-width:600px){.hero-bottom{gap:13px}.hero-booking{font-size:9px}.pointer-light.touch-light{display:block}.hero .text-link{font-size:8px}}
@media(prefers-reduced-motion:reduce){.ingredient-choices:after,#stage:after,.flavor-story>img{transition:none}.pointer-light.touch-light{display:none}}

.ingredient-choices:after{inset:auto auto 4px 0}
