/* ==========================================================
   V42 — TOTAL FILM IMMERSION
   Fresh cinematic language without sacrificing readability.
   ========================================================== */
body.cinematic-v42{
  --v42-ink:#020405;
  --v42-ink2:#06090b;
  --v42-ice:#eef3f1;
  --v42-turq:#286f74;
  --v42-turq2:#3b8f92;
  --v42-turq-soft:rgba(59,143,146,.26);
  --v42-line:rgba(218,232,233,.105);
  --v42-warm:rgba(210,177,139,.065);
  background:#020405;
}
body.cinematic-v42::before{
  content:'';position:fixed;z-index:1;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at var(--v42-x,52%) var(--v42-y,36%),rgba(75,148,151,.055),transparent 22%),
    radial-gradient(circle at 14% 78%,rgba(211,179,139,.023),transparent 30%);
  mix-blend-mode:screen;opacity:.9;transition:opacity .6s ease;
}
body.cinematic-v42 main{position:relative;z-index:4}
body.cinematic-v42 .topbar{z-index:960;background:linear-gradient(180deg,rgba(2,4,5,.94),rgba(2,4,5,.72));border-bottom-color:rgba(192,219,221,.10);transition:transform .45s cubic-bezier(.2,.7,.2,1),background .45s ease}
body.cinematic-v42.v42-header-away .topbar{transform:translateY(-105%)}
body.cinematic-v42 .topbar:after{background:linear-gradient(90deg,transparent,rgba(58,143,146,.55) 26%,rgba(226,239,239,.28) 50%,rgba(58,143,146,.55) 74%,transparent);opacity:.7}
body.cinematic-v42 .edition small{color:#52878a}
body.cinematic-v42 .menu-button{border-color:rgba(83,143,146,.26);background:rgba(3,7,8,.32)}
body.cinematic-v42 .brand{border:1px solid rgba(75,131,134,.14)}

/* Optical layers */
.v42-aperture{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:#010203;pointer-events:none;opacity:1;transition:opacity .9s cubic-bezier(.2,.7,.2,1),visibility .9s}
.v42-aperture.done{opacity:0;visibility:hidden}
.v42-aperture-inner{display:grid;place-items:center;gap:16px;transform:scale(.965);opacity:0;animation:v42ApertureIn .75s ease forwards}
.v42-aperture-inner img{width:min(330px,62vw);aspect-ratio:4/3;object-fit:cover;filter:brightness(.88);border:1px solid rgba(216,234,234,.08)}
.v42-aperture-inner span{font:600 6px/1 var(--mono);letter-spacing:.38em;color:#738789}
.v42-aperture-inner i{width:84px;height:1px;background:linear-gradient(90deg,transparent,#3b8f92,transparent)}
@keyframes v42ApertureIn{to{opacity:1;transform:none}}
.v42-matte{position:fixed;z-index:845;left:0;right:0;pointer-events:none;opacity:.75;transition:opacity .45s ease}
.v42-matte.top{top:64px;height:7px;background:linear-gradient(#000,rgba(0,0,0,.88),transparent)}
.v42-matte.bottom{bottom:0;height:7px;background:linear-gradient(transparent,rgba(0,0,0,.88),#000)}
.v42-film-rail{position:fixed;z-index:838;right:13px;top:92px;bottom:92px;width:28px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;pointer-events:none;color:#5d7476;opacity:.76}
.v42-film-rail:before{content:'';position:absolute;top:28px;bottom:30px;left:13px;width:1px;background:linear-gradient(transparent,rgba(78,145,148,.28) 12%,rgba(78,145,148,.28) 88%,transparent)}
.v42-film-rail b,.v42-film-rail small{position:relative;z-index:2;writing-mode:vertical-rl;text-orientation:mixed;font:600 5px/1 var(--mono);letter-spacing:.24em;background:#020405;padding:7px 0}
.v42-film-rail b{color:#8a9a9a}.v42-film-rail small{color:#3f7d80}
.v42-film-rail i{position:absolute;z-index:3;left:10px;top:calc(28px + (var(--v42-page-progress,0) * (100% - 58px)));width:7px;height:7px;border:1px solid #4e9598;background:#071012;transform:rotate(45deg) translateY(-50%);box-shadow:0 0 18px rgba(59,143,146,.18)}
.v42-act-card{position:fixed;z-index:1750;inset:0;display:grid;place-items:center;background:rgba(0,2,3,.96);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .42s ease,visibility .42s}
.v42-act-card.show{opacity:1;visibility:visible}.v42-act-card.leave{opacity:0}
.v42-act-card-inner{width:min(900px,84vw);text-align:center}
.v42-act-card small{display:block;font:600 6px/1 var(--mono);letter-spacing:.42em;color:#4f8587}
.v42-act-card b{display:block;margin:22px 0 12px;font:300 clamp(82px,14vw,190px)/.68 var(--serif);letter-spacing:-.06em;color:rgba(57,137,140,.64)}
.v42-act-card strong{display:block;font:500 clamp(28px,4vw,58px)/.96 var(--serif);letter-spacing:-.035em;color:#eeeae3;text-wrap:balance}

/* Cover becomes a cinematic poster, not a web hero */
body.cinematic-v42 .cover{min-height:100svh;padding-top:112px;padding-bottom:88px;background:radial-gradient(circle at 73% 19%,rgba(50,126,130,.10),transparent 25%),radial-gradient(circle at 24% 85%,rgba(197,165,127,.035),transparent 28%),#020405;isolation:isolate}
body.cinematic-v42 .cover:before{background:linear-gradient(rgba(224,236,236,.013) 1px,transparent 1px),linear-gradient(90deg,rgba(224,236,236,.013) 1px,transparent 1px);background-size:8vw 8vw;opacity:.6}
.v42-cover-still{position:absolute;z-index:0;inset:-4%;background:center 24%/cover no-repeat;filter:saturate(.38) contrast(1.08) brightness(.22) sepia(.05);opacity:.22;transform:scale(1.04);transition:transform 14s cubic-bezier(.16,.7,.2,1)}
body.v42-ready .v42-cover-still{transform:scale(1.005)}
.v42-cover-still:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#020405 0%,rgba(2,4,5,.76) 30%,rgba(2,4,5,.22) 67%,#020405 100%),linear-gradient(0deg,#020405 0%,transparent 31%,transparent 62%,rgba(2,4,5,.76) 100%)}
body.cinematic-v42 .cover-signature{width:min(700px,76vw);margin-bottom:48px}
body.cinematic-v42 .cover-signature-frame{box-shadow:0 54px 140px rgba(0,0,0,.70),0 0 100px rgba(59,143,146,.045)}
body.cinematic-v42 .cover-copy{text-align:center}
body.cinematic-v42 .cover h1{font-size:clamp(58px,7.8vw,112px);line-height:.87;text-shadow:0 22px 70px rgba(0,0,0,.58)}
body.cinematic-v42 .cover h2{color:#9da7a6;font-weight:400}
body.cinematic-v42 .cover p{max-width:740px}
body.cinematic-v42 .cover-nine{width:min(720px,90vw);margin-inline:auto}
body.cinematic-v42 .cover-nine b{color:#317d80!important}
body.cinematic-v42 .scroll-cue{border:1px solid rgba(57,137,140,.22);padding:13px 18px;background:rgba(4,10,11,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* Storyboard / contents */
body.cinematic-v42 .book-index{position:relative;padding-top:120px;padding-bottom:120px;background:radial-gradient(circle at 50% 0,rgba(57,137,140,.06),transparent 32%),#040607}
body.cinematic-v42 .book-index:after{content:'STORYBOARD';position:absolute;right:5vw;top:95px;font:500 clamp(38px,7vw,98px)/1 var(--serif);letter-spacing:.07em;color:rgba(64,139,142,.035);pointer-events:none}
body.cinematic-v42 .book-index-intro{padding-bottom:42px;border-bottom-color:rgba(85,143,145,.15)}
body.cinematic-v42 .nine-index{counter-reset:v42story}
body.cinematic-v42 .nine-index a{position:relative;overflow:hidden;min-height:88px;background:linear-gradient(90deg,rgba(255,255,255,.008),transparent);transition:transform .35s cubic-bezier(.2,.7,.2,1),background .35s ease,border-color .35s ease}
body.cinematic-v42 .nine-index a:after{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#3a888b;transform:scaleY(0);transform-origin:center;transition:transform .35s ease}
body.cinematic-v42 .nine-index a:hover{transform:translateX(8px);background:linear-gradient(90deg,rgba(59,143,146,.055),transparent 58%)}
body.cinematic-v42 .nine-index a:hover:after{transform:scaleY(1)}
body.cinematic-v42 .nine-index em{color:#317d80!important;text-shadow:none!important}

/* Chapter staging */
body.cinematic-v42 .chapter{background:radial-gradient(circle at 86% 8%,rgba(56,132,136,.055),transparent 28%),linear-gradient(180deg,#020405 0%,#050708 32%,#030506 100%)}
body.cinematic-v42 .scene-slate{min-height:94svh;border-top-color:rgba(83,144,146,.14);border-bottom-color:rgba(83,144,146,.14);box-shadow:0 70px 160px rgba(0,0,0,.46)}
body.cinematic-v42 .scene-slate-image{filter:saturate(.58) contrast(1.10) brightness(.58) sepia(.045);transform:translateY(var(--cinema-shift,0)) scale(1.07)}
body.cinematic-v42 .scene-slate.scene-live .scene-slate-image{filter:saturate(.62) contrast(1.08) brightness(.64) sepia(.04);transform:translateY(var(--cinema-shift,0)) scale(1.012)}
body.cinematic-v42 .scene-slate-shade{background:linear-gradient(90deg,rgba(2,4,5,.90),rgba(2,4,5,.30) 47%,rgba(2,4,5,.44)),linear-gradient(0deg,#020405 0%,rgba(2,4,5,.88) 14%,transparent 52%,rgba(2,4,5,.26) 100%),radial-gradient(circle at 72% 28%,rgba(63,148,151,.075),transparent 20%)}
body.cinematic-v42 .scene-slate-top{border-bottom-color:rgba(68,139,142,.22)}
body.cinematic-v42 .scene-slate-top span{color:#6e999a}
body.cinematic-v42 .scene-slate h2{font-size:clamp(64px,8vw,122px);line-height:.84;max-width:1040px}
body.cinematic-v42 .scene-slate p{color:#a4afae}
body.cinematic-v42 .scene-slate-foot:before{background:linear-gradient(90deg,#448e91,transparent)}
body.cinematic-v42 .chapter-shell{width:min(1240px,100%)}
body.cinematic-v42 .chapter-ordinal{margin-top:6px;border-bottom-color:rgba(68,139,142,.16)}
body.cinematic-v42 .chapter-number,
body.cinematic-v42 .chapter-folio>span,
body.cinematic-v42 .drawer-nav a>b,
body.cinematic-v42 .spine-nav a>i,
body.cinematic-v42 .nine-index a>em,
body.cinematic-v42 .cover-nine b,
body.cinematic-v42 .chapter-passage .passage-rule b,
body.cinematic-v42 .chapter-passage a>b,
body.cinematic-v42 .index-guidance a>b{color:#2d7d81!important;text-shadow:0 0 28px rgba(45,125,129,.10)!important}
body.cinematic-v42 .chapter-visual{border-color:rgba(63,138,141,.19);box-shadow:0 44px 130px rgba(0,0,0,.68),0 0 0 1px rgba(57,137,140,.045),0 0 100px rgba(57,137,140,.035)}
body.cinematic-v42 .chapter-visual:after{background:radial-gradient(circle at 82% 15%,rgba(59,143,146,.075),transparent 23%),linear-gradient(128deg,transparent 0 43%,rgba(255,255,255,.055) 49%,transparent 55%);opacity:.7}
body.cinematic-v42 .chapter-visual img{filter:saturate(.70) contrast(1.055) brightness(.92) sepia(.02);transition:transform 5s cubic-bezier(.2,.7,.2,1),filter 1s ease}
body.cinematic-v42 .chapter-visual.v42-in-view img{transform:scale(1.012)}
body.cinematic-v42 .chapter-heading{padding-top:42px}
body.cinematic-v42 .chapter-heading:before{height:1px;width:112px;background:linear-gradient(90deg,#438f92,rgba(67,143,146,.22),transparent)}
body.cinematic-v42 .chapter-heading h2{max-width:1120px;font-size:clamp(54px,6.5vw,96px);line-height:.90}
body.cinematic-v42 .chapter-deck{max-width:840px;color:#788787}
body.cinematic-v42 .chapter-copy{margin-top:40px;padding-top:36px;border-top-color:rgba(66,133,136,.14);color:#c9c7c1;column-gap:clamp(42px,6vw,78px);column-rule-color:rgba(62,131,134,.095)}
body.cinematic-v42 .chapter-copy .lead{color:#f0ece5}
body.cinematic-v42 .chapter-copy .lead:first-letter{color:#dbe9e7;text-shadow:0 0 32px rgba(58,140,143,.14)}
body.cinematic-v42 .cinema-reveal{filter:blur(1.5px);transform:translateY(26px);opacity:.16}
body.cinematic-v42 .cinema-reveal.is-visible{filter:none;opacity:1;transform:none}
body.cinematic-v42 .chapter-passage{position:relative;min-height:44svh;margin-top:105px;background:radial-gradient(circle at 50% 50%,rgba(58,140,143,.045),transparent 33%)}
body.cinematic-v42 .chapter-passage:before{content:'';position:absolute;left:50%;top:18%;bottom:18%;width:1px;background:linear-gradient(transparent,rgba(58,140,143,.17),transparent)}
body.cinematic-v42 .passage-rule b{background:#030506;padding-inline:16px}
body.cinematic-v42 .passage-body>a{background:rgba(4,9,10,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-color:rgba(58,140,143,.22)}

/* Soundtrack becomes a film intermission */
body.cinematic-v42 .v36-interlude{min-height:82svh;border-top-color:rgba(69,138,141,.14);border-bottom-color:rgba(69,138,141,.14)}
body.cinematic-v42 .v36-interlude-bg{filter:saturate(.72) contrast(1.08) brightness(.42);transition:transform 11s cubic-bezier(.2,.7,.2,1)}
body.cinematic-v42 .v36-interlude.active .v36-interlude-bg{transform:scale(1.025)}
body.cinematic-v42 .album-console{border-color:rgba(64,135,138,.16);box-shadow:0 36px 110px rgba(0,0,0,.48)}
body.cinematic-v42 .music-dock{border-color:rgba(60,131,134,.19);background:rgba(2,5,6,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
body.cinematic-v42.v42-sound-on::before{opacity:1;background:radial-gradient(circle at var(--v42-x,52%) var(--v42-y,36%),rgba(66,151,154,.085),transparent 24%),radial-gradient(circle at 20% 82%,rgba(211,179,139,.03),transparent 30%)}

/* RNBO archive: documentary room, not a landing page */
body.cinematic-v42 .publications-center{background:radial-gradient(circle at 88% 4%,rgba(58,139,142,.052),transparent 24%),linear-gradient(180deg,#030506,#050809 38%,#030506);padding-top:0}
body.cinematic-v42 .v36-archive-slate{min-height:78svh}
body.cinematic-v42 .v36-archive-slate-bg{filter:saturate(.40) contrast(1.12) brightness(.27) sepia(.03)}
body.cinematic-v42 .pub-head{padding-top:54px;border-top:1px solid rgba(63,136,139,.13)}
body.cinematic-v42 .pub-actions a{border-color:rgba(59,133,136,.20);background:rgba(3,7,8,.34)}
body.cinematic-v42 .rnbo-toolbar{top:64px;border-color:rgba(59,133,136,.13);background:linear-gradient(180deg,rgba(2,5,6,.97),rgba(2,5,6,.90));box-shadow:0 18px 40px rgba(0,0,0,.32)}
body.cinematic-v42 .rnbo-linear-item{border-bottom-color:rgba(63,132,135,.095)}
body.cinematic-v42 .rnbo-linear-link:before{color:#347f83;border-right-color:rgba(61,134,137,.18)}
body.cinematic-v42 .rnbo-linear-title{color:#e5e1da}
body.cinematic-v42 .rnbo-linear-link:hover{background:linear-gradient(90deg,rgba(58,139,142,.055),transparent 62%);box-shadow:inset 2px 0 0 rgba(58,139,142,.72)}
body.cinematic-v42 .rnbo-linear-arrow{color:#3f8c90}

/* Credits */
body.cinematic-v42 .endplate{min-height:92svh;background:radial-gradient(circle at 50% 18%,rgba(58,139,142,.055),transparent 30%),#020405}
body.cinematic-v42 .v36-fin{color:rgba(58,139,142,.18);letter-spacing:.20em}

/* Reveal grammar */
body.cinematic-v42 .v42-reveal{opacity:0;transform:translateY(34px) scale(.992);filter:blur(5px);transition:opacity .95s ease,transform 1.05s cubic-bezier(.2,.7,.2,1),filter .95s ease}
body.cinematic-v42 .v42-reveal.v42-in-view{opacity:1;transform:none;filter:none}

@media(max-width:900px){
  .v42-film-rail{display:none}
  .v42-matte.top{top:59px;height:5px}.v42-matte.bottom{height:5px}
  body.cinematic-v42 .cover{padding-top:96px;min-height:92svh}
  body.cinematic-v42 .cover-signature{width:min(88vw,620px)}
  body.cinematic-v42 .book-index{padding-top:92px;padding-bottom:92px}
  body.cinematic-v42 .scene-slate{min-height:82svh}
  body.cinematic-v42 .scene-slate h2{font-size:clamp(50px,12.7vw,78px)}
  body.cinematic-v42 .chapter-heading h2{font-size:clamp(44px,11vw,68px)}
  body.cinematic-v42 .chapter-copy{columns:1;font-size:17px;line-height:1.74}
  body.cinematic-v42 .chapter-passage{min-height:34svh;margin-top:76px}
  body.cinematic-v42 .rnbo-toolbar{top:59px}
}
@media(max-width:600px){
  body.cinematic-v42::before{opacity:.55}
  body.cinematic-v42 .cover{min-height:auto;padding:92px 14px 72px}
  body.cinematic-v42 .cover-signature{width:92vw;margin-bottom:38px}
  body.cinematic-v42 .cover h1{font-size:clamp(48px,13vw,65px)}
  body.cinematic-v42 .scene-slate{min-height:76svh}
  body.cinematic-v42 .scene-slate-image{filter:saturate(.50) contrast(1.08) brightness(.54) sepia(.035)}
  body.cinematic-v42 .scene-slate.scene-live .scene-slate-image{filter:saturate(.55) contrast(1.07) brightness(.60) sepia(.03)}
  body.cinematic-v42 .chapter-visual img{filter:saturate(.66) contrast(1.045) brightness(.93) sepia(.018)}
  body.cinematic-v42 .chapter-heading{padding-top:30px}
  body.cinematic-v42 .chapter-copy{margin-top:28px;padding-top:28px;font-size:16px}
  body.cinematic-v42 .chapter-copy .lead{font-size:19px}
  body.cinematic-v42 .chapter-passage:before{display:none}
  body.cinematic-v42 .v36-interlude{min-height:66svh}
  body.cinematic-v42 .v36-archive-slate{min-height:64svh}
  body.cinematic-v42 .rnbo-toolbar{position:relative;top:auto}
  .v42-act-card b{font-size:34vw}.v42-act-card strong{font-size:9vw}
}
@media(prefers-reduced-motion:reduce){
  .v42-aperture-inner,.v42-cover-still,.v42-reveal,.v42-act-card,.v42-film-rail i{animation:none!important;transition:none!important}
  .v42-reveal{opacity:1!important;transform:none!important;filter:none!important}
  body.cinematic-v42 .scene-slate-image,body.cinematic-v42 .chapter-visual img{transition:none!important;transform:none!important}
}

body.cinematic-v42 .cinema-prologue-mark span:before{content:'V42'!important}
