/* Scroll adds depth to one existing, usable hero. The static layout is the
   fallback; nothing waits for an animation to become readable or clickable. */
.hf-story { position: relative; display: flow-root; }
.hf-film { position: absolute; inset: 0; overflow: hidden; }
.hf-body, .hf-foot { opacity: 1; translate: none; }
.hf-dim, .hero-full::after { display: none; }
.hf-title > span > span, .hf-sub, .hf-act, .hf-stats { animation: none; }
@media (min-width: 1100px) and (min-height: 760px) and (prefers-reduced-motion: no-preference) {
  .hf-story.is-pinned { margin-top: calc(-1 * var(--hdr-h)); height: calc(var(--hf-stage-height) + var(--hf-run)); }
  .hf-story.is-pinned > .hero-full { position: sticky; top: 0; margin-top: 0; min-height: var(--hf-stage-height); }
}

@media (prefers-reduced-motion: no-preference) {
  .hf-motion .hf-film { transform: scale(calc(1 - var(--hf-video-p, 0) * .1)); border-radius: calc(var(--hf-video-p, 0) * 10px); }
  .hf-motion .hf-ask { transform: translateY(calc((1 - var(--hf-ask-p, 1)) * 10px)) scale(calc(.94 + var(--hf-ask-p, 1) * .06)); transform-origin: center; }
  .hf-motion .hf-actions { transform: scale(calc(.94 + var(--hf-action-p, 1) * .06)); transform-origin: center; }
  .hf-motion .hf-stats b { transform: scale(calc(.88 + var(--hf-stats-p, 1) * .12)); transform-origin: left bottom; }
  .hf-motion .hf-ask-box { border-color: color-mix(in srgb, var(--sun) calc(var(--hf-ask-p, 1) * 45%), rgba(255, 255, 255, .34)); }
}

@media (max-width: 900px) and (prefers-reduced-motion: no-preference) {
  .hf-motion .hf-film { transform: scale(calc(1 - var(--hf-video-p, 0) * .06)); }
  /* Visual scaling never makes the actual action targets smaller than 44px. */
  .hf-motion .hf-actions .hf-request { min-height: 48px; }
  .hf-motion .hf-ask-box input[type="search"] { height: 48px; }
  :root[data-theme] .hf-motion .hf-ask-box .hf-ask-go { min-width: 48px; min-height: 48px; }
  .hf-motion .hf-ask-box { border-color: color-mix(in srgb, var(--sun) calc(var(--hf-ask-p, 1) * 35%), var(--line)); }
}
