/* Página Telefonía móvil. Tipografía y reset heredados de global.css.
   Todos los selectores y variables quedan dentro de mobile-plans. */

/* ==============================
   CONFIGURACIÓN GENERAL
================================ */
.mobile-plans-page{
    --azul:#073b87;
    --azul2:#075eb9;
    --azul3:#08a4e8;
    --naranja:#ff5a0a;
    --naranja2:#ff7a00;
    --blanco:#ffffff;
    --gris:#f4f8fc;
    --texto:#092f68;
    color:var(--texto);
    background:#fff;
    overflow:hidden;
}
.mobile-plans-container{
    width:min(var(--container-width), var(--container-width-fluid));
    margin:auto;
}
/* ==============================
   HERO
================================ */
.mobile-plans-hero{
    position:relative;
    padding:80px 0 70px;
    background:
        radial-gradient(circle at 85% 20%,rgba(0,157,255,.18),transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#f4faff 55%,#e9f5ff 100%);
}
.mobile-plans-hero-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    align-items:center;
    gap:40px;
}
.mobile-plans-brand{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:30px;
}
.mobile-plans-logo{
    max-width:270px;
    height:auto;
}
.mobile-plans-separador{
    width:1px;
    height:65px;
    background:#d4e0ed;
}
.mobile-plans-logo-movil{
    max-width:170px;
    height:auto;
}
.mobile-plans-hero h1{
    margin:0;
    font-size:clamp(42px,6vw,76px);
    line-height:.93;
    font-weight:900;
    letter-spacing:-2px;
    color:var(--azul);
}
.mobile-plans-hero h1 span{
    display:block;
    color:var(--naranja);
    font-style:italic;
}
.mobile-plans-subtitulo{
    font-size:20px;
    line-height:1.6;
    max-width:620px;
    margin:24px 0;
    color:#345477;
}
.mobile-plans-beneficios-hero{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    margin:30px 0;
}
.mobile-plans-beneficio{
    display:flex;
    align-items:center;
    gap:12px;
    font-weight:700;
}
.mobile-plans-icon{
    width:46px;
    height:46px;
    min-width:46px;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    background:linear-gradient(135deg,var(--azul2),var(--azul3));
    color:white;
    font-size:21px;
    box-shadow:0 8px 20px rgba(0,87,170,.2);
}
.mobile-plans-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:17px 28px;
    border-radius:50px;
    text-decoration:none;
    font-weight:800;
    color:#fff;
    background:linear-gradient(90deg,var(--naranja2),var(--naranja));
    box-shadow:0 12px 28px rgba(255,90,10,.30);
    transition:.25s;
}
.mobile-plans-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 32px rgba(255,90,10,.38);
}
.mobile-plans-hero-visual{
    position:relative;
    min-height:450px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.mobile-plans-phone-card{
    width:100%;
    max-width:470px;
    min-height:410px;
    border-radius:40px;
    background:linear-gradient(145deg,#0756a8,#08a7e8);
    padding:50px;
    color:white;
    position:relative;
    overflow:hidden;
    box-shadow:0 30px 60px rgba(0,66,135,.25);
}
.mobile-plans-phone-card:before,
.mobile-plans-phone-card:after{
    content:"";
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,.10);
}
.mobile-plans-phone-card:before{
    width:260px;
    height:260px;
    right:-80px;
    top:-80px;
}
.mobile-plans-phone-card:after{
    width:200px;
    height:200px;
    left:-70px;
    bottom:-80px;
}
.mobile-plans-phone-card h3{
    position:relative;
    font-size:43px;
    line-height:1;
    margin:20px 0;
    z-index:2;
}
.mobile-plans-phone-card p{
    position:relative;
    font-size:19px;
    z-index:2;
}
.mobile-plans-phone{
    font-size:85px;
    position:relative;
    z-index:2;
}
/* ==============================
   TITULOS
================================ */
.mobile-plans-section{
    padding:80px 0;
}
.mobile-plans-section-title{
    text-align:center;
    margin-bottom:50px;
}
.mobile-plans-section-title h2{
    margin:0;
    font-size:clamp(35px,5vw,54px);
    color:var(--azul);
    font-weight:900;
}
.mobile-plans-section-title p{
    font-size:18px;
    color:#60758d;
    margin-top:10px;
}
/* ==============================
   PLANES
================================ */
.mobile-plans-planes{
    background:linear-gradient(180deg,#fff,#f3f9ff);
}
.mobile-plans-grid-planes{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
    align-items:stretch;
}
.mobile-plans-plan{
    background:white;
    border-radius:22px;
    padding:24px 18px;
    text-align:center;
    border:1px solid #dce9f5;
    box-shadow:0 15px 40px rgba(10,60,110,.10);
    position:relative;
    transition:.3s;
}
.mobile-plans-plan:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 50px rgba(10,60,110,.18);
}
.mobile-plans-plan.mobile-plans-plan--featured{
    border:3px solid var(--naranja);
    transform:scale(1.04);
}
.mobile-plans-plan.mobile-plans-plan--featured:hover{
    transform:scale(1.04) translateY(-8px);
}
.mobile-plans-popular{
    position:absolute;
    top:-17px;
    left:50%;
    transform:translateX(-50%);
    background:var(--naranja);
    color:#fff;
    padding:7px 18px;
    border-radius:20px;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}
.mobile-plans-plan-logo{
    font-size:14px;
    font-weight:900;
    color:var(--azul);
    margin-bottom:15px;
}
.mobile-plans-plan-logo span{
    color:var(--naranja);
}
.mobile-plans-precio{
    background:linear-gradient(90deg,var(--naranja2),var(--naranja));
    color:white;
    padding:10px 5px;
    border-radius:10px;
    font-size:18px;
    font-weight:900;
}
.mobile-plans-gigas{
    font-size:48px;
    line-height:1;
    font-weight:900;
    color:var(--azul);
    margin:25px 0 5px;
}
.mobile-plans-bono{
    color:var(--naranja);
    font-size:15px;
    font-weight:800;
    margin-bottom:20px;
}
.mobile-plans-redes{
    padding:18px 0;
    border-top:1px solid #e7eef6;
    border-bottom:1px solid #e7eef6;
}
.mobile-plans-redes-icons{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-bottom:8px;
}
.mobile-plans-social{
    width:28px;
    height:28px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--azul2);
    color:white;
    font-size:11px;
    font-weight:bold;
}
.mobile-plans-redes strong{
    display:block;
    font-size:14px;
}
.mobile-plans-incluye{
    min-height:105px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    font-size:13px;
    font-weight:700;
}
.mobile-plans-plan .mobile-plans-btn{
    width:100%;
    padding:13px 10px;
    font-size:13px;
}
/* ==============================
   BENEFICIOS
================================ */
.mobile-plans-beneficios-section{
    padding:55px 0;
    background:white;
}
.mobile-plans-beneficios-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    text-align:center;
    gap:25px;
}
.mobile-plans-beneficio-box{
    padding:20px;
}
.mobile-plans-beneficio-box .mobile-plans-icon{
    margin:0 auto 15px;
}
.mobile-plans-beneficio-box h4{
    margin:0;
    color:var(--azul);
    font-size:15px;
}
/* ==============================
   COBERTURA
================================ */
.mobile-plans-cobertura{
    padding:80px 0;
    background:
        radial-gradient(circle at 10% 50%,rgba(0,174,255,.25),transparent 30%),
        linear-gradient(120deg,#031d50,#0754a5);
    color:white;
}
.mobile-plans-cobertura-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}
.mobile-plans-mexico{
    font-size:170px;
    text-align:center;
    filter:drop-shadow(0 15px 30px rgba(0,0,0,.25));
}
.mobile-plans-cobertura h2{
    font-size:46px;
    margin:0 0 15px;
}
.mobile-plans-cobertura p{
    font-size:19px;
    line-height:1.6;
    opacity:.9;
}
.mobile-plans-cobertura-feature{
    margin-top:25px;
    font-size:18px;
    font-weight:800;
}
/* ==============================
   POR QUÉ ELEGIRNOS
================================ */
.mobile-plans-porque{
    background:#fff;
}
.mobile-plans-porque-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:20px;
}
.mobile-plans-porque-item{
    text-align:center;
    padding:25px 15px;
    border-radius:18px;
    background:#f8fbff;
    transition:.25s;
}
.mobile-plans-porque-item:hover{
    background:white;
    box-shadow:0 15px 35px rgba(0,70,140,.12);
    transform:translateY(-5px);
}
.mobile-plans-porque-icon{
    font-size:35px;
    margin-bottom:12px;
}
.mobile-plans-porque-item strong{
    display:block;
    color:var(--azul);
}
/* ==============================
   CTA
================================ */
.mobile-plans-cta{
    padding:45px 0;
    background:linear-gradient(90deg,#042b70,#0678ca);
    color:white;
}
.mobile-plans-cta-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}
.mobile-plans-cta h2{
    font-size:36px;
    margin:0;
}
/* ==============================
   FAQ
================================ */
.mobile-plans-faq{
    background:#f6faff;
}
.mobile-plans-faq-grid{
    display:grid;
    grid-template-columns:1.5fr .7fr;
    gap:40px;
}
.mobile-plans-faq-item{
    background:white;
    margin-bottom:12px;
    padding:20px;
    border-radius:12px;
    box-shadow:0 5px 15px rgba(0,50,100,.05);
}
.mobile-plans-faq-item summary{
    cursor:pointer;
    font-weight:800;
    color:var(--azul);
}
.mobile-plans-faq-item p{
    color:#60758d;
    line-height:1.6;
}
.mobile-plans-ayuda{
    background:white;
    border-radius:25px;
    padding:35px;
    text-align:center;
    box-shadow:0 15px 40px rgba(0,60,120,.10);
}
.mobile-plans-ayuda-icon{
    font-size:55px;
}
.mobile-plans-ayuda h3{
    color:var(--azul);
    font-size:25px;
}
/* ==============================
   RESPONSIVE TABLET
================================ */
@media(max-width:1050px){
    .mobile-plans-grid-planes{
        grid-template-columns:repeat(2,1fr);
    }
    .mobile-plans-plan.mobile-plans-plan--featured{
        transform:none;
    }
    .mobile-plans-beneficios-grid,
    .mobile-plans-porque-grid{
        grid-template-columns:repeat(3,1fr);
    }
}
/* ==============================
   RESPONSIVE MÓVIL
================================ */
@media(max-width:767px){
    .mobile-plans-hero{
        padding:45px 0;
    }
    .mobile-plans-hero-grid,
    .mobile-plans-cobertura-grid,
    .mobile-plans-faq-grid{
        grid-template-columns:1fr;
    }
    .mobile-plans-brand{
        flex-direction:column;
        align-items:flex-start;
    }
    .mobile-plans-separador{
        display:none;
    }
    .mobile-plans-hero h1{
        font-size:44px;
    }
    .mobile-plans-beneficios-hero{
        grid-template-columns:1fr;
    }
    .mobile-plans-hero-visual{
        min-height:auto;
    }
    .mobile-plans-phone-card{
        min-height:320px;
        padding:35px;
    }
    .mobile-plans-phone-card h3{
        font-size:35px;
    }
    .mobile-plans-grid-planes{
        grid-template-columns:1fr;
        gap:25px;
    }
    .mobile-plans-plan{
        max-width:420px;
        width:100%;
        margin:auto;
    }
    .mobile-plans-beneficios-grid,
    .mobile-plans-porque-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .mobile-plans-cobertura h2{
        font-size:36px;
    }
    .mobile-plans-mexico{
        font-size:110px;
    }
    .mobile-plans-cta-inner{
        flex-direction:column;
        text-align:center;
    }
    .mobile-plans-cta h2{
        font-size:30px;
    }
}

/* Adaptaciones al reset global y accesibilidad de la página. */
.mobile-plans-brand { flex-wrap: wrap; }
.mobile-plans-logo { width: min(100%, 14rem); }
.mobile-plans-wordmark { color: var(--azul); font-size: 1.35rem; line-height: 1.15; }
.mobile-plans-wordmark strong { color: var(--naranja); }
.mobile-plans-page section[id] { scroll-margin-top: 10rem; }
.mobile-plans-page :is(a, summary):focus-visible { outline: 3px solid var(--color-primary); outline-offset: 5px; }
.mobile-plans-faq-item p { margin-top: 1rem; }
.mobile-plans-ayuda p { margin: 1rem 0 1.5rem; }
.mobile-plans-plan { min-width: 0; display: flex; flex-direction: column; }
.mobile-plans-plan .mobile-plans-btn { margin-top: auto; }
.mobile-plans-grid-planes { row-gap: 2rem; }
.mobile-plans-hero h1 { overflow-wrap: anywhere; }
.mobile-plans-btn { text-align: center; }
@media (max-width: 767px) {
  .mobile-plans-hero h1 { font-size: clamp(2rem, 8.5vw, 2.75rem); }
  .mobile-plans-beneficio-box { padding: 1rem .25rem; }
  .mobile-plans-beneficio-box h4 { font-size: .8rem; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  .mobile-plans-page * { transition: none; }
}

/* Mapa de cobertura: estilos aislados del sitio de referencia. */
.mobile-coverage-cov-sec{padding:3.75rem 0 0}.mobile-coverage-cov-card{background:linear-gradient(150deg,#0c2f6e 0%,#06245f 55%,#051a45 100%);border-radius:1.875rem;grid-template-columns:1fr 1.05fr;align-items:center;gap:3rem;padding:3.375rem 3.5rem;display:grid;position:relative;overflow:hidden;box-shadow:0 2.5rem 5rem -1.875rem #06245f8c}.mobile-coverage-cov-card:after{content:"";background:radial-gradient(circle,#ff5a0038,#0000 65%);border-radius:50%;width:21.25rem;height:21.25rem;position:absolute;bottom:-7.5rem;left:-5rem}.mobile-coverage-cov-txt h2{color:#fff;margin:0.75rem 0 1rem;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:700}.mobile-coverage-cov-txt p{color:#c3d2f0;max-width:48ch;margin-bottom:1.5rem;font-size:1rem}.mobile-coverage-cov-search{flex-wrap:wrap;gap:0.625rem;margin-bottom:0.875rem;display:flex}.mobile-coverage-cov-search input{color:#fff;min-width:14.375rem;font-family:inherit;background:#ffffff1a;border:0.0625rem solid #ffffff38;border-radius:0.875rem;outline:none;flex:1;padding:0.8125rem 1.125rem;font-size:.95rem}.mobile-coverage-cov-search input::placeholder{color:#93a9d4}.mobile-coverage-cov-search input:focus{border-color:#ffb37e}.mobile-coverage-cov-metrics{z-index:1;border-top:0.0625rem solid #ffffff24;grid-column:1/-1;grid-template-columns:repeat(4,1fr);margin-top:2.75rem;padding-top:2.125rem;display:grid;position:relative}.mobile-coverage-cov-metrics .mobile-coverage-cmet{flex-direction:column;gap:0.4375rem;padding:0 1.75rem;display:flex;position:relative}.mobile-coverage-cov-metrics .mobile-coverage-cmet:first-child{padding-left:0}.mobile-coverage-cov-metrics .mobile-coverage-cmet:not(:first-child):before{content:"";background:linear-gradient(#0000,#ffffff38,#0000);width:0.0625rem;position:absolute;top:0.25rem;bottom:0.25rem;left:0}.mobile-coverage-cov-metrics .mobile-coverage-cmet b{font-family:inherit;color:#fff;letter-spacing:-.01em;font-size:clamp(1.55rem,2.5vw,2.15rem);font-weight:800;line-height:1}.mobile-coverage-cov-metrics .mobile-coverage-cmet b em{color:#ffb37e;margin-left:0.125rem;font-size:.62em;font-style:normal;font-weight:700}.mobile-coverage-cov-metrics .mobile-coverage-cmet span{color:#9fb4e0;max-width:24ch;font-size:.8rem;font-weight:500;line-height:1.5}@media (width<=66.25rem){.mobile-coverage-cov-metrics{grid-template-columns:1fr 1fr;gap:1.875rem 0}.mobile-coverage-cov-metrics .mobile-coverage-cmet{padding:0}.mobile-coverage-cov-metrics .mobile-coverage-cmet:not(:first-child):before{display:none}}.mobile-coverage-cov-map{z-index:1;position:relative}.mobile-coverage-cov-map .mobile-coverage-net-map{background:radial-gradient(26.875rem 18.75rem at 50% 44%,#ff8c3c24,#0000 70%),linear-gradient(#ffffff0e,#ffffff04);border:0.0625rem solid #ffffff21;border-radius:1.25rem;justify-content:center;align-items:center;min-height:26.875rem;padding:0.875rem;display:flex;position:relative;overflow:hidden}.mobile-coverage-cov-map .mobile-coverage-net-map:before{content:"";pointer-events:none;background:linear-gradient(#0000,#ff8c3c12,#0000);height:45%;animation:7s linear infinite mobile-coverage-mpt-map-scan;position:absolute;inset:-60% 0 auto}@keyframes mobile-coverage-mpt-map-scan{0%{top:-60%}to{top:160%}}.mobile-coverage-cov-map .mobile-coverage-net-map__svg{z-index:1;width:100%;max-width:40rem;height:auto;position:relative}.mobile-coverage-cov-map .mobile-coverage-net-map__dots{fill:#ffb37e57}.mobile-coverage-cov-map .mobile-coverage-net-map__dots circle{transition:fill .3s}.mobile-coverage-cov-map .mobile-coverage-net-link{fill:none;stroke:#ff8b3d;stroke-width:0.1rem;stroke-dasharray:5 8;opacity:.7;animation:2.4s linear infinite mobile-coverage-mpt-link-flow}@keyframes mobile-coverage-mpt-link-flow{to{stroke-dashoffset:-1.625rem}}.mobile-coverage-cov-map .mobile-coverage-nx-core{fill:#fff}.mobile-coverage-cov-map .mobile-coverage-nx--hub .mobile-coverage-nx-core{fill:#ff5a00;stroke:#fff;stroke-width:0.1875rem;filter:drop-shadow(0 0 0.625rem #ff5a00bf);animation:2s ease-out infinite mobile-coverage-mpt-hub-pulse}@keyframes mobile-coverage-mpt-hub-pulse{0%{r:6}70%{opacity:.9}to{r:11;opacity:.45}}.mobile-coverage-cov-map .mobile-coverage-nx-wave{fill:none;stroke:#ff8b3d;stroke-width:0.125rem;opacity:.8;transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out infinite mobile-coverage-mpt-wave-out;animation-delay:var(--d,0s)}.mobile-coverage-cov-map .mobile-coverage-nx-wave--2{animation-delay:calc(var(--d,0s) + 1.3s)}@keyframes mobile-coverage-mpt-wave-out{0%{opacity:.9;transform:scale(.35)}75%,to{opacity:0;transform:scale(3.2)}}.mobile-coverage-cov-map .mobile-coverage-nx--prim .mobile-coverage-nx-core{fill:#fff;stroke:#ff8b3d;stroke-width:0.1625rem;filter:drop-shadow(0 0 0.4375rem #ff5a008c)}.mobile-coverage-cov-map .mobile-coverage-nx-lbl{fill:#ffffffd1;font-size:0.8125rem;font-family:inherit;text-anchor:middle;letter-spacing:.01em;font-weight:600}@media (width<=66.25rem){.mobile-coverage-cov-map .mobile-coverage-net-map{min-height:21.25rem}}@media (width<=43.75rem){.mobile-coverage-cov-map .mobile-coverage-net-map{min-height:17.5rem;padding:0.625rem}.mobile-coverage-cov-map .mobile-coverage-nx-lbl{font-size:0.8125rem}}.mobile-coverage-cov-float{backdrop-filter:blur(0.625rem);box-shadow:0 .875rem 2.5rem -.875rem #06245f29;z-index:2;background:#fffffff0;border-radius:0.875rem;align-items:center;gap:0.625rem;padding:0.625rem 1rem;display:flex;position:absolute;bottom:1.625rem;left:0}.mobile-coverage-cov-float .mobile-coverage-pulse{background:#22c55e;border-radius:50%;flex:none;width:0.625rem;height:0.625rem;animation:2s infinite mobile-coverage-covpulse;box-shadow:0 0 #22c55e80}@keyframes mobile-coverage-covpulse{0%{box-shadow:0 0 #22c55e80}70%{box-shadow:0 0 0 0.5625rem #22c55e00}to{box-shadow:0 0 #22c55e00}}.mobile-coverage-cov-float b{font-family:inherit;color:#07184a;font-size:.85rem;font-weight:700;line-height:1.15}.mobile-coverage-cov-float span{color:#667085;font-size:.68rem}@media (width<=66.25rem){.mobile-coverage-cov-card{grid-template-columns:1fr;padding:2.75rem 1.875rem}.mobile-coverage-cov-map{order:2}}
/* Adaptación local: hereda tipografía global y limita estilos a esta sección. */

.mobile-coverage-cov-sec { padding-block: 3.75rem; }
.mobile-coverage-cov-card > * { min-width: 0; }
.mobile-coverage-cov-card:after { pointer-events: none; }
.mobile-coverage-cov-txt { position: relative; z-index: 1; }
.mobile-coverage-cov-search input { min-width: 0; width: 100%; flex-basis: 13rem; }
.mobile-coverage-btn { display: inline-flex; align-items: center; justify-content: center; padding: .8rem 1.2rem; border-radius: .875rem; background: #ff5a00; color: white; font-weight: 700; text-decoration: none; }
.mobile-coverage-btn:focus-visible { outline: .1875rem solid white; outline-offset: .25rem; }
#mobile-coverage-status { min-height: 2.8em; font-size: .8125rem; margin-bottom: 0; }
.mobile-coverage-nx.is-selected .mobile-coverage-nx-core { fill: #ffdd75; stroke: white; stroke-width: 4; }
@media (max-width: 66.25rem) { .mobile-coverage-cov-map { order: 0; } .mobile-coverage-cov-metrics { margin-top: 0; } }
@media (max-width: 37.5rem) { .mobile-coverage-cov-card { padding: 1.25rem; gap: 1.5rem; border-radius: var(--radius-lg); } .mobile-coverage-cov-metrics { gap: 1.5rem 1rem; } .mobile-coverage-cov-metrics .mobile-coverage-cmet b { font-size: clamp(1.1rem, 5vw, 1.5rem); } .mobile-coverage-cov-float { position: relative; bottom: auto; margin-top: .75rem; } .mobile-coverage-cov-map .mobile-coverage-net-map { min-height: 13rem; padding: 0; } }
@media (prefers-reduced-motion: reduce) { #cobertura-mapa *, #cobertura-mapa *:before { animation: none !important; transition: none !important; } }

/* Resultado de consulta: un solo estado por diálogo, sin navegación externa. */
.mobile-coverage-btn { border: 0; cursor: pointer; }
.mobile-coverage-dialog { margin: auto; width: min(94vw, 78rem); max-height: 90dvh; overflow: auto; padding: clamp(1rem, 3vw, 2rem); border: 0; border-radius: var(--radius-lg); background: white; color: #17345d; box-shadow: 0 1.5rem 5rem #001c4655; }
.mobile-coverage-dialog::backdrop { background: #061525b3; backdrop-filter: blur(.25rem); }
.mobile-coverage-dialog__close { display:block; margin-left:auto; width:2.75rem; height:2.75rem; border:0; border-radius:50%; background:#eef4ff; color:#17345d; cursor:pointer; font-size:1.75rem; }
.mobile-coverage-dialog__region { color:#bc4400; font-weight:700; font-size:.875rem; }
.mobile-coverage-dialog h2 { font-size:clamp(1.4rem,4vw,2rem); line-height:1.2; margin-block:.5rem 1rem; }
.mobile-coverage-dialog table { width:100%; border-collapse:collapse; margin-block:1rem; font-size:.875rem; table-layout:fixed; }
.mobile-coverage-dialog caption { text-align:left; margin-bottom:.625rem; font-weight:600; }
.mobile-coverage-dialog th, .mobile-coverage-dialog td { padding:.65rem .4rem; border-bottom:.0625rem solid #dae3ef; overflow-wrap:anywhere; text-align:left; }
.mobile-coverage-dialog th:first-child { width:auto; }
.mobile-coverage-dialog thead { background:#eef4ff; }
#coverage-result-note, .mobile-coverage-dialog small { display:block; font-size:.75rem; color:#526780; margin-top:.75rem; }
.mobile-coverage-dialog button:focus-visible { outline:.1875rem solid #007ed5; outline-offset:.125rem; }

/* Tabla completa: el desplazamiento queda dentro del modal en pantallas pequeñas. */
.mobile-coverage-dialog__table { overflow-x: auto; margin-block: 1rem; border: .0625rem solid #dae3ef; border-radius: .75rem; }
.mobile-coverage-dialog__table table { min-width: 64rem; margin: 0; table-layout: auto; }
.mobile-coverage-dialog__table caption { padding: .75rem; }
.mobile-coverage-dialog__table th, .mobile-coverage-dialog__table td { padding: .8rem .65rem; border-right: .0625rem solid #dae3ef; text-align: center; }
.mobile-coverage-dialog__table tbody th { text-align:left; }
.mobile-coverage-dialog__table thead small { color:inherit; margin: .25rem 0 0; }
.mobile-coverage-dialog__table th[colspan] { background: #dceafe; }
.mobile-coverage-dialog__table:focus-visible { outline: .1875rem solid #007ed5; outline-offset: .125rem; }
