html {
  background: #080808;
}

body {
  overflow-x: clip;
  background: transparent !important;
  isolation: isolate;
}

.ambient-orbs {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.site-content-layer,
.private-page-layer {
  position: relative;
  z-index: 1;
}

/* Page-sized surfaces stay transparent so the ambient layer never reads as a patch. */
.site-content-layer .hero,
.site-content-layer .intro-section,
.site-content-layer .statement-section,
.site-content-layer .topics-section,
.site-content-layer .manifesto-section,
.site-content-layer .people-section,
.site-content-layer .history-section,
.site-content-layer .closing-section,
.site-content-layer .channel-preview-section,
.site-content-layer .content-page,
.site-content-layer .about-name-section,
.site-content-layer .topics-closer,
.site-content-layer .library-note,
.site-content-layer .interview-callout,
.site-content-layer .story-next-step,
.site-content-layer .interview-application,
.site-content-layer .site-footer,
.private-page-layer > .hero,
.private-page-layer > main,
.private-page-layer > .footer {
  background: transparent !important;
}

.ambient-orb {
  position: absolute;
  width: clamp(20rem, 38vw, 38rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, var(--orb-color, #cf503b), transparent 70%);
  filter: blur(110px);
  opacity: var(--orb-opacity, 0.35);
  will-change: transform, opacity;
}

.ambient-orb--one {
  --orb-color: #cf503b;
  --orb-opacity: 0.34;
  top: -13rem;
  left: -14rem;
  animation: orb-drift-one 24s ease-in-out infinite alternate;
}

.ambient-orb--two {
  --orb-color: #a63c2b;
  --orb-opacity: 0.31;
  top: 16vh;
  right: -16rem;
  animation: orb-drift-two 29s ease-in-out infinite alternate;
}

.ambient-orb--three {
  --orb-color: #f0a090;
  --orb-opacity: 0.2;
  bottom: -16rem;
  left: 7vw;
  animation: orb-drift-three 32s ease-in-out infinite alternate;
}

.ambient-orb--four {
  --orb-color: #cf503b;
  --orb-opacity: 0.19;
  width: clamp(16rem, 29vw, 30rem);
  top: 48vh;
  left: 42vw;
  animation: orb-drift-four 21s ease-in-out infinite alternate;
}

.ambient-orb--five {
  --orb-color: #a63c2b;
  --orb-opacity: 0.23;
  width: clamp(14rem, 24vw, 24rem);
  top: 4vh;
  left: 43vw;
  animation: orb-drift-five 18s ease-in-out infinite alternate;
}

@keyframes orb-drift-one {
  0% { transform: translate3d(0, 0, 0) scale(0.92); opacity: 0.22; }
  48% { transform: translate3d(21vw, 18vh, 0) scale(1.14); opacity: 0.38; }
  100% { transform: translate3d(8vw, 42vh, 0) scale(0.98); opacity: 0.29; }
}

@keyframes orb-drift-two {
  0% { transform: translate3d(0, 0, 0) scale(1.04); opacity: 0.3; }
  52% { transform: translate3d(-24vw, 26vh, 0) scale(0.88); opacity: 0.2; }
  100% { transform: translate3d(-7vw, 53vh, 0) scale(1.16); opacity: 0.36; }
}

@keyframes orb-drift-three {
  0% { transform: translate3d(0, 0, 0) scale(0.9); opacity: 0.16; }
  50% { transform: translate3d(35vw, -34vh, 0) scale(1.08); opacity: 0.25; }
  100% { transform: translate3d(69vw, -12vh, 0) scale(0.96); opacity: 0.18; }
}

@keyframes orb-drift-four {
  0% { transform: translate3d(-12vw, 8vh, 0) scale(0.84); opacity: 0.14; }
  55% { transform: translate3d(15vw, -29vh, 0) scale(1.18); opacity: 0.27; }
  100% { transform: translate3d(-5vw, 28vh, 0) scale(0.94); opacity: 0.18; }
}

@keyframes orb-drift-five {
  0% { transform: translate3d(-15vw, 0, 0) scale(0.82); opacity: 0.13; }
  50% { transform: translate3d(9vw, 24vh, 0) scale(1.22); opacity: 0.28; }
  100% { transform: translate3d(30vw, 7vh, 0) scale(0.9); opacity: 0.17; }
}

@media (max-width: 720px) {
  .ambient-orb {
    width: 23rem;
    filter: blur(88px);
  }

  .ambient-orb--four,
  .ambient-orb--five { width: 18rem; }
}

@media (prefers-reduced-motion: reduce) {
  .ambient-orb { animation: none; }
}

@media print {
  .ambient-orbs { display: none; }
}
