
:root{
  --bg:#060914;--bg2:#090e1b;--surface:#0c1526;--surface2:#101a2f;
  --text:#f5f7ff;--muted:#a8b5cf;--line:#273a5b;
  --cyan:#58ddff;--blue:#668cff;--violet:#9e6bff;--pink:#ef4fbe;--green:#66e3ad;
  --max:1180px;--radius:22px;--shadow:0 26px 80px rgba(0,0,0,.34);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(800px 500px at 86% 8%,rgba(135,73,255,.15),transparent 62%),
    radial-gradient(760px 520px at 7% 35%,rgba(44,123,255,.12),transparent 65%),
    linear-gradient(180deg,#060914 0%,#080c17 54%,#060914 100%);
  overflow-x:hidden
}
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.16;
  background-image:linear-gradient(rgba(88,122,190,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(88,122,190,.14) 1px,transparent 1px);
  background-size:54px 54px;mask-image:linear-gradient(to bottom,#000 0%,transparent 78%)
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 38px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;color:#000;padding:10px 14px;border-radius:8px;z-index:100}
.skip-link:focus{left:10px}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:100;background:transparent}
.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--pink))}
.site-header{
  position:sticky;top:0;z-index:50;background:rgba(6,9,20,.76);backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(116,146,202,.13)
}
.nav-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;min-width:max-content}
.brand img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(151,77,255,.26))}
.brand strong{font-size:15px;letter-spacing:.65px;display:block}
.brand small{font-size:9px;letter-spacing:1.8px;color:#98a9c8;font-weight:800;display:block;margin-top:3px}
.nav-menu{display:flex;align-items:center;gap:23px;font-size:13px;font-weight:800;color:#dce5f7}
.nav-menu>a:not(.button):hover,.nav-menu>a.active{color:var(--cyan)}
.menu-toggle{display:none;background:#0e172a;border:1px solid #2c3f61;border-radius:11px;padding:9px 12px}
.button{border:0;border-radius:14px;padding:13px 18px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.2s ease}
.button:hover{transform:translateY(-2px)}
.button-primary{background:linear-gradient(110deg,var(--blue),var(--violet),var(--pink));box-shadow:0 12px 34px rgba(123,81,255,.23)}
.button-secondary{background:#0f192d;border:1px solid #31476b}
.nav-cta{padding:11px 16px}

.hero{padding:86px 0 56px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(87,137,216,.38);background:rgba(13,22,41,.7);border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase;color:#c7d6f1}
.eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 16px var(--green)}
h1{font-size:clamp(48px,6.6vw,84px);line-height:.96;letter-spacing:-3.8px;margin:23px 0 22px}
.gradient-text{background:linear-gradient(100deg,#fff 8%,#c9ddff 42%,#a477ff 68%,#ff68ca);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:18px;line-height:1.72;color:#bbc8e0;max-width:720px;margin:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
.capability-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.capability-pills span,.tags span{font-size:10px;font-weight:900;letter-spacing:.55px;text-transform:uppercase;border:1px solid #293d61;background:#0b1426;color:#b8c8e5;border-radius:9px;padding:7px 9px}
.hero-visual{
  min-height:530px;position:relative;overflow:hidden;border-radius:34px;border:1px solid rgba(108,139,201,.26);
  background:
    radial-gradient(circle at 55% 40%,rgba(154,72,255,.16),transparent 38%),
    radial-gradient(circle at 35% 55%,rgba(39,139,255,.11),transparent 43%),
    linear-gradient(145deg,rgba(11,18,37,.95),rgba(14,12,34,.89));
  box-shadow:var(--shadow);display:grid;place-items:center
}

.hero-visual::before,.hero-visual::after{
  content:"";position:absolute;left:50%;top:46%;translate:-50% -50%;
  border-radius:50%;pointer-events:none;z-index:1
}
.hero-visual::before{
  width:390px;height:390px;
  background:conic-gradient(from 0deg,transparent 0 18%,rgba(88,221,255,.92) 21%,transparent 24% 54%,rgba(239,79,190,.86) 58%,transparent 62% 82%,rgba(158,107,255,.8) 86%,transparent 90%);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));
  filter:drop-shadow(0 0 10px rgba(88,221,255,.35));
  animation:energyOrbit 11s linear infinite
}
.hero-visual::after{
  width:330px;height:330px;
  border:1px dashed rgba(148,113,255,.32);
  box-shadow:0 0 30px rgba(137,83,255,.13),inset 0 0 30px rgba(63,125,255,.07);
  animation:energyOrbitReverse 15s linear infinite
}
@keyframes energyOrbit{to{transform:rotate(360deg)}}
@keyframes energyOrbitReverse{to{transform:rotate(-360deg)}}
.logo-glow{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(168,87,255,.21),rgba(47,127,255,.08) 46%,transparent 70%);filter:blur(25px)}
.orbit{position:absolute;z-index:1;border:1px solid rgba(116,129,238,.22);border-radius:50%;animation:spin 18s linear infinite}
.orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 13px var(--cyan)}
.orbit-one{width:430px;height:430px}.orbit-one::after{top:33px;left:74px}
.orbit-two{width:500px;height:500px;animation-direction:reverse;animation-duration:27s}.orbit-two::after{right:52px;bottom:95px;background:var(--pink);box-shadow:0 0 13px var(--pink)}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-logo{position:relative;width:min(440px,78%);z-index:2;filter:drop-shadow(0 22px 32px rgba(0,0,0,.52)) drop-shadow(0 0 20px rgba(95,80,255,.14))}
.hero-principle{position:absolute;left:24px;right:24px;bottom:24px;padding:18px 20px;border-radius:18px;background:rgba(6,13,27,.86);border:1px solid #2d456d;backdrop-filter:blur(12px);z-index:3}
.hero-principle strong{font-size:12px;letter-spacing:1.15px}
.hero-principle p{font-size:12px;line-height:1.55;color:#9eafcd;margin:7px 0 0}

.proof-strip{padding:12px 0 62px}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.proof-grid>div{padding:20px;border-radius:18px;background:rgba(12,20,37,.78);border:1px solid #273a59}
.proof-grid strong{font-size:23px;display:block}.proof-grid span{display:block;color:var(--muted);font-size:11px;line-height:1.45;margin-top:6px}

.section{padding:78px 0}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:end;margin-bottom:34px}
.kicker{font-size:11px;font-weight:900;letter-spacing:1.65px;text-transform:uppercase;color:var(--cyan);margin:0 0 9px}
h2{font-size:clamp(34px,4.6vw,52px);line-height:1.03;letter-spacing:-2px;margin:0}
.section-heading>p,.lab-panel>div>p,.about-copy>p,.contact-copy>p{color:var(--muted);line-height:1.7;margin:0}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.solution-card{padding:26px;border-radius:var(--radius);background:linear-gradient(180deg,rgba(15,25,46,.89),rgba(9,17,31,.94));border:1px solid #273a59;transition:.24s ease}
.solution-card:hover{transform:translateY(-5px);border-color:#4e6fa7;box-shadow:0 20px 50px rgba(0,0,0,.2)}
.card-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#172748,#241a45);border:1px solid #3d5686;font-size:21px;margin-bottom:18px}
.solution-card h3{font-size:18px;margin:0 0 9px}.solution-card p{color:var(--muted);font-size:13px;line-height:1.62;margin:0}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}

.selected-work{background:linear-gradient(180deg,transparent,rgba(10,15,29,.57),transparent)}
.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.project{grid-column:span 5;overflow:hidden;border:1px solid #283b5d;background:#0b1425;border-radius:24px;min-height:410px}
.project-wide{grid-column:span 7}
.project-image{height:215px;position:relative;overflow:hidden;background:linear-gradient(135deg,#111f3e,#241744)}
.project-image>img{width:100%;height:100%;object-fit:cover;opacity:.84;transition:.3s ease}.project:hover .project-image>img{transform:scale(1.025);opacity:.95}
.project-copy{padding:23px}.project-label{color:var(--cyan);font-size:10px;text-transform:uppercase;letter-spacing:1.1px;font-weight:900;margin:0}
.project h3{font-size:22px;margin:7px 0 9px}.project-copy>p:not(.project-label){font-size:13px;line-height:1.58;color:var(--muted);margin:0}
.text-link{background:none;border:0;padding:0;margin-top:18px;font-weight:900;font-size:12px;cursor:pointer;color:#d5e3ff}.text-link:hover{color:var(--cyan)}
.marquee-art{display:grid;place-items:center;background:radial-gradient(circle at 55% 48%,rgba(58,135,255,.19),transparent 32%),linear-gradient(135deg,#07101d,#111b32)}
.scan-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(70,130,220,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(70,130,220,.12) 1px,transparent 1px);background-size:32px 32px}
.scanner-beam{position:absolute;width:2px;height:100%;background:var(--cyan);box-shadow:0 0 18px var(--cyan);animation:scan 2.8s ease-in-out infinite alternate}
@keyframes scan{from{transform:translateX(-150px)}to{transform:translateX(150px)}}
.vehicle-outline{width:160px;height:78px;border:2px solid #729cff;border-radius:60% 60% 24% 24%;display:grid;place-items:center;font-size:40px;font-weight:900;color:#9abaff;box-shadow:0 0 30px rgba(71,137,255,.14)}
.barcode{position:absolute;bottom:20px;letter-spacing:6px;color:#a9c4ff;font-weight:900;opacity:.8}
.gk-art{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:24px;align-content:center;background:radial-gradient(circle at 70% 35%,rgba(183,64,255,.21),transparent 37%),linear-gradient(135deg,#0b1326,#1a1135)}
.metric-chip{padding:18px;border-radius:16px;background:#0a1425;border:1px solid #354c74}.metric-chip b{font-size:27px;display:block}.metric-chip span{font-size:10px;color:#b5c3df;text-transform:uppercase;font-weight:800}.metric-chip.pink{border-color:#9a3f83}.metric-chip.pink b{color:var(--pink)}.metric-chip.cyan{border-color:#2c7a91}.metric-chip.cyan b{color:var(--cyan)}
.channel-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.channel-row span{font-size:10px;font-weight:900;padding:7px 9px;border-radius:8px;background:#101a30;border:1px solid #354765}
.ai-art{display:grid;place-items:center;background:radial-gradient(circle at 28% 45%,rgba(80,220,255,.22),transparent 20%),radial-gradient(circle at 75% 40%,rgba(165,80,255,.24),transparent 24%),linear-gradient(135deg,#0c1730,#1a1030)}
.ai-flow{display:flex;align-items:center;gap:13px;flex-wrap:wrap;justify-content:center;padding:20px}.ai-flow span{border:1px solid #436390;background:#0b1529;border-radius:12px;padding:14px 16px;font-weight:900;font-size:12px;letter-spacing:1px}.ai-flow i{font-style:normal;color:var(--cyan);font-size:23px}

.lab-panel{padding:40px;border:1px solid #3c3b63;border-radius:30px;background:radial-gradient(700px 280px at 90% 20%,rgba(154,65,255,.17),transparent 68%),linear-gradient(135deg,#0d1629,#0a1020);display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}
.lab-panel h2{margin-bottom:16px}.lab-panel .button{margin-top:23px}
.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lab-grid>div{padding:17px;background:rgba(12,21,39,.78);border:1px solid #2b3f61;border-radius:15px}.lab-grid strong{font-size:13px;display:block}.lab-grid span{display:block;font-size:11px;line-height:1.45;color:var(--muted);margin-top:4px}
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.process-step{padding:22px 18px;min-height:170px;background:#0c1527;border:1px solid #273a59;border-radius:18px}.process-step>span{color:var(--cyan);font-size:10px;font-weight:900}.process-step h3{font-size:17px;margin:10px 0}.process-step p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}
.industry-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.industry-grid article{padding:19px;border:1px solid #293b5a;border-radius:17px;background:#0b1424}.industry-grid strong{font-size:13px;display:block;margin-bottom:8px}.industry-grid span{font-size:10px;line-height:1.5;color:var(--muted)}
.about-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:36px;align-items:start}.about-grid blockquote{margin:0;font-size:30px;line-height:1.26;font-weight:900;letter-spacing:-.9px}.about-copy h2{margin-bottom:17px}.about-copy p+p{margin-top:13px}
.contact-panel{padding:34px;border:1px solid #31476d;border-radius:28px;background:linear-gradient(135deg,#0c1527,#11102a);display:grid;grid-template-columns:.8fr 1.2fr;gap:32px}.contact-copy h2{margin-bottom:16px}.privacy-note{font-size:11px;color:#94a6c6;margin-top:18px;border-left:2px solid var(--violet);padding-left:11px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid label{display:grid;gap:6px}.form-grid label>span{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#b5c3dc;font-weight:900}
input,select,textarea{width:100%;border:1px solid #2c4165;background:#091222;color:#fff;border-radius:12px;padding:13px 14px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#6b8fe8;box-shadow:0 0 0 3px rgba(87,132,230,.12)}
textarea{min-height:124px;resize:vertical}.full{grid-column:1/-1}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.form-status{display:none;margin-top:12px;padding:12px 14px;border-radius:12px;font-size:12px}.form-status.show{display:block}.form-status.success{background:rgba(78,207,143,.1);border:1px solid rgba(78,207,143,.35);color:#9bedbd}.form-status.error{background:rgba(242,79,129,.1);border:1px solid rgba(242,79,129,.35);color:#ffb3c9}
.site-footer{border-top:1px solid #1e2d47;padding:34px 0 44px}.footer-inner{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;color:#8291ad;font-size:11px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:39px;height:39px;object-fit:contain}.footer-brand strong{display:block;color:#e9efff;font-size:12px}.footer-brand span{font-size:9px;letter-spacing:.5px}.footer-links{display:flex;justify-content:center;gap:17px}.footer-links a:hover{color:var(--cyan)}

.modal{position:fixed;inset:0;z-index:80;display:none;place-items:center;padding:20px;background:rgba(3,6,14,.84);backdrop-filter:blur(7px)}.modal.open{display:grid}.modal-card{width:min(760px,100%);max-height:min(85vh,760px);overflow:auto;background:#0c1527;border:1px solid #39527e;border-radius:24px;padding:27px;box-shadow:var(--shadow)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-head h2{font-size:29px}.modal-close{border:1px solid #30466c;background:#101a30;border-radius:11px;width:40px;height:40px;font-size:24px;cursor:pointer}.modal-card>p{color:var(--muted);line-height:1.7}.modal-card li{margin:8px 0;color:#d8e2f5}
.reveal{opacity:0;transform:translateY(17px);transition:opacity .66s ease,transform .66s ease}.reveal.show{opacity:1;transform:none}

@media(max-width:980px){
  .hero-grid,.section-heading,.lab-panel,.about-grid,.contact-panel{grid-template-columns:1fr}
  .solution-grid{grid-template-columns:1fr 1fr}.project,.project-wide{grid-column:span 12}
  .process-grid{grid-template-columns:1fr 1fr}.industry-grid{grid-template-columns:1fr 1fr}.proof-grid{grid-template-columns:1fr 1fr}
  .menu-toggle{display:block}.nav-menu{display:none;position:absolute;top:74px;left:18px;right:18px;flex-direction:column;align-items:stretch;background:#091323;border:1px solid #2b3e5d;padding:18px;border-radius:16px;box-shadow:var(--shadow)}.nav-menu.open{display:flex}.nav-menu .button{width:100%}
  .hero-visual{min-height:470px}.footer-inner{grid-template-columns:1fr;text-align:left}.footer-links{justify-content:flex-start}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,var(--max))}
  .hero{padding-top:50px}
  h1{letter-spacing:-2.6px}
  .solution-grid,.proof-grid,.process-grid,.industry-grid,.lab-grid,.form-grid{grid-template-columns:1fr}
  .full{grid-column:auto}

  /* Mobile hero: keep the emblem fully visible and preserve the animated ring space */
  .hero-visual{
    min-height:520px;
    padding:24px 14px 22px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
  }
  .hero-logo{
    width:min(72vw,330px);
    margin:42px auto 0;
    transform:none;
    flex:0 0 auto;
  }
  .logo-glow{
    width:300px;
    height:300px;
    top:78px;
  }
  .orbit-one{
    width:300px;height:300px;
    top:58px;
    border-color:rgba(88,221,255,.34)
  }
  .orbit-two{
    width:350px;height:350px;
    top:33px;
    border-color:rgba(158,107,255,.30)
  }
  .hero-visual::before{
    width:315px;height:315px;
    top:204px;
    filter:drop-shadow(0 0 14px rgba(88,221,255,.48))
  }
  .hero-visual::after{
    width:270px;height:270px;
    top:204px;
    border-color:rgba(239,79,190,.33)
  }
  .hero-principle{
    position:relative;
    left:auto;right:auto;bottom:auto;
    width:100%;
    margin-top:26px;
    padding:16px 17px;
    z-index:4;
  }
  .hero-principle strong{
    font-size:11px;
    line-height:1.5;
  }
  .hero-principle p{
    font-size:11px;
    line-height:1.55;
  }
}

@media(min-width:621px) and (max-width:780px){
  .hero-visual{min-height:500px}
  .hero-logo{width:min(380px,70%)}
  .hero-principle{left:18px;right:18px;bottom:18px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.orbit,.scanner-beam,.hero-visual::before,.hero-visual::after{animation:none}.button,.solution-card,.project-image>img{transition:none}
}
