body { font-size: 24px; line-height: 1.5; color: #303030; font-family: "Playfair", serif; font-weight: 300; }
::-moz-selection { background: #6D9587; color: #ffffff;}
::selection {background: #6D9587; color: #ffffff; }

h1, h2, h3, h4, h5 { color: #000; margin: 0.8em 0;}
p { margin: 0.7em 0; }
b { font-weight: 700;}
a { -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease; color: #6D9587;}
a:hover, a:active, a:focus { text-decoration: none; outline: none; color: #000;}
@media (max-width: 991.98px) { p { font-size: 20px; margin: 1.2em 0; } }

.grid {position: relative; margin: 60px auto; padding: 0 1.5em; list-style: none; text-align: left; }
@media (max-width: 991.98px) { .grid { margin: 20px auto; padding: 0; } }
.grid figure {position: relative; float: left; overflow: hidden; max-width: 100%; background: #fff; text-align: center; cursor: pointer; border-radius: 30px;}
.grid figure img { position: relative; display: block;  width: 100%; opacity: 1; filter: grayscale(1);}
.grid figure figcaption { padding: 2em; color: #000; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.grid figure figcaption::before, .grid figure figcaption::after { pointer-events: none; }
.grid figure figcaption, .grid figure figcaption > a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.grid figure figcaption > a { z-index: 999; text-indent: 200%; white-space: nowrap; opacity: 0;}
.grid figure h4 { color: #000; }
.grid figure h4, .grid figure p { text-align: left; margin: 0; font-size: 20px; color: #000;}
.grid figure p { color: #000; font-size: 14px; line-height: 1.5; }
figure.effect-lily img {max-width: none; -webkit-transform: scale(1); transform: scale(1); -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out;}
figure.effect-lily figcaption { color: #000; }
figure.effect-lily figcaption:hover {  }
figure.effect-lily figcaption > div { position: absolute;  bottom: 0; left: 0; padding: 2em; width: 100%; height: 50%;}
figure.effect-lily h4, figure.effect-lily p { -webkit-transform: translate3d(0,30px,0); transform: translate3d(0,30px,0); color: #000;}
figure.effect-lily h4, figure.effect-lily p { color: rgba(0,0,0,1); opacity: 0; -webkit-transition: opacity 0.2s, -webkit-transform 0.35s; transition: opacity 0.2s, transform 0.35s;}
figure.effect-lily:hover img, figure.effect-lily:hover p { opacity: 1; filter: grayscale(0); }
figure.effect-lily:hover img { opacity: 1; -webkit-transform: scale(1.1); transform: scale(1.1); }
figure.effect-lily:hover h4, figure.effect-lily:hover p { opacity: 1; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); color: #000; }
figure.effect-lily:hover p { -webkit-transition-delay: 0.05s; transition-delay: 0.05s; -webkit-transition-duration: 0.35s; transition-duration: 0.35s; }
@media only screen and (max-width: 1200px) {figure.effect-lily figcaption > div { height: 40%;}}
@media only screen and (max-width: 600px) {figure.effect-lily figcaption > div { height: 45%;}}
@media (max-width: 767.98px) {
  .grid figure {border-radius: 15px;}
  .grid figure img { filter: grayscale(0);}
  h4 {font-size: 20px;}}



@keyframes scrollHelperFerro {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(100%);
  }
  
}


.templateux-navbar { position: fixed; top: 0; transition: top .2s ease-in-out; left: 0; width: 100%; height: 100px; padding: 25px 10px; z-index: 99999; background-color: #fff; }
.nav-up { top: -100px;}


.templateux-navbar .container-fluid { max-width: 100%; }

.templateux-navbar .toggle-menu { z-index: 9999; position: relative; top: -13px; display: none; }

@media (max-width: 767.98px) { .templateux-navbar .toggle-menu { display: block; } }

.templateux-navbar .toggle-menu:active, .templateux-navbar .toggle-menu:focus { outline: none; }





.templateux-navbar .templateux-menu { position: relative; }

.templateux-navbar .templateux-menu ul { margin-bottom: 0; }

.templateux-navbar .templateux-menu ul li { display: inline-block; }

.templateux-navbar .templateux-menu ul li a { margin-right: 30px; font-size: 20px;  color: #000; position: relative; padding-bottom: 5px; display: block; }

.templateux-navbar .templateux-menu ul li a:before { content: ""; position: absolute; bottom: 0; height: 2px; width: 0; left: 0; background: #6D9587; -webkit-transition: .15s width ease; -o-transition: .15s width ease; transition: .15s width ease; }

.templateux-navbar .templateux-menu ul li a:hover:before { width: 100%; }

.templateux-navbar .templateux-menu ul li.active > a:before { width: 100%; }

.templateux-navbar .templateux-menu ul li:last-child a { margin-right: 0; }

@media (max-width: 767.98px) { .templateux-navbar .templateux-menu { position: fixed; width: 100%; background-color: #fff; top: 0; left: 0; margin: 0; text-align: center; height: 100vh; min-height: 400px; padding: 15px; display: none; padding-top: 100px; overflow-y: scroll; }
  .templateux-navbar .templateux-menu ul { margin-top: 40%;  }
  .templateux-navbar .templateux-menu ul li { display: block; margin-bottom: 20px; }
  .templateux-navbar .templateux-menu ul li a { padding: 10px 0 2px 0; font-size: 24px; display: inline-block; margin-right: 0; } }

@media (max-width: 767.98px) { .templateux-navbar .templateux-menu ul { margin-left: 0px; } }

.templateux-navbar.navbar-light .site-logo a img { color: #fff;}

.templateux-navbar.navbar-light .hamburger .hamburger-inner, .templateux-navbar.navbar-light .hamburger .hamburger-inner::before, .templateux-navbar.navbar-light .hamburger .hamburger-inner::after { background-color: #fff; }

.templateux-navbar.navbar-light .templateux-menu ul li a { color: #fff; }

.menu-open .templateux-navbar { position: fixed; left: 0; top: 0; }
.logo { width: 60%; margin-top: -10px; margin-left: -20px; color:#6D9587 ;}
@media (max-width: 1250px) { .logo { margin-top: -10px; width: 110%; }}
@media (max-width: 767.98px) { .menu-open .site-logo a { color: #000 !important; }
.logo { margin-top: 0px; width: 180%;}
}
@media (max-width: 550px) { .logo { margin-top: 0px; width: 260%;} }
@media (max-width: 375px) { .logo { margin-top: 0px; width: 260%;} }

.menu-open .navbar-light .hamburger .hamburger-inner, .menu-open .navbar-light .hamburger .hamburger-inner::before, .menu-open .navbar-light .hamburger .hamburger-inner::after { background-color: #000; }

.menu-open .templateux-menu li { opacity: 0; visibility: hidden; margin-left: -10px; position: relative; -webkit-transition: .3s all ease-in-out; -o-transition: .3s all ease-in-out; transition: .3s all ease-in-out; }

.menu-open .templateux-menu li.staggard { opacity: 1; visibility: visible; margin-left: 0px; }

@media (max-width: 767.98px) { .menu-open .templateux-menu li a { color: #000 !important; } }

.menu-open .templateux-menu li { opacity: 0; visibility: hidden; margin-left: -10px; position: relative; -webkit-transition: .3s all ease-in-out; -o-transition: .3s all ease-in-out; transition: .3s all ease-in-out; }

.menu-open .templateux-menu li.staggard { opacity: 1; visibility: visible; margin-left: 0px; }

@media (max-width: 767.98px) { .menu-open .templateux-menu li a { color: #000 !important; } }

.me {width: 500px; border-radius: 250px;}
.templateux-section ul {  padding-left: 20px; margin-left: 10px;}
.templateux-section ul li { font-size: 22px;  list-style-image: url('../images/check-line.svg');  margin: 10px 0;}
.templateux-section ul li b { font-weight: 600; }
@media (max-width: 767.98px) { .templateux-section ul {  padding-left: 10px; margin-left: 10px;} .templateux-section ul li { font-size: 20px; line-height: 1.4; margin: 8px 0;} }

.logos img { display: block; margin: 30px 150px 0 150px; max-height: 80px; max-width: 150px; }

@media (max-width: 767.98px) { .logos img { margin: 20px 100px 0 100px; max-height: 60px; max-width: 120px; } }

@keyframes scroll {
  0% {transform: translateX(0);}
  100% {transform: translatex(-1000%)}
}




.container-large { padding: 0 0 100px 0; max-width: 100%; overflow: hidden; margin: 0;}

.container-larger { padding: 0; max-width: 100%; overflow: hidden; margin: 0;}
@media (max-width: 767.98px) { .container-larger { padding: 0 25px; display: block; } }


.templateux-hero { background-image:url('../images/pattern.png') ; background-repeat: repeat; background-position: center center; position: relative; overflow: hidden; }
.small { font-size: 16px; font-weight: 300; color: #666; }
p.mail { font-size: 30px; font-weight: 700;}

@media (max-width: 991.98px) { .lead { font-size: 18px; } }
@media (max-width: 500px) { p.mail { font-size: 24px; } }



.templateux-hero .cover { position: absolute; display: block; width: 100%; height: 100%; z-index: -1; }

.templateux-hero.overlay:before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; right: 0; }

.templateux-hero.overlay h1 { color: #6D9587; font-family: "Playfair", serif; font-weight: 700; font-style: italic;}

.templateux-hero.overlay .lead { color: #000; }

.big { padding: 11em 0 !important; }
.big h1 { font-size: 100px !important; font-weight:900; font-style: italic; background-color: #fff;}
@media (max-width: 1250px) {.big { padding: 9em 0 !important; } .big h1 { font-size: 70px !important;} }
@media (max-width: 767.98px) { .big { padding: 8em 0 !important; } .big h1 { font-size: 50px !important;} }


.templateux-hero, .intro { display: flex;  min-height: 80vh; }

@media (max-width: 1250px) { .templateux-hero, .intro { min-height: 80vh; } }
@media (max-width: 767px) { .templateux-hero, .intro { min-height: 80vh; } }
@media (max-width: 375px) { .templateux-hero, .intro { min-height: 80vh; } }

.templateux-hero h1, .intro h1 { color: #6D9587; font-size: 50px;}
.templateux-section h1 { color: #6D9587; font-size: 58px; font-weight: 700; font-style: italic;}

@media (max-width: 991.98px) { .templateux-hero h1, .intro h1 , .templateux-section h1 { font-size: 36px;} }
@media (max-width: 375px) { .intro h1 {  margin-top: 80px; font-size: 40px;} }
.templateux-portfolio-overlap { position: relative; margin-top: -15vh; }

@media (max-width: 991.98px) { .templateux-portfolio-overlap { margin-top: -15vh; } }

.container-fluid { padding-left: 50px; padding-right: 50px; max-width: 1600px; }

@media (max-width: 767.98px) { .container-fluid { padding-left: 25px; padding-right: 25px; } }

.templateux-section { padding: 6em 0; }

@media (max-width: 991.98px) { .templateux-section { padding: 3em 0; } }

.templateux-section h2 { line-height: 1.5; }

.templateux-cta { padding: 12em 0; display: block; background: #f4f4f4; position: relative; }

.templateux-cta:before { content: ""; position: absolute; height: 0px; bottom: 0; background: #000000; width: 100%; left: 0; -webkit-transition: .3s all ease-out; -o-transition: .3s all ease-out; transition: .3s all ease-out; }

.templateux-cta .cta-inner { display: block; text-align: center;}

.templateux-cta span { display: block; position: absolute; left: 50%; top: 50%; margin: 0 auto; width: 100%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease; }

.templateux-cta .words-1 { opacity: 1; visibility: visible; top: 0; }

.templateux-cta .words-2 { opacity: 0; visibility: hidden; top: 40px; }

.templateux-cta h2 { font-weight: 500; margin-bottom: 0; color: #000000; position: relative; bottom: 0; -webkit-transition: .8s all ease-out; -o-transition: .8s all ease-out; transition: .8s all ease-out; }

.templateux-cta:hover:before, .templateux-cta:focus:before { height: 100%; }

.templateux-cta:hover .words-1, .templateux-cta:focus .words-1 { opacity: 0; visibility: hidden; top: -40px; }

.templateux-cta:hover .words-2, .templateux-cta:focus .words-2 { opacity: 1; visibility: visible; top: 0px; color: #fff; }

.section-heading { font-size: 24px; font-weight: 300; text-transform: uppercase; letter-spacing: .2em; color: #000000;  display: block; position: relative; margin: 0;  }


.btn:hover, .btn:focus, .btn:active { outline: none; -webkit-box-shadow: none !important; box-shadow: none !important; }

.form-control { height: 50px; background: #f6f6f6; border: none; }

.form-control:active, .form-control:focus { background: #f6f6f6; outline: none; -webkit-box-shadow: none !important; box-shadow: none !important; }

textarea.form-control { height: inherit; }

.button { padding: 15px 40px; display: inline-block; font-size: 13px; letter-spacing: .2em; text-transform: uppercase; color: #fff; border-radius: 30px; border: none; -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease; }

.button:hover, .button:active, .button:focus { outline: none; }

.button.button--red { background: #FF3D3D; }

.button.button--red:hover { text-decoration: none; color: #fff; -webkit-box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.4); box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.4); background: #d32535; }

.templateux-media h3 { font-size: 22px; color: #000000; }

.templateux-media img { width: 50%; margin: 20px 0 0 0;}

.owl-carousel .owl-dots { position: relative; text-align: center; width: 100%; }

.owl-carousel .owl-dots .owl-dot { width: 20px; height: 20px; position: relative; line-height: 0; }

.owl-carousel .owl-dots .owl-dot:active, .owl-carousel .owl-dots .owl-dot:focus { outline: none; }

.owl-carousel .owl-dots .owl-dot span { border: 2px solid #000; background: none; -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease; position: absolute; width: 10px; height: 10px; border-radius: 50%; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.owl-carousel .owl-dots .owl-dot.active span { border: 2px solid #000000; background: #000000; }

.owl-carousel.dots-overlap .owl-dots { bottom: 50px; position: absolute; z-index: 9; }

.owl-carousel.dots-overlap .owl-dots .owl-dot span { border: 2px solid #fff; background: none; -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease; position: absolute; width: 10px; height: 10px; border-radius: 50%; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.owl-carousel.dots-overlap .owl-dots .owl-dot.active span { border: 2px solid #000000; background: #000000; }

#map { height: 700px; width: 100%; }

.testimony {  padding: 2em 0 1em 0;  border-radius: 30px; background-color: #f4f4f4; }

.testimony blockquote { font-family: "Noto Serif", serif;  font-optical-sizing: auto;
  font-weight: 300; font-style: italic; font-variation-settings: "wdth" 100; font-style: italic; font-size: 40px; text-align: center; line-height: 60px;}


.testimony blockquote p { color: #000000; margin: 0;font-style: italic; } 

.testimony .author { margin-top: 20px; font-size: 20px; font-family: "Playfair", serif; color: #000000; text-align: center; font-weight: 600;font-style: normal; }



@media (max-width: 991.98px) {
  .testimony blockquote p { font-size: 23px;line-height: 36px; }
  .testimony .author { font-size: 16px;}
  .section-heading { font-size: 16px;}
}



.logofooter { display: block; margin: 0 auto 80px auto; width: 250px;}





.test p {
  font-size: 18px;
  color: #999999;
  line-height: 27px;
}

.test .top h2 {
  margin-bottom: 40px;
}

.test .top span {
  display: block;
  width: 48px;
  --c: linear-gradient(#008ed6 0 0);
  padding-bottom: 10px;
  background: var(--c), var(--c);
  background-size: 0 3px;
  background-position: 50% 100%;
  background-repeat: no-repeat;
  transition: 0.3s linear, background-size 0.3s 0.2s linear;
}



.test h1 {
  text-align: center;
}
.test .top span {
  text-align: center;
  margin: 24px auto 0;
}
.test .text {
  margin-bottom: 84px;
}
.test:hover .top span {
  background-size: 40% 3px;
  background-position: 10% 100%, 90% 100%;
}
.test p {
  font-size: 18px;
  font-weight: 300;
  font-style: italic;
  line-height: 32px;
  margin-bottom: 30px;
}
.test .person {
  display: flex;
  align-items: center;
  padding-bottom: 120px;
}
.test .title {
  margin-left: 24px;
}
.test .title h2{
  text-align: start;
}
.test h4 {
  color: #ffffff;
  font-size: 16px;
  margin-bottom: 120px;
}
.test .top h2 {
  margin-bottom: 18px;
}
.test .mobile-carousel{
  display: none;
}
.test .owl-carousel h2 {
  color: #ffffff;
  margin: 0;
}
.test .owl-carousel .owl-dots {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}
.test .owl-carousel .owl-dots span {
  background: transparent;
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.5);
  margin: 0 20px;
  transition: 0.3s all ease-in-out;
}
.test .owl-carousel .owl-dot.active span {
  transform: scale(1.5);
  transform-origin: center;
  background: #ffffff;
}

.owl-item {
 text-align: center;
 font-size: 40px;
}




.scroll-down {
  opacity: 1;
  -webkit-transition: all .5s ease-in 3s;
  transition: all .5s ease-in 3s;
}

.scroll-down {
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -30px;
  display: block;
  width: 60px;
  height: 60px;
  background-color: #6D9587;
  background-size: 60px auto;
  border-radius: 50%;
  z-index: 2;
  -webkit-animation: bounce 2s infinite 2s;
  animation: bounce 2s infinite 2s;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
  transform: scale(1)
}

.scroll-down:before {
    position: absolute;
    top: calc(50% - 10px);
    left: calc(50% - 8px);
    transform: rotate(-45deg);
    display: block;
    width: 15px;
    height: 15px;
    content: "";
    border: 3px solid white;
    border-width: 0px 0 3px 3px;
}

@keyframes bounce {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}

