/* Footer completo e compacto. */
.peus-footer { margin-top: 40px; background: var(--footer-bg); color: var(--footer-text); font: 400 13px/1.5 var(--font-body); }
.peus-footer a { color: var(--footer-link); }
.peus-footer a:hover { color: var(--footer-hover); }
.peus-footer__brands { background: var(--bg); border-top: 2px solid var(--accent); padding: 26px 0; }
.peus-footer__brands-title { text-align: center; font: 700 10px/1 var(--font-menu); text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin-bottom: 16px; }
.peus-brands { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 18px 28px; }
.peus-brands__item img { height: 24px; width: auto; max-width: 140px; object-fit: contain; }
.peus-brands__item span { font: 800 16px/1 var(--font-heading); color: var(--text); }
.peus-footer__cols { padding: 36px 0 12px; }
.peus-footer__grid { display: grid; grid-template-columns: repeat(var(--ft-cols, 4), minmax(0, 1fr)); gap: 24px 32px; }
.peus-footer__title { font: 700 14px/1.3 var(--font-heading); color: var(--text); margin-bottom: 14px; letter-spacing: 0; }
.peus-menu--footer { flex-direction: column; align-items: stretch; gap: 0; }
.peus-menu--footer a { display: block; padding: 7px 0; font-size: 13px; }
.peus-footer__extra { padding: 8px 0 28px; border-top: 1px solid var(--border); margin-top: 22px; }
.peus-footer__extra-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; padding-top: 24px; }
.peus-footer__cta { color: var(--accent) !important; font-size: 13.5px; }
.peus-phones { display: flex; gap: 28px; flex-wrap: wrap; }
.peus-phones__n { display: block; font: 700 18px/1.2 var(--font-heading); color: var(--text) !important; }
.peus-phones__l { display: block; font-size: 12px; }
.peus-apps { display: flex; gap: 10px; flex-wrap: wrap; }
.peus-apps__btn { padding: 10px 16px; background: #111; color: #fff !important; border-radius: 6px; font: 600 12px/1 var(--font-body); }
.peus-footer__bottom { background: color-mix(in srgb, var(--footer-bg) 94%, #000); border-top: 1px solid var(--border); padding: 16px 0; }
.peus-footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px 28px; flex-wrap: wrap; }
.peus-footer__copy { font-size: 12px; color: var(--footer-text); flex: 1 1 280px; }
.peus-footer__copy a { color: var(--accent); margin-left: 6px; }
.peus-footer__copy--center { text-align: center; flex: none; padding: 14px 0 18px; }
.peus-footer__right { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.peus-footer__follow { display: flex; align-items: center; gap: 10px; }
.peus-footer__follow-text { font-size: 12px; }
.peus-footer__errata { display: inline-flex; align-items: center; font: 600 10.5px/1 var(--font-menu); text-transform: uppercase; letter-spacing: .04em; }
.peus-footer__bottom .peus-social a { width: 30px; height: 30px; border-color: var(--footer-link); color: var(--footer-link); }

/* Compacto */
.peus-footer--compact { margin-top: 20px; border-top: 1px solid var(--border); background: var(--bg); color: var(--muted); }
.peus-footer__compact-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 16px 0; border-bottom: 1px solid var(--border); }
.peus-footer__compact-right { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.peus-footer__sep { width: 1px; height: 18px; background: var(--border); }

.peus-totop { position: fixed; right: 16px; bottom: 20px; z-index: 40; display: grid; justify-items: center; gap: 0; padding: 6px 10px 5px; background: #111; color: #fff !important; border-radius: 4px; font: 500 11px/1.1 var(--font-body); box-shadow: 0 2px 10px rgba(0, 0, 0, .25); opacity: 0; pointer-events: none; transform: translateY(8px); transition: opacity .2s, transform .2s; }
.peus-totop.is-visible { opacity: 1; pointer-events: auto; transform: none; }
.peus-totop:hover { background: var(--accent); color: #fff !important; }
