/* Footer Createlow: capa independiente, sin alterar paquetes ni estilos de Eco. */
.cl-footer {
    background: #f7f9fb;
    color: #20394c;
    border-top: 1px solid #e2e9ee;
    font-family: inherit;
    font-size: 15px;
    line-height: 1.55;
    text-align: left;
}
.cl-footer *, .cl-footer *::before, .cl-footer *::after { box-sizing: border-box; }
/* La navegación principal aplica reglas globales a nav: neutralizarlas solo aquí. */
.cl-footer nav { display: block; position: static; z-index: auto; width: auto; height: auto; margin: 0; padding: 0; background: transparent; }
.cl-footer .cl-footer__main {
    display: grid;
    grid-template-columns: 1.05fr 1.1fr 1fr 1.2fr;
    gap: 40px;
    padding: 48px 0 44px;
}
.cl-footer .cl-footer__main > * { min-width: 0; }
.cl-footer .cl-footer__brand { grid-column: 1; }
.cl-footer .cl-footer__logo { display: block; width: 190px; max-width: 100%; height: auto; }
.cl-footer .cl-footer__tagline { margin: 18px 0 16px; color: #566775; font-size: 15px; line-height: 1.65; font-style: normal; }
.cl-footer .cl-footer__tagline span { font: inherit; color: inherit; }
.cl-footer .cl-footer__title { margin: 0 0 18px; padding: 0; color: #12364d; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.45; text-transform: none; }
.cl-footer .cl-footer__toggle { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; text-align: left; opacity: 1; -webkit-text-fill-color: currentColor; }
.cl-footer .cl-footer__toggle:disabled { cursor: default; }
.cl-footer .cl-footer__chevron { display: none; flex: 0 0 8px; width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.cl-footer .cl-footer__links, .cl-footer .cl-footer__contact-links { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.cl-footer .cl-footer__links li, .cl-footer .cl-footer__contact-links li { margin: 0; padding: 0; line-height: 1.55; }
.cl-footer .enlacepie { color: #485d6d; font-size: 15px; line-height: 1.55; text-decoration: none; overflow-wrap: anywhere; }
.cl-footer .enlacepie:hover { color: #007ebf; text-decoration: none; }
.cl-footer a:focus-visible, .cl-footer button:focus-visible { outline: 3px solid #0087c9; outline-offset: 4px; }
.cl-footer .cl-footer__social { display: flex; flex-wrap: wrap; gap: 12px; }
.cl-footer .cl-footer__social a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #d9e3eb; border-radius: 50%; background: #fff; text-decoration: none; }
.cl-footer .cl-footer__social i { color: #274b64; font-size: 21px; line-height: 1; }
.cl-footer .cl-footer__social a:hover { background: #e8f6ff; border-color: #92c9ec; }
.cl-footer .cl-footer__contact-links li { display: flex; align-items: baseline; gap: 8px; }
.cl-footer .cl-footer__contact-links i { flex: 0 0 17px; width: 17px; text-align: center; color: #0084c9; }
.cl-footer .cl-footer__contact-links a[href^="tel:"] { color: #12364d; font-size: 19px; font-weight: 600; white-space: nowrap; }
.cl-footer .cl-footer__report { margin-top: 20px; }
.cl-footer .cl-footer__report .informar-error { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; margin: 0; padding: 11px 13px; border: 1px solid #cbdfea; border-radius: 5px; background: #eaf4fa; color: #34576e; font-family: inherit; font-size: 14px; font-weight: 500; line-height: 1.4; text-align: center; text-decoration: none; transition: background-color .15s ease, border-color .15s ease; }
.cl-footer .cl-footer__report .informar-error:hover { background: #deedf6; border-color: #abcddd; color: #25495f; }
.cl-footer .cl-footer__services { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px; padding: 24px 0; border-top: 1px solid #dde5eb; }
.cl-footer .cl-footer__payments { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; min-width: 0; }
.cl-footer .cl-footer__payments-label { color: #566775; font-size: 13px; }
.cl-footer .cl-footer__payment-logos { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; max-width: 100%; }
.cl-footer .cl-footer__payment-logos img { display: block; width: auto; height: 25px; object-fit: contain; filter: contrast(1.8); }
.cl-footer .cl-footer__language { min-width: 0; max-width: 100%; }
.cl-footer .pie-idiomas { width: 210px; }
.cl-footer .pie-idiomas__control { border-radius: 6px; }
.cl-footer .cl-footer__legal { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 14px 24px; border-top: 1px solid #dde5eb; padding: 20px 0; color: #627482; font-size: 13px; }
.cl-footer .cl-footer__legal nav { display: flex; flex-wrap: wrap; gap: 12px 22px; }
.cl-footer .cl-footer__legal .enlacepie { font-size: 13px; color: #526675; }
.cl-footer .cl-footer__international { padding: 0 0 24px; }
.cl-footer .cl-footer__international .pie_dominios { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px 24px; width: auto; padding: 0; text-align: left; }
.cl-footer .cl-footer__international .pie_dominios div { display: block; width: auto; }
.cl-footer .cl-footer__international .pie_dominios a { display: inline-block; margin: 0; color: #627482; font-size: 12px; line-height: 1.55; text-decoration: none; }
.cl-footer .cl-footer__international .pie_dominios a:hover { color: #007ebf; }
.cl-footer [hidden] { display: none !important; }
@media (min-width: 768px) and (max-width: 991px) {
    .cl-footer .cl-footer__main { grid-template-columns: 1fr 1fr; gap: 32px 48px; }
}
@media (max-width: 767px) {
    .cl-footer .container { padding-left: 24px; padding-right: 24px; }
    .cl-footer .cl-footer__main { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; padding: 32px 0 0; }
    .cl-footer .cl-footer__brand { grid-row: 1; grid-column: 1; }
    .cl-footer .cl-footer__logo { width: 190px; }
    .cl-footer .cl-footer__social { margin-bottom: 28px; }
    .cl-footer .cl-footer__contact { grid-row: 2; padding-bottom: 28px; }
    .cl-footer .cl-footer__contact-links { gap: 0; }
    .cl-footer .cl-footer__contact-links li { align-items: center; min-height: 44px; }
    .cl-footer .cl-footer__contact-links a { display: flex; align-items: center; min-height: 44px; }
    .cl-footer .cl-footer__contact-links a[href^="tel:"] { font-size: 20px; }
    .cl-footer .cl-footer__report { margin-top: 18px; }
    .cl-footer .cl-footer__report .informar-error { font-size: 15px; }
    .cl-footer .cl-footer__group { border-top: 1px solid #dde5eb; }
    .cl-footer .cl-footer__group .cl-footer__title { margin: 0; }
    .cl-footer .cl-footer__toggle { min-height: 60px; }
    .cl-footer .cl-footer__toggle:not(:disabled) { cursor: pointer; }
    .cl-footer .cl-footer__toggle:not(:disabled) .cl-footer__chevron { display: block; margin-right: 3px; }
    .cl-footer .cl-footer__toggle[aria-expanded="true"] .cl-footer__chevron { transform: rotate(225deg); }
    .cl-footer .cl-footer__links { gap: 0; padding-bottom: 15px; }
    .cl-footer .cl-footer__links .enlacepie { display: flex; align-items: center; min-height: 44px; }
    .cl-footer .cl-footer__services { flex-direction: column-reverse; align-items: stretch; padding: 24px 0; gap: 26px; }
    .cl-footer .pie-idiomas { width: 100%; }
    .cl-footer .cl-footer__payments { flex-direction: column; align-items: flex-start; gap: 12px; }
    .cl-footer .cl-footer__payment-logos { gap: 14px; }
    .cl-footer .cl-footer__legal { flex-direction: column-reverse; align-items: stretch; gap: 16px; }
    .cl-footer .cl-footer__legal nav { display: flex; gap: 0 20px; }
    .cl-footer .cl-footer__legal .enlacepie { display: flex; align-items: center; min-height: 44px; }
    .cl-footer .cl-footer__international .pie_dominios { gap: 0 20px; }
    .cl-footer .cl-footer__international .pie_dominios a { display: flex; align-items: center; min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
    .cl-footer .cl-footer__report .informar-error { transition: none; }
}
