:root{
    --primary:#1D5F9A;
    --primary-dark:#154877;
    --secondary:#2898C4;
    --white:#FFFFFF;
    --gray:#CCCBCB;
    --ink:#0C2B44;
    --ink-soft:#3E5872;
    --mist:#EEF5FA;
    --line:#DCE6ED;
    --signal: #6BB8D9;
    --alert: #8B9296; 
    --radius:6px;
    --maxw:1180px;
    font-size:16px;
  }

  *{box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    body{
      margin:0;
      font-family:'Inter',system-ui,sans-serif;
      color:var(--ink);
      background:var(--white);
      line-height:1.55;
    }
    h1,h2,h3,h4{
      font-family:'Space Grotesk',sans-serif;
      line-height:1.15;
      margin:0 0 0.5em 0;
      color:var(--ink);
      font-weight:600;
    }
    p{margin:0 0 1em 0;color:var(--ink-soft);}

    a{color:var(--primary);}
    
    .wrap{
      max-width:var(--maxw);
      margin:0 auto;padding:0 24px;
    }
    
    img,svg{
      max-width:100%;
      display:block;}
    
    button{
      font-family:inherit;
      cursor:pointer;}
    
    :focus-visible{
      outline:3px solid var(--secondary);
      outline-offset:2px;
    }

  /* ---------- header ---------- */
  header{
    position:sticky;top:0;z-index:40;
    background:var(--white);
    border-bottom:1px solid var(--line);
  }
  .header-inner{
    display:flex;align-items:center;justify-content:space-between;
    padding:16px 24px;
  }
  .logo{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700;font-size:1.5rem;color:var(--primary-dark);
    text-decoration:none;letter-spacing:-0.01em;
    width: 150px;
  }
  .logo span{
    color:var(--secondary);
  }
  
  nav.primary-nav{
    display:flex;
    gap:28px;
    align-items:center;
  }
  
  nav.primary-nav a{
    color:var(--ink);
    text-decoration:none;
    font-size:0.95rem;
    font-weight:500;
  }
  nav.primary-nav a:hover{
    color:var(--primary);
  }
    
  .header-cta{
    display:flex;
    align-items:center;
    gap:18px;
  }
    
  .phone-pill{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:600;
    color:var(--primary-dark);
    text-decoration:none;
    font-size:0.95rem;
    }

/*------------------Boton Desplegable ---*/
.nav-dropdown{
  position:relative;
  display: inline-block;
}

.nav-dropdown-btn{
    display:flex;
    align-items:center;
    gap:5px;
    background:none;
    border:none;
    font-size:0.95rem;
    font-weight:500;
    color:var(--ink);
    padding:0;
  }  

.nav-dropdown-btn:hover{
  color:var(--primary);
}
 
.nav-dropdown-menu{
    display:none;
    position:absolute;
    top:100%;
    left:60%;
    transform:translateX(-50%);
    background:var(--white);
    border:1.5px solid var(--line);
    border-radius:var(--alert);
    box-shadow:0 12px 28px rgba(12,43,68,0.12);
    min-width:270px;padding:8px 0;
    z-index:50;
  }
  .nav-dropdown-menu a{
    display:block;
    padding:9px 18px;
    font-size:0.9rem;
    white-space:nowrap;
  }

  .nav-dropdown-menu a:hover{
    background:var(--white);
    color:var(--primary);
  }

  .nav-dropdown .open .nav-dropdown-menu, .nav-dropdown:hover .nav-dropdown-menu{
    display:block;
  }
  
  /*------- ------*/
  .header-cta{
    display:flex;
    align-items:center;
    gap:18px;
  }
  .phone-pill{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:600;
    color:var(--primary-dark);
    text-decoration:none;
    font-size:0.95rem;
  }
  
  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:12px 22px;
    border-radius:var(--radius);
    font-weight:600;font-size:0.95rem;
    text-decoration:none;
    border:1.5px solid transparent;
    transition:transform .12s ease,
     background .15s ease;
  }
    .btn-primary{
      background:var(--primary);
      color:var(--white);
    }
    .btn-primary:hover{
      background:var(--primary-dark);
      transform:translateY(-4px);
    }
    .btn-outline{
      background:transparent;
      color:var(--primary-dark);
      border-color:var(--primary-dark);
    }
    .btn-outline:hover{
      background:var(--mist);
      transform:translateY(-4px);
    }
    .btn-ghost{
      background:transparent;
      color:var(--ink);
      border-color:var(--line);
    }
    .menu-toggle{
      display:none;
      background:none;
      border:none;padding:8px;
    }
    .menu-toggle svg{
      width:26px;
      height:26px;
      stroke:var(--ink);
    }
    .menu-toggle .icon-close{
      display:none;
    }
    .menu-toggle[aria-expanded="true"] .icon-open{
      display:none;
    }.menu-toggle[aria-expanded="true"] .icon-close{
      display:block;
    }
     /* menú móvil: oculto por defecto, incluso si el JS no carga */
  .mobile-nav{
    display:none;
    flex-direction:column;
    border-top:1px solid var(--line);
    background:var(--white);
    max-height:calc(100vh - 74px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-bottom:12px;
  }
  .mobile-nav a{
    padding:13px 24px;color:var(--ink);text-decoration:none;font-size:0.98rem;font-weight:500;
    border-bottom:1px solid var(--mist);
  }
  .mobile-nav a:active{background:var(--mist);}
  .mnav-heading{
    padding:16px 24px 8px;font-size:0.75rem;font-weight:700;
    letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-soft);
  }
  .mobile-nav a.mnav-sub{padding:11px 24px 11px 38px;font-size:0.92rem;color:var(--ink-soft);}
  .mobile-nav a.mnav-cta{
    margin:16px 24px 4px;border-bottom:none;color:var(--white);justify-content:center;
  }


  /* ---------- hero ---------- */
  .hero{
    background:linear-gradient(180deg,var(--mist) 0%, var(--white) 78%);
    padding:64px 0 40px;}
  
  .hero-inner{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:48px;
    align-items:center;}
  
  .hero-stats{
    display:flex;
    gap:32px;
    flex-wrap:wrap; 
    padding: 20px;
  }
  
  .hero-stat b{
     display:block; 
     font-family:'Space Grotesk'; 
     font-size:26px; 
    }
  .hero-stat span{ 
    font-size:13px; 
    color:var(--primary-dark); 
  }

  .formularios{
    place-items: center;
  }
  
  .eyebrow-plain{
    color:var(--secondary);
    font-weight:600;
    font-size:0.95rem;
    margin:0 0 14px;
  }
  
  .hero h1{
    font-size:clamp(2.1rem,3.6vw,3rem);
    max-width:16ch;
  }
  
  .hero p.lead{
    font-size:1.1rem;
    max-width:46ch;
  }
  
  .hero-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:26px;
  }
  .hero-meta{
    display:flex;
    gap:28px;
    margin-top:36px;
    flex-wrap:wrap;
  }
  .hero-meta div{
    min-width:120px;
  }
  .hero-meta strong{
    display:block;
    font-family:'Space Grotesk',sans-serif;
    font-size:1.6rem;color:var(--primary-dark);
  }
  .hero-meta span{
    font-size:0.85rem;
    color:var(--ink-soft);
  }

  /*------------------Animacion-----*/
  .fiber-viz{ position:relative; }
        .fiber-card{
            background:var(--primary);
            border-radius:24px;
            padding:36px;
            color:var(--white);
            position:relative;
            overflow:hidden;
        }
        .fiber-card .label{
            font-family:'Space Grotesk';
            font-size:12px; 
            opacity:.6; 
            margin-bottom:6px;
        }
        .fiber-card .speed{ 
            font-family:'Space Grotesk'; 
            font-size:46px; 
            font-weight:600; 
        }
        .fiber-card .speed span{ 
            font-size:18px; 
            opacity:.7; 
        }
        /* número y unidad se desvanecen al cambiar de velocidad */
        .speed .num,
        .speed .unit{
            display:inline-block;
            transition:opacity .35s ease, transform .35s ease;
        }
        .speed.is-changing .num,
        .speed.is-changing .unit{
            opacity:0;
            transform:translateY(4px);
        }
        .strand-track{ 
            position:relative; 
            height:64px; 
            margin:28px 0; 
        }
        .strand-line{ 
            position:absolute; 
            top:50%; 
            left:0; 
            right:0; 
            height:2px; 
            background:rgba(241,245,248,0.16); 
            transform:translateY(-50%); 
        }
        .pulse-dot{
            position:absolute; 
            top:50%; 
            width:10px; 
            height:10px; 
            border-radius:50%;
            background:var(--line); 
            transform:translateY(-50%);
            box-shadow:0 0 12px 2px var(--line);
            animation:travel 2.6s linear infinite;
            }

        .pulse-dot.d2{ 
            background:var(--signal); 
            box-shadow:0 0 12px 2px var(--signal); 
            animation-delay:.9s; 
        }
        .pulse-dot.d3{ 
            background:var(--alert); 
            box-shadow:0 0 12px 2px var(--alert); 
            animation-delay:1.7s; 
        }
        
        @keyframes travel{ 
            0%{ left:-2%; opacity:0;} 
            10%{opacity:1;} 90%{opacity:1;} 
            100%{ left:100%; opacity:0;} }
        
        .fiber-card .foot-row{ 
            display:flex; 
            justify-content:space-between; 
            font-family:var(--font-mono); 
            font-size:12px; 
            opacity:.65; 
        }

        @media (prefers-reduced-motion: reduce){
            .pulse-dot{ animation:none; }
        }

  /* ---------- STATS BAR ---------- */
  .stats-bar{
    padding:44px 0; 
    border-top:1px solid var(--line); 
    border-bottom:1px solid var(--line); 
    background:var(--white); 
  }
  .stats-row{ 
    display:grid; 
    grid-template-columns:repeat(4,1fr); 
    gap:24px; 
    text-align:center; 
  }
  .stats-row b{ 
    display:block; 
    font-family:var(--font-mono); 
    font-size:30px; 
  }
  .stats-row span{ 
    font-size:13px; 
    color:var(--ink-soft); 
  }

  /* ---------- section basics ---------- */
  section{
    padding:72px 0;
  }
  .section-head{
    max-width:640px;
    margin:0 0 40px;
  }
  .section-head h2{
    font-size:clamp(1.6rem,2.6vw,2.1rem);
  }
  .alt{
    background:var(--mist);
  }

  .section-cabecera{
    display: grid;
    place-items: center;
    margin-bottom: 20px;
  }
   /* ---------- características ---------- */
  .features-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
  }
  .feature-card{
    background:var(--white);
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    padding:26px 24px;
  }
  .feature-card:hover{
    transform:translateY(-4px); 
    box-shadow:0 3px 3px var(--primary); 
  }
  .feature-icon{
    width:44px;
    height:44px;
    border-radius:50%;
    background:var(--mist);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:14px;
  }

  .feature-icon svg{
    width:22px;
    height:22px;
    stroke:var(--primary-dark);
    fill:none;
    stroke-width:1.7;
  }
 
  .feature-card h3{
    font-size:1.05rem;
    margin-bottom:6px;
  }
  .feature-card p{
    margin:0;
    font-size:0.92rem;
  }

  /* ---------- municipio selector ---------- */
  .muni-select{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:34px;
  }
  .muni-btn{
    background:var(--white);
    border:1.5px solid var(--line);
    color:var(--ink);
    padding:10px 20px;
    border-radius:999px;
    font-weight:600;
    font-size:0.95rem;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .muni-btn .dot{
    width:8px;
    height:8px;
    border-radius:
    50%;background:var(--gray);
  }
  .muni-btn[aria-pressed="true"]{
    background:var(--primary);
    border-color:var(--primary);
    color:var(--white);
  }
  .muni-btn[aria-pressed="true"] .dot{
    background:var(--white);
  }

  .plans-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
  }
  .plan-card{
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    padding:26px 24px;
    background:var(--white);
  }
  .plan-card:hover{
    transform:translateY(-4px); 
    box-shadow:0 3px 3px var(--primary); 
    
  }
  .plan-card .speed{
    font-family:'Space Grotesk',sans-serif;
    font-size:2rem;color:var(--primary-dark);
  }
  .plan-card .speed sup{
    font-size:1rem;
    color:var(--ink-soft);
    font-weight:500;
  }
  .plan-card .price{
    font-size:1.3rem;
    font-weight:700;
    margin:6px 0 14px;
    color:var(--ink);
  }
  .plan-card .price span{
    font-size:0.85rem;
    color:var(--ink-soft);
    font-weight:500;
  }
  .plan-card ul{
    list-style:none;
    margin:0 0 20px;
    padding:0;color:var(--ink-soft);
    font-size:0.9rem;
  }
  .plan-card li{
    padding:5px 0;
    border-top:1px solid var(--line);
  }
  .plan-card li:first-child{
    border-top:none;
  }
  .plan-card.featured{
    border-color:var(--primary);
    box-shadow:0 0 0 1px var(--primary);
  }
  .plan-tag{
    display:inline-block;
    font-size:0.75rem;
    font-weight:700;color:var(--secondary);
    background:#E3F2F9;
    padding:4px 10px;
    border-radius:999px;margin-bottom:12px;
  }

  /*.radio-block{margin-top:56px;}
  .radio-block .plans-grid{grid-template-columns:repeat(2,1fr);max-width:640px;}*/

  .nuplin-section{margin-top:56px;}
  .nuplin-section .plan-card{border-color:var(--secondary);}
  .nuplin-section .speed{color:var(--secondary);}
  .nuplin-section .speed sup{font-size:0.95rem;}

  /* ---------- services ---------- */
  .services-list {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
  }
  .service-row{
    display:grid;
    grid-template-columns:64px 1fr auto;
    gap:24px;
    align-items:flex-start;
    padding:28px 0;
    border-top:1px solid var(--line);
    background: var(--white);
  }
  .service-row:last-child{
    border-bottom:1px solid var(--line);
  }
  .service-icon{
    width:52px;
    height:52px;
    border-radius:50%;
    background:var(--mist);
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .service-icon svg{
    width:26px;
    height:26px;
    stroke:var(--primary-dark);
    fill:none;
    stroke-width:1.6;
  }
  .service-row h3{
    font-size:1.15rem;
    margin-bottom:6px;
  }
  .service-row p{
    margin:0;
    max-width:52ch;
  }
  .service-row .btn{
    align-self:center;
    white-space:nowrap;
  }

  /*--------- */
  .section-head{ 
    max-width:600px; 
    margin-bottom:52px; 
  }
  .section-head h2{ 
    font-size:clamp(28px,3.4vw,40px); 
    margin-bottom:14px; 
  }
  .section-head p{ 
    color:var(--ink-soft); 
    font-size:16px; 
  }

  .services-grid{ 
    display:grid; 
    grid-template-columns:repeat(3,1fr); 
    gap:20px; 
  }
  
  .service-card{
    background:var(--white); 
    border:1px solid var(--line); 
    border-radius:var(--radius);
    padding:30px; 
    transition:transform .18s ease, box-shadow .18s ease;
  }
  .service-card.line{ 
    border-top:3px solid var(--jacket, var(--sky)); 
  }
  .service-card:hover{ 
    transform:translateY(-4px); 
    box-shadow:0 16px 32px rgba(12,36,54,0.08); 
  }
  .service-icon{
    width:44px; 
    height:44px; 
    border-radius:12px; 
    display:flex; 
    align-items:center; 
    justify-content:center;
    margin-bottom:18px; 
    background:var(--line);
  }
  .service-card h3{ 
    font-size:18px; 
    margin-bottom:8px; 
  }
  .service-card p{ 
    font-size:14.5px; 
    color:var(--ink-soft); 
  }

  /* ---------- forms ---------- */
  .form-card{
    background:var(--white);
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    padding:36px;
    max-width:720px;
  }
  .form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
  }
  .form-grid .full{
    grid-column:1/-1;
  }
  label{
    display:block;
    font-size:0.85rem;
    font-weight:600;
    color:var(--ink);
    margin-bottom:6px;
  }
  input,select,textarea{
    width:100%;
    padding:11px 12px;
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    font-family:inherit;
    font-size:0.95rem;
    color:var(--ink);
    background:var(--white);
  }
  input:focus,select:focus,textarea:focus{
    border-color:var(--secondary);
  }
  textarea{
    resize:vertical;
    min-height:100px;
  }
  .form-note{
    font-size:0.85rem;
    color:var(--ink-soft);
    margin-top:14px;
  }
  .form-status{
    margin-top:16px;
    padding:12px 14px;
    border-radius:var(--radius);
    font-size:0.9rem;
    background:var(--mist);
    color:var(--ink);
    display:none;
  }
  .form-status.show{
    display:block;
  }

  .two-col{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:48px;
    align-items:start;
  }

 

  /* ---------- cobertura ---------- */
  .coverage-inner{
    display:grid;
    grid-template-columns:1.1fr 0.9fr;
    gap:48px;
    align-items:center;
  }
  .coverage-list{
    display:flex;
    flex-direction:column;
    gap:14px;
  }
  .coverage-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    padding:18px 20px;
  }
  .coverage-item h3{
    margin:0 0 4px;
    font-size:1.05rem;
  }
  .coverage-item p{
    margin:0;
    font-size:0.9rem;
  }

  .coverage-item:hover{
    transform:translateY(-4px); 
    box-shadow:0 16px 32px rgba(12,36,54,0.08);
  }

  /* ---------- promo banner (carrusel de imágenes) ---------- */
  .promo-banner{
    background:var(--ink);
  }
  .promo-carousel{
    position:relative;
    width:100%;
    line-height:0;
  }
  .promo-slide{
    width:100%;
    height:400px;
    display:none;
  }
  .promo-slide.active{
    display:block;
  }
  .promo-dots{
    position:absolute;
    bottom:14px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:8px;
  }
  .promo-dot{
    width:9px;
    height:9px;
    border-radius:50%;
    border:1.5px solid var(--white);
    background:rgba(255,255,255,0.35);
    padding:0;
  }
  .promo-dot.active{
    background:var(--white);
  }

  /* ---------- payment ---------- */
  .pay-panel{
    background:var(--primary);
    color:var(--white);
    border-radius:var(--radius);
    padding:40px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;flex-wrap:wrap;
  }
  .pay-panel h2,.pay-panel p{
    color:var(--white);
  }
  .pay-panel .btn-primary{
    background:var(--white);
    color:var(--primary-dark);
  }
  .pay-panel .btn-primary:hover{
    background:var(--mist);
  }
  .crc-section{padding:40px 0;}
  .crc-banner{
    display:flex;align-items:center;gap:22px;flex-wrap:wrap;
    background:var(--ink);border:1px solid #2A4C67;border-radius:var(--radius);
    padding:20px 24px;text-decoration:none;
    transition:border-color .15s ease;
  }
  .crc-banner:hover{border-color:var(--secondary);}
  .crc-banner img{
    width:200px;height:auto;border-radius:4px;background:var(--white);padding:6px;flex-shrink:0;
  }
  .crc-copy{flex:1;min-width:220px;display:flex;flex-direction:column;gap:4px;}
  .crc-copy strong{color:var(--white);font-size:1rem;font-family:'Space Grotesk',sans-serif;}
  .crc-copy span{color:#9FB1C2;font-size:0.9rem;}
  .crc-arrow{
    display:inline-flex;align-items:center;gap:8px;color:var(--white);
    font-weight:600;font-size:0.92rem;white-space:nowrap;
  }


  /* ---------- footer ---------- */
  footer{
    background:var(--ink);
    color:#C9D6E2;
    padding:56px 0 28px;
  }
  footer h4{
    color:var(--white);
    font-size:1rem;
    margin-bottom:14px;
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1.2fr;
    gap:32px;
  }
  footer a{
    color:#C9D6E2;
    text-decoration:none;
    font-size:0.92rem;
  }
  footer a:hover{
    color:var(--white);
  }
  footer p{
    color:#9FB1C2;
    font-size:0.92rem;
  }

  .social-links{display:flex;gap:12px;margin-top:16px;}
  .social-links a{
    width:38px;height:38px;border-radius:50%;border:1px solid #2A4C67;
    display:flex;align-items:center;justify-content:center;color:#C9D6E2;
  }
  .social-links a:hover{border-color:var(--secondary);color:var(--white);}
  .social-links svg{width:18px;height:18px;}

  .footer-links{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  .footer-bottom{
    border-top:1px solid #1F3E58;
    margin-top:44px;
    padding-top:22px;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:12px;
    font-size:0.82rem;
    color:#8CA0B4;
  }
  .isc-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:1px solid #2A4C67;
    padding:8px 14px;
    border-radius:999px;
    font-size:0.82rem;
    color:#C9D6E2;
    text-decoration:none;
  }
  .isc-badge:hover{
    border-color:var(--secondary);
    color:var(--white);
  }

  /* ---------- atención al cliente ---------- */
  #atencion-cliente{scroll-margin-top:80px;}
  .ac-block{
    border:1.5px solid var(--line);
    border-radius:var(--radius);
    padding:28px;
    margin-bottom:20px;
    scroll-margin-top:90px;
  }
  .ac-block h3{
    font-size:1.15rem;
    margin-bottom:12px;
  }
  .ac-channels{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
  }
  .ac-channel{
    display:flex;
    flex-direction:column;
    gap:4px;
  }
  .ac-label{
    font-size:0.8rem;
    font-weight:600;
    color:var(--ink-soft);
    text-transform:uppercase;
    letter-spacing:0.03em;
  }
  .ac-value{
    font-size:1.05rem;
    font-weight:600;
    color:var(--primary-dark);
    text-decoration:none;
  }
  .ac-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:16px;
    place-items: center;
  }

  .ac-accordion{
    border-top:1px solid var(--line);
    margin-top:32px;
  }
  .ac-item{
    border-bottom:1px solid var(--line);
    scroll-margin-top:90px;
  }
  .ac-item summary{
    list-style:none;cursor:pointer;padding:18px 40px 18px 0;position:relative;
    font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:1.05rem;color:var(--ink);
  }
  .ac-item summary::-webkit-details-marker{display:none;}
  .ac-item summary::after{
    content:'';position:absolute;right:8px;top:24px;
    width:9px;height:9px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);
    transform:rotate(45deg);transition:transform .18s ease;
  }
  .ac-item[open] summary::after{transform:rotate(-135deg);top:28px;}
  .ac-item summary:hover{color:var(--primary);}
  .ac-content{padding:0 0 22px;max-width:74ch;}
  .ac-content p{font-size:0.95rem;}
  .ac-content ul{margin:0 0 1em;padding-left:20px;color:var(--ink-soft);font-size:0.95rem;}
  .ac-content li{margin-bottom:6px;}
  .ac-note{
    background:var(--mist);border-left:3px solid var(--secondary);
    padding:12px 14px;border-radius:4px;font-size:0.88rem;margin-top:14px;
  }
   /*----------------Neutralidad Internet -----*/
 .head-neutralidad{
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
  } 
/* ---------- responsive ---------- */
  @media (max-width:900px){
    nav.primary-nav{
      display:none;
    }
    .header-cta .btn-outline{
      display:none;
    }
    .menu-toggle{
      display:block;
    }
    .mobile-nav.open-mnav{
      display:flex;
    }
    .hero-inner{
      grid-template-columns:1fr;
    }
    .two-col{
      grid-template-columns:1fr;
    }
    .plans-grid{
      grid-template-columns:1fr;
    }
    .radio-block .plans-grid{
      grid-template-columns:1fr 1fr;
    }
    .footer-grid{
      grid-template-columns:1fr 1fr;
    }
    .service-row{
      grid-template-columns:1fr 1fr;
    }
    /*.service-row .btn{grid-column:1/-1;justify-self:start;margin-top:8px;}*/
    .features-grid{
      grid-template-columns:1fr 1fr;
    }
    .coverage-inner{
      grid-template-columns:1fr;
    }
    .promo-banner{
      display: none;
    }
  }
  @media (max-width:560px){
    .phone-pill{
      display: none;
    }
    .form-grid{
      grid-template-columns:1fr;
    }
    .radio-block .plans-grid{
      grid-template-columns:1fr;
    }
    .footer-grid{
      grid-template-columns:1fr;
    }
    .pay-panel{
      flex-direction:column;align-items:flex-start;
    }
    .services-grid{
      grid-template-columns:1fr;
    }
    .features-grid{
      grid-template-columns:1fr;
    }
    .coverage-item{
      flex-direction:column;
      align-items:flex-start;
    }
    promo-banner{
      display: none;
    }
  }
  