*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Work Sans', sans-serif; background: #fff; color: #1A2E44; -webkit-font-smoothing: antialiased; }
a { color: #0059B3; text-decoration: none; }
a:hover { color: #F47920; }
h1, h2, h3, h4 { font-family: 'Plus Jakarta Sans', sans-serif; }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: translateY(0); } }
.hs-form-frame { width: 100%; }
img { max-width: 100%; height: auto; }

/* ── Responsive (versión actual entregada por Claude Design) ── */
@media (max-width: 900px) {
  .hero-grid   { grid-template-columns: 1fr !important; }
  .hero-stats  { grid-template-columns: 1fr 1fr !important; margin-top: 40px; }
  .two-col     { grid-template-columns: 1fr !important; }
  .five-col    { grid-template-columns: 1fr 1fr !important; }
  .four-col    { grid-template-columns: 1fr 1fr !important; }
  .three-col   { grid-template-columns: 1fr 1fr !important; }
  .form-grid   { grid-template-columns: 1fr !important; gap: 40px !important; }
}
@media (max-width: 560px) {
  .five-col    { grid-template-columns: 1fr !important; }
  .four-col    { grid-template-columns: 1fr !important; }
  .three-col   { grid-template-columns: 1fr !important; }
  .hero-stats  { grid-template-columns: 1fr 1fr !important; }
  .nav-inner   { padding: 0 4% !important; }
  .section-pad { padding: 60px 4% !important; }
}

/* ── Responsive (compatibilidad con la versión V2, por si sigue publicada) ── */
@media (max-width: 900px) {
  .lp-grid-hero { grid-template-columns: 1fr !important; gap: 40px !important; }
  .lp-grid-2col { grid-template-columns: 1fr !important; gap: 32px !important; }
  .lp-grid-5col { grid-template-columns: repeat(2, 1fr) !important; }
  .lp-grid-cases { grid-template-columns: 1fr !important; }
  .lp-grid-3col { grid-template-columns: repeat(2, 1fr) !important; }
  .lp-grid-form { grid-template-columns: 1fr !important; gap: 40px !important; }
}
@media (max-width: 600px) {
  .lp-grid-stats { grid-template-columns: 1fr !important; }
  .lp-grid-5col { grid-template-columns: 1fr !important; }
  .lp-grid-3col { grid-template-columns: 1fr !important; }
  nav { padding: 0 4% !important; height: auto !important; min-height: 64px; flex-wrap: wrap; gap: 10px; padding-top: 10px !important; padding-bottom: 10px !important; }
  nav img { height: 38px !important; }
  nav a { padding: 10px 18px !important; font-size: 13px !important; }
  section { padding-left: 6% !important; padding-right: 6% !important; }
}
