/**
 * Stili per il template part footer (parts/footer.html).
 *
 * Il blocco Columns core stacka già le colonne sotto 781px in autonomia
 * (comportamento nativo "stack on mobile"): qui gestiamo solo l'allineamento
 * interno delle colonne, lo spacing della colonna centrale e cosa succede
 * quando le colonne sono impilate (tutto centrato).
 */

/*
 * Rientro laterale allineato a header e contenuti (stesso preset fluido
 * `gutter` di theme.json). Messo qui invece che come attributo padding del
 * Group in parts/footer.html per non dover riscrivere a mano anche lo style
 * inline del markup salvato (vedi nota su JSON/HTML in CLAUDE.md).
 */
.site-footer {
	padding-left: var(--wp--preset--spacing--gutter);
	padding-right: var(--wp--preset--spacing--gutter);
}

.site-footer__columns {
	/* Tutte le colonne allineate in alto. */
	align-items: flex-start;
	gap: var(--wp--preset--spacing--40, 2rem);
	margin-bottom: 30px;
}

/* Colonna sinistra: logo, allineato a sinistra e in alto. */
.site-footer__col--brand {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	align-self: flex-start;
}

.site-footer__logo {
	width: 70%;
	max-width: 400px;
}

.site-footer__logo img {
	display: block;
	width: 100%;
	height: auto;
}

/* Colonna centrale: righe di testo/loghi/social impilate, centrate e
   distribuite lungo tutta l'altezza della colonna (allineata alle altre
   due colonne dal blocco Columns core). */
.site-footer__col--info {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: var(--wp--preset--spacing--30, 1rem);
}

.site-footer__info-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--wp--preset--spacing--10, 0.25rem);
}

.site-footer__label {
	margin: 0;
	font-family: var(--wp--preset--font-family--input-mono);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.site-footer__partners {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: var(--wp--preset--spacing--40, 2rem);
	margin-top: 20px;
}

.site-footer__partner-logo {
	margin-block-start: 0;
}

.site-footer__partner-logo img {
	display: block;
	width: 100%;
	max-width: 160px;
	height: auto;
}

.site-footer__social {
	margin-top: 20px;
}

.site-footer__social .wp-social-link a {
	color: var(--wp--preset--color--base);
}

/* Colonna destra: menu di navigazione, voci impilate, allineate a destra. */
.site-footer__col--nav {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	align-self: flex-start;
}

/* Voci del menu più ravvicinate del gap di default del layout flex. */
.site-footer__nav .wp-block-navigation__container,
.site-footer__nav .wp-block-page-list {
	gap: var(--wp--preset--spacing--5, 0.125rem) !important;
}

.site-footer__nav .wp-block-navigation-item__label,
.site-footer__nav .wp-block-pages-list__item__link,
.site-footer__nav .wp-block-page-list a {
	font-family: var(--wp--preset--font-family--input-mono);
	font-size: var(--wp--preset--font-size--small);
	text-transform: lowercase;
	color: var(--wp--preset--color--base);
	transition: color 150ms ease;
}

.site-footer__nav .wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.site-footer__nav .wp-block-pages-list__item__link:hover,
.site-footer__nav .wp-block-page-list a:hover {
	color: var(--wp--preset--color--primary-light);
}

/* Nasconde l'hamburger anche se il core dovesse mostrarlo: nel footer il
   menu è sempre a colonna, senza overlay mobile. */
.site-footer__nav .wp-block-navigation__responsive-container-open {
	display: none;
}

.site-footer__legal a {
	color: var(--wp--preset--color--base);
	text-decoration: underline;
}

.site-footer__legal a:hover {
	color: var(--wp--preset--color--primary-light);
}

.footer-paragraph {
	margin-top:0;
}

/* Sotto 781px il blocco Columns core impila le tre colonne in verticale:
   centriamo tutto (logo, testo, menu) per un layout mobile pulito. */
@media (max-width: 781px) {
	.site-footer__col--brand,
	.site-footer__col--nav {
		justify-content: center;
	}

	.site-footer__nav {
		align-items: center;
	}

	.site-footer__nav .wp-block-navigation__container,
	.site-footer__nav .wp-block-page-list {
		align-items: center;
	}

	/* Loghi comune/officine della cultura: uno sopra l'altro, centrati. */
	.site-footer__partners {
		flex-direction: column;
		gap: var(--wp--preset--spacing--30, 1rem);
	}
}
