@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Overpass:wght@100;300;400;600;700;900&display=swap');
/*
font-family: 'Montserrat', sans-serif;
font-family: 'Overpass', sans-serif;
*/

/*VARS*/
:root {
	--bk-color:#FFF;
	
	--color-1:#c10230;/*ROJO*/

	--color-2:#002d74;/*AZUL*/
	--color-2a:#3f568b;/*AZUL CLARO*/

	--color-3:#717171;/*GRIS OBSCURO*/
	--color-3a:#ababab;/*GRIS CLARO*/
	--color-3b:#f1f1f1;/*GRIS MUY CLARO*/
	
	--contrast-1:#FFF;
	--contrast-2:#000;
	
	--color-transparent:rgba(0,0,0,0);	
	
	--font-size: 20px;
	--line-heigh: 1.1;
	
	--main-font: 'Overpass', sans-serif;
	--alt-font: 'Montserrat', sans-serif;
	
	--main-font-color:var(--color-2);
	
	
	--font-thin:100;
	--font-light:300;
	--font-regular:400;
	--font-medium:500;
	--font-semi-bold:600;
	--font-bold:700;
	--font-black:900;

	--header-height:80px;
	--header-userbar-height:0px;
	--header-full-height:calc(var(--header-height) + var(--header-userbar-height));	
	
	--menu-color:var(--main-font-color);	
	
	--max-width:1400px;
	--padding-micro:0.5rem;
	--padding-mini:1rem;
	--padding-small:2rem;
	--padding-med:3rem;
	--padding-big:4rem;
	--padding-xxl:6rem;
	--max-width-padding:calc(var(--max-width) - var(--padding-small));
	
	--sombra-in:-1.5rem;
	--sombra-out:1.5rem;
	
	/*CURSOR ANIMADO*/
	
	--ti-cursor-font-weight:var(--font-light); 
	--ti-cursor-transform:translateX(0em);

	--border-radius-btn:0.3rem;
	--border-radius-micro:0.3rem;
	
}

body{
	padding: 0;
	font-size: var(--font-size);
	line-height: var(--line-heigh);
	text-align:justify;
	margin:0;
	position:relative;				
	background: var(--bk-color);
	font-family: var(--main-font);
    font-weight: var(--font-regular);
	color: var(--main-font-color);	
	}	

html{
	height: 100%;
	padding: 0;
}
	
img{ 
	border:none;
	vertical-align:middle;
	}

.foot_td{
    height: 1px;
}

/*MAIN*/

.mainTable{
	width:100%;
	height:100vh;	
	}	
	
.rollOver{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-html-opacity: 1;
	opacity: 1;
	
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;	
}

.rollOver:hover{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.enable-transition{
	transition: all .5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    -ms-transition: all 0.5s;
	
	-webkit-transition-timing-function: ease-in-out;
    -moz-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}

.enable-transition-super-fast{
	transition: all .2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	
	-webkit-transition-timing-function: ease-in-out;
    -moz-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}

.enable-transition-fast{
	transition: all .3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
	
	-webkit-transition-timing-function: ease-in-out;
    -moz-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}

a,
button{
outline:0 !important;
}

.ocultar{
	display: none !important;
}

.max-width{
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
    max-width: 1400px !important;
    margin: 0 auto;
    text-align: initial;
}

.max-width-med{
	max-width: 1000px !important;
}

.max-width-small{
	max-width: 800px !important;
}

.innerBox{
    display: inline-block;
    box-sizing: border-box;
    padding: var(--padding-big) var(--padding-big);
    float: left;
    width: 100%;
    position: relative;
    text-align: center;
	overflow: hidden;
}

.topPadding{
    padding-top: 0;
}

.no-margin-bottom{
	margin-bottom: 0!important;
}

/*BK*/

.bk_agua{
	background: #00AFAA !important;
} 

.bk_amarillo{
	background: #DDE56D !important;
} 

.bk_rojo{
	background: #EF3D52 !important;
} 

.bk_verde{
	background: #6CA394 !important;
} 

.bk_gris{
	background: #C0BBC3 !important;
} 

.contrast-1{
	color: var(--contrast-1);
}

/*HEADER*/ 

header{
    display: flex;
    width: 100%;      
    text-align: center;
    position: sticky;
	right: 0;
	top: 0;
    z-index: 9999;
    transition: all 0.5s;
	padding:0 var(--padding-small);	
	
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    -ms-transition: all 0.5s;
}

header .background{
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	top:0;
	left:0;
	
	background: #FFF;
	-moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

header .header-box{
	height: var(--header-height);
	align-items: center;
}

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

.header-box, .footBox{
    display: inline-flex;
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

header .logo-box{
	position: absolute;
	right: 0;
	top:0;
	display: block;
	width: 300px;
	justify-content: space-around;
	-webkit-border-radius: 0 0 1rem 1rem;
	border-radius: 0 0 1rem 1rem;
	padding:var(--padding-small) var(--padding-med);
	overflow: hidden;
	box-sizing: border-box;
	background: #FFF;
	z-index: 999;


}

header.alt_header .logo-box{
	width: 250px;
	padding:var(--padding-med)  var(--padding-med) var(--padding-mini) var(--padding-med);
}

header .logo{
	background: #FFFFFF;	
	width:100%;
	height:100%;
	display: flex;
	align-items: baseline;
	overflow: hidden;
	justify-content: space-between;
	text-align: center;
}

header .logo picture{
	width: 100%;
	align-self: flex-end;
	margin: 0 auto;

}

header .logo picture img{
	aspect-ratio: 3/1;
}



/*FOOT*/
.foot{
    display: inline-block;
    box-sizing: border-box;
    float: left;
	/*
    background: #00AFAA;  
	*/
	background: var(--color-1);
    width: 100%;
    color: #FFFFFF;
    position: relative;
    text-align: center;
	font-size: .9em;
}

.foot_grid{
	display: flex;
	justify-content: space-between;
}

.foot_grid .grid_col{
	box-sizing: border-box;
}

.foot .logotipos{
	width: 150px;
	display: flex;
	box-sizing: border-box;
	flex-wrap: wrap;
}

.foot .logotipos .logos_grid_col{
	width: 100%;
	max-width: 150px;
	margin-bottom: 40px
}

.foot .logotipos .logos_grid_col:last-child{
	margin-bottom: 0
}


.foot .logotipos img{
	width: 100%;
}

.foot_grid .grid_col.foot_middle{
	padding: 0 0 0 40px;
	text-align: left;
	flex-grow: 1;
}

.foot_sm{
	display: none;
}


/*DOS COLUMNAS*/

.foot h5{
	font-size: 1.1em;
	margin-bottom: 3px;
	text-transform: uppercase;
	font-weight: 700;
	font-family: var(--main-font);
}

.foot .legales{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap:2rem;
}

.foot .legales .legales_grid_col{
	min-width: 40%;
	padding-left: 40px;
	box-sizing: border-box;
}


.foot .legales p{
	margin-bottom: 0;
	line-height: 16px;
} 

.foot .foot-links{
	display: flex;
	flex-wrap: wrap;
}

.foot .foot-links a, .foot .foot-links a:hover{	
	background: var(--color-2);
	color: #FFF;
	padding: 5px 10px 3px 10px;	
	text-decoration: none;
	width: 100%;
	white-space: nowrap;
	margin-bottom: .5rem;
	width: min-content;
}

.foot .sm_bar{
	display: inline-block;
	box-sizing: border-box;
	float: right;
	width: 100%;
	white-space: nowrap;
}

.foot .sm_bar a, .foot .sm_bar a:hover{
	color:#FFF;
	margin-left: 10px;
}

.foot .sm_bar a:first-child{
	margin-left: 0;
}

.txt-foot-small{
	font-size: .7em;
	margin-bottom: 1rem;
}

.goTop{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    float: left;
    text-align: center;
    margin-top: 40px;
    padding: 20px 0 0 0;
    border-top: rgba(255,255,255,.5) solid 1px;    
}

.btnGoTop{
    display: inline-block;
    box-sizing: border-box;
    height: 30px;
    width: 30px;
    line-height: 30px;
    vertical-align: middle;
    text-align: center;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    border: solid 1px rgba(255,255,255,.5);
    color: rgba(255,255,255,1);
    cursor: pointer;
}

.anchor-link{
	margin-top:-200px;
	display: flex;
	position: absolute;
	top: 100px;
}


.boxLogos{
    display: flex;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto;
    align-items: center;
}

.boxLogos .item:nth-child(1){
    width: 9.0%;
}

.boxLogos .item:nth-child(2){
    width: 18.5%;
}

.boxLogos .item:nth-child(3){
    width: 16.2%;
}

.boxLogos .item:nth-child(4){
    width: 13.3%;
}

.boxLogos .item:nth-child(5){
    width: 6.8%;
}

.boxLogos .item:nth-child(6){
    width: 7.8%;
}

.boxLogos .item:nth-child(7){
    width: 4.6%;
}

.boxLogos .item img{
    width: 100%;
}
/**/

.boxLogos div img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*MENU PRINCIPAL*/
.btnResponsivo{
    display:none;
    height: var(--header-height);
    width: 60px;
    position: absolute;
    left: 0;
	top: 0;
    border: none;
    background: none;    
    z-index: 999;    
    cursor: pointer;
	align-items: center;
	justify-content: space-around;
	
}

.btnResponsivo img{
    height: 26px;
}

/**/


.menuPrincipal{
    display: flex;   
    position: absolute;
    left: 0;
	align-items: center;
	justify-content: space-between;
	font-family: var(--alt-font);
	gap: var(--padding-mini);
	bottom: .8rem;
}

.menuPrincipal .mpBlock{
	display: flex;
	gap: var(--padding-mini);
	justify-content: flex-start;
}

.sb_menu .mpBlock{
    display: inline-block;
    box-sizing: border-box;
    float: left;
    position: relative;
}

.menuPrincipal .mpBlock{
    margin: 0 auto;
}

.menuPrincipal .mpSub,
.sb_menu .mpSub{    
	display: flex;
	flex-wrap: wrap;
}

.menuPrincipal .mpSub{
    
    position: absolute;
    background:#FFF;
        
    opacity:0;
    height: 0;
    
    top: 40px;
    right: 0;
    
    overflow: hidden;
    z-index: 99;    
    
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;	
    
    -webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,0.35);
    -moz-box-shadow: 0 0 3px 0 rgba(0,0,0,0.35);
    box-shadow: 0 0 3px 0 rgba(0,0,0,0.35);
}

	
.menuPrincipal a,
.sb_menu a{
	display:inline-block;    
	float:left;
	box-sizing:border-box;	
		
	transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    -ms-transition: all 0.5s;
	
	text-decoration:none; 
    cursor: pointer;
    text-align: right;
	}
  

.menuPrincipal .mpParent,
.menuPrincipal .mpSingle{
	color:var(--menu-color);
    white-space: nowrap;
	font-size: .95em;
	font-weight: var(--font-medium);
}


.menuPrincipal .mpParent:hover, 
.menuPrincipal .mpParent.activo,
.menuPrincipal .mpSingle:hover,
.menuPrincipal .mpSingle.activo{
	color:var(--color-1);
}

.menuPrincipal .mpBlockParent.activo .mpParent,
.menuPrincipal .mpBlockParent.activo .mpSingle{
    color: #EF3D52;
}

.menuPrincipal .mpSub .mpSub_wrap{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}

.menuPrincipal .mpSub .mpSub_wrap .mpBlock{
	flex-grow: 1;
	width: 100%;
}

    
.menuPrincipal .mpSub a{  
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  float: left; 
  color: #767777;
  
  transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s; 
  
  white-space: nowrap;
  padding: 10px 15px;  
  font-weight: var(--font-regular);
  text-decoration: none;
}

.menuPrincipal .mpSub a:first-child{
    margin-top: 0;
} 

.menuPrincipal .mpSub a:last-child{
    margin-bottom:0;
} 

.menuPrincipal .mpSub a:hover, .menuPrincipal .mpSub a.activo{
    background: rgba(0,175,170,1); 
	color: rgba(255,255,255,.8); 
}

.menuPrincipal .subIcon{
    margin-left: 6px;
    font-size:.75em;
    color: #C0BBC3;
}

.menuPrincipal .mpBlock > .mpParent .fas{    
    transition: all 0.6s;
    -moz-transition: all 0.6s;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    -ms-transition: all 0.6s;
}

.menuPrincipal .mpBlock:hover > .mpSub{
    opacity: 1;
    height: auto;
}

.menuPrincipal .sideBarLogo{
    display: none;
}

/**/

.lang-bar{
	position: absolute;
	top: 5px;
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	z-index: 1;
	font-size: .7em;
	display: flex;
	justify-content: space-between;
	gap: .5rem;
}

/*DOS IDIOMAS*/
/*
.lang-bar .lang-link:first-child{
	padding-right: .5rem;
	border-right: solid 1px var(--color-3a);
}

.lang-bar .lang-link{
	color: var(--color-3a);
	text-decoration: none;
}

.lang-bar .lang-link.activo{
	color: var(--color-3);
	text-decoration: none;
	font-weight: var(--font-regular);
}

.lang-bar .lang-link:hover{
	color: var(--color-1);
	text-decoration: none;
}*/

/*UN IDIOMA*/

.control-bar{
	-webkit-border-radius: 4px;
	border-radius: 4px;
	background: var(--color-3b);
	display: flex;
	align-items: center;
	height: 25px;
	font-weight: var(--font-medium);
	z-index: 2;
}

.control-bar .control-btn{
	color: rgba(0,0,0,.3);
	text-decoration: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	height: 25px;
	padding: 1px 8px;
	border:solid 1px rgba(0,0,0,.1);
	border-radius: 0.3rem;
	background: #FFF !important;
}

.control-bar .control-btn:hover{
	color: var(--color-2);
	text-decoration: none;
}



/*
.lang-bar{
	position: absolute;
	top: var(--header-height);
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
	z-index: -1;
}

.lang-bar.lang-bar-hidden{
	margin-top: -3rem;
}

.lang-bar .lang-extra{
	display: block;
	position: absolute;
	width: 100%;
	max-height: 0;
	overflow:hidden;
}

.lang-bar .lang-link{
	display: block;
	text-align: left;
	padding: .2rem 0.5rem;
	background: var(--color-2);
	color: #FFF;
	text-decoration: none;
	cursor: pointer;
}

.lang-bar .lang-link.activo{
	background: var(--color-1);
}

.lang-bar .lang-link:hover, .lang-bar .lang-link.activo:hover{
	color: rgba(255,255,255,.6);
	
}

.lang-bar .lang-extra .lang-link:hover, .lang-bar .lang-extra  .lang-link.activo:hover{
	padding-left: 1rem;
}

.lang-bar:hover .lang-extra{
	max-height: 5em;
	overflow:auto;
}
*/

/*SEARCH BAR*/
.search-bar{
	position: absolute;
	top: 5px;
	left: 55px;
	font-size: .7em;
	color:var(--color-3a);
}

.search-bar .search-input input, 
.search-bar .search-input input:focus, 
.search-bar .search-input input:hover, 
.search-bar .search-input input:active,
.search-bar-movil input,
.search-bar-movil input:focus, 
.search-bar-movil input:hover, 
.search-bar-movil input:active
{
	background: none;
	border: none;
	outline: none;	
	color: var(--color-3a);
	font-family: var(--main-font);
	font-weight: var(--font-regular);	
	font-size: 15px;
	padding-top: 2px;
}

.search-bar .search-input input{
	padding-right:0;
	width: 0;
	padding:0;
}

.search-bar input.open{
	width:190px;
	padding-right: .5rem;
	padding-left: .5rem;
}

.search-bar-movil{
	display: none;
}

/**/

#sb_sidebar .sideBarLogo{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    padding: 20px;
    text-align: center;
    border-bottom: rgba(0,0,0,.1) solid 1px;
}

#sb_sidebar .sideBarLogo img{
    width: 100%;
    max-width: 120px;
    margin: 0 auto;
}

#sb_sidebar .hub_controles{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	border-top: solid 1px rgba(255,255,255,.1);
}

#sb_sidebar .hub_controles a{
	width: auto;
	color: rgba(255,255,255,.8);
}

#sb_sidebar .hub_controles a i{
	font-size: .9em;
	margin-right: 5px;
}

/**/

.contenido{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    float: left;
    margin: 0 auto;
}

.bloque_contenido{
    padding: 40px 40px 0 40px;
}

.bloque_single{
    padding: 0 40px;
}

.bloque_full_width{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	float: left;
	text-align: center;
	position: relative;
}

.bk-color-1{
	background: var(--color-1);
	color: #FFF;
}

.bk-color-2{
	background: var(--color-2);
	color: #FFF;
}

.bk-color-2a{
	background: var(--color-2a);
	color: #FFF;
}

.bk-color-3{
	background: var(--color-3);
}

.bk-color-3b{
	background: var(--color-3b);
}

.bk-color-4{
	background: var(--color-3);
	color: #FFF;
}

.bk-color-lapiz{
	background: #cc9752;
	color: #FFF;
}

.color-1{
	color: var(--color-1);
}
.color-2{
	color: var(--color-2);
}
.color-3{
	color: var(--color-3b);
}
.color-4{
	color: var(--color-3);
}

.color-white{
	color: #FFF !important;
}

.color-white a, .color-white a:hover, .color-white a:active, .color-white a:link, .color-white a:visited{
	color: #FFF;
	text-decoration: none;
}

.bk-half-left, .bk-half-right{
	position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%; 
	z-index: -1;
}

.bk-half-right{
	left: unset;
	right: 0;
}

.bk-half-short, .x2-col .x2-col-short{
	width: 40%;	
}

.bk-full{
	position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%; 
	z-index: -1;
	display: none;
}


/**/

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	width: 100%;
	box-sizing: border-box;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
	background: rgba(255,255,255,1.00);
}

.videoInline{
    width: 100%;
}

/**/

.grid_video{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.grid_video .grid_col{
	width: 100%;
	margin-bottom: 20px;
}

.grid_video .grid_col:last-child{
	margin-bottom: 0;
}

/**/

.centro{
    text-align: center;
}

.td_top{
    vertical-align: top;
}


/**/

.search_bar{
    display: inline-block;
    box-sizing: border-box;
	width: 300px;
	background: rgba(255,255,255,.2);
	-webkit-border-radius: 15px;
	border-radius: 15px;
	position: relative;
	text-align: left;
	height: 26px;
	margin-right: 20px;
	margin-top: 2px;
}


.search_bar .search_box{
	background: none;
	border: none;
	width: 270px;
	position: absolute;
	top: 0;
	outline: none;
	font-family: var(--main-font);
    font-weight: var(--font-regular);
	color: rgba(255,255,255,1);
	padding-left:15px;
	padding-right:0;
}

.search_bar button{
	position: absolute;
	right: 5px;
	top: 0;
	background: none;
	border: none;
	color: rgba(255,255,255,.6);
}

.search_bar input::placeholder {
	font-family: var(--main-font);
	font-weight: var(--font-regular);
	color: rgba(255,255,255,1);
}

/**/
.no_results{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    float: left;
    padding: 20px;
    background: rgba(0,0,0,.1);
    color: rgba(0,0,0,.8);
    text-align: center;
    font-weight: 700;
    
    -webkit-border-radius: 10px;
    border-radius: 10px;
}


/**/

.paginadoBox{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    margin-top: var(--padding-big);
}

.paginadoBox .paginado{
    display: flex;
	gap: .5rem;
	align-items: center;
	justify-content: center;
}

.paginado a{
    display: flex;
	align-items: center;	
	justify-content: center;
	width: 25px;
	height: 25px;
	padding-top: 4px;
	position: relative;
   
    color: rgba(255,255,255,1);
    text-decoration: none;
    background: rgba(0,0,0,.3);
    text-align: center;
    
    font-size: .8em;
    
    transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
}

.paginado a:hover, .paginado a.pagActivo{
    background: rgba(0,0,0,.5);
    transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
}

/**/

.bannerHome{
    display: inline-block;
    box-sizing: border-box;
    float: left;
    width: 100%;    
	height: calc(100vh);
	
	background-image: url("../img/intro_climber/climber_bk.webp");
	background-size: cover;
	background-repeat: no-repeat;
	
	position: relative;
	overflow: hidden;	
}

.bannerHome .slide{
    display: inline-block;
    box-sizing: border-box;
    float: left;
    width: 100%;
	overflow: hidden;
	height: calc(100vh);
}

.bannerHome .slide img{
    width: 100%;
	height: 100%;
	object-fit: cover;
}

.bannerHome .cycle-next, .bannerHome .cycle-prev{
    display: inline-block;
    box-sizing: border-box;
    height: 30px;
    width: 30px;
    line-height: 30px;
    vertical-align: middle;
    text-align: center;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    color: rgba(255,255,255,.5);
    border: solid 1px rgba(255,255,255,.8);
    color: rgba(255,255,255,1);
    cursor: pointer;
    position: absolute;
    z-index: 999;
    font-size: .9em;    
    
    top: 50%;
    transform: translateY(-50%);
}

.bannerHome .cycle-prev i{
    margin-left: -2px;
}

.bannerHome .cycle-next i{
    margin-right: -2px;
}

.bannerHome .cycle-prev{
    left: 20px;
}

.bannerHome .cycle-next{
    right: 20px;
}

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

.bannerHome .etiqueta_box{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: inline-block;
	box-sizing: border-box;
	width: 100%;	
	text-align: center;
    z-index: 999;
}

.bannerHome .etiqueta{   
   display: inline-block;
   box-sizing: border-box;
   width: 100%;
   text-align: left;   
   max-width: 1400px;
   margin: 0 auto;
   
}

.bannerHome .etiqueta .etiqueta_inner{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	max-width: 66%;
	padding: 20px 40px;
    background: rgba(52,60,57,.8);
}

.bannerHome .etiqueta h3{
	font-family: var(--main-font);
	font-weight: 700;
	font-size: 2em;
	color: #FFF;
}

.bannerHome .etiqueta .descripcion{
	color: #FFF;
	text-align: justify;
	font-family: var(--main-font);
	font-size: 1.2em;
	font-weight: 300;
}

.bannerHome .etiqueta .pie{
	display: inline-block;
	box-sizing: border-box;
	margin-top: 20px;
	color: #FFF;
	font-family: var(--main-font);
	text-align: justify;
	float: left;
	width: 100%;
	font-size: .9em;
}

.bannerHome .etiqueta a, .boton_agua{
	display: inline-block;
	box-sizing: border-box;
	float: left;
	margin-top: 20px;
	font-size: 1.2em;
	line-height: 1em;
	padding: 9px 30px 12px 20px;
	color: #FFF;
	background: #6CA394;
	position: relative;	
	font-family: var(--main-font);
	border: none;
}

.bannerHome .etiqueta a, .bannerHome .etiqueta a:hover, .boton_agua:hover{
	color: #FFF;
	text-decoration: none;
}

.bannerHome .etiqueta a i, .boton_agua i{
	position: absolute;
	right: 5px;
	top: 10px;	
}

/* pager */
.bannerHome .cycle-pager { 
    display: inline-block;
    box-sizing: border-box;
    text-align: right;
    z-index: 500; 
    position: absolute !important; 
    top: 20px;
    right: 20px;
    overflow: hidden;
}
.bannerHome .cycle-pager span { 
   
    font-family: arial; font-size: 40px; 
    display: inline-block; 
    color: rgba(255,255,255,.7);
    cursor: pointer; 
    line-height: 20px;
    text-shadow: 0 0 2px #000000;
    
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    margin-left: 4px;
}

.bannerHome .cycle-pager span.cycle-pager-active { 
    color: rgba(255,255,255,1);
    
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.bannerHome .cycle-pager > * { 
    cursor: pointer;
}

/*INTRO*/
.hero-intro{
	display: flex;
	width: 100%;
	height: calc(100vh - var(--header-full-height));
	position: relative;
	min-height: 400px;
}

.hero-intro-slide{
	display: flex;
	width: 100%;
	height: 100%;
	padding-top: var(--header-full-height);
	align-items: center;
	justify-content: space-around;
}


.hero-intro video{
	position: absolute;
	bottom: 0;
	left: 0;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	z-index: -1;
}


.bannerHome .slogan,
.hero-intro .slogan,
.hero-interior .slogan{
	position: absolute;
	right: var(--padding-big);
	bottom: var(--padding-xxl);
	z-index: 2;
	display: inline-flex;
	flex-wrap: wrap;
	gap: var(--padding-mini);
	font-family: var(--alt-font);
	padding-right: var(--padding-small);
	border-right: solid 8px #FFF;
}

.bannerHome .slogan .linea,
.hero-intro .slogan .linea,
.hero-interior .slogan .linea{
	width: 100%;
	text-align: right;	
	font-weight: var(--font-medium);

	display: inline-block;
	box-sizing: border-box;
	float: right;
	padding: 0 0 0 2rem;
	/*background: #FFF;*/
	line-height: .7em;
	font-size:2.2em;
	/*color:var(--color-2);*/
	color:#FFF;
}

.hero-interior .slogan .linea{
	font-size: 1.8em;
	font-weight: var(--font-light);
}

.hero-interior .slogan .linea-titulo{
	font-weight: var(--font-bold);
	font-size: 3em;
}




.slogan sup{
	font-size: .3em;
	top: -1.8em;	
}

/*INTRO INFO BOX*/

.bannerHome .info-box-wrapper{
	position: absolute;
	right: 0;
	bottom: var(--padding-xxl);
	z-index: 2;
	display: inline-block;
	box-sizing: border-box;	
	max-width: 680px;
	text-align: right;
}


.bannerHome .info-box-wrapper .info-box{
	display: inline-block;
	box-sizing: border-box;
	width:100%;
	padding: var(--padding-small);
	
	background: rgba(255,255,255,0.7);
	color:var(--color-3);	
	font-size: .8em;
}

.bannerHome .info-box-wrapper .info-box p{
	margin: 0;
}

.bannerHome .info-box-wrapper .info-box h1{
	color: var(--color-2);
	font-weight: var(--font-black);
	font-family: var(--alt-font);
	font-size: 2em;
}

/**/

.intro-badge{
	position: absolute;
	z-index: 999;
	left: var(--padding-big);
	bottom: var(--padding-xxl);
	width: 12%;
}

.intro-badge img{
	width: 100%;
}

/*
.brains{
	position: absolute;	
	left:0;
}

.brains img{
	width: 100%;
}

.brain-1{
	width: 25vw;
	left:calc(30vw - 100px);
	top:calc(10vh + 100px);
	animation: wanderer-1 15s ease-in-out infinite;	
}

.brain-2{
	width: 15vw;
	left:calc(15vw - 100px);
	top:calc(50vh + 100px);
	animation: wanderer-2 11s ease-in-out infinite;	
	
}

.brain-3{
	width: 10vw;
	left:calc(20vw - 100px);
	top:calc(5vh + 100px);
	animation: wanderer-3 9s ease-in-out infinite;	
}

.brain-4{
	width: 12vw;
	left:calc(58vw - 100px);
	top:calc(5vh + 100px);
	animation: wanderer-4 8s ease-in-out infinite;
}

.brain-5{
	width: 8vw;
	left:calc(40vw - 100px);
	top:calc(70vh + 100px);
	animation: wanderer-5 6s ease-in-out infinite;	
}
*/

.element-1{
	width: 80vw;
	left:calc(5vw - 100px);
	top:calc(1vh + 100px);
	animation: wanderer-1 15s ease-in-out infinite;	
}
.element-2{
	width: 75vw;
	left:calc(7vw - 100px);
	top:calc(-7vh + 100px);
	animation: wanderer-mar-2 11s ease-in-out infinite;	
}
.element-3{
	width: 75vw;
	left:calc(9vw - 100px);
	top:calc(5vh + 100px);
	animation: wanderer-mar-4 11s ease-in-out infinite;
}

/*INTROS*/

/*
.playa, .ic-cloud-front{
	width: 100%;
	height: 100%;
	position: absolute;
	
}

.playa img,.playa picture{
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: top left;
	animation: flickering 3s linear infinite;
	mix-blend-mode: overlay;
}
*/

/*CLIMBER*/
.intro-climber .ic-cloud-front{
	width: 100%;
	height: 100%;
	position: absolute;	
}

.intro-climber .ic-cloud-front img{
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: bottom left;
}

.intro-climber .ic-lapiz{
	position: absolute;
	height: 100%;
	display: inline-block;
	bottom: 0;
	left: 25vw;
}

.intro-climber .ic-lapiz img{	
	height: 100%;
}

.intro-climber .ic-cloud-1 img, 
.intro-climber .ic-cloud-2 img,
.intro-climber .ic-cloud-3 img{	
	height: 100%;
}

.intro-climber .ic-cloud-1{	
	display: inline-block;
	position: absolute;
	left:14vw;
	top:60vh;	
	height:30vh;
	opacity: 0;
	
	animation: ic-cloud-1 18s infinite;
}

.intro-climber .ic-cloud-2{	
	display: inline-block;
	position: absolute;
	left:5vw;
	top:30vh;	
	height:25vh;
	opacity: 0;
	
	animation: ic-cloud-2 25s infinite;
	animation-delay: 4s;
}

.intro-climber .ic-cloud-3{	
	display: inline-block;
	position: absolute;
	left:30vw;
	top:62vh;	
	height: 35vh;
	opacity: 0;
	
	animation: ic-cloud-3 25s infinite;
	animation-delay: 1s;
}

/*ANIMACION CLIMBER*/

@keyframes ic-cloud-1{
	0%{
		opacity: 0;
		transform: translate(0px,0px);
	}
	10%,90%{
		opacity: 1;
	}
	100%{
		transform: translate(190px,0px);
		opacity: 0;
	}
}


@keyframes ic-cloud-2{
	0%{
		opacity: 0;
		transform: translate(0px,0px);
	}
	10%,90%{
		opacity: 1;
	}
	100%{
		transform: translate(300px,0px);
		opacity: 0;
	}
}

@keyframes ic-cloud-3{
	0%{
		opacity: 0;
		transform: translate(0px,0px);
	}
	10%,90%{
		opacity: 1;
	}
	100%{
		transform: translate(-300px,0px);
		opacity: 0;
	}
}


/**/
@keyframes wanderer-1{
	0%,100%
	{
		transform: translate(25px);
	}
	50%
	{
		transform: translate(-25px);
	}
}

@keyframes wanderer-2{
	0%,100%
	{
		transform: translate(-15px,10px) rotate(-30deg);
	}
	50%
	{
		transform: translate(15px,-10px) rotate(-30deg);
	}
}


@keyframes wanderer-mar-2{
	0%,100%
	{
		transform: translate(-15px,10px) rotate(-15deg);
	}
	50%
	{
		transform: translate(15px,-10px) rotate(0);
	}
}

@keyframes wanderer-3{
	0%,100%
	{
		transform: translate(-22px,-15px) rotate(10deg);
	}
	50%
	{
		transform: translate(22px,15px) rotate(10deg);
	}
}

@keyframes wanderer-4{
	0%,100%
	{
		transform: translate(-15px,5px) rotate(-10deg) scaleX(-1);
	}
	50%
	{
		transform: translate(15px,-5px) rotate(-10deg) scaleX(-1);
	}
}

@keyframes wanderer-mar-4{
	0%,100%
	{
		transform: translate(-15px,5px) rotate(-10deg);
	}
	50%
	{
		transform: translate(15px,-5px) rotate(-10deg);
	}
}


@keyframes wanderer-5{
	0%,100%
	{
		transform: translate(-30px,15px) rotate(-40deg);
	}
	50%
	{
		transform: translate(30px,-15px) rotate(-40deg);
	}
}

/**/
.animacion-salvavidas{
	animation: salvavidas 10s ease-in-out infinite;	
}

@keyframes salvavidas{
	0%,100%
	{
		transform: translate(-22px,-10px);
	}
	
	25%
	{
		transform: translate(40px,-20px);
	}
	
	50%
	{
		transform: translate(22px,10px);
	}
}

/**/
.animacion-empaque{
	animation: empaque 2s infinite;	
}

@keyframes empaque{
	0%,15%, 100%
	{
		transform: translate(0px,0px) rotate(-2deg);
	}
	1%,8%
	{
		transform: translate(0px,3px) rotate(2deg);
	}
	3%,5%
	{
		transform: translate(0px,-5px) rotate(-1deg);
	}
}

/**/
.animacion-libro-1{
	animation: libro-1 2s infinite;	
}

.animacion-libro-2{
	animation: libro-2 2s infinite;	
}

.animacion-libro-3{
	animation: libro-3 2s infinite;	
}

@keyframes libro-1{
	0%,5%,35%,100%{
		opacity: 0
	}
	10%,20%{
		opacity: 1
	}
}

@keyframes libro-2{
	0%,25%,65%,100%{
		opacity: 0
	}
	35%,55%{
		opacity: 1
	}
}

@keyframes libro-3{
	0%,55%,100%{
		opacity: 0
	}
	65%,85%{
		opacity: 1
	}
}
/**/
.animacion-paraguas-1{
	animation: paraguas-1 15s infinite linear;	
}

.animacion-paraguas-2{
	animation: paraguas-1 12s infinite linear;	
}

@keyframes paraguas-1{
	0%{
		opacity: 0;
		transform: translate(0px,0px);
	}
	30%,80%{
		opacity: 1;
	}
	100%{
		transform: translate(50px,0px);
		opacity: 0;
	}
}

/**/
.animacion-megafono{
	animation: megafono 2s ease-in-out infinite;	
}

@keyframes megafono{
	0%,10%,60%,100%{
		transform: scale(1,1) ;
	}	
	
	20%,30%,50%{
		transform: scale(1,1.05);
	}
	15%,25%,40%{
		transform: scale(1.05,1);
	}	
}
/**/

/**/
.animacion-capelo-1{
	animation: capelo-1 5s infinite;	
}

.animacion-capelo-2{
	animation: capelo-2 5s infinite;	
}


@keyframes capelo-1{
	0%,100%{
		transform: translate(0px,0px);
	}
	50%{
		transform: translate(0px,-25px);
	}
}

@keyframes capelo-2{
	0%,100%{
		opacity: 1
	}
	30%,60%{
		opacity: 0
	}
}

/*animacion corazon*/
.animacion-corazon{
	animation: corazon 2s infinite;	
}

@keyframes corazon{
	0%,20%,40%{
		transform: scale(1,1) ;
	}	
	
	10%,30%{
		transform: scale(1.02,1.03);
	}
}

/*animacion sinapsis*/
.animacion-sinapsis-1{	
	animation: flickering 5s linear infinite;
}

.animacion-sinapsis-2{	
	animation: flickering 2s linear infinite;
}

.animacion-sinapsis-3{	
	animation: flickering 3s linear infinite;
}

/*animacion silla*/
.animacion-silla{	
	animation: flickering 3s linear infinite;
}
/**/


.grid_1x1{
    display: flex;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-left: -20px;
    justify-content: space-between;
}

.grid_1x1 > .boxGrid{
    width: 50%;
    padding: 0 20px;
    text-align: center;
    box-sizing: border-box;
    margin-top: 40px;
}

.grid_1x1 .boxGrid img{
    width: 100%;
}

/**/

.txtBox{
    display: inline-block;
    box-sizing: border-box;
    float: left;
    margin-bottom: 40px;
    text-align: justify;
}

.txtBox .igmFloat{
    display: inline-block;
    box-sizing: border-box;
    
    padding-bottom: 20px;
    width: 50%;
}

.txtBox .igmFloatRight{
    padding-left: 20px;
    float: right;
    margin-left: 20px;
}

.txtBox .igmFloatLeft{
    padding-right: 20px;
    float: left;
     margin-right: 20px;
}

.txtBox h2{
    color: #262524;
    font-weight: 700;
    text-align: left;
    font-size: 1.2em;
    margin-bottom: 20px;
}

.txtBox h2 span{
	font-size: .3em;
}

.pagina{
    padding-top: 40px;
}


.seccion{
    padding-top: 20px;
}

.articulo{
    text-align: left;
}

.articulo h1, .articulo h2, .articulo h3, .articulo h4{
    text-align: left;
}



.articulo.two_col{
 column-count: 2;
 column-gap: 40px;
 column-fill: balance; 
}

.articulo.one_col{
}

.articulo a{
    transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	
	color: var(--color-3a);
    text-decoration: none;
	font-style: italic;
	
}

.articulo a:hover{ 
    color: var(--color-3a);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.articulo img{
    max-width: 100%;
}

.articulo .pie_foto{
    width: 100%;
    display: block;
    box-sizing: border-box;
    margin-top: 5px;
    color: rgba(0,0,0,1);
    font-size: .9em;
    font-weight: 300;
    font-style: italic;
}

.fecha-articulo{
	font-size: .8em;
	color: var(--color-3a);
	margin-top: .5rem;
}

.fecha-articulo a{
	color: inherit;
	text-decoration: none;
}

.tablaArticulo{
    width: 100%;
}

.tablaArticulo .col_menu{
    vertical-align: top;
    width: 250px;
    padding-right: 40px;
    padding-top: 54px;
}

.tablaArticulo .col_articulo{
    vertical-align: top;
}

/**/
.grid_articulo_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-left: -20px;
	margin-right: -20px;
}

.grid_articulo_inner .ag_col{
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 20px;	
}

.grid_articulo_inner .ag_col:first-child{
	margin-top: 0;
}

.grid_articulo_inner .ag_col.layout_width_100{
	width: 100%;
}

.grid_articulo_inner .ag_col.layout_width_50{
	width: 50%;
	flex-grow: 1;
}


/*
h1.tituloBox{ 
    font-size: 1.8em;
    font-weight: 300;
    margin-bottom: 20px;
	text-align: left;	
	font-family: var(--main-font);
}


h1.tituloBox span{
    display: inline-block;
    box-sizing: border-box;
	color: #FFF;
	background: #EF3D52;
	width: 100%;
	max-width: 50%;
	padding-top: 10px;
}
*/

h1.tituloBox{ 
    font-size: 1.4em;
    font-weight: 300;
	text-align: left;	
	font-family: var(--main-font);
	padding-bottom: 15px;
	color: #000;
	border-bottom: 1px solid #EF3D52;
	max-width: 50%;
}

h1.tituloBox span{
    
}

h1.tituloBox.tituloRelacionados {
    margin-top: 80px;
    display: inline-block;
    float: left;
    width: 100%;
}

.menuArticulos a, .menu-categorias a{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;    
    position: relative;
	color:#636569;	
    text-decoration: none;
    padding-bottom: .5rem;
    margin-bottom: .5rem;
    border-bottom: 1px solid rgba(255,255,255,1);
	font-size: .8em;
}

.menuArticulos a:last-child, .menu-categorias a:last-child{
	padding-bottom: 0;
    margin-bottom: 0;
	border: 0;
}

.menuArticulos a.activo{
    font-weight: 700;
	color: var(--color-1);
}

.menuArticulos a i{
    position: absolute;
    right: 2px;
    top: 7px;
    font-size: .6em;
}

.menuArticulos a .desc, .menu-categorias a .desc{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
	padding-right: 5px;
}

.menuArticulos .titulo-solid, .menu-categorias .titulo-solid{
	font-size: 1.2em;
	margin-bottom: 1rem !important;
}

.menuArticulos .titulo-solid{
	margin-top: 1rem !important;
}


h2.tituloBox{
	font-family: var(--main-font);
    font-size: 1.4em;
    margin-bottom: 20px;    
    padding-bottom: 5px;
    margin-bottom: 10px;
	color:#EF3D52;
	font-weight: var(--font-regular);
}


.grid_entradas h1{   
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	font-size: 2em;
	margin-bottom: var(--padding-small);
}

/**/

.busqueda_listado h2{
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
	font-size: 1.5em;
	margin-bottom: 0;	
	color:var(--color-1);
}

.busqueda_listado h3{ 	
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	font-size: 1em;
	margin-bottom: 1rem;
	color:var(--color-3);
}

.busqueda_listado{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap:var(--padding-small);
}

.busqueda_listado .item_listado{
	display: flex;
	width: 100%;
	justify-content: flex-start;	
	text-decoration: none;
	color: var(--main-font-color);
	padding-bottom: var(--padding-small);
	border-bottom: solid 1px #f2f2f2;
	gap:var(--padding-small);
}

.busqueda_listado .item_listado .thumbnail{
	min-width: 250px;
	width: 250px;
}

.busqueda_listado .item_listado .thumbnail img{
	width: 100%;
}

.busqueda_listado .item_listado .descripcion{
	flex-grow: 1;
}

.resultados_busqueda{
	margin-bottom: 20px;
	margin-top: 10px;
	color: var(--color-3a);
}

/**/

.articulo table{
	width: 500px;
}

.articulo table td{
	padding: 5px 20px;
	vertical-align: top;
	text-align: left;
}

.articulo table tr:first-child td{
	padding-top: 0;
}

.articulo table td:first-child{
	padding-left: 0;
}

.articulo table td:last-child{
	padding-right: 0;
}

.articulo .articulo_tabla_inline{
	display: inline-block;
	box-sizing: border-box;
	max-width: calc(100vw - 460px);
	overflow-x: auto;
}

/**/
.articulo_galeria_listado div{
	display: inline-block;
	box-sizing: border-box;
	float: left;
	width: 100%;
}

.articulo_galeria_listado div img{
	width: 100%;
}

.articulo_galeria_listado .img_box_inner{
	margin-bottom: 10px;
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
}

.articulo_galeria_listado .etiqueta{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	
	margin-bottom: 10px;
	margin-top: -5px;
	font-size: .8em;
	font-style: italic;
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	color: var(--color-3a);
}

.grid_articulo .titulo-solid{
	margin-bottom: 0;
}


/*GALERIA*/


.galeria{
    display: inline-flex;
	box-sizing: border-box;
	flex-wrap: wrap;
	gap: 20px;
    width: 100%;	
	justify-content: space-between;
}

.galeria a{
	width: calc(50% - 10px);
	min-width: 200px;
	flex-grow: 1;
}

.galeria a img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*GALERIA SLIDESHOW*/

.galeria_slideshow .slide{
	display: inline-block;
	padding: 20px;
	box-sizing: border-box;
	width: 100%;
	position: relative;
}

.galeria_slideshow .slide img{
	width: 100%;
}

.galeria_slideshow .slide .etiqueta{
	position: absolute;
	bottom: 20px;
	left: 20px;
	display: inline-block;
	box-sizing: border-box;
	z-index: 1;
	background: rgba(0,0,0,.4);
	padding: 5px 10px;
	color: #FFFFFF;
	font-size: .9em;
	text-align: left;
	font-style: italic;
}

/**/

.articulo + .tituloBox{
    margin-top: 40px;
}

.descargables + .galeria{
    margin-top: 40px;
}

.articulo + .galeria{
    margin-top: 40px;
}

/**/

.descargable{
    margin-bottom: 10px;
}

.descargable:last-child{
    margin-bottom: 0;
}

.descargable .descripcion{
    display: inline-block;
    box-sizing: border-box;
    padding: 0 0 10px 0;
    padding-left: 20px;
    
    text-align: left;
    position: relative;
}

.descargable a, .descargable a:hover, .descargable a:active, .descargable a:link, .descargable a:visited{
    color: #767777;
    text-decoration: none;
    position: relative;
}

.descargable{
    text-align: left;
}

.descargable i{
    left: 0;
    position: absolute;   
    font-size: .8em;
    top: 6px;    
}

.descargable:last-child .box{
    margin-bottom: 0;
}

/**/

.gridArticulos{
    box-sizing: border-box;
    display: inline-block;
    box-sizing: border-box;
    margin-left: -20px;
    margin-right: -20px;
    float: left;
    display: flex;
    flex-wrap: wrap;
}

.gridArticulos .boxArticulo {
    display: inline-block;
    box-sizing: border-box;
    padding: 20px;
    width: 33.33%;
    float: left; 
    text-decoration: none;
    color:#767777;
    
    transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
    
    position: relative;
    margin-bottom: 10px;
    
    text-align: justify;
}

.gridArticulos .boxArticulo .pic{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 20px;
}

.gridArticulos .boxArticulo .pic img{
    width: 100%;
}

.gridArticulos .boxArticulo .desc h4{
    color: #262524;
    font-weight: 700;
    text-align: left;
    font-size: 1.2em;
    margin-bottom: 10px;
}

.gridArticulos .boxArticulo .ver_mas{
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    right: 20px;
    bottom: 0;
    font-weight: 700;
    text-decoration: none;
}

/**/

.comunicados{
    display: inline-block;
    box-sizing: border-box;
    float: left;  
    position: relative;
    text-align: justify;
	
	margin-left: -40px;
    margin-right: -0px;
}

.comunicados .item {	
	box-sizing: border-box;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.comunicados .item > .col{
	
	position: relative;
    flex: auto;
	width: 50%;
    box-sizing: border-box;
    text-align: justify;
    box-sizing: border-box;	
	overflow: hidden;
	padding: 0 40px 0 40px;
}

.comunicados .item .col.desc{
	 padding-left: 40px;
	 padding-right: 0;
	
}

.comunicados .item .thumb img{
	position: absolute;
	height: 100%;
	width: 100%;
	object-fit: cover;
	vertical-align: middle;
	overflow: hidden;
	object-position: center center;
}

.comunicados .item h2{
    color: #262524;
    font-weight: 700;
    text-align: left;
    font-size: 1.2em;
    margin-bottom: 20px;
}

.comunicados .item{
    margin-bottom: 20px;    
}

.comunicados .item.foto_izquierda{
    flex-direction: row-reverse;
}

.comunicados .item:last-child .col{
    padding-bottom: 0;
}

.comunicados .item .ver_mas{
    display: inline-block;
    box-sizing: border-box;
    float: right;
    margin-right: 0;
	margin-top: 10px;
}

.comunicados .ver_mas_cont{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    float: left;
}

.comunicados .item.foto_derecha .ver_mas{
    float: left;
    margin-left: 40px;
    margin-right: 0;
}

/**/

.tutores_lista{
    width: 100%;
}

.tutores_lista td{
    vertical-align: top;
    padding: 10px 10px;
    border-bottom: solid 1px rgba(0,0,0,.1);
}

.tutores_lista th{
    text-align: center;
    padding: 5px 20px;
    color: #FFF;
    font-size: 1.1em;
    font-weight: 300;
    white-space: nowrap;    
    background: #262524;
}

.tutores_lista tr td:first-child{
    padding-left:0;
}

.tutores_lista tr td:flast-child{
    padding-right:0;
}

.tutores_lista tr td:nth-child(1){
    width: 25%;
}

.tutores_lista .col_cc{
    width: 25%;
}

.tutores_lista .col_li{
    width: 50%;
}

.tutores_lista .list{
    position: relative;
    padding-left: 10px;
}

.tutores_lista .list i{
    position: absolute;
    left: 0;
    top: 7px;
    font-size: .7em;
    color: rgba(0,0,0,.2);
}

.tutores_lista a{
    text-decoration: none;
    color: #262524;
}

.tutores_lista .entidad{
    font-weight: 300;
    color: rgba(0,0,0,.6);
}

.tutores_lista .titulo{
    display: none;
}


/**/
.articulo p:last-child{
    margin-bottom: 0;
}


/**/

.list_box a, .list_box a:hover{
    text-decoration: none;
}

.list_box a i{
    font-size: .8em;
    color: rgba(0,0,0,.3);  
    margin-right: 10px;
}

/**/
.gridContacto{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 350px;
	margin: 0 auto;
}

.gridContacto .grid_col{
	flex-grow: 1;
	text-align: left;
}

.gridContacto .formulario .campo{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	float: left;
	margin-bottom: 5px;
	
}

.gridContacto .formulario input, .gridContacto .formulario textarea{
	font-family: var(--main-font);
    font-weight: var(--font-regular);
	font-size: 15px;
	border: solid 1px #cdcdcd;
	width: 100%;
	resize: none;
	color:#626262;
	padding: 5px;
	
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

.formulario .boton_agua{
	float: left;
	margin-top: 0;
	font-size: 17px;
}

.gridContacto .contacto{
	margin-top: 20px;
	padding-top: 20px;
	border-top: solid 1px #f2f2f2;
	text-align: justify;	
}

.gridContacto .contacto a{
	text-decoration: none;
	color: unset;
}

.gridContacto .contacto a{
	text-decoration: none;
	color: unset;
}

.gridContacto .sm_bar{
	display: inline-block;
	box-sizing: border-box;
	
	margin: 0 auto;
	margin-top: 10px;
}

.gridContacto .sm_bar .sm_link{
	font-size: 1.2em;
	margin-right: 10px;
	color: #cdcdcd;
}

.warning{
	color: #EF3D52;
	margin-bottom: 5px;
}

.highlight{
	background: rgba(250,106,123,.1);	
}

.grecaptcha-badge { 
    visibility: hidden;
}


/**/
.grid_frases{
	display: flex;
	justify-content:space-between;
}

.grid_frases .grid_col{
	width: 31%;
	border: solid 1px #cdcdcd;
	padding: 20px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

.grid_frases .grid_col .icono_box{
	width: 100%;
	display: inline-block;
	box-sizing: border-box;
	float: left;
	text-align: center;
	margin-bottom: 15px;
}

.grid_frases .grid_col .icono_box .icono{
	display: inline-block;
	box-sizing: border-box;
	text-align: center;	
}

.grid_frases .grid_col .icono_box .icono span{
	font-size: 50px;
	color: #EF3D52;
}

.grid_frases .grid_col h4{
	text-align: center;
	margin-bottom: 20px;
	font-weight: 700;
	font-family: var(--main-font);
	font-size: 1.8em;
	color: #333333;	
}

.grid_frases .txt{
	text-align: justify;
}

.titulo_big{
	text-align: center;
	font-weight: 700;
	font-family: var(--main-font);
	font-size: 3em;
	color: #333333;
}

.intro_home{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	text-align: center;	
}

.bloque_slogan{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 50px;
	text-align: center;
	margin-top: 20px;
}

.bloque_slogan div{
	color: #6CA394;
	text-align: justify;
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
}

.bloque_slogan div img{
	width: 100%;
	
}

.bloque_contenido_inner{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	padding-top:40px; 
}


/**/

.box_gris{
	background: #f0f4f8;
}

.grid_eventos{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-left: -20px;
	margin-right: 20px;
}

.grid_eventos .grid_col{
	margin: 40px 20px 0 20px;
	width: 30%;
}

.grid_eventos td{
	vertical-align: top;
}

.grid_eventos .fecha{
	width:80px; 
	padding-right: 10px;
}

.grid_eventos .fecha .fecha_ball{
	width:70px; 
	height: 70px;	
	-webkit-border-radius: 50%;
	border-radius: 50%;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00afaa+0,50c9c6+100 */
	background: #00AFAA; /* Old browsers */
	font-family: var(--main-font);
	font-weight: 800;
	color: #FFF;
	text-align: center;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.grid_eventos .fecha .fecha_ball_inner{
	display: inline-block;
	box-sizing: border-box;
}

.grid_eventos .fecha .fecha_ball .dia{
	font-size: 35px;
	line-height: 25px;
	text-transform: uppercase;
	letter-spacing: -1px;
}

.grid_eventos .fecha .fecha_ball .mes{
	font-size: 21px;
	line-height: 21px;
	text-transform: uppercase;
	letter-spacing: -1px;
	text-align: center;
}

.grid_eventos .hora{
	font-size: .9em;
	color: #909090;
}

.grid_eventos .descripcion{
	margin-top: 10px;
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	background: rgba(255,255,255,.8);
	
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

.grid_eventos .descripcion a, .grid_eventos .descripcion a:hover, .grid_eventos .descripcion a:active, .grid_eventos .descripcion a:link, .grid_eventos .descripcion a:visited{
	color:#626262;
}

.grid_eventos .descripcion a:hover{
	color:#909090;
}

/**/

.grid_articulo{
	display: flex;
    align-items:flex-start;
}

.grid_articulo .col_menu{
	width: 400px;
	min-width: 400px;
	padding-left:40px;
}

.grid_articulo .col_articulo{
	flex-grow:1;
}

.grid_articulo .col_menu .widget_menu_box{	
	padding: var(--padding-small);
	background: var(--color-3b);
}

/**/
.bread_crumbs{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	padding: .5rem 2rem;
	text-align: center;
	background: var(--color-3b);
	font-size: .9em;
}

.bread_crumbs{
	color: #BBBBBB;
}

.bread_crumbs a, .bread_crumbs a:hover{
	color: inherit;
	text-decoration: none;
}

.bread_crumbs i{
	font-size: .8em;
	margin-left: 3px;
	margin-right: 3px;
}

.italic{
	font-style: italic;
}

/**/

.barra_logos{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 40px;
}

.barra_logos:last-child{
	margin-bottom: 0;
}

.barra_logos .grid_col{
	box-sizing: border-box;
	width: 110px;
	align-items: center;
	justify-content: center;
}

.barra_logos .grid_col .img_box{
	box-sizing: border-box;
	border: solid 1px #C0BBC3;
	width: 110px;
	height: 110px;
	padding: 15px;
	align-items: center;
	display: flex;	
	margin: 0 auto;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

.barra_logos .grid_col img{
	width: 100%;
	
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-khtml-opacity: 0.8;
	opacity: 0.8;
}


/**/

.tabs_bloque .tabs_box .tabs_item{
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	display: none;
}

.tabs_bloque .tabs_box .tabs_item.activo{	
	display: initial;
}


.tabs_bloque{
	display: inline-block;
	box-sizing: border-box;	
	width: 100%;
	float: left;
}

.tabs_bloque ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: flex-start;
  border-bottom: solid 1px #cdcdcd;
  margin-bottom: 20px;
}

.tabs_bloque li {
	padding: 5px 20px;	
	border: solid 1px #FFF;
	border-bottom: solid 1px #cdcdcd;
	margin-bottom: -1px;	
	font-family: var(--main-font);
    font-weight: var(--font-regular);
    font-size: 1.2em;
    color: #6CA394;	
	
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	cursor: pointer;
}

.tabs_bloque li:hover, .tabs_bloque li.activo:hover{
	color: #74cbb3;	
}

.tabs_bloque li.activo{	
	border: solid 1px #cdcdcd;
	border-bottom: solid 1px #ffffff;	
    color: #6CA394;	
	
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
}

/**/



/**/

.boton{
	-webkit-border-radius: 5px;
	border-radius: 5px;	
	padding: 10px 30px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--main-font);
	font-weight: var(--font-semi-bold);
	max-width: max-content;
	width: auto;	
	position: relative;
	text-decoration: none;
	background: var(--color-1);
}

.boton-animado{	
	background: #FFF;
	position: relative;
	overflow: hidden;	
}

.boton-animado .bk{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: var(--color-5);
	width: 0;
}

.boton-animado:hover{
	background: var(--color-5);
}

.boton-animado .txt{
	position: relative;
	z-index: 1;
	color:var(--color-1);
}

.boton-animado:hover .txt{
	color:#FFF;	
}

.boton-animado:hover .bk{
	width: 100%;
}

.boton-color-alt .bk, .boton-animado:hover{
	background: var(--color-3);
}

.boton-color-alt .txt{
	color: var(--color-7);
}


/**/

.heading-line {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.heading-line span.small {
  width: 20px;
  height: 4px;
  border-radius: 6px;
  background-color: var(--color-1);
  margin: 0 6px;
}

.heading-line span.length {
  width: 60px;
  height: 4px;
  border-radius: 6px;
  background-color: var(--color-2);
  margin: 0 6px;
}

.txt_center_bar{
	padding: 1rem;
	margin-top: 1rem;
	font-size: 2.5em;
	font-weight: var(--font-bold);
	text-align: center;
	margin-bottom: var(--padding-small);
	color: var(--contrast-2);
}

.tarjetas_servicios{
	display: flex;
	justify-content: space-between;
}

.tarjetas_servicios .tarjeta{
	
	font-size: 1em;
	
	max-width:31%;
	-webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,.2);
	box-shadow: 0 0 20px 0 rgba(0,0,0,.2);
	
	-webkit-border-radius: 5px;
	border-radius: 5px;
	padding: var(--padding-small);
	position: relative;
	overflow: hidden;
}

.tarjetas_servicios .tarjeta .icono{
	position: absolute;
	width: 300px;
	height: 300px;
	right: -20%;
	top:-25%;
	z-index: -1;
	background: rgba(125,125,125,.1);
	
	-webkit-border-radius: 50%;
	border-radius: 50%;
	padding: 3rem;
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.tarjetas_servicios .tarjeta .icono i{
	line-height: 1em;
	font-size: 180px;
	color: #FFF;
}

.tarjetas_servicios .tarjeta h1{
	font-size: 1.7em;
	font-weight: var(--font-bold);
	color:var(--color-6);
}

.tarjetas_servicios .tarjeta:hover{
	 transform: translate(0,-1rem); /* Equivalente a translateX(10px) */
	 cursor: pointer;	
	 color: #000;
}

.tarjetas_servicios .tarjeta:hover .icono{
	transform: scale(1.2);
}

.tarjetas_servicios .tarjeta:hover h1{
	color: var(--color-3);
}

/**/

.bloque-color{
	background: var(--color-7);
}

/**/
.call-to-action-wide{
	display: flex;
	flex-wrap: wrap;
}

.call-to-action-wide .call_btn{
	text-decoration: none;
	color: #FFF;
	display: flex;
	justify-content: space-around;
	width: 100%;
	flex-wrap: wrap;
	line-height: 1em;
}

.call-to-action-wide .call_btn div{
	width: 100%;
	text-align: center;
}

.call-to-action-wide .call_btn .txt{
	font-weight: var(--font-light);
}

/**/
.formulario-contacto{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.formulario-contacto .form-input-box{
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	width: 100%;
	margin-bottom: var(--padding-small);
	gap:var(--padding-small);
}

.formulario-contacto .form-input{
	flex-grow: 1;
	text-align: left;
}

.formulario-contacto .form-input .etiqueta{
	
}


.formulario-contacto .form-input input, 
.formulario-contacto .form-input textarea{
	background: none;
	color: var(--color-2);
	border: solid 1px var(--color-2);
	font-size: 1em;
	font-family: var(--main-font);
	border-top: none;
	border-right: none;
	width: 100%;
	outline: none !important;
	padding: 2px 8px; 
}

.formulario-contacto .form-control{	
	color: var(--color-2);
	border: solid 1px var(--color-2);
	font-size: 1em;
	font-family: var(--main-font);

	-webkit-border-radius: 0 0 0 var(--border-radius-micro);
	border-radius: 0 0 0 var(--border-radius-micro);

	border-top: none;
	border-right: none;
}

.formulario-contacto .form-control:focus,  .formulario-contacto .form-select:focus{
	box-shadow: none !important;
}


.formulario-contacto .form-input input.is-invalid, .formulario-contacto .form-input textarea.is-invalid, .formulario-contacto .form-control.is-invalid{	
	border: solid 1px var(--color-1);
	border-top: none;
}

.formulario-contacto .warning{
	width: 100%;
	text-align: left;
	margin-bottom: 1rem;
}

.form-controles{
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

/*BLOQUES*/

.titulo-solid{	
	font-size: 2.5rem;
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	display:inline-block; 
	margin-bottom: var(--padding-small);
	text-align: left;
	width: 100%;
	/*	
	margin-left: 1.5rem;
	margin-right: 1.5rem;
	*/
}

.titulo-solid > span{
	padding: 0;
	line-height: 1.5;
}

.titulo-color-1 > span{
	color: var(--color-1);
}

.titulo-color-2 > span{
	color: var(--color-2);
}

.titulo-color-3 > span{
	color: var(--color-1);
	background: #FFF;
}

.titulo-color-4 > span{
	color: var(--color-2);
	background: #FFF;
}

.titulo-solid i{
	visibility: hidden;
}

.titulo-subhead, .articulo h2, .articulo h3, .articulo h4{
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	font-size: 2.5em;
	margin-bottom: var(--padding-small);	
}

h1.titulo-box{
	margin-bottom: 0;
	margin: var(--padding-big) 0;
	text-align: center;
}

h1.titulo-bttom-extra{
	margin: 6rem 0;
}

.palabras-rollover{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	flex-flow: row wrap;
	gap: .5rem 1rem;
	font-size: 1.5em;
	letter-spacing: -2px;
	line-height: .8em;
	font-weight: var(--font-regular);
	margin-bottom: var(--padding-small);
}

.palabras-rollover::after {
  content: "";
  flex: auto;
}

.palabras-rollover div{
	-moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    -ms-transition: all 0.5s;	
	color: var(--color-2);
	letter-spacing: 2px; 
	opacity: 0.1;
}

.extra-bottom{
	padding-bottom: 8rem;
	position: relative;
}

.frase-bottom{
	position: absolute;
	bottom: var(--padding-small);
	right: 0;
	
	display: inline-block;
	box-sizing: border-box;
	float: right;
	line-height: .9em;
	font-size: 4em;
	font-weight: var(--font-bold);
}

/**/
#we_are{
	line-height:1em;
	text-align: left;
	color: #FFF;
	font-size: 3.5em;
	font-family: var(--alt-font);
	font-weight: var(--font-black);
	display: inline-block;
	margin: 0 auto;
}

#we_are span{
	opacity: 0.5;
}


#we_are a{
	color: #FFF;
	text-decoration: none;
}

.banner-texto h2{
	color: var(--color-2);
	text-align: center;
	font-family: var(--alt-font);
	margin-bottom: var(--padding-small);
	font-weight: var(--font-light);
	font-size: 2em;
}

.banner-texto h1{
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
	font-size: 1.2em;
	text-transform: uppercase;
	color: var(--color-2);
	text-align: center;

	margin-bottom: var(--padding-small);
}

.banner-texto h2 b{
	font-weight: var(--font-bold);
}

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

.img-bk-side{
	position: absolute;
	width: 50%;
	left: 0;
	top: var(--padding-big);
	max-width: 700px;
	padding-right: var(--padding-big);
}

.img-bk-side img{
	width: 100%;
}


/*
CAJAS
.palabras-cloud{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;	
}

.palabras-cloud div{
	background: rgba(255,255,255,.8);
	padding: 10px 2px 0px 17px;
	font-size: 1.4em;
	text-transform: uppercase;
	font-weight: var(--font-semi-bold);
	line-height: 1em;
}
*/

/*
UL
.palabras-cloud ul li{
	text-transform: uppercase;
	line-height: 1.3em;
	font-weight: var(--font-semi-bold)
}
*/

.palabras-cloud{
	display: flex;
	flex-wrap: wrap;
	gap: .3rem .6rem;
	margin-top: var(--padding-small);
	font-size: .9em;
}

.palabras-cloud div{
	font-weight: var(--font-light);
	line-height: 1.4em;
	color: var(--color-3a);
}

.palabras-cloud i{
	margin-right: .4rem;
}


/*FRASCO*/

.imagen_animada{
	position: relative;
	width: 100%;
}

.imagen_animada img{
	width: 100%;	
}

.imagen_animada .img-overlap{
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;	
}

.frasco .brillo{	
	animation: flickering 3s linear infinite;
}

/**/

.relojes{
	display: flex;
	justify-content: center;
	gap: 4rem;
	width: 100%;
	margin-bottom: 2rem;
}

.relojes .reloj{
	width:20%;	
}

/**/
.arrow-box{
	display: flex;
	justify-content: center;
	width: 100%;
	margin-top: 2rem;
}

.arrow-down {
  width: 0; 
  height: 0; 
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;  
  border-top: 30px solid #FFF;
  animation: fadeInDown 1.2s ease-in-out infinite;	
}

@keyframes fadeInDown {
   0% {
      opacity: 0;
      transform: translateY(-1rem);
   }
   100% {
      opacity: 1;
      transform: translateY(2rem);
   }
} 

@keyframes flickering {
  0% {
    opacity:0.1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1);
  }
  
  2% {
    opacity:1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1);
  }
  8% {
    opacity:0.1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1);
  }
  9% {
    opacity:1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1);
  }
  12% {
    opacity:0.1;
    text-shadow: 0 0 rgba(242, 22, 22, 1);
  }
  20% {
    opacity:1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
  25% {
    opacity:0.3;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
  30% {
    opacity:1;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
  
  70% {
    opacity:0.7;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
  
  72% {
    opacity:0.2;
    text-shadow:0 0 29px rgba(242, 22, 22, 1)
  }
  
  77% {
    opacity:.9;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
  100% {
    opacity:.9;
    text-shadow: 0 0 29px rgba(242, 22, 22, 1)
  }
}

/**/

.x2-box, .x3-box{
	display: flex;	
	align-items: center;
	overflow: hidden;
}

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

.x2-box .x2-col{
	max-width: 50%;	
	position: relative;	
	padding: var(--padding-big) 0;
	flex-grow: 1;
}


.x2-box .x2-col:first-child{
	padding-right: var(--padding-big);
}

.x2-box .x2-col:last-child{
	padding-left: var(--padding-big);
}

.x3-box{
	display: flex;
	justify-content: space-between;
}

.x3-box .x3-col{
	display: flex;
	align-self: stretch;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 30%;
}

.x3-box h4{
	text-align: left;
}

.x3-box .x3-col .pic{
	align-self: end;
	text-align: center;
	height: 180px;
}

.x3-box .x3-col div{
	width: 100%;
	text-align: left;
}

.x3-box .x3-col .pic img{
	height: 100%;
	object-fit: contain;
}

.x4-box {
	display: flex;
	justify-content: space-between;
	gap:var(--padding-small);
}

.align-middle{
	align-self: center;
}

.pic-full{
	width: 100%;
}

.no-wrap{
	white-space: nowrap;
}

/**/

.bk-triangulo{
	position: absolute;
	left: 0;
	top: 0;
	width: 45%;
	height: 100%;
	z-index: -1;
}

.bk-triangulo-inverse{
	left: auto;
	right: 0;
	transform: scaleX(-1);
}

.bk-cuadro{
	position: absolute;
	left: 0;
	top: 20%;
	width: 30%;
	z-index: -1;
}

.bk-cuadro-inverse{
	left: auto;
	right: 0;
	transform: scaleX(-1);
}

.bk-solid{
	width: 50%;
	height: 100%;
	position: absolute;
	z-index: -2;
	left: 0;
	top: 0;
}

.bk-solid-inverse{
	left: auto;
	right: 0;
	transform: scaleX(-1);
}

.bk-solid-full-remove{
	display: none;
}

/**/
.logos_clientes{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}

.logos_clientes .slide-logo{
	width: 100%;
}

.logos_clientes .slide_box{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;	
}

.logos_clientes .slide_box .logo{
	display: flex;
	align-items: center;
	width: 15%;
	justify-content: center;
	padding: 1.5rem 0;
}

.logos_clientes .slide_box .logo img{
	max-height: 100%;
	max-width: 100%;
}


/*LOGOS MARQUEE*/

.slide-logo-marquee-wrapper {
	overflow: hidden;
	white-space: nowrap;
	display: flex;
	position: relative;
}

.slide-logo-marquee {
	display: inline-flex;
	will-change: transform;
	gap: var(--padding-small);
}

.slide-logo-marquee .logo{
	display: inline-flex;
	will-change: transform;
	align-items: center;
}


.slide-logo-marquee .logo img {
	width: 160px;
	height: auto;
	object-fit: contain;
}



/**/
.logos-varios{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
}

.logos-varios .slide-logos-varios{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	height: 100%;
	align-items: center;
	gap: 1.5rem;
}

.slide-logos-varios .logo{
	width: 28%;
}

.slide-logos-varios .logo img{
	width: 100%;
}

/**/

.animate-typing{
	height: 100px;
}

.botones-team-wrapper{
	display: flex;
	width: 100%;
	justify-content: space-around;
}

.botones-team{
	display: inline-flex;
	justify-content: flex-start;
	gap: var(--padding-micro);
}

.botones-team a{
	text-transform: uppercase;
	font-weight: var(--font-light);
	font-size: .9em;
	padding: .6rem 4rem .3rem 4rem;
}
/**/

.btn-big, .btn-basico{
	display: inline-block;
	box-sizing: border-box;
	background: var(--color-2);
	color: #FFF;
	padding: .5rem 1rem;
	text-decoration: none;
	font-weight: var(--font-bold);
	font-size: 1.2em;
	border: none;
	white-space: nowrap;
	-webkit-border-radius: var(--border-radius-btn);
	border-radius: var(--border-radius-btn);
}

.btn-basico-small{
	font-size: .9em;
	padding: .3rem .8rem;
}

.btn-big:hover, #template-pager .cycle-pager-active{
	color: #FFF;
	background: var(--color-1);
}

.btn-big i{
	margin-left: .5rem;
}

.btn-color-1, .btn-color-1:hover{
	background: var(--color-1);
}

.btn-color-1:hover{
	background: #FFF;
	color: var(--color-1);
}

.btn-color-2, .btn-color-2:hover{
	background: var(--color-2);
}

.btn-color-2:hover{
	background: #FFF;
	color: var(--color-2);
}

.btn-basico-color-1{
	background: var(--color-1);
}

/**/

/**/

.btn-effect{
	display: inline-flex;
	overflow: hidden;
	position: relative;
}

.btn-effect .btn-content{
	display: inline-flex;
	align-items: center;
	position: relative;
	z-index: 1;
	ransition: all .2s;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}

.btn-effect .btn-bk{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: var(--color-1);

	transition: all .2s;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;

	transform: scaleX(0);
	transform-origin: top left;
}

.btn-basico-color-1.btn-effect .btn-bk{
	background: var(--color-2);
}

.btn-basico-color-invert.btn-effect .btn-bk{
	background: #FFF;
}

.btn-effect:hover .btn-bk{
	transform: scaleX(1);
}

.btn-effect:hover .btn-content{
	color: #FFF;
}

.btn-basico-color-invert:hover .btn-content{
	color: var(--color-1) !important;
}


/**/

.p-med{
	color: var(--color-3);
}

.remove-padding-bottom{
	padding-bottom: 0 !important;
}

.remove-padding-left{
	padding-left: 0 !important;
}

/**/

.img-box-simple{
	align-self: flex-end;
}

.img-box-simple img{
	width: 100%;
}

.img-bottom{
	display: flex;
	justify-content: space-around;
	align-items: end;
}

.img-bottom .img-box{
	width: 100%;
	max-width: 60%;
	padding: var(--padding-small);
	padding-bottom: 0;
}

.img-bottom .img-box img{
	width: 100%;
}

/**/

.sm_contacto{
	margin-top: var(--padding-small);
}

.sm_contacto .sm_bar{
	display: flex;
	justify-content: flex-start;
	gap: .5rem;	
}

.sm_contacto .sm_bar a{
	color: #FFF;
}

/*PEFRILES*/
.tabs-contenedor, .tabs-box{	
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap:var(--padding-small);
	position: relative;
}

.tabs-contenedor{
	flex-wrap: wrap;
	gap:var(--padding-big); 
}



.titulo-barra{
	display: flex;
	border-left: solid 2px var(--color-1);
	margin-bottom: var(--padding-small);
}

.tabs-box .titulo-barra{
	width: 250px;
	min-width: 250px;
	margin-bottom: unset;
	
}

.titulo-barra h1, .titulo-barra h2{
	padding: 0;
	margin: 0;
	line-height: 1em;
	margin-top: 2rem;
	padding-left: .5rem;
	display: inline-block;
	float: left;
	position: relative;
	bottom: -.1em;
	font-family: var(--alt-font);	
	font-size: 1.5em;	
	text-align: left;
}

.titulo-barra-azul{
	border-left: solid 2rem var(--color-2);
}

.tabs-box .tabs-content{
	flex-grow: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1rem;
	margin-right: -1rem;
}

.tabs-box .tabs-content .tabs-item{
	width: calc(33.3% - 1rem);
	position: relative;
	overflow: hidden;
}

.tabs-box .tabs-content .tabs-item img, .tabs-box .tabs-content .tabs-item picture{
	width: 100%;
}

.tabs-item .team-etiqueta{
	position: absolute;
	left:0;
	display: inline-block;	
	background: #FFF;
	padding: .5rem .5rem 0 0;
	width: 100%;
	box-sizing: border-box;
	bottom:-45%;
	z-index: 1;
}

.team-etiqueta .etiqueta-bloque{	
	float: left;
}

.team-etiqueta .cargo{
	width: 100%;
	color: var(--color-2);
	font-size: .8em;
	line-height: 1em;
	margin-top: .5rem;
	/*padding-left: .5rem;*/
	text-decoration: none;
	
	display: none;
}

.team-etiqueta .nombre{
	font-size: .8em;
	margin-bottom:0;
	font-weight: var(--font-bold);
}

.tabs-item:hover .team-etiqueta{
	bottom: 0;
}

.tabs-item img, .articulo-autor .foto img{

	webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
	filter: grayscale(100%);

	transition: all .3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
	
	-webkit-transition-timing-function: ease-in-out;
    -moz-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;



}

.tabs-item:hover img, .articulo-autor:hover .foto img{
	transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);

	webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
	filter: grayscale(0%);
	
}

/**/
.perfil-box{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: var(--padding-big);
}

.perfil-box .perfil-col{
	flex-grow: 1;
}

.perfil-box .foto{
	width: 40%;
	min-width: 40%;
}

.perfil-box .foto img{
	width: 100%;
	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
}

.perfil-box .cargo{
	font-size: 1.3em;
	line-height: 1em;
	margin-top: 1rem;	
	display: none;
}

.perfil-box .areas{
	font-size: .9em;
	margin-top: .5rem;
	color: var(--color-3);
}

.perfil-box .pefil_alt_titulo{
	display: none;
}

.perfil-box .pefil_titulo{
	display: unset;
}

.perfil-box .descripcion{
	margin-top: var(--padding-small);
}

/*CATEGORIA*/

.cat-bloque{
	margin-bottom: var(--padding-big);
	width: 100%;
}

.cat-bloque:last-child{
	margin-top: unset;
}

.cat-grid{
	lex-grow: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 2rem 1rem;
	margin-right: -1rem;
}

.cat-grid .cat-item{
	width: calc(25% - 1rem);
}

.cat-grid .cat-item .thumbnail{
	display: inline-block;
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	float: left;
	border: solid 1px var(--color-3b);
	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
	
}

.cat-grid .thumbnail img{
	width: 100%;
	transition: all .2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	
	-webkit-transition-timing-function: ease-in-out;
    -moz-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;	
    
	/*
	filter: grayscale(1);
    -webkit-filter: grayscale(1); /*
	*/

	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
}

.cat-grid .cat-item .thumbnail:hover img{
	transform: scale(.95,.95);
	-moz-transform: scale(.95,.95);
	-webkit-transform: scale(.95,.95);
	-o-transform: scale(.95,.95);
	-ms-transform: scale(.95,.95);	
	/*
	filter: grayscale(0);
    -webkit-filter: grayscale(0);
	*/
}

.cat-grid .cat-item, .cat-grid .cat-item .thumbnail:hover{
	color: var(--color-2);
	text-decoration: none;	
}

.cat-grid .cat-item .titulo-solid{
	font-size: 1.1em;
	margin-top: 1rem;
}

.cat-grid .descripcion{
	font-size:.8em;
}

.cat-grid .cat-item .descripcion{
	display: inline-block;
	box-sizing: border-box;
	float: left;
	margin-top: 1rem;
	padding-left: 1rem;
	border-left: 3px solid var(--color-1);
}

.cat-grid .cat-item .descripcion h2{
	font-size: 1.1em;	
	display: block;
	color: var(--color-3);	
}

.cat-grid .cat-item .autor{
	color: var(--color-3a);
	font-size: .9em;
}

.cat-grid .cat-item .autor a{
	color: inherit;
	text-decoration: none;
}

.btn-cat-grid{
	margin-top: var(--padding-small);
}

.remove-border{
	border: none !important;
}

/**/
.titulo-icono{
	font-family: var(--alt-font);
	padding-left: 2.5rem;
	display: flex;
	position: relative;
	font-weight: var(--font-bold);
	color: var(--color-3);
	margin-bottom: .5rem;
	font-size: 1.5em;
}

.titulo-icono .icono{
	position: absolute;
	top: -2px;
	left: 0;
	width: 1.5rem;
}

.txt-indent{
	padding-left: 2.5rem;
	margin-bottom: 2rem;
}


.titulo-icono-big{	
	padding-left: 2.5rem;
	display: flex;
	position: relative;
}

.titulo-icono-big .icono{	
	position: absolute;
	left: 0;
	top: 11px;
	width: 30px;
}

.slogan-animado{
	font-family: var(--alt-font);
	font-weight: var(--font-black);
	font-size: 2em;
}

.slogan-animado .subindex{
	font-size: .5em
}
 

/**/
.menu-direccion{
	display: flex;
	gap: 1rem;
	margin-bottom: 1rem;
}

.menu-direccion .btn-body{
	padding-bottom: 0;
	font-weight: var(--font-light);
	cursor: pointer;
}

.menu-direccion .btn-body.activo{
	font-weight: var(--font-bold);
}

.menu-direccion .btn-body:last-child{
	border: none;
	padding-right: unset;
}

/**/

.img-inline{
	width: 100%;
	display: block;
	text-align: center;
}

.img-inline img{
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	margin-top: 1em;
}


@media(max-width:1400px){
    .max-width {    
        float: left;
    }

	.team-grid .team-nombre{
		font-size: 1em !important;
	}
}

@media(max-width:calc(1400px + 2rem)){
	.x2-box .x2-col, .x2-box .x2-col-small{		
		padding: var(--padding-big);
	}
}

.self-end{
	align-self: flex-end !important;
}


.remove-padding{
	padding: 0 !important;
}

.remove-padding-bottom{
	padding-bottom: 0 !important;
}

.remove-margin-bottom{
	margin-bottom: 0 !important;
}

.remove-padding-top{
	padding-top: 0 !important;
}

.add-margin-top{
	margin-top: 4rem;
}

/**/
.facts-box{
	display: flex;
	justify-content: space-between;
	gap:4rem;
	flex-wrap: wrap;
}

.facts-box .facts-item{
	display: inline-block;
	flex-wrap: wrap;
	width: calc(50% - 2rem);
	justify-content: flex-start;
	color: #FFF;
	text-decoration: none;
	font-style: unset;
	cursor: pointer;
}

.facts-box .facts-item:hover{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-html-opacity: 1;
	opacity: 1;
}

.facts-box .facts-item:hover .thumbnail .foto img{
	transform: scale(1.05);
}

.facts-item .thumbnail{
	position: relative;
	width: 100%;	
	background: #FFF;
	padding: 1rem;
	padding-bottom: 0;
	border: solid 1px var(--color-2);
}

.facts-item .thumbnail .foto{
	height: 350px;
	width: 100%;
	overflow: hidden;
}

.facts-item .thumbnail .foto img{
	object-fit: cover;
	width: 100%;
	height: 100%;
	
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;	
}


.facts-item .thumbnail .icono{
	position: absolute;
	top: 2em;
	right: 2em;
	width: 15%;
	z-index: 1;
}

.facts-item .thumbnail .icono img{
	width: 100%;
}

.facts-item .texto p, .facts-item .texto .fact-question, .facts-item .texto .fact-answer{
	padding: 1rem;
	padding-top: 0;
	font-size: .9em;
}

.facts-item .titulo-solid{
	font-size: 1.1em;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.fact-resultado{
	position: absolute;
	z-index: 2;
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
	left:1rem;
	right: 1rem;
	bottom: 0;
	padding: .5rem;
	background: var(--color-3);
	text-align: center;
	
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	-html-opacity: 0;
	opacity: 0;
	
	transition: all 0.2s;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
	
}

.fact-revisado .fact-resultado{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-html-opacity: 1;
	opacity: 1;
}

.fact-swap.fact-revisado .fact-resultado{
	background: var(--color-2);
}

.fact-answer{
	display: none;
}

.fact-swap.fact-revisado .fact-answer{
	display: flex;
}

.fact-swap.fact-revisado .fact-question{
	display: none;
}

.facts-box .facts-item a{
	color: #FFF;
	text-decoration: underline;
	font-style: italic;
}


/**/
.autor-wrapper{
	display: inline-block;
	box-sizing: border-box;
	padding: 1rem;	
	border: solid 1px var(--color-3b);
	padding-right: 1rem;
	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
}

.articulo-autor{
	display: flex;
	margin-top: var(--padding-big);	
	text-decoration: none;
	color: var(--color-2);
}

.articulo-autor:hover{
	color: var(--color-2);
}

.articulo-autor:hover .autor-wrapper{
	border: solid 1px var(--color-1);
}

.autor-grid{
	display: flex;
	align-items: flex-start;
	gap: 1rem;	
	justify-content: flex-start;	
	font-size: .9em;
	flex: 0 0 auto;  /* fixed width */
	width: 100%;
	max-width: 100%;
}

.autor-grid .titulo-solid{
	font-size: 1.1em;
	margin-top: 1rem;
	margin: 0;
	display: inline-block;
	box-sizing: border-box;
}

.autor-grid .area{
	color: var(--color-3);
	font-size: .8em;
	text-decoration: none;
}

.autor-grid .resumen{
	color: var(--color-2);
	font-size: .9em;
	text-decoration: none;
	margin-top: 1rem;
}

.autor-grid .foto{
	width: 200px;
	min-width: 200px;
	overflow: hidden;
	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
}

.autor-grid .foto img{
	width: 100%;
}

.autor-grid .autor-col.descripcion{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
}


.titulo-solid-no-bk{
	line-height: 1em;
	margin-bottom: 1rem;
}

/**/

.full-screen-wrapper{
	position: relative;
	display: flex;
	margin-top: var(--header-height); 
	height: calc(100vh - var(--header-height));
}

/**/

.btn-contact{
	font-weight: bold;
	font-size: 14px;
	color: #fff;
	background-color: #ba0c2f;
	padding: 10px 30px;
	border: solid #ba0c2f 2px;
	box-shadow: rgb(0, 0, 0) 0 0 0 0;
	transition : 1000ms;
	transform: translateY(0);
	display: flex;
	flex-direction: row;
	align-items: center;
	cursor: pointer;
	text-decoration: none;

}

.btn-contact:hover{

	transition : 1000ms;
	transform : translateY(-0px);
	background-color: #fff;
	color: #BA0C2F;
	border: solid 2px #BA0C2F;
	text-decoration: none;

}

.x3-box .x3-col .contact{
	width: auto;
	margin-top: 20px;
}
.x3-box .x3-col .txt{
	min-height: 360px;
}

/*2026*/
main{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.main-wrapper{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	overflow-x: hidden;
	position: relative;
	padding: 0 var(--padding-big);
}

.inner-wrapper{
	width: 100%;
	max-width: var(--max-width);
	padding: var(--padding-big) 0;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	position: relative;
}

.inner-wrapper-between{
	padding: 0 var(--padding-big) !important;
}

.intro-swap-wrapper{
	display: inline-flex;
	flex-wrap: wrap;
	gap: var(--padding-big);
	font-family: var(--alt-font);
	font-size: 2em;
}

.intro-swap-wrapper > *{
	width: 100%;
	display: block;
	text-align: center;
}

.intro-swap{
	display: inline-flex;
	flex-wrap: wrap;
	gap: var(--padding-small);
	font-weight: var(--font-regular);
	color: var(--color-3a);
	line-height: 1.2em;
	justify-content: space-around;
}

.intro-swap > *{
	width: 100%;
}

.intro-swap .txt-swap{
	font-weight: var(--font-bold);
	color: var(--color-1);
}

.intro-swap .swap-separador{
	width: 100%;
	max-width: 250px;
	height: 2px;
	background: var(--color-1);
}

.intro-swap .txt-alt{
	font-weight: var(--font-light);
}

#intro-swap-txt{
	text-transform: uppercase;
}

/**/

.grid-flex-x2{
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap: var(--padding-big);
}

.grid-flex-x2 .col{
	display: flex;
	width: calc(50% - (var(--padding-big)/2));
	align-items: center;
}

.block-wrapper{
	display: flex;
	width: 100%;
	justify-content: space-around;
	flex-wrap: wrap;
}

.block-wrapper > *:not(.btn-big){
	width: 100%;
}

.block-wrapper .img-block{
	width: 100%;
	max-width: 500px;
}

.block-wrapper .img-block-txt{
	width: 100%;
	font-size: .8em;
	text-align: center;
	padding-top: var(--padding-micro);
}

h1.titulo-1{
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	margin-bottom: var(--padding-med);
	font-size: 2.5rem;
	text-align: left;
	line-height: 1.1em;
}

h1.titulo-1 span{
	font-weight: var(--font-bold);
}

h2.titulo-2{
	font-weight: var(--font-bold);
	font-size: 1.5rem;
	margin-bottom: 0;
}

/**/

.grid-cards{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: 1fr;
	grid-column-gap: var(--padding-micro);
	grid-row-gap: var(--padding-micro);
}

.grid-cards .gc-item{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-around;
	align-items: center;
	height: 380px;
	position: relative;

	perspective: 1000px; /* necesario para el efecto 3D */
	cursor: pointer;

}

.grid-cards .gc-item .icono img{
	width: 100%;
	max-width: 200px;
}

.grid-cards .gc-item .icono{
	display: flex;
	justify-content: space-around;
}

.grid-cards .gc-item h1{
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	margin-top: var(--padding-small);
	font-size: 2em;
	text-align: center;
	color: var(--color-3);
}

.grid-cards .gc-item .gc-item-card{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 380px;
	background: var(--color-3b);
	display: flex;
	align-items: center;
	justify-content: space-around;

	padding: 0 var(--padding-med);

	backface-visibility: hidden;
	transition: transform 0.6s ease;
	overflow: hidden;

	-webkit-border-radius: var(--border-radius-micro);
	border-radius: var(--border-radius-micro);
}

.grid-cards .gc-item .gc-item-card h2{
	font-weight: var(--font-light);
	font-family: var(--alt-font);
	font-size: 1.3em;
}

.gc-item-card.front {
	background: #ffffff;
	transform: rotateY(0deg);
}

.gc-item-card.back {
	background: #f3f3f3;
	transform: rotateY(180deg);
}

.gc-item-card.back p:last-child{
	margin-bottom: 0;
}

	/* --- Desktop: hover --- */
.gc-item:not(.touch-device):hover .front {
	transform: rotateY(-180deg);
}

.gc-item:not(.touch-device):hover .back {
	transform: rotateY(0deg);
}

/* --- Móvil: click/tap --- */
.gc-item.touch-device.active .front {
	transform: rotateY(-180deg);
}

.gc-item.touch-device.active .back {
	transform: rotateY(0deg);
}

/**/

.grid-cards-x3{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
	grid-column-gap: var(--padding-micro);
	grid-row-gap: var(--padding-micro);
}

.grid-cards-x3 .card-item{
	background: var(--color-3b);
	display: flex;
	align-items: center;
	justify-content: space-around;
	padding: var(--padding-med);
	-webkit-border-radius: var(--border-radius-micro);
	border-radius: var(--border-radius-micro);
	flex-wrap: wrap;
	text-align: center;
}

.grid-cards-x3 h2{
	font-weight: var(--font-light);
	font-family: var(--alt-font);
	font-size: 1.5em;
	margin-bottom: var(--padding-small);
}

/**/

.grid-cards-servicios{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 1fr;
	grid-column-gap: var(--padding-micro);
	grid-row-gap: var(--padding-micro);
}

.grid-cards-servicios .gcs-item-wrapper{
	display: flex;
	justify-content: space-around;
	align-items: flex-start;
	position: relative;
	padding: var(--padding-med);
	background: var(--color-3b);

	text-decoration: none;
	color: var(--color-2);

	-webkit-border-radius: var(--border-radius-micro);
	border-radius: var(--border-radius-micro);
}

.gcs-item > *{
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
}

.gcs-item .icono{
	position: relative;
}

.gcs-item img{
	width: 100%;
}

.gcs-item .icono .icono-front,
.gcs-item .icono .icono-back{
	position: absolute;
	left: 0;
	top: 0;

	transition: all .3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}

.gcs-item .icono .icono-back{
	opacity: 0;
}

.gcs-item-wrapper:hover{
	background: var(--color-2);
	color: #FFF;
}

.grid-cards-servicios .gcs-item-wrapper:hover .btn-more{
	gap: 15px;
}

.gcs-item-wrapper:hover .gcs-item .icono .icono-front{
	opacity: 0;
}

.gcs-item-wrapper:hover .gcs-item .icono .icono-back{
	opacity: 1;
}

.gcs-item h1{
	margin: var(--padding-small) 0;
	font-family: var(--alt-font);
	font-size: 1.2em;
	font-weight: var(--font-light);
}

.gcs-item .txt{
	font-size: .85em;
}

.grid-cards-servicios .gcs-item-wrapper .btn-more{
	position: absolute;
	bottom: var(--padding-mini);
	right: var(--padding-mini);
	text-align: right;
	display: inline-flex;
	justify-content: space-between;
	gap: 3px;
	align-items: center;
	font-size: .8em;

	transition: all .3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}

/**/

.banner-titulo{
	display: flex;
	justify-content:space-around;
	flex-wrap: wrap;
	gap: var(--padding-mini);
	text-align: center;
}

.banner-titulo > *{
	width: 100%;
}

.banner-titulo h1{
	margin: 0;
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	color: var(--color-1);
	font-size: 2.5rem;
}

.color-1{
	color: var(--color-1) !important;
}

.color-2{
	color: var(--color-2) !important;
}

.img-full-w img{
	width: 100%;
}

/**/

.grid-cards-team{
	display: flex;
	justify-content: flex-start;
	gap: var(--padding-micro);
	flex-wrap: wrap;
	align-items: center;
}

.gct-item{
	width: calc(50% - (var(--padding-micro))/2);
	display: flex;
	aspect-ratio: 1/1;
	background: var(--color-3b);
	color: var(--color-3);
	align-items: center;
	justify-content: space-between;
	padding: var(--padding-small);

	text-decoration: none;

	transition: all .3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;

	-webkit-border-radius: var(--border-radius-micro);
	border-radius: var(--border-radius-micro);
}

.gct-item > div{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	gap: var(--padding-micro);
}

.gct-item .icono-wrapper{
	display: inline-block;
	box-sizing: border-box;
	max-width: 65%;
	position: relative;
	aspect-ratio: 1/1;
}

.gct-item .icono{
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	width: 100%;
	aspect-ratio: 1/1 !important;
}

.gct-item .icono-front,
.gct-item .icono-back{
	position: absolute;
	left: 0;
	top: 0;

	transition: all .3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}

.gct-item .icono-wrapper img{
	width: 100%;
	aspect-ratio: 1/1;
}

.gct-item .titulo{
	width: 100%;
	text-align: center;
	text-transform: uppercase;
	font-size: .8em;
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
}

.gct-item:hover{
	background: var(--color-1);
	color: #FFF;
}

.gct-item .icono-back{
	opacity: 0;
}

.gct-item:hover .icono-front{
	opacity: 0;
}

.gct-item:hover .icono-back{
	opacity: 1;
}

/**/
.marquee-logos-wrapper{
	display: flex;
	width: 100%;
	overflow-x:hidden;
}

.marquee-logos{
	display: flex;
	justify-content: space-between;
	gap: var(--padding-micro);
	align-items: center;
	width: 100%;
}

/**/

.marquee {
	width: 100%;
	overflow: hidden;
	position: relative;
	background: #fff; /* opcional */
}

.marquee__track {
	display: flex;
	width: max-content;
	animation: marquee 20s linear infinite;
}

.marquee .logo {
	flex: 0 0 auto;
	padding: 0 40px; /* espacio entre logos */
}

marquee .logo img {
	height: 50px; /* ajusta según tu diseño */
	width: auto;
	display: block;
}

/**/
.hero-interior{
	display: flex;
	position: relative;
	width: 100%;
	height: 30vw;
	min-height: 300px;
}

.hero-interior-pic{
	position: absolute;
	display: flex;
	height: calc(100% + 5rem);
	min-height: 70%;
	justify-content: space-around;
	align-items: center;
	width: 60%;
	bottom: -6rem;
	left: 0;
	z-index: 1;
}

.hero-interior-pic img{
	object-fit: contain;
	height: 100%;
	aspect-ratio: 1/1;
}

/**/

h1.titulo-servicios{
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	margin-bottom: var(--padding-med);
	font-size: 3em;
	text-align: center;
}

.services-wrapper{
	padding-top: var(--padding-xxl);
	padding-bottom: var(--padding-xxl);
}


.services-wrapper .txt-bloque{
	font-size: 1.5em;
	color: var(--color-3);
	text-align: justify;
	text-align-last: center; /* Modern browsers */
	-moz-text-align-last: center; /* Firefox compatibility */
	font-weight: var(--font-light);
}

.bk-texture-1{
	background-image: url("../img/services/texture_1.webp");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	background-color: var(--color-3b);
}

.img-overlap-servicios{
	display: flex;
	width: 100%;
	justify-content: space-around;
	position: relative;
	padding: 0 0 var(--padding-big) 0;
}

.img-overlap-servicios img{
	width: 100%;
	margin-top: -4rem;
}

.enable-overflow{
	overflow: visible;
}

.img-overlap-med{
	max-width: 1000px;
}

.img-overlap-big{
	max-width: 1200px;
}

.img-overlap-full{
	padding: 0 0 var(--padding-big) 0;
	max-width: 100%;
}

.grid-texto-espaciado{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	grid-gap: var(--padding-mini) var(--padding-mini);
	font-weight: var(--font-bold);
	color: var(--color-1);
	padding: var(--padding-small) 0;
	padding-top: var(--padding-mini);
}


/**/

.menu-team{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 1fr;
	grid-column-gap: var(--padding-micro);
	grid-row-gap: var(--padding-micro);
	margin-top: var(--padding-small);
}

.menu-team a{
	display: inline-block;
	box-sizing: border-box;
	background: var(--color-1);
	color: #FFF;
	padding-top: .5rem;
	padding-bottom: .3rem;
	text-decoration: none;
	font-weight: var(--font-regular);
	font-size: .9em;
	border: none;
	white-space: nowrap;
	-webkit-border-radius: var(--border-radius-btn);
	border-radius: var(--border-radius-btn);
	text-align: center;
	text-transform: uppercase;
}

.menu-team a:hover{
	background: var(--color-2);
}

.lista-txt li{
	margin-bottom: var(--padding-mini);
}

.lista-txt li:last-child{
	margin-bottom: 0;
}

/*TEAM*/

h1.team-titulo{
	font-family: var(--alt-font);
	font-weight: var(--font-light);
	margin-bottom: var(--padding-med);
	font-size: 2em;
	text-align: left;
	width: 100%;
}

.team-grid{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 1fr;
	grid-column-gap: var(--padding-small);
	grid-row-gap: var(--padding-small);
}

.team-grid .team-item > *{
	width: 100%;
	text-align: left;
}

.team-grid .team-item{
	text-decoration: none;
}

.team-grid .team-thumbnail{
	margin-bottom: var(--padding-mini);
	border-radius: var(--border-radius-btn);
	-webkit-border-radius: var(--border-radius-btn);
	overflow: hidden;
}

.team-item .team-thumbnail img{
	width: 100%;

	webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
	filter: grayscale(100%);

	transition: all .3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	-ms-transition: all 0.3s;

	-webkit-transition-timing-function: ease-in-out;
	-moz-transition-timing-function: ease-in-out;
	-o-transition-timing-function: ease-in-out;
	transition-timing-function: ease-in-out;
}

.team-item:hover .team-thumbnail img{
	transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);

	webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
	filter: grayscale(0%);
}

.team-grid .team-nombre{
	font-family: var(--alt-font);
	font-weight: var(--font-bold);
	font-size: 1.1em;
	color: var(--color-1);
	letter-spacing: -.04em;
	margin-bottom: var(--padding-micro);
}

.team-grid .team-cargo{
	color: var(--color-3a);
	font-weight: var(--font-light);
	font-size: .8em;
}

.wrapper-img-iblap{
	margin-bottom: calc(-2 * var(--padding-big));
	z-index: 1;
}

.wrapper-img-iblap-top{
	padding-top: calc(2 * var(--padding-big));
}


@keyframes marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

/**/
@media(max-width:1280px){
	.menuPrincipal .mpParent,
	.menuPrincipal .mpSingle{
		font-size: .9em;
		padding-top: 1.5rem;
	}
}

@media(max-width:1200px){
	/*VARS*/
	:root {
		--header-height:80px;
	}

	.menuPrincipal .mpParent,
	.menuPrincipal .mpSingle{
		font-size: .9em;
		padding-top: 1.5rem;
	}


	/**/

	.hero-interior{
		font-size: .65em;
	}

	.bannerHome .slogan .linea,
	.hero-interior .slogan .line{
		font-size: 3em;
	}

	/**/
	.grid_articulo .col_menu{
		width: 300px;
		min-width: 300px;
	}

	/**/
	#we_are{
		font-size: 2.5em;
	}

	.titulo-solid,.titulo-subhead, .articulo h2, .articulo h3, .articulo h4{
		font-size: 2em;
	}

	titulo-subhead{
		font-size: 2em;
	}

	/**/
	.palabras-rollover{
		font-size: 1em;
	}

	.animate-typing{
		height: 70px;
	}
	/**/

	.x3-box .x3-col{
		width: 30%;
	}

	/**/

	.img-bottom .img-box{
		max-width: 80%;
	}
	/**/

	.tabs-box .titulo-barra{
		width: 200px;
		min-width: 200px;
	}

	.titulo-barra h1,.titulo-barra h2{
		font-size: 1.2em;
	}

	.titulo-barra{
		border-left: solid 1.5rem var(--color-1);
	}

	.titulo-barra-azul{
		border-left: solid 1.5rem var(--color-2);
	}


	/**/
	.cat-grid .cat-item{
		width: calc(33% - 1rem);
	}

	.facts-box{
		gap:2rem;
	}

	.facts-box .facts-item{
		width: calc(50% - 1rem);
	}

	.remove-padding{
		padding: 0px;
	}

	.remove-padding-bottom{
		padding-bottom: 0px;
	}

	.remove-margin-bottom{
		margin-bottom: 0px;
	}

	.remove-padding-top{
		padding-top: 0px;
	}

	.intro-swap-wrapper{
		font-size: 2em;
	}

	h1.titulo-1,
	.banner-titulo h1,
	.titulo-solid{
		font-size: 2.2rem;
	}

	.grid-cards .gc-item h1{
		font-size: 1.8em;
	}

	.hero-interior-pic{
		bottom: -4rem;
	}

	/**/

	.services-wrapper{
		font-size: .7em;
		max-width: 80% !important;
		padding-top: var(--padding-xxl);
		padding-bottom: var(--padding-xxl);
	}

	.img-overlap-servicios img{
		max-width: 80%;
	}

	.img-overlap-servicios.img-overlap-full img{
		max-width: 100%;
	}
}

@media(max-width:1200px) and (min-width: 700px){
	.slogan-animado{
		height: 4rem;
	}	
}


@media(max-width:1100px){

	.gridArticulos .boxArticulo {
		width: 50%;
	}

	#we_are{
		font-size: 2em;
	}

	:root {
		--padding-big:2rem;
	}

	.x4-box{
		flex-wrap: wrap;
	}

	.x4-box .x4-col{
		width: calc(50% - var(--padding-small));
	}

	.x3-box .x3-col .contact{
		width: auto;
		margin-top: 20px;
	}

	header .logo-box, header.alt_header .logo-box{
		width: 250px;
		padding:var(--padding-med)  var(--padding-med) var(--padding-mini) var(--padding-med);
	}

	.menuPrincipal{
		font-size: .85em;
	}

}

@media(max-width:1050px){
	.grid_trabajos .colTrabajos{
		width: 50%;
	}

	.grid-cards-servicios .gcs-item-wrapper {
		padding: var(--padding-small);
	}

}

@media(max-width:1000px){
	.gridArticulos .boxArticulo {
		width: 50%;
	}
}

@media(max-width:920px){
	:root {
		--header-height:50px;
		--padding-big:2rem;
		--font-size: 16px;

		--sombra-in:-.8rem;
		--sombra-out:.8rem;
	}

	.menuPrincipal{
		display: none;
	}

	.btnResponsivo{
		display:flex;
	}

	header .logo-box{
		padding:var(--padding-small)  var(--padding-med) var(--padding-mini) var(--padding-med);
	}

	header.alt_header .logo-box{
		padding:var(--padding-mini)  var(--padding-med) var(--padding-mini) var(--padding-med);
	}


	#sb_sidebar .hub_controles .sm_col{
		display: inline-block;
		float: left;
		width: 100%;
		margin-left: 10px;
		border-top: solid 1px rgba(255,255,255,.1);

	}

	#sb_sidebar .hub_controles .sm_col a{
		padding: 0px;
		font-size: 1.2em;
		margin-right: 6px;
	}

	.bannerHome .slide, .bannerHome{
		height:100vh;
	}

	/**/

	header{
		padding: 0px;
	}


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

	/**/

	.control-bar{
		left: 3.5rem;
		top:.8rem;
		font-size: 1em;
	}

	.control-bar {
		font-size: .8em;
	}

	.control-bar.search-bar{
		left: 110px;
	}

	.search-bar-movil{
		position: fixed;
		display: flex;
		left: 0px;
		top:var(--header-full-height);
		background: var(--color-3b);
		width: 100%;
		overflow: hidden;
		align-items: center;
		gap: .5rem;
		color: var(--color-3a);
		height: 0;
		padding: 0 2rem;

	}

	.search-bar-movil input{
		text-align: left;
		width: 100%;
	}

	.search-bar-movil.open{
		height: 38px;
		padding: .3rem 2rem;
	}

	.search-bar .search-input{
		display: none;
	}

	/**/

	.foot_grid{
		flex-wrap: wrap;
	}

	.foot_grid .grid_col.foot_middle{
		padding: 0px 0px;
	}


	.innerBox{
		padding: var(--padding-big) var(--padding-big);
	}

	.foot .innerBox{
		padding: var(--padding-big);
		padding-bottom: var(--padding-big);
	}

	/**/
	.txtBox{
		margin-bottom: 1rem;
	}

	.tablaArticulo .col_menu{
		width: 200px;
	}


	.pagina, .seccion {
		padding-top: 0px;
	}

	.pagina{
		padding-top: 1rem;
	}

	.articulo.two_col {
		column-count: 1;
		column-gap: 0px;
	}

	.gridArticulos .boxArticulo {
		width: 50%;
	}

	.removeTop{
		padding-top: 0px;
	}

	.comunicados .item p:last-child{
		margin-bottom: 0px;
	}

	/**/


	.goTop{
		margin-bottom: 1rem;
	}

	h1.tituloBox{
		max-width: 75%;
		font-size: 1.1em;
	}


	h1.tituloBox.tituloRelacionados {
		margin-top: 40px;
		margin-bottom: 0px;

	}

	.busqueda_listado{
		margin-bottom: 1rem;
	}

	.paginadoBox{
	}


	#map{
		width: 100%;
		height: 400px;
	}

	h1, h2, h3, h4, h5{
		font-family: var(--alt-font);
	}

	/**/

	.grid_articulo{
		flex-wrap: wrap;
	}

	.grid_articulo .col_menu{
		width: 100%;
		min-width: 100%;
		padding: 0px;
		margin-top: 1rem;
	}

	.articulo .articulo_tabla_inline{
		max-width: calc(100vw - 60px);
	}

	/**/

	.foot_grid .grid_col.foot_middle{
		padding: 1rem 0px 0px 0px;
	}

	.foot_sm{
		display: inline-block;
	}

	.foot .sm_bar{
		text-align: left;
		margin-top: 1rem;
	}

	.foot .sm_bar a, .foot .sm_bar a:hover{
		margin-left: 0px;
		margin-right: 10px;
	}

	.foot .legales{
		width: 100%;
		max-width: 100%;
		column-count: 2;
	}

	.foot .logotipos{
		width: 180px
	}

	.foot .logotipos .logos_grid_col {
		max-width: 100%;
	}


	.foot .legales .legales_grid_col{
		padding: 0px;
	}

	.foot .legales .legales_grid_col:first-child{
		padding-right:0px;
	}

	.foot .legales .legales_grid_col:last-child{
		padding-left:0px;
	}



	/**/
	.titulo-solid{
		font-size: 2em;
		/*margin-left: 1rem;*/
	}

	.titulo-subhead, .articulo h2, .articulo h3, .articulo h4{
		font-size: 1.5em;
	}

	.p-med{
		font-size: 1.4em;
	}

	.titulo-box{
		margin: 3rem 0rem;
	}

	/**/
	.palabras-rollover{
		font-size: 1.2em;
	}

	h3{
		font-size: 1.2em;
	}

	.x2-box .x2-col-small{
		max-width:50%;
	}

	.palabras-cloud{
		font-size: .9em;
	}

	/**/
	.relojes{
		gap: 1rem;
	}

	.reloj_box canvas {
		border: solid 2px rgba(255,255,255,.5);
		padding: .3rem;
	}




	/**/

	.logos_clientes .slide_box .logo{
		width: 20%;
		padding: .5rem 0rem;
	}

	#we_are{
		font-size: 2.7em;
	}


	/**/

	.arrow-down {
		border-left: 15px solid transparent;
		border-right: 15px solid transparent;
		border-top: 15px solid #FFF;
		animation: fadeInDown 1s ease-in-out infinite;
	}

	.animate-typing{
		height: 55px;
	}

	.x3-box .x3-col .pic{
		height: 140px;
	}

	.x3-box .x3-col{
		width: 30%;
	}



	/**/
	.img-bottom .img-box{
		max-width: 90%;
	}

	/**/
	.logos-varios .slide-logos-varios{
		gap: 1rem;
	}

	.slide-logos-varios .logo{
		width: 120px;
	}

	/**/
	.formulario-contacto .form-input-box{
		flex-wrap: wrap;
	}

	/**/
	.tabs-contenedor{
		gap: 4rem;
	}

	.tabs-box .titulo-barra{
		width: 200px;
		min-width: 200px;
	}

	.titulo-barra{
		border-left: solid 1.5rem var(--color-1);
	}

	.titulo-barra-azul{
		border-left: solid 1.5rem var(--color-2);
	}

	.tabs-box .tabs-content .tabs-item{
		width: calc(50% - 1rem);
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}

	/**/
	.team-etiqueta .cargo, .team-etiqueta .nombre{
		font-size: 1em;
	}

	.tabs-item .team-etiqueta{
		position: relative;
		bottom:0px;
		z-index: 1;
		margin-bottom: 1rem;
	}

	/**/

	.add-margin-top{
		margin-top: 3rem;
	}


	/**/
	.cat-grid .cat-item{
		width: calc(50% - 1rem);
	}

	/**/

	.facts-box{
		gap:2rem;
	}

	.facts-box .facts-item{
		width: calc(100%);
	}

	.autor-grid .titulo-solid{
		margin-left: 1rem;
		margin-right: 1rem;
	}

	.titulo-icono-big .icono{
		top: 8px;
		width: 25px;
	}


	.x4-box{
		flex-wrap: wrap;
	}

	.x4-box .x4-col{
		width: calc(50% - var(--padding-small));
	}


	/**/

	.intro-climber .ic-cloud-1{
		left:10vw;
	}

	.intro-climber .ic-cloud-2{
		left:0vw;
	}

	.intro-climber .ic-cloud-3{
		left:60vw;
	}

	/**/
	.bannerHome .info-box-wrapper .info-box{
		font-size: .9em;
	}

	.x3-box .x3-col .txt{
		min-height: 290px;
	}


	@keyframes fadeInDown {
		0% {
			opacity: 0;
			transform: translateY(-1rem);
		}
		100% {
			opacity: 1;
			transform: translateY(1rem);
		}
	}

	.remove-padding{
		padding: 0px;
	}

	.remove-padding-bottom{
		padding-bottom: 0px;
	}

	.remove-margin-bottom{
		margin-bottom: 0px;
	}

	.remove-padding-top{
		padding-top: 0px;
	}

	/**/

	.slide-logo-marquee .logo img {
		width: 140px;
	}

}


/**/
@media(max-width:850px){

	.galeria_slideshow .slide{
		padding: 1rem 0px;
	}


	.galeria_slideshow .slide .etiqueta{
		left: 0px;
	}


	.p-med{
		font-size: 1.4em;
		line-height: 1.1em;
	}

	/**/
	.logos-varios .slide-logos-varios{
		gap: 1rem;
	}

	.slide-logos-varios .logo{
		width: 100px;
	}

	/**/
	.tabs-box{
		flex-wrap: wrap;
	}

	.tabs-box .titulo-barra{
		width: 100%;
		min-width: 100%;
	}

	.grid-cards-servicios {
		grid-template-columns: repeat(2, 1fr);
	}

	.grid-cards-servicios .gcs-item-wrapper {
		padding: var(--padding-med);
		font-size: 1.2em;
	}


	.slide-logo-marquee{
		gap: var(--padding-small);
	}

	.slide-logo-marquee .logo img {
		width: 120px;
	}

	.team-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: 1fr;
	}

	.team-item{
		font-size: 1.2em;
	}

	.grid-cards-x3 .card-item{
		padding: var(--padding-mini);
		font-size: .9em;
	}

	.grid-cards-x3 .card-item h2{
		margin-bottom: var(--padding-mini);
	}

}

@media(max-width:815px){
	.intro-badge{
		width: 75px;
	}

}

@media(max-width:800px){
	.txtBox .igmFloat{
		width: 100%;
	}

	.txtBox .igmFloatRight, .txtBox .igmFloatLeft{
		padding: 0px;
		margin: 0px;
		margin-bottom: 1rem;
	}

	/**/
	.foot_grid{
		flex-wrap: wrap;
	}

	/**/

	.imagen_animada-box{
		max-width: 60% !important;
	}

}

@media(max-width:750px){


	/**/

	.boxContacto td{
		display: inline-block;
		box-sizing: border-box;
		float: left;
		width: 100%;
		padding: 0px !important;
		margin-bottom: 1rem;
	}

	/**/
	.x2-box{
		flex-wrap: wrap;
	}

	.x2-reverse{
		flex-direction: column-reverse;
	}


	.x2-box .x2-col, .x2-box .x2-col-small{
		max-width:100%;
		width: 100%;
	}

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

	.frasco{
		max-width: 250px;
		margin: 0 auto;
	}

	.bk-triangulo, .bk-cuadro{
		width: 60%;
		height:45%;
	}

	.team-block .bk-triangulo, .team-block .bk-cuadro{
		width: 60%;
		height:40%;
	}

	.servicios-block .bk-triangulo, .servicios-block .bk-cuadro{
		bottom: 0px;
		top: auto;
	}

	.innerBox, .foot .innerBox, .x2-box .x2-col, .x2-box .x2-col-small{
		padding: var(--padding-small);
	}

	.bk-solid-small-remove{
		display: none;
	}

	.bk-solid{
		width: 100%;
	}

	.bk-solid-full-remove{
		display: inline-block;
	}

	.animate-typing{
		height: auto;
	}

	/**/
	.x3-box{
		flex-wrap: wrap;
		gap: var(--padding-small)
	}

	.x3-box .x3-col{
		width: 100%;
		flex-wrap: nowrap;
		gap: 2rem;
		align-self: center;

	}

	.x3-box .x3-col div, .x3-box .x3-col h4{
		text-align: left;
	}

	.x3-box .x3-col h4{
		font-size: 1.5em;
	}

	.x3-box .x3-col .pic{
		height: auto;
		align-self: center;
		max-width: 20%;
	}

	.x3-box .x3-col .pic img{
		height: auto;
		width: 100%;
	}

	.x2-box{
		justify-content: space-around;
	}

	.hide-resp-small{
		display: none;
	}

	.bk-full{
		display: initial;
	}

	.bk-half-left, .bk-half-right{
		display: none;
	}

	.logos_clientes .slide_box .logo{
		width: 25%;
	}

	.x3-box .x3-col .txt{
		min-height: unset;
	}

	.gct-item{
		padding: unset;
	}

	.hero-interior-pic{
		max-height: 380px;
		height: 90vw;
		bottom: -12vw;
	}

	.hero-interior .slogan {
		font-size: .8em;
		text-shadow: 2px 2px 2px #000000;
	}



}

@media(max-width:700px){
	.tablaArticulo .col_menu, .tablaArticulo .col_articulo{
		display: inline-block;
		box-sizing: border-box;
		padding: 0px;
		width: 100%;
		float: left;
	}

	.tablaArticulo .col_menu{
		margin-bottom: 1rem;
	}

	.gridArticulos .boxArticulo {
		width: 100%;
	}

	.gridArticulos .boxArticulo .ver_mas{
		bottom: -10px;
	}

	.grid_trabajos .colTrabajos{
		width: 100%;
	}

	/**/

	.comunicados{
		margin: 0px;
		padding: 0px;
	}

	.comunicados .item.foto_izquierda{
		flex-direction: row;
	}

	.comunicados .item .col.desc{
		padding-left: 0px !important;
		padding-right: 0px !important;

	}

	comunicados .item {
		display: inline-block;
		width: 100%;
		padding: 0px !important;
		margin: 0px !important;
	}

	.comunicados .item .col{
		width: 100%;
		margin: 0px !important;
		padding: 0px !important;
	}

	.comunicados .item .thumb img{
		display: inline-block;
		box-sizing: border-box;
		position: relative;
	}

	.comunicados .item .col:first-child{
		margin-bottom: 1rem !important;
	}

	.comunicados .item .ver_mas{
		margin-right: 0px;
	}

	.comunicados .item.foto_derecha .ver_mas{
		float: right;
		margin-left: 0px;
		margin-right: 2px;
	}

	.comunicados .item{
		margin-bottom: 1rem;
	}

	.grid_eventos .grid_col{
		width: 100%;
		max-width: 100%;
	}

	/**/
	.grid_articulo_inner{
		margin-left: 0px;
		margin-right: 0px;
	}

	.grid_articulo_inner .ag_col{
		padding-left: 0px;
		padding-right: 0px;
	}

	.grid_articulo_inner .ag_col.layout_width_100, .grid_articulo_inner .ag_col.layout_width_50{
		width: 100%;
	}

	/**/
	.perfil-box .pefil_alt_titulo{
		display: unset;
	}

	.perfil-box .pefil_titulo{
		display: none;
	}

	.perfil-box{
		flex-wrap: wrap;
	}

	.perfil-box .foto{
		width: 100%;
		min-width: 100%;
	}

	.perfil-box img{
		margin-top: var(--padding-small);
	}

	.perfil-box .descripcion{
		margin-top: unset;
	}

	.autor-grid .foto{
		width: 120px;
		min-width: 120px;
	}

	.busqueda_listado .item_listado .thumbnail{
		min-width: 150px;
		width: 150px;
	}
	/*********btn contact*******/

	.x3-box .x3-col .contact{
		width: auto;
		margin-top: 20px;
	}

	.botones-team a {
		text-transform: uppercase;
		font-weight: var(--font-light);
		font-size: .9em;
		padding: .6rem 2rem .3rem 2rem;
	}

}


@media(max-width:650px){
	.hide-resp-650{
		display: none !important;
	}


	header .logo-box, header.alt_header .logo-box{
		width: 100px;
		padding: unset;
		right: var(--padding-small);
		top: 8px;
		border-radius: unset;
		-webkit-border-radius: unset;
		overflow: visible;
	}

	/**/
	.foot .legales{
		flex-wrap: wrap;
	}

	.foot .legales .legales_grid_col{
		width: 100%;
	}

	.foot .legales .legales_grid_col{
		padding:0px !important;
	}

	.foot .legales .legales_grid_col:first-child{
		margin-bottom: 0px;
	}


	/**/
	.brain-1{
		width: 25vw;
		left:calc(5vw);
		top:calc(70vh - var(--header-height));
	}

	.brain-2{
		width: 25vw;
		left:calc(5vw);
		top:calc(70vh - var(--header-height));
	}

	.brain-3{
		width: 20vw;
		left:calc(15vw);
		top:calc(20vh - var(--header-height));
	}

	.brain-4{
		width: 30vw;
		left:calc(70vw);
		top:calc(25vh - var(--header-height));
	}

	.brain-5{
		width: 25vw;
		left:calc(75vw);
		top:calc(65vh - var(--header-height));
	}


	.titulo-box{
		font-size: 1.8em;
		text-align: center;
	}

	.element-1{
		width: 125vw;
		left:calc(9vw);
		top:calc(59vh - var(--header-height));
	}
	.element-2{
		width: 100vw;
		left:calc(23vw);
		top:calc(57vh - var(--header-height));

	}
	.element-3{
		width: 100vw;
		left:calc(28vw);
		top:calc(54vh - var(--header-height));

	}

	/**/

	/**/
	.logos_clientes .slide_box .logo{
		height: 60px;
	}

	/**/


	.x3-box .x3-col{
		flex-wrap: wrap;
	}


	.x3-box .x3-col > div{
		width: 100%;
	}

	.x3-box .x3-col .pic {
		max-width: 280px;
	}

	/**/
	.x4-box{
		flex-wrap: wrap;
	}

	.x4-box .x4-col{
		width: 100%;
	}

	.intro-swap-wrapper{
		font-size: 1.8em;
	}

	.banner-titulo h1,
	h1.titulo-1,
	.titulo-solid{
		font-size: 1.8rem;
		line-height: 1.1em;
	}

	h1.titulo-1{
		margin-bottom: var(--padding-small);
	}

	.grid-flex-x2{
		flex-wrap: wrap;
	}

	.grid-flex-x2 .col {
		width: 100%;
		min-width: 100%;
		align-items: flex-start;
	}

	.grid-cards .gc-item h1{
		font-size: 1.4em;
	}

	.grid-cards-servicios .gcs-item-wrapper {
		padding: var(--padding-small);
	}

	.slide-logo-marquee{
		gap: var(--padding-mini);
	}

	.slide-logo-marquee .logo img {
		width: 110px;
	}

	.img-bk-side{
		position: relative;
		width: 100%;
		max-width: 100%;
		padding-right: var(--padding-big);
		margin-left: calc(-2 * var(--padding-big));
	}

	.menu-team{
		grid-template-columns: repeat(2, 1fr);
		font-size: .8em;
	}

	.banner-texto h1{
		font-size: 1em;
	}

	.banner-texto h2{
		font-size: 1.6em;
	}

}

@media(max-width:550px){

	.no-margin-top-resp-small{
		margin-top: 0px !important;
	}

	.bannerHome .info-box-wrapper{
		bottom: var(--padding-xxl);
	}


	.bannerHome .info-box-wrapper .info-box h1{
		font-size: 1.2em;
	}

	.grid-cards {
		grid-template-columns: repeat(1, 1fr);
	}

	.grid-cards .gc-item{
		height: 330px;
	}

	.grid-cards .gc-item .gc-item-card {
		padding: var(--padding-small);
		height: 330px;
	}


	.gc-item-card.back{
		font-size: .9em;
	}

	.grid-cards-servicios {
		grid-template-columns: repeat(1, 1fr);
	}

	.grid-cards-servicios .gcs-item-wrapper {
		padding: var(--padding-med);
		font-size: 1.2em;
	}

	.hero-interior-pic{
		height: auto;
		min-height: auto;
		width: 100%;
		bottom: -15vw;
	}

	.hero-interior-pic img{
		height: auto;
		width: 95%;
		max-width: 350px;
		min-width: 250px;
		filter: brightness(60%);
	}

	/**/

	.services-wrapper{
		max-width: 100% !important;
	}

	h1.titulo-servicios{
		font-size: 2.5em;
	}

	.banner-texto h1{
		font-size: .9em;
	}

	.banner-texto h2{
		font-size: 1.2em
	}

	.grid-cards-x3{
		grid-template-columns: repeat(1, 1fr);
	}

	.grid-cards-x3 .card-item{
		padding: var(--padding-small);
		font-size: 1em;
	}

}

@media(max-width:500px){
	.imagen_animada-box{
		max-width:100% !important;
	}

	.tabs-box .tabs-content{
		gap: .5rem;
		margin-right: -.5rem;
	}

	.tabs-box .tabs-content .tabs-item{
		width: calc(50% - .5rem);
	}

	/**/
	.cat-grid .cat-item{
		width: calc(100% - 1rem);
	}

	.autor-grid{
		width: 100%;
	}

	.busqueda_listado .item_listado{
		flex-wrap: wrap;
	}

	.busqueda_listado .item_listado .thumbnail{
		min-width: 100%;
		width: 100%;
	}

	.busqueda_listado .item_listado h2{
		font-size: 1.4em;
		margin-bottom: .5rem;
	}

	.team-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

@media (max-width: 700px) {
	.botones-team a {
		font-size: .8em;
		padding: .6rem .5rem .3rem .5rem;
	}
}

@media(max-width: 480px){
	.intro-badge{
		top: var(--padding-big);
	}

	.tf-v1-popover-button {
		bottom: 16px !important;
	}
}


@media(max-width: 450px){

	.tabs-box .tabs-content{
		gap: 1rem;
		margin-right: 0;
	}

	.tabs-box .tabs-content .tabs-item{
		width: 100%;
	}

	.slogan-animado{
		height: 4rem;
	}

	.logos_clientes .slide_box .logo{
		width: 33%;
		padding: .0rem 0rem;
	}

	.autor-grid{
		flex-wrap: wrap;
	}

	.autor-grid .foto{
		width: 100%;
		max-width: 100%;
	}

	.autor-grid .cargo{
		margin-bottom: .5rem;
	}

	.gct-item{
		font-size: .78em;
	}

	.slide-logo-marquee{
		gap: var(--padding-micro);
	}

	.slide-logo-marquee .logo img {
		width: 60px;
	}

}
	
