/* Rodapé */
.pe-footer { position: relative; margin-top: 70px; background: var(--pe-footer-bg); color: var(--pe-footer-text); padding: 34px 0 30px; }
.pe-footer a:hover { color: var(--pe-primary); }
.pe-footer__main { border-top: 1px dashed color-mix(in srgb, var(--pe-footer-text) 28%, transparent); padding-top: 26px; text-align: center; margin: 14px auto 34px; max-width: 960px; }
.pe-footer__mainmenu { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 0; margin: 0; padding: 0; }
.pe-footer__mainmenu li + li::before { content: "|"; margin: 0 7px; color: var(--pe-footer-text); opacity: 0.6; }
.pe-footer__mainmenu a { color: var(--pe-primary); text-decoration: underline; text-underline-offset: 2px; font-family: var(--pe-font-menu); font-size: 13.5px; font-weight: 500; text-transform: uppercase; }
.pe-footer__mainmenu a:hover { color: var(--pe-primary-hover); }

.pe-footer__cols { display: grid; gap: 30px; align-items: start; padding: 10px 0 8px; }
.pe-footer__cols--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pe-footer__cols--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pe-footer__cols--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pe-footer__col--brand { display: flex; align-items: flex-start; }
.pe-footer .pe-brand { text-align: left; justify-self: start; }
.pe-footer .pe-logo { width: var(--pe-logo-wf); }
.pe-footer__title { font-family: var(--pe-font-heading); font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.02em; margin: 0 0 12px; color: var(--pe-footer-text); }
.pe-footer__menu { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.pe-footer__menu a { color: var(--pe-primary); text-decoration: underline; text-underline-offset: 2px; font-size: 14px; }
.pe-footer__menu a:hover { color: var(--pe-primary-hover); }
.pe-footer__follow .pe-socials { margin-bottom: 14px; }
.pe-footer__follow .pe-social { width: 32px; height: 32px; }
.pe-footer__bar { display: block; width: 100%; max-width: 320px; min-height: 40px; padding: 10px 14px; background: var(--pe-footer-bar, var(--pe-primary)); color: #fff; font-family: var(--pe-font-heading); font-weight: 600; font-size: 14px; line-height: 1.3; }
a.pe-footer__bar:hover { color: #fff; filter: brightness(1.08); }
.pe-footer__bottom { margin-top: 26px; text-align: center; font-size: 11px; line-height: 1.6; max-width: 960px; margin-inline: auto; }
.pe-footer__bottom p { margin: 0 0 6px; }
.pe-footer__legal a { text-decoration: underline; color: var(--pe-primary); }
.pe-totop {
	position: fixed; left: 16px; bottom: 0; z-index: 90; display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 30px; border-radius: 6px 6px 0 0; background: var(--pe-surface); color: var(--pe-text);
	border: 1px solid var(--pe-border-strong); border-bottom: 0; box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
}
.pe-totop:hover { color: var(--pe-primary); }
.pe-js .pe-totop { opacity: 0; pointer-events: none; transform: translateY(100%); transition: opacity 0.2s, transform 0.2s; }
.pe-js.pe-scrolled-far .pe-totop { opacity: 1; pointer-events: auto; transform: none; }
@media (max-width: 800px) {
	.pe-footer__cols--3, .pe-footer__cols--4, .pe-footer__cols--2 { grid-template-columns: 1fr; text-align: center; }
	.pe-footer__col--brand { justify-content: center; }
	.pe-footer .pe-brand { text-align: center; justify-self: center; }
	.pe-footer__menu { justify-items: center; }
	.pe-footer__follow .pe-socials { justify-content: center; }
	.pe-footer__bar { margin-inline: auto; }
	.pe-footer { margin-top: 48px; }
}
