/* POLARYN new look layer. Loaded last on every page. Structure and content stay in each page. */
:root{
  --bg:#030816;--bg2:#020611;--bg3:#050d22;
  --navy:#1E5BD8;--accent:#39B6FF;--light:#CFE9FF;
  --card:rgba(20,60,150,.14);--card2:rgba(20,60,150,.2);
  --border:rgba(90,160,255,.22);--border2:rgba(90,160,255,.4);
  --glow-sm:0 0 24px rgba(40,140,255,.35);--glow-md:0 0 50px rgba(30,110,240,.4);--glow-lg:0 0 80px rgba(57,182,255,.55);
  --t1:#ffffff;--t2:#C9D8EE;--t3:#8FA6C6;
  --dark:#030816;--dark2:#061132;--dark3:#0a1a40;
  --line:rgba(120,170,255,.18);--txt:#E7EEF5;--sub:#9FB3C8;
  --text:#E8EEF8;--muted:#8FA6C6;--panel:#0a1a40;--panel-2:#0c1f4d;
  --disp:'Saira','Arial Black',Arial,sans-serif;
  --nlblue:#1E7BFF;
}
body{background:var(--bg);font-family:Arial,Helvetica,sans-serif}
body.nl-pad{padding-top:74px}

/* display type */
h1,h2,.ttl,.h-title,.con-headline,.hero-h1,.screen-title,.access-title,.vault-tagline,.psc-ttl{
  font-family:var(--disp)!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.005em!important;line-height:1.06!important}
h1{font-size:clamp(32px,5vw,64px)}
h2,.ttl,.con-headline,.access-title,.psc-ttl{font-size:clamp(26px,3.6vw,46px)}
h1 em,h2 em,.hero-h1 em,.nl-cy{font-style:normal;background:linear-gradient(180deg,#7FD8FF 0%,#2AA3FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.h-title{background:none!important;-webkit-text-fill-color:#fff!important;color:#fff!important;font-size:clamp(34px,5.4vw,74px)!important;text-align:left}
.h-title span{display:block}
.h-title .nl-cy{-webkit-text-fill-color:transparent!important}
.lbl,.eyebrow,.k-txt{color:var(--accent)!important;letter-spacing:.3em!important;font-weight:700}
.k-line{background:linear-gradient(90deg,transparent,var(--accent))!important}

/* buttons: glow primary */
.btn-cta,.btn-hero,.btn-diag,.btn-primary,.nav-cta,.btn-request,.rcta,.bigbtn,.result-cta,.vault-open-btn,.btn.btn-primary{
  background:linear-gradient(180deg,#2F92FF 0%,#0B6AF0 100%)!important;color:#fff!important;
  border:1px solid rgba(140,210,255,.7)!important;border-radius:6px!important;
  box-shadow:0 0 22px rgba(40,140,255,.55),inset 0 1px 0 rgba(255,255,255,.3)!important;font-weight:700}
.btn-cta:hover,.btn-hero:hover,.btn-diag:hover,.btn-primary:hover,.nav-cta:hover,.btn-request:hover,.rcta:hover,.bigbtn:hover{
  box-shadow:0 0 40px rgba(60,170,255,.95),inset 0 1px 0 rgba(255,255,255,.4)!important;transform:translateY(-1px)}
.btn-out,.btn-sec,.btn-outline{background:rgba(10,22,52,.45)!important;color:#DDEBFF!important;border:1px solid rgba(140,190,255,.45)!important;border-radius:6px!important}
.btn-out:hover,.btn-sec:hover,.btn-outline:hover{background:rgba(30,123,255,.18)!important;border-color:var(--accent)!important}

/* cards */
.vault-tier,.tcard,.cost-card,.dept,.role,.why-card,.diff-col{border-radius:12px}
.vault-tier,.tcard,.dept,.why-card,.diff-col{box-shadow:0 0 0 1px rgba(90,160,255,.06),0 18px 50px rgba(0,0,0,.35)}

/* ---------- unified nav ---------- */
#nav.nl-nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:74px;padding:0 max(24px,calc((100vw - 1240px)/2))!important;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  background:linear-gradient(180deg,rgba(3,8,22,.92),rgba(3,8,22,.6))!important;backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line)!important;box-shadow:none;transition:background .3s}
#nav.nl-nav.solid{background:rgba(3,8,22,.96)!important;box-shadow:0 8px 40px rgba(0,0,0,.5)}
.nl-logo{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;flex:none}
.nl-logo svg{width:30px;height:34px}
.nl-logo b{font-family:Arial,sans-serif;font-size:15px;letter-spacing:.42em;font-weight:700}
.nl-links{display:flex;gap:24px;list-style:none;margin:0;padding:0;white-space:nowrap}
.nl-links a{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--t3);text-decoration:none;transition:color .2s}
.nl-links a:hover,.nl-links a.on{color:#fff}
.nl-r{display:flex;align-items:center;gap:14px;flex:none}
.nl-login{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--t2);text-decoration:none;white-space:nowrap}
.nl-login:hover{color:#fff}
.nl-nav .nl-join{display:inline-flex;align-items:center;padding:12px 20px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;font-family:Arial,sans-serif}
#nav .ham{display:flex;align-items:center;gap:9px;background:none;border:1px solid var(--border2);border-radius:6px;cursor:pointer;padding:10px 14px;color:#fff;font-family:Arial,sans-serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;width:auto;height:auto}
#nav .ham .ham-bars{display:flex;flex-direction:column;gap:3px}
#nav .ham span{display:block;width:16px;height:1.5px;background:#fff}
#nav .ham .ham-bars span{margin:0}
@media(max-width:1100px){.nl-links{display:none}}
@media(max-width:640px){.nl-login{display:none}.nl-nav .nl-join{padding:10px 12px;letter-spacing:.1em}.nl-logo b{letter-spacing:.3em}}

/* drawer */
#mob-backdrop{display:none;position:fixed;inset:0;background:rgba(1,4,12,.65);z-index:1090}
#mob-backdrop.open{display:block}
#mob{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:400px!important;max-width:90vw!important;height:auto!important;
  background:linear-gradient(180deg,#061132,#030816)!important;border-left:1px solid var(--border2)!important;z-index:1100!important;
  transform:translateX(100%)!important;transition:transform .35s cubic-bezier(.4,0,.2,1)!important;display:flex!important;flex-direction:column!important;
  overflow-y:auto;padding:0!important;opacity:1!important;visibility:visible!important}
#mob.open{transform:translateX(0)!important}
#mob .mob-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line)}
#mob .mob-head .logo-n{font-size:13px;letter-spacing:.3em;color:#fff;font-weight:700}
#mob .mob-close{position:static!important;background:none;border:1px solid var(--border2);color:#fff;width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:14px}
#mob .mob-body{padding:10px 14px 20px;flex:1}
#mob .mob-body a{display:block!important;text-decoration:none;color:#fff!important;font-size:15px!important;font-weight:700;padding:14px 12px!important;border-radius:6px;background:none!important;letter-spacing:.02em;text-transform:none!important;margin:0!important;border:0!important}
#mob .mob-body a:hover{background:rgba(57,182,255,.12)!important}
#mob .mob-group{margin-top:8px;padding:14px 12px 4px;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);font-weight:700}
#mob .mob-sub{border-left:1px solid var(--line);margin-left:14px}
#mob .mob-sub a{font-size:13.5px!important;font-weight:400!important;color:var(--t2)!important}
#mob .tag{font-size:9px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--accent);color:var(--accent);padding:2px 7px;border-radius:20px;margin-left:6px}
#mob .mob-foot{padding:18px 24px;border-top:1px solid var(--line);display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#mob .mob-foot a{text-decoration:none;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--t2)}
#mob .mob-foot .nl-join{padding:12px 18px}

/* ---------- home hero ---------- */
#hero{background:radial-gradient(1200px 600px at 75% 5%,rgba(30,90,200,.35),transparent 60%),linear-gradient(180deg,#030816 0%,#061132 66%,#040A1E 100%)!important;
  justify-content:flex-start!important;align-items:flex-start!important;min-height:980px!important;padding:150px max(28px,calc((100vw - 1180px)/2 + 28px)) 200px!important}
#hero .nl-earth{position:absolute;left:0;right:0;bottom:0;height:480px;background-size:cover;background-position:center bottom;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 36%);mask-image:linear-gradient(180deg,transparent 0%,#000 36%);z-index:0}
#hero .nl-earth:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,8,22,.9) 0%,rgba(3,8,22,.5) 42%,rgba(3,8,22,0) 74%),linear-gradient(180deg,rgba(3,8,22,0) 60%,rgba(3,8,22,.92) 100%)}
#hero canvas{z-index:0}
#hero .hero-inner{position:relative;z-index:3;text-align:left!important;margin:0!important;max-width:720px}
#hero .h-kick{justify-content:flex-start!important}
#hero .k-line{display:none}
#hero .h-sub{color:var(--accent)!important;letter-spacing:.24em!important;font-weight:700}
#hero .h-divider{margin-left:0!important;margin-right:auto!important}
#hero .h-body{margin:0 0 40px!important;max-width:600px!important;color:#D5E3F8!important}
#hero .h-acts{justify-content:flex-start!important}
#hero .scroll-h{display:none!important}
.nl-tagline{position:absolute;right:max(28px,calc((100vw - 1180px)/2 + 28px));top:120px;text-align:right;font-size:11px;letter-spacing:.34em;color:#B9CBEA;line-height:1.9;z-index:3}
.nl-tagline i{display:block;width:34px;height:1px;background:#B9CBEA;margin:10px 0 0 auto}
.nl-iconrow{position:absolute;left:0;right:0;bottom:44px;z-index:3}
.nl-iconrow .g{display:grid;grid-template-columns:repeat(4,1fr);max-width:900px;margin:0 auto}
.nl-ic{display:flex;flex-direction:column;align-items:center;gap:12px;padding:6px 10px;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:#DDE9FA;border-right:1px solid rgba(160,190,255,.22)}
.nl-ic:last-child{border-right:0}
.nl-ico{width:50px;height:50px;stroke:#39B6FF;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(57,182,255,.55))}
@media(max-width:760px){#hero{padding-bottom:260px!important}.nl-iconrow .g{grid-template-columns:repeat(2,1fr);row-gap:22px}.nl-ic:nth-child(2){border-right:0}.nl-tagline{display:none}}

/* lockup band */
.nl-lock{padding:64px 24px 34px;text-align:center;background:linear-gradient(180deg,#040A1E,#030816)}
.nl-lock .t{font-size:clamp(20px,3vw,30px);letter-spacing:.3em;color:#fff;font-weight:700}
.nl-lock .t span{font-family:var(--disp);font-weight:800;letter-spacing:.3em;background:linear-gradient(180deg,#7FD8FF,#1FA0FF);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.nl-lock .s{margin-top:10px;font-size:12px;letter-spacing:.38em;color:var(--t3);text-transform:uppercase}

/* VALUEFLOW section image glow */
#valueflow{background:radial-gradient(900px 500px at 15% 40%,rgba(30,100,220,.22),transparent 65%),linear-gradient(180deg,#061132,#050D26)}
#valueflow .vf-shot{box-shadow:0 0 60px rgba(30,123,255,.28),0 30px 80px rgba(0,0,0,.6)!important;border-color:rgba(127,216,255,.28)!important}
#valueflow .vf-badge,.vf-badge{background:radial-gradient(circle at 30% 25%,#1B4AA8,#0B2260)!important;border-color:rgba(127,216,255,.35)!important}

/* photo band */
.nl-photos{padding:100px max(24px,calc((100vw - 1180px)/2 + 24px));background:linear-gradient(180deg,#050D26,#030816)}
.nl-photos .hd{max-width:640px;margin-bottom:38px}
.nl-photos .row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.nl-photos figure{border-radius:12px;overflow:hidden;border:1px solid rgba(127,216,255,.25);box-shadow:0 0 40px rgba(30,123,255,.2);aspect-ratio:4/5;background:#061132}
.nl-photos figure img{width:100%;height:100%;object-fit:cover;display:block}
.nl-photos figure:nth-child(2){transform:translateY(24px)}.nl-photos figure:nth-child(4){transform:translateY(24px)}
@media(max-width:900px){.nl-photos .row{grid-template-columns:repeat(2,1fr)}.nl-photos figure:nth-child(n){transform:none}}

/* earth backdrops on closing sections */
#contact,#access{background-image:linear-gradient(180deg,rgba(3,8,22,.86),rgba(3,8,22,.7)),url(/assets/img/net_earth.jpg)!important;background-size:cover!important;background-position:center!important}

/* ---------- unified footer (sitemap) ---------- */
.nl-foot{background:linear-gradient(180deg,#030816,#020611);border-top:1px solid var(--line);padding:64px max(24px,calc((100vw - 1180px)/2 + 24px)) 40px}
.nl-foot .top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.nl-foot p{color:var(--t3);font-size:13px;line-height:1.7;margin-top:14px;max-width:320px}
.nl-foot h5{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.nl-foot ul{list-style:none;margin:0;padding:0}
.nl-foot li{margin-bottom:10px}
.nl-foot li a{color:var(--t2);text-decoration:none;font-size:13.5px}
.nl-foot li a:hover{color:#fff}
@media(max-width:820px){.nl-foot .top{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.nl-foot .top{grid-template-columns:1fr}}
footer{background:#020611!important;border-top:1px solid var(--line)!important}
footer a{color:var(--t2)}
footer .ft-top h5{color:var(--accent)!important}

/* page-level helpers for older standalone pages */
header .brand,header .nav-row{font-family:Arial,sans-serif}
.tab-nav-wrap{top:74px!important}
#mob.on{transform:translateX(0)!important}

#nav.nl-nav.nl-x .nl-links{display:none}
@media(min-width:1700px){#nav.nl-nav.nl-x .nl-links{display:flex}}
#hero .hero-inner{max-width:900px!important}
.h-title{font-size:clamp(32px,4.6vw,64px)!important}
#hero .nl-earth:after{background:linear-gradient(90deg,rgba(3,8,22,.94) 0%,rgba(3,8,22,.72) 46%,rgba(3,8,22,.1) 78%),linear-gradient(180deg,rgba(3,8,22,0) 55%,rgba(3,8,22,.92) 100%)!important}
#hero .btn-out{background:rgba(6,17,50,.7)!important;color:#fff!important}
@media(max-width:520px){.nl-nav .nl-join{display:none}#nav.nl-nav{padding:0 16px!important}}
body.nl-menu-open #chat-trigger,body.nl-menu-open #chat-widget{display:none!important}
