.footer-columns { background: var(--color-bg); border-top: 1px solid var(--color-border); }
.footer-columns__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-8);
	padding-block: var(--space-16) var(--space-16);
}
.footer-columns__brand { grid-column: 1 / -1; padding-bottom: var(--space-8); }
.footer-columns__logo { display: inline-block; line-height: 0; }
.footer-columns__logo img { width: 64px; height: 64px; object-fit: contain; }
.footer-columns__tagline { font-style: italic; font-size: var(--text-sm); color: var(--color-muted); margin: var(--space-2) 0 0; }

.footer-columns__list { list-style: none; margin: 0; padding: 0; }
.footer-columns__list a, .footer-columns__contact address a {
	display: block;
	font-size: var(--text-sm);
	color: var(--color-ink);
	text-decoration: none;
	padding-block: var(--space-1);
	transition: color var(--transition);
}
.footer-columns__list a:hover, .footer-columns__contact address a:hover { color: var(--color-accent); }
.footer-columns__contact address { font-style: normal; font-size: var(--text-sm); color: var(--color-ink); line-height: var(--leading-body); }

.footer-columns__social { display: flex; gap: var(--space-3); margin-top: var(--space-6); }
.footer-columns__social-icon {
	width: 36px;
	height: 36px;
	border: 1px solid var(--color-border);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color var(--transition), color var(--transition);
	color: var(--color-ink);
}
.footer-columns__social-icon:hover { border-color: var(--color-accent); color: var(--color-accent); }
.footer-columns__social-icon svg { width: 16px; height: 16px; fill: currentColor; }

.footer-columns__hours-label { display: block; margin-top: var(--space-6); }
.footer-columns__hours { font-size: var(--text-sm); color: var(--color-muted); margin: 0; }

.footer-bottom { background: var(--color-surface); border-top: 1px solid var(--color-border); }
.footer-bottom__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding-block: var(--space-4);
}
.footer-bottom__copyright, .footer-bottom__currency { font-size: var(--text-xs); color: var(--color-muted); }
.footer-bottom__policies { display: flex; gap: var(--space-4); }
.footer-bottom__policies a { font-size: var(--text-xs); color: var(--color-muted); text-decoration: none; transition: color var(--transition); }
.footer-bottom__policies a:hover { color: var(--color-accent); }
.footer-bottom__meta { display: flex; align-items: center; gap: var(--space-3); }
.footer-bottom__payment-icon {
	font-size: 10px;
	font-weight: 700;
	color: var(--color-muted);
	opacity: .6;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	padding: 2px 6px;
}

@media (min-width: 600px) {
	.footer-columns__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
	.footer-columns__grid { grid-template-columns: repeat(4, 1fr); }
	.footer-columns__brand { grid-column: 1 / -1; }
}
@media (min-width: 1200px) {
	.footer-columns__grid { grid-template-columns: repeat(4, 1fr); gap: var(--space-6); }
}
@media (max-width: 899px) {
	.footer-bottom__inner { flex-direction: column; text-align: center; }
}
