:root{
  --black:#000000;
  --deep:#011049;
  --dark:#03237F;
  --rich:#0337BF;
  --electric:#0156F7;
  --bright:#119DFB;
  --chrome-shadow:#8FA9C8;
  --chrome:#BDD8F4;
  --chrome-hi:#E2EEFA;
  --white:#FFFFFF;
  --muted:#9eb4d0;
  --panel:rgba(3,35,127,.18);
  --border:rgba(189,216,244,.22);
  --glow:0 0 28px rgba(17,157,251,.28);
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--black);
  color:var(--white);
  font-family:Inter,Arial,sans-serif;
  line-height:1.65;
  overflow-x:hidden;
}
body::selection{background:var(--electric);color:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(var(--max),calc(100% - 42px));margin-inline:auto}
.hidden-field{display:none!important}

.site-noise{
  position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}

.site-header{
  position:absolute;top:0;left:0;width:100%;z-index:50;
  border-bottom:1px solid rgba(189,216,244,.10);
}
.nav-shell{
  width:min(1260px,calc(100% - 38px));height:92px;margin:auto;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.brand{width:230px;height:72px;display:flex;align-items:center;overflow:hidden}
.brand img{width:220px;height:auto;object-fit:contain;filter:drop-shadow(0 0 12px rgba(17,157,251,.18))}
.nav-links{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:700;letter-spacing:.04em}
.nav-links>a:not(.nav-cta){position:relative;color:#dce8f6}
.nav-links>a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-8px;height:2px;width:0;background:var(--bright);box-shadow:0 0 10px var(--bright);transition:.25s}
.nav-links>a:not(.nav-cta):hover::after{width:100%}
.nav-cta{
  padding:12px 20px;border:1px solid rgba(17,157,251,.55);
  background:linear-gradient(135deg,var(--electric),var(--rich));
  box-shadow:0 0 24px rgba(1,86,247,.25);clip-path:polygon(0 0,92% 0,100% 28%,100% 100%,8% 100%,0 72%);
  text-transform:uppercase;
}
.menu-toggle{display:none;background:none;border:0;padding:8px}
.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px 0}

.hero{
  min-height:920px;position:relative;display:grid;place-items:center;overflow:hidden;
  background:
    radial-gradient(circle at 50% 28%,rgba(1,86,247,.22),transparent 32%),
    radial-gradient(circle at 78% 58%,rgba(3,55,191,.16),transparent 30%),
    linear-gradient(180deg,#000 0%,#02081d 47%,#000 100%);
  padding:145px 20px 105px;
}
.hero-grid{
  position:absolute;inset:0;opacity:.22;
  background-image:linear-gradient(rgba(17,157,251,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(17,157,251,.10) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(circle at center,#000 0%,transparent 72%);
}
.hero-grid::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 38%,rgba(17,157,251,.08) 48%,transparent 58%);
  animation:gridSweep 8s linear infinite;
}
@keyframes gridSweep{from{transform:translateX(-45%)}to{transform:translateX(45%)}}
.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.25}
.orb-one{width:420px;height:420px;background:#014df0;left:-220px;top:260px}
.orb-two{width:320px;height:320px;background:#119dfb;right:-170px;bottom:120px;opacity:.15}
.speed-lines{position:absolute;width:310px;height:200px;opacity:.5}
.speed-lines::before,.speed-lines::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 18px,rgba(17,157,251,.45) 18px 20px,transparent 20px 31px);clip-path:polygon(0 34%,100% 0,77% 70%,9% 100%)}
.speed-lines-left{left:-100px;top:43%;transform:rotate(-8deg)}
.speed-lines-right{right:-125px;top:33%;transform:rotate(180deg)}
.hero-inner{position:relative;z-index:4;text-align:center;max-width:970px;margin:auto}
.hero-logo-wrap{width:min(600px,80vw);margin:0 auto 6px;position:relative}
.hero-logo-halo{position:absolute;inset:20% 12%;background:#0156f7;filter:blur(55px);opacity:.22;border-radius:50%}
.hero-logo{position:relative;z-index:2;width:100%;filter:drop-shadow(0 0 16px rgba(17,157,251,.22))}
.eyebrow{
  margin:0 0 12px;color:var(--bright);font-family:Rajdhani,Inter,sans-serif;font-weight:700;
  letter-spacing:.19em;font-size:14px;text-transform:uppercase;
}
.hero h1,.section h2,.closing-cta h2{
  margin:0;font-family:Rajdhani,Inter,sans-serif;line-height:.96;letter-spacing:-.03em;font-weight:700;
}
.hero h1{font-size:clamp(50px,7vw,92px);text-transform:uppercase}
.hero h1 span{
  background:linear-gradient(180deg,#fff 0%,#bdd8f4 36%,#119dfb 70%,#0156f7 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 40px rgba(17,157,251,.18);
}
.hero-copy{max-width:790px;margin:26px auto 31px;color:#bdcce0;font-size:17px;line-height:1.8}
.primary-button{
  display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:178px;padding:15px 22px;
  color:#fff;font-size:13px;font-weight:800;letter-spacing:.08em;
  border:1px solid rgba(189,216,244,.35);background:linear-gradient(135deg,#0156f7 0%,#0337bf 82%);
  box-shadow:0 0 30px rgba(1,86,247,.25),inset 0 1px 0 rgba(255,255,255,.18);
  clip-path:polygon(0 0,92% 0,100% 28%,100% 100%,8% 100%,0 72%);transition:.25s;
}
.primary-button:hover{transform:translateY(-2px);box-shadow:0 0 40px rgba(17,157,251,.38),inset 0 1px 0 rgba(255,255,255,.22)}
.primary-button b{font-size:18px;font-weight:400}
.hero-bottom-line{position:absolute;bottom:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--electric),var(--chrome),var(--electric),transparent);box-shadow:0 0 18px var(--electric)}

.section{padding:118px 0;position:relative}
.approach-section{background:linear-gradient(180deg,#000,#020616 55%,#000);overflow:hidden}
.section-circuit{
  position:absolute;right:-60px;top:70px;width:420px;height:420px;opacity:.13;
  background:
    linear-gradient(90deg,transparent 49%,var(--bright) 49% 50%,transparent 50%),
    linear-gradient(transparent 49%,var(--bright) 49% 50%,transparent 50%);
  background-size:54px 54px;transform:rotate(45deg);mask-image:linear-gradient(90deg,transparent,#000);
}
.approach-layout{display:grid;grid-template-columns:260px 1fr;gap:88px;align-items:start}
.section-kicker{padding-top:8px;display:flex;align-items:center;gap:14px}
.section-kicker p{margin:0;color:var(--bright);font:700 14px Rajdhani,Inter,sans-serif;letter-spacing:.17em}
.kicker-line{height:2px;width:45px;background:var(--bright);box-shadow:0 0 12px var(--bright)}
.approach-copy{max-width:800px}
.approach-copy h2,.section-heading h2,.story-header h2,.careers-intro h2,.contact-intro h2{
  font-size:clamp(40px,5vw,66px);margin-bottom:28px;
}
.approach-copy>p{font-size:17px;color:#bbc9dc;margin:0}
.pull-quote{
  margin-top:45px;padding:26px 30px;border-left:2px solid var(--bright);
  background:linear-gradient(90deg,rgba(3,55,191,.20),transparent);position:relative;
}
.pull-quote p{margin:0;font:600 clamp(20px,2.3vw,29px)/1.4 Rajdhani,Inter,sans-serif;color:#eef7ff}
.quote-mark{position:absolute;right:20px;top:-18px;font-size:75px;line-height:1;color:rgba(17,157,251,.18)}

.practices-section{
  background:
  radial-gradient(circle at 50% 18%,rgba(3,55,191,.15),transparent 32%),
  linear-gradient(180deg,#000,#010516,#000);
}
.section-heading.centered{text-align:center;max-width:920px;margin:0 auto}
.section-heading>p:not(.eyebrow){color:#aebed3;font-size:17px}
.support-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:62px}
.support-card{
  min-height:335px;padding:34px 30px 30px;position:relative;overflow:hidden;
  background:linear-gradient(155deg,rgba(3,35,127,.40),rgba(0,0,0,.86) 62%);
  border:1px solid rgba(143,169,200,.23);
  clip-path:polygon(0 0,92% 0,100% 8%,100% 100%,8% 100%,0 92%);
  transition:.3s;
}
.support-card::before{
  content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0,rgba(17,157,251,.18),transparent 35%);
  pointer-events:none;
}
.support-card:hover{transform:translateY(-6px);border-color:rgba(17,157,251,.45);box-shadow:0 12px 50px rgba(1,86,247,.14)}
.card-topline{position:absolute;top:0;left:0;width:58%;height:2px;background:linear-gradient(90deg,var(--bright),transparent);box-shadow:0 0 12px var(--bright)}
.icon-shell{
  width:66px;height:66px;display:grid;place-items:center;margin-bottom:34px;
  background:linear-gradient(145deg,rgba(1,86,247,.20),rgba(17,157,251,.05));
  border:1px solid rgba(17,157,251,.32);transform:skewX(-7deg);
}
.icon-shell svg{width:36px;height:36px;fill:none;stroke:var(--chrome-hi);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transform:skewX(7deg);filter:drop-shadow(0 0 5px var(--electric))}
.support-card h3{font:700 22px/1.1 Rajdhani,Inter,sans-serif;letter-spacing:.04em;margin:0 0 16px}
.support-card p{color:#aebed3;margin:0;font-size:15px}

.story-section{background:linear-gradient(180deg,#000,#030a24 50%,#000);overflow:hidden}
.story-beam{position:absolute;left:-20%;top:20%;width:140%;height:1px;background:linear-gradient(90deg,transparent,var(--electric),transparent);box-shadow:0 0 30px rgba(17,157,251,.6);transform:rotate(-7deg);opacity:.24}
.story-header{display:grid;grid-template-columns:1fr 260px;align-items:end;gap:50px;margin-bottom:52px}
.story-header h2{max-width:820px}
.story-accent{display:flex;gap:10px;justify-content:end;padding-bottom:24px}
.story-accent span{height:4px;background:linear-gradient(90deg,var(--electric),var(--bright));transform:skewX(-30deg);box-shadow:0 0 15px rgba(17,157,251,.45)}
.story-accent span:nth-child(1){width:85px}.story-accent span:nth-child(2){width:45px}.story-accent span:nth-child(3){width:20px}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px}
.story-column{position:relative}
.story-column p{color:#afbed1;margin:0 0 22px;font-size:15.5px}
.story-column .lead{font-size:19px;color:#eff6ff;font-weight:600}
.story-column strong{color:#fff}
.story-quote{
  margin:0 0 28px;padding:24px;border:1px solid rgba(17,157,251,.25);border-left:3px solid var(--bright);
  background:rgba(1,86,247,.08);font:600 23px/1.35 Rajdhani,Inter,sans-serif;color:var(--chrome-hi);
}
.story-close{padding-top:16px;border-top:1px solid rgba(189,216,244,.18)}

.differentiator-section{background:#000}
.differentiator-section .section-heading{max-width:840px}
.strong-copy{font-weight:700;color:#fff!important}
.dual-system{display:grid;grid-template-columns:1fr 80px 1fr;align-items:stretch;margin-top:54px}
.system-panel{
  min-height:320px;padding:38px;position:relative;overflow:hidden;border:1px solid rgba(189,216,244,.18);
  background:linear-gradient(145deg,rgba(3,35,127,.32),rgba(0,0,0,.9));
}
.system-label{font:700 12px Rajdhani,Inter,sans-serif;letter-spacing:.22em;color:var(--bright);margin-bottom:52px}
.system-panel h3{font:700 31px Rajdhani,Inter,sans-serif;margin:0 0 12px}
.system-panel p{color:#adbed2;max-width:480px}
.system-connector{display:flex;flex-direction:column;align-items:center;justify-content:center}
.system-connector span{width:1px;flex:1;background:linear-gradient(transparent,var(--electric),transparent)}
.system-connector b{width:46px;height:46px;border:1px solid var(--bright);border-radius:50%;display:grid;place-items:center;color:var(--bright);font-size:27px;box-shadow:var(--glow)}
.node-map{position:absolute;right:8px;bottom:5px;width:180px;height:100px;opacity:.55}
.node-map::before,.node-map::after{content:"";position:absolute;background:rgba(17,157,251,.5)}
.node-map::before{width:160px;height:1px;top:50px;right:0}.node-map::after{height:90px;width:1px;right:65px;bottom:0}
.node-map i{position:absolute;width:8px;height:8px;background:var(--bright);border-radius:50%;box-shadow:0 0 12px var(--bright)}
.node-map i:nth-child(1){left:15px;top:47px}.node-map i:nth-child(2){left:67px;top:47px}.node-map i:nth-child(3){right:61px;top:8px}.node-map i:nth-child(4){right:61px;bottom:5px}.node-map i:nth-child(5){right:12px;top:47px}
.pulse-line{position:absolute;bottom:10px;left:0;width:100%;height:72px;opacity:.38}
.pulse-line svg{width:100%;height:100%}.pulse-line path{fill:none;stroke:var(--bright);stroke-width:2;filter:drop-shadow(0 0 5px var(--bright))}
.together{text-align:center;margin-top:30px;font:700 17px Rajdhani,Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--chrome)}

.closing-cta{
  position:relative;padding:130px 0;overflow:hidden;text-align:center;
  background:
    radial-gradient(circle at 50% 50%,rgba(1,86,247,.28),transparent 32%),
    linear-gradient(135deg,#000,#011049 48%,#000);
  border-top:1px solid rgba(17,157,251,.18);border-bottom:1px solid rgba(17,157,251,.18)
}
.closing-circuit{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(90deg,transparent 49%,var(--bright) 49% 51%,transparent 51%),linear-gradient(transparent 49%,var(--bright) 49% 51%,transparent 51%);background-size:120px 120px;transform:skewX(-12deg)}
.closing-inner{position:relative;z-index:2;max-width:900px}
.closing-inner h2{font-size:clamp(43px,5vw,68px)}
.closing-inner p{max-width:680px;margin:24px auto 30px;color:#b9c8db;font-size:17px}

.contact-section{background:linear-gradient(180deg,#000,#02071c 48%,#000)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.contact-intro{position:sticky;top:120px}
.contact-intro>p:not(.eyebrow){color:#afbed1;font-size:17px}
.contact-box{margin-top:38px;padding:23px 0;border-top:1px solid rgba(189,216,244,.18);border-bottom:1px solid rgba(189,216,244,.18)}
.contact-box span,.career-email span,.footer-label{display:block;color:var(--chrome-shadow);font:700 12px Rajdhani,Inter,sans-serif;letter-spacing:.14em;margin-bottom:6px}
.contact-box a,.career-email a,.footer-info a{color:var(--bright);font-weight:700}
.inquiry-form{
  padding:38px;background:linear-gradient(145deg,rgba(3,35,127,.24),rgba(0,0,0,.82));
  border:1px solid rgba(189,216,244,.20);position:relative;
}
.inquiry-form::before{content:"";position:absolute;top:0;left:0;width:42%;height:2px;background:linear-gradient(90deg,var(--bright),transparent);box-shadow:0 0 12px var(--bright)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.inquiry-form label{display:block;font:700 11px Rajdhani,Inter,sans-serif;letter-spacing:.12em;color:var(--chrome);margin-bottom:18px}
.inquiry-form input,.inquiry-form textarea,.inquiry-form select{
  width:100%;margin-top:8px;padding:14px 14px;border:1px solid rgba(143,169,200,.23);border-radius:0;background:rgba(0,0,0,.5);color:#fff;outline:none;transition:.2s;
}
.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{border-color:var(--bright);box-shadow:0 0 0 2px rgba(17,157,251,.08)}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#617894}
.inquiry-form select option{background:#020819}
.inquiry-form textarea{min-height:150px;resize:vertical}
.inquiry-form small{display:block;text-align:right;margin-top:5px;color:#6f86a2;font-family:Inter,sans-serif;letter-spacing:0}
.phi-warning{font-size:12px;color:#8197b2;border-left:2px solid var(--electric);padding-left:12px;margin:3px 0 24px}
.submit-button{border:0;cursor:pointer}

.careers-section{background:linear-gradient(180deg,#000,#010415,#000)}
.careers-grid{display:grid;grid-template-columns:1fr 1fr;gap:78px}
.careers-intro>p:not(.eyebrow){color:#aebed3}
.opportunities{border-top:1px solid rgba(189,216,244,.20)}
.opportunities-title{font:700 13px Rajdhani,Inter,sans-serif;letter-spacing:.17em;color:var(--chrome);margin:24px 0 12px}
.opportunity{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid rgba(189,216,244,.14)}
.opportunity p{margin:0;font-weight:600}
.direction-icon{font:700 20px Rajdhani,Inter,sans-serif;color:var(--bright);text-shadow:0 0 10px var(--bright);letter-spacing:-4px;transform:skewX(-13deg)}
.career-note{margin-top:30px;color:#aebed3}
.career-note strong{color:#fff}
.career-email{margin-top:27px;padding-top:22px;border-top:1px solid rgba(189,216,244,.15)}

.site-footer{position:relative;padding:58px 0 35px;background:#000;border-top:1px solid rgba(17,157,251,.18);overflow:hidden}
.footer-beam{position:absolute;top:0;left:10%;width:80%;height:1px;background:linear-gradient(90deg,transparent,var(--bright),transparent);box-shadow:0 0 18px var(--bright)}
.footer-grid{display:grid;grid-template-columns:280px 1fr auto;gap:60px;align-items:center}
.footer-logo{width:240px;overflow:hidden}
.footer-logo img{transform:scale(1.12);filter:drop-shadow(0 0 12px rgba(17,157,251,.12))}
.footer-info p{margin:0 0 8px;color:#92a7c0;font-size:14px}
.footer-info .footer-label{margin-bottom:8px;color:var(--chrome)}
.copyright{margin:0;color:#6e84a0;font-size:12px;align-self:end}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

@media (max-width:980px){
  .nav-links{gap:17px;font-size:11px}
  .brand{width:190px}.brand img{width:185px}
  .approach-layout{grid-template-columns:1fr;gap:30px}
  .support-cards{grid-template-columns:1fr}
  .support-card{min-height:auto}
  .story-grid,.careers-grid,.contact-grid{grid-template-columns:1fr}
  .story-header{grid-template-columns:1fr}.story-accent{display:none}
  .dual-system{grid-template-columns:1fr}.system-connector{height:70px;flex-direction:row}
  .system-connector span{height:1px;width:auto;flex:1}.system-connector b{margin:0 10px}
  .contact-intro{position:static}
  .footer-grid{grid-template-columns:220px 1fr}.copyright{grid-column:1/-1}
}
@media (max-width:760px){
  .site-header{position:absolute}
  .nav-shell{height:76px;width:calc(100% - 28px)}
  .brand{width:168px;height:62px}.brand img{width:164px}
  .menu-toggle{display:block;z-index:60}
  .nav-links{
    position:absolute;top:76px;left:14px;right:14px;display:none;flex-direction:column;align-items:stretch;gap:0;
    background:rgba(0,4,18,.98);border:1px solid rgba(189,216,244,.18);padding:12px;box-shadow:0 30px 70px rgba(0,0,0,.55)
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:14px}.nav-cta{text-align:center;margin-top:6px}
  .hero{min-height:820px;padding-top:118px}
  .hero-logo-wrap{width:min(480px,96vw)}
  .hero h1{font-size:clamp(45px,14vw,68px)}
  .hero-copy{font-size:15px}
  .section{padding:88px 0}
  .container{width:min(100% - 30px,var(--max))}
  .approach-copy h2,.section-heading h2,.story-header h2,.careers-intro h2,.contact-intro h2{font-size:42px}
  .story-grid{gap:10px}
  .support-cards{margin-top:42px}
  .inquiry-form{padding:25px 20px}
  .form-row{grid-template-columns:1fr;gap:0}
  .careers-grid{gap:42px}
  .footer-grid{grid-template-columns:1fr;gap:28px}.footer-logo{width:210px}.copyright{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
