/* Alternate hero treatment. Remove this stylesheet to return to the silver panel. */
.home-page .video-header.hero-overlay {
  height: auto;
  min-height: clamp(680px, 92svh, 960px);
  padding: 0;
  isolation: isolate;
  display: grid;
  place-items: center;
  background: var(--brand-ink);
}
.home-page .hero-overlay video {
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  transform: none;
  object-fit: cover;
  object-position: center;
}
.home-page .hero-overlay::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: var(--hero-overlay-gradient);
  pointer-events: none;
}
.home-page .hero-overlay .content-wrapper {
  width: 100%;
  height: auto;
  min-height: inherit;
  padding: 64px 24px 130px;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  z-index: 2;
}
.home-page .hero-overlay .content {
  max-width: 880px;
  color: var(--white);
}
.home-page .hero-overlay .icon-wrapper {
  width: clamp(150px, 13vw, 190px);
  margin: 0 auto 24px;
  filter: drop-shadow(0 8px 22px rgba(var(--black-rgb), .35));
}
.home-page .hero-overlay .content h1 {
  color: var(--white);
  font-size: clamp(3.6rem, 7vw, 6.5rem);
  line-height: 1.06;
  letter-spacing: -.035em;
  margin: 0 0 20px;
  text-shadow: 0 3px 24px rgba(var(--black-rgb), .45);
}
.home-page .hero-overlay .hero-brand-line { max-width: 400px; margin-bottom: 22px; }
.home-page .hero-overlay .hero-brand-line::before,
.home-page .hero-overlay .hero-brand-line::after { background: rgba(var(--white-rgb), .55); }
.home-page .hero-overlay .hero-brand-line span { font-size: .85rem; letter-spacing: .32em; }
.home-page .hero-overlay .hero-brand-line b { color: var(--brand-highlight-soft); }
.home-page .hero-overlay p { color: var(--white); font-size: clamp(1rem, 1.6vw, 1.25rem); font-weight: 400; margin-bottom: 30px; text-shadow: 0 2px 12px rgba(var(--black-rgb), .5); }
.home-page .hero-overlay .btn-primary { min-width: 180px; padding: 16px 32px; font-size: 1rem; box-shadow: 0 8px 24px rgba(var(--black-rgb), .22); }
@media (max-width: 768px) {
  .home-page .video-header.hero-overlay { min-height: 740px; min-height: max(680px, 90svh); }
  .home-page .hero-overlay .content-wrapper { padding: 54px 22px 108px; }
  .home-page .hero-overlay .content h1 { font-size: clamp(3rem, 12vw, 4.8rem); }
  .home-page .hero-overlay .hero-brand-line { max-width: 300px; }
  .home-page .hero-overlay .hero-brand-line span { font-size: .7rem; letter-spacing: .24em; }
  .home-page .hero-overlay .icon-wrapper { width: 150px; }
}

/* The actual photo and silhouette crossfade without moving the hero layout. */
.home-page .hero-logo-reveal { padding: 0; border: 0; background: transparent; cursor: pointer; border-radius: 50%; }
.home-page .hero-logo-reveal:focus-visible { outline: 3px solid var(--brand-highlight-soft); outline-offset: 7px; }
.hero-logo-reveal .icon { transition: opacity 380ms ease; }
.hero-logo-reveal .hero-logo-photo { opacity: 0; }
.hero-logo-reveal.is-revealed .hero-logo-photo { opacity: 1; }
.hero-logo-reveal.is-revealed .hero-logo-silhouette { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .hero-logo-reveal .icon { transition: none; } }
