/* Halloween's night canvas sits behind the existing booking surfaces. */
html[data-site-theme="halloween"] body.halloween-scene-page {background:#24112F;isolation:isolate}
.halloween-backdrop {position:fixed;inset:0;clip-path:inset(var(--halloween-scene-clip,74px) 0 0);z-index:-1;pointer-events:none;overflow:hidden;contain:paint}
.halloween-backdrop__stars {position:absolute;inset:0;opacity:.3;background-image:radial-gradient(1px 1px at 12% 18%,#F8DCAD,transparent),radial-gradient(1px 1px at 73% 64%,#E7D8FF,transparent),radial-gradient(1.5px 1.5px at 42% 81%,#FFF6DD,transparent);background-size:320px 280px}
.halloween-backdrop__moon {position:fixed;top:calc(var(--halloween-decor-top,74px) + 12px);right:-10px;width:clamp(180px,19vw,274px);aspect-ratio:1}
.halloween-backdrop__moon>img {display:block;width:100%;height:100%;object-fit:contain;filter:sepia(.32) saturate(1.4) hue-rotate(-8deg) drop-shadow(0 0 28px #F6CD6855)}
.halloween-backdrop__moon-bats {position:absolute;inset:20% 4% 20% 2%;z-index:1}
.halloween-backdrop__moon-bats svg {display:block;width:100%;height:100%;filter:drop-shadow(0 1px 2px #10081966)}
.halloween-backdrop__web {position:fixed;left:0;top:var(--halloween-decor-top,74px);width:clamp(110px,15vw,206px);aspect-ratio:1;color:#D8C5E9}
.halloween-backdrop__web--right {left:auto;right:0;transform:scaleX(-1)}
.halloween-backdrop__web>svg {display:block;width:100%;height:100%;opacity:.6;filter:drop-shadow(0 0 3px #C7A9E733)}
.halloween-backdrop__spider {position:absolute;left:32%;top:26px;width:28px;height:32px;transform-origin:50% 0;animation:halloween-spider-drop 10s ease-in-out infinite}
.halloween-backdrop__web--right .halloween-backdrop__spider {animation-delay:-5s}
.halloween-backdrop__spider::before {content:"";position:absolute;bottom:100%;left:50%;height:320px;width:1px;background:#DFCFEB99}
.halloween-backdrop__spider svg {display:block;width:100%;height:100%;filter:drop-shadow(0 0 3px #A68DB877)}
.halloween-scene-page .hotel .ph {position:relative}
@keyframes halloween-spider-drop {
  0%,100% {transform:translateY(0) rotate(-4deg)}
  32% {transform:translateY(108px) rotate(4deg)}
  52% {transform:translateY(108px) rotate(-3deg)}
  80% {transform:translateY(24px) rotate(2deg)}
}
.halloween-candy-layer {position:fixed;inset:0;width:100%;height:100%;z-index:70;pointer-events:none;contain:strict}
html[data-halloween-motion="paused"] .halloween-backdrop__spider {animation-play-state:paused}
.halloween-scene-page.booking-results-body .booking-results-toolbar h2,
.halloween-scene-page.booking-results-body .booking-results-other>h2 {color:#FFF4E4}
.halloween-scene-page.booking-results-body .booking-results-page {background:transparent}
.halloween-scene-page.booking-results-body .booking-results-heading {background:transparent}
.halloween-scene-page.booking-results-body .booking-results-back {color:#D9C8E3}
.halloween-scene-page.booking-results-body .booking-results-back:focus-visible {outline-color:#FFD57A}
.halloween-scene-page.booking-results-body .booking-results-page #search {background:var(--theme-backdrop,#24112F);border-bottom-color:#50325F}
.halloween-scene-page.booking-results-body :is(.booking-results-toolbar p,.booking-results-sort,.booking-results-status) {color:#D9C8E3}
.halloween-scene-page.hotel-detail-page .hotel-detail {background:transparent}
.halloween-scene-page.hotel-detail-page :is(.hotel-detail-top,.hotel-overview,.near) {background:transparent}
.halloween-scene-page.hotel-detail-page :is(.hotel-detail-heading h1,.hotel-detail-location,.hotel-detail-heading__actions,.hotel-overview-stay b,.near .h2) {color:#FFF4E4}
.halloween-scene-page.hotel-detail-page :is(.hotel-detail-crumbs,.hotel-detail-old,.hotel-overview-stay small) {color:#D9C8E3}
.halloween-scene-page.hotel-detail-page .near .eyebrow {color:var(--theme-gold)}
.halloween-scene-page.hotel-detail-page .near .section-head .btn-ghost {color:#FFE0A0;border-color:#A882B8}
.halloween-scene-page.hotel-detail-page .hotel-content-status {color:#D9C8E3}
.halloween-scene-page.hotel-detail-page .hotel-detail-rooms h2 {color:#FFF4E4}
.halloween-scene-page.hotel-detail-page #hotel-rooms {background:transparent;box-shadow:none}
.halloween-scene-page.hotel-detail-page #hotel-rooms>.hotel-room-benefits {color:var(--theme-gold)}
.halloween-scene-page.hotel-detail-page .hotel-detail-panel:not(.hotel-detail-rooms) {background:var(--theme-surface);border-radius:12px;padding:24px;margin:24px 0}
@media (max-width:767px) {
  .halloween-backdrop__web {width:96px}
  .halloween-backdrop__spider {width:19px;height:22px;top:18px}
  .halloween-backdrop__moon {top:calc(var(--halloween-decor-top,74px) + 32px);right:-12px;width:140px}
  .halloween-scene-page.hotel-detail-page .hotel-detail-panel:not(.hotel-detail-rooms) {padding:20px 16px;margin:20px 14px}
}
@media (prefers-reduced-motion:reduce) {.halloween-backdrop__spider {animation:none}.halloween-candy-layer {display:none}}
@media print {.halloween-backdrop,.halloween-candy-layer {display:none}.halloween-scene-page {background:#fff!important}}
