/* Progressive motion for the existing experience sections. Content remains visible without JS. */
[data-cinema-section]{position:relative;isolation:isolate}
[data-cinema-section] > :not(.cinema-ambient):not(.cinema-progress){position:relative;z-index:1}
[data-cinema-section="restaurant"]{--cinema-rgb:204,149,97}
[data-cinema-section="spa"]{--cinema-rgb:204,171,117}
[data-cinema-section="moments"]{--cinema-rgb:181,139,91}
[data-cinema-section="travel"]{--cinema-rgb:90,138,129}
.cinema-ambient{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 58% 43% at var(--cinema-x,40%) 37%,rgba(var(--cinema-rgb),.16),transparent 74%);transform:translate3d(0,var(--cinema-shift,0px),0);will-change:transform}
.cinema-progress{position:absolute;z-index:3;top:0;left:0;width:var(--cinema-line,0%);height:2px;pointer-events:none;background:rgba(var(--cinema-rgb),.8)}
.cinema-ready .cinema-heading:not(.cinema-visible),
.cinema-ready .cinema-item:not(.cinema-visible){opacity:0;translate:0 28px}
.cinema-ready .cinema-heading,.cinema-ready .cinema-item{transition:opacity .72s ease,translate .78s cubic-bezier(.2,.75,.2,1);transition-delay:var(--cinema-delay,0ms)}
.cinema-ready .cinema-item.cinema-visible,.cinema-ready .cinema-heading.cinema-visible{opacity:1;translate:0 0}
@media (hover:hover) and (pointer:fine){
 .cinema-ready .cinema-has-active .cinema-item:not(.cinema-active){filter:brightness(.78) saturate(.85)}
 .cinema-ready .cinema-item{transition:opacity .72s ease,translate .78s cubic-bezier(.2,.75,.2,1),filter .35s ease}
 .cinema-ready .cinema-item.cinema-active{filter:brightness(1.04) saturate(1.06)}
}
[data-cinema-section] .cinema-item:focus-visible{outline:3px solid rgba(var(--cinema-rgb),.9);outline-offset:4px}
.cinema-updated{animation:cinema-focus .58s cubic-bezier(.2,.75,.2,1)}
@keyframes cinema-focus{0%{filter:brightness(1.14);transform:translateY(5px)}100%{filter:brightness(1);transform:translateY(0)}}
@media(max-width:700px){
 .cinema-ready .cinema-heading:not(.cinema-visible),.cinema-ready .cinema-item:not(.cinema-visible){translate:0 15px}
 .cinema-ambient{opacity:.55}
}
@media(prefers-reduced-motion:reduce){
 .cinema-ambient,.cinema-progress{display:none!important}
 .cinema-ready .cinema-heading,.cinema-ready .cinema-item,.cinema-updated{opacity:1!important;translate:none!important;animation:none!important;transition:none!important;filter:none!important}
}