.about-section {
    position: relative;
    padding: 30px 0 30px;
}

.about-section .content-column {
    position: relative;
    margin-bottom: 50px;
}

.about-section .content-column .inner-column {
    position: relative;
    padding-top: 60px;
    padding-left: 5px;
}

.about-section .content-column p {
    margin-bottom: 24px;
}

.about-section .content-column .btn-box {
    position: relative;
    margin-top: 40px;
}

.about-section .image-column {
    position: relative;
    margin-bottom: 50px;
}

.about-section .about-image-wrapper {
    position: relative;
    padding-top: 150px;
    max-width: 570px;
    margin: 0 auto;
    width: 100%;
}

.about-section .image-1 {
    position: relative;
    margin-left: -80px;
    overflow: hidden;
    margin-bottom: 0;
    z-index: -1;
}

.about-section .image-1 img {
    -webkit-animation: bounce-x 10s infinite;
    animation: bounce-x 10s infinite;
}

.about-section .image-2 {
    position: absolute;
    right: 56px;
    bottom: 0;
    border-radius: 50%;
    border: 30px solid #135edf;
    overflow: hidden;
}

.about-section .image-3 {
    position: absolute;
    border: 30px solid #96bdff;
    top: 0;
    left: 84px;
    z-index: 2;
    border-radius: 50%;
    overflow: hidden;
}

.about-section .about-image-wrapper .play-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 3;
    width: 140px;
    height: 140px;
    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;
    background-color: #ffffff;
    margin-left: -20px;
    border-radius: 50%;
}

.about-section .about-image-wrapper .play-btn:before {
    position: absolute;
    height: 110px;
    width: 110px;
    border: 2px dashed #001376;
    border-radius: 50%;
    left: 16px;
    top: 16px;
    content: "";
    -webkit-animation: zoomInOut 2s infinite;
    animation: zoomInOut 2s infinite;
}

.about-section .about-image-wrapper .play-btn .icon {
    position: relative;
    height: 75px;
    width: 75px;
    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;
    background-color: #001376;
    padding-left: 5px;
    color: #ffffff;
    font-size: 22px;
    border-radius: 50%;
    content: "";
}

@-webkit-keyframes zoomInOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(.9);
        transform: scale(.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes zoomInOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(.9);
        transform: scale(.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/*3rd seg*/
.about-large-image-bg {
  background-image: url(../../image-kaf/images/service/sewerage-8.jpg);
  height: 400px;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 16px;
  background-position: center;
}
@media only screen and (max-width: 575px) {
  .about-large-image-bg {
    height: 350px;
  }
}
.single-about-small-cd {
  padding: 31px 24px;
  background: var(--about-small);
  border-radius: 8px;
}
.single-about-small-cd img {
  margin-bottom: 24px;
}
.single-about-small-cd .title {
  font-size: 16px;
  font-style: normal;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: -0.32px;
}
.single-about-small-cd p.disc {
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: -0.28px;
  max-width: 100% !important;
}

.single-working-process {
  padding: 30px 25px 16px 25px;
  border-radius: 16px;
  border: 1px solid #BCBFDB;
  background: #fff;
}
.single-working-process .number {
  color: #031e5a;
  font-size: 28px;
  font-style: normal;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: -0.56px;
}
.single-working-process .title {
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  line-height: 120%;
  letter-spacing: -0.4px;
  color: var(--color-body);
}
.single-working-process p.disc {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 164%;
  letter-spacing: -0.32px;
  color: var(--color-body);
  text-align: justify;
}
.mt-dec-working-step {
  margin-top: -120px;
}
.plr--60 {
    padding: 0 60px;
}
/*4th*/
.feature-block-two {
    position: relative;
    background: #f5f5f5;
    padding: 26px 30px 10px 20px;
    max-width: 570px;
    border-radius: 10px;
    margin-bottom: 30px;
    margin-left: 50px;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-two .inner-box {
    position: relative;
    padding-left: 120px;
}

.feature-block-two .icon-box {
    position: absolute;
    left: 25px;
    top: 0;
    margin-bottom: 20px;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-two .icon-box .icon {
    position: relative;
    font-size: 62px;
    line-height: 1em;
    color: #031e5a;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-two h4 {
    font-size: 22px;
    color: #081245;
    font-weight: 700;
    margin-bottom: 14px;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-two p {
    position: relative;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-two:hover {
    background-color: #001166;
    border-radius: 0 50px 0 50px;
}

.feature-block-two:hover h4 {
    color: #fff;
}

.feature-block-two:hover .icon-box .icon,
.feature-block-two:hover p {
    color: #ffffff;
}

.feature-block-two:hover .icon-box:before {
    background: rgba(255, 255, 255, .20);
}

.feature-block-two .abs-icon {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 120px;
    line-height: 70px;
    color: #ffffff;
    opacity: .10;
}
.feature-block-three {
    position: relative;
    background: #001166;
    padding: 26px 30px 10px 20px;
    max-width: 570px;
    border-radius: 0 50px 0 50px;
    margin-bottom: 30px;
}

.feature-block-three .inner-box {
    position: relative;
    padding-left: 120px;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
}

.feature-block-three .icon-box {
    position: absolute;
    left: 25px;
    top: 0;
    margin-bottom: 20px;
}

.feature-block-three .icon-box .icon {
    position: relative;
    font-size: 62px;
    line-height: 1em;
    color: #ffffff;
}

.feature-block-three p {
    color: #ffffff;
}

.feature-block-three h4 {
    font-size: 22px;
    color: #fff;
    font-weight: 700;
    margin-bottom: 14px;
}
.feature-block-three .icon-box {
    position: absolute;
    left: 25px;
    top: 0;
    margin-bottom: 20px;
}
.feature-block-three .abs-icon {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 120px;
    line-height: 70px;
    color: #ffffff;
    opacity: .10;
}
.stack {
  position: relative;
  margin-top: 56%;
}

.card {
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: 300px;
  height: 450px;
  border-radius: 2rem;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.25),
    0 15px 20px 0 rgba(0, 0, 0, 0.125);
  transition: transform 0.6s;
  user-select: none;
}

.card img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.card:nth-last-child(n + 5) {
  --x: calc(-50% + 90px);
  transform: translate(var(--x), -50%) scale(0.85);
  box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.01);
}

.card:nth-last-child(4) {
  --x: calc(-50% + 60px);
  transform: translate(var(--x), -50%) scale(0.9);
}

.card:nth-last-child(3) {
  --x: calc(-50% + 30px);
  transform: translate(var(--x), -50%) scale(0.95);
}

.card:nth-last-child(2) {
  --x: calc(-50%);
  transform: translate(var(--x), -50%) scale(1);
}

.card:nth-last-child(1) {
  --x: calc(-50% - 30px);
  transform: translate(var(--x), -50%) scale(1.05);
}

.card:nth-last-child(1) img {
  box-shadow: 0 1px 5px 5px rgba(255, 193, 111, 0.5);
}

.swap {
  animation: swap 1.3s ease-out forwards;
}

@keyframes swap {
  30% {
    transform: translate(calc(var(--x) - 250px), -50%) scale(0.85) rotate(-5deg)
      rotateY(65deg);
  }
  100% {
    transform: translate(calc(var(--x) - 30px), -50%) scale(0.5);
    z-index: -1;
  }
}

/* Media queries for keyframes */

@media (max-width: 1200px) {
  @keyframes swap {
    30% {
      transform: translate(calc(var(--x) - 200px), -50%) scale(0.85)
        rotate(-5deg) rotateY(65deg);
    }

    100% {
      transform: translate(calc(var(--x) - 30px), -50%) scale(0.5);
      z-index: -1;
    }
  }
}

@media (max-width: 1050px) {
  @keyframes swap {
    30% {
      transform: translate(calc(var(--x) - 150px), -50%) scale(0.85)
        rotate(-5deg) rotateY(65deg);
    }

    100% {
      transform: translate(calc(var(--x) - 30px), -50%) scale(0.5);
      z-index: -1;
    }
  }
}

/* Media queries for other classes */

@media (max-width: 1200px) {
  .content {
    padding-left: 80px;
  }

  .content p {
    padding-right: 40px;
  }

  .card {
    width: 250px;
    height: 380px;
  }
}

@media (max-width: 1050px) {
  .content {
    padding-left: 60px;
  }

  .content p {
    line-height: 1.5;
  }

  .card {
    width: 220px;
    height: 350px;
  }
}

@media (max-width: 990px) {
  .content p {
    padding-right: 0;
  }

  .card {
    width: 200px;
    height: 300px;
  }
}

@media (max-width: 950px) {
  main {
    grid-template-columns: 1fr;
    grid-template-rows: 4fr 3fr;
    grid-template-areas:
      "stacked"
      "content";
  }

  .content {
    grid-area: content;
    text-align: center;
    padding: 0 90px;
  }

  .btn {
    margin-bottom: 30px;
  }

  .stack {
    grid-area: stacked;
  }
}

@media (max-width: 650px) {
  main {
    grid-template-rows: 1fr 1fr;
  }

  .content {
    padding: 0 0px;
  }

  .content h1 {
    padding-left: 0;
  }

  .btn {
    padding: 8px 16px;
  }

  .card {
    width: 180px;
    height: 260px;
  }
}
/*Stormwater */
.process-box-layout1 {
    margin-bottom: 30px;
}

.process-box-layout1 ul.content-holder {
    padding: 0px 30px 0;
    margin: 0;
}

/*.process-box-layout1 ul.content-holder li:before { content: ""; position: absolute; z-index: 1; background-position: center; background-repeat: no-repeat; top: 80%; left: 0; height: 100%; width: 100%;}*/
body.loaded .has-animation.active-animation .translate-right-75 {
    transform: translateY(0) translateX(0);
}

.align-items-sm-center {
    -ms-flex-align: center!important;
    align-items: center!important;
}

.process-box-layout1 ul.content-holder li:nth-child(odd) .item-icon {
    margin-right: 20px;
}

.process-box-layout1 ul.content-holder li .dodger-blue:before {
    background-color: #135edf;
}

.process-box-layout1 ul.content-holder li .item-icon:before {
    content: "";
    height: 100%;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.process-box-layout1 ul.content-holder li .dodger-blue i {
    color: #135edf;
    font-size: 50px;
}

.process-box-layout1 ul.content-holder li .item-icon i {
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.process-box-layout1 ul.content-holder li:nth-child(odd) .item-content {
    text-align: left;
}

.process-box-layout1 ul.content-holder li .item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.process-box-layout1 ul.content-holder li .item-content .item-title {
    font-weight: 600;
    margin-bottom: 0;
}

/*.process-box-layout1 ul.content-holder li:before { content: ""; position: absolute; z-index: 1; background-position: center; background-repeat: no-repeat; top: 80%; left: 0; height: 100%; width: 100%;}*/
.flex-xl-row-reverse {
    -ms-flex-direction: row-reverse!important;
    flex-direction: row-reverse!important;
}

holder li:nth-child(even) .item-icon {
    margin-left: 20px;
}

.process-box-layout1 ul.content-holder li .item-icon {
    position: relative;
    z-index: 1;
    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;
    background-color: #ffffff;
    height: 140px;
    width: 140px;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 35px 0 rgb(120 119 119 / 47%);
    box-shadow: 0 0 35px 0 rgb(120 119 119 / 47%);
}

.process-box-layout1 ul.content-holder li .sunset-orange:before {
    background-color: #135edf;
}

.process-box-layout1 ul.content-holder li .item-icon:before {
    content: "";
    height: 100%;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.process-box-layout1 ul.content-holder li:nth-child(even) .item-content {
    text-align: right;
    margin-right: 15px
}

.process-box-layout1 ul.content-holder li .item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.process-box-layout1 ul.content-holder li .item-content .item-title {
    font-weight: 600;
    margin-bottom: 7px;
    font-size: 21px;
    color: #000;
}

.process-box-layout1 ul.content-holder li .sunset-orange i {
    color: #135edf;
    font-size: 50px;
}

.process-box-layout1 ul.content-holder li .item-icon i {
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.process-box-layout1 ul.content-holder li .california i {
    color: #135edf;
    font-size: 50px;
}
.seo-p {
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.1px;
    margin: 0 0 15px;
    font-weight: 500;
}
.compress-left-side {
    padding-right: 50px;
    padding-left: calc(calc(100% - 1170px) / 2);
}
.process-box-layout1 ul.content-holder li:hover .item-icon i {
    color: #ffffff;
}

.process-box-layout1 ul.content-holder li:hover .item-icon:before {
    opacity: 1;
    visibility: visible;
}

.process-box-layout1 ul.content-holder li .california:before {
    background-color: #135edf;
}

.has-animation.active-animation .process-box-layout1 .content-holder li:nth-child(1n) .dashed1 {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.has-animation.active-animation .process-box-layout1 .content-holder .dashed1 {
    -webkit-animation: dash_fill_1500 2s linear forwards;
    animation: dash_fill_1500 2s linear forwards;
}

.has-animation .process-box-layout1 .content-holder li .dashed1 {
    stroke-dashoffset: 1500;
}

@keyframes dash_fill_1500 {
    from {
        stroke-dashoffset: 1500;
    }

    to {
        stroke-dashoffset: 0;
    }
}

.has-animation.active-animation .process-box-layout1 .content-holder li:nth-child(2n) .dashed1 {
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}

/*.has-animation.active-animation .process-box-layout1 .content-holder li:nth-child(1n) .dashed1 { -webkit-animation-delay: 5s; animation-delay: 5s;}*/
.has-animation.active-animation .process-box-layout1 .content-holder .dashed1 {
    -webkit-animation: dash_fill_1500 2s linear forwards;
    animation: dash_fill_1500 2s linear forwards;
}

.process-box-layout1 ul.content-holder li svg {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 100%;
}
/*portable*/
.checklist.style11 ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 25px 50px;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}
.checklist ul {
    padding-left: 0;
    list-style: none;
    text-align: left;
    margin-bottom: 0;
}
.checklist.style11 li {
    font-weight: 600;
    font-size: 16px;
    font-family: var(--title-font);
    margin-bottom: 0px;
    padding-left: 42px;
}
.checklist li:first-child {
    margin-top: -0.5em;
}
.checklist li {
    color: var(--title-color);
    margin-bottom: 10px;
    font-weight: 500;
    position: relative;
    padding-left: 28px;
}
.checklist.style11 li:before {
    font-weight: 600;
    font-size: 32px;
}
.checklist li:before {
    content: "\f058";
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    color: #135edf;
    position: absolute;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
/*gallery*/
.gallery {
  position: relative;
  perspective: 1500px;
  transform-style: preserve-3d;
  width: 260px;
  aspect-ratio: 1;
  background: silver;
  transform: rotate(45deg);
}
.gallery .image {
  position: absolute;
  width: 100%;
  height: 100%;
  border: 4px solid white;
  box-sizing: border-box;
  transition: 1s ease;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: calc(var(--total) - var(--i));
    overflow: hidden;
}
.gallery .image img {
/*    --rotate: rotate(-45deg);*/
  transform: var(--rotate);
    transition: .3s ease;
}
.gallery .image:nth-of-type(odd) {
  --hovermove: -100px, 100px;
  --translate: calc((var(--i) - 1) * -125px), calc((var(--i) - 1) * 120px);
  --tZ: calc((var(--i) - 1) * -300px);
  animation: deploy 1.5s ease forwards;
} 
.gallery .image:nth-of-type(even) {
  --hovermove: 100px, -100px;
  --translate: calc(var(--i) * 125px), calc(var(--i) * -120px);
  --tZ: calc(var(--i) * -300px);
  animation: deploy 1.5s ease forwards;
}
.gallery .image:hover img,
.gallery .image.only-hover img {
    transform: var(--rotate) scale(1.1);
}
.gallery .image.only-hover{
  animation: clickAnimation 1s ease;
  z-index: 9;
}
.gallery.hidden-gallery .image {
  animation: close 1.5s ease forwards;
}
@keyframes deploy {
  from {
    transform: translate(0px, 0px) translateZ(0px);
  }
  to {
    transform: translate(var(--translate)) translateZ(var(--tZ));
  }
}
@keyframes close {
  from {
    transform: translate(var(--translate)) translateZ(var(--tZ));
  }
  to {
    transform: translate(0px, 0px) translateZ(0px);
  }
}
@keyframes clickAnimation {
  0% {
    transform: translate(var(--translate)) translateZ(var(--tZ));
  }
  20% {
    transform: translate(var(--hovermove)) translateZ(0px);
  }
  100% {
    transform: translate(calc(var(--i) * 0px), calc(var(--i) * 0px));
  }
}
.scene{
    text-align: -webkit-center;
}
.gallery1{
    margin-top: 43px;
    margin-bottom: 30px;
}
/*hover*/
.tm_coverimgbox_wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    display: flex;
    background: #000;
    justify-content: center;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents:first-child {
    border-left: 1px solid rgba(256,256,256,.5);
}
.tm_coverimgbox_wrapper.tm-column-three .tm_coverbox_contents {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 0 0 30%;
    max-width: 30%;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents {
    position: relative;
    z-index: 2;
    padding: 0 50px 63px;
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    border-right: 1px solid rgba(256,256,256,.5);
}
.tm_coverbox_contents {
    min-height: 76vh;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents:first-child:after, .tm_coverimgbox_wrapper .tm_coverbox_contents:before {
    position: absolute;
    left: auto;
    right: -4px;
    width: 7px;
    height: 26px;
    display: block;
    content: "";
    background-color: #76a8ff;
    -webkit-animation: scanning 9s linear infinite alternate;
    animation: scanning 9s linear infinite alternate;
}

.tm_coverimgbox_wrapper .tm_coverbox_contents:first-child:after {
    left: -4px;
    right: auto;
    -webkit-animation: scanning 11s linear infinite alternate;
    animation: scanning 11s linear infinite alternate;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents:nth-child(3):before {
    -webkit-animation: scanning 15s linear infinite alternate;
    animation: scanning 15s linear infinite alternate;
}
.tm_coverimgbox_wrapperr .tm_coverbox_contents:nth-child(5):before {
    -webkit-animation: scanning 13s linear infinite alternate;
    animation: scanning 13s linear infinite alternate;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .featured-icon-box.icon-align-before-content.icon-ver_align-top {
    opacity: 1;
    transition: transform .9s ease;
    -moz-transform: translateY(30px);
    -ms-transform: translateY(30px);
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    margin-bottom: 0;
}
.tm_coverimgbox_wrapper .featured-content .featured-icon i {
    font-size: 50px;
    color: #76a8ff;
    padding-right: 15px;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents:hover .featured-icon-box.icon-align-before-content.icon-ver_align-top {
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}
.tm_coverimgbox_wrapper .featured-content .featured-title p {
    color: #fff;
    margin-bottom: 0;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .featured-content h3 {
    color: #fff;
    font-size: 21px;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .featured-content h3 a:hover {
    color: #57b33e;
}
.featured-icon-box.icon-align-before-content .featured-icon, .featured-icon-box.icon-align-before-content .featured-content, .featured-icon-box.icon-align-before-title .featured-title, .featured-icon-box.icon-align-before-title .featured-icon {
    display: table-cell;
    vertical-align: middle;
}
.featured-icon-box.icon-align-before-content.icon-ver_align-top .featured-icon {
    vertical-align: top;
    padding-top: 3px;
}

/* 1st page 3rd service seg*/


.tm_coverimgbox_wrapper.four_cols .tm_coverbox_contents {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%
}
.tm_coverimgbox_wrapper .tm_coverbox_img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
    overflow: hidden;
}
.tm_coverimgbox_wrapper .tm_coverbox_img {
    /* visibility: hidden; */
    opacity: 0;
    transition-duration: 1500ms;
    transition: all 1s;
}

.tm_coverimgbox_wrapper .tm_coverbox_img, .tm_coverimgbox_wrapper .tm_box_overlay {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    background: rgb(0 0 0 / 65%);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}
@-webkit-keyframes scanning{from{top:0}to{top:100%}}
@keyframes scanning{from{top:0}to{top:100%}}
.tm_coverimgbox_wrapper .tm_coverbox_img, .tm_coverimgbox_wrapper .tm_box_overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
    overflow: hidden;
}
.tm_coverimgbox_wrapper .tm_coverbox_img img {
    width: 100%!important;
    height: 100%!important;
    object-fit: cover;
}
.tm_coverimgbox_wrapper .tm_coverbox_img.active {
    opacity: 1;
    visibility: visible;
    -ms-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.tm_coverimgbox_wrapper .tm_coverbox_contents {
    position: relative;
    z-index: 2;
    padding: 0 40px 57px;
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    border-right: 1px solid rgba(256, 256, 256, .5);
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .featured-content {
    opacity: 0;
    transition: transform .9s ease;
    -moz-transform: translateY(170px);
    -ms-transform: translateY(170px);
    -webkit-transform: translateY(170px);
    transform: translateY(170px);
}
.tm_coverimgbox_wrapper .tm_coverbox_contents:hover .featured-content {
    opacity: 1;
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .featured-content {
    opacity: 1;
    transform: translateY(0);
}
.tm_coverimgbox_wrapper .featured-content .featured-title h3{
    margin-bottom: 0px;
    position: relative;
}
.tm_coverimgbox_wrapper .featured-content .featured-desc p{
    padding-bottom: 13px;
}
.tm_coverimgbox_wrapper .featured-content .ttm-footer a {
    padding: 10px 30px;
}
.tm_coverimgbox_wrapper .featured-content .ttm-footer a:hover{
    background-color: transparent;
}
.tm_coverimgbox_wrapper .tm_coverbox_contents .coverbox-img-reposive {
    display: none;
    background-size: cover;
    background-repeat: no-repeat;
}
/*4th seg*/
.pbmit-bg-color-light-2 {
    background-color: #f8f8f8;
}
.ihbox-style-10-bg-area {
    background-image: url(../../image-kaf/images/service/water-bg.png);
    background-position: top center;
    background-repeat: no-repeat;
    padding: 40px 30px;
    border-radius: 20px;
}
.pbmit-ihbox-style-17 {
    position: relative;
    overflow: hidden;
    padding-top: 10px;
}
.pbmit-bg-color-light-2 .pbmit-ihbox-style-17 .pbmit-ihbox-box {
    background-color: #fff;
}
.pbmit-ihbox-style-17 .pbmit-ihbox-box {
    padding: 45px 40px 50px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    background-color: #f6f6f6;
}
.pbmit-ihbox-style-17, .pbmit-ihbox-style-17 .pbmit-ihbox-box, .pbmit-ihbox-style-17 .pbmit-ihbox-box-number {
    transition: all 0.4s ease-in;
}
.pbmit-ihbox-style-17 .pbmit-ihbox-icon, .pbmit-ihbox-style-17 .pbmit-ihbox-svg {
    position: absolute;
    bottom: 35px;
}
.pbmit-ihbox-style-17 .pbmit-ihbox-icon-wrapper, .pbmit-ihbox-style-17 .pbmit-ihbox-svg-wrapper {
    font-size: 55px;
    line-height: 55px;
    color: #031e5a;
}
.pbmit-ihbox-style-17 .pbmit-element-title {
    font-size: 22px;
    line-height: 28px;
    margin-bottom: 10px;
    color: #000;
}
.pbmit-ihbox-style-17 .pbmit-heading-desc {
    margin-bottom: 85px;
}
.pbmit-bg-color-light-2 .pbmit-ihbox-style-17 .pbmit-box-number-wrap {
    background-color: #f6f6f6;
}
.pbmit-heading-desc {
    text-align: justify;
}
.pbmit-ihbox-style-17 .pbmit-box-number-wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 2;
    width: 70px;
    height: 60px;
    padding: 10px;
    border-radius: 20px 0 0;
    background-color: #fff;
}
.pbmit-bg-color-light-2 .pbmit-ihbox-style-17 .pbmit-box-number-wrap::after, .pbmit-bg-color-light-2 .pbmit-ihbox-style-17 .pbmit-box-number-wrap::before {
    box-shadow: 0 20px 0 0 #f6f6f6;
}
.pbmit-ihbox-style-17 .pbmit-box-number-wrap::before {
    bottom: 0;
    right: 100%;
    border-bottom-right-radius: 20px;
}
.pbmit-ihbox-style-17 .pbmit-box-number-wrap::after, .pbmit-ihbox-style-17 .pbmit-box-number-wrap::before {
    content: "";
    position: absolute;
    background-color: transparent;
    height: 40px;
    width: 20px;
    box-shadow: 0 20px 0 0 #fff;
    z-index: 1;
}
.pbmit-bg-color-light-2 .pbmit-ihbox-style-17 .pbmit-ihbox-box-number {
    background-color: #fff;
}
.pbmit-ihbox-style-17 .pbmit-ihbox-box-number {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 50px;
    font-size: 16px;
    line-height: 50px;
    font-weight: 500 !important;
    border-radius: 50%;
    text-align: center;
    z-index: 3;
    color: #031e5a;
    background-color: var(--pbmit-light-color);
}
.pbmit-ihbox-style-17, .pbmit-ihbox-style-17 .pbmit-ihbox-box, .pbmit-ihbox-style-17 .pbmit-ihbox-box-number {
    transition: all 0.4s ease-in;
}
/*roads*/
.featured-imagebox {
    margin: 15px 0;
}
.featured-imagebox, .featured-imagebox .featured-thumbnail {
    position: relative;
    overflow: hidden;
}
.featured-imagebox .featured-thumbnail img {
    width: 100%;
    transition: transform .5s ease-in-out;
}
.featured-imagebox-services.style1 .featured-thumbnail i {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 41px;
    height: 41px;
    line-height: 41px;
    text-align: center;
    background-color: #252525;
    color: #fff;
}
.featured-imagebox-services.style1 .featured-content {
    padding: 25px 25px 0 0;
}
.featured-imagebox-services.style1 .featured-content .featured-title h3 {
    font-size: 22px!important;
    line-height: 32px;
    padding-left: 25px;
    margin-bottom: 10px;
    font-weight: 600;
    color: #000;
}
.featured-imagebox-services.style1 .featured-content .featured-title p {
    line-height: 32px;
    padding-left: 25px;
    margin-bottom: 10px;
    font-weight: 600;
    text-align: justify;
}
.featured-imagebox .featured-content .featured-title h3 {
    position: relative;
    overflow: hidden;
}
.featured-imagebox-services.style1 .featured-content .featured-title h3:before {
    display: block;
    content: "";
    position: absolute;
    width: 5px;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #031e5a;
}
.mt_165 {
    margin-top: -165px!important;
}
.featured-imagebox {
    margin: 15px 0;
}
.mt_75 {
    margin-top: -75px!important;
}
/*road second*/
.ttm-processbox-wrapper {
    margin-top: 80px;
}
.featured-icon-box.style12 {
    position: relative;
    padding: 30px 0 11px;
    text-align: center;
    z-index: 1;
    transform: translateY(0);
    -webkit-transition: .5s;
    -o-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
}
.featured-icon-box {
    position: relative;
    margin: 15px 0;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-2:before, .ttm-processbox-wrapper .featured-icon-box.style12:before {
    content: "\f0a9";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    display: block;
    top: 62px;
    right: 34px;
    bottom: 0;
    width: 7px;
    height: 11px;
/*    background-image: url(../../image-kaf/images/service/arrow.png);*/
    background-repeat: no-repeat;
    color: #031e5a;
}
.featured-icon-box.style12 .featured-icon {
    font-size: 55px;
    line-height: 75px;
    position: relative;
    top: 0;
    margin: 0 auto;
    border: 1px solid #d8d8d8;
    height: 90px;
    width: 90px;
}
.featured-icon-box.style12 .featured-icon:before {
    content: '';
    right: -6px;
    top: -6px;
    position: absolute;
    display: inline-block;
    width: 100px;
    height: 100px;
    border: 1px solid #d8d8d8;
    z-index: -1;
}
.featured-icon-box.style12.arrow-1 .featured-icon:after {
    display: block;
    content: "\f063";
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    right: 39px;
    top: -102px;
    width: 6px;
    height: 6px;
/*    background-image: url(../../image-kaf/images/service/arrow2.png);*/
    background-repeat: no-repeat;
    color: #031e5a;
    font-size: 16px;
}
.featured-icon-box .ttm-icon {
    margin-bottom: 0;
}
.ttm-icon.ttm-icon_element-onlytxt {
    height: auto;
    width: auto;
    line-height: 1;
}
.ttm-icon.ttm-icon_element-size-md {
    height: 70px;
    width: 70px;
    line-height: 59px;
}
.ttm-icon {
    margin-bottom: 25px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    border: 1px solid transparent;
    position: relative;
    transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    box-sizing: content-box;
    position: relative;
    color: #031e5a;
}
.featured-icon-box.style12 .featured-icon i {
    font-size: 50px;
    color: #031e5a;
}
.featured-icon-box .featured-icon .ttm-icon i {
    display: inline-block;
    transition: all .5s ease;
}
.ttm-icon.ttm-icon_element-onlytxt i {
    position: unset;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
.ttm-icon.ttm-icon_element-size-md i {
    font-size: 40px;
    line-height: 1;
}
.ttm-icon i {
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.featured-icon-box.style12 .featured-content {
    margin-top: 25px;
    padding: 0;
    margin-bottom: 26px;
}
.featured-icon-box.style12 .top-content {
    position: absolute;
    top: -86px;
    line-height: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.featured-icon-box.style12 {
    position: relative;
    padding: 30px 0 11px;
    text-align: center;
    z-index: 1;
    transform: translateY(0);
    -webkit-transition: .5s;
    -o-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
}
.featured-icon-box.style12 .featured-title h3 {
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 5px;
    font-weight: 600;
    color: #000;
}
.featured-icon-box.style12 .featured-desc p {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
/*    -webkit-line-clamp: 2;*/
    -webkit-box-orient: vertical;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-1:after {
    display: block;
    content: '';
    position: absolute;
    right: 45px;
    top: -24px;
    width: 108px;
    height: 100px;
    background-image: url(../../image-kaf/images/service/process-arrow.png);
    background-repeat: no-repeat;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-2:before {
    top: 62px;
    right: 34px;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-2:after {
    display: block;
    content: '';
    position: absolute;
    right: 45px;
    top: 75px;
    width: 104px;
    height: 57px;
    background-image: url(../../image-kaf/images/service/proccess-arraow2.png);
    background-repeat: no-repeat;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-2 .featured-content {
    margin-top: -248px;
}
.ttm-processbox-wrapper .featured-icon-box.style12.arrow-3:after {
    display: block;
    content: '';
    position: absolute;
    right: 46px;
    top: 19px;
    width: 104px;
    height: 57px;
    background-image: url(../../image-kaf/images/service/proccess-arraow3.png);
    background-repeat: no-repeat;
}
/*roads img*/
.service-style1-area{
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
}

.single-service-style1{
    position: relative;
    display: block;
    background: #ffffff;
    border: 1px solid #135edf;
    padding: 0 17px 0;
    border-radius: 8px;
    margin-bottom: 30px;
}
.single-service-style1:hover{
    box-shadow: 0px 10px 60px 0px rgba(0, 0, 0, 0.07); 
    transition: all 100ms linear;
    transition-delay: 0.1s;
}
.single-service-style1 .img-holder {
    position: relative;
    display: block;
    overflow: hidden;
    margin-top: -20px;
}
.single-service-style1 .img-holder .inner{
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 8px;
}
.single-service-style1 .img-holder img{
    width: 100%;
    transform: scale(1.01);
    transition: all 700ms ease;
}
.single-service-style1 .img-holder::before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    content: '';
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, .2);
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    z-index: 10;
}