/* Motion and focus states shared by overview and detail pages. */

@keyframes fmb-rise-in {
  from { opacity:0; transform:translateY(14px); }
  to { opacity:1; transform:translateY(0); }
}

@keyframes fmb-menu-open {
  from { opacity:0; transform:translateY(-8px); }
  to { opacity:1; transform:translateY(0); }
}

@keyframes fmb-section-focus {
  from { opacity:.55; transform:translateY(10px); }
  to { opacity:1; transform:translateY(0); }
}

.hero-text,
.plate-wrap,
.role-section,
.detail-header,
.detail-gallery,
.detail-video,
.detail-nav {
  animation:fmb-rise-in .55s ease both;
}

.plate-wrap { animation-delay:.08s; }
.role-section:nth-of-type(2) { animation-delay:.08s; }
.role-section:nth-of-type(3) { animation-delay:.14s; }

.shot-link:focus-visible,
.quicknav a:focus-visible,
.navlinks a:focus-visible,
.btn:focus-visible,
.nav-toggle:focus-visible,
.theme-swatch:focus-visible {
  outline:3px solid var(--gold-light);
  outline-offset:4px;
}

@media (max-width:720px) {
  .navlinks.open { animation:fmb-menu-open .24s ease both; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-text,
  .plate-wrap,
  .role-section,
  .detail-header,
  .detail-gallery,
  .detail-video,
  .detail-nav,
  .navlinks.open {
    animation:none;
  }
}
