/* Stars Hotel & Spa - motion charter V1. Existing signature timings are preserved. */
:root{
 --motion-feedback:160ms;
 --motion-ui:240ms;
 --motion-close:160ms;
 --motion-editorial:600ms;
 --motion-stagger:80ms;
 --motion-distance:20px;
 --motion-ease-in:cubic-bezier(.22,.68,.25,1);
 --motion-ease-state:cubic-bezier(.4,0,.2,1);
}
.btn,.text-link,.icon-btn,.header-cta,.menu-button,.filter,.cookie-banner button,
.home-faq .faq-question,.destination-film .film-sound{
 transition-duration:var(--motion-feedback);
 transition-timing-function:var(--motion-ease-state);
}
.mobile-reserve{transition-duration:var(--motion-ui)}
/* Preserve native semantics while the close animation finishes. */
@media(max-width:1180px){
 .header .nav.is-closing{display:flex;pointer-events:none}
}
dialog.lightbox[open]::backdrop{animation:stars-backdrop-in var(--motion-ui) ease both}
dialog.lightbox.is-closing::backdrop{animation:stars-backdrop-out var(--motion-close) ease both}
@keyframes stars-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes stars-backdrop-out{to{opacity:0}}
.motion-accordion-running{overflow:hidden}
/* The shared controller owns native FAQ motion; avoid two competing entrances. */
.home-faq details[data-motion-accordion][open] p{animation:none}
.home-faq .faq-response.is-entering{animation-duration:var(--motion-ui)}
.destination-film .film-playback-hint{
 position:absolute;left:18px;bottom:18px;z-index:1;
 display:inline-flex;align-items:center;gap:9px;min-height:38px;
 padding:9px 13px;border:1px solid #ffffff66;border-radius:22px;
 background:rgba(28,33,40,.82);color:#fff;font:500 11px/1.3 var(--sans,Inter,sans-serif);
 pointer-events:none;opacity:0;transition:opacity var(--motion-feedback) ease;
}
.destination-film .film-playback-hint:before{content:'';display:block;width:8px;height:11px;border-inline:2px solid currentColor}
.destination-film[data-playback=paused] .film-playback-hint:before,
.destination-film[data-playback=ended] .film-playback-hint:before{
 width:0;height:0;border:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor;
}
.destination-film[data-playback=error] .film-playback-hint:before{display:none}
.destination-film .film-screen:focus-within .film-playback-hint,
.destination-film[data-playback=error] .film-playback-hint{opacity:1}
@media(hover:hover) and (pointer:fine){.destination-film .film-screen:hover .film-playback-hint{opacity:1}}
@media(max-width:700px){
 :root{--motion-distance:12px}
 .destination-film .film-playback-hint{left:12px;bottom:12px;max-width:calc(100% - 88px);font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 dialog.lightbox::backdrop{animation:none!important}
 .destination-film .film-playback-hint{transition:none}
}
