/*
Theme Name: Twenty Twenty Child
Theme URI: https://wordpress.org/themes/twentytwenty/
Template: twentytwenty
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.
Tags: blog,one-column,custom-background,custom-colors,custom-logo,custom-menu,editor-style,featured-images,footer-widgets,full-width-template,rtl-language-support,sticky-post,theme-options,threaded-comments,translation-ready,block-patterns,block-styles,wide-blocks,accessibility-ready
Version: 2.9.1748493212
Updated: 2025-05-29 04:33:32

*/




/* Common CSS Start */

.main-heading {  font-size: 22px;    letter-spacing: 0.4px;    font-weight: 400; margin-top: 0; }
ul {  margin: 0; }

button:focus, button:hover, .button:focus, .button:hover, .faux-button:focus, .faux-button:hover, .wp-block-button .wp-block-button__link:focus, .wp-block-button .wp-block-button__link:hover, .wp-block-file .wp-block-file__button:focus, .wp-block-file .wp-block-file__button:hover, input[type="button"]:focus, input[type="button"]:hover, input[type="reset"]:focus, input[type="reset"]:hover, input[type="submit"]:focus, input[type="submit"]:hover {    text-decoration: none;    }

:focus-visible {    outline: none !important; }
:focus-within {    outline: none !important; }

span.toggle-inner span.toggle-text {  display: none;  }
button.toggle span.toggle-text { display: none;  }

body p {   -webkit-text-size-adjust: none; }
body, .entry-title a, :root .has-primary-color {      color: unset !important;   }
#video-2 { display: none;  }

/* Common CSS END */




/* Arrow to top CSS Start */

.back-to-top {  position: fixed;  bottom: 30px;  right: 20px;  width: 40px;  height: 40px;   background-color: #7ecb8e;
    color: #0e2d22;  font-size: 20px;  text-align: center;  line-height: 42px;  border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);    cursor: pointer;  text-decoration: none;
    z-index: 999;    opacity: 0;   pointer-events: none;    transition: opacity 0.3s ease, transform 0.3s ease;  }

.back-to-top.show {  opacity: 1;  pointer-events: auto; }
.back-to-top:hover {  transform: translateY(-5px);  }
html {  scroll-behavior: smooth;  }

/* Arrow to Top CSS END */




/* Header CSS Start */

.header-inner {  position: absolute;     max-width: 100%;   left: 0;   right: 0; }
.primary-menu li a {  color: #72c580 !important;   font-size: 16px;  }

.menu-modal-inner {  background: #0d2c1e;  }
.modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a { font-size: 18px;    font-weight: 400;   letter-spacing: 0.4px;  }
.menu-modal nav * {    border-color: #484848 !important; } 
.active svg.svg-icon {   color: #fff; }
svg.svg-icon {  width: 1.4em !important;     height: 30px !important;  }
.active svg.svg-icon {   height: 20px !important;  }

body:not(.overlay-header) .primary-menu > li > a:hover, #site-footer a:hover, .mai-sec a:hover, .sos-icon ul i:hover {  
	font-weight: 700 !important;   text-decoration: none;  }

.primary-menu li.current-menu-item > a, .primary-menu li.current-menu-item > .link-icon-wrapper > a {  text-decoration: none;  }
.nav-toggle .toggle-inner {  padding-top: 0;  }

/* Header CSS END */




/* Slider CSS Start */

.ban-title {  color: #72C580;  font-size: 60px;  font-weight: 400;  letter-spacing: 0.2px;  }
.heading-layer {  text-align: center; }


.home-sl .container { max-width: 1600px; margin: auto;  padding: 0px 30px;  display: flex;  flex-direction: column;  align-items: center; }
.sl-head {  text-align: center;    color: #76c484;    font-size: 48px;    font-weight: 400;    letter-spacing: 0.2px;  }

.home-sl {  position: relative;     padding: 0;  }

img.abs-icon {position: absolute;  bottom: 20px;  left: 50%;  transform: translateX(-50%);
  animation: scrollDown 2s infinite;    opacity: 0.8;  }

h2.video-title {
    position: absolute;
    z-index: 2;
    top: 32%;
    left: 0;
    right: 0;
    text-align: center;
    color: #72c580;
    font-weight: 500;    padding-left: 4%;
    padding-right: 4%; 
}

@keyframes scrollDown {
  0%, 20%, 50%, 80%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  40% {
    transform: translateX(-50%) translateY(8px);
  }
  60% {
    transform: translateX(-50%) translateY(4px);
  }
}

.home-sl {  height: 100vh;  overflow: hidden;  position: relative;  }
.home-sl .slider-vid {  height: 100%;  width: 100%;  }
.home-sl video {  height: 100vh;  width: 100%;  object-fit: cover;  display: block;  }


/* Slider CSS END */




/* What We Do Section CSS Start */

.services-section {  background: #123120; }
.services-section {  background-color: #0b2c1d;   color: #d5f5e3;  padding: 100px 0;    position: relative;  }
.services-section .container {  position: relative;  width: 100%;  max-width: 800px;  margin: 0 auto;   height: 610px;  }
.service.center {  position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%);  z-index: 2;  }
.service.center h2 {  font-size: 20px;    color: #76c484;    text-transform: uppercase;    letter-spacing: 2px;    margin: 0;  }
.service {  position: absolute;  text-align: center;  }
.service .label {  font-size: 16px;  margin-top: 10px;    color: #76c484;   line-height: 1.4;  }

.service .circle {  width: 120px;  height: 120px;  margin: 0 auto;      border: 1px solid #76c484;
  border-radius: 50%;  display: flex;  align-items: center;  justify-content: center;  transition: all 0.3s ease;  }

.service .circle img {  width: 60px;  height: 60px;  object-fit: contain;  }
.service.service-first {  margin: 0;  left: 0;  right: 0;top: -11px;  }
.service.service-first .label {  margin-top: 0;  margin-bottom: 10px;  }
.service.top-left {  top: 16%;  left: 15%;  }
.service.top-right {  top: 16%;  right: 10%; }
.service.middle-left {  top: 39%;  left: -4%;  }
.service.middle-right {  top: 38%;  right: -2%;  }
.service.bottom-left {  bottom: 19%;  left: 9%;  }
.service.bottom-right {  bottom: 19%;  right: 3%;  }
.service.service-last {  bottom: 0;  top: auto;  left: 0;  right: 0; }
.service .circle:hover {  background-color: rgba(255, 255, 255, 0.05);  transform: scale(1.05);  transition: all 0.3s ease;  }

.top-right, .middle-right, .bottom-right {  display: flex;    align-items: center;     gap: 20px;  }
.top-right .label, .middle-right .label, .bottom-right .label{ text-align: left;  }

.top-left, .middle-left, .bottom-left {  display: flex;    align-items: center;    gap: 20px;  }
.top-left .label, .middle-left .label, .bottom-left .label {  text-align: right; }

/* What We Do Section CSS END */




/* Brand Logo Section CSS Start */

.logosec {  background: #d8f1eb; }
.logosec .container {  max-width: 1203px;  margin: auto;  }
.logosec .main-heading {  color: #123120;    text-align: center;    font-weight: 400;  }
/*
.logos {  max-width: 1200px;  width: 100%;  margin: auto;  display: flex;  flex-wrap: wrap;   justify-content: space-between; row-gap: 30px; }*/

.logo-img {  width: 23%;   display: flex;    align-items: center;    justify-content: center;  }

/*.logos { display: flex;  flex-wrap: wrap;  gap: 20px;   justify-content: center;  align-items: center;  padding: 20px 0; }*/

.logo-img img {  max-width: 100px;   height: auto;  object-fit: contain;  transition: transform 0.3s ease;  min-width: 150px;
    min-height: 150px;  }

.logo-img img:hover {  transform: scale(1.05);   }

.slick-slide.slick-active .logo-img img {  margin: 0 auto;  }
ul.slick-dots {   display: flex;    justify-content: center;    column-gap: 10px;   margin-top: 40px;  }

.slick-dots li button {  padding: 2px;  width: 25px;  height: 25px;   background: transparent;  opacity: .38;  transition: 0.1s linear;
    border: solid 1px #336b52;  font-size: 13px;  }

.slick-dots li.slick-active button ,.slick-dots li:hover button  {     background: #0b2c1d;   color: #fff;  }


/* Brand Logo Section CSS END */




/* Review Section CSS Start */

.reviews {  background: #72C580;   position: relative;   }
.cnt {  text-align: center; }
.testimonial {  max-width: 1300px;    text-align: center;    margin: auto;  }
.testimonial-title {  margin-top: 50px;   margin-bottom: 10px; }
.testimonial-company {   text-transform: uppercase;    letter-spacing: 0.2px;    font-size: 14px;  }
.testimonial-title strong {  font-weight: 600; }
.testimonial-content p {  color: #123120;    font-style: italic; font-size: 20px;  }
.reviews .container {  max-width: 1100px;    margin: auto;  }

.custom-testimonials .owl-prev {  left: 20px;   position: absolute;    top: 50%;  background: transparent;   padding: 10px 16px;  }
.custom-testimonials .owl-next {  right: 20px;    position: absolute;    top: 50%;  background: transparent;  padding: 10px 16px;  }
.owl-nav.disabled {  display: contents !important; }
.home-review .container {  position: relative;  }

button.owl-next {  right: 0;   position: absolute; }
.owl-nav.disabled {  display: contents !important;  }
.custom-testimonials .owl-prev {      left: 2%;  position: absolute;      top: 30%;  }
.custom-testimonials .owl-next {     right: 2%;  position: absolute;      top: 30%; }
.home-review .container {  position: relative; }
.owl-dots {     display: none !important;   }
.custom-testimonials span {   color: #123120;     font-size: 48px; }
button.owl-prev:hover,button.owl-next:hover {  text-decoration: none;  }

.sub-btn p {  display: flex;   justify-content: center; }
.sub-btn p span.wpcf7-spinner {  display: none; }

/* Review Section CSS END */




/* Form Section CSS Start */

.contactsec {  background: #143121;  }
.contactsec .main-heading {  color: #72c580; }
.contactsec .container {  max-width: 1100px;   margin: auto;  }
.fome-foot {  display: flex;  flex-direction: column;  align-items: center; }
.mai-sec {  gap: 40px;    display: flex;    color: #72c580;    width: 100%;    justify-content: center;  }
.mai-sec a {  color: #72c580;   text-decoration: none; }
.sos-icon ul {  display: flex;  gap: 30px;  margin-top: 30px; }
.sos-icon ul i {  color: #72c580; }
.col-flex {  display: flex;  justify-content: space-between;      gap: 30px;  }
.half-col {  width: 100%; }
select {  width: 100%;  min-height: 50px;    background: #336b52;    border: none;    color: #fff;  padding: 0px 10px;  font-size: 16px; }
input[type="email"], textarea {    background: #336b52;     border: none;      color: #fff;  }
.wpcf7-form-control::placeholder {  color: #fff;   }
input[type="email"]:focus-visible, textarea:focus-visible {   outline: none;}

.wpcf7 form .wpcf7-response-output {   margin: 0em 0 2em;   color: #fff;  }
select:focus-visible {  outline: none; }
option:first-child {   display: none;  }

input.wpcf7-submit {   background: #76c484 !important;    padding: 18px 48px 16px 48px;   color: #143121;   margin-bottom: 50px;  
	font-size: 18px;    margin-top: 20px;   transition: background-color 0.3s ease, transform 0.3s ease;   }

input.wpcf7-submit:hover {   background: #66ad74 !important;   transition: background-color 0.3s ease, transform 0.3s ease;  }

/* Form Section CSS END */



/* Footer CSS Start */

#site-footer {  background: #000000;    }
li {  list-style: none;     margin: 0;  }
#foo .container {  display: flex;  align-items: center;   justify-content: space-between;  }
#menu-footer-menu {  display: flex;  flex-wrap: wrap;  row-gap: 20px;  }
#menu-footer-menu li {  width: 48%;  margin: 0; }
.custom-html-widget {  color: #D7F1EB; }
li.menu-item a {  color: #76c484;  font-size: 16px;   font-weight: 400;  letter-spacing: 0.4px; }
#foo {  margin: auto;   padding: 0px 4%; }
.custom-html-widget br {  display: none;  }

/* Footer CSS END */



/*  Privacy Page CSS Start */

.informative-sec .container {    max-width: 1300px;    margin: auto;} 
.informative-sec p {    color: #76c484;    letter-spacing: 0.2px;      font-size: 16px;      line-height: 1.8;      margin-bottom: 0;  }

.informative-sec h2, .informative-sec h3,.informative-sec h4 {  color: #d8f1eb;    font-size: 22px;  font-weight: 400; 
	letter-spacing: 0.4px; }

.informative-sec li { list-style: none; position: relative; padding-left: 1.2em;  color: #76c484;  font-size: 16px;  margin: 16px 0px; }
.informative-sec li::before { content: "•"; position: absolute; left: 0;   color: #d8f1eb; font-size: 1.1em; line-height: 1; }
.informative-sec li::marker {  color: #7ecb8e; }
.informative-sec ul {  padding: 6px 0px 10px 0px; }
.informative-sec b {  font-weight: 400; }

/*  Privacy Page CSS END */





/* Cookies Page CSS Start */

.sub-header.about-sub.featured-banner {  min-height: 280px;  display: flex;    justify-content: center;   align-items: center;  }
p.subhead-head {  color: #fff;  font-size: 22px;  font-weight: 600;  padding-top: 6rem; text-align: center;  }
.informative-sec {  padding: 6rem 0 5rem 0;  }
.cookie-heading {   margin-top: 0;   margin-bottom: 16px;  }

/* Cookies Page CSS END */




@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation:portrait){  
	
	#video-1 { height: 500px !important;  object-fit: cover;   }


	.container, .contactsec .container,.informative-sec .container {  max-width: 92%;   margin: auto; }
	.home-sl {  height: 50vh;  }
	.logo-img {  width: 22%;  }
	.header-inner .toggle {   padding-right: 4px !important;   }
	
	.service .circle {      width: 100px;    height: 100px;  }
	.top-left, .middle-left, .bottom-left { gap: 14px;  }
	
	.service.middle-left {  left: -3%;  } 
	.service.middle-right { right: 0%;  }	
	.service.center h2 {  font-size: 18px;  }	
	.services-section .container {  width: 92%;   }
	.service .label {  font-size: 14px;  }
	.services-section {  padding: 50px 0;  }
	
	#foo .container {  align-items: center;   flex-direction: column;  gap: 40px; }
	.footer-sec-three {  width: 100%;  }
	#menu-footer-menu li {  width: 24%;    text-align: center;   }
	.first img {  width: 100px;     margin: auto;  }
	#site-footer {   padding: 60px 0px;  }
	#menu-footer-menu {  display: flex;    flex-wrap: wrap;    row-gap: 20px;    justify-content: center;  }
	.custom-html-widget {   text-align: center;  }
	

}




@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation:landscape){
	
	.container, .contactsec .container, .informative-sec .container {  max-width: 92%;   margin: auto; }
	.testimonial-content {  max-width: 70%;  margin: auto;  }
	input.wpcf7-submit {  padding: 14px 38px;   font-size: 16px;  }
	.sl-head {  font-size: 40px;  }
	
	#foo .container {  align-items: center;   flex-direction: column;  gap: 40px; }
	.footer-sec-three {  width: 100%;  }
	#menu-footer-menu li {  width: 24%;    text-align: center;   }
	.first img {  width: 100px;     margin: auto;  }
	#site-footer {   padding: 60px 0px;  }
	#menu-footer-menu {  display: flex;    flex-wrap: wrap;    row-gap: 20px;    justify-content: center;  }
	.custom-html-widget {   text-align: center;  }
	
}

	

@media only screen and (max-width : 991px) {

	input.wpcf7-submit {   padding: 14px 44px 12px 44px;    font-size: 16px;  }
	.menu-modal.active {  z-index: 999;  }
	.header-inner {   width: 98%;  }	
	.home-sl .container {  padding: 0px 10px;  }
	.sl-head {   font-size: 36px;  }	
	.home-sl img {  max-width: 100px; }
	.header-inner .toggle svg {   display: block;    position: relative;    z-index: 1;    color: #fff;  }
	.header-inner .toggle {   justify-content: flex-end;    padding-right: 0;  }
	
	.testimonial-content p {  max-width: 80%;   margin: auto;  }
	.logo-img img {  max-width: 100px;  }
	
	#menu-footer-menu li {  text-align: center;  }
	.informative-sec p {   font-size: 14px;   line-height: 1.8;  }
	
	.header-inner {   padding: 0.8rem 0;   }
	.site-logo img {   max-height: 7rem;   }

}



@media screen and (max-device-width: 991px) and (orientation: landscape) { 
	h2.video-title {     font-size: 30px;}
	.header-inner {  width: 98%;  }
	.container {  width: 92%;  margin: auto;  }
	.sl-head { font-size: 28px;  }
	img.abs-icon {   width: 20px; }
	.header-inner .toggle {   padding-right: 4px;   }
	#foo .container {  align-items: center;   flex-direction: column;  gap: 40px; }
	.footer-sec-three {  width: 100%;  }
	#menu-footer-menu li {  width: 24%;    text-align: center;   }
	.first img {  width: 100px;     margin: auto;  }
	#site-footer {   padding: 60px 0px;  }
	#menu-footer-menu {  display: flex;    flex-wrap: wrap;    row-gap: 20px;    justify-content: center;  }
	.custom-html-widget {   text-align: center;  }
	.service.service-first .label {    margin-top: 10px;    margin-bottom: 0;  }
    .service .circle {  width: 100px;  height: 100px;  order: 1;  margin: 0 auto 0;  }
	.service .circle img {  width: 50px;    height: 50px;    object-fit: contain;  }
	.service.center h2 {  font-size: 18px;  }
	
	.services-section .container {  height: auto;   width: 92%;  display: flex; flex-wrap: wrap; justify-content: flex-start;
        row-gap: 20px;    column-gap: 20px;  }
	
	.services-section .container {  width: 92%;   }
	.service .label {   font-size: 14px;    order: 2;    text-align: center;    margin: 0 auto 10px;  }
	.services-section {  padding: 50px 0;  }	
	
	.service {  position: absolute;  text-align: center;   position: static;  width: 30%;  display: flex;   justify-content: flex-start;
    align-items: center;    flex-direction: column;   margin: 0;    row-gap: 20px;   }
	
	.service.center {  position: static;  top: 50%;  left: 50%;  transform: none;  z-index: 2;  width: 100%;    text-align: center;
    display: block;    margin-bottom: 20px;  }
	
	
}




@media screen and (max-device-width: 767px) and (orientation: portrait) {
	h2.video-title{        line-height: 40px;  top: 41%;   font-size: 3.2rem;}
	
	.home-sl .container {row-gap: 20px;    }
    .sl-head {  font-size: 25px;    text-shadow: 0 0 25px #ffffff63;   }	
	img.abs-icon {  width: 20px;  }
	.header-inner .toggle svg {   display: block;    position: relative;    z-index: 1;    color: #fff;  }
	.custom-html-widget br {  display: block;  }
	.sl-sec { height: 400px; }
	.sp-mask {  height: 400px !important; }
	.sp-image-container {  height: 400px !important; }
	.sp-image-container .sp-image { height: 100% !important;  width: 100% !important;  object-fit: cover !important;  }	
	.service {  position: relative;  }
	.service.center {  position: relative;   top: 0;  }
	.container {  width: 90%;    margin: auto;   }
	.service .circle {  width: 100px;  height: 100px;   order: 1;   margin: auto;  }
	.service .circle img {  width: 50px;    height: 50px;    object-fit: contain;  }
	.service.center h2 {  font-size: 18px;  }
	
	.services-section .container {   height: auto;  width: 92%; display: flex; flex-wrap: wrap;  justify-content: flex-start;
        row-gap: 20px;    column-gap: 20px;  }		
	
	.services-section .container {  width: 92%;   }
	.service .label,.service.service-first .label {font-size: 14px;      order: 2;        text-align: center;        margin: 0 auto 10px;  }
	.services-section {  padding: 50px 0;  }	
	
	.service { position: static;  width: 47%;  display: flex;  justify-content: flex-start;  align-items: center;
    flex-direction: column;   margin: 0;        row-gap: 20px; }
	
	.service.center { position: static;  top: 50%;    left: 50%;    transform: none;    z-index: 2;    width: 100%;
    text-align: center;    display: block;    margin-bottom: 20px;  }
	
	.service .circle {  margin: 0;  }
	.services-section .container {   height: auto;  }
	.logo-img {  width: 46%;  }
	.col-flex {   gap: 0px;  flex-direction: column;  }
	.mai-sec {  gap: 16px;    flex-direction: column;    align-items: center;  }
	input.wpcf7-submit {   margin-bottom: 30px;    margin-top: 20px;  }
	
	.logos {  gap: 60px 20px;  }
	.services-section {  padding: 60px 0;  }
	.service .label {    }
	#foo .container {   flex-direction: column;     gap: 60px;  }
	.custom-html-widget {   text-align: center;  }	
	.header-inner .toggle {  justify-content: flex-end;   padding-right: 12px;  }	
	#menu-footer-menu {  justify-content: center;  }
	.first img {  width: 100px;  }
	#site-footer {  padding: 50px 0px; }	
	.back-to-top {  width: 24px;  height: 24px;  line-height: 25px;  }	
	.logo-img img {  max-width: 100%;   min-width: auto;   min-height: auto;  }
	
}



@media screen and (max-device-width: 767px) and (orientation: landscape) {   

	.header-inner {  width: 96%;   }
	.logo-img {  width: 21%;  }
	 
}
