:root{
  --worldviews-bg: #0f142b;
  --worldviews-text: #ece4d7;
  --worldviews-muted: rgba(236, 228, 215, 0.66);
  --worldviews-line: rgba(236, 228, 215, 0.14);
  --worldviews-glow-a: rgba(122, 143, 255, 0.16);
  --worldviews-glow-b: rgba(117, 88, 176, 0.15);
  --worldviews-glow-c: rgba(77, 138, 128, 0.08);
  --worldviews-glow-d: rgba(188, 212, 255, 0.05);
  --worldviews-max: 760px;
}

body.worldviewsPage{
  min-height: 100svh;
  overflow-x: hidden;
  overflow-y: auto;
  background:
    radial-gradient(circle at 14% 10%, var(--worldviews-glow-a), transparent 30rem),
    radial-gradient(circle at 82% 18%, var(--worldviews-glow-b), transparent 32rem),
    radial-gradient(circle at 48% 88%, var(--worldviews-glow-c), transparent 36rem),
    radial-gradient(circle at 50% 12%, var(--worldviews-glow-d), transparent 20rem),
    var(--worldviews-bg);
  color: var(--worldviews-text);
  font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
}

.worldviewsHeader{
  width: min(100%, var(--worldviews-max));
  margin: 0 auto;
  padding-top: clamp(2.8rem, 8vh, 5rem);
  padding-bottom: 1.55rem;
  position: relative;
  z-index: 2;
}

.worldviewsTitle{
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  font-size: clamp(2.15rem, 1.55rem + 1.95vw, 3.85rem);
  line-height: 0.98;
  font-weight: 500;
  letter-spacing: -0.04em;
  margin-bottom: 1rem;
}

.worldviewsIntro{
  max-width: 25rem;
  font-size: clamp(1.18rem, 1rem + 0.72vw, 1.58rem);
  line-height: 1.48;
}

.worldviewsStream{
  width: min(100%, var(--worldviews-max));
  margin: 0 auto;
  padding-bottom: clamp(10rem, 18vh, 15rem);
  position: relative;
  z-index: 2;
}

.worldviewSection{
  padding-top: 4.8rem;
}

.worldviewSection:first-of-type{
  padding-top: 1.65rem;
}

.worldviewSection + .worldviewSection{
  border-top: 1px solid var(--worldviews-line);
  margin-top: 4.2rem;
}

.worldviewSection h2{
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  font-size: clamp(1.24rem, 1rem + 1vw, 1.8rem);
  line-height: 1.18;
  font-weight: 500;
  letter-spacing: 0.02em;
  margin-bottom: 1.45rem;
  max-width: 33rem;
  text-wrap: balance;
}

.worldviewBody{
  display: grid;
  gap: 1rem;
}

.worldviewBody p{
  font-size: clamp(1.06rem, 0.98rem + 0.28vw, 1.2rem);
  line-height: 1.9;
  color: var(--worldviews-text);
  text-wrap: pretty;
}

.worldviewsFade{
  position: fixed;
  left: 0;
  right: 0;
  height: 6.8rem;
  pointer-events: none;
  z-index: 18;
}

.worldviewsFadeTop{
  top: 0;
  background: linear-gradient(to bottom, rgba(15, 20, 43, 0.97), rgba(15, 20, 43, 0.78) 36%, rgba(15, 20, 43, 0));
}

.worldviewsFadeBottom{
  bottom: 0;
  background: linear-gradient(to top, rgba(15, 20, 43, 0.985), rgba(15, 20, 43, 0.8) 34%, rgba(15, 20, 43, 0));
}

.pageReturn--worldviews{
  width: min(100%, var(--worldviews-max));
}

.pageReturn--worldviews .returnHome{
  color: var(--worldviews-muted);
}

.pageReturn--worldviews .returnHome:hover,
.pageReturn--worldviews .returnHome:focus-visible{
  color: var(--worldviews-text);
}

.js body.worldviewsPage .worldviewSection [data-reveal-segment]{
  opacity: 0;
  transform: translateY(-10px);
  filter: blur(4px);
  clip-path: inset(0 100% 0 0);
}

.js body.worldviewsPage .worldviewSection.is-revealed [data-reveal-segment].is-visible{
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
  clip-path: inset(0 0 0 0);
  transition:
    opacity 420ms ease,
    transform 520ms cubic-bezier(0.19, 1, 0.22, 1),
    filter 420ms ease,
    clip-path 700ms cubic-bezier(0.19, 1, 0.22, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

@media (max-width: 760px){
  .worldviewsHeader{
    padding-top: 2.4rem;
  }

  .worldviewSection{
    padding-top: 4rem;
  }

  .worldviewSection + .worldviewSection{
    margin-top: 3.4rem;
  }

  .worldviewsFade{
    height: 5.25rem;
  }
}

@media (prefers-reduced-motion: reduce){
  .js body.worldviewsPage .worldviewSection [data-reveal-segment]{
    opacity: 1;
    transform: none;
    filter: none;
    clip-path: none;
  }
}
