
.duudu-footer,
.duudu-footer *,
.duudu-footer *::before,
.duudu-footer *::after{box-sizing:border-box}
.duudu-footer{
    width:100%;
    background:var(--duudu-footer-bg);
    color:var(--duudu-footer-text);
    font-family:inherit;
    font-size:16px;
    line-height:1.5;
}
.duudu-footer a{color:inherit;text-decoration:none}
.duudu-footer p,
.duudu-footer h2,
.duudu-footer strong,
.duudu-footer small,
.duudu-footer span,
.duudu-footer a{
    text-align:left;
    word-spacing:normal;
    letter-spacing:normal;
    text-justify:auto;
}
.duudu-footer__inner{
    width:min(100%,var(--duudu-footer-max));
    margin:0 auto;
    padding:52px 28px 22px;
}
.duudu-footer__grid{
    display:grid;
    grid-template-columns:minmax(220px,1.05fr) minmax(260px,1.1fr) minmax(185px,.9fr) minmax(185px,.9fr);
    gap:34px;
    align-items:start;
}
.duudu-footer__grid--cols-3{grid-template-columns:minmax(220px,1.05fr) minmax(260px,1.1fr) minmax(185px,.95fr)}
.duudu-footer section+section{
    border-left:1px solid var(--duudu-footer-divider);
    padding-left:30px;
}
.duudu-footer h2{
    margin:0 0 18px;
    color:var(--duudu-footer-text);
    font-size:18px;
    line-height:1.25;
    font-weight:700;
}
.duudu-footer__logo{display:inline-block;max-width:260px;margin-bottom:22px}
.duudu-footer__logo-img{display:block;max-width:100%;height:auto}
.duudu-footer__brand-text{font-size:34px;font-weight:800;letter-spacing:-.5px}
.duudu-footer__brand p{
    margin:0;
    color:var(--duudu-footer-muted);
    font-size:15px;
    line-height:1.6;
    max-width:300px;
    white-space:normal;
    text-wrap:pretty;
}
.duudu-footer__socials{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.duudu-footer__socials a{
    width:40px;height:40px;border-radius:50%;
    display:grid;place-items:center;
    background:rgba(255,255,255,.06);
    color:var(--duudu-footer-accent);
    transition:transform .2s ease,background .2s ease;
}
.duudu-footer__socials a:hover{transform:translateY(-1px);background:rgba(255,255,255,.12)}
.duudu-footer__socials svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
.duudu-footer__contact-list{display:grid;gap:14px}
.duudu-footer__contact{
    display:grid;
    grid-template-columns:36px 1fr;
    gap:12px;
    align-items:start;
}
.duudu-footer__contact-icon{
    width:36px;height:36px;border-radius:50%;
    display:grid;place-items:center;
    color:var(--duudu-footer-accent);
    background:rgba(255,255,255,.05);
}
.duudu-footer__contact-icon svg,
.duudu-footer__store-icon svg,
.duudu-footer__arrow svg{
    width:18px;height:18px;
    fill:none;stroke:currentColor;stroke-width:1.8;
    stroke-linecap:round;stroke-linejoin:round;
}
.duudu-footer__contact strong{
    display:block;
    font-size:15px;
    color:var(--duudu-footer-text);
    margin:0 0 2px;
    font-weight:700;
}
.duudu-footer__contact small{
    display:block;
    color:var(--duudu-footer-muted);
    font-size:14px;
    line-height:1.5;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
}
.duudu-footer__links{list-style:none;margin:0;padding:0}
.duudu-footer__links li{border-bottom:1px solid var(--duudu-footer-divider)}
.duudu-footer__links a{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:var(--duudu-footer-muted);
    font-size:15px;
    line-height:1.35;
    transition:color .2s ease,padding-left .2s ease;
}
.duudu-footer__links a:hover{color:var(--duudu-footer-text);padding-left:3px}
.duudu-footer__arrow{display:grid;place-items:center;color:var(--duudu-footer-accent);flex:0 0 auto}
.duudu-footer__arrow svg{width:15px;height:15px}
.duudu-footer__links--icons a{justify-content:flex-start}
.duudu-footer__store-icon{display:grid;place-items:center;color:var(--duudu-footer-accent);min-width:20px;flex:0 0 auto}
.duudu-footer__links--icons .duudu-footer__arrow{margin-left:auto}
.duudu-footer__bottom{
    margin-top:34px;
    padding-top:20px;
    border-top:1px solid var(--duudu-footer-divider);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px 28px;
    flex-wrap:wrap;
    color:var(--duudu-footer-muted);
    font-size:13px;
    line-height:1.45;
}
.duudu-footer__copyright{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.duudu-footer__credit{margin-left:4px}
.duudu-footer__credit:before{content:"·";margin-right:6px}
.duudu-footer__legal{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}
.duudu-footer__legal a{display:inline-flex;align-items:center;white-space:nowrap}
.duudu-footer__legal-sep{opacity:.5}
.duudu-footer__legal a:hover{color:var(--duudu-footer-text)}

@media (max-width:1180px){
    .duudu-footer__grid,
    .duudu-footer__grid--cols-3{grid-template-columns:1fr 1fr;gap:30px}
    .duudu-footer section+section{border-left:0;padding-left:0}
    .duudu-footer section:nth-child(even){border-left:1px solid var(--duudu-footer-divider);padding-left:26px}
}
@media (max-width:720px){
    .duudu-footer__inner{padding:38px 20px 20px}
    .duudu-footer__grid,
    .duudu-footer__grid--cols-3{grid-template-columns:1fr;gap:24px}
    .duudu-footer section,
    .duudu-footer section:nth-child(even),
    .duudu-footer section+section{
        border-left:0;
        padding-left:0;
        padding-bottom:24px;
        border-bottom:1px solid var(--duudu-footer-divider);
    }
    .duudu-footer h2{font-size:17px;margin-bottom:14px}
    .duudu-footer__logo{margin-bottom:18px;max-width:220px}
    .duudu-footer__brand p{font-size:14px;max-width:100%}
    .duudu-footer__bottom{margin-top:24px;align-items:flex-start;flex-direction:column}
    .duudu-footer__legal{gap:6px 10px}
}


/* V1.0.3: aislamiento fuerte frente a estilos globales del tema */
.duudu-footer,
.duudu-footer__inner,
.duudu-footer__grid,
.duudu-footer__grid > section,
.duudu-footer__contact-list,
.duudu-footer__contact,
.duudu-footer__links,
.duudu-footer__bottom{
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
}
.duudu-footer__grid{
    align-items:start !important;
    align-content:start !important;
    grid-auto-rows:auto !important;
}
.duudu-footer__grid > section{
    align-self:start !important;
    justify-self:stretch !important;
    margin:0 !important;
}
.duudu-footer__contact-list{
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    align-items:stretch !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}
.duudu-footer__contact{
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) !important;
    column-gap:11px !important;
    row-gap:0 !important;
    align-items:start !important;
    align-content:start !important;
    justify-content:stretch !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
}
.duudu-footer__contact > span:last-child{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
}
.duudu-footer__contact-icon{
    margin:0 !important;
    flex:0 0 34px !important;
}
.duudu-footer__contact strong,
.duudu-footer__contact small{
    margin-top:0 !important;
    margin-right:0 !important;
    margin-left:0 !important;
    padding:0 !important;
}
.duudu-footer__contact strong{margin-bottom:2px !important}
.duudu-footer__links,
.duudu-footer__links li{
    margin-top:0 !important;
    margin-bottom:0 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
}
.duudu-footer__links a{
    margin:0 !important;
    padding-top:9px !important;
    padding-bottom:9px !important;
    min-height:42px !important;
}
.duudu-footer__bottom{
    align-content:center !important;
}


/* V1.0.4 — aislamiento definitivo de las columnas frente a Spectra/tema */
.duudu-footer .duudu-footer__grid > section,
.duudu-footer .duudu-footer__grid > .duudu-footer__brand{
    display:block !important;
    position:static !important;
    float:none !important;
    flex:none !important;
    flex-grow:0 !important;
    flex-shrink:1 !important;
    align-self:start !important;
    justify-self:stretch !important;
    justify-content:flex-start !important;
    align-content:start !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
}
.duudu-footer .duudu-footer__grid > section > *{
    flex:none !important;
}
.duudu-footer .duudu-footer__contact-list{
    display:flex !important;
    flex-flow:column nowrap !important;
    justify-content:flex-start !important;
    align-content:flex-start !important;
    align-items:stretch !important;
    gap:14px !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
}
.duudu-footer .duudu-footer__contact{
    position:static !important;
    flex:none !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
}
.duudu-footer .duudu-footer__brand p,
.duudu-footer .duudu-footer__contact strong,
.duudu-footer .duudu-footer__contact small,
.duudu-footer .duudu-footer__links a,
.duudu-footer .duudu-footer__bottom,
.duudu-footer .duudu-footer__legal a{
    text-align:left !important;
    text-justify:none !important;
    word-spacing:normal !important;
    letter-spacing:normal !important;
}
.duudu-footer .duudu-footer__brand p{
    font-size:15px !important;
    line-height:1.55 !important;
}
.duudu-footer .duudu-footer__contact strong{
    font-size:15px !important;
    line-height:1.35 !important;
}
.duudu-footer .duudu-footer__contact small{
    font-size:14px !important;
    line-height:1.45 !important;
}
.duudu-footer .duudu-footer__grid > section h2{
    font-size:18px !important;
    line-height:1.25 !important;
    margin:0 0 18px !important;
}


/* V1.1.1: corrección de wpautop y altura forzada por el tema */
#duudu-footer-v120 p:empty{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
}
#duudu-footer-v120 .duudu-footer__contact-list{
    grid-template-rows:none !important;
}
#duudu-footer-v120 .duudu-footer__contact{
    position:static !important;
    inset:auto !important;
    transform:none !important;
}


/* V1.1.2: separación puntual entre teléfono y correo */
#duudu-footer-v120 .duudu-footer__contact--email{
    margin-top:8px !important;
}

/* V1.2.0 controles visuales */
#duudu-footer-v120 .duudu-footer__inner{padding-top:var(--df-pad-top)!important;padding-bottom:var(--df-pad-bottom)!important}
#duudu-footer-v120 .duudu-footer__grid{gap:var(--df-column-gap)!important}
#duudu-footer-v120 section+section{padding-left:var(--df-section-pad)!important}
#duudu-footer-v120.duudu-footer--no-dividers section+section{border-left:0!important}
#duudu-footer-v120 h2{font-size:var(--df-title-size)!important}
#duudu-footer-v120 .duudu-footer__brand p{font-size:var(--df-body-size)!important}
#duudu-footer-v120 .duudu-footer__links a{font-size:var(--df-link-size)!important}
#duudu-footer-v120 .duudu-footer__logo{max-width:var(--df-logo-width)!important}
#duudu-footer-v120 .duudu-footer__contact-list{gap:var(--df-contact-gap)!important}
#duudu-footer-v120 .duudu-footer__contact--address{margin-bottom:var(--df-after-address)!important}
#duudu-footer-v120 .duudu-footer__contact--phone{margin-bottom:var(--df-after-phone)!important}
#duudu-footer-v120 .duudu-footer__contact--email{margin-bottom:var(--df-after-email)!important}
#duudu-footer-v120 .duudu-footer__contact--schedule{margin-bottom:var(--df-after-schedule)!important}

/* V1.3.0 */
#duudu-footer-v130 .duudu-footer__links a .duudu-footer__store-icon + span{
    flex:1 1 auto;
}
