
/* ══════════════════════════════════════════
   ESTILOS ADICIONALES – PÁGINAS INTERNAS
   Añadir al final de global.css
   ══════════════════════════════════════════ */

/* CONTACT PAGE */
.contact-grid { display:grid; grid-template-columns:1fr 360px; gap:3rem; align-items:start; }
@media(max-width:900px){ .contact-grid { grid-template-columns:1fr; } }
.contact-form-wrap { background:white; border-radius:1.5rem; padding:2.5rem; box-shadow:0 4px 24px rgba(10,61,44,.08); border:1px solid rgba(0,0,0,.05); }
.form-header { margin-bottom:2rem; }
.form-header h2 { font-size:1.5rem; color:var(--navy); margin:.5rem 0; }
.form-header p { color:var(--muted); }
.form-alert { padding:1rem 1.5rem; border-radius:.75rem; margin-bottom:1.5rem; font-weight:500; }
.form-alert-success { background:#f0fdf9; border:1px solid rgba(0,201,167,.4); color:#065f46; }
.form-alert-error { background:#fef2f2; border:1px solid rgba(239,68,68,.3); color:#991b1b; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media(max-width:600px){ .form-row { grid-template-columns:1fr; } }
.form-group { margin-bottom:1.25rem; }
.form-group label { display:block; font-size:.875rem; font-weight:600; color:var(--navy); margin-bottom:.4rem; }
.form-group input, .form-group select, .form-group textarea {
  width:100%; padding:.7rem 1rem; border:2px solid rgba(0,0,0,.1); border-radius:.625rem;
  font-family:var(--font-body); font-size:.95rem; color:var(--text); background:#FAFAF8;
  transition:border-color .2s; box-sizing:border-box;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { outline:none; border-color:var(--accent); }
.form-group input.error, .form-group select.error, .form-group textarea.error { border-color:#ef4444; }
.field-error { font-size:.8rem; color:#ef4444; margin-top:.25rem; display:block; }
.form-check { display:flex; gap:.75rem; align-items:flex-start; margin-bottom:1.5rem; }
.form-check input[type=checkbox] { flex-shrink:0; width:18px; height:18px; margin-top:2px; accent-color:var(--accent); }
.form-check label { font-size:.875rem; color:var(--muted); line-height:1.5; }
.form-check label a { color:var(--navy); text-decoration:underline; }
.form-disclaimer { text-align:center; font-size:.8rem; color:var(--muted); margin-top:.75rem; }
.btn-full { width:100%; justify-content:center; }
.contact-card { background:white; border-radius:1rem; padding:1.5rem; margin-bottom:1.25rem; box-shadow:0 1px 3px rgba(0,0,0,.08); border:1px solid rgba(0,0,0,.05); }
.contact-card h3 { font-family:var(--font-head); color:var(--navy); font-size:1.1rem; margin:0 0 1rem; }
.contact-card-accent { background:linear-gradient(135deg,rgba(255,140,0,.08),rgba(10,61,44,.03)); border-color:rgba(255,140,0,.2); }
.contact-card-dark { background:var(--navy); }
.contact-list { list-style:none; padding:0; margin:0; }
.contact-list li { display:flex; gap:.75rem; padding:.75rem 0; border-bottom:1px solid #f8fafc; }
.contact-list li:last-child { border:none; }
.contact-icon { font-size:1.25rem; flex-shrink:0; margin-top:2px; }
.contact-list strong { display:block; font-size:.85rem; color:var(--navy); margin-bottom:.15rem; }
.contact-list a, .contact-list span { font-size:.9rem; color:var(--muted); }
.contact-list a:hover { color:var(--accent); }
.check-list { list-style:none; padding:0; margin:0; }
.check-list li { padding:.4rem 0; font-size:.9rem; color:#374151; }
.testimonial-mini .stars { color:#f59e0b; font-size:1.1rem; margin-bottom:.75rem; }
.testimonial-mini p { color:rgba(255,255,255,.85); font-style:italic; font-size:.9rem; line-height:1.6; }
.testimonial-mini strong { color:rgba(255,255,255,.6); font-size:.8rem; display:block; margin-top:.5rem; }
.btn-whatsapp { background:#25D366; color:#fff; display:inline-flex; align-items:center; gap:.5rem; justify-content:center; border-radius:999px; }
.btn-whatsapp:hover { background:#1ebe5a; color:#fff; }
.faq-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr)); gap:1rem; }

/* CALCULADORAS HUB */
.calc-hub-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr)); gap:2rem; }
.calc-hub-card { display:flex; gap:1.5rem; background:white; border-radius:1.25rem; padding:1.75rem; box-shadow:0 2px 12px rgba(10,61,44,.07); border:1px solid rgba(0,0,0,.05); text-decoration:none; transition:transform .2s, box-shadow .2s; }
.calc-hub-card:hover { transform:translateY(-4px); box-shadow:0 8px 30px rgba(10,61,44,.13); }
.calc-hub-icon { width:64px; height:64px; border-radius:1rem; display:flex; align-items:center; justify-content:center; font-size:1.75rem; flex-shrink:0; }
.calc-hub-content { flex:1; }
.calc-hub-content h2 { font-size:1.15rem; color:var(--navy); margin:.3rem 0 .5rem; line-height:1.3; }
.calc-hub-content p { font-size:.9rem; color:var(--muted); line-height:1.6; margin:0 0 .75rem; }
.calc-features { list-style:none; padding:0; margin:0 0 1rem; display:grid; grid-template-columns:1fr 1fr; gap:.2rem; }
.calc-features div { font-size:.82rem; color:#374151; }
.btn-sm { padding:.45rem .9rem; font-size:.85rem; }
.btn-accent { background:#FF8C00; color:#fff; font-weight:800; border-radius:9999px; }
.btn-accent:hover { background:#e67e00; color:white; }
.info-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:1.5rem; }
.info-card { background:white; border-radius:1rem; padding:1.5rem; border:1px solid rgba(0,0,0,.05); }
.info-card h3 { font-family:var(--font-head); color:var(--navy); font-size:1rem; margin:0 0 .75rem; }
.info-card p { font-size:.9rem; color:var(--muted); line-height:1.6; margin:0; }
.cta-section { background:linear-gradient(165deg,#071f17 0%,#0A3D2C 62%,#14664A 100%); }
.cta-box { text-align:center; color:white; }
.cta-box h2 { font-size:clamp(1.75rem,3.5vw,2.5rem); color:white; }
.cta-box p { color:rgba(255,255,255,.8); font-size:1.1rem; max-width:600px; margin:1rem auto 2rem; }
.cta-actions { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.btn-outline-white { border:2px solid rgba(255,255,255,.5); color:white; background:transparent; }
.btn-outline-white:hover { background:white; color:var(--navy); }

/* SERVICIOS */
.service-detail-card { display:flex; gap:2rem; background:white; border-radius:1.25rem; padding:2rem; margin-bottom:2rem; box-shadow:0 2px 12px rgba(10,61,44,.06); border:1px solid rgba(0,0,0,.05); }
@media(max-width:700px){ .service-detail-card { flex-direction:column; } }
.service-detail-icon { width:72px; height:72px; background:linear-gradient(135deg,#0A3D2C,#14664A); border-radius:1.25rem; display:flex; align-items:center; justify-content:center; font-size:2rem; flex-shrink:0; }
.service-detail-content h3 { font-size:1.35rem; color:var(--navy); margin:.25rem 0 .75rem; }
.service-detail-content > p { color:#374151; line-height:1.7; margin-bottom:1rem; }
.service-includes { background:#FAFAF8; border-radius:.75rem; padding:1.25rem; margin-top:1rem; }
.service-includes h4 { font-size:.85rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--muted); margin:0 0 .75rem; }
.includes-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr)); gap:.4rem; }
.includes-grid div { font-size:.875rem; color:#374151; padding:.15rem 0; }
.pricing-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1.5rem; }
.pricing-card { background:white; border-radius:1.25rem; padding:2rem; border:2px solid rgba(0,0,0,.05); position:relative; }
.pricing-card-featured { border-color:var(--accent); background:linear-gradient(135deg,rgba(0,201,167,.03),white); }
.pricing-badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--accent); color:var(--navy); font-size:.75rem; font-weight:700; padding:.25rem .75rem; border-radius:2rem; white-space:nowrap; }
.pricing-header { text-align:center; margin-bottom:1.5rem; }
.pricing-icon { font-size:2.5rem; display:block; margin-bottom:.5rem; }
.pricing-header h3 { font-family:var(--font-head); color:var(--navy); font-size:1.5rem; margin:0 0 .25rem; }
.pricing-sub { color:var(--muted); font-size:.9rem; }
.pricing-features { margin-bottom:1.5rem; }
.pricing-features div { padding:.4rem 0; font-size:.875rem; color:#374151; border-bottom:1px solid #f8fafc; }
.pricing-features .feat-no { color:#94a3b8; }
.process-steps { display:flex; align-items:flex-start; gap:1rem; flex-wrap:wrap; }
.process-step { flex:1; min-width:180px; text-align:center; }
.step-num { width:48px; height:48px; border-radius:50%; background:var(--navy); color:white; font-family:var(--font-head); font-weight:800; font-size:1.1rem; display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; }
.process-step h4 { font-family:var(--font-head); color:var(--navy); margin:0 0 .5rem; }
.process-step p { font-size:.875rem; color:var(--muted); line-height:1.6; }
.process-arrow { font-size:1.5rem; color:var(--accent); margin-top:14px; flex-shrink:0; }
@media(max-width:600px){ .process-arrow { display:none; } }
.bg-navy-gradient { background:linear-gradient(165deg,#071f17 0%,#0A3D2C 62%,#14664A 100%); }
.guarantee-box { display:flex; gap:2rem; align-items:flex-start; color:white; }
@media(max-width:600px){ .guarantee-box { flex-direction:column; } }
.guarantee-icon { font-size:4rem; flex-shrink:0; }
.guarantee-box h2 { color:white; font-size:1.75rem; }
.guarantee-box p { color:rgba(255,255,255,.85); line-height:1.7; }

/* NOSOTROS */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
@media(max-width:800px){ .about-grid { grid-template-columns:1fr; } }
.about-story h2 { font-size:1.75rem; color:var(--navy); margin:.75rem 0 1.25rem; }
.about-story p { color:#374151; line-height:1.8; margin-bottom:1rem; }
.about-values { display:flex; flex-direction:column; gap:1.25rem; }
.value-card { background:white; border-radius:1rem; padding:1.5rem; border:1px solid rgba(0,0,0,.05); box-shadow:0 1px 4px rgba(0,0,0,.06); display:flex; gap:1rem; align-items:flex-start; }
.value-icon { font-size:1.75rem; flex-shrink:0; }
.value-card h4 { font-family:var(--font-head); color:var(--navy); margin:0 0 .4rem; }
.value-card p { color:var(--muted); font-size:.9rem; line-height:1.6; margin:0; }
.cert-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:1.5rem; }
.cert-card { background:white; border-radius:1rem; padding:1.5rem; text-align:center; border:1px solid rgba(0,0,0,.05); box-shadow:0 1px 4px rgba(0,0,0,.06); }
.cert-icon { font-size:2.5rem; display:block; margin-bottom:.75rem; }
.cert-card h4 { font-family:var(--font-head); color:var(--navy); font-size:.95rem; margin:0 0 .5rem; }
.cert-card p { color:var(--muted); font-size:.85rem; line-height:1.5; margin:0; }

/* ═══════════════════════════════════════════════════════════
   360 REMOTO — Responsive / Mobile polish (todas las vistas)
   Cargar DESPUÉS de global.css y pages.css
═══════════════════════════════════════════════════════════ */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html, body {
  max-width: 100%;
  overflow-x: clip;
}
body {
  padding-bottom: env(safe-area-inset-bottom, 0);
}

img, video, canvas, svg {
  max-width: 100%;
  height: auto;
}

iframe, embed, object {
  max-width: 100%;
}

/* Tablas: nunca rompen el viewport */
table {
  max-width: 100%;
}
.table-scroll,
.article-body,
.article-content,
.blog-content,
.content-block,
.calc-main,
.payroll-page {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.article-body table,
.article-content table,
.blog-content table,
.content-block table,
.calc-main table {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Contenedores fluidos */
.container {
  width: 100%;
  max-width: var(--max, 1160px);
  padding-left: max(16px, env(safe-area-inset-left));
  padding-right: max(16px, env(safe-area-inset-right));
  box-sizing: border-box;
}

/* Botones: no forzar ancho rígido en móvil */
.btn-primary,
.btn-secondary,
.btn-outline,
.btn-ghost,
.btn360,
.nav-cta {
  white-space: normal;
  text-align: center;
  max-width: 100%;
}

/* CTA lead embudo */
.cta-lead-360 {
  box-sizing: border-box;
  max-width: 100%;
}
.cta-lead-360 > div {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}
.cta-lead-360 a {
  box-sizing: border-box;
}

/* ─── TABLET ─────────────────────────────────────────────── */
@media (max-width: 960px) {
  section,
  .section {
    padding: 44px 4%;
  }

  .page-hero {
    padding: 40px 4% 36px;
  }

  .nav-logo {
    font-size: 1.05rem;
    max-width: calc(100vw - 170px);
  }
  #mainNav a.nav-lockup {
    overflow: visible;
    text-overflow: unset;
    white-space: normal;
    max-width: none;
  }

  /* Grids genéricos → una o dos columnas cómodas */
  .faq-grid,
  .calc-hub-grid,
  .proof-grid,
  .blog-grid,
  .includes-grid,
  .pricing-grid,
  .info-grid,
  .cert-grid,
  .problemas-grid,
  .benefits-grid,
  .services-grid,
  .steps-grid,
  .calc-cards-grid {
    grid-template-columns: 1fr !important;
  }

  .contact-grid,
  .about-grid,
  .diferenciadores-grid,
  .service-detail-card,
  .guarantee-box,
  .calc-hub-card {
    grid-template-columns: 1fr !important;
    flex-direction: column;
  }

  .calc-features {
    grid-template-columns: 1fr !important;
  }

  .process-steps {
    flex-direction: column;
    align-items: stretch;
  }
  .process-step {
    min-width: 0;
  }
  .process-arrow {
    display: none !important;
  }

  /* Calculadoras */
  .calc-hero-inner,
  .calc-layout,
  .section-grid,
  .cta-grid,
  .link-cards,
  .faq-list,
  .search-grid,
  .sua-steps,
  .sua-actions.sua-download-grid {
    grid-template-columns: 1fr !important;
  }

  .calc-hero {
    padding: 40px 4% 48px !important;
  }

  /* Blog article layouts */
  .article-wrap,
  .blog-wrap,
  .grid {
    grid-template-columns: 1fr !important;
  }

  .cta-contact-grid,
  .cta-grid,
  .trust-grid,
  .links-grid {
    grid-template-columns: 1fr !important;
  }

  /* Footer */
  .footer-inner,
  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
  }
}

/* ─── MÓVIL ──────────────────────────────────────────────── */
@media (max-width: 680px) {
  html {
    font-size: 15px;
  }

  section,
  .section {
    padding: 36px 4%;
  }

  .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .page-hero {
    padding: 32px 4% 30px;
  }
  .page-hero h1 {
    font-size: 40px;
    line-height: 1.2;
  }
  .page-hero p {
    font-size: 1rem;
  }

  .section-title {
    font-size: clamp(1.45rem, 6.5vw, 1.9rem);
  }
  .section-sub {
    font-size: .98rem;
    margin-bottom: 20px;
  }

  .footer-inner,
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .card,
  .contact-form-wrap,
  .calc-hub-card,
  .info-card,
  .pricing-card,
  .service-detail-card {
    padding: 1.15rem !important;
    border-radius: 14px !important;
  }

  .calc-hub-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .btn-primary,
  .btn-secondary,
  .btn-outline,
  .btn-ghost,
  .btn360,
  .hero-ctas .btn-primary,
  .hero-ctas .btn-ghost,
  .cta-actions a,
  .cta-actions .btn-primary,
  .cta-actions .btn-outline,
  .cta-actions .btn-outline-white {
    width: 100%;
    justify-content: center;
  }

  .hero-ctas,
  .cta-actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .form-row {
    grid-template-columns: 1fr !important;
  }

  /* Stats / trust: 2 cols cómodas, no 4 apretadas */
  .stats-bar,
  .stats-grid,
  .hero-trust,
  .panel-metrics,
  .trust-strip {
    grid-template-columns: 1fr 1fr !important;
  }

  .stat-number,
  .stat-suffix {
    font-size: clamp(1.6rem, 8vw, 2.2rem) !important;
  }

  /* Evita “cuadrados” altos en cards de blog/home */
  .blog-card-img {
    height: 150px !important;
  }

  .dif-row {
    grid-template-columns: 1fr !important;
    gap: 8px;
  }

  /* Espacio inferior para WA flotante */
  body {
    padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
  }

  .wa-float {
    bottom: max(16px, env(safe-area-inset-bottom)) !important;
    right: max(16px, env(safe-area-inset-right)) !important;
    width: 56px;
    height: 56px;
  }
  .wa-float .wa-tooltip {
    display: none;
  }

  .cta-lead-360 {
    margin: 1.25rem 0 !important;
    padding: 1.1rem 1rem !important;
    border-radius: 14px !important;
  }
  .cta-lead-360 h3 {
    font-size: 1.05rem !important;
  }
  .cta-lead-360 a {
    flex: 1 1 100%;
    width: 100%;
  }

  /* Banner superior home */
  .top-promo-banner {
    gap: 10px !important;
    padding: 10px 4% !important;
    font-size: .8rem !important;
  }
  .top-promo-banner .top-promo-sep {
    display: none;
  }
  .top-promo-banner a {
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
}

/* ─── MÓVIL PEQUEÑO ──────────────────────────────────────── */
@media (max-width: 400px) {
  .stats-bar,
  .hero-trust,
  .trust-strip,
  .panel-metrics {
    grid-template-columns: 1fr !important;
  }

  .nav-logo {
    font-size: .95rem;
  }
}

/* Prefers reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Visual unify: Inter, forest heroes, reading column, quote cards */
.article-hero,
.article-cta,
.faq-cta {
  background: linear-gradient(165deg, #071f17 0%, #0A3D2C 62%, #14664A 100%) !important;
}
.privacy-content,
section.section .faq-wrap,
.article-content {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.privacy-content,
section.section .faq-wrap {
  padding: 48px 0;
}
.testimonial,
blockquote.cotiza-card,
.cotiza-card {
  background: #F1F5F9;
  border-left: 4px solid #0B2447;
}

/* Header pills must win after pages.css copy of responsive rules */
#mainNav.site-header .nav-actions a.nav-phone,
#mainNav .nav-actions a.nav-phone,
.site-header a.nav-phone {
  display: none !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  background: #0A3D2C !important;
  color: #fff !important;
  padding: 6px 12px !important;
  border-radius: 9999px !important;
  text-decoration: none !important;
  border: 0 !important;
  white-space: nowrap !important;
}
#mainNav.site-header .nav-actions a.nav-wa,
#mainNav .nav-actions a.nav-wa,
.site-header a.nav-wa {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: Inter, sans-serif !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  background: #FF8C00 !important;
  color: #fff !important;
  padding: 8px 16px !important;
  border-radius: 9999px !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: 0 4px 20px rgba(255,140,0,.4) !important;
  white-space: nowrap !important;
  width: auto !important;
}
#mainNav.site-header .nav-actions a.nav-wa:hover,
#mainNav .nav-actions a.nav-wa:hover { background: #e67e00 !important; color: #fff !important; }
#mainNav .nav-actions a.nav-wa img { width: 22px !important; height: 22px !important; max-width: 22px !important; }
#mainNav .nav-actions a.nav-phone svg,
#mainNav .nav-actions a.nav-wa svg { width: 14px !important; height: 14px !important; }
@media (min-width: 961px) {
  #mainNav.site-header .nav-actions a.nav-phone,
  #mainNav .nav-actions a.nav-phone,
  .site-header a.nav-phone { display: inline-flex !important; }
}
@media (max-width: 960px) {
  #mainNav.site-header .nav-actions a.nav-phone,
  #mainNav .nav-actions a.nav-phone,
  .site-header a.nav-phone { display: none !important; }
}

/* ── Conversión (home / landings) — no toca #mainNav ── */
.trust-strip-360{background:#FFFEFA;border-bottom:1px solid #E8F0E8;padding:16px 5%}
.trust-strip-360__inner{max-width:1280px;margin:0 auto;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.trust-strip-360__pills{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.trust-strip-360__kicker{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#5A6B63}
.trust-pill{
  background:#F1F8F3;border:1px solid #D5E4DC;padding:6px 10px;border-radius:9999px;
  font-size:.76rem;font-weight:800;color:#0A3D2C;
}
.trust-pill.is-accent{background:#0A3D2C;color:#A7F3D0;border-color:#0A3D2C}
.form-lead-360{
  background:rgba(255,254,250,.98);backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,.6);border-radius:24px;padding:24px;
  box-shadow:0 24px 60px rgba(7,31,23,.25);
  position:relative;color:#0A3D2C;
}
.form-lead-360::before{
  content:'';position:absolute;top:-1px;left:20%;right:20%;height:2.5px;
  background:linear-gradient(90deg,transparent,#FF8C00,transparent);
}
.form-lead-360 h3{font-size:1.08rem;font-weight:900;color:#0A3D2C;letter-spacing:-.02em;margin:0}
.form-lead-360 .time-badge{
  font-size:.7rem;font-weight:800;background:#0A3D2C;color:#A7F3D0;
  padding:6px 10px;border-radius:9999px;letter-spacing:.04em;white-space:nowrap;
}
.form-lead-360 label{font-size:.74rem;font-weight:800;color:#334155;margin-bottom:5px;display:block;letter-spacing:.04em;text-transform:uppercase}
.form-lead-360 input,.form-lead-360 select{
  width:100%;padding:12px 13px;border:1.5px solid #D6E7DD;border-radius:11px;
  font-size:.93rem;background:#FBFFFD;font-family:Inter,sans-serif;
}
.form-lead-360 input:focus,.form-lead-360 select:focus{border-color:#14664A;outline:none;box-shadow:0 0 0 4px rgba(20,102,74,.12)}
.form-lead-360 .form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.form-lead-360 .form-legal{font-size:.7rem;color:#64748B;line-height:1.5;margin:12px 0 14px}
.form-lead-360 .form-legal a{color:#0A3D2C;text-decoration:underline;font-weight:700}
.form-lead-360 .btn-submit-lead{
  width:100%;background:#FF8C00;color:#fff;border:none;padding:14px;border-radius:9999px;
  font-weight:900;font-size:.98rem;cursor:pointer;font-family:Inter,sans-serif;
  box-shadow:0 10px 20px rgba(255,140,0,.28);
}
.form-lead-360 .btn-submit-lead:hover{background:#e67e00}
.form-lead-360 .trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed #D6E7DD;text-align:center}
.form-lead-360 .trust-row strong{display:block;font-size:.88rem;color:#0A3D2C}
.form-lead-360 .trust-row span{font-size:.66rem;color:#64748B;text-transform:uppercase;font-weight:700;letter-spacing:.05em}
.compare-wrap-360{overflow:auto;border-radius:20px;border:1px solid #D5E4DC;background:#fff;box-shadow:0 8px 40px rgba(10,61,44,.10)}
.compare-table-360{width:100%;border-collapse:separate;border-spacing:0;min-width:720px}
.compare-table-360 th{padding:16px;text-align:left;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;background:#F8FAF8;color:#0A3D2C;font-weight:900;border-bottom:1px solid #D5E4DC}
.compare-table-360 td{padding:14px 16px;font-size:.88rem;border-bottom:1px solid #EEF4EF;vertical-align:top;color:#475569}
.compare-table-360 .check{color:#16A34A;font-weight:900}
.compare-table-360 .cross{color:#94A3B8}
.compare-table-360 .highlight{background:linear-gradient(180deg,#FFFBF3,#FFF4E6);border-left:3px solid #FF8C00;border-right:3px solid #FF8C00;color:#0A3D2C}
.scope-box{background:#fff;border:1px solid #D5E4DC;border-radius:26px;padding:26px;box-shadow:0 8px 40px rgba(10,61,44,.10);display:grid;grid-template-columns:1.1fr .9fr;gap:26px}
.scope-result{background:linear-gradient(165deg,#0A3D2C,#071f17);color:#fff;border-radius:18px;padding:22px;position:relative;overflow:hidden}
.scope-result::after{content:'';position:absolute;width:320px;height:320px;background:radial-gradient(circle,rgba(255,140,0,.18),transparent 70%);top:-80px;right:-80px}
.checador-teaser{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.geo-proof{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1.15rem}
@media(max-width:1100px){
  .scope-box,.checador-teaser{grid-template-columns:1fr}
}
@media(max-width:680px){
  .form-lead-360 .form-grid-2{grid-template-columns:1fr}
}

/* CTA contrast lock (pages.css loads after global.css) */
html body a.btn-primary,
html body a.btn360-primary,
html body a.ap-btn-primary,
html body a.n360-btn-primary,
html body .sticky-lead-360__cotiza { color:#fff !important; }
html body a.btn-whatsapp,
html body a.n360-btn-wa,
html body a.faq-cta-wa,
html body a.sticky-lead-360__wa,
html body a[class*="btn"][href*="wa.me"],
html body .cta-lead-360 a[href*="wa.me"] {
  background:#25D366 !important; color:#fff !important;
}
html body a.btn-whatsapp:hover,
html body a[class*="btn"][href*="wa.me"]:hover,
html body .cta-lead-360 a[href*="wa.me"]:hover {
  background:#1ebe5a !important; color:#fff !important;
}
html body .hero a.btn-ghost:not([href*="wa.me"]),
html body .page-hero a.btn-ghost:not([href*="wa.me"]),
html body .cta-final a.btn-ghost:not([href*="wa.me"]),
html body .cta-buttons a.btn-ghost:not([href*="wa.me"]),
html body .audit-hero a.btn-ghost:not([href*="wa.me"]),
html body .geo-hero a.btn-ghost:not([href*="wa.me"]),
html body .geo-cta a.btn-ghost:not([href*="wa.me"]),
html body .n360-chat-sec a.btn-ghost:not([href*="wa.me"]),
html body a.btn-outline-white {
  color:#fff !important; border-color:rgba(255,255,255,.45) !important; background:transparent !important;
}
html body a.btn360-secondary:not([href*="wa.me"]),
html body a.n360-btn-ghost:not([href*="wa.me"]) { color:#0A3D2C !important; }
