
:root{
  --c-bg:#030f22; --c-bg2:#061a35; --c-ink:#e8f1fb; --c-dim:rgba(232,241,251,.66);
  --c-navy:#002F68; --c-accent:#3fa9f5; --c-blue:#0082C9; --c-sky:#56B0D2; --c-lime:#A9CF38;
  --panel-bg:#0b2140; --panel-fg:#e8f1fb;
  --font-display:'Syne', sans-serif; --font-body:'Albert Sans', 'Helvetica Neue', sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--c-ink);background:var(--c-bg);line-height:1.7;font-weight:300;overflow-x:hidden;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--c-sky);text-decoration:none;}
a:hover{color:var(--c-lime);}
h1,h2,h3{font-family:var(--font-display);color:#fff;line-height:1.16;font-weight:700;}
::selection{background:var(--c-lime);color:#04122a;}

/* aurora atmosphere + grain */
.atmo{position:fixed;inset:0;z-index:0;pointer-events:none;}
.atmo::before{content:"";position:absolute;inset:-20%;
  background:
    radial-gradient(46% 38% at 78% 12%, rgba(0,130,201,.28), transparent 65%),
    radial-gradient(40% 34% at 12% 76%, rgba(169,207,56,.10), transparent 60%),
    radial-gradient(60% 50% at 50% 110%, rgba(0,47,104,.55), transparent 70%);
  animation:aurora 24s ease-in-out infinite alternate;}
@keyframes aurora{to{transform:translate3d(3%,-2%,0) scale(1.06);}}
.atmo::after{content:"";position:absolute;inset:0;opacity:.5;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.28'/%3E%3C/svg%3E");}

/* header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(3,15,34,.65);backdrop-filter:blur(16px);border-bottom:1px solid rgba(86,176,210,.14);}
.header-inner{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:32px;padding:14px 28px;}
.brand img{width:130px;height:auto;filter:brightness(0) invert(1);}
.main-nav{margin-inline-start:auto;}
.nav-list{display:flex;gap:4px;list-style:none;}
.nav-list a{display:block;padding:9px 15px;border-radius:10px;color:var(--c-dim);font-weight:400;font-size:.94rem;transition:all .2s;}
.nav-list a:hover{color:#fff;background:rgba(86,176,210,.12);}
.nav-list a[aria-current="page"]{color:#04122a;background:var(--c-lime);font-weight:600;}
.lang-switch{display:flex;gap:2px;list-style:none;border-inline-start:1px solid rgba(86,176,210,.2);padding-inline-start:16px;}
.lang-switch a{display:block;padding:7px 10px;font-size:.85rem;color:var(--c-dim);border-radius:8px;}
.lang-switch a:hover{color:#fff;background:rgba(86,176,210,.12);}
.nav-toggle{display:none;}

/* hero */
.hero{position:relative;z-index:1;min-height:92vh;display:grid;align-items:center;max-width:1320px;margin:0 auto;padding:60px 28px;}
.hero-canvas{position:absolute;inset:0;z-index:0;}
#dna-canvas{width:100%;height:100%;display:block;}
.hero-copy{position:relative;z-index:2;max-width:640px;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 18px;border-radius:99px;border:1px solid rgba(169,207,56,.4);color:var(--c-lime);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:26px;background:rgba(169,207,56,.06);}
.hero-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-lime);box-shadow:0 0 12px var(--c-lime);animation:pulse 2.4s infinite;}
@keyframes pulse{50%{opacity:.35;}}
.hero h1{font-size:clamp(1.9rem,4.2vw,3.4rem);letter-spacing:-.01em;text-wrap:balance;
  background:linear-gradient(100deg,#fff 30%,var(--c-sky) 70%,var(--c-lime));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.hero-copy>p{margin-top:24px;font-size:1.02rem;color:var(--c-dim);max-width:58ch;}
.hero-ctas{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap;}
html.js .reveal{opacity:0;transform:translateY(28px);animation:rise 1s cubic-bezier(.2,.7,.2,1) forwards;}
.reveal.d1{animation-delay:.15s}.reveal.d2{animation-delay:.3s}.reveal.d3{animation-delay:.5s}
@keyframes rise{to{opacity:1;transform:none;}}
.scroll-hint{position:absolute;bottom:26px;inset-inline-start:50%;transform:translateX(-50%);z-index:2;color:var(--c-dim);font-size:.75rem;letter-spacing:.3em;text-transform:uppercase;display:grid;justify-items:center;gap:8px;}
.scroll-hint::after{content:"";width:1px;height:34px;background:linear-gradient(var(--c-lime),transparent);animation:drip 1.8s infinite;}
@keyframes drip{from{transform:scaleY(0);transform-origin:top;}60%{transform:scaleY(1);}to{opacity:0;}}

/* buttons */
.btn-primary{display:inline-block;padding:14px 30px;border-radius:12px;background:var(--c-lime);color:#04122a;font-weight:700;font-size:.95rem;box-shadow:0 0 0 rgba(169,207,56,0);transition:all .25s;}
.btn-primary:hover{box-shadow:0 0 34px rgba(169,207,56,.45);transform:translateY(-2px);color:#04122a;}
.btn-outline{display:inline-block;padding:13px 28px;border-radius:12px;border:1px solid rgba(86,176,210,.5);color:#fff;font-weight:600;font-size:.95rem;transition:all .25s;background:rgba(86,176,210,.06);}
.btn-outline:hover{border-color:var(--c-lime);color:var(--c-lime);}
.cta-row{margin-top:26px;}

/* sections */
.section{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:72px 28px;}
.section-head{display:flex;align-items:baseline;gap:18px;margin-bottom:30px;}
.kicker{font-family:var(--font-display);font-size:.9rem;color:var(--c-lime);border:1px solid rgba(169,207,56,.35);border-radius:10px;padding:4px 12px;background:rgba(169,207,56,.06);}
.section-head h2{font-size:clamp(1.5rem,2.7vw,2.3rem);}
.prose p{margin-bottom:16px;max-width:75ch;color:var(--c-dim);}
.prose h2{font-size:1.4rem;margin:34px 0 12px;}
.prose h3{font-size:1.15rem;margin:26px 0 10px;color:var(--c-sky);}

/* glass cards */
.cards-band{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.value-flip{position:relative;border-radius:20px;padding:34px 28px;overflow:hidden;
  background:linear-gradient(150deg,rgba(86,176,210,.09),rgba(6,26,53,.65));
  border:1px solid rgba(86,176,210,.18);backdrop-filter:blur(8px);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s;}
.value-flip:hover{transform:translateY(-8px);border-color:rgba(169,207,56,.55);box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 40px rgba(169,207,56,.08) inset;}
.value-flip .pent{width:42px;height:42px;margin-bottom:18px;filter:drop-shadow(0 0 12px rgba(86,176,210,.6));}
.value-flip h3{font-size:1.25rem;margin-bottom:12px;}
.value-flip p{font-size:.94rem;color:var(--c-dim);}

/* who band */
.who{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:start;}

/* about */
.vcm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.vcm-card{border-radius:20px;padding:34px 28px;background:linear-gradient(160deg,rgba(0,90,170,.35),rgba(6,26,53,.8));border:1px solid rgba(86,176,210,.22);position:relative;overflow:hidden;}
.vcm-card::after{content:"";position:absolute;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(169,207,56,.18),transparent 70%);top:-80px;inset-inline-end:-70px;}
.vcm-card h3{font-size:1.3rem;margin-bottom:12px;color:var(--c-lime);}
.vcm-card p{font-size:.94rem;color:var(--c-dim);}
.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.value-card{border-radius:20px;padding:32px 28px;background:rgba(6,26,53,.6);border:1px solid rgba(86,176,210,.16);position:relative;transition:transform .3s,border-color .3s;}
.value-card:hover{transform:translateY(-6px);border-color:rgba(169,207,56,.5);}
.value-index{font-family:var(--font-display);font-size:2.4rem;color:rgba(86,176,210,.25);position:absolute;top:14px;inset-inline-end:22px;}
.value-card h3{font-size:1.2rem;margin-bottom:10px;color:var(--c-sky);}
.value-card p{font-size:.94rem;color:var(--c-dim);max-width:56ch;}
.members-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.member{text-align:center;}
.member-photo{border-radius:18px;overflow:hidden;aspect-ratio:1;background:#0b2140;border:1px solid rgba(86,176,210,.25);transition:transform .3s,border-color .3s,box-shadow .3s;}
.member:hover .member-photo{transform:translateY(-6px);border-color:var(--c-lime);box-shadow:0 20px 50px rgba(0,0,0,.5);}
.member-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);}
.member figcaption{margin-top:12px;display:grid;gap:2px;}
.member strong{font-family:var(--font-display);color:#fff;font-size:1rem;}
.member span{font-size:.84rem;color:var(--c-dim);}

/* capabilities */
.chain-figure{margin:30px 0;border-radius:20px;padding:30px;background:#eef5fb;border:1px solid rgba(86,176,210,.3);}
.chain-mobile{display:none;margin:0 auto;}
.tf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.tf-card{border-radius:20px;padding:32px 28px;background:rgba(6,26,53,.6);border:1px solid rgba(86,176,210,.16);border-inline-start:4px solid var(--c-sky);transition:transform .3s,border-color .3s;}
.tf-card:nth-child(2){border-inline-start-color:var(--c-lime);}
.tf-card:nth-child(3){border-inline-start-color:var(--c-accent);}
.tf-card:nth-child(4){border-inline-start-color:#7bdcb5;}
.tf-card:hover{transform:translateY(-6px);}
.tf-card h3{font-size:1.2rem;margin-bottom:10px;}
.tf-card p{font-size:.94rem;color:var(--c-dim);}

/* contact */
.contact-info{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border-radius:20px;padding:34px;background:linear-gradient(160deg,rgba(0,90,170,.35),rgba(6,26,53,.8));border:1px solid rgba(86,176,210,.22);}
.contact-info li{display:grid;gap:6px;}
.contact-info span{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c-lime);}
.contact-info a{color:#fff;}

/* legal */
.legal-prose .prose{border-radius:20px;padding:44px;background:rgba(6,26,53,.6);border:1px solid rgba(86,176,210,.16);}
.li-item{padding-inline-start:12px;}

/* page hero (inner) */
.page-hero{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:84px 28px 20px;}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.2rem);max-width:24ch;
  background:linear-gradient(100deg,#fff 30%,var(--c-sky) 75%,var(--c-lime));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.breadcrumb{font-size:.82rem;color:var(--c-dim);margin-bottom:16px;letter-spacing:.08em;}
.hero-rule{width:88px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--c-lime),var(--c-sky));margin-top:26px;box-shadow:0 0 18px rgba(169,207,56,.5);}

/* footer */
.site-footer{position:relative;z-index:1;margin-top:60px;background:rgba(2,10,24,.85);border-top:1px solid rgba(86,176,210,.15);}
.footer-inner{max-width:1320px;margin:0 auto;padding:56px 28px 30px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;}
.footer-brand img{filter:brightness(0) invert(1);opacity:.95;width:130px;}
.footer-contact{list-style:none;margin-top:20px;display:grid;gap:10px;font-size:.92rem;}
.footer-contact a,.footer-col a{color:var(--c-dim);}
.footer-contact a:hover,.footer-col a:hover{color:var(--c-lime);}
.footer-col h2{color:#fff;font-size:.95rem;font-family:var(--font-display);letter-spacing:.08em;margin-bottom:14px;}
.footer-col ul{list-style:none;display:grid;gap:9px;font-size:.92rem;}
.footer-social{display:flex !important;gap:12px;margin-top:16px;}
.footer-social a{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;border:1px solid rgba(86,176,210,.3);}
.footer-social a:hover{background:var(--c-lime);border-color:var(--c-lime);color:#04122a;}
.footer-legal{border-top:1px solid rgba(86,176,210,.12);max-width:1320px;margin:0 auto;padding:18px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:.85rem;color:var(--c-dim);}

/* reveal on scroll */
html.js .sr{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*90ms);}
html.js .sr.in{opacity:1;transform:none;}

/* responsive */
@media (max-width:1020px){
  .hero{min-height:0;padding:48px 20px 340px;}
  .hero-canvas{top:auto;height:360px;bottom:0;}
  .who,.cards-band,.vcm-grid,.values-grid,.tf-grid{grid-template-columns:1fr;}
  .members-grid{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .contact-info{grid-template-columns:1fr;}
  .nav-toggle{display:grid;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer;margin-inline-start:auto;}
  .nav-toggle span{width:24px;height:2.5px;border-radius:2px;background:#fff;transition:transform .25s,opacity .25s;}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}
  .nav-list{position:fixed;top:72px;inset-inline:0;background:#061a35;flex-direction:column;padding:18px;gap:4px;box-shadow:0 30px 60px rgba(0,0,0,.5);transform:translateY(-140%);transition:transform .3s;z-index:99;}
  body.nav-open .nav-list{transform:none;}
  .chain-desktop{display:none;}
  .chain-mobile{display:block;max-height:70vh;width:auto;}
  .legal-prose .prose{padding:26px;}
  .scroll-hint{display:none;}
}
@media (max-width:560px){.members-grid{grid-template-columns:1fr 1fr;gap:14px;}.header-inner{padding:12px 16px;gap:14px;}}

.skip-link{position:absolute;top:-48px;inset-inline-start:8px;z-index:200;padding:10px 18px;background:var(--c-accent,#005AAA);color:#fff;border-radius:0 0 8px 8px;transition:top .2s;}
.skip-link:focus{top:0;}
html.a11y-contrast{filter:contrast(1.35);}
html.a11y-grayscale{filter:grayscale(1);}
html.a11y-contrast.a11y-grayscale{filter:contrast(1.35) grayscale(1);}
html.a11y-links a{text-decoration:underline !important;text-underline-offset:3px;outline:1px dashed currentColor;outline-offset:2px;}
html.a11y-readable body,html.a11y-readable *{font-family:Arial,Helvetica,sans-serif !important;letter-spacing:.01em;}
html.a11y-nomotion *,html.a11y-nomotion *::before,html.a11y-nomotion *::after{animation-play-state:paused !important;transition:none !important;scroll-behavior:auto !important;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}}
:focus-visible{outline:3px solid var(--c-lime,#A9CF38);outline-offset:2px;border-radius:2px;}
.a11y-widget{position:fixed;bottom:22px;inset-inline-start:22px;z-index:120;}
.a11y-fab{width:52px;height:52px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;background:var(--c-accent,#005AAA);color:#fff;box-shadow:0 6px 24px rgba(0,47,104,.35);transition:transform .2s;}
.a11y-fab:hover{transform:scale(1.08);}
.a11y-panel{position:absolute;bottom:64px;inset-inline-start:0;width:min(300px,84vw);padding:18px;border-radius:16px;background:var(--panel-bg,#fff);color:var(--panel-fg,#0b2545);box-shadow:0 18px 60px rgba(0,20,50,.35);border:1px solid rgba(120,150,190,.25);}
.a11y-panel h2{font-size:1rem;margin:0 0 12px;}
.a11y-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;margin:2px 0;border:0;background:transparent;color:inherit;font:inherit;font-size:.92rem;border-radius:10px;cursor:pointer;text-align:start;}
.a11y-row:hover{background:rgba(0,90,170,.08);}
.a11y-dot{width:34px;height:18px;border-radius:99px;background:rgba(120,150,190,.35);position:relative;flex:none;transition:background .2s;}
.a11y-dot::after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s;}
.a11y-row[aria-pressed="true"] .a11y-dot{background:var(--c-lime,#A9CF38);}
.a11y-row[aria-pressed="true"] .a11y-dot::after{transform:translateX(16px);}
[dir="rtl"] .a11y-row[aria-pressed="true"] .a11y-dot::after{transform:translateX(-16px);}
.a11y-font-row{cursor:default;}
.a11y-font-btns{display:flex;gap:6px;}
.a11y-font-btns button{min-width:34px;padding:6px 8px;border-radius:8px;border:1px solid rgba(120,150,190,.4);background:transparent;color:inherit;cursor:pointer;font-weight:700;}
.a11y-font-btns button:hover{background:rgba(0,90,170,.1);}
.a11y-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:.85rem;}
.a11y-actions button{border:0;background:transparent;color:inherit;cursor:pointer;text-decoration:underline;font:inherit;font-size:.85rem;}
.a11y-actions a{color:var(--c-accent,#005AAA);}
.consent{position:fixed;inset-inline:0;bottom:0;z-index:130;padding:14px;display:flex;justify-content:center;}
.consent[hidden]{display:none;}
.consent-manage[hidden],.a11y-panel[hidden]{display:none;}
.consent-card{width:min(720px,96vw);background:var(--panel-bg,#fff);color:var(--panel-fg,#0b2545);border-radius:18px;padding:22px 24px;box-shadow:0 -6px 60px rgba(0,20,50,.35);border:1px solid rgba(120,150,190,.25);}
.consent-card h2{margin:0 0 6px;font-size:1.05rem;}
.consent-card>p{margin:0 0 14px;font-size:.92rem;line-height:1.55;}
.consent-card a{color:var(--c-accent,#005AAA);font-weight:600;}
.consent-actions{display:flex;gap:10px;flex-wrap:wrap;}
.consent-btn{padding:10px 20px;border-radius:99px;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;border:1.5px solid var(--c-accent,#005AAA);transition:transform .15s;}
.consent-btn:hover{transform:translateY(-1px);}
.consent-btn.ghost{background:transparent;color:var(--c-accent,#005AAA);}
.consent-btn.solid{background:var(--c-accent,#005AAA);color:#fff;margin-inline-start:auto;}
.consent-manage{margin:0 0 14px;border-top:1px solid rgba(120,150,190,.25);padding-top:12px;}
.consent-cat{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:8px 0;}
.consent-cat p{margin:2px 0 0;font-size:.82rem;opacity:.75;}
.consent-cat input[type=checkbox]{width:20px;height:20px;accent-color:var(--c-accent,#005AAA);margin-top:4px;}
.consent-always{color:var(--c-lime,#A9CF38);font-weight:900;font-size:1.1rem;}
.consent-reopen{border:0;background:transparent;color:inherit;opacity:.7;cursor:pointer;text-decoration:underline;font:inherit;font-size:.85rem;}
.consent-reopen:hover{opacity:1;}
@media (max-width:640px){.consent-btn.solid{margin-inline-start:0;}}
