.layered-art { display:block; position:relative; width:100%; aspect-ratio:var(--art-ratio); }
.layered-art>.depth-layer { display:block; position:absolute; inset:0; width:100%; height:100%; max-height:none; margin:0; padding:0; object-fit:fill; pointer-events:none; }
.selection-depth .layered-art { max-width:calc(72vh * var(--preview-ratio)); margin:0 auto; }
.depth-motion { animation:interface-float var(--float-duration,8s) ease-in-out var(--float-delay,0s) infinite; will-change:transform; }
@keyframes interface-float {
  0%,100% { transform:translate3d(0,var(--float-low,4px),0); }
  50% { transform:translate3d(0,var(--float-high,-7px),0); }
}
.depth-scene:not(.is-in-view) .depth-motion,
.motion-paused .depth-motion,
.document-hidden .depth-motion { animation-play-state:paused; will-change:auto; }
.booking-motion .club-identity { --float-duration:9s; --float-delay:-2s; --float-low:3px; --float-high:-3px; }
.booking-motion .plane { --float-duration:7.8s; --float-delay:-1.4s; --float-low:6px; --float-high:-7px; }
.booking-motion .confirmation { --float-duration:8.6s; --float-delay:-4s; --float-low:5px; --float-high:-6px; }
.booking-motion .club-logo { box-shadow:0 18px 28px -10px #2525253d,0 5px 9px -4px #2525251c; }
.booking-motion .slot { box-shadow:0 36px 43px -12px #2525253f,0 10px 15px -4px #2525251c,inset 0 1px 0 #fff; }
.booking-motion .confirmation { box-shadow:0 31px 43px -16px #2525253d,0 8px 13px -5px #2525251a,inset 0 1px 0 #fff; }
@media(max-width:800px) {
  .depth-motion { animation-name:interface-float-mobile; }
  @keyframes interface-float-mobile {
    0%,100% { transform:translate3d(0,calc(var(--float-low,4px) * .65),0); }
    50% { transform:translate3d(0,calc(var(--float-high,-7px) * .65),0); }
  }
}
@media(prefers-reduced-motion:reduce) { .depth-motion { animation:none!important; will-change:auto; } }
