/*---------------------------------------------------------------- 
PATRONES ////////////////////////////////////////////////////////
----------------------------------------------------------------*/
/*---------------------------------
/// BANNER COVER  (#BA-COVER) ///
----------------------------------*/
.banner-cover{
	height:40vh;
	position:relative;
	}

.banner-cover picture{
	height:auto;
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	top:0px;
	width:auto;
	}

.banner-cover picture img{
	height:100%;
	width:100%;
	object-fit:cover;
	}

.banner-cover div.in {
	flex-direction:column;
	justify-content:center;
	height:100%;
	z-index:10;
	}

/*---------------------------------
/// ZIG ZAG  (#ZIGZAG) ///
----------------------------------*/
ul.zigzag {
	display:flex;
	flex-direction:column;
	flex-wrap: wrap;
	justify-content:center;
	list-style: none;
	margin:0px 0px;
	padding:0px;
	width:100%;
	}


ul.zigzag li {
	/*
	align-items:stretch;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	*/
	list-style:none;
	min-height:100px; /* not necessary */
	padding:0px 0px;
	width:100%;
	}


ul.zigzag div.info,
ul.zigzag div.imagen{
	height:380px;
	}
	@media only screen and (max-width:1500px) {
	ul.zigzag div.info,
	ul.zigzag div.imagen{
	height:340px;
	}}
	@media only screen and (max-width:920px) {
	ul.zigzag div.info,
	ul.zigzag div.imagen{
	height:400px;
	}}

ul.zigzag div.info {
	align-items:flex-start!important;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	float:left;
	justify-content:center;
	background-color:#fff;/* not necessary */
	position:relative;
	z-index:2;
	}



ul.zigzag div.imagen {
	float: right;
	z-index:1;
	}


ul.zigzag li:nth-child(odd) div.info {
	float:right;
	margin-left:0%; /* se compensa el sobrante*/
	order:2;
	padding:0px 60px 0px 20px;
	width:50%;
	}
	@media only screen and (max-width:620px) {
	ul.zigzag li:nth-child(odd) div.info {
	padding:0px 20px 0px 4px;
	width:50%;
	}}
ul.zigzag li:nth-child(odd) div.imagen {
	border-bottom:10px solid #0e3048;
	float:left;
	order:1;
	width:50%;
	}
ul.zigzag li:nth-child(odd) div.info:before{
	content:"";
	width: 0;
	height: 0;
	border-bottom: 380px solid #fff;
	border-left: 60px solid transparent;
	position:absolute;
	top:0px;
	left:-60px;
	}
	@media only screen and (max-width:1500px) {
	ul.zigzag li:nth-child(odd) div.info:before{
	border-bottom:340px solid #fff;
	}}
	@media only screen and (max-width:920px) {
	ul.zigzag li:nth-child(odd) div.info:before{
	border-bottom:400px solid #fff;
	}}






ul.zigzag li:nth-child(even) div.info {
	float:left;
	margin-right:-10%;/* se compensa el sobrante*/
	order:2;
	padding:0px 20px 0px 60px;
	width:45%;
	}
	@media only screen and (max-width:620px) {
	ul.zigzag li:nth-child(even) div.info {
	padding:0px 4px 0px 20px;
	width:60%;
	}}
ul.zigzag li:nth-child(even) div.imagen {
	border-bottom:10px solid #8cbf42;
	float:right;
	order:1;
	width:55%;
	}
	@media only screen and (max-width:620px) {
	ul.zigzag li:nth-child(even) div.imagen {
	width:40%;
	}}
ul.zigzag li:nth-child(even) div.info:before{
	content:"";
	width: 0;
	height: 0;
	border-top: 380px solid #fff;
	border-right: 60px solid transparent;
	position:absolute;
	top:0px;
	right:-60px;
	}
	@media only screen and (max-width:1500px) {
	ul.zigzag li:nth-child(even) div.info:before{
	border-top:340px solid #fff;
	}}
	@media only screen and (max-width:920px) {
	ul.zigzag li:nth-child(even) div.info:before{
	border-top:400px solid #fff;
	}}



@media only screen and (max-width:620px) {
	ul.zigzag div.info,
	ul.zigzag div.imagen {
	width:100%;
	}
	ul.zigzag li:nth-child(odd) div.info{
	order:2;
	}
	ul.zigzag li:nth-child(odd) div.imagen{
	order:1;
	}
	ul.zigzag li:nth-child(even) div.info{
	order:2;
	}
	ul.zigzag li:nth-child(even) div.imagen{
	order:1;
	}
}



ul.zigzag div.imagen img{
	height:100%;
	width:100%;
	object-fit:cover;
	}

/*---------- (opcion imagen contain)
ul.zigzag div.imagen{
	height:300px;
	}

ul.zigzag div.imagen img{
	height:100%;
	width:100%;
	object-fit:contain;
	}
*/ 


/*---------------------------------
/// PANELS  (#PANELS) ///
----------------------------------*/
section.panels div.in{
	align-items:stretch; /*usar si se quiere forzar misma altura a todos los paneles en caso de no tener altura fija*/
	justify-content:space-between;/* or center */
	}


section.panels div.in div.item{
	height:auto; /* set */
	margin-bottom:20px; /* set */
	padding-bottom:20px;
	width:24%; /* determina cuantos paneles hay en un renglon*/
	}
	@media only screen and (max-width:1500px) {
	section.panels div.in div.item{
	width:24%;
	}}
	@media only screen and (max-width:820px) {
	section.panels div.in div.item{
	width:48%;
	}}



/*------------------------------------
/// PANEL CONTACTO LEFT (#PA-CONTACTOLEFT) ///
-------------------------------------*/
.panel-contactoleft {
	padding:20px 0px; /* set */
	}

.panel-contactoleft div.in div.formulario{
	padding:20px 40px;
	width:60%;
	}
	@media only screen and (max-width:820px) {
	.panel-contactoleft div.in div.formulario{
	padding:20px 30px;
	width:65%;
	}}
	@media only screen and (max-width:720px) {
	.panel-contactoleft div.in div.formulario{
	padding:20px 30px;
	width:75%;
	}}
	@media only screen and (max-width:620px) {
	.panel-contactoleft div.in div.formulario{
	padding:30px 30px;
	width:100%;
	}}



/*----------------------------
/// BAR SOCIAL FULL (#BSF) ///
-----------------------------*/
ul.bsf {
	display:flex;
	display: none;
	justify-content:flex-end;
	height:auto;
	margin:0px;
	padding:0px 4% 0px 0px;
	position:absolute;
	top:50px;
	right:0px;
	width:50%;
	z-index:101;
	}
	@media only screen and (max-width:720px) {
	ul.bsf{
	justify-content:flex-start;
	padding:0px 0px 0px 4%;
	top:10px;
	width:100%;
	}}
	@media only screen and (max-width:620px) {
	ul.bsf{
	display:none;
	}}

ul.bsf div.in{
	justify-content:flex-end;
	height:auto;
	}
	@media only screen and (max-width:720px) {
	ul.bsf div.in{
	justify-content:center;
	}}


ul.bsf * {
	list-style:none;
	text-decoration:none;
	}


ul.bsf li,
ul.bsf li a { line-height:24px; }


ul.bsf li{
	border-right:1px solid #5b6e7c;
	font-size:0.8em;
	font-weight:300;
	list-style:none;
	margin:0px;
	padding:0px 4px;
	width:auto;
	}


ul.bsf li:nth-child(1){
	border-right:0px solid #5b6e7c;
	}

ul.bsf li:nth-child(2){
	padding:0px 8px 0px 0px;
	}
ul.bsf li:nth-child(3){
	padding:0px 0px 0px 8px;
	}

ul.bsf li:last-child{
	border-right:0px solid #5b6e7c;
	}

ul.bsf li a,
ul.bsf li > span{
	display:block;
	height:24px;
	overflow:hidden!important;
	width:24px;
	}

ul.bsf  .svg-icons {
	height:100%;
	fill:#82878e;/* set in colors*/
	padding:0px;/* set */
	width:100%;
	}

ul.bsf a:hover .svg-icons,
ul.bsf li:nth-child(1) .svg-icons {
	fill:#5b6e7c;/* set in colors*/
	}



/*---------------------------------
/// LISTA OK  ///
----------------------------------*/
ul.list{
	flex-direction:column;
	padding:0px;
	}

ul.list,
ul.list li {
	list-style-type: none;
	}


ul.list li {
	line-height:22px;
	min-height:22px;
	margin-bottom:1px;
	height:auto;
	padding-left:32px;
	position:relative;
	}


ul.list.ok li:after{
	background-color:#fff;
	background-image:url(../svg/list-ok.svg);
	background-repeat: no-repeat;
	background-size:22px 22px;
	background-position:center;
	content:"";
	height:22px;
	width:22px;
	position:absolute;
	left:0px;
	top:0px;
	}

/*---------------------------------
/// ACTIONS BOTONES  ///
----------------------------------*/
ul.actions {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	font-weight:300;
	text-transform:uppercase;
	font-size:0.8em;
	letter-spacing:1px;
	height: auto;
	margin:15px 0px;
	padding:0px;
	width:100%;
	}

ul.actions li {
	list-style:none;
	padding: 0px;
	margin:0px;
	margin-right:8px;
	margin-bottom:8px;
	position:relative;
	width:auto;
	}
	@media only screen and (max-width:620px) {
	ul.actions li{
	margin-right:0px;
	margin-bottom:10px;
	text-align: center;
	width:100%; 
	}}

ul.actions li:last-child{
	margin-right: 0px;
	}


ul.actions li label {
	margin:0px!important;
	padding:0px!important;
	color:inherit;
	}



ul.actions li > *,
ul.actions li label > *,
.btn{
	display: block;
	cursor: pointer;
	font-size:0.8em;
	height:36px;
	line-height:36px;
	margin: 0px;
	padding:0px 16px; 
	position: relative;
	text-decoration: none;
	text-transform:uppercase;
	width:auto;
	}
	@media only screen and (max-width:620px) {
	ul.actions li > *,
	ul.actions li label > *,
	.btn{
	height:46px;
	line-height:46px;
	padding:0px 0px; 
	text-align:left;
	width:100%; 
	}}


ul.actions li input[type="file"],
ul.actions li input[type="submit"]{
	visibility: hidden;
	display:none;
	}


ul.actions li a:hover,
ul.actions li span:hover,
.btn:hover{
	text-decoration:none;
	}


ul.actions li > * .svg-icons,
.btn .svg-icons {
	float:left;
	fill:#fff;
	height:24px;
	margin:6px 4px 0px -8px;
	opacity:0.7;
	width:24px; 
	}
	@media only screen and (max-width:620px) {
	ul.actions li > * .svg-icons,
	.btn .svg-icons {
	height:26px;
	margin:10px 10px 0px 10px;
	width:26px;
	}}

ul.actions li > *:hover .svg-icons,
.btn:hover .svg-icons {
	opacity:1.0; 
	}
	

/*----------------------------
/// BAR SOCIAL FULL (#BSF) ///
-----------------------------*/
ul.bar-social {
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	height:auto;
	margin:0px;
	padding:0px;
	width:100%;
	}
	@media only screen and (max-width:720px) {
	ul.bar-social {
	margin-top:40px;
	justify-content:center;
	}}



ul.bar-social * {
	list-style:none;
	text-decoration:none;
	}


ul.bar-social li,
ul.bar-social li a { line-height:40px; }

ul.bar-social li{
	height: auto;
	margin:0px 2px 2px 0px;
	padding:0px;
	width:auto;
	}

ul.bar-social li a{
	background-color:#dedede;/*delete o set*/
	border-radius:50%;
	display:block;
	height:30px;
	overflow:hidden!important;
	width:30px;
	}

ul.bar-social .svg-icon {
	height:100%;
	padding:5px;/* set */
	width:100%;
	}


/* Brans colors */
#svg-facebook {fill:#3b5998;}
#svg-instagram {fill:#c13584;}

/* BOX INFO  ----------------------------*/
.box-info {
	font-size:0.9em;
	height:auto;
	padding:20px;
	margin:5px 0px; /* set */
	width:100%;
	}