/* Le contenu et le poster sont visibles sans JavaScript et dès le premier rendu. */
.nature-scene {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 24px;
  background: #173e31;
  min-width: 0;
}
.nature-scene-poster {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.nature-scene .nature-scene-video {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  pointer-events: none;
  transition: opacity 240ms ease;
}
.nature-scene[data-video-state="playing"] .nature-scene-video,
.nature-scene[data-video-state="paused"] .nature-scene-video {
  opacity: 1;
}
.nature-scene-overlay {
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, #061b151f, #061b1599);
}
.auth-photograph.nature-scene::after {
  z-index: 2;
}
.nature-scene > figcaption {
  z-index: 3;
}
.nature-scene .nature-video-control {
  position: absolute;
  z-index: 4;
  top: 16px;
  right: 16px;
  max-width: calc(100% - 32px);
  min-height: 44px;
  padding: 10px 15px;
  border: 1px solid #ffffff63;
  border-radius: 999px;
  color: #fff;
  background: #10281be8;
  font: inherit;
  font-size: 0.8rem;
  line-height: 1.4;
  text-wrap: balance;
  cursor: pointer;
  box-shadow: 0 4px 18px #07180d26;
}
.nature-scene .nature-video-control:hover {
  background: #103b29;
}
.nature-scene .nature-video-control:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 4px;
}
.nature-scene .nature-video-control:disabled {
  cursor: default;
  background: #13271bea;
  color: #eef4e8;
}
.nature-scene .nature-video-control[hidden] {
  display: none;
}
[data-reveal][data-reveal-state="entered"] {
  animation: nature-reveal-enter 360ms cubic-bezier(0.16, 0.7, 0.3, 1) both;
}
[data-reveal][data-reveal-step="1"] {
  animation-delay: 45ms;
}
[data-reveal][data-reveal-step="2"] {
  animation-delay: 90ms;
}
[data-reveal][data-reveal-step="3"] {
  animation-delay: 135ms;
}
[data-reveal][data-reveal-step="4"] {
  animation-delay: 180ms;
}
@keyframes nature-reveal-enter {
  from {
    opacity: 0.96;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
body[data-motion="paused"] [data-reveal],
[data-reveal]:focus-within {
  animation: none !important;
}
/* Sans JavaScript, aucun mouvement continu ne démarre sans commande de pause. */
.aurora-site:not([data-motion="running"]) .vision-hero::before,
.aurora-site:not([data-motion="running"]) .hub-vision-hero::before,
.aurora-site:not([data-motion="running"]) .aurora-surface::before {
  animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce), (prefers-reduced-data: reduce) {
  [data-reveal] {
    animation: none !important;
  }
  .nature-scene .nature-scene-video {
    transition: none;
  }
}
/* Navigation native, progressive : les liens et le retour arrière restent intacts. */
@media (prefers-reduced-motion: no-preference) {
  @view-transition {
    navigation: auto;
  }
  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation-duration: 200ms;
  }
  html[data-nature-navigation="paused"]::view-transition-old(root),
  html[data-nature-navigation="paused"]::view-transition-new(root) {
    animation: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  @view-transition {
    navigation: none;
  }
}
@media (max-width: 640px) {
  .nature-scene .nature-video-control {
    top: 12px;
    right: 12px;
    max-width: calc(100% - 24px);
    padding: 10px 13px;
  }
}
