/*
Theme Name:  Huesca La Magia MICE Rural
Author:      MadeWordPress
Author URI:  http://madewordpress.com/
Theme URI:   http://madewordpress.com/
Description:
Template:    vantage
Version:     1.0.0
License:
Tags:
Text Domain: huescalamagianuevo
*/

/******************************************** Z-INDEX ********************************************/

/*
   9999 -> .main-navigation
    998 -> <nav>
*/

/******************************************* INCLUDES ********************************************/

@import url("../vantage/style.css?q=20251102");
@import url("style-header.css?q=20251102");
@import url("style-home.css?q=20251102");
@import url("style-footer.css?q=20251102");
@import url("style-pages.css?q=20251102");
@import url("style-blog.css?q=20251102");
@import url("style-animate.css?q=20251102");
@import url("responsive.css");

.hero-subtitle {
	color: #ffffff !important;
}

/* @import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rowdies:wght@300;400;700&display=swap'); */

/* ==========================================================================
   CARGA OPTIMIZADA DE FUENTES (Solo los grosores estrictamente necesarios)
   Nota: Fuentes cargadas localmente via @font-face (ver abajo). No se usa CDN.
   ========================================================================== */

/* ==========================================================================
   APLICACIÓN GLOBAL DE RENDIMIENTO
   ========================================================================== */
/* ==========================================================================
   1. REGISTRO DE FUENTES LOCALES (Carpeta: tipografias)
   ========================================================================== */

/* --- LATO --- */
/* --- LATO (Thin 100) --- */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 100;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Thin.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 100;
	font-display: swap;
	src: url('tipografias/Lato/Lato-ThinItalic.ttf') format('truetype');
}

/* --- LATO (Light 300) --- */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Light.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 300;
	font-display: swap;
	src: url('tipografias/Lato/Lato-LightItalic.ttf') format('truetype');
}

/* --- LATO (Regular 400) --- */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Italic.ttf') format('truetype');
}

/* --- LATO (Bold 700) --- */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Bold.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 700;
	font-display: swap;
	src: url('tipografias/Lato/Lato-BoldItalic.ttf') format('truetype');
}

/* --- LATO (Black 900) --- */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('tipografias/Lato/Lato-Black.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 900;
	font-display: swap;
	src: url('tipografias/Lato/Lato-BlackItalic.ttf') format('truetype');
}

/* --- EB GARAMOND --- */
/* --- EB GARAMOND (Regular 400) --- */
@font-face {
	font-family: 'EB Garamond';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'EB Garamond';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-Italic.ttf') format('truetype');
}

/* --- EB GARAMOND (Medium 500) --- */
@font-face {
	font-family: 'EB Garamond';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-Medium.ttf') format('truetype');
}

@font-face {
	font-family: 'EB Garamond';
	font-style: italic;
	font-weight: 500;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-MediumItalic.ttf') format('truetype');
}

/* --- EB GARAMOND (SemiBold 600) --- */
@font-face {
	font-family: 'EB Garamond';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-SemiBold.ttf') format('truetype');
}

@font-face {
	font-family: 'EB Garamond';
	font-style: italic;
	font-weight: 600;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-SemiBoldItalic.ttf') format('truetype');
}

/* --- EB GARAMOND (Bold 700) --- */
@font-face {
	font-family: 'EB Garamond';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-Bold.ttf') format('truetype');
}

@font-face {
	font-family: 'EB Garamond';
	font-style: italic;
	font-weight: 700;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-BoldItalic.ttf') format('truetype');
}

/* --- EB GARAMOND (ExtraBold 800) --- */
@font-face {
	font-family: 'EB Garamond';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-ExtraBold.ttf') format('truetype');
}

@font-face {
	font-family: 'EB Garamond';
	font-style: italic;
	font-weight: 800;
	font-display: swap;
	src: url('tipografias/EB_Garamond/static/EBGaramond-ExtraBoldItalic.ttf') format('truetype');
}

/* ==========================================================================
   2. CONFIGURACIÓN GLOBALES Y VARIABLES DE COLOR (:ROOT)
   ========================================================================== */
:root {
	/* Nuevas variables de fuentes */
	--font-family-normal: "Lato", sans-serif;
	--font-family-narrow: "Lato", sans-serif;
	--font-family-rowdies: "EB Garamond", serif;

	/* Actualización de tus colores corporativos */
	--color-principal-hex: #eba88e;
	/* Carne / Terracota suave */
	--color-secundario-hex: #6b7abe;
	/* Azul-morado */
	--color-boton-hex: #f49333;
	/* Botón Naranja */
	--color-fondo-sutil-hex: #fdf8f5;

	--color-naranja: #e86e3b;

	/* Mantenemos tus colores secundarios del proyecto */
	--color1-hex: #00E868;
	--color2-hex: #1A1A1A;
	--color3-hex: #E91E63;
	--color4-hex: #FF9800;
	--color5-hex: #AA00FF;

	--color-añil-hex: #143046;
	--color-ambar-hex: #E6AF40;
	--color-oliva-hex: #4C5335;
	--color-crema-hex: #FAEFD9;

	--color1-rgb: 0, 232, 104;
	--color2-rgb: 26, 26, 26;
	--color3-rgb: 233, 30, 99;
	--color4-rgb: 255, 152, 0;
	--color5-rgb: 170, 0, 255;

	--color-añil-rgb: 20, 48, 70;
	--color-ambar-rgb: 230, 175, 64;
	--color-oliva-rgb: 76, 83, 53;
	--color-crema-rgb: 250, 239, 217;
}

/* ==========================================================================
   3. APLICACIÓN DE LAS REGLAS TIPOGRÁFICAS
   ========================================================================== */

/* Reseteo general con la nueva fuente principal Lato */
* {
	font-family: var(--font-family-normal), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: var(--font-family-normal);
	color: #1A1A1A;
	line-height: 1.6;
}

/* Títulos principales cambian a EB Garamond */
h1,
h2,
h3 {
	font-family: var(--font-family-rowdies) !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
	/* Ajustado para EB Garamond, que es serif */
	color: #1A1A1A;
}

h4,
h5,
h6,
.main-menu li a {
	font-family: var(--font-family-normal) !important;
	font-weight: 700 !important;
}

/* Descripciones y textos de bloque */
p,
span,
input,
select,
textarea {
	font-family: var(--font-family-normal);
	font-weight: 400;
	color: #4B5563;
}

/* Botones con Lato y el nuevo color corporativo naranja */
.btn-explorar,
.btn-view-site,
.elementor-button {
	font-family: var(--font-family-normal) !important;
	font-weight: 500 !important;
	background-color: var(--color-boton-hex) !important;
	/* Aplica automáticamente el naranja de botones */
}

/* Estructuras heredadas del framework antiguo */
html,
div,
applet,
object,
iframe,
blockquote,
abbr,
acronym,
address,
big,
cite,
del,
dfn,
ins,
kbd,
q,
s,
samp,
small,
strike,
tt,
var,
dl,
dt,
dd,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	font-family: var(--font-family-normal);
}

p,
a,
span,
font,
strong,
em,
sub,
sup,
ol,
ul,
li {
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	line-height: inherit;
}

/******************************************** GENERAL ********************************************/

#main {
	padding: 20px;
}

/* No afecta a header ni a footer porque no son "main" */
#main div[id^="row"] {
	padding: 0px;
}

/* No afecta a header ni a footer porque no son "main" */
#main div[id^="row"] * {
	box-sizing: border-box;
}

/* No afecta a header ni a footer porque no son "main" */

a,
a:active,
a:hover,
a:focus,
a:visited {
	outline: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0px !important;
	line-height: 100%;
}

:root {
	--size-h1: 48px;
	--size-h2: 42px;
	--size-h3: 36px;
	--size-h4: 30px;
	--size-h5: 24px;
	--size-h6: 20px;
}

h1 {
	font-size: var(--size-h1) !important;
	font-weight: 900 !important;
}

h2 {
	font-size: var(--size-h2) !important;
	font-weight: 900 !important;
}

h3 {
	font-size: var(--size-h3) !important;
	font-weight: 900 !important;
}

h4 {
	font-size: var(--size-h4) !important;
	font-weight: 400 !important;
}

h5 {
	font-size: var(--size-h5) !important;
	font-weight: 400 !important;
}

h6 {
	font-size: var(--size-h6) !important;
	font-weight: 400 !important;
}

@media (max-width: 980px) {
	:root {
		--size-h1: 42px;
		--size-h2: 36px;
		--size-h3: 30px;
		--size-h4: 24px;
		--size-h5: 20px;
		--size-h6: 18px;
	}
}

@media (max-width: 780px) {
	:root {
		--size-h1: 36px;
		--size-h2: 30px;
		--size-h3: 24px;
		--size-h4: 20px;
		--size-h5: 18px;
		--size-h6: 16px;
	}
}

@media (max-width: 580px) {
	:root {
		--size-h1: 30px;
		--size-h2: 24px;
		--size-h3: 20px;
		--size-h4: 18px;
		--size-h5: 16px;
		--size-h6: 14px;
	}
}

@media (max-width: 380px) {
	:root {
		--size-h1: 24px;
		--size-h2: 20px;
		--size-h3: 18px;
		--size-h4: 16px;
		--size-h5: 14px;
		--size-h6: 13px;
	}
}

@media (max-width: 980px) {
	.entry-content {
		font-size: 13px !important;
	}
}

@media (max-width: 380px) {
	.entry-content {
		font-size: 12px !important;
	}
}

* {
	line-height: 140%;
}

br {
	line-height: inherit;
}

img {
	line-height: 0px;
}

MWP-COMMENT {
	display: none;
}

/******************************************** FILTROS ********************************************/

:root {
	--filter-to-color1: brightness(0) saturate(100%) invert(75%) sepia(89%) saturate(5913%) hue-rotate(335deg) brightness(88%) contrast(90%);
	--filter-to-añil: brightness(0) saturate(100%) invert(15%) sepia(8%) saturate(4292%) hue-rotate(164deg) brightness(94%) contrast(92%);
	--filter-to-ambar: brightness(0) saturate(100%) invert(91%) sepia(16%) saturate(7098%) hue-rotate(333deg) brightness(105%) contrast(80%);
	--filter-to-oliva: brightness(0) saturate(100%) invert(31%) sepia(11%) saturate(1064%) hue-rotate(33deg) brightness(98%) contrast(98%);
	--filter-to-crema: brightness(0) saturate(100%) invert(97%) sepia(6%) saturate(1528%) hue-rotate(306deg) brightness(105%) contrast(97%);
}

/******************************************** FONDOS *********************************************/

:root {
	--fondo-abetos: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-abetos.png");
	--fondo-curvas: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-curvas.png");
	--fondo-curvas-24: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-curvas-24.png");
	--fondo-curvas-24-color1: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-curvas-24-color1.png");
}

.divBackgroundCurvasWhite {
	position: relative;
}

.divBackgroundCurvasWhite:before {
	content: "";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-image: var(--fondo-curvas);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	opacity: 0.05;
}

.divBackgroundCurvasBlack {
	position: relative;
}

.divBackgroundCurvasBlack:before {
	content: "";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-image: var(--fondo-curvas);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	opacity: 0.05;
	filter: invert(1);
}

/***************************************** FONDOS ROTOS ******************************************/

:root {
	--mask-fondo-1: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-1.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-2: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-2.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-3: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-3.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-4: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-4.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-5: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-5.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-6: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-6.png"), linear-gradient(transparent 140px, black 0px);
	--mask-fondo-7: url("/wp-content/themes/nuevo-proyecto/images/miscelanea/fondo-roto-7.png"), linear-gradient(transparent 140px, black 0px);
}

.divMask {
	position: relative;
	margin-top: -140px;
}

.divMask:before {
	content: "";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.divMask1:before {
	mask-image: var(--mask-fondo-1);
}

.divMask2:before {
	mask-image: var(--mask-fondo-2);
}

.divMask3:before {
	mask-image: var(--mask-fondo-3);
}

.divMask4:before {
	mask-image: var(--mask-fondo-4);
}

.divMask5:before {
	mask-image: var(--mask-fondo-5);
}

.divMask6:before {
	mask-image: var(--mask-fondo-6);
}

.divMask7:before {
	mask-image: var(--mask-fondo-7);
}

.divMaskWhite:before {
	background-color: #FFFFFF;
}

.divMaskBlack:before {
	background-color: #000000;
}

.divMaskColor1:before {
	background-color: var(--color1-hex);
}

.divMaskAñil:before {
	background-color: var(--color-añil-hex);
}

.divMaskAmbar:before {
	background-color: var(--color-ambar-hex);
}

.divMaskOliva:before {
	background-color: var(--color-oliva-hex);
}

.divMaskCrema:before {
	background-color: var(--color-crema-hex);
}

/******************************************** ICONOS *********************************************/

:root {
	--icono-cultural: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-cultural.png");
	--icono-activo: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-activo.png");
	--icono-gastronomico: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-gastronomico.png");
	--icono-familiar: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-familiar.png");

	--icono-comer: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-comer.png");
	--icono-dormir: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-dormir.png");
	--icono-hacer: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-hacer.png");

	--icono-map-marker: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-map-marker.png");
	--icono-phone: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-phone.png");
	--icono-envelope: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-envelope.png");
	--icono-web: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-web.png");
	--icono-booking: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-booking.png");
	--icono-arrow-left: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-arrow-left.png");
	--icono-arrow-right: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-arrow-right.png");
	--icono-zoom: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-zoom.png");
	--icono-plegar: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-plegar.png");
	--icono-desplegar: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-desplegar.png");
	--icono-adults: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-adults.png");
	--icono-children: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-children.png");
	--icono-calendar: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-calendar.png");
	--icono-clock: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-clock.png");

	--icono-facebook: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-facebook.png");
	--icono-instagram: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-instagram.png");
	--icono-youtube: url("/wp-content/themes/nuevo-proyecto/images/iconos/icono-youtube.png");
}

.mwp-icon {
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	display: block;
}

.mwp-icon256 {
	width: 256px;
	height: 256px;
}

.mwp-icon128 {
	width: 128px;
	height: 128px;
}

.mwp-icon64 {
	width: 64px;
	height: 64px;
}

.mwp-icon48 {
	width: 48px;
	height: 48px;
}

.mwp-icon32 {
	width: 32px;
	height: 32px;
}

.mwp-icon24 {
	width: 24px;
	height: 24px;
}

.mwp-icon16 {
	width: 16px;
	height: 16px;
}

.mwp-cultural {
	background-image: var(--icono-cultural);
	filter: var(--filter-to-añil);
}

.mwp-activo {
	background-image: var(--icono-activo);
	filter: var(--filter-to-oliva);
}

.mwp-gastronomico {
	background-image: var(--icono-gastronomico);
	filter: var(--filter-to-color1);
}

.mwp-familiar {
	background-image: var(--icono-familiar);
	filter: var(--filter-to-ambar);
}

.mwp-comer {
	background-image: var(--icono-comer);
}

.mwp-dormir {
	background-image: var(--icono-dormir);
}

.mwp-hacer {
	background-image: var(--icono-hacer);
}

.mwp-map-marker {
	background-image: var(--icono-map-marker);
	filter: var(--filter-to-color1);
}

.mwp-phone {
	background-image: var(--icono-phone);
	filter: var(--filter-to-color1);
}

.mwp-envelope {
	background-image: var(--icono-envelope);
	filter: var(--filter-to-color1);
}

.mwp-web {
	background-image: var(--icono-web);
	filter: var(--filter-to-color1);
}

.mwp-booking {
	background-image: var(--icono-booking);
	filter: var(--filter-to-color1);
}

.mwp-arrow-left {
	background-image: var(--icono-arrow-left);
	filter: var(--filter-to-color1);
}

.mwp-arrow-right {
	background-image: var(--icono-arrow-right);
	filter: var(--filter-to-color1);
}

.mwp-zoom {
	background-image: var(--icono-zoom);
	filter: var(--filter-to-color1);
}

.mwp-plegar {
	background-image: var(--icono-plegar);
	filter: var(--filter-to-color1);
}

.mwp-desplegar {
	background-image: var(--icono-desplegar);
	filter: var(--filter-to-color1);
}

.mwp-adults {
	background-image: var(--icono-adults);
	filter: var(--filter-to-color1);
}

.mwp-children {
	background-image: var(--icono-children);
	filter: var(--filter-to-color1);
}

.mwp-calendar {
	background-image: var(--icono-calendar);
	filter: var(--filter-to-color1);
}

.mwp-clock {
	background-image: var(--icono-clock);
	filter: var(--filter-to-color1);
}

.mwp-facebook {
	background-image: var(--icono-facebook);
	filter: var(--filter-to-color1);
}

.mwp-instagram {
	background-image: var(--icono-instagram);
	filter: var(--filter-to-color1);
}

.mwp-youtube {
	background-image: var(--icono-youtube);
	filter: var(--filter-to-color1);
}

@media (max-width: 980px) {
	.mwp-icon256 {
		width: 192px;
		height: 192px;
	}

	.mwp-icon128 {
		width: 96px;
		height: 96px;
	}

	.mwp-icon64 {
		width: 56px;
		height: 56px;
	}
}

@media (max-width: 780px) {
	.mwp-icon256 {
		width: 144px;
		height: 144px;
	}

	.mwp-icon128 {
		width: 72px;
		height: 72px;
	}

	.mwp-icon64 {
		width: 48px;
		height: 48px;
	}
}

@media (max-width: 580px) {
	.mwp-icon256 {
		width: 128px;
		height: 128px;
	}

	.mwp-icon128 {
		width: 56px;
		height: 56px;
	}

	.mwp-icon64 {
		width: 44px;
		height: 44px;
	}
}

@media (max-width: 380px) {
	.mwp-icon256 {
		width: 96px;
		height: 96px;
	}

	.mwp-icon128 {
		width: 48px;
		height: 48px;
	}

	.mwp-icon64 {
		width: 42px;
		height: 42px;
	}
}

@media (max-width: 980px) {
	.mwp-icon48 {
		width: 44px;
		height: 44px;
	}

	.mwp-icon32 {
		width: 30px;
		height: 30px;
	}

	.mwp-icon24 {
		width: 22px;
		height: 22px;
	}

	.mwp-icon16 {
		width: 14px;
		height: 14px;
	}
}

@media (max-width: 780px) {
	.mwp-icon48 {
		width: 42px;
		height: 42px;
	}

	.mwp-icon32 {
		width: 28px;
		height: 28px;
	}

	.mwp-icon24 {
		width: 20px;
		height: 20px;
	}
}

@media (max-width: 580px) {
	.mwp-icon48 {
		width: 40px;
		height: 40px;
	}

	.mwp-icon32 {
		width: 26px;
		height: 26px;
	}

	.mwp-icon24 {
		width: 18px;
		height: 18px;
	}
}

@media (max-width: 380px) {
	.mwp-icon48 {
		width: 38px;
		height: 38px;
	}

	.mwp-icon32 {
		width: 24px;
		height: 24px;
	}

	.mwp-icon24 {
		width: 16px;
		height: 16px;
	}
}

/******************************************** SAFARI *********************************************/

div#ui-datepicker-div {
	z-index: 1000 !important;
}

/* CF7 - input type date */

/******************************************** TEXTOS *********************************************/

.textColor1 {
	color: var(--color1-hex);
}

.textColor2 {
	color: var(--color2-hex);
}

.textColor3 {
	color: var(--color3-hex);
}

.textColor4 {
	color: var(--color4-hex);
}

.textColor5 {
	color: var(--color5-hex);
}

.backgroundColor1 {
	background-color: var(--color1-hex);
}

.backgroundColor2 {
	background-color: var(--color2-hex);
}

.backgroundColor3 {
	background-color: var(--color3-hex);
}

.backgroundColor4 {
	background-color: var(--color4-hex);
}

.backgroundColor5 {
	background-color: var(--color5-hex);
}

.pJustify {
	text-align: justify;
}

.pFirstLetter:first-letter {
	float: left;
	margin-right: 10px;
	color: var(--color3-hex);
	font-size: 74px;
	font-weight: 600;
	line-height: 90%;
}

.Ellipsis {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.Narrow {
	font-family: var(--font-family-narrow) !important;
}

.two-columns {
	column-count: 2;
	column-gap: 60px;
	column-rule: solid 1px var(--color4-hex);
}

/* Texto a 2 columnas */
.three-columns {
	column-count: 3;
	column-gap: 40px;
	column-rule: solid 1px var(--color4-hex);
}

/* Texto a 3 columnas */
.four-columns {
	column-count: 4;
	column-gap: 35px;
	column-rule: solid 1px var(--color4-hex);
}

/* Texto a 4 columnas */
.five-columns {
	column-count: 5;
	column-gap: 30px;
	column-rule: solid 1px var(--color4-hex);
}

/* Texto a 5 columnas */

@media (max-width: 780px) {
	.two-columns {
		column-count: 1;
		column-gap: 0px;
		column-rule: none;
	}

	.three-columns {
		column-count: 1;
		column-gap: 0px;
		column-rule: none;
	}

	.four-columns {
		column-count: 1;
		column-gap: 0px;
		column-rule: none;
	}

	.five-columns {
		column-count: 1;
		column-gap: 0px;
		column-rule: none;
	}
}

br380,
br480,
br580,
br680,
br780,
br880,
br980,
br1080,
br1180,
br1280,
br1380,
br1480,
br1580,
br1680,
br1780,
br1880,
br1980,
br5080 {
	line-height: inherit;
}

br380:before {
	content: " ";
}

@media (max-width: 380px) {
	br380:before {
		content: "\A";
		white-space: pre-line;
	}
}

br480:before {
	content: " ";
}

@media (max-width: 480px) {
	br480:before {
		content: "\A";
		white-space: pre-line;
	}
}

br580:before {
	content: " ";
}

@media (max-width: 580px) {
	br580:before {
		content: "\A";
		white-space: pre-line;
	}
}

br680:before {
	content: " ";
}

@media (max-width: 680px) {
	br680:before {
		content: "\A";
		white-space: pre-line;
	}
}

br780:before {
	content: " ";
}

@media (max-width: 780px) {
	br780:before {
		content: "\A";
		white-space: pre-line;
	}
}

br880:before {
	content: " ";
}

@media (max-width: 880px) {
	br880:before {
		content: "\A";
		white-space: pre-line;
	}
}

br980:before {
	content: " ";
}

@media (max-width: 980px) {
	br980:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1080:before {
	content: " ";
}

@media (max-width: 1080px) {
	br1080:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1180:before {
	content: " ";
}

@media (max-width: 1180px) {
	br1180:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1280:before {
	content: " ";
}

@media (max-width: 1280px) {
	br1280:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1380:before {
	content: " ";
}

@media (max-width: 1380px) {
	br1380:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1480:before {
	content: " ";
}

@media (max-width: 1480px) {
	br1480:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1580:before {
	content: " ";
}

@media (max-width: 1580px) {
	br1580:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1680:before {
	content: " ";
}

@media (max-width: 1680px) {
	br1680:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1780:before {
	content: " ";
}

@media (max-width: 1780px) {
	br1780:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1880:before {
	content: " ";
}

@media (max-width: 1880px) {
	br1880:before {
		content: "\A";
		white-space: pre-line;
	}
}

br1980:before {
	content: " ";
}

@media (max-width: 1980px) {
	br1980:before {
		content: "\A";
		white-space: pre-line;
	}
}

br5080:before {
	content: " ";
}

@media (max-width: 5080px) {
	br5080:before {
		content: "\A";
		white-space: pre-line;
	}
}

.blink {
	-webkit-animation: blink-animation 1s steps(5, start) infinite;
	animation: blink-animation 1s steps(5, start) infinite;
}

/* Parpadeo */
@-webkit-keyframes blink-animation {
	to {
		visibility: hidden;
	}
}

@keyframes blink-animation {
	to {
		visibility: hidden;
	}
}

.blink-alpha {
	-webkit-animation: blink-alpha-animation 2s infinite;
	animation: blink-alpha-animation 2s infinite;
}

/* Parpadeo */
@-webkit-keyframes blink-alpha-animation {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0.1;
	}
}

@keyframes blink-alpha-animation {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0.1;
	}
}

/***************************************** EFECTOS HOVER *****************************************/

.hoverCursorZoom:hover {
	cursor: zoom-in;
}

.hoverScale105,
.hoverScale110,
.hoverScale120,
.hoverScale130,
.hoverScale140,
.hoverScale150 {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.hoverScale105:hover {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.hoverScale110:hover {
	-webkit-transform: scale(1.10);
	transform: scale(1.10);
}

.hoverScale120:hover {
	-webkit-transform: scale(1.20);
	transform: scale(1.20);
}

.hoverScale130:hover {
	-webkit-transform: scale(1.30);
	transform: scale(1.30);
}

.hoverScale140:hover {
	-webkit-transform: scale(1.40);
	transform: scale(1.40);
}

.hoverScale150:hover {
	-webkit-transform: scale(1.50);
	transform: scale(1.50);
}

/****************************************** SEPARADORES ******************************************/

.divSeparadorV10 {
	clear: both;
	width: 100%;
	height: 10px;
}

.divSeparadorV15 {
	clear: both;
	width: 100%;
	height: 15px;
}

.divSeparadorV20 {
	clear: both;
	width: 100%;
	height: 20px;
}

.divSeparadorV30 {
	clear: both;
	width: 100%;
	height: 30px;
}

.divSeparadorV40 {
	clear: both;
	width: 100%;
	height: 40px;
}

.divSeparadorH10 {
	width: 10px;
}

.divSeparadorH15 {
	width: 15px;
}

.divSeparadorH20 {
	width: 20px;
}

.divSeparadorH30 {
	width: 30px;
}

.divSeparadorH40 {
	width: 40px;
}

/******************************************* BOTONES  ********************************************/

.aButton {
	padding: 10px 30px 5px 30px;
	transition: all 0.3s ease !important;
	font-size: 16px;
	font-weight: 600;
	border-radius: 20px;
	text-decoration: none !important;
	cursor: pointer;
	color: #FFFFFF !important;
	background: var(--color1-hex);
	border: none;
}

.aButton:hover {
	transform: scale(1.1);
	color: #000000 !important;
	background: var(--color5-hex);
}

@media (max-width: 980px) {
	.aButton {
		padding: 10px 25px 5px 25px;
		border-radius: 15px;
	}
}

@media (max-width: 780px) {
	.aButton {
		padding: 10px 20px 5px 20px;
	}
}

@media (max-width: 580px) {
	.aButton {
		font-size: 14px;
		border-radius: 10px;
	}
}

.aVerMasWhiteRight {
	font-size: 13px;
	font-weight: 600;
	color: #FFFFFF !important;
	text-decoration: none;
	letter-spacing: 2px;
	display: flex;
	align-items: center;
	transition: all 0.3s ease;
}

.aVerMasWhiteRight:after {
	content: "";
	margin-left: 10px;
	width: 16px;
	height: 16px;
	text-decoration: none;
	background-image: var(--icono-arrow-right);
	background-repeat: no-repeat;
	background-size: contain;
	filter: var(--filter-to-color1);
	transition: all 0.3s ease;
}

.aVerMasWhiteRight:hover {
	font-size: 110%;
}

.aVerMasWhiteRight:hover:after {
	transform: scale(1.1);
}

.aVerMasAñilRight {
	font-size: 13px;
	font-weight: 600;
	color: var(--color-añil-hex) !important;
	text-decoration: none;
	letter-spacing: 2px;
	display: flex;
	align-items: center;
	transition: all 0.3s ease;
}

.aVerMasAñilRight:after {
	content: "";
	margin-left: 10px;
	width: 16px;
	height: 16px;
	text-decoration: none;
	background-image: var(--icono-arrow-right);
	background-repeat: no-repeat;
	background-size: contain;
	filter: var(--filter-to-color1);
	transition: all 0.3s ease;
}

.aVerMasAñilRight:hover {
	font-size: 110%;
}

.aVerMasAñilRight:hover:after {
	transform: scale(1.1);
}

/* Galería y thumbnails — Estilos ahora en css/style-single-common.css */

/*################################ PARTE MAPA ############################*/

/*********************************** MAPA INTERACTIVO GLOBAL ***********************************/

.contenedor-mapa-global {
	position: relative;
	width: 100%;
	height: 600px;
	/* Controla la altura del bloque del mapa en la web */
	margin: 40px 0;
	font-family: 'Figtree', sans-serif;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}

#mapa-interactivo-visor {
	width: 100% !important;
	height: 100% !important;
	min-height: 500px !important;
	/* Altura de seguridad forzada */
	display: block !important;
	background-color: #f3f4f6 !important;
	/* Si se ve gris claro en vez de gris oscuro, el contenedor ya tiene tamaño */
}

/* Panel lateral flotante idéntico a la imagen de referencia */
.panel-filtros-mapa {
	position: absolute;
	top: 20px;
	left: 20px;
	background: #ffffff;
	width: 320px;
	max-height: calc(100% - 40px);
	z-index: 999;
	/* Obliga al panel a posicionarse por encima del mapa de Leaflet */
	border-radius: 12px;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
	padding: 24px;
	overflow-y: auto;
}

.seccion-filtros h4 {
	font-size: 13px;
	font-weight: 800;
	color: #1A1A1A;
	letter-spacing: 1px;
	margin-bottom: 20px;
	border-bottom: 2px solid #00FF85;
	/* Tu color verde corporativo de acento */
	padding-bottom: 8px;
	text-transform: uppercase;
}

.lista-filtros-limpia {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.lista-filtros-limpia li label {
	display: flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	color: #4B5563;
	user-select: none;
	transition: color 0.2s ease;
}

.lista-filtros-limpia li label:hover {
	color: #1A1A1A;
}

/* Estilo estilizado para los Checkboxes nativos */
.filtro-check {
	width: 18px;
	height: 18px;
	accent-color: #00FF85;
	/* Aplica tu tono verde directamente al check activo */
	cursor: pointer;
}

/* ==========================================================================
   ROW BOTONES (MOVIDO DESDE STYLE-PAGE-CONVENTION.CSS PARA USO GLOBAL)
   ========================================================================== */
.row-contacto-container {
    position: relative !important;
    width: 100% !important;
    width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    transform: none !important;
    background-color: #f9f9f9 !important;
    padding: 80px 0 !important;
    box-sizing: border-box !important;
}

.row-contacto-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
    box-sizing: border-box !important;
}

.row-contacto-inner .titulo-contacto {
    font-family: var(--font-family-normal) !important;
    font-size: 38px !important;
    max-width: 950px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #222222 !important;
    margin: 0 0 45px 0 !important;
    letter-spacing: -0.5px !important;
}

.botones-contacto-wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 30px !important;
    width: 100% !important;
}

.btn-contacto {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    color: #FFFFFF !important;
    font-family: var(--font-family-normal) !important;
    font-size: 16.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    width: 100% !important;
    max-width: 420px !important;
    height: 58px !important;
    box-sizing: border-box !important;
    transition: background-color 0.2s ease !important;
}

.btn-contacto.btn-izquierdo {
    background-color: var(--color-secundario-hex) !important;
    border-radius: 25px 0px 25px 25px !important;
}

.btn-contacto.btn-derecho {
    background-color: var(--color-boton-hex) !important;
    border-radius: 0px 25px 25px 25px !important;
}

.btn-contacto:hover {
    opacity: 0.9 !important;
}

@media (max-width: 768px) {
    .row-contacto-container {
        width: 100vw !important;
        left: 50% !important;
        margin-left: -50vw !important;
        padding: 50px 0 !important;
    }

    .row-contacto-inner .titulo-contacto {
        font-size: 26px !important;
        margin-bottom: 35px !important;
    }

    .botones-contacto-wrapper {
        flex-direction: column !important;
        gap: 15px !important;
    }

    .btn-contacto {
        max-width: 100% !important;
        border-radius: 25px !important;
    }
}

/* ==========================================================================
   ESTILOS COMPARTIDOS: FILTROS DE COMARCAS Y CATEGORÍAS
   ========================================================================== */

/* Forzar la tipografía en los títulos de las tarjetas */
.escapada-card-textos h3,
.escapada-card-titulo,
.divTitulo {
    font-family: var(--font-family-normal) !important;
    font-weight: 700 !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.2px !important;
}

/* --- ENCABEZADO DEL BLOQUE --- */
.planifica-titulo,
#rowRestaurantesFeed h2 {
    font-family: var(--font-family-rowdies) !important;
    font-weight: 500 !important;
    font-size: 44px !important;
    color: #111111 !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.5px !important;
}

.planifica-subtitulo {
    font-family: var(--font-family-normal) !important;
    font-size: 15px !important;
    color: #4B5563 !important;
    font-weight: 400 !important;
}

/* --- CONTENEDOR 1: COMARCAS --- */
.comarcas-filter {
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 25px;
}

.comarcas-filter .filter-btn {
    font-family: var(--font-family-normal) !important;
    background-color: #ffffff;
    color: #4B5563;
    border: 1px solid #D1D5DB;
    border-radius: 20px;
    padding: 6px 16px;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    box-shadow: none;
    transition: all 0.2s ease;
    outline: none;
}

.comarcas-filter .filter-btn:hover {
    border-color: var(--color-secundario-hex);
    color: var(--color-secundario-hex);
}

.comarcas-filter .filter-btn.active {
    background-color: var(--color-secundario-hex) !important;
    border-color: var(--color-secundario-hex) !important;
    color: #ffffff !important;
}

/* --- CONTENEDOR 2: CATEGORÍAS --- */
.categorias-filter {
    display: flex;
    justify-content: center;
    gap: 25px;
    flex-wrap: wrap;
    margin-bottom: 40px;
    border-bottom: 1px solid #E5E7EB;
    padding-bottom: 15px;
}

.categorias-filter .cat-btn {
    font-family: var(--font-family-normal) !important;
    background: none;
    border: none;
    padding: 0 0 4px 0;
    margin: 0;
    font-size: 14px;
    color: #4B5563;
    font-weight: 500;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
    outline: none;
    box-shadow: none;
}

.categorias-filter .cat-btn:hover {
    color: #000000;
}

.categorias-filter .cat-btn.active {
    color: #000000 !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #000000 !important;
    background: none !important;
}
