/* Hero styles */
.versa-hero{ position:relative; }
.versa-hero-video,
.versa-hero-fallback{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  display:block;
}

/* Swipe hint default hidden on desktop */
@media (min-width: 769px){
  .versa-swipe-hint-overlay{ display:none !important; }
}

/* Mobile swipe hint */
@media (max-width: 768px){
  .versa-swipe-hint-overlay{
    position:fixed;
    left:0; right:0;
    bottom:max(16px, env(safe-area-inset-bottom) + 12px);
    z-index:9999;
    text-align:center;
    pointer-events:none;
    opacity:0;
    transition:opacity .25s ease;
    display:block;
  }
  .versa-swipe-hint-overlay.show{ opacity:.8; }
  .versa-swipe-down{
    display:inline-flex; flex-direction:column; align-items:center; gap:8px;
    color:#fff;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.35));
  }
  .versa-swipe-down .chevrons{
    width:84px; height:auto;
    fill:none; stroke:currentColor; stroke-width:8; stroke-linecap:round; stroke-linejoin:round;
    animation: versaBounceDown 2s ease-in-out infinite;
    will-change: transform;
  }
  .versa-swipe-down .label{
    font: 800 16px/1.1 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing:.06em;
  }
  @keyframes versaBounceDown{
    0%, 100% { transform: translateY(0); }
    35%      { transform: translateY(4px); }
    50%      { transform: translateY(7px); }
    65%      { transform: translateY(4px); }
  }
  @media (max-width:420px){
    .versa-swipe-down .chevrons{ width:72px; }
    .versa-swipe-down .label{ font-size:15px; }
  }
  @media (prefers-reduced-motion: reduce){
    .versa-swipe-down .chevrons{ animation:none; }
  }
}

/* Card stack */
.vl-cardstack{
  --w: min(100%, 900px);
  --ratio: 16/9;
  width: var(--w);
  aspect-ratio: var(--ratio);
  position: relative;
  margin: 0 auto;
  background: transparent;
  pointer-events: auto;
}
.vl-cardstack .vl-card{
  position: absolute;
  inset: 0;
  top: 50%; left: 50%;
  width: 100%; height: 100%;
  transform: translate(-50%, -50%);
  border-radius: 14px;
  overflow: hidden;
  background: transparent;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  transition: transform .6s cubic-bezier(.22,.61,.36,1), opacity .6s;
  will-change: transform;
}
.vl-card img{
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  background: transparent;
}
.vl-cardstack .vl-card[data-slot="0"]{ z-index: 4; transform: translate(-50%,-50%) translate(0px,0px) scale(1) rotate(0deg); }
.vl-cardstack .vl-card[data-slot="1"]{ z-index: 3; transform: translate(-50%,-50%) translate(-18px,10px) scale(.96) rotate(-4deg); }
.vl-cardstack .vl-card[data-slot="2"]{ z-index: 2; transform: translate(-50%,-50%) translate(18px,16px) scale(.92) rotate(4deg); }
.vl-cardstack .vl-card[data-slot="3"]{ z-index: 1; transform: translate(-50%,-50%) translate(0px,24px) scale(.88) rotate(0deg); opacity: .98; }
.vl-cardstack:hover, .vl-cardstack:focus-within { --pause: 1; }
