/* ═══════════════════════════════════════════════════════════════
   NEUAXIS SOLUTIONS — ELITE DESIGN SYSTEM v7.0
   Logo Navy · Electric Cyan · Metallic Silver · Premium Typography
═══════════════════════════════════════════════════════════════ */

/* ── TOKENS ── */
:root {
  /* Surfaces — matched to logo navy field (#050B1C) */
  --bg-base:     #050b1c;
  --bg-2:        #081424;
  --bg-3:        #0c1a30;
  --bg-4:        #112238;
  --bg-card:     rgba(8, 20, 36, 0.94);
  --bg-glass:    rgba(255, 255, 255, 0.028);
  --bg-glass-h:  rgba(255, 255, 255, 0.055);

  /* Brand — logo electric cyan */
  --cyan:        #00e5ff;
  --cyan-light:  #7af4ff;
  --cyan-2:      #00b8d4;
  --cyan-dim:    rgba(0, 229, 255, 0.15);
  --cyan-glow:   rgba(0, 229, 255, 0.32);
  --cyan-soft:   rgba(0, 229, 255, 0.08);

  /* Metallic silver (logo lettering) */
  --silver:      #c8d8e8;
  --silver-light:#e8f2fa;
  --silver-dim:  rgba(200, 216, 232, 0.14);
  --silver-soft: rgba(200, 216, 232, 0.07);

  /* Legacy gold aliases → cyan */
  --gold:        var(--cyan);
  --gold-light:  var(--cyan-light);
  --gold-dim:    var(--cyan-dim);
  --gold-glow:   rgba(0, 229, 255, 0.22);
  --gold-soft:   var(--cyan-soft);

  /* Secondary — cobalt steel */
  --violet:      #6b8cb8;
  --violet-dim:  rgba(107, 140, 184, 0.12);
  --steel:       #4a6a8c;
  --sapphire:    #1e4a7a;

  /* Status */
  --emerald:     #3dd68c;
  --amber:       #f0b429;
  --red:         #f06565;

  /* Text — logo white + silver tones */
  --text:        #f8fbff;
  --text-2:      #9ab0c4;
  --text-3:      #5a7084;
  --text-inv:    #050b1c;

  /* Borders */
  --border:      rgba(0, 229, 255, 0.09);
  --border-2:    rgba(0, 229, 255, 0.18);
  --border-3:    rgba(255, 255, 255, 0.07);

  /* Typography — editorial serif + refined sans */
  --ff-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --ff-head:    'Sora', system-ui, sans-serif;
  --ff-body:    'DM Sans', system-ui, sans-serif;
  --ff-mono:    'JetBrains Mono', ui-monospace, monospace;

  /* Radius — softer, more luxurious */
  --r:    6px;
  --r-md: 10px;
  --r-lg: 16px;
  --r-xl: 24px;

  --gap: clamp(1rem, 3vw, 2rem);
  --ease:  cubic-bezier(0.22, 1, 0.36, 1);
  --ease-2: cubic-bezier(0.4, 0, 0.2, 1);

  --shadow-cyan: 0 4px 32px rgba(0, 229, 255, 0.14), 0 1px 0 rgba(0, 229, 255, 0.1);
  --shadow-card: 0 8px 40px rgba(0, 0, 0, 0.55), 0 1px 0 rgba(0, 229, 255, 0.08);

  /* Legacy aliases */
  --navy:      var(--bg-base);
  --navy-2:    var(--bg-2);
  --navy-3:    var(--bg-3);
  --navy-4:    var(--bg-4);
  --surface:   var(--bg-glass);
  --surface-h: var(--bg-glass-h);
  --radius:    var(--r);
  --radius-lg: var(--r-lg);
  --green:     var(--emerald);
}


/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  scroll-behavior:smooth;overflow-x:hidden;
  -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
body{
  font-family:var(--ff-body);
  background:var(--bg-base);
  background-image:
    radial-gradient(ellipse 100% 70% at 50% -20%, rgba(0,229,255,0.08), transparent 50%),
    radial-gradient(ellipse 45% 35% at 100% 0%, rgba(0,229,255,0.04), transparent 45%),
    linear-gradient(180deg, var(--bg-base) 0%, #040a16 100%);
  color:var(--text);
  font-size:16px;line-height:1.78;font-weight:300;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1,"liga" 1;
}
img,video,canvas,svg{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
button{cursor:pointer;border:none;background:none;font-family:inherit}
::selection{background:var(--cyan-dim);color:var(--cyan-light)}

.container{max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.container-sm{max-width:800px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.container-wide{max-width:1400px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}

/* ── TYPOGRAPHY ── */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--ff-mono);font-size:10px;letter-spacing:0.22em;
  text-transform:uppercase;color:var(--cyan);margin-bottom:18px;font-weight:500;
}
.eyebrow::before{content:'';display:block;width:28px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent);flex-shrink:0}

h1.display,h1.hero-h{
  font-family:var(--ff-display);
  font-size:clamp(2.5rem,5.8vw,4.4rem);
  font-weight:500;line-height:1.05;
  letter-spacing:-0.01em;color:var(--text);
  text-wrap:balance;
}
h2.section-heading,h2.sh{
  font-family:var(--ff-display);
  font-size:clamp(1.85rem,3.8vw,2.9rem);
  font-weight:500;line-height:1.12;
  letter-spacing:-0.01em;color:var(--text);
  margin-bottom:16px;text-wrap:balance;
}
h3.card-title,.card-title{
  font-family:var(--ff-head);
  font-size:clamp(1rem,2vw,1.12rem);
  font-weight:600;color:var(--text);
  letter-spacing:0.01em;margin-bottom:8px;
}
p.lead{font-size:clamp(1.02rem,2vw,1.15rem);color:var(--text-2);line-height:1.85;max-width:580px;font-weight:300;letter-spacing:0.01em}
p.body-sm{font-size:14px;color:var(--text-2);line-height:1.75;font-weight:300}

.text-gradient{
  background:linear-gradient(135deg,var(--silver-light) 0%,var(--cyan) 60%,var(--cyan-light) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.text-serif-italic{font-family:var(--ff-display);font-style:italic;font-weight:400}

/* ── BUTTONS ── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--ff-head);font-size:12px;font-weight:500;
  letter-spacing:0.1em;text-transform:uppercase;
  padding:clamp(12px,2vw,15px) clamp(22px,3vw,32px);
  border-radius:var(--r-md);cursor:pointer;
  transition:all 0.3s var(--ease);white-space:nowrap;
  min-height:46px;border:none;
}
.btn-primary{
  background:linear-gradient(145deg, var(--cyan-light) 0%, var(--cyan) 45%, #0088a8 100%);
  color:var(--text-inv);
  box-shadow:0 2px 16px rgba(0,229,255,0.22), inset 0 1px 0 rgba(255,255,255,0.15);
}
.btn-primary:hover{
  background:linear-gradient(145deg, #e8f8ff 0%, var(--cyan-light) 40%, var(--cyan) 100%);
  box-shadow:0 8px 32px var(--gold-glow);transform:translateY(-2px);
}
.btn-outline{background:rgba(255,255,255,0.02);color:var(--text);border:1px solid var(--border-2);backdrop-filter:blur(8px)}
.btn-outline:hover{background:var(--bg-glass-h);border-color:var(--cyan);color:var(--cyan-light);box-shadow:0 4px 20px rgba(0,229,255,0.08)}
.btn-ghost{background:var(--bg-glass);color:var(--text-2);border:1px solid var(--border-3);backdrop-filter:blur(6px)}
.btn-ghost:hover{background:var(--bg-glass-h);color:var(--text);border-color:var(--border-2)}
.btn-violet{background:linear-gradient(145deg,#5a7a9a,var(--steel));color:#fff}
.btn-violet:hover{background:linear-gradient(145deg,#6d8aaa,#5a7a9a);transform:translateY(-1px)}
.btn-lg{padding:clamp(15px,2.5vw,18px) clamp(28px,4vw,40px);font-size:12px;letter-spacing:0.12em}
.btn-sm{padding:9px 20px;font-size:10px;min-height:38px;letter-spacing:0.1em}
@media(max-width:767px){.btn-block-mobile{width:100%;justify-content:center}}

/* ── ANNOUNCE STRIP ── */
.announce-strip{
  background:linear-gradient(90deg,var(--bg-2),rgba(0,229,255,0.04) 50%,var(--bg-2));
  border-bottom:1px solid var(--border);
  text-align:center;padding:10px 16px;
  font-size:clamp(11px,2.5vw,13px);color:var(--text-2);
  position:relative;z-index:101;
}
.announce-strip strong{color:var(--cyan);font-weight:500}
.announce-strip a{color:var(--cyan-light);margin-left:8px;font-weight:500}

/* ── HEADER ── */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(5,11,28,0.92);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  transition:background 0.3s,border-color 0.3s,box-shadow 0.3s;
}
.site-header.scrolled{
  background:rgba(5,11,28,0.98);
  border-bottom-color:var(--border-2);
  box-shadow:0 4px 32px rgba(0,0,0,0.4);
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:clamp(60px,9vw,72px);
  max-width:1400px;margin:0 auto;padding:0 clamp(14px,3vw,32px);gap:12px;
}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.logo-full{
  display:block;height:clamp(44px,10vw,54px);width:auto;flex-shrink:0;
  filter:drop-shadow(0 0 12px rgba(0,229,255,0.22)) drop-shadow(0 2px 8px rgba(0,0,0,0.35));
  transition:filter 0.25s,transform 0.25s var(--ease);
}
.logo--footer .logo-full{height:clamp(56px,12vw,76px)}
.logo:hover .logo-full{
  filter:drop-shadow(0 0 20px rgba(0,229,255,0.38)) drop-shadow(0 2px 10px rgba(0,0,0,0.4));
  transform:translateY(-1px);
}
.logo-mark{
  width:clamp(40px,7.5vw,46px);height:clamp(40px,7.5vw,46px);
  display:block;flex-shrink:0;
  filter:drop-shadow(0 0 10px rgba(0,229,255,0.18));
  transition:filter 0.25s,transform 0.25s var(--ease);
}
.logo-mark--lg{width:52px;height:52px}
.logo:hover .logo-mark{
  filter:drop-shadow(0 0 18px rgba(0,229,255,0.32));
  transform:translateY(-1px);
}
.logo-wordmark{display:flex;flex-direction:column;gap:3px;line-height:1}
.logo-name{
  font-family:var(--ff-head);font-size:clamp(13px,2.8vw,15px);
  font-weight:700;letter-spacing:0.16em;text-transform:uppercase;
}
.logo-neu{color:var(--silver-light)}
.logo-axis{
  background:linear-gradient(135deg,var(--silver-light) 0%,var(--cyan) 55%,var(--cyan-light) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.logo-tag{
  font-family:var(--ff-mono);font-size:7px;font-weight:500;
  letter-spacing:0.2em;text-transform:uppercase;color:var(--text-3);
}
.logo--footer{align-items:flex-start;gap:14px}
.logo-wordmark--footer .logo-name{font-size:14px}
.logo-wordmark--footer .logo-tag{font-size:8px;letter-spacing:0.14em;color:var(--text-2)}
@media(max-width:480px){.logo-tag{display:none}}
.logo-img,.logo-img--full{display:none}
.hero-brand-lockup{
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:clamp(20px,4vw,36px);
  background:radial-gradient(ellipse,rgba(0,229,255,0.06) 0%,transparent 70%);
  border-radius:var(--r-xl);
}
.hero-brand-lockup::before{
  content:'';position:absolute;inset:5%;
  background:radial-gradient(ellipse,rgba(0,229,255,0.1) 0%,transparent 70%);
  pointer-events:none;
}
.hero-logo-full{
  display:block;height:clamp(160px,32vw,240px);width:auto;
  filter:drop-shadow(0 0 32px rgba(0,229,255,0.28)) drop-shadow(0 4px 16px rgba(0,0,0,0.45));
  animation:logo-float 6s ease-in-out infinite;
}
.hero-brand-mark{
  width:clamp(100px,22vw,140px);height:clamp(100px,22vw,140px);
  filter:drop-shadow(0 0 28px rgba(0,229,255,0.22));
  animation:logo-float 6s ease-in-out infinite;margin-bottom:20px;
}
.hero-brand-name{
  font-family:var(--ff-head);font-size:clamp(1.4rem,4vw,2rem);
  font-weight:700;letter-spacing:0.22em;color:var(--text);
}
.hero-brand-name .neu{color:var(--silver-light)}
.hero-brand-name .axis{
  background:linear-gradient(135deg,var(--silver-light),var(--cyan-light));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-brand-sub{
  font-family:var(--ff-mono);font-size:10px;letter-spacing:0.2em;
  text-transform:uppercase;color:var(--text-3);margin-top:10px;
}
@keyframes logo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

.nav-links{display:flex;align-items:center;gap:0;list-style:none}
.nav-links a{
  font-family:var(--ff-head);font-size:12.5px;font-weight:400;
  color:var(--text-2);padding:8px 16px;border-radius:var(--r-md);
  transition:color 0.25s,background 0.25s;white-space:nowrap;letter-spacing:0.04em;
}
.nav-links a:hover{color:var(--text);background:var(--bg-glass-h)}
.nav-links a.active{color:var(--cyan-light);background:var(--cyan-soft)}
.nav-cta{display:flex;align-items:center;gap:8px;margin-left:12px}

.hamburger{
  display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;
  background:none;border:none;border-radius:var(--r);
  min-width:44px;min-height:44px;align-items:center;justify-content:center;flex-shrink:0;
}
.hamburger span{display:block;width:20px;height:1px;background:var(--text);border-radius:1px;transition:all 0.3s var(--ease)}
.hamburger.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.mobile-nav{
  display:none !important;position:fixed;inset:0;
  background:rgba(5,11,28,0.98);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  z-index:999;flex-direction:column;align-items:center;justify-content:center;
  gap:0;padding:80px 32px 40px;overflow-y:auto;
}
.mobile-nav.open{display:flex !important}
.mobile-nav a{
  display:block;font-family:var(--ff-display);font-size:clamp(1.5rem,5vw,2rem);
  font-weight:500;color:var(--text-2);padding:14px 0;width:100%;text-align:center;
  border-bottom:1px solid var(--border-3);transition:color 0.15s;min-height:44px;
  letter-spacing:0.02em;
}
.mobile-nav a:hover{color:var(--cyan)}
.mob-close{
  position:absolute;top:18px;right:20px;background:none;border:none;
  color:var(--text-2);font-size:26px;padding:8px;min-width:44px;min-height:44px;
  display:flex;align-items:center;justify-content:center;border-radius:var(--r);cursor:pointer;
}
.mob-close:hover{color:var(--cyan)}

section{position:relative;z-index:1}
.section-pad{padding:clamp(64px,9vw,110px) 0}
.section-pad-sm{padding:clamp(40px,6vw,72px) 0}

.section-label{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--ff-mono);font-size:10px;letter-spacing:0.22em;
  text-transform:uppercase;color:var(--cyan);margin-bottom:16px;font-weight:500;
}
.section-label::before{content:'';display:block;width:28px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}

/* ── CARDS ── */
.card{
  background:rgba(10,18,32,0.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--border);
  border-radius:var(--r-lg);padding:clamp(24px,3vw,36px);
  transition:border-color 0.35s,transform 0.35s var(--ease),box-shadow 0.35s;
  position:relative;overflow:hidden;
}
.card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);
  opacity:0;transition:opacity 0.35s;
}
.card:hover{border-color:var(--border-2);transform:translateY(-3px);box-shadow:var(--shadow-card)}
.card:hover::before{opacity:1}

.tag{display:inline-block;font-family:var(--ff-mono);font-size:9px;padding:4px 10px;border-radius:3px;letter-spacing:0.06em;border:1px solid}
.tag-cyan,.tag-gold{background:var(--cyan-soft);border-color:var(--cyan-dim);color:var(--cyan-light)}
.tag-violet{background:var(--violet-dim);border-color:rgba(139,154,173,0.25);color:var(--violet)}
.tag-default{background:var(--bg-glass);border-color:var(--border-3);color:var(--text-3)}
.tag-green{background:rgba(111,168,138,0.08);border-color:rgba(111,168,138,0.2);color:var(--emerald)}

.icon-box{
  width:46px;height:46px;border-radius:var(--r-md);
  background:var(--cyan-soft);border:1px solid var(--cyan-dim);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.icon-box svg{color:var(--cyan)}
.icon-box-violet{background:var(--violet-dim);border-color:rgba(139,154,173,0.22)}
.icon-box-violet svg{color:var(--violet)}

.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.7s var(--ease),transform 0.7s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.reveal-up{opacity:0;transform:translateY(14px);transition:opacity 0.55s var(--ease),transform 0.55s var(--ease)}
.reveal-up.visible{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.40s}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}
.reveal-d3{transition-delay:.3s}.reveal-d4{transition-delay:.4s}

.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
@media(max-width:960px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}

/* ── MARQUEE ── */
.marquee-wrap{overflow:hidden;position:relative}
.marquee-wrap::before,.marquee-wrap::after{
  content:'';position:absolute;top:0;bottom:0;width:100px;z-index:2;pointer-events:none;
}
.marquee-wrap::before{left:0;background:linear-gradient(90deg,var(--bg-base),transparent)}
.marquee-wrap::after{right:0;background:linear-gradient(-90deg,var(--bg-base),transparent)}
.marquee-track{display:flex;width:max-content;animation:marquee 36s linear infinite}
.marquee-track:hover{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.tech-chip,.tech-pill{
  display:flex;align-items:center;gap:10px;padding:10px 22px;
  border-right:1px solid var(--border-3);
  font-family:var(--ff-mono);font-size:11px;font-weight:500;
  color:var(--text-2);white-space:nowrap;transition:color 0.2s;letter-spacing:0.04em;
}
.tech-chip:hover,.tech-pill:hover{color:var(--cyan-light)}
.tech-chip-dot,.tech-dot{width:5px;height:5px;border-radius:50%;background:var(--cyan);opacity:0.45;flex-shrink:0}

.stat-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--border);border:1px solid var(--border);
  border-radius:var(--r-lg);overflow:hidden;
}
.stat-cell{background:var(--bg-2);padding:clamp(22px,3vw,36px) clamp(16px,2.5vw,24px);text-align:center;transition:background 0.25s}
.stat-cell:hover{background:var(--bg-3)}
.stat-num{font-family:var(--ff-display);font-size:clamp(2.1rem,4.5vw,3rem);font-weight:500;color:var(--text);letter-spacing:-0.01em;line-height:1}
.stat-num em{color:var(--cyan);font-style:italic;font-weight:400}
.stat-label{font-size:13px;color:var(--text-2);margin-top:10px;line-height:1.5;font-weight:300;letter-spacing:0.02em}
.stat-sub{font-family:var(--ff-mono);font-size:9px;color:var(--text-3);margin-top:5px;letter-spacing:0.08em}
@media(max-width:767px){.stat-grid{grid-template-columns:1fr 1fr}}

.stat-card{
  background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:clamp(22px,3vw,28px);text-align:center;transition:border-color 0.3s,background 0.3s;
}
.stat-card:hover{border-color:var(--border-2);background:var(--bg-3)}

.cta-banner{
  padding:clamp(64px,9vw,100px) 0;
  background:linear-gradient(160deg,var(--bg-3),var(--bg-4));
  border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  text-align:center;position:relative;overflow:hidden;
}
.cta-banner::before{
  content:'';position:absolute;top:-50%;left:50%;transform:translateX(-50%);
  width:700px;height:450px;
  background:radial-gradient(ellipse,rgba(0,229,255,0.07),transparent 65%);
  pointer-events:none;
}
.cta-banner h2{
  font-family:var(--ff-display);font-size:clamp(1.75rem,4vw,2.75rem);
  font-weight:500;color:var(--text);letter-spacing:-0.01em;margin-bottom:18px;position:relative;
}
.cta-banner p{font-size:clamp(15px,2vw,17px);color:var(--text-2);max-width:540px;margin:0 auto 36px;position:relative;font-weight:300;line-height:1.8}
.cta-btns{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;position:relative}
@media(max-width:480px){
  .cta-btns{flex-direction:column;align-items:stretch;max-width:320px;margin:0 auto}
  .cta-btns .btn{justify-content:center}
}

.site-footer{background:var(--bg-2);border-top:1px solid var(--border);padding:clamp(64px,8vw,88px) 0 0}
.footer-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px);padding-bottom:clamp(44px,6vw,68px)}
@media(max-width:960px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}
.footer-col-title{font-family:var(--ff-mono);font-size:10px;font-weight:500;color:var(--text);letter-spacing:0.16em;text-transform:uppercase;margin-bottom:18px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:10px}
.footer-links a{font-size:14px;color:var(--text-2);transition:color 0.2s;font-weight:300;letter-spacing:0.02em}
.footer-links a:hover{color:var(--cyan-light)}
.footer-brand p{font-size:14px;color:var(--text-2);line-height:1.8;margin-top:18px;max-width:300px;font-weight:300}
.footer-social{display:flex;gap:8px;margin-top:20px}
.social-btn{
  width:36px;height:36px;border-radius:var(--r);
  background:var(--bg-glass);border:1px solid var(--border-3);
  display:flex;align-items:center;justify-content:center;
  color:var(--text-2);font-size:13px;transition:all 0.25s;
}
.social-btn:hover{border-color:var(--cyan);color:var(--cyan)}
.footer-bottom{
  border-top:1px solid var(--border-3);padding:20px 0;
  display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
}
.footer-bottom p{font-size:12px;color:var(--text-3);letter-spacing:0.02em}
.footer-badges{display:flex;gap:8px}
.fbadge{font-family:var(--ff-mono);font-size:8px;padding:4px 9px;border-radius:3px;border:1px solid;letter-spacing:0.08em;text-transform:uppercase}
.fb1{background:var(--cyan-soft);border-color:var(--cyan-dim);color:var(--cyan-light)}
.fb2{background:var(--violet-dim);border-color:rgba(139,154,173,0.25);color:var(--violet)}
.fb3{background:rgba(111,168,138,0.08);border-color:rgba(111,168,138,0.2);color:var(--emerald)}

.sticky-cta-bar{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:998;
  background:rgba(5,11,28,0.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid var(--border-2);padding:10px 14px env(safe-area-inset-bottom,10px);gap:8px;
}
@media(max-width:767px){.sticky-cta-bar{display:flex};body{padding-bottom:68px}}
.sticky-cta-bar .cta-btn{
  flex:1;display:flex;align-items:center;justify-content:center;gap:5px;
  min-height:42px;border-radius:var(--r);
  font-family:var(--ff-head);font-size:10px;font-weight:600;
  letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;padding:0 8px;
}
.cta-primary{background:linear-gradient(135deg,var(--cyan),#0078a8);color:var(--text-inv)}
.cta-whatsapp{background:rgba(37,211,102,0.1);color:#4ade80;border:1px solid rgba(37,211,102,0.22)}
.cta-email,.cta-call{background:var(--bg-glass-h);color:var(--text-2);border:1px solid var(--border-3)}

@media(max-width:960px){
  .nav-links,.nav-cta .btn-outline,.nav-cta .btn-ghost{display:none!important}
  .hamburger{display:flex}
}
@media(max-width:767px){
  .hero-diagram-wrap{display:none!important}
  .pipeline-visual{overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:11px}
}
@media(min-width:961px){
  .hamburger,.mobile-nav{display:none!important}
}

.form-group{margin-bottom:20px}
.form-label{display:block;font-family:var(--ff-mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-2);margin-bottom:8px}
.form-control{
  width:100%;background:var(--bg-3);border:1px solid var(--border-2);
  border-radius:var(--r-md);padding:13px 16px;
  font-family:var(--ff-body);font-size:16px;color:var(--text);
  outline:none;transition:border-color 0.2s,box-shadow 0.2s;-webkit-appearance:none;
}
.form-control::placeholder{color:var(--text-3)}
.form-control:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-soft)}
textarea.form-control{resize:vertical;min-height:120px}
select.form-control{cursor:pointer}

:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}
  .marquee-track{animation:none!important}
}

/* ── INNER PAGE HERO ── */
.page-hero{
  padding:clamp(60px,8vw,88px) 0 clamp(44px,6vw,64px);
  background:var(--bg-base);position:relative;overflow:hidden;
}
.page-hero-grid{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(0,229,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,0.03) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,black 35%,transparent 100%);
  -webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,black 35%,transparent 100%);
}
.page-hero-glow{
  position:absolute;top:-15%;left:50%;transform:translateX(-50%);
  width:min(900px,100vw);height:420px;
  background:radial-gradient(ellipse,rgba(0,229,255,0.08) 0%,transparent 65%);
  pointer-events:none;
}
.page-hero-inner{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.page-hero-title{
  font-family:var(--ff-display);font-size:clamp(2.2rem,5vw,3.75rem);
  font-weight:500;line-height:1.08;letter-spacing:-0.01em;color:var(--text);
}
.page-hero-title .accent{
  background:linear-gradient(135deg,var(--silver-light),var(--cyan));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.breadcrumb{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-family:var(--ff-mono);font-size:10px;color:var(--text-3);
  margin-bottom:22px;text-transform:uppercase;letter-spacing:0.1em;
}
.breadcrumb a{color:var(--text-3);transition:color 0.2s}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb span{color:var(--cyan)}

.partner-strip{
  background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:clamp(16px,3vw,24px) 0;
}
.partner-strip-inner{
  max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px);
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.partner-label{font-family:var(--ff-mono);font-size:9px;color:var(--text-3);letter-spacing:0.14em;text-transform:uppercase}
.partner-logos{display:flex;align-items:center;gap:clamp(16px,3vw,36px);flex-wrap:wrap}
.partner-logo-item{display:flex;align-items:center;gap:8px;opacity:0.6;transition:opacity 0.25s}
.partner-logo-item:hover{opacity:1}
.partner-logo-item span{font-family:var(--ff-head);font-size:13px;font-weight:500;color:var(--text)}
.microsoft-badge{background:rgba(92,114,137,0.12);border:1px solid rgba(92,114,137,0.28);color:var(--violet);font-family:var(--ff-mono);font-size:9px;padding:3px 8px;border-radius:3px;letter-spacing:0.06em}
.ibm-text-badge{background:var(--gold-soft);border:1px solid var(--gold-dim);color:var(--gold-light);font-family:var(--ff-mono);font-size:9px;padding:3px 8px;border-radius:3px;letter-spacing:0.06em}

.tech-strip{padding:clamp(44px,6vw,56px) 0;background:var(--bg-base);overflow:hidden}
.tech-strip-label{text-align:center;font-family:var(--ff-mono);font-size:10px;color:var(--text-3);letter-spacing:0.14em;text-transform:uppercase;margin-bottom:26px}

.svc-sticky-nav{background:var(--bg-2);border-bottom:1px solid var(--border);position:sticky;top:clamp(60px,9vw,72px);z-index:90}
.svc-sticky-nav-inner{
  display:flex;gap:6px;overflow-x:auto;padding:12px clamp(16px,4vw,40px);
  scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:1180px;margin:0 auto;
}
.svc-sticky-nav-inner::-webkit-scrollbar{display:none}
.svc-nav-pill{
  flex-shrink:0;font-family:var(--ff-mono);font-size:10px;letter-spacing:0.1em;
  text-transform:uppercase;color:var(--text-3);text-decoration:none;
  padding:8px 14px;border-radius:var(--r);border:1px solid var(--border);
  transition:all 0.2s;white-space:nowrap;min-height:36px;display:flex;align-items:center;
}
.svc-nav-pill:hover,.svc-nav-pill:focus-visible{border-color:var(--cyan);color:var(--cyan-light);background:var(--cyan-soft)}

.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,64px);align-items:start}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stat-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:767px){
  .split-grid,.form-row-2{grid-template-columns:1fr}
  .hero-inner{grid-template-columns:1fr!important}
  .hero-stats{flex-wrap:wrap}
  .hstat{flex:1 1 40%;min-width:100px}
}
@media(max-width:560px){.stat-grid-2{grid-template-columns:1fr}}
.arrow-icon{display:inline-block;transition:transform 0.2s var(--ease)}
a:hover .arrow-icon,button:hover .arrow-icon{transform:translate(2px,-2px)}

.contact-channel{
  display:flex;gap:16px;padding:22px;border:1px solid var(--border);
  border-radius:var(--r-lg);margin-bottom:12px;text-decoration:none;
  transition:border-color 0.3s,background 0.3s,box-shadow 0.3s;background:var(--bg-glass);
}
.contact-channel:hover{border-color:var(--cyan);background:var(--bg-glass-h);box-shadow:var(--shadow-card)}
.contact-channel-icon{font-size:26px;flex-shrink:0;line-height:1;opacity:0.9}
.contact-channel-label{font-family:var(--ff-mono);font-size:9px;font-weight:500;color:var(--text-3);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:5px}
.contact-channel-value{font-family:var(--ff-head);font-size:15px;font-weight:600;color:var(--text)}
.contact-channel-hint{font-size:13px;color:var(--text-3);margin-top:4px;font-weight:300}

/* ── NEURAXIS STORY (About) ── */
.neuraxis-story{
  padding:clamp(72px,10vw,110px) 0;
  background:linear-gradient(180deg,var(--bg-base) 0%,var(--bg-2) 50%,var(--bg-base) 100%);
  position:relative;overflow:hidden;
}
.neuraxis-story::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 50% at 70% 40%,rgba(0,229,255,0.06),transparent 70%);
  pointer-events:none;
}
.neuraxis-intro{position:relative;z-index:1;max-width:820px;margin-bottom:clamp(40px,6vw,56px)}
.neuraxis-quote{
  margin:clamp(36px,5vw,48px) 0 0;padding:24px 28px;
  border-left:2px solid var(--cyan);
  background:rgba(0,229,255,0.04);
  border-radius:0 var(--r-lg) var(--r-lg) 0;
}
.neuraxis-quote p{
  font-family:var(--ff-display);font-size:clamp(1.1rem,2.2vw,1.35rem);
  font-weight:400;font-style:italic;line-height:1.65;color:var(--silver-light);
}
.neuraxis-compare{
  display:grid;
  grid-template-columns:1fr minmax(110px,22%) 1fr;
  gap:clamp(12px,2.5vw,24px);
  align-items:stretch;position:relative;z-index:1;
}
@media(max-width:960px){
  .neuraxis-compare{grid-template-columns:1fr}
  .neuraxis-col--viz{order:-1}
}
.neuraxis-col-head{
  font-family:var(--ff-mono);font-size:10px;font-weight:500;
  letter-spacing:0.2em;text-transform:uppercase;margin-bottom:18px;
  padding-bottom:12px;border-bottom:1px solid var(--border);
}
.neuraxis-col--bio .neuraxis-col-head{color:var(--cyan)}
.neuraxis-col--dig .neuraxis-col-head{color:var(--silver);text-align:right}
@media(max-width:960px){.neuraxis-col--dig .neuraxis-col-head{text-align:left}}
.neuraxis-points{display:flex;flex-direction:column;gap:12px;flex:1}
.neuraxis-point{
  flex:1;display:flex;gap:14px;align-items:flex-start;
  background:rgba(10,18,32,0.55);backdrop-filter:blur(8px);
  border:1px solid var(--border);border-radius:var(--r-lg);
  padding:clamp(14px,2vw,18px);
  transition:border-color 0.3s,box-shadow 0.3s,transform 0.3s var(--ease);
  min-height:72px;
}
.neuraxis-col--bio .neuraxis-point:hover{border-color:var(--cyan-dim);box-shadow:0 0 24px rgba(0,229,255,0.08)}
.neuraxis-col--dig .neuraxis-point{flex-direction:row-reverse;text-align:right}
.neuraxis-col--dig .neuraxis-point:hover{border-color:var(--silver-dim);box-shadow:0 0 24px rgba(200,216,232,0.06)}
@media(max-width:960px){.neuraxis-col--dig .neuraxis-point{flex-direction:row;text-align:left}}
.neuraxis-point-icon{
  width:36px;height:36px;border-radius:var(--r-md);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:16px;
  background:var(--cyan-soft);border:1px solid var(--cyan-dim);
}
.neuraxis-col--dig .neuraxis-point-icon{background:var(--silver-soft);border-color:var(--silver-dim)}
.neuraxis-point-title{font-family:var(--ff-head);font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px;letter-spacing:0.02em}
.neuraxis-point-desc{font-size:12px;color:var(--text-3);line-height:1.55;font-weight:300}
.neuraxis-point-connector{
  display:block;font-family:var(--ff-mono);font-size:8px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--cyan);opacity:0.55;margin-top:6px;
}
.neuraxis-col--dig .neuraxis-point-connector{color:var(--silver)}
.neuraxis-col--viz{
  display:flex;align-items:center;justify-content:center;
  min-height:100%;
}
.neuraxis-viz-wrap{
  position:relative;width:100%;height:100%;min-height:clamp(400px,52vw,520px);
  background:rgba(6,13,26,0.9);backdrop-filter:blur(16px);
  border:1px solid var(--border-2);border-radius:var(--r-xl);
  padding:clamp(8px,1.5vw,14px);overflow:hidden;
  box-shadow:var(--shadow-cyan),inset 0 0 40px rgba(0,229,255,0.04);
}
.neuraxis-viz-wrap::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 50%,rgba(0,229,255,0.1),transparent 65%);
  pointer-events:none;
}
#neuraxis-canvas{
  display:block;width:100%;height:100%;min-height:clamp(380px,50vw,500px);
  border-radius:var(--r-md);position:relative;z-index:1;
}

.accordion-item{border-bottom:1px solid var(--border)}
.accordion-trigger{
  width:100%;background:none;border:none;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 0;font-family:var(--ff-head);font-size:15px;font-weight:600;
  color:var(--text);text-align:left;min-height:44px;
}
.accordion-trigger:hover{color:var(--cyan)}
.accordion-icon{font-size:18px;color:var(--cyan)}
.accordion-body{max-height:0;overflow:hidden;transition:max-height 0.4s var(--ease)}
.accordion-body.open{max-height:500px}
.accordion-body-inner{padding:0 0 20px;font-size:14px;color:var(--text-2);line-height:1.75}

.prose h3{font-family:var(--ff-head);font-size:18px;font-weight:600;color:var(--text);margin:28px 0 10px}
.prose p{font-size:15px;color:var(--text-2);line-height:1.8;margin-bottom:16px}
.prose ul{list-style:none;margin-bottom:16px}
.prose ul li{font-size:15px;color:var(--text-2);padding:6px 0 6px 20px;position:relative;border-bottom:1px solid var(--border)}
.prose ul li::before{content:'—';position:absolute;left:0;color:var(--cyan);font-size:12px}

.article-hero{padding:clamp(60px,8vw,80px) 0 clamp(40px,5vw,52px);background:var(--bg-base);position:relative;overflow:hidden}
.article-hero::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(0,229,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,0.03) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,black 40%,transparent 100%);
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,black 40%,transparent 100%);
}
.article-wrap{max-width:800px;margin:0 auto;padding:0 clamp(16px,4vw,40px);position:relative;z-index:1}
.article-label{font-family:var(--ff-mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--cyan);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.article-label::before{content:'';display:block;width:24px;height:1px;background:var(--cyan)}
.article-title{font-family:var(--ff-display);font-size:clamp(2rem,4vw,2.9rem);font-weight:500;line-height:1.12;letter-spacing:-0.01em;color:var(--text);margin-bottom:18px}
.article-meta{font-size:14px;color:var(--text-2);display:flex;gap:20px;flex-wrap:wrap}
.article-body{padding:clamp(44px,6vw,56px) 0 clamp(60px,8vw,88px)}
.article-body h2{font-family:var(--ff-display);font-size:clamp(1.4rem,3vw,1.85rem);font-weight:500;color:var(--text);margin:44px 0 16px;letter-spacing:-0.01em}
.article-body h3{font-family:var(--ff-head);font-size:1.1rem;font-weight:600;color:var(--text);margin:28px 0 10px}
.article-body p{font-size:16px;color:var(--text-2);line-height:1.88;margin-bottom:20px;font-weight:300}
.article-body ul,.article-body ol{margin:0 0 18px;padding-left:0;list-style:none}
.article-body li{font-size:15px;color:var(--text-2);line-height:1.75;padding:8px 0 8px 22px;border-bottom:1px solid var(--border-3);position:relative}
.article-body li::before{content:'—';position:absolute;left:0;color:var(--cyan);font-size:12px}
.callout{background:var(--cyan-soft);border:1px solid var(--cyan-dim);border-radius:var(--r-md);padding:22px 26px;margin:28px 0}
.callout p{margin:0;color:var(--text);font-size:15px;line-height:1.7}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.atag{font-family:var(--ff-mono);font-size:9px;padding:4px 10px;border-radius:3px;background:var(--bg-glass);border:1px solid var(--border-3);color:var(--text-3);letter-spacing:0.04em}
.article-cta{
  background:linear-gradient(160deg,var(--bg-3),var(--bg-4));
  border:1px solid var(--border-2);border-radius:var(--r-lg);
  padding:clamp(28px,4vw,40px);text-align:center;margin-top:48px;
}
.article-cta h3{font-family:var(--ff-display);font-size:1.5rem;font-weight:400;color:var(--text);margin-bottom:12px}
.article-cta p{color:var(--text-2);font-size:15px;margin-bottom:24px}

.case-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start;padding:32px}
@media(max-width:960px){.case-detail-grid{grid-template-columns:1fr;padding:24px}}

/* ── CLIENT VALUE PROPS ── */
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-top:36px}
@media(max-width:960px){.value-grid{grid-template-columns:1fr}}
.value-card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:clamp(24px,3vw,32px);position:relative;overflow:hidden;
  transition:border-color 0.35s,transform 0.35s var(--ease),box-shadow 0.35s;
}
.value-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:0.5;
}
.value-card:hover{border-color:var(--border-2);transform:translateY(-3px);box-shadow:var(--shadow-card)}
.value-icon{
  width:48px;height:48px;border-radius:var(--r-md);
  background:var(--cyan-soft);border:1px solid var(--cyan-dim);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;
  font-size:22px;line-height:1;
}
.value-title{font-family:var(--ff-head);font-size:17px;font-weight:700;color:var(--text);margin-bottom:10px;letter-spacing:-0.01em}
.value-desc{font-size:14px;color:var(--text-2);line-height:1.7}
