/* Footer link columns (inc/footer-links.php, November 2026). The footer stays black in both themes. */
.footer.footer--cols { padding: 48px 16px 32px; background-color: #000; }
.footer--cols .footer-content { display: flex; flex-direction: column; gap: 32px; max-width: 1280px; margin: 0 auto; }
.footer--cols .footer-top { display: flex; flex-direction: column; gap: 36px; }
.footer--cols .footer-brand { display: flex; flex-direction: column; gap: 16px; max-width: 300px; flex-shrink: 0; }
.footer--cols .footer-logo .logo-img { height: 36px; max-width: 170px; width: auto; }
.footer--cols .footer-about { margin: 0; font-family: "Neue Montreal-Regular", "Neue Montreal-Regular Fallback", Helvetica, sans-serif; font-size: 14px; line-height: 1.5; color: rgba(255, 255, 255, 0.72); }
.footer--cols .footer-social { display: flex; flex-wrap: wrap; gap: 12px 20px; margin: 0; padding: 0; list-style: none; }
.footer--cols .footer-social a { color: #fff; font-size: 14px; text-decoration: none; }
.footer--cols .footer-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; flex: 1; }
.footer--cols .footer-col__title { margin: 0 0 14px; font-family: "Neue Montreal-Bold", "Neue Montreal-Bold Fallback", Helvetica, sans-serif; font-size: 16px; font-weight: 700; line-height: 1.3; color: #fff; text-transform: none; letter-spacing: 0; }
.footer--cols .footer-col__list { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; }
.footer--cols .footer-col__list li { margin: 0; padding: 0; list-style: none; background: none; }
.footer--cols .footer-col__list a { display: inline-block; font-family: "Neue Montreal-Regular", "Neue Montreal-Regular Fallback", Helvetica, sans-serif; font-size: 14px; line-height: 1.4; color: rgba(255, 255, 255, 0.72); text-decoration: none; transition: color 0.2s; }
.footer--cols .footer-col__list a:hover, .footer--cols .footer-col__list a:focus-visible, .footer--cols .footer-social a:hover { color: #ff6b00; }
.footer--cols .footer-legal { max-width: none; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, 0.12); }
.footer--cols .footer-legal p { font-size: 13px; color: rgba(255, 255, 255, 0.72); }
.footer--cols .footer-legal strong { color: #fff; }
.footer--cols .footer-legal a { color: #fff; }
.footer--cols .footer-copy { margin: 0; font-family: "Neue Montreal-Regular", "Neue Montreal-Regular Fallback", Helvetica, sans-serif; font-size: 13px; color: rgba(255, 255, 255, 0.55); }
@media (min-width: 640px) {
	.footer--cols .footer-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 768px) {
	.footer.footer--cols { padding: 60px 40px 36px; }
}
@media (min-width: 1200px) {
	.footer.footer--cols { padding: 72px 80px 40px; }
	.footer--cols .footer-top { flex-direction: row; gap: 56px; }
	.footer--cols .footer-brand { width: 240px; }
	.footer--cols .footer-cols { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; }
}
