@import url(https://fonts.googleapis.com/css?family=Assistant:200,300,400,500,600,700,800);	
	
/*micro-clearfix by Nicolas Gallagher http://nicolasgallagher.com/micro-clearfix-hack/*/
/* For modern browsers */
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom: 1;
	border-radius: 3px;
}

	
:root { 
	/* ********** COLOR DEFINITIONS FOR SITE ********** */	
	--Charcoal:		#1C3A4B;
	--DutchWhite:	#F5E4C2;	
	
	--IndigoDye: 	#18415A;
	--Cornsilk: 	#F9F1D1;		
	
	--Charcoalx: 	#1C3A4Ba1;
    --Charcoalx-opaque: rgba(28, 58, 75, 0.77);
	
	--LightBlue:	#CBF5FD;
	--Artichoke:	#898C66;
	--Lion: 		#d7c8a8;
	--MidnightNavy: #273948;

}

body {
	background-color: var(--Charcoal);
	font-family: 'Assistant', Arial, sans-serif;
	font-size: 1.0em;
}

 img.scaled {
     width: 100%;
}

.boldPrint {
    font-weight: 600;
}

.dagesh {
    filter:brightness(1.2);
     -webkit-filter:brightness(1.2);
}

a {
	text-decoration: none;
	color: var(--LightBlue);
	border-bottom: 1px dotted (--LightBlue);
}
 a:hover {
	color: var(--Artichoke);
	border-bottom: 1px solid var(--Artichoke);
}


.hr-text {
	line-height: 1em;
	position: relative;
	outline: 0;
	border: 0;
	color: var(--DutchWhite);
	text-align: center;
	height: 1.5em;
	opacity: 0.6;
}

.hr-text:before {
	content: "";
	background: linear-gradient(to right, transparent, var(--DutchWhite), transparent);
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 4px;
}
.hr-text:after {
	content: attr(data-content);
	position: relative;
	display: inline-block;
	color: black;
	padding: 0 0.5em;
	line-height: 1.5em;
	color: var(--Charcoal);
	background-color: var(--DutchWhite);  
	border-radius: 9px;
}







/* *****     Inside the Header     ***** */	
header{
	position: relative;
	color: var(--DutchWhite);
	width: 100%;
}

video {
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.video-wrapper {
	border: 2px solid var(--DutchWhite);
	border-radius: 6px;
	width: auto;
	height: 425px;
	position: relative;
	overflow: hidden;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}

header .smap {
	border: 2px solid var(--Charcoal);
	background-color: rgba(28,58,75,.5);
	border-radius: 24px;
	padding: 20px;
	float: left; 
	display: inline-block;
	margin-top: 10px;
	margin-left: 45px;
	height: 250px;
}

.smap img {
	height: 200px;
	object-fit: cover;
}

header h1 {
	border: 2px solid var(--Charcoal);
	background-color: rgba(28,58,75,.5);
	text-shadow: 4px 4px 1px var(--Charcoal);
	padding: 20px;
	font-size: 3.25em;
	font-weight: 600;
	letter-spacing: 11px;
	text-align: left;
	/* Add this */
	display: inline-block;
	border-radius: 24px;
	float: right; 
	margin-top: 10px;
	margin-right: 45px;
}


/*		MAIN		*/

main, footer{
	border: 2px solid var(--Cornsilk);
	background: var(--IndigoDye);
	position: relative;
	color: var(--Cornsilk);
	width: 100%;
	border-radius: 6px;
	height: auto;
}


/*
*Centereing Wrap
*/
.wrap {
    width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: wrap;
	margin: 0;
	height: 100%;
}


.leMarkes {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}



.textWrap {
    width: 90%;
	justify-content: left;
	margin: 0 auto;
	height: 100%;
	
	font-size: 1.2em;
    font-weight: 300;
    margin-bottom: 1rem;
	text-align: left;

}

main h2.mainText, main h3.mainText, main h4.mainText {
	text-shadow: 2px 2px 1px var(--Charcoal);
	font-size: 2.25em;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-align: left;
}

main h3.mainText {
	font-size: 1.75em;
}

main h4.mainText {
	font-size: 1.50em;
}





.inline-element {
    display: inline-block;
    margin: 0;
    margin-right: 10px; /* Adds space after the heading */
  }


/* LISTS */

.custom-list {
	padding-left: 0px;
	margin-bottom: 40px;

	li {
		list-style: none;
    position: relative;
		padding-left: 55px;
		margin-bottom: 15px;

		&::before {
			content: "\2714";
			position: absolute;
      width: 30px;
			height: 30px;
			left: 30px;
			top: 0px;
			transform: translateX(-50%);
			background-color: var(  MidnightNavy);
			color: var(--DutchWhite);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 12px !important;
		}
	}
}

.custom-list.wrong {
	li {
		&::before {
			content: "X";
			font-weight: bold;
		}
	}
}

.custom-list.warning {
	li {
		&::before {
			content: "\26A0";
		}
	}
}

.custom-list.star {
	li {
		&::before {
			content: "\2605";
		}
	}
}

.custom-list.heart {
	li {
		&::before {
			content: "\2661";
			font-weight: bold;
		}
	}
}


/* FIGURES  */


.figure-left, .figure-right {
	width: 22%;
	border: thin var(--DutchWhite) solid;
	padding: 0.4em;
}

.figure-left {
	float: left;
	margin-right: 2%;
}

.figure-right {
	float: right;
	margin-left: 2%;
}

.figure-left p, .figure-right p {
	font-size: 0.8em;
	text-align: center;
	color: var(--DutchWhite);
}

.BandB-IconSet {
	margin-top: 0px;
	width: 20em;

}

.BandB-Icon {
	float: left;
	width: 36px;
	height: 36px;
	background: var(--DutchWhite);
	border-radius: 4px;
	margin-right: 12px;
	margin-top: 0px;

}







/*	olcards */
.olcards,
.olcards * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.olcards {
  list-style: none;
  counter-reset: cardCount;
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  --cardsGap: 1rem;
  gap: var(--cardsGap);
  padding-bottom: var(--cardsGap);
}
.olcards li {
  counter-increment: cardCount;
  display: flex;
  color: var(--Charcoal);
  --labelOffset: 1rem;
  --arrowClipSize: 1.5rem;
  margin-top: var(--labelOffset);
}

.olcards li::before {
  content: counter(cardCount, decimal-leading-zero);
  background: var(--DutchWhite);
  color: var(--IndigoDye);
  font-size: 2em;
  font-weight: 700;
  transform: translateY(calc(-1 * var(--labelOffset)));
  margin-right: calc(-1 * var(--labelOffset));
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-inline: 0.5em;
}

.olcards li .content {
  background-color: var(--cardColor);
  --inlinePadding: 1em;
  --boxPadding: 0.5em;
  display: grid;
  padding: var(--boxPadding) calc(var(--inlinePadding) + var(--arrowClipSize))
    var(--boxPadding) calc(var(--inlinePadding) + var(--labelOffset));
  grid-template-areas:
    "icon title"
    "icon text";
  gap: 0.25em 1em;
  clip-path: polygon(
    0 0,
    calc(100% - var(--arrowClipSize)) 0,
    100% 50%,
    calc(100% - var(--arrowClipSize)) 100%,
    calc(100% - var(--arrowClipSize)) calc(100% + var(--cardsGap)),
    0 calc(100% + var(--cardsGap))
  );
  position: relative;
}
.olcards li .content::before {
  content: "";
  position: absolute;
  width: var(--labelOffset);
  height: var(--labelOffset);
  background: var(--cardColor);
  left: 0;
  bottom: 0;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  filter: brightness(0.75);
}
.olcards li .content::after {
  content: "";
  position: absolute;
  height: var(--cardsGap);
  width: var(--cardsGap);
  background: linear-gradient(to right, rgba(0, 0, 0, 0.25), transparent 50%);
  left: 0;
  top: 100%;
}
.olcards li .icon {
  grid-area: icon;
  align-self: center;
  font-size: 2em;
}
.olcards li .content .title {
  grid-area: title;
  font-size: 1.25em;
  /* font-weight: 700; */
}
.olcards li .content .text {
  grid-area: text;
}




/*	*ServiceCard	*/

.ServiceCard {
	margin: 22px;
	box-shadow: 10px 5px 5px rgba(0, 0, 0, 0.418);
	border-bottom-right-radius: 44px;
	border-bottom-left-radius: 44px;
	border-top-right-radius: 44px;
	border-top-left-radius: 44px;
	position: relative;
	transition: 0.5s ease-in-out;
	width: 320px;
	text-align: center;
}

.ServiceCard:hover{
    transform: translateY(15px);
}

.ServiceCard:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 215px;
    /* background: linear-gradient(to bottom, rgba(0,176,155,0.5), rgba(150,201,61,1)); */
    background: var(--Charcoalx);
    transition: 0.5s all;
    opacity: 0;
}

.ServiceCard:hover::before {
    opacity: 1;
}

.ServiceCard__imagen{
    width: 100%;
    height: 100px;
}

.ServiceCard__imagen > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ServiceCard img {  
	border-top-right-radius: 44px;
	border-top-left-radius: 44px;
}

.ServiceCard___CoA{
	width: 60px;
    height: 70px;
	margin-left: auto;
	margin-right: auto;
}

.ServiceCard___CoA img {
		border-radius: 0;
}


.ServiceCard__info {
    font-size: 0.9rem;
    padding: 1rem 3rem 0rem 3rem;
    width: 70%;
    height: 21rem;
    line-height: 1.8em;
    background-color: var(--Charcoalx-opaque);
    color: var(--Cornsilk);
    border-bottom-right-radius: 44px;
    border-bottom-left-radius: 44px;
}

.ServiceCard h2 {
	font-size: 1.4em;
}

.ServiceCard__info p{
	font-size: 1.0em;
    font-weight: 400;
    margin-bottom: 1rem;
}


/* ServiceCard Button */
.comprar {
    text-decoration: none;
    color: var(--Charcoal);
    background-color: var(--DutchWhite);
    padding: 0.6em 4em;
    border-radius: 15px;
    font-weight: 700;
    margin-bottom: 1em;
}



/* =================================
  Responsive Lightbox Portfolio
==================================*/
#portfolio {
	display: block;
	background: var(--IndigoDye);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
	text-align: center;
}

#portfolio li {
	display: block;
	float: left;
	width: 18.50%;
	max-width: 400px;
	margin-left: 1.2%;
	margin-bottom: 5px;
}
#portfolio li a {
	display: block;
	padding: 1.5%;
	background: var(--DutchWhite);
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	border-bottom: 0;
	-webkit-box-shadow: 1px 2px 2px rgba(0,0,0,0.25);
	-moz-box-shadow: 1px 2px 2px rgba(0,0,0,0.25);
	box-shadow: 1px 2px 2px rgba(0,0,0,0.25);
	
	float: none;
	display: inline-block;
	width: 90%;
	margin-bottom: 10px;
}

.mfp-title {
	font-family: "PT Sans Narrow";
	font-size: 1.20em;
	letter-spacing: 1px;
	font-weight: 300;
	color: var(--DutchWhite) !important;
	text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.8);
	margin: 12px 24px 6px 0;
}
.mfp-title span {
	font-weight: 300;
	text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.8);
}
#portfolio h2 {
	text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.8);
}


#portfolio p {
	margin: 6px 2% 4px 2%;
	font-size: 3.0em;
}



.hetzi {	
	float:left;
	width: 48%;
	margin: .25%;
	padding: 0 0.33%;
}






.elem-group {
  margin: 20px 0;
  width: 100%;
}

.elem-shlish {
	float:left;
	width: 32%;
	margin: .25%;
	padding: 0 0.33%
}

.elem-shlish2 {
	border-left: 1px solid var(--DutchWhite);
	border-right: 1px solid var(--DutchWhite);
	
}

.elem-group.inlined {
  width: 49%;
  display: inline-block;
  float: left;
  margin-left: 1%;
}

label {
  display: block;
  padding-bottom: 10px;

}

input, select, textarea {
  border-radius: 2px;
  border: 2px solid #777;
  box-sizing: border-box;
  background: var(--DutchWhite);
  width: 100%;
  padding: 10px;
}

.elem-group.inlined input {
  width: 95%;
  display: inline-block;
}

textarea {
  height: 125px;
}




.figure-CAPTCHA{
     float: left;
     width: 43.50%;
     border: thin var(--PurpleL3) solid;
     margin-left: 5%;
     margin-top: 0.2em;
     margin-right: .4%;
     margin-bottom: 0.2em;
     padding: 0.5em;
}

.figure-CAPTCHA{
     width: 43.0%;
     padding: 0.1em;
}

.figure-CAPTCHA select{
     font-size: 0.75em;
     width: 100%;
     text-indent: 0;
}


.buttonBox {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
}

button {
  height: 60px;
  padding: 0 12px;
  background: var(--DutchWhite);
  border: none;
  color: var(--Charcoal);
  border-radius: 4px;
  cursor: pointer;
}

button:hover {
  border: 3px solid var(--LightBlue);
}



.p-table tr:nth-child(odd) {
    background-color: var(--Charcoal);
}

.p-table tr:nth-child(even) {
    background-color: var(--IndigoDye);
}

.p-table tr {
    border-bottom: 1px solid var(--DutchWhite);
}

.p-table th:first-child, 
.p-table td:first-child {
    padding-left: 16px;
}


.p-table td, 
.p-table th {
    padding: 8px 8px;
    display: table-cell;
    text-align: left;
    vertical-align: top;
}

.p-table th {
    font-weight: bold;
}
 
.p-table {
    
    border: 1px solid var(--DutchWhite);
    border-collapse: collapse;
    border-spacing: 0;
    width: 90%;
    display: table;
	margin-left: 5%;
}



/* IN FOOTER */

.col_1 {
        width:20%;
        padding:20px 2%;
        clear: left;
        float:left;
}

.col_2, .col_3, .col_4 {
		margin-left: 1.3%;
        width:20%;
        padding:20px 1.90%;
        float:left;
		border-left: 3px solid var(--Charcoal);
		
}




.rounded-social-buttons {
  text-align: center;
}

.rounded-social-buttons .social-button {
  display: inline-block;
  position: relative;
  cursor: pointer;
  width: 3.125rem;
  height: 3.125rem;
  border: 0.125rem solid transparent;
  padding: 0;
  text-decoration: none;
  text-align: center;
  color: #fefefe;
  font-size: 1.5625rem;
  font-weight: normal;
  line-height: 2em;
  border-radius: 1.6875rem;
  transition: all 0.5s ease;
  margin-right: 0.25rem;
  margin-bottom: 0.25rem;
}

.rounded-social-buttons .social-button:hover, .rounded-social-buttons .social-button:focus {
  -webkit-transform: rotate(360deg);
      -ms-transform: rotate(360deg);
          transform: rotate(360deg);
}

.rounded-social-buttons .fa-twitter, .fa-facebook-f, .fa-linkedin, .fa-youtube, .fa-instagram {
  font-size: 25px;
}

.rounded-social-buttons .social-button.facebook {
  background: #3b5998;
}

.rounded-social-buttons .social-button.facebook:hover, .rounded-social-buttons .social-button.facebook:focus {
  color: #3b5998;
  background: #fefefe;
  border-color: #3b5998;
}

.rounded-social-buttons .social-button.twitter {
  background: #55acee;
}

.rounded-social-buttons .social-button.twitter:hover, .rounded-social-buttons .social-button.twitter:focus {
  color: #55acee;
  background: #fefefe;
  border-color: #55acee;
}

.rounded-social-buttons .social-button.linkedin {
  background: #007bb5;
}

.rounded-social-buttons .social-button.linkedin:hover, .rounded-social-buttons .social-button.linkedin:focus {
  color: #007bb5;
  background: #fefefe;
  border-color: #007bb5;
}

.rounded-social-buttons .social-button.youtube {
  background: #bb0000;
}

.rounded-social-buttons .social-button.youtube:hover, .rounded-social-buttons .social-button.youtube:focus {
  color: #bb0000;
  background: #fefefe;
  border-color: #bb0000;
}

.rounded-social-buttons .social-button.instagram {
  background: #125688;
}

.rounded-social-buttons .social-button.instagram:hover, .rounded-social-buttons .social-button.instagram:focus {
  color: #125688;
  background: #fefefe;
  border-color: #125688;
}	
	
.rounded-social-buttons .social-button.whatsapp {
  background: #097669;
}

.rounded-social-buttons .social-button.whatsapp:hover, .rounded-social-buttons .social-button.whatsapp:focus {
  color: #075e54;
  background: #fefefe;
  border-color: #075e54;
}	






 .back-to-top{
     position: fixed;
     bottom: 12px;
     width: 50px;
     height: 50px;
     text-decoration: none;
     right: 12px;
     float: right;
     display: none;
     background-repeat: no-repeat;
     background-image: url(../graphics/Icons/Back2Top.png);
     border:none;
     opacity: 0.8;
}

 .back-to-top:hover{
     opacity: 1;
     border:none;
}


@media only screen and (max-width:496px){
/*	
body {
  background-color: red;
}
*/
	
body {font-size: 0.8750em;}

.video-wrapper {
	height: 550px;
}
	
	header .smap {
	width: 300px;
float: none;
	margin-top: 35px;
	margin-left:  auto;
	margin-right:  auto;
	height: 240px;
}

.smap img {
	height: 200px;
	object-fit: cover;
}

header h1 {
	margin-top: 25px;
	float: none;
	clear:both;
	width: 300px;
	display: block;
	margin-left:  auto;
	margin-right:  auto;
	font-size: 3.0em;
	letter-spacing: 8px;		
}




#portfolio li {
	width: 23.50%;
}





.hetzi {	
	float:left;
	clear: left;
	width: 99%;
	margin: .25%;
	padding: 0 0.33%;
	
}



.elem-shlish {
	float:left;
		clear: left;
	width: 99%;
	margin: .25%;
	padding: 0 0.33%
}

.elem-shlish2 {
	border-left: 0 solid var(--DutchWhite);
	border-right: 0 solid var(--DutchWhite);
	
}

.elem-group.inlined {
  width: 49%;
  display: inline-block;
  float: left;
  margin-left: 1%;
}






/* IN FOOTER */
.col_1, .col_2, .col_3, .col_4 {
	width:80%;
	margin: .2em auto;
	padding:20px 2%;
	float: none;
	border-left: none;
}

.col_2, .col_3, .col_4 {
	border-top: 3px solid var(--Charcoal);
}






	
	
}






	
@media only screen  and (min-width:497px) and (max-width:800px) {
	
/*
body {
  background-color: red;
}
*/

body {font-size: 0.8750em;}

.video-wrapper {
	height: 550px;
}
	
	header .smap {
	width: 300px;
float: none;
	margin-top: 35px;
	margin-left:  auto;
	margin-right:  auto;
	height: 240px;
}

.smap img {
	height: 200px;
	object-fit: cover;
}

header h1 {
	margin-top: 25px;
	float: none;
	clear:both;
	width: 300px;
	display: block;
	margin-left:  auto;
	margin-right:  auto;
	font-size: 3.0em;
	letter-spacing: 8px;		
}


#portfolio li {
	width: 23.50%;
}



.hetzi {	
	float:left;
	clear: left;
	width: 99%;
	margin: .25%;
	padding: 0 0.33%;
	
}



.elem-shlish {
	float:left;
		clear: left;
	width: 99%;
	margin: .25%;
	padding: 0 0.33%
}

.elem-shlish2 {
	border-left: 0 solid var(--DutchWhite);
	border-right: 0 solid var(--DutchWhite);
	
}

.elem-group.inlined {
  width: 49%;
  display: inline-block;
  float: left;
  margin-left: 1%;
}



/* IN FOOTER */
.col_1, .col_3 {
        width:43%;
        padding:20px 2%;
        clear: left;
        float:left;
		border-left: none;
		
}

.col_2, .col_4 {

		margin-left: 0;
        width:43%;
        padding:20px 2%;
        float:right;
		
		
}

.col_3, .col_4 {
	border-top: 3px solid var(--Charcoal);
}




	
}









@media only screen  and (min-width:801px) and (max-width:1200px) {
/*
body {
  background-color: red;
}
*/

body {font-size: 0.9375em;}

/* IN FOOTER */
.col_1, .col_3 {
        width:43%;
        padding:20px 2%;
        clear: left;
        float:left;
		border-left: none;
}

.col_2, .col_4 {

		margin-left: 0;
        width:43%;
        padding:20px 2%;
        float:right;
		border-left: none;
		
		
}

.col_3, .col_4 {
	border-top: 3px solid var(--Charcoal);
}

}




