/* One motion language, from the first frame to the last link. */
:root{--cinema-ease:cubic-bezier(.16,1,.3,1);--cinema-gold:#e7b892}
.cinema-atmosphere{z-index:36}
.cinema-atmosphere:not(.is-visible){animation-play-state:paused}
.cinema-progress{position:fixed;top:0;left:0;z-index:80;width:100%;height:2px;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#7c2433,#dda478 62%,#fff0db);box-shadow:0 0 10px #e7a86c45}
.cinema-chapter{position:relative;isolation:isolate}
.cinema-chapter:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 20%,#f1bb7910,transparent 56%);opacity:.35;animation:chapter-breath 14s ease-in-out infinite alternate;animation-play-state:paused}
.cinema-chapter.is-in-view:after{animation-play-state:running}
.cinema-journey.cinema-chapter:after{display:none}
.location.cinema-chapter:after{background:radial-gradient(ellipse at 70% 45%,#f1b16d26,transparent 67%)}
.footer.cinema-chapter:after{background:radial-gradient(ellipse at 45% 110%,#8e312c70,transparent 67%)}
.section-heading .eyebrow,.location-copy .eyebrow,.reservation-content .eyebrow{display:flex;align-items:center;gap:13px}
.reservation-content .eyebrow{justify-content:center}
.section-heading .eyebrow:before,.location-copy .eyebrow:before,.reservation-content .eyebrow:before{content:"";display:block;flex:0 0 27px;height:1px;background:currentColor;opacity:.6;transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--cinema-ease) .1s}
.is-revealed .eyebrow:before{transform:scaleX(1)}
.slide-mode .cinema-photo{--photo-y:0px;--tilt-x:0deg;--tilt-y:0deg;--light-x:70%;--light-y:30%;transform:perspective(1400px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform 1s var(--cinema-ease);isolation:isolate}
.cinema-photo>img{translate:0 var(--photo-y);transition:scale 1.2s var(--cinema-ease)}
.photo-light{position:absolute;z-index:3;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at var(--light-x) var(--light-y),#fff5dc1a,transparent 65%);transition:opacity .7s}
.photo-curtain{position:absolute;inset:-1px;z-index:5;background:linear-gradient(150deg,#2b101b,#6d2430 65%,#d4926a);pointer-events:none;transform-origin:top}
.cinema-photo .image-note{z-index:4}
.taste-tabs-list{position:relative}
.taste-tab-ink{position:absolute;bottom:-1px;left:0;height:2px;background:linear-gradient(90deg,#b46c65,#f0d3b1);box-shadow:0 0 13px #e4aa6f30;pointer-events:none;transition:transform .7s var(--cinema-ease),width .7s var(--cinema-ease)}
.slide-mode .taste-tab:after{display:none!important}
.slide-mode .taste-tab{transition:color .35s!important}
.slide-mode .taste-tab[aria-selected=true]{color:#fff2e0!important}
.slide-mode .taste-tab[aria-selected=true] .tab-number{color:#f3c08d;opacity:1}
.slide-mode .taste-copy h3>span{overflow:visible}
.taste-tags>span{position:relative;padding-left:12px}
.taste-tags>span:before{content:"";position:absolute;top:.6em;left:0;width:3px;height:3px;background:#d5a380;border-radius:50%;transition:box-shadow .5s}
.taste-tags>span:hover:before{box-shadow:0 0 9px 2px #e3ad6f80}
.steps>div{position:relative}
.steps>div:after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:1px;background:linear-gradient(90deg,#d9a77b55,transparent);transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--cinema-ease) .2s}
.steps>div.is-revealed:after{transform:scaleX(1)}
.step-number{display:inline-block;transition:color .6s,text-shadow .6s}
.steps>div.is-in-view .step-number{color:#d9a080;text-shadow:0 0 23px #e1a16c28}
.button{position:relative;overflow:hidden;isolation:isolate;translate:var(--mag-x,0px) var(--mag-y,0px);transition:background .35s,border-color .35s,color .35s,translate .5s var(--cinema-ease),scale .25s}
.button:before{content:"";position:absolute;inset:-30% -60%;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 35%,#fff3 50%,transparent 65%);transform:translateX(-75%);transition:transform .85s var(--cinema-ease)}
.button:not(.button-small):after{content:"↗";margin-left:17px;font-size:17px;line-height:1;transition:transform .5s var(--cinema-ease);opacity:.8}
.button:hover:before,.button:focus-visible:before{transform:translateX(75%)}
.button:hover:after,.button:focus-visible:after{transform:translate(3px,-3px)}
.button:active{scale:.98}
.phone-link{position:relative;translate:var(--mag-x,0px) var(--mag-y,0px);transition:color .4s,translate .5s var(--cinema-ease),text-shadow .5s}
.phone-link:after{content:"↗";display:inline-block;font-size:.75em;transition:transform .6s var(--cinema-ease);opacity:.7}
.phone-link:hover,.phone-link:focus-visible{text-shadow:0 0 28px #e1b17f55}
.phone-link:hover:after,.phone-link:focus-visible:after{transform:translate(5px,-5px)}
.reservation h2{position:relative}
.reservation h2 em{color:#efc49f;text-shadow:0 0 50px #c27a4b1f}
.reservation-meta>span{position:relative}
.footer-ember-line{display:block;height:1px;width:100%;position:absolute;left:0;top:0;overflow:hidden;background:#ffffff0b;pointer-events:none}
.footer-ember-line:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#e7b78eaa,transparent);transform:translateX(-105%);animation:footer-spark 7s ease-in-out infinite;animation-play-state:paused}
.footer.is-in-view .footer-ember-line:after{animation-play-state:running}
.footer .official-logo{transition:filter .7s,scale .7s var(--cinema-ease)}
.footer .wordmark:hover .official-logo{filter:drop-shadow(0 0 16px #e4bb8e40);scale:1.035}
.footer-bottom a,.footer-bottom button,.social-link{position:relative;transition:color .35s}
.footer-bottom a:after,.footer-bottom button:after{content:"";position:absolute;bottom:1px;left:0;width:100%;height:1px;background:#dfac88;transform:scaleX(0);transform-origin:right;transition:transform .55s var(--cinema-ease)}
.footer-bottom a:hover:after,.footer-bottom button:hover:after,.footer-bottom a:focus-visible:after,.footer-bottom button:focus-visible:after{transform:scaleX(1);transform-origin:left}
.footer-bottom a:hover,.footer-bottom button:hover,.social-link:hover{color:#f2d0af}
.footer-return{display:inline-flex;align-items:center;gap:10px}
.footer-return>span:last-child{transition:transform .55s var(--cinema-ease);font-size:18px}
.footer-return:hover>span:last-child{transform:translateY(-4px)}
.aruana-menu[open]{background:radial-gradient(ellipse at 15% 100%,#7f2b38,transparent 75%),#2b111c}
.aruana-menu::backdrop{background:#12090fd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.aruana-menu nav a{position:relative;transition:color .4s,translate .55s var(--cinema-ease)}
.aruana-menu nav a:hover{color:#f0c29b;translate:7px 0}
.scene-nav a i{transition:width .6s var(--cinema-ease),box-shadow .5s}
.scene-nav a[aria-current=step] i{box-shadow:0 0 10px #e4af7770}
.menu-lines{transition:opacity .3s}
.menu-button[aria-expanded=true] .menu-lines{opacity:.35}
.page-paused .cinema-chapter:after,.page-paused .footer-ember-line:after{animation-play-state:paused!important}
.motion-reduced .cinema-photo{transform:none;transition:none}
.motion-reduced .cinema-photo>img{translate:none;scale:1}
.motion-reduced .section-heading .eyebrow:before,.motion-reduced .location-copy .eyebrow:before,.motion-reduced .reservation-content .eyebrow:before,.motion-reduced .steps>div:after{transform:scaleX(1)}
.motion-reduced .cinema-chapter:after{animation:none;opacity:.35}
.motion-reduced .footer-ember-line:after{animation:none;transform:none}
.motion-reduced .button,.motion-reduced .phone-link{translate:none}
@keyframes chapter-breath{from{opacity:.3;transform:translateY(2%)}to{opacity:.85;transform:translateY(-2%)}}
@keyframes footer-spark{0%,20%{transform:translateX(-105%)}80%,100%{transform:translateX(105%)}}
@media(hover:hover) and (pointer:fine){.cinema-photo:hover>img{scale:1.025}.cinema-photo:hover .photo-light{opacity:1}}
@media(max-width:820px){
 .cinema-photo{transform:none!important}
 .button,.phone-link{translate:none!important}
 .button:not(.button-small):after{font-size:16px;margin-left:12px}
 .steps>div:after{left:59px;bottom:-15px}
 .taste-tab-ink{height:2px}
 .aruana-menu::backdrop{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
 .footer-return{min-height:44px}
}
@media(prefers-reduced-motion:reduce){
 .cinema-photo{transform:none!important}.cinema-photo>img{translate:none!important}
 .cinema-chapter:after,.footer-ember-line:after{animation:none!important}
 .button,.phone-link{translate:none!important}
 .section-heading .eyebrow:before,.location-copy .eyebrow:before,.reservation-content .eyebrow:before,.steps>div:after{transform:scaleX(1)}
}
