/**
 * Footer Contrafoc — fons gris clar, 3 columnes separades + copyright
 */

.site-footer,
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
	background-color: #f2f2f2 !important;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
	border-top: 1px solid #e0e0e0;
}

.site-primary-footer-wrap .ast-builder-grid-row-container-inner {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 2rem;
}

/* Fila superior: graella 3 columnes a tot l'amplada */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .site-primary-footer-inner-wrap.ast-builder-grid-row,
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-footer-grid-columns {
	display: grid !important;
	grid-template-columns: minmax(220px, 1.35fr) minmax(140px, 1fr) minmax(140px, 1fr);
	column-gap: clamp(3rem, 8vw, 7rem);
	row-gap: 2rem;
	align-items: start !important;
	justify-items: start !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 3rem 0 1.5rem !important;
	margin: 0 !important;
}

.site-primary-footer-wrap .site-footer-primary-section-1,
.site-primary-footer-wrap .site-footer-primary-section-2,
.site-primary-footer-wrap .site-footer-primary-section-3 {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	justify-content: flex-start !important;
	justify-self: start !important;
	align-items: flex-start !important;
}

.site-primary-footer-wrap .site-footer-section,
.site-primary-footer-wrap .site-footer-section > *,
.site-primary-footer-wrap .footer-widget-area,
.site-primary-footer-wrap .footer-bar-navigation,
.site-primary-footer-wrap .ast-flex.site-footer-focus-item {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	justify-content: flex-start !important;
	text-align: left !important;
}

.site-primary-footer-wrap.ast-footer-row-inline .site-footer-section,
.site-primary-footer-wrap.ast-footer-row-stack .site-footer-section {
	justify-content: flex-start !important;
	align-items: flex-start !important;
	align-content: flex-start !important;
}

.site-primary-footer-wrap #astra-footer-menu.ast-nav-menu,
.site-primary-footer-wrap .contrafoc-footer-menu-list {
	flex-direction: column !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
	width: 100% !important;
}

/* Amagar copyright de la columna central (es mostra a sota) */
.site-footer-primary-section-2 .ast-footer-copyright {
	display: none !important;
}

/* Logo */
.site-footer-primary-section-1 .ast-builder-html-element {
	margin: 0;
}

.site-footer-primary-section-1 img {
	display: block;
	max-width: 240px;
	width: auto;
	height: auto;
}

/* Títols de columna */
.contrafoc-footer-col-title {
	margin: 0 0 1rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #2a2a2a;
	line-height: 1.2;
}

/* Menú principal (columna 2) */
.contrafoc-footer-menu-col {
	width: 100%;
}

.contrafoc-footer-menu-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.contrafoc-footer-menu-list .menu-item {
	margin: 0;
	padding: 0;
	width: 100%;
}

.contrafoc-footer-menu-list .menu-link,
.contrafoc-footer-menu-list a {
	display: inline-block;
	color: #4a4a4a !important;
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.45;
	text-decoration: none;
	padding: 0;
	background: none !important;
}

.contrafoc-footer-menu-list .menu-link:hover,
.contrafoc-footer-menu-list a:hover {
	color: #EE8516 !important;
}

.contrafoc-footer-menu-list .contrafoc-megamenu-cursos,
.contrafoc-footer-menu-list .contrafoc-megamenu-parent .contrafoc-megamenu-cursos {
	display: none !important;
}

/* Menú legal (columna 3) */
.site-footer-primary-section-3 .footer-bar-navigation {
	width: 100%;
}

.site-footer-primary-section-3 #astra-footer-menu {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer-primary-section-3 #astra-footer-menu .menu-item {
	margin: 0;
	padding: 0;
	width: 100%;
	text-align: left;
}

.site-footer-primary-section-3 #astra-footer-menu .menu-link {
	color: #4a4a4a !important;
	font-size: 0.95rem;
	font-weight: 400;
	padding: 0;
	background: none !important;
}

.site-footer-primary-section-3 #astra-footer-menu .menu-link:hover {
	color: #EE8516 !important;
}

.site-footer-primary-section-3 .contrafoc-footer-col-title--legal {
	text-align: left;
}

/* Copyright inferior */
.contrafoc-footer-bottom {
	width: 100%;
	border-top: 1px solid #e0e0e0;
	padding: 1.25rem 0 1.75rem;
	text-align: center;
}

.contrafoc-footer-copyright {
	margin: 0;
	font-size: 0.8125rem;
	color: #888;
	line-height: 1.4;
}

/* Amagar altres copyrights d'Astra si n'hi ha */
.site-below-footer-wrap .ast-footer-copyright {
	display: none !important;
}

@media (max-width: 921px) {
	.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .site-primary-footer-inner-wrap.ast-builder-grid-row,
	.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-footer-grid-columns {
		grid-template-columns: 1fr !important;
		column-gap: 0 !important;
		row-gap: 2.5rem !important;
		padding: 2.5rem 0 1rem !important;
	}

	.site-primary-footer-wrap .site-footer-primary-section-1,
	.site-primary-footer-wrap .site-footer-primary-section-2,
	.site-primary-footer-wrap .site-footer-primary-section-3 {
		max-width: 100% !important;
		width: 100% !important;
		text-align: center !important;
		align-items: center !important;
	}

	.site-footer-primary-section-1 img {
		margin-left: auto;
		margin-right: auto;
	}

	.contrafoc-footer-menu-list,
	.site-footer-primary-section-3 #astra-footer-menu {
		align-items: center !important;
	}

	.site-footer-primary-section-3 #astra-footer-menu .menu-item,
	.site-footer-primary-section-3 .contrafoc-footer-col-title--legal {
		text-align: center;
	}
}
