/* Homepage hero with a muted video loop (proposed). Text/search are HTML over the video. */
.lvr-vhero { position: relative; min-height: min(78vh, 760px); display: flex; flex-direction: column; justify-content: flex-end; color: #fff; overflow: hidden; background: #0b1a2c; }
.lvr-vhero__media { position: absolute; inset: 0; }
.lvr-vhero__media picture, .lvr-vhero__poster, .lvr-vhero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lvr-vhero__video { opacity: 0; transition: opacity .6s ease; }
.lvr-vhero__video.is-playing { opacity: 1; }
.lvr-vhero__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,12,24,.35) 0%, rgba(5,12,24,.15) 40%, rgba(5,12,24,.70) 100%); }
.lvr-vhero__content { position: relative; z-index: 2; padding-top: 120px; padding-bottom: 28px; text-align: center; }
.lvr-vhero__eyebrow { margin: 0 0 8px; font: 700 14px/1.3 Montserrat, "Helvetica Neue", Arial, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.lvr-vhero__title { margin: 0 0 10px; font: 800 clamp(32px, 5.2vw, 60px)/1.1 Montserrat, "Helvetica Neue", Arial, sans-serif; letter-spacing: .02em; text-shadow: 0 2px 12px rgba(0,0,0,.45); color: #fff; }
.lvr-vhero__contact { margin: 0 0 22px; font: 600 clamp(16px, 2.2vw, 20px)/1.4 Montserrat, "Helvetica Neue", Arial, sans-serif; }
.lvr-vhero__contact a { color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.45); }
.lvr-vhero__contact a:hover, .lvr-vhero__contact a:focus { border-bottom-color: #fff; }
.lvr-vhero__contact span { margin: 0 10px; opacity: .7; }
.lvr-vhero__ctas { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.lvr-vhero .lvr-px-search { position: relative; z-index: 2; }
@media (max-width: 767px) {
  /* normal top-down flow: bottom-anchoring + overflow:hidden clipped the headline */
  .lvr-vhero { min-height: 0; display: block; }
  .lvr-vhero__content { padding-top: 36px; }
  .lvr-vhero__contact span { display: block; height: 0; overflow: hidden; margin: 0; }
  .lvr-vhero__contact a { display: inline-block; margin: 4px 0; }
}
@media (prefers-reduced-motion: reduce) { .lvr-vhero__video { display: none; } }
