/* Still frame stays visible until the decorative video can actually play. */
[data-home-page] .home-panorama-ocean { display: block; background: #087d90; }
[data-home-page] .home-panorama-ocean .home-ocean-poster,
[data-home-page] .home-panorama-ocean .home-ocean-video { position: absolute; inset: 0; z-index: -30; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; }
[data-home-page] .home-panorama-ocean .home-ocean-video { opacity: 0; transition: opacity .8s ease; }
/* The existing image-credit layout must not size the hero from the poster. */
[data-home-page] .home-panorama-ocean > .home-ocean-poster { position: absolute !important; inset: 0 !important; }
[data-home-page] .home-panorama-ocean .home-ocean-video[data-playing] { opacity: 1; }
[data-home-page] .home-panorama-ocean .home-panorama-shade { display: block; height: 100%; background: linear-gradient(180deg, rgba(3,49,65,.36), rgba(3,49,65,.12) 55%, rgba(3,49,65,.18)); }
[data-home-page] .home-panorama-ocean .home-panorama-shade + .home-panorama-shade { display: none; }
[data-home-page] .home-ocean-credit { contain: none; writing-mode: horizontal-tb; position: relative; z-index: 1; height: auto !important; max-height: none !important; margin: 0; padding: 8px 20px !important; background: #eef8fa !important; color: #173e51 !important; font-size: 11px !important; font-style: normal !important; line-height: 1.5 !important; }
[data-home-page] .home-ocean-credit a { text-decoration: underline; text-underline-offset: 2px; }
[data-home-page] .home-ocean-credit a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  [data-home-page] .home-panorama-ocean .home-ocean-video { display: none; transition: none; }
}
