/* NKOD.IA — shared styles for audience pages and the research story.
   Tokens, nav and footer mirror the homepage exactly. */
:root{
  --indigo:#002D5B;--indigo-deep:#00050F;--indigo-mid:#001430;
  --amber:#E69A00;--amber-dim:rgba(230,154,0,.12);--amber-border:rgba(230,154,0,.28);--amber-ink:#8A5C00;
  --white:#fff;--surface:#FCFCFD;--ink:#0A0C14;--ink-60:rgba(10,12,20,.62);--ink-35:rgba(10,12,20,.38);--line:rgba(0,45,91,.12);
  --white-55:rgba(255,255,255,.58);--white-35:rgba(255,255,255,.38);--white-08:rgba(255,255,255,.08);--white-06:rgba(255,255,255,.06);
  --serif:'Playfair Display',Georgia,serif;--sans:'Space Grotesk',system-ui,sans-serif;
  --shoowa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%23E69A00' stroke-opacity='.14'%3E%3Cpath d='M28 2 54 28 28 54 2 28Z'/%3E%3Cpath d='M28 14 42 28 28 42 14 28Z'/%3E%3C/g%3E%3Ccircle cx='28' cy='2' r='1.4' fill='%23E69A00' fill-opacity='.35'/%3E%3Ccircle cx='2' cy='28' r='1.4' fill='%23E69A00' fill-opacity='.35'/%3E%3C/svg%3E");
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--indigo-deep);color:var(--white);-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.6}
a{color:inherit;text-decoration:none}ul{list-style:none}
img{max-width:100%}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.container{width:100%;max-width:1260px;margin:0 auto;padding:0 80px}
.eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ey-line{width:32px;height:2px;background:var(--amber);flex-shrink:0}
.t-label{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.t-hero{font-family:var(--serif);font-size:clamp(36px,4.6vw,64px);font-weight:800;letter-spacing:-.03em;line-height:1.08}
.t-h2{font-family:var(--serif);font-size:clamp(26px,3vw,40px);font-weight:700;letter-spacing:-.025em;line-height:1.16}
.t-h3{font-family:var(--serif);font-size:clamp(17px,1.6vw,21px);font-weight:600;letter-spacing:-.012em;line-height:1.3}
.lead{font-size:clamp(16px,1.4vw,18px);line-height:1.75;color:var(--white-55);max-width:680px}
.light .lead{color:var(--ink-60)}
p+p{margin-top:14px}
/* buttons */
.btn-primary{display:inline-flex;align-items:center;min-height:52px;padding:0 32px;background:var(--amber);color:var(--indigo-deep);font-size:14px;font-weight:700;letter-spacing:.02em;border-radius:3px;transition:opacity .2s,transform .2s}
.btn-primary:hover{opacity:.9;transform:translateY(-1px)}
.btn-ghost{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border:1px solid rgba(255,255,255,.25);color:var(--white);font-size:14px;font-weight:600;border-radius:3px;transition:border-color .2s}
.btn-ghost:hover{border-color:rgba(255,255,255,.55)}
.light .btn-ghost{border-color:rgba(0,45,91,.25);color:var(--indigo)}
.light .btn-ghost:hover{background:rgba(0,45,91,.05)}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.arrow-link{font-size:14px;font-weight:600;color:var(--amber);border-bottom:1px solid var(--amber-border);padding-bottom:2px;display:inline-flex;gap:6px}
.light .arrow-link{color:var(--indigo);border-color:var(--line)}
/* nav (identical to homepage) */
.nav{position:fixed;top:0;left:0;right:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 80px;background:rgba(0,5,15,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--white-08);z-index:1000}
.nav-logo{display:flex;align-items:center;gap:14px}
.nav-logo img{width:80px;height:auto;flex-shrink:0;mix-blend-mode:screen}
.nav-logo-text{display:flex;flex-direction:column;gap:2px}
.nav-logo-name{font-family:var(--serif);font-size:18px;font-weight:700;letter-spacing:.02em;line-height:1}
.nav-logo-sub{font-size:9px;font-weight:600;color:var(--amber);letter-spacing:.2em;text-transform:uppercase;line-height:1}
.nav-links{display:flex;align-items:center;gap:40px}
.nav-links a{font-size:14px;font-weight:500;color:var(--white-55);transition:color .2s;letter-spacing:.01em}
.nav-links a:hover,.nav-links a.current{color:var(--white)}
.nav-links a,.nav-cta{white-space:nowrap}
.nav-cta{display:inline-flex;align-items:center;height:40px;padding:0 22px;background:var(--amber);color:var(--indigo-deep);font-size:13px;font-weight:700;letter-spacing:.02em;border-radius:3px}
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:0;padding:6px}
.nav-hamburger span{display:block;width:22px;height:1.5px;background:var(--white)}
.nav-lang{display:flex;align-items:center;gap:2px;margin-left:18px}
.nav-lang a{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--white-55);padding:6px}
.nav-lang a:hover{color:var(--white)}.nav-lang a.active{color:var(--amber)}
.nav-mobile{display:none}
.nav-mobile .m-lang{display:flex;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}
.nav-mobile .m-lang a{font-size:14px;font-weight:600;border-bottom:0;padding:4px 0}
.nav-mobile .m-lang a.active{color:var(--amber)}
@media (max-width:1440px){.nav{padding:0 40px}.nav-links{gap:24px}}
@media (max-width:1180px){
 .nav-links,.nav>.nav-cta{display:none}.nav-hamburger{display:flex}.nav-lang{margin-left:auto;margin-right:16px}
 .nav-mobile.open{display:flex;flex-direction:column;position:fixed;top:76px;left:0;right:0;background:rgba(0,5,15,.97);padding:24px;gap:20px;z-index:999;border-top:1px solid var(--white-08);max-height:calc(100vh - 76px);overflow:auto}
 .nav-mobile a{font-size:16px;font-weight:500;color:var(--white-55);padding:8px 0;border-bottom:1px solid var(--white-08)}
 .nav-mobile .nav-cta{display:inline-flex;width:fit-content;margin-top:8px;color:var(--indigo-deep);border-bottom:0;padding:0 22px}
}
/* audience switcher (FRIB-style pathways) */
.paths-bar{position:relative;margin-top:76px;background:var(--indigo-mid);border-bottom:1px solid var(--white-08)}
.paths-bar .container{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.paths-bar a{flex:0 0 auto;padding:16px 18px;font-size:13px;font-weight:600;color:var(--white-55);border-bottom:2px solid transparent;white-space:nowrap}
.paths-bar a:hover{color:var(--white)}
.paths-bar a[aria-current=page]{color:var(--white);border-bottom-color:var(--amber)}
.paths-bar .lbl{padding:16px 18px 16px 0;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--white-35);white-space:nowrap;align-self:center}
/* page hero */
.page-hero{position:relative;background:var(--indigo-deep);padding:96px 0 88px;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background-image:var(--shoowa);background-size:56px 56px;-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
.page-hero .container{position:relative}
.page-hero .t-hero{max-width:880px;margin-bottom:22px}
/* sections */
.section{padding:104px 0}
.section.dark{background:var(--indigo-deep)}
.section.mid{background:var(--indigo-mid)}
.section.indigo{background:var(--indigo)}
.section.light{background:var(--surface);color:var(--ink)}
.light .t-label{color:var(--amber-ink)}
.sec-head{max-width:760px;margin-bottom:52px}
.sec-head .t-h2{margin-bottom:16px}
/* key dates */
.dates{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.date{background:#fff;padding:28px 24px}
.date .when{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--indigo);line-height:1.15}
.date .what{font-size:14px;font-weight:600;margin:10px 0 6px}
.date p{font-size:14px;color:var(--ink-60);line-height:1.6}
.date.now{background:var(--indigo);color:#fff}.date.now .when{color:var(--amber)}.date.now p{color:var(--white-55)}
/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--white-08);border:1px solid var(--white-08)}
.card{background:var(--indigo-deep);padding:34px 30px;display:flex;flex-direction:column;gap:12px}
.mid .card{background:var(--indigo-mid)}
.card .num{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--amber)}
.card p{font-size:15px;color:var(--white-55);line-height:1.7}
.light .cards{background:var(--line);border-color:var(--line)}
.light .card{background:#fff}.light .card p{color:var(--ink-60)}.light .card .num{color:var(--amber-ink)}
/* two-column prose */
.split{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:start}
.prose p{font-size:16px;line-height:1.8;color:var(--white-55)}
.light .prose p{color:var(--ink-60)}
.checks li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid var(--white-08);font-size:15px;color:var(--white-55);line-height:1.6}
.checks li::before{content:"";position:absolute;left:4px;top:20px;width:9px;height:9px;transform:rotate(45deg);border:1.5px solid var(--amber)}
.light .checks li{border-color:var(--line);color:var(--ink-60)}
.checks li strong{color:var(--white);font-weight:600}.light .checks li strong{color:var(--ink)}
/* facts table */
.facts{border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:34% 66%;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.facts dt{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-35);padding-top:3px}
.facts dd{font-size:15px;color:var(--ink);line-height:1.6}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--amber-border);border-radius:3px;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--amber)}
.light .badge{color:var(--amber-ink);border-color:rgba(138,92,0,.35);background:#FFF8E8}
/* steps */
.steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.steps li{counter-increment:s;padding-top:20px;border-top:2px solid var(--amber)}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font-family:var(--serif);font-size:28px;font-weight:700;color:var(--amber);margin-bottom:8px}
.steps h3{font-size:17px;font-weight:600;margin-bottom:6px}
.steps p{font-size:14px;color:var(--white-55);line-height:1.65}
.light .steps p{color:var(--ink-60)}
/* closing CTA */
.close-cta{background:var(--amber);color:var(--indigo-deep);padding:88px 0}
.close-cta .t-h2{max-width:760px;margin-bottom:14px}
.close-cta p{max-width:640px;font-size:16px;line-height:1.7;color:rgba(0,5,15,.72)}
.close-cta .btn-primary{background:var(--indigo-deep);color:#fff}
.close-cta .btn-ghost{border-color:rgba(0,5,15,.3);color:var(--indigo-deep)}
/* other paths */
.others{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.others a{display:block;padding:24px;border:1px solid var(--white-08);border-radius:3px;transition:border-color .2s,background .2s}
.others a:hover{border-color:var(--amber-border);background:var(--white-06)}
.others .t-label{display:block;margin-bottom:8px}
.others strong{display:block;font-family:var(--serif);font-size:19px;font-weight:600;margin-bottom:6px}
.others span.d{font-size:14px;color:var(--white-55)}
.note{font-size:13px;color:var(--white-35);margin-top:18px}
.light .note{color:var(--ink-35)}
/* footer (identical to homepage) */
.footer{background:var(--indigo-deep);border-top:1px solid var(--white-08);padding:72px 80px 40px}
.footer-main{display:flex;gap:48px;flex-wrap:wrap;margin-bottom:48px}
.footer-brand{flex:0 0 300px}
.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.footer-logo img{width:56px;height:auto;mix-blend-mode:screen}
.footer-tagline{font-size:14px;color:var(--white-35);line-height:1.6;max-width:255px;margin-bottom:18px;font-style:italic}
.footer-motto{font-size:12px;color:var(--amber);letter-spacing:.06em;margin-bottom:18px}
.footer-contact{display:flex;flex-direction:column;gap:8px}
.footer-contact a{font-size:13px;color:var(--white-35)}
.footer-nav{display:flex;flex:1;gap:48px;flex-wrap:wrap}
.footer-col{min-width:120px}
.footer-col-title{font-size:13px;font-weight:600;margin-bottom:16px;letter-spacing:.02em}
.footer-col ul{display:flex;flex-direction:column;gap:10px}
.footer-col li a{font-size:13px;color:var(--white-35)}
.footer-col li a:hover,.footer-contact a:hover{color:var(--white-55)}
.footer-bottom{border-top:1px solid var(--white-08);padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.footer-copyright{font-size:12px;color:var(--white-35)}
.footer-langs{display:flex;gap:20px}
.footer-langs a{font-size:12px;font-weight:500;color:var(--white-35)}
.footer-langs a.active,.footer-langs a:hover{color:var(--white)}
/* reveal */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
.js .reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
/* responsive */
@media (max-width:1024px){.container{padding:0 48px}.footer{padding:64px 48px 36px}.split{grid-template-columns:1fr;gap:36px}.dates{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}}
@media (max-width:768px){
 .container{padding:0 24px}.nav{padding:0 24px}.nav-lang{margin-right:12px}
 .section{padding:72px 0}.page-hero{padding:64px 0 64px}
 .dates{grid-template-columns:1fr}
 .facts div{grid-template-columns:1fr;gap:4px}
 .footer{padding:48px 24px 32px}.footer-brand{flex:0 0 100%}.footer-bottom{flex-direction:column;align-items:flex-start}
 .close-cta{padding:64px 0}
}
