@font-face{font-family: "socialico"; src: url("fonts/socialico-webfont.woff.woff2") format("woff2"), url("fonts/socialico-webfont.woff.woff") format("woff");}
.suspension-contain {max-height: 980px;overflow:hidden;position: relative;}
html.suspended {background: rgba(0,0,0,0.6);}
* {box-sizing: border-box;}
html{overflow-x: hidden;}
body {max-width: 100%;min-width: 1200px;margin: 0 auto;text-align: left; color: #333; font-size: 17px; overflow-x: hidden; font-family: 'Montserrat', sans-serif; position: relative;}
a {color:inherit;text-decoration: none; transition: all ease-out 0.3s; word-break: break-all;}
a:hover {text-decoration: none; color: #39A00B;}
h1,h2,h3,h4,h5,h6{padding:0; margin:0 0 20px; line-height: 120%; font-family: 'Playfair Display', serif; color: #39A00B;}
h1{font-size: 74px;}
h2{font-size: 74px;}
h3{font-size: 67px;}  
h4{font-size: 58px;}
h5{font-size: 50px;}
h6{font-size: 24px;}
p{line-height: 200%;}
ul{padding-left: 25px; margin-top: 0;}
p{margin: 0 0 20px;}
.row {max-width: 1430px;margin: 0 auto; padding: 0 15px; width: 100%;}

/*button*/
a.btn, button{width: 235px; height: 60px; border: 0; font-family: 'Montserrat', sans-serif; font-size: 18px; color:#fff; padding: 10px; display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex;justify-content: center;align-items: center; line-height: 1; transition: all ease 0.3s; text-align: center; border-radius: 60px; background: #39A00B; font-weight: 400; column-gap: 10px;}
a.btn:hover, button:hover{background: #000;}
a.btn.alt{background: #000; border: 3px solid #FFF;}
a.btn.alt:hover{background: #39A00B;}

/*image*/
img{display: block; max-width: 100%;}
.img-responsive{width: 100%;}

/*floats*/
.fl {float:left;}
.fr {float:right;}

.flex{display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex; justify-content: space-between; row-gap: 20px; column-gap: 20px;}

/*typography*/
.text-primary{ color: #39A00B; }
.text-bold{ font-weight: 700; }
.text-uppercase{ text-transform: uppercase }
.text-center{ text-align: center !important; }
.text-left{ text-align: left; }
.text-right{ text-align: right; }

/*clearings*/
.clear{ clear:both;}
.clearfix:after {content:"."; display:block; height:0; clear:both;visibility:hidden;font-size: 0;}
.clearfix {display:block;}

/*cookie*/
.cc-animate.cc-revoke.cc-bottom{font-size: 14px; padding: 5px 10px; position: fixed; display: block!important; transform: none!important; bottom: 0!important; left: 20px!important;}

/*call to action*/
.destroy-on-load, .cta {display: none;}

/*contact form messages*/
form .messages p {display: none; font-weight: 400 !important;letter-spacing: 0 !important;font-size: 16px !important;}
form .loading {display: none;}
form .alert {padding: 15px;margin-bottom: 20px;border: 1px solid transparent;border-radius: 4px;}
form .alert-success {color: #3c763d;background-color: #dff0d8;border-color: #d6e9c6;}
form .alert-danger {color: #a94442;background-color: #f2dede;border-color: #ebccd1;}
form [type="submit"] {margin:20px auto}

/*gallery*/
#content .gallery-container {text-align: center;}
#content .gallery {list-style-type: none;margin: 0;padding: 0;}
#content .gallery li {display: inline-block;}
#content .thumbnail {background-color: #fff;border: 1px solid #ddd;border-radius: 4px;display: block;line-height: .42857; margin-bottom: 20px;padding: 4px;transition: border 0.5s ease-in-out 0s;}
#content .thumbnail img{height: 225px; width: 225px; object-fit: cover;}
#content .thumbnail:hover {transform: scale(1.02);}
#content .page_navigation {display: inline-block;}
#content .page_link,#content .previous_link,#content .next_link,#content  .first_link,#content  .last_link, #content .ellipse {background-color: #fff;border: 1px solid #ddd;color:  #0275d8;display: inline-block;line-height: 1.25;margin-left: -1px;padding: 0.5rem 0.75rem;position: relative;}
#content .page_navigation > a:hover , .page_navigation > a.active_page {background-color: #eceeef;border-color: #ddd;color: #014c8c;text-decoration: none;}

/*header*/
#header{position: relative; z-index: 999;}
#header .row{max-width: 1800px;}
#header .more{display: flex; align-items: center; justify-content: space-between; column-gap: 30px; width: 1150px; max-width: 100%;}
#header .content{display: flex; align-items: flex-start; justify-content: space-between; column-gap: 30px;}
#header .btn{width: 375px;}
#header .btn strong{font-size: 23px; font-weight: 700;}
#header nav{max-width: 100%; position: relative; z-index: 1;}
#header nav a#pull {display: none;}
#header ul{list-style: none; padding: 0; margin: 0; display: flex; align-items: center; justify-content: space-between; column-gap: 10px; width: 730px; max-width: 100%;}
#header ul li a{font-size: 17px; text-align: center; color: #FFF; font-weight: 600;}
#header ul li:hover a, #header ul li.active-menu a{color: #00CC00;}

/*banner*/
#banner{background: url('../images/common/banner.jpg') center center; background-size: cover; position: relative; margin-top: -225px; padding: 1100px 0 80px;}
#banner .row{max-width: 1800px;}
#banner .content{max-width: 890px;}
#banner h2{color: #FFF; line-height: 95%; margin-bottom: 20px;}
#banner p{color: #FFF; line-height: 120%; margin-bottom: 30px; font-size: 22px;}

/*content*/
#welcome{background: url('../images/common/w-bg.jpg') bottom center no-repeat; padding: 150px 0 365px;}
#welcome .content{display: flex; align-items: flex-start; justify-content: space-between; column-gap: 30px; row-gap: 20px;}
#welcome .txt{width: 570px; max-width: 100%;}
#welcome small{font-size: 20px; color: #666;font-weight: 600;}
#welcome h1{margin-bottom: 30px; line-height: 87%;}
#welcome h1 span{font-size: 20px; color: #666;font-weight: 600; font-family: 'Montserrat', sans-serif; display: block; line-height: 140%;}
#welcome p{font-size: 16px; letter-spacing: 0.02em;}
#welcome .img{width: 838px; max-width: 100%; margin-right: -295px; margin-top: -190px;}
#welcome .img img{box-shadow: 0 7px 15px rgba(0 0 0 / 24%);}
#welcome .box{background: #FFF; border-top: 15px solid #71B915; border-radius: 15px; padding: 95px 20px 175px; box-shadow: 0 5px 13px rgba(102 102 102 / 10%);}
#welcome .box .in{width: 1200px; max-width: 100%; margin: 0 auto;}
#welcome .more{margin-right: -45px; margin-top: -130px;}
#welcome .items{width: 1120px; max-width: 100%; margin: 0 0 0 auto; display: flex; column-gap: 20px;}
#welcome .item{width: 265px; height: 250px; max-width: 100%;border-radius: 10px; background: #39A00B; transition: all ease 0.3s; display: flex; align-items: center; justify-content: center;}
#welcome .item:hover{background: #71B915;}
#welcome .item img{margin: 0 auto 20px; width: 115px; height: 110px; object-fit: scale-down; object-position: center bottom;}
#welcome .item h6{color: #FFF; text-align: center; margin: 0;}

#services{padding: 0 0 160px; background: url('../images/common/s-bg.jpg') top 205px center no-repeat; margin-top: -205px;}
#services .box{background: #FFF; border-top: 15px solid #71B915; border-radius: 15px; padding: 90px 20px 130px; box-shadow: 0 5px 13px rgba(102 102 102 / 10%);}
#services .box .in{width: 1140px; max-width: 100%; margin: 0 auto;}
#services .content{display: flex; column-gap: 30px; row-gap: 20px; margin: 0 auto; justify-content: space-between;}
#services .img{width: 929px; max-width: 100%; margin: -190px 0 0 -310px;}
#services .img img{margin-bottom:40px;  box-shadow: 0 7px 15px rgba(0 0 0 / 24%);}
#services .bot{width: 670px; max-width: 100%; margin: 0 0 0 auto; padding-right: 50px;}
#services small{font-size: 20px; font-weight: 600; letter-spacing: 0.1em; color: #999;}
#services ul{font-size: 22px; font-weight: 700; letter-spacing: 0.03em; color: #666; line-height: 174%; width: 370px; max-width: 100%; margin-bottom: 0;}
#services p{font-size: 21px; font-weight: 700; letter-spacing: 0.02em; line-height: 136%; margin-bottom: 10px;}
#services .phone{color: #999; font-size: 20px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase;}
#services .phone a{color: #39A00B; font-size: 39px; font-weight: 700; letter-spacing: initial; vertical-align: middle;}

#gallery{margin-top: -315px;}
#gallery h5{margin-bottom: 100px; color: #FFF;}
#gallery .content{display: flex; justify-content: space-between; align-items: flex-end; row-gap: 20px; column-gap: 30px;}
#gallery .items{display: flex; justify-content: center; align-items: flex-start; row-gap: 20px; column-gap: 20px; flex-wrap: wrap; width: 727px; max-width: 100%; padding-bottom: 135px;}
#gallery .img{margin-right: -160px;}

#reviews{padding: 25px 0 0; margin-bottom: -210px; position: relative;}
#reviews .content{display: flex; justify-content: space-between; align-items: center; column-gap: 30px; row-gap: 20px; background: #FFF; box-shadow: 0 5px 13px rgba(102 102 102 / 10%); border-radius: 10px;}
#reviews span{display: flex; align-items: center; column-gap: 5px; margin-bottom: 15px;}
#reviews .txt{width: 590px; max-width: 100%; margin: 0 auto;}
#reviews .txt p{font-style: italic; font-size: 17px; line-height: 188%; margin: 0;}
#reviews h5{margin-bottom: 60px;}
#reviews small{font-size: 20px; font-weight: 700; letter-spacing: 0.1em;}

#finest{padding: 350px 0 490px; text-align: center; text-shadow: 0 7px 4px rgba(0 0 0 / 65%); background: url('../images/common/f-bg.jpg') center center no-repeat; background-size: cover;}
#finest .btn{width: 375px; margin: 0 auto;}
#finest .btn strong{font-size: 23px; font-weight: 700;}
#finest .row{max-width: 1170px;}
#finest h4{color: #FFF;}
#finest p{margin-bottom: 30px; color: #FFF; font-weight: 800; font-size: 26px; line-height: 120%;}

/*form*/
.ctc-form {margin: 0 auto;text-align: center; font-family: 'Montserrat', sans-serif;}
.ctc-form input[type="text"], .ctc-form textarea {border: 0; border: 1px solid rgba(0 0 0 / 25%); border-radius: 0; font-size: 16px;height: 50px;display: block;width: 100%;padding: 10px 20px;box-sizing: border-box;margin: 0 auto 15px; font-weight: 400; background: transparent; border-radius: 10px; background: #EBEBEB; font-family: 'Montserrat', sans-serif;}
.ctc-form textarea {height: 155px;padding-top:10px; width: 100%;}
.ctc-form ::placeholder{color: #999;}
.ctc-form label{font-size: 15px;}
.ctc-form .flex {display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex; column-gap: 15px; align-items: center; justify-content: space-between;}
.ctc-form .flex label{width: 100%;}
.ctc-form .recap {display: inline-block;}
.ctc-form .g-recaptcha {padding: 0;}
.ctc-form .g-recaptcha div {line-height: 0;  margin: 0 auto;}
.ctc-form .ctc-hide {display: none;}
.ctc-form .cap{margin-bottom: 15px;}
.ctc-form .consent{margin-bottom: 15px;}

/*footer*/
#footer{background: url('../images/common/ft-bg.jpg') top 365px center no-repeat; background-size: cover; margin-top: -365px}
#footer .content{display: flex; align-items: center; justify-content: space-between; column-gap: 30px; row-gap: 20px;}
#footer .contact{ margin: 0 auto; text-align: center;}
#footer .contact .row{max-width: 1630px;}
#footer .contact img{margin: 0 auto 50px;}
#footer .contact .box{background: #FFF; padding: 40px 20px; border-top: 15px solid #71B915; border-radius: 15px; box-shadow: 0 5px 10px rgba(102 102 102 / 10%);}
#footer .contact .in{width: 1270px; max-width: 100%; margin: 0 auto;}
#footer .contact .consent{text-align: left;}
#footer .contact small{font-size: 20px; color: #999999;}
#footer .contact p{margin-bottom: 40px; color: #999999; font-size: 16px; letter-spacing: 0.04em;}
#footer .social{display: flex; align-items: center; justify-content: space-between; column-gap: 5px;width: 210px;}
#footer .info .row{max-height: 1250px;}
#footer .item .i:first-of-type{margin-bottom: 40px;}
#footer .item a img{margin: 0 auto;}
#footer .i{color: #FFF; font-size: 18px; font-weight: 600;}
#footer .i.phone a{font-size: 23px; letter-spacing: 0.05em;}
#footer .i span{color: #00CC00; display: block; text-transform: uppercase; letter-spacing: 0.1em; font-size: 15px; margin-bottom: 10px;}
#footer .bot{background: #71B915; padding: 15px 0;}
#footer .copy{font-weight: 500; font-size: 14px; line-height: 120%; letter-spacing: 0.13em; text-align: center; color: #FFF;}
#footer .copy img{vertical-align: middle; display: inline-block; height: 25px; margin-left: 5px;}
#footer ul{list-style: none; padding: 0; color: #FFF; display: flex; align-items: center; justify-content: space-between; width: 620px; margin: 65px auto 30px;}
#footer ul li a{font-size: 13px; color: #FFF; font-weight: 600;}
#footer ul li:hover a, #footer ul li.active-menu a{color: #00CC00;}

/*inner pages*/
.inner #content {min-height: 300px;padding: 40px 0 425px; position: relative; z-index: 3;}
.inner #content .row{max-width:1230px;margin:0 auto;}
.inner #content ul li{text-align: left;}
.inner #content h1{padding: 0;margin: 0 0 20px;line-height: 120%; color: #39A00B; text-transform: uppercase; text-align: center;}
.inner #content h2{padding: 0;margin: 0 0 20px;line-height: 120%; color: #39A00B; text-align: left; text-transform: initial;}
.inner #content h3{padding: 0;margin: 0 0 20px;line-height: 120%; color: #39A00B; text-align: left;}
.inner #content p{text-align: left;}
.inner .test .item{border-radius: 15px; background: #FFF; padding: 50px; min-height: 310px; box-shadow: 0 0 5px rgba(0,0,0,0.5); text-align: left;}
.inner .test h2{margin-bottom: 40px; color: #39A00B;}
.inner .test span{display: flex; align-items: flex-start; column-gap: 5px; margin-bottom: 10px; font-weight: 600; font-size: 18px;}
.inner .test p{font-style: italic; line-height: 32px; letter-spacing: 0.03em;}
.inner .txt{background: #39A00B; padding: 20px; width: calc(100% - 480px);}
.inner .img{width: 480px; max-width: 100%}
.inner .flex{column-gap: 0; align-items: stretch;}
.inner .txt h4{color: #FFF;}
.inner .txt ul{font-size: 20px; color: #FFF;}

/*privacy policy*/
.inPrivacyBox {max-width: 850px; margin: 0 auto 20px;}
.inPrivacyBox p {text-align: justify!important;}


/** Responsive
-------------------------------------------------------*/

@media screen and (max-width: 1399px) {
  #header ul{width: 470px;}
}

@media screen and (max-width: 768px){
  body {min-width: 320px;}
  h1,h2,h3,h4,h5,h6{text-align: center !important; letter-spacing: initial !important; margin-bottom: 20px !important;}
  h1,h2{font-size: 35px !important;}
  h3{font-size: 30px !important;}
  h4{font-size: 25px !important;}
  h5 {
    font-size: 25px !important;
  }

  .row {padding: 0;}
  h1 span,h2 span{letter-spacing: initial !important;}
  h1 small,h2 small{letter-spacing: initial !important;}
  p{letter-spacing: initial !important; margin-bottom: 20px !important;}
  li{font-size: 15px;}
  a{word-break: break-word;}
  .ctc-form .flex{flex-wrap: wrap;}
  .inner #content h1{font-size: 35px !important;}
  .inner #content h2{font-size: 30px !important;}
  .inner #content h3{font-size: 25px !important;}
  .inner #content h4{font-size: 20px !important;}
  .inner #content h5{font-size: 18px !important;}
  .inner #content h6{font-size: 16px !important;}
  .inner #content{padding: 40px 0;}
  .btn{max-width: 100%; margin: 0 auto;}
  #header {padding: 40px 0 0; position: relative; z-index: 2;}
  #header .row{flex-wrap: wrap; padding: 0;}
  #header nav {display: block;height: auto;position: fixed;width: 100%;top: 0;box-shadow: 0 0 5px rgb(0 0 0 / 70%); left: 0;}
  #header nav ul {  display: none; height: auto;border-bottom:5px solid #39A00B; padding: 10px; margin: 0; width: 100%; border-radius: 0; background: #202020;}
  #header nav ul li { width: 100%;position: relative; }
  #header nav ul li a {float:none; padding: 10px 20px; border-radius: 0; width: 100%; display: block; color: #FFF; font-size: 18px; padding: 0; height: auto; line-height: 180%; text-align: left;}
  #header ul li:hover a, #header ul li.active-menu a{background: none; color: #39A00B;}
  #header nav a {text-align: left; width: 100%;}
  #header nav a strong {position: absolute; top: 50%; transform: translateY(-50%); left: 15px;}
  #header nav a#pull {display: block; color: #fff; background-color: #39A00B; height: 40px;padding: 10px 15px; width: 100%; position: relative; font-size: 20px;}
  #header nav a#pull:after { content:""; background: url('../images/nav-icon.png') no-repeat; width: 20px; height: 20px; display: inline-block; position: absolute; right: 15px; top: 50%; transform: translateY(-50%);}
  .cta{box-shadow: 0 0 5px #000; background: #39A00B  url("../images/common/phonecall.png") no-repeat center center;border-bottom-left-radius: 40px;border-top-left-radius: 40px;bottom: 1%;display: block;height: 80px;position: fixed;right: 0;text-decoration: none; text-indent: -9999em;width: 100px;z-index: 999;}
  #reviews .in, .content{flex-wrap: wrap; justify-content: center !important; align-items: center !important;}
  #footer, #map, #gallery, #why, #reviews, #welcome, #services{padding: 40px 10px;}
  .btns{justify-content: center;}
  #welcome .btns{margin-bottom: 20px;}
  #welcome h4{margin: 0 !important;}
  #footer .contact img{margin-bottom: 20px;}
  #reviews .line{margin: 0 auto;}
  .btns .btn{margin: 0;}
  #banner{padding: 400px 0 40px; margin-top: -285px;}
  #header .btn {margin-top: 20px; width: 300px;flex-direction: column;}

  #banner p {
    text-align: center
  }

  #welcome .box {
    padding: 40px 10px;
  }

  #welcome .txt {
    text-align: center;
    width: 100%;
  }

  #welcome .items {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    width: 100%
  }

  #welcome .item {
    flex-basis: 48%;
    width:  100%;
  }

  #welcome .more {
    margin: 0;
  }

  #welcome .img {
    margin-right: 0;
    margin-top: 0;
  }

  #services {
    margin-top: 0;
    text-align: center
  }

  #services .img {
    margin:  0;
  }

  #services .bot {
    width:  100%;
    padding: 0;
  }

  #services ul {
    text-align: left;
    font-size: 16px;
    width: 100%;
  }

  #services .phone {
    font-size: 16px
  }

  #services .phone a {
    font-size: 20px
  }

  #services .box {
    padding: 40px 0;
  }

  #gallery {
    margin-top: 0;
  }

  #gallery h5 {
    color: #39A00B;
  }

  #gallery .items {
    padding-bottom: 30px;
    width: 100%;
  }

  #gallery .img {
    margin-right: 0;
  }

  #reviews {
    text-align: center;
    margin-bottom: 0;
  }

  #reviews span {
    justify-content: center;
  }

  #reviews .content {
    padding: 10px;
  }

  #reviews .txt {
    width: 100%
  }

  #finest {
    padding: 150px 0 390px;
  }

  .ctc-form .flex {
    justify-content: center;
  }

  #footer .info .row {
    padding-top: 40px;
  }

  #footer .content {
    text-align: center;
  }

  #footer ul {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 100%
  }

  #footer .content > div.item {
    width: 100%;
  }

  #footer .content > div.item:last-of-type {
    order: -1;
  }

  #footer .content > div.item:first-of-type {
    order: -1;
  }

  #footer .social {
    justify-content: center;
    margin: auto;
  }

  .inner #footer {
    margin-top: 0;
  }
  .inner .flex {
    flex-direction: column;
}
.inner .txt {
  background: #39A00B;
  padding: 10%;
  width: 100%;
}
.inner .img {
  width: 480px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
}
