/* =========================
   ATM — styles.css (PRO)
   ========================= */

:root{
  --primary:#0a7cf4; --accent:#ff7e29; --bg:#ffffff; --muted:#6b7280; --dark:#0f1724;
  --card-shadow: 0 10px 30px rgba(2,6,23,0.06);
  --radius:14px; --max-width:1200px; --transition:0.22s ease;
  font-size:16px;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;color:var(--dark);background:var(--bg);-webkit-font-smoothing:antialiased}
img,picture{display:block;max-width:100%;height:auto}

/* container */
.container{width:92%;max-width:var(--max-width);margin:0 auto}

/* header */
.site-header{position:sticky;top:0;background:var(--bg);z-index:100;box-shadow:0 6px 20px rgba(2,6,23,0.03)}
.nav-wrapper{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0}
.logo{height:48px;width:auto}
#nav-toggle{display:none;background:none;border:0;font-size:24px;cursor:pointer}
.main-nav ul{list-style:none;display:flex;gap:18px;align-items:center}
.main-nav a{color:var(--dark);text-decoration:none;font-weight:600;padding:6px 10px;border-radius:8px}
.main-nav a.active,.main-nav a:hover{color:var(--primary);background:rgba(10,124,244,0.06)}
.lang-btn{border:1px solid rgba(10,124,244,0.12);background:transparent;padding:6px 10px;border-radius:10px;cursor:pointer}
.actions{display:flex;gap:10px;align-items:center}

/* hero */
.hero{position:relative;padding:60px 0;text-align:center;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(0.55);z-index:0}
.hero-content{position:relative;z-index:2;padding:40px 0;color:#fff}
.hero h1{font-size:clamp(28px,4vw,44px);font-weight:800;margin-bottom:12px}
.hero p{font-size:clamp(14px,1.3vw,18px);opacity:0.95;margin-bottom:18px}
.hero-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn-primary{background:var(--primary);color:#fff;padding:12px 20px;border-radius:12px;text-decoration:none;font-weight:700;box-shadow:0 8px 26px rgba(10,124,244,0.12)}
.btn-outline{background:transparent;border:1px solid rgba(255,255,255,0.14);color:#fff;padding:10px 18px;border-radius:10px;text-decoration:none}

/* features */
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:36px;margin-bottom:36px}
.feature-card{background:#fff;border-radius:12px;padding:22px;text-align:center;box-shadow:var(--card-shadow);transition:var(--transition)}
.feature-card img{width:64px;height:64px;margin:0 auto 12px}
.feature-card h3{font-size:1.05rem;margin-bottom:8px}
.feature-card p{color:var(--muted)}

/* gallery / carousel */
.services-gallery{padding:36px 0}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.gallery-carousel{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;padding-bottom:8px}
.gallery-item{flex:0 0 300px;background:#fff;border-radius:12px;padding:12px;box-shadow:var(--card-shadow);transition:transform var(--transition)}
.gallery-item picture img{width:100%;height:170px;object-fit:cover;border-radius:10px}
.gallery-item p{margin-top:10px;font-weight:700;color:var(--dark)}

/* plans */
.plans-preview{padding:36px 0}
.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.plan-card{background:#fff;padding:18px;border-radius:12px;box-shadow:var(--card-shadow);text-align:left}
.plan-card img{border-radius:10px;height:160px;object-fit:cover;width:100%}
.plan-card h3{margin:12px 0 6px}
.price{font-weight:800;color:var(--primary);font-size:1.25rem;margin:10px 0}

/* plan detail */
.plan-detail{margin:36px 0}
.plan-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.plan-detail img{width:100%;border-radius:12px}

/* sticky CTA */
.sticky-cta{position:fixed;right:16px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:120}
.cta-sticky{display:inline-block;padding:12px 14px;border-radius:12px;background:var(--primary);color:#fff;text-decoration:none;font-weight:700;box-shadow:0 12px 30px rgba(10,124,244,0.12)}
.wa-btn{display:inline-block;padding:12px 14px;border-radius:12px;background:#25D366;color:#fff;text-decoration:none;font-weight:700;text-align:center}

/* footer */
footer{background:#f8fafc;padding:36px 0;margin-top:36px}
.footer-inner{display:flex;flex-direction:column;align-items:center;gap:8px}

/* responsive */
@media (max-width:920px){ .plan-detail-grid{grid-template-columns:1fr} .hero{padding:40px 0} .gallery-item{flex:0 0 76%} }
@media (max-width:640px){
  #nav-toggle{display:block}
  .hero h1{font-size:26px}
  .feature-card{padding:18px}
  .plan-grid{grid-template-columns:1fr}
}

/* accessibility helper */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.btn-ghost {
  display: inline-block;
  padding: 10px 16px;
  border-radius: 10px;
  border: 1px solid var(--primary);
  color: var(--primary);
  text-decoration: none;
  font-weight: 600;
  transition: var(--transition);
}

.btn-ghost:hover {
  background: var(--primary);
  color: #fff;
}


/* --------------------------
   Nota de cobertura (planes)
--------------------------- */
.coverage-note {
  font-size: 0.9rem;
  color: #444;
  background: #f8f8f8;
  padding: 10px 14px;
  border-left: 3px solid #007bff;
  border-radius: 4px;
  margin-top: 8px;
  margin-bottom: 15px;
  line-height: 1.45;
}
.coverage-note strong {
  color: #000;
}

/* NAV — comportamiento correcto */
#nav-toggle { display: none; }

/* Vista escritorio */
@media (min-width: 641px) {
  #nav-menu {
    display: block !important;
    position: static;
    background: none;
    box-shadow: none;
    pointer-events: auto;
  }
  #nav-menu ul {
    flex-direction: row;
  }
}

/* Vista móvil */
@media (max-width: 640px) {
  #nav-toggle { display: block; }

  #nav-menu {
    display: none;
    position: fixed;
    top: 70px;
    right: 16px;
    left: 16px;
    background: #fff;
    padding: 14px;
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(2,6,23,0.12);
    z-index: 9999;
    pointer-events: none;
  }

  #nav-menu.show {
    display: block;
    pointer-events: auto;
  }

  #nav-menu ul {
    flex-direction: column;
    gap: 10px;
  }
}

/* ----- ESTILO GLOBAL ----- */
body {
  font-family: Arial, sans-serif;
  margin: 0;
  background: #f5f5f5;
  color: #222;
}

/* HEADER */
.main-header {
  background: #004aad;
  padding: 20px;
  color: white;
  text-align: center;
}

/* CONTENEDOR PRINCIPAL */
.content {
  max-width: 900px;
  margin: 30px auto;
  background: white;
  padding: 25px;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* TITULOS */
h1, h2, h3 {
  margin-top: 0;
  color: #003a85;
}

/* BOTÓN */
.btn-primary {
  display: inline-block;
  margin-top: 25px;
  padding: 12px 22px;
  background: #004aad;
  color: white;
  border-radius: 8px;
  text-decoration: none;
  font-weight: bold;
}
.btn-primary:hover {
  background: #003a85;
}

/* SISTEMA BILINGÜE */
.lang-toggle {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
  gap: 10px;
}

.lang-toggle button {
  padding: 5px 12px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  background: #e1e1e1;
}

.lang-toggle button.active {
  background: #004aad;
  color: #fff;
}

