/****ADMIN COLORS PRESETS****/
.has-azul-background-color{ background-color: var(--azul) !important; }
.has-azul-color{ color: var(--azul) !important; }
.has-celeste-background-color{ background-color: var(--celeste) !important; }
.has-celeste-color{ color: var(--celeste) !important; }
.has-rosado-background-color{ background-color: var(--rosado) !important; }
.has-rosado-color{ color: var(--rosado) !important; }
.has-verde-background-color{ background-color: var(--verde) !important; }
.has-verde-color{ color: var(--verde) !important; }
.has-ambar-background-color{ background-color: var(--ambar) !important; }
.has-ambar-color{ color: var(--ambar) !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-light-rosa-background-color{ background-color: var(--light-rosa) !important; }
.has-light-rosa-color{ color: var(--light-rosa) !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; }

html,
body {
	overflow-x: clip;
}

main{
	margin-top: 6.66667rem;
}

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

:where(.is-layout-flex){
	gap: 0;
}

.page-load-status{
	display: none;
}
/****************************************** contact form ***************************************/

/****************************************** share_rrss ***************************************/

.share_rrss{
	gap: .75rem;
}
.share_rrss .share_link svg{
	width: 1.5rem;
	height: 1.5rem;
}
.share_rrss .share_link{
	color: var(--black);
}
.share_rrss .share_link:hover{
	color: var(--azul);
}
/****************************************** BLOCKS ***************************************/

.wp-block-list.is-style-list-asterisk,
.list-asterisk{
	list-style: none;
	margin: 0;
	padding: 0;
}
.wp-block-list.is-style-list-asterisk li,
.list-asterisk li{
	padding-left: 1.5em;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%2316428C' viewBox='0 0 16 16'%3E%3Cpath d='M8.851.916l.624,4.375,3.809-2.24c.411-.241.939-.103,1.18.308.193.33.146.748-.116,1.026l-3.031,3.215,4.126,1.582c.445.17.667.669.497,1.113-.137.358-.494.583-.877.551l-4.4-.366,1.335,4.212c.144.454-.107.938-.561,1.082-.365.116-.763-.024-.977-.342l-2.462-3.671-2.46,3.672c-.261.398-.795.509-1.194.248-.326-.214-.468-.619-.346-.989l1.339-4.216-4.4.366c-.474.04-.891-.313-.931-.787-.032-.382.193-.74.551-.877l4.123-1.578-3.032-3.215c-.326-.347-.309-.892.038-1.218.279-.262.696-.309,1.026-.116l3.809,2.24.624-4.375c.069-.471.506-.797.977-.729.377.055.674.351.729.729'/%3E%3C/svg%3E");
	background-position: top .2em left;
	background-repeat: no-repeat;
	background-size: .88889em;
}
.wp-block-list.is-style-list-asterisk li:not(:last-child),
.list-asterisk li:not(:last-child){
	margin-bottom: .5rem;
}

/****************************************** UTILITIES ***************************************/

.frame svg{
	display: block;
}

span.underline-wave{
	display: inline;
	text-decoration: none; 
	/* Creates space for the underline beneath the text */
	padding-top: .05em;
	padding-bottom: .1em; 
	/* Embeds a seamless, repeating SVG wave */
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38.627 11'><path d='M38.627,5.5c-5.333,5.333-13.979,5.334-19.312.002l-.002-.002c-5.333-5.333-13.979-5.333-19.313,0h0' fill='none' stroke='%23F3AECE' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	/* Repeats the wave horizontally along the bottom */
	background-position: bottom left;
	background-repeat: repeat-x;
	background-size: auto .2037037em;
	-webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.graph{
	position: absolute;
	pointer-events: none;
	z-index: 2;
}

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

.swiper-slide{
	height: auto;
}

.swiper-nav-button{
	padding: 0 .75rem;
	border: 0 none;
	color: var(--azul);
	background-color: transparent;
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
	transform: none !important;
}

.swiper-pagination-bullet-active{
	background-color: var(--azul);
}
.block_navigation{
	align-items: center;
}

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

.site_header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 6.66667rem;
	z-index: 998;
	-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: 5rem;
	width: auto;
}

body.scrolled .site_header_brand img{
	max-height: 3.888889rem;
}

.main_menu{
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	justify-content: flex-end;
	gap: 3rem;
}

.main_menu>li:not(.cta)>a{
	display: flex;
	height: 3rem;
	align-items: center;
	font-weight: 600;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--black);
}
.main_menu>li:not(.cta)>a:hover{
	text-decoration-line: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 2px;
	text-decoration-color: var(--rosado);
}

.main_menu .menu-item-has-children{
	position: relative;
}
.main_menu .sub-menu{
	display: none;
	position: absolute;
	top: 100%;
	left: -1rem;
	list-style: none;
	margin: 0;
	background-color: var(--white);
	padding: 1rem 0;
	border-bottom: 3px solid var(--azul);
	-webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
	box-shadow: 0 0 15px 0 rgba(0,0,0,.1);
	visibility: hidden;
}

.menu-item-has-children.active >.sub-menu{
	display: block;
	visibility: visible;
}
.main_menu>li.current-menu-item:not(.cta)>a{
	color: var(--azul);
}

.sub-menu a{
	font-weight: 600;
	display: block;
	padding: .25rem 2rem .25rem 1rem;
	white-space: nowrap;
	text-decoration: none;
	color: var(--black);
}
.sub-menu a:hover{
	text-decoration-line: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 2px;
	text-decoration-color: var(--azul);
}

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

.site_footer a{
	color: inherit;
}

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

.rrss_links{
	gap:1rem;
}
.rrss_links a{
	text-decoration: none;
}
.rrss_links a:hover{
	color: var(--azul);
}
.rrss_links .rrss_link svg{
	width: 1.5rem;
	height: 1.5rem;
}

.footer_menu a{
	text-decoration: none;
}
.footer_menu a:hover{
	text-decoration-line: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 2px;
	text-decoration-color: var(--azul);
}

/****************************************** BLOCK WHATSAPP ***************************************/

.block_whatsapp{
	position: fixed;
	bottom: 1.5rem;
	right: 1.5rem;
	z-index: 999;
}
.block_whatsapp .block_button{
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 50%;
	background-color: var(--whatsapp);
	color: var(--white);
	z-index: 999;
}
.block_whatsapp .block_button svg{
	width: 1.75rem;
	height: 1.75rem;
}

/****************************************** HERO ***************************************/

.block_hero{
	z-index: 2;
}

.block_hero .block_content{
	min-height: 100vh;
	position: relative;
}
.block_hero .block_video{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.block_hero .frame{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.block_hero .graph_01{
	right: -3rem;
	top: 18%;
	width: calc(var(--col)*6);
}
.block_hero .graph_02{
	left: 3rem;
	bottom: 0;
	width: calc(var(--col)*3 - 30px);
	transform: translateY(30%);
}

/****************************************** CARDS ***************************************/

.card_taller .card_image{
	width: 62%;
	overflow: hidden;
}

.card_button .card_image img,
.card_taller .card_image img{
	transition: transform .4s ease;
}
.card_button:hover .card_image img,
.card_taller:hover .card_image img{
	transform: scale(1.2);
}

.card_taller .card_content{
	flex: 1 0 0%;
	padding: 3rem 2rem;
	align-items: flex-start;
	justify-content: center;
}

.card_button .card_image::before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom,  rgba(0,0,0,.3) 0%,rgba(0,0,0,0.42) 100%);
	opacity: 0;
	transition: opacity .4s ease;
	z-index: 1;
}
.card_button:hover .card_image::before{
	opacity: 1;
}
.card_button .card_content{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.46) 100%);
	z-index: 2;
}
.card_button .card_link{
	opacity: 0;
	transition: opacity .2s ease;
}
.card_button:hover .card_link{
	opacity: 1;
}
.card_button .card_link svg{
	width: 1.75rem;
	height: auto;
}

.card_button .card_content>.lazyblock-inner-blocks{
	flex: 1 0 0%;
}

/****************************************** PAGE HEADER ***************************************/

.block_page_header .block_image{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.block_page_header .block_content{
	min-height: 32rem;
	align-items: center;
}

.block_single_header .frame,
.block_page_header .frame{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
.block_page_header .graph_01{
	position: absolute;
	right: -3rem;
	bottom: 6rem;
	width: calc(var(--col) * 6);
	z-index: 2;
}

.block_page_header .block_breadcrumbs{
	position: absolute;
	top: 1.5rem;
	left: calc((100vw - var(--container))/2 + 15px);
}

.block_breadcrumbs{
	list-style: none;
	margin: 0;
	padding: 0;
	gap: .5rem;
}

.block_breadcrumbs li{
	display: flex;
	align-items: center;
}
.block_breadcrumbs li:not(:last-child)::after{
	content: '';
	display: inline-block;
	width: 1.5rem;
	height: 0;
	border-bottom: 2px solid;
	margin-left: .5rem;
}

.block_breadcrumbs a{
	color: inherit;
	text-decoration: none;
	font-size: .88889rem;
}

.block_single_header .block_image{
	position: absolute;
	top: 0;
	right: 0;
	width: calc(50% - 15px);
	height: 100%;
}

.block_single_header .block_content{
	min-height: 32rem;
}

.block_single_header .graph_01{
	bottom: 1rem;
	left: 0;
	width: calc(var(--col)*6);
	transform: translateX(-50%);
}

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

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

@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 img{
		max-height: 3.888889rem;
	}
	.site_header_nav{
		display: none;
		position: fixed;
		top: var(--header-height);
		left: 0;
		width: 100%;
		height: calc(100vh - var(--header-height));
		background-color: var(--white);
		overflow: hidden;
		overflow-y: auto;
		padding-top: 1rem;
		padding-bottom: 1rem;
		border-top: 1px solid var(--border);
	}
	
	.site_header.show .site_header_nav{
		display: block;
	}
	
	.main_menu{
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		height: 100%;
	}
	.main_menu>li:not(.cta)>a{
		padding: .25rem 1.5rem;
		text-transform: none;
	}
	.main_menu>li:not(.cta):not(:first-child){
		border-top: 1px solid var(--light);
	}
	
	.main_menu li.menu-item-has-children{
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23050F20' 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-position: right 1.5rem top 1rem;
		background-repeat: no-repeat;
		background-size: .75rem auto;
	}
	.main_menu li.menu-item-has-children.active{
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23050F20' 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");
	}
	
	.main_menu li.menu-item-has-children>a{
		pointer-events: none;
	}
	.main_menu .sub-menu{
		position: static;
		box-shadow: none;
	}
	.sub-menu a{
		padding: .25rem 1.5rem;
	}
	
	.main_menu .cta{
		margin-top: auto;
	}
	
	.main_menu .cta a{
		width: 100%;
		border-radius: 0;
	}
	
	.card_taller .card_image{
		width: 100%;
	}
	
	#contribuir .graph_02{
		top: 75%;
	}
	
	.block_single_header .block_image{
		position: static;
		width: 100%;
	}
	.block_single_header .block_content{
		min-height: 0;
	}
	.block_single_header .graph_01{
		width: calc(var(--col)*10);
	}
}

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

@media only screen and (max-width: 767px){
	
	.block_hero .graph_01{
		width: calc(var(--col)*8);
	}
	.block_hero .graph_02{
		width: calc(var(--col)*5 - 30px);
		left: 1rem;
	}
	
	#contribuir .graph_01{
		width: calc(var(--col) * 4 - 30px);
	}
	#contribuir .graph_02{
		width: calc(var(--col) * 8);
	}
	
	.card_taller .card_content{
		padding: 2rem 1.5rem;
	}
}

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