@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

:root{
  --primary-color: #1A4D49;
  --outfit-font: "Outfit", sans-serif;
  
}

/*===== Pre CSS =====*/
body{ font-size: 17px; font-weight: 400; font-family: var(--outfit-font);}
p,a, span, table, th, tr, td, h1, h2, h3, h4, h5, h6, img, ul, ol, li{ margin: 0; padding: 0;}
h1, h2, h3, h4, h5, h6{font-family: var(--outfit-font);}

img{height: 100%; width: 100%; object-fit: cover;}
.ms-flex { display: flex; align-items: center; justify-content: center;}
.bg-default,::after,::before{background-size: cover;background-position: center; background-repeat: no-repeat;}
a:hover{text-decoration: none;}
/*===== Go To Top Section =====*/
#back-top{ display: block; position: fixed; bottom: 140px; right: 10px; bottom: 10px; text-align: center;  z-index: 99999; }
#back-top a{ display: block; text-decoration: none; }
#back-top a .fa{ width: 40px; height: 40px; padding-top: 8px; font-size: 20px; border-radius: 5px; opacity: 1; color: #fff; background: #2c2c2c; border: #fff solid 2px; -webkit-transition: all linear 0.3s; -moz-transition: all linear 0.3s; -o-transition: all linear 0.3s; transition: all linear 0.3s; }
#back-top a .fa:hover{ background: var(--primary-color); color: #fff; }

/* Wrapper */
.wrapper{ position: relative; margin: 0; padding: 0; overflow: hidden; }
.transition{ -webkit-transition: all linear 0.3s; -moz-transition: all linear 0.3s; -o-transition: all linear 0.3s; transition: all linear 0.3s; }

/*===== Banner Section =====*/

/*===== Title Sections =====*/
.section-heading{margin-bottom: 40px; }
.section-heading h2{font-size: 32px; font-weight: 600; font-family: var(--outfit-font); line-height: 50px; position: relative; display: block;}
.section-heading p{ display: block; font-size: 16px; font-weight: 400; font-family: var(--outfit-font); line-height: 28px; margin-top: 20px; }
.section-heading h6{ font-size: 18px; font-weight: 700; font-family: var(--outfit-font); line-height: 28px; margin-bottom: 14px; position: relative; color: var(--primary-color);}
.section-link a, a.fancybox.overlayer-box span{color: #fff; font-size: 16px; font-weight: 500; padding: 12px 45px; display: inline-block; background-color: var(--primary-color); border-radius: 4px; border: 1px solid var(--primary-color); transition: .3s;}
.section-link a:hover{text-decoration: none;background: transparent; border-color:var(--primary-color); color:var(--primary-color); transform: translateY(-5px); }
.welcome .section-heading h2::after,.services-bottm .section-heading h2::after{display: none;}

/*===== Welcome Sections =====*/
.welcome{padding: 90px 0px 90px; position: relative;}
.welcome .section-heading p{margin-bottom: 0px !important;}
.welcome .section-heading h2{margin-bottom: 25px;}
.welcome .about-img{height: auto; max-width: 580px; position: relative;perspective: 1000px;}
.welcome .about-img img{border-radius: 15px; object-fit: contain;  transition: transform 0.4s ease, box-shadow 0.4s ease; transform-style: preserve-3d;}
.welcome .about-img img:hover{  transform: rotateX(3deg) rotateY(-3deg) scale(1.05);box-shadow: 20px 20px 40px rgba(0,0,0,0.3);}
.welcome .about-img::before{content: url(../img/about-before.webp); position: absolute; max-width: 230px; height: auto; top: -37px; left: -90px; z-index: 3; animation: up-down 3s infinite ease-in-out;}
.welcome .section-heading p{color: #000; font-size: 16px; font-weight: 400; line-height: 26px;  position: relative; margin-bottom: 25px;}
.about-box {background: #FFF;border-radius: 10px;padding: 20px;margin-top: 25px;box-shadow:-4px -4px 12px 0px rgba(255, 255, 255, 1) inset,4px  4px 12px 0px rgba(0, 0, 0, 0.12) inset;}
.about-box .box-header {display: flex;align-items: center;margin-bottom: 15px;}
.about-box .box-icon {margin-right: 15px; width: 40px;height: 40px; background: var(--primary-color);border-radius: 2px;}
.about-box .box-icon img {padding: 5px; object-fit: contain;}
.about-box .box-header h3 {font-size: 17px;font-weight: 500;line-height: 27px;}
.about-box p {font-size: 16px !important;line-height: 26px !important;margin-bottom: 0 !important;}


/*===== Services Sections =====*/
.services {background-image: url("../img/services-bg.webp");background-size: cover;background-position: center;padding: 70px 0px 100px;}
.services-header {text-align: center;margin-bottom: 60px;}
.services-header h6 {color: var(--primary-color);font-size: 18px;font-weight: 600;margin-bottom: 12px;line-height: 28px;}
.services-header h2 {color: #000;font-size: 32px;font-weight: 600;margin: 0 auto;line-height: 50px;}
.services-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: 20px;}
.service-card {background: #fff;border-radius: 10px;padding: 15px 15px 20px;box-shadow: 0 10px 30px rgba(0,0,0,0.05);transition: all 0.3s ease;}
.service-card:hover {transform: translateY(-5px);box-shadow: 0 15px 40px rgba(0,0,0,0.1);}
.service-card .service-img {margin-bottom: 20px;border-radius: 10px;overflow: hidden;}
.service-card .service-img img {width: 100%;height: 100%;object-fit: cover;}
.service-info{padding-left: 5px;}
.service-info h4 {font-size: 18px; line-height: 28px;font-weight: 600;color: #000;margin-bottom: 12px;font-family: var(--outfit-font);}
.service-info p {font-size: 16px;line-height: 26px;margin-bottom: 0;font-family: var(--outfit-font);}
@media (max-width: 991px) {
  .services-grid {grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 767px) {
  .services-grid {grid-template-columns: 1fr;}
  .services-header h2 {font-size: 28px;}
}

/*===== Project Sections =====*/
.project {position: relative; padding: 70px 0px 100px; background:url(../img/gallery-bg.webp); background-size: cover; background-position: center;}
.project .section-heading h6 { color: var(--primary-color); font-size: 18px; font-weight: 600; margin-bottom: 12px; }
.project .section-heading h2 { font-size: 32px; font-weight: 600; line-height: 48px; color: #000; margin-bottom: 40px; }

.gallery-box-wrapper .row {
    display: flex;
    flex-wrap: wrap;
}
.gallery-left {
    height: 100%;
}
.gallery-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.project .project-content-item {position: relative; overflow: hidden; border-radius: 15px;}
.gallery-right .project-content-item { height: calc(50% - 15px); }
.project .project-content-item img { width: 100%; height: 100%; object-fit: cover; border-radius: 15px;}
.project .project-content-item a { position: absolute; top: 0; right: 0; bottom: 0; left: 0; color: #fff; background: transparent;
 text-decoration: none; font-size: 24px; -webkit-transition: all linear 0.3s; -moz-transition: all linear 0.3s; -o-transition: all linear 0.3s; transition: all linear 0.3s;}
.project .project-content-item a:hover { background: rgba(0,0,0,0.5); transform: none; border-radius: 15px;}
.project .project-content-item a i { opacity: 0;}
.project .project-content-item a:hover i {opacity: 1;}
.project .project-content-item a.overlayer-box {background-color: rgba(0,0,0,0.5); margin-top: 0; font-size:16px; border: unset;}
a.fancybox.overlayer-box span{font-size: 16px; font-weight: 400; font-family: var(--outfit-font); margin-top: 120px;border: 1px solid var(--primary-color); padding: 10px 40px; border-radius: 4px;}

@media (max-width: 767px) {
    .gallery-right { margin-top: 30px; }
    .gallery-right .project-content-item { height: auto; margin-bottom: 30px; }
    .gallery-right .project-content-item:last-child { margin-bottom: 0; }
}

/*Why Choose Us Section*/
.why-choose-us{position: relative; color: #000; padding: 90px 0px 90px;}
.why-choose-us .section-heading h6 { color: var(--primary-color); }
.why-choose-us .section-heading h2 { margin-bottom: 60px; }
.why-choose-us-img-wrap{position: relative; max-width: 480px; margin: 0 auto;}
.why-choose-us-img-wrap .main-img {border-radius: 20px; width: 100%;}
.why-choose-us-img-wrap .img-top-right {position: absolute;top: 0;right: 0;width: 130px; height: auto;border-radius: 20px; animation: up-down 3s infinite ease-in-out;}
.why-choose-us-img-wrap .img-bottom-left {position: absolute;bottom: 0px;left: 0px;width: 130px; height: auto; border-radius: 20px; animation: up-down 3s infinite ease-in-out;}
.why-choose-us-list {margin-top: 30px;}
.choose-item {background: #F2F2F7; border-radius: 10px; padding: 20px; display: flex; margin-bottom: 30px; max-width: 90%;}
.choose-item.item-2 {margin-left: 40px;}
.choose-num {font-size: 42px; line-height: 50px; font-weight: 600; color: #000; margin-right: 15px; font-family: var(--outfit-font);}
.choose-content h4 {font-size: 18px; line-height: 28px; font-weight: 500; color: #000; margin-bottom: 8px; font-family: var(--outfit-font);}
.choose-content p {font-size: 16px; line-height: 26px; margin-bottom: 0;}
@media (max-width: 767px){
.why-choose-us-right{margin-top: 35px;}
}


/*===== Free Estimate Sections =====*/
.home-free-estimate{position: relative;  z-index: 1; padding: 90px 0px 70px;}
.free-estimate-bg{background: var(--primary-color);padding: 60px 0px 70px; position: relative;}
.free-estimate-bg::before{content: ""; position: absolute; top: 0; left: -39px; width: 40px; height: 100%; z-index: -3; background: var(--primary-color); border-radius: 10px 0 0 10px;}
.free-estimate-bg::after{content: ""; position: absolute; top: 0; right: -39px; width: 40px; height: 100%; z-index: -3; background: var(--primary-color); border-radius: 0 10px 10px 0;}
.home-free-estimate .section-heading h6{color: #fff;}
.home-free-estimate .section-heading {margin-bottom: 60px;}
.form-horizontal{margin-top: 60px;}
.from-margin{margin-bottom: 25px;}
.home-free-estimate-form {background-color:#FAF9F6; box-shadow: 1px 4px 15px rgba(0, 0, 0, 0.50); color: #fff; padding: 30px; border: 1px solid #A8A8A8; border-radius: 5px; margin-bottom: 50px;}
.home-free-estimate-form h3{color: #000; font-size: 24px; font-weight: 700; margin-bottom: 20px; font-family: var(--helios-font);}
.form-control {line-height: 1.5 !important; font-size: 16px !important; color: #fff !important;  background-color: rgba(0, 0, 0, 0.07) !important; border: 1px solid rgba(224, 224, 224, 0.8) !important; border-radius: 4px !important; padding: 11px 20px !important;}
.home-free-estimate-form input{height: calc(1.8em + .85rem + 2px);}
.home-free-estimate-form input::placeholder,.home-free-estimate-form textarea::placeholder{color: #000000 !important; opacity: 1;}
.home-free-estimate-form .form-control:focus { color:#4F4F4F; background-color: #fff; border-color: #000; box-shadow: unset;}
.btn-home-free-estimate-form-control{text-transform: capitalize;margin-top: 20px; color:#000; font-size: 16px; font-weight: 600; padding: 11px 50px; background-color: #ffffff; border-radius: 50px;  display: block; text-align: center; transition: .5s; width: 100%}
.btn-home-free-estimate-form-control:hover{ background: #000000; color: #fff; border-color: #000000;}
.free-img-wrapper img:nth-child(1){width: 141px; height: 120px; object-fit: contain; }
.free-img-wrapper img:nth-child(2){height: 92px; width: 210px; object-fit: contain;}
.free-img-wrapper img:nth-child(3){height: 120px; width: 120px; object-fit: contain;}
.free-img-wrapper img:nth-child(1),.free-img-wrapper img:nth-child(2){margin-right: 30px;}
.home-free-estimate .section-heading , .section-heading{margin-bottom: 0px;}


/*===== Footer Section =====*/
.footer {background-color: #000; color: #fff; padding: 70px 0px 0;}
.footer-about h3 { font-size: 22px; font-weight: 600; color: #fff; font-family: var(--outfit-font); margin-bottom: 30px; line-height: 32px;}
.footer-about p { font-size: 16px; color: #fff; line-height: 26px; font-family: var(--outfit-font); }
.footer-badges { display: flex; align-items: center; }
.footer-title h5 { font-size: 18px; font-weight: 600; color: #fff; font-family: var(--outfit-font); margin-bottom: 30px; line-height: 28px; }
.footer-hours ul li { font-size: 16px; line-height: 26px; color: #fff; margin-bottom: 15px; font-family: var(--outfit-font); }
.footer-contact ul li { display: flex; align-items: center; margin-bottom: 50px; }
.footer-contact .icon-box { background-color: #D9D9D9; border-radius: 5px; width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; margin-right: 20px; }
.footer-contact .icon-box iconify-icon { font-size: 24px; color: var(--primary-color) }
.footer-contact a { font-size: 16px; line-height: 1.6; color: #fff; font-family: var(--outfit-font); text-decoration: none;}
.footer-contact a u { font-size: 16px; line-height: 1.6; color: #fff; font-family: var(--outfit-font); text-decoration: none;}
.footer-contact a:hover { color: var(--primary-color); }
.footer-contact span { font-size: 16px; line-height: 1.6; color: #fff; font-family: var(--outfit-font); }

/*===== copyright Section =====*/
.copyright{ padding: 20px 0; background: transparent; border-top: 1px solid rgba(255, 255, 255, 0.2); margin-top: 34px; }
.copyright p{ color: #fff; font-size: 16px; line-height: 1.6; font-weight: 500; text-align: center; font-family: var(--outfit-font); }
.copyright p a{ color: #fff; font-weight: 600; text-decoration: none; }

/*========== Responsive ==========*/
@media (max-width: 1199px){

   .nav ul li a{ font-size: 14px; }
   .nav ul{gap: 30px;}
   .banner-content-box h2{ font-size: 70px; line-height: 100px; }
   .section-heading h2 span{ display: inline; }
   .testimonials .section-heading{padding: 0; margin-bottom: 20px; }
   .welcome .section-thumbnail img{ margin-top: 300px; margin-left: -30px; width: 100%; height: auto; }

}
@media (max-width: 991px){

      .header-bottom .container{ width: 100%; }
      .header-top ul{ text-align: center; }
      .banner-content-box h2{ font-size: 48px; line-height: 70px; }
      .banner-content-box a{ font-size: 24px; }
      .section-heading h4{ margin-bottom: 15px; }
      .section-heading h2{ font-size: 36px; line-height: 48px; }
      .section-heading p{ width: 100%; padding: 0; }
      .welcome::after,
      .welcome::before{ left: calc(50% + 100px); }
      .logo-list{ display: block; margin-top: 30px; }
      .logo-list img:first-child{ margin-bottom: 15px; margin-right: 15px; }
      .services .container{ width: 100%; }
      .footer-content h4{ margin-top: 30px; }

}
@media (max-width: 767px){

  /*===== Go To Top =====*/
  #back-top{ right: 10px; bottom: 10px; }
  #back-top a .fa{ font-size: 16px; width: 40px; height: 40px; padding-top: 10px; }

  /*===== Left Social Icon =====*/
  .share_icon .fa{ left: 9px; bottom: 9px; width: 42px; height: 42px; font-size: 20px; padding: 10px 2px 0 0; }
  .social_icon ul li .fa{ left: 10px; bottom: 10px; width: 40px; height: 40px; font-size: 20px; text-align: center; padding: 10px 0px 0 0; }
  .social_icon.active ul li:nth-child(3) .fa{ bottom: 130px; }
  .social_icon.active ul li:nth-child(2) .fa{ bottom: 90px; }
  .social_icon.active ul li:nth-child(1) .fa{ bottom: 50px; }

  /*===== Body Section =====*/
      .middle-header{padding: 80px 0px 40px;position: relative;}
      .social-icons.ml-auto.text-right{margin-top: 15px; width: 40%; text-align: left !important; margin-left: unset !important;}

      .social-icons-text ul{display: block !important;}
      .social-icons-text ul li{justify-content: left; margin: 12px 0px;}
      .header-bottom{background-color: transparent !important; width: 100% !important;}
      .header-bottom .logo{margin: 60px 0 20px;text-align: center;  height: unset; width: 150px;}
      .header-bottom .logo img{display: inline-block; object-fit: contain;}
      .social-icons-text{display: none;}


      /* .banner{padding: 100px 0px 60px; } */
      .banner-content-box h2{ font-size: 24px; line-height: 40px;}
      .banner-content-box h2 span {font-size: 32px;}
      .banner-content-box p, .welcome .section-heading p{width: 100%;}
      .banner-content-box a{ padding: 7px 28px; font-size: 16px; }
      .banner-content-box h5{font-size: 18px; width: 100%;}
      .banner-content-box {margin-bottom: 20px;}
      .banner-content-box::after{display: none;}
    
      .section-heading{margin-bottom: 30px;}
      .section-heading h4{ font-size: 30px; }
      .section-heading h2{font-size: 25px; line-height: 35px;text-transform: inherit;margin-bottom: 0px;}
      .section-heading p{ font-size: 16px; line-height: 30px;  margin-top: 0px;}

      .welcome{ padding: 50px 0; }
      .about-img{width: 100% !important; height: auto !important;}
      .welcome [class*="col-"] { margin-bottom: 30px;}
      .welcome .ms-flex{display: block;}
      .welcome .section-heading{ margin-right: 0px; }
      .welcome .section-heading p{ font-size: 16px; line-height: 30px;  }
      .welcome .section-thumbnail img{ margin-top: 0px; margin-left: 0;}
      .welcome .about-img img:last-child {position: unset; width: 100%;}


      .services{ padding: 50px 0; }
      .services [class*="col-"],.why-choose-us [class*="col-"] {margin-bottom: 0px;}
      .services .section-body{ display: block; width: 100%;}
      .services-item{ margin-top: 15px; display: block !important; }
      .services .services-thumbnail{margin-right: 0px; margin-bottom: 15px;}
      .services .services-item .service-content{position: unset; border-radius: unset; transform: unset; width: 100%;}
      .services-thumbnail{width: 100%; height: 200px;}
      .services-thumbnail img{object-fit: contain;}
      .services-item a{ padding: 10px 10px 8px; font-size: 14px; }
      .services-bottm .section-thumbnail{margin-right: 0px; margin-top: 20px;}
      .services .section-link a{margin-top: 30px;}

      .why-choose-us{padding: 40px 0px;}
      .why-choose-us .why-choose-us-item{margin-bottom: 15px;}
      .why-choose-us .section-body{width: 100%;}
      .why-choose-us .choose-thumbnail{margin: 20px auto 20px; width: 100%;height: auto;}
      .why-choose-us .whyus-card h5{font-size: 20px;}
      .why-choose-us .whyus-image{margin: 10px 0px; padding: 0;}
      .why-choose-us .whyus-image img{height: 100%; width: 100%;}
      .whyus-list-wrap{margin-left: 0px;}
      .why-choose-us .whyus-card{width: 100%;}
      .form-content-wrapper{padding: 0;}
      .why-choose-us .choose-thumbnail img:last-child{position: unset; width: 100%; margin-top: 15px;}
      
      
      .testimonials-inner-wrap{ padding: 50px 0; }
      .testimonials .section-body{width: 100%;}
      .testimonials .testimonials-content{ padding: 0 15px; }
      .testimonials-content-item p{ font-size: 16px; line-height: 30px; }
      .testimonials-content-item h4{ font-size: 18px; margin-top: 15px; margin-bottom: 10px; }
      .testimonials .section-link{ padding-left: 0; }
      .testimonials .section-link a{font-size: 14px; }

      .home-free-estimate{ padding: 50px 0; background-position: initial;}
      
      .free-images{display: block;}
      .home-free-estimate-form{position: unset;}
      .home-free-estimate .free-estimate-content{width: 100%; margin-bottom: 20px;}
      .home-free-estimate-form{padding: 25px 20px !important;width: 100%;border-left: none;box-shadow: unset; margin-left: 0px; margin-top: 30px;}
      .home-free-estimate-form-control{ height: 40px; }
      .btn-home-free-estimate-form-control{ padding: 8px 20px; font-size: 16px; }
      .free-images img{width: 100%;}
      .free-estimate-content .img-wrapper img{margin: 0px;}
      .free-img-wrapper img:nth-child(1), .free-img-wrapper img:nth-child(3){margin-right: 0px;}

      .project .gallery-box-wrapper{width: 100%;}
      .project{ padding: 50px 0 30px; }
      .project .section-heading{ margin-bottom: 30px; }
      .project-content-item{ margin-bottom: 15px; }
      .gallery-box-wrapper{margin: 0;}
      

      .why-choose-us img.cornerlogo{top: unset;}
      .logo-content-wrapper{display: block;}
      .free-social-links{padding: 20px 0px; justify-content: flex-start;}

      .footer .footer-top{margin-top: -100px;}
      .footer .footer-top .section-heading{flex-direction: column;}
      .footer .section-heading h2{line-height: unset; margin-bottom: 30px;}
      .footer .footer-top .section-heading{align-items: flex-start;}
      
      .footer{padding: 40px 0px;}
      .col-md-3.mt-5.ml-auto{margin-top: 0px !important;}
      .footer .section-heading img{margin-bottom: 20px;}
      .footer-content h4{ margin-bottom: 15px; }
      .footer [class*="col-"] { margin-bottom: 30px;}
      .footer-content ul li,
      .footer-content p{ line-height: 30px; font-size: 14px; }
      .footer-content h3 span{ display: block; font-family: var(--outfit-font); margin-bottom: 5px; }
      .copyright{ padding: 15px 0; }
      .copyright-content{ padding: 0 30px; }
      .footer-content-wrapper{width: 100%;}
      .footer .contact-wrap.mb-5.text-center {text-align: left !important;}
      .footer .contact-wrap.ml-5 {margin-left: 0 !important;}
      .footer ul.list-unstyled.ms-flex {justify-content: left;}
      .footer .contact-detail .mail{font-size: 16px;}

  /*===== Slider Section =====*/
  #owl-demo .owl-pagination{ width: 100%; top: 95%; }
  #owl-demo2 .owl-buttons .owl-prev{ left: -15px; }
  #owl-demo2 .owl-buttons .owl-next{ right: -15px; }
}
@media (max-width:500px){
  .free-estimate-bg{padding: 60px 20px 70px !important;}


}

@keyframes up-down {
  0%{transform: scale(1);}  
  50%{transform: scale(1.10);}  
  100%{transform: scale(1);}  
}