/* Custom Hero / Banner Section */
.custom-banner-section {
  position: relative;
  padding-top: 50px;
  padding-bottom: 100px;
  background-color: #0c1e21;
  overflow: hidden;
  z-index: 1;
  min-height: 100vh;
  display: flex;
  align-items: center;
  border-radius: 12px;
}

@media only screen and (max-width: 991px) {
  .custom-banner-section {
    padding-top: 160px;
    padding-bottom: 80px;
    min-height: auto;
  }
}

.custom-banner-section .banner-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.custom-banner-section .banner-bg .banner-image,
.custom-banner-section .banner-bg video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.45s ease;
}

.custom-banner-section .banner-bg .banner-image {
  background-image: url('../images/home/fallback-image.webp');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 1;
}

.custom-banner-section .banner-bg video {
  opacity: 0;
}

.custom-banner-section .banner-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(38deg, #000 0%, rgba(0, 0, 0, 0.2) 100%);
  z-index: -1;
}

.custom-banner-content {
  max-width: 948px;
  z-index: 2;
}

.custom-banner-content .sub-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--tj-color-common-white);
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--tj-color-common-white);
  padding: 6px 10px;
  margin-bottom: 20px;
  border-radius: 4px;
}

.custom-banner-content .banner-title {
  font-size: 64px;
  line-height: 1.15;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 15px;
}

.custom-banner-content .banner-title span.cyan-text {
  background: linear-gradient(to right, var(--primary-dark) 0%, var(--primary-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

.custom-banner-content .banner-subtitle {
  font-size: 28px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 25px;
}

.custom-banner-content .banner-desc {
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 40px;
  max-width: 530px;
  font-size: 18px;
  line-height: 26px;
  border-top: 1px solid var(--tj-color-border-1);
  padding-top: 25px;
}

@media only screen and (max-width: 991px) {
  .custom-banner-content .banner-title {
    font-size: 46px;
    line-height: 1.2;
  }

  .custom-banner-content .banner-subtitle {
    font-size: 22px;
  }

  .custom-banner-content .banner-desc {
    font-size: 16px;
    margin-bottom: 30px;
  }
}

@media (max-width: 767.98px) {
  .custom-banner-content .banner-title {
    font-size: 34px;
    line-height: 1.22;
    margin-bottom: 12px;
  }
}

@media (max-width: 575.98px) {
  .custom-banner-content .banner-title {
    font-size: 28px;
    line-height: 1.25;
  }
}

/* Facts & Figures Section */
.home-page .countup-item.style-2 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  padding: 28px 30px !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
  border-radius: 12px;
}

.home-page .countup-item.style-2:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06) !important;
}

.home-page .countup-item.style-2 .count-header {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

.home-page .countup-item.style-2 .count-header .count-icon {
  flex-shrink: 0 !important;
  transition: background-color 0.35s ease, color 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease !important;
}

.home-page .countup-item.style-2:hover .count-header .count-icon {
  background-color: var(--tj-color-theme-primary, #0B5DA8) !important;
  color: var(--tj-color-common-white, #ffffff) !important;
  transform: scale(1.06) !important;
  box-shadow: 0 10px 25px rgba(11, 93, 168, 0.18) !important;
}

.home-page .countup-item.style-2 .inline-content {
  margin: 0 !important;
}

.home-page .fact-figures-section .inline-content {
  font-size: 50px !important;
}

/* Keep the central facts heading on the intended two lines on desktop. */
@media only screen and (min-width: 992px) {
  .home-page .fact-figures-section .h4-content-wrap .sec-heading {
    width: 100%;
  }

  .home-page .fact-figures-section .h4-content-wrap .sec-title {
    font-size: 42px;
    line-height: 1.15;
  }

  .home-page .fact-figures-section .h4-content-wrap .sec-title #text-highlight-color {
    display: block;
    white-space: nowrap;
  }
}

.home-page .countup-item.style-2 .count-inner {
  padding-top: 20px !important;
  width: 100% !important;
  text-align: center !important;
}

.home-page .countup-item.style-2 .count-text {
  display: block !important;
  text-align: center !important;
  margin: 0 !important;
}

.home-page .customers-box.style-2 {
  transition: transform 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease !important;
}

.home-page .customers-box.style-2:hover {
  transform: translateY(-6px) !important;
  background-color: #2f60b5 !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15) !important;
}

.home-page .customers-box.style-2 .customers-text {
  max-width: 346px;
  font-size: 22px;
}

@media only screen and (max-width: 991px) {
  .home-page .countup-item.style-2 {
    padding: 24px 20px !important;
  }

  .home-page .countup-item.style-2 .count-header .count-icon {
    width: 70px !important;
    height: 70px !important;
    font-size: 38px !important;
  }

  .home-page .countup-item.style-2 .inline-content {
    font-size: 60px !important;
  }
}

@media only screen and (max-width: 575px) {
  .home-page .countup-item.style-2 {
    padding: 20px 15px !important;
  }

  .home-page .countup-item.style-2 .count-header .count-icon {
    width: 60px !important;
    height: 60px !important;
    font-size: 32px !important;
  }

  .home-page .countup-item.style-2 .inline-content {
    font-size: 48px !important;
  }

  .home-page .customers-box.style-2 {
    padding: 20px 15px !important;
    min-height: auto !important;
  }

  .home-page .customers-box.style-2 .customers-text {
    font-size: 18px !important;
    max-width: 100% !important;
  }
}

@media only screen and (max-width: 375px) {
  .home-page .countup-item.style-2 .count-header .count-icon {
    width: 50px !important;
    height: 50px !important;
    font-size: 26px !important;
  }

  .home-page .countup-item.style-2 .inline-content {
    font-size: 38px !important;
  }
}

/* About Us & Facility Showcase Section */
.home-page .h6-about {
  background-color: var(--primary);
}

.custom-about-banner-section {
  position: relative;
  padding: 120px 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  z-index: 1;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 840px;
}

.custom-about-banner-section .banner-overlay-dark {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  z-index: -1;
}

.custom-about-banner-section .solution-box {
  background-color: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  padding: 45px;
  max-width: 650px;
  width: 100%;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
  color: #ffffff;
}

.custom-about-banner-section .solution-box .sub-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  color: var(--secondary, #7BAF35);
  text-transform: uppercase;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.custom-about-banner-section .solution-box .sub-title i {
  font-size: 16px;
}

.custom-about-banner-section .solution-box .sec-title {
  color: #ffffff;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 20px;
}

.custom-about-banner-section .solution-box .sec-title span {
  color: var(--secondary, #7BAF35);
}

.custom-about-banner-section .solution-box .desc {
  color: rgba(255, 255, 255, 0.9);
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 30px;
}

.custom-about-banner-section .solution-box .box-points {
  list-style: none;
  padding: 0;
  margin: 0 0 35px 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.custom-about-banner-section .solution-box .box-points li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 500;
  color: #ffffff;
}

.custom-about-banner-section .solution-box .box-points li i {
  color: var(--secondary, #7BAF35);
  font-size: 18px;
}

.custom-about-banner-section .solution-box .btn-area {
  margin-top: 10px;
}

@media (max-width: 991px) {
  .custom-about-banner-section {
    padding: 80px 0;
    min-height: auto;
  }

  .custom-about-banner-section .solution-box {
    padding: 30px;
    max-width: 100%;
  }

  .custom-about-banner-section .solution-box .sec-title {
    font-size: 30px;
  }
}

/* Why Choose Us Section */
.home-page #about-us .banner-img img,
.home-page .h4-banner-section:not(#about-us) .banner-img img,
.home-page #quality-assurance .h8-choose-banner img {
  /* These three section images should stay fixed while ScrollSmoother moves the page. */
  transform: none !important;
}

.home-page .h4-banner-section .h4-banner-content {
  padding-top: 60px;
  padding-bottom: 60px;
  position: relative;
}

.home-page .h4-banner-section .h4-banner-content .sub-title {
  border: 1px dashed var(--tj-color-common-white);
}

.home-page .h4-banner-section .h4-banner-content .sub-title i {
  color: var(--tj-color-common-white);
}

.home-page .h4-banner-section .h4-banner-content .sec-title,
.home-page .h4-banner-section .h4-banner-content .banner-title {
  color: var(--tj-color-common-white, #ffffff);
}

.home-page .h4-banner-section .h4-banner-content .sec-title span,
.home-page .h4-banner-section .h4-banner-content .sec-title #text-highlight-color,
.home-page .h4-banner-section .h4-banner-content .banner-title span,
.home-page .h4-banner-section .h4-banner-content .banner-title #text-highlight-color {
  color: var(--secondary, #7BAF35) !important;
}

.home-page .h4-banner-section .h4-banner-content .banner-desc,
.home-page .h4-banner-section .h4-banner-content .banner-desc p {
  max-width: unset;
  color: var(--bg-light);
}

.home-page .h4-banner-section .h4-banner-content .banner-desc-area {
  max-width: unset;
  gap: 20px;
}

.home-page .h4-banner-section {
  background-color: var(--primary-dark);
}

.home-page .tj-project-section-3 {
  /* background-color: var(--primary-dark); */
  /* background: linear-gradient(160deg,
      rgba(var(--primary-rgb), 0.18),
      rgba(var(--secondary-rgb), 0.15)) !important; */
  background: linear-gradient(160deg, rgb(28, 73, 160), rgba(170, 186, 149, 0.9)) !important;
}

.home-page .sec-heading .sec-title span {
  color: var(--secondary-dark);
}

.home-page .about-us-section .tj-primary-btn.btn-outline,
.home-page #expertise .tj-primary-btn.btn-outline {
  background-color: var(--secondary);
  border: 2px solid var(--bg-light);
  padding: 3px 5px 3px 25px;
  transition: all 0.3s ease-in-out;
}

.home-page .about-us-section .tj-primary-btn .btn-text {
  color: var(--black-color) !important;
}

.home-page .h4-banner-section .banner-img-area .h4-rating-box {
  max-width: 380px;
  width: 100%;
  top: 30px;
  background-color: rgb(122 162 234 / 22%);
}

.home-page .h4-banner-section .banner-img-area .h4-rating-box .title {
  font-size: 32px;
  color: #000;
}

.home-page .h4-banner-section .banner-img-area .h4-rating-box .desc {
  color: #000;
}

.home-page .h4-banner-section .banner-img-area .h4-rating-box .title::before,
.home-page .h4-banner-section .banner-img-area .h4-rating-box .title::after {
  content: unset;
}

.home-page .h4-banner-section .sec-heading {
  margin-bottom: 44px;
}

/* Manufacturing Capabilities Section */
.home-page #capabilities .h7-project-wrapper .h4-project-item {
  border: 1px solid var(--primary);
  border-radius: 12px;
}

.home-page #capabilities .h7-project-wrapper .h4-project-item .project-content .title {
  max-width: 678px;
}

/* Slider & Heading Utilities */
.home-page .swiper-pagination-bullet {
  background-color: var(--tj-color-common-white);
}

.home-page .slider-next,
.home-page .slider-prev {
  background-color: var(--secondary-dark);
  border-color: var(--bg-light);
}

.home-page .slider-next:hover,
.home-page .slider-prev:hover {
  background-color: var(--primary-dark);
  border-color: var(--bg-light);
}

.home-page .tj-project-section-3 .sub-title,
.tj-project-section-3 .sub-title {
  color: var(--tj-color-common-white);
  border: 1px dashed var(--tj-color-common-white);
  padding: 6px 10px;
}

.home-page .tj-project-section-3 .sec-title span,
.home-page .tj-project-section-3 .sec-title #text-highlight-color,
.tj-project-section-3 .sec-title span,
.tj-project-section-3 .sec-title #text-highlight-color {
  color: var(--secondary-dark) !important;
}

.home-page .tj-project-section-3 .sec-heading p,
.home-page .tj-project-section-3 p {
  color: var(--white-color);
  padding: 15px 15px;
}

.home-page .sec-heading-wrap .sub-title i {
  color: var(--tj-color-common-white);
}

.home-page .sec-heading.style-2 .sub-title {
  background-color: unset;
  border: 1px dashed var(--primary-dark);
  color: var(--tj-color-theme-primary);
}

.home-page .banner-desc-area .banner-desc {
  color: var(--tj-color-common-white);
}

.home-page .heading-wrap-content {
  margin-bottom: 24px;
}

.home-page .heading-wrap-content .sec-heading {
  max-width: 970px;
}

/* Industry We Serve Slider - Equal Height Cards & Content */
.home-page .project-slider-2 .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.home-page .project-slider-2 .swiper-slide {
  height: auto;
  display: flex;
}

.home-page .project-slider-2 .project-item {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--secondary-dark);
  border-radius: 12px;
  overflow: hidden;
}

.home-page .project-slider-2 .project-item .project-img {
  width: 100%;
  height: auto;
  flex-shrink: 0;
  overflow: hidden;
}

.home-page .project-slider-2 .project-item .project-img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 615 / 505;
  object-fit: cover;
  display: block;
}

.home-page .project-slider-2 .project-item .project-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 22px 20px 22px 24px;
  min-height: 125px;
}

.home-page .project-slider-2 .project-item .project-text {
  margin-top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  flex-wrap: nowrap;
}

.home-page .project-slider-2 .project-item .title {
  color: var(--black-color);
  font-size: 20px;
  line-height: 1.35;
  margin-bottom: 0;
  flex: 1 1 auto;
  max-width: calc(100% - 46px);
  width: auto;
}

.home-page .project-slider-2 .project-item .title a {
  color: var(--black-color);
  transition: color 0.3s ease-in-out;
}

.home-page .project-slider-2 .project-item .title a:hover {
  color: var(--white-color);
}

.home-page .project-slider-2 .project-item .categories a {
  background-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}

.home-page .project-slider-2 .project-item .project-btn {
  opacity: 1;
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-page .project-slider-2 .project-item .project-btn i {
  color: var(--black-color);
  transform: rotate(0);
  transition: all 0.3s ease-in-out;
}

.home-page .project-slider-2 .project-item .project-btn:hover i {
  color: var(--white-color);
  transform: translateX(4px);
}

/* Responsive adjustments for equal height across devices */
@media (max-width: 991px) {
  .home-page .project-slider-2 .project-item .project-content {
    min-height: 110px;
    padding: 18px 16px 18px 20px;
  }

  .home-page .project-slider-2 .project-item .title {
    font-size: 18px;
  }
}

@media (max-width: 575px) {
  .home-page .project-slider-2 .project-item .project-content {
    min-height: 95px;
    padding: 16px 14px;
  }

  .home-page .project-slider-2 .project-item .title {
    font-size: 17px;
  }

  .home-page .project-slider-2 .project-item .project-btn {
    width: 32px;
    height: 32px;
    font-size: 22px;
  }
}

/* Product Categories Section */
.home-page .product-categories-section {
  padding-top: 50px;
  padding-bottom: 20px;
}

.home-page .product-categories-section .sec-heading.style-4 {
  max-width: 900px !important;
  margin-left: auto;
  margin-right: auto;
}

.home-page .product-categories-section .product-explore-btn-area {
  text-align: center;
  margin-top: 30px;
}

.home-page .product-categories-section .product-cat-text {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.home-page .product-categories-section .product-cat-title {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none !important;
  width: auto;
  margin-bottom: 0;
  font-size: 24px;
  line-height: 1.35;
  word-break: normal;
  overflow-wrap: break-word;
}

.home-page .product-categories-section .product-cat-title a {
  display: inline-block;
  color: inherit;
  transition: color 0.3s ease-in-out;
}

.home-page .product-categories-section .product-cat-btn {
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
  margin-left: auto;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .home-page .product-categories-section .product-cat-title {
    font-size: 22px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .home-page .product-categories-section .product-cat-title {
    font-size: 20px;
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .home-page .product-categories-section .product-cat-title {
    font-size: 19px;
  }
}

@media only screen and (max-width: 575px) {
  .home-page .product-categories-section .product-cat-title {
    font-size: 18px;
    line-height: 1.3;
  }
}

/* Industries Served Section */
.home-page #industries-serve {
  position: relative;
  overflow: hidden;
}

.home-page #industries-serve .sec-heading-wrap.style-3 .sub-title {
  padding: 6px 10px;
}

.home-page #industries-serve .tj-scroll-slider {
  padding-top: 40px;
  padding-bottom: 50px;
  position: relative;
}

.home-page #industries-serve .sec-heading-wrap.style-3,
.home-page #infrastructure .sec-heading-wrap.style-3 {
  margin-bottom: 28px;
}

.home-page #industries-serve .sec-heading-wrap.style-3 .sub-title,
.home-page #infrastructure .sec-heading-wrap.style-3 .sub-title {
  color: var(--tj-color-theme-primary);
  border: 1px dashed var(--primary-dark);
  padding: 6px 10px;
}

.home-page #infrastructure .infrastructure-sub-title i {
  color: var(--tj-color-theme-primary);
}

.home-page .h5-project-wrapper {
  display: flex;
  flex-wrap: nowrap;
  gap: 30px;
  will-change: transform;
}

.home-page .h5-project-item-wrapper {
  width: 100%;
  flex: 0 0 100%;
  max-width: 100%;
  will-change: transform;
}

.home-page .h5-project-item.project-item {
  display: flex;
  align-items: center;
  gap: 40px;
  background: var(--tj-color-common-white, #ffffff);
  border-radius: 20px;
  padding: 30px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
}

.home-page .h5-project-item.project-item .project-img {
  flex: 0 0 50%;
  max-width: 50%;
  height: 360px;
  border-radius: 12px;
  overflow: hidden;
}

.home-page .h5-project-item.project-item .project-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}

.home-page .h5-project-item.project-item .project-content {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 0 15px 0 0;
}

.home-page .h5-project-item.project-item .project-content .title {
  font-size: 26px;
  margin-bottom: 16px;
  max-width: 460px;
  color: var(--tj-color-heading, #131722);
}

.home-page .h5-project-item.project-item .project-content .desc {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 22px;
  color: var(--tj-color-text-body, #666);
}

@media only screen and (max-width: 991px) {
  .home-page .h5-project-item.project-item {
    flex-direction: column;
    padding: 20px;
    gap: 20px;
  }

  .home-page .h5-project-item.project-item .project-img {
    flex: 0 0 100%;
    max-width: 100%;
    height: 250px;
  }

  .home-page .h5-project-item.project-item .project-content {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0;
  }
}

/* Expertise Section */
.home-page .h8-project {
  background-color: var(--tj-color-theme-primary);
}

/* Keep the expertise card footers aligned when service names wrap differently. */
.home-page #expertise .h6-service-slider .swiper-wrapper {
  align-items: stretch;
}

.home-page #expertise .h6-service-slider .swiper-slide {
  height: auto;
}

.home-page #expertise .h6-service-item {
  display: flex;
  flex-direction: column;
}

.home-page #expertise .h6-service-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.home-page #expertise .h6-service-title-wrap {
  width: 100%;
  min-height: 58px;
  align-items: center;
  flex-wrap: nowrap;
}

.home-page #expertise .h6-service-title-wrap .title {
  flex: 1 1 auto;
}

.home-page #expertise .project-item .project-content .project-text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.home-page #expertise .project-item .project-content .project-text>div {
  flex: 1 1 auto;
  min-width: 0;
}

.home-page #expertise .project-item .project-content .tji-icon-btn {
  flex-shrink: 0;
}

.home-page #expertise .h8-project-wrapper .h4-project-item .project-content .tji-icon-btn i {
  color: var(--tj-color-theme-dark);
}

.home-page #expertise .h8-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn,
.home-page #expertise .h8-project-wrapper .h4-project-item .project-content .tji-icon-btn:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
}

.home-page #expertise .h8-project-wrapper .h4-project-item:hover .project-content .tji-icon-btn i,
.home-page #expertise .h8-project-wrapper .h4-project-item .project-content .tji-icon-btn:hover i {
  color: var(--tj-color-common-white);
}

.home-page #expertise .expertise-explore-btn-area {
  text-align: center;
  margin-top: 35px;
  padding-inline-end: calc((100% - 1320px) / 2);
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .home-page #expertise .expertise-explore-btn-area {
    padding-inline-end: calc((100% - 1140px) / 2);
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .home-page #expertise .expertise-explore-btn-area {
    padding-inline-end: calc((100% - 960px) / 2);
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .home-page #expertise .expertise-explore-btn-area {
    padding-inline-end: calc((100% - 720px) / 2);
  }
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
  .home-page #expertise .expertise-explore-btn-area {
    padding-inline-end: calc((100% - 540px) / 2);
  }
}

@media (max-width: 575px) {
  .home-page #expertise .expertise-explore-btn-area {
    padding-inline-end: 12px;
  }
}

/* Infrastructure Section */
.home-page #infrastructure .heading-wrap-content .sec-heading,
.home-page #manufacturing-process .heading-wrap-content .sec-heading {
  width: 100%;
  max-width: 100%;
}

.home-page #infrastructure .heading-wrap-content .desc,
.home-page #manufacturing-process .heading-wrap-content .desc {
  max-width: 870px;
  margin-bottom: 0;
  flex: 1 1 auto;
}

.home-page #infrastructure .heading-wrap-content .btn-wrap,
.home-page #manufacturing-process .heading-wrap-content .btn-wrap {
  flex-shrink: 0;
}

.home-page #infrastructure .project-area .project-item .project-content .title {
  max-width: 289px;
}

.home-page #infrastructure .project-area .project-item .project-content .categories {
  display: inline-flex;
  width: fit-content;
  background-color: var(--secondary-dark);
  font-size: 14px;
  line-height: 1;
  color: var(--tj-color-common-black);
  font-weight: var(--tj-fw-medium, 500);
  padding: 3px 8px 4px;
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid var(--secondary-dark);
  transition: all 0.3s ease-in-out;
}

.home-page #infrastructure .project-area .project-item:hover .project-content .categories,
.home-page #infrastructure .project-area .project-item .project-content .categories:hover {
  background-color: var(--tj-color-theme-primary);
  border-color: var(--tj-color-theme-primary);
  color: var(--tj-color-common-white);
}

/* Manufacturing Process & Material Grade Section */
.home-page #manufacturing-process {
  background-color: var(--tj-color-theme-primary);
}

.home-page #manufacturing-process .sec-heading-wrap .sub-title {
  background-color: transparent !important;
  color: var(--tj-color-common-white) !important;
  border: 1px dashed var(--tj-color-common-white) !important;
  padding: 6px 10px;
}

.home-page #manufacturing-process .sec-heading-wrap .sub-title i {
  color: var(--tj-color-common-white) !important;
}

.home-page #manufacturing-process .sec-heading .sec-title {
  color: var(--tj-color-common-white);
}

.home-page #manufacturing-process .sec-heading .sec-title span {
  color: var(--secondary-dark) !important;
}

.home-page #manufacturing-process .heading-wrap-content .desc {
  color: var(--tj-color-common-white);
}

.home-page #manufacturing-process .tj-primary-btn.btn-outline,
.home-page #manufacturing-process .tj-primary-btn {
  background-color: var(--secondary);
  border: 2px solid var(--bg-light);
  padding: 3px 5px 3px 25px;
  transition: all 0.3s ease-in-out;
}

.home-page #manufacturing-process .tj-primary-btn .btn-text {
  color: var(--black-color) !important;
}

.home-page #manufacturing-process .tj-primary-btn .btn-icon {
  background-color: var(--tj-color-theme-primary);
  transition: all 0.3s ease-in-out;
}

.home-page #manufacturing-process .tj-primary-btn .btn-icon i {
  color: var(--tj-color-common-white);
  transition: all 0.3s ease-in-out;
}

.home-page #manufacturing-process .process-item:not(:last-child)::after {
  border: 7px solid var(--tj-color-theme-primary);
}

/* Material Grade Sub-Section */
.home-page #manufacturing-process .material-grade-wrapper {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.home-page #manufacturing-process .material-grade-wrapper .sec-heading .sub-title {
  background-color: transparent !important;
  color: var(--tj-color-common-white) !important;
  border: 1px dashed var(--tj-color-common-white) !important;
  padding: 6px 10px;
}

.home-page #manufacturing-process .material-grade-wrapper .sec-heading .sub-title i {
  color: var(--tj-color-common-white) !important;
}

.home-page #manufacturing-process .material-grade-wrapper .sec-heading .sec-title {
  color: var(--tj-color-common-white);
}

.home-page #manufacturing-process .material-grade-wrapper .sec-heading .sec-title span {
  color: var(--secondary-dark) !important;
}

.home-page #manufacturing-process .material-grade-wrapper .team-item {
  border-color: rgba(255, 255, 255, 0.15) !important;
  background-color: rgba(255, 255, 255, 0.04);
}

.home-page #manufacturing-process .material-grade-wrapper .team-item .team-img::before {
  background-color: #298646;
}

.home-page #manufacturing-process .material-grade-wrapper .team-item .title,
.home-page #manufacturing-process .material-grade-wrapper .team-item .title a {
  color: var(--tj-color-common-white) !important;
  font-size: 20px;
  line-height: 1.3;
  font-weight: var(--tj-fw-sbold);
  transition: all 0.3s ease-in-out;
}

.home-page #manufacturing-process .material-grade-wrapper .team-item:hover .title,
.home-page #manufacturing-process .material-grade-wrapper .team-item .title:hover,
.home-page #manufacturing-process .material-grade-wrapper .team-item .title a:hover {
  color: var(--secondary) !important;
}

.home-page #manufacturing-process .material-grade-wrapper .team-item .designation {
  color: rgba(255, 255, 255, 0.75);
}

.home-page #manufacturing-process .material-grade-wrapper .h8-team-action .circle-text-wrap .circle-icon {
  background-color: var(--secondary);
  color: var(--black-color);
}

.home-page #manufacturing-process .material-grade-wrapper .h8-team-action .circle-text-wrap i {
  color: var(--black-color);
}

/* Quality Assurance Section */
.home-page .h8-choose,
.home-page #quality-assurance {
  background-color: var(--primary);
}

.home-page #quality-assurance .sec-heading .sub-title {
  color: var(--tj-color-common-white);
  border: 1px dashed rgba(255, 255, 255, 0.6);
  padding: 6px 10px;
}

.home-page #quality-assurance .sec-heading .sub-title i {
  color: var(--tj-color-common-white);
}

.home-page #quality-assurance .sec-heading .sec-title {
  color: var(--tj-color-common-white) !important;
}

.home-page #quality-assurance .sec-heading .sec-title span {
  color: var(--secondary) !important;
}

.home-page #quality-assurance .sec-heading p {
  color: rgba(255, 255, 255, 0.88);
}

.home-page #quality-assurance .h8-choose-box-wrapper {
  border-top: 1px dashed rgba(255, 255, 255, 0.25);
  border-bottom: 1px dashed rgba(255, 255, 255, 0.25);
}

.home-page #quality-assurance .h8-choose-box {
  border-bottom: 1px dashed rgba(255, 255, 255, 0.25);
  background-color: transparent;
}

.home-page #quality-assurance .h8-choose-box:last-child {
  border-bottom: 0;
}

.home-page #quality-assurance .choose-box .title {
  color: var(--tj-color-common-white) !important;
}

.home-page #quality-assurance .choose-box .desc {
  color: rgba(255, 255, 255, 0.85) !important;
}

.home-page #quality-assurance .h8-choose-box .choose-content .choose-icon {
  background-color: var(--secondary-dark);
  transition: transform 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease;
}

.home-page #quality-assurance .h8-choose-box:hover .choose-content .choose-icon,
.home-page #quality-assurance .h8-choose-box .choose-content .choose-icon:hover {
  background-color: var(--secondary-dark);
  transform: scale(1.06);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

.home-page #quality-assurance .h8-choose-box .choose-content .choose-icon i {
  font-size: 38px;
  width: auto;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

/* Certification Section */
.home-page #certifications .sec-heading,
.home-page .tj-client-section .sec-heading {
  margin-bottom: 15px;
}

.home-page #certifications .client-content,
.home-page .tj-client-section .client-content {
  border: none !important;
  border-radius: 0 !important;
  max-width: unset !important;
  width: auto !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  backdrop-filter: none !important;
  transform: none !important;
  position: static !important;
}

.home-page #certifications .sub-title,
.home-page .tj-client-section .sub-title,
.home-page #certifications .sec-heading .sub-title,
.home-page .tj-client-section .sec-heading .sub-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--tj-color-theme-primary);
  font-size: 14px;
  line-height: 1;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-weight: var(--tj-fw-bold);
  border: 1px dashed var(--primary-dark) !important;
  padding: 6px 10px;
  margin-bottom: 16px;
  border-radius: 4px;
}

.home-page #certifications .sub-title i,
.home-page .tj-client-section .sub-title i,
.home-page #certifications .sec-heading .sub-title i,
.home-page .tj-client-section .sec-heading .sub-title i {
  color: var(--primary-dark);
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
}

.home-page #certifications .desc,
.home-page .tj-client-section .desc,
.home-page #certifications p,
.home-page .tj-client-section p {
  color: var(--tj-color-text-body);
  margin-bottom: 30px;
}

.home-page #certifications .client-slider-1::before,
.home-page #certifications .client-slider-1::after {
  background-image: unset !important;
}

.home-page #certifications .client-logo {
  width: 200px !important;
  height: 200px !important;
  border-radius: 12px;
}

/* Blogs Section */
.home-page .tj-blog-section-2 .sec-heading-wrap .sub-title {
  color: var(--tj-color-theme-primary);
  background-color: transparent;
  border: 1px dashed var(--primary-dark);
  padding: 6px 10px;
}

.home-page .tj-blog-section-2 .sec-heading-wrap .sub-title i {
  color: var(--primary-dark);
}

.home-page .tj-blog-section-2 .sec-heading.style-2 .sec-title span {
  color: var(--tj-color-theme-primary);
}

.home-page .tj-blog-section-2 .heading-wrap-content .desc {
  max-width: 950px;
}

.home-page .tj-blog-section-2 .swiper-pagination-bullet {
  background-color: var(--secondary-dark);
}

/* Equal Height Blog Cards Across All Screen Sizes */
.tj-blog-section-2 .blog-slider {
  height: 100%;
}

.tj-blog-section-2 .blog-slider .swiper-wrapper {
  display: flex !important;
  align-items: stretch !important;
}

.tj-blog-section-2 .blog-slider .swiper-slide {
  height: auto !important;
  display: flex !important;
  align-items: stretch !important;
}

.tj-blog-section-2 .blog-item.style-2 {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  border-radius: 12px;
  overflow: hidden;
  box-sizing: border-box;
}

/* Thumbnail Column */
.tj-blog-section-2 .blog-item.style-2 .blog-thumb {
  width: 47% !important;
  min-width: 47% !important;
  max-width: 47% !important;
  flex: 0 0 47% !important;
  height: 100% !important;
  min-height: 320px !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 10px;
  display: flex !important;
}

.tj-blog-section-2 .blog-item.style-2 .blog-thumb a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.tj-blog-section-2 .blog-item.style-2 .blog-thumb img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 10px;
  transition: transform 0.4s ease;
}

/* Content Column */
.tj-blog-section-2 .blog-item.style-2 .blog-content {
  width: 53% !important;
  flex: 1 1 53% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-sizing: border-box;
}

.tj-blog-section-2 .blog-item.style-2 .blog-content .title-area {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

.tj-blog-section-2 .blog-item.style-2 .blog-content .title {
  margin-top: 10px;
  margin-bottom: 0;
}

.tj-blog-section-2 .blog-item.style-2 .blog-content .text-btn {
  margin-top: auto !important;
  padding-top: 20px !important;
  align-self: flex-start !important;
}

/* Consistent comfortable proportions on desktop */
@media (min-width: 1200px) {
  .tj-blog-section-2 .blog-item.style-2 {
    min-height: 360px;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .tj-blog-section-2 .blog-item.style-2 {
    min-height: 350px;
  }
}

@media (min-width: 576px) and (max-width: 991.98px) {
  .tj-blog-section-2 .blog-item.style-2 {
    min-height: 320px;
  }
}

/* Mobile Screen (< 576px) */
@media (max-width: 575.98px) {
  .tj-blog-section-2 .blog-item.style-2 {
    flex-direction: column !important;
    padding: 15px !important;
  }

  .tj-blog-section-2 .blog-item.style-2 .blog-thumb {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 220px !important;
    height: 220px !important;
    min-height: 220px !important;
  }

  .tj-blog-section-2 .blog-item.style-2 .blog-thumb img {
    height: 220px !important;
    min-height: 220px !important;
  }

  .tj-blog-section-2 .blog-item.style-2 .blog-content {
    width: 100% !important;
    flex: 1 1 auto !important;
    padding: 20px 10px 10px !important;
  }
}

.home-page .h7-cta-inner .cta-content .title {
  max-width: 716px;
}

/* Expertise / Services Heading */
.home-page .expertise-services-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 45px;
}

.home-page .expertise-services-heading .sec-heading {
  margin-bottom: 0;
  text-align: left;
}

.home-page .expertise-services-heading .sec-title {
  max-width: 760px;
}

.home-page .expertise-services-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  width: 100%;
  margin-top: 24px;
}

.home-page .expertise-services-content .banner-desc-area {
  flex: 1 1 auto;
  min-width: 0;
}

.home-page .expertise-services-content .banner-desc {
  color: var(--tj-color-common-black);
}

.home-page .expertise-services-section .sec-title span {
  color: var(--tj-color-theme-primary);
}

.home-page .expertise-services-action {
  flex: 0 0 auto;
  padding-bottom: 4px;
}

.home-page .expertise-services-action .tj-primary-btn {
  background-color: var(--tj-color-theme-primary);
  border: 0;
  padding: 5px 5px 5px 25px;
}

.home-page .expertise-services-action .tj-primary-btn .btn-text {
  color: var(--tj-color-common-white) !important;
}

.home-page .expertise-services-action .tj-primary-btn .btn-icon {
  background-color: var(--secondary-dark);
}

.home-page .expertise-services-action .tj-primary-btn .btn-icon i {
  color: var(--tj-color-common-white);
}

@media (max-width: 767px) {
  .home-page .expertise-services-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 22px;
    margin-bottom: 35px;
  }

  .home-page .expertise-services-content {
    align-items: flex-start;
    flex-direction: column;
    gap: 22px;
  }

  .home-page .expertise-services-action {
    padding-bottom: 0;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .home-page .cta-area .cta-content .title {
    font-size: 50px;
  }
}


.home-page .h8-choose-content-wrapper {
  max-width: 648px;
  -webkit-margin-start: 30px;
  margin-inline-start: 30px;
}

@media (max-width: 767.98px) {

  .home-page #capabilities .h7-project-wrapper .h4-project-item,
  .home-page .h7-project-wrapper .h4-project-item,
  .h7-project-wrapper .h4-project-item {
    margin-bottom: unset !important;
  }

  .home-page .h4-banner-section .banner-img-area .banner-img img {
    height: auto !important;
    min-height: unset !important;
    object-fit: contain !important;
  }

  .home-page .h4-banner-section .banner-img-area .banner-img::before {
    display: none !important;
  }

  .home-page .h4-banner-section .banner-img-area .h4-rating-box {
    display: none !important;
  }
}

/* Quality Assurance */
.home-page .testimonial-wrapper-2 {
  background: linear-gradient(160deg, rgb(28, 73, 160), rgba(170, 186, 149, 0.9)) !important;
}

.home-page .testimonial-wrapper-2 .client-thumb .author-header h4.title {
  color: var(--tj-color-common-white) !important;
}

.home-page .testimonial-wrapper-2 .sec-title {
  max-width: 300px;
  background-color: var(--tj-color-common-white);
  border-radius: unset;
  border: 1px dashed var(--primary-dark);
  padding: 10px 20px;
}

.home-page .testimonial-wrapper-2 h5.sec-title {
  font-size: 14px;
}

.home-page .testimonial-wrapper-2 .sec-title i {
  color: var(--tj-color-theme-primary);
}

.home-page .testimonial-wrapper-2 .client-thumb .thumb-img {
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-page .testimonial-wrapper-2 .client-thumb .thumb-img img {
  width: 60px;
  height: 60px;
  object-fit: contain;
  display: block;
}

.home-page .testimonial-wrapper-2 .client-thumb .thumb-img {
  background-color: var(--tj-color-common-white);
}

.home-page .project-item {
  border-radius: 12px;
}