/* =========================================================
   INTERSÉEB FIBER — LIGHT THEME
   Capa exclusivamente visual. No modifica funcionalidad.
   Se carga después de los estilos existentes.
========================================================= */

:root {
    --primary: #2F8CFF;
    --secondary: #68CCFF;
    --dark: #16324F;
    --dark2: #274968;
    --white: #FFFFFF;
    --gray: #667D94;
    --glass: rgba(255, 255, 255, .88);

    --light-bg: #F7FBFF;
    --light-bg-2: #EDF7FF;
    --light-surface: #FFFFFF;
    --light-surface-soft: #F2F8FF;
    --light-text: #15324B;
    --light-muted: #667D94;
    --light-border: #D9E8F6;
    --light-border-strong: #BEDAF2;
    --light-shadow: 0 18px 50px rgba(37, 105, 165, .11);
    --light-shadow-soft: 0 10px 30px rgba(37, 105, 165, .08);
}

html { background: var(--light-bg); }

body,
body.contact-page,
body.tienda-page,
body.instalaciones-page {
    background:
        radial-gradient(circle at 10% 8%, rgba(104, 204, 255, .14), transparent 25%),
        radial-gradient(circle at 92% 18%, rgba(47, 140, 255, .10), transparent 26%),
        linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 42%, #EFF8FF 100%) !important;
    color: var(--light-text) !important;
}

#particles {
    opacity: .12;
}

::selection {
    background: rgba(47, 140, 255, .20);
    color: #0A3156;
}

/* =========================================================
   NAVBAR
========================================================= */
.navbar,
.tienda-page .navbar,
.contact-page .navbar,
.instalaciones-page .navbar {
    background: rgba(255, 255, 255, .88) !important;
    border-bottom: 1px solid rgba(127, 174, 214, .22) !important;
    box-shadow: 0 8px 30px rgba(29, 91, 145, .07);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.menu a,
.navbar .menu a,
.menu-toggle {
    color: #23445F !important;
}

.menu a:hover,
.navbar .menu a:hover,
.tienda-page .menu a.active {
    color: var(--primary) !important;
}

.btn-navbar,
.btn-nav-cobertura,
.btn-navbar-mobile {
    background: linear-gradient(135deg, #4EA5FF, #2586F5) !important;
    color: #fff !important;
    box-shadow: 0 10px 25px rgba(47, 140, 255, .18) !important;
}

@media (max-width: 900px) {
    .navbar .menu {
        background: rgba(255, 255, 255, .97) !important;
        border-left: 1px solid var(--light-border) !important;
        box-shadow: -14px 0 40px rgba(30, 91, 145, .12) !important;
    }

    .navbar .menu a {
        color: #23445F !important;
    }
}

/* =========================================================
   BOTONES Y ELEMENTOS GENERALES
========================================================= */
.btn-primary,
.btn-store-primary,
.feature-buy,
#contratacionSubmit,
.cobertura-v2-btn-primary {
    background: linear-gradient(135deg, #53A9FF, #2185F6) !important;
    color: #fff !important;
    box-shadow: 0 12px 30px rgba(47, 140, 255, .18) !important;
}

.btn-outline,
.btn-hero-secondary,
.btn-store-secondary,
.btn-volver {
    background: #FFFFFF !important;
    color: #2A5D88 !important;
    border-color: var(--light-border-strong) !important;
    box-shadow: 0 8px 24px rgba(37, 105, 165, .06);
}

.btn-outline:hover,
.btn-hero-secondary:hover,
.btn-store-secondary:hover,
.btn-volver:hover {
    background: #EEF7FF !important;
    border-color: #83BDEA !important;
}

.section-title p,
.commercial-heading p,
.card p,
.plan p,
.store-showcase-body p {
    color: var(--light-muted) !important;
}

.card,
.experience-item,
.plan {
    background: rgba(255, 255, 255, .94) !important;
    border-color: var(--light-border) !important;
    box-shadow: var(--light-shadow-soft);
}

.card h2,
.card h3,
.plan h2,
.plan h3,
.section-title h2,
.commercial-heading h2 {
    color: var(--light-text);
}

/* =========================================================
   INDEX — HERO COMERCIAL
========================================================= */
.hero-commercial {
    background:
        radial-gradient(circle at 80% 35%, rgba(97, 192, 255, .28), transparent 28%),
        radial-gradient(circle at 10% 8%, rgba(47, 140, 255, .12), transparent 28%),
        linear-gradient(145deg, #FFFFFF 0%, #F4FAFF 48%, #E7F5FF 100%) !important;
}

.hero-commercial::before {
    background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.86) 48%, rgba(237,248,255,.48) 100%) !important;
}

.hero-commercial-grid {
    opacity: .52 !important;
    background-image:
        linear-gradient(rgba(47, 140, 255, .07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(47, 140, 255, .07) 1px, transparent 1px) !important;
}

.hero-glow-one { background: rgba(70, 177, 255, .18) !important; }
.hero-glow-two { background: rgba(66, 130, 255, .12) !important; }

.hero-eyebrow,
.section-kicker {
    color: #2783DA !important;
}

.hero-commercial-copy h1 {
    color: #15324B !important;
}

.hero-commercial-copy h1 span,
.commercial-heading h2 span,
.commercial-cta h2 span,
.store-showcase-header h2 span {
    background: linear-gradient(90deg, #278CFF, #4ABEFF, #2378DB) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
}

.hero-commercial-copy > p {
    color: #5F7890 !important;
}

.hero-proof-item {
    color: #6E8498 !important;
}

.hero-proof-item i { color: #2F8CFF !important; }

.hero-service-card {
    background:
        radial-gradient(circle at 90% 10%, rgba(83, 177, 255, .17), transparent 34%),
        linear-gradient(145deg, rgba(255,255,255,.98), rgba(239,248,255,.96)) !important;
    border-color: #C9E1F5 !important;
    box-shadow: 0 28px 70px rgba(46, 112, 169, .13) !important;
    color: var(--light-text) !important;
}

.hero-service-card h3,
.hero-speed strong,
.hero-service-bottom strong {
    color: #15324B !important;
}

.hero-service-label,
.hero-service-bottom small {
    color: #668097 !important;
}

.hero-service-status {
    color: #188A55 !important;
    background: rgba(39, 190, 112, .09) !important;
    border-color: rgba(39, 190, 112, .20) !important;
}

.hero-speed-line {
    background: #D9ECFA !important;
}

.hero-floating-card {
    background: rgba(255,255,255,.96) !important;
    border-color: #D5E7F5 !important;
    box-shadow: 0 15px 40px rgba(37, 105, 165, .11) !important;
    color: #254864 !important;
}

.hero-floating-card small { color: #74899B !important; }

.hero-visual-orbit {
    border-color: rgba(47,140,255,.15) !important;
}

.hero-commercial-scroll { color: #7290A8 !important; }

/* =========================================================
   INDEX — STRIP / SERVICIOS / PROCESO / TIENDA / CTA
========================================================= */
.commercial-strip {
    background: #FFFFFF !important;
    border-color: #DFECF7 !important;
    box-shadow: 0 8px 30px rgba(37,105,165,.05);
}

.commercial-strip-item strong { color: #2387F4 !important; }
.commercial-strip-item span { color: #71869A !important; }

.commercial-section,
.process-section,
.store-showcase-section,
.featured-plans-section,
.planes-internet {
    background: transparent !important;
}

.service-choice-card,
.featured-plan-card,
.process-item,
.store-showcase-card,
.selector-card,
.consulta-cobertura {
    background: rgba(255,255,255,.96) !important;
    border-color: #D8E8F6 !important;
    box-shadow: 0 15px 42px rgba(37, 105, 165, .08) !important;
    color: var(--light-text) !important;
}

.service-choice-card:hover,
.featured-plan-card:hover,
.store-showcase-card:hover,
.selector-card:hover,
.consulta-cobertura:hover {
    border-color: #86BFEA !important;
    box-shadow: 0 22px 55px rgba(37, 105, 165, .13) !important;
}

.service-choice-content h3,
.featured-plan-head,
.process-item h3,
.store-showcase-body h3,
.selector-card h3,
.consulta-info h3 {
    color: #15324B !important;
}

.service-choice-content p,
.featured-plan-card p,
.process-item p,
.selector-card p,
.consulta-info p {
    color: #667D94 !important;
}

.service-choice-tag,
.service-choice-link,
.featured-plan-link,
.selector-boton,
.consulta-action {
    color: #2688F2 !important;
}

.service-choice-icon,
.process-icon,
.selector-icon,
.consulta-icon {
    background: #EDF7FF !important;
    border-color: #CFE5F7 !important;
    color: #2F8CFF !important;
}

.process-number {
    color: rgba(47,140,255,.18) !important;
}

.process-connector {
    background: linear-gradient(90deg, transparent, #B9DCF5, transparent) !important;
}

.store-showcase-image {
    background: #F7FBFF !important;
}

.commercial-cta {
    background:
        radial-gradient(circle at 90% 10%, rgba(91, 192, 255, .24), transparent 28%),
        linear-gradient(135deg, #FFFFFF, #EAF6FF) !important;
    border: 1px solid #D1E6F7 !important;
    box-shadow: 0 24px 65px rgba(37,105,165,.11) !important;
}

.commercial-cta h2 { color: #15324B !important; }
.commercial-cta p { color: #637B91 !important; }

.cta {
    background: linear-gradient(135deg, #DFF2FF, #F5FBFF) !important;
    border: 1px solid #C8E4F7;
    box-shadow: var(--light-shadow-soft);
    color: #15324B !important;
}

.cta h2 { color: #15324B !important; }
.cta p { color: #607A91 !important; }

/* =========================================================
   PLANES / SELECTORES
========================================================= */
.section-title h2,
.planes-internet .section-title h2 {
    color: #15324B !important;
}

.nivel-etiqueta {
    background: #EAF5FF !important;
    color: #267FCE !important;
    border-color: #CBE3F6 !important;
}

.selector-card {
    color: #15324B !important;
}

.zona-sur-card {
    box-shadow: 0 14px 35px rgba(37,105,165,.10) !important;
}

.zona-plan-body {
    background: #FFFFFF !important;
    color: #193A57 !important;
}

.zona-megas,
.zona-precio {
    color: #163A5A !important;
}

.zona-megas-text,
.zona-mes {
    color: #6E8498 !important;
}

.zona-linea {
    background: #DCEAF5 !important;
}

.btn-contratar-tarjeta {
    color: #206FB7 !important;
}

/* =========================================================
   CONTACTO
========================================================= */
.contact-page .hero::before {
    background:
        radial-gradient(circle at 15% 25%, rgba(47,140,255,.14), transparent 32%),
        radial-gradient(circle at 85% 20%, rgba(104,204,255,.18), transparent 28%),
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(236,247,255,.98)) !important;
}

.contact-hero-copy h1,
.contact-section-title h2,
.contact-hero-card h2,
.contact-channel-card h3,
.contact-payment-card h3,
.contact-payment-steps h3,
.contact-support-card h3,
.contact-form-shell h3,
.contact-location-card h3,
.contact-hours-card h3 {
    color: #15324B !important;
}

.contact-hero-copy p,
.contact-section-title p,
.contact-hero-card > p,
.contact-channel-card p,
.contact-payment-card > p,
.contact-step p,
.contact-support-card p,
.contact-form-shell > p,
.contact-location-card p,
.contact-hours-card p,
.contact-shortcut-copy small,
.contact-quick-item span,
.contact-bank-row span,
.contact-support-point div span {
    color: #667D94 !important;
}

.contact-kicker,
.contact-eyebrow,
.contact-payment-badge,
.contact-location-tag {
    color: #267FCE !important;
    background: #EAF5FF !important;
    border-color: #C9E2F5 !important;
}

.contact-hero-meta { color: #526F88 !important; }

.contact-hero-card,
.contact-channel-card,
.contact-quick-item,
.contact-payment-card,
.contact-payment-steps,
.contact-support-card,
.contact-form-shell,
.contact-location-card,
.contact-hours-card {
    background: rgba(255,255,255,.96) !important;
    border-color: #D8E8F6 !important;
    box-shadow: 0 14px 38px rgba(37,105,165,.07) !important;
    color: #15324B !important;
}

.contact-shortcut {
    color: #214761 !important;
    border-color: #E1EDF7 !important;
}

.contact-shortcut-icon,
.contact-channel-icon,
.contact-quick-item i,
.contact-location-icon,
.contact-step-number {
    background: #EDF7FF !important;
    border-color: #CFE5F7 !important;
    color: #2F8CFF !important;
}

.contact-bank-row,
.contact-step {
    border-color: #E1EDF7 !important;
}

.contact-copy-button {
    background: #EDF7FF !important;
    color: #267FCE !important;
    border-color: #C6E0F5 !important;
}

.contact-form-modern label { color: #294B65 !important; }

.contact-form-modern input,
.contact-form-modern textarea {
    background: #F8FBFE !important;
    border-color: #D5E5F2 !important;
    color: #173852 !important;
}

.contact-form-modern input::placeholder,
.contact-form-modern textarea::placeholder {
    color: #91A4B4 !important;
}

.contact-form-modern input:focus,
.contact-form-modern textarea:focus {
    background: #FFFFFF !important;
    border-color: #75B6EA !important;
    box-shadow: 0 0 0 4px rgba(47,140,255,.10) !important;
}

.contact-final-cta {
    background: linear-gradient(120deg, #4BA5FA, #69C9FA) !important;
    box-shadow: 0 22px 55px rgba(47,140,255,.18) !important;
}

.contact-final-actions .btn-primary {
    background: #FFFFFF !important;
    color: #2479C9 !important;
}

/* =========================================================
   TIENDA
========================================================= */
.tienda-page {
    --store-bg: #F7FBFF;
    --store-card: rgba(255,255,255,.95);
    --store-border: #D8E8F6;
}

.store-hero::before {
    background:
        radial-gradient(circle at 15% 25%, rgba(47,140,255,.15), transparent 34%),
        radial-gradient(circle at 82% 40%, rgba(104,204,255,.20), transparent 28%),
        linear-gradient(180deg, #FFFFFF, #EDF7FF 88%) !important;
}

.store-hero::after {
    opacity: .55 !important;
    background-image:
        linear-gradient(rgba(47,140,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(47,140,255,.06) 1px, transparent 1px) !important;
}

.store-hero h1,
.store-section-heading h2,
.feature-content h2,
.product-body h3,
.store-help-card h2 {
    color: #15324B !important;
}

.store-hero p,
.store-trust-row,
.feature-specs span,
.feature-price small,
.feature-price span,
.product-summary,
.product-meta span,
.store-section-heading > p {
    color: #667D94 !important;
}

.eyebrow,
.feature-category { color: #2785DD !important; }

.store-hero h1 span { color: #2F8CFF !important; text-shadow: none !important; }

.store-hero-feature,
.product-card,
.store-help-card {
    background: rgba(255,255,255,.96) !important;
    border-color: #D7E7F4 !important;
    box-shadow: 0 18px 48px rgba(37,105,165,.09) !important;
}

.feature-specs span,
.product-meta span {
    background: #F0F7FD !important;
    border-color: #DCEAF5 !important;
}

.feature-price strong,
.product-price strong {
    color: #15324B !important;
}

.feature-device-wrap img,
.product-media img {
    filter: drop-shadow(0 18px 18px rgba(56,91,120,.16)) !important;
}

.store-category-bar {
    background: rgba(255,255,255,.92) !important;
    border-color: #DCEAF5 !important;
    box-shadow: 0 8px 24px rgba(37,105,165,.06);
}

.store-filter {
    background: #F5FAFE !important;
    border-color: #D9E8F6 !important;
    color: #5F7890 !important;
}

.store-filter:hover,
.store-filter.active {
    color: #247ECD !important;
    background: #EAF5FF !important;
    border-color: #A9D1F0 !important;
}

.store-search {
    background: #F7FBFF !important;
    border-color: #D5E6F3 !important;
}

.store-search input { color: #183952 !important; }
.store-search input::placeholder { color: #91A4B4 !important; }

.product-media {
    background: radial-gradient(circle at center, rgba(76,169,255,.12), #F8FCFF 55%, #FFFFFF 100%) !important;
}

.product-category {
    background: rgba(255,255,255,.90) !important;
    color: #5F7890 !important;
    border-color: #D7E7F4 !important;
}

.product-body { color: #15324B !important; }
.product-stock { color: #168252 !important; }

.empty-store { color: #667D94 !important; }

/* =========================================================
   INSTALACIONES / PERFIL
========================================================= */
.instalaciones-page {
    --ix-blue: #2F8CFF !important;
    --ix-cyan: #68CCFF !important;
    --ix-deep: #F5FAFF !important;
    --ix-panel: rgba(255,255,255,.94) !important;
    --ix-border: #D4E6F4 !important;
    --ix-muted: #667D94 !important;
}

.instalaciones-page .ix-hero::before {
    background:
        linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.86) 48%, rgba(238,248,255,.52) 100%),
        radial-gradient(circle at 78% 50%, rgba(104,204,255,.19), transparent 34%) !important;
}

.instalaciones-page .ix-hero-grid {
    opacity: .62 !important;
    background-image:
        linear-gradient(rgba(47,140,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(47,140,255,.06) 1px, transparent 1px) !important;
}

.instalaciones-page .ix-hero h1,
.instalaciones-page .ix-heading h2,
.instalaciones-page .ix-panel h3,
.instalaciones-page .ix-mv-card h3,
.instalaciones-page .ix-value h4,
.instalaciones-page .ix-mini-card h4,
.instalaciones-page .ix-specialty h4,
.instalaciones-page .ix-client,
.instalaciones-page .ix-project h4,
.instalaciones-page .ix-location-main h3,
.instalaciones-page .ix-location-side h3 {
    color: #15324B !important;
}

.instalaciones-page .ix-hero-copy > p,
.instalaciones-page .ix-heading p,
.instalaciones-page .ix-panel p,
.instalaciones-page .ix-mv-card p,
.instalaciones-page .ix-value p,
.instalaciones-page .ix-mini-card p,
.instalaciones-page .ix-specialty p,
.instalaciones-page .ix-client small,
.instalaciones-page .ix-project p,
.instalaciones-page .ix-location-main p,
.instalaciones-page .ix-location-side p,
.instalaciones-page .ix-trust-item span {
    color: #667D94 !important;
}

.instalaciones-page .ix-eyebrow,
.instalaciones-page .ix-kicker,
.instalaciones-page .ix-chip {
    color: #287FCE !important;
    background: #EAF5FF !important;
    border-color: #C5DFF3 !important;
}

.instalaciones-page .ix-btn-secondary {
    color: #2A5D88 !important;
    background: #FFFFFF !important;
    border-color: #BDD9EF !important;
}

.instalaciones-page .ix-trust-item {
    border-color: #DDEAF5 !important;
}

.instalaciones-page .ix-trust-item strong { color: #1B4E76 !important; }

.instalaciones-page .ix-hero-card,
.instalaciones-page .ix-panel,
.instalaciones-page .ix-mv-card,
.instalaciones-page .ix-value,
.instalaciones-page .ix-highlight,
.instalaciones-page .ix-mini-card,
.instalaciones-page .ix-specialty,
.instalaciones-page .ix-project,
.instalaciones-page .ix-location-main,
.instalaciones-page .ix-location-side,
.instalaciones-page .ix-pdf-shell,
.instalaciones-page .ix-client {
    background: rgba(255,255,255,.95) !important;
    border-color: #D5E6F3 !important;
    box-shadow: 0 16px 42px rgba(37,105,165,.08) !important;
}

.instalaciones-page .ix-panel-icon,
.instalaciones-page .ix-highlight-item i,
.instalaciones-page .ix-mini-card i,
.instalaciones-page .ix-specialty i {
    background: #EDF7FF !important;
    color: #2F8CFF !important;
    border-color: #CFE5F7 !important;
}

.instalaciones-page .ix-card-image::after {
    background: linear-gradient(to top, rgba(22,50,79,.70), transparent 55%) !important;
}

.instalaciones-page .ix-card-caption strong { color: #FFFFFF !important; }
.instalaciones-page .ix-card-caption span { color: #E5F2FC !important; }

.instalaciones-page .ix-cta {
    background: linear-gradient(135deg, #E0F2FF, #F7FCFF) !important;
    border-color: #CCE4F5 !important;
    color: #15324B !important;
}

/* =========================================================
   FOOTER
========================================================= */
footer,
.contact-page footer,
.tienda-page footer,
.instalaciones-page footer {
    background: linear-gradient(180deg, #EAF5FF, #DDEFFF) !important;
    border-top: 1px solid #CBE2F4;
    color: #274A66 !important;
}

footer h3 { color: #173C59 !important; }
footer p { color: #5E778D !important; }
.footer-grid a,
footer a {
    color: #3678AE !important;
}
.footer-grid a:hover,
footer a:hover { color: #176DC0 !important; }
.copyright { color: #71879A !important; }

/* =========================================================
   PRODUCT MODAL / PROMOS
========================================================= */
.product-modal,
.modal-promo,
.modal-promo-planes {
    background: rgba(43, 83, 116, .28) !important;
    backdrop-filter: blur(10px);
}

.product-modal-content,
.modal-promo-content,
.modal-oferta-content {
    background: #FFFFFF !important;
    border: 1px solid #D5E6F3 !important;
    color: #15324B !important;
    box-shadow: 0 28px 80px rgba(37,105,165,.18) !important;
}

.product-modal-content h2,
.modal-promo-content h2,
.modal-oferta-content h2 {
    color: #15324B !important;
}

.product-modal-content p,
.modal-promo-content p,
.modal-oferta-content p {
    color: #667D94 !important;
}

/* =========================================================
   COBERTURA MODAL — LIGHT
========================================================= */
#coberturaModal.cobertura-modal-v2 {
    background: rgba(55, 91, 122, .30) !important;
}

.cobertura-v2-card {
    background:
        radial-gradient(circle at 92% 0%, rgba(104,204,255,.18), transparent 29%),
        linear-gradient(145deg, #FFFFFF, #F1F9FF) !important;
    border-color: #CFE3F4 !important;
    box-shadow: 0 30px 90px rgba(37,105,165,.20) !important;
    color: #15324B !important;
}

.cobertura-v2-close,
.cobertura-v2-back,
.cobertura-v2-btn-secondary {
    background: #FFFFFF !important;
    color: #315C7D !important;
    border-color: #D2E4F2 !important;
}

.cobertura-v2-kicker,
.cobertura-v2-option-arrow { color: #287FCE !important; }

.cobertura-v2-intro,
.cobertura-v2-option small,
.cobertura-v2-note,
.cobertura-v2-mode-label,
.cobertura-v2-check-head p,
.cobertura-v2-map-hint,
.cobertura-v2-search-message {
    color: #667D94 !important;
}

.cobertura-v2-option,
.cobertura-v2-panel,
.cobertura-v2-result,
.cobertura-v2-selected-location,
.cobertura-v2-search-result {
    background: rgba(255,255,255,.94) !important;
    border-color: #D7E7F4 !important;
    color: #15324B !important;
    box-shadow: 0 10px 30px rgba(37,105,165,.06);
}

.cobertura-v2-option.is-primary {
    background: linear-gradient(145deg, #F5FBFF, #E8F5FF) !important;
}

.cobertura-v2-option:hover,
.cobertura-v2-search-result:hover {
    background: #EAF6FF !important;
    border-color: #9DCBEC !important;
}

.cobertura-v2-option-icon,
.cobertura-v2-check-icon,
.cobertura-v2-icon {
    background: #EAF5FF !important;
    border-color: #CBE3F6 !important;
    color: #2F8CFF !important;
}

.cobertura-v2-option.is-skip .cobertura-v2-option-icon {
    color: #668097 !important;
    background: #F1F6FA !important;
    border-color: #DDE8F0 !important;
}

.cobertura-v2-note {
    background: #F6FAFD !important;
    border-color: #DCEAF5 !important;
}

.cobertura-v2-status {
    background: #EAF5FF !important;
    border-color: #CBE3F6 !important;
    color: #287FCE !important;
}

.cobertura-v2-search-field {
    background: #FFFFFF !important;
    border-color: #D5E6F3 !important;
}

.cobertura-v2-search-field input {
    color: #15324B !important;
}

.cobertura-v2-search-field input::placeholder {
    color: #91A4B4 !important;
}

#coberturaMap {
    border-color: #CFE2F1 !important;
    box-shadow: 0 10px 30px rgba(37,105,165,.08);
}

/* =========================================================
   CONTRATACIÓN MODAL — LIGHT
========================================================= */
#contratacionModal {
    background: rgba(55, 91, 122, .30) !important;
}

.contratacion-card {
    background:
        radial-gradient(circle at 92% 0%, rgba(104,204,255,.17), transparent 26%),
        linear-gradient(145deg, #FFFFFF, #F3FAFF) !important;
    border-color: #CFE2F1 !important;
    box-shadow: 0 30px 90px rgba(37,105,165,.20) !important;
    color: #15324B !important;
}

.contratacion-head,
.contratacion-summary,
#contratacionResumen > div,
.agenda-box {
    border-color: #DCEAF5 !important;
}

.contratacion-head h2,
.contratacion-summary h3,
#contratacionResumen strong,
.agenda-box-head strong,
#contratacionSuccessView h3,
.contratacion-gps-copy strong {
    color: #15324B !important;
}

.contratacion-head p,
#contratacionResumen span,
.agenda-box-head span,
#contratacionSuccessView p,
.contratacion-gps-status {
    color: #667D94 !important;
}

.contratacion-kicker,
.contratacion-summary-label { color: #287FCE !important; }

.contratacion-close {
    color: #315C7D !important;
    background: #FFFFFF !important;
    border-color: #D5E6F3 !important;
}

.contratacion-summary {
    background: linear-gradient(180deg, #EDF7FF, rgba(255,255,255,.55)) !important;
}

.contratacion-note,
.contratacion-request-note,
.contratacion-gps-box {
    background: #EDF7FF !important;
    border-color: #CBE3F6 !important;
    color: #3A6687 !important;
}

.contratacion-request-note strong { color: #15324B !important; }

.contratacion-field label { color: #2C4D66 !important; }

.contratacion-field input,
.contratacion-field textarea {
    background: #FFFFFF !important;
    border-color: #D5E6F3 !important;
    color: #15324B !important;
}

.contratacion-field input::placeholder,
.contratacion-field textarea::placeholder {
    color: #91A4B4 !important;
}

.contratacion-field input:focus,
.contratacion-field textarea:focus {
    background: #FFFFFF !important;
    border-color: #76B7EA !important;
    box-shadow: 0 0 0 4px rgba(47,140,255,.10) !important;
}

.agenda-box,
.agenda-empty,
.agenda-loading,
.contratacion-success-meta div {
    background: #F6FAFD !important;
}

.agenda-slot {
    background: #EAF5FF !important;
    color: #286B9F !important;
    border-color: #C4DFF3 !important;
}

.agenda-slot:hover,
.agenda-slot.selected {
    background: #CFEAFF !important;
    color: #15588D !important;
}

#contratacionCancel,
.contratacion-gps-retry {
    background: #FFFFFF !important;
    color: #315C7D !important;
    border-color: #D4E5F2 !important;
}

.contratacion-gps-icon {
    background: #DDEFFF !important;
    color: #2F8CFF !important;
    border-color: #C0DCF2 !important;
}

/* =========================================================
   SOPORTE / WHATSAPP MODAL — LIGHT
========================================================= */
.soporte-whatsapp-modal {
    background: rgba(55, 91, 122, .30) !important;
}

.soporte-whatsapp-card {
    background:
        radial-gradient(circle at 92% 0%, rgba(37,211,102,.10), transparent 30%),
        linear-gradient(145deg, #FFFFFF, #F4FBFF) !important;
    border-color: #D3E4F1 !important;
    box-shadow: 0 30px 90px rgba(37,105,165,.20) !important;
    color: #15324B !important;
}

.soporte-whatsapp-close {
    background: #FFFFFF !important;
    color: #315C7D !important;
    border-color: #D5E6F3 !important;
}

.soporte-whatsapp-kicker { color: #19935A !important; }
.soporte-whatsapp-head h2 { color: #15324B !important; }
.soporte-whatsapp-head p,
.soporte-whatsapp-option-copy small,
.soporte-whatsapp-note { color: #667D94 !important; }

.soporte-whatsapp-option {
    background: #FFFFFF !important;
    color: #15324B !important;
    border-color: #D8E8F6 !important;
    box-shadow: 0 10px 28px rgba(37,105,165,.05);
}

.soporte-whatsapp-option:hover {
    background: #F0FBF5 !important;
    border-color: rgba(37, 181, 99, .34) !important;
}

.soporte-whatsapp-option-icon {
    background: #EAF5FF !important;
    color: #2F8CFF !important;
}

.soporte-whatsapp-arrow { color: #7D93A7 !important; }

/* =========================================================
   UTILIDADES / CORRECCIONES DE CONTRASTE
========================================================= */
input,
textarea,
button,
select {
    font-family: inherit;
}

body :where(h1, h2, h3, h4, h5, h6) {
    text-shadow: none;
}

/* Mantener texto blanco donde el fondo continúa siendo azul sólido */
.btn-primary,
.btn-navbar,
.btn-nav-cobertura,
.btn-navbar-mobile,
.btn-store-primary,
.feature-buy,
#contratacionSubmit,
.cobertura-v2-btn-primary,
.contact-final-cta,
.contact-final-cta h2,
.contact-final-cta p,
.contact-final-cta .btn-outline,
.zona-plan-header,
.zona-plan-header h3,
.zona-plan-header small,
.ribbon-gradient {
    color: #FFFFFF !important;
}

@media (max-width: 700px) {
    body,
    body.contact-page,
    body.tienda-page,
    body.instalaciones-page {
        background: linear-gradient(180deg, #FFFFFF, #F2F9FF) !important;
    }
}

/* =========================================================
   INTERSÉEB FIBER — LIGHT TECH V2
   Ajuste visual: menos blanco puro, azul más profundo,
   fondo neuronal discreto y mejoras de contraste.
   Solo frontend / CSS.
========================================================= */

:root {
    --primary: #1478CF;
    --secondary: #4FB7E8;
    --dark: #0D3555;
    --dark2: #1B4B6E;

    --light-bg: #EDF4F8;
    --light-bg-2: #E3EEF5;
    --light-surface: #FCFEFF;
    --light-surface-soft: #F3F8FC;
    --light-text: #103753;
    --light-muted: #58748A;
    --light-border: #C9DCE9;
    --light-border-strong: #AFCDE2;
    --light-shadow: 0 20px 52px rgba(16, 66, 103, .12);
    --light-shadow-soft: 0 10px 28px rgba(16, 66, 103, .09);
}

html {
    background: #EAF2F7 !important;
}

body,
body.contact-page,
body.tienda-page,
body.instalaciones-page {
    position: relative;
    background:
        radial-gradient(circle at 12% 14%, rgba(30, 104, 157, .10), transparent 24%),
        radial-gradient(circle at 86% 22%, rgba(38, 137, 196, .10), transparent 27%),
        radial-gradient(circle at 58% 78%, rgba(15, 73, 116, .055), transparent 30%),
        linear-gradient(180deg, #F5F9FC 0%, #EAF2F7 46%, #E3EDF4 100%) !important;
    color: var(--light-text) !important;
}

/* El canvas neuronal existente pasa a ser parte visible del fondo.
   No se modifica su JavaScript; solo su presentación. */
#particles {
    z-index: 0 !important;
    opacity: .105 !important;
    pointer-events: none !important;
    filter: brightness(.50) saturate(.72) contrast(1.14);
    mix-blend-mode: multiply;
}

body > nav,
body > header,
body > main,
body > section,
body > footer {
    position: relative;
    z-index: 1;
}

/* Preservar elementos que ya necesitan posicionamiento fijo. */
.navbar {
    position: fixed !important;
    z-index: 1000 !important;
}

.whatsapp {
    position: fixed !important;
    z-index: 999 !important;
}

#coberturaModal,
#contratacionModal,
#soporteWhatsappModal,
.product-modal,
.modal-promo,
.modal-promo-planes {
    z-index: 12000 !important;
}

/* =========================================================
   NAVBAR — BLANCO AZULADO, NO BLANCO PURO
========================================================= */
.navbar,
.tienda-page .navbar,
.contact-page .navbar,
.instalaciones-page .navbar {
    background: rgba(247, 251, 254, .91) !important;
    border-bottom-color: rgba(31, 87, 128, .15) !important;
    box-shadow: 0 9px 28px rgba(15, 63, 99, .08) !important;
}

.menu a,
.navbar .menu a,
.menu-toggle {
    color: #173F5D !important;
}

.menu a:hover,
.navbar .menu a:hover,
.tienda-page .menu a.active {
    color: #0D6FBD !important;
}

.btn-navbar,
.btn-nav-cobertura,
.btn-navbar-mobile,
.btn-primary,
.btn-store-primary,
.feature-buy,
#contratacionSubmit,
.cobertura-v2-btn-primary {
    background: linear-gradient(135deg, #1475CA, #248ED9) !important;
    color: #FFFFFF !important;
    box-shadow: 0 11px 27px rgba(16, 101, 169, .20) !important;
}

/* =========================================================
   HERO — LIGHT TECH MÁS PROFUNDO
========================================================= */
.hero-commercial {
    background:
        radial-gradient(circle at 82% 34%, rgba(55, 157, 211, .18), transparent 28%),
        radial-gradient(circle at 12% 14%, rgba(14, 79, 129, .085), transparent 26%),
        linear-gradient(145deg, rgba(247,251,254,.94) 0%, rgba(235,244,250,.90) 50%, rgba(221,237,247,.88) 100%) !important;
}

.hero-commercial::before {
    background:
        linear-gradient(90deg, rgba(247,251,254,.80) 0%, rgba(241,247,251,.66) 48%, rgba(225,239,248,.44) 100%) !important;
}

/* La cuadrícula deja de competir con la red neuronal. */
.hero-commercial-grid {
    opacity: .22 !important;
    background-image:
        linear-gradient(rgba(13, 67, 107, .085) 1px, transparent 1px),
        linear-gradient(90deg, rgba(13, 67, 107, .085) 1px, transparent 1px) !important;
    background-size: 68px 68px !important;
}

.hero-glow-one {
    background: rgba(39, 126, 181, .115) !important;
}

.hero-glow-two {
    background: rgba(24, 87, 140, .085) !important;
}

.hero-commercial-copy h1,
.section-title h2,
.commercial-heading h2,
.store-showcase-header h2 {
    color: #0B3555 !important;
}

.hero-commercial-copy > p,
.section-title p,
.commercial-heading p {
    color: #58748A !important;
}

.hero-eyebrow,
.section-kicker {
    color: #0D6EBB !important;
}

.hero-commercial-copy h1 span,
.commercial-heading h2 span,
.commercial-cta h2 span,
.store-showcase-header h2 span {
    background: linear-gradient(90deg, #116FC3, #2699D8, #0C609F) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
}

.hero-proof-item {
    color: #536F84 !important;
}

.hero-proof-item i {
    color: #1478CF !important;
}

.hero-service-card {
    background:
        radial-gradient(circle at 90% 8%, rgba(50, 155, 211, .13), transparent 35%),
        linear-gradient(145deg, rgba(252,254,255,.94), rgba(236,246,252,.91)) !important;
    border-color: #B9D5E7 !important;
    box-shadow: 0 30px 72px rgba(13, 61, 96, .15) !important;
}

.hero-floating-card {
    background: rgba(249, 252, 254, .94) !important;
    border-color: #BDD7E8 !important;
    box-shadow: 0 15px 38px rgba(13, 61, 96, .13) !important;
}

.hero-visual-orbit {
    border-color: rgba(18, 91, 145, .17) !important;
}

/* =========================================================
   SUPERFICIES / SECCIONES — MÁS AZULADAS
========================================================= */
.commercial-strip {
    background: rgba(246, 250, 253, .93) !important;
    border-color: #C9DCE9 !important;
    box-shadow: 0 9px 28px rgba(17, 66, 102, .07) !important;
}

.service-choice-card,
.featured-plan-card,
.process-item,
.store-showcase-card,
.selector-card,
.consulta-cobertura,
.card,
.plan,
.experience-item {
    background: rgba(250, 253, 255, .93) !important;
    border-color: #C8DCE9 !important;
    box-shadow: 0 15px 40px rgba(13, 61, 96, .095) !important;
}

.service-choice-card:hover,
.featured-plan-card:hover,
.store-showcase-card:hover,
.selector-card:hover,
.consulta-cobertura:hover {
    border-color: #7FB4D8 !important;
    box-shadow: 0 22px 52px rgba(13, 61, 96, .145) !important;
}

.service-choice-icon,
.process-icon,
.selector-icon,
.consulta-icon {
    background: #E5F1F8 !important;
    border-color: #BFD8E8 !important;
    color: #126FBF !important;
}

.service-choice-content h3,
.featured-plan-head,
.process-item h3,
.store-showcase-body h3,
.selector-card h3,
.consulta-info h3 {
    color: #113A58 !important;
}

.service-choice-content p,
.featured-plan-card p,
.process-item p,
.selector-card p,
.consulta-info p,
.store-showcase-body p {
    color: #5A7488 !important;
}

.service-choice-tag,
.service-choice-link,
.featured-plan-link,
.selector-boton,
.consulta-action {
    color: #0F6DBA !important;
}

.nivel-etiqueta {
    background: #E2EEF6 !important;
    color: #0D649F !important;
    border-color: #BCD4E4 !important;
}

/* =========================================================
   PLANES — CONTRASTE Y AZUL MENOS ELÉCTRICO
========================================================= */
.zona-sur-card {
    --plan-color: #116FC2 !important;
    background: linear-gradient(180deg, #0D66B4 0%, #157FD2 100%) !important;
    border: 1px solid rgba(8, 67, 111, .13) !important;
    box-shadow: 0 16px 34px rgba(9, 67, 111, .16) !important;
}

.zona-sur-card:hover {
    box-shadow: 0 21px 45px rgba(9, 67, 111, .22) !important;
}

.zona-plan-header {
    color: #FFFFFF !important;
}

.zona-plan-header h3,
.zona-plan-header small {
    color: #FFFFFF !important;
}

.zona-plan-body {
    background: #F8FBFD !important;
    color: #143A56 !important;
}

.zona-megas,
.zona-precio {
    color: #0F3857 !important;
}

.zona-megas-text,
.zona-mes {
    color: #5F778A !important;
}

.zona-linea {
    background: #CDDFEB !important;
}

/* Corrige el contraste observado en la captura: texto azul sobre botón azul. */
.btn-contratar-tarjeta,
.zona-sur-card .btn-contratar-tarjeta {
    background: #0B62B1 !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    box-shadow: 0 7px 16px rgba(8, 70, 119, .16);
}

.zona-sur-card:hover .btn-contratar-tarjeta {
    background: #084F91 !important;
    color: #FFFFFF !important;
    filter: none !important;
}

.consulta-cobertura {
    background: rgba(247, 251, 254, .92) !important;
}

/* =========================================================
   CTA / FOOTER — MÁS PROFUNDIDAD
========================================================= */
.commercial-cta,
.cta {
    background:
        radial-gradient(circle at 88% 12%, rgba(42, 145, 199, .13), transparent 30%),
        linear-gradient(135deg, rgba(244,250,253,.96), rgba(224,238,247,.94)) !important;
    border-color: #BCD5E5 !important;
    box-shadow: 0 22px 58px rgba(13, 61, 96, .12) !important;
}

footer,
.contact-page footer,
.tienda-page footer,
.instalaciones-page footer {
    background: linear-gradient(180deg, #DDEAF2, #CFDFEA) !important;
    border-top-color: #B5CDDD !important;
    color: #244A65 !important;
}

footer h3 {
    color: #103D5A !important;
}

footer p {
    color: #526E82 !important;
}

.footer-grid a,
footer a {
    color: #1D679E !important;
}

/* =========================================================
   CONTACTO / TIENDA / INSTALACIONES — SUPERFICIES COHERENTES
========================================================= */
.contact-hero-card,
.contact-channel-card,
.contact-quick-item,
.contact-payment-card,
.contact-payment-steps,
.contact-support-card,
.contact-form-shell,
.contact-location-card,
.contact-hours-card,
.store-hero-feature,
.product-card,
.store-help-card,
.instalaciones-page .ix-hero-card,
.instalaciones-page .ix-panel,
.instalaciones-page .ix-mv-card,
.instalaciones-page .ix-value,
.instalaciones-page .ix-highlight,
.instalaciones-page .ix-mini-card,
.instalaciones-page .ix-specialty,
.instalaciones-page .ix-project,
.instalaciones-page .ix-location-main,
.instalaciones-page .ix-location-side,
.instalaciones-page .ix-pdf-shell,
.instalaciones-page .ix-client {
    background: rgba(250,253,255,.94) !important;
    border-color: #C7DBE8 !important;
    box-shadow: 0 16px 40px rgba(13,61,96,.09) !important;
}

.contact-page .hero::before,
.store-hero::before,
.instalaciones-page .ix-hero::before {
    background:
        radial-gradient(circle at 15% 25%, rgba(17, 101, 162, .095), transparent 32%),
        radial-gradient(circle at 84% 22%, rgba(49, 149, 199, .11), transparent 29%),
        linear-gradient(135deg, rgba(246,250,253,.91), rgba(227,239,247,.91)) !important;
}

.store-category-bar {
    background: rgba(244, 249, 252, .94) !important;
    border-color: #C8DCE9 !important;
    box-shadow: 0 8px 22px rgba(13,61,96,.07) !important;
}

.store-filter {
    background: #EFF5F9 !important;
    border-color: #C9DBE7 !important;
    color: #526E83 !important;
}

.store-filter:hover,
.store-filter.active {
    color: #0E639F !important;
    background: #DCECF6 !important;
    border-color: #99BED7 !important;
}

/* =========================================================
   MODALES — SIGUEN CLAROS, PERO MENOS LAVADOS
========================================================= */
.cobertura-v2-card,
.contratacion-card,
.soporte-whatsapp-card,
.product-modal-content,
.modal-promo-content,
.modal-oferta-content {
    background:
        radial-gradient(circle at 92% 0%, rgba(52, 147, 199, .10), transparent 29%),
        linear-gradient(145deg, #FAFDFE, #EAF4F9) !important;
    border-color: #BDD5E4 !important;
    box-shadow: 0 30px 85px rgba(10, 53, 84, .21) !important;
}

.cobertura-v2-option,
.cobertura-v2-panel,
.cobertura-v2-result,
.cobertura-v2-selected-location,
.cobertura-v2-search-result,
.soporte-whatsapp-option {
    background: rgba(249,252,254,.95) !important;
    border-color: #C6DAE7 !important;
}

/* =========================================================
   ACCESIBILIDAD / CONTRASTE FINO
========================================================= */
.btn-outline,
.btn-hero-secondary,
.btn-store-secondary,
.btn-volver {
    background: rgba(249,252,254,.94) !important;
    color: #174F78 !important;
    border-color: #ABC9DD !important;
}

.btn-outline:hover,
.btn-hero-secondary:hover,
.btn-store-secondary:hover,
.btn-volver:hover {
    background: #E3F0F7 !important;
    color: #0C5687 !important;
    border-color: #7EADCB !important;
}

input,
textarea,
select {
    caret-color: #0F6DBA;
}

::selection {
    background: rgba(18, 111, 191, .18);
    color: #082E49;
}

@media (max-width: 700px) {
    body,
    body.contact-page,
    body.tienda-page,
    body.instalaciones-page {
        background:
            radial-gradient(circle at 16% 10%, rgba(19, 94, 147, .08), transparent 28%),
            linear-gradient(180deg, #F4F8FB, #E6EFF5) !important;
    }

    #particles {
        opacity: .075 !important;
    }

    .hero-commercial-grid {
        opacity: .15 !important;
    }
}
