/*------------------------------------------------------------------------ 
GENERAL  /////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

html, body {
	background-color:var(--color-white);
	color: var(--color-main-darker);
	font-weight:normal;
	letter-spacing:0.18px;
	}



:root {

	--font-main:'Montserrat', sans-serif;
	--font-second:'Montserrat', sans-serif;

	--color-main-darker:#303343;
	--color-main-dark:#474d65;
	--color-main:#5f6684;
	--color-main-soft:#959ab3;
	--color-main-softer:#d0d3dd;

	--color-second-darker:#233563;
	--color-second-dark:#355093;
	--color-second:#466ac4;
	--color-second-soft:#8ea4db;
	--color-second-softer:#d7e1e5;


	--color-neutro-darker:#17191a;
	--color-neutro-dark:#343638;
	--color-neutro:#62686d;
	--color-neutro-soft:#75797C;
	--color-neutro-softer:#E6EAEF;

	--color-ok:#55b88b;
	--color-ok-softer:#a9dac4;
	--color-caution:#edbc2a;
	--color-caution-softer:#f9f8ea;
	--color-warning:#fc6161;
	--color-warning-softer:#f2c9c9;

	}


/*-------------------------------------------------- 
---     INTERLINEADO   //////////////////////////
---------------------------------------------------*/
body, p{
	line-height: 1.6;
	}
h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	}



/*-------------------------------------------------- 
---     TITLES    //////////////////////////////////
---------------------------------------------------*/
.title-main {
	font-weight: 600;
	font-size:2.2em;
	}

.title-1 {
	font-size:1.8em;
	}

.title-2 {
	font-size:1.2em;
	}

.title-3 {
	font-size:1.3em;
	}

.subtitle-1 {
	font-size:1.4em;
	font-weight:normal;
	}

.subtitle-2 {
	font-size:1.5em;
	}

.subtitle-2 {
	font-size:1em;
	}


/*------------------------------------------------------------------------ 
HEADER //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/


/* General
------------------------------*/
header.header-main  {
	background-color:var(--color-white);
	border-bottom:1px solid var(--color-neutro-softer);
	padding-block:clamp(2px, 1vw, 8px);
	}


/* Altura
----------------------------------------*/
header.header-main {
	height:clamp(100px, 10vh, 200px);
	}


/* Fonts
------------------------------*/
header.header-main nav[class^="nav-main"] {
	font-weight:bold;
	font-family:var(--font-main);
	text-transform:uppercase;
	}


/* Separator
------------------------------*/
header.header-main nav[class^="nav-main"] > ul > li[data-element='separator']{
	background-color:var(--color-neutro-soft);
	}


/* UL
------------------------------*/
header.header-main nav[class^="nav-main"] ul {
	gap:clamp(1px, 0.5vw, 4px);
	}


/* Buttons
------------------------------*/
header.header-main nav[class^="nav-main"] > ul > li > *:not(ul, .button),
header.header-main nav[class^="nav-main"] > ul > li .btn-dropdown + label {
	color:var(--color-main-darker);
	}


/* Buttons + icons
------------------------------*/
header.header-main nav[class^="nav-main"] > ul > li > *:not( .button ) .svg-icon,
header.header-main nav[class^="nav-main"] > ul > li .btn-dropdown + label .svg-icon{
	fill:var(--color-main-darker);
	}


/* Hover
------------------------------*/
header.header-main nav[class^="nav-main"] > ul > li > a:not( .button ):hover,
header.header-main nav[class^="nav-main"] > ul > li .btn-dropdown + label:hover {
	color:var(--color-second);
	}


header.header-main nav[class^="nav-main"] > ul > li > a:not( .button ):hover > .svg-icon,
header.header-main nav[class^="nav-main"] > ul > li .btn-dropdown:hover  + label .svg-icon{
	fill:var(--color-second);
	}



/* Botones activos
------------------------------*/
body#inicio header nav ul li[data-seccion='inicio'] a, 
body#inicio header nav ul li[data-seccion='inicio'] a:hover,
body.servicios header nav ul li[data-seccion='servicios'] a, 
body.servicios header nav ul li[data-seccion='servicios'] a:hover,
body.empresa header nav ul li[data-seccion='empresa'] a, 
body.empresa header nav ul li[data-seccion='empresa'] a:hover,
body.blog header nav ul li[data-seccion='blog'] a, 
body.blog header nav ul li[data-seccion='blog'] a:hover,
body.contacto header nav ul li[data-seccion='contacto'] a, 
body.contacto header nav ul li[data-seccion='contacto'] a:hover  {
	background-color:transparent;
	color:var(--color-main-darker); 
	}

/*------------------------------------------------------------------------ 
PANEL MOVIL /////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
.panel-movil{
	background-color:var(--color-main-darker);
	}


/* Menu movil
------------------------------*/
.panel-movil .menu-movil *{
	color:var(--color-white-80);
	font-weight:bold;
	}


.panel-movil > * .svg-icon{
	fill:var(--color-white-80);
	}


.panel-movil  hr,
.panel-movil .menu-movil hr {
	background-color:var(--color-white-20)!important;
	}




/*------------------------------------------------------------------------ 
BANNERS  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/


/* Colores
----------------------------------------*/

[data-element='banner-main'] {
	background-color:var(--color-main-soft);
	}

[data-element='banner-main'] .item-row{
	background-color:var(--color-white);
	}


[data-element='banner-main'] .col-img{
	background:var(--color-black);
	}
	
[data-element='banner-main'] .col-img picture{
	opacity:0.8;
	}

[data-element='banner-main'] .col-content{
	color:inherit;
	}



[data-element='banner'] {
	background-color:var(--color-main-soft);
	}

[data-element='banner'] .inside{
	background-color:var(--color-neutro);
	}

[data-element='banner'] .col-img{
	background:var(--color-neutro);
	}
[data-element='banner'] .col-content{
	color:inherit;
	}



/*-------------------------------------------------- 
---     IF: ADD-GRADIENT   /////////////////////////
---------------------------------------------------*/
.add-gradient{
	background-image:linear-gradient(to right, var(--color-second-softer) 20%, transparent 80%);
	}
.add-gradient .inside .col-img > picture img{
	object-position:right center;
	}



/*-------------------------------------------------- 
---     BANNER BOX   //////////////////////////
---------------------------------------------------*/
[data-element^='banner'] .content-box{
	width:50%;
	}


[data-element^='banner'] .content-box  [class*="title"]{
	color:var(--color-second);
	order:1;
	}

[data-element^='banner'] .content-box  [class*="subtitle"]{
	color:var(--color-black);
	order:2;
	}

[data-element^='banner'] .content-box > p{
	color:var(--color-black);
	font-size:1.4rem;
	order:3;
	}

[data-element^='banner'] .content-box .button{
	order:4;
	}


/*                                       
-------------------------------------  MOVIL 720 ---
--------------------------------------------------*/

@media only screen and (max-width:720px) {


.add-gradient{
	background-image:none;
	}

[data-element='banner-main'] .col-content{
	background:var(--color-main-darker);
	}



/*--------------------------------------------------- 
--- IF BANNER MOVIL GRADIENT   /////////////////////
---------------------------------------------------*/
	[data-element='banner-main'].movil-gradient .col-content{
	background:linear-gradient(to bottom, var(--color-black-20) 40%, var(--color-black) 102%)!important;
	}

	[data-element='banner'].movil-gradient .col-content{
	background:linear-gradient(to bottom, var(--color-black-20) 40%, var(--color-black) 102%)!important;
	}

/*--------------------------------------------------- 
--- IF BANNER MOVIL BOX   ///////////////////////////
---------------------------------------------------*/
[data-element^='banner'].movil-box .col-content{
	background-color:var(--color-black-50)!important;
	}

/*--------------------------------------------------- 
--- IF BANNER MOVIL BLOCK   ////////////////////////
---------------------------------------------------*/
[data-element^='banner'].movil-block .col-content{
	background:var(--color-main)!important;
	}



/*-------------------------------------------------- 
---     CONTENT BOX   //////////////////////////
---------------------------------------------------*/
	[data-element^='banner'] .content-box{
	width:100%!important;
	}


	[data-element^='banner'] .content-box .title-main{
	font-size: 1.7em;
	color:var(--color-second);
	}

	[data-element^='banner'] .content-box .subtitle{
	color: var(--color-second-soft);
	}

	[data-element^='banner'] .content-box p{
	font-size: 1em;
	color: var(--color-white);
	}

	[data-element^='banner'] .content-box ul.menu li > *,
	[data-element^='banner'] .content-box ul.menu li > *:hover,
	[data-element^='banner'] .content-box .button,
	[data-element^='banner'] .content-box .button:hover{
	background-color:var(--color-white);
	color:var(--color-black);
	order:4;
	}

}




/*------------------------------------------------------------------------ 
PANELES ////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/




/*------------------------------------------------------------------------ 
INPUTS  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*---------------------------------------------------------------- 
--- INPUTS /////////////////////////////////////////
----------------------------------------------------------------*/

/* Fondo y borde
------------------------------*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel],
input[type=search],
input:focus,
textarea,
textarea:focus,
seelct
select:focus,
div.input,
div.input > span,

/* box search */
div.box-search,

/* div.select */
div.select {
	border:1px solid var(--color-neutro-softer);
	background-color:var(--color-neutro-softer);
	}


/* Default Border radius
------------------------------*/
form.inputs input[type=text],
form.inputs input[type=number],
form.inputs input[type=password],
form.inputs input[type=email],
form.inputs input[type=tel],
form.inputs input[type=search],
form.inputs select,
form.inputs div.input,

/*inputs*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel],
input[type=search],
select,
textarea,

/* div input */
div.input,

/* box search */
div.box-search,

/* div select */
div.select,

/* botones */
.button,
.button + label,
ul.add-button li > a,
ul.add-button li > span,
ul.add-button li > input[type=submit] + label,
ul.add-button li > input[type=button] + label,
ul.add-button li > input[type=file] + label,
ul.add-button li > input[type=checkbox] + label,
ul.add-button li > input[type=radio] + label,

/* tag */
ul.add-button li > button,
.tag,
ul.add-tag li > *:not(a, p, input, button),

div.checkbox-set input[type=checkbox] + label span{
	border-radius:0px;
	}




/*---------------------------------------------------------------- 
--- BOTONES  ////////////////////////////////////////////////
----------------------------------------------------------------*/

.button,
.button + label,
ul.add-button li > a,
ul.add-button li > span,
ul.add-button li > input[type=submit] + label,
ul.add-button li > input[type=button] + label,
ul.add-button li > input[type=file] + label,
ul.add-button li > input[type=checkbox] + label,
ul.add-button li > input[type=radio] + label,
ul.add-button li > button,
.tag,
ul.add-tag li > *:not(a, p, input, button) {
	background-color:var(--color-main);
	color:var(--color-white-70);
	border-radius:4px;
	}


/* Icons
------------------------------*/
.button .svg-icon,
.button + label .svg-icon,
ul.add-button li > * > .svg-icon,
ul.add-button .svg-icon,
.tag .svg-icon,
ul.add-tag li > *:not(a, p, input, button) .svg-icon{
	fill:var(--color-white-70);
	}


/* Hover
------------------------------*/
.button:hover,
.button + label:hover,
ul.add-button li > a:hover,
ul.add-button li > span:hover,
ul.add-button li > input[type=submit] + label:hover,
ul.add-button li > input[type=button] + label:hover,
ul.add-button li > input[type=file] + label:hover,
ul.add-button li > input[type=checkbox] + label:hover,
ul.add-button li > input[type=radio] + label:hover,
ul.add-button li > button:hover {
	background-color:var(--color-main-dark);
	color:var(--color-white);
	text-decoration:none;
	}

.button:hover .svg-icon,
.button + label:hover .svg-icon,
ul.add-button :hover .svg-icon {
	fill:var(--color-white);
	}


/* Checked (if checbox - radio)
------------------------------*/
ul.add-button li > input[type=checkbox]:checked + label,
ul.add-button li > input[type=radio]:checked + label{
	background-color:var(--color-main-darker);
	color:var(--color-white);
	}
ul.add-button li > input[type=checkbox]:checked + label .svg-icon,
ul.add-button li > input[type=radio]:checked + label .svg-icon{
	fill:var(--color-white);
	}



/* + Outline
------------------------------*/
.button.outline,
.button.outline + label,
ul.add-button.outline li > a,
ul.add-button.outline li > span,
ul.add-button.outline li > input[type=submit] + label,
ul.add-button.outline li > input[type=button] + label,
ul.add-button.outline li > input[type=file] + label,
ul.add-button.outline li > input[type=checkbox] + label,
ul.add-button.outline li > input[type=radio] + label,
ul.add-button.outline li > button,
.tag.outline,
ul.add-tag.outline li > *:not(a, p, input, button)  {
	background-color:transparent;
	border:1px solid var(--color-main);
	color:var(--color-main);
	}

.button.outline .svg-icon,
.button.outline + label .svg-icon,
ul.add-button.outline  li > * .svg-icon,
.tag.outline .svg-icon,
ul.add-tag.outline .svg-icon {
	fill:var(--color-main);
	}

.button.outline:hover .svg-icon,
.button.outline + label:hover .svg-icon,
ul.add-button.outline li > *:hover .svg-icon {
	fill:var(--color-white);
	}


.button.outline:hover,
.button.outline + label:hover,
ul.add-button.outline li > a:hover,
ul.add-button.outline li > span:hover,
ul.add-button.outline li > input[type=submit] + label:hover,
ul.add-button.outline li > input[type=button] + label:hover,
ul.add-button.outline li > input[type=file] + label:hover,
ul.add-button.outline li > input[type=checkbox] + label:hover,
ul.add-button.outline li > input[type=radio] + label:hover,
ul.add-button.outline li > button:hover {
	border:1px solid transparent;
	background-color:var(--color-main);
	color:var(--color-white);
	}

/* Checked (if checbox - radio)
------------------------------*/
ul.add-button.outline li > input[type=checkbox]:checked + label,
ul.add-button.outline li > input[type=radio]:checked + label{
	border:1px solid transparent;
	background-color:var(--color-main-darker);
	color:var(--color-white);
	}

ul.add-button.outline li > input[type=checkbox]:checked + label .svg-icon,
ul.add-button.outline li > input[type=radio]:checked + label .svg-icon{
	fill:var(--color-white);
	}


/*---------------------------------------------------------------- 
--- BOTONES PERSONALIZADOS /////////////////////////////////////
----------------------------------------------------------------*/


/*-------------------------------------------------- 
---     BTN MOVIL   //////////////////////////
---------------------------------------------------*/
.btn-movil{
	background-color:var(--color-main-darker)!important;
	color:var(--color-white)!important;
	}
.btn-movil .svg-icon{
	fill:var(--color-white)!important;
	}


/* Close menu movil
------------------------------*/
.button.btn-close-menu-movil,
.button.btn-close-menu-movil + label,
ul.add-button.btn-close-menu-movil li > a,
ul.add-button.btn-close-menu-movil li > span,
ul.add-button.btn-close-menu-movil li > input[type=checkbox] + label,
ul.add-button.btn-close-menu-movil li > input[type=radio] + label{
	background-color:var(--color-black)!important;
	}

/*-------------------------------------------------- 
---     BTN DROPDOWN   //////////////////////////
---------------------------------------------------*/
.btn-dropdown .svg-icon {
	background-color:var(--color-neutro-softer);
	border-radius:50%;
	color:inherit;
	padding:4px;
	width:20px!important;
	}


/* Icon Dropdown
------------------------------*/
header nav .btn-dropdown .svg-icon{
	margin:-4px 0px 0px 0px;
	}


/*-------------------------------------------------- 
---     BTN WHATSAPP   //////////////////////////
---------------------------------------------------*/
.btn-whatsapp,
.add-button .btn-whatsapp,
.button.btn-whatsapp {
	background:var(--color-whatsapp)!important;
	}


/*-------------------------------------------------- 
---     BTN TELEFONO   //////////////////////////
---------------------------------------------------*/
.btn-telefono,
.add-button .btn-telefono,
.button.btn-telefono {
	background:var(--color-main)!important;
	}


/*-------------------------------------------------- 
---     BTN FACEBOOK   //////////////////////////
---------------------------------------------------*/
.btn-facebook,
.add-button .btn-facebook{
	background-color:var(--color-second)!important;
	}

/*-------------------------------------------------- 
---     BTN INSTAGRAM   //////////////////////////
---------------------------------------------------*/
.btn-instagram,
.add-button .btn-instagram{
	background-color:var(--color-instagram)!important;
	}

/*-------------------------------------------------- 
---     BTN YOUTUBE   //////////////////////////
---------------------------------------------------*/
.btn-youtube,
.add-button .btn-youtube{
	background-color:var(--color-youtube)!important;
	}


/*-------------------------------------------------- 
---     BTN LINKEDIN   //////////////////////////
---------------------------------------------------*/
.btn-linkedin,
.add-button .btn-linkedin{
	background-color:var(--color-linkedin)!important;
	}


/*-------------------------------------------------- 
---     BTN X   //////////////////////////
---------------------------------------------------*/
.btn-x,
.add-button .btn-x{
	background-color:var(--color-x)!important;
	}


/*-------------------------------------------------- 
---     BTN CORREO   //////////////////////////
---------------------------------------------------*/
.btn-correo,
.add-button .btn-correo{
	background-color:var(--color-second)!important;
	}



/*-------------------------------------------------- 
---     BTN UBICACION   //////////////////////////
---------------------------------------------------*/
.btn-ubicacion,
.add-button .btn-ubicacion{
	background-color:var(--color-maps)!important;
	color:var(--color-white)!important;
	}

.btn-ubicacion .svg-icon,
.add-button .btn-ubicacion .svg-icon{
	fill:var(--color-white)!important;
	}


/*-------------------------------------------------- 
---     BTN CALL TO ACTION   //////////////////////
---------------------------------------------------*/
.button.btn-call-to-action,
.button.btn-call-to-action + label,
ul.add-button.btn-call-to-action li > a,
ul.add-button.btn-call-to-action li > span,
ul.add-button.btn-call-to-action li > button,
ul.add-button.btn-call-to-action li > input[type=submit] + label,
ul.add-button.btn-call-to-action li > input[type=button] + label{
	background-color:var(--color-main)!important;
	}



/*-------------------------------------------------- 
---     BTN DELETE   //////////////////////////
---------------------------------------------------*/
.button.btn-delete,
.button.btn-delete + label,
ul.add-button.btn-delete li > a,
ul.add-button.btn-delete li > span,
ul.add-button.btn-delete li > button,
ul.add-button.btn-delete li > input[type=submit] + label,
ul.add-button.btn-delete li > input[type=button] + label{
	background-color:var(--color-warning)!important;
	}


/*-------------------------------------------------- 
---     BTN OK   //////////////////////////
---------------------------------------------------*/
.button.btn-ok,
.button.btn-ok + label,
ul.add-button.btn-ok li > a,
ul.add-button.btn-ok li > span,
ul.add-button.btn-ok li > button,
ul.add-button.btn-ok li > input[type=submit] + label,
ul.add-button.btn-ok li > input[type=button] + label{
	background:var(--color-ok-softer)!important;
	color:var(--color-ok)!important;
	}


/*-------------------------------------------------- 
---     BTN WARNING   //////////////////////////
---------------------------------------------------*/
.button.btn-warning,
.button.btn-warning + label,
ul.add-button.btn-warning li > a,
ul.add-button.btn-warning li > span,
ul.add-button.btn-warning li > button,
ul.add-button.btn-warning li > input[type=submit] + label,
ul.add-button.btn-warning li > input[type=button] + label{
	background:var(--color-warning-softer)!important;
	color:var(--color-warning)!important;
	}


/*-------------------------------------------------- 
---     BTN CAUTION   //////////////////////////
---------------------------------------------------*/
.button.btn-caution,
.button.btn-caution + label,
ul.add-button.btn-caution li > a,
ul.add-button.btn-caution li > span,
ul.add-button.btn-caution li > button,
ul.add-button.btn-caution li > input[type=submit] + label,
ul.add-button.btn-caution li > input[type=button] + label{
	background:var(--color-caution-softer)!important;
	color:var(--color-caution)!important;
	}



/*-------------------------------------------------- 
---     BTN CLOSE  //////////////////////////
---------------------------------------------------*/
.button.btn-close,
.button.btn-close + label,
ul.add-button.btn-close li > a,
ul.add-button.btn-close li > span,
ul.add-button.btn-close li > input[type=checkbox] + label,
ul.add-button.btn-close li > input[type=radio] + label{
	background-color:var(--color-black)!important;
	}




/*-------------------------------------------------- 
---     BTN WHITE   //////////////////////////
---------------------------------------------------*/
.button.btn-white,
[class*="add-button"].btn-white .button,
[class*="add-button"].btn-white .button{
	background:transparent!important;
	color:var(--color-white)!important;
	}

.button.btn-white .svg-icon,
[class*="add-button"].btn-white .button .svg-icon,
[data-element*='white'] .button .svg-icon{
	fill:var(--color-white);
	}


/*-------------------------------------------------- 
---     BTN BLACK  //////////////////////////
---------------------------------------------------*/
.button.btn-black,
[class*="add-button"].btn-black .button,
[data-element*='-black'] > .button{
	background:transparent!important;
	color:var(--color-black)!important;
	}

.button.btn-black .svg-icon,
[class*="add-button"].btn-black .button .svg-icon,
[data-element*='-black'] .button .svg-icon{
	fill:var(--color-black);
	}

/*------------------------------------------------------------------------ 
FOOTER  //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/
footer{
	background-color:var(--color-neutro-darker);
	color:var(--color-white-60);
	}

/* Title
------------------------------*/
footer .title {
	color:var(--color-main);
	font-family:var(--font-main);
	font-size:1em;
	font-weight:bold;
	text-align:left;
	text-transform:uppercase;
	width:100%;
	}

/* Asociacion
------------------------------*/
footer .asociacion {
	height: auto;
	width:80px
	}

