

.bg-light-blue{
	background-color:#d7e6f3;
}

.inside-footer-widgets a, .copyright-bar a{ text-decoration:none; }
.no-decoration a{ text-decoration:none; }

.main-navigation .main-nav ul li.nav-button a {
    background-color: #28bdbc;
    border:1px solid #28bdbc;
    border-radius: 25px;
    color: white;
    line-height: 40px; /*this number will likely need to be adjusted*/
    max-height: 42px;

    margin-bottom:5px;
    margin-left:2px;
    margin-right:2px;
}
.main-navigation .main-nav ul li.nav-button a:hover{
  background-color:white;
  color:#28bdbc; 
}

.page-hero { position:relative; overflow: hidden; }

.background-video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.65;
}

.background-video-content {
    position: relative;
    z-index: 1;
/*    text-shadow: 0px 0px 5px #000;*/
}

video[poster] {
    object-fit: cover;
    width: 100%;
    height: 100%;
}




@media (min-width: 769px) {
	.halfpage-image-left-text-container{ flex-wrap: wrap-reverse; }
	.halfpage-image-left-text-container .gb-inside-container, 
	.halfpage-image-right-text-container .gb-inside-container{ max-width: 650px; }
}


@media (min-width: 1025px) {

  .background-video-content h1{ font-size:62px; }

  .homepage-massimo-grid{ justify-content: stretch; }

  .homepage-reviews-img{ 
    position: absolute;
      bottom: 0px;
      right: 0px;
  }

  .homepage-massimo{
    position: absolute;
      bottom: 0px;
      left: 25%;
  }

  .main-navigation .main-nav ul li.nav-button a { margin-left: 10px; margin-bottom: 0px; margin-right: 0px; }
}


.testimonials .slick-next{ top: auto; bottom:0px; right:10px; z-index: 3; /*top: 160px;*/ }
.testimonials .slick-prev{ top:auto; bottom:0px; left: auto; right:65px;  z-index: 3; }

.testimonials .slick-next:before{ 
  content: url('../img/arrow-right.webp');
}
.testimonials .slick-prev:before{ 
  content: url('../img/arrow-left.webp');
}

/* CONTACT FORM */
.contact-form, .brief-form{ display:flex; flex-wrap: wrap; justify-content: space-between; }
.contact-form label{ display:block; margin-bottom:5px; }
.grid-50{ flex-basis: 49%; margin-bottom:20px; }
.grid-33{ margin-bottom:20px; flex-basis: 32%; }
.grid-100{ flex-basis: 100%; margin-bottom:20px; }



.wpcf7-form label{ color: #073541; }

.wpcf7-form input[type="text"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="date"],
.wpcf7-form select,
.wpcf7-form textarea{
	display: block;
	width: 100%;
	padding: 10px 20px;
	background-color: white;
	border: 1px solid #555;
	border-radius: 25px;
}

.wpcf7-form select{
	appearance:none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: transparent;
	background-image: url("data:image/svg+xml;utf8,<svg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
	background-repeat: no-repeat;
	background-position-x: 97%;
	background-position-y: 10px;
}



.wpcf7-form input[type="text"]:focus, 
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="date"]:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus{
	border: 1px solid #84bdc6;
	outline: none;
}


.wpcf7-form input[type="submit"]{
	text-transform: uppercase;
	font-weight: bold;
	padding: 10px 25px !important;
	letter-spacing: 1px;
  border-radius: 35px;
	background-color: #84bdc6;
}
.wpcf7-form input[type="submit"]:hover{
	background-color:  #61AAB6;
	color: white;
}

.wpcf7 form .wpcf7-response-output{ margin:0px; border-radius:3px; }
/*.wpcf7 form .wpcf7-response-output, .wpcf7 form .wpcf7-response-output{ background-color:#fff8ae; }*/
.wpcf7-not-valid-tip{ font-size: 0.813em; padding:2px 15px;}


@media (max-width: 769px) {
	.grid-50{ flex-basis: 100%; }
	.grid-33{ flex-basis: 100%; }
}






/* ANIMATION */


/* Banner text reveal */


.background-video-content h1{
  animation: banner-text-reveal 1.5s cubic-bezier(0.77, 0, 0.175, 1) 0s 1;
}

@keyframes banner-text-reveal {
  0% {
    transform: translate(0,100%);
    opacity:0;
  }
  100% {
    transform: translate(0,0);
    opacity: 1;
  }
}



/* ken-burns */
.ken-burns-effect-bg::before{
	animation: ken-burns-effect 60s ease infinite;
  /* Add infinite to loop. */
  
  -ms-animation: ken-burns-effect 60s ease infinite;
  -webkit-animation: ken-burns-effect 60s ease infinite;
  -0-animation: ken-burns-effect 60s ease infinite;
  -moz-animation: ken-burns-effect 60s ease infinite;
}

@keyframes ken-burns-effect {
  0% {
    -webkit-transform-origin: bottom left;
    -moz-transform-origin: bottom left;
    -ms-transform-origin: bottom left;
    -o-transform-origin: bottom left;
    transform-origin: bottom left;
    transform: scale(1.0);
    -ms-transform: scale(1.0); /* IE 9 */
    -webkit-transform: scale(1.0); /* Safari and Chrome */
    -o-transform: scale(1.0); /* Opera */
    -moz-transform: scale(1.0); /* Firefox */
  }
  50%{
  	transform: scale(1.2);
    -ms-transform: scale(1.2); /* IE 9 */
    -webkit-transform: scale(1.2); /* Safari and Chrome */
    -o-transform: scale(1.2); /* Opera */
    -moz-transform: scale(1.2); /* Firefox */
  }
  100% {
    transform: scale(1.0);
    -ms-transform: scale(1.0); /* IE 9 */
    -webkit-transform: scale(1.0); /* Safari and Chrome */
    -o-transform: scale(1.0); /* Opera */
    -moz-transform: scale(1.0); /* Firefox */
  }
}
@-webkit-keyframes ken-burns-effect {
  0% {
    -webkit-transform-origin: bottom left;
    -moz-transform-origin: bottom left;
    -ms-transform-origin: bottom left;
    -o-transform-origin: bottom left;
    transform-origin: bottom left;
    transform: scale(1.0);
    -ms-transform: scale(1.0); 
    /* IE 9 */
    
    -webkit-transform: scale(1.0);
    /* Safari and Chrome */
    
    -o-transform: scale(1.0);
    /* Opera */
    
    -moz-transform: scale(1.0);
    /* Firefox */
  }
  100% {
    transform: scale(1.2);
    -ms-transform: scale(1.2); /* IE 9 */
    -webkit-transform: scale(1.2); /* Safari and Chrome */
    -o-transform: scale(1.2); /* Opera */
    -moz-transform: scale(1.2); /* Firefox */
  }
}