/****ADMIN COLORS PRESETS****/
.has-azul-background-color{ background-color: var(--azul) !important; }
.has-azul-color{ color: var(--azul) !important; }
.has-terracota-background-color{ background-color: var(--terracota) !important; }
.has-terracota-color{ color: var(--terracota) !important; }
.has-lavanda-background-color{ background-color: var(--lavanda) !important; }
.has-lavanda-color{ color: var(--lavanda) !important; }
.has-light-azul-background-color{ background-color: var(--light-azul) !important; }
.has-light-azul-color{ color: var(--light-azul) !important; }
.has-sand-background-color{ background-color: var(--sand) !important; }
.has-sand-color{ color: var(--sand) !important; }
.has-black-background-color{ background-color: var(--black) !important; }
.has-black-color{ color: var(--black) !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-gradient-azul-background-color{ background: var(--gradient-azul) !important; }
.has-gradient-lavanda-background-color{ background: var(--gradient-lavanda) !important; }
.has-gradient-terracota-background-color{ background: var(--gradient-terracota) !important; }

main{margin-top: 6.66667rem;}
*{scroll-margin-top: var(--header-height);}
.wp-block-buttons.is-layout-flex{gap: 1.5em;}
.wp-block-group.is-layout-flex{	gap: 0;}
.page_title{font-size: 6rem;}
.border{border: 1px solid rgba(52,52,52,.42);}
.border-start{border-left: 1px solid var(--gris);}
.border-lavanda{border-color: var(--lavanda);}
.border-light{border-color: var(--light-azul);}
.wpcf7-form p{margin-bottom: 0;}
.wpcf7-spinner{
	position: absolute;
	top: calc(50% - 12px);
	right: 0;
}
.wpcf7-not-valid-tip{font-size: 14px;}
.form-floating>p{margin-bottom: .5rem;}
.wpcf7-list-item{margin: 0;}
.wpcf7-list-item-label{font-size: .88889rem;}
.wpcf7 form .wpcf7-response-output{
	margin: 1rem 0 0 0;
	padding: .25rem .75rem;
	border: 1px solid;
	font-size: .88889rem;
	border-radius: 4px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{border-color: var(--terracota);}
:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius: 1rem;}
.page-load-status{display: none;}

/****************************************** SEARCHFORM ******************************************/

.archive_search .btn_submit{
	position: absolute;
	top: calc(50% - 1rem);
	right: .5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border: 0 none;
	border-radius: 50%;
	background-color: var(--black);
	color: var(--white);
	text-decoration: none
}
.archive_search .btn_submit svg{
	width: 1rem;
	height: auto;
}

.archive_search .btn_submit:hover{
	background-color: var(--black);
	color: var(--white);
}

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

.site_header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 6.66667rem;
	z-index: 99;
	-webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
	box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
}
body.scrolled .site_header{
	height: var(--header-height);
}

.site_header_brand img{
	max-height: 4rem;
	width: auto;
}

.sub-menu,
.main_menu{
	list-style: none;
	margin: 0;
	padding: 0;
}

.main_menu{
	gap: 2rem;
}

.main_menu >li>a{
	display: flex;
	align-items: center;
	height: 3rem;
	font-family: var(--font-headlines);
	text-transform: uppercase;
	text-decoration: none;
}

.main_menu >li:hover>a{
	color: var(--azul);
	text-decoration: none;
}

.menu-item-has-children{
	position: relative;
}
.sub-menu{
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	padding: .5rem;
	background-color: var(--white);
	border-radius: 1rem;
	-webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
	box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
}

.menu-item-has-children.active>.sub-menu{
	display: block;
}

.sub-menu::after{
	content: '';
	display: block;
	position: absolute;
	bottom: 100%;
	left: calc(50% - 10px);
	border: 14px solid transparent;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-color: var(--white);
	pointer-events: none;
}

.sub-menu>li>a{
	display: flex;
	align-items: center;
	white-space: nowrap;
	height: 3rem;
	padding: .25rem .77778rem;
	border-radius: .66667rem;
	text-decoration: none;
	font-size: .88889rem;
	background-color: var(--white);
	color: var(--black);
}
.sub-menu>li>a:hover{
	background: var(--gradient-lavanda);
	color: var(--white);
}

.site_header_cta{
	margin-left: 2rem;
}

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

.site_footer_brand img{
	max-height: 3.5rem;
	width: auto;
}

.footer_menu{
	list-style: none;
	margin: 0;
	padding: 0;
	gap: .5rem 2.5rem;
}
.footer_menu a{
	text-decoration: none;
	font-weight: 600;
}

.rrss_links{
	gap: .5rem;
}
.rrss_link{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	background-color: var(--white);
	color: var(--black);
	border-radius: 50%;
	transition: all .4s ease;
}
.rrss_link svg{
	width: 1.3333rem;
	height: 1.3333rem;
}
.rrss_link:hover{
	background: var(--gradient-terracota);
	color: var(--white);
}

/****************************************** SECTION ***************************************/

.block_section{
	position: relative;
}
.block_section>.block_image{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
.block_section>.block_content{
	position: relative;
	z-index: 2;
}
/****************************************** BLOCK SLIDER ***************************************/

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
	bottom: 0;
}

.swiper-pagination{
	transform: translate3d(0, 0, 0) translatey(100%);
}

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

.block_slider .swiper-button-next, .block_slider .swiper-button-prev{
	width: 3rem;
	height: 3rem;
	color: var(--white);
	opacity: .42;
}

.swiper-button-next:hover, .swiper-button-prev:hover{
	opacity: 1;
}

.block_slider .swiper-button-next:after, .block_slider .swiper-button-prev:after{
	font-size: 1.5rem;
}

.block_slide,
.swiper_slider{
	border-bottom-left-radius: 4rem;
	border-bottom-right-radius: 4rem;
	overflow: hidden;
}
.block_slide .block_image{
	pointer-events: none;
	height: 37.1111rem;
}
.block_slide .block_content{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

/****************************************** BLOCK BUTTON ***************************************/

.block_button .block_image img{
	transition: transform .8s ease;
}
.block_button:hover .block_image img{
	transform: scale(1.15);
}

.block_button .block_content{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 2rem 0;
}

.block_button .block_content .lazyblock-inner-blocks>*{
	padding: .3em 1.5em;
	background: var(--gradient-lavanda);
}
.block_button .block_content a{
	text-decoration: none;
}
.block_button .block_content a::after{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
}
/****************************************** POWERCARD ***************************************/

.block_powercard .block_image{
	position: absolute;
	top: 0;
	right: 0;
	width: calc(50% - 15px);
	height: 100%;
	pointer-events: none;
}
.block_powercard .block_content{
	position: relative;
	z-index: 2;
	min-height: 35rem;
}
.block_powercard.rtl .block_image{
	right: auto;
	left: 0;
}
.block_powercard.rtl .block_content>.container>.row{
	justify-content: flex-end;
}
/****************************************** BREADCRUMBS ***************************************/

.block_breadcrumbs .block_list{
	list-style: none;
	margin: 0;
	padding: 0;
	gap: .5rem;
}
.block_breadcrumbs .block_list>li{
	display: flex;
	align-items: center;
}
.block_breadcrumbs .block_list>li:not(:last-child)::after{
	content: '';
	display: inline-block;
	border: 3px solid;
	border-radius: 50%;
	margin-left: .5rem;
}
.block_breadcrumbs .block_list a{
	text-decoration: none;
	font-size: 14px;
}

.block_breadcrumbs .block_list li.current{
	max-width: 9rem;
}

.block_breadcrumbs .block_list li.current a{
	opacity: .5;
}
/****************************************** CARDS ***************************************/

.card_programa .card_image::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--light-azul);
	mix-blend-mode: color;
	opacity: .5;
	transition: opacity .5s ease;
	z-index: 1;
	pointer-events: none;
}
.card_programa:hover .card_image::before{
	opacity: 0;
}

.card_programa .card_image img{
	transition: all .5s ease;
	filter: grayscale(100%);
}

.card_programa:hover .card_image img{
	filter: grayscale(0);
	transform: scale(1.15);
}

.card_noticia .card_image img{
	transition: all .5s ease;
}

.card_noticia:hover .card_image img{
	transform: scale(1.15);
}

.card_link{
	opacity: .5;
	text-decoration: none;
}
.card_link:hover{
	opacity: 1;
	color: var(--azul);
}

.card_noticia .card_content h3,
.card_programa .card_content h3{
	transition: color .5s ease;
}

.card_noticia:hover .card_content h3,
.card_programa:hover .card_content h3{
	color: var(--azul);
}
.wp-block-lazyblock-card-linea{
	height: 100%;
}
.card_linea .card_image::after{
	content:'';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 70%,rgba(255,255,255,1) 100%);
}

.card_meta ul{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}
.card_meta ul>li>a,
.card_meta ul>li>span{
	display: inline-block;
	background-color: var(--white);
	border: 1px solid rgba(9,0,21,.22);
	color: var(--black);
	white-space: nowrap;
	font-size: 12px;
	line-height: 1;
	padding: .25rem .5rem;
	text-decoration: none;
	border-radius: 50em;
}
.card_meta ul>li>a:hover,
.card_meta ul>li>span:hover{
	border-color: var(--azul);
	color: var(--azul);
}

.card_historia .card_image::after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom,  rgba(0,56,106,0) 65%,rgba(0,56,106,1) 100%);
	z-index: 0
}

.card_historia .card_image img{
	transition: transform .5s ease;
}
.card_historia:hover .card_image img{
	transform: scale(1.15)
}
.card_historia .card_content{
	background: linear-gradient(to bottom,  #00386a 0%,#8d7ab7 100%);
}

.btn_download{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3;
	color: var(--white);
}
.btn_download svg{
	width: 3rem;
	height: auto;
	position: relative;
}
.btn_download::before{
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 2.5rem);
	left: calc(50% - 2.5rem);
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background-color: rgba(0,0,0,.5);
	transition: transform .4s ease;
}
.btn_download:hover::before{
	transform: scale(1.2);
}

/****************************************** SINGLE ***************************************/

.wp-block-quote,
.wp-block-pullquote{
	padding: 1.25em;
	padding-bottom: .75em;
	border-left: .25rem solid var(--terracota);
	font-size: inherit;
	font-weight: 300;
	text-align: inherit;
}
.wp-block-quote cite,
.wp-block-pullquote cite, .wp-block-pullquote footer{
	font-size: 1rem;
	font-weight: 400;
	opacity: .7;
}

/****************************************** ACCORDION ***************************************/

.accordion-item:first-child{
	border-top: 2px solid var(--gris);
}
.accordion-item{
	border-bottom: 1px solid var(--gris);
}

.accordion-header{
	font-family: var(--font-family);
	font-weight: 400;
	margin-bottom: 0;
}
.accordion-button{
	position: relative;
	display: flex;
	width: 100%;
	min-height: 5rem;
	align-items: center;
	font-weight: inherit;
	text-align: start;
	padding: .75rem 1.5rem .75rem 0;
	border: 0 none;
	background-color: transparent;
}
.accordion-button:not(.collapsed){
	font-weight: 600;
	color: var(--azul);
}

.accordion-button::after,
.accordion-button::before{
	content: '';
	display: block;
	width: 1.22222rem;
	height: 3px;
	border-radius: 50em;
	background-color: var(--gris);
	pointer-events: none;
	position: absolute;
	right: 0;
	top: calc(50% - 1.5px);
	transition: all .3s ease;
}

.accordion-button::after{transform: rotate(45deg);}
.accordion-button::before{transform: rotate(-45deg);}

.accordion-button:not(.collapsed)::before,
.accordion-button:not(.collapsed)::after{
	background-color: var(--lavanda);
	transform: rotate(0);
}

.accordion-button:not(.collapsed)::before{
	transform: rotate(90deg);
}

.accordion-body{
	padding: 1rem 0 2.5rem 0;
}
/****************************************** SHARE ***************************************/

.block_share_rrss {
	gap: 0 .5rem;
}
.block_share_rrss a.post-share_link{
	display: inline-flex;
	text-decoration: none;
	color: var(--azul);
}
.block_share_rrss a.post-share_link svg{
	display: block;
	width: 1.25rem;
	height: auto;
}
.block_share_rrss a.post-share_link:hover{
	color: var(--terracota);
	text-decoration: none;
}
/****************************************** SWIPER ***************************************/

.swiper-slide{
	height: auto;
}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic.position-static,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic.position-static{
	transform: none;
}

.swiper-button-next.position-static, .swiper-button-prev.position-static{
	margin-top: 0;
}

.swiper-button-next, .swiper-button-prev{
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	opacity: .3;
}
.swiper-button-next:after, .swiper-button-prev:after{
	font-size: .75rem;
	font-weight: 600
}

.swiper_logos,
.swiper_logos .swiper-wrapper,
.swiper_logos .swiper-slide,
.swiper_logos .swiper-slide img{
	mix-blend-mode: multiply;
}
/****************************************** RESPONSIVE ***************************************/

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

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

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

	.site_header{
		height: var(--header-height);
	}

	.site_header_brand {
		width: 12rem;
		max-width: 40vw;
	}
	.site_header_cta{
		margin-left: 0;
	}
	.site_header_nav {
		display: none;
		position: fixed;
		top: var(--header-height);
		left: 0;
		width: 100%;
		background-color: var(--white);
		border-top: 1px solid var(--border);
		height: calc(100vh - var(--header-height));
		padding: 1.5rem 0;
		overflow: hidden;
		overflow-y: auto;
	}
	.site_header.show .site_header_nav{
		display: block;
	}
	.main_menu{
		flex-direction: column;
		gap: 0;
	}

	.main_menu >li{
		border-bottom: 1px solid var(--border);
	}
	.main_menu >li>a{
		padding: .25rem 1.5rem;
	}

	li.menu-item-has-children{
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23343434' 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");
		background-repeat: no-repeat;
		background-position: right 1.5rem top 1rem;
		background-size: .75rem;
	}
	li.menu-item-has-children.active{
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23343434' 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");
	}

	.sub-menu{
		position: static;
		border-radius: 0;
		box-shadow: none;
		transform: none;
		padding: 0 0 .5rem 0;
	}
	.sub-menu>li>a{
		padding: .25rem 1.5rem;
	}

	.block_slide .block_image{
		height: auto;
	}

	.block_powercard .block_content,
	.block_powercard .block_image{
		position: static;
		width: 100%;
		min-height: 0;
		height: auto;
	}

	.block_slide .block_image{
		height: 150vw;
	}
}

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

@media only screen and (max-width: 767px){
	.page_title{
		font-size: 3rem;
	}
	.main_menu >li>a{
		padding: .25rem 15px;
	}
	li.menu-item-has-children{
		background-position: right 15px top 1rem;
	}
	.sub-menu>li>a{
		padding: .25rem 15px;
	}

}

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

#modal-loading .modal-dialog {
	background-image: url(../../images/tail-spin.svg);
	background-position: center;
	background-repeat: no-repeat;
}

#modal-loading .modal-content {
	background-color: transparent;
	border: 0 none;
}