/* The heat belongs to the geography; only this presentation veil fades it.
   No grid-shaped clipping and no extra interactive surface over the page. */
.heat-field {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  opacity: var(--heat-opacity, .9);
  mask-image: radial-gradient(ellipse var(--heat-reach-x, 80vw) var(--heat-reach-y, 100vh) at var(--heat-x, 30vw) var(--heat-y, 50vh), #000 18%, rgba(0, 0, 0, var(--heat-shoulder, .24)) 64%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse var(--heat-reach-x, 80vw) var(--heat-reach-y, 100vh) at var(--heat-x, 30vw) var(--heat-y, 50vh), #000 18%, rgba(0, 0, 0, var(--heat-shoulder, .24)) 64%, transparent 100%);
  transition: opacity .8s ease;
}
.heat-field[hidden] { display: none; }
body:has(.is-earth-flight) > .heat-field { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .heat-field { transition: none; } }
