:root{
    --ink:#05060a;
    --ink-2:#0a0c14;
    --paper:#f7f6f3;
    --paper-2:#ffffff;
    --text-dark:#eef1f7;
    --text-dark-dim:#9aa3b8;
    --text-light:#14161d;
    --text-light-dim:#5a6172;
    --accent:#5fd3ff;      /* luminous time-blue */
    --accent-2:#ffb454;    /* entropy amber */
    --line-dark:rgba(255,255,255,0.10);
    --line-light:rgba(10,12,20,0.12);
    --maxw:1120px;
    --ease:cubic-bezier(.2,.7,.2,1);
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
  body{
    margin:0;
    background:var(--ink);
    color:var(--text-dark);
    font-family:'Inter',system-ui,sans-serif;
    font-weight:400;
    line-height:1.65;
    overflow-x:hidden;
  }
  ::selection{background:var(--accent);color:#04121a;}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  .mono{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:400;letter-spacing:.12em;text-transform:uppercase;}
  .serif{font-family:'Newsreader',Georgia,serif;}

  /* ---------- Progress rail ---------- */
  #progress{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-2));z-index:120;transition:width .1s linear;}

  /* ---------- Nav ---------- */
  nav{
    position:fixed;top:0;left:0;right:0;z-index:100;
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 28px;
    transition:background .5s var(--ease),backdrop-filter .5s,border-color .5s,color .5s;
    border-bottom:1px solid transparent;
    mix-blend-mode:normal;
  }
  nav.scrolled{background:rgba(5,6,10,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-dark);}
  nav.on-light{background:rgba(247,246,243,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-light);}
  nav.on-light .brand,nav.on-light .navlink{color:var(--text-light);}
  nav.on-light .navlink:hover{color:#000;}
  .brand{font-family:'Newsreader',serif;font-size:19px;letter-spacing:.01em;color:var(--text-dark);text-decoration:none;display:flex;align-items:center;gap:10px;font-weight:500;}
  .brand .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent);animation:breathe 3.4s var(--ease) infinite;}
  @keyframes breathe{0%,100%{opacity:.55;transform:scale(.85);}50%{opacity:1;transform:scale(1.15);}}
  .navlinks{display:flex;gap:30px;align-items:center;}
  .navlink{font-size:12.5px;letter-spacing:.10em;text-transform:uppercase;color:var(--text-dark-dim);text-decoration:none;transition:color .3s;}
  .navlink:hover{color:var(--accent);}
  .nav-cta{border:1px solid var(--accent);color:var(--accent)!important;padding:8px 16px;border-radius:999px;transition:all .3s;}
  .nav-cta:hover{background:var(--accent);color:#04121a!important;box-shadow:0 0 26px rgba(95,211,255,.45);}
  .nav-toggle{display:none;background:none;border:1px solid var(--line-dark);border-radius:9px;padding:9px 11px;cursor:pointer;color:var(--text-dark);}
  .nav-toggle span{display:block;width:18px;height:2px;background:currentColor;margin:3px 0;transition:.3s;}
  nav.on-light .nav-toggle{color:var(--text-light);border-color:var(--line-light);}
  @media(max-width:760px){
    .nav-toggle{display:block;}
    .navlinks{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:6px 24px 20px;background:rgba(5,6,10,.97);backdrop-filter:blur(16px);border-bottom:1px solid var(--line-dark);transform:translateY(-10px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;}
    nav.open .navlinks{transform:none;opacity:1;pointer-events:auto;}
    nav.on-light .navlinks{background:rgba(247,246,243,.98);}
    .navlinks .navlink{display:block;padding:14px 0;border-bottom:1px solid var(--line-dark);}
    nav.on-light .navlinks .navlink{border-color:var(--line-light);}
    .navlinks .nav-cta{border:1px solid var(--accent);text-align:center;margin-top:14px;padding:12px 16px;}
  }

  /* ---------- Buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-family:'Inter',sans-serif;font-size:14.5px;font-weight:500;letter-spacing:.02em;
    padding:15px 30px;border-radius:999px;text-decoration:none;cursor:pointer;border:1px solid transparent;
    transition:all .35s var(--ease);
  }
  .btn .arrow{transition:transform .35s var(--ease);}
  .btn:hover .arrow{transform:translateX(5px);}
  .btn-primary{background:var(--accent);color:#04121a;box-shadow:0 0 0 rgba(95,211,255,0);}
  .btn-primary:hover{box-shadow:0 10px 40px rgba(95,211,255,.35);transform:translateY(-2px);}
  .btn-ghost{border-color:var(--line-dark);color:var(--text-dark);}
  .btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px);}
  .btn-ghost.light{border-color:var(--line-light);color:var(--text-light);}
  .btn-ghost.light:hover{border-color:var(--text-light);color:#000;}

  /* ---------- HERO ---------- */
  #hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;}
  #field{position:absolute;inset:0;width:100%;height:100%;display:block;}
  #hero .veil{position:absolute;inset:0;background:
     radial-gradient(1200px 700px at 50% 12%,rgba(95,211,255,.10),transparent 60%),
     radial-gradient(900px 600px at 80% 90%,rgba(255,180,84,.07),transparent 60%),
     linear-gradient(180deg,rgba(5,6,10,.2) 0%,rgba(5,6,10,.55) 55%,var(--ink) 100%);
     pointer-events:none;}
  .hero-inner{position:relative;z-index:3;width:100%;padding:120px 0 90px;}
  .eyebrow{color:var(--accent);font-size:12px;margin-bottom:26px;opacity:0;animation:fadeUp .9s var(--ease) .2s forwards;}
  h1.hero-title{
    font-family:'Newsreader',serif;font-weight:400;
    font-size:clamp(2.6rem,6.6vw,5.4rem);line-height:1.02;letter-spacing:-.02em;
    margin:0 0 8px;max-width:16ch;
  }
  h1.hero-title .l2{display:block;color:var(--text-dark-dim);font-style:italic;font-size:.62em;margin-top:.35em;}
  .hero-title .word{display:inline-block;opacity:0;transform:translateY(22px);filter:blur(6px);}
  .hero-sub{max-width:60ch;margin:34px 0 0;color:var(--text-dark-dim);font-size:clamp(1rem,1.5vw,1.18rem);opacity:0;animation:fadeUp 1s var(--ease) 1.15s forwards;}
  .hero-sub strong{color:var(--text-dark);font-weight:500;}
  .term{color:var(--accent);font-style:italic;font-family:'Newsreader',serif;}
  .hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin-top:44px;opacity:0;animation:fadeUp 1s var(--ease) 1.45s forwards;}
  .scroll-hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:3;color:var(--text-dark-dim);font-size:11px;letter-spacing:.22em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:fadeUp 1s var(--ease) 1.9s forwards;}
  .scroll-hint .bar{width:1px;height:42px;background:linear-gradient(var(--accent),transparent);animation:drop 2.1s var(--ease) infinite;}
  @keyframes drop{0%{transform:scaleY(0);transform-origin:top;}45%{transform:scaleY(1);transform-origin:top;}55%{transform:scaleY(1);transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;}}
  @keyframes fadeUp{to{opacity:1;transform:none;}}
  @keyframes heroWord{from{opacity:0;transform:translateY(22px);filter:blur(6px);}to{opacity:1;transform:none;filter:blur(0);}}

  /* ---------- Section scaffolding ---------- */
  section{position:relative;scroll-margin-top:72px;}
  .band-dark{background:var(--ink);color:var(--text-dark);}
  .band-light{background:var(--paper);color:var(--text-light);}
  .pad{padding:130px 0;}
  @media(max-width:700px){.pad{padding:88px 0;}}
  .kicker{font-size:12px;color:var(--accent);margin-bottom:20px;}
  .band-light .kicker{color:#0a84b8;}
  .h2{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(2rem,4.6vw,3.5rem);line-height:1.06;letter-spacing:-.02em;margin:0 0 26px;}
  .lead{font-size:clamp(1.05rem,1.6vw,1.32rem);line-height:1.6;max-width:64ch;color:var(--text-dark-dim);}
  .band-light .lead{color:var(--text-light-dim);}
  .lead .em{color:var(--text-dark);font-style:italic;font-family:'Newsreader',serif;}
  .band-light .lead .em{color:var(--text-light);}

  /* reveal on scroll */
  .rise{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
  .rise.in{opacity:1;transform:none;}
  .rise.d1{transition-delay:.08s;} .rise.d2{transition-delay:.16s;} .rise.d3{transition-delay:.24s;} .rise.d4{transition-delay:.32s;} .rise.d5{transition-delay:.4s;}

  /* metrics ticker row */
  .metrics{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
  .chip{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.06em;padding:9px 15px;border:1px solid var(--line-dark);border-radius:999px;color:var(--text-dark-dim);}
  .band-light .chip{border-color:var(--line-light);color:var(--text-light-dim);}

  /* ---------- Missing variable list ---------- */
  .measured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:52px;background:var(--line-light);border:1px solid var(--line-light);border-radius:16px;overflow:hidden;}
  .measured-grid .cell{background:var(--paper-2);padding:26px 22px;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.05em;color:var(--text-light-dim);text-transform:uppercase;transition:background .4s,color .4s;}
  .measured-grid .cell.hot{background:#0a0c14;color:var(--accent);}
  .measured-grid .cell .x{display:block;font-family:'Newsreader',serif;font-size:26px;text-transform:none;letter-spacing:-.01em;color:var(--text-light);margin-top:8px;}
  .measured-grid .cell.hot .x{color:#fff;}
  @media(max-width:760px){.measured-grid{grid-template-columns:repeat(2,1fr);}}
  .the-question{margin-top:46px;font-family:'Newsreader',serif;font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.2;letter-spacing:-.01em;color:var(--text-light);max-width:22ch;}
  .the-question .hl{color:#0a84b8;font-style:italic;}
  .not-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
  .not-list span{text-decoration:line-through;text-decoration-color:rgba(10,12,20,.3);color:var(--text-light-dim);font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.05em;}

  /* ---------- Two companies ---------- */
  .twocol{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:56px;}
  @media(max-width:820px){.twocol{grid-template-columns:1fr;}}
  .company{border:1px solid var(--line-light);border-radius:18px;padding:32px;background:var(--paper-2);position:relative;overflow:hidden;}
  .company h4{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-light-dim);margin:0 0 20px;}
  .same-row{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:26px;}
  .same-row b{font-weight:500;color:var(--text-light);font-size:14px;}
  .same-row b span{color:var(--text-light-dim);font-weight:400;}
  .gauge{height:10px;border-radius:999px;background:rgba(10,12,20,.08);overflow:hidden;margin-top:8px;}
  .gauge i{display:block;height:100%;width:0;border-radius:999px;transition:width 1.4s var(--ease);}
  .company.good .gauge i{background:linear-gradient(90deg,#28c76f,#5fd3ff);}
  .company.bad .gauge i{background:linear-gradient(90deg,#ff6b6b,#ffb454);}
  .company.in.good .gauge i{width:88%;}
  .company.in.bad .gauge i{width:23%;}
  .gauge-label{display:flex;justify-content:space-between;margin-top:12px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.05em;color:var(--text-light-dim);}
  .verdict{margin-top:20px;font-family:'Newsreader',serif;font-size:20px;line-height:1.35;}
  .company.good .verdict{color:#0b7a44;}
  .company.bad .verdict{color:#c23636;}
  .company .tag{position:absolute;top:22px;right:24px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--text-light-dim);}

  /* ---------- Contextual Time reveal ---------- */
  #reveal{background:radial-gradient(900px 620px at 50% 0%,#101827,var(--ink) 70%);}
  .reveal-term{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(3rem,10vw,8rem);line-height:.98;letter-spacing:-.03em;background:linear-gradient(180deg,#fff 0%,var(--accent) 130%);-webkit-background-clip:text;background-clip:text;color:transparent;margin:0;}
  .reveal-term sup{font-size:.22em;color:var(--accent);-webkit-text-fill-color:var(--accent);vertical-align:super;}
  .balance{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:60px;}
  @media(max-width:760px){.balance{grid-template-columns:1fr;}}
  .balance .state{border:1px solid var(--line-dark);border-radius:18px;padding:30px;}
  .balance .state .lab{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;}
  .balance .state.expand{background:linear-gradient(180deg,rgba(95,211,255,.10),transparent);}
  .balance .state.expand .lab{color:var(--accent);}
  .balance .state.compress{background:linear-gradient(180deg,rgba(255,107,107,.10),transparent);}
  .balance .state.compress .lab{color:#ff8f8f;}
  .balance .state p{color:var(--text-dark-dim);margin:0;font-size:15.5px;}
  .balance .state b{color:var(--text-dark);font-weight:500;}

  /* ---------- Engine steps ---------- */
  .steps{margin-top:56px;border-top:1px solid var(--line-dark);}
  .step{display:grid;grid-template-columns:64px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line-dark);align-items:baseline;}
  .step .num{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--accent);letter-spacing:.1em;}
  .step h4{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(1.4rem,2.6vw,2rem);margin:0 0 6px;color:var(--text-dark);}
  .step p{margin:0;color:var(--text-dark-dim);font-size:15.5px;max-width:60ch;}
  .step:hover .num{color:var(--accent-2);}

  /* ---------- Systems marquee ---------- */
  .systems-strip{margin-top:44px;display:flex;flex-wrap:wrap;gap:12px;}
  .systems-strip .s{border:1px solid var(--line-light);border-radius:999px;padding:11px 20px;font-size:14px;color:var(--text-light);background:var(--paper-2);transition:all .35s var(--ease);}
  .systems-strip .s:hover{border-color:#0a84b8;color:#0a84b8;transform:translateY(-2px);}

  /* ---------- Pipeline ---------- */
  .pipe{margin-top:56px;display:flex;flex-direction:column;gap:0;}
  .pipe .node{display:flex;align-items:center;gap:20px;padding:20px 0;}
  .pipe .node .idx{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-light);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--text-light-dim);transition:all .5s var(--ease);}
  .pipe .node.in .idx{border-color:#0a84b8;color:#0a84b8;box-shadow:0 0 0 5px rgba(10,132,184,.08);}
  .pipe .node .txt{font-family:'Newsreader',serif;font-size:clamp(1.2rem,2.4vw,1.7rem);color:var(--text-light);}
  .pipe .node .sub{display:block;font-family:'Inter',sans-serif;font-size:14px;color:var(--text-light-dim);margin-top:2px;}
  .pipe .rail{width:1px;height:26px;margin-left:22px;background:var(--line-light);}
  .pipe .rail.in{background:linear-gradient(#0a84b8,transparent);}

  /* ---------- Validation ---------- */
  #validation{background:linear-gradient(180deg,var(--ink) 0%,#0a0f18 100%);}
  .val-card{margin-top:50px;border:1px solid var(--line-dark);border-radius:22px;padding:44px;background:linear-gradient(160deg,rgba(95,211,255,.06),transparent 60%);position:relative;overflow:hidden;}
  .val-card::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 90% 0%,rgba(95,211,255,.12),transparent 60%);pointer-events:none;}
  .val-badge{display:inline-flex;align-items:center;gap:9px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:7px 14px;margin-bottom:26px;}
  .val-badge .pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);animation:breathe 2s infinite;}
  .val-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:36px 0 30px;}
  @media(max-width:700px){.val-stats{grid-template-columns:1fr;gap:22px;}}
  .val-stats .n{font-family:'Newsreader',serif;font-size:clamp(2rem,4vw,3rem);color:#fff;line-height:1;}
  .val-stats .c{color:var(--text-dark-dim);font-size:14px;margin-top:10px;}
  .val-nots{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
  .val-nots span{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.04em;color:var(--text-dark-dim);border:1px dashed var(--line-dark);border-radius:8px;padding:8px 12px;}

  /* ---------- Why it matters ---------- */
  .decisions{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px;}
  .decisions .d{font-family:'Newsreader',serif;font-size:clamp(1.3rem,3vw,2.1rem);color:var(--text-light-dim);transition:color .3s;}
  .decisions .d:hover{color:var(--text-light);}
  .decisions .d.key{color:#0a84b8;}

  /* ---------- Portal ---------- */
  #portal-section{background:radial-gradient(1000px 700px at 50% 120%,#10233a,var(--ink) 70%);text-align:center;overflow:hidden;position:relative;}
  #portalCanvas{position:absolute;inset:0;width:100%;height:100%;opacity:.5;}
  #portal-section .wrap{position:relative;z-index:2;}
  .portal-title{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(2.2rem,5.6vw,4.2rem);line-height:1.05;letter-spacing:-.02em;margin:0 auto 24px;max-width:18ch;}
  .portal-cap{list-style:none;padding:0;margin:40px auto;max-width:640px;text-align:left;display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;}
  @media(max-width:640px){.portal-cap{grid-template-columns:1fr;}}
  .portal-cap li{display:flex;gap:12px;align-items:flex-start;color:var(--text-dark-dim);font-size:15px;}
  .portal-cap li::before{content:"";flex:0 0 auto;width:7px;height:7px;margin-top:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);}
  .portal-big{margin-top:14px;}
  .portal-big .btn{font-size:16px;padding:19px 42px;}
  .portal-note{margin-top:22px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.08em;color:var(--text-dark-dim);}

  /* ---------- Footer ---------- */
  footer{background:var(--ink-2);border-top:1px solid var(--line-dark);padding:70px 0 46px;}
  .foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;}
  .foot-brand{max-width:34ch;}
  .foot-brand .brand{font-size:22px;margin-bottom:14px;}
  .foot-brand p{color:var(--text-dark-dim);font-size:14px;}
  .foot-links{display:flex;gap:60px;flex-wrap:wrap;}
  .foot-col h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dark-dim);margin:0 0 16px;}
  .foot-col a{display:block;color:var(--text-dark);text-decoration:none;font-size:14.5px;margin-bottom:11px;opacity:.85;transition:opacity .3s,color .3s;}
  .foot-col a:hover{opacity:1;color:var(--accent);}
  .foot-base{margin-top:52px;padding-top:24px;border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;color:var(--text-dark-dim);font-size:12.5px;}
  .tm{font-size:.62em;vertical-align:super;opacity:.8;}

  @media(prefers-reduced-motion:reduce){
    *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important;}
    .hero-title .word{opacity:1!important;transform:none!important;filter:none!important;}
    .rise{opacity:1!important;transform:none!important;}
  }

/* ============================================================
   INTERIOR PAGES — shared page hero
   ============================================================ */
.page-hero{position:relative;overflow:hidden;padding:150px 0 70px;background:radial-gradient(1100px 640px at 50% -5%,#101827,var(--ink) 72%);}
.page-hero .wrap{position:relative;z-index:2;}
.page-hero .eyebrow{position:static;animation:none;opacity:1;}
.page-hero h1{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(2.4rem,5.4vw,4rem);line-height:1.04;letter-spacing:-.02em;margin:16px 0 0;max-width:20ch;}
.page-hero .dek{margin-top:26px;max-width:64ch;color:var(--text-dark-dim);font-size:clamp(1.05rem,1.6vw,1.28rem);}
.page-hero .dek .em{color:var(--text-dark);font-style:italic;font-family:'Newsreader',serif;}

/* breadcrumb */
.crumbs{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dark-dim);}
.crumbs a{color:var(--text-dark-dim);text-decoration:none;}
.crumbs a:hover{color:var(--accent);}
.crumbs span{margin:0 8px;opacity:.5;}

/* generic feature grid */
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px;}
@media(max-width:820px){.feature-grid{grid-template-columns:1fr;}}
.feature{border:1px solid var(--line-light);border-radius:18px;padding:30px;background:var(--paper-2);transition:transform .35s var(--ease),border-color .35s;}
.feature:hover{transform:translateY(-3px);border-color:rgba(10,132,184,.4);}
.band-dark .feature{background:rgba(255,255,255,.02);border-color:var(--line-dark);}
.feature .fi{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#0a84b8;margin-bottom:14px;}
.band-dark .feature .fi{color:var(--accent);}
.feature h3{font-family:'Newsreader',serif;font-weight:400;font-size:1.5rem;margin:0 0 10px;}
.feature p{margin:0;color:var(--text-light-dim);font-size:15px;}
.band-dark .feature p{color:var(--text-dark-dim);}

/* driver cards (four canonical drivers) */
.drivers{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:50px;}
@media(max-width:820px){.drivers{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.drivers{grid-template-columns:1fr;}}
.driver{border:1px solid var(--line-dark);border-radius:16px;padding:24px;background:linear-gradient(180deg,rgba(95,211,255,.06),transparent);}
.driver .dn{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--accent);letter-spacing:.1em;}
.driver h4{font-family:'Newsreader',serif;font-weight:400;font-size:1.3rem;margin:10px 0 8px;color:var(--text-dark);}
.driver p{margin:0;font-size:14px;color:var(--text-dark-dim);}

/* temporal-states row */
.states-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:46px;border-radius:14px;overflow:hidden;border:1px solid var(--line-dark);}
@media(max-width:820px){.states-row{grid-template-columns:repeat(2,1fr);}}
.states-row .st{padding:26px 22px;background:var(--ink-2);}
.states-row .st .lab{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;}
.states-row .st.s1 .lab{color:#28c76f;} .states-row .st.s2 .lab{color:var(--accent);}
.states-row .st.s3 .lab{color:var(--accent-2);} .states-row .st.s4 .lab{color:#ff6b6b;}
.states-row .st p{margin:0;font-size:14px;color:var(--text-dark-dim);}

/* ============================================================
   RESEARCH HUB
   ============================================================ */
.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:52px;}
@media(max-width:820px){.research-grid{grid-template-columns:1fr;}}
.paper-card{display:block;text-decoration:none;border:1px solid var(--line-light);border-radius:20px;padding:34px;background:var(--paper-2);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s;position:relative;overflow:hidden;}
.paper-card:hover{transform:translateY(-4px);border-color:rgba(10,132,184,.45);box-shadow:0 20px 50px rgba(10,20,40,.08);}
.paper-card .ptag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#0a84b8;}
.paper-card h3{font-family:'Newsreader',serif;font-weight:400;font-size:1.7rem;line-height:1.15;margin:14px 0 12px;color:var(--text-light);}
.paper-card p{margin:0 0 18px;color:var(--text-light-dim);font-size:15px;}
.paper-card .pmeta{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.05em;color:var(--text-light-dim);display:flex;gap:14px;flex-wrap:wrap;}
.paper-card .pmore{margin-top:16px;color:#0a84b8;font-size:14px;font-weight:500;}
.paper-card.upcoming{opacity:.72;}
.paper-card.upcoming h3{color:var(--text-light-dim);}

/* ============================================================
   PAPER READING PAGE (prose)
   ============================================================ */
.paper-hero{position:relative;overflow:hidden;padding:140px 0 60px;background:radial-gradient(1000px 560px at 50% -10%,#101a2b,var(--ink) 72%);}
.paper-hero h1{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(2.1rem,4.6vw,3.4rem);line-height:1.08;letter-spacing:-.02em;margin:18px 0 0;max-width:24ch;}
.paper-hero .sub{margin-top:20px;max-width:60ch;color:var(--text-dark-dim);font-size:1.12rem;}
.paper-hero .pmeta{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px;}
.paper-hero .pmeta span{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.06em;color:var(--text-dark-dim);border:1px solid var(--line-dark);border-radius:999px;padding:7px 13px;}

.disclosure{margin:0 0 8px;border:1px solid rgba(255,180,84,.35);background:linear-gradient(180deg,rgba(255,180,84,.08),transparent);border-radius:14px;padding:18px 22px;color:var(--text-light-dim);font-size:13.5px;}
.disclosure b{color:var(--accent-2);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:8px;}
.band-light .disclosure{color:var(--text-light-dim);}
.disclosure.amber b{color:#b5730f;}

.incomplete-note{margin:26px 0;border-left:3px solid var(--accent-2);background:rgba(255,180,84,.08);padding:16px 20px;border-radius:0 10px 10px 0;font-size:14px;color:var(--text-light-dim);}
.incomplete-note b{color:#b5730f;}

.paper-body{background:var(--paper);color:var(--text-light);padding:66px 0 100px;}
.paper-layout{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start;}
@media(max-width:920px){.paper-layout{grid-template-columns:1fr;gap:0;}}
.paper-toc{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto;font-size:13px;line-height:1.5;}
@media(max-width:920px){.paper-toc{display:none;}}
.paper-toc .tt{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-light-dim);margin-bottom:14px;}
.paper-toc a{display:block;color:var(--text-light-dim);text-decoration:none;padding:4px 0 4px 12px;border-left:1px solid var(--line-light);transition:color .25s,border-color .25s;}
.paper-toc a:hover,.paper-toc a.active{color:#0a84b8;border-color:#0a84b8;}
.paper-toc a.lvl3{padding-left:24px;font-size:12px;opacity:.85;}

.prose{max-width:72ch;font-size:16.5px;line-height:1.75;color:#262c38;}
.prose p{margin:0 0 20px;}
.prose .paper-h2{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.15;letter-spacing:-.01em;color:var(--text-light);margin:56px 0 18px;padding-top:14px;border-top:1px solid var(--line-light);scroll-margin-top:90px;}
.prose .paper-h2:first-child{border-top:none;margin-top:0;padding-top:0;}
.prose .paper-h3{font-family:'Newsreader',serif;font-weight:500;font-size:1.35rem;color:var(--text-light);margin:38px 0 12px;scroll-margin-top:90px;}
.prose .paper-caption{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.03em;color:var(--text-light-dim);margin:10px 0 26px;}
.prose .paper-list{margin:0 0 22px;padding-left:22px;}
.prose .paper-list li{margin:0 0 9px;}
.prose .paper-table{margin:0 0 26px;overflow-x:auto;border:1px solid var(--line-light);border-radius:12px;background:#fbfaf8;}
.prose .paper-table pre{margin:0;padding:20px 22px;font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.6;color:#2a3140;white-space:pre;}
.prose a{color:#0a84b8;}
.paper-foot{margin-top:60px;padding-top:26px;border-top:1px solid var(--line-light);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;}

/* ============================================================
   RECONCILED FIGURES (validation)
   ============================================================ */
.figrows{margin-top:40px;border-top:1px solid var(--line-dark);}
.figrows .fr{display:flex;gap:24px;padding:14px 0;border-bottom:1px solid var(--line-dark);align-items:baseline;}
.figrows .fk{flex:0 0 38%;font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dark-dim);}
.figrows .fv{flex:1;color:var(--text-dark);font-size:15.5px;}
.band-light .figrows{border-color:var(--line-light);}
.band-light .figrows .fr{border-color:var(--line-light);}
.band-light .figrows .fk{color:var(--text-light-dim);}
.band-light .figrows .fv{color:var(--text-light);}
@media(max-width:640px){.figrows .fr{flex-direction:column;gap:4px;}.figrows .fk{flex-basis:auto;}}

/* ============================================================
   PAPER PUBLICATION HEADER + DOC ACTIONS
   ============================================================ */
.pub-header{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px 26px;padding:18px 0;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);}
.pub-header .pf{display:flex;flex-direction:column;gap:3px;}
.pub-header .pf .pl{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dark-dim);}
.pub-header .pf .pv{font-size:14px;color:var(--text-dark);}
.doc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.doc-actions .btn{font-size:13.5px;padding:12px 22px;}

/* footer IP notice */
.foot-ip{margin-top:40px;padding-top:20px;border-top:1px solid var(--line-dark);color:var(--text-dark-dim);font-size:12px;line-height:1.6;max-width:110ch;}
/* research card secondary actions */
.paper-card .pactions{display:flex;gap:16px;margin-top:14px;align-items:center;}
.paper-card .pactions .pmore{margin-top:0;}
.paper-card .pdf{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.05em;color:var(--text-light-dim);text-decoration:none;border:1px solid var(--line-light);padding:6px 12px;border-radius:999px;transition:all .25s;}
.paper-card .pdf:hover{border-color:#0a84b8;color:#0a84b8;}
.paper-card h3 a{color:inherit;text-decoration:none;}
.paper-card:hover h3 a{color:#0a84b8;}

/* applications status colors + legend */
.feature .fi.done{color:#0b7a44;}
.feature .fi.active{color:#0a84b8;}
.feature .fi.studied{color:#8a6d1f;}
.feature .fi.cap{color:var(--text-light-dim);}
.status-legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin:30px 0 0;}
.status-legend .sl{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-light-dim);}
.status-legend .sl i{width:9px;height:9px;border-radius:50%;display:inline-block;}
.status-legend .sl.done i{background:#0b7a44;} .status-legend .sl.active i{background:#0a84b8;}
.status-legend .sl.studied i{background:#8a6d1f;} .status-legend .sl.cap i{background:#9aa3b8;}

/* homepage minimal footer */
.foot-min{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.foot-contact{color:var(--text-dark-dim);text-decoration:none;font-size:14px;}
.foot-contact:hover{color:var(--accent);}
