.content-footer .widget-content-footer:has(.dai-pie) > .logo-footer {
    display: none !important;
}

.content-footer .widget-content-footer > .widget-area:has(.dai-pie) {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.content-footer .widget-content-footer:has(> .dai-pie-barra),
.content-footer .widget-content-footer-bottom:has(> .dai-pie-barra) {
    flex-wrap: wrap !important;
}

.dai-pie {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 20px 18px;
    box-sizing: border-box;
    font-size: 15px;
    line-height: 1.5;
}

.dai-pie *,
.dai-pie-barra,
.dai-pie-barra * {
    box-sizing: border-box;
}

.dai-pie-cols {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr);
    gap: 28px 44px;
    text-align: start;
}

.dai-pie-marca {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.dai-pie-logo .custom-logo-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.dai-pie-logo img {
    max-width: 220px;
    max-height: 64px;
    width: auto;
    height: auto;
    display: block;
}

.dai-pie-nombre {
    font-size: 1.3em;
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.dai-pie-desc {
    margin: 0 !important;
    font-size: 0.92em !important;
    opacity: 0.85;
    max-width: 40ch;
}

.dai-pie-col {
    min-width: 0;
}

.dai-pie-col-t {
    font-size: 0.8em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    opacity: 0.78;
    margin: 0 0 12px;
}

.content-footer .dai-pie ul,
.dai-pie ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.content-footer .dai-pie li,
.dai-pie li {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: inherit !important;
    list-style: none !important;
}

.content-footer .dai-pie li::before,
.content-footer .dai-pie li:first-child::before,
.dai-pie li::before {
    content: none !important;
    padding: 0 !important;
}

.content-footer .dai-pie a,
.content-footer .dai-pie-barra a {
    text-decoration: none;
    overflow-wrap: anywhere;
}

.content-footer .dai-pie a:hover,
.content-footer .dai-pie a:focus-visible,
.content-footer .dai-pie-barra a:hover,
.content-footer .dai-pie-barra a:focus-visible {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.dai-pie a:focus-visible,
.dai-pie-barra a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
    border-radius: 2px;
}

.dai-pie-barra {
    flex: 0 0 100%;
    width: 100%;
    margin-top: 26px;
    padding: 16px 16px 4px;
    border-top: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-align: center !important;
}

.content-footer .dai-pie-barra p {
    margin: 0 !important;
    text-align: center !important;
    font-size: 0.9em !important;
}

.dai-pie-legales span {
    opacity: 0.6;
}

.dai-pie .dai-pie-barra {
    padding-left: 0;
    padding-right: 0;
}

@media (max-width: 899px) {
    .dai-pie-cols {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .dai-pie-marca {
        grid-column: 1 / -1;
        align-items: center;
        text-align: center;
    }

    .dai-pie-desc {
        max-width: 60ch;
    }
}

@media (max-width: 599px) {
    .dai-pie-cols {
        grid-template-columns: minmax(0, 1fr);
        text-align: center;
    }

    .content-footer .dai-pie li {
        margin: 0 !important;
    }

    .content-footer .dai-pie li a,
    .content-footer .dai-pie-legales a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
    }
}

.dai-mapa-boton {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    padding: 24px 18px;
    margin: 0 0 1em;
    box-sizing: border-box;
    border-radius: 10px;
    border: 1px solid color-mix(in srgb, currentColor 16%, transparent);
    background: color-mix(in srgb, currentColor 5%, transparent);
    text-align: center;
}

.dai-mapa-boton-icono {
    opacity: 0.7;
}

.dai-mapa-boton-ver {
    min-height: 44px;
    padding: 11px 24px;
    border: 0;
    border-radius: 8px;
    background: var(--directorai-color, #1d1d1f);
    color: var(--dai-on-brand, #ffffff);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.dai-mapa-boton-ver:focus-visible {
    outline: 2px solid var(--directorai-color, #1d1d1f);
    outline-offset: 3px;
}

.dai-mapa-boton-aviso {
    margin: 0 !important;
    max-width: 46ch;
    font-size: 0.88em;
    opacity: 0.8;
}

.dai-ficha-tuyo {
    margin: 28px 0 0 !important;
    font-size: 0.85em;
    opacity: 0.78;
    text-align: center;
}

.dai-ficha-tuyo a {
    text-decoration: underline;
    text-underline-offset: 2px;
}
