/* ================================================================
   NCDE CHAPTER 03 — CONTINUOUS SCROLL NARRATIVE v4.0.0
   Single owner: native scroll position drives text movement and fade.
   ================================================================ */
.ncs3--video-engine .ncs3__chapter3{
  position:absolute;
  inset:0;
  z-index:6;
  overflow:hidden;
  contain:layout paint style;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(1,18,13,.32) 0%,rgba(1,18,13,.08) 28%,rgba(1,18,13,.10) 70%,rgba(1,18,13,.28) 100%),
    linear-gradient(90deg,rgba(1,18,13,.50) 0%,rgba(1,18,13,.21) 48%,rgba(1,18,13,.04) 78%,transparent 100%);
  opacity:0;
  visibility:hidden;
  transition:opacity .52s ease,visibility 0s linear .52s;
}

.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__chapter3{
  opacity:1;
  visibility:visible;
  transition-delay:0s;
}

.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__video--forest{
  opacity:1;
  visibility:visible;
  pointer-events:none;
  transition:opacity .72s ease,visibility 0s linear 0s;
}

.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__video--opening,
.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__video--city,
.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__video--history,
.ncs3--video-engine[data-story-state^="chapter3-"] .ncs3__hold{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.ncs3--video-engine .ncs3__chapter3-title,
.ncs3--video-engine .ncs3__chapter3-copy{
  position:absolute;
  left:clamp(24px,6vw,94px);
  right:clamp(24px,10vw,170px);
  top:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  opacity:var(--ncde-ch3-opacity,0);
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(0,var(--ncde-ch3-y,100dvh),0);
  transform-origin:left top;
  will-change:transform,opacity;
}

.ncs3--video-engine .ncs3__chapter3-title.is-ch3-readable,
.ncs3--video-engine .ncs3__chapter3-copy.is-ch3-readable{
  visibility:visible;
}

.ncs3__chapter3-title h2{
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  max-width:11.25ch;
  font-family:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
  font-size:clamp(2.6rem,5.45vw,5.55rem);
  font-weight:400;
  line-height:.985;
  letter-spacing:-.038em;
  text-align:left;
  color:#f4f0e7;
  text-wrap:balance;
  font-kerning:normal;
  font-optical-sizing:auto;
  text-shadow:0 2px 18px rgba(0,0,0,.46),0 7px 34px rgba(0,0,0,.32);
}

.ncs3__chapter3-title h2 span,
.ncs3__chapter3-title h2 strong{
  display:block;
}

.ncs3__chapter3-title h2 span:first-child{
  color:#f6f2e9;
}

.ncs3__chapter3-title h2 span:nth-child(2){
  margin-top:.055em;
  color:#dcd3bf;
  font-size:.94em;
  letter-spacing:-.032em;
}

.ncs3__chapter3-title h2 strong{
  margin-top:.13em;
  color:#d5aa55;
  font-size:.97em;
  font-weight:500;
  line-height:.96;
  letter-spacing:-.031em;
  text-shadow:0 2px 17px rgba(0,0,0,.5),0 0 24px rgba(184,139,61,.11);
}

.ncs3__chapter3-copy p{
  margin:0;
  max-width:670px;
  font-family:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
  font-size:clamp(1.4rem,2.75vw,2.7rem);
  font-weight:400;
  line-height:1.34;
  letter-spacing:-.022em;
  color:#f7f3e8;
  text-wrap:pretty;
  text-shadow:0 3px 24px rgba(0,0,0,.72);
}

@media(max-width:760px){
  .ncs3--video-engine .ncs3__chapter3{
    background:
      linear-gradient(180deg,rgba(1,18,13,.34),rgba(1,18,13,.08) 28%,rgba(1,18,13,.12) 72%,rgba(1,18,13,.30)),
      linear-gradient(90deg,rgba(1,18,13,.54),rgba(1,18,13,.17) 74%,transparent);
  }

  .ncs3--video-engine .ncs3__chapter3-title,
  .ncs3--video-engine .ncs3__chapter3-copy{
    left:24px;
    right:24px;
  }

  .ncs3__chapter3-title h2{
    max-width:10.9ch;
    font-size:clamp(2.45rem,10.35vw,3.8rem);
    line-height:.99;
    letter-spacing:-.034em;
  }

  .ncs3__chapter3-title h2 span:nth-child(2){
    font-size:.93em;
  }

  .ncs3__chapter3-title h2 strong{
    margin-top:.15em;
    font-size:.96em;
  }

  .ncs3__chapter3-copy p{
    max-width:21ch;
    font-size:clamp(1.34rem,5.85vw,1.92rem);
    line-height:1.34;
  }
}

@media(max-height:760px) and (max-width:760px){
  .ncs3__chapter3-copy p{
    max-width:23ch;
    font-size:clamp(1.18rem,5.35vw,1.64rem);
    line-height:1.30;
  }
}

@media(prefers-reduced-motion:reduce){
  .ncs3--video-engine .ncs3__chapter3,
  .ncs3--video-engine .ncs3__video--forest{
    transition:none;
  }

  .ncs3--video-engine .ncs3__chapter3-title,
  .ncs3--video-engine .ncs3__chapter3-copy{
    will-change:auto;
  }
}
