  :root{--coral:#FF6B68;--reveal:rgba(251,247,245,.96)}

  [data-theme="midnight"]{--paper:#0A0D12;--card:#0F172A;--ink:#F6F7F5;--muted:#9AA6BC;--muted2:#8794AE;
    --blue:#1756FF;--cyan:#00E1FF;--teal:#2FE0BE;--coral:#FF8A87;
    --line:rgba(255,255,255,.12);--line2:rgba(255,255,255,.07);--reveal:rgba(10,13,18,.94)}
  section{position:relative}.act{padding:clamp(72px,12vh,120px) 0}.act>.wrap{position:relative;z-index:1}
  .eyebrow.c{justify-content:center}.eyebrow.c::before{display:none}
  .num{font-family:var(--display);font-weight:600;font-size:13px;color:var(--muted)}
  .achead{display:flex;align-items:baseline;gap:16px;margin-bottom:clamp(22px,4vh,40px)}
  .muted{color:var(--muted)}

  /* PARTNERS HERO — centered, orchestration-led */
  .phero{position:relative;padding:clamp(120px,18vh,180px) 0 clamp(40px,6vh,72px);text-align:center;overflow:hidden;
    background:radial-gradient(60% 55% at 50% 30%,rgba(10,164,236,.10),transparent 70%),var(--paper)}
  .phero .eyebrow{margin-bottom:20px}
  .phero h1{font-family:var(--display);font-weight:500;text-transform:uppercase;font-size:clamp(30px,5vw,68px);line-height:.98;max-width:16ch;margin:0 auto}
  .phero h1 .ln{display:block;overflow:hidden}
  .phero h1 .ln i{display:block;font-style:normal;transform:translateY(112%);animation:lnup 1s cubic-bezier(.22,.61,.36,1) forwards}
  .phero h1 .ln:nth-child(1) i{animation-delay:.1s}.phero h1 .ln:nth-child(2) i{animation-delay:.24s}
  .phero h1 .k{color:var(--blue)}
  @keyframes lnup{to{transform:none}}@keyframes fade{to{opacity:1}}
  .phero .sub{margin:24px auto 0;max-width:60ch;color:var(--muted);font-size:clamp(15px,1.2vw,18px);opacity:0;animation:fade .9s .7s ease forwards}
  .phero .cta{margin-top:28px;display:flex;gap:13px;flex-wrap:wrap;align-items:center;justify-content:center;opacity:0;animation:fade .9s .95s ease forwards}
  .playlink{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none}
  .playlink .pc{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--blue)}

  /* ORCHESTRATION MAP */
  .orch{max-width:960px;margin:clamp(30px,5vh,56px) auto 0;padding:0 10px;opacity:0;animation:fade 1.1s 1.1s ease forwards}
  .orch svg{width:100%;height:auto;overflow:visible;display:block}
  .orch-line{fill:none;stroke:var(--cyan);stroke-width:1.4;stroke-dasharray:2 8;stroke-linecap:round;opacity:.5;animation:flow 2.6s linear infinite}
  @keyframes flow{to{stroke-dashoffset:-40}}
  .orch-line.hot{stroke:var(--blue);opacity:1;stroke-width:2.6}
  .orch-node{cursor:default}
  .orch-node circle.n{fill:var(--card);stroke:var(--line);stroke-width:1.5;transition:stroke .3s,r .3s}
  .orch-node circle.d{fill:var(--cyan);transition:fill .3s}
  .orch-node text{font-family:var(--display);font-weight:500;font-size:12.5px;fill:var(--muted);transition:fill .3s}
  .orch-node.hot circle.n{stroke:var(--blue);r:9}.orch-node.hot circle.d{fill:var(--blue)}.orch-node.hot text{fill:var(--ink)}
  .orch-core .glow{fill:var(--blue);opacity:.16;animation:corepulse 3.4s ease-in-out infinite}
  .orch-core .ring{fill:none;stroke:var(--blue);stroke-width:1.5;opacity:.35}
  .orch-core .core{fill:var(--blue)}.orch-core .cdot{fill:#fff}
  .orch-core text{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.14em;fill:var(--muted)}
  @keyframes corepulse{0%,100%{transform:scale(1);opacity:.16}50%{transform:scale(1.35);opacity:.05}}
  .orch-core .glow{transform-origin:470px 290px;transform-box:view-box}
  .orch-cap{text-align:center;margin-top:8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

  /* FILM */
  .film{position:relative;height:340vh;background:#0B1220}
  .film-stick{position:sticky;top:0;height:100vh;overflow:hidden;display:grid;place-items:center;background:var(--card)}
  .film-media{position:absolute;inset:0;z-index:0;display:grid;place-items:center;background:radial-gradient(60% 70% at 50% 45%,color-mix(in srgb,var(--cyan) 12%,var(--card)),var(--card))}
  [data-theme="midnight"] .film-media{background:radial-gradient(60% 70% at 50% 45%,#0C3550,#0B1220)}
  .film-media .fl{position:relative;z-index:1;text-align:center;color:var(--ink)}
  [data-theme="midnight"] .film-media .fl{color:#fff}
  .film-media .fl .play{width:74px;height:74px;border-radius:50%;border:1.6px solid var(--line);display:grid;place-items:center;margin:0 auto 20px;color:var(--blue);font-size:22px}
  .film-media .fl .ft{font-family:var(--display);font-weight:500;font-size:clamp(30px,4.6vw,62px);max-width:18ch;margin:0 auto;letter-spacing:-.02em;line-height:1.03}
  .film-media .fl .fn{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-top:14px;color:var(--muted)}
  .curtain{position:absolute;top:0;bottom:0;width:50.5%;z-index:2;background:var(--paper)}
  .cL{left:0;transform:translateX(calc(var(--p,0)*-102%))}.cR{right:0;transform:translateX(calc(var(--p,0)*102%))}
  .film-copy{position:relative;z-index:3;text-align:center;padding:0 24px;opacity:calc((0.9 - var(--p,0))*4.5);transform:scale(calc(1 - var(--p,0)*.05))}
  .film-copy .fe{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--blue);font-weight:600;display:block;margin-bottom:16px}
  .film-copy h2{font-size:clamp(28px,4.4vw,56px);color:var(--ink);max-width:20ch;margin:0 auto}
  .film-copy h2 i{font-style:normal;color:var(--blue)}

  h2.big{font-size:clamp(30px,4.8vw,62px);max-width:18ch}h2.big .g{color:var(--blue)}
  .lead p{margin-top:20px;max-width:56ch;color:var(--muted);font-size:clamp(15px,1.2vw,18px)}

  /* philosophy triad */
  .triad{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .tri{background:var(--card);border:1px solid var(--line2);border-radius:20px;padding:28px 24px}
  .tri .q{font-family:var(--display);font-weight:600;color:var(--cyan);font-size:13px;letter-spacing:.04em}
  .tri p{margin-top:12px;font-size:16px}
  @media(max-width:820px){.triad{grid-template-columns:1fr}}

  /* integrator steps */
  .steps{margin-top:38px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
  .steps .st{font-family:var(--display);font-weight:500;font-size:clamp(16px,1.6vw,22px);color:var(--ink);padding:10px 18px;border:1px solid var(--line);border-radius:100px}
  .steps .ar{color:var(--blue);font-size:18px}
  .one3{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
  .one3 span{font-family:var(--display);font-weight:600;font-size:clamp(18px,2vw,26px)}
  .one3 span:nth-child(2){color:var(--cyan)}.one3 span:nth-child(3){color:var(--blue)}

  /* ecosystem cards */
  .eco{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .ec{background:var(--card);border:1px solid var(--line2);border-radius:20px;padding:26px 24px;transition:transform .35s,box-shadow .35s,border-color .35s}
  .ec:hover{transform:translateY(-5px);box-shadow:0 24px 54px rgba(11,18,32,.10);border-color:var(--line)}
  .ec .ei{display:flex;align-items:center;gap:10px;color:var(--blue)}
  .ec .ei .nd{width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px color-mix(in srgb,var(--cyan) 20%,transparent)}
  .ec h3{font-size:18px;margin-top:14px}.ec p{margin-top:9px;font-size:13.5px;color:var(--muted)}
  .ec .logos{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:38px}
  .ec .logos .lg{background:#fff;border:1px solid rgba(11,18,32,.09);border-radius:9px;padding:7px 11px;height:40px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(11,18,32,.05)}
  .ec .logos .lg img{height:22px;width:auto;max-width:116px;object-fit:contain;display:block}
  .ec .logos .soon{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted2);border:1px dashed var(--line);border-radius:9px;padding:11px 14px}
  @media(max-width:900px){.eco{grid-template-columns:1fr 1fr}}@media(max-width:560px){.eco{grid-template-columns:1fr}}

  /* agnostic emphasis */
  .nots{margin-top:34px;display:flex;flex-direction:column;gap:14px;max-width:48ch}
  .nots div{font-family:var(--display);font-weight:500;font-size:clamp(20px,2.4vw,30px);color:var(--muted);line-height:1.2}
  .nots div b{color:var(--ink);font-weight:500}
  .nots div s{color:var(--blue);text-decoration:none}

  /* split */
  .split .two{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}
  .split.rev .two{grid-template-columns:.95fr 1.05fr}.split.rev .txt{order:2}.split.rev .media{order:1}
  .split p{margin-top:18px;color:var(--muted);font-size:clamp(15px,1.2vw,18px);max-width:48ch}
  .imgph{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line2);display:grid;place-items:center;
    background:radial-gradient(120% 120% at 72% 18%,rgba(10,164,236,.16),transparent 55%),linear-gradient(160deg,#e6f4fc,var(--card))}
  [data-theme="midnight"] .imgph{background:radial-gradient(120% 120% at 72% 18%,#0AA4EC,transparent 55%),linear-gradient(160deg,#0C4A6E,#0B1220)}
  .imgph .cap{text-align:center}.imgph .cap .t{font-family:var(--display);font-weight:600;font-size:18px;color:var(--ink)}[data-theme="midnight"] .imgph .cap .t{color:#fff}
  .imgph .cap .n{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin-top:8px;color:var(--muted)}
  .imgph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;display:block}
  @media(max-width:820px){.split .two,.split.rev .two{grid-template-columns:1fr;gap:30px}.split.rev .txt{order:1}.split.rev .media{order:2}}

  .inc{margin-top:30px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 40px;max-width:760px}
  .inc div{display:flex;gap:11px;align-items:center;font-size:16px;padding:10px 0;border-bottom:1px solid var(--line2)}
  .inc div svg{width:17px;height:17px;color:var(--blue);flex:0 0 auto}
  @media(max-width:620px){.inc{grid-template-columns:1fr}}

  .bt{background:var(--card);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);text-align:center}
  .btend{margin-top:22px;font-family:var(--display);font-weight:500;font-size:clamp(18px,1.8vw,24px)}

  .final{text-align:center;padding:clamp(96px,15vh,160px) 0;background:radial-gradient(46% 60% at 50% 50%,rgba(10,164,236,.09),transparent 70%),var(--paper)}
  .final h2{font-size:clamp(34px,5.4vw,72px);max-width:16ch;margin:0 auto}.final h2 .g{color:var(--blue)}
  .final .cta{margin-top:30px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  @media(prefers-reduced-motion:reduce){.phero h1 .ln i,.phero .sub,.phero .cta,.orch{opacity:1;transform:none}}

  /* motif corner accents */
  .tri{position:relative;overflow:hidden} .tri>*{position:relative;z-index:1}
  .tri::after{content:"";position:absolute;right:2%;bottom:0;width:50%;height:84%;background:var(--mi) right bottom/contain no-repeat;opacity:.95;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(305deg,#000 48%,transparent 84%);mask-image:linear-gradient(305deg,#000 48%,transparent 84%)}
  .tri:nth-child(1){--mi:url(../img/motifs/m-emergence-c.png)}
  .tri:nth-child(2){--mi:url(../img/motifs/m-synaptic-c.png)}
  .tri:nth-child(3){--mi:url(../img/motifs/m-signal-c.png)}
  [data-theme="midnight"] .imgph{border-color:transparent;background:#0B1220}
  /* film curtain reveals a full-bleed motif (landing-style), not a video placeholder */
  .film-media{background:radial-gradient(72% 82% at 50% 42%,#12203f,#0B1220)}
  .film-media .filmfield{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:block;opacity:.92;animation:hpulse 8s ease-in-out infinite}
  .film-media::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(62% 62% at 50% 45%,rgba(7,11,20,.12),rgba(7,11,20,.5))}
  .film-media .fl{position:relative;z-index:2;color:#fff}
  .film-media .fl .ft{color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.4)}
