:root{ scroll-behavior: smooth;}
body {
    -webkit-font-smoothing: antialiased!important;
    text-rendering: auto;
font-family: "Inter", sans-serif;
color: #333;
font-size: 16px;
font-weight: 400;
line-height: 1.65;
}
.fs-32{font-size: 32px;}
.fs-22{font-size: 22px;}
.fs-20{font-size: 20px;}
.fs-18{font-size: 18px;}
.fs-14{font-size: 14px;}
.bg-gray{
	background-color: #252525;
}
.w-80{width: 80%;}
.border-radius-10{border-radius:10px}
.border-right{
    border-style: solid;
    border-width: 0px 1px 0px 0px;
    border-color: #333333;
}


.fixed-top {
    top: -40px;
    transform: translateY(40px);
    transition: transform .3s;
}
.fw-semibold{font-weight: 600;}


nav.navbar {padding: 10px 0; background-color: #fff;}
.navbar-nav li a{
    color: #121111 !important;
    text-decoration: none;
    font-weight: 500;
    padding: 0 35px 0 0 !important;
    font-size: 15px;
   
}
.navbar-nav li.current-menu-item a{color:#ffa13d !important;}


.footer-bottom ul.social-menu{text-align: right;}



.footer-part {
    font-size: 15px;
    background-color: #1b9210;   
}
.footer-part h5 {
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 18px;color:#fff;
}
.footer-part p a ,.footer-part p{
    color: #fff;
    text-decoration: none;
}
.footer-part ul {
    padding: 0;
    margin: 0;
    list-style: none;   color: #fff;
    font-weight: 400
}

.footer-part ul li {
    padding-bottom: 8px;
    font-size: 15px
}

.footer-part ul li a {
    font-weight: 400;
    color: #fff;
    text-decoration: none
}
.footer-part .contact-menu li {
    margin-bottom: 10px;
    display: flex;
    align-items: flex-start;
}
.footer-part .contact-menu li a b{font-weight: 700;text-transform: uppercase;margin-right: 10px;}
.contact-menu li i {
    font-size: 20px;
    color:#fff;
    margin-right: 10px;
 
}
.footer-part ul li a:hover{color: #71C041}
.footer-bottom{    background-color: #71C041;
    padding: 10px 0;
    color: #fff;
    font-size: 15px;
}
ul.social-menu {
    margin: 0 ;
    padding: 0
}

ul.social-menu li {
    display: inline-block;
    vertical-align: top;
    padding: 0 10px 0 0 ;
    position: relative
}

ul.social-menu li a {
    color: #fff;
    text-decoration: none;
    font-size: 26px
}
.single-contact ul.social-menu li a{color: #111111;font-size: 20px;}

#rightsidebar{display: none;}

@media only screen and (max-width: 991px) {
   
.toggle-cu-menu { cursor: pointer;}
.hamburger-box-close {
    position: relative;
    display: inline-block;
    width: 26px;
    height: 24px;
    cursor: pointer;
    top: 2px;
}
.hamburger-box-close{    top: 50%; transform: translate(0px, -50%);}
body.open-mm .mobile-menu .header-expandable-menu-top {
    position: absolute;
    right: 13px;
    top: 25px;
}
.hamburger-box-close .hamburger-inner, .hamburger-box-close .hamburger-inner:after,.hamburger-box-close .hamburger-inner:before{background-color: #000; width: 28px;}
.hamburger-box-close .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: rotate(45deg);
}
.hamburger-box-close .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease,opacity 75ms ease .12s;
    opacity: 0;
}
.hamburger-box-close .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;
    transform: rotate(-90deg);
}
.toggle-cu-menu.toggle-cu-menu-open {
    position: absolute;
    right: -10px;
    top: -10px;
    z-index: 20000000;
}
body.open-mm .mobile-base {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,.5);
    z-index: 10000;
}
.mobile-menu {
        text-align: left;
        display: block;
        position: fixed;
        right: 0;
        top: 0;
        width: 300px;
        max-width: 100%;
        height: 100vh;
        max-height: 400vh;
        -webkit-overflow-scrolling: touch;
        transition: transform .5s;
        -ms-transform: translateX(310px);
        transform: translateX(310px);
        z-index: 10000010;
        background-color:#fff
}
body.open-mm .mobile-menu {
    -ms-transform: translate(0,0);
    transform: translate(0,0);
}
.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
    margin: 0;
    padding: 0;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity,filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
    z-index: 100;
}
.hamburger-box {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 24px;
    top: 3px;
}
.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}
.hamburger-inner:after, .hamburger-inner:before {display: block; content: "";}
.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
    position: absolute;
    width: 22px;
    height: 3px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    border-radius: 4px;
    background-color: #1d1d1d;
    right: 0;
}
.hamburger-inner:before {
    top: -8px;
    width: 25px;
}
.hamburger-inner:after {
    bottom: -8px;
    width: 25px;
}
.hamburger-inner {
    transition-timing-function: cubic-bezier(.55,.055,.675,.19);
    transition-duration: 75ms;
}
.hamburger-inner:before {  transition: top 75ms ease .12s,opacity 75ms ease; }
.hamburger-inner:after { transition: bottom 75ms ease .12s,transform 75ms cubic-bezier(.55,.055,.675,.19); }
body.expand .hamburger{
    top: 15px;
    margin-top: 0px;
    position: absolute;
}
body.expand .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: rotate(45deg);
}
body.expand .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease,opacity 75ms ease .12s;
    opacity: 0;
}
body.expand .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease,transform 75ms cubic-bezier(.215,.61,.355,1) .12s;
    transform: rotate(-90deg);
}
.menu { margin-top: 50px;}
#rightsidebar {
    right: 0;
    top:0px;
    display: block!important;
}
#rightsidebar ul.dropdown-menu li {
    padding: 5px 0px 5px 10px;
    font-size: 15px;
}
ul.header-menu-mobile {
    padding: 0;
    margin: 0;
    list-style: none;
}
ul.header-menu-mobile >li {
    font-size: 18px;
    position: relative;
    padding: 10px 20px;
}
ul.header-menu-mobile li a {
    color: #000;
    padding: 0;
    font-weight: 500;
   text-decoration: none;
}
ul.header-menu-mobile >li ul{padding: 0;margin: 0;list-style: none;}
ul.header-menu-mobile >li ul li a{font-size:15px; color: #555;}
#rightsidebar ul.header-menu-mobile li a {
    position: relative;
    display: block; 
}
ul.dropdown-menu3 {
    position: relative;
    right: 0px;
    width: fit-content;
}
#rightsidebar .dropdown-toggle::after {
    content: '\f078';
    position: absolute;
    right: 0;
    top: 50%;
    font-family: "FontAwesome";
    font-weight: 400;
    transition: transform .5s;
    padding: 7px 0  7px 3px;
    border-width: 0px;
    font-size: 14px;
    transform: translate(0px, -50%);
}
.dropdown-menu{
    float: none;
    border-width: 0px;
    position: relative!important;
    min-width: auto!important;
    padding: 10px 10px 0px;
    transform: translate3d(0px, 0px, 0px)!important;
    border-top: 3px solid rgb(255 255 255)!important;
}
.header-part .social-menu {margin-right: 0px!important;}
.search-box-wrapper .search-box{display: none;}
#rightsidebar .search-box {
    display: block;
    padding: 20px;
    width: 100%;
}
#rightsidebar .search-box form{position: relative;}
ul.dropdown-menu2,ul.dropdown-menu3 {
    position: relative!important;
    right: auto!important;
    background-color: #fff!important;
}
}

.view-btn {
    color: var(--bs-green);
    display: flex;    font-size: 20px;text-decoration: none;
    align-items: center
}

.view-btn i {
    font-size: 30px
}

.view-btn:hover {
    color: var(--bs-gray)
}

h1,h2,h3,h4,h5{ color: #111111;}
h4,h5{  font-weight: 700;}

.main-heading{
       font-weight: 600;
    font-size: 34px;
    color: #111111;
    position: relative;line-height: 1.4;
}
.spadx{
    padding-right: 6rem !important;
    padding-left: 6rem !important;
}
.spad{padding: 60px 0;}


.image-box{
    position: relative;overflow: hidden;border-radius: 10px;
}
.image-box img{
    transition: 0.5s all;margin: 0!important;
}
.image-box:hover img{transform: scale(1.1);}

.icon-box {
    border-radius: 20px;
    background-color: rgba(2, 107, 181, 0.12);
    width: fit-content;
    padding: 12px;
}
@media only screen and (max-width: 767px) {
    .spadx{
        padding-right: 0rem !important;
        padding-left: 0rem !important;
    }
}

/*button 20*/
.btn-blue {
	overflow: hidden;
	color: #fff;
	pointer-events: auto;
	cursor: pointer;
	background: #1b9210;
	border: none;
	padding: 0.8rem 2rem;
	position: relative;
	display: inline-block;
}

.btn-blue span {
	display: block;
	position: relative;
	z-index: 1;
}

.btn-blue > span {
	overflow: hidden;
	
}

.btn-blue:hover > span > span {
	animation: MoveRightInitial 0.1s forwards, MoveRightEnd 0.3s forwards 0.2s;
}

@keyframes MoveRightInitial {
	to {
		transform: translate3d(105%,0,0);
	}
}

@keyframes MoveRightEnd {
	from {
		transform: translate3d(-100%,0,0);
	}
	to {
		transform: translate3d(0,0,0);
	}
}

.btn-blue::before,
.btn-blue::after {
	content: '';
	background: #000;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.btn-blue::before {
	width: 135%;
	-webkit-clip-path: polygon(75% 0%, 100% 50%, 75% 100%, 0% 100%, 0% 0%);
	clip-path: polygon(75% 0%, 100% 50%, 75% 100%, 0% 100%, 0% 0%);
	transform: translate3d(-100%,0,0);
}
.btn-blue:hover{ color: #fff;
    text-decoration: none;}
.btn-blue:hover::before {
	transform: translate3d(0,0,0);
	transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}

.btn-blue::after {
	width: 105%;
	transform: translate3d(100%,0,0);
	transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}

.btn-blue:hover::after {
	transform: translate3d(0,0,0);
	transition: transform 0.01s 0.3s cubic-bezier(0.7, 0, 0.2, 1);
}


.tw-button{
   display: inline-block;
    position: relative;
    text-align: center;
    padding: 1em 5.21em 1em 1.71em;
    min-height: calc(3.4286em + 2px);
    font-size: 14px;
    line-height: 1.4286em;
    font-weight: 600;
    letter-spacing: .01em;
    text-decoration: none !important;
    border-radius: 5px;
    -webkit-transition: background 0.45s ease-out, border-color 0.3s, color 0.3s, padding 0.3s;
    transition: background 0.45s ease-out, border-color 0.3s, color 0.3s, padding 0.3s;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    outline: none;
    cursor: default;
    overflow: hidden;
    height: auto;
    color: #fff!important;
    border: solid 1px #fff;
    z-index: 2;
    background: -webkit-linear-gradient(90deg, #ffffff00 50%, #fff 50%);
    background: -moz-linear-gradient(90deg, #ffffff00 50%, #fff 50%);
    background: linear-gradient(90deg, #ffffff00 50%, #fff 50%);
    -webkit-background-size: calc(200% + 4px) 100%;
    -moz-background-size: calc(200% + 4px) 100%;
    -o-background-size: calc(200% + 4px) 100%;
    background-size: calc(200% + 4px) 100%;
    background-position: -1.7857em 0;
    background-repeat: no-repeat;
}
.tw-button:before {
    font-family: 'Feather';
    content: "\e917";
    position: absolute;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -moz-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    width: .71428em;
    height: .71428em;
    top: 50%;
        left: initial;
    right: 1.04286em;
    background-color: transparent;
    -webkit-transition: all 0.55s;
    transition: all 0.55s;
    color: #1b9210;
    margin: -.35714em 0 0;
    z-index: 2;
    font-size: 18px;
    font-weight: 100;
}
.tw-button:after {
    content: '';
    position: absolute;
    display: block;
    width: 4.8em;
    top: 0;
    bottom: 0;
    right: 0;
    left: initial;
    -webkit-border-radius: inherit;
    border-radius: inherit;
    background-color: #fff;
    font-size: .71428em;
}
.tw-button:not(:disabled):not(.disabled):hover{
    background-position: calc(100% + 1px) 0;
    color: #1b9210 !important;
    border-color: #fff!important;
    padding: 1em 4.21em 1em 2.71em;
    cursor: pointer;
}
.tw-button:not(:disabled):not(.disabled):hover:before{
    animation: .3s linear 0s 1 normal none running button_arrows;
    color: #1b9210;
}
@keyframes button_arrows {
    0% {
        right: 1.04286em;
        left: initial;
        margin-top: -.35714em;
        opacity: 1
    }

    49.9% {
        right: 0.32858em;
        margin-top: -1.07142em;
        opacity: 0
    }

    50% {
        right: 1.75714em;
        margin-top: .35714em;
        opacity: 0
    }

    100% {
        right: 1.04286em;
        margin-top: -.35714em;
        opacity: 1
    }
}

.tw-button-light{
    color: #1b9210!important;
 border: solid 1px #1b9210;
   background: -webkit-linear-gradient(90deg, #ffffff00 50%, #1b9210 50%);
    background: -moz-linear-gradient(90deg, #ffffff00 50%, #1b9210 50%);
    background: linear-gradient(90deg, #ffffff00 50%, #1b9210 50%);
    background-size: calc(200% + 4px) 100%;
}
.tw-button-light:before {
    color: #fff;
}
.tw-button-light:after {
    background-color: #1b9210;
}
.tw-button-light:not(:disabled):not(.disabled):hover{
    color: #fff !important;
    border-color: #1b9210!important;
}
.tw-button-light:not(:disabled):not(.disabled):hover:before{
    color: #fff;
}




.banner-overlay{
 /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+99&0.65+0,0+45 */
background: linear-gradient(to right,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 50%,rgba(0,0,0,0) 99%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */


    position: absolute;
    top: 0;    z-index: 2;
}
.hm-banner-content {
        position: absolute;
        top: 50%;
        width: 100%;
        transform: translate(0px, -50%);
        color: #fff;
}
.hm-banner h1 {
        font-weight: 600;
        font-size: 44px;
        color: #fff;
}
.hm-banner p{font-weight: 300;}
.banner-caption{
    width: 70%;
}
.carousel-indicators [data-bs-target] {

	width: 13px;

	height: 13px;

	border-radius: 50%;

	margin: 0 5px

}


.service-box {
    padding: 0px 40px 0px 0px;
    border-style: solid;
    border-width: 0px 1px 0px 0px;
    border-color: #333333;
    display: flex
;
    flex-direction: column;
    height: calc(100% - 1rem);
    /* margin-top: 20px; */
    justify-content: space-between;
}
.service-icon img{
   width: 60px;
}

.service-box h5 a {
    text-decoration: none;
    color: #111111;
    font-size: 20px;
        font-weight: 600;
}

.text-slide-wrapper {
    position: relative;
    overflow: hidden;
}
.text-slide{
    animation: scroll 30s linear infinite;
        animation-direction: reverse !important;    flex-shrink: 0;
}
.text-slide ul {
     padding: 0;
    margin: 0 20px  0 0;
    display: flex;
    gap: 30px;

}
.text-slide ul li {
    display: inline-block;
    font-size: 55px;
    list-style: none;
    font-weight: 500;
}
@keyframes scroll {
	0% {
		transform: translateX(-100%);
	}
	100% {
		transform: translateX(0%);
	}
}


.info-wrap{
    background-color: #1b9210;
}
.info-50 {
    width: 50%
}
.home .info-wrap img{height:500px; object-fit:cover}
.page-area a{
    color: #1b9210;
}

.inner-banner {
    background-size: cover !important;
background-image: url(../images/inner.jpg);
    background-repeat: no-repeat;
}
.inner-banner-wrapper {
        background: linear-gradient(to right, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 99%);
}
.inner-banner h1 {
    font-weight: 600;
    font-size: 50px;
    color: #fff;
}
.inner-banner a{
     color: #fff;text-decoration: none;
}
.page-area h5{margin-bottom: 10px;}


/**********************contact**********************/




.contact-form .tw-button::after,.contact-form .tw-button::before{display: none;}
.contact-form .tw-button,.contact-form .tw-button:not(:disabled):not(.disabled):hover{
        padding: 1em 5.21em 1em 5.21em;
}


.contact-form .form-line {

	position: relative;

	width: 100%;

	margin-bottom: 20px;

}

.contact-form {

background-color: #fff;
border:1px solid #111111;
	

}

.contact-form .form-control, .contact-form .form-date {

	border-top: none;

	border-left: 0;

	border-right: 0;

	border-radius: 5px;

	background-color: transparent;

	border: 0 solid #ced4da;

	border: 1px solid #d0d0d0;

	position: relative;

	z-index: 1;

	padding: 22px 10px 8px;

}

 :focus-visible {

 outline: none;

}



.contact-form .form-date {

	display: block;

	width: 100%;

	padding: 0.375rem 0.75rem;

	font-size: 1rem;

	font-weight: 400;

	line-height: 1.5;

	color: #212529;

	background-clip: padding-box;

	appearance: none;

	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;

}



.contact-form .form-line.focused .form-label {

    bottom: calc(100% - 33px);

    font-size: 12px;

    color: #9d9d9d;

    z-index: 2;

}



.contact-form .form-label {

	position: absolute;

	bottom: 6px;

	cursor: text;

	-moz-transition: .3s;

	-o-transition: .3s;

	-webkit-transition: .3s;

	transition: .3s;

	color: #777777;

	font-size: 17px;

	letter-spacing: .5px;

	z-index: 0;

	left: 10px;

}



.contact-form textarea {

	height: 90px !important;

}



.form-control:focus {

	color: #212529;

	background-color: #fff;

	border-color:  var(--bs-green);

	outline: 0;

	box-shadow: none;

}

.wpcf7-not-valid-tip {

    color: #dc3232;

    font-size: 10px;

    font-weight: normal;

    display: block;

    position: absolute;

}


.page-template-service-template .service-box img {width:330px; object-fit:cover}
.green-oval {
    width: fit-content;
    border-radius: 50%;    background-color: #1b9210;
}
@media only screen and (max-width: 1500px){
.spadx {
    padding-right: 3rem !important;
    padding-left: 3rem!important;
}
	.hm-banner h1 { font-size: 40px;}
}

@media only screen and (max-width: 1300px){
	.spadx {
    padding-right: 2rem !important;
    padding-left: 2rem!important;
}
}
@media only screen and (max-width: 1200px){
	.home .info-wrap img {height: 550px;}
	.banner-caption { width: 100%;}
}
@media only screen and (max-width: 991px){
	.fs-32 {font-size: 24px;}
	.border-right,.service-box { border-width: 0px 0px 0px 0px;}
	.text-slide ul li {  font-size: 45px;}
	.hm-banner h1 { font-size: 36px; }
	    .home .hm-banner img {
        min-height: 400px;
        object-fit: cover;
        object-position: left;
    }
	.home .hm-banner .banner-caption img{ min-height: auto;width:100px; margin-bottom:10px}
	.w-80 {
    width: 100%;
}
}
@media only screen and (max-width: 767px){
	.main-heading {  font-size: 28px;}
	.inner-banner h1 { font-size: 40px;}
	.banner-caption { width: 100%;}
	.info-50 { width: 100%;}
	.home .info-wrap img {height: auto; }
	.w-80 { width: 100%;}
	  .home .hm-banner h1 {
        font-size: 28px;
    }
}
@media only screen and (max-width: 575px){
.navbar-brand img{width: 285px}	
	    .spadx {
        padding-right: 0rem !important;
        padding-left: 0rem!important;
    }
	.service-box h5 a { font-size: 18px;}
	.service-box { padding: 0px 0px 0px 0px;}
	
	.home .hm-banner .tw-button{display:none}
	 .home .hm-banner img {
        min-height: 450px;
    }
	.banner-overlay {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 99%);
}
}
