* { box-sizing: border-box; }
  html { scroll-behavior: smooth; overflow-x: hidden; }
  body { font-family: 'Inter', sans-serif; background: #0a0d12; color: #ffffff; overflow-x: hidden; max-width: 100vw; }

  :root {
    --blue-primary: #1a6fd4;
    --blue-dark: #0d3d7a;
    --blue-light: #4da3ff;
    --blue-electric: #00aaff;
    --black: #0a0d12;
    --black-card: #111827;
    --silver: #b0bec5;
    --silver-light: #cfd8dc;
    --green-accent: #22c55e;
    --white: #ffffff;
  }

  @keyframes shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
  }

  @keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-8px); }
  }

  @keyframes fadeInUp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
  }

  @keyframes glow-pulse {
    0%, 100% { box-shadow: 0 0 20px rgba(26, 111, 212, 0.4); }
    50% { box-shadow: 0 0 40px rgba(26, 111, 212, 0.8), 0 0 60px rgba(0, 170, 255, 0.3); }
  }

  @keyframes circuit-flow {
    0% { opacity: 0.3; }
    50% { opacity: 1; }
    100% { opacity: 0.3; }
  }

  .animate-fadeInUp { animation: fadeInUp 0.8s ease-out forwards; }
  .animate-float { animation: float 3s ease-in-out infinite; }
  .glow-btn { animation: glow-pulse 2s ease-in-out infinite; }

  .shimmer-btn { position: relative; overflow: hidden; }
  .shimmer-btn::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
    animation: shimmer 2s infinite;
  }

  .hero-bg {
    background: linear-gradient(135deg, #0a0d12 0%, #0d1a2e 40%, #0d3d7a 100%);
  }

  .card-glass {
    background: rgba(17, 24, 39, 0.8);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(26, 111, 212, 0.25);
  }

  .card-glass:hover {
    border-color: rgba(26, 111, 212, 0.6);
    transform: translateY(-4px);
    transition: all 0.3s ease;
  }

  .text-gradient {
    background: linear-gradient(135deg, #4da3ff, #00aaff, #22c55e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .text-gradient-blue {
    background: linear-gradient(135deg, #4da3ff, #1a6fd4);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .section-dark { background: #0a0d12; }
  .section-darker { background: #060810; }
  .section-card { background: #0d1420; }

  .glow-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
    z-index: 0;
  }

  .circuit-line {
    animation: circuit-flow 3s ease-in-out infinite;
  }

  .service-card {
    background: linear-gradient(135deg, rgba(13,29,58,0.9) 0%, rgba(10,13,18,0.95) 100%);
    border: 1px solid rgba(26, 111, 212, 0.2);
    transition: all 0.3s ease;
  }

  .service-card:hover {
    border-color: rgba(0, 170, 255, 0.5);
    box-shadow: 0 8px 32px rgba(26, 111, 212, 0.3);
    transform: translateY(-6px);
  }

  .stat-counter {
    background: linear-gradient(135deg, rgba(26,111,212,0.2), rgba(0,170,255,0.1));
    border: 1px solid rgba(26,111,212,0.3);
  }

  nav a { transition: color 0.2s ease; }
  nav a:hover { color: #4da3ff; }

  .depo-card {
    background: linear-gradient(135deg, rgba(17,24,39,0.9), rgba(10,13,18,0.9));
    border: 1px solid rgba(26,111,212,0.2);
    transition: all 0.3s ease;
  }
  .depo-card:hover {
    border-color: rgba(26,111,212,0.5);
    box-shadow: 0 4px 24px rgba(26,111,212,0.2);
  }

  .diff-card {
    background: rgba(13,29,58,0.6);
    border: 1px solid rgba(26,111,212,0.2);
    transition: all 0.3s ease;
  }
  .diff-card:hover {
    background: rgba(13,29,58,0.9);
    border-color: rgba(0,170,255,0.4);
    transform: translateY(-4px);
  }

  @media (max-width: 640px) {
    .hero-title { font-size: 2rem; line-height: 1.2; }
  }

/* ── Botões: proteção global ── */
button,
input[type="button"],
input[type="submit"] {
    max-width: 100%;
    box-sizing: border-box;
    white-space: nowrap;
    line-height: 1.2;
}

/* ── WhatsApp links: alinhamento ícone+texto em todas as resoluções ── */
a[href*="wa.me"],
a[href*="whatsapp.com"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    max-width: 100%;
    box-sizing: border-box;
    white-space: nowrap;
    line-height: 1.2;
    text-decoration: none;
}


/* ── Navbar ≤ 767px: remove CTA/WhatsApp no mobile ── */
@media (max-width: 767px) {
    nav a[href*="wa.me"],
    nav a[href*="whatsapp.com"] {
        display: none !important;
    }
}