html { -webkit-text-size-adjust: none; scroll-behavior: smooth; }
body { margin: 0; font-family: "DM Sans", sans-serif; font-size: 17px; font-weight: 400; line-height: 28px; color: #797C7F; }
h1, h2, h3, h4, h5, h6 { font-weight: bold; color: #1C1F1B; margin: 0 0 15px; line-height: normal; }
h1 { font-size: 60px; }
h2 { font-size: 50px; }
h3 { font-size: 40px; }
h4 { font-size: 25px; }
h5 { font-size: 20px; }
h2 span { color: #004F18; }
p { margin: 0 0 15px; }
p:last-child { margin: 0; }
a { text-decoration: none; transition: 0.5s all; }
a:focus, input:focus, textarea:focus { outline: none; }
input, textarea, button { font-family: "DM Sans", sans-serif; }
* { box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }
.container { max-width: 1200px; padding: 0 15px; width: 100%; margin: 0 auto; position: relative; }
section { float: left; width: 100%; padding: 70px 0; }
header { position: absolute; left: 0; width: 100%; z-index: 9999; top: 35px; }
main.main-content { float: left; width: 100%; }
footer { float: left; width: 100%; }
ul.slick-dots { bottom: -50px; left: 0; right: 0; }
.mob-navigation { display: none; }
header .container { display: flex; align-items: center; justify-content: space-between; }
header .logo img { width: 240px; height: 70px; }
header .navigation ul { padding: 0; margin: 0; display: flex; align-items: center; }
header .navigation ul li { list-style: none; margin-right: 30px; }
header .navigation ul li a { color: #FFFEFE; font-size: 14px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; position: relative; }
header .navigation ul li a:after { background: #ffffff; bottom: -5px; content: ""; height: 2px; left: 0; position: absolute; width: 100%; transition: transform 0.3s ease-out 0s, border-color 0.3s ease-out 0s; transform: scaleX(0); -webkit-transform: scaleX(0); -moz-transform: scaleX(0); }
header .navigation ul li a:hover::after { transform: scaleX(1); -webkit-transform: scaleX(1); -moz-transform: scaleX(1); }
header .navigation ul li.cnt-btn { margin-right: 0; }
header .navigation ul li.cnt-btn a { font-size: 15px; background: #004F18; padding: 8px 20px 8px 20px; display: inline-block; text-transform: uppercase; }
header .navigation ul li.cnt-btn a:hover { background: #ffffff; color: #004F18; }
header .navigation ul li.cnt-btn a:after { display: none; }
main.main-content .section-1 { height: 100vh; padding: 0; }
main.main-content .section-1 .slide.slick-slide { position: relative; }
main.main-content .section-1 .slide.slick-slide:after { position: absolute; content: ""; background: linear-gradient(to bottom, #000000 0%, #ffffff00 50%); top: 0; width: 100%; height: 100%; }
main.main-content .section-1 .slide.slick-slide img { height: 100vh; width: 100%; object-fit: cover; }
main.main-content .section-1 .slide.slick-slide .caption { font-size: 60px; font-weight: 600; color: #FFFEFE; position: absolute; bottom: 80px; left: 100px; background: url(../img/heading-bg.png) no-repeat; letter-spacing: -3px; background-size: 100% 100%; padding: 10px 70px 10px 10px; line-height: normal; }
section.section-2 { background: #EBF0ED; }
section.section-2 .container { display: flex; flex-wrap: wrap; align-items: center; }
section.section-2 .container .left-area { width: 50%; margin-right: 2%; text-align: right; }
section.section-2 .container .left-area h3 { text-transform: uppercase; color: #004F18; }
section.section-2 .container .left-area span { color: #1C1F1B; font-size: 24px; font-weight: 700; text-transform: uppercase; }
section.section-2 .container  .right-area { width: 46%; margin-left: 2%; }
section.section-3 h2 { text-align: center; }
.services-gallery { margin-top: 30px }
.services-gallery ul { padding: 0; margin: 0; display: flex; flex-wrap: wrap; row-gap: 20px; column-gap: 2%; }
.services-gallery ul li { width: 32%; list-style: none; position: relative; overflow: hidden; line-height: 0; }
.services-gallery ul li img { height: 450px; object-fit: cover; }
.services-gallery ul li span { position: absolute; bottom: 0px; left: 0; background: rgb(0 79 24 / 70%); padding: 20px; margin: 0 20px; min-height: 400px; opacity: 0; visibility: hidden; transition: 0.5s all; }
.services-gallery ul li span h4 { color: #ffffff; }
.services-gallery ul li span p { font-size: 14px; color: #ffffff; line-height: 22px; }
.services-gallery ul li:hover span { opacity: 1; visibility: visible; bottom: 20px; }
section.section-4 .container { background: #EBF0ED; padding: 70px; text-align: center; }
section.section-5 { margin-bottom: 70px; }
section.section-5 .container { display: flex; align-items: center; flex-wrap: wrap; max-width: 90%; }
section.section-5 .container:after { position: absolute; background: #EBF0ED; width: 70%; height: 555px; content: ""; top: 50%; right: 0; z-index: -1; transform: translateY(-50%); }
section.section-5 .container .left-img { width: 50%; }
section.section-5 .container .right-content { width: 50%; padding: 5%; }
section.section-5 .container .left-img img { width: 100%; height: 415px; object-fit: cover; }
section.section-6 .container { display: flex; align-items: center; flex-wrap: wrap; max-width: 90%; }
section.section-6 .container:after { position: absolute; background: #EBF0ED; width: 70%; height: 555px; content: ""; top: 50%; left: 0; z-index: -1; transform: translateY(-50%); }
section.section-6 .container .left-content { width: 50%; padding: 5%; }
section.section-6 .container .right-img { width: 50%; }
section.section-6 .container .right-img img { width: 100%; height: 415px; object-fit: cover; }
section.section-7 { text-align: center; padding-bottom: 0; }
section.section-7 span.small-heading { color: #1C1F1B; font-size: 14px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; opacity: 0.9; }
section.section-7 h2 { max-width: 75%; margin: 0 auto 40px; }
.gallery-wrapper { display: grid; grid-template-columns: 2fr 1fr; margin: auto; }
.gallery-wrapper .right-grid { display: grid; grid-template-columns: 1fr 1fr; }
.gallery-wrapper img { width: 100%; height: 100%; object-fit: cover; cursor: pointer; }
section.section-8 { background: #EBF0ED; text-align: center; padding-bottom: 100px; }
section.section-8 span.small-heading { color: #1C1F1B; font-size: 14px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; opacity: 0.9; }
section.section-8 .client-testimonials { background: #ffffff; padding: 30px; max-width: 1060px; margin: 0 auto; }
section.section-8 .client-testimonials .item.slick-slide img { margin: 0 auto 30px; }
section.section-8 .client-testimonials .item.slick-slide p { max-width: 800px; margin: 0 auto; }
section.section-9 { background: #004F18; }
section.section-9 .container { display: flex; flex-wrap: wrap; align-items: center; }
section.section-9 .container .left-content { width: 52%; margin-right: 2%; }
section.section-9 .container .right-content { width: 44%; margin-left: 2%; }
section.section-9 .container .left-content h2 { margin: 0; color: #FFFEFE; font-size: 47px; }
section.section-9 .container .right-content form { display: flex; flex-wrap: wrap; }
section.section-9 .container .right-content div#formResponse { text-align: center; margin-top: 20px; }
section.section-9 .container .right-content div#formResponse span.success { font-weight: 600; font-size: 20px; }
section.section-9 .container .right-content div#formResponse span.success { color: #ffffff; }
section.section-9 .container .right-content div#formResponse span.failed { color: #FF0000; }
section.section-9 .container .right-content form .label { width: 46%; margin: 0 2% 15px; }
section.section-9 .container .right-content form .label input { border-bottom: 2px solid #CACACA; background: none; border-top: 0; border-left: 0; border-right: 0; padding: 0 10px 20px 10px; width: 100%; color: #C5C5C5; font-size: 16px; font-weight: 400; letter-spacing: 0.1px; }
section.section-9 .container .right-content form .textarea { width: 100%; margin: 0 2% 15px; }
section.section-9 .container .right-content form .textarea textarea { height: 60px; border-bottom: 2px solid #CACACA; background: none; border-top: 0; border-left: 0; border-right: 0; padding: 0 10px 25px 10px; width: 100%; resize: none; color: #C5C5C5; font-size: 16px; font-weight: 400; letter-spacing: 0.1px; }
section.section-9 .container .right-content form .submit { width: 100%; margin: 10px 2% 0; }
section.section-9 .container .right-content form .submit button[type="submit"] { border: 1px solid #FFFEFE; background: none; color: #FFFEFE; padding: 15px 40px 15px 40px; font-size: 15px; font-weight: 700; text-transform: uppercase; cursor: pointer; transition: 0.5s all; }
section.section-9 .container .right-content form .submit button[type="submit"]:hover { background: #FFFEFE; color: #004F18; }
footer { background: #1C1E1D; padding: 50px 0 25px; }
footer .footer-widget .container { display: flex; flex-wrap: wrap; }
footer .footer-widget .column.col-1 { width: 30%; margin-right: 10%; }
footer .footer-widget .column.col-2 { width: 12%; margin-right: 2%; }
footer .footer-widget .column.col-3 { width: 12%; margin-right: 2%; }
footer .footer-widget .column.col-4 { margin-right: 0; width: 32%; }
footer .footer-widget .column h3 { color: #FFFEFE; font-size: 19px; font-weight: 700; letter-spacing: -0.6px; }
footer .footer-widget .column img { width: 100%; }
footer .footer-widget .column ul.footer-navigation { margin: 0; padding: 0; }
footer .footer-widget .column ul.footer-navigation li { list-style: none; margin-bottom: 20px; }
footer .footer-widget .column ul.footer-navigation li:last-child { margin-bottom: 0; }
footer .footer-widget .column ul.footer-navigation li a { color: #D2D3D5; }
footer .footer-widget .column ul.footer-navigation li a:hover { color: #ffffff; }
footer .footer-widget { padding-bottom: 50px; margin-bottom: 25px; border-bottom: 1px solid #3C3F47; }
footer .copyright-wrapper .container { display: flex; align-items: center; justify-content: space-between; }
footer .copyright-wrapper .container p { margin: 0; font-size: 16px; color: #D2D3D5; }
footer .copyright-wrapper .container p a { color: #D2D3D5; }
footer .copyright-wrapper .container p a:hover { color: #ffffff; }
footer .footer-widget .column.col-4 .cnt-info span { display: flex; color: #D2D3D5; margin-bottom: 20px; }
footer .footer-widget .column.col-4 .cnt-info span i { margin-right: 16px; color: #ffffff; font-size: 15px; margin-top: 8px; }
footer .footer-widget .column.col-4 .cnt-info span a { color: #D2D3D5; }
footer .footer-widget .column.col-4 .cnt-info span:last-child { margin-bottom: 0; }
footer .footer-widget .column.col-4 .cnt-info span a:hover { color: #ffffff; }