/* The odNOVA Approach V2 — an editorial manifesto.
   Page-scoped: the protected source page and shared family files are untouched. */
:root{
  --wayv2-night:#080e16;
  --wayv2-night-2:#0d1621;
  --wayv2-night-3:#111d29;
  --wayv2-paper:#f0ece3;
  --wayv2-paper-2:#e5ded1;
  --wayv2-ink:#17211f;
  --wayv2-body:#55605f;
  --wayv2-blue:#71879b;
  --wayv2-gold:#b68c57;
  --wayv2-gold-pale:#e2cba2;
  --wayv2-line:rgba(23,33,31,.15);
}

html{scroll-padding-top:76px;}
body.approach-v2-page{overflow-x:clip;background:var(--wayv2-night);}
body.approach-v2-page .page{overflow:clip;}

/* The hero is intentionally owned in full by the shared Group 2 system.
   Page-specific styling begins below it. */

/* Persistent chapter index. The shared in-page navigation owns every scroll. */
body.approach-v2-page .wayv2-index{
  position:sticky;
  top:0;
  z-index:20;
  display:flex;
  align-items:stretch;
  justify-content:center;
  min-height:64px;
  padding:0 clamp(20px,5vw,74px);
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  background:rgba(8,14,22,.955);
  border-bottom:1px solid rgba(226,203,162,.13);
  box-shadow:0 20px 58px rgba(0,0,0,.12);
  backdrop-filter:blur(20px);
}
body.approach-v2-page .wayv2-index::-webkit-scrollbar{display:none;}
body.approach-v2-page .wayv2-index a{
  position:relative;
  display:flex;
  flex:0 0 auto;
  align-items:center;
  min-height:54px;
  padding:0 clamp(14px,1.85vw,28px);
  color:rgba(194,205,216,.6);
  font:400 10px/1.2 var(--font-mono);
  letter-spacing:.14em;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
}
body.approach-v2-page .wayv2-index a::after{
  content:"";
  position:absolute;
  left:22%;right:22%;bottom:0;height:1px;
  background:var(--wayv2-gold-pale);
  opacity:0;
  transform:scaleX(0);
  transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .35s ease;
}
body.approach-v2-page .wayv2-index a:hover,
body.approach-v2-page .wayv2-index a:focus-visible,
body.approach-v2-page .wayv2-index a[aria-current]{color:#eef1f3;}
body.approach-v2-page .wayv2-index a:hover::after,
body.approach-v2-page .wayv2-index a:focus-visible::after,
body.approach-v2-page .wayv2-index a[aria-current]::after{opacity:.9;transform:scaleX(1);}
body.approach-v2-page #principles,
body.approach-v2-page #judgement{scroll-margin-top:78px;}

/* Prologue — the complete original opening, treated as a manifesto page. */
body.approach-v2-page .wayv2-prologue{
  position:relative;
  isolation:isolate;
  min-height:min(92svh,940px);
  padding:clamp(96px,11vw,170px) 0;
  overflow:hidden;
  background:
    linear-gradient(90deg,transparent 0 8%,rgba(23,33,31,.045) 8.05%,transparent 8.15%),
    var(--wayv2-paper)!important;
}
body.approach-v2-page .wayv2-prologue>.od-wrap{
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);
  gap:clamp(54px,9vw,138px);
  align-items:start;
  width:min(1240px,calc(100% - clamp(42px,8.5vw,132px)));
}
body.approach-v2-page .wayv2-prologue-mark{
  position:sticky;
  top:130px;
  color:rgba(23,33,31,.055);
  font:300 clamp(72px,10.5vw,156px)/.82 var(--font-serif);
  letter-spacing:-.07em;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  user-select:none;
}
body.approach-v2-page .wayv2-prologue-copy{padding-top:clamp(30px,6vw,96px);}
body.approach-v2-page .wayv2-prologue-lede{
  max-width:24ch;
  margin:clamp(32px,5vw,66px) 0 0;
  color:var(--wayv2-ink);
  font:300 clamp(34px,4.35vw,62px)/1.04 var(--font-serif);
  letter-spacing:-.035em;
  text-wrap:balance;
}

/* Origin chapters — three distinct but related editorial spreads. */
body.approach-v2-page .wayv2-story{
  position:relative;
  padding:clamp(102px,11vw,174px) 0;
  overflow:clip;
}
body.approach-v2-page .wayv2-story>.od-wrap{width:min(1210px,calc(100% - clamp(42px,9vw,138px)));}
body.approach-v2-page .wayv2-story .pf-narrow{
  display:grid;
  grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);
  gap:0 clamp(58px,8vw,126px);
  max-width:none;
  margin:0;
}
body.approach-v2-page .wayv2-story .od-eyebrow{grid-column:1;grid-row:1;align-self:start;}
body.approach-v2-page .wayv2-story h2{
  grid-column:1;
  grid-row:2;
  max-width:11ch;
  margin:clamp(24px,4vw,52px) 0 0;
  font-size:clamp(45px,5.5vw,78px);
  line-height:.98;
  letter-spacing:-.045em;
  text-wrap:balance;
}
body.approach-v2-page .wayv2-story p{
  grid-column:2;
  max-width:68ch;
  margin:0;
  font-size:clamp(16px,1.3vw,18px);
  line-height:1.75;
}
body.approach-v2-page .wayv2-story p:first-of-type{grid-row:1/span 2;padding-top:0;}
body.approach-v2-page .wayv2-story p+p{margin-top:24px;}
body.approach-v2-page .wayv2-story--beginning{
  background:linear-gradient(128deg,#09111a,#0d1823 62%,#111e2b)!important;
}
body.approach-v2-page .wayv2-story--beginning p{color:#afbbc7;}
body.approach-v2-page .wayv2-story--origins{
  color:var(--wayv2-ink);
  background:
    radial-gradient(60% 80% at 8% 22%,rgba(135,91,59,.1),transparent 72%),
    var(--wayv2-paper)!important;
}
body.approach-v2-page .wayv2-story--origins p{color:var(--wayv2-body);}
body.approach-v2-page .wayv2-story--name{
  min-height:min(90svh,940px);
  background:
    radial-gradient(65% 100% at 98% 18%,rgba(86,111,134,.16),transparent 72%),
    #09111a!important;
}
body.approach-v2-page .wayv2-story--name p{color:#adbac6;}

/* Frozen word fields: content moves over a quiet orientation layer. */
body.approach-v2-page .wayv2-freeze-field{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(8px,2vw,28px);
  padding:0 clamp(24px,5vw,72px);
  color:rgba(144,158,170,.035);
  font:300 clamp(104px,12vw,172px)/.78 var(--font-serif);
  letter-spacing:-.055em;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  filter:none;
}
body.approach-v2-page .wayv2-freeze-field::before{content:none;display:none;}
body.approach-v2-page .wayv2-freeze-field span{order:initial!important;}
body.approach-v2-page .wayv2-freeze-field--light{color:rgba(224,232,238,.035);}
body.approach-v2-page .wayv2-freeze-field--dark{color:rgba(24,39,42,.04);}
html.wayv2-freeze-ready body.approach-v2-page .wayv2-freeze-field{
  position:fixed;
  inset:0;
  width:auto;
  height:auto;
  min-height:0;
  margin:0;
  overflow:hidden;
  visibility:hidden;
  contain:paint;
  transform:none;
  will-change:auto;
}

/* Five principles share one continuous room and one frozen orientation mark. */
body.approach-v2-page .wayv2-principles{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(70% 45% at 90% 30%,rgba(76,100,123,.13),transparent 75%),
    var(--wayv2-night);
}
body.approach-v2-page .wayv2-principle{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  min-height:min(92svh,980px);
  padding:clamp(96px,10vw,152px) 0;
  background:rgba(8,14,22,.76)!important;
  border-top:1px solid rgba(226,203,162,.08);
}
body.approach-v2-page .wayv2-principle>.od-wrap{width:min(1200px,calc(100% - clamp(46px,10vw,154px)));}
body.approach-v2-page .wayv2-principle .pf-narrow{
  display:grid;
  grid-template-columns:minmax(270px,.75fr) minmax(0,1.25fr);
  gap:0 clamp(64px,9vw,142px);
  max-width:none;
  margin:0;
}
body.approach-v2-page .wayv2-principle .od-eyebrow{grid-column:1;grid-row:1;}
body.approach-v2-page .wayv2-principle .od-eyebrow{color:var(--wayv2-gold-pale);}
body.approach-v2-page .wayv2-principle .od-eyebrow .od-dash{background:var(--wayv2-gold);}
body.approach-v2-page .wayv2-principle h2{
  grid-column:1;
  grid-row:2;
  max-width:10ch;
  margin:clamp(24px,4vw,48px) 0 0;
  color:#f0eee8;
  font-size:clamp(44px,5.25vw,74px);
  line-height:.98;
  letter-spacing:-.045em;
}
body.approach-v2-page .wayv2-principle p{
  grid-column:2;
  max-width:66ch;
  margin:0;
  color:#adb9c4;
  font-size:clamp(16px,1.25vw,18px);
  line-height:1.76;
}
body.approach-v2-page .wayv2-principle p:first-of-type{grid-row:1/span 2;}
body.approach-v2-page .wayv2-principle p+p{margin-top:24px;}
body.approach-v2-page .wayv2-principle:nth-of-type(even){
  margin:0 clamp(20px,4vw,68px);
  min-height:min(82svh,870px);
  background:rgba(240,236,227,.96)!important;
  box-shadow:0 54px 110px -72px rgba(0,0,0,.9);
}
body.approach-v2-page .wayv2-principle:nth-of-type(even) h2{color:var(--wayv2-ink);}
body.approach-v2-page .wayv2-principle:nth-of-type(even) p{color:var(--wayv2-body);}
body.approach-v2-page .wayv2-principle:nth-of-type(even) .pf-eyebrow-light{color:#735e44;}
body.approach-v2-page .wayv2-principle:nth-of-type(even) .od-eyebrow .od-dash{background:var(--wayv2-gold);}

/* Film interlude — one portrait, treated as a quiet cinematic pause. */
body.approach-v2-page .wayv2-film{
  position:relative;
  min-height:100svh;
  padding:clamp(80px,9vw,134px) 0;
  overflow:hidden;
  background:
    radial-gradient(52% 84% at 72% 48%,rgba(93,112,129,.17),transparent 72%),
    #060b11!important;
}
body.approach-v2-page .wayv2-film .od-wrap{width:min(1140px,calc(100% - clamp(44px,9vw,136px)));}
body.approach-v2-page .wayv2-film .pv-inner{
  display:grid;
  grid-template-columns:minmax(220px,.65fr) minmax(320px,1.35fr);
  gap:clamp(48px,9vw,140px);
  align-items:center;
  text-align:left;
}
body.approach-v2-page .wayv2-film .pv-eyebrow{justify-content:flex-start;margin:0;align-self:center;}
body.approach-v2-page .wayv2-film .pv-figure{justify-content:flex-start;}
body.approach-v2-page .wayv2-film .pv-frame{
  width:min(44vw,440px,calc(78vh * .5625));
  border-radius:0;
  box-shadow:0 42px 100px -52px rgba(0,0,0,.9),0 0 0 1px rgba(226,203,162,.15);
}
body.approach-v2-page .wayv2-film .pv-video{filter:grayscale(.88) saturate(.7) brightness(.82);}

/* Judgement and continuity — alternating evidence plates, not repeated cards. */
body.approach-v2-page .wayv2-judgement{background:var(--wayv2-paper);}
body.approach-v2-page .wayv2-boundary{
  position:relative;
  padding:clamp(100px,10.5vw,164px) 0;
  overflow:clip;
  background:var(--wayv2-paper)!important;
  border-top:0;
}
body.approach-v2-page .wayv2-boundary:nth-of-type(odd){
  margin:0;
  background:
    radial-gradient(60% 80% at 92% 24%,rgba(73,98,121,.15),transparent 72%),
    var(--wayv2-night-2)!important;
}
body.approach-v2-page .wayv2-boundary>.od-wrap{width:min(1180px,calc(100% - clamp(44px,9vw,138px)));}
body.approach-v2-page .wayv2-boundary .pf-narrow{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:0 clamp(62px,9vw,142px);
  max-width:none;
  margin:0;
}
body.approach-v2-page .wayv2-boundary .od-eyebrow{grid-column:1;grid-row:1;}
body.approach-v2-page .wayv2-boundary h2{
  grid-column:1;
  grid-row:2;
  max-width:10ch;
  margin:clamp(24px,4vw,48px) 0 0;
  color:var(--wayv2-ink);
  font-size:clamp(43px,5.15vw,72px);
  line-height:.98;
  letter-spacing:-.045em;
}
body.approach-v2-page .wayv2-boundary p{
  grid-column:2;
  max-width:68ch;
  margin:0;
  color:var(--wayv2-body);
  font-size:clamp(16px,1.25vw,18px);
  line-height:1.76;
}
body.approach-v2-page .wayv2-boundary p:first-of-type{grid-row:1/span 2;}
body.approach-v2-page .wayv2-boundary p+p{margin-top:24px;}
body.approach-v2-page .wayv2-boundary:nth-of-type(odd) h2{color:#f0eee8;}
body.approach-v2-page .wayv2-boundary:nth-of-type(odd) p{color:#adb9c4;}

/* Closing statement and next-step terminal. */
body.approach-v2-page .wayv2-summary{
  position:relative;
  min-height:min(90svh,920px);
  padding:clamp(112px,12vw,188px) 0;
  overflow:hidden;
  background:
    radial-gradient(66% 100% at 96% 36%,rgba(72,96,119,.18),transparent 74%),
    #08111a!important;
}
body.approach-v2-page .wayv2-summary>.od-wrap{width:min(1160px,calc(100% - clamp(44px,9vw,138px)));}
body.approach-v2-page .wayv2-summary .pf-narrow{max-width:none;margin:0;}
body.approach-v2-page .wayv2-summary h2{
  max-width:13ch;
  margin:clamp(28px,4vw,50px) 0 0;
  font-size:clamp(52px,7.2vw,100px);
  line-height:.9;
  letter-spacing:-.055em;
}
body.approach-v2-page .wayv2-summary p{
  max-width:67ch;
  margin:clamp(42px,6vw,76px) 0 0 auto;
  color:#b4c0ca;
  font-size:clamp(17px,1.45vw,20px);
  line-height:1.72;
}
body.approach-v2-page .wayv2-terminal{
  position:relative;
  min-height:min(84svh,840px);
  display:flex;
  align-items:center;
  padding:clamp(92px,10vw,146px) 0;
  overflow:hidden;
  background:
    radial-gradient(68% 110% at 90% 18%,rgba(79,104,127,.2),transparent 72%),
    linear-gradient(130deg,#07101a,#0b1722 62%,#101f2c)!important;
}
body.approach-v2-page .wayv2-terminal::before{
  content:"";
  position:absolute;
  right:-9vw;
  top:7%;
  width:min(58vw,760px);
  aspect-ratio:1;
  border:1px solid rgba(226,203,162,.09);
  border-radius:50%;
  box-shadow:0 0 0 12vw rgba(113,135,155,.012);
}
body.approach-v2-page .wayv2-terminal>.od-wrap{width:min(1160px,calc(100% - clamp(44px,9vw,138px)));}
body.approach-v2-page .wayv2-terminal .pf-narrow{max-width:1000px;margin:0;}
body.approach-v2-page .wayv2-terminal h2{
  max-width:12ch;
  margin:clamp(28px,4vw,50px) 0 clamp(50px,7vw,86px);
  font-size:clamp(54px,7.7vw,108px);
  line-height:.88;
  letter-spacing:-.055em;
}
body.approach-v2-page .wayv2-terminal h2 em{display:block;margin-left:clamp(24px,5vw,72px);color:var(--wayv2-gold-pale);font-weight:300;}
body.approach-v2-page .wayv2-terminal-routes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:940px;
  border-top:1px solid rgba(226,203,162,.2);
  border-left:1px solid rgba(226,203,162,.2);
}
body.approach-v2-page .wayv2-terminal-routes a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:74px;
  padding:18px 22px;
  border-right:1px solid rgba(226,203,162,.2);
  border-bottom:1px solid rgba(226,203,162,.2);
  color:rgba(223,230,235,.76);
  font:400 10.5px/1.35 var(--font-mono);
  letter-spacing:.13em;
  text-decoration:none;
  text-transform:uppercase;
  transition:color .35s ease,background .45s ease,padding .55s cubic-bezier(.16,1,.3,1);
}
body.approach-v2-page .wayv2-terminal-routes a span:last-child{color:var(--wayv2-gold-pale);font-size:16px;}
body.approach-v2-page .wayv2-terminal-routes a:hover,
body.approach-v2-page .wayv2-terminal-routes a:focus-visible{padding-left:30px;color:#fff;background:rgba(226,203,162,.055);}

@media(min-width:601px) and (max-width:1120px){
  body.approach-v2-page .wayv2-freeze-field{
    font-size:clamp(76px,13vw,112px);
    filter:none;
  }
  body.approach-v2-page .wayv2-freeze-field--light{color:rgba(224,232,238,.052);}
  body.approach-v2-page .wayv2-freeze-field--dark{color:rgba(24,39,42,.058);}
}

@media(max-width:980px){
  body.approach-v2-page .wayv2-story .pf-narrow,
  body.approach-v2-page .wayv2-principle .pf-narrow,
  body.approach-v2-page .wayv2-boundary .pf-narrow{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);column-gap:52px;}
  body.approach-v2-page .wayv2-film .pv-inner{grid-template-columns:180px minmax(0,1fr);gap:48px;}
}

@media(max-width:860px){
  body.approach-v2-page .wayv2-index{justify-content:flex-start;min-height:58px;padding-inline:8px;}
  body.approach-v2-page .wayv2-index a{min-height:58px;padding-inline:18px;}
  body.approach-v2-page .wayv2-prologue>.od-wrap{grid-template-columns:120px minmax(0,1fr);gap:46px;}
  body.approach-v2-page .wayv2-prologue-mark{font-size:80px;}
  body.approach-v2-page .wayv2-story .pf-narrow,
  body.approach-v2-page .wayv2-principle .pf-narrow,
  body.approach-v2-page .wayv2-boundary .pf-narrow{grid-template-columns:minmax(0,1fr);gap:0;}
  body.approach-v2-page .wayv2-story .od-eyebrow,
  body.approach-v2-page .wayv2-story h2,
  body.approach-v2-page .wayv2-story p,
  body.approach-v2-page .wayv2-principle .od-eyebrow,
  body.approach-v2-page .wayv2-principle h2,
  body.approach-v2-page .wayv2-principle p,
  body.approach-v2-page .wayv2-boundary .od-eyebrow,
  body.approach-v2-page .wayv2-boundary h2,
  body.approach-v2-page .wayv2-boundary p{grid-column:1;grid-row:auto;}
  body.approach-v2-page .wayv2-story h2,
  body.approach-v2-page .wayv2-principle h2,
  body.approach-v2-page .wayv2-boundary h2{max-width:13ch;margin-top:24px;}
  body.approach-v2-page .wayv2-story p:first-of-type,
  body.approach-v2-page .wayv2-principle p:first-of-type,
  body.approach-v2-page .wayv2-boundary p:first-of-type{grid-row:auto;margin-top:38px;}
  body.approach-v2-page .wayv2-principle:nth-of-type(even){margin-inline:18px;}
  body.approach-v2-page .wayv2-film .pv-inner{grid-template-columns:minmax(0,1fr);gap:42px;text-align:center;}
  body.approach-v2-page .wayv2-film .pv-eyebrow{justify-content:center;}
  body.approach-v2-page .wayv2-film .pv-figure{justify-content:center;}
  body.approach-v2-page .wayv2-film .pv-frame{width:min(62vw,410px,calc(74vh * .5625));}
}

@media(max-width:600px){
  body.approach-v2-page .wayv2-prologue,
  body.approach-v2-page .wayv2-story,
  body.approach-v2-page .wayv2-principle,
  body.approach-v2-page .wayv2-boundary,
  body.approach-v2-page .wayv2-summary,
  body.approach-v2-page .wayv2-terminal{padding:84px 0;}
  body.approach-v2-page .wayv2-prologue{min-height:0;}
  body.approach-v2-page .wayv2-prologue>.od-wrap{display:block;width:calc(100% - 44px);}
  body.approach-v2-page .wayv2-prologue-mark{position:absolute;right:10px;top:72px;font-size:62px;opacity:.72;writing-mode:horizontal-tb;transform:none;}
  body.approach-v2-page .wayv2-prologue-copy{position:relative;padding-top:0;}
  body.approach-v2-page .wayv2-prologue-lede{max-width:100%;font-size:clamp(31px,9.3vw,39px);line-height:1.05;}
  body.approach-v2-page .wayv2-story>.od-wrap,
  body.approach-v2-page .wayv2-principle>.od-wrap,
  body.approach-v2-page .wayv2-boundary>.od-wrap,
  body.approach-v2-page .wayv2-summary>.od-wrap,
  body.approach-v2-page .wayv2-terminal>.od-wrap{width:calc(100% - 44px);}
  body.approach-v2-page .wayv2-story h2,
  body.approach-v2-page .wayv2-principle h2,
  body.approach-v2-page .wayv2-boundary h2{font-size:clamp(39px,11vw,48px);line-height:.98;}
  body.approach-v2-page .wayv2-story p,
  body.approach-v2-page .wayv2-principle p,
  body.approach-v2-page .wayv2-boundary p{font-size:16px;line-height:1.7;}
  body.approach-v2-page .wayv2-story p:first-of-type,
  body.approach-v2-page .wayv2-principle p:first-of-type,
  body.approach-v2-page .wayv2-boundary p:first-of-type{margin-top:32px;}
  body.approach-v2-page .wayv2-principle{min-height:0;}
  body.approach-v2-page .wayv2-principle:nth-of-type(even){margin-inline:10px;}
  body.approach-v2-page .wayv2-freeze-field{
    display:flex;
    padding-inline:22px;
    font-size:clamp(32px,10.5vw,41px);
    line-height:.84;
    letter-spacing:-.04em;
    white-space:normal;
    filter:none;
  }
  body.approach-v2-page .wayv2-freeze-field--light{color:rgba(224,232,238,.11);}
  body.approach-v2-page .wayv2-freeze-field--dark{color:rgba(24,39,42,.09);}
  body.approach-v2-page .wayv2-film{min-height:0;padding:78px 0;}
  body.approach-v2-page .wayv2-film .od-wrap{width:calc(100% - 44px);}
  body.approach-v2-page .wayv2-film .pv-frame{width:min(82vw,360px);}
  body.approach-v2-page .wayv2-summary{min-height:0;}
  body.approach-v2-page .wayv2-summary h2{font-size:clamp(48px,14vw,62px);line-height:.92;}
  body.approach-v2-page .wayv2-summary p{margin-top:38px;font-size:17px;}
  body.approach-v2-page .wayv2-terminal{min-height:88svh;}
  body.approach-v2-page .wayv2-terminal::before{right:-65%;top:8%;width:520px;}
  body.approach-v2-page .wayv2-terminal h2{font-size:clamp(50px,14.2vw,62px);line-height:.9;}
  body.approach-v2-page .wayv2-terminal h2 em{margin-left:18px;}
  body.approach-v2-page .wayv2-terminal-routes{grid-template-columns:minmax(0,1fr);}
  body.approach-v2-page .wayv2-terminal-routes a{min-height:64px;padding-inline:16px;font-size:9.5px;}
  body.approach-v2-page .wayv2-terminal-routes a:hover,
  body.approach-v2-page .wayv2-terminal-routes a:focus-visible{padding-left:20px;}
}

@media(prefers-reduced-motion:reduce){
  body.approach-v2-page *,
  body.approach-v2-page *::before,
  body.approach-v2-page *::after{animation:none!important;transition:none!important;}
}
