/* ==========================================================================
   FOOTER (footer.php)
   - Columna 1: datos de Barnasud → Opciones del tema.
   - Columnas 2-6: sidebars "Footer · Columna N" (Apariencia → Widgets).
   ========================================================================== */

.mim-footer {
	--mim-footer-blue: #005888;
	--mim-footer-green: #00EAA4;
	--mim-footer-light: #DDECF4;
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 1.05;
	color: #fff;
}

.mim-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mim-footer p {
	margin: 0;
	line-height: 1.05;
}

.mim-footer a {
	color: inherit;
}

.mim-footer-main {
	display: grid;
	grid-template-columns: minmax(200px, 380px) repeat(3, minmax(130px, 1fr)) minmax(230px, 1.4fr) minmax(230px, 257px);
	column-gap: 30px;
	row-gap: 45px;
	padding: 43px 93px 55px 41px;
	background-color: var(--mim-footer-blue);
	border-radius: 0 100px 0 0;
}

.mim-footer-col {
	min-width: 0;
	padding-top: 29px;
}

/* --- Columna 1: logo, contacto, redes y apps ------------------------------ */

.mim-footer-brand {
	padding-top: 0;
}

.mim-footer-logo {
	display: inline-block;
	margin-bottom: 38px;
}

.mim-footer-logo img {
	display: block;
	width: 201px;
	max-width: 100%;
	height: auto;
}

.mim-footer-contact li {
	display: flex;
	align-items: flex-start;
	gap: 2px;
	font-size: 16px;
	font-weight: 300;
}

.mim-footer-contact li + li {
	margin-top: 18px;
}

.mim-footer-contact img {
	flex: 0 0 auto;
	margin-top: -3px;
}

.mim-footer-subtitle {
	margin-top: 30px !important;
	margin-bottom: 10px !important;
	font-size: 18px;
	font-weight: 600;
}

.mim-footer-socials,
.mim-footer-apps {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.mim-footer-socials {
	gap: 16px;
}

.mim-footer-socials img {
	display: block;
	transition: opacity .2s ease;
}

.mim-footer-socials a:hover img {
	opacity: .75;
}

.mim-footer-apps {
	gap: 7px;
}

.mim-footer-apps img {
	display: block;
	height: 33px;
	object-fit: cover;
	border-radius: 5px;
}

/* --- Columnas de widgets ------------------------------------------------- */

.mim-footer-widget + .mim-footer-widget {
	margin-top: 20px;
}

.mim-footer-title {
	margin: 0 0 30px;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.05;
	text-transform: uppercase;
	color: #fff;
}

/* Widget "Menú de navegación" */
.mim-footer .widget_nav_menu li + li {
	margin-top: 14px;
}

.mim-footer .widget_nav_menu a {
	font-size: 18px;
	font-weight: 600;
	transition: color .2s ease;
}

.mim-footer .widget_nav_menu a:hover,
.mim-footer .widget_nav_menu .current-menu-item > a {
	color: var(--mim-footer-green);
}

/* Columna de horarios (widget "HTML personalizado", ver readme/footer.md) */
.mim-footer-col-4 {
	text-align: center;
}

.mim-footer-hours-title {
	margin-bottom: 12px !important;
	font-size: 18px;
	font-weight: 600;
}

.mim-footer-hours-text {
	margin-bottom: 14px !important;
	font-size: 16px;
	font-weight: 300;
}

.mim-footer-button-outline {
	display: inline-block;
	margin-top: 12px;
	padding: 6px 22px;
	border: 2px solid var(--mim-footer-green);
	border-radius: 0 0 20px 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
	transition: background-color .2s ease;
}

.mim-footer-button-outline:hover {
	background-color: var(--mim-footer-green);
}

/* Columna de suscripción */
.mim-footer-col-5 .mim-footer-title {
	margin-bottom: 6px;
}

.mim-footer-newsletter-text {
	margin-bottom: 15px !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4 !important;
}

.mim-footer-highlight {
	font-weight: 800;
	color: var(--mim-footer-green);
}

/* --- Formulario de newsletter del footer ------------------------------------
   Los estilos base están en css/forms.css. Aquí solo los colores para fondo azul. */

.mim-footer .mim-cf7-newsletter .wpcf7-acceptance label,
.mim-footer .wpcf7-form .mim-cf7-newsletter ~ .wpcf7-response-output {
	color: #fff;
}

.mim-footer .mim-cf7-newsletter .wpcf7-not-valid-tip {
	color: #FFD2D2;
}

/* --- Barra inferior ------------------------------------------------------ */

.mim-footer-bottom {
	padding: 16px 20px;
	background-color: var(--mim-footer-light);
	text-align: center;
}

.mim-footer-bottom p {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
	color: #6F6F6F;
}

/* --- Responsive ---------------------------------------------------------- */

@media only screen and (max-width: 1300px) {
	.mim-footer-main {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding: 43px 50px 55px;
	}

	.mim-footer-brand {
		grid-column: 1 / -1;
	}
}

@media only screen and (max-width: 767px) {
	.mim-footer-main {
		grid-template-columns: minmax(0, 1fr);
		padding: 23px 40px 45px;
		border-radius: 0;
		text-align: center;
	}

	.mim-footer-col {
		padding-top: 0;
	}

	.mim-footer-logo {
		margin-bottom: 30px;
	}

	.mim-footer-contact {
		display: inline-block;
		text-align: left;
	}

	.mim-footer-socials,
	.mim-footer-apps {
		justify-content: center;
	}

	.mim-footer-subtitle {
		margin-top: 25px !important;
	}

	.mim-footer-title {
		margin-bottom: 25px;
		font-size: 26px;
	}

	.mim-footer-col-5 {
		max-width: 257px;
		width: 100%;
		margin: 0 auto;
	}

	.mim-footer-newsletter-text,
	.mim-cf7-newsletter .wpcf7-acceptance label {
		text-align: left;
	}

	.mim-footer-bottom {
		padding: 30px 20px;
	}
}
