:root{
	--ancho-limitado:1750px;
	--barlow:'Barlow';
	--quicksand:'Quicksand';
	--avenir:'Avenir LT Std';
	--reenie:'Reenie Beanie';
	--white:rgba(255,255,255,1);
	--black:rgba(0,0,0,1);
	--grisfooter:rgba(153,152,152,1);
	--red:#CE180A;
	--gastronomia:#FC8688;
	--planes:#5CCFD7;
	--distritos:#E5C669;
	--bebidas:#5BCC81;
	--guias:rgba(166,104,104,1);
	--municipios:#830394;
}

/* Categorias */
.gastronomia{
	background-color:var(--gastronomia);
}

.planes{
	background-color:var(--planes);
}

.distritos{
	background-color:var(--distritos);
}

.bebidas{
	background-color:var(--bebidas);
}

.municipios{
	background-color:var(--municipios);
}

.guias{
	background-color:var(--guias);
}

.fgastronomia{
	background: rgb(255,169,147);
    background: linear-gradient(270deg, rgba(255,169,147,1) 0%, rgba(176,237,174,1) 100%);
}

.fplanes{
    background: rgb(112,225,233);
    background: linear-gradient(270deg, rgba(112,225,233,1) 0%, rgba(67,194,158,1) 100%);
}

.fdistritos{
	background: rgb(255,227,143);
	background: linear-gradient(93deg, rgba(255,227,143,1) 0%, rgba(34,187,86,1) 100%);
}

.fbebida{
	background: rgb(67,194,158);
	background: linear-gradient(13deg, rgba(67,194,158,1) 0%, rgba(91,204,129,1) 100%);
}

.fmunicipio{
	background: #830394;
	background: linear-gradient(90deg, rgba(131, 3, 148, 1) 0%, rgba(202, 111, 214, 0.7) 100%);;
}

.fguias{
	background: #A66668;
background: linear-gradient(90deg, rgba(166, 102, 104, 1) 0%, rgba(166, 102, 104, 0.87) 100%);
}

h2.not-found-404{text-align:center; padding:0px 20px; box-sizing: border-box; font-family:var(--quicksand); font-size:45px; margin:85px auto; display: block;}

/* OWL Carousel */

/* Owl Carousel */
.nav-btn{ height: 47px; position: absolute; width: 26px;  cursor: pointer; 
      top: 130px !important; }
.nav-collection-btn{ height: 47px; position: absolute; width: 26px;  cursor: pointer; 
      top: 150px !important; }
.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled{display:block !important;}

.owl-next{background-color:transparent !important; display:block !important; height:fit-content; margin:auto !important; top:0; bottom:0; right:20px; position: absolute; color:#fff !important;}
.owl-prev{background-color:transparent !important; display:block !important; height:fit-content; margin:auto !important; top:0; bottom:0; left:5px; position: absolute; color:#fff !important;}

.owl-next > i{
	font-size:39px;
}

.owl-prev > i{
	font-size:39px;
}

.center-text{ text-align:center; }

/* Estilos Generales */
.ancho-limitado-new{
    max-width:var(--ancho-limitado);
    margin:0 auto;
    display:block;
    padding:5px 10px;
    box-sizing: border-box;
}

.ancho-limitado-content{
	max-width:1500px;
    margin:0 auto;
    display:block;
    padding:5px 10px;
    box-sizing: border-box;
}

.flex{
	display:flex;
	flex-direction:row;
	justify-content: space-between;
	align-items:center;
}

.flex-nocenter{
	display:flex;
	flex-direction: row;
	justify-content: space-between;
	gap:20px;
}

.flex-25{
	flex-basis:25%;
}

.flex-start{
	justify-content: flex-start;
}

.space-between{
	justify-content: space-between;
}

.flex-end{
	justify-content: flex-end;
}

.color2{background-color:rgba(112,225,233,0.7) !important; transition:all 0.4s ease-in;}
.color3{background-color:rgba(67,194,158,0.7) !important; transition:all 0.4s ease-in;}
.color4{background-color:rgba(225,227,143,0.7) !important; transition:all 0.4s ease-in;}
.color5{background-color:rgba(249,206,255,0.7) !important; transition:all 0.4s ease-in;}
.color6{background-color:rgba(166,104,104,0.7) !important; transition:all 0.4s ease-in;}

.color2:hover{background-color:rgba(112,225,233,1) !important;}
.color3:hover{background-color:rgba(67,194,158,1) !important;}
.color4:hover{background-color:rgba(225,227,143,1) !important;}
.color5:hover{background-color:rgba(249,206,255,1) !important;}
.color6:hover{background-color:rgba(166,104,104,1) !important;}

/* Estilos nuevos */
div#presentacion-items-asociado > div.ancho-limitado-content > ul.list-presentacion-asociado{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
}
  
ul.list-presentacion-asociado > li{
	flex: 0 0 14%;
	padding: 10px;
	box-sizing: border-box;
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items: center;
}

ul.list-presentacion-asociado > li > label{
	font-size:clamp(14px, 1.5vw, 17px);
	font-family:var(--barlow);
	text-align:center;
}
  
ul.list-presentacion-asociado > li > img{
	width:100%;
	margin-bottom:10px;
	max-width:4vw;
}

div.guias-gastro-list{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
}

div.guias-gastro-list > div.guia-gastro-item{
	flex: 0 0 47%;
	padding: 10px;
	box-sizing: border-box;
}

div.guia-gastro-item > a > img{
	width:100px;
	height:auto;
}

/* Single de Galardon */
div.contenido-galardon{
	font-size:clamp(14px, 1.2vw, 17px);
	font-family:var(--quicksand);
	margin:65px auto;
	display:block;
}

div.contenido-galardon > h2{
	font-family:var(--reenie);
	font-size:clamp(20px, 2.5vw, 50px);
	text-align:center;
	margin-bottom:35px;
	color:var(--gastronomia);
}

div.grid-restaurantes-galardon{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content: flex-start;
	gap:15px;
}

div.grid-restaurantes-galardon > div.restaurante-item{
	flex:0 0 24%;
	padding:15px;
	box-sizing: border-box;
	background-color:#fbfbfb;
	margin-bottom:15px;
}

div.restaurante-item > a >  h3{
	font-family: 'Barlow';
    margin-top: 15px;
    text-align: center;
}

div.restaurante-item > a > div.imagen-restaurante > img{
	width:325px;
	height:300px;
	position:relative;
	object-fit: cover;
	max-width:335px;
}

/* Ajustes Generales */
#mostrar-menu{ display: block; z-index:0 !important;}
.ajuste-altura{padding-top:130px;}
.clear{clear:both;}
header{
	background-color:var(--white);
	border-bottom:3px solid var(--red);
	box-sizing: border-box;
}
footer{
	background-color:rgba(217, 217, 217, 0.2);
	padding:50px 30px;
	box-sizing: border-box;
}

/* Menú Principales  && Header */

div#zona-menu-header{
	gap:15px;
}

span#abrir-menu{
	font-size:30px;
	color:var(--black);
	cursor:pointer;
	-webkit-transition: all 0.5s ease-in;
	-moz-transition: all 0.5s ease-in;
	-o-transition: all 0.5s ease-in;
	transition: all 0.5s ease-in;
}

span#abrir-menu:hover{
	transform: rotate(90deg);
}

ul#menu-menu-nueva-web{
	display:flex;
	flex-direction:row;
	gap:15px;
}

ul#menu-menu-nueva-web > li > a{
   font-family:var(--barlow);
   text-transform:uppercase;
   font-weight: 500;
   font-size:18px;
   transition:all 0.4s ease-in;
}

ul#menu-menu-nueva-web > li > a:hover{
	color:var(--red);
}

#panel-derecho-menu > div > form{
	position: relative;
}

#panel-derecho-menu > div > form > button.search-submit{
	position: absolute;
    right: 7px;
    top: 8px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-size: 17px;
}

#panel-derecho-menu > div > form > input{
	border:1px solid var(--black);
	border-radius:5px;
	padding:8px 20px;
	font-family:var(--barlow);
	font-size:15px;
	width:190px;
}

#panel-derecho-menu > div > form > input::placeholder{
	color:var(--black);
}

/* Footer */

footer > div.ancho-limitado-new{
	position: relative;
}

img#fondo-footer-img{
	position:absolute;
	bottom:0;
	right:0;
	z-index:-300;
}

div#content-footer{
	display:flex;
	flex-direction:row;
	justify-content: space-between;
	gap:45px;
}

div#content-footer > div.box-footer{
	display: block;
	flex-grow:0;
	flex-shrink: 2.0936;
	flex-basis: 24%;
	align-self: auto;
	order: 0;
}

div#content-footer > div.box-footer > h4.title{
	font-size:22px;
	font-family: var(--barlow);
	text-transform: uppercase;
	color:var(--grisfooter);
	border-bottom:2px solid var(--grisfooter);
	padding-bottom:10px;
}

div#content-footer > div.box-footer > h4.subtitle{
	font-size:22px;
	font-family: var(--barlow);
	text-transform: uppercase;
	color:var(--grisfooter);
	border-bottom:2px solid var(--grisfooter);
	padding-bottom:10px;
	margin-top:25px;
}

div#content-footer > div.box-footer:nth-child(1){
	font-family:var(--barlow);
	font-size:18px;
	color:var(--black);
}

div#content-footer > div.box-footer:nth-child(1) > p{
	font-size:15px;
	font-family:var(--barlow);
	text-align: left;
	margin-top:6px;
}

div#logo-footer{
	text-align:center;
}

#copyright{
	font-family:var(--barlow);
	font-weight:500;
	font-size:17px;
}

div.box-footer > ul{
	line-height:35px;
}

div.box-footer > ul > li{
	border-bottom:1px solid var(--grisfooter);
}

div.box-footer > ul > li > a{
	font-size:18px;
	font-family: var(--barlow);
	color:var(--grisfooter);
	padding-bottom:2px solid var(--grisfooter);
	font-weight:200;
}

ul#redes-sociales > li{border-bottom:none;}

/* Home */

#home-block-1{
	padding:0px 10px;
	width:100%;
	box-sizing: border-box;
}

#left-block-1{
	flex-basis:28%;
}

#left-block-1 > h1{
	font-size:clamp(20px, 3vw, 54px);
	font-family:var(--avenir);
	color:var(--black);
	text-transform: uppercase;
	padding-top:100px;
}

#left-block-1 > p{
	font-size:clamp(14px, 2vw, 32px);
	text-align:left;
	font-family:var(--quicksand);
	line-height:35px;
}

#left-block-1 > p > span{
	border-bottom: 3px solid var(--red);
	padding-bottom:3px;
}

.grid-block-1 {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(2, 1fr);
grid-column-gap: 25px;
grid-row-gap: 15px;
}

.item-grid-block-1{
	position: relative;
}

.item-grid-block-1 > img{
	max-width:100%;
	height:auto;
}
.item-grid-block-1 > div{
	position:absolute;
    height: 90%;
    width:90%;
    border-radius: 50%;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.item-grid-block-1 > div:nth-child(1){
	background-color:rgba(252,134,136,0.7);
	transition:all 0.4s ease-in;
}

.item-grid-block-1 > div:nth-child(1):hover{
	background-color:rgba(252,134,136,1);
}

.item-grid-block-1 > div > a{
	text-align: center;
}

.item-grid-block-1 > div > a > img{
    max-width:100%;
	width:6vw;
	height:auto;
	text-align: center;
	margin:0 auto;
}

.item-grid-block-1 > div > a > h2{
	text-align: center;
	color:#FFF;
	font-size: clamp(16px, 2vw, 32px);
	margin-top:15px;
	font-family: var(--avenir);
	text-transform: uppercase;
}

/* Bloques Nuevos */

/* Home Block Carrusel */

section#block-destacada-home{
	margin:0px auto 45px auto;
	display:block;
	align-items: flex-end; /* Cambio: end → flex-end */
}

div#content-block-destacada-home{
	display:flex;
	flex-direction:row;
	align-items: center;
	justify-content: flex-end;
	background-image:url('../images/fondo-block-home.png');
	background-repeat: no-repeat;
	background-position: 17% 85%; /* Cambio: unificar background-position */
	background-size: 50%;
}

div.box-block-destacada-home{
	overflow:hidden;
	flex-basis:75%;
	padding:5px 15px 5px 0px;
	box-sizing: border-box;
}

div.ajustes-carrusel-home{
	display:flex;
	align-items: center;
	flex-direction:row;
	gap:20px;
	position:relative;
	overflow:hidden;
	min-height: 385px; /* Añadir altura mínima para Safari */
}

div.ajustes-carrusel-home > div{
	padding:15px 0px;
	box-sizing: border-box;
}

div.ajustes-carrusel-home > div > h3{
	font-size:48px;
	color:#FFF;
	font-family:var(--avenir);
	text-transform: uppercase;
	display:flex;
	flex-direction:row;
	justify-content: space-between;
}

div.ajustes-carrusel-home > div.imagen-box-block{
    flex-basis:30%;
    flex-shrink: 0; /* Prevenir que se encoja en Safari */
    position: relative;
    z-index: 1; /* Poner la imagen por encima del fondo verde */
}

div.ajustes-carrusel-home > div.imagen-box-block > a > img{
	width:100%;
	max-width:385px;
	height:385px; /* Remover height:auto duplicado */
	border-radius:50%;
	object-fit:cover;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	cursor: pointer;
}

div.ajustes-carrusel-home > div.imagen-box-block > a > img:hover{
	transform: scale(1.05);
	box-shadow: 0 8px 25px rgba(0,0,0,0.2);
}

div.ajustes-carrusel-home > div.info-box-block{
	width:85%; /* Aumentar el ancho para que cubra más */
	position:absolute;
	right:0px;
	top:0; /* Cambio: usar valores fijos */
	bottom:0; /* Cambio: usar top/bottom en lugar de height:97% */
	z-index: 0; /* Poner el fondo verde detrás de la imagen */
}

div.info-box-block > div{
	background-color:#b4c27b;
	padding:30px 70px 30px 240px; /* Aumentar padding izquierdo para dar más espacio */
	box-sizing: border-box;
	height:100%;
	display:flex;
	flex-direction:column;
	justify-content: center;
}

div.info-box-block > div > h3{
	font-family:var(--avenir);
	font-size: clamp(24px, 2vw, 48px);
	color:var(--white);
	text-transform: uppercase;
}

div.info-box-block > div > a{
	text-decoration: none;
}

div.info-box-block > div > a > h3{
	font-family:var(--avenir);
	font-size: clamp(24px, 2vw, 48px);
	color:var(--white);
	text-transform: uppercase;
	transition: color 0.3s ease;
}

div.info-box-block > div > a > h3:hover{
	color: #f0f0f0;
	text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

div.info-box-block > div > p{
	font-family:var(--quicksand);
	font-size:clamp(13px, 1.3vw, 18px);
	color:var(--white);
}

div.title-block-destacada-home{
	display:flex;
	flex-direction:row;
	align-items: center;
}

div.title-block-destacada-home > hr{
	height:15px;
	width:90px;
	background-color:var(--black);
	margin-bottom:0px;
	border: none; /* Añadir para consistencia entre navegadores */
}

div.title-block-destacada-home > a > h2{
	font-size: clamp(24px, 2vw, 43px);
	font-family:var(--quicksand);
	padding:10px 20px;
	color:var(--white);
	font-weight:500;
	width:310px;
	text-align:center;
	text-transform: uppercase;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-ms-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
}

div.title-block-destacada-home > a > h2:hover{
	background-color:var(--black);
}

/* Franja Inicio Destacada Home */

div#zona-inicio-destacada{
	margin-bottom:-40px;
	padding:0px 30px;
	box-sizing: border-box;
}

div.content-zona-inicio-destacada{
	display:flex;
	flex-direction:row;
	justify-content: space-between;
	align-items: flex-end; /* Cambio: end → flex-end */
	position:relative;
}

div.left-zona-inicio-destacada{
	position:relative;
}

div.left-zona-inicio-destacada > h3{
	font-family:var(--reenie);
	font-size:clamp(15px,5vw,72px);
	color:#EB90A5;
}

div.left-zona-inicio-destacada > img{
	position:absolute;
	right:10%;
}

div.right-zona-inicio-destacada > img{
	width: 92%;
	float:right;
	padding-right:15px;
}

/*** Pagina Categoria Pagina ***/
div.title-page-categorias{
	display:flex;
	flex-direction:row;
	justify-content: space-between;
	margin-bottom:60px;
	margin-top:25px;
}

div.title-page-categorias > div.left-title-page-categorias{
	display:flex;
	flex-direction:row;
	align-items: center;
}

div.left-title-page-categorias > hr{
	width:54px;
	height:10px;
	background-color:var(--black);
}

div.left-title-page-categorias > h1{
	font-size:30px;
	font-family:var(--quicksand);
	color:var(--white);
	text-transform: uppercase;
	padding:10px 25px;
}

div.content-page-categorias{
	display:flex;
	flex-direction:row;
	flex-basis:80%;
	gap:15px;
	align-items:center;
	padding:0px 20px;
	box-sizing: border-box;
}

div.content-page-categorias > h2{
	font-family:var(--quicksand);
	font-size:clamp(24px, 2vw, 51px);
	color:var(--black);
}

div.content-page-categorias > h2 > span{
	border-bottom:8px solid #CE180A;
}

div.content-page-categorias > label{
	font-family:var(--reenie);
	font-size:4vw;
}

.t-bebidas{
	color:var(--bebidas);
}

/* Funcion getChildrenCategorias */

div#box-categories-page > div.ancho-limitado-new{
	display:flex;
	flex-direction: row;
	align-items:center;
	justify-content: center;
	margin-bottom:0px;
	padding-top:35px;
}

div.box-ico-category{
	
	max-width:117px;
	width:100%;
	padding:0px 1vw 0px 1vw;
	border-left:1px solid #e5e5e5;
}

div.box-ico-category:last-child{
	border-right:1px  solid #e5e5e5;
}

div.box-ico-category > a{
	display:flex;
	flex-direction: column;
	align-items:center;
}

div.box-ico-category > a > img{
	width: fit-content;
	max-width:38px;
}

div.box-ico-category > a > label{
	font-size:15px;
	text-transform: uppercase;
	font-family:var(--quicksand);
	font-weight:600;
	margin-top:15px;
	text-align:center;
}

img.img-zona-recomendado{
	float:right;
	margin-bottom:-43px;
}

div.box-zona-recomendado{
	display:flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

div.box-zona-recomendado > label{
	font-family:var(--reenie);
	font-size:3.6vw;

}

div.box-zona-recomendado > hr{
	height:15px;
	background-color:var(--gastronomia);
	color:red;
	width:75%;
	margin-top: 15px;
}

/** Bloque de Grid Restaurantes **/

div#grid-restaurantes-box{
	margin:45px auto;
	display:block;
	padding:0px 35px;
	box-sizing: border-box;
}


div#grid-restaurantes-box > div.ancho-limitado-new{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(380px, 1fr));
	gap:40px;
	flex-wrap:wrap;
}

div#grid-restaurantes-box > div.ancho-limitado-new > div.box-grid-restaurante{
	flex: 1 1 350px; /* grow shrink basis */

	border-bottom:2px solid #CE180A;
	margin-top:20px;
}


div.box-grid-restaurante > div.img-box-grid-restaurante{
	width:100%;
	height:415px;
	position:relative;
	transition:all 0.4s ease-in;
}

div.img-box-grid-restaurante > div.link-categories{
	position:absolute;
	top:15px;
	left:-15px;
}

div.img-box-grid-restaurante > div.link-categories > a{
	color:#FFF;
	font-size:19px;
	font-family:var(--avenir);
	text-transform: uppercase;
	padding:5px 15px;
}

div.img-box-grid-restaurante > a > img{
	width:100%;
	object-fit: cover;
	height:415px;
	transition: all 0.4s ease-in;
}

div.galeria-asociado-item{
	width:100%;
	height:650px;
	overflow:hidden;
	position:relative;
}

div.galeria-asociado-item > img{
	width:100%;
	height:100%;
	object-fit: cover;
}


div.text-box-grid-restaurante{
	padding:25px 0px;
}

div.text-box-grid-restaurante > a > h2{
	font-size:23px;
	text-transform: uppercase;
	color:#CE180A;
	font-family:var(--avenir);
}

div.text-box-grid-restaurante > p{
	font-size:16px;
	font-family:var(--quicksand);
	color:#000000;
}


/* Paginación */

nav#paginacion-block{
	margin-bottom:45px;
	display:block;

}
nav#paginacion-block > ul{
	display:flex;
	justify-content: center;
	gap:60px;
}

nav#paginacion-block > ul > li{
	padding:10px 25px;
}

nav#paginacion-block > ul > li > a{
	color:#FFF;
	font-family:var(--avenir);
	transition:all 0.4s ease-in;
}

nav#paginacion-block > ul > li > a:hover{
	color:#000;
}

/* Pagina de Distritos Y Municipios */
div#grid-listado-distritos > div > label{
	display: block;
    width: fit-content;
    padding: 15px 20px;
    font-size: 33PX;
    color: #ffffff;
    font-family: var(--reenie);
    border-radius: 50%;
}

div.letras-list{
	display:flex;
	flex-direction:row;
	margin:20px 0px;
	gap:20px;
	padding-left:20px;
}

div.letras-list > a{
	color:#6a6666;
	font-size:19px;
}


/* Municipios */
#grid-municipios{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    margin-top: 45px;
    padding-left: 5vw;
    padding-right: 5vw;
}

#grid-municipios > div.item-grid-municipios{
    width: 100%;
    margin-bottom: 25px;
}

#grid-municipios > div.item-grid-municipios > a >  div.overlay{
    width: 100%;
    height: 320px;
    background-size: cover;
    position: relative;
	background-position:center;
}

#grid-municipios > div.item-grid-municipios > a > div.overlay > a{
    padding: 10px 20px;
    box-sizing: border-box;
    width: 100%;
    display: block;
}

div.item-grid-municipios > a > div.overlay > h2{color:#FFF; position:absolute; width:100%; bottom:0; background-color:#830394; text-align:center; padding:10px 0px; font-family:var(--avenir);}

/* Mapa de Municipios */
div.item-punto-mapa > label{font-size:21px; font-family:var(--avenir); color:#000000; margin-bottom:0px; display:block; clear:both;}
div.item-punto-mapa > a{background-color: #830394;width: 100%; display: block; text-align: center; border-radius:10px;color: #FFF;font-family: var(--avenir); font-size: 15px; padding-top: 7px;
}

/* Pagina de Restaurantes */
div.list-categorias-restaurante{margin-top:120px; margin-bottom:20px; display:block;}
hr.separador-restaurantes{background-color:var(--gastronomia); width:100%; height:5px;}
hr.separador-municipios{background-color:#830394; width:100%; height:5px;}
div.contenido-asociado{display: flex; flex-direction: column; justify-content: space-between; }
div.contenido-asociado > picture{max-width:650px; width:100%;}
div.contenido-asociado > picture > img{width:100%; height:550px; object-fit: cover;}
div.left-contenido-asociado{width:100%;}
div.left-contenido-asociado > picture{width:100%; display:block;padding-top:25px;}
div.left-contenido-asociado > picture > img{width:100%; object-fit: cover; height:450px;}

section#single-asociado > div.ancho-limitado-content > h1{margin-top:35px; font-size:clamp(45px, 5vw, 75px); font-family:var(--reenie); color:var(--gastronomia); text-align:center; margin-bottom:40px; display:block;}
div.right-contenido-asociado > div.content-right-asociado > p{font-size:17px; font-family:var(--quicksand);}
div.images-contenido-asociado{display:flex; flex-direction:row; justify-content: space-between;}
div.images-contenido-asociado > picture{width:100%; max-width:650px;}
div.images-contenido-asociado > picture > img{height:520px; width:100%;object-fit: cover;}
div.galeria-pictures-asociado{flex-basis:45%;}
div.galeria-pictures-asociado > div.imgs-galeria-asociado{display: flex; flex-direction: row;flex-wrap: wrap;flex-basis: 40%;gap: 10px;}
div.galeria-pictures-asociado > div.imgs-galeria-asociado > a > img{width:100%; max-width:250px;}
div.content-right-asociado > p > img{width:100%; max-width:650px;}
#breadcrumb{text-align:center;}

div.more-contenido-asociado > h2{font-size:clamp(45px, 5vw, 75px); font-family:var(--reenie); color:var(--gastronomia); text-align:center; margin:65px auto 25px auto; display:block;}
div.more-contenido-municipio > h2{font-size:clamp(45px, 5vw, 75px); font-family:var(--reenie); color:#830394; text-align:center; margin:65px auto 25px auto; display:block;}

div.contact-container{width:100%;margin:20px auto 0px auto;padding:40px;font-family:var(--avenir);background:rgba(240,127,129,0.8); box-sizing: border-box;}
div.contact-container > div.contact-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(400px,1fr)); gap:20px;}
div.contact-item{display:flex; align-items: center; gap:12px; padding:10px;}
div.contact-item > div.text{ color: #fff; font-size: 22px;font-weight: 300; line-height:28px;}
div.contact-item > div.icon{font-size:27px;}

div#cards-grid{display:grid; grid-template-columns: repeat(auto-fill, minmax(300px,1fr)); gap:30px; padding:20px;}
div#cards-grid > div.box-card-grid{width:100%; overflow:hidden;}
div.box-card-grid > img{width:100%; height:200px; object-fit: cover;}
div.box-card-grid > a > div.card-content{padding:15px; background-color:var(--gastronomia); margin-top:-2px; color:#FFF;}
div.card-content-guias{background-color:var(--guias) !important; text-align:center;}
div.box-card-grid > div.card-content > h2{font-size:19px; font-family:var(--avenir); color:#FFF;}
div#content-cards-grid{margin-bottom:45px; display:block;}

/* Presentacion Municipio */
#presentacion-municipio{
	font-family:var(--quicksand);
}
#presentacion-municipio .ancho-limitado-new {
    display: flex;
    flex-wrap: wrap;
	margin-top:20px;
}

div.asociados-grid > div.asociado-item > img{
	width:100%;
	height:250px;
	object-fit:cover;
	object-position:top;
}

#presentacion-municipio .box-left-municipio,
#presentacion-municipio .box-right-municipio {
    flex: 1 1 50%;
    box-sizing: border-box;
    padding: 10px;
}

#presentacion-municipio .box-left-municipio{
	padding:0px 10px 0px 10px;
}

#presentacion-municipio .box-left-municipio img {
    width: 100%; 
    height: 450px;
	object-fit: cover;
}

@media (max-width: 768px) {
    #presentacion-municipio .box-left-municipio,
    #presentacion-municipio .box-right-municipio {
        flex: 1 1 100%;
		padding-top:0px;
    }
}

div#presentacion-municipio {
    position: relative;
}

div.title-box-municipio {
    background-color: #830394;
    position:relative;
    width: 95%;
	margin:0 auto;
	display:block;
}

div.title-box-municipio > h1 {
    font-size: 75px;
    font-family: 'Reenie Beanie';
    text-align: center;
    color: #FFF;
    padding: 30px;
    box-sizing: border-box;
}

.info-general-municipio{
	line-height:30px;
}

.asociados-grid {
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
	margin-bottom:45px;
	padding:0px 40px;
}
.asociado-item {
	flex:1 1 250px;
	box-sizing: border-box;
	border: 1px solid #ddd;
	padding: 10px;
	border-radius: 5px;
	background-color: #830594;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
}

.asociado-item:hover {
	background-color: #830594a1;
}

.asociado-item > a > h3{
	font-family:var(--quicksand);
	padding-top:15px;
	color:#FFF;
	text-align: center;
	font-size:19px;
	padding-bottom:10px;
}
.asociado-thumbnail img {
	width: 100%;
	height: auto;
	border-radius: 5px;
	height:250px;
	object-fit: cover;
}
.asociado-excerpt {
	margin-top: 10px;
}

div.mapa-municipio-asociados{
	margin-bottom:45px;
}

/* Pagina de Taxonomia Asociados */
#info-categoria-asociado {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 20px;
	margin-top:60px;
	padding:0px 30px;
}

.box-info-catasociado {
    flex: 1 1 45%; /* Ajusta el tamaño de las columnas */
    box-sizing: border-box;
	display:block;
}

.box-info-catasociado:first-child > img{
	height:550px;
	object-fit:cover;
	width:100%;
}

.box-info-catasociado:last-child{
	padding-left:20px;
	box-sizing: border-box;
}

.box-info-catasociado:last-child > div.description-box-info-catasociado > p{
	font-size:clamp(16px, 1.5vw, 19px);
	font-family:var(--quicksand);

}

.box-info-catasociado > h1{
	font-family:var(--reenie);
	font-size:75px;
	color:var(--gastronomia);
}

.box-info-catasociado > h2{
	font-family:var(--barlow);
	margin-top: 10px;
    font-weight: 500;
    font-size: 20px;
    font-style: italic;
    display: block;
}

.box-info-catasociado img {
    max-width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 768px) {
    #info-categoria-asociado {
        flex-direction: column;
    }

    .box-info-catasociado {
        flex: 1 1 100%;
    }
}


.grid-container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 20px;
}

.grid-item {
	padding: 10px;
	text-align: center;
}

.grid-item-inner{
	height:380px;
}

.grid-item-inner > a > img {
	max-width: 100%;
	height: 260px;
	object-fit: cover;
}

.grid-item img {
	max-width: 100%;
	height: auto;
}

.grid-item h2 {
	font-size: 1.2em;
	margin: 10px 0 0;
}

@media (max-width: 768px) {
	.grid-container {
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	}
}

@media (max-width: 480px) {
	.grid-container {
		grid-template-columns: 1fr;
	}
}

/* Menú Movil */
.menu-container {
	position: fixed;
	top: 0;
	left: -25%;
	width: 25%;
	height: 100%;
	background-color:#FFF;
	transition: left 0.3s ease;
	overflow-y: auto;
	z-index: 999;
	box-shadow: 2px 0 5px rgba(0, 0, 0, 0.5);
}

/* Clase para mostrar el menú */
.menu-container.active {
	left: 0;
}

/* Estilos para el menú de WordPress */
#menu-movil {
	padding: 60px 20px 20px;
	color: white;
}

#menu-movil-nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

#menu-movil-nav li {
	margin-bottom: 10px;
}

#menu-movil-nav a {
	display: block;
	color: #000;
	text-decoration: none;
	padding: 10px;
	border-radius: 5px;
	transition: background 0.3s;
	font-family:var(--avenir);
	font-size:20px;
	font-weight:200;
	-webkit-transition: all 1.2s ease-in;
	-moz-transition: all 1.2s ease-in;
	-ms-transition: all 1.2s ease-in;
	-o-transition: all 1.2s ease-in;
	transition: all 1.2s ease-in
}

#menu-movil-nav a:hover {
	background: rgba(255, 255, 255, 0.486);
}


/* Estilos para submenús */
#menu-movil-nav .sub-menu {
	padding-left: 20px;
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease;
}

#menu-movil-nav .menu-item-has-children > a {
	position: relative;
}

#menu-movil-nav .menu-item-has-children > a:after {
	content: '+';
	position: absolute;
	right: 85px;
	transition: transform 0.3s;
}

#menu-movil-nav .menu-item-has-children.active > a:after {
	transform: rotate(45deg);
}

#menu-movil-nav .menu-item-has-children.active > .sub-menu {
	max-height: 500px;
	padding-top:10px;
}

.menu-overlay{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.5);
	z-index:998;
	display:none;
}

.menu-overlay.active{
	display:block;
}

div.logo-menu-movil{
	width:100%;
	text-align:center;
	padding-top:20px;
	border-bottom:3px solid red;
	background-color:#FFF;
}

div.logo-menu-movil > a > img{
	width:140px;
}

div.guia-participantes{
	margin:40px auto;
	display:block;
}

div.guia-participantes > h2{
	width:100%;
	color:var(--guias);
	box-sizing: border-box;
	font-family:var(--avenir);
	font-size:25px;
	text-align:center;
	padding:10px 20px;
	font-size:45px;
	font-weight:500;
}

/* Buscador */

.search-title {
    font-size: 24px;
    color: #333;
}

.search-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.search-result-item {
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.search-result-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.result-thumbnail img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.result-content {
    padding: 15px;
}

.result-title {
    font-size: 19px;
    margin: 0 0 10px 0;
	font-family:var(--avenir);
	padding:10px 0px;
}

.result-title a {
    color: #333;
    text-decoration: none;
}

.result-meta {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
}

.result-type {
	display: block;
    text-align: center;
    padding: 3px 8px;
    border-radius: 12px;
    margin-right: 10px;
    font-family: var(--barlow);
    background-color: #ce1809;
    color: white;
	font-size:16px;
}

h2.search-type-title{
	background-color: #ce1809;
    color: #fFF;
    font-family: var(--avenir);
    padding: 10px 15px;
    text-align: center;
    margin-bottom: 20px;
}

.result-excerpt {
    font-size: 14px;
    color: #666;
    line-height: 1.5;
	font-family:var(--quicksand);
}

.result-excerpt > p{
	margin-top:0px;
}

.no-results {
    text-align: center;
    padding: 50px 0;
}

.pagination {
    text-align: center;
    margin-top: 30px;
}

.pagination .page-numbers {
    padding: 5px 10px;
    margin: 0 5px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: #333;
}

.pagination .current {
    background: #333;
    color: #fff;
}

/* Footer ajustes */
.list-container {
    max-height: 195px; /* Altura para mostrar 5 elementos */
    overflow: hidden;
    position: relative;
    transition: max-height 0.3s ease;
}

.list-container.expanded {
    max-height: 1000px; /* Altura suficiente para mostrar todos los elementos */
}

.expand-btn {
    text-align: left;
    cursor: pointer;
    color: #c0c0c0;
    padding: 10px 0;
    user-select: none;
    font-family: var(--barlow);
}

.expand-btn:hover {
    text-decoration: underline;
}

/* Barra Movil */

div#barra-movil{
	display:none;
	position:fixed;
	bottom:0px;
	left:0px;
	width:100vw;
	z-index:99999;
	background: rgb(63,62,62);
    background: linear-gradient(180deg, rgba(63,62,62,1) 0%, rgba(0,0,0,1) 100%);
	padding-bottom: env(safe-area-inset-bottom);
}

div#barra-movil > div.content-barra-movil{
	display:flex;
	flex-direction:row;
	justify-content: space-between;
	align-items:center;
	padding:10px 30px;
	box-sizing: border-box;
}

div#barra-movil > div.content-barra-movil > a{
	display:flex;
	flex-direction:column;
	align-items:center;
	color:#FFF;
	font-family:var(--avenir);
	gap:8px;
	font-weight:300;
	font-size:13px;
}

div#barra-movil > div.content-barra-movil > a > svg{
	width:25px;
	height:25px;
}


div.content-barra-movil > div > form{
	position: relative;
}

div.content-barra-movil > div >form > button.search-submit{
	position: absolute;
    right: 7px;
    top: 8px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-size: 17px;
}

div.content-barra-movil > div > form > button.search-submit > i{
	color:#FFF;
}

div.content-barra-movil > div>  form > input{
	border:1px solid var(--black);
	border-radius:5px;
	padding:8px 20px;
	font-family:var(--barlow);
	font-size:15px;
	width:130px;
	background-color:#555555;
}

div.content-barra-movil > div > form > input::placeholder{
	color:#FFF;
}

section#block-movil-home-type{
	display:none;
}

div.box-item-movil-home-type {
    padding: 35px 25px;
    box-sizing: border-box;
    position: relative;
}

div.image-box-movil-home-type {
    height: 400px;
    background-size: cover;
    position: relative;
}

div.overlay-image-box-movil {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -background-color: rgba(206, 24, 10, 0.82);
	background-blend-mode: multiply;
    z-index: 1;
}

div.text-overlay-container {
    position: absolute;
    bottom:10px;
	left:10px;
    z-index: 2;
    padding: 10px;
    border-radius: 5px;
}

div.text-overlay-image-box-movil {
    color: white;
    font-size: 31px;
    text-align: left;
}

div.content-box-movil-home-type{
	padding:10px 20px;
	font-family:var(--quicksand);
	border-left:2px solid red;	
	margin-top:20px;
}

div.content-box-movil-home-type > p{
	margin-top:0px;
	font-size:clamp(16px, 2vw, 22px);
	font-family:var(--avenir);
	color:black;
	font-weight:100;
}

label.sobre-image-box-movil{
	color:#FFF;
	text-transform:uppercase;
	right:-20px;
	top:25px;
	position:absolute;
	z-index:5;
	padding:10px 10px 10px 60px;
	font-family:var(--barlow);
	font-size:clamp(16px, 2vw, 25px);
}

div#children-categories-movil{
	display:none;
}


div.button-box-categorias-movil{
	width:100vw;
}
div.button-box-categorias-movil > button{
	border: none;
    width: 100vw;
    padding: 20px;
    font-family: var(--avenir);
    background-color: #ce180a;
    color: #FFF;
}

div#box-categories-page-movil > .ancho-limitado-new{
	display:flex;
	flex-direction:column;
}

.no-planes-asociado{
	font-family:var(--barlow);
	font-size:20px;
	text-align:center;
	margin-top:45px;
	margin-bottom:45px;
}

/* Personalizar Iconos */
.menu-inicio > a{
	background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(214, 214, 214, 1) 100%);
}

ul#menu-menu-movil-web > li:first-child > a:hover, ul#menu-menu-movil-web > li:last-child > a:hover{
	background-color:#FFF;
}

ul#menu-menu-movil-web > li:first-child > a::before, ul#menu-menu-movil-web > li:last-child > a::before{
	content:"\f015";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 10px;
	color:#787878
}

.menu-gastronomia > a{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(252,134,136,1) 100%);
}
.menu-gastronomia > a::before{
	content:"\f2e7";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 10px;
	color:#787878;
}

.menu-planes-eventos > a{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(92,207,215,1) 100%);
}
.menu-planes-eventos > a::before{
	content:"\f5a0";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 10px;
	color:#787878;
}

.menu-distritos > a{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(229,198,105,1) 100%);
}

.menu-distritos > a::before{
	content:"\e587";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 10px;
	color:#787878;
}

.menu-bebidas > a{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(91,204,129,1) 100%);
}

.menu-bebidas > a::before{
	content:"\e4f4";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 20px;
	color:#787878;
}

.menu-municipios > a{
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(199,85,214,1) 100%);
}

.menu-municipios > a::before{
	content:"\f1ad";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	margin-right: 20px;
	color:#787878;
}

/* Cambios asociados */
div.right-contenido-asociado{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 10px;
	padding:0px 40px;
	box-sizing: border-box;
}

div.right-contenido-asociado > div.content-right-asociado{
	flex: 0 0 70%; /* Crece, encoge, tamaño mínimo */
	padding: 20px;
	text-align: center;
}

div.right-contenido-asociado > div#zona-asociados-details{
	flex: 1;
	padding-top:45px;
}

div.info-zona-asociados{
	background-color:rgb(250 250 250);
	padding:20px;
	box-sizing: border-box;;
	text-align:left;
}

div.zona-asociados-details-plus{
	background-color:rgb(250 250 250);
	padding:20px;
	box-sizing: border-box;;
	text-align:center;
}

div.zona-asociados-details-plus:nth-child(1){
	margin-bottom:20px;
}

div.zona-asociados-details-plus:nth-child(2){
	margin-bottom:25px;
}

div.zona-asociados-details-plus > h3{
	font-family:var(--reenie);
	font-size:clamp(36px, 2vw, 40px);
	color:var(--gastronomia);
	margin-bottom:10px;
}

div.info-zona-asociados > h2{
	font-family:var(--reenie);
	font-size:clamp(16px, 2vw, 39px);
	color:var(--gastronomia);
	text-align:center;
	margin-bottom:25px;
}

div.box-gris-info{
	background-color:#f8f8f8;
	padding:30px 45px;
	box-sizing:border-box;
	text-align:left;
}

div.box-gris-info > a{
	font-family:var(--barlow);
	padding:7px 40px;
	color:#FFF;
	border-radius:5px;
	background-color:#fa8688;
}

div.box-gris-info > h2{
	font-size:clamp(20px, 2vw, 30px);
	margin-bottom:15px;
	display:block;
	font-family:var(--barlow);
	margin-bottom:35px;
}

span.icon{
	font-family:var(--barlow);
	width:100%;
	display:block;
	margin-bottom:25px;
}

span.icon > a{
	color:#787878;
}

hr.separador-info-details{
	background-color:var(--gastronomia);
	width:100%;
	height:5px;
	margin-bottom:25px;
}

div.info-zona-asociados > a{
	background-color: #fa8688;
    width: 100%;
    display: block;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    color: #FFF;
    font-family: 'Roboto';
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
}

div.info-zona-asociados > a:hover{
	background-color: #ce180a;
}

div.box-tags-details{
	margin-top:20px;
	display:block;
}

div.box-tags-details > h3{
	font-family:var(--quicksand);
	font-size:clamp(16px, 2vw, 20px);
	color:var(--gastronomia);
	text-align:center;
	margin-bottom:25px;
}

div.box-tags-details > ul.tags-list{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:10px;
	justify-content:center;
	margin-top:45px;
}

ul.tags-list > li{
	padding: 10px 15px;
    background-color: #e6e6e6;
    border-radius: 5px;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
	cursor:pointer;
}

ul.tags-list > li:hover{
	background-color: var(--gastronomia	);
}

ul.tags-list > li:hover > a{
	text-decoration:none;
	color:#FFF;
}

ul.tags-list > li > a{
	color:#5c5c5c;
	font-family:var(--barlow);
	font-size:clamp(12px, 2vw, 16px);	
}

/* TAGS LIST */
ul.tags-list-2 > li{
	padding: 10px 15px;
    background-color: #e6e6e6;
    border-radius: 5px;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
	cursor:pointer;
	display:flex; 
	align-items: center;
	font-family:var(--barlow);
	margin-bottom:10px;
}

ul.tags-list-2 > li > img{
	width:30px;
	padding-right:10px;
}

ul.tags-list-2 > li:hover{
	background-color: var(--gastronomia	);
}

ul.tags-list-2 > li:hover > a{
	text-decoration:none;
	color:#FFF;
}

ul.tags-list-2 > li > a{
	color:#5c5c5c;
	font-family:var(--barlow);
	font-size:clamp(12px, 2vw, 16px);	
}

div.zona-asociados-details-plus > img.logo-hosteleria-sostenible{
	width:250px;
	margin-top:25px;
}

div.zona-asociados-details-plus > a > img.rosco-sostenibilidad{
	width:100%;
	cursor:pointer;
}

div.share-asociado{
	width:100%;
	display:block;
	text-align:center;
	margin:45px auto;
}

div.redes-sociales-asociado{
	margin:30px auto;
	display:flex;
	flex-direction:row;
}

div.redes-sociales-asociado > a > span{
	font-size:23px;
	display:block;
	margin:0px 20px 0px 0px;
	color:var(--gastronomia);
}

/* Platino verde */
div.platino-verde-box > img{
	width:80px;
	margin:40px auto;
	display:block;
}

div.platino-verde-box > label{
	font-family:var(--barlow);
}

div.acf-logos{
	display:flex;
	flex-direction:row;
	align-items: center;
	gap:20px;
	margin-bottom:60px;
}

div.acf-logos > img{
	width:140px;
	object-fit:contain;
}

div.botones-anclas-municipio{
	width:100%;
	max-width:1200px;
	margin:0px auto 40px auto;
	display:block;
	text-align:center;
}

div.botones-anclas-municipio > button{
	background-color: #FFF;
    padding: 10px 20px;
    border: 4px solid #831094;
    font-family: 'Barlow';
    font-size: 16px;
    color: #831094;
	cursor:pointer;
	-webkit-transition: all 0.3s ease-in;
	-moz-transition: all 0.3s ease-in;
	-o-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
}

div.botones-anclas-municipio > button:hover{
	background-color: #831094;
	color: #FFF;
}

input.wpcf7-text{
	font-family: 'Avenir LT Std' !important;
    font-size: 19px;
}