:root {
  --theme-color-light: #ffffff;
  --theme-color-dark: #000000;
  --theme-color1: #ee212b;
  --theme-color2: #f3f4f7;
  --headings-color: #000000;
}

@font-face {
  font-family: "Flaticon";
  src: url("../webfonts/Flaticon.eot");
  src: url("../webfonts/Flaticond41d.eot?#iefix") format("embedded-opentype"),
       url("../webfonts/Flaticon.woff") format("woff"),
       url("../webfonts/Flaticon.ttf") format("truetype"),
       url("../webfonts/Flaticon.svg#Flaticon") format("svg");
  font-weight: normal;
  font-style: normal;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: "Flaticon";
    src: url("../webfonts/Flaticon.svg#Flaticon") format("svg");
  }
}
[class^="flaticon-"]:before, [class*=" flaticon-"]:before,
[class^="flaticon-"]:after, [class*=" flaticon-"]:after{font-family:Flaticon;font-style:normal;}

.mt-icon-box-xl [class^="flaticon-"]:before, .mt-icon-box-xl [class*=" flaticon-"]:before,
.mt-icon-box-xl [class^="flaticon-"]:after, .mt-icon-box-xl [class*=" flaticon-"]:after{font-size:96px;}
.mt-icon-box-lg [class^="flaticon-"]:before, .mt-icon-box-lg [class*=" flaticon-"]:before,
.mt-icon-box-lg [class^="flaticon-"]:after, .mt-icon-box-lg [class*=" flaticon-"]:after{font-size:72px;}
.mt-icon-box-md [class^="flaticon-"]:before, .mt-icon-box-md [class*=" flaticon-"]:before,
.mt-icon-box-md [class^="flaticon-"]:after, .mt-icon-box-md [class*=" flaticon-"]:after{font-size:48px;}
.mt-icon-box-sm [class^="flaticon-"]:before, .mt-icon-box-sm [class*=" flaticon-"]:before,
.mt-icon-box-sm [class^="flaticon-"]:after, .mt-icon-box-sm [class*=" flaticon-"]:after{font-size:36px;}
.mt-icon-box-xs [class^="flaticon-"]:before, .mt-icon-box-xs [class*=" flaticon-"]:before,
.mt-icon-box-xs [class^="flaticon-"]:after, .mt-icon-box-xs [class*=" flaticon-"]:after{font-size:24px;}



.flaticon-paint:before { content: "\f100"; }
.flaticon-construction-and-tools:before { content: "\f101"; }
.flaticon-project:before { content: "\f102"; }
.flaticon-worker:before { content: "\f103"; }
.flaticon-road:before { content: "\f104"; }
.flaticon-container:before { content: "\f105"; }
.flaticon-brick:before { content: "\f106"; }
.flaticon-ui:before { content: "\f107"; }
.flaticon-brick-1:before { content: "\f108"; }
.flaticon-city:before { content: "\f109"; }
.flaticon-art-and-design:before { content: "\f10a"; }
.flaticon-house:before { content: "\f10b"; }
.flaticon-barrier:before { content: "\f10c"; }
.flaticon-house-1:before { content: "\f10d"; }
.flaticon-hotel:before { content: "\f10e"; }
.flaticon-measure:before { content: "\f10f"; }
.flaticon-entrance:before { content: "\f110"; }
.flaticon-null:before { content: "\f111"; }
.flaticon-crane:before { content: "\f112"; }
.flaticon-builder:before { content: "\f113"; }
.flaticon-helmet:before { content: "\f114"; }
.flaticon-tower:before { content: "\f115"; }
.flaticon-null-1:before { content: "\f116"; }
.flaticon-ruler:before { content: "\f117"; }
.flaticon-paint-1:before { content: "\f118"; }
.flaticon-wrench:before { content: "\f119"; }
.flaticon-pipe:before { content: "\f11a"; }
.flaticon-crane-1:before { content: "\f11b"; }
.flaticon-sketch:before { content: "\f11c"; }
.flaticon-chart:before { content: "\f11d"; }
.flaticon-forklift:before { content: "\f11e"; }
.flaticon-transport:before { content: "\f11f"; }
.flaticon-art-and-design-1:before { content: "\f120"; }
.flaticon-driller:before { content: "\f121"; }
.flaticon-ruler-1:before { content: "\f122"; }
.flaticon-plan:before { content: "\f123"; }
.flaticon-drill:before { content: "\f124"; }
.flaticon-decorating:before { content: "\f125"; }
.flaticon-rss:before { content: "\f126"; }
.flaticon-interior:before { content: "\f127"; }
.flaticon-glass:before { content: "\f128"; }
.flaticon-window:before { content: "\f129"; }
/*** 

====================================================================
    Services Section
====================================================================

***/
.services-section {
  position: relative;
  padding: 120px 0 120px;
  margin-bottom: 10px;
  z-index: 2;
}
.services-section .owl-dots {
  bottom: -10px;
}

.service-block {
  position: relative;
  margin-bottom: 30px;
  z-index: 1;
}
.service-block .inner-box {
  position: relative;
  padding-bottom: 112px;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block .inner-box:hover .image-box .image img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.service-block .inner-box:hover .image-box .read-more {
  color: var(--theme-color-light);
  background: var(--theme-color-dark);
}
.service-block .inner-box:hover .image-box .read-more:before {
  height: 100%;
}
.service-block .inner-box:hover .content-box .inner {
  height: auto;
}
.service-block .inner-box .image-box .image {
  position: relative;
  margin-bottom: 0px;
  margin-right: 42px;
  overflow: hidden;
}
.service-block .inner-box .image-box .image img {
  position: relative;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block .inner-box .image-box .read-more {
  position: absolute;
  top: 0;
  left: 100%;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
  padding: 11px 37px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: var(--theme-color-dark);
  background: #f3f4f7;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  text-transform: uppercase;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: 3;
}
@media (max-width: 767.98px) {
  .service-block .inner-box .image-box .read-more {
    padding: 11px 114px;
  }
}
@media (max-width: 575.98px) {
  .service-block .inner-box .image-box .read-more {
    padding: 11px 32px;
  }
}
.service-block .inner-box .image-box .read-more:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  left: auto;
  right: 0;
  height: 0;
  background-color: var(--theme-color-dark);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: -1;
}
.service-block .inner-box .image-box .read-more:hover {
  color: var(--theme-color1);
}
.service-block .inner-box .image-box .read-more i {
  font-size: 14px;
  margin-left: 10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  color: var(--theme-color1);
}
.service-block .inner-box .content-box {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 20px 28px 20px;
  background-color: var(--theme-color-light);
  border: 1px solid #eee9e3;
}
.service-block .inner-box .content-box::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -15px;
  width: 44px;
  height: 64px;
  background-image: url(../images/icons/icon-arrow.png);
  -webkit-transform: translate(-33px, -35px);
          transform: translate(-33px, -35px);
}
.service-block .inner-box .content-box .info-box {
  position: relative;
  padding-left: 105px;
  margin-bottom: 15px;
}
.service-block .inner-box .content-box .icon {
  position: absolute;
  left: 0;
  bottom: 8px;
  height: 80px;
  width: 80px;
  line-height: 80px;
  font-size: 42px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--theme-color-light);
  background-color: var(--theme-color1);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: 2;
}
.service-block .inner-box .content-box .icon::after {
  content: "";
  position: absolute;
  bottom: -5px;
  width: 93px;
  height: 58px;
  background-image: url(../images/icons/icon-border.png);
}
.service-block .inner-box .content-box .title {
  position: relative;
  margin-bottom: 0;
  z-index: 2;
}
.service-block .inner-box .content-box .title:hover {
  color: var(--theme-color1);
}
.service-block .inner-box .content-box .inner {
  position: relative;
  display: none;
  overflow: hidden;
  padding-right: 46px;
}
.service-block .inner-box .content-box .inner .text {
  position: relative;
  margin-bottom: 0;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: 2;
}

/*** 

====================================================================
    Services Section Two
====================================================================

***/
.services-section-two {
  position: relative;
  background-color: var(--theme-color2);
  padding: 120px 0;
  z-index: 2;
}
.services-section-two .bg {
  width: 594px;
  background-position: left center;
}
@media (max-width: 1399.98px) {
  .services-section-two .bg {
    display: none;
  }
}
.services-section-two .bg:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: var(--theme-color1);
  opacity: 0.8;
}
.services-section-two .owl-carousel .owl-dots {
  position: relative;
  margin-top: 25px;
}

.service-block-two {
  position: relative;
  margin-bottom: 30px;
  z-index: 1;
}
.service-block-two .inner-box {
  position: relative;
  background-color: var(--theme-color-light);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block-two .inner-box:hover .image-box .image img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  opacity: 0.9;
}
.service-block-two .inner-box:hover .image-box .read-more {
  color: var(--theme-color-light);
  background: var(--theme-color-dark);
}
.service-block-two .inner-box:hover .image-box .read-more:before {
  height: 100%;
}
.service-block-two .inner-box:hover .content-box .icon {
  color: var(--theme-color1);
  background-color: var(--theme-color-light);
}
.service-block-two .inner-box .image-box .image {
  position: relative;
  margin-bottom: 0;
  overflow: hidden;
}
.service-block-two .inner-box .image-box .image img {
  position: relative;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block-two .inner-box .content-box {
  position: relative;
  background-color: var(--theme-color-light);
  padding: 0 21px 18px;
}
.service-block-two .inner-box .content-box .inner {
  position: relative;
  display: inline-block;
  border-top: 4px solid var(--theme-color1);
  margin-top: -56px;
  padding: 91px 15px 31px 20px;
  background-color: #f3f4f7;
}
@media (max-width: 767.98px) {
  .service-block-two .inner-box .content-box .inner {
    width: 100%;
  }
}
.service-block-two .inner-box .content-box::before {
  content: "";
  position: absolute;
  top: -20px;
  right: 65px;
  width: 44px;
  height: 64px;
  background-image: url(../images/icons/icon-arrow.png);
  z-index: 3;
  pointer-events: none;
}
.service-block-two .inner-box .content-box .icon {
  position: absolute;
  top: -22px;
  left: 18px;
  height: 87px;
  width: 90px;
  line-height: 87px;
  font-size: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--theme-color-light);
  background-color: var(--theme-color1);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
  z-index: 2;
}
.service-block-two .inner-box .content-box .title {
  position: relative;
  margin-bottom: 10px;
  z-index: 2;
}
.service-block-two .inner-box .content-box .title:hover {
  color: var(--theme-color1);
}
.service-block-two .inner-box .content-box .theme-btn {
  background-color: var(--theme-color-dark);
  border-radius: 0;
  font-family: var(--text-font);
  width: 100%;
  font-size: 12px;
  padding: 10px 20px;
  color: var(--theme-color-light);
}
.service-block-two .inner-box .content-box .theme-btn:before {
  border-radius: 0;
}
.service-block-two .inner-box .content-box .theme-btn i {
  position: relative;
  color: var(--theme-color1);
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block-two .inner-box .content-box .theme-btn:hover i {
  color: var(--theme-color-light);
}

/*** 

====================================================================
    Services Section Three
====================================================================

***/
.services-section-three {
  position: relative;
  padding: 120px 0 75px;
}
.services-section-three::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 999px;
  height: 695px;
  background-image: url(../images/icons/pattern-bg-1.png);
  content: "";
  opacity: 0.75;
}
.services-section-three .sec-title-outer {
  position: relative;
}
.services-section-three .sec-title-outer .icon-plane-7 {
  position: absolute;
  top: 0;
  right: 85px;
}
.services-section-three .image-column .inner-column {
  position: relative;
  padding: 67px 67px 67px 50px;
  overflow: hidden;
}
@media (max-width: 575.98px) {
  .services-section-three .image-column .inner-column {
    padding: 20px;
  }
}
.services-section-three .image-column .inner-column .bg {
  position: absolute;
  width: 99%;
  height: 100%;
  background-repeat: no-repeat;
  z-index: -1;
}
.services-section-three .image-column .inner-column .overlay-5 {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 400px;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (max-width: 1399.98px) {
  .services-section-three .image-column .inner-column .overlay-5 {
    width: 100%;
    background-size: cover;
  }
}
.services-section-three .image-column .inner-column .content {
  position: relative;
  z-index: 3;
}
.services-section-three .image-column .inner-column .content .sub-title,
.services-section-three .image-column .inner-column .content .title {
  color: var(--theme-color-light);
}
.services-section-three .image-column .inner-column .content .sub-title {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1.4px;
  line-height: 1.4;
  text-transform: uppercase;
}
.services-section-three .image-column .inner-column .content .title {
  margin-bottom: 21px;
  line-height: 1.2;
}
@media (max-width: 575.98px) {
  .services-section-three .image-column .inner-column .content .title {
    font-size: 20px;
    margin-top: 10px;
  }
  .services-section-three .image-column .inner-column .content .title br {
    display: none;
  }
}
.services-section-three .image-column .inner-column .content .info-btn {
  padding-left: 55px;
}
.services-section-three .image-column .inner-column .content .info-btn i {
  position: absolute;
  top: 18px;
  left: 0;
  text-align: center;
  font-size: 38px;
  color: var(--theme-color1);
}
.services-section-three .image-column .inner-column .content .info-btn small {
  color: var(--theme-color-light);
  font-weight: 400;
  font-size: 14px;
  margin-bottom: 0;
}
.services-section-three .image-column .inner-column .content .info-btn strong {
  color: var(--theme-color-light);
  font-size: 16px;
}

.service-block-three {
  margin-bottom: 45px;
}
.service-block-three .inner-box {
  position: relative;
  padding: 0 22px 45px;
  margin-top: 40px;
  background-color: var(--theme-color2);
}
@media (max-width: 767.98px) {
  .service-block-three .inner-box {
    text-align: center;
  }
}
.service-block-three .inner-box:hover .icon {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
  background-color: var(--theme-color1);
  color: var(--theme-color-light);
}
.service-block-three .inner-box .icon-box {
  margin-bottom: 30px;
}
.service-block-three .inner-box .icon-box:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 17px;
  width: 93px;
  height: 58px;
  background-image: url(../images/icons/icon-border-4.png);
}
@media (max-width: 767.98px) {
  .service-block-three .inner-box .icon-box:before {
    right: 17px;
    margin: 0 auto;
  }
}
.service-block-three .inner-box .icon-box .icon {
  position: relative;
  margin-top: -43px;
  display: inline-block;
  width: 80px;
  height: 80px;
  font-size: 46px;
  line-height: 80px;
  color: var(--theme-color1);
  -webkit-box-shadow: 0 0 76px rgba(0, 0, 0, 0.06);
          box-shadow: 0 0 76px rgba(0, 0, 0, 0.06);
  background-color: var(--theme-color-light);
  text-align: center;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.service-block-three .inner-box .count {
  position: absolute;
  top: 25px;
  right: 10px;
  font-size: 60px;
  font-weight: 700;
  color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #d3d3d6;
}
.service-block-three .inner-box .title {
  position: relative;
  margin-bottom: 40px;
}
.service-block-three .inner-box .title::before {
  content: "";
  position: absolute;
  bottom: -23px;
  left: 0;
  width: 81px;
  height: 6px;
  background-color: var(--theme-color1);
  -webkit-transform: skewX(-25deg);
          transform: skewX(-25deg);
}
@media (max-width: 767.98px) {
  .service-block-three .inner-box .title::before {
    right: 0;
    margin: 0 auto;
  }
}
.service-block-two .inner-box .image-box .image img {
    position: relative;
    -webkit-transition: all 300ms 
ease;
    transition: all 300ms 
ease;
    height: 300px;
}
.btn-style-one {
  position: relative;
  font-size: 14px;
  line-height: 27px;
  padding: 17px 26px;
  font-weight: 700;
  overflow: hidden;
  color: var(--theme-color-light);
  background: var(--theme-color1);
  border-radius: 7px;
  text-transform: uppercase;
}
.btn-style-one i {
  position: relative;
  display: block;
  margin-left: 10px;
}
.btn-style-one:before {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  content: "";
  background-color: var(--theme-color2);
  border-radius: 7px;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: top right;
          transform-origin: top right;
  transition: -webkit-transform 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -webkit-transition: -webkit-transform 500ms cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 500ms cubic-bezier(0.86, 0, 0.07, 1);
  transition: transform 500ms cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
          transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
}
.btn-style-one:hover:before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
}
.btn-style-one:hover {
  color: #000000;
  -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
          box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.btn-style-one.dark-bg {
  background-color: var(--theme-color-dark);
}
.btn-style-one.dark-bg:hover {
  color: var(--theme-color-light);
}
.btn-style-one.dark-bg::before {
  background-color: var(--theme-color1);
}
.btn-style-one.light-bg {
  background-color: var(--theme-color-light);
  color: var(--theme-color-dark);
}
.btn-style-one.light-bg:hover {
  color: var(--theme-color-light);
}
.btn-style-one.light-bg::before {
  background-color: var(--theme-color-dark);
}
.btn-style-one.hover-light:hover {
  color: var(--theme-color2);
}
.btn-style-one.hover-light:before {
  background-color: var(--theme-color-light);
}
.btn-style-one.hover-dark:hover {
  color: var(--theme-color-light);
}
.btn-style-one.hover-dark:before {
  background-color: var(--theme-color-dark);
}

.btn-style-one.theme-btn::after {
    display: none;
}
.btn-style-one .btn-title {
  display: inline-flex;
  align-items: center;
  gap: 10px; /* space between text and icon */
}
.btn-style-one i {
  display: inline-block;
  margin-left: 0; /* gap handles spacing */
}