/*   
Theme Name: Impakta
Theme URL: 
Description: 
Author: @klu.com.mx
Text Domain: underscores
Template: underscores
Version:
Tags: 
*/

@import url('stock-css/banner-duopanel.css');

/*---------------------------------------------------------------- 
NORMALIZE ////////////////////////////////////////////////////////
----------------------------------------------------------------*/
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,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}

/* INDICE

///////////////////////////// GLOBAL 

	——— HTML body		
		—— html body
		—— import fonts
		—— colors
		—— box-shadow (--box-shadow)
		—— rounded (--rounded)

	——— Text and Fonts
		—— Font main and second
		——  Font size (--fs)	
		——  Font weigt (--fw)
		—— H
		—— p
		—— .center, .uppercase
		—— .puntos-suspensivos
		—— .txt-small
		—— p.add-column	
		—— a
		—— UL, OL default


	——— Otros
		—— IMG
		—— SVG
		—— IFRAME
		—— lazy
		—— border-box*


///////////////////////////// STRUCTURE 

	——— panels
	——— in (.wide .thin)
	—— gap
	—— HR
	—— w100
	—— w50




/////////////////////////////  HEADER

	——— Header
	——— Logotipo
	——— (accion movil)
	——— Movil nav
	——— Elementos moviles


///////////////////////////// BLOQUES Y PATRONES

		—— Titles
		—— Social bar + vertical
		—— Social floating
		—— list Icon
		—— list Tag
		—— Tab BOX + small
		—— box-info
		—— Modals 
		—— First element
		—— Esconder

///////////////////////////// PANELS

		——— All



///////////////////////////// SECCIONES

	——— All
		—— Banner principal
		—— Panel-
		—— Panel-
		—— Panel-

	——— Inicio
		—— Panel
		—— Panel

	——— Seccion 1
		—— Panel
		—— Panel



/////////////////////////// MENU & INPUTS 

	——— (import: assets/css-inputs.css)
		


///////////////////////////// FOOTER

	——— Footer
	——— footer-stock


///////////////////////////// XTRAS

	——— Firma


*/




/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
AREA ///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*------------------------------------------------------------------------ 
SECCIÓN //////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*--------------------------------------------------
PANEL //////////////////////////////////////////////
---------------------------------------------------*

/*---------------------------------------------------
//////////      BLOQUE O PATRON       //////////
---------------------------------------------------*/

/* -------------------------------------------------
---------------------------------- ❤ SET: DISEÑO ---
--------------------------------------------------*/


/* 01 SET :  ..................................
*/

/* item
------------------------------*/

/* item
------------------------------*/

/* ---- separador --- */


/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/

/* -------------------------------------------------
---------------------------------- MOVIL OPTIONS ---
--------------------------------------------------*/

/* -------------------------------------------------
------------------------------------ VARIACIONES ---
--------------------------------------------------*/

/*--------------------------------------
+ VARICION /////////////////////////////
--------------------------------------*/





/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
GLOBAL ////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*--------------------------------------------------
BODY HTML  /////////////////////////////////////////
---------------------------------------------------*/
html, body {
	background-color:var(--color-black);
	color: var(--color-white);
	display:flex;
	flex-direction:row; 
	flex-wrap: wrap;
	justify-content:center;
	align-items:flex-start;
	height:auto;
	min-height:100vh;
	position: relative;
	scroll-behavior:smooth;
	width:100%;
	}
	/* Break movil */
	@media only screen and (max-width:620px) {
	html, body {
	overflow-x:hidden;
	}}


/* Colors
------------------------------*/
:root {
	--color-main-darker:#262b36;
	--color-main-dark:#2c3d64;
	--color-main:#354d86;
	--color-main-soft:#607eaa;
	--color-main-softer:#dee5f0;

	--color-second-darker:#2a2c3c;
	--color-second-dark:#32375f;
	--color-second:#353f86;
	--color-second-soft:#5c65a8;
	--color-second-softer:#c4c8e6;

	--color-neutro-darker:#17191a;
	--color-neutro-dark:#343638;
	--color-neutro:#62686d;
	--color-neutro-soft:#75797C;
	--color-neutro-softer:#E6EAEF;

	--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-ok:#55b88b;
	--color-ok-softer:#a9dac4;
	--color-warning:#fc6161;
	--color-warning-softer:#f3afaf;

	--color-whatsapp:#25d366;
	--color-facebook:#3b5998;
	--color-instagram:#cd486b;
	--color-youtube:#ff0000;
	--color-twitter:#55acee;
	--color-x:#55acee;
	--color-linkedin:#007bb5;


	--gradient-main:linear-gradient(to bottom, var(--color-main-soft) 0%, var(--color-main) 100%);
	--gradient-main-soft:linear-gradient(to bottom, var(--color-main-softer) 0%, var(--color-main-soft) 100%);
	--gradient-main-dark:linear-gradient(to bottom, var(--color-main) 0%, var(--color-main-dark) 120%);

	--gradient-second:linear-gradient(to bottom, var(--color-second-soft) 0%, var(--color-second) 100%);
	--gradient-second-soft:linear-gradient(to bottom, var(--color-second-softer) 0%, var(--color-second-soft) 100%);
	--gradient-second-dark:linear-gradient(to bottom, var(--color-second) 0%, var(--color-second-dark) 120%);

	--gradient-radial-uno:radial-gradient(circle at center center, #A6CEE2,  #0066B2);
	--gradient-radial-dos:radial-gradient(circle at center center, #EDC1AE,  #F26721);

	/* https://css-tricks.com/a-complete-guide-to-css-gradients/  */


	}

.gradient-blend-uno {
    background:
    linear-gradient(red, transparent),
    linear-gradient(to top left, lime, transparent),
    linear-gradient(to top right, blue, transparent);
    background-blend-mode: screen;
	}



/* Box shadow, rounded
------------------------------*/
:root {

	--box-shadow:0px 0px 6px rgba(0, 0, 0, 0.1);
	--box-shadow-small:0px 0px 2px rgba(0, 0, 0, 0.2);

	--rounded:6px;
	--rounded-top:6px 6px 0px 0px;
	--rounded-bottom:0px 0px 6px 6px;
	--rounded-left:6px 0px 0px 6px;
	--rounded-right:0px 6px 6px 0px;
	--rounded-none:0px 0px 0px 0px;

	}


/*--------------------------------------------------
TEXT AND FONTS  ////////////////////////////////////
---------------------------------------------------*/


/* Import
------------------------------*/

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: local(''),
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  font-display:swap;
}


@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  font-display:swap;
}


@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: local(''),
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-500.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-500.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  font-display:swap;
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('assets/fonts/montserrat-v14/montserrat-v14-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
  font-display:swap;
}



/* Fonts
------------------------------*/

:root {

	--font-main:'Montserrat', sans-serif;
	--font-second:'Montserrat', sans-serif;

	--fs-small:0.6rem;
	--fs-medium:0.8rem;
	--fs-regular:1rem;
	--fs-large:1.2rem;
	--fs-xlarge:1.4rem;
	--fs-xxlarge:1.6rem;

	--fw-thin:300;
	--fw-normal:400;
	--fw-bold:500;
	--fw-bolder:700;

		}



/* Fuente primaria
------------------------------*/
html, body{
	font-family:var(--font-main);
	}



/* Fuente secundaria
------------------------------*/
h1, h2, h3, h4, h5, h6{
	font-family:var(--font-second);
	}


/* Font weight
------------------------------*/
html, body {
	font-weight:var(--fw-normal);
	}


/* 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:15px;
	}}
	@media only screen and (max-width:820px) {
	html, body {
	font-size:14px;
	}}
	@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:15px;
	}}




/* 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;
	width:100%;
	}

p strong,
p b{
	font-weight:var(--fw-bold);
	}

p a,
p a:hover{
	color:inherit!important;
	}

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 {
	text-align:center;
	}

p.left {
	text-align:left;
	}

p.right {
	text-align:right;
	}

/* 
------------------------------*/
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 {
	color:inherit;
	float:none;
	height: auto;
	margin:10px 0px;
	padding-left:18px;
	width:100%;
	}

ul li, 
ol li{
	color:inherit;
	float: none;
	height: auto;
	line-height:1.4em;
	margin: 0px;
	padding: 0px;
	width:100%;
	}

ul li {
	color:inherit;
	list-style:disc;
	}

ol li {
	list-style:decimal;
	}


ul li a,
ol li a{
	color:inherit;
	}





/*--------------------------------------------------
OTROS  /////////////////////////////////////////////
---------------------------------------------------*/


/* 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;
	}
	






/* iFrame
------------------------------*/
iframe {
	border:0px;
	width:100%!important;
	}



/* Lazy
------------------------------*/
.lazyloading {
	opacity: 0;
	}

.loading,
.lazyload,
.lazyloaded{
	opacity: 1;
	transition: opacity 0.8s;
	}


/* Transition
------------------------------*/
:root {

	--add-transition-very-slow:all 0.5s;
	--add-transition-slow:all 0.4s;
	--add-transition-normal:all 0.3s;
	--add-transition-fast:all 0.2s;
	--add-transition-very-fast:all 0.1s;

		}




/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////// END GLOBAL
--------------------------------------------------------------------------*/

/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
STRUCTURE /////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/* 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;
	}



/* Panels
------------------------------*/
*[data-element='panel'] {
	padding-bottom:80px;
	padding-top:80px;
	width:100%;
	}


/* Gaps
------------------------------*/
.gap-extra {gap:var(--gap-extra);}
.gap-main {gap:var(--gap-main);}
.gap-second {gap:var(--gap-second);}
.gap-inside {gap:var(--gap-inside);}
	@media only screen and (max-width:1020px) {
	.gap-extra{gap:4vw}
	}



/* Container default
------------------------------*/
div.container {
	width:100%;
	}



/* section default
------------------------------*/
section {
	align-items:flex-start;
	align-content:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:99;
	gap:var(--gap-second);
	justify-content:space-between;
	width:40%; /* but grow */
	}


section > div.col{
	align-items:flex-start;
	align-content: flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:99;
	gap:var(--gap-second);
	justify-content:space-between;
	width:26%; /* but grow */
	}



/* in
------------------------------*/
.in.full,
.in-full{
	padding-left:3vw;
	padding-right:3vw;
	/*width:90vw;*/
	}
.in.wide,
.in-wide{
	padding-left:6vw;
	padding-right:6vw;
	/*width:90vw;*/
	}

.in{
	padding-left:10vw;
	padding-right:10vw;
	/*width:86%;*/
	}

.in.thin,
.in-thin{
	padding-left:20vw;
	padding-right:20vw;
	/*width:60vw;*/
	}




@media only screen and (max-width:2200px) {
	.in.full,
	.in-full{
	padding-left:3vw;
	padding-right:3vw;
	/*width:94vw;*/
	}

	.in.wide,
	.in-wide{
	padding-left:3vw;
	padding-right:3vw;
	/*width:94vw;*/
	}

	.in{
	padding-left:10vw;
	padding-right:10vw;
	/*width:80vw;*/
	}

	.in.thin,
	.in-thin{
	padding-left:20vw;
	padding-right:20vw;
	/*width:60vw;*/
	}

}

@media only screen and (max-width:1200px) {
	.in.thin,
	.in-thin{
	padding-left:15vw;
	padding-right:15vw;
	/*width:70vw;*/
	}
}

@media only screen and (max-width:820px) {
	.in{
	padding-left:6vw;
	padding-right:6vw;
	/*width:88vw;*/
	}
	.in.thin,
	.in-thin{
	padding-left:10vw;
	padding-right:10vw;
	}
}

@media only screen and (max-width:720px) {
	.in{
	padding-left:3vw;
	padding-right:3vw;
	}
	.in.thin,
	.in-thin{
	padding-left:8vw;
	padding-right:8vw;
	}
}

@media only screen and (max-width:620px) {
	.in{
	padding-left:7vw;
	padding-right:7vw;
	}
	.in.thin,
	.in-thin{
	padding-left:10vw;
	padding-right:10vw;
	}

}

@media only screen and (max-width:520px) {
	.in{
	padding-left:5vw;
	padding-right:5vw;
	}
	.in.thin,
	.in-thin{
	padding-left:8vw;
	padding-right:8vw;
	}
}

@media only screen and (max-width:420px) {
	.in{
	padding-left:3vw;
	padding-right:3vw;
	}
	.in.thin,
	.in-thin{
	padding-left:3vw;
	padding-right:3vw;
	}
}










:root {

	--gap-main:4vw;
	--gap-second:3vw;
	--gap-inside:10px;
	--gap-inside-medium:8px;
	--gap-inside-small:6px;

}



/* hr
------------------------------*/
hr {
	background-color:var(--color-neutro-dark);
	border:0px;
	padding:0px;
	margin:5px 0px;
	height:1px;
	width:100%;
	}

hr.medium {
	height:3px;
	}


hr.big {
	height:5px;
	}


hr.space-2 {background-color:transparent!important; margin:1px 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;}


/* Al 100%
------------------------------*/
.w100 {width:100%!important;}


/* Al 50%
------------------------------*/
.w50 {width:50%;}





/*------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////// END STRUCTURE
-------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
HEADER /////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/
/* -------------------------------------------------
---------------------------------- ❤ SET: DISEÑO ---
--------------------------------------------------*/
/* Fondo
------------------------------*/
header  {
	background-color:var(--color-black);
	}


/* Fonts
------------------------------*/
header nav {
	font-size:0.9em;
	font-weight:var(--fw-bold);
	font-family:var(--font-main);
	text-transform:none;
	}


/* Separator
------------------------------*/
header nav > ul > li[data-element='separator']{
	background-color:var(--color-white);
	height:16px!important;
	margin:0px 10px;
	min-width:1px!important;
	width:1px!important;
	}


/* Buttons
------------------------------*/
header nav > ul > li > *:not(ul){
	color:var(--color-white);
	gap:6px;
	height:40px;
	line-height:40px;
	padding:0px 12px;
	}



/* Buttons + icons
------------------------------*/
header nav > ul > li > * .svg-icon{
	fill:var(--color-white);
	height:34px;
	width:34px;
	margin-left:-8px;
	}


/* Hover
------------------------------*/
header nav > ul > li > a:hover{
	color:var(--color-neutro-soft);
	}

header nav > ul > li > a:hover > .svg-icon{
	fill:var(--color-white);
	}






/* Icon-movil
------------------------------*/
header input.movil-button[type=checkbox] + label {
	color:var(--color-white);
	font-size:18px;
	font-weight:400;
	}

header input.movil-button[type=checkbox] + label i[data-element='icon-movil']:after {
	color:var(--color-white);
	font-size:20px;
	font-weight:300;
	line-height:20px;
	}

/*----- Checqued-----*/
header input.movil-button[type=checkbox]:checked + label{
	color:var(--color-white);
	}

header input.movil-button[type=checkbox]:checked + label i[data-element='icon-movil']:after{
	color:var(--color-white);
	font-size:20px;
	}



/* 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-nuetro-soft); 
	}

	@media only screen and (max-width:620px) {
	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:inherit;
	color:inherit; 
	}

	}



/*--------------------------------------------------
ELEMENTOS MOVILES //////////////////////////////////
---------------------------------------------------*

/* Movil Button (escondemos inputs)
------------------------------*/
header input.movil-button[type=checkbox] {
	visibility: hidden!important;
	display:none!important;
	order:1;
	}


/* Escondemos boton
------------------------------*/
header input.movil-button[type=checkbox] + label{
	display:none;
	}


/* Button movil
------------------------------*/
header input.movil-button[type=checkbox] + label[data-element='button-movil']{
	align-items:center;
	align-content:center;
	cursor:pointer;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:2px;
	margin:0px 0px;
	padding:0px 0px;
	min-width:50px;
	transition-delay:0.1s;
	transition:all 0.18s;
	text-transform:uppercase;
	order:1;
	overflow:hidden;
	position:relative;
	width:auto;
	}


header input.movil-button[type=checkbox] + label[data-element='button-movil'],
header input.movil-button[type=checkbox] + label[data-element='button-movil'] b,
header input.movil-button[type=checkbox] + label[data-element='button-movil'] i{
	height:20px;
	line-height:20px;
	}


/*----- Icono-----*/
header input.movil-button[type=checkbox] + label[data-element='button-movil'] i{
	display:block;
	font-style:normal;
	position:relative;
	transition-delay:0.1s;
	transition:all 0.18s;
	width:20px;	
	}



/*----- Icono primer estado-----*/
header input.movil-button[type=checkbox] + label[data-element='button-movil'] > i:after{
	color:var(--color-white);
	line-height:20px;
	font-family: arial;
	font-size:20px;
	content:"☰";
	font-style:normal;
	text-align:center;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	}


/*----- Icono segundo estado-----*/
header input.movil-button[type=checkbox]:checked + label[data-element='button-movil'] > i:after{
	color:var(--color-white);
	content:"✕";
	}



/* Block opacity
------------------------------*/
header div.block-opacity {
	background-color:var(--color-black);
	display:block;
	height:100vh;
	opacity:0.0;
	transition:all 0.18s;
	position:fixed!important;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	max-width:100%;
	transition:all 0.16s;
	transition-delay:0.16s;
	visibility:hidden;
	width:100vw;
	z-index:0;
	}


/* Block opacity show
------------------------------*/
div.block-opacity.show{
	display:block;
	visibility:visible!important;
	position:fixed!important;
	opacity:0.6!important;
	}



/* Lock body
------------------------------*/
body.lock{
	position:fixed!important;
	}



/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/
header.header-default {
	align-items:center;
	align-content:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	justify-content:space-between;
	gap:10px;
	max-width:100%;
	overflow-x:visible;/* necesary */
	width:100%;
	z-index:99;
	}


/* Temp
------------------------------ 
header a.logotipo {border:1px solid firebrick;}
header nav {border:1px solid orchid;}
header nav ul{border:1px solid green;}
header nav ul li > *{border:1px solid grey;}
*/




/* Altura
------------------------------*/
header.header-default {
	height:120px;
	}
	@media only screen and (max-width:2600px) {
	header.header-default{
	height:120px;
	}}
	@media only screen and (max-width:1600px) {
	header.header-default{
	height:100px;
	}}



/* Logotipo
------------------------------*/
header.header-default a.logotipo{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:0;
	height:auto;
	justify-content:center;
	width:auto;
	}



/*  Logotipo size
------------------------------*/
header.header-default a.logotipo img{
	display:flex;
	height:80px;	
	width:auto;	
	}
	@media only screen and (max-width:820px) {
	header.header-default a.logotipo img{
	height:80px;
	width:auto;
	}}
	@media only screen and (max-width:720px) {
	header.header-default a.logotipo img{
	height:70px;
	width:auto;
	}}
	@media only screen and (max-width:620px) {
	header.header-default a.logotipo img{
	/* En opciones Movil */
	}}



/*--------------------------------------------------
NAV ////////////////////////////////////////////////
---------------------------------------------------*/
header.header-default nav.nav-main{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	justify-content:flex-end;
	height:auto;
	width:auto;
	}


/* NAV UL
------------------------------*/
header.header-default nav.nav-main > ul {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:1;
	gap:6px;
	justify-content:flex-end;
	list-style:none;
	margin:0px;	
	padding:0px;
	width:auto;
	}


/* NAV UL LI
------------------------------*/
header.header-default nav.nav-main > ul > li,
ul.menu-dropdown > li{
	align-items:center;
	align-content:center;
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	height:auto;
	justify-content:center;
	list-style:none;
	margin:0px;	
	padding:0px;
	position:relative;
	text-align: center;
	width:auto;
	}


/* NAV UL LI > *
------------------------------*/
header.header-default nav.nav-main > ul > li > *:not(ul),
ul.menu-dropdown > li > *:not(ul) {
	align-items:center;
	align-content:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	margin:0px;
	overflow: hidden;
	position:relative;
	transition:all 0.12s;
	text-decoration:none;
	text-overflow:ellipsis!important;
	user-select: none;
	white-space:nowrap;
	width:auto;
	}


header.header-default nav.nav-main > ul > li > a {
	cursor:pointer;
	}


header.header-default nav.nav-main > ul > li > a:hover{
	text-decoration:none;
	}




/*--------------------------------------------------
BREAK  /////////////////////////////////////////////
---------------------------------------------------*/

@media only screen and (max-width:1050px) {

	header.header-default{
	height:auto;
	justify-content:center;
	padding:10px 0px;
	font-size: 0.9em;
	}
	header.header-default nav.nav-main{
	width:100%;
	}
	header.header-default nav.nav-main > ul{
	justify-content:center;
	}

}
	


/*--------------------------------------------------
MOVIL ///////////////////////////////////////////////
---------------------------------------------------*/
/*

Activamos este bloque solo si el sitio web llevara un menu movil

*/

@media only screen and (max-width:620px) {

/* Header
------------------------------*/
header.header-default {
	align-items:center;
	height:70px;
	justify-content:space-between!important;
	overflow-x:visible;/*necesary*/
	padding:0px 0px;
	position:initial; /* sirve para que nav no lo tome en cuenta al posicionar*/
	left:0px;
	top:0px;
	}


/* Logotipo
------------------------------*/
header.header-default a.logotipo img{
	height:60px;
	width:auto;
	}


/* Movil Button
------------------------------*/
header.header-default  input.movil-button[type=checkbox] + label{
	display:flex;
	}



}


/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/

/* ocultamos checkbox
------------------------------*/
li[data-seccion='dropdown'] input[type=checkbox]{
	display:none!important;
	}



/* li Dropdowns
------------------------------*/
li[data-seccion='dropdown']{
	position:relative;
	}


/* Button dropdown
------------------------------*/
li[data-seccion='dropdown'] > label{
	position:relative;
	}



/* Button dropdown
------------------------------*/
li[data-seccion='dropdown'] > label *{
	font-style:inherit;
	font-weight:inherit;
	}


/* Icon arrow Dropdown
------------------------------*/
li[data-seccion='dropdown'] > label .svg-icon,
li[data-seccion='back'] > label .svg-icon{
	transition: transform 0.25s;
	}


/* rotamos al presionar (check) */
li[data-seccion='dropdown'] > input[type=checkbox]:checked + label .svg-icon{
	transform: scaleY(-1);
	}

li[data-seccion='back'] > label .svg-icon{
	transform: rotate(90deg)!important;
	}



/*--------------------------------------------------
MENU-MOVIL  ////////////////////////////////////////
---------------------------------------------------*/

@media only screen and (max-width:620px) {


/*---------------------------------------------------
//////////       MOVIL MENU PANEL         //////////
---------------------------------------------------*/
/* -------------------------------------------------
---------------------------------- ❤ SET: DISEÑO ---
--------------------------------------------------*/

/*  Revertimos 
------------------------------*/
ul.menu-dropdown  {
	left:0px!important;
	right:0px;
	}

/*  Color de fondo 
------------------------------*/
header.movil-menu-panel nav.nav-main,
ul.menu-dropdown  {
	background-color:var(--color-black);
	}



/* Borde o linea de botones
------------------------------*/
header.movil-menu-panel nav.nav-main > ul li,
ul.menu-dropdown li{
	border-bottom:1px solid var(--color-white-30);
	}






/* Diseno de Botones
------------------------------*/
header.movil-menu-panel nav.nav-main > ul > li > *:not(ul),
header.movil-menu-panel nav.nav-main > ul > li > *:not(ul):hover,
ul.menu-dropdown li > *,
ul.menu-dropdown li > *:hover {
	background-color:transparent!important;
	color:var(--color-white-80)!important;
	font-size:1.2rem!important;
	height:42px!important;
	line-height:42px!important;
	padding:8px 0px!important;
	}


/* Icon botones
------------------------------*/
header.movil-menu-panel nav.nav-main > ul > li > *:not(ul) .svg-icon,
ul.menu-dropdown li[data-seccion='back'] > label .svg-icon {
	fill:var(--color-white)!important;
	height:26px;
	margin-left:-4px;
	width:26px;
	}


/* Boton Call to action
------------------------------*/
header.movil-menu-panel nav.nav-main > ul li[data-element="call-to-action"] > *,
header.movil-menu-panel nav.nav-main > ul li[data-element="call-to-action"] > *:hover{
	background-color:var(--color-white)!important;
	border-radius:30px;
	color:var(--color-white)!important;
	padding:0px 7px 0px 10px!important;
	width:auto;
	margin-right: 20px;
	}


header.movil-menu-panel nav.nav-main > ul li[data-element="call-to-action"] > * .svg-icon,
header.movil-menu-panel nav.nav-main > ul li[data-element="call-to-action"] > *:hover .svg-icon{
	fill:var(--color-white)!important;
	}



/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/


/* Panel nav
------------------------------*/
header.movil-menu-panel nav.nav-main,
ul.menu-dropdown {
	align-content:center;
	align-items:center;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	height:100vh!important;
	justify-content:flex-start;
	margin:0px;
	padding:40px 6vw!important;
	}



/* Nav ul
------------------------------*/
header.movil-menu-panel nav.nav-main > ul,
ul.menu-dropdown {
	align-items:center;
	align-content: center;
	justify-content:flex-start;
	flex-direction:row;
	flex-wrap:wrap;
	gap:10px;
	max-width:100%;
	margin:0px;
	padding:0px;
	width:100%;
	}


/* Nav ul li
------------------------------*/
header.movil-menu-panel nav.nav-main > ul li,
ul.menu-dropdown li{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	margin:0px;
	padding:0px;
	width:100%;
	}



/* Botones
------------------------------*/
header.movil-menu-panel nav.nav-main > ul > li > *:not(ul),
header.movil-menu-panel nav.nav-main > ul > li > *:not(ul):hover,
ul.menu-dropdown li > *,
ul.menu-dropdown li > *:hover{
	align-items:center;
	align-content:center;
	display:flex;
	margin:0px 0px;
	text-align:left;
	width:100%;
	}



/* Separator
------------------------------*/
header.movil-menu-panel nav.nav-main > ul > li[data-element="separator"] {
	display:none;
	}



/* Boton call to action
------------------------------*/
header.movil-menu-panel nav.nav-main > ul > li[data-element="call-to-action"] {
	align-self: flex-end;
	border-bottom:0px;
	justify-content:center;
	position:absolute;
	bottom:6vh;
	top:auto;
	left:0px;
	right:0px;
	}


}




/*--------------------------------------------------
ACTIONS MOVIL //////////////////////////////////////
---------------------------------------------------*
Stock de Action movil:

- Slide to left


/*---------------------------------------------------
//////////           SLIDE TO             //////////
---------------------------------------------------*/
@media only screen and (max-width:620px) {


/* Z index
------------------------------*/
header.slide-to-left div.shadow {z-index:9;}
header.slide-to-left nav.nav-main {z-index:10;}
header.slide-to-left input.movil-button[type=checkbox] + label {z-index:11;}
header.slide-to-left .logotipo.movil {z-index:11;}


/* Transition
------------------------------*/
header.slide-to-left nav.nav-main{
	transition-timing-function:ease-in-out;
	transform:translateX(80vw);
	position:fixed!important;
	transition:all 0.22s;
	bottom:0px;
	left:auto;
	right:0px;
	top:0px;
	width:80vW;
	}


/*----- slide left (script.js)  ------*/
header.slide-to-left  nav.show{
	opacity:1.0!important;
	position:fixed!important;
	transform:translateX(0vw)!important;
	}

}



/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////// END HEADER
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
BLOQUES Y PATRONES /////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*---------------------------------------------------
//////////      BANNER MAIN  WELCOME       //////////
---------------------------------------------------*/
*[data-element='banner'] .welcome {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	gap: var(--gap-inside-small);
	justify-content:flex-start;
	z-index:10;
	/* width:auto; - en cada caso */
	}


*[data-element='banner'] .welcome  .the-title{
	/* ... */
	color:var(--color-white);
	}

*[data-element='banner'] .welcome  .subtitle-1{
	/* ... */
	color:var(--color-main);
	}

*[data-element='banner'] .welcome  p{
	color:var(--color-white);
	font-size:1rem;
	font-weight:var(--fw-normal);
	text-align: left;
	padding:0px;
	margin:0px;
	}


*[data-element='banner'] .welcome > *:not(a){
	width:100%;
	}


@media only screen and (max-width:620px) {

	*[data-element='banner'] .welcome{
	height:auto;
	padding:20px 5vw!important;
	width:100%;
	z-index:9!important;
	}

	*[data-element='banner'] .welcome > *:not(a){
	width:100%;
	}


	*[data-element='banner'] .welcome  p{
	color:var(--color-white);
	}


}



/*---------------------------------------------------
//////////           BACKGROUND          //////////
---------------------------------------------------*/
div.background{
	background-color: var(--color-neutro-darker);
	background-image: linear-gradient(45deg, var(--color-neutro-dark) 50%, var(--color-neutro-darker) 50%);
	background-size:60px 60px;
	height:auto;
	position:absolute;	
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	opacity:0.18;
	width:auto;
	z-index:1;
	}







/*---------------------------------------------------
//////////             TITLES            //////////
---------------------------------------------------*/
.the-title {
	color:var(--color-white);
	font-size:2rem;
	line-height:1.2em;
	font-weight:var(--fw-bolder);
	text-transform:uppercase;
	}
	@media only screen and (max-width:2200px) {
	.the-title {
	font-size:1.9rem;
	}
	}
	@media only screen and (max-width:1600px) {
	.the-title {
	font-size:1.7rem;
	}
	}



.title-1 {
	color:var(--color-white);
	font-size:1.4em;
	text-transform: uppercase;
	text-align: center;
	}

.title-2 {
	font-size:1.2em;
	}

.subtitle-1 {
	font-size:1em;
	}

.subtitle-2 {
	font-size:1em;
	}



/*---------------------------------------------------
//////////            SOCIAL BAR          //////////
---------------------------------------------------*/
/* -------------------------------------------------
---------------------------------- ❤ SET: DISEÑO ---
--------------------------------------------------*/
ul.social-bar {
	font-size:0.8rem;
	gap:10px;
	}

ul.social-bar * {
	color:var(--color-neutro);
	}
ul.social-bar li[data-element='separator']{
	background-color:var(--color-neutro-soft);
	}
ul.social-bar .svg-icon {
	border-radius:50%;
	border:1px solid var(--color-neutro-dark);
	background-color:var(--color-black);
	fill:var(--color-neutro);
	}
/* hover */
ul.social-bar a:hover {
	color:var(--color-neutro-softer);
	}
ul.social-bar a:hover .svg-icon {
	background-color:var(--color-white);
	boder:1px solid var(--color-white);
	fill:var(--color-black);
	}



/* -------------------------------------------------
------------------------------------------- BASE ---
--------------------------------------------------*/
ul.social-bar {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start; /* or flex-end */
	list-style:none;
	height:auto;
	margin:0px;
	padding:0px;
	width:100%/*set*/
	}


/* Items */
ul.social-bar li{
	align-items: center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:4px;
	justify-content:flex-start;
	height: auto;
	list-style:none;
	margin:0px;	
	padding:0px;
	width:auto;
	}

ul.social-bar li > *{
	align-items: center;
	display:flex;
	font-size:1em;
	line-height:30px;
	height:auto;
	flex-direction:row;
	flex-wrap:wrap;
	gap:4px;
	justify-content:flex-start;
	overflow:hidden;
	text-decoration:none;
	width:auto;
	}

ul.social-bar li[data-element='separator']{
	height:16px;
	width:1px;
	}

/* icons  */
ul.social-bar .svg-icon {
	height:32px;
	padding:2px;/* set */
	width:32px;
	}




/* OPTION: Vertical
------------------------------*/
ul.social-bar.vertical {
	align-items:flex-start;
	flex-direction:column;
	justify-content:flex-start; /* or flex-end */
	width:100%/*set*/
	}


ul.social-bar.vertical li{
	text-align:left;
	width:100%;
	}


ul.social-bar.vertical li[data-element='separator']{
	height:1px;
	width:100%;
	}



/* BREAK: Movil
------------------------------*/
@media only screen and (max-width:620px) {
	ul.social-bar li[data-element='separator']{
	display:none;
	}
	ul.social-bar.vertical li[data-element='separator']{
	display:flex;
	}}


/*---------------------------------------------------
//////////        SOCIAL BAR FLOATING     //////////
---------------------------------------------------*/
ul.social-bar-floating {
	align-items:center;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	font-size:0.8rem;
	justify-content:flex-start; /* or flex-end */
	height:auto;
	gap:5px;/*margin*/
	list-style:none;
	margin:0px;
	padding:0px;
	position:absolute;
	width:auto;/*set*/
	left: auto;
	top: auto;
	right:40px;
	bottom:40px;
	}



ul.social-bar-floating li{
	height: auto;
	list-style:none;
	margin:0px;
	padding:0px;
	width:auto;
	}



/* all links  */
ul.social-bar-floating a {
	align-items:center;
	background-color:var(--color-whatsapp);
	box-shadow:0px 0px 6px 1px rgba(0, 0, 0, 0.2);
	color:var(--color-white);
	align-items:center;
	border-radius:50%;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	height:60px;
	line-height:60px;
	justify-content:space-between;
	overflow:hidden;
	width:60px;
	}



/* all icons  */
ul.social-bar-floating .svg-icon {
	height:60px;
	padding:6px;/* set */
	fill:var(--color-white);
	width:60px;
	}




/*---------------------------------------------------
//////////            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-neutro-soft);
	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;
	}


/*---------------------------------------------------
//////////              TAB BOX            //////////
---------------------------------------------------*/
div.tab-box {
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap; 
	justify-content:flex-start; /* or center */
	margin-top:0px;/* set */
	padding:0px;/* set */
	width:100%;/* set */
	}

div.tab-box > input[type=radio] {
	display: none;
	}

div.tab-box > label {
	display:flex;
	font-size:0.8rem;
	height:50px;
	line-height:50px;
	margin:0px 0px -1px 0px!important;
	min-width:0px!important;
	padding:0px 10px!important;
	width:auto;
	z-index:10;
	transition:all 0.2s;
	width:auto!important;
	}


#tab1:checked ~ #content1,
#tab2:checked ~ #content2,
#tab3:checked ~ #content3,
#tab4:checked ~ #content4,
#tab5:checked ~ #content5,
#tab6:checked ~ #content6,
#tab7:checked ~ #content7,
#tab8:checked ~ #content8,
#tab9:checked ~ #content9,
#tab10:checked ~ #content10,
#tab11:checked ~ #content11,
#tab12:checked ~ #content12,
#tab13:checked ~ #content13,
#tab14:checked ~ #content14,
#tab15:checked ~ #content15,
#tab16:checked ~ #content16,
#tab17:checked ~ #content17,
#tab18:checked ~ #content18,
#tab19:checked ~ #content19,
#tab20:checked ~ #content20,
#tab21:checked ~ #content21,
#tab22:checked ~ #content22,
#tab23:checked ~ #content23,
#tab24:checked ~ #content24,
#tab25:checked ~ #content25,
#tab26:checked ~ #content26,
#tab27:checked ~ #content27,
#tab28:checked ~ #content28,
#tab29:checked ~ #content29{
  display:flex!important;
	}


.tab-contenido{
	align-items:flex-start;
	align-content:flex-start;
	display:none;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	justify-content:flex-start!important;
	padding:20px 0px;
	width:100%;
	}



/* Break menu 100%
------------------------------*/
	@media only screen and (max-width:620px) {
	div.tab-box > label {
	height:36px;
	line-height:36px;
	padding:0px 12px!important;
	width:100%;
	}}



/* SET:  Diseño
------------------------------*/
div.tab-box {
	
	}


/* Pestaña  */
div.tab-box > label {
	border-top:1px solid transparent;/* set */
	border-bottom:1px solid transparent;/* set */
	color:var(--color-neutro);/*set*/
	font-weight:bold; /* set */
	font-size:0.7rem;
	gap:4px;
	text-align:center;
	text-transform:uppercase;
	}


/* Pestaña hover */
div.tab-box > label:hover {
	color:var(--color-white);/*set*/
	opacity:0.6;
	cursor: pointer;
	}


/* Pestaña actva */
div.tab-box > input:checked + label {
	color:var(--color-white);
	border-top:1px solid var(--color-white)!important;/* set */
	border-bottom: 1px solid var(--color-white)!important;/* set */
	}


/* Icono */
div.tab-box > label .svg-icon{
	border:1px solid var(--color-neutro-soft);
	border-radius:59%;
	height:auto;
	fill:var(--color-neutro-soft);
	padding:3px;
	width:20px;
	}
div.tab-box > label:hover .svg-icon{
	border:1px solid var(--color-neutro-soft);
	fill:var(--color-neutro-soft);
	}
div.tab-box > input:checked + label .svg-icon{
	border:1px solid var(--color-white);
	fill:var(--color-neutro-soft);
	}



.tab-contenido{
	padding:20px 0px; /* set */
	border-top:1px solid var(--color-neutro); /* set */
	}



/* + Small
------------------------------*/
div.tab-box.small > label {
	color:var(--color-neutro);/*set*/
	border-top:1px solid var(--color-neutro);/* set */
	display:flex;
	font-size:0.7rem;
	font-weight:normal;
	height:26px;
	line-height:26px;
	padding:0px 6px!important;
	}
	@media only screen and (max-width:620px) {
	div.tab-box.small > label {
	height:26px;
	line-height:26px;
	padding:0px 4px!important;
	width:auto;
	}}



/* Pestaña actva */
div.tab-box.small > input:checked + label {
	color:var(--color-white);/*set*/
	border-top:1px solid var(--color-white);/* set */
	border-bottom: 1px solid var(--color-neutro-softer)!important;/* set */
	}



div.tab-box.small .tab-contenido{
	border-top:1px solid var(--color-neutro)!important; /* set */
	padding:6px 0px; /* set */
	}



/* + Categories
------------------------------*/

/* 
El estilo de los botones se  determina el ul.menu-categories
en www-inputs 
*/


div.tab-box.categories {
	gap:4px;
	}					

div.tab-box.categories div.box {
	gap:initial;
	}		

div.tab-box.categories .tab-contenido{
	border-top:0px!important; /* set */
	}


/*---------------------------------------------------
//////////              BOX INFO           //////////
---------------------------------------------------*/
.box-info {
	background-color:var(--color-neutro-softer);
	color:var(--color-neutro-darker);
	font-size:0.9em;
	height:auto;
	padding:20px;
	margin:5px 0px; /* set */
	width:100%;
	}


.box-info.ok {
	background-color:var(--color-ok-softer);
	color:var(--color-ok);
	}

.box-info.warning {
	background-color:var(--color-warning-softer);
	color:var(--color-warning);
	}


/*---------------------------------------------------
//////////              MODALS           //////////
---------------------------------------------------*/
.modal{
	max-width:600px;
	}
  
.modal.wide{
	max-width:780px;
	}
  

.modal .inside{
	height: auto;
	padding:40px 40px;
	width:100%!important;
	}


.modal > .title {
	background-color:var(--color-main);
	color:var(--color-white);
	font-size:var(--fs-regular);
	font-weight:var(--fw-normal);
	padding:16px 0px;
	text-align:center;
	width:100%;
	}


.modal .inside .title {
	color:var(--color-neutro-darker);
	font-size:var(--fs-regular);
	font-weight:var(--fw-normal);
	padding:16px 0px;
	text-align:center;
	width:100%;
	}


.modal p {
	margin:0px;
	padding:0px;
	text-align:center;
	}



/* Info
------------------------------*/
.modal.info .title {
	background-color:var(--color-neutro-dark);
	color:var(--color-neutro-softer);
	}


/* Ok
------------------------------*/
.modal.ok .title {
	background-color:var(--color-ok);
	color:var(--color-ok-softer);
	}


/* Warning o error
------------------------------*/
#modal-eliminar .title,
#modal-eliminar .menu-actions li > input[type=submit] + label,
.modal.warning .title,
.modal.warning .menu-actions li > input[type=submit] + label,
.title.warning,
.menu-actions.warning li > input[type=submit] + label {
	background-color:var(--color-warning);
	color:var(--color-warning-softer);
	}




/* Actions
------------------------------*/
.modal.actions .inside{
	padding:40px 40px 8px 40px;
	}

.modal.actions .title {
	background-color:var(--color-main);
	color:var(--color-white-80);
	}




/* Google maps
------------------------------*/
.modal.googlemap .inside,
.inside.googlemap{
	height: auto;
	padding:20px 20px;
	}


.modal.googlemap iframe,
.inside.googlemap iframe{
	aspect-ratio: 3 / 2;
	margin:0px;
	outline:0px;
	padding:0px;
	width:100%;
	}
	@media only screen and (max-width:620px) {
	.modal.googlemap .inside,
	.inside.googlemap{
	padding:0px 0px;
	}

	.modal.googlemap,
	.inside.googlemap{
	height:80vh;
	}
	.modal.googlemap iframe,
	.inside.googlemap iframe{
	aspect-ratio: initial;
	height:80vh!important;
	}}






/* Modal menu
------------------------------*/
.modal ul.menu-actions{
	justify-content:center;
	}






/* Close modal
------------------------------*/
.modal .close-modal {
	top:10px!important;
	right:10px!important;
	}


/*---------------------------------------------------
//////////          FIRST ELEMENT         //////////
---------------------------------------------------*/
.first {
	/* margen del primer elemento si nuestro header es fijo en movil */
	}

	@media only screen and (max-width:620px) {
	.first{
	margin-top:62px; /* = Tamaño de header movil */
	}}


/*---------------------------------------------------
//////////          ESCONDER        //////////
---------------------------------------------------*/
.ocultar,
.esconder,
.hide {
	display:none;
	}



/*-------------------------------------------------------------------------- 
//////////////////////////////////////////////////// END BLOQUES Y PATRONES
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
PANELS  ////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/




/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
SECCIONES //////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/*------------------------------------------------------------------------ 
ALL  /////////////////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*------------------------------------------------------------------------ 
INICIO  /////////////////////////////////////////////////////////////////
-----------------------------------------------------------------------*/
/*--------------------------------------------------
PANEL ZIG ZAG //////////////////////////////////////
---------------------------------------------------*/
.panel-zigzag {
	font-size:inherit;
	}



/* Color de fondo
------------------------------------------*/
.panel-zigzag {
	background-color:var(--color-black);
	}

.panel-zigzag .item {
	background-color:var(--color-black);
	}




/* Panel imagen
------------------------------------------*/
.panel-zigzag .panel-imagen {
	align-items:flex-end;
	align-content:flex-end;
	justify-content:center;
	height:auto;
	padding:0px;
	width: 100%;

	}


.panel-zigzag .panel-imagen img{
	height:100%!important;
	width:100%!important;
	object-fit:cover!important;
	object-position:center center;
	}



/* ODD */
.panel-zigzag .item:nth-child(odd) .panel-info{
	border-left:5px solid var(--color-neutro-darker);
	}
.panel-zigzag a.item:nth-child(odd):hover .panel-info{
	border-left:5px solid var(--color-neutro-dark);
	}




/* EVEN */
.panel-zigzag .item:nth-child(even) .panel-info{
	border-right: 5px solid var(--color-neutro-darker);
	}

.panel-zigzag a.item:nth-child(even):hover .panel-info{
	border-right: 5px solid var(--color-neutro-dark);
	}




/* Contenido
------------------------------------------*/

.panel-zigzag .panel-info .title-1{
	/*...*/
	text-align: left;
	}

.panel-zigzag .panel-info p{
	color:var(--color-white);
	font-size:inherit;
	font-weight:normal;
	text-align:left;
	}



/* -------------------------------------------------
PANEL ZIG ZAG  ----------------------- BASE ---
--------------------------------------------------*/
.panel-zigzag {
	align-items:flex-start;
	display:flex;
	flex-flow:	row wrap;
	justify-content:center;
	list-style: none;
	gap:var(--gap-second);
	margin:0px; /*set*/
	width:100%;
	}



/* item
------------------------------*/
.panel-zigzag .item {
	align-items:stretch;
	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%;
	}




/* Ancho de paneles
------------------------------------------*/
.panel-zigzag .panel {
	flex-grow:9;
	overflow:hidden;
	position:relative;
	}

.panel-zigzag .panel-info {
	position:relative;
	width:40%;
	}
	
.panel-zigzag .panel-imagen {
	width:40%;
	}




/* order 
------------------------------*/

/* ODD */
.panel-zigzag .item:nth-child(odd) .panel-info{
	order:1;
	}
.panel-zigzag .item:nth-child(odd) .panel-imagen{
	order:2;
	}

/* EVEN */
.panel-zigzag .item:nth-child(even) .panel-info{
	order:2;
	}
.panel-zigzag .item:nth-child(even) .panel-imagen{
	order:1;
	}



.panel-zigzag .panel-info,
.panel-zigzag .panel-imagen {
	display:flex;
	flex-flow:row wrap;
	}



/* Panel info
------------------------------*/
.panel-zigzag .panel-info {	
	align-items:center;
	align-content:center;
	justify-content:flex-start;
	height:auto;
	}


.panel-zigzag .item:nth-child(odd) .panel-info {
	padding:40px 4vw 40px 4vw;
	}

.panel-zigzag .item:nth-child(even) .panel-info {
	padding:40px 4vw 40px 4vw; /*set*/
	}


.panel-zigzag .panel-info > *:not(a) {
	width:100%;
	}


/* Panel imagen
------------------------------*/
.panel-zigzag .panel-imagen{
	justify-content:center;
	}

.panel-zigzag .panel-imagen img{
	max-height:100%;
	max-width:100%;
	transition:all 0.12s;
	}

.panel-zigzag a.item:hover .panel-imagen img{
	transform:scale(1.14);
	}

.panel-zigzag .item .panel-imagen img.lazyloaded{
	opacity:0.7;
	}

.panel-zigzag a.item:hover .panel-imagen img.lazyloaded{
	opacity:1.0;
	}



/* -------------------------------------------------
PANEL ZIG ZAG  --------------- BREAK MOVIL ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {
	.panel-zigzag .panel-info,
	.panel-zigzag .panel-imagen {
	width:100%;
	}
	.panel-zigzag .item:nth-child(odd) .panel-imagen{
	order:1;
	}
	.panel-zigzag .item:nth-child(odd) .panel-info{
	padding:28px 4vw 28px 4vw;
	order:2;
	}
	.panel-zigzag .item:nth-child(even) .panel-imagen{
	order:1;
	}
	.panel-zigzag .item:nth-child(even) .panel-info{
	padding:28px 4vw 28px 4vw;
	order:2;
	}
	.panel-zigzag .item .panel-info,
	.panel-zigzag .item:hover .panel-info{
	border:0px!important;
	}
	}




/*---------------------------------------------------------------- 
JUAN PABLO PONCE - IMPAKTA COMUNICACION //////////////////////////
----------------------------------------------------------------*/
/*--------------------------------------------
PANEL ARTICLE-BOX  /////////////////////////////
-------------------------------------------*/
.panel-article-box{
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	justify-content:center;
	flex-wrap:wrap;
	width:100%;
	}


/* IN:OK 
------------------------------------------*/


/* Inside
------------------------------------------*/
.panel-article-box .inside{
	align-items:stretch!important;
	display:flex!important;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:space-between;
	padding:0px!important;
	margin:0px;
	}



/* Orden
------------------------------------------*/
.panel-article-box .inside article {
	order:2;
	}

.panel-article-box .inside aside {
	order:1;
	}




/* Info
------------------------------------------*/
.panel-article-box .inside article {
	flex-grow:3;
	height:auto;
	width:65%;
	}


/* Aside
------------------------------------------*/
.panel-article-box .inside aside {
	flex-grow:1;
	width:35%;
	}


/* IMG
------------------------------------------*/
.panel-article-box .inside aside img{
	height:auto;
	object-fit:contain;
	width:100%;
	}



/* BREAK: 
------------------------------------------*/
.panel-article-box .inside article,
.panel-article-box .inside aside {
	min-width:220px; /* x2 = 620 px  */
	}



/* SET: DISENO
------------------------------------------*/
.panel-article-box {
	background-color:var(--color-black);
	}


.panel-article-box .inside {
	background-color:var(--color-black);
	}


.panel-article-box .inside article {
	background-color:var(--color-black);
	padding:20px 0px 20px 4vw;
	}

.panel-article-box .inside article .title{
	font-size: 1.6em;
	line-height: 1.2em;
	}

.panel-article-box .inside article p{
	color:var(--color-white);
	font-size:var(--fs-regular);
	}








/*---------------------------------------------------------------- 
CONTACTO ///////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*--------------------------------------------------
PANEL CONTACTO ASIDE ///////////////////////////////
---------------------------------------------------*/
/* -------------------------------------------------
----------------------------------  SET: DISEÑO ---
--------------------------------------------------*/
.panel-contacto-aside{
	background-color:var(--color-black);
	}

.panel-contacto-aside .inside{
	background-color:var(--color-black);
	}

.panel-contacto-aside .inside .col-uno{
	background-color:var(--color-neutro-darker);
	}

.panel-contacto-aside .inside .col-dos{
	background-color:var(--color-neutro-darker);
	}

.panel-contacto-aside .inside .col-dos .formulario{
	background-color:var(--color-neutro-darker);
	}



/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/
.panel-contacto-aside{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	width:100%;
	}


/* Inside
------------------------------------------*/
.panel-contacto-aside .inside{
	align-items:stretch;
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	justify-content:space-between;
	gap:0px;
	width:100%;
	}



/* SET: Cols width
------------------------------------------*/
.panel-contacto-aside .col-uno {
	width:40%;
	}

.panel-contacto-aside .col-dos {
	flex-grow:2;
	width:40%;
	}



/* Col IMG cover
------------------------------------------*/
.panel-contacto-aside .col-uno{
	order:1;
	z-index:1;
	}

.panel-contacto-aside .col-uno img {
	height:100%;
	object-fit:cover;
	width:100%;
	}


/* Col Data
------------------------------------------*/
.panel-contacto-aside .col-dos{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	justify-content:center;
	order:2;
	overflow:visible;
	padding:40px 6vw;
	z-index:2;
	}

.panel-contacto-aside .col-dos .title-1{	
	margin-bottom: 10px;
	}



.panel-contacto-aside .col-dos p{
	text-align: center;
	margin-bottom: 20px;
	}


.panel-contacto-aside .col-dos .formulario{
	width:100%;
	}

.panel-contacto-aside .col-dos .formulario .add-button{
	justify-content: center;
	text-align: center;
	}



/* BREAK: Movil
------------------------------------------*/
@media only screen and (max-width:820px) {
	.panel-contacto-aside .col-uno {
	height:40vh;
	min-height:300px;
	width:100%;
	}

	.panel-contacto-aside .col-dos {
	width:100%;
	}

	.panel-contacto-aside .col-dos .formulario{
	margin-top:-100px!important;
	padding:20px;
	}
	.panel-contacto-aside .inside .col-dos{
	background-color:var(--color-black);
	}
}


@media only screen and (max-width:620px) {

	.panel-contacto-aside .inside .col-dos{
	padding:40px 2vw;
	}


}




/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////// END SECCIONES
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
MENU & INPUTS  /////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/

/* INDICE

	——— Formulario

	——— Buttons
		—— Button Base
		—— Button Tools
		—— Button Tag
		—— Button Inline

	——— Menus
		—— Menu (all)
		—— Menu actions
		—— Bar tools
		—— Menu categories

	——— Alerts

	——— Inputs
		—— label.title

*/


/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
MENUS INPUTS  /////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/


/* Formulario
------------------------------*/
.formulario {
	height:auto;
	width:100%;
	}


/*-------------------------------------------------------------------------- 
BUTTONS ////////////////////////////////////////////////////////////////////
--------------------------------------------------------------------------*/
/*--------------------------------------------------
BUTTON BASE ////////////////////////////////////////
---------------------------------------------------*
/* -------------------------------------------------
---------------------------------- ❤ SET: DISEÑO ---
--------------------------------------------------*/
.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 > button {
	background-color:var(--color-neutro-dark);
	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 {
	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 > button:hover {
	background-color:var(--color-neutro);
	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);
	}


/* + 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 > button {
	background-color:transparent;
	border:1px solid var(--color-neutro-dark);
	color:var(--color-white);
	}

.button.outline .svg-icon,
.button.outline + label .svg-icon,
ul.add-button.outline  li > * .svg-icon {
	fill:var(--color-white);
	}

.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 > button:hover {
	border:1px solid transparent;
	background-color:var(--color-neutro-dark);
	color:var(--color-white);
	}





/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/
.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 > button{
	align-items:center;
	border:0px;
	cursor: pointer;
	display:inline-flex;
	flex-direction:row;
	font-size:var(--fs-medium);
	font-weight:var(--fw-normal);
	height:46px;
	line-height:1.2em;
	letter-spacing:1px;
	gap:4px;
	justify-content:center;
	margin:0px;
	min-width:120px;
	outline:0;
	padding:0px 16px;
	position:relative;
	text-decoration:none;
	text-transform:uppercase;
	transition:all 0.12s;
	width:auto;
	}


input.button[type=submit],
input.button[type=button],
input.button[type=file],
ul.add-button li > input[type=submit],
ul.add-button li > input[type=button],
ul.add-button li > input[type=file] {
	display:none;
	visibility: hidden;
	}




/* Icons
------------------------------*/
.button .svg-icon,
.button + label .svg-icon,
ul.add-button .svg-icon {
	height:46px;
	margin:0px 0px 0px 0px;
	padding:6px;
	width:46px;
	}



/* + Rounded
------------------------------*/
.button.rounded,
.button.rounded + label,
ul.add-button.rounded li > a,
ul.add-button.rounded li > span,
ul.add-button.rounded li > input[type=submit] + label,
ul.add-button.rounded li > input[type=button] + label,
ul.add-button.rounded li > input[type=file] + label,
ul.add-button.rounded li > button {
	border-radius:23px;
	}



/* @media
------------------------------*/
@media only screen and (max-width:1500px) {
.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 > button{
height:36px;
}
.button .svg-icon,
.button + label .svg-icon,
ul.add-button .svg-icon {
height:36px;
padding:6px;
width:36px;
}
.button.rounded,
.button.rounded + label,
ul.add-button.rounded li > a,
ul.add-button.rounded li > span,
ul.add-button.rounded li > input[type=submit] + label,
ul.add-button.rounded li > input[type=button] + label,
ul.add-button.rounded li > input[type=file] + label,
ul.add-button.rounded li > button {
border-radius:18px;
}}


@media only screen and (max-width:620px) {
.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 > button{
height:46px;
}
.button .svg-icon,
.button + label .svg-icon,
ul.add-button .svg-icon {
height:46px;
padding:6px;
width:46px;
}
.button.rounded,
.button.rounded + label,
ul.add-button.rounded li > a,
ul.add-button.rounded li > span,
ul.add-button.rounded li > input[type=submit] + label,
ul.add-button.rounded li > input[type=button] + label,
ul.add-button.rounded li > input[type=file] + label,
ul.add-button.rounded li > button {
border-radius:23px;
}}




/* + Small
------------------------------*/
.button.small,
.button.small + label,
ul.add-button.small li > a,
ul.add-button.small li > span,
ul.add-button.small li > input[type=submit] + label,
ul.add-button.small li > input[type=button] + label,
ul.add-button.small li > input[type=file] + label,
ul.add-button.small li > button{
	font-size:var(--fs-medium);
	height:36px;
	padding:0px 12px;
	}

/* Icons
------------------------------*/
.button.small .svg-icon,
.button.small + label .svg-icon,
ul.add-button.small .svg-icon {
	height:36px;
	padding:4px;
	width:36px;
	}


/* + small + Rounded
------------------------------*/
.button.small.rounded,
.button.small.rounded + label,
ul.add-button.small.rounded li > a,
ul.add-button.small.rounded li > span,
ul.add-button.small.rounded li > input[type=submit] + label,
ul.add-button.small.rounded li > input[type=button] + label,
ul.add-button.small.rounded li > input[type=file] + label,
ul.add-button.small.rounded li > button {
	border-radius:18px;
	}


/* @media
------------------------------*/
@media only screen and (max-width:1500px) {
.button.small,
.button.small + label,
ul.add-button.small li > a,
ul.add-button.small li > span,
ul.add-button.small li > input[type=submit] + label,
ul.add-button.small li > input[type=button] + label,
ul.add-button.small li > input[type=file] + label,
ul.add-button.small li > button{
height:28px;
}
.button.small .svg-icon,
.button.small + label .svg-icon,
ul.add-button.small .svg-icon {
height:28px;
padding:4px;
width:28px;
}
.button.small.rounded,
.button.small.rounded + label,
ul.add-button.small.rounded li > a,
ul.add-button.small.rounded li > span,
ul.add-button.small.rounded li > input[type=submit] + label,
ul.add-button.small.rounded li > input[type=button] + label,
ul.add-button.small.rounded li > input[type=file] + label,
ul.add-button.small.rounded li > button {
	border-radius:14px;
	}}


@media only screen and (max-width:620px) {
.button.small,
.button.small + label,
ul.add-button.small li > a,
ul.add-button.small li > span,
ul.add-button.small li > input[type=submit] + label,
ul.add-button.small li > input[type=button] + label,
ul.add-button.small li > input[type=file] + label,
ul.add-button.small li > button{
height:32px;
}
.button.small .svg-icon,
.button.small + label .svg-icon,
ul.add-button.small .svg-icon {
height:32px;
padding:4px;
width:32px;
}
.button.small.rounded,
.button.small.rounded + label,
ul.add-button.small.rounded li > a,
ul.add-button.small.rounded li > span,
ul.add-button.small.rounded li > input[type=submit] + label,
ul.add-button.small.rounded li > input[type=button] + label,
ul.add-button.small.rounded li > input[type=file] + label,
ul.add-button.small.rounded li > button {
	border-radius:16px;
	}}











/*--------------------------------------------
BUTTON TOOLS ////////////////////////////////
-------------------------------------------*/
/* ////////////// SET: DESIGN
------------------------------*/
.button-tools,
.button-tools + label,
ul.add-button-tools li > a,
ul.add-button-tools li > span,
ul.add-button-tools li > input[type=submit] + label,
ul.add-button-tools li > input[type=button] + label,
ul.add-button-tools li > input[type=file] + label,
ul.add-button-tools li > button {
	background-color:var(--color-neutro-soft);
	color:var(--color-white-70);
	}



/* +  iconos
------------------------------*/
.button-tools .svg-icon,
.button-tools + label .svg-icon,
ul.add-button-tools .svg-icon {
	fill:var(--color-white-70);
	}


/* Hover
------------------------------*/
.button-tools:hover,
.button-tools + label:hover,
ul.add-button-tools li > a:hover,
ul.add-button-tools li > span:hover,
ul.add-button-tools li > input[type=submit] + label:hover,
ul.add-button-tools li > input[type=button] + label:hover,
ul.add-button-tools li > input[type=file] + label:hover,
ul.add-button-tools li > button:hover {
	background-color:var(--color-neutro);
	color:var(--color-white);
	text-decoration: none;
	}

.button:hover .svg-icon,
.button-tools + label:hover .svg-icon,
ul.add-button-tools :hover .svg-icon {
	fill:var(--color-white);
	}


/* + Outline
------------------------------*/
.button-tools.outline,
.button-tools.outline + label,
ul.add-button-tools.outline li > a,
ul.add-button-tools.outline li > span,
ul.add-button-tools.outline li > input[type=submit] + label,
ul.add-button-tools.outline li > input[type=button] + label,
ul.add-button-tools.outline li > input[type=file] + label,
ul.add-button-tools.outline li > button {
	background-color:transparent;
	border:1px solid var(--color-neutro);
	color:var(--color-neutro);
	}
.button-tools.outline .svg-icon,
.button-tools.outline + label .svg-icon,
ul.add-button-tools.outline  li > * .svg-icon {
	fill:var(--color-neutro);
	}

.button-tools.outline:hover .svg-icon,
.button-tools.outline + label:hover .svg-icon,
ul.add-button-tools.outline li > *:hover .svg-icon {
	fill:var(--color-white);
	}


.button-tools.outline:hover,
.button-tools.outline + label:hover,
ul.add-button-tools.outline li > a:hover,
ul.add-button-tools.outline li > span:hover,
ul.add-button-tools.outline li > input[type=submit] + label:hover,
ul.add-button-tools.outline li > input[type=button] + label:hover,
ul.add-button-tools.outline li > input[type=file] + label:hover,
ul.add-button-tools.outline li > button:hover {
	border:1px solid transparent;
	background-color:var(--color-neutro);
	color:var(--color-white);
	}






/* General 
------------------------------*/
.button-tools,
.button-tools + label,
ul.add-button-tools li > a,
ul.add-button-tools li > span,
ul.add-button-tools li > input[type=submit] + label,
ul.add-button-tools li > input[type=button] + label,
ul.add-button-tools li > input[type=file] + label,
ul.add-button-tools li > button{
	align-items:center;
	border-radius:11px;
	border:0px;
	cursor:pointer;
	display:inline-flex;
	flex-direction:row;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	gap:2px;
	justify-content:center;
	height:22px;
	line-height:22px;
	letter-spacing:1px;
	margin:0px;	
	outline:0px;
	position: relative;
	padding:0px 12px;
	text-decoration: none;
	text-transform:uppercase;
	transition:all 0.12s;
	width:auto!important;
	}


input.button-tools[type=submit],
input.button-tools[type=button],
input.button-tools[type=file],
ul.add-button-tools li > input[type=submit],
ul.add-button-tools li > input[type=button],
ul.add-button-tools li > input[type=file] {
	display:none;
	visibility: hidden;
	}



/* +  iconos
------------------------------*/
.button-tools .svg-icon,
.button-tools + label .svg-icon,
ul.add-button-tools .svg-icon {
	aspect-ratio: auto 1 / 1; 
	height:22px;
	margin-left:-6px;
	padding:2px;
	width:22px;
	}









/*--------------------------------------------
BUTTON TAG ///////////////////////////////////
-------------------------------------------*/
/* ////////////// SET: DESIGN
------------------------------*/
.button-tags,
.button-tags + label,
ul.add-button-tags li > a,
ul.add-button-tags li > span,
ul.add-button-tags li > input[type=submit] + label,
ul.add-button-tags li > input[type=button] + label,
ul.add-button-tags li > input[type=file] + label,
ul.add-button-tags li > button {
	background-color:var(--color-neutro-dark);
	color:var(--color-white-70);
	}


/*  +  iconos
------------------------------*/
.button-tags .svg-icon,
.button-tags + label .svg-icon,
ul.add-button-tags .svg-icon {
	fill:var(--color-white-70);
	}


/* Hover
------------------------------*/
.button-tags:hover,
.button-tags + label:hover,
ul.add-button-tags li > a:hover,
ul.add-button-tags li > span:hover,
ul.add-button-tags li > input[type=submit] + label:hover,
ul.add-button-tags li > input[type=button] + label:hover,
ul.add-button-tags li > input[type=file] + label:hover,
ul.add-button-tags li > button:hover {
	background-color:var(--color-neutro);
	text-decoration:none;
	color:var(--color-white);
	}

.button-tags:hover .svg-icon,
.button-tags + label:hover .svg-icon,
ul.add-button-tags :hover .svg-icon {
	fill:var(--color-white);
	}




/* General
------------------------------*/
.button-tags,
.button-tags + label,
ul.add-button-tags li > a,
ul.add-button-tags li > span,
ul.add-button-tags li > input[type=submit] + label,
ul.add-button-tags li > input[type=button] + label,
ul.add-button-tags li > input[type=file] + label,
ul.add-button-tags li > button{
	border-radius:0px;
	cursor: pointer;
	align-items:center;
	border:0px;
	display:inline-flex;
	flex-direction:row;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	justify-content:center;
	gap:2px;
	height:28px;
	line-height:1.4em;
	letter-spacing:1px;
	margin:0px;
	outline:0;
	padding:0px 6px;
	position:relative;
	text-decoration:none;
	transition:all 0.12s;
	text-transform:uppercase;
	width:auto;
	}



input.button-tags[type=submit],
input.button-tags[type=button],
input.button-tags[type=file],
ul.add-button-tags li > input[type=submit],
ul.add-button-tags li > input[type=button],
ul.add-button-tags li > input[type=file] {
	display:none;
	visibility: hidden;
	}


/*  +  iconos
------------------------------*/
.button-tags .svg-icon,
.button-tags + label .svg-icon,
ul.add-button-tags .svg-icon {
	height:28px;
	margin:0px 0px 0px 0px;
	padding:4px;
	width:28px;
	}




/* @media
------------------------------*/
@media only screen and (max-width:1500px) {
.button-tags,
.button-tags + label,
ul.add-button-tags li > a,
ul.add-button-tags li > span,
ul.add-button-tags li > input[type=submit] + label,
ul.add-button-tags li > input[type=button] + label,
ul.add-button-tags li > input[type=file] + label,
ul.add-button-tags li > button{
height:26px;
}
.button-tags .svg-icon,
.button-tags + label .svg-icon,
ul.add-button-tags .svg-icon {
height:26px;
width:26px;
}}


@media only screen and (max-width:620px) {
.button-tags,
.button-tags + label,
ul.add-button-tags li > a,
ul.add-button-tags li > span,
ul.add-button-tags li > input[type=submit] + label,
ul.add-button-tags li > input[type=button] + label,
ul.add-button-tags li > input[type=file] + label,
ul.add-button-tags li > button{
height:28px;
}
.button-tags .svg-icon,
.button-tags + label .svg-icon,
ul.add-button-tags .svg-icon {
height:28px;
width:28px;
}}







/*--------------------------------------------
BUTTON INLINE  ///////////////////////////////
-------------------------------------------*/
/* ////////////// SET: DISEÑO 
------------------------------*/
.button-inline,
.button-inline + label,
.menu-button-inline a,
.menu-button-inline span,
.menu-button-inline input[type=submit] + label,
.menu-button-inline input[type=button] + label,
.menu-button-inline input[type=file] + label{
	background-color:none;
	color:inherit;
	}

/* +  iconos
------------------------------*/
.button-inline .svg-icon,
.button-inline + label .svg-icon,
.menu-button-inline a .svg-icon,
.menu-button-inline span .svg-icon,
.menu-button-inline input[type=submit] + label .svg-icon,
.menu-button-inline input[type=button] + label .svg-icon,
.menu-button-inline input[type=file] + label .svg-icon{
	fill:inherit;
	}

/* Hover
------------------------------*/
.button-inline:hover,
.button-inline + label:hover,
.menu-button-inline a:hover,
.menu-button-inline span:hover,
.menu-button-inline input[type=submit] + label:hover,
.menu-button-inline input[type=button] + label:hover,
.menu-button-inline input[type=file] + label:hover{
	background-color:none;
	color:inherit;
	text-decoration:underline;
	}

.button-inline:hover .svg-icon,
.button-inline:hover + label .svg-icon,
.menu-button-inline  :hover .svg-icon{
	fill:inherit;
	}



/* General
------------------------------*/
.button-inline,
.button-inline + label,
.menu-button-inline a,
.menu-button-inline span,
.menu-button-inline input[type=submit] + label,
.menu-button-inline input[type=button] + label,
.menu-button-inline input[type=file] + label{
	display:inline;
	flex-direction:row;
	font-size:inherit;
	font-weight:inherit;
	height:auto;
	justify-content:flex-start;
	cursor: pointer;
	gap:6px;
	margin:0px;
	overflow:hidden;
	position:relative;
	transition:all 0.12s;
	text-decoration:underline;
	width:auto;
	}


input.button-inline[type=submit],
input.button-inline[type=button],
input.button-inline[type=file],
.menu-button-inline  input[type=submit],
.menu-button-inline  input[type=button],
.menu-button-inline  input[type=file] {
	display:none;
	visibility: hidden;
	}



/* +  iconos
------------------------------*/
.button-inline .svg-icon,
.button-inline + label .svg-icon,
.menu-button-inline a .svg-icon,
.menu-button-inline span .svg-icon,
.menu-button-inline input[type=submit] + label .svg-icon,
.menu-button-inline input[type=button] + label .svg-icon,
.menu-button-inline input[type=file] + label .svg-icon{
	display:inline;
	aspect-ratio: auto 1 / 1; 
	height:16px;
	margin:0px 0px -3px 0px;
	padding:0px;
	width:16px;
	}







/*-------------------------------------------------------------------------- 
MENUS //////////////////////////////////////////////////////////////////////
--------------------------------------------------------------------------*/
/*--------------------------------------------
MENU  ///////////////////////////////////////
-------------------------------------------*/
ul.menu{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:8px;
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	width:100%;
	}

ul.menu li {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	list-style:none;
	padding:0px;
	margin:0px;
	position:relative;
	width:auto;
	}






/*--------------------------------------------
MENU ACTIONS  ////////////////////////////////
-------------------------------------------*/
ul.menu-actions {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:8px;
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	width:100%;
	}


ul.menu-actions li {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	list-style:none;
	padding:0px;
	margin:0px;
	position:relative;
	width:auto;
	}


ul.menu-actions .alert {
	text-align:left;
	}



/* BREAK : MOVIL
------------------------------*/
@media only screen and (max-width:620px) {
	ul.menu-actions{
	padding:0px 10vw!important;
	font-size:1rem;
	}
	ul.menu-actions li{
	width:100%!important;
	}
	ul.menu-actions li > *{
	width:100%!important;
	}
	ul.menu-actions .alert {
	width:100%;
	}
	ul.menu-actions .alert {
	text-align:center;
	}
}

@media only screen and (max-width:520px) {
	ul.menu-actions{
	padding:0px 4vw;
	}}

@media only screen and (max-width:420px) {
	ul.menu-actions{
	padding:0px 0vw;
	}}





/* Alineaciones alternativas
------------------------------*/
ul.menu.center,
ul.menu-actions.center{
	justify-content:center;
	}

ul.menu.center .alert,
ul.menu-actions.center .alert {
	width:100%;
	}

ul.menu.center .alert,
ul.menu-actions.center .alert{
	text-align:center;
	width:100%;
	}

ul.menu.left,
ul.menu-actions.left {
	justify-content:flex-start;
	}

ul.menu.right,
ul.menu-actions.right {
	justify-content:flex-end;
	}




/* Vertical
------------------------------*/





/* Reset BUTTON
------------------------------*/
ul.menu-actions li.reset > *,
ul.menu-actions.small li.reset > * {
	background-color:transparent!important;
	border-radius:0px!important;
	color:var(--color-neutro)!important;
	font-size:0.6rem;
	height:auto!important;
	line-height:1em!important;
	min-width:0px!important;
	padding:0px 2px!important;
	text-transform:uppercase;
	transition:all 0.12s;
	width:100%;
	}







/* + small
------------------------------*/
ul.menu.small,
ul.menu-actions.small{
	gap:4px;
	}





	@media only screen and (max-width:620px) {
	ul.menu-actions.small{
	justify-content:space-between;
	padding:0px 0vw;
	}}
	@media only screen and (max-width:620px) {
	ul.menu-actions.small li{
	min-width:49%;
	width:auto;
	}}







/*--------------------------------------------
BAR TOOLS /// ////////////////////////////////
-------------------------------------------*/
/* ////////////// SET: DISEÑO 
------------------------------*/
ul.bar-tools {
	border-bottom:1px solid var(--color-neutro-softer);
	border-top:1px solid var(--color-neutro-softer);
	color:var(--color-neutro);
	}







/* General
------------------------------*/
ul.bar-tools {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:6px;
	justify-content:flex-start;
	height:auto;
	list-style:none;
	margin:0px 0px;
	padding:6px 0px;
	width:100%;
	}



ul.bar-tools li{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	flex-grow:0px;
	height:auto;
	list-style:none;
	text-align: center;
	padding:0px;
	width:auto;
	}



ul.bar-tools li.grow{
	flex-grow:12;
	}




/* Font default
------------------------------*/
ul.bar-tools {
	font-size:var(--fs-medium);
	font-weight:var(--fw-normal);
	}



/* Title
------------------------------*/
ul.bar-tools li[data-element='title']{
	font-weight:var(--fw-bold);
	text-transform: uppercase;
	}


/* Text link
------------------------------*/
ul.bar-tools li[data-element='link'] a{
	color:inherit;
	background-color:transparent;
	font-weight:inherit;
	font-size:inherit;
	padding:inherit;
	text-decoration:none;
	text-transform:none;
	}

ul.bar-tools li[data-element='link'] a:hover{
	text-decoration:underline;
	}



/* Separator
------------------------------*/
ul.bar-tools li[data-element='separator']{
	background-color:var(--color-neutro-soft);
	height:14px;
	width:1px;
	}



/* Vertical
------------------------------*/
ul.bar-tools.vertical li{
	width:100%;
	}

ul.bar-tools.vertical li[data-element='separator']{
	height:1px;
	width:100%;
	}

ul.bar-tools.vertical li > *{
	min-width:160px;
	}

ul.bar-tools.vertical li[data-element='link'] a{
	min-width:auto;
	}



/*--------------------------------------------
MENU CATEGORIES  ////////////////////////////
-------------------------------------------*/
ul.menu-categories {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:4px;
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	width:100%;
	}


ul.menu-categories li {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	list-style:none;
	padding:0px;
	margin:0px;
	position:relative;
	width:auto;
	}


ul.menu-categories > li input[type=checkbox],
ul.menu-categories > li input[type=radio] {
	visibility: hidden;
	display: none;
	}


ul.menu-categories > li input[type=checkbox] + label,
ul.menu-categories > li input[type=radio] + label,
div.tab-box.categories > label {
	align-items:center;
	align-content:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	gap:2px;
	justify-content:flex-start;
	height:28px;
	letter-spacing:1px;
	line-height:28px;
	outline:0;
	padding:0px 8px;
	position:relative;
	margin:0px;
	text-decoration:none;
	transition:all 0.12s;
	text-transform:uppercase;
	width:auto;
	}




ul.menu-categories > li input[type=checkbox] + label,
ul.menu-categories > li input[type=radio] + label,
div.tab-box.categories > label  {
	background-color:var(--color-neutro-softer);
	border:1px solid var(--color-neutro-soft);
	color:var(--color-neutro);
	border-radius:14px;
	}


/*  +  iconos
------------------------------*/
ul.menu-categories .svg-icon,
div.tab-box.categories > label .svg-icon {
	height:28px;
	margin:0px 0px 0px -8px;
	padding:4px;
	width:28px;
	}



/*  +  iconos
------------------------------*/
ul.menu-categories .svg-icon,
div.tab-box.categories > label .svg-icon {
	fill:var(--color-neutro);
	}


/* Hover
------------------------------*/
ul.menu-categories > li input[type=checkbox] + label:hover,
ul.menu-categories > li input[type=radio] + label:hover,
div.tab-box.categories > label:hover {
	background-color:var(--color-neutro-soft);
	border:1px solid var(--color-neutro-soft);
	color:var(--color-white);
	}

ul.menu-categories > li input[type=checkbox] + label:hover .svg-icon,
ul.menu-categories > li input[type=radio] + label:hover .svg-icon,
div.tab-box.categories > label:hover .svg-icon {
	fill:var(--color-white);
	}


/* Checker
------------------------------*/
ul.menu-categories > li input[type=checkbox]:checked + label,
ul.menu-categories > li input[type=radio]:checked + label,
div.tab-box.categories > input:checked + label{
	background-color:var(--color-neutro);
	border:1px solid var(--color-neutro);
	color:var(--color-white-90);
	}

ul.menu-categories > li input[type=checkbox]:checked + label .svg-icon,
ul.menu-categories > li input[type=radio]:checked + label .svg-icon,
div.tab-box.categories > input:checked + label {
	fill:var(--color-white-70);
	}




/*--------------------------------------------
MENU BAR ////////////////////////////////////
-------------------------------------------*/
/*
ul.menu-bar {
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	font-weight:300;
	font-size:0.7rem;
	gap:4px;
	height: auto;
	margin:4px 0px;
	padding:0px;
	width:100%;
	}

	
ul.menu-bar li {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	list-style:none;
	gap:4px;
	padding:0px;
	margin:0px;
	text-align:center;
	position:relative;
	width:auto;
	}



ul.menu-bar li input[type="submit"],
ul.menu-bar li input[type="button"]{
	visibility: hidden;
	display:none;
	}


ul.menu-bar li > a,
ul.menu-bar li > span,
ul.menu-bar li > input[type=submit] + label,
ul.menu-bar li > input[type=button] + label,
ul.menu-bar li > button{
	align-items:center;
	background-color:var(--color-neutro-soft);
	border:0px;
	border-radius:13px;
	color:var(--color-white-70);
	display:flex;
	flex-direction:row;
	justify-content:center;
	cursor:pointer;
	font-size:1em;
	height:22px;
	line-height:22px;
	margin:0px;	
	outline:0px;
	padding:0px 12px; 
	position: relative;
	text-decoration: none;
	text-transform:uppercase;
	transition:all 0.12s;
	width:auto;
	}



ul.menu-bar li > a:hover,
ul.menu-bar li > span:hover,
ul.menu-bar li > input[type=submit] + label:hover,
ul.menu-bar li > input[type=button] + label:hover,
ul.menu-bar li > button:hover {
	background-color:var(--color-neutro-soft);
	color:var(--color-white);
	}




ul.menu-bar li > .add-icon{
	padding-left:0px!important;
	}

ul.menu-bar li > .add-icon .svg-icon {
	height:22px;
	fill:var(--color-white-70);
	margin:0px 0px 0px 2px;
	transition:all 0.12s;
	padding:4px;
	width:22px;
	}
	
ul.menu-bar li > .add-icon:hover .svg-icon {
	fill:var(--color-white);
	}




ul.menu-bar.vertical li{
	width:100%;
	}



ul.menu-bar li p{
	color:var(--color-neutro);
	font-size:0.8rem;
	padding:0px;
	margin:0px;
	width:auto;
	}

ul.menu-bar.vertical li p{
	width:100%;
	}

*/

/*-------------------------------------------------------------------------- 
ALERTS ////////////////////////////////////////////////////////////////////
--------------------------------------------------------------------------*/
.alert{
	color:var(--color-neutro);
	font-size:0.5rem;
	height:auto!important;
	margin:0px 0px;
	letter-spacing:0.6px;
	text-align:left;
	text-transform:uppercase;
	overflow:hidden;
	padding:0px 0px;
	width:auto;
	}



.alert.color-ok,
.alerterror {
	color:var(--color-ok);
	}

.alert.color-warning,
.alertok {
	color:var(--color-warning);
	}


/*-------------------------------------------------------------------------- 
INPUTS /////////////////////////////////////////////////////////////////////
--------------------------------------------------------------------------*/
form {
	align-items:flex-start;
	border:0px;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	gap:8px;
	height:auto;
	justify-content:space-between;
	padding:0px;
	margin:0px;
	outline:0px;
	width:100%;
	}



/* General
------------------------------*/
input, textarea,
input:focus, textarea:focus  {
	outline:0px;
	}



input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel], 
input[type="text"]:focus,
textarea,
textarea:focus,
select:focus,
div.input > span {
	background-color:var(--color-neutro-dark);
	}



input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel], 
textarea,
div.input > span{
	align-items:center;
	border:0px;
	display: flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:2;
	justify-content:flex-start;
	padding:0px;
	text-indent:10px;
	width:100%; 
	}


/* border radius
------------------------------*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel], 
textarea,
div.input{
	border-radius:4px;
	}



/* input a la mitad
------------------------------*/
form label.title.split,
input.split,
.inputs-group > .item {
	width:40%;
	}



textarea {
	line-height:36px;
	min-height:200px; 
	}
	@media only screen and (max-width:1500px) {
	textarea{
	line-height:26px;
	min-height:140px; 
	}}



/* SET: Altura
------------------------------*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel],
select,
div.input,
div.input > span,
div.input .svg-icon {
	height:60px;
	line-height:64px;
	}
	@media only screen and (max-width:1500px) {
	input[type=text],
	input[type=number],
	input[type=password],
	input[type=email],
	input[type=tel],
	select,
	div.input,
	div.input > span,
	div.input .svg-icon {
	height:40px;
	line-height:44px;
	}}
	@media only screen and (max-width:620px) {
	input[type=text],
	input[type=number],
	input[type=password],
	input[type=email],
	input[type=tel],
	select,
	div.input,
	div.input > span,
	div.input .svg-icon {
	height:50px;
	line-height:54px;
	}}



/* Set:Font
------------------------------*/
input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel], 
textarea,
div.input > span,
::placeholder{
	color: var(--color-white);
	font-size:var(--fs-medium)!important;
	font-weight:var(--fw-thin)!important;
	font-family:inherit!important;
	}





/* Labels
------------------------------*/
label.title{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	gap:4px;
	height:18px;
	justify-content:flex-start;
	text-transform:uppercase;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	margin:4px 0px 2px 0px;
	text-align:left;
	width:100%;
	}


label.title .svg-icon{
	fill:var(--color-white);
	aspect-ratio: 1 / 1;
	height:18px;
	margin:0px;
	width:18px;
	}






/* Placeholder
------------------------------*/
::placeholder {
	color:var(--color-neutro-soft);
	}



/* div input
------------------------------*/
div.input {
	position:relative;
	overflow:hidden;
	width:100%;
	}



div.input .svg-icon{
	padding:10px;
	position:absolute;
	left:0px;
	top:0px;
	width:60px;
	}
	@media only screen and (max-width:1500px) {
	div.input .svg-icon{
	padding:8px;
	width:40px;
	}}
	@media only screen and (max-width:620px) {
	div.input .svg-icon{
	padding:8px;
	width:50px;
	}}



div.input input[type=text],
div.input input[type=password],
div.input > span{
	text-indent:60px;
	}
	@media only screen and (max-width:1500px) {
	div.input input[type=text],
	div.input input[type=password],
	div.input > span{
	text-indent:40px;
	}}
	@media only screen and (max-width:620px) {
	div.input input[type=text],
	div.input input[type=password],
	div.input > span{
	text-indent:50px;
	}}










/* escondemos input submit para sustituirlo por label*/
input[type=submit],
input[type=button] {
	display:none;
	visibility:hidden;
	}

input[type=range] {
	width:100%;
	}









/* Checkbox, radio
------------------------------*/
div.checkbox-set {
	width:100%;
	}


div.checkbox-set input[type=checkbox],
div.checkbox-set input[type=radio] {
	visibility: hidden;
	display: none;
	}


/* label */
div.checkbox-set input[type=checkbox] + label,
div.checkbox-set input[type=radio] + label {
	align-items:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	height:auto;
	min-width:60%;
	padding:0px;
	margin:0px 0px;
	width:auto;
	}

/* cuadro - circle  */
div.checkbox-set input[type=checkbox] + label span,
div.checkbox-set input[type=radio] + label span{
	display:block;
	background-color:#fff;
	border:0px solid var(--color-neutro-soft);
	cursor: pointer;
	height:20px; 
	margin-right:10px;
	outline:1px solid var(--color-neutro-soft);
	position: relative;
	transition:all 0.1s;
	width:20px;
	}


div.checkbox-set input[type=checkbox] + label span {
	border-radius:2px;
	}

div.checkbox-set input[type=radio] + label span {
	border-radius:50%;
	}


/* hover */
div.checkbox-set input[type=checkbox] + label span:hover,
div.checkbox-set input[type=radio] + label span:hover{
	box-shadow:0px 0px 4px rgba(0, 0, 0, 0.6);
	}

/* checked */
div.checkbox-set input[type=checkbox]:checked + label span,
div.checkbox-set input[type=radio]:checked + label span{
	background-color:var(--color-ok);
	outline:1px solid var(--color-neutro-soft);
	}
div.checkbox-set input[type=checkbox]:checked + label span{
	border:0px solid var(--color-white);
	}
div.checkbox-set input[type=radio]:checked + label span{
	border:4px solid var(--color-white);
	}


/* texto */
div.checkbox-set input[type=checkbox] + label i,
div.checkbox-set input[type=radio] + label i{
	align-items:center;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	flex-grow:99;
	font-style: normal;
	height:20px;
	line-height:20px;
	overflow: hidden;
	text-overflow:ellipsis!important;
	white-space: nowrap!important;
	width:60px;
	}

/* icon */
div.checkbox-set input[type=checkbox] + label span .svg-icon{
	fill:transparent;
	height:20px;
	padding:2px;
	width:20px;
	}

div.checkbox-set input[type=checkbox]:checked + label span .svg-icon{
	fill:var(--color-white);
	}



/*--------------------------------------------
BUSCADOR /////////////////////////////////////
-------------------------------------------*/

/* Box search
------------------------------*/
div.box-search {
	display:flex;
	flex-direction:row;
	justify-content:flex-start;
	font-size:0.8rem;
	height:auto;
	width:100%;
	}


/* Form
------------------------------*/
div.box-search form{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	font-size:inherit;
	gap: 0px;
	justify-content:flex-start;
	height: auto;
	width:100%;
	}


/* input + button altura
------------------------------*/
div.box-search form input[type=search],
div.box-search form input[type=submit] + label{
	font-size:1em;
	height:38px;
	line-height:38px;
	outline:0px;
	}
	@media only screen and (max-width:1500px) {
	div.box-search form input[type=search],
	div.box-search form input[type=submit] + label{
	height:28px;
	line-height:28px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search form input[type=search],
	div.box-search form input[type=submit] + label{
	height:38px;
	line-height:38px;
	}}




/* tall
------------------------------*/
div.box-search.tall form input[type=search],
div.box-search.tall form input[type=submit] + label{			
	font-size:1.1em;
	height:48px;
	line-height:48px;
	}
	div.box-search.tall form input[type=search]  {
	border-radius:24px;	
	}

	@media only screen and (max-width:1500px) {
	div.box-search.tall form input[type=search],
	div.box-search.tall form input[type=submit] + label{
	height:38px;
	line-height:38px;
	}
	div.box-search.tall form input[type=search]  {
	border-radius:19px;	
	}}
	@media only screen and (max-width:620px) {
	div.box-search.tall form input[type=search],
	div.box-search.tall form input[type=submit] + label{
	height:42px;
	line-height:42px;
	}
	div.box-search.tall form input[type=search]  {
	border-radius:21px;	
	}}






/* SET:  DESIGN
------------------------------*/
div.box-search form input[type=search] {
	background-color:var(--color-neutro-softer);
	border:1px solid var(--color-neutro-soft);
	border-radius:19px;
	color:var(--color-neutro-dark);
	margin:0px!important;
	padding:0px 10px;
	width:100%;
	/*puntos suspensivos*/
	overflow: hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
	}
	@media only screen and (max-width:1500px) {
	div.box-search form input[type=search]{
	border-radius:14px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search form input[type=search]{
	border-radius:19px;
	}}


/* input search  */
div.box-search input.search[type=search] {
	border-radius:19px 0px 0px 19px;
	border-right:0px solid var(--color-neutro-dark)!important;
	} 
	@media only screen and (max-width:1500px) {
	div.box-search input.search[type=search]{
	border-radius:14px 0px 0px 14px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search input.search[type=search]{
	border-radius:19px 0px 0px 19px;
	}}




/* Botón */
div.box-search form input[type="submit"]{
	visibility: hidden;
	display:none;
	}
div.box-search input[type=submit] + label{
	align-items:center;
	display:flex;
	background-color:var(--color-neutro);
	border:1px solid var(--color-neutro-dark);
	border-radius:0px 19px 19px 0px;
	cursor:pointer;
	flex-direction:row;
	justify-content:space-between;
	margin:0px!important;
	padding:0px 6% 0px 3%;
	width:auto;
	}
	@media only screen and (max-width:1500px) {
	div.box-search input[type=submit] + label{
	border-radius:0px 14px 14px 0px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search input[type=submit] + label{
	border-radius:0px 19px 19px 0px;
	}}

div.box-search input[type=submit] + label span {
	color:var(--color-white);
	font-size:1em;
	font-weight:500;
	width:auto;
	}
div.box-search input[type=submit] + label .svg-icon {
	height:28px;
	fill:var(--color-white);
	padding:2px;
	width:28px;
	}
	@media only screen and (max-width:1500px) {
	div.box-search input[type=submit] + label .svg-icon{
	height:22px;
	padding:2px;
	width:22px;
	}}


/*---------------------------------
/// SELECT ///
----------------------------------*/
div.select{
	font-size:var(--fs-medium);
	}


div.select {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	border-radius:4px;
	background-color:var(--color-white);
	border:1px solid var(--color-neutro-soft);
	font-weight:var(--fw-normal);
	margin:0px;
	padding:0px;
	position:relative;
	text-align:left;
	width:100%;
	}






div.select,
div.select:after,
div.select select {
	height:36px;
	line-height:36px;
	} 




div.select select{
	background-color:transparent;
	border:0px;
	border-radius:0px;
	display:block;
	color:inherit;
	margin:0px;
	outline:none;
	overflow: hidden;
	text-shadow: none;
	text-align:left!important;
	text-indent:6px;
	-webkit-appearance:none!important;
	-moz-appearance: none!important;
	appearance: none!important;
	width:100%;
	}

div.select:after {
	color:inherit;
	content: "▼";
	position: absolute;
	top:0;
	right: 0;
	bottom:0;
	font-size:12px;
	margin:0px;
	padding:0px 10px;	
	pointer-events:none;
	}

div.select select option{
	border:0px!important;
	box-shadow: 0px;
	height: auto;
	margin:0px;
	outline:none;
	text-align:left!important;
	width:100%;
	}

/* Option: small
------------------------------*/
div.select.small {
	font-size:var(--fs-medium);
	}


div.select.small,
div.select.small:after,
div.select.small select {
	height:30px;
	line-height:30px;
	} 



/* Option: Half
------------------------------*/
div.select.half{
	margin:5px 0px 15px 1%;
	float:right;
	width:49%!important; 
	}
	@media only screen and (max-width:620px) {
	div.select.half{
	margin:5px 0px 5px 0%;
	/*float: left;*/
	width:100%!important; 
	}}



div.select.half:first-child{
	float:left;
	margin:5px 1% 15px 0%; 
	}
	@media only screen and (max-width:620px) {
	div.select.half:first-child{
	margin:5px 0% 5px 0%; 
	}}


/*-------------------------------------------------------------------------- 
/////////////////////////////////////////////////////////// END MENU INPUTS
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
FOOTER ////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/
/* -------------------------------------------------
---------------------------------- SET: DISEÑO ---
--------------------------------------------------*/
footer{
	background-color:var(--color-black);
	color:var(--color-white-60);
	font-size:var(--fs-medium);
	border-top: 5px solid;
	border-color: var(--color-neutro-darker);
	}


/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/
footer{
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:var(--gap-second);
	height:auto;
	max-width:100%;
	overflow-x:hidden;
	padding-bottom:20px;
	padding-top:20px;
	width:100%;
	}





/* -------------------------------------------------
---------------------------------- SET: DISEÑO ---
--------------------------------------------------*/

/* Title
------------------------------*/
footer.columnas .col .title {
	color:var(--color-main);
	font-family:var(--font-main);
	font-size:1rem;
	font-weight:var(--fw-bold);
	text-align:left;
	width:100%;
	}






/* -------------------------------------------------
------------------------------------------ BASE ---
--------------------------------------------------*/
footer.columnas {
	/*  www/style.css */
	}



footer.columnas {
	align-items:stretch;
	}



/* Cols
------------------------------*/
footer.columnas .col{
	align-items:flex-start;
	align-content:flex-start;	
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	flex-grow:2;
	justify-self:flex-start;
	gap:var(--gap-inside-small);
	height:auto;
	width:31%;
	}





footer.columnas .col-1{
	justify-content:flex-end;
	order:1;
	}
	@media only screen and (max-width:720px) {
	footer.columnas .col-1{
	text-align:center;
	order:2;
	width:100%;
	}}



footer.columnas .col-2{
	align-items: center;
	justify-content:center;
	order:2;
	}
	@media only screen and (max-width:720px) {
	footer.columnas .col-2{
	text-align:center;
	order:1;
	width:100%;
	}}


footer.columnas .col-3{
	flex-direction:row;
	justify-content:flex-end;
	order:3;
	}
	@media only screen and (max-width:720px) {
	footer.columnas .col-3{
	justify-content:center;	
	width:100%;
	}}



/* Logotipo
------------------------------*/
footer.columnas .col .logotipo{
	display:block;
	height:auto;
	max-width:120px;
	opacity:0.6;
	width:80%;
	}
footer.columnas .col .logotipo img{
	height:auto;
	}



/* Parrafo
------------------------------*/
footer.columnas .col p{
	height:auto;
	line-height:1.6em;
	padding:0px;
	width:100%;
	}

/* Social Bar
------------------------------*/
footer.columnas .col-2 .social-bar{
	align-items: center;
	justify-content:center;
	margin: 10px;
	width:100%;
	}


/* Links
------------------------------*/
footer.columnas a{
	text-decoration:none;
	}
footer.columnas a:hover{
	text-decoration:underline;
	}


/* Last colum
------------------------------*/
footer.columnas .col.last{
	justify-content:flex-end;
	}

footer.columnas .col.last ul.social-bar{
	justify-content:flex-end;
	margin-bottom:60px;
	}



footer.columnas .col.last .firma{
	align-self: flex-end;
	}




/* BREAK: MOVIL
------------------------------------------*/
@media only screen and (max-width:920px) {
footer.columnas .col.logotipo{
	justify-content:center;
	width:100%;
	}
}


@media only screen and (max-width:720px) {
footer.columnas .col.last{
	justify-content:center;
	width:100%;
	}
footer.columnas .col.last ul.social-bar{
	justify-content:center;
	width:100%;
	}
footer.columnas .col.last .firma{
	flex-direction:column;
	text-align:center;
	width:auto;
	}

footer.columnas .col.last .firma span{
	text-align:center;
	}
}


@media only screen and (max-width:720px) {
footer.columnas .col{
	justify-content:center;
	text-align:center;
	width:100%;
	}
footer.columnas .col p{
	text-align:center;
	width:100%;
	}
}



/*-------------------------------------------------------------------------- 
///////////////////////////////////////////////////////////////// END FOOTER
--------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------- 
////////////////////////////////////////////////////////////////////////////
EXTRAS ////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-------------------------------------------------------------------------*/



/*---------------------------------------------------
//////////              FIRMA              //////////
---------------------------------------------------*/
.firma {
	align-items:center;
	color:var(--color-white-60);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:0;
	font-size:10px;
	line-height:1.2em;
	justify-content:flex-end;
	opacity:0.5;
	text-decoration:none;
	max-width:auto;
	width:auto;
	}


.firma:hover {
	text-decoration:none;
	}


.firma span{
	height:auto;
	margin:0px 0px 0px 4px;
	text-align:right;
	width:auto;
	}

.firma .svg-icon{
	fill:var(--color-white-60);
	height:36px;
	padding:2px;
	width:36px;
	}
