º/*---------------------------------------------------------------- 
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:var(--fw-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
	# Fonts
	# p
	# .center, .uppercase
	# .puntos-suspensivos
	# .txt-small
	# p.add-column	
	# a
	# IMG
	# HR
	# HR space
	# SVG aspect ratio
	# UL, OL default
	# UL List ICON
	# UL List TAG
	# IFRAME
	# .w100
	# .box-info
	# .lazy
	# * {box-sizing:border-box}


— Colors y variables
	# Color main
	# Color second
	# Color neutro
	# Color white and blanck
	# Color ok and warning
	# Color social 
	# Rounded 
	# Transition
	# Font main and second
	# Font size (--fs)
	# Font weigt (--fw)
	# Gradients



— Estructura
	# IN (.wide .thin)


— Header y menu principal
	(import)


— Secciones
	# All
		— Banner general (import)
		— Titulos
		— Social bar + vertical
		— Social floating
		— Tab BOX + small
		— .first

	# Inicio
	# Seccion 1
		— ...
		— ...
	# Contacto


— Footer
	# (import)


— Inputs & menus
	(import)


— Extras 
	# Firma
		— LS


*/



/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////////////////
GLOBAL //////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
html, body {
	background-color:var(--color-white);
	color: var(--color-neutro-dark);
	display:flex;
	flex-direction:row; 
	flex-wrap: wrap;
	justify-content:center;
	align-items:flex-start;
	height:auto;
	min-height:100vh;
	position: relative;
	width:100%;
	}
	/* Break movil */
	@media only screen and (max-width:620px) {
	html, body {
	overflow-x:hidden;
	}}




/* montserrat-300 - latin */
@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;
}

/* montserrat-regular - latin */
@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;
}

/* montserrat-500 - latin */
@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;
}




/*--------------------------------------------
FUENTES  ////////////////////////////////////
-------------------------------------------*/

/* Font size
------------------------------*/
html, body  {
	font-size:22px;
	}
	@media only screen and (max-width:2200px) {
	html, body {
	font-size:21px;
	}}
	@media only screen and (max-width:1500px) {
	html, body {
	font-size:19px;
	}}
	@media only screen and (max-width:920px) {
	html, body {
	font-size:17px;
	}}
	@media only screen and (max-width:720px) {
	html, body {
	font-size:16px;
	}}
	@media only screen and (max-width:820px) {
	html, body {
	font-size:17px;
	}}
	@media only screen and (max-width:620px) {
	html, body {
	font-size:19px;
	}}
	@media only screen and (max-width:520px) {
	html, body {
	font-size:18px;
	}}
	@media only screen and (max-width:420px) {
	html, body {
	font-size:17px;
	}}


/* Fuente
------------------------------*/






/* Fuente primaria
------------------------------*/
html, body{
	font-family:var(--font-main);
	}

/* Fuente secundaria
------------------------------*/
h1, h2, h3, h4, h5, h6{
	font-family:var(--font-second);
	font-weight:var(--fw-bold);
	}


/* Font weight
------------------------------*/
html, body {
	font-weight:var(--fw-normal);
	}


/* H
------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
	height:auto;
	margin:0px;
	padding:2px 0px;
	line-height:1.2em;
	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{
	color:inherit;
	}


/* 
------------------------------*/
.center {
	text-align:center;
	}

.uppercase{
	text-transform:uppercase;
	}



/* Punto suspensivos
------------------------------*/
.puntos-suspnsivos{
	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;
	}

.txt-small  .icon-mini  {
	height:20px;
	width:20px;
	}

.txt-small a .icon-mini {
	background-color:var(--color-neutro-softer);
	color:var(--color-neutro-soft);
	font-size:0.9em;
	margin-right:4px;
	}

.txt-small a:hover .icon-mini {
	background-color:var(--color-neutro-soft);
	color:var(--color-neutro-softer);
	}



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;
	}




/* 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;
	}
	
	

/* hr
------------------------------*/
hr {
	background-color:var(--color-neutro-softer);
	border:0px;
	padding:0px;
	margin:10px 0px;
	height:1px;
	width:100%;
	}



hr.space-5 {background-color:transparent!important; margin:2.5px 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;}




/* Icons
------------------------------*/
.svg-icon {
	aspect-ratio: 1 / 1;
	max-height:100%;
	max-width:100%;
	}



/*--------------------------------------------
LISTAS  /////////////////////////////////////
-------------------------------------------*/

/* Default
------------------------------*/
ul, ol {
	float:none;
	height: auto;
	margin:10px 0px;
	padding-left:18px;
	width:100%;
	}

ul li, 
ol li{
	float: none;
	height: auto;
	line-height:1.4em;
	margin: 0px;
	padding: 0px;
	width:100%;
	}

ul li {
	list-style:disc;
	}

ol li {
	list-style:decimal;
	}




/* 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{
	background-color: var(--color-main);
	border-radius:50%;
	fill:var(--color-white);
	height:20px;
	line-height:20px;
	padding:2px;
	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:var(--fw-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;
	}

/*--------------------------------------------
EXTRAS  /////////////////////////////////////
-------------------------------------------*/

/* iFrame
------------------------------*/
iframe {
	border:0px;
	width:100%!important;
	}




/* Al 100%
------------------------------*/
.w100 {width:100%!important;}



/* 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);
	}




/* Lazy
------------------------------*/
.lazyloading {
	opacity: 0;
	}

.loading,
.lazyload,
.lazyloaded{
	opacity: 1;
	transition: opacity 0.8s;
	}



* {
	box-sizing:border-box!important;
	float: none;
	}

/*---------------------------------------------------------------- 
////////////////////////////////////////////////////// END GLOBAL
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////////////////
COLORS Y VARIABLES //////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
:root {
--color-main-dark:#6e886f;
--color-main:#92b594;
--color-main-soft:#bed3bf;
--color-main-softer:#e9f0ea;

--color-second-dark:#e5bfb7;
--color-second:#f4d0c8;
--color-second-soft:#ead1c5;
--color-second-softer:#f7e9e3;

--color-neutro-darker:#242422;
--color-neutro-dark:#474744;
--color-neutro:#5e5e5a;
--color-neutro-soft:#bfbfbd;
--color-neutro-softer:#efefef;

--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-50:rgba(255, 255, 255, 0.5);
--color-white-60:rgba(255, 255, 255, 0.6);
--color-white-40:rgba(255, 255, 255, 0.4);
--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-50:rgba(0, 0, 0, 0.5);
--color-black-60:rgba(0, 0, 0, 0.6);
--color-black-40:rgba(0, 0, 0, 0.4);
--color-black-20:rgba(0, 0, 0, 0.2);
--color-black-10:rgba(0, 0, 0, 0.1);

--color-ok:#55b88b;
--color-ok-softer:#d3eae0;
--color-warning:#d45353;
--color-warning-softer:#f6dfdf;

--color-whatsapp:#25d366;
--color-facebook:#3b5998;
--color-instagram:#cd486b;
--color-youtube:#ff0000;
--color-twitter:#55acee;

--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;

--transition-5x:all 0.06s;
--transition-4x:all 0.1s;
--transition-3x:all 0.2s;
--transition-2x:all 0.35s;
--transition-1x:all 0.5s;

--font-main:'Mitr', sans-serif;
--font-second:'Mitr', 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;
--fs-xxxlarge:1.8rem;

--fw-thin:200;
--fw-normal:300;
--fw-bold:400;
--fw-bolder:500;


--gradient-linear-uno:linear-gradient(to bottom, #A6CEE2 0%, #0066B2 100%);
--gradient-linear-dos:linear-gradient(to bottom, #EDC1AE 0%, #F26721 100%);

--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;
	}


/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////////////////
STRUCTURE  //////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/

/*
div.contenedor,
div.container,
section{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	max-width:100%;
	overflow-x:hidden;
	width:100%;
	}
*/


.in.thin{
	padding-left:20vw;
	padding-right:20vw;
	/*width:60vw;*/
	}
	@media only screen and (max-width:1500px) {
	.in.thin{
	padding-left:20vw;
	padding-right:20vw;
	/*width:60vw;*/
	}}
	@media only screen and (max-width:1200px) {
	.in.thin{
	padding-left:15vw;
	padding-right:15vw;
	/*width:70vw;*/
	}}
	@media only screen and (max-width:720px) {
	.in.thin{
	padding-left:8vw;
	padding-right:8vw;
	/*width:84%;*/
	}}
	@media only screen and (max-width:620px) {
	.in.thin{
	padding-left:10vw;
	padding-right:10vw;
	/*width:80vw;*/
	}}



.in.wide{
	padding-left:5vw;
	padding-right:5vw;
	/*width:90vw;*/
	}
	@media only screen and (max-width:1500px) {
	.in.wide{
	padding-left:3vw;
	padding-right:3vw;
	/*width:94vw;*/
	}}
	


.in{
	padding-left:10vw;
	padding-right:10vw;
	/*width:86%;*/
	}
	@media only screen and (max-width:1500px) {
	.in{
	padding-left:8vw;
	padding-right:8vw;
	/*width:86vw;*/
	}}
	@media only screen and (max-width:820px) {
	.in{
	padding-left:6vw;
	padding-right:6vw;
	/*width:88vw;*/
	}}
	@media only screen and (max-width:720px) {
	.in{
	padding-left:3vw;
	padding-right:3vw;
	/*width:94vw;*/
	}}
	@media only screen and (max-width:620px) {
	.in{
	padding-left:7vw;
	padding-right:7vw;
	/*width:86vw;*/
	}}



/*---------------------------------------------------------------- 
//////////////////////////////////////////////////// END STRUCTURE
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////////////////
HEADER   ////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
GENRAL  //////////////////////////////////////////////////////////
----------------------------------------------------------------*/
header.estandar {
	align-items:center;
	background-color:var(--color-white); /* set */
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:160px;
	justify-content:space-between;
	min-height:10vh;
	max-width:100%;
	overflow-x:visible;/* necesary */
	width:100%;
	z-index:200;
	}
	/* break tablet */
	@media only screen and (max-width:720px) {
	header.estandar{
	padding-bottom:8px;
	padding-top:8px;
	justify-content:center;
	}}
	/* break movil */
	@media only screen and (max-width:620px) {
	header.estandar{
	align-items:stretch; /* para forzar logo y btn misma altura */
	justify-content:space-between!important;
	overflow-x:visible;/*necesary*/
	padding-top:0px;
	position:initial; /* sirve para que nav no lo tome en cuenta al posicionar*/
	left:0px;
	top:0px;
	}}



/* SET: Altura
------------------------------*/
header.estandar {
	height:160px;
	}
	@media only screen and (max-width:1500px) {
	header.estandar{
	height:110px;
	}}
	@media only screen and (max-width:720px) {
	header.estandar{
	height:auto;
	}}
	@media only screen and (max-width:620px) {
	header.estandar{
	height:90px;
	}}




/*--------------------------------------------
LOGOTIPO ////////////////////////////////////
-------------------------------------------*/
header.estandar a.logotipo{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	height:auto;
	width:auto;
	}



/* SET: img sizes
------------------------------*/
header.estandar a.logotipo img{
	height:90px; /*set*/	
	width:auto; /*set*/	
	}
	/* Break movil */
	@media only screen and (max-width:620px) {
	header.estandar a.logotipo img{
	height:70px;
	width:auto;
	}}





/*--------------------------------------------
NAV /////////////////////////////////////////
-------------------------------------------*/
nav.main{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:99;
	justify-content:flex-end;
	height:auto;
	width:auto;
	}
	/* Break tablet*/
	@media only screen and (max-width:720px) {
	nav.main {
	margin-top:15px;
	width:100%;
	}}




/* SET: Font properties
------------------------------*/
nav.main {
	font-size:0.9rem;
	font-weight:600px;
	font-family:inherit;
	}





/*--------------------------------------------
BOTON MENU MOVIL /////////////////////////////
-------------------------------------------*/
/*----- Ocultamos inputs -----*/
header.estandar input.movil-button[type=checkbox] {
	visibility: hidden!important;
	display:none!important;
	}


/*----- Botón movil-----*/
header.estandar input.movil-button[type=checkbox] + label{
	align-items:center;
	cursor:pointer;
	display:none; /*escondemos*/
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	min-width:50px;
	transition-delay:0.1s;
	transition:all 0.18s;
	text-transform:uppercase;
	position:relative;
	width:auto;
	}

	/* Mostramos */
	@media only screen and (max-width:620px) {
	header.estandar input.movil-button[type=checkbox] + label{
	display:flex;
	}}


/*----- Icono-----*/
header.estandar input.movil-button[type=checkbox] + label i{
	display:block;
	margin:0px 0px 0px 2px;
	font-style:normal;
	height:20px	;
	position:relative;
	transition-delay:0.1s;
	transition:all 0.18s;
	width:20px;	
	}

/*----- Icono primer estado-----*/
header.estandar input.movil-button[type=checkbox] + label i:after{
	content:"☰";
	font-style:normal;
	text-align:center;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	}

/*----- Icono segundo estado-----*/
header.estandar input.movil-button[type=checkbox]:checked + label i:after{
	content:"✕";
	}



/* SET: Buttton design
------------------------------*/
header.estandar input.movil-button[type=checkbox] + label {
	color:var(--color-neutro-dark);
	font-size:18px;
	font-weight:var(--fw-normal);
	}
header.estandar input.movil-button[type=checkbox] + label i:after {
	color:var(--color-main);
	font-size:18px;
	font-weight:600;
	line-height:20px;
	}
/*----- Checket-----*/
header.estandar input.movil-button[type=checkbox]:checked + label{
	color:var(--color-white);
	}
header.estandar input.movil-button[type=checkbox]:checked + label i:after{
	color:var(--color-white);
	font-size:18px;
	}







/*--------------------------------------------
ELEMENTOS ////////////////////////////////////
-------------------------------------------*/

/* Shadow
------------------------------*/
div.shadow {
	display:none;
	visibility:hidden;
	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%;
	width:100vw;
	}

/*----- Mostramos: script.js -----*/
.show-shadow{
	display:block!important;
	visibility:visible!important;
	position:fixed!important;
	opacity:0.6!important;
	}



/*----- Bloqueamos scroll: script.js  ------*/
body.action-movil{
	position: fixed!important;
	}





/*--------------------------------------------
APARECER PANEL MOVIL  ////////////////////////
-------------------------------------------*/
/*---------------------------------
/////  SLIDE TO LEFT   /////
----------------------------------*/

@media only screen and (max-width:620px) {

/*----- z index -----*/
div.shadow {z-index:9;}
nav.main {z-index:10;}
input.movil-button[type=checkbox] + label {z-index:11;}
.logotipo.movil {z-index:11;}


header.slide-to-left  nav.main{
	left:auto;
	right:0px;
	transition-timing-function:ease-in-out;
	transform:translateX(80vw);
	opacity:0.8;
	position:fixed!important;
	transition:all 0.22s;
	width:80vw;
	}

/*----- slide left (script.js)  ------*/
header.slide-to-left  nav.main.action-movil{
	opacity:1.0!important;
	position:fixed!important;
	transform:translateX(0vw)!important;
	}
}




/*---------------------------------
/////  SLIDE TO RIGGT   /////
----------------------------------*/
@media only screen and (max-width:620px) {

/*----- z index -----*/
div.shadow {z-index:9;}
nav.main {z-index:10;}
input.movil-button[type=checkbox] + label {z-index:11;}
.logotipo.movil {z-index:11;}


header.slide-to-right  nav.main{
	left:0px;
	right:auto;
	transform:translateX(-80vw);
	opacity:0.8;
	position:fixed!important;
	transition:all 0.16s;
	width:80vw;
	}

/*----- slide right (script.js)  ------*/
header.slide-to-right  nav.main.action-movil{
	opacity:1.0!important;
	position:fixed!important;
	transform:translateX(0vw)!important;
	}
}




/*---------------------------------
/////   SHOW FULL   /////
----------------------------------*/
@media only screen and (max-width:620px) {

/*----- z index -----*/
div.shadow {z-index:9;}
nav.main {z-index:10;}
input.movil-button[type=checkbox] + label {z-index:11;}
.logotipo.movil {z-index:11;}


header.show-full  nav.main{
	left:0px;
	right:0p;
	opacity:0px;
	opacity:0.0;
	position:fixed!important;
	transition:all 0.16s;
	visibility:hidden;
	width:100vw;
	}

/*----- slide right (script.js)  ------*/
header.show-full  nav.main.action-movil{
	opacity:1.0!important;
	position:fixed!important;
	visibility: visible!important;
	}
}







/*---------------------------------------------------------------- 
MENU UL /////////////////////////////////////////////////////////
----------------------------------------------------------------*/

/* UL LEVL 1
------------------------------*/
nav.main ul.level-1{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-end;
	list-style:none;
	margin:0px;	
	padding:0px;
	width:100%;
	}
	@media only screen and (max-width:720px) {
	nav.main ul.level-1{
	width:100%;
	}}



/* SET: Align Buttons
------------------------------*/
nav.main ul.level-1{
	/*justify-content:space-between;
	justify-content:flex-start;*/
	justify-content:flex-end;
	}
	@media only screen and (max-width:720px) {
	nav.main ul.level-1{
	justify-content:space-between;
	}}




/*--- LEVEL 1  Separator ---*/
nav.main ul.level-1 li.separator{
	background-color:var(--color-neutro-soft);
	height:20px;
	width:1px!important;
	}
	@media only screen and (max-width:620px) {
	nav.main ul.level-1 li.separator{
	display:none;
	}}




/*--- LEVEL 1  Li ---*/
nav.main ul.level-1 > li{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	justify-content:flex-start;
	list-style:none;
	margin:0px;	
	padding:0px;
	position:relative;
	text-align: center;
	width:auto;
	}



/*--- LEVEL 1  Botones ---*/
nav.main ul.level-1 > li > * {
	align-items:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	margin:0px 0px;
	position:relative;
	transition:all 0.12s;
	text-decoration:none;
	width:auto;
	}
	

nav.main ul.level-1 > li > *:hover{
	text-decoration:none;
	}

/*--- LEVEL 1  iconos ---*/
nav.main ul.level-1 li > a > .svg-icon{
	height:32px;
	width:32px;
	margin-left:-8px;
	}



/*--- BOTÓN RESERVACION ---*/
nav.main ul.level-1 > li.reservacion a{
	padding: 0px 25px;
	margin-left: 10px;
	}

nav.main ul.level-1 > li.reservacion > * {
	background-color:var(--color-main);
	color:var(--color-white-90);
	border-radius:30px;
	}
nav.main ul.level-1 > li.reservacion > *:hover {
	background-color:var(--color-main-dark);
	color:var(--color-white);
	}

nav.main ul.level-1 > li.reservacion > * > .svg-icon{
	fill:var(--color-white-90);
	}

nav.main ul.level-1 > li.reservacion > *:hover > .svg-icon {
	fill:var(--color-white);
	}



/* SET: Design Buttons
------------------------------*/
nav.main ul.level-1 > li > * {
	color:var(--color-neutro)
	height:40px;
	line-height:40px;
	padding:0px 12px;
	/*text-transform:uppercase;*/
	}
nav.main ul.level-1 > li > *:hover {
	color:var(--color-main);
	}



/* icon */
nav.main ul.level-1 > li > * > .svg-icon {
	fill:var(--color-neutro);
	}
nav.main ul.level-1 > li > *:hover > .svg-icon {
	fill:var(--color-main);
	}




/*---------------------------------
/////   BOTONES ACTIVOS  /////
----------------------------------*/
body#inicio nav ul li[data-seccion='inicio'] a, 
body#inicio nav ul li[data-seccion='inicio'] a:hover,
body#villas nav ul li[data-seccion='villas'] a, 
body#villas nav ul li[data-seccion='villas'] a:hover,
body#villa-sencilla-2 nav ul li[data-seccion='villas'] a, 
body#villa-sencilla-2 nav ul li[data-seccion='villas'] a:hover,
body#villa-lujo-2 nav ul li[data-seccion='villas'] a, 
body#villa-lujo-2 nav ul li[data-seccion='villas'] a:hover,
body#villa-lujo-4 nav ul li[data-seccion='villas'] a, 
body#villa-lujo-4 nav ul li[data-seccion='villas'] a:hover,
body#villa-lujo-6 nav ul li[data-seccion='villas'] a, 
body#villa-lujo-6 nav ul li[data-seccion='villas'] a:hover,
body#villa-personalizada nav ul li[data-seccion='villas'] a, 
body#villa-personalizada nav ul li[data-seccion='villas'] a:hover,
body#amenidades nav ul li[data-seccion='amenidades'] a, 
body#amenidades nav ul li[data-seccion='amenidades'] a:hover,
body#servicios nav ul li[data-seccion='servicios'] a, 
body#servicios nav ul li[data-seccion='servicios'] a:hover,
body#nosotros nav ul li[data-seccion='nosotros'] a, 
body#nosotros nav ul li[data-seccion='nosotros'] a:hover,
body#galeria nav ul li[data-seccion='galeria'] a, 
body#galeria nav ul li[data-seccion='galeria'] a:hover,
body#contacto nav ul li[data-seccion='contacto'] a, 
body#contacto nav ul li[data-seccion='contacto'] a:hover   {
	background-color:transparent;
	color:var(--color-main); 
	}




/*---------------------------------------------------------------- 
MOVIL MENU  /////////////////////////////////////////////////////
----------------------------------------------------------------

SUSCRIPTIONS 
-------------------------------------------*/


@media only screen and (max-width:620px) {

/*--------------------------------------------
LOGO MOVIL //////////////////////////////////
-------------------------------------------*/
header.slide-to-left a.logotipo.movil,
header.slide-to-right a.logotipo.movil,
header.show-full a.logotipo.movil{
display:flex;
margin-bottom:40px;
width:50%;
}

header.slide-to-left a.logotipo.movil img,
header.slide-to-right a.logotipo.movil img,
header.show-full a.logotipo.movil img{
height:auto;
width:100%;
}


/*--------------------------------------------
NAV FULL ////////////////////////////////////

# slide-to-left
# slide-to-right
# show-full

-------------------------------------------*/
header.slide-to-left nav.main,
header.slide-to-right nav.main,
header.show-full nav.main {
align-items:center;
flex-direction:row;
justify-content:center;
height:100vh!important;
margin:0px 0px 0px 0px;
position:absolute;
bottom:0px;
top:0px;
padding:40px;
}


/*--------------------------------------------
MENU LISTA ///////////////////////////////////

# slide-to-left
# slide-to-right
# show-full

-------------------------------------------*/
/* UL LEVL 1
------------------------------*/
header.slide-to-left nav.main ul.level-1,
header.slide-to-right nav.main ul.level-1,
header.show-full nav.main ul.level-1{
align-items:center;
justify-content:flex-start;
flex-direction:row;
max-width:100%;
margin:0px 0px;
padding:0px 0px;
width:100%;
}

/*--- LEVEL 1  Li ---*/
header.slide-to-left nav.main ul.level-1 > li,
header.slide-to-right nav.main ul.level-1 > li,
header.show-full nav.main ul.level-1 > li{
margin:2px 0px;
width:100%;
}


/*--- LEVEL 1  Botón ---*/
header.slide-to-left nav.main ul.level-1 > li > *,
header.slide-to-right nav.main ul.level-1 > li > *,
header.show-full nav.main ul.level-1 > li > * {
height:26px;
line-height:26px;
margin:0px 0px;
padding:0px 0px;
text-align:left;
width:100%;
}

/*--- LEVEL 1  Botón icon ---*/
header.slide-to-left nav.main ul.level-1 > li > a > .svg-icon,
header.slide-to-right nav.main ul.level-1 > li > a > .svg-icon,
header.show-full nav.main ul.level-1 > li > a > .svg-icon {
	/* height:26px; */
	/* width:26px;*/
	margin-left:-4px;
	}


header.slide-to-left nav.main > ul > li:last-child,
header.slide-to-right nav.main > ul > li:last-child,
header.show-full nav.main > ul > li:last-child{
	border: 0px!important;
	}




/* SET:  Design buttons
------------------------------*/
 /* Nivel 1 */
header.slide-to-left nav.main,
header.slide-to-right nav.main,
header.show-full nav.main {
	background-color:var(--color-main);
	}


 /* Nivel 1 Boton */
nav.main ul.level-1 > li > *{
	color:var(--color-white-90);
	}


 /* Nivel 1 Boton icono */
nav.main ul.level-1 > li > * > .svg-icon{
	fill:var(--color-white-90);
	}


/* Nivel 1 Hover y Checked*/
nav.main ul.level-1 > li > *:hover{
	color:var(--color-white-90);
	}


nav.main ul.level-1 > li > *:hover > .svg-icon{
	fill:var(--color-white-90);
	}

/* Nivel 1 Separator */
nav.main > ul > li {
	border-bottom:1px solid var(--color-white-20);
	}









/*---------------------------------
/////   BOTONES ACTIVOS  /////
----------------------------------*/
body#inicio nav ul li[data-seccion='inicio'] a, 
body#inicio nav ul li[data-seccion='inicio'] a:hover,
body#villas nav ul li[data-seccion='villas'] a, 
body#villas nav ul li[data-seccion='villas'] a:hover,
body#amenidades nav ul li[data-seccion='amenidades'] a, 
body#amenidades nav ul li[data-seccion='amenidades'] a:hover,
body#servicios nav ul li[data-seccion='servicios'] a, 
body#servicios nav ul li[data-seccion='servicios'] a:hover,
body#galeria nav ul li[data-seccion='galeria'] a, 
body#galeria nav ul li[data-seccion='galeria'] a:hover,
body#contacto nav ul li[data-seccion='contacto'] a, 
body#contacto nav ul li[data-seccion='contacto'] a:hover   {
	background-color:transparent;
	color:var(--color-main-softer); 
	}



/*--- BOTÓN RESERVACION ---*/
nav.main ul.level-1 > li.reservacion{
	border: 1px solid red;
	float:left;
	width:auto!important;
	}

nav.main ul.level-1 > li.reservacion > * {
	background-color:var(--color-white);
	color:var(--color-main);
	padding:0px 20px 0px 10px!important;
	width:auto!important;
	}
nav.main ul.level-1 > li.reservacion > *:hover {
	background-color:var(--color-white);
	color:var(--color-main);
	}

nav.main ul.level-1 > li.reservacion > * > .svg-icon{
	fill:var(--color-main);
	height:26px;
	width:26px;
	}

nav.main ul.level-1 > li.reservacion > *:hover > .svg-icon {
	fill:var(--color-main);
	}






/*---------------------------------------------------------------- 
DROP DOWN /////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*--- LEVEL 1 Li dropdow ---*/
/* escondemos el checkbox de todos los niveles */
header.estandar li.li-dropdown input[type=checkbox]{
	display:none!important;
	}


/* icono drop ∧ */
header.estandar li.li-dropdown label i{
	font-style: normal;
	}
header.estandar li.li-dropdown label .svg-icon,
header.estandar li.li-dropdown li[data-seccion='back'] label .svg-icon{
	height:14px;
	margin-left:2px;
	width:14px;
	transition: transform 0.25s;
	}

/* icono drop ∧ rotamos  */
header.estandar li.li-dropdown input[type=checkbox]:checked + label .svg-icon{
	transform: scaleY(-1);
	}



/* LEVL 2 UL
------------------------------*/
nav.main ul.level-1 ul.level-2 {
	align-items:flex-start;
	border-radius: 0px 0px 8px 8px;
	flex-direction:column;
	flex-wrap: wrap;
	height:auto;
	justify-content:flex-start;
	list-style:none;
	margin:0px;
	opacity:0.0;
	padding:8px 16px 6px 16px;
	transition:all 0.18s;
	transition-delay:0.08s;
	visibility:hidden;
	position:absolute;
	bottom:auto;
	}
	
/* LEVL 2 UL (lo mostramos)
------------------------------*/
ul.level-2.show-level-2{
	display:flex!important;
	visibility:visible!important;
	opacity:1.0!important;
	}



/*--- LEVEL 2 UL DEFAULT --- 
ancho = 100% del boton padre (level 1) */
nav.main ul li.li-dropdown ul.level-2 {
	left:0px;
	top:40px; /* set altura botón padre */ 
	right:0px;
	width:100%;
	}


/*--- LEVEL 2 UL ancho personalizado data-seccion='drop-' ---  */
nav.main ul li[data-seccion='drop-2'] ul.level-2 {
	left:-100px!important;
	right:auto;
	min-width:100%;
	/* customize */
	width:300px;
	}


/*--- LEVEL 2 UL ancho al 100% ---  */
nav.main ul li[data-seccion='drop-full']{
	position:initial;
	}
nav.main ul li[data-seccion='drop-full'] ul.level-2 {
	left:0px!important;
	right:auto;
	top:90px; /* set altura header */ 
	width:100%;
	}


/*--- LEVL 2 UL full personalizado ---  */




/* LEVL 2 UL Li
------------------------------*/
nav.main ul.level-2 > li{
	list-style:none;
	margin:0px;
	padding:0px;
	width:100%;
	}



/*--- LEVEL 2  Botones ---*/
nav.main ul.level-2 > li > *{
	align-items:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	height:40px;
	line-height:40px;
	transition:all 0.12s;
	text-decoration:none;
	padding:0px 0px;
	position:relative;
	width:100%;
	}


/*--- LEVEL 2  Boton back ---*/
nav.main  ul.level-2 li[data-seccion='back']{
	display:none;
	}




/* Colors
------------------------------*/

/* Normal */

header.estandar li.li-dropdown input[type=checkbox] + label > .svg-icon{
	fill:var(--color-neutro);
	}



/* Hover y Checked */
header.estandar li.li-dropdown input[type=checkbox]:checked + * {
	color:var(--color-main);
	}

header.estandar li.li-dropdown input[type=checkbox]:hover + label  .svg-icon,
header.estandar li.li-dropdown input[type=checkbox]:checked + label  .svg-icon{
	fill:var(--color-main);
	}

/* Nivel 2 */
header.estandar ul.level-2 {
	background-color:var(--color-white);
	}

header.estandar ul.level-2 li > *{
	color:var(--color-neutro);
	}

nav.main ul.level-1 ul.level-2 li{
	border-bottom:1px solid var(--color-neutro);
	}
nav.main ul.level-1 ul.level-2 li:last-child {
	border-bottom:0px;
	}





/* Nivel 2 Hover y Checked*/
header.estandar ul.level-2 li > *:hover{
	color:var(--color-main);
	}







/*--------------------------------------------
MOVIL /// GENERAL ///////////////////////////
-------------------------------------------*/
/*--------------------------------------------
MOVIL /// DISEÑO ////////////////////////////

SUSCRIPTIONS 
-------------------------------------------*/



/*--- LEVEL 1  li-dropdown reset posición---*/
header.slide-to-left nav.main > ul li.li-dropdown,
header.slide-to-right nav.main > ul li.li-dropdown,
header.show-full nav.main > ul li.li-dropdown{
	position:initial!important;
	}



/* icono drop ∧ rotamos  */
header.slide-to-left li.li-dropdown label .svg-icon,
header.slide-to-lef li.li-dropdown input[type=checkbox]:checked label .svg-icon,
header.slide-to-right li.li-dropdown label .svg-icon,
header.slide-to-right li.li-dropdown input[type=checkbox]:checked label .svg-icon,
header.show-full li.li-dropdown label .svg-icon,
header.show-full li.li-dropdown input[type=checkbox]:checked label .svg-icon{
	transition: transform 0.0s;
	transform: rotate(-90deg)!important;
	}




/* LEVEL 2 UL
------------------------------*/
header.slide-to-left nav.main ul.level-1 ul.level-2,
header.slide-to-right nav.main ul.level-1 ul.level-2,
header.show-full nav.main ul.level-1 ul.level-2{
	align-items:flex-start!important;
	border-radius:0px 0px 0px 0px;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center!important;
	height:100%;
	padding:40px;
	bottom:0px!important;
	left:0px!important;
	right:0px!important;
	top:0px!important;
	width:100%;
	z-index:10;
	}



/* LEVL 2 UL botón back mostramos  */
header.slide-to-left ul.level-2 li[data-seccion='back'],
header.slide-to-right ul.level-2 li[data-seccion='back'],
header.show-full ul.level-2 li[data-seccion='back']{
	display:flex!important;
	}

/* LEVL 2 UL botón back mostramos  */
header.slide-to-left ul.level-2 li[data-seccion='back'] label,
header.slide-to-right ul.level-2 li[data-seccion='back'] label,
header.show-full ul.level-2 li[data-seccion='back'] label{
	color:#fff!important;
	display:flex!important;
	}

/* LEVEL 2 icono drop rotamos  */
header.slide-to-left ul.level-2 li[data-seccion='back'] label .svg-icon,
header.slide-to-right ul.level-2 li[data-seccion='back'] label .svg-icon,
header.show-full ul.level-2 li[data-seccion='back'] label .svg-icon{
	transform: rotate(90deg)!important;
	}







/* icono drop ∧ */
header.estandar li.li-dropdown input[type=checkbox] + label > .svg-icon{
	fill:var(--color-white-90);
	}


/* Nivel 1 Hover y Checked*/
header.estandar li.li-dropdown input[type=checkbox]:checked + * {
	color:var(--color-white-90);
	}



/* Nivel 2 */
header.estandar ul.level-2 {
	background-color:var(--color-neutro-darker);
	}

header.estandar ul.level-2 li > *{
	color:var(--color-white-90);
	}

nav.main ul.level-1 ul.level-2 li,
header.estandar ul.level-2 li[data-seccion='back']{
	border-bottom:1px solid var(--color-neutro-softer)!important;
	}

header.estandar  nav.main ul.level-1 ul.level-2 li:last-child {
	border-bottom:0px;
	}


/* Nivel 2 Hover */
header.estandar ul.level-2 li > *:hover{
	color:var(--color-white-90);
	}

/* Nivel 2 Checked*/
header.estandar li.li-dropdown input[type=checkbox]:checked + *{
	color:var(--color-white-60);
	}

header.estandar li[data-seccion='back'] input[type=checkbox] + label .svg-icon,
header.estandar li[data-seccion='back'] input[type=checkbox]:checked + label .svg-icon{
	fill:var(--color-white-60)!important;
	}

/* Botón back */
header.estandar ul.level-2 li[data-seccion='back'] > *,
header.estandar ul.level-2 li[data-seccion='back'] > *:hover,
header.estandar ul.level-2 li[data-seccion='back'] > *:visited{
	color:var(--color-white-60)!important;
	}


}





/*--------------------------------------------
EXTRAS //////////////////////////////////////
-------------------------------------------*/

/* LEVEL  1 BOX CONTACT
------------------------------------------*/

nav.main ul.level-1 > li.box-contact > *:hover {
	color:var(--color-neutro);
	}




nav.main ul.level-1 li.box-contact{
	margin:0px;
	padding:0px;
	width:auto!important;
	}


nav.main ul.level-1 li.box-contact .box{
	align-items:flex-start;
	cursor:initial;/*or pointer if a*/
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	justify-content:flex-start;
	margin:0px;
	padding:0px;
	text-decoration:none;
	width:auto!important;
	}
	@media only screen and (max-width:620px) {
	nav.main ul.level-1 li.box-contact .box{
	justify-content:center;
	margin-top:40px;
	width:100%!important;
	}}


nav.main ul.level-1 li.box-contact .box .svg-icon{
	fill:#4dc247;
	height:40px;
	padding:0px;
	width:40px;
	}
	@media only screen and (max-width:620px) {
	nav.main ul.level-1 li.box-contact .box .svg-icon{
	height:60px;
	margin-left:-16px;
	width:60px;
	}}


nav.main ul.level-1 > li.box-contact div.box:hover .svg-icon{
	fill:#4dc247;
	}


nav.main ul.level-1 li.box-contact .box p{
	display:flex;
	align-items:flex-start;
	justify-content:center;
	flex-direction:column;
	height:40px;
	line-height:15px;
	margin:0px;
	padding:0px 0px;
	position:relative;
	width:auto;
	}

	@media only screen and (max-width:620px) {
	nav.main ul.level-1 li.box-contact .box p{
	height:60px;
	}}


nav.main ul.level-1 li.box-contact .box p span{
	position:relative;
	text-align:left;
	width:100%;
	}


nav.main ul.level-1 li.box-contact .box p span:nth-child(1){
	font-size:0.6em;
	width:100%;
	}

nav.main ul.level-1 li.box-contact .box p span:nth-child(2){
	font-weight:600;
	font-size:0.9em;
	width:100%;
	}


header.standar nav.main > ul > li.box-contact > *:hover  {
	color:var(--color-white);
	}


	@media only screen and (max-width:620px) {

nav.main ul.level-1 > li.box-contact .svg-icon,
nav.main ul.level-1 > li.box-contact div.box:hover .svg-icon{
	fill:#4dc247;
	}


}



/*---------------------------------------------------------------- 
//////////////////////////////////////////////////// END HEADER
----------------------------------------------------------------*/





/*---------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////
SECCIONES  ///////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
ALL  /////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*--------------------------------------------
BANNER COVER ///////////////////////////////
-------------------------------------------*/
.banner-cover{
	align-items:flex-start;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	max-width:100%;
	overflow:hidden;
	width:100%;
	position:relative;
	}


/* Inside
------------------------------------------*/
.banner-cover .inside{
	align-items:flex-start;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	height:100%;
	padding:5vw 5vw;
	position:relative;
	width:100%;
	}


/* Ancho 
------------------------------------------
banner-cover.in, wide, thin, from: www/style.css 

*/


/* Ancho full movil
------------------------------------------
Agregar clase si queremos forzar ancho full en movil 
*/

@media only screen and (max-width:620px) {
	.movil-full {
	padding-left:0px!important;
	padding-right:0px!important;
	}
}



/* Altura 
------------------------------------------*/
.banner-cover{
	height:50vh;
	min-height:320px;
	}
	@media only screen and (max-width:620px) {
	.banner-cover{
	height:60vh;
	min-height:380px;
	}}


/* Altura Tall
------------------------------------------*/
.banner-cover.tall {
	height:65vh;
	min-height:420px;
	}
	@media only screen and (max-width:620px) {
	.banner-cover.tall{
	height:60vh;
	min-height:380px;
	}}


/* Altura short
------------------------------------------*/
.banner-cover.short {
	height:40vh;
	min-height:260px;
	}
	@media only screen and (max-width:620px) {
	.banner-cover.short{
	height:30vh;
	min-height:260px;
	}}



/* Imagen
------------------------------------------*/
.banner-cover .inside > picture{
	height:auto;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	width:auto;
	z-index:1;
	}

.banner-cover .inside > picture img{
	height:100%;
	width:100%;
	object-fit:cover; /* set */
	object-position:center center; /* set */
	}



/* SET: DISENO
------------------------------------------*/
.banner-cover{
	padding-bottom:0px; /* si queremos margen interno abajo */
	padding-top:0px;  /* si queremos margen interno arriba */
	}

.banner-cover{
	background-image:var(--color-white);
	}

.banner-cover .inside{
	background-color:var(--color-white); /* optional  */
	}

.banner-cover .inside picture{
	opacity:1.0; /* optional  */
	}


.banner-cover div.welcome > *{
	padding:0px;
	width:50%;
	}
	@media only screen and (max-width:1020px) {
	.banner-cover div.welcome > *{
	width:60%;
	}}
	@media only screen and (max-width:920px) {
	.banner-cover div.welcome > *{
	width:70%;
	}}


/* Textos */
.banner-cover .welcome .title{
	color:var(--color-white);
	font-size:1.8em;
	font-weight:500;
	text-align:left;
	margin:0px;
	padding:0px;
	}

.banner-cover .welcome .subtitle{
	color:var(--color-main);
	font-size:1.6em;
	font-weight:300;
	text-align:left;
	margin:0px;
	padding:0px;
	}

.banner-cover .welcome p{
	color:var(--color-white);
	font-size:1em;
	text-align:left;
	}



/* MOVIL: OPACITY
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-cover.movil-opacity .inside picture{
	opacity:1.0!important; /* set  */
	}
}





/* MOVIL: GRADIENT
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-cover.movil-gradient .inside{
	padding:0px 0px;
	}
	.banner-cover.movil-gradient div.welcome{
	background-image:linear-gradient(to bottom, var(--color-black-20) 40%, var(--color-black) 102%);
	justify-content:flex-end;
	height:100%;
	padding:5vw 5vw;
	width:100%;
	}
	.banner-cover.movil-gradient div.welcome > *{
	width:100%;
	}
	.banner-cover.movil-gradient div.welcome .title{
	color: var(--color-white-80);
	font-size:1.4em;
	}
	.banner-cover.movil-gradient div.welcome .subtitle{
	color: var(--color-second-soft);
	font-size:1.2em;
	}
	.banner-cover.movil-gradient div.welcome p{
	color: var(--color-white-60);
	font-size:1em;
	}
}





/* MOVIL: BOX
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-cover.movil-box,
	.banner-cover.movil-box .swiper-slide{
	}
	.banner-cover.movil-box .inside{
	justify-content:flex-end;
	padding-bottom:0px;
	padding-left:0px;
	padding-right:0px;
	width:100%;
	}
	.banner-cover.movil-box .inside picture{
	opacity:0.8; /* set  */
	}
	.banner-cover.movil-box div.welcome{
	background-color:var(--color-black-50);
	padding:5vw 5vw;
	width:100%;
	}
	.banner-cover.movil-box div.welcome > *{
	width:100%;
	}
	.banner-cover.movil-box div.welcome .title{
	color: var(--color-white-80);
	font-size:1.4em;
	}
	.banner-cover.movil-box div.welcome .subtitle{
	color: var(--color-second-soft);
	font-size:1.2em;
	}
	.banner-cover.movil-box div.welcome p{
	color: var(--color-white-60);
	font-size:1em;
	}
}



/* Swiper slider
------------------------------------------*/
.banner-cover .swiper-container {
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	justify-content:flex-start;
	position:relative;
	height:100%;
	width:100%;
	}



/* Welcome
------------------------------------------*/
.banner-cover div.swiper-container div.swiper-wrapper > div.welcome{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	justify-content:center;
	z-index:10;
	position:absolute;
	bottom:auto;
	left:0px;
	right:0px;
	top:50%;
	width:100%;
	}


.banner-cover div.swiper-container div.swiper-wrapper > div.welcome > *{
	color:var(--color-white);
	width:100%;
	}

.banner-cover div.swiper-container div.swiper-wrapper > div.welcome h1.subtitle-1{
	font-size:var(--fs-large);
	}

.banner-cover div.swiper-container div.swiper-wrapper > div.welcome h2.subtitle-1{
	background-color:transparent!important;
	font-size:var(--fs-xxlarge);
	}

.banner-cover div.swiper-container div.swiper-wrapper > div.welcome h1.subtitle-1:after{
	background-color:var(--color-white);
	}
.banner-cover div.swiper-container div.swiper-wrapper > div.welcome h2.subtitle-1:after{
	background-color: transparent!important;
	}



.banner-cover .swiper-slide {
	align-items: center;
	display:flex;
	flex-direction: column;
	justify-content:center;
    }


.banner-cover .swiper-pagination-bullet {
	background-color:var(--color-white);
	}

.banner-cover .swiper-pagination-bullet-active {
	background-color:var(--color-main);
	}



.banner-cover .swiper-container .swiper-wrapper picture{
	height:auto;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	width:auto;
	}

.banner-cover .swiper-container .swiper-wrapper picture img{
	height:100%;
	width:100%;
	object-fit:cover;
	}




/*--------------------------------------------
TITULOS  ////////////////////////////////////
-------------------------------------------*/
.title-1,
.title-2 {
	font-size:1.6rem;
	font-weight:var(--fw-bold);
	letter-spacing:1px;
	text-transform:uppercase;
	text-align: center;
	position:relative;
	}


.subtitle-1 {
	font-size:1.1rem;
	font-weight:var(--fw-normal);
	letter-spacing:3px;
	text-transform:uppercase;
	text-align: center;
	position:relative;
	}


.title-2:after,
.subtitle-1:after{
	background-color:var(--color-main);
	border-radius: 3px;
	content:"";
	height: 6px;
	margin-left:-50px;
	width:100px;
	align-self: center;
	position:absolute;
	bottom:-16px;
	top:auto;
	left:50%;
	right:auto;
	}




.title-2 {
	margin-bottom:20px;
	}






/*--------------------------------------------
SOCIAL BAR  /////////////////////////////////
-------------------------------------------*/
ul.social-bar {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:0.8rem;
	justify-content:center; /* or flex-end */
	list-style:none;
	gap:16px;
	height:auto;
	padding:0px;
	width:100%/*set*/
	}


/* Posibles items*/
ul.social-bar li,
ul.social-bar li a,
ul.social-bar li > *,
ul.social-bar li span,
ul.social-bar a {
	text-decoration:none;
	font-size:1em;
	line-height:50px;
	}

ul.social-bar li{
	height: auto;
	list-style:none;
	margin:0px;
	padding:0px;
	width:auto;
	}

ul.social-bar li.separator{
	display:block;
	background-color:var(--color-neutro);
	height:16px;
	width:1px;
	}

ul.social-bar li > *{
	align-items: center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	height:auto;
	line-height:32px;
	overflow:hidden;
	width:auto;
	}

/* all links  */
ul.social-bar a {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	}


/* all icons  */
ul.social-bar .svg-icon {
	height:32px;
	padding:2px;/* set */
	width:32px;
	}

/* link icon + text */
ul.social-bar li > * > span{
	display:block;
	height:50px;
	margin-left:4px;/*or rigth*/
	width:auto;
	}




/* Diseño
------------------------------*/
ul.social-bar * {
	color:var(--color-main);
	}
ul.social-bar li.separator{
	background-color:var(--color-main-dark);
	}
ul.social-bar .svg-icon {
	border-radius:50%;
	background-color:var(--color-main);
	fill:var(--color-white);
	}

/* Hover */
ul.social-bar a:hover {
	color:var(--color-white);
	}

ul.social-bar a:hover .svg-icon {
	background-color:var(--color-main-dark);
	fill:var(--color-white);
	}

/*Break center*/
@media only screen and (max-width:720px) {
	ul.social-bar {
	justify-content:center;
	}
}




/* 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.separator{
	display:block; 
	height:1px;
	width:100%;
	}




/*--------------------------------------------
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:fixed;
	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;
	}



/*--------------------------------------------
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,
#tab11:checked ~ #content11,
#tab12:checked ~ #content12,
#tab13:checked ~ #content13,
#tab14:checked ~ #content14,
#tab15:checked ~ #content15,
#tab16:checked ~ #content16{
  display:flex!important;
	}


.tab-contenido{
	align-items:flex-start;
	display:none;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:flex-start;
	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 {
	background-color:#fff;
	}


/* 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:var(--fw-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-main);/*set*/
	opacity:0.6;
	cursor: pointer;
	}


/* Pestaña actva */
div.tab-box > input:checked + label {
	color:var(--color-black);
	border-top:1px solid var(--color-main)!important;/* set */
	border-bottom: 1px solid var(--color-main)!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-main);
	fill:var(--color-main);
	}
div.tab-box > input:checked + label .svg-icon{
	border:1px solid var(--color-black);
	fill:var(--color-black);
	}



.tab-contenido{
	padding:20px 0px; /* set */
	border-top:1px solid var(--color-neutro-soft); /* set */
	}



/* Small
------------------------------*/
div.tab-box.small > label {
	color:var(--color-neutro-soft);/*set*/
	border-top:1px solid var(--color-white);/* 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-second);/*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-softer)!important; /* set */
	padding:6px 0px; /* set */
	}




/*--------------------------------------------
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 */
	}}





/*--------------------------------------------
PANEL INCLUYE  ///////////////////////////
-------------------------------------------*/

.panel-incluye {
	justify-content:center!important;
}


@media only screen and (max-width:620px) {

	.panel-incluye {
	gap:40px!important;
	}

	.panel-incluye .item{
		flex-grow:9;
	width:auto!important;
	}
}




@media only screen and (max-width:420px) {

	.panel-incluye {
	gap:20px!important;
	}

	.panel-incluye .item{
	width:100%!important;
	}
}


/*--------------------------------------------
PANEL DESCRIPCION  ///////////////////////////
-------------------------------------------*/
article.panel-description {
	background-color:var(--color-white);
	align-items:center;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content: center;
	padding-bottom:40px;
	padding-top:40px;
	width:100%;
	}	



article.panel-description .welcome{
	background-color:var(--color-main);
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	margin-top:-18vh;
	max-width:100%;
	margin-bottom:40px;
	padding:40px;
	max-width:600px;
	width:auto;
	}	


article.panel-description .welcome .title-1{
	color:var(--color-white);
	}	

article.panel-description .welcome .subtitle-1{
	color:var(--color-white);
	}	

article.panel-description .welcome .subtitle-1:after{
	background-color:var(--color-white);
	}	


article.panel-description .welcome p{
	color:var(--color-white);
	text-align:center;
	padding:40px 0px 0px 0px;
	}	



/*--------------------------------------------
PANEL PRECIO  ///////////////////////////
-------------------------------------------*/
article.panel-precio {
	background-color:var(--color-second-soft);
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content: center;
	padding-bottom:40px;
	padding-top:40px;
	width:100%;
	z-index:99;
	}	



article.panel-precio .welcome{
	background-color:var(--color-main);
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	margin-top:-18vh;
	max-width:100%;
	margin-bottom:40px;
	padding:40px;
	max-width:600px;
	width:auto;
	}	


article.panel-precio .welcome .title-1{
	color:var(--color-white);
	}	

article.panel-precio .welcome .subtitle-1{
	color:var(--color-white);
	}	

article.panel-precio .welcome .subtitle-1:after{
	background-color:var(--color-white);
	}	


article.panel-precio .welcome p{
	color:var(--color-white);
	text-align:center;
	padding:40px 0px 0px 0px;
	}	





/*--------------------------------------------
PANEL PRECIOS  ///////////////////////////
-------------------------------------------*/
.panel-precios {
	background-color:var(--color-white);
	display:flex;
	flex-flow:row wrap;
	gap:20px;
	padding-bottom:40px;
	padding-top:40px;
	width:100%;
	z-index:99;
	}	


.panel-precios article{
	background-color:var(--color-main-softer);
	border-radius:12px;
	display:flex;
	flex-flow:row wrap;
	overflow:hidden;
	width:100%;
	}	

.panel-precios article h3,
.panel-precios article h4{
	display:flex;
	flex-flow:row wrap;
	font-size:1.4em;
	padding:8px 12px;
	width:100%;
	}	

.panel-precios article h3{
	background-color:var(--color-main);
	color:var(--color-white);
	}	

.panel-precios article p{
	color:var(--color-black);
	font-size:1.2em;
	padding:20px;
	}	

/*
.panel-precios article:nth-child(even){
	background-color:var(--color-second-softer);
	}	

.panel-precios article:nth-child(even) h3{
	background-color:var(--color-second-dark);
	}	
*/

/*--------------------------------------------
PANEL MENSAJE  ///////////////////////////
-------------------------------------------*/
.panel-mensaje {
	background-color:var(--color-black);
	align-items:center;
	color:var(--color-white);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:1em;
	justify-content: center;
	padding-block:5px;
	position:fixed;
	top:0px;
	bottom:auto;
	left:0px;
	right:0px;
	width:100%;
	z-index:99;
	}	




/*--------------------------------------------
GALLERY ROWS  ///////////////////////////////
-------------------------------------------*/
.gallery-rows{
	background-color:var(--color-neutro-softer);
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:10px;
	padding-top:20px;
	padding-bottom:20px;
	width:100%;
	}


.gallery-rows .item{
	flex-grow:99;
	aspect-ratio: 2 / 1;
	}

.gallery-rows .item img{
	height:100%;
	object-fit:cover;
	width:100%;
	}



/* SET: TAMAÑOS
------------------------------------------*/
.gallery-rows .item:nth-child(1){
	width:100%;
	}

.gallery-rows .item:nth-child(2),
.gallery-rows .item:nth-child(3),
.gallery-rows .item:nth-child(4),
.gallery-rows .item:nth-child(5),
.gallery-rows .item:nth-child(6){
	width:48%;
	}


.gallery-rows .item:nth-child(7),
.gallery-rows .item:nth-child(8){
	width:48%;
	}

body#villa-decorada .gallery-rows .item:nth-child(1),
body#villa-decorada .gallery-rows .item:nth-child(2){
	width:48%;
	}


/* BREAK : MOVIL
------------------------------------------*/
	@media only screen and (max-width:620px) {
	.gallery-rows .item:nth-child(4),
	.gallery-rows .item:nth-child(5),
	.gallery-rows .item:nth-child(6){
	aspect-ratio: 2 / 1;
	width:48%;
	}
	}


	@media only screen and (max-width:420px) {
	.gallery-rows .item:nth-child(2),
	.gallery-rows .item:nth-child(3){
	aspect-ratio: 2 / 1;
	width:100%;
	}

	.gallery-rows .item:nth-child(4),
	.gallery-rows .item:nth-child(5),
	.gallery-rows .item:nth-child(6){
	aspect-ratio: 2 / 1;
	width:100%;
	}

	.gallery-rows .item:nth-child(7),
	.gallery-rows .item:nth-child(8){
	aspect-ratio: 2 / 1;
	width:100%;
	}
	}



/*---------------------------------------------------------------- 
INICIO  /////////////////////////////////////////////////////////
----------------------------------------------------------------*/
body#inicio .banner-cover {z-index:1!important;}
.banner-cover {z-index:10;}
article.panel-description  {z-index:10;}
.panel-zigzag {z-index:11;}
.banner-reservar {z-index:12;}
.panel-3cols {z-index:13;}
.panel-amenidades {z-index:13;}
.cards-tres {z-index:15;}
.panel-contacto-1 {z-index:15;}
footer {z-index:16;}



/*--------------------------------------------
BANNER COVER ///////////////////////////////
-------------------------------------------*/
body#inicio .banner-cover{
	position:fixed;
	bottom:auto;
	top:0px
	left: 0px;
	right:0px;
	}



/* Altura Tall
------------------------------------------*/
body#inicio .banner-cover.tall {
	height:95vh;
	}
	@media only screen and (max-width:620px) {
	body#inicio .banner-cover.tall{
	height:90vh;
	}}




/*--------------------------------------------
PANEL DESCRIPCION  ///////////////////////////
-------------------------------------------*/
body#inicio article.panel-description {
	background-color:var(--color-white);
	margin-top:80vh;
	}	



body#inicio  article.panel-description .welcome{
	background-color:var(--color-white);
	padding-left:80px;
	padding-right:80px;
	}	



body#inicio article.panel-description .welcome img{
	display: flex;
	height:auto;
	max-width:80%;
	width:160px;
	}


body#inicio article.panel-description  p{
	color:var(--color-neutro-dark);
	text-align:center;
	}	




/*-------------------------------------------
PANEL /// ZIG ZAG //////////////////////////
-------------------------------------------*/
.panel-zigzag {
	background-color:var(--color-white);
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	list-style: none;
	gap:0px;
	margin:0px 0px; /*set*/
	padding-bottom:80px;
	padding-top:40px;
	width:100%;
	}

.panel-zigzag > .title-1 {
	margin-bottom:40px;
	}

.panel-zigzag .item {
	background-color:var(--color-neutro-softer);
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	height:auto;
	justify-content:space-between;
	list-style:none;
	overflow:hidden;
	padding:0px 0px;
	width:100%;
	}



/* order */
.panel-zigzag .item:nth-child(even) .info{
	order:2;
	}
.panel-zigzag .item:nth-child(even) .imagen{
	order:1;
	}




/* Ancho
------------------------------*/
.panel-zigzag .info {
	width:50%;
	}
.panel-zigzag .imagen {
	width:50%;
	}


/* Info
------------------------------*/
.panel-zigzag .info {
	align-items:center;
	display:flex;
	flex-direction:column;
	justify-content:center;
	flex-wrap:wrap;
	height:auto;
	text-align:justify;
	padding:40px 4vw 20px 4vw; /*set*/
	}


/* Imagen
------------------------------*/
.panel-zigzag .imagen {
	height:auto;
	overflow:hidden;
	}


/*---------- (opcion imagen cover) */ 
.panel-zigzag .item  {
	align-items:stretch!important;
	}

.panel-zigzag .imagen{
	height:auto;
	}

.panel-zigzag .imagen img{
	height:100%;
	width:100%;
	object-fit:cover;
	}




/*---------- (opcion imagen contain)
.panel-zigzag .item  {
	align-items:stretch;
	}

.panel-zigzag .imagen{
	height:auto;
	max-height:220px;
	}

.panel-zigzag .imagen img{
	height:100%;
	width:100%;
	object-fit:contain;
	}



.panel-zigzag .info .title{
	font-size:1.8rem;
	font-weight:500;
	margin-top: 30px;
	letter-spacing:1px;
	text-transform:uppercase;
	text-align: center;
	}

.panel-zigzag .info .subtitle{
	font-size:1.1rem;
	font-weight:400;
	letter-spacing:3px;
	text-transform:uppercase;
	text-align: center;
	} 


.panel-zigzag .info .separador{
	border-radius: 3px;
	margin: 10px 50px;
	height: 6px;
	width: 100px;
	background-color:var(--color-main);
	align-self: center;
	}
*/ 



.panel-zigzag .info p{
	font-size:1rem;
	font-weight:var(--fw-normal);
	margin-top:20px;
	text-align:center;
	}


.panel-zigzag .info a.informacion{
	align-self: center;
	align-items:center;
	background-color:var(--color-main);
	border-radius: 30px;
	color:var(--color-white-90);
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size: 0.8rem;
	font-weight: 300;
	justify-content:flex-start;
	line-height: 30px;
	margin:40px 0px 0px 0px;
	padding: 0px 20px;
	transition:all 0.12s;
	text-decoration:none;
	width:auto;
	}


.panel-zigzag .info a.informacion:hover{
	background-color:var(--color-main-dark);
	}



/* Rompemos a movil */
@media only screen and (max-width:620px) {
	.panel-zigzag .info,
	.panel-zigzag .imagen {
	width:100%;
	}
	.panel-zigzag .item:nth-child(odd) .info{
	order:2;
	}
	.panel-zigzag .item:nth-child(odd) .imagen{
	order:1;
	}
	.panel-zigzag .item:nth-child(even) .info{
	order:2;
	}
	.panel-zigzag .item:nth-child(even) .imagen{
	order:1;
	}
	}



/*--------------------------------------------
BANNER RESERVAR ///////////////////////////////
-------------------------------------------*/
.banner-reservar{
	background-color:var(--color-white);
	align-items:flex-start;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	overflow:hidden;
	position:relative;
	max-width:100%;
	width:100%;
	}


/* Inside
------------------------------------------*/
.banner-reservar .inside{
	align-items:flex-start;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	height:100%;
	padding:5vw 5vw;
	position:relative;
	width:100%;
	}




/* Ancho 
------------------------------------------
banner-reservar.in, wide, thin, from: www/style.css 

*/



/* Ancho full movil
------------------------------------------
Agregar clase si queremos forzar ancho full en movil 
*/

@media only screen and (max-width:620px) {
	.movil-full {
	padding-left:0px!important;
	padding-right:0px!important;
	}
}





/* Altura 
------------------------------------------*/
.banner-reservar{
	height:50vh;
	min-height:320px;
	}
	@media only screen and (max-width:620px) {
	.banner-reservar{
	height:60vh;
	min-height:380px;
	}}


/* Altura Tall
------------------------------------------*/
.banner-reservar.tall {
	height:65vh;
	min-height:420px;
	}
	@media only screen and (max-width:620px) {
	.banner-reservar.tall{
	height:60vh;
	min-height:380px;
	}}


/* Altura short
------------------------------------------*/
.banner-reservar.short {
	height:40vh;
	min-height:260px;
	}
	@media only screen and (max-width:620px) {
	.banner-reservar.short{
	height:30vh;
	min-height:260px;
	}}



/* Imagen
------------------------------------------*/
.banner-reservar .inside > picture{
	height:auto;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	width:auto;
	z-index:1;
	}

.banner-reservar .inside > picture img{
	height:100%;
	width:100%;
	object-fit:cover; /* set */
	object-position:center center; /* set */
	}



/* Welcome
------------------------------------------*/
.banner-reservar div.welcome{
	align-items:center;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	gap:12px;
	z-index:10;
	width: 100%;
	}




/* SET: DISENO
------------------------------------------*/
.banner-reservar{
	padding-bottom:20px; /* si queremos margen interno abajo */
	padding-top:20px;  /* si queremos margen interno arriba */
	}



.banner-reservar{
	background-color:var(--color-white); /* optional  */
	}

.banner-reservar .inside{
	background-color:var(--color-neutro-darker); /* optional  */
	}

.banner-reservar .inside picture{
	opacity:0.6; /* optional  */
	}


/* Textos */
.banner-reservar .welcome .subtitle{
	color:var(--color-white);
	font-size:1.6em;
	font-weight:400;
	text-align:center;
	margin:0px;
	padding:0px;
	width:100%;
	}


/*--- BOTÓN RESERVA ---*/
.banner-reservar ul.menu-button-base li a{
	background-color:var(--color-white);
	color:var(--color-main);
	}
.banner-reservar ul.menu-button-base li a .svg-icon{
	fill:var(--color-main);
	}

.banner-reservar ul.menu-button-base li a:hover{
	background-color:var(--color-white);
	color:var(--color-main-dark);
	}
.banner-reservar ul.menu-button-base li a:hover .svg-icon{
	fill:var(--color-main-dark);
	}







/* MOVIL: OPACITY
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-reservar.movil-opacity .inside picture{
	opacity:0.4!important; /* set  */
	}
}





/* MOVIL: GRADIENT
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-reservar.movil-gradient .inside{
	padding:0px 0px;
	}
	.banner-reservar.movil-gradient div.welcome{
	background-image:linear-gradient(to bottom, var(--color-black-20) 40%, var(--color-black) 102%);
	justify-content:flex-end;
	height:100%;
	padding:5vw 5vw;
	width:100%;
	}
	.banner-reservar.movil-gradient div.welcome > *{
	width:100%;
	}
	.banner-reservar.movil-gradient div.welcome .subtitle{
	color: var(--color-second-soft);
	font-size:1.2em;
	}
}





/* MOVIL: BOX
------------------------------------------*/
@media only screen and (max-width:620px) {
	.banner-reservar.movil-box,
	.banner-reservar.movil-box .swiper-slide{
	}
	.banner-reservar.movil-box .inside{
	justify-content:flex-end;
	padding-bottom:0px;
	padding-left:0px;
	padding-right:0px;
	width:100%;
	}
	.banner-reservar.movil-box .inside picture{
	opacity:0.8; /* set  */
	}
	.banner-reservar.movil-box div.welcome{
	background-color:var(--color-black-50);
	padding:5vw 5vw;
	width:100%;
	}
	.banner-reservar.movil-box div.welcome > *{
	width:100%;
	}
	.banner-reservar.movil-box div.welcome .subtitle{
	color: var(--color-second-soft);
	font-size:1.2em;
	}
}




/*--------------------------------------------
PANEL AMENIDADES  ////////////////////////
-------------------------------------------*/
.panel-amenidades{
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:5vw;
	padding-top:40px;
	padding-bottom:40px;
	width:100%;
	}


.panel-amenidades article,
.panel-amenidades aside {
	min-width:310px;
	}


.panel-amenidades article {
	flex-grow:9;
	width:50%;
	}

.panel-amenidades aside {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	gap:12px;
	height:auto;
	width:30%;
	}

.panel-amenidades aside img{
	width:100%;
	}



/* BREAK: MOVIL
------------------------------------------*/
@media only screen and (max-width:620px) {

}




/* SET: DISENO
------------------------------------------*/
.panel-amenidades{
	background-color:var(--color-second-softer);
	}


.panel-amenidades article {
	font-size:var(--fs-regular);
	font-weight:var(--fw-normal);
	}


.panel-amenidades article .title{
	font-size:var(--fs-large);
	font-weight:var(--fw-bold);
	}



.panel-amenidades aside {
	padding:0px;
	}

.panel-amenidades aside img{
	border:5px solid var(--color-white);
	}




/*-------------------------------------------
PANEL /// 3COLS  ////////////////////////////
-------------------------------------------*/
.panel-3cols {
	background-color:var(--color-white);
	align-items:stretch;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:0vmax;/*set*/
	width:100%;
	z-index:10;
	}

.panel-3cols .col {
	align-items:flex-start;
	background-color:var(--color-white);/*set*/
	color:inherit;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	text-decoration:none;
	height:auto;
	position:relative;
	}


/* Tamanos
------------------------------------------*/
.panel-3cols .col-uno{
	background-color:var(--color-neutro-softer);/*set*/
	order:1;
	width:30%; /*set*/
	z-index:1;
	}

.panel-3cols .col-dos{
	order:2;
	width:40%;/*set*//*set*/
	z-index:10;
	}

.panel-3cols .col-tres{
	background-color:var(--color-neutro-softer);/*set*/
	order:3;
	width:30%;/*set*/
	z-index:1;
	}


/* Break 1
------------------------------------------*/
@media only screen and (max-width:820px) {
	.panel-3cols .col-uno{
	order:1;	
	width:50%; /*set*/
	}

.panel-3cols .col-dos{
	order:3;
	width:100%;/*set*//*set*/
	}

.panel-3cols .col-tres{
	order:2;
	width:50%;/*set*/
	}
}


/* Break 2
------------------------------------------*/
@media only screen and (max-width:620px) {
	.panel-3cols .col-uno{
	height:400px;
	order:1;	
	width:50%; /*set*/
	}

.panel-3cols .col-dos{
	order:3;
	width:100%;/*set*//*set*/
	}

.panel-3cols .col-tres{
	height:400px;
	order:2;
	width:50%;/*set*/
	}
}




/* Info (usamos article o anchor)
------------------------------------------*/
.panel-3cols .amenidades{
	background-color:var(--color-main);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	margin-top:-40px;
	max-width:100%;
	padding:60px 40px 40px 40px;
	width:100%;
	}

.panel-3cols .amenidades .title-1{
	color:var(--color-white);
	}

.panel-3cols .amenidades .subtitle-1:after{
	background-color:var(--color-white);
	}	

.panel-3cols .amenidades p{
	color:var(--color-white);
	font-weight:var(--fw-normal);
	line-height:1.4em;
	margin-top:10px;
	}

.panel-3cols  article,
.panel-3cols  a.col  {
	padding:0px;
	}


.panel-3cols  article  p,
.panel-3cols  a.col p{
	font-size:1rem;
	font-weight:normal;
	margin-top: 30px;
	line-height:2.2em;
	text-align: center;
	padding-left:20px;
	padding-right:20px;
	width:100%;
	}




.panel-3cols  article  p.ls span{
	display:inline-block;
	font-weight:var(--fw-thin);
	transform: translateY(-10px);
	}


/* Link */
.panel-3cols  article .link,
.panel-3cols  article a{ 
	color:var(--color-neutro-soft);/*set*/
	font-size:0.7em;
	text-transform:uppercase;
	text-decoration:none;
	}


/* If  is anchor */
.panel-3cols  a.col{
	text-decoration:none;
	}
.panel-3cols  a.col:hover{
	box-shadow:0px 0px 2px rgba(0, 0, 0, 0.2);
	text-decoration:none;
	}





/* Hover
------------------------------------------*/
.panel-3cols  > a.col:hover .link,
.panel-3cols  article a:hover { 
	text-decoration:underline;
	}




/* IMG (usamos aside)
------------------------------------------*/
.panel-3cols  aside img {
	height:100%;
	object-fit: cover;
	width:100%;
	}







/*--------------------------------------------
CARDS TRES //////////////////////////////////
-------------------------------------------*/


/* GRID
------------------------------------------*/
.cards-tres.grid{
	align-items:stretch;
	background-color:var(--color-neutro-softer); /*set*/
	display:grid;
	width:100%;
	grid-gap:1.6vmax; /*set*/
	grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); /*set*/
	/*set*/
	padding-bottom:1.6vmax;
	padding-left:1.6vmax; 
	padding-top:1.6vmax;
	padding-right:1.6vmax;
	}

/* ---- grid card --- */
.cards-tres.grid .item{
	width:100%; /* depende del contenedor */
	}




/* FLEXBOX
------------------------------------------*/
.cards-tres.flexbox{
	background-color:var(--color-white); /*set*/
	align-items:stretch;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	gap:1.6vmax; /*set*/
	justify-content:center;
	/* set 
	padding-left:1.6vmax;
	padding-right:1.6vmax;*/
	padding-bottom:80px;
	padding-top:80px;
	}



/* Titulo
------------------------------------------*/
.cards-tres.flexbox .title-1{
	margin-top: 50px;
	margin-bottom: -20px;
	}

.cards-tres.flexbox .subtitle-1{
	margin-bottom: 30px;
	}


/* Card
------------------------------------------*/
.cards-tres .item{
	align-items:center;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:flex-start;
	height:auto;
	}


/* If card is anchor */
.cards-tres a.item{
	text-decoration:none;
	}
.cards-tres a.item:hover{
	box-shadow:0px 0px 2px rgba(0, 0, 0, 0.2);
	text-decoration:none;
	}






/* SET: Design card
------------------------------------------*/
.cards-tres .item{
	background-color:var(--color-white); /*set*/
	gap:20px;
	padding:10px 0px;
	}


/* cover  */
.cards-tres .cover{
	align-items:center;
	background-color:var(--color-main);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	border-radius:50%;
	overflow:hidden;
	height:72px;
	width:72px;
	}


/* img o icon */
.cards-tres .cover img,
.cards-tres .cover .svg-icon{
	height:auto;
	padding:0px;
	margin:0px;
	width:100%;
	}

.cards-tres .cover .svg-icon{
	height:auto;
	fill:var(--color-white);
	padding:8px;
	}


.cards-tres .info{
	align-items:flex-start;
	display:flex;
	flex-wrap: wrap;
	justify-content:center;
	flex-grow:999;
	width:100%;
	}



.cards-tres .info .title{ 
	color:var(--color-neutro-dark);/*set*/
	font-size:1em;
	font-weight:normal;
	height:auto;
	margin:0px;
	padding:0px;
	text-align:center;
	text-transform:uppercase;
	width:100%;
	}

.cards-tres .info p{ 
	color:initial;
	font-size:0.9em;
	font-weight:200;
	height:auto;
	line-height: 20px;
	margin:0px;
	padding:0px;
	text-align:center;
	width:100%;
	}

/* Link */
.cards-tres .info .link,
.cards-tres .info a{ 
	color:var(--color-neutro-soft);/*set*/
	font-size:0.7em;
	text-align:center;
	text-transform:uppercase;
	text-decoration:none;
	width:auto;
	}



/* Hover
------------------------------------------*/
.cards-tres a.item:hover .link,
.cards-tres .item a:hover { 
	display:inline-block;
	text-decoration:underline;
	}



/*--------------------------------------------
PANEL CONTACTO 1 ////////////////////////////
-------------------------------------------*/
.panel-contacto-1{
	display:flex;
	flex-direction:row;
	justify-content:center;
	flex-wrap:wrap;
	padding-top:40px;
	padding-bottom:40px;
	width:100%;
	}


.panel-contacto-1 .inside{
	align-items:stretch!important;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:40px;
	height:auto;
	padding:4vw;
	width:100%;
	}

/* Titulo
------------------------------------------*/
.panel-contacto-1 aside {
	flex-grow:9;
	order:1;
	width:40%;
	}

.panel-contacto-1 .separator {
	height:auto;
	margin:0px 20px;
	order:2;
	width:2px!important;
	}

.panel-contacto-1 article {
	flex-grow:9;
	order:3;
	width:40%;
	}


/* SET: DISENO
------------------------------------------*/
.panel-contacto-1{
	background-color:var(--color-neutro-softer);
	}

.panel-contacto-1 .inside{
	background-color:var(--color-white);
	}


.panel-contacto-1 div.separator{
	background-color:var(--color-neutro-softer);
	}

.panel-contacto-1 div.formulario{
	padding:0px; 
	}

.panel-contacto-1 div.formulario ul.menu-actions{
	justify-content:center;
	}

.panel-contacto-1 article p b{
	color:var(--color-main);
	font-weight:var(--fw-bold);
	text-transform:uppercase;
	}



/* BREAK: MOVIL
------------------------------------------*/
@media only screen and (max-width:620px) {
	.panel-contacto-1 aside {
		margin-top:20px;
	width:100%;
	}
	.panel-contacto-1 div.separator {
	height:2px!important;
	width:100%!important;
	}
	.panel-contacto-1 article {
	width:100%;
	}
}




/* Open MAP
------------------------------------------*/

a.open-map{
	display:block;
	background-color: var(--color-black);
	border:5px solid #fff;
	box-shadow:0px 0px 4px rgba(0, 0, 0, 0.1);
	padding:0px;
	margin:0px;
	max-width:300px;
	width:auto;
	}
	@media only screen and (max-width:620px) {
	a.open-map{
	width:70%;
	}}



a.open-map img.map{
	transition:all 0.18s;
	opacity:1.0;
	}
a.open-map:hover img.map{
	opacity:0.7!important;
	}
a.open-map .svg-icon {
	fill:#fff;
	}




.call-icon {
	position:relative;
	}


.call-icon .svg-icon{
	height:60px;
	margin-left:-30px;
	margin-top:-30px;
	transition:all 0.12s;
	transform: scale(0.2);
	opacity:0.0;
	position:absolute;
	bottom:auto;
	top:50%;
	left:50%;
	right:auto;
	width:60px;
	}

.call-icon:hover .svg-icon{
	transform: scale(1.6);
	opacity:1.0;
	}

/*---------------------------------------------------------------- 
AMENIDADES  //////////////////////////////////////////////////////
----------------------------------------------------------------*/
body#amenidades article.w100 {
	background-color:var(--color-neutro-softer);/*set*/
	margin:0px;
	padding:40px 0px;
	}


.gallery-default{
	align-items:stretch;
	background-color:var(--color-neutro-softer);/*set*/
	display:grid;
	grid-gap:1.6vmax;/*set*/
	grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); /*set*/
	padding-bottom:40px;
	padding-top:40px;
	width:100%;
	}




/* Item
------------------------------------------*/
.gallery-default .item{
	align-items:center;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	height:auto;
	min-height:180px;
	padding:20px;
	overflow:hidden;
	position:relative;
	width:auto; /* depende del contenedor */
	}



/* If: item is anchor */
.gallery-default a.item{
	text-decoration:none!important;
	}

.gallery-default a.item:hover{
	box-shadow:0px 0px 2px rgba(0, 0, 0, 0.4);
	text-decoration:none;
	}


/* < picture > */
.gallery-default .item picture{
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	z-index:1;
	}

/* < img > */
.gallery-default .item img{
	height:100%;
	object-fit:cover;
	width:100%;
	}



/* If: captions */
.gallery-default .item  *:not(picture){
	z-index:2;
	}



/* SET: Design
------------------------------------------*/
.gallery-default .item{
	background-color:var(--color-neutro-darker);/*set*/
	aspect-ratio: 2 / 1;
	border-radius:8px;
	min-height:180px;
	}


/* Captions  */
.gallery-default .item .captions{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	width:100%;
	z-index:10;
	}


/* title  */
.gallery-default .item .captions .title{
	color:var(--color-white);/*set*/
	font-size:var(--fs-regular);
	font-weight:var(--fw-bold);
	font-family:var(--font-second);
	height:auto;
	margin:0px;
	padding:0px;
	text-align:center;
	width:100%;
	}


/* p  */
.gallery-default .item .captions p{ 
	color:var(--color-white);/*set*/
	font-size:var(--fs-medium);
	font-weight:var(--fw-normal);
	height:auto;
	margin:0px;
	padding:0px;
	text-align:center;
	width:100%;
	}


/* Link  */
.gallery-default .item .captions .link{ 
	display:flex;
	text-align:center;
	width:auto;
	}


.gallery-default .item .captions .link,
.gallery-default .item .captions a{ 
	color:var(--color-white);/*set*/
	font-size:var(--fs-medium);
	font-weight:var(--fw-normal);
	text-transform:uppercase;
	text-decoration:none;
	}



/*---------------------------------
////////// HOVER EFFECTS ///////////
----------------------------------*/

/* Effect opacy in
------------------------------*/
.add-effect-opacity-in .item .cover{
	opacity:1.0;
	transition:var(--transition-2x);
	}
.add-effect-opacity-in .item:hover .cover{
	opacity:0.6;
	}



/*---------------------------------------------------------------- 
NOSOTROS   //////////////////////////////////////////////////////
----------------------------------------------------------------*/
.panel-nosotros{
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:5vw;
	padding-top:40px;
	padding-bottom:40px;
	width:100%;
	}



.panel-nosotros article {
	flex-grow:9;
	min-width:280px;
	order:1;
	width:60%;
	}

.panel-nosotros aside {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	gap:12px;
	height:auto;
	min-width:180px;
	order:1;
	padding:4vw;
	width:25%;
	}

.panel-nosotros aside img{
	width:100%;
	}



/* BREAK: MOVIL
------------------------------------------*/
@media only screen and (max-width:620px) {
.panel-nosotros article {
	order:2;
	}
.panel-nosotros aside {
	padding:8vw;
	order:1;
	}

}








/* SET: DISENO
------------------------------------------*/
.panel-nosotros{
	background-color:var(--color-neutro-white);
	}


.panel-nosotros article {
	font-size:var(--fs-regular);
	font-weight:var(--fw-normal);
	}


.panel-nosotros article .title{
	font-size:var(--fs-large);
	font-weight:var(--fw-bold);
	}

.panel-nosotros aside {

	}

.panel-nosotros aside img{
	border:5px solid var(--color-white);
	}





/*---------------------------------------------------------------- 
//////////////////////////////////////////////////// END SECCIONES
----------------------------------------------------------------*/

/*---------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////
FOOTER  //////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
footer{
	background-color:var(--color-white);
	color:var(--color-neutro);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:0.8rem;
	height:auto;
	max-width:100%;
	overflow-x:hidden;
	position:relative;
	padding-bottom:20px;
	padding-top:20px;
	width:100%;
	}





footer.estandar .col{
	align-items:stretch;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	height:auto;
	position:relative;
	}


footer.estandar .col{
	align-items:flex-end;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:flex-start;
	height:auto;
	position:relative;
	}

footer.estandar .col p{
	font-size:0.7rem;
	line-height:15px;
	width:100%;

	}
	@media only screen and (max-width:720px) {
	footer.estandar .col p{
	text-align:center;
	}}



footer.estandar .col a{
	color:inherit;
	text-decoration:none;
	}





footer.estandar .col-uno{
	order:1;
	width:30%;
	}
	@media only screen and (max-width:720px) {
	footer.estandar .col-uno{
	text-align:center;
	order:2;
	width:100%;
	}}






footer.estandar .col-dos{
	justify-content:center;
	order:2;
	width:40%;
	}
	@media only screen and (max-width:720px) {
	footer.estandar .col-dos{
	text-align:center;
	order:1;
	width:100%;
	}}




footer.estandar .col-tres{
	flex-direction:row;
	justify-content:flex-end;
	order:3;
	width:30%;
	}
	@media only screen and (max-width:720px) {
	footer.estandar .col-tres{
	justify-content:center;	
	width:100%;
	}}



/*--------------------------------------------
LOGOTIPO ////////////////////////////////////
-------------------------------------------*/
footer a.logotipo{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	height:auto;
	width:auto;
	}



/* SET: img sizes
------------------------------*/
footer a.logotipo img{
	height:90px; /*set*/	
	width:auto; /*set*/	
	}
	/* Break movil */
	@media only screen and (max-width:620px) {
	header.estandar a.logotipo img{
	height:70px;
	width:auto;
	}}



/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////// END FOOTER
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////
MENUS INPUTS  ////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/


/*---------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////
MENUS Y FORMS  //////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
.formulario {
	height:auto;
	width:100%;
	}


/*---------------------------------------------------------------- 
BUTTONS //////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*--------------------------------------------
BUTTON BASE  ////////////////////////////////
-------------------------------------------*/
.button-base,
.button-base + label,
ul.menu-button-base li > a,
ul.menu-button-base li > span,
ul.menu-button-base li > input[type=submit] + label,
ul.menu-button-base li > input[type=button] + label,
ul.menu-button-base li > button{
	align-items:center;
	border:0px;
	display:inline-flex;
	flex-direction:row;
	justify-content:center;
	cursor: pointer;
	margin:0px;
	min-width:120px;
	outline:0;
	position:relative;
	text-decoration:none;
	transition:all 0.12s;
	width:auto;
	}


input.button-base[type=submit],
input.button-base[type=button],
ul.menu-button-base li > input[type=submit],
ul.menu-button-base li > input[type=button] {
	display:none;
	visibility: hidden;
	}


/* ////////////// SET: DISEÑO 
------------------------------*/
.button-base,
.button-base + label,
ul.menu-button-base li > a,
ul.menu-button-base li > span,
ul.menu-button-base li > input[type=submit] + label,
ul.menu-button-base li > input[type=button] + label,
ul.menu-button-base li > button {
	background-color:var(--color-main);
	border-radius:30px;
	color:var(--color-white-70);
	font-size:var(--fs-medium);
	font-weight:var(--fw-bold);
	letter-spacing:1px;
	height:46px;
	line-height:1.2em;
	padding:0px 20px;
	text-transform:uppercase;
	}
	@media only screen and (max-width:1500px) {
	.button-base,
	.button-base + label,
	ul.menu-button-base li > a,
	ul.menu-button-base li > span,
	ul.menu-button-base li > input[type=submit] + label,
	ul.menu-button-base li > input[type=button] + label,
	ul.menu-button-base li > button{
	height:46px;
	}}
	@media only screen and (max-width:620px) {
	.button-base,
	.button-base + label,
	ul.menu-button-base li > a,
	ul.menu-button-base li > span,
	ul.menu-button-base li > input[type=submit] + label,
	ul.menu-button-base li > input[type=button] + label,
	ul.menu-button-base li > button{
	height:46px;
	}}




/* + SMALL
------------------------------*/
.button-base.small,
.button-base.small + label,
ul.menu-button-base.small li > a,
ul.menu-button-base.small li > span,
ul.menu-button-base.small li > input[type=submit] + label,
ul.menu-button-base.small li > input[type=button] + label,
ul.menu-button-base.small li > button{
	font-size:var(--fs-medium);
	height:36px;
	padding:0px 8px;
	}
	@media only screen and (max-width:1500px) {
	.button-base.small,
	.button-base.small + label,
	ul.menu-button-base.small li > a,
	ul.menu-button-base.small li > span,
	ul.menu-button-base.small li > input[type=submit] + label,
	ul.menu-button-base.small li > input[type=button] + label,
	ul.menu-button-base.small li > button{
	height:28px;
	}}
	@media only screen and (max-width:620px) {
	.button-base.small,
	.button-base.small + label,
	ul.menu-button-base.small li > a,
	ul.menu-button-base.small li > span,
	ul.menu-button-base.small li > input[type=submit] + label,
	ul.menu-button-base.small li > input[type=button] + label,
	ul.menu-button-base.small li > button{
	height:32px;
	}}





/* Hover
------------------------------*/
.button-base:hover,
.button-base + label:hover,
ul.menu-button-base li > a:hover,
ul.menu-button-base li > span:hover,
ul.menu-button-base li > input[type=submit] + label:hover,
ul.menu-button-base li > input[type=button] + label:hover,
ul.menu-button-base li > button:hover {
	background-color:var(--color-main-dark);
	text-decoration:none;
	color:var(--color-white);
	}



/* Base +  iconos
------------------------------*/
.button-base .svg-icon,
.button-base + label .svg-icon,
ul.menu-button-base .svg-icon {
	aspect-ratio: auto 1 / 1; 
	fill:var(--color-white-70);
	height:70%;
	margin:0px 4px 0px -4px;
	padding:0px;
	width:auto;
	}


.button-base:hover .svg-icon,
.button-base + label:hover .svg-icon,
ul.menu-button-base :hover .svg-icon {
	fill:var(--color-white);
	}




/*--------------------------------------------
BUTTON TOOLS ////////////////////////////////
-------------------------------------------*/
.button-tools,
.button-tools + label,
ul.menu-button-tools li > a,
ul.menu-button-tools li > span,
ul.menu-button-tools li > input[type=submit] + label,
ul.menu-button-tools li > input[type=button] + label,
ul.menu-button-tools li > button{
	align-items:center;
	border:0px;
	display:inline-flex;
	flex-direction:row;
	justify-content:center;
	cursor:pointer;
	margin:0px;	
	outline:0px;
	position: relative;
	text-decoration: none;
	transition:all 0.12s;
	width:auto!important;
	}


input.button-tools[type=submit],
input.button-tools[type=button],
ul.menu-button-tools li > input[type=submit],
ul.menu-button-tools li > input[type=button] {
	display:none;
	visibility: hidden;
	}



/* ////////////// SET: DISEÑO 
------------------------------*/
.button-tools,
.button-tools + label,
ul.menu-button-tools li > a,
ul.menu-button-tools li > span,
ul.menu-button-tools li > input[type=submit] + label,
ul.menu-button-tools li > input[type=button] + label,
ul.menu-button-tools li > button {
	background-color:var(--color-neutro-soft);
	border-radius:13px;
	color:var(--color-white-70);
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	letter-spacing:1px;
	height:22px;
	line-height:22px;
	padding:0px 12px;
	text-transform:uppercase;
	}


/* Hover
------------------------------*/
.button-tools:hover,
.button-tools + label:hover,
ul.menu-button-tools li > a:hover,
ul.menu-button-tools li > span:hover,
ul.menu-button-tools li > input[type=submit] + label:hover,
ul.menu-button-tools li > input[type=button] + label:hover,
ul.menu-button-tools li > button:hover {
	background-color:var(--color-neutro);
	color:var(--color-white);
	text-decoration: none;
	}



/* Tools +  iconos
------------------------------*/
.button-tools .svg-icon,
.button-tools + label .svg-icon,
ul.menu-button-tools .svg-icon {
	aspect-ratio: auto 1 / 1; 
	fill:var(--color-white-70);
	height:70%;
	margin:0px 4px 0px 0px;
	padding:0px;
	width:auto;
	}


.button-base:hover .svg-icon,
.button-tools + label:hover .svg-icon,
ul.menu-button-tools :hover .svg-icon {
	fill:var(--color-white);
	}




/* BUTTON TOOL: COPY 
(add class .btn-copy)
------------------------------*/
.btn-copy > span{
	display:flex;
	position:relative;
	width:76px!important;
	} 


.btn-copy:after {
	content:"COPY:HTML";
	height:22px;
	line-height:22px;
	text-align:center;
	transition:all 0.12s;
	width:90px;
	position:absolute;
	bottom:auto;
	left:22px;
	top:0px;
	right:auto;
	} 


.btn-copy.copied:after  {
  content:"COPIED!";
	}






/*--------------------------------------------
BUTTON TAG ///////////////////////////////////
-------------------------------------------*/
.button-tag,
.button-tag + label,
ul.menu-button-tag li > a,
ul.menu-button-tag li > span,
ul.menu-button-tag li > input[type=submit] + label,
ul.menu-button-tag li > input[type=button] + label,
ul.menu-button-tag li > button{
	align-items:center;
	border:0px;
	display:inline-flex;
	flex-direction:row;
	justify-content:center;
	cursor: pointer;
	margin:0px;
	outline:0;
	position:relative;
	text-decoration:none;
	transition:all 0.12s;
	width:auto;
	}



input.button-tag[type=submit],
input.button-tag[type=button],
ul.menu-button-tag li > input[type=submit],
ul.menu-button-tag li > input[type=button] {
	display:none;
	visibility: hidden;
	}





/* ////////////// SET: DISEÑO 
------------------------------*/
.button-tag,
.button-tag + label,
ul.menu-button-tag li > a,
ul.menu-button-tag li > span,
ul.menu-button-tag li > input[type=submit] + label,
ul.menu-button-tag li > input[type=button] + label,
ul.menu-button-tag li > button {
	background-color:var(--color-second-soft);
	border-radius:0px;
	color:var(--color-white-70);
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	letter-spacing:1px;
	height:28px;
	line-height:1.4em;
	padding:0px 6px;
	text-transform:uppercase;
	}
	@media only screen and (max-width:1500px) {
	.button-tag,
	.button-tag + label,
	ul.menu-button-tag li > a,
	ul.menu-button-tag li > span,
	ul.menu-button-tag li > input[type=submit] + label,
	ul.menu-button-tag li > input[type=button] + label,
	ul.menu-button-tag li > button{
	height:26px;
	}}
	@media only screen and (max-width:620px) {
	.button-tag,
	.button-tag + label,
	ul.menu-button-tag li > a,
	ul.menu-button-tag li > span,
	ul.menu-button-tag li > input[type=submit] + label,
	ul.menu-button-tag li > input[type=button] + label,
	ul.menu-button-tag li > button{
	height:28px;
	}}




/* Hover
------------------------------*/
.button-tag:hover,
.button-tag + label:hover,
ul.menu-button-tag li > a:hover,
ul.menu-button-tag li > span:hover,
ul.menu-button-tag li > input[type=submit] + label:hover,
ul.menu-button-tag li > input[type=button] + label:hover,
ul.menu-button-tag li > button:hover {
	background-color:var(--color-second);
	text-decoration:none;
	color:var(--color-white);
	}



/* Tag  +  iconos
------------------------------*/
.button-tag .svg-icon,
.button-tag + label .svg-icon,
ul.menu-button-tag .svg-icon {
	aspect-ratio: auto 1 / 1; 
	fill:var(--color-white-70);
	height:70%;
	margin:0px 4px 0px 0px;
	padding:0px;
	width:auto;
	}


.button-tag:hover .svg-icon,
.button-tag + label:hover .svg-icon,
ul.menu-button-tag :hover .svg-icon {
	fill:var(--color-white);
	}


/*--------------------------------------------
BUTTON INLINE  ///////////////////////////////
-------------------------------------------*/
.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{
	display:inline;
	flex-direction:row;
	height:auto;
	justify-content:flex-start;
	cursor: pointer;
	margin:0px;
	overflow:hidden;
	position:relative;
	transition:all 0.12s;
	width:auto;
	}


input.button-inline[type=submit],
input.button-inline[type=button],
.menu-button-inline  input[type=submit],
.menu-button-inline  input[type=button] {
	display:none;
	visibility: hidden;
	}


/* ////////////// 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{
	background-color:none;
	color:inherit;
	font-size:inherit;
	font-weight:inherit;
	text-decoration:underline;
	}

/* 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{
	background-color:none;
	color:var(--color-main)!important;
	text-decoration:underline;
	}


/* inline +  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{
	display:inline;
	aspect-ratio: auto 1 / 1; 
	fill:inherit;
	height:auto;
	margin:0px -3px -3px 0px;
	padding:0px;
	width:16px;
	}

.button-inline:hover .svg-icon,
.button-inline + label:hover .svg-icon,
.menu-button-inline a:hover .svg-icon,
.menu-button-inline span:hover .svg-icon,
.menu-button-inline input[type=submit] + label:hover .svg-icon,
.menu-button-inline input[type=button] + label:hover .svg-icon {
	fill:var(--color-main);
	}



/*---------------------------------------------------------------- 
MENUS ////////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*--------------------------------------------
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:8px 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 12vw;
	font-size:1rem;
	}
	ul.menu-actions li{
	width:100%;
	}
	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 8vw;
	}}

@media only screen and (max-width:420px) {
	ul.menu-actions{
	padding:0px 0vw;
	}}





/* Alineaciones alternativas
------------------------------*/
ul.menu-actions.center {
	justify-content:center;
	}

ul.menu-actions.center li.alert,
ul.menu-actions.center div.alert{
	width:100%;
	}

ul.menu-actions.center li.alert > *,
ul.menu-actions.center div.alert > *{
	text-align:center;
	width:100%;
	}

ul.menu-actions.left {
	justify-content:flex-start;
	}

ul.menu-actions.right {
	justify-content:flex-end;
	}





/* 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-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;
	}}










/* Alerts
------------------------------*/
.alert{
	height:auto!important;
	margin:0px 0px;
	overflow:hidden;
	padding:0px 0px;
	width:auto;
	}


.alert > *{
	color:var(--color-neutro);
	font-size:0.5rem;
	height:auto;
	margin:0px 0px!important;
	letter-spacing:0.6px;
	text-align:left;
	overflow:hidden;
	padding:0px 0px!important;
	text-transform:uppercase;
	width:100%;
	}



.alert .color-ok,
.alerterror > * {
	color:var(--color-ok);
	}

.alert .color-warning,
.alertok > * {
	color:var(--color-warning);
	}





/*--------------------------------------------
BAR TOOLS /// ////////////////////////////////
-------------------------------------------*/
ul.bar-tools {
	border-bottom:1px solid var(--color-neutro-softer);
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:10px;
	justify-content:flex-end;
	height:auto;
	list-style:none;
	margin:20px 0px;
	padding:20px 20px;
	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 {
	color:var(--color-neutro);
	font-size:var(--fs-small);
	font-weight:var(--fw-thin);
	}



/* Title
------------------------------*/
ul.bar-tools li .title{
	align-items:center;
	flex-direction:row;
	display:flex;
	flex-wrap:wrap;
	font-size:1.2em;
	font-weight:var(--fw-bolder);
	justify-content:flex-start;
	text-align:left;
	width:auto;
	}




/* Links default
------------------------------*/
ul.bar-tools li a{
	color:inherit;
	text-decoration:none;
	font-weight:400;
	}

ul.bar-tools li a:hover{
	color:var(--color-neutro);
	text-decoration:underline;
	}




/* Links button tool
------------------------------*/
ul.bar-tools li .button-tools{
	background-color:var(--color-neutro-softer)!important;
	color:var(--color-neutro)!important;
	}
ul.bar-tools li .button-tools .svg-icon{
	transform: rotate(0.5turn);
	fill:var(--color-neutro)!important;
	}

ul.bar-tools li .button-tools:hover{
	background-color:var(--color-neutro-soft)!important;
	color:var(--color-white)!important;
	}
ul.bar-tools li .button-tools:hover .svg-icon{
	fill:var(--color-white)!important;
	}



/* Separator
------------------------------*/
ul.bar-tools li.separator{
	height:14px;
	}











































/*--------------------------------------------
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;
	}


/* Escondemos  */
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;
	}


/* Hover  */
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);
	}



/* BUTTONS con iconos
------------------------------*/
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);
	}



/* En columna
------------------------------*/
ul.menu-bar.vertical li{
	width:100%;
	}


/* TXT adicional
------------------------------*/
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%;
	}




/*---------------------------------------------------------------- 
INPUTS ///////////////////////////////////////////////////////////
----------------------------------------------------------------*/
form {
	padding:0px;
	margin:0px;
	outline:0px;
	width:100%;
	}



/* General
------------------------------*/
input, textarea,
input:focus, textarea:focus  {
	outline:0px;
	}



input[type=text],
input[type=password],
input[type=email],
input[type=tel], 
input[type="text"]:focus,
textarea,
textarea:focus,
select:focus {
	background-color:var(--color-neutro-softer);
	}



input[type=text],
input[type=password],
input[type=email],
input[type=tel], 
textarea{
	border-radius:4px;
	border:0px;
	display: block;
	margin:3px 0px;
	padding:0px;
	text-indent:10px;
	width:100%; 
	}



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=password],
input[type=email],
input[type=tel],
select,
div.input .svg-icon {
	height:60px;
	line-height:60px;
	}
	@media only screen and (max-width:1500px) {
	input[type=text],
	input[type=password],
	input[type=email],
	input[type=tel],
	select,
	div.input .svg-icon {
	height:40px;
	line-height:40px;
	}}
	@media only screen and (max-width:620px) {
	input[type=text],
	input[type=password],
	input[type=email],
	input[type=tel],
	select,
	div.input .svg-icon {
	height:50px;
	line-height:50px;
	}}



/* Set:Font
------------------------------*/
input[type=text],
input[type=password],
input[type=email],
input[type=tel], 
textarea,
::placeholder{
	font-size:var(--fs-medium)!important;
	font-weight:var(--fw-thin)!important;
	font-family:inherit!important;
	}





/* Labels
------------------------------*/
label.title{
	text-transform:uppercase;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	margin:4px 0px 2px 0px;
	}




/* Placeholder
------------------------------*/
::placeholder {
	color:var(--color-neutro);
	}



/* div input
------------------------------*/
div.input {
	position:relative;
	width:100%;
	}

div.input .svg-icon{
	aspect-ratio: 1 / 1;
	width:auto;
	padding:10px;
	position:absolute;
	left:0px;
	top:0px;
	}
	@media only screen and (max-width:1500px) {
	div.input .svg-icon{
	padding:8px;
	width:auto;
	}}


div.input input[type=text],
div.input input[type=password]{
	text-indent:60px;
	}
	@media only screen and (max-width:1500px) {
	div.input input[type=text],
	div.input input[type=password]{
	text-indent:40px;
	}}
	@media only screen and (max-width:620px) {
	div.input input[type=text],
	div.input input[type=password]{
	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
------------------------------*/
input[type=checkbox],
input[type=radio] {
	visibility: hidden;
	display: none;
	}


input[type=checkbox] + label,
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;
	}

input[type=checkbox] + label span,
input[type=radio] + label span{
	display:block;
	background-color:#fff;
	border:0px solid var(--color-neutro-soft);
	border-radius:50%;
	cursor: pointer;
	height:20px; 
	margin-right:10px;
	outline:1px solid var(--color-neutro-soft);
	position: relative;
	transition:all 0.1s;
	width:20px;
	}

input[type=checkbox] + label span:hover,
input[type=radio] + label span:hover{
	box-shadow:0px 0px 2px rgba(0, 0, 0, 0.6);
	transform:scale(1.1);
	}


input[type=checkbox]:checked + label span,
input[type=radio]:checked + label span{
	background-color:var(--color-ok);
	border:4px solid var(--color-white);
	outline:1px solid var(--color-neutro-soft);
	}


input[type=checkbox] + label i,
input[type=radio] + label i{
	display:block;
	font-style: normal;
	height:20px;
	line-height:20px;
	width:auto;
	}




/* Buscador
------------------------------*/
div.box-search {
	display:flex;
	flex-direction:row;
	justify-content:flex-start;
	font-size:0.8rem;
	height:auto;
	width:100%;
	}

div.box-search form{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	font-size:inherit;
	justify-content:flex-start;
	height: auto;
	width:100%;
	}


/* Tamaños  */
div.box-search input[type=search],
div.box-search input[type=submit] + label{
	font-size:1em;
	height:38px;
	line-height:38px;
	outline:0px;
	}
	@media only screen and (max-width:1500px) {
	div.box-search input[type=search],
	div.box-search input[type=submit] + label{
	height:28px;
	line-height:28px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search input[type=search],
	div.box-search input[type=submit] + label{
	height:38px;
	line-height:38px;
	}}



/* input */
div.box-search input[type=search] {
	background-color:var(--color-neutro-softer);
	border:1px solid var(--color-neutro-dark);
	border-radius:19px;
	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 input[type=search]{
	border-radius:14px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search 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:0.9em;
	}

div.select {
	border-radius:4px;
	background-color: #fff;
	border:1px solid #ddd;
	/*float: left;*/
	font-weight: 300;
	margin:5px 0px 15px 0px;
	padding:0px;
	position: relative;
	text-align:left;
	width:100%;
	}


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%; 
	}}




div.select,
div.select:after {
	height:36px!important;
	line-height:36px!important;
	} 




div.select select{
	background-color:transparent;
	border:0px solid #ddd;
	border-radius: 0px;
	display:block;
	color:inherit;
	float:left;
	height:30px;
	line-height: 30px;
	margin:3px 0px;
	outline:none;
	overflow: hidden;
	text-shadow: none;
	text-align:left!important;
	text-indent:5px;
	-webkit-appearance:none!important;
	-moz-appearance: none!important;
	appearance: none!important;
	width:100%;
	}

div.select:after {
	color:inherit;
	content: "▼";
	position: absolute;
	top:2;
	right: 0;
	bottom:2;
	font-size:12px;
	margin:0px;
	padding:0px 10px;	
	pointer-events:none;
	}

div.select select option{
	border:0px!important;
	box-shadow: 0px;
	/*float: left;*/
	height: auto;
	margin:0px;
	outline:none;
	text-align:left!important;
	width:100%;
	}



/*---------------------------------------------------------------- 
//////////////////////////////////////////////// END MENUS Y FORMS
----------------------------------------------------------------*/


/*---------------------------------------------------------------- 
/////////////////////////////////////////////////////// END FOOTER
----------------------------------------------------------------*/
/*---------------------------------------------------------------- 
//////////////////////////////////////////////////////////////////
EXTRAS  //////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
----------------------------------------------------------------*/

/*--------------------------------------------
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-soft);
	color:var(--color-white);
	font-size:var(--fs-regular);
	font-weight:var(--fw-normal);
	padding:16px 0px;
	text-align:center;
	text-transform:uppercase;
	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.warning .title {
	background-color:var(--color-warning);
	color:var(--color-warning-softer);
	}

/* Google maps
------------------------------*/
.modal.googlemap iframe{
	aspect-ratio: 3 / 2;
	margin:0px;
	outline:0px;
	padding:0px;
	width:100%;
	}

/* Google maps
------------------------------*/
.modal.wide iframe{
	min-width: ;
	}


/* Modal menu
------------------------------*/
.modal ul.menu-actions{
	justify-content:center;
	}


/* Close modal
------------------------------*/
.modal .close-modal {
	top:10px!important;
	right:10px!important;
	}
	
/*--------------------------------------------
FIRMA  //////////////////////////////////////
-------------------------------------------*/
.firma.ls {
	align-items:center;
	color:var(--color-neutro);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:0.8em;
	line-height:1.2em;
	margin-top: 90px;
	justify-content:space-between;
	opacity:0.8;
	text-decoration:none;
	width:auto;
	}
	@media only screen and (max-width:720px) {
	.firma.ls {
	flex-direction:column;
	}}


.firma.ls span{
	color:var(--color-neutro);
	height: auto;
	margin:0px 0px 0px 4px;
	text-align:right;
	width:auto;
	}
	@media only screen and (max-width:720px) {
	.firma.ls span{
	margin:0px 0px 4px 0px;
	text-align: center;
	}}

.firma.ls span .svg-icon{
	fill:var(--color-neutro);
	height:36px;
	width:36px;
	}


/*---------------------------------------------------------------- 
ANIMACIONES //////////////////////////////////////////////////////
----------------------------------------------------------------*/
div.banner-cover{
	transition:all 0.4s;
	transition-delay:0.6s;
	opacity:0.0;
	}

div.banner-cover.animate{
	opacity:1.0!important;
	}



body#contacto div.banner-reservar{
	transition:all 0.4s;
	opacity:0.0;
	}

body#contacto div.banner-reservar.animate{
	opacity:1.0!important;
	}



.panel-zigzag .item div.imagen img{
	transition:all 0.4s;
	transform:scale(1.06);
	opacity:0.0;
	}

.panel-zigzag .item.animate div.imagen img{
	transform:scale(1);
	opacity:1.0;
	}




div.panel-3cols aside img{
	transition:all 0.4s;
	opacity:0.0!important;
	}


div.panel-3cols aside img.animate{
	opacity:1.0!important;
	}




div.cards-tres div.item div.cover{
	transition:all 0.4s;
	transform:scale(0.6);
	opacity:0.0;
	}

div.cards-tres div.item div.cover.animate{
	transform:scale(1);
	opacity:1.0;
	}
