/* Only the initial readiness hand-off; scroll/menu motion keeps its own owner. */
html.qp-header-pending #site-header {
  /* Legacy compact .has-scroll-behavior must not expose one pre-ready frame. */
  opacity: 0 !important;
  pointer-events: none;
}

html.qp-header-pending #site-header,
html.qp-header-pending #site-header * {
  pointer-events: none !important;
  transition: none !important;
  animation: none !important;
}

/* Never fade a backdrop's ancestor: that creates a temporary backdrop root. */
body.qp-page #site-header[data-ui-ready] {
  animation: none;
}

@keyframes qp-header-surface-arrive {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (prefers-reduced-motion: no-preference) {
  body.qp-page #site-header[data-ui-ready] > .header-inner > :is(.site-header-glass, .site-header-outline, .logo, .site-header-top, .main-nav, .header-actions) {
    animation: qp-header-surface-arrive 240ms linear;
  }
}
