/****ADMIN COLORS PRESETS****/
.has-rojo-background-color{ background-color: var(--rojo) !important; }
.has-rojo-color{ color: var(--rojo) !important; }
.has-black-background-color{ background-color: var(--black) !important; }
.has-black-color{ color: var(--black) !important; }
.has-gris-background-color{ background-color: var(--gris) !important; }
.has-gris-color{ color: var(--gris) !important; }
.has-light-background-color{ background-color: var(--light) !important; }
.has-light-color{ color: var(--light) !important; }
.has-white-background-color{ background-color: var(--white) !important; }
.has-white-color{ color: var(--white) !important; }
.has-border-background-color{ background-color: var(--border) !important; }
.has-border-color{ color: var(--border) !important; }

*{
	scroll-margin-top: var(--header-height);
}

main{
	margin-top: var(--header-height);
}

.wp-block-lazyblock-block-card{
	height: 100%;
}
/****************************************** ACCORDION ***************************************/

.accordion-item{
	border-radius: .5rem;
	overflow: hidden;
}

.accordion-item:not(:last-child){
	margin-bottom: 1rem;
}

.accordion-header{
	margin-bottom: 0;
}
.accordion-header .accordion-button{
	width: 100%;
	padding: .75rem 2.5rem .75rem 1rem;
	background-color: var(--rojo);
	color: var(--white);
	text-decoration: none;
	border: 0 none;
	text-align: start;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' viewBox='0 0 16 16'%3E%3Cpath d='M16,11.1l-1.8,1.8-6.2-6.2L1.8,12.9l-1.8-1.8L8,3.1l8,8Z'/%3E%3C/svg%3E");
	background-position: right 1rem center;
	background-size: 1rem auto;
	background-repeat: no-repeat;
}

.accordion-header .accordion-button.collapsed{
	background-color: var(--black);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' viewBox='0 0 16 16'%3E%3Cpath d='M0,4.9l1.8-1.8,6.2,6.2,6.2-6.2,1.8,1.8-8,8L0,4.9Z'/%3E%3C/svg%3E");
}

.accordion-body{
	padding: 1.5rem 1rem;
	background-color: var(--light);
}

/****************************************** UTILITARIOS ***************************************/

.is-style-fancy{
	display: flex;
	align-items: center;
	gap: 1rem;
}
.is-style-fancy::after,
.is-style-fancy::before{
	content: '';
	display: block;
	height: 1px;
	width: 100%;
	flex: 1 0 0%;
	background-color: var(--rojo);
}
.is-style-justify{
	text-align: justify;
}
.rounded{
	border-radius: 1.1111rem;
}
.shadow{
	-webkit-box-shadow: 0 4px 4px 0 rgba(0,0,0,.1);
	box-shadow: 0 4px 4px 0 rgba(0,0,0,.1);
}

.is-style-list-ib{
	list-style: none;
	padding-left: 0;
}

.is-style-list-ib >li{
	background-image: url(../../images/list_vinet.svg);
	background-position: left top 4px;
	background-repeat: no-repeat;
	background-size: 1rem auto;
	padding-left: 1.5rem;
}

.is-style-list-ib >li:not(:last-child){
	margin-bottom: .75rem;
}

.is-style-list-ib>li>ul{
	list-style-type: disc;
	margin-top: .75rem;
}

.is-style-underline{
	border-bottom: 1px solid var(--rojo);
	padding-bottom: 1rem;
}

/****************************************** SWIPER ***************************************/

.swiper-pagination-bullet-active{
	background-color: var(--black);
}

/****************************************** HEADER ***************************************/

.site_header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: var(--header-height);
	z-index: 99;
}

.site_header_logo{
	max-width: 230px;
}

.site_nav{
	display: none;
	position: fixed;
	top: var(--header-height);
	left: 0;
	width: 100%;
	height: calc(100vh - var(--header-height));
	justify-content: flex-end;
	align-items: flex-start;
	background-color: rgba(0,0,0,.42)
}
.site_header.show .site_nav{
	display: flex;
}

.site_nav .logo{
	max-width: 3rem;
}
.site_nav .site_nav_inner{
	padding-bottom: 4rem;
	border-radius: 0 0 0 30px;
	overflow: hidden;
	overflow-y: auto;
	max-height: calc(100vh - var(--header-height));
}

.site_nav .main_menu{
	list-style: none;
	padding: 0;
	margin: 0;
}

.site_nav .main_menu li:not(:last-child){
	border-bottom: 1px solid var(--rojo);
}

.site_nav .main_menu a{
	display: block;
	font-weight: 500;
	padding: 12px 0;
	line-height: 1;
	font-size: 1.1111rem;
	text-decoration: none;
}

/****************************************** FOOTER ***************************************/

.site_footer{
	background-image: url("../../images/footer_graph.svg");
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: right center;
}

.site_footer .footer_link{
	font-weight: 500;
}

.site_footer .footer_link .icon{
	width: 1.1111rem;
	height: auto;
}

.rrss_links{
	gap: 1rem;
	padding-right: 220px;
}
.rrss_links .rrss_link{
	width: 2.77778rem;
}
.rrss_links .rrss_link svg{
	width: 100%;
	height: auto;
}

/****************************************** block_site_banner ***************************************/

.block_site_banner .block_image{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.block_site_banner .block_content{
	min-height: 630px;
	position: relative;
	z-index: 2;
}
.block_site_banner .overlay{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg,#265d5ed9 19.55%,rgba(83,127,127,.255) 48.86%,#fff0 97.73%);
}
/****************************************** SINGLE ***************************************/

.single_equipo .single_image{
	border-radius: 50%;
	overflow: hidden;
}
/****************************************** CARD ANO ***************************************/

.card_ano{
	position: relative;
	height: calc(var(--col)* 2 - 30px);
	background-color: var(--black);
	color: var(--white);
	border-radius: 1rem;
	transition: background .3s ease;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}
.card_ano a{
	color: inherit;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.5rem;
}

.card_ano:hover{
	background-color: var(--rojo);
	color: var(--white);
}
/****************************************** TAX NAV ***************************************/

.tax_nav{
	list-style: none;
	margin: 0;
	padding: 0;
	gap: .5rem;
}
.tax_nav a{
	display: block;
	padding: .25rem 1rem;
	border-radius: 4px;
	background-color: var(--light);
	color: var(--black);
	text-decoration: none;
}

.tax_nav li.current a{
	background-color: var(--black);
	color: var(--white);
}

/****************************************** PROYECTOS ***************************************/

.proyectos_lista .proyecto_item:not(:last-child){
	margin-bottom: 3rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid #eaeaea;
}

/****************************************** RESPONSIVE ***************************************/

@media only screen and (max-width: 1539px){
}

@media only screen and (max-width: 1399px){
	
	.block_site_banner .block_content{
		min-height: 545px;
	}
	
}

@media only screen and (max-width: 1199px){
	
	.site_footer{
		background-size: auto 70%;
		background-position: right bottom;
	}
	
}

@media only screen and (max-width: 991px){
	
	.site_nav .site_nav_inner{
		width: 80%;
		height: 100%;
		border-radius: 0;
	}
	
	.site_nav .logo{
		display: none;
	}
	
	.block_site_banner .overlay{
		display: none;
	}
	
	.block_site_banner .block_image{
		position: static;
	}
	.block_site_banner .block_content{
		background-color: var(--black);
		min-height: 0;
	}
	.site_footer{
		background-size: auto 40%;
	}

}

@media only screen and (max-width: 767px){
	
	.site_footer{
		background-size: auto 20%;
	}
	
	.rrss_links{
		padding-right: 30%;
	}
	
	.rrss_links .rrss_link{
		width: 2.5rem;
	}
}

@media only screen and (max-width: 575px){
	
	
	
}