/* Selected lighthouse / dolphin composition. Homepage only; no VAC behavior. */
.ocean-card.ocean-scene {
  min-height: 0;
  width: 100%;
  aspect-ratio: 1.22;
  background: #143c9e;
  contain: paint;
}
.ocean-scene::before, .ocean-scene::after { content: none; }
.ocean-scene img { position: absolute; display: block; pointer-events: none; user-select: none; }
.scene-background, .scene-water { inset: 0; width: 100%; height: 100%; object-fit: cover; }
.scene-water { clip-path: inset(50% 0 0); animation: ocean-water 9s ease-in-out infinite; transform-origin: center bottom; }
.scene-dolphin { width: 42%; height: auto; left: 49%; top: 38%; animation: ocean-dolphin 7s ease-in-out infinite; transform-origin: 50% 55%; }
.scene-gull { height: auto; transform-origin: center; animation: ocean-glide 8s ease-in-out infinite; }
.scene-gull-near { width: 35%; left: 51%; top: 5%; }
.scene-gull-left { width: 13%; left: 12%; top: 8%; animation-duration: 10s; animation-delay: -3s; opacity: .9; }
.scene-gull-far { width: 11%; left: 84%; top: 11%; animation-duration: 11s; animation-delay: -6s; opacity: .8; }
@keyframes ocean-glide {
  0%, 100% { transform: translate(0, 0) rotate(-2deg); }
  50% { transform: translate(5%, -6%) rotate(3deg); }
}
@keyframes ocean-dolphin {
  0%, 100% { transform: translate(0, 0) rotate(0); }
  50% { transform: translate(-2%, -3%) rotate(-3deg); }
}
@keyframes ocean-water {
  0%, 100% { transform: scale(1.015) translateX(-.3%); }
  50% { transform: scale(1.025) translateX(.3%); }
}
@media (prefers-reduced-motion: reduce) {
  .ocean-scene img { animation: none; transform: none; }
}
