/* Rodapé compartilhado da loja: identidade, políticas e atendimento. */
body.body-public .store-footer { margin-top: 32px; color: #a9abb4; }
body.body-public .store-footer::before { display: none; }
body.body-public .store-footer .os-footer { background: #0c0d10; border-top: 1px solid #24262c; padding: 0; }
body.body-public .store-footer .os-footer-main { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 64px; padding-top: 28px; padding-bottom: 24px; align-items: start; }
body.body-public .store-footer .os-footer-brand-link { display: flex; align-items: center; gap: 12px; text-decoration: none; }
body.body-public .store-footer .os-footer-brand-link img { width: 48px; height: 48px; object-fit: contain; border-radius: 10px; }
body.body-public .store-footer .os-footer-brand-link img:is([src$="/norte-script-n-delimitado.svg"], [src$="/norte-script-n-alto-branco.svg"]) { width: 160px; height: 60px; padding: 0; border-radius: 0; background: transparent; }
body.body-public .store-footer .os-footer-brand-link img:is([src$="/norte-script-n-delimitado.svg"], [src$="/norte-script-n-alto-branco.svg"]) + strong { display: none; }
body.body-public .store-footer .os-footer-brand-link strong { color: #f1f2f4; font-size: 16px; }
body.body-public .store-footer .os-footer-brand p { max-width: 410px; color: #a9abb4; font-size: 14px; line-height: 1.7; margin: 18px 0; }
body.body-public .store-footer .os-footer-policies,
body.body-public .store-footer .os-footer-network { display: flex; flex-direction: column; align-items: flex-start; text-align: left; padding-top: 8px; }
body.body-public .store-footer h3 { font-size: 14px; font-weight: 600; color: #f1f2f4; margin: 0 0 18px; }
body.body-public .store-footer a { color: #a9abb4; font-size: 14px; text-decoration: none; }
body.body-public .store-footer .os-footer-policies a { display: block; margin-bottom: 12px; line-height: 1.6; }
body.body-public .store-footer .os-footer-social { display: flex; gap: 10px; flex-wrap: wrap; }
body.body-public .store-footer .os-footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; background: #18191f; border: 1px solid #292b33; color: #a9abb4; font-size: 21px; }
body.body-public .store-footer a:hover { color: #fff; }
body.body-public .store-footer a:focus-visible { outline: 2px solid #69df9c; outline-offset: 5px; }
body.body-public .store-footer .os-footer-bottom { background: transparent; border-top: 1px solid #24262c; padding: 24px 0; }
body.body-public .store-footer .os-footer-bottom .container { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
body.body-public .store-footer .os-footer-bottom p { color: #a9abb4; margin: 0; font-size: 13px; }
@media (max-width: 991px) {
    body.body-public .store-footer .os-footer-main { grid-template-columns: 1fr 1fr; gap: 32px; }
    body.body-public .store-footer .os-footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 575px) {
    body.body-public .store-footer .os-footer-main { grid-template-columns: 1fr; padding-top: 24px; padding-bottom: 20px; gap: 24px; }
    body.body-public .store-footer .os-footer-bottom .container { flex-direction: column; align-items: flex-start; }
}
