/* =========================================================
   SMÅLAND · FOOTER (diseño Figma) — se carga en toda la web
   ========================================================= */
.smf-footer {
	background-color: #664421;
	background-image: url('fondo.webp'), url('fondo-patron.webp');
	background-repeat: no-repeat, repeat-y;
	background-size: 103.71% auto, 103.71% auto;
	background-position: 50% 0, 50% calc(7.202vw);
	padding: 146px 16px 18px;
	color: #fff;
}
.smf-footer > .elementor-container { max-width: 1376px !important; }
.smf-footer .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
.smf-footer .elementor-widget:not(:last-child) { margin-bottom: 0; }

.smf-grid {
	display: grid;
	grid-template-columns: 226px 202px 274px 254px 420px;
	grid-template-rows: 161px auto;
	row-gap: 38px;
	align-items: start;
}
.smf-logo {
	grid-column: 1;
	grid-row: 1 / span 2;
	position: relative;
	width: 226px;
	height: 219px;
}
.smf-logo img { width: 226px; height: 219px; display: block; }
.smf-logo .smf-rs {
	position: absolute;
	top: 186px;
	width: 34px;
	height: 34px;
	border-radius: 6px;
}
.smf-logo .smf-rs--fb { left: 66px; }
.smf-logo .smf-rs--ig { left: 121px; }
.smf-logo .smf-rs:focus-visible { outline: 2px solid #fff; }

.smf-col { grid-row: 1; }
.smf-col--serv { grid-column: 3; }
.smf-col--info { grid-column: 4; }
.smf-map { grid-column: 5; grid-row: 1; }

.smf-footer .smf-tit {
	font-family: 'hirakaku', 'Hiragino Kaku Gothic Std', sans-serif !important;
	font-weight: 800;
	font-size: 24px;
	line-height: 1;
	color: #fff;
	margin: 0 0 30px !important;
}
.smf-footer ul { list-style: none; margin: 0; padding: 0; }
.smf-list li { margin: 0; }
.smf-list a {
	font-family: 'Hiragino Sans GB', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Segoe UI', Arial, sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 25px;
	color: #fff;
	text-decoration: none;
}
.smf-list a:hover,
.smf-contact a:hover { color: #EC6B0B; }

.smf-map a { display: block; border-radius: 10px; overflow: hidden; }
.smf-map img {
	display: block;
	width: 420px;
	max-width: 100%;
	height: 161px;
	object-fit: cover;
	border-radius: 10px;
	transition: transform .3s ease;
}
.smf-map a:hover img { transform: scale(1.03); }

.smf-contacto-tit { grid-column: 3; grid-row: 2; }
.smf-contacto-tit.smf-tit { margin: 0 !important; }
.smf-contact {
	grid-column: 4 / span 2;
	grid-row: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-top: 2px !important;
}
.smf-contact li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'hirakaku', 'Hiragino Sans GB', sans-serif;
	font-weight: 600;
	font-size: 15px;
	line-height: 1;
	white-space: nowrap;
}
.smf-contact li:first-child { width: 165px; }
.smf-contact img { display: block; flex: none; }
.smf-contact a { color: #fff; text-decoration: none; font: inherit; }
.smf-contact .smf-sep { margin: 0 2px; }

/* Bloque de fondos europeos (se mantiene) */
.smf-footer .smf-ayudas { margin-top: 60px; }
.smf-footer .smf-ayudas-logos { margin-top: 20px; }

/* Firma */
.smf-credit {
	margin-top: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	font-family: 'Hiragino Sans GB', 'Hiragino Kaku Gothic ProN', 'Segoe UI', Arial, sans-serif;
	font-size: 15px;
	line-height: 1;
	color: #fff;
}
.smf-credit img { width: 80px; height: auto; display: block; }
.smf-footer .smf-credit p { margin: 0 !important; color: #fff; font-family: inherit !important; }

/* ---------- Responsive ---------- */
@media (max-width: 1400px) {
	.smf-grid { grid-template-columns: 226px minmax(40px, 1fr) 220px 220px minmax(280px, 420px); }
	.smf-contact { flex-wrap: wrap; justify-content: flex-start; gap: 14px 30px; }
	.smf-contact li:first-child { width: auto; }
}
@media (max-width: 1024px) {
	.smf-footer { padding-top: 90px; background-size: 140% auto, 140% auto; background-position: 50% 0, 50% calc(9.722vw); }
	.smf-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto;
		row-gap: 40px;
		column-gap: 30px;
	}
	.smf-logo { grid-column: 1 / -1; grid-row: auto; margin: 0 auto; }
	.smf-col--serv, .smf-col--info, .smf-map, .smf-contacto-tit, .smf-contact { grid-column: auto; grid-row: auto; }
	.smf-map { grid-column: 1 / -1; }
	.smf-map img { width: 100%; height: 200px; }
	.smf-contacto-tit { grid-column: 1 / -1; }
	.smf-contact { grid-column: 1 / -1; }
	.smf-footer .smf-tit { margin-bottom: 18px !important; }
}
@media (max-width: 767px) {
	.smf-footer { padding: 70px 16px 18px; background-size: 260% auto, 260% auto; background-position: 50% 0, 50% calc(18.056vw); }
	.smf-grid { grid-template-columns: 1fr; text-align: center; }
	.smf-contact { flex-direction: column; align-items: center; gap: 16px; }
	.smf-map img { height: 180px; }
	.smf-credit { margin-top: 60px; flex-wrap: wrap; text-align: center; }
	.smf-footer .smf-tit { font-size: 22px; }
}
