
/* ===== Landing stability layer ===== */
/* Canonical hero rules: keep title/tagline readable and hero image non-overlapping */
body[data-page="landing"] .hero-grid{
  grid-template-columns: minmax(0, 0.84fr) minmax(520px, 1.16fr) !important;
  align-items: center !important;
}
body[data-page="landing"] .hero-grid > div:first-child{
  position: relative;
  z-index: 2;
}
body[data-page="landing"] .hero-grid > div:last-child{
  position: relative;
  padding-left: var(--cv-hero-image-shift) !important;
  z-index: 1;
}
body[data-page="landing"] .hero-image{
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 120px;
  transform: translateX(var(--cv-hero-image-shift)) !important;
}
body[data-page="landing"] .hero-image picture,
body[data-page="landing"] .hero-image img{
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body[data-page="landing"] .hero-title{
  max-width: var(--cv-hero-title-max);
}
body[data-page="landing"] .hero-kicker{
  max-width: var(--cv-hero-kicker-max);
}

/* ===== Final patch v26: robust constellation iframe embed ===== */
body[data-page="landing"] #section3 .constellation-frame{
  display:block;
  width:min(1932px, 99vw);
  height:clamp(640px, 84vh, 900px);
  margin:6px auto 0 auto;
  border:0;
  background:transparent;
  visibility:visible !important;
  opacity:1 !important;
}



