@import url("css-base-structure.css");
@import url("css-base-panels.css");

/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
01 GLOBAL /////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/
/*------------------------------------------------------------------------ 
GLOBAL - GENERAL /////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
details,figcaption,figure,hgroup,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px
solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,
html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}


html, body {
	align-items:flex-start;
	align-content:flex-start;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	height:auto;
	min-height:100vh;
	text-align:left;
	position: relative;
	scroll-behavior:smooth;
	width:100%;
	}
	
	@media only screen and (max-width:620px) {
	html, body {
	overflow-x:hidden;
	}}



/*------------------------------------------------------------------------ 
GLOBAL - COLORS /////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
:root {

	--color-back:#f2f4f6;

	--color-white:#fff;
	--color-white-90:rgba(255, 255, 255, 0.9);
	--color-white-80:rgba(255, 255, 255, 0.8);
	--color-white-70:rgba(255, 255, 255, 0.7);
	--color-white-60:rgba(255, 255, 255, 0.6);
	--color-white-50:rgba(255, 255, 255, 0.5);
	--color-white-40:rgba(255, 255, 255, 0.4);
	--color-white-30:rgba(255, 255, 255, 0.3);
	--color-white-20:rgba(255, 255, 255, 0.2);
	--color-white-10:rgba(255, 255, 255, 0.1);

	--color-black:#000;
	--color-black-90:rgba(0, 0, 0, 0.9);
	--color-black-80:rgba(0, 0, 0, 0.8);
	--color-black-70:rgba(0, 0, 0, 0.7);
	--color-black-60:rgba(0, 0, 0, 0.6);
	--color-black-50:rgba(0, 0, 0, 0.5);
	--color-black-40:rgba(0, 0, 0, 0.4);
	--color-black-30:rgba(0, 0, 0, 0.3);
	--color-black-20:rgba(0, 0, 0, 0.2);
	--color-black-10:rgba(0, 0, 0, 0.1);

	--color-whatsapp:#25d366;
	--color-facebook:#3b5998;
	--color-instagram:#cd486b;
	--color-youtube:#ff0000;
	--color-twitter:#55acee;
	--color-x:#3e3e3e;
	--color-linkedin:#007bb5;

	--gradient-main:linear-gradient(to top, var(--color-main) 0%, var(--color-main-soft) 180%);
	--gradient-main-soft:linear-gradient(to top, var(--color-main-softer) 0%, var(--color-white) 180%);
	--gradient-main-dark:linear-gradient(to top, var(--color-main-darker) 0%, var(--color-main) 180%);

	--gradient-second:linear-gradient(to top, var(--color-second) 0%, var(--color-second-soft) 180%);
	--gradient-second-soft:linear-gradient(to top, var(--color-second-softer) 0%, var(--color-white) 180%);
	--gradient-second-dark:linear-gradient(to top, var(--color-second-dark) 0%, var(--color-second) 180%);


	--gradient-third:linear-gradient(to top, var(--color-third) 0%, transparent 100%);
	--gradient-third-soft:linear-gradient(to top, var(--color-third-softer) 0%, var(--color-white) 180%);
	--gradient-third-dark:linear-gradient(to top, var(--color-third-darker) -60%, transparent 80%);


	--gradient-neutro:linear-gradient(to top, var(--color-neutro-soft) 0%, var(--color-neutro) 180%);
	--gradient-neutro-soft:linear-gradient(to top, var(--color-neutro-softer) 0%, var(--color-neutro-soft) 180%);
	--gradient-neutro-dark:linear-gradient(to top, var(--color-neutro) 0%, var(--color-neutro-dark) 180%);

	--gradient-combinado-uno:linear-gradient(to right top, var(--color-main-soft) 0%, var(--color-main-softer) 40%, var(--color-second-softer) 80%);
	--gradient-combinado-dos:linear-gradient(to right top, var(--color-main) 0%, var(--color-main-soft) 40%, var(--color-second-soft) 80%);
	--gradient-combinado-tres:linear-gradient(to right top, var(--color-main-dark) 0%, var(--color-main) 40%, var(--color-second) 80%);

	--gradient-radial-uno:radial-gradient(circle at center center, #A6CEE2,  #0066B2);
	--gradient-radial-dos:radial-gradient(circle at center center, #EDC1AE,  #F26721);

	}



.color-main-darker {color:var(--color-main-darker)!important;}
.color-main-darker.svg-icon {fill:var(--color-main-darker)!important;}

.color-main-dark {color:var(--color-main-dark)!important;}
.color-main-dark.svg-icon {fill:var(--color-main-dark)!important;}

.color-main {color:var(--color-main)!important;}
.color-main.svg-icon {fill:var(--color-main)!important;}

.color-main-soft {color:var(--color-main-soft)!important;}
.color-main-soft.svg-icon {fill:var(--color-main-soft)!important;}


.color-main-softer {color:var(--color-main-softer)!important;}
.color-main-softer.svg-icon {fill:var(--color-main-softer)!important;}

.color-second-darker {color:var(--color-second-darker)!important;}
.color-second-darker.svg-icon {fill:var(--color-second-darker)!important;}

.color-second-dark {color:var(--color-second-dark)!important;}
.color-second-dark.svg-icon {fill:var(--color-second-dark)!important;}

.color-second {color:var(--color-second)!important;}
.color-second.svg-icon {fill:var(--color-second)!important;}

.color-second-soft {color:var(--color-second-soft)!important;}
.color-second-soft.svg-icon {fill:var(--color-second-soft)!important;}

.color-second-softer {color:var(--color-second-softer)!important;}
.color-second-softer.svg-icon {fill:var(--color-second-softer)!important;}

.color-white {color:var(--color-white)!important;}
.color-white.svg-icon {fill:var(--color-white)!important;}

.color-black {color:var(--color-black)!important;}
.color-black.svg-icon {fill:var(--color-black)!important;}



.bg-main-darker {background:var(--color-main-darker)!important;}
.bg-main-dark {background:var(--color-main-dark)!important;}
.bg-main {background:var(--color-main)!important;}
.bg-main-soft {background:var(--color-main-soft)!important;}
.bg-main-softer {background:var(--color-main-softer)!important;}

.bg-second-darker {background:var(--color-second-darker)!important;}
.bg-second-dark {background:var(--color-second-dark)!important;}
.bg-second {background:var(--color-second)!important;}
.bg-second-soft {background:var(--color-second-soft)!important;}
.bg-second-softer {background:var(--color-second-softer)!important;}

.bg-neutro-darker {background:var(--color-neutro-darker)!important;}
.bg-neutro-dark {background:var(--color-neutro-dark)!important;}
.bg-neutro {background:var(--color-neutro)!important;}
.bg-neutro-soft {background:var(--color-neutro-soft)!important;}
.bg-neutro-softer {background:var(--color-neutro-softer)!important;}


.bg-white {background:var(--color-white)!important;}
.bg-black {background:var(--color-black)!important;}


/*------------------------------------------------------------------------ 
GLOBAL - FONTS AND TEXTS /////////////////////////////////////////////////
------------------------------------------------------------------------*/



:root {

	--font-main:'Montserrat', sans-serif;

	--font-second:'Montserrat', sans-serif;



	--fs-xxlarge:1.6rem;
	--fs-xlarge:1.4rem;
	--fs-large:1.2rem;
	--fs-regular:1rem;
	--fs-medium:0.8rem;
	--fs-small:0.6rem;

	--fw-thin:300;
	--fw-normal:400;
	--fw-bold:500;
	--fw-bolder:500;


	}




/* Fuente primaria
------------------------------*/
html, body{
	font-family:var(--font-main);
	}


/* Fuente secundaria
------------------------------*/
h1, h2, h3, h4, h5, h6{
	font-family:var(--font-second);
	text-wrap: balance;
	}


/* Font size
----------------------------------------*/
html, body  {
	font-size:24px;
	}
	@media only screen and (max-width:2200px) {
	html, body {
	font-size:20px;
	}}
	@media only screen and (max-width:1500px) {
	html, body {
	font-size:18px;
	}}
	@media only screen and (max-width:920px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:720px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:820px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:620px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:520px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:420px) {
	html, body {
	font-size:16px;
	}}


/* H
------------------------------*/
h1, h2, h3, h4, h5, h6 {
	height:auto;
	margin:0px;
	padding:2px 0px;
	line-height:1em;
	width:100%;
	}



h1 {font-size:2rem;}
h2 {font-size:1.8rem;}
h3 {font-size:1.6rem;}
h4 {font-size:1.4rem;}
h5 {font-size:1.2rem;}
h6 {font-size:1rem;}




/* Párrafos
------------------------------*/
p {
	color:inherit;
	height:auto;
	line-height:1.4rem;
	margin:0px 0px;
	padding:10px 0px;
	text-align:left;
	text-wrap: pretty;
	width:100%;
	}



p strong,
p b{
	font-weight:bold;
	}

p a,
p a:hover{
	color:inherit;
	}


a.large,
p.large,
p.large a,
span.large,
span.large a {
	font-size: var(--fs-large);
	}


a.medium,
p.medium,
p.medium a,
span.medium,
span.medium a {
	font-size: var(--fs-medium);
	}

a.small,
p.small,
p.small a
span.small,
span.small a {
	font-size: var(--fs-small);
	}


p.center,
h2.center {
	text-align:center;
	}


p.left {
	text-align:left;
	}

p.right {
	text-align:right;
	}

/* label
----------------------------------------*/
label {
	font-size:inherit;
	font-family:inherit;
	font-weight:inherit;
	}


/* 
----------------------------------------*/
div.center {
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	}


.uppercase{
	text-transform:uppercase;
	}



/* Punto suspensivos
----------------------------------------*/
.puntos-suspensivos{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	}



/* txt small
----------------------------------------*/
.txt-small {
	color:var(--color-neutro);
	font-size:0.7rem;
	line-height:1.2rem;
	}

.txt-small > *{
	color:inherit;
	font-size:inherit;
	text-decoration:none;
	}


.txt-small > * .svg-icon{
	display:inline-block;
	height:12px;
	width:12px;
	}



p.add-columns {
	columns:2;
	column-gap:4%;
	text-align: justify;
	}
	@media only screen and (max-width:620px) {
	p.add-columns{
	columns:1;
	column-gap:0px;
	text-align:left;
	}}




/* Enlaces
----------------------------------------*/
a, a:visited{
	margin:0px;
	padding:0px;
	text-decoration:underline;
	}


a:hover {	
	text-decoration:underline;
	}




/* Listas
----------------------------------------*/
ul, ol {
	float:none;
	height: auto;
	margin:10px 0px;
	padding-left:18px;
	width:100%;
	}


ul li, 
ol li{
	float: none;
	height: auto;
	line-height:1.4em;
	margin: 0px;
	padding: 0px;
	width:100%;
	}

ul li {
	list-style:disc;
	}

ol li {
	list-style:decimal;
	}


ul li a,
ol li a{
	color:inherit;
	}



/* Fonts variables
----------------------------------------*/


/*-------------------------------------------------- 
---     TITLES DEFAULT    //////////////////////////
---------------------------------------------------*/
* .title {
	text-wrap: pretty;
	}



.title.center,
.title-1.center,
.title-2.center,
.title-3.center,
.subtitle.center,
.subtitle-1.center,
.subtitle-2.center,
.subtitle-3.center{
	justify-content:center;
	text-align:center;
	}









/*------------------------------------------------------------------------ 
GLOBAL -  IMAGENS ////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/* IMG
------------------------------*/
img{
	display:block;
	height:auto;
	padding:0px;
	margin:0px;
	max-width:100%;
	}


img:not([alt]) {
	outline:1px dashed pink;
	}


.fancybox-content img:not([alt]) {
	outline:0px dashed pink;
	}



	
/
/*------------------------------------------------------------------------ 
GLOBAL -  MAS ////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/* Box shadow
----------------------------------------*/
:root {

	--box-shadow:0px 0px 6px rgba(0, 0, 0, 0.1);
	--box-shadow-small:0px 0px 2px rgba(0, 0, 0, 0.2);

	}





/* iFrame
----------------------------------------*/
iframe {
	border:0px;
	width:100%!important;
	}




/* Lazy
----------------------------------------*/
.lazyloading {
	opacity: 0;
	}

.loading,
.lazyload,
.lazyloaded{
	opacity: 1;
	transition: opacity 0.4s;
	}



/* Box sizing
----------------------------------------*/
* {
	box-sizing:border-box!important;
	float: none;
	}
	


/* Scroll bar
----------------------------------------*/
.container,
.main,
*[data-element='banner'],
*[data-element='banner-main'],
*[data-element='panel'] {
	scrollbar-gutter: stable;
	}



/* hr
----------------------------------------*/
hr,
hr.wp-block-separator {
	background-color:var(--color-neutro-softer)!important;
	border:0px;
	padding:0px;
	margin:5px 0px;
	height:1px;
	width:100%;
	}



hr.medium {
	height:3px;
	}


hr.big {
	height:5px;
	}


hr.space-1x {background-color:transparent!important; margin:1px 0px!important;}
hr.space-2x {background-color:transparent!important; margin:2px 0px!important;}
hr.space-3x {background-color:transparent!important; margin:3px 0px!important;}
hr.space-4x {background-color:transparent!important; margin:4px 0px!important;}
hr.space-5x {background-color:transparent!important; margin:5px 0px!important;}
hr.space-6x {background-color:transparent!important; margin:6px 0px!important;}
hr.space-7x {background-color:transparent!important; margin:7px 0px!important;}
hr.space-8x {background-color:transparent!important; margin:8px 0px!important;}
hr.space-9x {background-color:transparent!important; margin:9px 0px!important;}
hr.space-10x {background-color:transparent!important; margin:10px 0px!important;}



hr.space-4 {background-color:transparent!important; margin:2px 0px!important;}
hr.space-6 {background-color:transparent!important; margin:3px 0px!important;}
hr.space-8 {background-color:transparent!important; margin:4px 0px!important;}
hr.space-10 {background-color:transparent!important; margin:5px 0px!important;}
hr.space-20 {background-color:transparent!important; margin:10px 0px!important;}
hr.space-30 {background-color:transparent!important; margin:15px 0px!important;}
hr.space-40 {background-color:transparent!important; margin:20px 0px!important;}
hr.space-60 {background-color:transparent!important; margin:30px 0px!important;}
hr.space-80 {background-color:transparent!important; margin:40px 0px!important;}


hr.space-grow {
	background:none;
	display:flex;
	flex-flow:row wrap;
	flex-grow:999;
	width:0%;
	}	





/* Content visibility (SEO)
----------------------------------------*/
.svg-icon,
video,
iframe{
	content-visibility: auto;
	}



/* Esconder
------------------------------*/
.ocultar,
.esconder,
.hide {
	display:none;
	}


/* Transition
----------------------------------------*/
:root {

	--add-transition-very-slow:all 0.5s;
	--add-transition-slow:all 0.4s;
	--add-transition:all 0.3s;
	--add-transition-fast:all 0.2s;
	--add-transition-very-fast:all 0.1s;

		}


/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////// ---------- END GLOBAL
--------------------------------------------------------------------------*/


/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
02 STRUCTURE //////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/


/*------------------------------------------------------------------------- 
////////////////////////////////////////////////// ---------- END STRUCTURE
-------------------------------------------------------------------------*/

/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
03 HEADER /////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/* 03 z-index
------------------------------*/
.movil-panel-menu.show {z-index:12;}
div.block-opacity.show {z-index:11;}
header {z-index:10!important;}
.movil-panel-menu {z-index:0;}
div.block-opacity {z-index:0;}

/*---------------------------------------------------------------- 
--- HEADER ///////////////////////////////////////////////////////
----------------------------------------------------------------*/


/* --------------------------------------------------
------------------------------------------- BASE ---
---------------------------------------------------*/
/* 00 - Z index y order
------------------------------*/
header {z-index:99;}
header .logotipo {z-index:2;}
header nav {z-index:1;}



/* 01 General
------------------------------*/
header {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:auto;
	justify-content:space-between;
	gap:var(--gap-inside);
	max-width:100%;
	overflow-x:visible;/* necesary */
	width:100%;
	}




/* Altura
------------------------------*/
header {
	height:120px;
	}



/* Logotipo
------------------------------*/
header a.logotipo{
	align-items:center;
	display:block;
	flex-flow:row wrap;
	flex-grow:0;
	height:auto;
	justify-content:center;
	width:auto;
	}



/*  Logotipo size
------------------------------*/
header a.logotipo img{
	display:flex;
	height:80px;	
	width:160px;	
	}



/*--------------------------------------------------
NAV ////////////////////////////////////////////////
---------------------------------------------------*/
header nav{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	flex-grow:9;
	justify-content:flex-end;
	height:auto;
	position:relative;
	width:auto;
	}



/* NAV UL
------------------------------*/
header nav > ul {
	align-items:center;
	align-content:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	gap:var(--gap-inside);
	justify-content:flex-end;
	list-style:none;
	margin:0px;	
	padding:0px;
	width:auto;
	}



/* NAV UL LI
------------------------------*/
header nav > ul > li,
ul.menu-dropdown > li{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:auto;
	justify-content:center;
	list-style:none;
	margin:0px;	
	padding:0px;
	position:relative;
	text-align:center;
	width:auto;
	}



/* Buttons
------------------------------*/
header nav > ul > li > *:not( ul, .button){
	align-items:center;
	align-content:center;
	cursor:pointer;
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	height:40px;
	line-height:40px;
	justify-content:flex-start;
	margin:0px;
	overflow:hidden;
	padding:0px 8px;
	position:relative;
	transition:var(----add-transition-very-fast);
	text-decoration:none;
	text-overflow:ellipsis!important;
	user-select: none;
	white-space:nowrap;
	width:auto;
	}



header nav > ul > li > a {
	cursor:pointer;
	}

header nav > ul > li > a:hover{
	text-decoration:none;
	}



/* Buttons + icons
------------------------------*/
header nav > ul > li > *:not(.button) .svg-icon,
ul.menu-dropdown > li > * .svg-icon,
ul.menu-dropdown li[data-seccion='back'] > label .svg-icon{
	height:26px;
	width:26px;
	}


/* Separator
------------------------------*/
header nav > ul > li[data-element='separator']{
	margin:0px 10px;
	min-width:1px;
	width:1px!important;
	}



/*                                       
------------------------------------------  2600 ---
--------------------------------------------------*/
@media only screen and (max-width:2200px) {

	header{
		height:100px;
		}

}



/*                                       
------------------------------------------  1600 ---
--------------------------------------------------*/
@media only screen and (max-width:1600px) {

	header{
		height:90px;
		}

}



------------------------------------------  920 ---
--------------------------------------------------*/
@media only screen and (max-width:1600px) {

	header{
		height:90px;
		}

}



/*                                       
------------------------------------------  820 ---
--------------------------------------------------*/
@media only screen and (max-width:820px) {

	header a.logotipo img{
		height:70px;
		width:140px;
		}

}



/*                                       
------------------------------------------  720 ---
--------------------------------------------------*/
@media only screen and (max-width:720px) {

	header a.logotipo img{
		height:70px;
		width:140px;
		}

}




/*                                       
-------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	header {
		height:70px;
		position:initial;
		left:0px;
		top:0px;
		}


	header a.logotipo img{
		height:60px;
		width:120px;
		}


}







/*                                       
----------------------------  BREAK BTN MOVIL 920 ---
--------------------------------------------------*/




/*                                       
----------------------------  BREAK TO MOVIL 920 ---
--------------------------------------------------*/
@media only screen and (max-width:2620px) {



	header li:not(li[data-element='btn-whatsapp']){
		display:none;
	}


}























/* --------------------------------------------------
---------------------------------- IF CENTER BASE ---
---------------------------------------------------*/
/*

1 ... Agregar la clase center a header
2 ... Agregar segundo menu (ul) dentro de nav


*/
/* 00 - Z index y order
------------------------------*/

header.center nav ul.menu-1 {order:3;}
header.center nav .logotipo {order:2;}
header.center nav ul.menu-2 {order:1;}



header.center  {
	justify-content:space-between;!important;
	}



/* Logotipo
------------------------------*/
header.center .logotipo {
	margin-left:-100px;
	position:absolute;
	bottom:auto;
	top:10px;
	left:50%;
	right:auto;
	}


/* nav
------------------------------*/
header.center > nav{
	justify-content:space-between;
	}


header.center > nav > ul  {
	border:1px solid red;
	max-width:38%;
	width:30%;
	}

header.center > nav > ul.menu-1  {
	justify-content:flex-start;
	}

header.center > nav > ul.menu-2  {
	justify-content:flex-end;
	}


/*                                       
-------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	header.center .logotipo {
		margin-left:0px;
		position:relative;
		bottom:auto;
		top:auto;
		left:auto;
		right:auto;
		}

	header.center > nav{
		justify-content:flex-start;
		}
	
	header.center > nav > ul  {
		max-width:100%;
		width:100%;
		}



}




/*---------------------------------------------------
//////////             MENU MOVIL       //////////
---------------------------------------------------*/

/* Panel nav
------------------------------*/
ul.menu-movil,
ul.menu-dropdown {
		align-items:center;
		align-content: center;
		display:flex;
		justify-content:flex-start;
		flex-flow:row wrap;
		font-size:1.2em;
		height:auto;
		gap:var(--gap-inside);
		list-style:none;
		max-width:100%;
		margin:0px;
		padding:0px;
		width:100%;
		}



ul.menu-movil li,
ul.menu-dropdown li{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	height:auto;
	justify-content:flex-start;
	margin:0px;
	padding:0px;
	width:100%;
	}



ul.menu-movil > li > *:not(ul),
ul.menu-movil > li > *:not(ul):hover,
ul.menu-dropdown li > *,
ul.menu-dropdown li > *:hover{
	align-items:center;
	align-content:center;
	cursor:pointer;
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	height:40px;
	line-height:40px;
	justify-content:flex-start;
	margin:0px 0px;
	position:relative;
	transition:var(----add-transition-very-fast);
	text-align:left;
	text-decoration:none;
	text-overflow:ellipsis!important;
	user-select: none;
	white-space:nowrap;
	width:100%;
	}

ul.menu-movil > li > *:hover{
	text-decoration:none;
	}



/* Buttons icons
------------------------------*/
ul.menu-movil > li > *:not(.button) .svg-icon,
ul.menu-dropdown > li > * .svg-icon,
ul.menu-dropdown li[data-seccion='back'] > label .svg-icon{
	height:32px;
	width:32px;
	}







/*---------------------------------------------------------------- 
--- MOVILES //////////////////////////////////////////////////////
----------------------------------------------------------------*/

/*---------------------------------------------------
//////////       MOVIL PANEL MENU       //////////
---------------------------------------------------*/
.movil-panel-menu{
	display:none;
	}


.movil-panel-menu{
	align-content:center;
	align-items:center;
	flex-flow:row wrap;
	height:auto;
	gap:var(--gap-inside);
	min-height:100vh!important;
	justify-content:flex-start;
	margin:0px;
	overflow-y:scroll!important;
	padding:40px 8vw!important;
	position:fixed;
	transition:var(--add-transition-very-fast);
	transition-timing-function:ease-in-out;
	bottom:auto;
	left:auto;
	right:auto;
	top:0px;
	}


/* Ancho
------------------------------*/
.movil-panel-menu{
	max-width:820px;
	width:80vw;
	}



/* If boton close esta dentro
------------------------------*/
.movil-panel-menu .btn-close-menu-movil{
	display:flex!important;
	position:absolute;
	bottom:auto;
	left:auto;
	top:20px;
	right:20px;
	}



/* -------------------------------------
+++     .SHOW ALL    ////////////////
-------------------------------------*/

.movil-panel-menu.show{
	display:flex!important;
	visibility: visible!important;
	opacity:1.0!important;;
	position:fixed!important;
	transform:translateX(0vw)!important;
	transform:translateY(0vw)!important;
	z-index:99!important;
	}



/* -------------------------------------
+++     SLIDE TO LEFT  ////////////////
-------------------------------------*/
.movil-panel-menu.slide-to-left {
	opacity:1.0;
	right:0px;
	transform:translateX(100vw);
	z-index:12;
	}


/* -------------------------------------
+++     SLIDE TO RIGHT ////////////////
-------------------------------------*/
.movil-panel-menu.slide-to-right {
	opacity:1.0;
	left:0px;
	transform:translateX(-100vw);
	z-index:12;
	}


/* -------------------------------------
+++     SLIDE TO TOP ////////////////
-------------------------------------*/
.movil-panel-menu.slide-to-top {
	opacity:1.0;
	top:0px;
	transform:translateY(100vH);
	z-index:12;
	}


/* -------------------------------------
+++     FADE IN /////////////////////
-------------------------------------*/
.movil-panel-menu.fade-in {
	opacity:0.0;
	top:0px;
	z-index:0;
	}


 /* --- END */


 /*---------------------------------------------------
//////////       BUTTON MOVIL OPEN       //////////
---------------------------------------------------*/
/* Escondemos
------------------------------------------*/
header li[data-element='btn-movil'],
.btn-movil,
.btn-movil + label  {
	display:none;
	}

 /* --- END */


/*---------------------------------------------------
//////////         BLOCK OPACITY        //////////
---------------------------------------------------*/
div.block-opacity {
	visibility:hidden;
	}


div.block-opacity {
	background-color:var(--color-black);
	display:flex;
	height:100vh;
	opacity:0.6;
	transition:all 0.18s;
	position:fixed!important;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	max-width:100%;
	visibility:hidden;
	width:100vw;
	}


/* Show
------------------------------*/
div.block-opacity.show{
	visibility:visible!important;
	opacity:0.6!important;
	}

 /* --- END */


/*---------------------------------------------------
//////////         BODY LOCK        //////////
---------------------------------------------------*/

body.lock{
	position:fixed!important;
	}


 /* --- END */



/*---------------------------------------------------
//////////   ACTIVAMOS ELEMENTOS MOVILES   //////////
---------------------------------------------------*/
@media only screen and (max-width:2620px) {

	.movil-panel-menu{
	display:flex!important;
	
	}

	header li[data-element='btn-movil'],
	.btn-movil +label  {
	display:flex!important;
	}



}


/*---------------------------------------------------
//////////             MENU MOVIL          //////////
---------------------------------------------------*/


/* (import: codex/header/css-menu-movil.css) */




 /* --- END */



/*-------------------------------------------------------------------------- 
/////////////////////////////////////////////////// ---------- / END HEADER
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
04 BANNERS  ///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/
/*---------------------------------------------------------------- 
--- BAN1 GENRAL //////////////////////////////////////////////////
----------------------------------------------------------------*/
*[data-element='banner'] .inside,
*[data-element='banner-main'] .inside  {
	overflow:hidden;
	}


*[data-element='banner'] .panel,
*[data-element='banner-main'] .panel {
	overflow:hidden;
	}


/*---------------------------------------------------------------- 
--- BAN2 BANNER BOX /////////////////////////////////////////////
----------------------------------------------------------------*/
.banner-box {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	height:auto;
	justify-content:flex-start;
	z-index:10;
	/* width:auto; */
	}

.banner-box .title{
	padding:0px;
	margin:0px;
	}

.banner-box .subtitle{
	padding:0px;
	margin:0px;
	}

.banner-box > p{
	text-align:left;
	padding:0px;
	margin:0px;
	}


.banner-box > *:not(a){
	width:100%;
	}



/* If center
------------------------------------------*/
 .banner-box.center{
	justify-content:center;
	}

.banner-box.center > * {
	text-align: center;
	}



/*                                       
-------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	.banner-box{
	padding:20px 5vw;
	width:100%;
	z-index:99;
	}

	.banner-box > *:not(a){
	width:100%;
	}

}


/*---------------------------------------------------------------- 
--- BAN3 BANNERS MOVIL OPTIONS //////////////////////////////////
----------------------------------------------------------------*/

/* 

Comportamiento de los banners cuando se llega a tamaño movil,
independientemente de que tipo de banner sea

*/

/*                                       
-------------------------------------  MOVIL 620 ---
--------------------------------------------------*/

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


/*---------------------------------------------------
//////////           MOVIL OPACITY         //////////
---------------------------------------------------*/

*[data-element='banner-main'].movil-opacity picture.ima-main,
*[data-element='banner'].movil-opacity picture.ima-main{
	opacity:0.6!important;
	}




/*---------------------------------------------------
//////////           MOVIL GRADIENT         //////////
---------------------------------------------------*/

*[data-element='banner-main'].movil-gradient .inside,
*[data-element='banner'].movil-gradient .inside{
	padding:0px 0px;
	}

*[data-element='banner-main'].movil-gradient .banner-box,
*[data-element='banner'].movil-gradient .banner-box{
	background-image:linear-gradient(to bottom, var(--color-black-20) 40%, var(--color-black) 102%);
	align-content:flex-end;
	height:100%;
	width:100%;
	}

/* neutralizamos if animated  */
*[data-element='banner-main'].movil-gradient .banner-box.animate,
*[data-element='banner'].movil-gradient .banner-box.animate{
	transform: translateY(0px)!important;
	}




/*---------------------------------------------------
//////////             MOVIL BOX           //////////
---------------------------------------------------*/
*[data-element='banner-main'].movil-box .inside{
	padding-bottom:0px;
	padding-left:0px;
	padding-right:0px;
	width:100%;
	}

/* to bottom */
*[data-element='banner-main'].movil-box .inside,
.banner-duopanel.movil-box .panel-1,
.banner-background.movil-box .col-uno{
	align-content:flex-end!important;
	}


/* box*/
*[data-element='banner-main'].movil-box .banner-box{
	background-color:var(--color-black-50);
	width:100%;
	}


/* neutralizamos if animated  */
*[data-element='banner-main'].movil-box .banner-box.animate,
*[data-element='banner'].movil-box .banner-box.animate{
	transform: translateY(0px)!important;
	}

/*---------------------------------------------------
//////////            MOVIL BLOCK          //////////
---------------------------------------------------*/

*[data-element='banner-main'].movil-block .inside{
	padding-bottom:0px;
	padding-left:0px;
	padding-right:0px;
	width:100%;
	}

/* to bottom */
*[data-element='banner-main'].movil-block .inside,
.banner-duopanel.movil-block .panel-1,
.banner-background.movil-block .col-uno{
	align-content:flex-end!important;
	}


/* box*/
*[data-element='banner-main'].movil-block .banner-box{
	width:100%;
	}

/* neutralizamos if animated  */
*[data-element='banner-main'].movil-block .banner-box.animate,
*[data-element='banner'].movil-block .banner-box.animate{
	opacity:1.0!important;
	transform: translateY(0px)!important;
	}



}





/*--------------------------------------------------
BANNER COVER ///////////////////////////////////////
---------------------------------------------------*/

/* --------------------------------------------------
DO ---------------------------------------- ANCHO ---
---------------------------------------------------*/

/* 

Usamos las mismas clases predefinidas from: www/style.css para determinar padding laterales.

none │ in-full │ in-full-to-none │ in-wide │ in │ in-thin │ in-to-wide │ in-thin-to-wide

ejemplo: <div class="banner-cover in">

 */



/* --------------------------------------------------
DO --------------------------------------- ALTURA ---
---------------------------------------------------*/

/*

Usamos las clases predefinidas 

default │ short │ 

Usualmente la altura default para el banner principal y short para banners interiores

ejemplo: <div class="banner-cover short">

*/


/* --------------------------------------------------
DO ---------------------------------- BACKGROUND ---
---------------------------------------------------*/

/* 

www/style.css 
*[data-element='banner-main']

 */



/* --------------------------------------------------
DO ----------------------------------------- MAS ---
---------------------------------------------------*/

/* Alineación
------------------------------*/
/* 

Default = left
Podemos añadir las clases center o rigth
Ejemplo: <div class="banner-cover center">

 */



/* Padding top y bottom
------------------------------*/

.banner-cover{
	padding-bottom:0px;
	padding-top:0px;
	}



/* Opacidad de la imagen
------------------------------*/
.banner-cover .inside picture{
	opacity:0.8;
	}



/* Titulos y texto
------------------------------*/
/* 

Se define en www/style.css elemento .banner-box

 */




/* --------------------------------------------------
DO ---------------------------------------- MOVIL ---
---------------------------------------------------*/


/* 

Usamos las clases predefinidas para determinar como se vera en móvil

movil-opacity │ movil-gradient │ movil-box │ movil-block

ejemplo: <div class="banner-cover movil-block">

 */





/* --------------------------------------------------
------------------------------------------- BASE ---
---------------------------------------------------*/


/* 00 - Z index
------------------------------*/
.banner-cover .inside > * {z-index:2}
.banner-cover .inside > picture {z-index:1}




/* 01 - General
------------------------------*/
.banner-cover{
	display:flex;
	flex-flow:row wrap;
	overflow:hidden;
	position:relative;
	max-width:100%;
	width:100%;
	}



/* 02 - Altura
------------------------------*/
.banner-cover{
	height:64vh;
	min-height:320px;
	}
	@media only screen and (max-width:620px) {
	.banner-cover{
	height:60vh;
	min-height:380px;
	}}


/* Altura short */
.banner-cover.short {
	height:40vh;
	min-height:260px;
	}
	@media only screen and (max-width:620px) {
	.banner-cover.short{
	height:30vh;
	min-height:260px;
	}}




/* 03 - Inside
------------------------------*/
.banner-cover .inside{
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	height:100%;
	padding:5vw 5vw;
	position:relative;
	width:100%;
	}



/* 04 - Imagen de fondo
------------------------------*/
.banner-cover .inside > picture{
	height:auto;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	width:auto;
	}


.banner-cover .inside > picture img{
	height:100%;
	width:100%;
	object-fit:cover;
	object-position:center 30%;
	}


/* 05 - Banner box
------------------------------*/

/* Diseño en www/style.css  */

.banner-cover .banner-box{
	width:100%;
	}




/* --------------------------------------------------
------------------------------------- IF ANIMATE ---
---------------------------------------------------*/

/*

A. ----- Necesaria la libreria Waypoints
 
*/




/* Play
------------------------------

00:00 - 
00:05 - Imagen de fondo
00:08 - Banner box

*/


/* 00:05 */
.banner-cover picture.animate img{
	transition-delay:0.5s;
	}

/* 00:08 */
.banner-cover .banner-box.animate {
	transition-delay:0.8s!important;
	}






/* IMG
------------------------------*/
.banner-cover picture.animate img{
	transition:var(--add-transition-very-slow);
	transform: scale(1.06);
	opacity:0.0;
	}
/* ---/ animated */
.banner-cover  picture.animated img{
	transform: scale(1.0);
	opacity:1.0;
	}




/* Banner box
------------------------------*/
/*
animaciones predefinidas en style.css 
*/



.banner-box .subtitle{
	color: var(--color-white);
	}









/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////// ---------- / END BANNERS
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
05 PANELS  ////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/





/*------------------------------------------------------------------------ 
PANEL - PANEL PROYECTOS  //////////////////////////////////////////////////
------------------------------------------------------------------------*/

.panel-proyectos.uno .item .panel-info{
	transition: var(--add-transition);
	transform: translateY(100px);
	opacity:0.0;
	}

.panel-proyectos.uno .item.animar-uno .panel-info {
	opacity:1.0;
	transform:translateY(0px);
	}


.panel-proyectos.uno .item .panel-img{
	transition: var(--add-transition);
	transform: scale(0.7);
	opacity:0.0;
	}

.panel-proyectos.uno .item.animar-uno .panel-img {
	opacity:1.0;
	transform: scale(1);
	}






.panel-proyectos.dos .item{
	transition: var(--add-transition);
	transform: scale(0.7);
	opacity:0.0;
	}

.panel-proyectos.dos .item.animar-dos{
	opacity:1.0;
	transform: scale(1.0);
	}








.panel-proyectos.tres .item .panel-info{
	transition: var(--add-transition);
	transform: translateY(100px);
	opacity:0.0;
	}

.panel-proyectos.tres .item.animar-tres .panel-info {
	opacity:1.0;
	transform:translateY(0px);
	}


.panel-proyectos.tres .item .panel-img img{
	transition: var(--add-transition);
	transform: scale(1.2);
	opacity:0.0;
	}

.panel-proyectos.tres .item.animar-tres .panel-img img{
	opacity:1.0;
	transform: scale(1);
	}


.panel-proyectos.tres .item .panel-img {
	overflow:hidden;
	}

.panel-proyectos.tres .item.nike .panel-img {
	background-color: #222222;
	}

.panel-proyectos.tres .item.pinterest .panel-img {
	background-color: #EA4144;
	}

.panel-proyectos.tres .item.isdin .panel-img {
	background-color: #EFE0DB;
	}

.panel-proyectos.tres .item.betway .panel-img {
	background-color: #0C1F4F;
	}

.panel-proyectos.tres .item.maseca .panel-img {
	background-color: #0F8444;
	}

.panel-proyectos.tres .item.dhl .panel-img {
	background-color: #E6B413;
	}

.panel-proyectos.tres .item.metlife {
	background-color: #6699cc;
	}

.panel-proyectos.tres .item.estrella-blanca {
	background-color: #01712F;
	}







/*                                       
------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	.panel-proyectos .panel-info,
	.panel-proyectos .panel-img {
	width:100%;
	}
	.panel-proyectos .item:nth-child(odd) .panel-img{
	order:1;
	}
	.panel-proyectos .item:nth-child(odd) .panel-info{
	padding:40px 4vw 40px 4vw;
	order:2;
	}
	.panel-proyectos .item:nth-child(even) .panel-img{
	order:1;
	}
	.panel-proyectos .item:nth-child(even) .panel-info{
	padding:40px 4vw 40px 4vw;
	order:2;
	}
	
	}






/* Personalización
------------------------------------------*/
.panel-proyectos .item.nike {
	background-color: #fff;
	}

.panel-proyectos .item.pinterest {
	background-color: #d65a5a;
	}

.panel-proyectos .item.isdin {
	background-color: #EFE0DB;
	}

.panel-proyectos .item.betway {
	background-color: #384E71;
	}

.panel-proyectos .item.maseca {
	background-color: #0F8444;
	}

.panel-proyectos .item.dhl {
	background-color: #E6B413;
	}

.panel-proyectos .item.metlife {
	background-color: #6699cc;
	}

.panel-proyectos .item.estrella-blanca {
	background-color: #155632;
	}

.panel-proyectos .item.txt-black .title,
.panel-proyectos .item.txt-black p{
	color:var(--color-black)!important;

	}



/*--------------------------------------------------
PANEL CONTACTO IMG //////////////////////////////////
---------------------------------------------------*/
/* --------------------------------------------------
------------------------------------------- BASE ---
---------------------------------------------------*/
/* 00 - Order
------------------------------*/
.panel-contacto-img .col-info  {order:1}
.panel-contacto-img .col-img  {order:2}



/* 01 - General
------------------------------*/
.panel-contacto-img{
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	position:relative;
	width:100%;
	}

.panel-contacto-img .inside{
	align-items:stretch!important;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	gap:0px;
	height:auto;
	padding:0px;
	width:100%;
	}


/* 02 - Columnas
------------------------------*/
.panel-contacto-img .col {
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	flex-grow:9;
	min-width:300px;
	overflow:hidden;
	width:40%;
	}


.panel-contacto-img .col-info {
	width:40%;
	}

.panel-contacto-img .col-img {
	width:40%;
	}




/* 03 -  Col info
------------------------------*/
.panel-contacto-img .col-info{
	gap:var(--gap-inside);
	padding:40px 4vw;
	}




/* 04 -  Col img
------------------------------*/
.panel-contacto-img .col-img{
	min-height:200px;
	}



.panel-contacto-img .col.center,
.panel-contacto-img .col.center *{
	justify-content:center!important;
	text-align:center;
	}


.panel-contacto-img .col-img picture{
	height:auto;
	width:auto;
	opacity:0.8;
	position:absolute;
	bottom:0px;
	right:0px;
	left:0px;
	top:0px;
	}


.panel-contacto-img .col-img img{
	height:100%;
	object-fit:cover;
	width:100%;
	}


/*                                       
-------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	.panel-contacto-img .col-info  {order:2}
	.panel-contacto-img .col-img  {order:1}

}


/*------------------------------------------------------------------------ 
PANEL - NOSOTROS  ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/

.panel-nosotros {
	background-color:var(--color-neutro);
	}

div.panel-nosotros{
	padding-bottom:0px;
	padding-top:0px;
	}



.panel-nosotros {
	align-items:flex-start;
	display:flex;
	flex-flow:	row wrap;
	font-size:inherit;
	justify-content:center;
	list-style: none;
	margin:0px;
	padding: 0px;
	width:100%;
	}


/* item
------------------------------*/
.panel-nosotros .item {
	background-color:var(--color-white);
	align-items:stretch;
	border-radius:var(--rounded-none);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	justify-content:space-between;
	list-style:none;
	overflow:hidden;
	text-decoration:none;
	padding:0px 0px;
	width:100%;
	}

.panel-nosotros .item:nth-child(1){background-color: #ffff}
.panel-nosotros .item:nth-child(2){background-color: #ffff}
.panel-nosotros .item:nth-child(3){background-color: #ffff}


/* Ancho de paneles
------------------------------------------*/
.panel-nosotros .panel-info {
	flex-grow:9;
	width:40%;
	}
.panel-nosotros .panel-img {
	flex-grow:9;
	width:40%;
	}



/* order 
------------------------------*/

/* ODD */
.panel-nosotros .item:nth-child(odd) .panel-info{
	order:1;
	}
.panel-nosotros .item:nth-child(odd) .panel-img{
	order:2;
	}

/* EVEN */
.panel-nosotros .item:nth-child(even) .panel-info{
	order:2;
	}
.panel-nosotros .item:nth-child(even) .panel-img{
	order:1;
	}





.panel-nosotros .panel-info,
.panel-nosotros .panel-img {
	display:flex;
	flex-flow:row wrap;
	}



/* Panel info
------------------------------*/
.panel-nosotros .panel-info {
	color: var(--color-neutro-darker);	
	align-items:center;
	align-content:center;
	justify-content:flex-start;
	height:auto;
	}


.panel-nosotros .item:nth-child(odd) .panel-info {
	padding:4vw;
	}

.panel-nosotros .item:nth-child(even) .panel-info {
	padding:4vw;
	}


.panel-nosotros .panel-info .title{
	text-align: left;
	}

.panel-nosotros .panel-info p{
	font-size:inherit;
	font-weight:normal;
	}


.panel-nosotros .panel-info > *:not(a) {
	width:100%;
	}


/* Panel imagen
------------------------------*/
.panel-nosotros .panel-img{
	justify-content:center;
	}

.panel-nosotros .panel-img img{
	height:100%;
	max-height:100%;
	max-width:100%;
	object-fit:cover;
	width:100%;
	}





/*                                       
------------------------------------  MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	.panel-nosotros .panel-info,
	.panel-nosotros .panel-img {
	width:100%;
	}
	.panel-nosotros .item:nth-child(odd) .panel-img{
	order:1;
	}
	.panel-nosotros .item:nth-child(odd) .panel-info{
	padding:0px 4vw 0px 4vw;
	order:2;
	}
	.panel-nosotros .item:nth-child(even) .panel-img{
	order:1;
	}
	.panel-nosotros .item:nth-child(even) .panel-info{
	padding:0px 4vw 0px 4vw;
	order:2;
	}
	
	}







/*------------------------------------------------------------------------ 
PANEL - SERVICIOS  ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.panel-servicios{
	gap:var(--gap-inside);
	}


/*---------------------------------------------------
//////////           CARD DOS            //////////
---------------------------------------------------*/
.insert-card-dos{
	background-color:var(--color-neutro-softer);
	}

/* Cover
------------------------------------------*/
.insert-card-dos .item .cover,
.card-dos .cover{
	 background:var(--color-neutro-softer);
	}


/* --------------------------------------------------
------------------------------------------- BASE ---
---------------------------------------------------*/
.insert-card-dos{
	font-size:1rem;
	}


/* Card
------------------------------*/
.insert-card-dos .item,
.card-dos{
	align-items:center;
	background-color:var(--color-white);
	color: inherit;
	display:flex;
	flex-flow:column wrap!important;
	font-size:inherit;
	gap:var(--gap-inside);
	justify-content:flex-start;
	height:auto;
	overflow:hidden;
	padding:20px;
	transition: all 0.1s;
	transform: scale(1.0);
	width:100%;
	}


/* IF: rounded
------------------------------*/
.insert-card-dos.rounded .item,
.card-dos.rounded{
	border-radius:var(--rounded);
	}



/* IF: anchor
------------------------------*/
.insert-card-dos a.item,
a.card-dos{
	color:inherit;
	text-decoration:none;
	}

.insert-card-dos a.item:hover,
a.card-dos:hover{
	box-shadow:0px 0px 2px rgba(0, 0, 0, 0.2);
	text-decoration:none;
	}


/* Cover
------------------------------*/
.insert-card-dos .cover,
.card-dos .cover{
	align-items:center;
	border-radius:50%;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	overflow:hidden;
	height:80px;
	margin-bottom:20px;
	width:80px;
	}

/* Info
------------------------------*/
.insert-card-dos .info,
.card-dos .info{
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	flex-grow:99;
	gap:var(--gap-inside);
	height:auto;
	width:100%;
	}


/* Order
------------------------------*/
.insert-card-dos .cover,
.card-dos .cover{
	order:1;
	}

.insert-card-dos .info,
.card-dos .info{
	order:2;
	}



/* Icon or IMG
------------------------------*/
.insert-card-dos .cover img,
.insert-card-dos .cover svg,
.card-dos .cover img,
.card-dos .cover svg{
	height:100%;
	object-fit:contain;
	width:100%;
	}

.insert-card-dos .cover svg,
.card-dos .cover svg{
	padding:2px;
	}


/* Title
------------------------------*/
.insert-card-dos .item .title,
.card-dos .title{ 
	color: var(--color-main);
	font-size:0.9em;
	font-weight:bold;
	height:auto;
	margin:0px;
	padding:0px;
	text-align:center;
	text-transform:uppercase;
	width:100%;
	}


/* Párrafo
------------------------------*/
.insert-card-dos .item p,
.card-dos p{ 
	color:inherit;
	font-size:1em;
	font-weight:normal;
	height:auto;
	margin:0px;
	padding:0px;
	text-align:center;
	width:100%;
	}


/* Links	
------------------------------*/
.insert-card-dos .item .link,
.card-dos .link{ 
	color:var(--color-neutro-soft);
	font-size:0.7em;
	text-transform:uppercase;
	text-decoration:none;
	}


.insert-card-dos .item .link:hover,
.card-dos .link:hover,
.insert-card-dos a.item:hover .link,
a.card-dos:hover .link  { 
	text-decoration:underline;
	}














/*------------------------------------------------------------------------ 
PANEL - CLIENTES   ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/

.panel-galeria-default{
  background-color:var(--color-neutro-softer);
  }

.panel-galeria-default .item{
  background-color:var(--color-neutro-softer);
  }

.panel-galeria-default .item .caption{
  background-color:red;
  opacity:0.2;
  }

.panel-galeria-default .item .caption .title{
  color:var(--color-white);
  }

.panel-galeria-default .item:hover .caption{
  opacity:1.0;
  }





/* -------------------------------------------------
PANEL GALERIA    ------------------------- BASE ---
--------------------------------------------------*/

/* A - Z index
------------------------------*/




/* B - general
------------------------------*/
.panel-galeria-default{
  color:inherit;
  font-size:inherit;
  gap:var(--gap-inside);
  }



/* C - Items
------------------------------*/
.panel-galeria-default .item{
  align-items:center;
  aspect-ratio: 3 / 2;
  border-radius: var(--rounded);
  display:flex;
  flex-flow:row wrap;
  flex-grow:9!important;
  justify-content:flex-start;
  height:auto;
  padding:20px;
  overflow:hidden;
  position:relative;
  transition:var(--add-transition);
  width:100%;
  }

.panel-galeria-default .item.white{
  color: transparent;
  }



/* If: item is anchor */
.panel-galeria-default a.item{
  text-decoration:none!important;
  }

.panel-galeria-default a.item:hover{
  box-shadow:0px 0px 4px rgba(0, 0, 0, 0.4);
  text-decoration:none;
  }



/* < picture > */
.panel-galeria-default .item picture,
.panel-galeria-default .item figure{
  position:absolute;
  bottom:0px;
  left:0px;
  right:0px;
  top:0px;
  z-index:1;
  }



/* < img > */
.panel-galeria-default .item img{
  height:100%;
  object-fit:cover;
  width:100%;
  }


/* If: caption */
.panel-galeria-default .item  *:not(picture){
  z-index:2;
  }




/* D - Caption
------------------------------*/
.panel-galeria-default .item .caption{
  align-content:center;
  display:flex;
  flex-flow:row wrap;
  flex-wrap:wrap;
  gap:var(--gap-inside);
  justify-content:center;
  padding:40px;
  position:absolute;
  transition:var(--add-transition);
  width:100%;
  bottom:0px;
  left:0px;
  right:0px;
  top:0px;
  z-index:10;
  }


/* title  */
.panel-galeria-default .item .caption .title{
  font-weight:bold;
  height:auto;
  margin:0px;
  padding:0px;
  text-transform:uppercase;
  text-align:center;
  width:100%;
  }


/* p  */
.panel-galeria-default .item .caption p{ 
  height:auto;
  margin:0px;
  padding:0px;
  text-align:center;
  width:100%;
  }


/* Link  */
.panel-galeria-default .item .caption .link{ 
  display:flex;
  text-align:center;
  width:auto;
  }


.panel-galeria-default .item .caption .link,
.panel-galeria-default .item .caption a{ 
  font-size:0.8em;
  text-transform:uppercase;
  text-decoration:none;
  }














/*------------------------------------------------------------------------ 
PANEL - BRANDS  //////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
/*--------------------------------------------------
PANEL BRANDS //////////////////////////////////
---------------------------------------------------*/
div.panel-brands{
	background-color: var(--color-main);
	}



/* Tamaño
------------------------------*/
.panel-brands .item{
	display:flex;
	height:120px;
	width:120px;
	max-width:120px;
	}
	@media only screen and (max-width:1200px) {
	.panel-brands .item{
	height:100px;
	width:100px;
	}}
	@media only screen and (max-width:620px) {
	.panel-brands .item{
	height:80px;
	width:80px;
	}}


/* -------------------------------------------------
PANEL BRANDS   --------------------------- BASE ---
--------------------------------------------------*/

/* 00 - Z index
------------------------------*/
.panel-brands {z-index:10}


/* 01 - general
------------------------------*/
.panel-brands{
	align-items:flex-start;
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	gap:20px;
	width:100%;
	}


.panel-brands .item{
	align-items: center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	}

.panel-brands .item img{
	height:100%;
	object-fit:contain;
	width:100%;
	}


/*-------------------------------------------------------------------------- 
/////////////////////////////////////////////////// ---------- / END PANELS
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
06 ELEMENTOS //////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

	
/*---------------------------------------------------------------- 
--- ELE2 VARIOS  /////////////////////////////////////////////////
----------------------------------------------------------------*/
/*---------------------------------------------------
//////////             E1 MODALS           //////////
---------------------------------------------------*/
/* ----------------------------------------
-------------------------- MODAL SIMPLE ---
-----------------------------------------*/
.modal{
	max-width:100%;
	width:auto!important;
	}
  


/* Container (ancho)
------------------------------*/
.modal .modal-container{
	max-width:820px;
	}
  


/* Title
------------------------------*/
 .modal .modal-container .title {
 	background-color:var(--color-main);
	color:var(--color-white-80);
	font-size:0.8rem;
	font-weight:bold;
	padding:20px 0px;
	text-align:center;
	text-transform:uppercase;
	width:100%;
	}



/* Inside
------------------------------*/
.modal .inside{
	display:flex;
	flex-flow:row wrap;
	height: auto;
	gap:var(--gap-inside);
	padding:40px 5vw 20px 5vw;
	width:100%!important;
	}



.modal .inside p {
	color:inherit;
	margin:0px;
	padding:0px;
	text-align:center;
	}


/* Close modal
------------------------------*/
.modal .close-modal {
	top:10px!important;
	right:10px!important;
	}


/* ----------------------------------------
---------------------------- MODAL INFO ---
-----------------------------------------*/

/* Title
------------------------------*/
 .modal .modal-container.modal-info .title {
 	background-color:var(--color-neutro-darker);
	color:var(--color-white-80);
	}

/* ----------------------------------------
---------------------------- MODAL OK ---
-----------------------------------------*/

/* Title
------------------------------*/
 .modal .modal-container.modal-ok .title {
 	background-color:var(--color-ok);
	color:var(--color-white-80);
	}

/* ----------------------------------------
------------------------ MODAL WARNING ---
-----------------------------------------*/

/* Title
------------------------------*/
 .modal .modal-container.modal-warning .title {
 	background-color:var(--color-caution);
	color:var(--color-white-80);
	}


/* ----------------------------------------
--------------------- MODAL IGRAMF ---
-----------------------------------------*/
.modal-container.modal-iframe  {
	background-color:var(--color-black);
	max-width:100%;
	padding:0px;
	width:100vw!important;
	}

.modal-container.modal-iframe  iframe {
	aspect-ratio: 3 / 1;
	height:auto;
	min-height:80vh;
	width:100%;
	}

/* ----------------------------------------
--------------------- MODAL OPEN VIDEO ---
-----------------------------------------*/
.modal-container.modal-open-video  {
	background-color:var(--color-black);
	max-width:100%;
	padding:0px;
	width:100vw!important;
	}

.modal-container.modal-open-video  iframe {
	aspect-ratio: 3 / 1;
	height:auto;
	min-height:320px;
	width:100%;
	}



/*---------------------------------------------------
//////////           E2  TAB BOX           //////////
---------------------------------------------------*/

/*  

@import url('codex/elements/css-tab-box.css');

*/




/*---------------------------------------------------
//////////            LIST ICON          //////////
---------------------------------------------------*/
ul.list-icon{
	align-items:flex-start;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	list-style:none;
	padding:0px;
	flex-direction:column;
	width:100%;
	}


ul.list-icon li{
	align-items:flex-start;
	display:flex;
	flex-wrap:wrap;
	height:auto;
	justify-content:space-between;
	line-height:20px;
	list-style:none;
	margin:0px 0px 8px 0px;
	width:100%;
	}



ul.list-icon li .svg-icon{
	fill:var(--color-black);
	height:20px;
	line-height:20px;
	width:20px;
	}


ul.list-icon li span{
	display: block;
	width:calc(100% - 26px);
	}







/*---------------------------------------------------
//////////             LIST TAG            //////////
---------------------------------------------------*/
ul.list-tag{
	align-items:flex-start;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	list-style:none;
	padding:0px;
	flex-direction:column;
	width:100%;
	}


ul.list-tag{
	flex-direction:row;
	padding:0px;
	}


ul.list-tag li{
	background-color:var(--color-neutro-softer);
	color:var(--color-neutro);
	display:block;
	font-size:0.6em;
	font-weight:bold;
	margin:4px 4px 0px 0px;
	padding:0px 10px;
	text-transform:uppercase;
	width:auto;
	}

ul.list-tag li,
ul.list-tag li a{
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:center;
	border-radius:13px;
	height:26px;
	line-height:26px;
	}


ul.list-tag li a{
	color:inherit;
	font-size:inherit;
	text-decoration:none;
	width:100%;
	}

ul.list-tag li a:hover{
	color:inherit;
	font-size:inherit;
	text-decoration:none;	
	}

ul.list-tag li .svg-icon{
	height:26px;
	width:26px;
	}



/*---------------------------------------------------
//////////          FIRST ELEMENT         //////////
---------------------------------------------------*/
@media only screen and (max-width:620px) {
	.first{
	margin-top:62px; /* = Tamaño de header movil */
	}
}


/*---------------------------------------------------
//////////             ESCONDER           //////////
---------------------------------------------------*/
.ocultar,
.esconder,
.hide {
	display:none;
	}


/*---------------------------------------------------
//////////           LISTA SOCIAL        //////////
---------------------------------------------------*/
/* ----------------------------------------
-------------------------- FLOATING ---
-----------------------------------------*/
.social-bar.floating {
	position:fixed;
	width:auto!important;
	bottom:60px;
	left:auto;
	right:60px!important;
	top:auto;
	z-index:99;
	}
	@media only screen and (max-width:1600px) {
	.social-bar.floating {
	bottom:5vw;
	right:5vw!important;
	}}




/* escondemos textos */
.social-bar.floating label{
	display:none;
	}

	
/*---------------------------------------------------
//////////              FIRMA              //////////
---------------------------------------------------*/
.firma {
	align-items:flex-end;
	display:flex;
	flex-flow:column wrap;
	flex-grow:9;
	font-size:10px;
	gap:8px;
	line-height:1.2em;
	justify-content:flex-end;
	opacity:0.5;
	text-decoration:none;
	margin-top:40px;
	max-width:auto;
	width:auto;
	}



.firma span{
	text-transform:none;
	}



.firma  a{
	background-color:var(--color-neutro);
	color:var(--color-neutro-softer);
	font-weight:bold;
	text-decoration:none!important;
	padding:2px 5px;
	}

/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////// ---------- / END ELEMENTOS
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
07 SECCIONES  //////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/



/*-------------------------------------------------------------------------- 
//////////////////////////////////////////////// ---------- / END SECCIONES
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
08 MENU & INPUTS  //////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/* (import: assets/css-inputs.css) */

/*-------------------------------------------------------------------------- 
////////////////////////////////////////////// ---------- / END MENU INPUTS
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
09 FOOTER /////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/* General
------------------------------*/
footer{
	align-items:stretch;
	align-items:flex-start;
	display:flex;
	flex-flow:row wrap;
	font-size:0.8rem;
	gap:var(--gap-second);
	height:auto;
	max-width:100%;
	overflow-x:hidden;
	padding-bottom:40px;
	padding-top:40px;
	width:100%;
	}


/* Cols
------------------------------*/
footer .col{
	min-width:260px;
	width:30%;
	}


footer .col-1{
	order:1;
	}

footer .col-2{
	order:2;
	}

footer .col-3{
	order:3;
	}

footer .col-4{
	order:4;
	}



/* IF: Col Logotipo
------------------------------*/
footer .col-logotipo{
	justify-content:flex-start;
	min-width:260px!important;
	}


footer .col .logotipo{
	display:block;
	height:auto;
	width:120px;
	}

footer .col .logotipo img{
	height:auto;
	width:100%;
	}




/* Parrafo
------------------------------*/
footer.col p{
	height:auto;
	line-height:1.6em;
	padding:0px;
	width:100%;
	}



/* Links
------------------------------*/
footer p a{
	text-decoration:none;
	}
footerp a:hover{
	text-decoration:underline;
	}




/* Col last
------------------------------*/
footer .col-last{
	justify-content:flex-end;
	min-width:260px!important;
	}


footer .col-last ul.social-bar,
footer .col-last ul.menu{
	justify-content:flex-end;
	margin-top: 20px;
	}


footer .col-last .firma{
	align-self: flex-end;
	}



/*                                       
-----------------------------------------  1020 ---
--------------------------------------------------*/
@media only screen and (max-width:1020px) {


	footer .col-logotipo{
		justify-content:flex-start;
		margin-bottom:20px;
		width:100%!important;
		}

	footer .col-last ul.social-bar,
	footer .col-last ul.menu{
		justify-content:flex-start;
		}

	footer .col-last .firma{
		align-items:flex-start;
		justify-content:flex-start;
		}


}



/*                                       
-----------------------------------------  920 ---
--------------------------------------------------*/
@media only screen and (max-width:920px) {


	footer .col{
		order:1;
		width:100%!important;
		}

	footer .col-logotipo{
		order:1;
		width:100%;
		}

	footer .col-last{
		width:100%!important;
		justify-content:flex-start;
		}

	footer .col-last ul.social-bar,
	footer .col-last ul.menu{
		justify-content:flex-start;
		}

	footer .col-last .firma{
		align-items:flex-start;
		justify-content:flex-start;
		}

}


/*-------------------------------------------------------------------------- 
/////////////////////////////////////////////////// ---------- / END FOOTER
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////////////
10 EXTRAS  ///////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*------------------------------------------------------------------------ 
--- ANIMATION ////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*

Catálogo de animaciones predefinidas, se puede aplicar a variso elementos
añadiendo las clases .animate y el tipo de acción, ejemplo .to-fade

< div class="animate.ti-fade" >


A. ----- Necesaria la libreria Waypoints
 
*/


/* -------------------------------------
+++     TO FADE      //////////////////
-------------------------------------*/
* .animate.to-fade{
	transition:var(--add-transition)!important;
	opacity:0.0;
	}

* .animated.to-fade{
	opacity:1.0!important;
	}
/* -------------------------------------
+++     TO TOP      //////////////////
-------------------------------------*/
.animate.to-top{
	transition:var(--add-transition)!important;
	transform: translateY(40px);
	opacity:0.0;
	}

.animated.to-top{
	opacity:1.0!important;
	transform: translateY(0px);
	}

/* -------------------------------------
+++     TO RIGHT      /////////////////
-------------------------------------*/
.animate.to-right{
	transition:var(--add-transition);
	transform: translatex(-40px);
	opacity:0.0;
	}

.animated.to-right{
	opacity:1.0!important;
	transform: translatex(0px);
	}


/*-------------------------------------------------------------------------- 
/////////////////////////////////////////////////// ---------- / END EXTRAS
--------------------------------------------------------------------------*/

/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////////////////
AREA //////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*------------------------------------------------------------------------ 
CATEGORIA ////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*---------------------------------------------------------------- 
--- DIVISIÓN  ///////////////////////////////////////////////////
----------------------------------------------------------------*/

/*---------------------------------------------------------------- 
PANEL ////////////////////////////////////////////////////////////
----------------------------------------------------------------*/

/*---------------------------------------------------
////////////      BLOQUE O PATRON       ////////////
---------------------------------------------------*/

/* -------------------------------------
+++     VARIACION      ////////////////
-------------------------------------*/

/*                                       
------------------------------------------- 720 ---
--------------------------------------------------*/


/* item
------------------------------*/

/* item
------------------------------*/



/* ---- separador --- */



/* ----------------------------------------
-----------------------------------BASE ---
-----------------------------------------*/


/* ---------------------------------------
-------------------------- VARIACIONES ---
----------------------------------------*/

/*--------------------------------------
+ VARICION /////////////////////////////
--------------------------------------*/

