/*
 * Footer — grille de colonnes + éléments (contact, horaires, réseaux sociaux).
 */

.myfw-site-footer {
	background-color: var(--color-background, #ffffff);
	color: var(--color-text, #1a1a1a);
	border-top: 1px solid #e5e5e5;
	margin-top: var(--spacing-lg, 3rem);
	padding-block: var(--spacing-lg, 3rem);
}

.myfw-footer-columns {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 200px, 1fr ) );
	gap: var(--spacing-lg, 2rem);
	margin-bottom: var(--spacing-lg, 2rem);
}

.myfw-footer-col__title {
	margin: 0 0 var(--spacing-sm, 0.75rem);
	font-family: var(--font-heading, inherit);
	font-size: 1rem;
}

.myfw-footer-col__logo {
	max-width: 160px;
	margin-bottom: var(--spacing-sm, 0.75rem);
}

.myfw-footer-col__description {
	margin: 0;
	color: var(--color-secondary, #6b7280);
}

.myfw-footer-nav {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm, 0.5rem);
	list-style: none;
	margin: 0;
	padding: 0;
}
.myfw-footer-nav a {
	color: inherit;
}

.myfw-footer-contact,
.myfw-footer-hours {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--spacing-sm, 0.5rem);
}
.myfw-footer-contact a {
	color: inherit;
}

.myfw-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--spacing-sm, 0.75rem);
	list-style: none;
	margin: 0;
	padding: 0;
}
.myfw-social-link {
	display: inline-block;
	padding: 0.4em 0.9em;
	border: 1px solid currentColor;
	border-radius: var(--radius-small, 4px);
	color: inherit;
	text-decoration: none;
	font-size: 0.875rem;
}

.myfw-site-footer__inner-bottom {
	border-top: 1px solid #e5e5e5;
	padding-top: var(--spacing-md, 1rem);
}

.myfw-site-footer__copyright {
	margin: 0;
	font-size: 0.875rem;
	color: var(--color-secondary, #6b7280);
}
