:root{
  --bg:#0b0f1a; --surface:#111827; --border:#1f2937;
  --text:#e5e7eb; --muted:#9ca3af; --primary:#f33501; --primary-fg:#ffffff;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 1.25rem}
.section{padding:3.5rem 1.25rem}
.muted{color:var(--muted)}
.small{font-size:.875rem}
.center{text-align:center}
.accent{color:var(--primary)}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(11,15,26,.75);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo img{height:32px;width:auto;background:#fff;border-radius:4px;padding:4px 8px}
@media(min-width:640px){.logo img{height:40px}}
.nav-links{display:none;gap:2rem;font-size:.9rem}
.nav-links a:hover{color:var(--primary)}
@media(min-width:768px){.nav-links{display:flex}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-weight:600;font-size:.95rem;transition:transform .15s,opacity .15s;cursor:pointer;border:1px solid transparent}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--primary);color:var(--primary-fg)}
.btn-outline{border-color:var(--border);color:var(--text)}
.btn-outline:hover{border-color:var(--primary);color:var(--primary)}
.btn-sm{padding:.5rem 1rem;font-size:.875rem}

/* HERO */
.hero{padding-top:2.25rem;padding-bottom:4.2rem}
.hero-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr}}
.eyebrow{display:inline-block;font-size:.75rem;letter-spacing:.2em;color:var(--primary);font-weight:700;margin-bottom:1rem;text-transform:uppercase}
h1{font-size:clamp(2.25rem,5vw,3.75rem);font-weight:800;line-height:1.1;letter-spacing:-.02em}
.lead{margin-top:1.5rem;font-size:1.125rem;color:var(--muted);max-width:34rem}
.cta-row{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}
.cta-row.center{justify-content:center}
.hero-media{position:relative}
.hero-glow{position:absolute;inset:0;background:rgba(243,53,1,.2);filter:blur(80px);border-radius:50%}
.hero-img{position:relative;border-radius:16px;border:1px solid var(--border);aspect-ratio:1/1;object-fit:cover;box-shadow:0 0 60px rgba(243,53,1,.15)}
.hero-card{position:absolute;left:1.5rem;right:1.5rem;bottom:-1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;align-items:center;gap:1rem}
.hero-card-icon{width:48px;height:48px;border-radius:50%;background:var(--primary);display:grid;place-items:center;font-size:1.25rem}
.phone{font-weight:700;font-size:1.125rem}

/* CARDS / GRIDS */
.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;transition:border-color .2s}
.card.big{padding:2.5rem}
.card.center{padding:1.5rem;text-align:center}
.card.center:hover{border-color:rgba(243,53,1,.5)}
.grid-2{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.grid-2{grid-template-columns:1fr 1fr}}
.grid-3{display:grid;gap:1.5rem}
@media(min-width:768px){.grid-3{grid-template-columns:repeat(3,1fr)}}
.big-number{font-size:4.5rem;font-weight:800;color:var(--primary);line-height:1}
.big-number-label{margin-top:.5rem;font-size:1.25rem;font-weight:600;margin-bottom:1rem}
h2{font-size:clamp(1.875rem,3vw,2.5rem);font-weight:700;margin-bottom:1.5rem;letter-spacing:-.01em}
h3{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}
.subtitle{color:var(--primary);font-size:.875rem;font-weight:500;margin-bottom:1rem}
.icon-badge{width:56px;height:56px;border-radius:12px;background:rgba(243,53,1,.15);border:1px solid rgba(243,53,1,.3);display:grid;place-items:center;font-size:1.5rem;margin-bottom:1.5rem}
.commitment{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.commitment span{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--primary);font-weight:600;display:block;margin-bottom:.5rem}
.section-head{text-align:center;max-width:36rem;margin:0 auto 3rem}
.clients-grid{display:grid;gap:.75rem;margin-top:1.5rem}
@media(min-width:640px){.clients-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:768px){.clients-grid{grid-template-columns:repeat(3,1fr)}}
.sectors{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}
@media(min-width:640px){.sectors{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.sectors{grid-template-columns:repeat(5,1fr)}}
.sector-ico{font-size:1.75rem;margin-bottom:.5rem}

/* CTA */
.cta{padding:3rem;text-align:center;background:linear-gradient(135deg,rgba(243,53,1,.15),transparent);border-color:rgba(243,53,1,.3)}
.cta p{max-width:34rem;margin:1rem auto 0}

footer{border-top:1px solid var(--border);padding:2rem 0;margin-top:3rem}

/* WHATSAPP */
.wa-float{position:fixed;bottom:24px;right:24px;width:112px;height:112px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px rgba(0,0,0,.3);z-index:50;transition:transform .2s;animation:wa-bounce 1s infinite}
.wa-float:hover{transform:scale(1.05)}
@keyframes wa-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

p{margin-bottom:.75rem}
p:last-child{margin-bottom:0}

/* HERO OVERLAY TAGS */
.hero-overlay-tags {
  position: absolute;
  top: 8%;
  left: 6%;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  z-index: 10;
  max-width: 55%;
}
.hero-overlay-tag {
  display: inline-block;
  padding: 0.5rem 1rem;
  border-radius: 8px;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background-color: rgba(255, 255, 255, 0.76);
  box-shadow: 0 0 12px 6px rgba(255, 255, 255, 0.7);
  animation: pulse-bg-glow 1s infinite ease-in-out;
}
.hero-overlay-tag h2 {
  color: #f33501;
  font-size: clamp(0.65rem, 2vw, 1.1rem);
  font-weight: 800;
  margin: 0;
  letter-spacing: 0.05em;
  line-height: 1.2;
  transition: color 0.2s ease;
}
.hero-overlay-tag:hover h2 {
  color: #22d3ee;
}
.hero-overlay-tag:hover {
  transform: translateY(-2px);
}

@keyframes pulse-bg-glow {
  0%, 100% {
    background-color: rgba(255, 255, 255, 0.76);
    box-shadow: 0 0 12px 6px rgba(255, 255, 255, 0.7);
  }
  50% {
    background-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0 0 16px 8px rgba(255, 255, 255, 0.85);
  }
}

/* SVG Icon styles */
.hero-card-icon svg {
  width: 24px;
  height: 24px;
  stroke: var(--primary-fg);
  display: block;
}
.icon-badge svg {
  width: 28px;
  height: 28px;
  stroke: var(--primary);
  display: block;
}
.sector-ico svg {
  width: 32px;
  height: 32px;
  stroke: var(--primary);
  margin: 0 auto 0.5rem;
  display: block;
}

/* Adjustments for smaller screens to make sure text is extremely legible and fits */
@media (max-width: 640px) {
  .hero-overlay-tags {
    top: 6%;
    left: 4%;
    gap: 0.75rem;
    max-width: 65%;
  }
  .hero-overlay-tag {
    padding: 0.4rem 0.8rem;
  }
  .wa-float {
    width: 64px;
    height: 64px;
    bottom: 16px;
    right: 16px;
  }
  .wa-float svg {
    width: 32px;
    height: 32px;
  }
}
