.site-footer {
	background-color: var(--color-bg-soft);
	border-top: 1px solid var(--color-border);
	color: var(--color-text-muted);
	font-size: var(--text-sm);
}

.site-footer__main {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-lg) var(--space-xl);
	padding-block: var(--space-lg);
}

.site-footer__brand {
	flex: 1 1 100%;
}

.site-footer__brand-name {
	font-family: var(--font-serif);
	font-size: var(--text-xl);
	color: var(--color-text);
}

.site-footer__columns {
	display: flex;
	flex-wrap: wrap;
	flex: 1 1 100%;
	gap: var(--space-lg) var(--space-xl);
}

.site-footer__column {
	flex: 1 1 140px;
}

.site-footer__heading {
	margin-bottom: var(--space-sm);
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	text-transform: uppercase;
	letter-spacing: var(--tracking-wider);
	color: var(--color-text);
}

.footer-menu {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
}

.footer-menu a {
	color: var(--color-text-muted);
	text-decoration: none;
	transition: color var(--transition-fast);
}

.footer-menu a:hover {
	color: var(--color-accent-hover);
}

.site-footer__social {
	flex: 1 1 100%;
}

.social-links {
	display: flex;
	gap: var(--space-xs);
}

.social-links .icon-button {
	width: 36px;
	height: 36px;
	color: var(--color-text-muted);
}

.social-links .icon-button svg {
	width: 18px;
	height: 18px;
}

.social-links .icon-button:hover {
	color: var(--color-accent);
}

.site-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-sm);
	padding-block: var(--space-md);
	border-top: 1px solid var(--color-border);
	font-size: var(--text-xs);
}

.site-footer__payments {
	display: flex;
	align-items: center;
	gap: var(--space-xs);
}

.site-footer__payments img {
	height: 24px;
	width: auto;
}

@media (min-width: 768px) {
	.site-footer__brand {
		flex: 1 1 220px;
	}

	.site-footer__columns {
		flex: 3 1 auto;
	}

	.site-footer__social {
		flex: 0 0 auto;
	}
}
