/* Only the homepage's approved beach film; existing page flow stays intact. */
header.hero.se-beach-hero > video {
  object-position: 55% center;
}
.se-beach-hero > .drift { display: none; }
.se-beach-hero .badge .spin { animation: none; }
.se-beach-hero > .wash {
  background: linear-gradient(90deg, rgba(224,204,255,.98) 0%, rgba(224,204,255,.96) 29%, rgba(224,204,255,.9) 39%, rgba(224,204,255,.68) 48%, rgba(224,204,255,.1) 66%, rgba(224,204,255,0) 78%);
}
.se-beach-hero > .se-hero-motion-toggle {
  position: absolute;
  z-index: 4;
  top: 24px;
  right: 270px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid #a81d5b;
  border-radius: 999px;
  background: #fbf7f2;
  color: #1a1a1a;
  font: 600 12px/1.3 'PolySans', 'PT Sans Caption', sans-serif;
  letter-spacing: .02em;
  cursor: pointer;
}
.se-beach-hero > .se-hero-motion-toggle[hidden] { display: none; }
.se-beach-hero > .se-hero-motion-toggle:hover { background: #e0ccff; }
.se-beach-hero > .se-hero-motion-toggle:focus-visible {
  outline: 3px solid #de2a7c;
  outline-offset: 3px;
}
@media (min-width: 768px) {
  .se-beach-hero .hin { padding-top: clamp(64px, 10vh, 110px); }
  .se-beach-hero .hin h1 {
    width: 54%;
    max-width: 664px;
    font-size: clamp(42px, 5.4vw, 78px);
  }
  .se-beach-hero .hline,
  .se-beach-hero .hdesc,
  .se-beach-hero .ctas { max-width: 54%; }
}
@media (max-width: 767px) {
  header.hero.se-beach-hero > video {
    display: block !important;
    position: relative !important;
    inset: auto !important;
    flex: 0 0 300px !important;
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
    object-position: 52% center !important;
    background: #e0ccff;
  }
  .se-beach-hero > .se-hero-motion-toggle {
    top: 244px;
    left: 20px;
    right: auto;
    bottom: auto;
  }
}
