:root{
  --primary-color:#0ea5e9;
  --secondary-color:#ff6f00;
  --dark-blue:#0f1b3d;
  --light-gray:#f6f8fb;
  --medium-gray:#e7ebf0;
  --dark-gray:#2b2f36;
  --text-color:#222;
  --white:#fff;
  --font-family:'Lato',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

/* RESET */
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{font-family:var(--font-family);color:var(--text-color);background:var(--white);-webkit-font-smoothing:antialiased;margin:0;}

/* LAYOUT */
.container{width:100%;max-width:1140px;margin:0 auto;padding:0 20px}
.text-center{text-align:center}

/* NAVBAR (compacta; logo >= botón) */
.navbar{
  background:var(--white);
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  padding:.08rem 0;
  position:sticky;top:0;z-index:1000
}
.navbar .container{display:flex;justify-content:space-between;align-items:center;gap:12px}
.logo img{height:64px}
@media (max-width:640px){ .logo img{height:56px} }

/* Toggle móvil */
.nav-toggle{display:none;background:transparent;border:0;cursor:pointer}
.nav-toggle-bar{display:block;width:24px;height:3px;background:#111;border-radius:2px;margin:4px 0}
@media (max-width:900px){
  .nav-toggle{display:block}
  .main-nav{position:fixed;top:64px;right:0;left:0;background:var(--white);display:none;flex-direction:column;gap:12px;padding:12px 20px;border-bottom:1px solid var(--medium-gray)}
  .main-nav.open{display:flex}
}

/* Links y botones */
.main-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.nav-link{font-weight:700;color:var(--dark-gray);text-decoration:none}
.nav-link:hover{color:var(--primary-color)}
.btn{padding:12px 22px;border-radius:10px;font-weight:800;letter-spacing:.2px;text-decoration:none;cursor:pointer;display:inline-block;border:2px solid transparent;transition:.2s all}
.btn-primary{background:var(--secondary-color);color:#fff}
.btn-primary:hover{background:#e66000;transform:translateY(-1px)}
.btn-secondary{background:var(--primary-color);color:#fff}
.btn-secondary-outline{border-color:var(--primary-color);color:var(--primary-color);background:transparent}
.btn-secondary-outline:hover{background:var(--primary-color);color:#fff}

/* BADGE genérico (para hero/pricing) */
.badge{display:inline-block;padding:6px 10px;border-radius:999px;font-weight:800;font-size:.85rem;border:1px solid var(--medium-gray);background:#fff;color:#1f2937}
.badge-demo{border-color:var(--secondary-color);color:var(--secondary-color);background:rgba(255,111,0,.06)}

/* HERO */
.hero{
  background: radial-gradient(1200px 500px at 10% 10%, rgba(255,196,85,.25), transparent 60%),
              radial-gradient(1200px 600px at 90% 20%, rgba(14,165,233,.18), transparent 60%),
              var(--light-gray);
  padding:44px 0 40px;
}
.hero-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:center}
@media (max-width:980px){.hero-wrap{grid-template-columns:1fr}}
.eyebrow{font-size:.92rem;color:#4b5563;margin:10px 0 8px}
.hero-title{font-size:2.5rem;line-height:1.15;color:var(--dark-blue);margin-bottom:12px;font-weight:900}
.hero-title .gradient{background:linear-gradient(90deg,var(--primary-color),#14b8a6);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-subtitle{font-size:1.12rem;color:#4b5563;margin:8px 0 14px;max-width:680px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 16px}
.hero-notes{margin-top:6px;color:#4b5563;font-size:.95rem}

/* Arte radar IA */
.hero-art{display:flex;justify-content:center}
.radar{position:relative;width:260px;height:260px;border-radius:50%;background:radial-gradient(closest-side,#f8fbff,#eef5ff);border:2px solid var(--primary-color);overflow:hidden;box-shadow:0 12px 30px rgba(15,27,61,.12)}
.radar .pulse{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(14,165,233,.25);animation:pulse 2.8s infinite}
.radar .beam{position:absolute;inset:-30%;background:conic-gradient(from 0deg, rgba(14,165,233,.25), transparent 55%);animation:spin 5s linear infinite;border-radius:50%}
.map-ve{position:absolute;left:50%;top:50%;width:74%;height:auto;transform:translate(-50%,-50%);opacity:.9;filter:drop-shadow(0 0 12px rgba(14,165,233,.15))}
.radar-dot{--x:50%;--y:50%;position:absolute;left:var(--x);top:var(--y);width:9px;height:9px;background:#0ea5e9;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 0 rgba(14,165,233,.35);animation:pingdot 2.4s infinite}
.radar-dot::after{content:'';position:absolute;inset:-8px;border:2px solid rgba(14,165,233,.35);border-radius:50%;opacity:.8;animation:wave 2.4s infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(14,165,233,.25)}70%{box-shadow:0 0 0 28px rgba(14,165,233,0)}100%{box-shadow:0 0 0 0 rgba(14,165,233,0)}}
@keyframes wave{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.6);opacity:0}}
@keyframes pingdot{0%{box-shadow:0 0 0 0 rgba(14,165,233,.35)}100%{box-shadow:0 0 0 18px rgba(14,165,233,0)}}

/* COUNTRY SWITCHER (VE/PA) */
.country-switcher{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.country-pill{border:1px solid var(--medium-gray);background:#fff;padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:800}
.country-pill.active,.country-pill:hover{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(14,165,233,.15)}
.country-pill--disabled{opacity:.55;cursor:not-allowed;pointer-events:none}

/* LEAD FORM */
.lead-form{margin:10px 0 8px;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start;max-width:1000px}
.lead-form input,.lead-form select{padding:10px 12px;border:1px solid var(--medium-gray);border-radius:10px;min-width:210px}
.lead-form button{margin-left:4px}
.helper{width:100%;font-size:.9rem;color:#4b5563;margin-top:6px}

/* SECTION TITLES */
.section-title{font-size:1.85rem;color:var(--dark-blue);margin:10px 0 24px;font-weight:900;text-align:left}

/* FEATURE / CARDS */
.feature-section{padding:52px 0}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.feature-card{background:#fff;padding:22px;border:1px solid var(--medium-gray);border-radius:14px;text-align:center;box-shadow:0 6px 16px rgba(0,0,0,.04)}
.feature-number{width:48px;height:48px;border-radius:50%;background:var(--primary-color);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}

/* PRICING */
.pricing-section{background:var(--light-gray);padding:56px 0}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px}
.pricing-card{background:#fff;padding:32px;border-radius:16px;border:1px solid var(--medium-gray);position:relative;transition:.25s all}
.pricing-card:hover{transform:translateY(-4px);box-shadow:0 10px 26px rgba(0,0,0,.07)}
.estandar-card{background:#e6f7ff}
.profesional-card{background:#f7f7f7}
.featured-tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:#ff9800;color:#fff;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:900}
.featured-tag.alt{background:#6b7280}
.plan-name{font-weight:900;font-size:1.18rem;margin-bottom:6px;color:#111827}
.plan-price{font-size:2rem;font-weight:900;margin:4px 0 12px;color:#0b1b3a}
.plan-features{margin:8px 0 16px;padding-left:0;list-style:none}
.plan-features li{margin:7px 0}

/* TESTIMONIOS */
.testimonial-bg{background:var(--light-gray);padding:56px 0}
.testimonial-carousel{display:flex;gap:16px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.testimonial-carousel .feature-card{min-width:280px;scroll-snap-align:center}
.testimonial-avatar{width:74px;height:74px;border-radius:50%;border:3px solid var(--primary-color);margin-bottom:12px;object-fit:cover}
.stars{color:#ffb400;margin:6px 0}

/* FAQ */
.faq-section{padding:56px 0}
.faq-item{margin-bottom:10px}
.faq-question{width:100%;padding:15px;background:#eef2f7;border:1px solid var(--medium-gray);cursor:pointer;font-weight:900;border-radius:10px;text-align:left}
.faq-answer{display:none;padding:12px 14px;background:#fff;border-left:4px solid var(--primary-color);border-right:1px solid var(--medium-gray);border-bottom:1px solid var(--medium-gray);border-radius:0 0 10px 10px}
.disclaimer{font-size:.9rem;color:#4b5563;margin-top:12px}

/* FOOTER */
.footer{background:var(--dark-gray);color:#fff;text-align:center;padding:24px 0;font-size:.95rem}
.footer-menu a{color:#fff;text-decoration:none;margin:0 8px}

/* MODAL */
.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:2000}
.modal-content{background:#fff;margin:8% auto;padding:22px;border-radius:14px;width:92%;max-width:520px;position:relative}
.close-button{position:absolute;top:10px;right:14px;font-size:22px;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;width:36px;height:36px;line-height:36px}
.whatsapp-link{display:inline-block;margin-top:14px;background:#25D366;color:#fff;padding:12px 20px;border-radius:8px;font-weight:900;text-decoration:none}
.payment-details p{margin:6px 0}
.txt-bold{font-weight:900}

/* WHATSAPP FLOAT */
.whatsapp-float{position:fixed;bottom:18px;right:18px;width:60px;height:60px;border-radius:50%;box-shadow:0 10px 22px rgba(0,0,0,.25);background:#25D366;display:flex;align-items:center;justify-content:center}
.whatsapp-float img{width:36px;height:36px;filter:brightness(0) invert(1)}

/* RESPONSIVE */
@media (max-width:980px){
  .section-title{text-align:center}
  .lead-form{justify-content:center}
}
@media (max-width:640px){
  .hero-title{font-size:2.1rem}
  .hero-subtitle{font-size:1.02rem}
  .plan-price{font-size:1.8rem}
  .lead-form input,.lead-form select{min-width:150px}
}
