/* The fixed navigation, main hero and activity strip share one viewport. */
.home-v2-hero-glow {
  --mirror-nav-height: 60px;
  min-height: 100svh;
  box-sizing: border-box;
  padding-top: var(--mirror-nav-height);
  display: flex;
  flex-direction: column;
}
.home-v2-hero-glow > .mirror-hero-content {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  padding: clamp(24px, 4svh, 56px) clamp(24px, 6vw, 140px);
  flex: 1;
  display: flex;
  align-items: center;
}
.mirror-hero-row { width: 100%; }
.home-v2-hero-glow > .mirror-hero-ticker { flex: 0 0 auto; margin-top: 0; }
.mirror-hero-ticker > div { max-width: none; padding-inline: clamp(24px, 6vw, 140px); }
@media (min-width: 1024px) {
  .mirror-hero-row { align-items: center; gap: clamp(24px, 4vw, 80px); }
  .mirror-hero-copy { flex: 1 1 50%; padding-right: 0; }
  .mirror-hero-copy h1 { font-size: clamp(44px, min(4.5vw, 8.5svh), 96px) !important; line-height: 1.08; overflow-wrap: anywhere; }
  .mirror-hero-portraits { flex: 1 1 46%; height: clamp(360px, 68svh, 850px) !important; overflow: visible; }
  .mirror-hero-portraits > div {
    width: 650px;
    height: 530px;
    inset: auto;
    left: 50%; top: 50%;
    transform: translate(-50%, -50%) scale(var(--mirror-portrait-scale, 1));
    transform-origin: center;
  }
  .mirror-hero-portraits > div > div { bottom: auto !important; top: 50%; transform: translateY(-50%); }
  .home-v2-hero-glow .hero-mandala { top: 50% !important; transform: translateY(-50%); }
}
@media (min-width: 1280px) { .home-v2-hero-glow { --mirror-nav-height: 72px; } }
@media (max-width: 1023px) {
  .home-v2-hero-glow > .mirror-hero-content { align-items: center; padding-block: clamp(28px, 7svh, 72px); }
  .mirror-hero-copy h1 { font-size: clamp(34px, 7vw, 64px) !important; }
}
@media (max-height: 700px) and (min-width: 1024px) {
  .home-v2-hero-glow > .mirror-hero-content { padding-block: 16px; }
  .mirror-hero-copy h1 { font-size: clamp(36px, 6.8svh, 54px) !important; margin-bottom: 16px; }
  .mirror-hero-copy > div:first-child { margin-bottom: 16px; }
  .mirror-hero-copy ul { margin-bottom: 20px; }
  .mirror-hero-portraits { height: 360px !important; }
}

/* The home page intentionally ends after its viewport hero and activity strip. */
body:has(.home-v2-hero-glow) main > :not(.home-v2-hero-glow),
body:has(.home-v2-hero-glow) footer {
  display: none !important;
}
