/* Object choreography responds to native scroll; the page keeps normal scrolling. */
.brewing[data-menu-category="matcha"] .coffee-art .coffee-cup::before{background:radial-gradient(ellipse,#b2c88a,#6e8949 65%,#3b542a)}
.brewing[data-menu-category="matcha"] .coffee-style{color:#b8cf95}
.brewing[data-menu-category="matcha"] .menu-filters button[aria-pressed="true"]{background:#b8cf95;border-color:#b8cf95}
.ritual{height:210vh;min-height:1300px;position:relative;background:#090b09}
.ritual-stage{height:calc(100svh - 100px);min-height:570px;top:100px;clip-path:inset(0 var(--scene-inset,0%) round var(--scene-radius,0px))}
.ritual h2{position:relative;z-index:3;font-size:clamp(70px,8.2vw,140px);pointer-events:none;text-shadow:0 3px 30px #0008}
.ritual-image{opacity:.35;background-position:40% center;filter:saturate(.6)}
.ritual-shade{background:linear-gradient(90deg,#080b09d9,transparent 80%),linear-gradient(0deg,#090b09,transparent 30%,#090b0960)}
.ritual-objects{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;perspective:1200px}
.scene-cup-wrap{position:absolute;left:69%;top:48%;width:220px;height:310px;transform:translate(-50%,-50%) translate(var(--cup-x,0px),var(--cup-y,0px)) rotate(var(--cup-turn,-9deg)) scale(var(--cup-scale,1));will-change:transform}
.scene-cup.coffee-cup{width:220px;height:280px;animation:none!important;transform:none;background:linear-gradient(106deg,#6a6548 0%,#303a27 17%,#172015 44%,#091009 74%,#434b2c);border:1px solid #a48c60;border-radius:8px 8px 62px 62px;box-shadow:inset 9px 0 20px #fff1,25px 32px 48px #0008}
.scene-cup.coffee-cup::before{width:220px;height:36px;top:-18px;border:5px solid #c4aa7e;background:radial-gradient(ellipse at 45% 45%,#6d4722 0%,#2a160a 55%,#100b06 85%);box-shadow:0 7px 12px #0006}
.scene-cup.coffee-cup::after{right:-57px;top:56px;width:55px;height:96px;border-width:12px;border-radius:0 40px 40px 0;border-color:#606444}
.scene-cup.coffee-cup span{font-size:40px;color:#e4c28d;letter-spacing:2px;text-shadow:0 2px 4px #0007}
.cup-shadow{position:absolute;left:0;right:-40px;bottom:-35px;height:30px;background:#0008;filter:blur(18px);border-radius:50%}
.scene-glow{position:absolute;left:46%;top:12%;width:58%;height:78%;background:radial-gradient(ellipse,#c6a47725,#b5f53d0e 40%,transparent 70%);transform:rotate(var(--orbit-turn,0deg));border-radius:50%}
.scene-orbit{position:absolute;width:520px;height:520px;left:70%;top:49%;border:1px solid #d8bc8566;border-radius:50%;transform:translate(-50%,-50%) rotate(var(--orbit-turn,0deg)) rotateX(65deg);box-shadow:0 0 45px #c6a4770a,inset 0 0 45px #c6a4770a}
.scene-orbit::before{content:'';position:absolute;top:17%;left:12%;width:9px;height:9px;border-radius:50%;background:var(--bronze);box-shadow:0 0 22px var(--bronze)}
.scene-orbit-two{width:590px;height:590px;transform:translate(-50%,-50%) rotate(calc(70deg - var(--orbit-turn,0deg))) rotateX(65deg);border-color:#b5f53d33}
.bean{position:absolute;display:block;width:52px;height:76px;border-radius:48%;background:radial-gradient(ellipse at 30% 25%,#a67a4c,#4e301b 53%,#170f0a 85%);box-shadow:8px 16px 20px #0007,inset 2px 2px 3px #c6a47760}
.bean::after{content:'';position:absolute;inset:8px 22px;border-left:3px solid #211207;border-right:1px solid #c08d5477;border-radius:60%;transform:rotate(7deg)}
.bean-one{left:54%;top:18%;transform:translateY(calc(var(--bean-travel,0px) * -.7)) rotate(calc(30deg + var(--orbit-turn,0deg)))}
.bean-two{left:86%;top:63%;width:39px;height:57px;transform:translateY(var(--bean-travel,0px)) rotate(calc(-40deg - var(--orbit-turn,0deg)))}
.bean-two::after{inset:7px 17px}.bean-three{left:46%;top:76%;transform:translateX(calc(var(--bean-travel,0px) * -.5)) rotate(calc(50deg - var(--orbit-turn,0deg)));filter:blur(.6px);opacity:.75}
.ritual-top,.ritual-bottom{z-index:4}.concept{position:relative;overflow:hidden}.concept::after{content:'';position:absolute;right:-70px;top:20%;width:340px;height:340px;border:1px solid #c6a47720;border-radius:50%;transform:rotate(var(--emblem-turn,0deg)) scale(var(--emblem-scale,1));pointer-events:none}.concept-detail img{transform:rotate(var(--emblem-turn,0deg)) scale(var(--emblem-scale,1));will-change:transform}.concept-detail{position:relative}.concept-detail::after{content:'';position:absolute;width:105px;height:105px;left:-9px;border:1px dashed #c6a47755;border-radius:50%;transform:rotate(calc(var(--emblem-turn,0deg) * -3));pointer-events:none}
.coffee-art .coffee-cup{animation:none!important;transform:rotate(var(--menu-cup-turn,-9deg)) scale(1.1);will-change:transform}.coffee-art .orbit{animation:none!important;transform:rotate(var(--menu-orbit-turn,0deg)) rotateX(60deg)}.coffee-art .orbit-two{transform:rotate(calc(60deg - var(--menu-orbit-turn,0deg))) rotateX(60deg)}
.coffee-item{animation:none!important;transform:translateX(var(--card-offset,0px)) scale(var(--card-scale,1));opacity:var(--card-opacity,1);background:linear-gradient(110deg,#c6a47708,transparent 60%);padding-left:12px;padding-right:12px}.coffee-grid{overflow:clip}.coffee-star{opacity:.5;right:9px}.phuket-orbit{position:absolute;right:-55px;top:12%;width:370px;height:370px;border:1px solid #c6a47722;border-radius:50%;display:grid;place-items:center;pointer-events:none;transform:rotate(var(--location-turn,0deg));opacity:.28}.phuket-orbit::after{content:'';position:absolute;inset:-35px;border:1px dashed #c6a47744;border-radius:50%}.phuket-orbit img{width:72%;height:72%;object-fit:contain;mix-blend-mode:screen}.phuket-grid{z-index:1}.phuket .section-label{position:relative;z-index:1}
.motion-active .hero-photo video{transform:translateY(var(--hero-shift,0px)) scale(1.12)!important}.motion-active .ritual-image{transform:scale(var(--ritual-scale,1))!important}.motion-active .marquee-track{animation:marquee 30s linear infinite!important}.motion-active .reveal{transition:opacity .8s,transform .8s!important}
.motion-paused .scene-cup-wrap{transform:translate(-50%,-50%) rotate(-9deg)}.motion-paused .coffee-item{transform:none;opacity:1}
@media(max-width:1000px){.scene-cup-wrap{left:72%;width:180px;height:260px}.scene-cup.coffee-cup{width:180px;height:230px}.scene-cup.coffee-cup::before{width:180px}.scene-cup.coffee-cup span{font-size:33px}.scene-orbit{width:430px;height:430px}.scene-orbit-two{width:480px;height:480px}.bean-one{left:60%}.ritual h2{font-size:9vw}}
@media(max-width:680px){.ritual{height:195svh;min-height:1200px}.ritual-stage{top:78px;height:calc(100svh - 78px);min-height:590px;align-items:flex-start;padding-top:85px}.ritual h2{font-size:clamp(47px,12vw,78px);line-height:1.02}.scene-cup-wrap{left:56%;top:66%;width:135px;height:185px}.scene-cup.coffee-cup{width:135px;height:175px;border-radius:6px 6px 37px 37px}.scene-cup.coffee-cup::before{width:135px;height:25px;top:-13px;border-width:3px}.scene-cup.coffee-cup::after{right:-35px;top:35px;width:34px;height:64px;border-width:8px;border-radius:0 28px 28px 0}.scene-cup.coffee-cup span{font-size:25px}.scene-orbit{left:56%;top:66%;width:305px;height:305px}.scene-orbit-two{width:350px;height:350px}.scene-glow{left:5%;top:38%;width:95%;height:50%}.bean{width:35px;height:51px}.bean::after{inset:7px 15px;border-left-width:2px}.bean-one{left:77%;top:50%}.bean-two{left:14%;top:66%;width:29px;height:43px}.bean-two::after{inset:6px 12px}.bean-three{left:79%;top:81%}.ritual-bottom{bottom:22px;gap:10px}.ritual-bottom>span{display:none}.menu-editorial{display:block;position:relative;top:auto;min-height:180px;padding:18px 0;margin-bottom:24px;overflow:hidden;border-bottom:1px solid var(--line)}.menu-editorial>.eyebrow{font-size:9px}.menu-editorial>p{font-size:28px;margin-top:25px}.coffee-art{position:absolute;right:-15px;top:-25px;width:200px;height:200px;margin:0}.coffee-art .coffee-cup{width:85px;height:110px}.coffee-art .coffee-cup::before{width:85px}.coffee-art .coffee-cup span{font-size:15px}.coffee-art .orbit{width:170px;height:170px}.coffee-art .orbit-two{width:190px;height:190px}.art-caption{display:none}.phuket-orbit{width:270px;height:270px;right:-70px;top:24%;opacity:.2}.concept::after{width:220px;height:220px;right:-140px}}
