/* Cabana Experiences: a living landscape beneath the existing page.
   No layout, typography, booking, filters or listing styles are changed. */
.xp-rush-field, .xp-motion-toggle { display: none; }
.xp-rush-ready #main { position: relative; isolation: isolate; overflow-x: clip; }
.xp-rush-ready .xp-rush-field {
  display: block; position: absolute; left: 0; width: 100%; height: 1100px;
  top: 0; z-index: -1; pointer-events: none; overflow: hidden;
  contain: layout paint style; --rush-heat: 212,255,58;
  background: radial-gradient(ellipse at 94% 22%, rgba(171,65,22,.14), transparent 42%),
    radial-gradient(ellipse at 73% 63%, rgba(var(--rush-heat),.065), transparent 49%), #080b0c;
}
.xp-rush-ready .xp-rush-field::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(0deg, var(--xp-bg), transparent 27%),
    linear-gradient(90deg, rgba(8,11,12,.22), transparent 57%);
}
.xp-rush-canvas { display: block; position: absolute; inset: 0; width: 100%; height: 100%; }
.xp-rush-ready .xp-hero::before, .xp-rush-ready .xp-hero::after { content: none; }
.xp-rush-ready .xp-speed { display: none; }
.xp-rush-ready .xp-meter-card {
  background: linear-gradient(140deg, rgba(28,34,24,.82), rgba(14,19,18,.82) 65%, rgba(30,26,18,.8));
}
.xp-rush-ready .xp-ticker {
  box-shadow: 0 -1px 0 rgba(232,255,160,.7), 0 0 46px -12px rgba(212,255,58,.23);
}
.xp-rush-ready .xp-motion-toggle {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  position: absolute; right: max(var(--xp-gut), calc((100% - var(--xp-max)) / 2 + var(--xp-gut)));
  bottom: 15px; min-height: 36px; padding: 8px 11px;
  border: 1px solid rgba(245,243,238,.12); border-radius: 999px;
  color: rgba(245,243,238,.65); background: rgba(8,11,12,.58);
  font: 600 11px/1 var(--xp-f); cursor: pointer; z-index: 2;
}
.xp-motion-toggle > span:first-child { width: 5px; height: 5px; border-radius: 50%; background: var(--xp-volt); }
.xp-motion-toggle:hover { color: var(--xp-text); background: rgba(24,30,21,.9); }
.xp-rush-paused .xp-motion-toggle > span:first-child { background: var(--xp-faint); }
.xp-rush-paused .xp-ticker-in, .xp-rush-paused .xp-needle.xp-idle,
.xp-rush-paused .xp-bolt, .xp-rush-paused .xp-meter-card { animation-play-state: paused !important; }
@media (pointer: coarse) { .xp-rush-ready .xp-motion-toggle { min-height: 44px; bottom: 4px; } }
@media (prefers-reduced-motion: reduce) {
  .xp-rush-ready .xp-meter-card { animation: none; }
}
