@font-face {
    font-family: 'AptosNarrow';
    src: url('../fonts/AptosNarrow.eot');
    src: url('../fonts/AptosNarrow.eot') format('embedded-opentype'),
         url('../fonts/AptosNarrow.woff2') format('woff2'),
         url('../fonts/AptosNarrow.woff') format('woff'),
         url('../fonts/AptosNarrow.ttf') format('truetype'),
         url('../fonts/AptosNarrow.svg#AptosNarrow') format('svg');
}
@font-face {
    font-family: 'AptosNarrowBold';
    src: url('../fonts/AptosNarrowBold.eot');
    src: url('../fonts/AptosNarrowBold.eot') format('embedded-opentype'),
         url('../fonts/AptosNarrowBold.woff2') format('woff2'),
         url('../fonts/AptosNarrowBold.woff') format('woff'),
         url('../fonts/AptosNarrowBold.ttf') format('truetype'),
         url('../fonts/AptosNarrowBold.svg#AptosNarrowBold') format('svg');
}


*{ padding: 0; margin: 0; box-sizing: border-box;}
html {overflow-x:hidden;}
body {background:#fff; font-family: "AptosNarrow", sans-serif; font-size: 16px; color:#000;}
h1, h2, h3, h4, h5, h6, p {font-family: "Playfair Display", serif;}
li {font-family: "AptosNarrow", sans-serif;}
h1 {font-weight: 700 !important; font-size: 50px !important; line-height: 1.05 !important; color: #000000 !important;}
h2 {font-size: 40px !important; line-height: 1.1 !important;}
h3 {font-size: 35px !important; font-weight: 500 !important; line-height: 1.2 !important;}
h4 {font-size: 20px !important; font-weight: 500 !important; line-height: 1.2 !important;}
a {text-decoration: none !important;}
p, li {font-size: 16px; line-height: 1.4; color: #000; font-family: "AptosNarrow", sans-serif;}
a {color:#76bd52; display:inline-block; text-decoration:none; font-family: "AptosNarrow", sans-serif;}
ul{ list-style-type:none;}
.btnsite {font-family: "AptosNarrow", sans-serif; font-size: 15px; text-transform: normal; border-radius: 100px; line-height: 1.2; padding: 15px 38px;}
.container {max-width: 1200px !important;}


.mainsiteheader .container {display: flex; justify-content: space-between; padding-top: 18px; padding-bottom: 18px; align-items: center;}
.mainsiteheader {position: relative; z-index: 9;}
.logoarea img {width: 144px;}
.mainsiteheader .nav-item a.active, .mainsiteheader .nav-item a:hover {color: #678155; border-bottom: 1px solid #678155;}
.mainsiteheader .nav-item {margin: 0px 5px;}
.mainsiteheader .nav-item a {font-size: 15px; color: #000000; padding-top: 5px; padding-bottom: 5px; padding-left: 2px !important; padding-right: 2px !important;}
.mainsiteheader .navbar {padding-bottom: 0px; padding-top: 5px;}
.mainsiteheader .rightbtn a {font-weight: 700; font-size: 15px; color: #0e482b; background: linear-gradient(to top, #c8e986 0%, #e8f6a8 55%); padding: 14px 24px; line-height: 1; border-radius: 100px;}
.mainsiteheader .rightbtn a:hover {background: linear-gradient(to top, #e8f6a8 0%, #c8e986 55%);}
.sitefooter {background-color: #174730; padding-top: 40px; padding-bottom: 10px;}
.sitefooter ul {padding-left: 0; display: flex; justify-content: center;}
.sitefooter ul li {font-size: 15px;}
.sitefooter ul li a {color: #fff; padding: 0px 14px; border-right: 1px solid #fff; line-height: 1;}
.sitefooter ul li:last-child a {border-right: 0px solid #fff;}
.sitefooter ul li a:hover, .sitefooter ul li.active a {color: #dcf19b;}
.footerwrap {display: flex; padding-top: 45px; padding-bottom: 35px; color: #fff;}
.footerwrap p, .footerwrap li, .footerwrap li a {color: #fff;}
.footerwrap h4 {font-size: 20px; line-height: 1.1;}
.footerlogoarea img {margin-bottom: 20px;}
.footerwrap ul {padding-left: 0px; padding-top: 10px;}
.footerlogoarea {width: 34%; padding-right: 80px;}
.footermenuarea {width: 37%; padding: 0px 20px 0px 60px; position: relative;}
.footermenuarea:before {position: absolute; content: ""; left: 0; top: 0; background-image: url('../images/line1.png'); background-repeat: no-repeat; width: 1px; height: 100%;}
.footermenuarea:after {position: absolute; content: ""; right: 0; top: 0; background-image: url('../images/line2.png'); background-repeat: no-repeat; width: 1px; height: 100%;}
.footermenuarea ul {columns: 2; -webkit-columns: 2; -moz-columns: 2; gap: 30px;}
.footermenuarea ul li a {display: block; padding: 6px 0px; line-height: 1.1;}
.footermenuarea ul li a:hover, .footermenuarea ul li.active a {color: #426336;}
.contact-info-area {width: 29%; padding-left: 80px;}
.copyrightarea {padding: 16px 0px; border-top: 1px solid #fff;}
.copyrightarea p {text-align: center; color: #fff; margin: 0; padding: 0;}
.copyrightarea p a {color: #fff; text-decoration: underline !important;}
.contact-info-area ul li {background-repeat: no-repeat; background-position: 0% 28%; padding: 8px 0px 8px 35px;}
.contact-info-area ul li.address {background-image: url('../images/address.png');}
.contact-info-area ul li.phoneno {background-image: url('../images/phone.png');}
.contact-info-area ul li.email {background-image: url('../images/email.png');}
.contact-info-area ul li.website {background-image: url('../images/web.png');}
.supportsec {background-color: #426336; padding-top: 15px; padding-bottom: 15px; color: #fff;}
.bannersection {position: relative;}
.bannersection:after {position: absolute; content: ""; z-index: 2; width: 100%; height: 100%; left: 0; top: 0; background: linear-gradient(to right, #04361d 10%, #00f2fe00 55%);}
#bannerslider .item img {width: 100%; height: 550px; object-fit: cover;}
.bannersection .bannertxt {
    position: absolute;
    top: 27%;
    z-index: 3;
    max-width: 34%;
}
.bannertxt h1 {color: #ffffff !important; padding-bottom: 22px; border-bottom: 1px dashed #e6f5a5a8; margin-bottom: 20px;}
.bannertxt h1 span {display: block; position: relative;}
.bannertxt p {color: #ffffff;}
.bannerbtn {margin-top: 20px;}
.bannerbtn span:first-child a {background: linear-gradient(to top, #c8e986 0%, #e8f6a8 55%); color: #0e482b; border: 1px solid #c8e986;}
.bannerbtn span:first-child a:hover {background: linear-gradient(to top, #e8f6a8 0%, #c8e986 55%);}
.bannerbtn span:last-child a {background-color: #0000004d; color: #fff; border: 1px solid #e7f6a7;}
.bannerbtn span:last-child a:hover {background-color: #000000;}
.bannerbtn a {font-size: 15px; border-radius: 100px; padding: 14px 30px 14px 30px; line-height: 1.1; font-weight: 700;}
.downloadarea {background-color: #f6f3ed; padding-top: 70px; padding-bottom: 70px;}
.downloadarea h2 {text-align: center; color: #174730;}
.downloadwrap {display: flex; gap: 14px; flex-wrap: wrap; margin-top: 35px; justify-content: center;}
.downloadwrap .dowmbtn {width: 19%;}
.downloadwrap .dowmbtn a {display: block; background-color: #fff; border-radius: 10px; text-align: center; padding: 23px 20px; transition: all 0.3s;}
.downloadwrap .dowmbtn a:hover {transform: scale(0.95);}
.downloadwrap .dowicon {width: 80px; height: 80px; border-radius: 100px; border: 1px solid #426336; display: flex; align-items: center;  justify-content: center; margin: auto; padding: 15px;}
.downloadwrap .dowicon img {filter: brightness(0) saturate(100%) invert(44%) sepia(28%) saturate(442%) hue-rotate(53deg) brightness(97%) contrast(88%);}
.downloadwrap h4 {color: #426336; margin-top: 12px; margin-bottom: 12px;}
.service-section {padding-top: 80px; padding-bottom: 80px; background-color: #ffffff;}
.servicetopcontent h3 {text-align: center; color: #000;}
.serviceslider {margin-top: 40px;}
.serbox {text-align: center;}
.serbox h4 {margin-top: 25px; margin-bottom: 0; font-family: "Playfair Display", serif; color: #112b25; font-weight: 500 !important; font-size: 25px !important;}
.serbox img {height: 350px; object-fit: cover;}
#serviceslider .owl-dots .owl-dot {margin-top: 20px;}
#serviceslider .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 4px;
    background: #022248;
    opacity: 0.6;
}
#serviceslider .owl-nav button span {display: none;}
#serviceslider .owl-nav button {background-repeat: no-repeat !important; background-position: center !important; width: 58px; height: 37px; position: absolute; top: 43%; background-color: transparent !important;}
#serviceslider .owl-nav .owl-prev {background-image: url('../images/leftarrow.png'); left: -44px;}
#serviceslider .owl-nav .owl-next {background-image: url('../images/rightarrow.png'); right: -44px;}
#serviceslider .owl-dots .owl-dot.active span {opacity: 1;}
.contentarea {padding-top: 80px; padding-bottom: 80px;}
.contentarea h2 {text-align: center; margin-bottom: 30px;}
.contentarea p a, .contentarea li a {color: #022248; font-weight: 700;}
.contentarea ul {padding-left: 0px; padding-bottom: 15px;}
.contentarea ul li {background-image: url('../images/right.png'); background-repeat: no-repeat; background-position: left center; padding: 2px 18px 2px;}
.contentarea h3, .contentarea h4 {margin-top: 20px; margin-bottom: 10px;}
.serviceswrapper {display: flex; gap: 15px; flex-wrap: wrap; justify-content: center; margin-top: 20px; margin-bottom: 30px;}
.serviceswrapper .serbox {background-color: #eaeaea; width: 24%;}
.serviceswrapper .sericon {background-color: #fff;}
.shadow {
    box-shadow: var(--bs-box-shadow) !important;
}
.thankyouwrap p {text-align: center;}
.formwrapper {
    max-width: 600px;
    margin-left: 0;
    padding: 50px 15px 50px 40px;
}
.specialised-section .formwrapper {margin-left: auto !important; padding-right: 0;}
.formwrapper h3 {color: #17472f; margin-bottom: 20px;}
.formbtn {text-align: left; margin-top: 10px;}
.formbtn .btn {
    background-color: #174730;
    color: #fff !important;
    border-radius: 100px;
    padding: 13px 40px;
    font-family: "AptosNarrow", sans-serif;
    line-height: 1.1;
}
.formbtn .btn:hover {background-color: #426336;}
.inputwrap {display: flex; gap: 15px;}
.inputext {width: 100%;}
.inputext input, .inputext textarea {
    font-family: "AptosNarrow", sans-serif;
    width: 100%;
    background-color: #fff;
    outline: none;
    border: 0;
    color: #000;
    font-weight: 400;
    font-size: 15px;
    border-radius: 4px;
    border: 0px solid;
    padding: 12px 18px;
    margin-bottom: 10px;
}
.inputext input::placeholder, .inputext textarea::placeholder {color: #000;}
.getintouch-section {display: flex;}
.getintouch-section .getintouch-left {width: 50%; box-shadow: 0px 0px 10px 0px #ccc;}
.getintouch-section .getintouch-right {width: 50%; background-color: #e0e2d8;}
.getintouch-left img {width: 100%; height: 100%; object-fit: contain;}
.belmontesimg {text-align: center;}
.belmontesimg img {width: auto;}
.specialised-section {background-image: url('../images/spbg2.jpg'); background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; padding-top: 55px; padding-bottom: 32px;}
.specialisedcolboxwrap {display: flex; gap: 12px; margin-top: 95px;}
.specialisedcol {max-width: 58%; margin-left: auto;}
.specialisedcolbox {background-color: #dcdfc9; text-align: center; width: 32%; border-radius: 5px; padding: 0px 14px 18px 14px;}
.specialisedcolbox img {margin-top: -50px;}
.specialisedcolbox h6 {color: #0e482b; font-style: italic; font-size: 18px; font-weight: 400; margin-bottom: 0; margin-top: 10px;}
.specialisedcolcontent {padding-left: 170px;}
.specialisedcolcontent h3 {color: #112b25; padding-bottom: 12px; margin-bottom: 16px; border-bottom: 1px solid #c6cccb;}
.contentwrap {padding-top: 80px; padding-bottom: 80px;}
.contentwrap h2 {text-align: center; margin-bottom: 25px;}
.contentwrap p {font-size: 17px;}
.contentwrap a {color: #174730; font-weight: 600;}
.contentwrap .row {margin-top: 10px;}
.map.shadow {
    box-shadow: var(--bs-box-shadow) !important;
    padding: 10px;
}
.thnkwrap p {text-align: center;}



/*=============responsive=============*/
@media only screen and (min-width: 1201px) and (max-width: 1300px) {

}

@media only screen and (min-width: 1025px) and (max-width: 1200px) {
.bannersection .bannertxt {max-width: 40%;}
.service-section, .speclisie-section, .contentarea {
    padding-top: 70px;
    padding-bottom: 70px;
}
#bannerslider .item img {
    height: 458px;
}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
h1 {font-size: 42px !important;}
h2 {font-size: 36px !important;}
h3 {font-size: 32px !important;}
p, li {font-size: 15px;}
.container {max-width: 800px !important;}
.navbar-toggler {background-color: #fff !important; display: block !important;}
.mainsiteheader .navbar-collapse {
    position: fixed;
    top: 83px;
    left: -100%;
    width: 90%;
    height: 100vh;
    background: #174730;
    padding-top: 20px;
    transition: 0.4s ease;
    display: block !important;
    border-radius: 0;
    z-index: 1001;
}
.mainsiteheader .navbar-collapse.show {
    left: 0;
    align-items: baseline;
}
.mainsiteheader .navbar-nav {
    padding: 10px 30px;
    position: relative;
    display: block;
    width: 100%;
}
.mainsiteheader .nav-item a {color: #fff;}
.bannersection .bannertxt {
    top: 25%;
    max-width: 55%;
}
#bannerslider .item img {
    height: 388px;
    object-position: 66% 50%;
}
.downloadwrap .dowmbtn {width: 31%;}
.footermenuarea {padding: 0px 20px 0px 30px;}
.contact-info-area {padding-left: 25px;}
.downloadarea {padding-top: 55px; padding-bottom: 55px;}
.service-section, .speclisie-section, .contentarea {padding-top: 50px; padding-bottom: 50px;}
.serviceswrapper .serbox {width: 31%;}
.sitefooter ul {display: block; text-align: center;}
.sitefooter ul li {display: inline-block;}
.belmontesimg img {
    width: 100%;
}
#serviceslider .owl-nav .owl-next {
    right: 0px;
}
#serviceslider .owl-nav .owl-prev {
    left: 0px;
}
.specialisedcolcontent {
    padding-left: 188px;
}
.specialisedcolboxwrap {margin-top: 66px;}
.specialised-section {
    padding-top: 32px;
    padding-bottom: 30px;
}
.specialisedcolbox h6 {font-size: 15px;}
.specialisedcol {
    max-width: 80%;
}
.serbox img {
    height: 300px;
}
.serbox h4 {
    margin-top: 18px;
    font-size: 21px !important;
}
.mainsiteheader .logoarea {width: 70%;}
.mainsiteheader .navbar {width: 10%; justify-content: right;}
.mainsiteheader .rightbtn {width: 20%; text-align: right;}
.bannersection:after {background: linear-gradient(to right, #04361d 10%, #00f2fe00 70%);}
.specialised-section .container {margin-right: 0;}
.contentwrap {padding-top: 50px; padding-bottom: 50px;}
.specialised-section .formwrapper {max-width: 450px; padding-top: 30px; padding-bottom: 30px;}
}

@media only screen and (min-width: 600px) and (max-width: 767px) {
.serviceswrapper .serbox {width: 47% !important;}
}

@media only screen and (min-width: 320px) and (max-width: 767px) {
h1 {font-size: 36px !important;}
h2 {font-size: 34px !important;}
h3 {font-size: 30px !important;}
.container {max-width: 550px !important;}
.mainsiteheader .navbar-collapse {
    position: fixed;
    top: 79px;
    left: -100%;
    width: 90%;
    height: 100vh;
    background: #174730;
    padding-top: 20px;
    transition: 0.4s ease;
    display: block !important;
    border-radius: 0;
    z-index: 1001;
}
.mainsiteheader .navbar-collapse.show {left: 0;}
.mainsiteheader .navbar-nav {padding: 10px 20px; position: relative;}
.headertopbarwrap ul {flex-wrap: wrap;}
.logoarea img {width: 120px;}
.mainsiteheader .nav-item a {color: #fff;}
.bannersection .bannertxt {
    position: inherit;
    top: 20%;
    max-width: 400px;
    padding: 37px 10px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}
.bannersection:after {display: none};
.bannerbtn a {padding: 15px 40px 15px 20px; background-position: 85% 50%;}
.bannertxt h1 span:after, .footermenuarea:before, .footermenuarea:after, .bannersection:before {display: none;}
#bannerslider .item img {
    height: 250px;
    object-position: 80% 50%;
}
.downloadwrap .dowmbtn {width: 47%;}
.downloadwrap .dowmbtn a {padding: 23px 15px;}
.downloadwrap h4 {font-size: 16px !important;}
.downloadarea {
    padding-top: 40px;
    padding-bottom: 40px;
}
.footerlogoarea {
    width: 100%;
    padding-right: 0;
}
.footermenuarea {
    width: 100%;
    padding: 20px 0px 20px 0px;
}
.contact-info-area {
    width: 100%;
    padding-left: 0px;
}
.service-section, .contentarea {
    padding-top: 40px;
    padding-bottom: 40px;
}
.servicetopcontent {
    width: 100%;
    text-align: center;
}
#serviceslider .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
    margin: 5px 2px;
}
.serviceswrapper .serbox, .belmontesimg img {width: 100%;}
.specialisedcolcontent {padding-left: 0;}
.specialisedcol {
    max-width: 100%;
    margin-left: auto;
    background-color: #ffffff9e;
    text-align: center;
    padding: 20px 10px;
}
.sitefooter ul {display: block; text-align: center;}
.sitefooter ul li {display: inline-block;}
#serviceslider .owl-nav .owl-prev {
    left: 0;
}
#serviceslider .owl-nav .owl-next {
    right: 0;
}
.specialisedcolboxwrap {
    display: block;
    margin-top: 30px;
}
.specialisedcolbox {
    width: 100%;
    padding: 18px 14px 18px 14px;
    margin-bottom: 10px;
}
.specialisedcolbox img {
    margin-top: 0;
}
.getintouch-section {
    flex-wrap: wrap;
}
.getintouch-section .getintouch-left, .getintouch-section .getintouch-right {
    width: 100%;
}
.formwrapper {
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
    padding: 40px 20px 40px 20px;
}
.specialised-section .formwrapper {
    padding-right: 20px;
}
.formbtn, .formwrapper h3 {text-align: center;}
.serviceslider {
    margin-top: 26px;
}
.serbox h4 {
    margin-top: 16px;
    font-size: 22px !important;
}
.serbox img {
    height: 300px;
}
.specialised-section {
    background-position: 22% 50%;
    padding-top: 40px;
}
.mainsiteheader .rightbtn a {
    font-size: 13px;
    padding: 14px 11px;
}
.bannerbtn span:last-child a {background-color: #000000;}
.navbar-toggler-icon {
    width: 1.3em;
    height: 1.3em;
}
.navbar-toggler {padding: 3px 10px !important;}
.mainsiteheader .container {
    justify-content: center;
}
.mainsiteheader .logoarea {width: 58%;}
.mainsiteheader .navbar {width: 10%; justify-content: right;}
.mainsiteheader .rightbtn {width: 32%; text-align: right;}
.contentwrap {padding-top: 40px; padding-bottom: 40px;}
.contentwrap h2 {
    margin-bottom: 20px;
}
.bannersection {
    background-color: #174730;
}
.map iframe {width: 100%;} 
}