:root{
  --bg:#051322;
  --bg-2:#081d32;
  --card:#0b2540;
  --card-2:#0a2d4b;
  --line:rgba(87,212,255,.16);
  --primary:#2ad8ff;
  --primary-2:#2c8dff;
  --text:#eff8ff;
  --muted:#9eb4c9;
  --shadow:0 26px 60px rgba(0,0,0,.28);
  --radius:22px;
  --max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 20%,rgba(42,216,255,.10),transparent 18%),
    radial-gradient(circle at 85% 8%,rgba(44,141,255,.16),transparent 20%),
    linear-gradient(180deg,#04111f,#071527 44%,#04101d);
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
.bg-grid{
  position:fixed; inset:0; z-index:-2; pointer-events:none;
  background-image:
    linear-gradient(rgba(64,213,255,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(64,213,255,.028) 1px, transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(180deg, black 40%, transparent 100%);
}
.header{
  position:sticky; top:0; z-index:50;
  width:min(calc(100% - 28px), var(--max));
  margin:0 auto;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:14px 0;
  background:rgba(4,16,29,.74);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
}
.brand img{width:210px}
.nav{display:flex; gap:24px; font-size:13px; font-weight:700; color:#d0e4f2}
.nav a{position:relative}
.nav a::after{content:""; position:absolute; left:0; bottom:-8px; width:0; height:2px; background:var(--primary); transition:.25s}
.nav a:hover::after{width:100%}
.header-actions{display:flex; align-items:center; gap:12px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:12px 18px;
  font-weight:800; border:1px solid transparent; cursor:pointer; transition:.25s;
}
.btn:hover{transform:translateY(-2px)}
.btn-lg{padding:14px 22px}
.btn-primary{
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  color:#04111c;
  box-shadow:0 14px 30px rgba(42,216,255,.20);
}
.btn-secondary{
  background:rgba(255,255,255,.04);
  border-color:rgba(96,219,255,.34);
  color:#f3fbff;
}
.full{width:100%}
.menu-btn{
  width:44px;height:44px;display:none;border-radius:12px;
  border:1px solid var(--line);background:rgba(255,255,255,.04);padding:10px
}
.menu-btn span{display:block;height:2px;background:#fff;border-radius:4px;margin:5px 0}

.hero{
  width:min(calc(100% - 28px), var(--max));
  margin:0 auto;
  padding:54px 0 36px;
  display:grid; grid-template-columns:1fr 1.06fr; gap:36px; align-items:center;
}
.hero-content h1{
  font-size:clamp(42px,5.8vw,74px);
  line-height:1;
  letter-spacing:-.045em;
  margin:12px 0 18px;
}
.hero-content p{
  font-size:17px; line-height:1.72; color:var(--muted); margin:0;
}
.eyebrow{
  display:inline-block; font-size:11px; letter-spacing:.16em;
  text-transform:uppercase; font-weight:900; color:var(--primary);
}
.hero-actions{display:flex; gap:12px; flex-wrap:wrap; margin:28px 0}
.hero-kpis{
  display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px;
}
.hero-kpis article,.glass-card,.feature-card,.benefit{
  background:linear-gradient(145deg, rgba(10,42,69,.88), rgba(7,24,42,.82));
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
}
.hero-kpis article{padding:16px}
.hero-kpis strong,.hero-kpis span{display:block}
.hero-kpis strong{font-size:14px}
.hero-kpis span{font-size:11px; color:var(--muted); margin-top:4px}
.hero-image img{
  border-radius:26px;
  border:1px solid rgba(89,220,255,.18);
  box-shadow:0 40px 70px rgba(0,0,0,.34);
}

.section{
  width:min(calc(100% - 28px), var(--max));
  margin:0 auto;
  padding:84px 0;
}
.dark{
  width:100%;
  padding-left:max(14px, calc((100vw - var(--max))/2));
  padding-right:max(14px, calc((100vw - var(--max))/2));
  background:linear-gradient(180deg,rgba(5,20,35,.72),rgba(4,15,28,.90));
  border-top:1px solid rgba(73,213,255,.08);
  border-bottom:1px solid rgba(73,213,255,.08);
}
.section-head{max-width:760px;margin-bottom:30px}
.section-head h2{font-size:clamp(34px,4.5vw,56px); line-height:1.06; letter-spacing:-.04em; margin:10px 0 12px}
.section-head p{font-size:15px; line-height:1.7; color:var(--muted); margin:0}

.solution-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:14px;
}
.glass-card{padding:22px}
.glass-card h3{margin:0 0 10px; font-size:18px}
.glass-card p{margin:0; font-size:13px; line-height:1.68; color:var(--muted)}

.features-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:14px;
}
.feature-card{padding:20px}
.feature-card span{font-size:28px; color:var(--primary)}
.feature-card h3{margin:12px 0 8px; font-size:17px}
.feature-card p{margin:0; font-size:12px; line-height:1.64; color:var(--muted)}

.media-block .two-col{
  display:grid; grid-template-columns:.95fr 1.05fr; gap:24px; align-items:center;
}
.media-block .two-col.reverse{grid-template-columns:1.05fr .95fr}
.copy h2{font-size:clamp(32px,4.2vw,52px); line-height:1.08; letter-spacing:-.04em; margin:10px 0 14px}
.copy p{font-size:15px; line-height:1.75; color:var(--muted); margin:0}
.check-list{list-style:none; padding:0; margin:22px 0 0; display:grid; gap:10px}
.check-list li{
  position:relative; padding-left:28px; color:#d7e7f5; font-size:14px;
}
.check-list li::before{
  content:"✓"; position:absolute; left:0; top:0;
  width:20px; height:20px; display:grid; place-items:center;
  border-radius:50%; color:#04111d; font-weight:900;
  background:linear-gradient(135deg, var(--primary), var(--primary-2));
}
.image-card img{
  border-radius:24px;
  border:1px solid rgba(89,220,255,.16);
  box-shadow:0 34px 70px rgba(0,0,0,.34);
}

.benefits-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
}
.benefit{padding:20px}
.benefit b{display:block; font-size:18px; margin-bottom:8px}
.benefit p{margin:0; font-size:13px; line-height:1.68; color:var(--muted)}

.cta-box{
  display:grid; grid-template-columns:.85fr 1.15fr; gap:24px;
  padding:28px;
  border-radius:26px;
  border:1px solid rgba(86,220,255,.28);
  background:linear-gradient(145deg, rgba(12,50,82,.90), rgba(5,23,40,.92));
  box-shadow:var(--shadow);
}
.cta-copy h2{font-size:clamp(32px,4vw,48px); line-height:1.08; letter-spacing:-.04em; margin:10px 0 14px}
.cta-copy p{font-size:15px; line-height:1.74; color:var(--muted); margin:0}
.contact-form{
  padding:20px;
  border-radius:18px;
  border:1px solid rgba(90,220,255,.14);
  background:rgba(1,13,24,.42);
}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.contact-form label{display:grid; gap:7px; margin-bottom:12px}
.contact-form label span{
  font-size:10px; letter-spacing:.08em; text-transform:uppercase;
  color:#9fb8cb; font-weight:800;
}
.contact-form input,.contact-form textarea{
  width:100%; border:none; outline:none;
  border-radius:12px; padding:13px 14px;
  color:#fff; background:rgba(255,255,255,.06);
  border:1px solid rgba(103,219,255,.14);
}
.contact-form input:focus,.contact-form textarea:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(42,216,255,.08);
}
.form-message{display:block; margin-top:10px; color:var(--muted); text-align:center}

.whatsapp-float{
  position:fixed; right:18px; bottom:18px; z-index:60;
  background:linear-gradient(135deg,#29e86f,#13b84e);
  color:#04110c; font-weight:900;
  border-radius:999px; padding:14px 18px;
  box-shadow:0 18px 34px rgba(0,0,0,.25);
}
.footer{
  width:min(calc(100% - 28px), var(--max));
  margin:0 auto;
  padding:34px 0 40px;
  border-top:1px solid var(--line);
  display:grid; grid-template-columns:1fr auto; gap:20px; align-items:end;
}
.footer-brand img{width:180px}
.footer-brand p{font-size:12px; color:var(--muted)}
.footer-links{display:flex; gap:18px; flex-wrap:wrap; font-size:12px; color:#c8dcec}
.footer small{grid-column:1/-1; color:#6f8aa2}

.reveal{opacity:0; transform:translateY(18px); transition:.7s ease}
.reveal.visible{opacity:1; transform:none}

@media (max-width:1100px){
  .nav{display:none}
  .nav.open{
    display:flex; flex-direction:column; align-items:flex-start; gap:16px;
    position:absolute; top:76px; left:0; right:0;
    background:#081a2e; padding:18px;
    border:1px solid var(--line); border-radius:0 0 16px 16px;
  }
  .menu-btn{display:block}
  .hero,.media-block .two-col,.media-block .two-col.reverse,.cta-box{grid-template-columns:1fr}
  .solution-grid,.features-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .brand img{width:185px}
  .hide-mobile{display:none}
  .hero{padding-top:34px}
  .hero-kpis{grid-template-columns:1fr}
  .solution-grid,.features-grid,.benefits-grid,.form-grid{grid-template-columns:1fr}
  .footer{grid-template-columns:1fr}
}
