/* ==========================================================================
   SERRA — footer sitewide allineato al design system
   (canvas #08090c, hairline, colonne con eyebrow, link quieti, brand row)
   ========================================================================== */

.site-footer {
	background: #08090c !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	font-family: 'Plus Jakarta Sans Regular', 'Plus Jakarta Sans', sans-serif !important;
}

.site-footer * {
	font-family: inherit;
}

/* --- Titoli colonna → eyebrow ------------------------------------------- */

.site-footer .widget-title,
.site-footer h2.widget-title {
	margin-bottom: 18px !important;
	font-family: 'Plus Jakarta Sans Bold', 'Plus Jakarta Sans', sans-serif !important;
	font-size: 13px !important;
	font-weight: normal !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #f5f7fa !important;
}

/* trattino blu sotto il titolo, come i numeri di capitolo */
.site-footer .widget-title::after {
	content: "";
	display: block;
	width: 26px;
	height: 2px;
	margin-top: 10px;
	background: #0365fa;
}

/* --- Link delle colonne --------------------------------------------------- */

.site-footer .widget_nav_menu a,
.site-footer .widget a {
	font-size: 15px !important;
	font-weight: normal !important;
	line-height: 1.5;
	color: #9ca3af !important;
	text-decoration: none !important;
	transition: color 180ms ease;
}

.site-footer .widget_nav_menu a:hover,
.site-footer .widget a:hover {
	color: #fff !important;
}

.site-footer .widget_nav_menu li {
	margin-bottom: 10px !important;
}

/* pagina corrente: accento leggero, niente bold urlato */
.site-footer .current-menu-item > a,
.site-footer .current_page_item > a {
	color: #4d94ff !important;
	font-weight: normal !important;
}

/* --- Brand row: logo, email, social -------------------------------------- */

.site-footer .custom-logo,
.site-footer img[src*="logo"] {
	width: 132px !important;
	height: auto !important;
}

.site-footer a[href^="mailto:"] {
	display: inline-block;
	margin-top: 10px;
	font-size: 14px !important;
	color: #7e8794 !important;
	text-decoration: none !important;
	transition: color 180ms ease;
}

.site-footer a[href^="mailto:"]:hover {
	color: #fff !important;
}

/* icone social: chip circolari con hairline */
.site-footer .ast-builder-social-element,
.site-footer [class*="social"] a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 50% !important;
	background: transparent !important;
	transition: background 180ms ease, border-color 180ms ease;
}

.site-footer .ast-builder-social-element:hover,
.site-footer [class*="social"] a:hover {
	background: rgba(255, 255, 255, 0.07) !important;
	border-color: rgba(255, 255, 255, 0.3) !important;
}

.site-footer .ast-builder-social-element svg,
.site-footer [class*="social"] a svg {
	width: 16px;
	height: 16px;
	fill: #c7d0e4;
}

/* --- Fascia copyright ------------------------------------------------------ */

.site-footer .site-footer-below-section,
.site-footer .ast-footer-copyright,
.site-footer [class*="below-section"] {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.site-footer .ast-footer-copyright,
.site-footer .ast-footer-copyright p,
.site-footer [class*="below-section"] p {
	font-size: 13px !important;
	line-height: 1.7;
	color: #6d7585 !important;
}

.site-footer [class*="below-section"] a {
	font-size: 13px !important;
	color: #9ca3af !important;
	text-decoration: none !important;
}

.site-footer [class*="below-section"] a:hover {
	color: #fff !important;
}

/* --- Spaziature generali --------------------------------------------------- */

.site-footer .site-footer-above-section-wrap,
.site-footer .ast-builder-grid-row {
	row-gap: 40px;
}

/* --- Mobile: un solo asse di allineamento ---------------------------------- */

@media (max-width: 640px) {
	.site-footer .site-footer-section,
	.site-footer .footer-widget-area,
	.site-footer .widget,
	.site-footer [class*="social"] {
		text-align: left !important;
		justify-content: flex-start !important;
	}

	.site-footer .custom-logo,
	.site-footer img[src*="logo"] {
		margin-left: 0 !important;
	}

	.site-footer .ast-footer-copyright,
	.site-footer [class*="below-section"] {
		text-align: left !important;
	}
}

/* --- Round 2 (da probe DOM) ------------------------------------------------ */

/* i wrap del builder portavano il vecchio ink #1c1f29 */
.site-footer .site-above-footer-wrap,
.site-footer .site-primary-footer-wrap,
.site-footer .site-below-footer-wrap {
	background: transparent !important;
}

/* email nel blocco brand: è un <p><strong>, non un link */
.site-footer [class*="primary-section"] p,
.site-footer [class*="primary-section"] strong {
	font-family: 'Plus Jakarta Sans Regular', 'Plus Jakarta Sans', sans-serif !important;
	font-size: 14px !important;
	font-weight: normal !important;
	color: #7e8794 !important;
}

/* social: img.logo-social dentro <a> → chip circolari */
.site-footer a:has(img.logo-social) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin-right: 8px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	transition: background 180ms ease, border-color 180ms ease;
}

.site-footer a:has(img.logo-social):hover {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.3);
}

.site-footer img.logo-social {
	width: 16px !important;
	height: 16px !important;
	opacity: 0.85;
}

/* una sola hairline sopra il copyright (niente doppie linee) */
.site-footer [class*="below-section"],
.site-footer .ast-footer-copyright {
	border-top: 0 !important;
}

.site-footer .site-below-footer-wrap {
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	padding-top: 28px;
}

/* il divider builder di Astra era bianco pieno: hairline di sistema */
.site-footer .site-below-footer-inner-wrap,
.site-footer .ast-builder-footer-grid-columns {
	border-top-color: rgba(255, 255, 255, 0.08) !important;
}

/* mobile: TUTTO il footer su un solo asse (sinistra) */
@media (max-width: 640px) {
	.site-footer [class*="primary-section"],
	.site-footer [class*="primary-section"] *,
	.site-footer [class*="below-section"],
	.site-footer [class*="below-section"] * {
		text-align: left !important;
		justify-content: flex-start !important;
	}

	.site-footer img[src*="logo"] {
		margin-inline: 0 !important;
	}
}

/* respiro tra email e social chips */
.site-footer [class*="primary-section"] p {
	margin-bottom: 18px !important;
}

.site-footer a:has(img.logo-social) {
	margin-top: 4px;
}

/* UNA sola hairline sopra il copyright: resta quella dell'inner-wrap Astra,
   via la mia doppia sul wrap esterno */
.site-footer .site-below-footer-wrap {
	border-top: 0 !important;
	padding-top: 0;
}

/* spaziatura brand row: logo → email → social, senza sovrapposizioni */
.site-footer [class*="primary-section"] .ast-builder-html-element p {
	margin-top: 16px !important;
	margin-bottom: 0 !important;
}

.site-footer div:has(> a:has(img.logo-social)) {
	margin-top: 24px !important;
}

/* fallback se i chip sono fratelli diretti senza contenitore dedicato */
.site-footer a:has(img.logo-social) {
	margin-top: 24px;
	margin-bottom: 6px;
}
