/* One uninterrupted homepage atmosphere. Chapters no longer own rectangular backgrounds;
   they live inside one continuous visual field whose shapes cross boundaries. */
.home-story-atmosphere {
  position:relative;
  isolation:isolate;
  overflow:clip;
  background:#f7f9fc;
}
.home-story-atmosphere::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:-5;
  pointer-events:none;
  background:url('/assets/homepage/home-story-continuum.svg') center top / 100% 100% no-repeat;
}
.home-story-atmosphere::after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-4;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 8%,rgba(255,255,255,.34),transparent 22%),
    radial-gradient(ellipse at 50% 49%,rgba(255,255,255,.12),transparent 18%),
    radial-gradient(ellipse at 50% 94%,rgba(255,255,255,.24),transparent 22%);
}

.home-visual-plate {
  position:relative;
  isolation:isolate;
  overflow:visible;
  background:transparent;
}
.home-visual-plate::before,
.home-visual-plate::after {
  content:none !important;
}
.home-visual-plate + .home-visual-plate { margin-top:0; }

/* The content chapters are transparent windows into the same scene. */
.home-story-atmosphere .home-hero,
.home-story-atmosphere .friction-chapter,
.home-story-atmosphere .passage-chapter,
.home-story-atmosphere .understanding-chapter,
.home-story-atmosphere .continuity-chapter,
.home-story-atmosphere .adaptation-chapter,
.home-story-atmosphere .method-chapter,
.home-story-atmosphere .expansion-chapter {
  background:transparent !important;
}

/* Local effects may enrich a chapter, but they must dissolve before its edge. */
.home-story-atmosphere .home-hero-backdrop {
  background:
    radial-gradient(ellipse at 50% 52%,rgba(172,194,255,.24) 0,rgba(208,220,255,.09) 29%,transparent 58%),
    radial-gradient(ellipse at 10% 66%,rgba(120,158,255,.08),transparent 37%),
    radial-gradient(ellipse at 91% 66%,rgba(104,206,197,.05),transparent 33%) !important;
  opacity:.72;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.72) 82%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 68%,rgba(0,0,0,.72) 82%,transparent 100%);
}
.home-story-atmosphere .home-hero-backdrop::after {
  opacity:.34;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 92%);
  mask-image:linear-gradient(180deg,#000,transparent 92%);
}

.home-story-atmosphere .friction-atmosphere {
  opacity:.34;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 16%,#000 78%,transparent 100%);
}
.home-story-atmosphere .friction-chapter::before,
.home-story-atmosphere .friction-chapter::after {
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 82%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 82%,transparent 100%);
}

.home-story-atmosphere .passage-chapter::before {
  opacity:.42;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 76%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 76%,transparent 100%);
}
.home-story-atmosphere .passage-chapter::after {
  opacity:.34;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 24%,#000 68%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 24%,#000 68%,transparent 100%);
}
.home-story-atmosphere .passage-plane {
  background:linear-gradient(180deg,rgba(13,22,49,.54),rgba(30,45,78,.30) 29%,rgba(133,154,190,.09) 66%,transparent 100%);
  border-color:rgba(194,210,239,.09);
  box-shadow:none;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 66%,rgba(0,0,0,.45) 84%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 66%,rgba(0,0,0,.45) 84%,transparent 100%);
}

.home-story-atmosphere .understanding-field {
  opacity:.70;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 0 57%,rgba(0,0,0,.55) 72%,transparent 92%);
  mask-image:radial-gradient(ellipse at center,#000 0 57%,rgba(0,0,0,.55) 72%,transparent 92%);
}

.home-story-atmosphere .continuity-chapter::before {
  opacity:.20;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 23%,#000 76%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 23%,#000 76%,transparent 100%);
}
.home-story-atmosphere .continuity-vignette,
.home-story-atmosphere .continuity-orbit,
.home-story-atmosphere .continuity-route {
  opacity:.86;
}

/* Copy follows the continuous field instead of assuming a rectangular chapter color. */
.home-story-atmosphere .continuity-meta { color:#52688f; }
.home-story-atmosphere .continuity-meta span { color:#244de0; }
.home-story-atmosphere .continuity-copy h2 {
  color:#0b1730;
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.home-story-atmosphere .continuity-copy h2 span { color:#244de0; }
.home-story-atmosphere .continuity-premise { color:#3f5577; }

.home-story-atmosphere .adaptation-chapter .finale-meta { color:#e4eaf5; }
.home-story-atmosphere .adaptation-chapter .finale-meta span { color:#b8c7ff; }
.home-story-atmosphere .adaptation-copy h2 {
  color:#ffffff;
  text-shadow:0 2px 22px rgba(4,9,25,.36);
}
.home-story-atmosphere .adaptation-copy h2 span { color:#9eb3ff; }
.home-story-atmosphere .adaptation-copy > p:last-child { color:#eef3fb; }

/* High-contrast reading layer. Text always adapts to the local part of the shared field. */
.home-story-atmosphere .friction-intro h2 { color:#0b1730; }
.home-story-atmosphere .friction-intro h2 span { color:#425d91; }
.home-story-atmosphere .friction-meta,
.home-story-atmosphere .friction-premise { color:#31486d; }
.home-story-atmosphere .friction-origin { color:#e8eef9; text-shadow:0 1px 10px rgba(5,10,25,.48); }
.home-story-atmosphere .friction-state h3,
.home-story-atmosphere .friction-ending p { color:#ffffff; text-shadow:0 1px 12px rgba(3,8,22,.62); }
.home-story-atmosphere .friction-state p,
.home-story-atmosphere .friction-index,
.home-story-atmosphere .friction-distance,
.home-story-atmosphere .friction-ending p span { color:#e3eaf7; text-shadow:0 1px 10px rgba(3,8,22,.62); }

.home-story-atmosphere .passage-copy {
  isolation:isolate;
}
.home-story-atmosphere .passage-copy::before {
  content:'';
  position:absolute;
  z-index:-1;
  left:-4vw;
  right:-4vw;
  top:18%;
  bottom:10%;
  pointer-events:none;
  background:radial-gradient(ellipse at 50% 48%,rgba(8,15,35,.46),rgba(8,15,35,.20) 48%,transparent 76%);
  filter:blur(18px);
}
.home-story-atmosphere .passage-meta { color:#e4ebf8; text-shadow:0 1px 10px rgba(3,8,22,.64); }
.home-story-atmosphere .passage-meta span { color:#9fb4ff; }
.home-story-atmosphere .passage-copy h2 { color:#ffffff; text-shadow:0 2px 18px rgba(3,8,22,.70); }
.home-story-atmosphere .passage-copy h2 span { color:#91a8ff; }
.home-story-atmosphere .passage-copy > p { color:#edf2fa; text-shadow:0 1px 10px rgba(3,8,22,.62); }

.home-story-atmosphere .understanding-copy {
  isolation:isolate;
}
.home-story-atmosphere .understanding-copy::before {
  content:'';
  position:absolute;
  z-index:-1;
  left:-3vw;
  right:-3vw;
  top:12%;
  bottom:8%;
  pointer-events:none;
  background:radial-gradient(ellipse at 38% 50%,rgba(247,250,255,.84),rgba(247,250,255,.52) 46%,transparent 78%);
  filter:blur(16px);
}
.home-story-atmosphere .understanding-meta { color:#465d82; }
.home-story-atmosphere .understanding-meta span { color:#244de0; }
.home-story-atmosphere .understanding-copy h2 { color:#0b1730; text-shadow:0 1px 0 rgba(255,255,255,.5); }
.home-story-atmosphere .understanding-copy h2 span { color:#244de0; }
.home-story-atmosphere .understanding-premise { color:#3f5577; }
.home-story-atmosphere .understanding-step h3,
.home-story-atmosphere .understanding-center strong,
.home-story-atmosphere .understanding-close p { color:#0b1730; }
.home-story-atmosphere .understanding-step p,
.home-story-atmosphere .understanding-center small,
.home-story-atmosphere .understanding-close p span { color:#4b6081; }

.home-story-atmosphere .continuity-step h3,
.home-story-atmosphere .continuity-close p { color:#ffffff; text-shadow:0 1px 12px rgba(3,8,22,.58); }
.home-story-atmosphere .continuity-step p,
.home-story-atmosphere .continuity-close p span { color:#dfe7f6; text-shadow:0 1px 10px rgba(3,8,22,.52); }
.home-story-atmosphere .continuity-step > span { color:#afc0ff; }
.home-story-atmosphere .continuity-center strong { color:#ffffff; }
.home-story-atmosphere .continuity-center small { color:#b8c7ff; }

.home-story-atmosphere .adaptation-card { color:#0b1730; }
.home-story-atmosphere .adaptation-label { color:#445979; }
.home-story-atmosphere .adaptation-card h3 { color:#0b1730; }

.home-story-atmosphere .method-chapter,
.home-story-atmosphere .expansion-chapter { color:#0b1730; }
.home-story-atmosphere .method-final-heading p,
.home-story-atmosphere .method-final-steps small,
.home-story-atmosphere .expansion-belief,
.home-story-atmosphere .expansion-copy { color:#405576; }
.home-story-atmosphere .method-final-steps strong,
.home-story-atmosphere .expansion-inner h2 { color:#0b1730; }

/* The final light-field remains one continuum; cards and type supply the chapter change. */
.home-story-atmosphere .adaptation-chapter::before,
.home-story-atmosphere .method-chapter::before,
.home-story-atmosphere .expansion-chapter::before {
  opacity:.72;
}

/* No horizontal seam is allowed at a chapter boundary. */
.home-story-atmosphere section {
  position:relative;
  z-index:0;
}
.home-story-atmosphere section + section {
  border-top:0 !important;
}
.home-story-atmosphere section + section::marker { content:none; }

@media (max-width:900px) {
  .home-story-atmosphere::before { background-size:100% 100%; }
  .home-story-atmosphere .home-hero-backdrop { opacity:.64; }
  .home-story-atmosphere .understanding-field { opacity:.64; }
  .home-story-atmosphere .passage-plane { opacity:.86; }
  .home-story-atmosphere .passage-copy::before,
  .home-story-atmosphere .understanding-copy::before { left:-20px; right:-20px; }
}

@media (prefers-reduced-motion:reduce) {
  .home-story-atmosphere::before,
  .home-story-atmosphere::after { transition:none !important; }
}
