/* Original SUHVE package artwork, with independently moving cap and shade preview. */
@property --mood-bg{syntax:'<color>';inherits:true;initial-value:#240407}
:root{transition:--mood-bg .7s cubic-bezier(.22,.61,.36,1)}
.component-window{overflow:hidden;filter:none;isolation:isolate}
.experience.is-enhanced{height:330svh}
.after-hours .experience-stage{min-height:620px;background:var(--mood-bg)}
.artwork-liquid{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;opacity:.65;filter:hue-rotate(var(--scene-hue)) saturate(var(--scene-saturation));transition:filter .8s ease;pointer-events:none}
.after-hours .ah-backdrop{display:none}
.after-hours .ah-shade{z-index:-2;background:linear-gradient(90deg,var(--mood-bg) 4%,transparent 85%),linear-gradient(0deg,var(--mood-bg),transparent 35%);opacity:.8}
.after-hours .ah-outline{top:35%;right:1%;font-size:24vw;opacity:.24;z-index:-1}
.after-hours .ah-copy{top:13%;left:6%;width:48%;pointer-events:none}
.after-hours .ah-copy h1{font-size:clamp(66px,7.7vw,118px);line-height:.95}
.after-hours .ah-copy .ah-cta{pointer-events:auto}
.after-hours .ah-description{max-width:280px;text-transform:none;letter-spacing:.03em;font-size:13px;line-height:1.8;margin:24px 0}
.after-hours .ah-product-wrap{z-index:2;right:4%;top:3%;bottom:75px;width:45%;height:auto;transform:translate3d(var(--art-x,0px),var(--art-y,0px),0) rotate(var(--art-angle,0deg));transition:transform .3s ease-out}
.after-hours .ah-product{filter:drop-shadow(0 22px 26px #10020955)!important;object-fit:contain;animation:artwork-float 7s ease-in-out infinite alternate;transition:opacity .65s ease,translate .65s ease;translate:24px 5px}
.after-hours .ah-product.is-selected{translate:0 0}
.after-hours .ah-selector{bottom:84px;left:6%;width:min(410px,39%);z-index:5}
.after-hours .ah-product-options button{border-radius:0;border:0;border-bottom:1px solid #c69a8655;background:transparent;min-height:54px}
.after-hours .ah-product-options button[aria-pressed=true]{background:#f4dfcc;color:#31101b}
.after-hours .ah-color-options button{width:46px;height:46px}
.after-hours .ah-color-row{margin-top:12px}
.after-hours .ah-mood-label small{font-size:9px}
.artwork-detail{position:absolute;z-index:6;right:15%;bottom:35px;display:flex;gap:32px;align-items:center;color:#f5dac7;background:transparent;border:0;border-bottom:1px solid #c8957d66;padding:12px 0;font:11px Arial,sans-serif;cursor:pointer}
.artwork-detail:hover{color:white;border-color:#f5dac7}
.artwork-detail span{font-size:19px}
.artwork-count{position:absolute;right:5%;top:25px;font:10px Arial,sans-serif;letter-spacing:.2em;color:#e2b4a0}
.journey-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ddb29b19;z-index:8;pointer-events:none}
.journey-line:after{content:'';display:block;width:100%;height:100%;background:#dcb198;transform:scaleX(var(--journey,0));transform-origin:left}
.after-hours .ah-footer{bottom:27px;right:51%;font-size:8px}
.after-hours .ah-footer>span{display:none}
.product-detail{border:1px solid #bd907b55;padding:0;background:#221015;color:#f4dfcc;max-width:min(880px,94vw);max-height:92svh;width:880px;overflow:auto}
.product-detail::backdrop{background:#12070be8;backdrop-filter:blur(8px)}
.detail-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#221015;padding:16px 24px}
.detail-bar h2{font:20px Georgia,serif;margin:0}
.detail-close{color:#f4dfcc;background:none;border:1px solid #bd907b66;padding:10px 15px;min-height:44px;cursor:pointer}
.product-detail img{display:block;width:100%;height:auto}
.product-detail p{padding:12px 24px;font:12px/1.6 Arial,sans-serif;margin:0}
@keyframes artwork-float{from{transform:translateY(0)}to{transform:translateY(-10px)}}
@media(max-width:980px) and (min-width:721px){.after-hours .ah-copy{left:5%}.after-hours .ah-copy h1{font-size:8vw}.after-hours .ah-selector{left:5%;width:42%}.after-hours .ah-product-wrap{right:0;width:48%}}
@media(max-width:720px){
 .after-hours .experience-stage{height:calc(100svh - 66px);min-height:520px}
 .after-hours .ah-copy{top:23px;left:20px;width:calc(100% - 40px);text-align:center}
 .after-hours .ah-copy .eyebrow{font-size:7px;letter-spacing:.2em;margin-bottom:14px}
 .after-hours .ah-copy h1{font-size:clamp(36px,10vw,62px);line-height:.98}
 .after-hours .ah-copy h1 br{display:none}.after-hours .ah-headline-em:before{content:' '}
 .after-hours .ah-description,.after-hours .ah-cta{display:none}
 .after-hours .ah-product-wrap{top:110px;bottom:178px;right:10%;width:80%;height:auto}
 .after-hours .ah-outline{top:38%;font-size:36vw;left:0;right:0;text-align:center}
 .after-hours .ah-selector{left:20px;right:20px;bottom:13px;width:auto;padding-top:12px;background:linear-gradient(0deg,var(--mood-bg) 85%,transparent)}
 .after-hours .ah-product-options button{min-height:45px;font-size:14px}
 .after-hours .ah-color-row{margin-top:5px}.after-hours .ah-color-options button{width:44px;height:44px}
 .after-hours .ah-selector-heading{font-size:9px;margin-bottom:8px}.after-hours .ah-mood-label small{font-size:8px}
 .artwork-detail{bottom:154px;right:50%;transform:translateX(50%);padding:8px 0;min-height:38px;white-space:nowrap;font-size:10px;gap:18px}
 .artwork-count{display:none}.artwork-liquid{object-position:65% center}
 .after-hours .ah-shade{background:linear-gradient(var(--mood-bg),transparent 50%,var(--mood-bg));opacity:.8}
 .detail-bar{padding:12px 16px}.detail-bar h2{font-size:17px}
}
@media(max-height:640px) and (min-width:721px){.after-hours .experience-stage{min-height:540px}.after-hours .ah-copy{top:7%}.after-hours .ah-copy h1{font-size:58px}.after-hours .ah-description{margin:16px 0}.after-hours .ah-selector{bottom:40px}.after-hours .ah-footer{display:none}}
@media(prefers-reduced-motion:reduce){.experience.is-enhanced{height:auto}.after-hours .experience-stage{position:relative;top:0}.after-hours .ah-product,.after-hours .ah-product-wrap{animation:none;transform:none;transition:none}.artwork-liquid{transition:none}}

/* Matched framing for all three bottles. */
.after-hours .ah-product-wrap{inset:0 3% 80px auto;width:47%;height:auto;transform:none!important;transition:none;pointer-events:auto;touch-action:pan-y;cursor:grab;outline-offset:-6px}
.after-hours .ah-product-wrap.is-dragging{cursor:grabbing}
.product-bottle{position:absolute;inset:0;width:100%;height:100%;overflow:visible;opacity:0;pointer-events:none;transition:none;display:none;filter:drop-shadow(0 20px 20px #10020966)}
.product-bottle.is-selected{display:block;opacity:1;animation:product-arrive .45s ease-out both}
.bottle-motion{transform:translateY(var(--bottle-y,0px)) rotate(var(--bottle-tilt,0deg));transform-origin:220px 740px}
.bottle-cap{transform:translateY(var(--cap-lift,0px)) rotate(var(--cap-twist,0deg));will-change:transform}
.bottle-liquid{filter:var(--liquid-filter,hue-rotate(0deg) saturate(1) brightness(1));transition:filter .7s cubic-bezier(.22,.61,.36,1)}
.bottle-neck{filter:drop-shadow(0 2px 2px #35182066)}
.bottle-open-toggle{position:absolute;z-index:7;bottom:35px;right:26%;display:flex;gap:16px;align-items:center;border:1px solid #c8957d88;border-radius:99px;padding:12px 19px;min-height:44px;background:#26081044;color:#f5dac7;font:11px Arial,sans-serif;cursor:pointer}
.bottle-open-toggle:hover{background:#f5dac7;color:#31101b}
.bottle-open-toggle span{font-size:16px}
.artwork-detail{right:7%;bottom:35px}
.bottle-hint{position:absolute;right:7%;bottom:98px;width:39%;text-align:center;color:#dfb5a8;font:9px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;pointer-events:none;z-index:4}
@media(max-width:980px) and (min-width:721px){.after-hours .ah-product-wrap{right:0;width:50%}.bottle-open-toggle{right:24%;font-size:10px;padding:11px 14px}.artwork-detail{right:4%;font-size:10px}}
@media(max-width:720px){
 .after-hours .experience-stage{height:calc(100svh - 66px);min-height:565px}
 .after-hours .ah-copy{top:18px}.after-hours .ah-copy .eyebrow{margin-bottom:9px}.after-hours .ah-copy h1{font-size:clamp(35px,9.6vw,56px)}
 .after-hours .ah-product-wrap{top:82px;bottom:188px;left:3%;right:3%;width:auto;height:auto}
 .bottle-hint{bottom:189px;right:0;left:0;width:100%;font-size:7px;letter-spacing:.1em}
 .bottle-open-toggle{bottom:145px;right:auto;left:calc(50% - 122px);min-height:36px;padding:8px 12px;font-size:9px}
 .artwork-detail{bottom:145px;right:calc(50% - 122px);transform:none;font-size:9px;min-height:36px;gap:12px}
 .after-hours .ah-selector{bottom:8px;padding-top:8px}.after-hours .ah-product-options button{min-height:43px}.after-hours .ah-selector-heading{margin-bottom:5px}
 .after-hours .ah-mood-label small{font-size:7px}
}
@media(prefers-reduced-motion:reduce){.bottle-liquid,.product-bottle{transition:none}.bottle-cap{will-change:auto}}

/* Single rigid applicator, clean body plates, camera pulls back for full extraction. */
.product-zoom{transform:translateX(var(--product-center,0px)) scale(var(--product-scale,1.13));transform-origin:400px 1390px}
.bottle-motion{transform-origin:400px 1000px}
.bottle-cap{transform:translate(var(--cap-x,0px),var(--cap-lift,0px)) rotate(var(--cap-angle,0deg));transform-origin:400px 740px;will-change:transform}
.product-still{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 12px 14px #391b1825)}
.product-component-preview{background:radial-gradient(ellipse at 50% 45%,#faf3eb,#e8d7ca);padding:15px!important}
.product-component-preview .product-still{height:100%;max-height:680px}
.detail-product{height:min(75svh,800px);min-height:360px;background:radial-gradient(ellipse at 50% 45%,#493038,#1d0c12)}
@media(prefers-reduced-motion:reduce){.bottle-cap{will-change:auto}}

.wand-photo{filter:var(--liquid-filter,hue-rotate(0deg) saturate(1) brightness(1));transition:filter .7s cubic-bezier(.22,.61,.36,1)}
.product-component-preview{mask-image:none;aspect-ratio:11/15}
.product-component-preview .product-still{height:auto;max-height:none;aspect-ratio:11/15}
@media(prefers-reduced-motion:reduce){.wand-photo{transition:none}}

@keyframes product-arrive{from{opacity:0;translate:0 9px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.product-bottle.is-selected{animation:none}}
@media(prefers-reduced-motion:reduce){:root{transition:none}}
