.cr-footer{
    --crf-accent:#ef5047;
    --crf-logo-width:276px;
    --crf-grid-gap:80px;
    --crf-shop-width:168px;
    --crf-shop-height:40px;
    background:#111;
    color:#fff;
    font-family:Montserrat,Arial,sans-serif;
    width:100%;
}
.cr-footer *{box-sizing:border-box}
.cr-footer__inner{width:100%;max-width:1280px;margin:0 auto;padding:80px 0 18px}
.cr-footer__grid{
    display:grid;
    grid-template-columns:310px 277px 190px 250px;
    column-gap:var(--crf-grid-gap);
    align-items:start;
}
.cr-footer__brand{min-width:0}
.cr-footer__logo{display:block;width:var(--crf-logo-width);max-width:100%;height:auto}
.cr-footer__socials{display:flex;align-items:center;gap:24px;margin:18px 0 0 82px}
.cr-footer__socials a{
    width:22px;height:22px;display:flex;align-items:center;justify-content:center;
    color:var(--crf-accent);text-decoration:none!important;line-height:0;
    transition:transform .2s ease,filter .2s ease
}
.cr-footer__socials a:hover{transform:translateY(-2px);filter:brightness(1.12)}
.cr-footer__social-icon{display:block;max-width:100%;max-height:100%;width:auto;height:auto}
.cr-footer h3{color:var(--crf-accent);font-size:14px;line-height:1.2;margin:0 0 18px;font-weight:700;text-transform:uppercase}
.cr-footer__col{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0}
.cr-footer__col>a{
    display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
    gap:13px;min-height:22px;color:#fff!important;text-decoration:none!important;
    font-size:13px!important;line-height:1.3!important;font-weight:400!important;
    background:transparent!important;border:0!important;border-radius:0!important;
    padding:0!important;margin:0!important;box-shadow:none!important;text-transform:none!important;
    transition:color .2s ease,transform .2s ease
}
.cr-footer__col>a:hover{color:var(--crf-accent)!important;transform:translateX(2px)}
.cr-footer__col>a span{display:block;white-space:nowrap}
.cr-footer__icon{width:20px;height:20px;display:block;object-fit:contain;flex:0 0 20px}
.cr-footer__icon--arrow{width:18px;height:18px;flex-basis:18px}
.cr-footer__shop{gap:13px}
.cr-footer .cr-footer__shopbtn,
.cr-footer .cr-footer__shopbtn:link,
.cr-footer .cr-footer__shopbtn:visited{
    width:var(--crf-shop-width)!important;
    min-width:var(--crf-shop-width)!important;
    max-width:var(--crf-shop-width)!important;
    height:var(--crf-shop-height)!important;
    min-height:var(--crf-shop-height)!important;
    flex:0 0 var(--crf-shop-width)!important;
    padding:0 15px!important;
    display:inline-flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    background:var(--crf-accent)!important;
    color:#fff!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    transform:none!important;
    font-size:13px!important;
    font-weight:500!important;
    text-transform:none!important;
    line-height:1!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
    overflow:visible!important;
}
.cr-footer .cr-footer__shopbtn span{white-space:nowrap!important;display:block!important;line-height:1!important}
.cr-footer .cr-footer__shopbtn img{width:31px!important;height:21px!important;object-fit:contain!important;display:block!important;flex:0 0 31px!important}
.cr-footer .cr-footer__shopbtn:hover{filter:brightness(.97);transform:translateY(-2px)!important;color:#fff!important;background:var(--crf-accent)!important}
.cr-footer__bottom{
    border-top:1px solid rgba(255,255,255,.06);
    margin-top:43px;
    padding-top:38px;
    text-align:center;
    color:#777;
    font-size:10px;
    line-height:1.4;
    min-height:74px
}
@media(max-width:1320px){
    .cr-footer__inner{padding-left:24px;padding-right:24px}
    .cr-footer__grid{grid-template-columns:minmax(250px,1.2fr) minmax(220px,1fr) minmax(180px,.75fr) minmax(220px,.95fr);column-gap:48px}
}
@media(max-width:1024px){
    .cr-footer__inner{padding-top:58px}
    .cr-footer__grid{grid-template-columns:1fr 1fr;gap:42px 54px}
    .cr-footer__logo{width:min(var(--crf-logo-width),250px)}
    .cr-footer__socials{margin-left:70px}
}
@media(max-width:767px){
    .cr-footer__inner{padding:44px 20px 18px}
    .cr-footer__grid{grid-template-columns:1fr;gap:34px}
    .cr-footer__logo{width:min(var(--crf-logo-width),250px)}
    .cr-footer__socials{margin-left:0}
    .cr-footer__col>a span{white-space:normal}
    .cr-footer__bottom{text-align:left;line-height:1.5;margin-top:34px;padding-top:20px}
}


/* v1.7.2 — botão PSD exato 167×40 */
.cr-footer .cr-footer__shopbtn.is-reference-button{
    width:167px!important;min-width:167px!important;max-width:167px!important;
    height:40px!important;min-height:40px!important;
    padding:0!important;background:transparent!important;overflow:hidden!important;
    flex:0 0 167px!important;line-height:0!important
}
.cr-footer .cr-footer__shopbtn.is-reference-button:hover{background:transparent!important;filter:brightness(.98)}
.cr-footer .cr-footer__shopbtn.is-reference-button .cr-footer__shopbtn-reference{
    display:block!important;width:167px!important;height:40px!important;max-width:none!important;object-fit:contain!important;flex:0 0 167px!important
}

/* v1.7.3 — preset desktop medido no PSD 1920px */
@media(min-width:1101px){
    .cr-footer.is-psd-preset{
        min-height:390px;
    }
    .cr-footer.is-psd-preset .cr-footer__inner{
        width:1280px!important;
        max-width:calc(100vw - 40px)!important;
        padding:80px 0 18px!important;
        margin:0 auto!important;
    }
    .cr-footer.is-psd-preset .cr-footer__grid{
        grid-template-columns:310px 277px 190px 250px!important;
        column-gap:80px!important;
        align-items:start!important;
    }
    .cr-footer.is-psd-preset .cr-footer__logo{
        width:276px!important;
        height:61px!important;
        object-fit:contain!important;
    }
    .cr-footer.is-psd-preset .cr-footer__socials{
        gap:24px!important;
        margin:18px 0 0 82px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__col{
        gap:0!important;
    }
    .cr-footer.is-psd-preset .cr-footer h3{
        font-size:14px!important;
        line-height:17px!important;
        margin:0 0 16px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__col>a:not(.cr-footer__shopbtn){
        min-height:20px!important;
        font-size:13px!important;
        line-height:16px!important;
        margin:0 0 9px!important;
        gap:13px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__contacts>a:last-child,
    .cr-footer.is-psd-preset .cr-footer__links>a:last-child,
    .cr-footer.is-psd-preset .cr-footer__shop>a:last-child{margin-bottom:0!important}
    .cr-footer.is-psd-preset .cr-footer__icon{width:20px!important;height:20px!important;flex-basis:20px!important}
    .cr-footer.is-psd-preset .cr-footer__icon--arrow{width:18px!important;height:18px!important;flex-basis:18px!important}
    .cr-footer.is-psd-preset .cr-footer__shopbtn.is-reference-button{
        width:167px!important;min-width:167px!important;max-width:167px!important;
        height:40px!important;min-height:40px!important;margin:0 0 14px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__bottom{
        margin-top:44px!important;
        padding-top:35px!important;
        min-height:72px!important;
        /* Tipografia sem trava aqui: o padrão vem de .cr-footer__bottom
           e o controle do Elementor pode sobrescrever livremente. */
    }
}

/* v1.7.4 — correção de fidelidade do rodapé.
   O flex-basis anterior de 167px era aplicado no eixo VERTICAL da coluna e empurrava
   o botão para o meio. Mantemos 167×40 sem reservar 167px de altura. */
.cr-footer .cr-footer__shopbtn,
.cr-footer .cr-footer__shopbtn:link,
.cr-footer .cr-footer__shopbtn:visited,
.cr-footer .cr-footer__shopbtn.is-reference-button{
    flex:0 0 auto!important;
    align-self:flex-start!important;
}
@media(min-width:1101px){
    .cr-footer.is-psd-preset .cr-footer__grid{
        grid-template-columns:312px 276px 189px 250px!important;
        column-gap:80px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__logo{
        width:272px!important;
        height:57px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__socials{
        margin:19px 0 0 84px!important;
        gap:24px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__col>a:not(.cr-footer__shopbtn){
        margin-bottom:10px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__shop h3{
        margin-bottom:18px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__shopbtn.is-reference-button{
        margin:0 0 18px!important;
        flex:0 0 auto!important;
    }
    .cr-footer.is-psd-preset .cr-footer__shop>a:not(.cr-footer__shopbtn){
        margin-bottom:14px!important;
    }
    .cr-footer.is-psd-preset .cr-footer__shop>a:last-child{margin-bottom:0!important}
    .cr-footer.is-psd-preset .cr-footer__bottom{
        margin-top:39px!important;
        padding-top:35px!important;
        min-height:74px!important;
    }
}


/* v1.8.1 — copyright editável + link MKT */
.cr-footer__bottom .cr-footer__mkt-link{
    color:inherit!important;
    text-decoration:none!important;
    transition:color .2s ease!important;
}
.cr-footer__bottom .cr-footer__mkt-link:hover{
    color:var(--crf-accent)!important;
    text-decoration:none!important;
}

/* v1.12.5 — contatos opcionais no footer */
@media(min-width:1101px){
    .cr-footer.is-psd-preset.cr-footer--contacts-hidden .cr-footer__grid{
        grid-template-columns:312px 189px 250px!important;
        column-gap:118px!important;
        justify-content:space-between!important;
    }
}
.cr-footer__contacts.is-empty h3{margin-bottom:0!important}
@media(min-width:1025px){
    .cr-footer.cr-footer--contacts-hidden:not(.is-psd-preset) .cr-footer__grid{
        grid-template-columns:minmax(250px,1.2fr) minmax(180px,.75fr) minmax(220px,.95fr);
        justify-content:space-between;
    }
}

/* v1.13.9 — redes sociais: centralização de ícones dinâmicos do Elementor.
   Não forçamos imagens por posição; cada item preserva o ícone selecionado. */
.cr-footer__socials a i{
    display:inline-flex;align-items:center;justify-content:center;
    font-size:20px;line-height:1;min-width:20px;min-height:20px;
}
.cr-footer__socials a svg{
    display:block;width:20px;height:20px;flex:0 0 20px;
}
.cr-footer__socials a svg.e-font-icon-svg{fill:currentColor}
