:root{
  --body-bg-color: #F4FAFF;
  --primary-color: #014076;
  --secondary-color: #004B84;
  --tertiary-color: #CBE8FF;
  --footer-bg: #004B84;
  --text-color: #202020;
  --black-color: #000000;
  --white-color: #FFFFFF;
  --section-label-color: #014076;
  --get-in-touch-cta-bg: #51738D;
  --parts-service-repair-bg: #E4E9ED;
  --services-spotlight-card-bg: linear-gradient(180deg, #FFFFFF 0%, #B8D6ED 100%);
}
@font-face{
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?k3zr5g');
  src:  url('../fonts/icomoon.eot?k3zr5g#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?k3zr5g') format('truetype'),
    url('../fonts/icomoon.woff?k3zr5g') format('woff'),
    url('../fonts/icomoon.svg?k3zr5g#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"]{
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-customer-review-icon:before {
  content: "\e911";
}
.icon-history-icon:before {
  content: "\e912";
}
.icon-ship-machine-icon:before {
  content: "\e913";
}
.icon-solve-target-icon:before {
  content: "\e90d";
}
.icon-remote-diagnostics-icon:before {
  content: "\e90a";
}
.icon-robust-parts-inventory-icon:before {
  content: "\e90b";
}
.icon-emergency-hotline-icon:before {
  content: "\e90c";
}
.icon-field-service-maintenance-icon:before {
  content: "\e90e";
}
.icon-aftermarket-retools-refurbishment-icon:before {
  content: "\e910";
}
.icon-emergency-parts-icon:before {
  content: "\e90f";
}
.icon-star:before{
  content: "\e909";
}
.icon-search:before{
  content: "\e904";
}
.icon-cheron-right-icon:before{
  content: "\e905";
}
.icon-cheron-left-icon:before{
  content: "\e906";
}
.icon-arrow-left-icon:before{
  content: "\e900";
}
.icon-youtube-icon:before{
  content: "\e901";
}
.icon-phone-outline-icon:before{
  content: "\e902";
}
.icon-location-icon:before{
  content: "\e903";
}
.icon-linkdin-icon:before{
  content: "\e907";
}
.icon-phone-icon:before{
  content: "\e908";
}
body{
  font-family: 'Poppins', sans-serif;
}
h1, h2, h3, h4, h5, h6{
  font-family: 'Poppins', sans-serif;
}

p{
line-height: 32px;
}
ul,
li{
  list-style: none;
  margin: 0;
  padding: 0;
}

a{
  transition: all 0.3s ease-in-out;
  font-family: 'Poppins', sans-serif;
}

a:hover{
  color: var(--primary-color);
}
.site-content .ast-container{
flex-direction: column;
}
.row{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -20px;
}

/* Lightweight grid for legacy templates using Bootstrap-ish classes (without Bootstrap loaded). */
.row > [class*="col-"]{
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

/* Project single layout */
.inner-content .row{
  align-items: flex-start;
}
.inner-content .inner-heading h1{
  font-size: clamp(28px, 2.4vw, 44px);
  line-height: 1.12;
  letter-spacing: -0.01em;
  margin: 10px 0 18px;
  text-transform: uppercase;
}

.inner-content .page-content + [class*="col-"],
.inner-content .page-content{
  flex: 0 0 50%;
  max-width: 50%;
  min-width: 0;
}
.inner-content .feat-img img{
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}
.inner-content .feat-img{
  margin: 0 0 18px;
  background: #fff;
  border: 1px solid rgba(1, 64, 118, 0.12);
  border-radius: 12px;
  padding: 14px;
}
.inner-content .subtitle{
  margin: 0 0 14px;
}
.inner-content .page-content p{
  margin: 0 0 14px;
}

/* Spacing + header polish for testimonials when used on project pages */
.inner-content .testimonial-section{
  padding-top: 28px;
  margin-top: 8px;
}
.inner-content .testimonial-section .section-header{
  margin: 0 0 18px;
}
.inner-content .testimonial-section .section-label{
  margin: 0 0 10px;
}
.inner-content .testimonial-section .section-heading{
  margin: 0;
  line-height: 1.15;
}

/* Right-side boxed lists (match reference style) */
.inner-content .sdbar{
  background: #fff;
  border: 1px solid rgba(1, 64, 118, 0.18);
  border-radius: 12px;
  padding: 18px 18px 14px;
  margin: 0 0 18px;
}
.inner-content .sdbar .rt-heading{
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 14px;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--primary-color);
  margin: 0 0 12px;
}
.inner-content .sdbar .rt-heading::before,
.inner-content .sdbar .rt-heading::after{
  content: '';
  height: 1px;
  background: rgba(1, 64, 118, 0.25);
}
.inner-content .sdbar .items li{
  padding: 8px 0;
  border-top: 1px solid rgba(1, 64, 118, 0.08);
}
.inner-content .sdbar .items li:first-child{
  border-top: 0;
}
.inner-content .sdbar .items a{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--text-color);
  font-weight: 500;
}
.inner-content .sdbar .items a::before{
  content: '';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid rgba(1, 64, 118, 0.55);
  box-shadow: inset 0 0 0 3px rgba(203, 232, 255, 1);
}
.inner-content .sdbar .items a:hover{
  color: var(--primary-color);
}

.container{
  max-width: 1700px;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
.btn,
.request-btn .menu-link,
input[type="submit"]{
  padding: 5px 9px;
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  width: auto;
  min-width: 154px;
  font-weight: 500;
  min-height: 56px;
  position: relative;
  overflow: hidden;
  border-radius: 50px;
  outline: none;
  cursor: pointer;
  box-shadow: none;
  appearance: none;
  transition: all 0.3s ease-in-out;
  gap: 10px;
}
.btn .arrow-icon{
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--white-color);
  color: var(--primary-color);
  border: 1px solid var(--primary-color);
  position: relative;
  overflow: hidden;
}
.btn .arrow-icon::before,
.btn .arrow-icon::after{
  content: "\e900";
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease-in-out;
  margin-left: 1px;
}
.btn .arrow-icon::before{
  transform: translateX(0);
}
.btn .arrow-icon::after{
  transform: translateX(-100%);
}
.btn:hover .arrow-icon::before{
  transform: translateX(100%);
}
.btn:hover .arrow-icon::after{
  transform: translateX(0);
}
.btn.btn-primary{
  background-color: var(--secondary-color);
  color: var(--white-color);
}
.btn.btn-primary .arrow-icon{
  background-color: var(--white-color);
  color: var(--primary-color);
}
.btn.btn-secondary{
  background-color: var(--white-color);
  color: var(--secondary-color);
}
.btn.btn-secondary .arrow-icon{
  background-color: var(--primary-color);
  color: var(--white-color);
}
.section-mb-3{
  margin:0 0 30px;
}

.section-padding{
  padding: 30px 0;
}
button.slick-arrow{
  border: 2px solid var(--secondary-color);
  width: 40px;
  border-radius: 50%;
  height: 40px;
}

button.slick-arrow:hover{
  background: var(--secondary-color);
  color: var(--white-color);
}

button.slick-arrow::before{
  font-family: 'icomoon';
  color: var(--secondary-color);
  opacity: 1;
}
button.slick-arrow:hover::before{
color: var(--white-color);
}
button.slick-arrow.slick-prev::before{
  content: '\e906';
}
button.slick-arrow.slick-next::before{
  content: '\e905';
}
.slider-section .slick-slider .slick-arrow{
  top: -72px;
  border-color: var(--white-color);
}
.slider-section .slick-slider .slick-arrow.slick-prev{
  right: 80px;
  left: auto;
}
.slider-section .slick-slider .slick-arrow.slick-next{
  right: 20px;
  left: auto;
}
.top-header-bar{
  background-color: var(--primary-color);
  padding: 10px 0;
}
.top-header-bar .container{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.top-header-bar .header-connect a{
  color: var(--white-color);
}
.top-header-bar .header-connect a:hover{
  text-decoration: underline;
}
.top-header-bar .header-connect a:not(:last-child){
  margin-right: 50px;
  padding-right: 50px;
  border-right: 1px solid var(--white-color);
}
.top-header-bar .header-connect a span{
  width: 35px;
  height: 35px;
  display: inline-flex;
  border: 1px solid;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  color: var(--white-color);
  margin-right: 15px;
}
.social-icons{
  display: flex;
  align-items: center;
  gap: 15px;
}
.social-icons a{
  width: 38px;
  height: 38px;
  display: inline-flex;
  background-color: var(--white-color);
  border: 1px solid var(--primary-color);
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  color: var(--primary-color);
}
.social-icons a:hover{
  background-color: var(--primary-color);
  color: var(--white-color);
  border-color: var(--white-color);
}
.site-header .site-header-section .site-navigation  .main-navigation .main-header-menu .menu-item .sub-menu .menu-item .menu-link{
  font-size: 16px;
}
/* Main header: scrolls with top bar until top bar is off-screen; then fixed (see custom.js) */
#masthead.site-header {
  position: relative;
  z-index: 999;
  background-color: var(--white-color);
}
#masthead.site-header.is-fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}
#masthead.site-header.is-fixed-header .site-header-primary-section-left .site-branding{
  padding: 15px 0;
}
#masthead .ast-container{
  padding:0 20px;
  max-width:1700px;
}
.ast-logo-title-inline .ast-site-identity{
    padding: 34px 0;
}
.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item{
  line-height: 50px;
}
.main-header-bar .main-header-bar-navigation .sub-menu{
  padding: 20px;
}
.main-header-bar .main-header-bar-navigation .sub-menu .menu-item:not(:last-child) {
  margin-bottom: 15px;
}
.main-header-bar .main-header-bar-navigation .sub-menu .menu-item .menu-link {
  padding: 0 0;
}
.main-header-menu > .menu-item > .menu-link{
  color:var(--black-color);
}
.ast-builder-menu .main-navigation>ul{
  align-items:center;
}
.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item.request-a-quote-btn{
  padding: 0 0;
  margin-left: 30px;
}
.main-header-menu .request-a-quote-btn .menu-link,
input[type="submit"]{
  padding: 5px 18px;
  background-color: var(--primary-color);
  font-size: 16px;
  min-height: 56px;
  line-height: 24px;
  color: var(--white-color);
  border: 1px solid var(--primary-color);
  border-radius: 50px;
}
.ast-builder-menu-1 .menu-item.request-a-quote-btn.current-menu-item > .menu-link{
  color: var(--white-color);
}
.request-a-quote-btn .menu-link:hover,
input[type="submit"]:hover,
.ast-builder-menu-1 .menu-item.request-a-quote-btn.current-menu-item > .menu-link:hover{
  background-color:var(--white-color);
  color:var(--primary-color);
}

.main-header-menu .astm-search-menu{
  margin-left:27px;
  width: 56px;
  height: 56px;
}

.is-search-sections{
	display:flex;
	align-items:center;
}
.is-ajax-search-posts .is-ajax-search-details .is-title a, .is-ajax-search-posts .is-ajax-search-post .is-title a{
	font-size: 16px;
  font-weight: 500;
}
.search-results .site-main{
	max-width:1600px;
	margin:0 auto;
}
.search-results .ast-pagination .pagination .nav-links{
	display: flex;
	flex-wrap: wrap;
	gap: 18px 10px;
	justify-content: center;
}
.search-results .ast-pagination .pagination .nav-links .page-numbers{
	background-color:transparent !important;
	border:1px solid var(--secondary-color) !important;
	border-radius:50px;
	    justify-content: center;
}
.search-results .ast-pagination .pagination .nav-links .page-numbers.dots,
.search-results .ast-pagination .pagination .nav-links .page-numbers.prev,
.search-results .ast-pagination .pagination .nav-links .page-numbers.next{
	border:0 !important;

}

.search-results .ast-pagination .pagination .nav-links .page-numbers.current,
.search-results .ast-pagination .pagination .nav-links .page-numbers:not(.dots):hover{
	background-color:var(--secondary-color) !important;
	color:var(--white-color) !important;
}
.search-results .ast-pagination .pagination .nav-links .page-numbers.prev:hover,
.search-results .ast-pagination .pagination .nav-links .page-numbers.next:hover{
    background-color: transparent !important;
	color:var(--secondary-color) !important;
}
.search-results .post-thumb{
	display:none;
}
.search-results .ast-article-post .ast-article-inner{
	border-radius: 12px;
	    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	    transition: box-shadow 0.25s ease, transform 0.25s ease;
	height:100%;
}

.search-results .ast-article-post .ast-article-inner:hover {
    box-shadow: 0px 4px 4px 0px #BABABA40;
    transform: translateY(-2px);
}
.search-results .ast-article-post .ast-article-inner .author-name,
.search-results .ast-article-post .ast-article-inner .published{
	color:var(--secondary-color);
	font-size:16px;
}
.search-results .ast-archive-description{
	margin-top:0;
}
.search-results .entry-header{
	display:none;
}
.main-header-menu .astm-search-menu a, .is-search-submit{
  background-color: var(--primary-color) !important;
  width: 100%;
  height: 100%;
  border-radius: 50px;
  align-items: center;
  display: flex;
  justify-content: center;
  border: 1px solid var(--primary-color);
}
.main-header-menu .astm-search-menu a:hover{
  background-color: transparent !important;
}
.main-header-menu .astm-search-menu a:hover svg path{
  fill: var(--primary-color) !important;
}
.main-header-menu .astm-search-menu.open a{
  display:none;
}

#masthead.site-header.increase-header-height .ast-primary-header-bar.main-header-bar{
  padding-bottom: 20px;
  transition: padding-bottom 0.2s ease;
}
#masthead.site-header.is-fixed-header.increase-header-height .ast-primary-header-bar.main-header-bar{
  padding-bottom: 40px;
}
.main-header-menu > .menu-item > .menu-link:hover,
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,
.ast-builder-menu-1 .menu-item.current-menu-ancestor.current-menu-parent > .menu-link,
.ast-builder-menu-1 .menu-item:hover > .menu-link, .ast-builder-menu-1 .inline-on-mobile .menu-item:hover > .ast-menu-toggle,
.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link{
  color: var(--primary-color);
}
.ast-menu-toggle .main-header-menu > .menu-item > .sub-menu > .menu-item > .menu-link{
  font-size:16px;
  padding: 10px 16px;
}
.ast-builder-menu-mobile .main-header-bar-navigation .site-navigation .main-navigation .main-header-menu .menu-item .ast-menu-toggle,
.ast-builder-menu-mobile .main-header-bar-navigation .site-navigation .main-navigation .main-header-menu .menu-item .ast-menu-toggle:focus{
  border: 0 !important;
  box-shadow: none;
  padding: 0 0;
  outline: none;
}
.ast-builder-menu .main-navigation > ul > li:first-child > a{
  padding-left: 0;
}


.is-menu.is-dropdown form.is-search-form{
  border-radius: 100px;
  border: 1px solid  var(--primary-color);
  overflow: hidden;
  top: 120%;
  right: 30px;
  background-color:var(--white-color);
}

.is-form-style.is-form-style-3 input.is-search-input{
  background-color: transparent;
  border: 0 !important;
} 
.is-search-form .is-search-submit{
  width: 56px;
  height: 56px;
  background-color: rgb(1, 64, 118) !important;
  position: absolute;
  right: 0px;
  top: 0px;
} 
.is-search-form .is-search-submit .is-search-icon{
  padding-top: 0 !important;
  height: 100%;
  width: 100%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border: 0;
}
.astm-search-menu.is-menu path.search-icon-path,
.astm-search-menu .is-search-submit svg path,
.is-form-style .is-search-submit path{
  fill: #ffffff;
}
.is-menu.is-dropdown .search-close{
  right: 0;
  top: calc(100% + 22px);
}

/* Hero Section - Video Background */
.hero-section{
position: relative;
width: 100%;
min-height: 700px;
display: flex;
align-items: center;
}
.hero-section::before{
content: none;
}
.hero-section::after{
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.50);
z-index: 1;
}
.hero-video-wrap{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
background: #1a1d21;
}
.hero-video{
width: 100%;
height: 100%;
object-fit: cover;
}

.hero-content{
position: relative;
z-index: 2;
width: 100%;
display: flex;
align-items: center;
padding: 0;
}
.hero-inner{
max-width: 620px;
z-index: 11;
position: relative;
}
.hero-title{
color: var(--white-color);
margin: 0 0 18px;
font-weight: 700;
letter-spacing: -0.015em;
line-height: 1.06;
/* Enhance letter readability on video (no box) */
-webkit-text-stroke: 0.7px rgba(0, 0, 0, 0.35);
text-shadow:
  0 1px 1px rgba(0, 0, 0, 0.35),
  0 3px 14px rgba(0, 0, 0, 0.55),
  0 16px 42px rgba(0, 0, 0, 0.22);
text-wrap: balance;
}
.hero-desc{
color: var(--white-color);
margin: 0 0 34px;
max-width: 60ch;
/* Enhance letter readability on video (no box) */
-webkit-text-stroke: 0.35px rgba(0, 0, 0, 0.28);
text-shadow:
  0 1px 1px rgba(0, 0, 0, 0.30),
  0 3px 12px rgba(0, 0, 0, 0.52),
  0 14px 34px rgba(0, 0, 0, 0.18);
opacity: 0.95;
}

.content-block__inner{
display: grid;
grid-template-columns: 1fr 1.12fr;
gap: 0;
min-height: 0;
}
.content-block__text{
padding: 0px 71px 0px 0;
}
.content-block__media{
position: relative;
min-height: 380px;
max-width: 50%;
flex: 1;
}
.content-block__img{
width: 100%;
height: 100%;
min-height: 380px;
object-fit: cover;
border-radius: 16px;
display: block;
}
.about-us-section .content-block__inner .content-block__media{
  min-height: auto;
  max-width: 100%;
  border-radius: 16px;
  overflow: hidden;
}

.industries-banner.hero-banner .row{
justify-content: space-between;
}
.industries-banner.hero-banner .row .hero-banner__inner{
max-width: 51.3%;
margin-right: 0px;
}
.industries-banner.hero-banner .row .hero-banner__image{
max-width: 45.71%;
}
.industries-details-sec .detail-layout__inner{
  gap: 40px;
}
.industries-details-sec .detail-layout__inner .detail-layout__title{
  display:none;
}
.industries-details-sec .detail-layout__inner .detail-layout__media {
  height: auto;
}
/* Common wrapper for section label + heading (use on all pages) */

.section-label{
display: none;
align-items: center;
gap: 12px;
color: var(--section-label-color);
margin: 0 0 10px;
}
.section-label-line{
display: inline-block;
width: 30px;
height: 2px;
background: var(--primary-color);
flex-shrink: 0;
}
.section-heading{
margin: 0 0 18px;
line-height: 44px;
}
.section-body{
margin-bottom: 28px;
}
.section-body p{
margin: 0 0 18px;
}
.section-body p:last-child{
margin-bottom: 0;
}
.cards-section{
padding: 60px 0;
}
.cards-section--dark{
background: var(--primary-color);
}
.cards-section__header{
margin-bottom: 40px;
}
.cards-section__header .section-label{
margin-bottom: 8px;
}
.section-label--light{
color: var(--white-color);
}
.section-label-line--light{
background: var(--white-color);
}
.section-heading--light{
color: var(--white-color);
margin-bottom: 20px;
}

/* Reusable card (use in any section) */
.card-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px 24px;
}
.card{
border-radius: 10px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
overflow: hidden;
height: 100%;
display: flex;
flex-direction: column;
transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.card:hover{
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
transform: translateY(-5px);
}
.card__img-wrap{
position: relative;
padding-top: 56.8%;
overflow: hidden;
}
.card__img{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 10px 10px 0 0;
transition: transform 0.25s ease;
}

.card__body{
background: var(--white-color);
padding: 17px 14px 24px;
flex: 1;
display: flex;
flex-direction: column;
align-items: flex-start;
}
.card__title{
color: var(--text-color);
margin: 0 0 12px;
min-height: 40px;
}
.card__excerpt{
margin: 0 0 20px;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
line-height: 1.4;
overflow: hidden;
}
.card__list{
  margin: 0 0 20px;
  padding-left: 1.25em;
  list-style-type: disc;
}
.card__list li{
  margin: 0 0 10px;
  font-size: 16px;
  list-style-type: disc;
  line-height: 1.2;
}
.card__list li:last-child{
  margin-bottom: 0;
}
.card__cta{
  margin-top: auto;
}

/* Services listing cards use a custom CTA class */
.services-page-card__cta{
  margin-top: auto;
}
.error404 .ast-404-hero__img{
  display: block;
  height: auto;
  margin: 0 auto;
  width: min(1100px, 100%);
}

/* Cards slider (Slick) */
.cards-slider-wrap{
overflow: hidden;
margin-left: auto;
padding: 10px 0 0 0;
}
.cards-slider{
margin: 0 -12px;
}
.cards-slider .slick-list{
overflow: visible;
}
.cards-slider.slick-slider .slick-slide{
padding: 0 12px;
height: inherit;
display: flex;
/* min-height: 562px; */
}

.cards-slider__slide .card{
height: auto;
width: 100%;
}
.cards-section--dark .slick-dots li button:before{
color: rgba(255, 255, 255, 0.5);
}
.cards-section--dark .slick-dots li.slick-active button:before{
color: var(--white-color);
}
.cards-section--dark .slick-prev,
.cards-section--dark .slick-next{
color: var(--white-color);
}
.cards-section--dark .slick-prev:before,
.cards-section--dark .slick-next:before{
color: var(--white-color);
}

/* Common typography for content-only inner pages (Jobs, Value Proposition, etc.) */
.page-details-section__text{
  --pds-space: 16px;
}
.page-details-section__text :where(p, ul){
  margin-top: 0;
  margin-bottom: var(--pds-space);
  line-height: 1.9;
}
.page-details-section__text :where(ul){
  padding-left: 1.3em;
  margin-top: 10px;
}
.page-details-section__text :where(li){
  margin: 0 0 10px;
  line-height: 1.8;
  padding-left: 4px;
  list-style: disc;
}
.page-details-section__text :where(li:last-child){
  margin-bottom: 0;
}
.page-details-section__text :where(ul) li::marker{
  color: var(--primary-color);
  font-weight: 700;
}

.why-choose-section__inner{
display: flex;
}
.why-choose-section__content{
padding-right: 47px;
max-width: calc(100% - 43%);
width: 100%;
}

.why-choose-section__heading{
margin-bottom: 25px;
}

/* Reusable feature list (2-col grid of icon + text cards) */
.feature-list{
margin-top: 0;
}
.feature-list__grid{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 27px 25px;
}
/* Last item full width when alone in row (odd number of items) */
.feature-list__grid .feature-item:last-child:nth-child(odd){
grid-column: 1 / -1;
}
.feature-item{
display: flex;
align-items: center;
position: relative;
gap: 9px;
padding: 14px;
border: 1px solid var(--secondary-color);
border-radius: 10px;
min-height: 70px;
}

.feature-item__icon{
flex-shrink: 0;
width: 36px;
height: 36px;
border-radius: 50%;
border: 2px solid var(--primary-color);
display: inline-flex;
align-items: center;
justify-content: center;
color: var(--primary-color);
font-size: 12px;
}
.feature-item__text{
font-size: 18px;
font-weight: 500;
color: var(--secondary-color);
line-height: 1.4;
}
/* Why Choose - right column image */
.why-choose-section__media{
position: relative;
max-width: 719px;
width: 100%;
border-radius: 16px;
overflow: hidden;
}

.why-choose-section__img{
width: 100%;
height: 100%;
object-fit: cover;
}

/* Privacy Policy page (scoped) */
.privacy-policy-page{
  background: transparent;
  padding: 0 0 70px;
}
.privacy-policy__prose{
  width: 100%;
  max-width: none;
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
}
.privacy-policy__prose > *:first-child{
  margin-top: 0;
}
.privacy-policy__prose > *:last-child{
  margin-bottom: 0;
}
.privacy-policy__prose p{
  margin: 0 0 16px;
  line-height: 1.75;
  color: var(--text-color);
}
.privacy-policy__prose h2{
  margin: 34px 0 14px;
  text-transform: none;
  letter-spacing: -0.01em;
}
.privacy-policy__prose h3{
  margin: 22px 0 10px;
  text-transform: none;
}
.privacy-policy__prose h4{
  margin: 18px 0 8px;
  color: var(--text-color);
  text-transform: none;
}
.privacy-policy__prose a{
  color: var(--primary-color);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.privacy-policy__prose ul{
  list-style: disc;
  margin: 0 0 18px;
  padding-left: 1.25em;
}
.privacy-policy__prose li{
  list-style: disc;
  margin: 0 0 10px;
  padding-left: 4px;
  line-height: 1.6;
  color: var(--text-color);
}
.privacy-policy__prose li:last-child{
  margin-bottom: 0;
}
/* Cookie Policy page (scoped) */
.cookie-policy-page{
  background: transparent;
  padding: 0 0 70px;
}
.cookie-policy__prose{
  width: 100%;
  max-width: none;
  margin: 0;
}
.cookie-policy__prose > *:first-child{
  margin-top: 0;
}
.cookie-policy__prose > *:last-child{
  margin-bottom: 0;
}
.cookie-policy__prose p{
  margin: 0 0 16px;
  line-height: 1.75;
  color: var(--text-color);
}
.cookie-policy__prose h2{
  margin: 34px 0 14px;
  color: var(--secondary-color);
  text-transform: none;
  letter-spacing: -0.01em;
}
.cookie-policy__prose h3{
  margin: 22px 0 10px;
  color: var(--primary-color);
  text-transform: none;
}
.cookie-policy__prose h4{
  margin: 18px 0 8px;
  color: var(--text-color);
  text-transform: none;
}
.cookie-policy__prose a{
  color: var(--primary-color);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.cookie-policy__prose ul{
  list-style: disc;
  margin: 0 0 18px;
  padding-left: 1.25em;
}
.cookie-policy__prose li{
  list-style: disc;
  margin: 0 0 10px;
  padding-left: 4px;
  line-height: 1.6;
  color: var(--text-color);
}
.cookie-policy__prose li:last-child{
  margin-bottom: 0;
}

/* Cookiebot table polish */
.cookie-policy__prose .CookieDeclaration{
  margin-top: 22px;
}
.cookie-policy__prose table{
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 16px 0 24px;
  font-size: 14px;
}
.cookie-policy__prose th,
.cookie-policy__prose td{
  border: 1px solid rgba(1, 64, 118, 0.18);
  padding: 10px 12px;
  vertical-align: top;
}
.cookie-policy__prose th{
  background: rgba(203, 232, 255, 0.35);
  color: var(--secondary-color);
  font-weight: 600;
}
.cookie-policy__prose td{
  background: rgba(255, 255, 255, 0.35);
}
.cookie-policy__prose .cookie-declaration__category{
  margin-top: 30px;
}
.services-section{
position: relative;
padding: 38px 0;
overflow: hidden;
}
.services-section__bg{
position: absolute;
z-index: 0;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.services-section__bg img{
width: 100%;
height: 100%;
object-fit: cover;
}
.services-section__title{
  position: relative;
  z-index: 2;
  color: var(--white-color);
  text-align: center;
  font-size: 72px;
  font-weight: bold;
  line-height: 1.2;
  margin: 0 0 20px;
}
.services-section__title .storke-tile{
-webkit-text-stroke: 1px var(--white-color);
color: transparent;
}
.container--services{
max-width: 1736px;
margin: 0 auto;
overflow: hidden;
}
.services-slider{
margin: 0 -8px;
}

.services-slider .services-slider__slide.slick-slide{
padding: 10px 8px;
height: 428px;
display: flex !important;
transition: all .3s;
align-items: flex-end;
}

.service-card{
position: relative;
border-radius: 12px;
overflow: hidden;
width: 100%;
height: 300px;
text-decoration: none;
box-shadow: 0px 4px 8px 0px #2B2B2B40;
transition: all .3s;
}
.service-card::after{
content: '';
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: #00000073;
z-index: 1;
}
.services-slider .services-slider__slide.slick-slide.slick-current.slick-active.slick-center a.service-card{
height: 100%;
outline: none;
}

.service-card__img-wrap{
width: 100%;
height: 100%;
}
.service-card__img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.service-card__footer{
position: absolute;
left: 0;
right: 0;
bottom: 0;
z-index: 2;
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 12px;
gap: 12px;
}
.service-card__title{
color: var(--white-color);
font-weight: 500;
}
.service-card__btn{
flex-shrink: 0;
width: 30px;
height: 30px;
border-radius: 50%;
background: var(--white-color);
color: var(--primary-color);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 14px;
transition: background 0.25s ease, color 0.25s ease;
}
.service-card__btn .icon-arrow-left-icon:before{
margin-left: 2px;
}
.service-card:hover .service-card__btn{
background: var(--primary-color);
color: var(--white-color);
}

.services-section__cta-wrap{
text-align: center;
margin-top: 38px;
}
.services-section__cta-icon .icon-arrow-left-icon:before{
margin-left: 2px;
}
.blog-section{
position: relative;
}
.blog-section .section-heading {
  margin: 0 0 25px;
}
.blog-slider-wrap{
margin: 0 -10px;
}
.blog-slider-wrap .blog-slider.slick-slider{
position: static;
}
.blog-slider__slide{
padding: 0 10px;
}
.blog-card .blog-card__img-wrap{
position: relative;
padding-bottom: 60.75%;
overflow: hidden;
border-radius: 16px;
margin: 0 0 30px;
}
.blog-card .blog-card__img-wrap .blog-card__img{
position: absolute;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.blog-card__title{
margin: 0 0 8px;
}
.blog-card__excerpt{
font-size: 16px;
line-height: 26px;
margin: 0  0 18px;
}
.blog-slider .slick-arrow{
top: 15px;
left: auto;
}
.blog-slider .slick-arrow.slick-prev{
right: 80px;
}
.blog-slider .slick-arrow.slick-nextt{
right: 20px;
}
.testimonial-slider{
margin: 0 -10px;
}
.testimonial-slider-wrap{
padding: 51px 0;
position: relative;
margin: 40px 0 0;
}
.testimonial-pattern{
position: absolute;
right: 0;
top: 0;
max-width: 246px;
height: 159px;
object-fit: contain;
}
.testimonial-slider-wrap::before{
content: '';
position: absolute;
right: 0;
top: 0;
width: 100%;
max-width: calc(100% - 275px);
height: 100%;
background-color: #E9F5FF;
}
.testimonial-slider-wrap__inner{
position: relative;
z-index: 2;
}
.testimonial-slider__slide{
padding: 0 10px;
}
.testimonial-slider__slide .testimonial-card{
display: flex;
align-items: center;
}
.testimonial-card__img-wrap{
max-width: 594px;
width: 100%;
}
.testimonial-card__content{
margin-left: 110px;
max-width: 783px;
width: 100%;
}
.testimonial-slider-wrap__inner .quote-icon{
position: absolute;
left: 534px;
top: 50%;
transform: translateY(-50%);
z-index: 1;
}
.rating-stars{
margin: 0 0 18px;
}
.rating-stars .rating-star{
color: var(--secondary-color);
}
.testimonial-card .testimonial-card__content p{
font-size: 20px;
color: var(--text-color);
margin: 0 0 20px;
}
.testimonial-card .testimonial-card__content .testimonial-card__name{
font-weight: 600;
color: var(--black-color);
}

/* Testimonial slider + in-house gallery – custom arrows in single div */
.testimonial-slider-arrows,
.ihmts-gallery-arrows{
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
}
.testimonial-slider-arrow{
padding: 0 0;
background-color: transparent;
color: var(--secondary-color);
}

.get-in-touch-section{
background: #f4faff;
padding: 0px 0 80px;
}
.get-in-touch__inner{
display: grid;
grid-template-columns: 1fr 1fr;
align-items: center;
gap: 60px;
max-width: 1465px;
margin: 0 auto;
}
.get-in-touch__content{
max-width: 670px;
}
.get-in-touch__inner .get-in-touch__content .section-header .get-in-touch__label,
.testimonial-section .section-header .section-label{
  display: flex;
}
.get-in-touch__heading{
margin: 0 0 30px;
}
.get-in-touch__text{
font-size: 20px;
margin: 0 0 30px;
}
.get-in-touch__buttons{
display: flex;
gap: 22px;
}
.get-in-touch__btn{
text-decoration: none;
min-width: 200px;
}
.get-in-touch__illus{
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.get-in-touch__illus-img{
max-width: 100%;
height: auto;
display: block;
object-fit: contain;
}

.get-in-touch-cta{
background-color: var(--get-in-touch-cta-bg);
padding: 24px 0;
}
.get-in-touch-cta__inner{
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap;
}
.get-in-touch-cta__text{
font-size: 24px;
color: var(--white-color);
}
.site-footer{
background-color: var(--footer-bg);
}
.site-footer .footer-container{
max-width: 1540px;
}

.site-footer .footer-row{
padding: 35px 0;
justify-content: space-between;
row-gap: 30px;
}
.site-footer .footer-row .footer-col{
 padding: 0 15px;
}
.site-footer .footer-row .footer-col.logo-contact-col{
max-width: 467px;
width: 100%;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info{
display: flex;
flex-direction: column;
margin: 35px 0 0;
gap: 20px;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info .contact{
display: flex;
margin: 0 0;
column-gap: 17px;
color:var(--white-color);
align-items: center;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info .contact .icon{
width: 30px;
height: 30px;
background-color:var(--white-color);
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
color: var(--secondary-color);
font-size: 11px;
border: 1px solid var(--white-color);
font-size: 16px;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info a.contact .number{
max-width: calc(100% - 48px);
font-size: 18px;
font-weight: 500;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info .contact.address-contact p{
margin: 0 0;
color:var(--white-color);
font-size: 18px;
font-style: normal;
}
.footer-col-title{
font-size: 24px;
font-weight: 600;
color: var(--white-color);
margin: 0 0 21px;
}
.footer-col ul.link-list li{
line-height: normal;
}
.footer-col ul.link-list li:not(:last-child){
margin: 0 0 10px;
}
.footer-col ul.link-list li a{
color: var(--white-color);
}
.footer-col ul.link-list li a:hover{
text-decoration: underline;
}
.footer-col ul.link-list li a:hover,
.contact-info a.contact:hover{
color: var(--white-color);
opacity: .8;
}
.site-footer .footer-row .footer-col.logo-contact-col .contact-info .contact:hover .icon{
background-color: transparent;
color: var(--white-color);
}
.certifications-logos{
display: flex;
column-gap: 37px;
}
.footer-bottom{
padding: 20px 130px;
border-top: 2px solid #ffffff33;
display: flex;
justify-content: space-between;
gap: 20px;
}
.copyright-text{
margin: 0 0;
color: var(--white-color);
}
.social-links-list{
display: flex;
gap: 18px;
}
.social-links-list li a{
width: 38px;
height: 38px;
background-color: var(--white-color);
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
color: var(--secondary-color);
transition: all 0.3s ease-in-out;
border: 1px solid var(--white-color);
}
.social-links-list li a:hover{
background-color: transparent;
color: var(--white-color);
}

.hero-banner{
padding: 60px 0;
background-color: var(--primary-color);
}
.hero-banner .row{
align-items: center;
}
.hero-banner .column-6{
padding: 0 20px;
}
.detail-banner.hero-banner{
padding: 68px 0;
}
.hero-banner__inner{
max-width: 872px;
width: 100%;
margin-right: 113px;
}
.hero-banner__inner .hero-banner__title{
margin: 0 0 13px;
font-weight: 600;
}
.hero-banner__inner .hero-banner__title,
.hero-banner__description{
color: var(--white-color);
}
.detail-banner .hero-banner__inner .hero-banner__title{
margin: 0 0;
}

/* Solutions (cpt_project): keep it simple + full width */
.solution-banner .hero-banner__inner{
  max-width: none;
  margin-right: 0;
}
.solution-banner .hero-banner__title{
  font-size: clamp(26px, 2.2vw, 42px);
  line-height: 1.12;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.solution-banner.hero-banner{
  padding: 56px 0;
}
.hero-banner__description{
font-size: 22px;
margin: 0 0 0;
}
.applications-section{
padding: 50px 0;
background-color: var(--body-bg-color);
}
.applications-section__inner{
position: relative;
}
.applications-grid{
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 91px 17px;
margin: 80px 0 0;
}
.app-card{
position: relative;
background-color: var(--white-color);
border-radius: 16px;
box-shadow: 0px 2.02px 5.04px 0px #8B8B8B40;
padding: 107px 14px 26px;
text-align: center;
}
.app-card__media{
position: absolute;
left: 50%;
top: 0;
transform: translate(-50%, -50%);
width: 154px;
height: 154px;
border-radius: 50%;
overflow: hidden;
}
.app-card__img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.app-card__body{
display: flex;
flex-direction: column;
align-items: center;
height: 100%;
}
.app-card__title{
margin: 0 0 15px;
min-height: 40px;
}
.app-card__text{
margin: 0 0 18px;
font-size: 14px;
line-height: 1.43;
color: var(--black-color);
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;  
overflow: hidden;
}
.app-card__body .section-cta{
  margin: auto 0 0 0;
}
.view-all-btn{
text-align: center;
}
.application-details-section__inner{
margin: 0 -10px;
}
.application-details-section__inner .column-6{
width: 50%;
max-width: 100%;
padding: 0 10px;
}
.application-details-section__title{
font-size: 30px;
font-weight: 500;
line-height: 40px;
}
.application-details-section__content p{
margin: 15px 0 0;
}
.applications-slider-section{
background-color: var(--primary-color);
padding: 50px 0 65px;
position: relative;
}
.slider-section__header{
  margin:0 0 50px;
}
.applications-slider-section .section-header{
  margin-bottom: 70px;
}
.applications-slider.slick-slider{
margin: 0 -8px;
}
.applications-slider .slick-slide{
padding: 0 8px;
min-height: 405px;
display: flex !important;
}
.applications-slider__slide{
height: 100%;
}
.applications-slider__slide .app-card{
margin: 77px 0 0 0;
}

.slider-section .applications-slider.slick-slider .slick-arrow{
  z-index: 2;
  top: -93px;
}
.applications-slider .slick-prev:before,
.applications-slider .slick-next:before,
.industries-slider .slick-prev:before,
.industries-slider .slick-next:before{
color: var(--white-color);
opacity: 0.9;
}
.industries-slider-wrap {
  position: relative;
}
.connect-section{
position: relative;
padding: 60px 0;
overflow: hidden;
}
.connect-section__bg{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.connect-section__bg img{
width: 100%;
height: 100%;
object-fit: cover;
}
.connect-section__inner{
display: flex;
justify-content: flex-end;
margin: 0 165px 0 0;
}
.connect-card{
background: var(--body-bg-color);
border-radius: 16px;
padding: 40px 28px;
max-width: 570px;
width: 100%;
z-index: 1;
}
.connect-card__title{
font-size: 44px;
color: var(--secondary-color);
line-height: 66px;
margin: 0 0 25px;
}
.connect-card__row{
display: flex;
gap: 15px;
margin: 0 0 27px;
}
.connect-card__row:last-child{
margin-bottom: 0;
}
.connect-card__icon{
font-size: 19px;
width: 35px;
height: 35px;
border: 2px solid var(--black-color);
display: flex;
align-items: center;
justify-content: center;
border-radius: 100px;
}

.connect-card__link{
color: var(--black-color);
text-decoration: none;
font-size: 20px;
max-width: calc(100% - 50px);
line-height: 1.6;
}
.connect-card__link:hover{
text-decoration: underline;
color: var(--secondary-color);
}
.connect-card__text{
margin: 0 0 35px;
line-height: 23px;
}
.faq-section{
	display:none;
}
.faq-accordion-main .thfaqf-faq-item{
border: 2px solid #BEBEBE;
border-radius: 16px !important;
overflow: hidden;
margin: 0 0 24px;
}

.faq-accordion-main{
  margin: 40px 0 0;
}
.faq-section  .thfaqf-faq-list{
  margin-bottom: 0;
}
.faq-accordion-main .thfaqf-faq-item:last-child{
  margin:0 0 0;
}
.faq-accordion-main .thfaqf-faq-list-title{
  display: none;
}
.faq-accordion-main .thfaqf-faq-list-title{
  display: none;
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item{
  padding: 22px 30px;
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item .thfaqf-faq-item-title{
	background-color:transparent !important;
  padding: 0 0;
  
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item .thfaqf-faq-item-title h4{
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item.thfaqf-active{
	background-color:var(--secondary-color);
  border-color: var(--secondary-color);
}

.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item .thfaqf-faq-item-content{
  color: var(--white-color);
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item.thfaqf-active .thfaqf-faq-item-content{
  display: block;
  box-shadow: none !important;
  margin: 20px 0 0;
  padding: 0 0;
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item .thfaqf-faq-item-content p{
  margin-left: 0px;
  font-size: 16px;
  margin-bottom: 0px;
  line-height: 1.6;
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item.thfaqf-active .thfaqf-faq-item-title .thfaq-arrow{
  color: var(--white-color);
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item .thfaqf-faq-item-title .thfaq-arrow::after{
  content: "\e905";
  font-family: icomoon;
  transform: rotate(90deg);
}
.faq-accordion-main .thfaqf-faq-list .faq-item-wrapper .thfaqf-faq-item.thfaqf-active .thfaqf-faq-item-title .thfaq-arrow::after{
  transform: rotate(-90deg);
}

.products-section{
background: var(--body-bg-color);
}
.products-grid{
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 28px 24px;
}
.product-card{
background: var(--white-color);
border-radius: 12px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
overflow: hidden;
display: flex;
flex-direction: column;
transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.product-card:hover{
box-shadow: 0px 4px 4px 0px #BABABA40;
transform: translateY(-2px);
}
.product-card__media{
margin: 0;
aspect-ratio: 3 / 1.65;
overflow: hidden;
flex-shrink: 0;
}
.product-card__img{
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.product-card__body{
padding: 15px 10px 20px;
display: flex;
flex-direction: column;
flex-grow: 1;
align-items: flex-start;
}
.product-card__title{
margin: 0 0 17px;
font-weight: 500;
}
.product-card__excerpt{
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
font-size: 14px;
line-height: 1.7;
margin: 0 0 18px;
}
.product-related-card--hidden {
  display: none;
}
.product-card__body .btn {
  margin:auto 0 0;
}
.detail-layout__inner{
display: flex;
gap: 20px;
}
.detail-layout__inner.bottom-border-shadow .detail-layout__content{
  border-bottom: 4px solid #014076;
  box-shadow: 0px 2.02px 5.04px 0px #8B8B8B40;
  padding: 20px;
  border-radius: 10px;
}
figure.detail-layout__media{
  max-width: 50%;
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  padding-bottom: 20%;
}
.detail-layout__img{
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
}
.solutions-section .products-grid{
  grid-template-columns: repeat(4, 1fr);
}

.detail-layout__content{
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 50%;
  flex: 1;
}
.detail-layout__kicker{
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
opacity: 0.85;
margin: 0;
}


/* Equipment Type Details: sidebar contact card (premium + neat) */
/* Equipment Type Details: sidebar contact card (clean, light, premium) */
.detail-contact-card{
position: relative;
border-radius: 18px;
overflow: hidden;
background: #ffffff;
border: 1px solid rgba(1, 64, 118, 0.14);
box-shadow: 0 18px 45px rgba(0, 0, 0, 0.10);
transform: translateZ(0);
padding: 26px 22px;
text-align: center;
}

/* remove header strip for CTA look */
.detail-contact-card::before{ content: none; }

/* removed decorative corner accent */

/* reset inherited "white everywhere" styles from earlier iterations */
.detail-contact-card,
.detail-contact-card *{
color: var(--black-color);
}

.detail-contact-card__title{
margin: 0;
padding: 0;
font-size: 22px;
font-weight: 800;
letter-spacing: 0.01em;
text-transform: uppercase;
line-height: 1.2;
color: var(--secondary-color);
}

.detail-contact-card__text{
margin: 0;
padding: 12px 0 0;
font-size: 15px;
line-height: 1.7;
color: rgba(0, 0, 0, 0.75);
}

.detail-contact-card__body{
padding: 0;
}

.detail-contact-card__footer{
padding: 18px 0 0;
background: transparent;
border-top: 0;
}

/* CTA section background distinct from hero */
.equipment-contact-cta{
border-radius: 18px;
}
.equipment-contact-cta .detail-contact-card{
border-left: 6px solid rgba(1, 64, 118, 0.85);
text-align: left;
padding: 28px 28px;
}
.equipment-contact-cta .detail-contact-card__footer{
text-align: left;
}

/* Equipment Type Details: full-width CTA placement */
.equipment-contact-cta__inner{
max-width: none;
margin: 0;
}
.detail-layout__subheading{
margin: 0;
font-size: 18px;
font-weight: 600;
line-height: 1.25;
}
.equipment-detail-section .detail-layout__inner{
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.equipment-detail-section .detail-layout__inner .column-6{
  flex: 1 1 calc(50% - 10px);
}
.equipment-detail-section .detail-layout__inner .column-6:only-child{
  flex: 1 1 100%;
}
.equipment-detail-section .detail-layout__content{
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 100%;
}

.detail-layout__intro{
margin: 0;
}
.detail-layout__intro p:last-child{
margin-bottom: 0;
}

/* Equipment Type Details: flexible extra sections */

.equipment-extra-sections{
display: flex;
flex-direction: column;
gap: 26px;
margin-top: 14px;
}
.equipment-section__title{
margin: 0 0 10px;
color: var(--secondary-color);
}
.equipment-icon-rows{
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px 18px;
}
.equipment-icon-row{
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 10px;
padding: 18px 16px;
background: var(--white-color);
border: 1px solid rgba(1, 64, 118, 0.14);
border-radius: 14px;
box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
height: 100%;
}
.equipment-icon-row__icon{
width: 54px;
height: 54px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}
.equipment-icon-row__icon img{
width: 54px;
height: 54px;
object-fit: contain;
display: block;
}
.equipment-icon-row__icon--placeholder{
border: 2px solid rgba(0,0,0,0.12);
border-radius: 12px;
}
.equipment-icon-row__title{
margin: 0 0 6px;
font-size: 18px;
font-weight: 700;
letter-spacing: 0.02em;
text-transform: uppercase;
color: var(--black-color);
}
.equipment-icon-row__text{
margin: 0;
color: var(--black-color);
line-height: 1.6;
}
.equipment-bullet-list{
margin: 0;
padding-left: 18px;
display: block;
column-count: 4;
-webkit-column-count: 4;
column-gap: 44px;
-webkit-column-gap: 44px;
column-fill: balance;
list-style-position: outside;
}
.equipment-bullet-list li{
break-inside: avoid;
-webkit-column-break-inside: avoid;
margin-bottom: 4px;
list-style-position: outside;
}
.equipment-bullet-list li{
font-size: 16px;
line-height: 1.7;
}
.detail-layout__title{
font-size: 30px;
font-weight: 500;
color: var(--black-color);
line-height: 1.563;
margin: 0 0 0px;
}
.detail-layout p{
color: var(--black-color);
margin: 0 0;
}

/* Detail layout lists */
.detail-layout ul{
  list-style: disc;
  display: block;
  margin: 0;
  padding-left: 18px;
}

.detail-layout :is(ul, ol):not(.detail-layout__lists):not(.equipment-bullet-list){
  column-count: 2;
  -webkit-column-count: 2;
  column-gap: 44px;
  -webkit-column-gap: 44px;
}

/* Long-text pages: keep lists single-column */
body:is(.postid-2810, .postid-2811) .detail-layout :is(ul, ol):not(.detail-layout__lists):not(.equipment-bullet-list){
  column-count: 1;
  -webkit-column-count: 1;
}

.detail-layout ul li{
list-style: disc;
font-size: 18px;
font-weight: 400;
color: var(--black-color);
list-style-position: outside;
white-space: normal;
overflow: visible;
text-overflow: clip;
min-width: 0;
/* Prevent ugly mid-word breaks in columns */
overflow-wrap: break-word;
word-break: normal;
hyphens: auto;
line-height: 1.55;
}
.detail-layout ul li + .detail-layout ul li{
margin-top: 4px;
}
.detail-layout p a{
color: var(--primary-color);
}
.detail-layout p a:hover{
  text-decoration: underline;
}
.detail-layout__note{
  margin: 30px 0 0 0px;
}
.detail-layout__note p:not(:last-child){
margin-bottom: 18px;
}
.button-group{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.button-group span.icon-phone-icon.arrow-icon::before,
.button-group span.icon-phone-icon.arrow-icon::after{
  content: "\e908";

}
/* Thank you page */
.thank-you{
  position: relative;
}
.thank-you__panel{
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  background: #fff;
  border-radius: 16px;
  border: 1px solid rgba(1, 64, 118, 0.12);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  padding: 28px 28px;
}
.thank-you__panel::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(244, 250, 255, 0.85), rgba(255, 255, 255, 1));
  opacity: 1;
  pointer-events: none;
}
.thank-you__inner{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 12px;
}
.thank-you__lead{
  margin: 0;
  text-align: center;
  font-size: 18px;
  line-height: 1.7;
  font-weight: 700;
  color: var(--text-color);
}

/* Thank you hero: keep title on one line (desktop) */
.thank-you-hero .hero-banner__inner{
  max-width: none;
}
.thank-you-hero .hero-banner__title{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.industries-grid{
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 20px;
}
.industry-card{
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: 0px 4px 6px 0px #A2A2A240;
transition: transform 0.25s ease, box-shadow 0.25s ease;
min-height: 250px;
display: flex;
}
.industry-card__link{
display: block;
color: inherit;
}
.industry-card__media{
height: 100%;
width: 100%;
}
.industry-card__img{
height: 100%;
object-fit: cover;
width: 100%;
}
.industry-card::after{
content: "";
position: absolute;
inset: 0;
background:  linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 50%);
transition: opacity 0.25s ease;
}
.industry-card__footer{
position: absolute;
inset-inline: 18px;
bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
color: var(--white-color);
z-index: 11;
}
.industry-card__title{
font-weight: 500;
color: var(--white-color);
max-width: calc(100% - 50px);
}
.industry-card__icon{
width: 32px;
height: 32px;
border-radius: 999px;
background: var(--white-color);
color: var(--secondary-color);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 14px;
}
.industry-card__icon .icon-arrow-left-icon:before{
transform: rotate(180deg);
}
.industry-card:hover{
transform: translateY(-3px);
box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
}
.industry-card:hover::after{
opacity: 0.6;
}
.products-section.solutions-section .products-grid{
gap: 30px 19px;
margin: 0 0 60px;
}
.products-section.solutions-section .products-grid .product-card .product-card__body .product-card__title{
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
overflow: hidden;
}
.section-heading.underlined{
font-weight: 500;
text-align: center;
margin: 0 auto 30px;
padding: 0 0 30px;
position: relative;
max-width: max-content;
color: var(--secondary-color);
}
.section-heading.underlined::before, 
.section-heading.underlined::after{
content: '';
  width: 200px;
  height: 2px;
  background-color: var(--secondary-color);
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
}
.section-heading.underlined::after{
bottom: 2px;
width: 100px;
}
.about-industry-section .content-block__inner{
grid-template-columns: 1.027fr 1.11fr;
gap: 49px;
}
.about-industry-section .content-block__inner .content-block__text{
padding: 0px 0px 0px 0px;
}
.about-industry-section .content-block__inner .content-block__text .section-body{
margin: 0 0 0;
}
.industries-slider-section{
background-color: var(--primary-color);
padding: 65px 0 65px;
position: relative;
}
.industries-slider.slick-slider{
margin: 0 -10px;
}
.industries-slider .slick-slide{
padding: 0 10px;
display: flex !important;
height: 250px;
overflow: hidden;
}
.industries-slider  .industry-card,_
.industries-slider  .industry-card:hover{
  box-shadow: none;
}
.location-section__inner{
  position: relative;
  z-index: 1;
  padding-bottom: 40.3%;
}
.location-section__inner iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.location-section__inner iframe {
  pointer-events: none; /* initially disabled */
  width: 100%;
}

.map-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.mts-section.section-mb-3{
  margin-top: 30px;
}
.mts-section__inner{
  display: grid;
  grid-template-columns: minmax(0, 0.505fr) minmax(0, 0.496fr);
  gap: 36px;
}

.mts-section__media{
  margin: 0;
  border-radius: 16px;
  overflow: hidden;
}
.mts-section__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mts-section__content{
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.mts-section__title{
  color: var(--text-color);
  margin: 0 0 14px;
}
.mts-section__desc{
  color: var(--text-color);
  margin: 0 0 10px;
}
.mts-section__buttons{
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  margin: 0 0 10px;
}
.mts-section__cards{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 24px;
  margin-top: 8px;
}
.mts-card{
  background: var(--white-color);
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
  padding: 20px 13px 14px;
}
.mts-card__title{
  margin: 0 0 20px;
}
.mts-card__list{
  padding-left: 20px;
}
.mts-card__list,
.mts-card__list li{
  list-style: disc;
}
.mts-card__list li{
  font-size: 18px;
  color: var(--text-color);
  line-height: 30px;
}

.psr-section{
  background: var(--parts-service-repair-bg);
  position: relative;
  overflow: hidden;
}
.global-earth-icon{
  position: absolute;
  top: 176px;
  left: 0;
  max-width: 621px;
  height: 637px;
  opacity: 0.1;
}
.global-earth-icon__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.psr-section__inner{
  display: grid;
  grid-template-columns: minmax(0, 1.157fr) minmax(0, 1.19fr);
  gap: 98px;
  align-items: start;
  position: relative;
  z-index: 1;
}
.psr-section__aside{
  margin: 93px 0 0;
  min-width: 0;
}
.psr-section__media{
  margin: 0;
  display: flex;
  height: 330px;
  border-radius: 16px;
  overflow: hidden;
}
.page-template-in-house-measurement-and-testing-services .psr-section__media{
  height: auto;
}
.psr-section__img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.psr-section__icon{
  width: 100%;
  min-height: 320px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 220px;
  line-height: 1;
  color: var(--secondary-color);
}

/* Parts / Service / Repair — right column accordion */
.psr-accordion{
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.psr-accordion__icon{
  font-size: 40px;
  filter:invert(18%) sepia(94%) saturate(1800%) hue-rotate(198deg) brightness(82%) contrast(98%);
}

.psr-accordion__trigger{
  width: 100%;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 30px;
  margin: 0;
  border: none;
  border-radius: 0;
  cursor: pointer;
  text-align: left;
  color: var(--primary-color);
  background-color: var(--white-color);
  transition: background-color 0.15s ease, color 0.15s ease;
}

.psr-accordion__item.is-open .psr-accordion__trigger{
  background-color: var(--primary-color);
  color: var(--white-color);
}
.psr-accordion__item.is-open [aria-expanded="true"] .psr-accordion__label{
  color: var(--white-color);
}
.psr-accordion__item.is-open [aria-expanded="true"] .psr-accordion__icon{
  filter: invert(100%);
}

.psr-accordion__toggle{
  flex: 0 0 22px;
  width: 22px;
  text-align: center;
  font-size: 22px;
  font-weight: 500;
  line-height: 1;
}
.psr-accordion__toggle::before{
  content: "+";
}
.psr-accordion__item.is-open .psr-accordion__toggle::before{
  content: "\2212";
}
.psr-accordion__label{
  color: var(--secondary-color);
  text-transform: capitalize;
}
.psr-accordion__panel{
  background: transparent;
}
.psr-accordion__panel[hidden]{
  display: none;
}
.psr-accordion__panel.psr-accordion__panel--anim{
  overflow: hidden;
  transition: height 0.6s ease;
}

.psr-accordion__text{
  color: var(--text-color);
  margin: 0;
  padding: 16px 0 7px;
}

.psr-section__title{
  margin: 0 0 27px;
  padding: 0 0 27px;
  border-bottom: 1px solid var(--black-color);
}
.psr-section__title,
.psr-section__intro,
.psr-section__subtitle{
  color: var(--text-color);
}
.psr-section__intro{
  margin: 0 0 20px;
}
.psr-section__subtitle{
  margin: 0 0 30px;
}

/* Parts / Service / Repair — 6-card grid (service details) — aligned with BTI key-features / cards */

.parts-service-feature__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.psr-feature-card{
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  background: var(--white-color);
  border: 1px solid rgba(0, 75, 132, 0.08);
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  padding: 28px 52px 28px 26px;
  text-align: left;
  transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}
.psr-feature-card:hover{
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  transform: translateY(-3px);
  border-color: rgba(0, 75, 132, 0.18);
}
.psr-feature-card__plus{
  position: absolute;
  top: 20px;
  right: 18px;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  color: var(--primary-color);
  opacity: 0.35;
}
.psr-feature-card__icon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 88px;
  height: 88px;
  margin: 0 0 20px;
  border-radius: 50%;
  border: 2px dashed var(--secondary-color);
  font-size: 40px;
  line-height: 1;
  color: var(--primary-color);
  flex-shrink: 0;
  transition: border-color 0.25s ease, color 0.25s ease, background-color 0.25s ease;
}
.psr-feature-card:hover .psr-feature-card__icon{
  background-color: rgba(203, 232, 255, 0.45);
  border-color: var(--primary-color);
  color: var(--secondary-color);
}
.psr-feature-card__title{
  margin: 0 0 14px;
  color: var(--secondary-color);
}
.psr-feature-card__accent{
  display: block;
  width: 48px;
  height: 4px;
  background: var(--primary-color);
  margin-bottom: 16px;
  border-radius: 2px;
}
.psr-feature-card__desc{
  margin: 0;
  color: var(--text-color);
}
.featured-clients-section__title{
  margin: 0 0 40px;
}
.featured-clients-section__grid{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 49px;
  align-items: stretch;
}
.featured-client-card{
  background: #fff;
  border-radius: 8px;
  box-shadow: 0px 6px 4px 0px #E0E0E059;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 148px;
}
.featured-client-card:hover img.featured-client-card__logo{
  transform: scale(1.1);
}
.featured-client-card__logo{
  max-width: 100%;
  max-height: 64px;
  width: auto;
  height: auto;
  object-fit: contain;
  transition: transform 0.3s ease;
}

/* Services page — Dependable / Responsive trust band */

.services-trust-section__grid{
  display: grid;
  grid-template-columns: minmax(0, 1.87fr) minmax(0, 1.238fr);
  gap: 40px;
}
.services-trust-section .services-trust-section__grid:nth-child(even){
  grid-template-columns: minmax(0, 1.238fr) minmax(0, 1.87fr);
}
.services-trust-section .services-trust-section__grid:nth-child(even) .services-trust-section__copy{
  order: -1;
}
.services-trust-section .services-trust-section__grid:nth-child(even) .services-trust-section__cards{
  order: 1;
}
.services-trust-section .services-trust-section__grid:not(:last-child){
  margin-bottom: 30px;
}
.services-trust-section__cards{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  min-width: 0;
  align-items: stretch;
}
.services-trust-card__media{
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  height: 100%;
  min-height: 510px;
}
.services-trust-card__media::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  z-index: 1;
}
.services-trust-card__img{
  display: block;
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  position: relative;
  z-index: 0;
}
.services-trust-card__caption{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 20px 22px 22px;
  min-height: 152px;
  z-index: 2;
}
.services-trust-card__title{
  margin: 0 0 8px;
  color: var(--white-color);
  text-transform: none;
}
.services-trust-card__desc{
  margin: 0;
  font-size: 16px;
  line-height: 26px;
  color: var(--white-color);
}
.services-trust-section__copy{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-width: 0;
  gap: 20px;
}
.services-trust-section__heading{
  color: var(--black-color);
  text-transform: none;
}
.services-trust-section__copy p{
  margin: 0;
  font-size: 20px;
  line-height: 1.65;
  color: var(--text-color);
}

.services-trust-section--about-bti{
  position: relative;
  overflow: hidden;
  min-height: 1329px;
  display: flex;
  align-items: flex-end;
  padding: 55px 0;
}
.services-trust-section__media{
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.services-trust-section__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.services-trust-section--about-bti .services-trust-section__grid{
  align-items: center;
}
.services-trust-section--about-bti .services-trust-section__grid{
  position: relative;
  z-index: 1;
}
.services-trust-section--about-bti .services-trust-section__grid .services-trust-section__copy .services-trust-section__heading,
.services-trust-section--about-bti .services-trust-section__grid .services-trust-section__copy p{
  color: var(--white-color);
}
.services-trust-section--about-bti .services-trust-section--about-bti__cta{
  margin-top: 4px;
}
.services-trust-card--stats{
  display: flex;
  gap: 40px;
}
.services-trust-stat{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.services-trust-stat__icon{
  margin: 0 0 15px;
  font-size: 62px;
  color: var(--white-color);
}

.services-trust-stat__value{
  font-size: 30px;
  font-weight: 700;
  line-height: 38px;
  color: var(--white-color);
}
.services-trust-stat__label{
  font-size: 18px;
  line-height: 1.4;
  color: var(--white-color);
}

.service-solution-section:not(:last-child){
  margin-bottom: 30px;
}
.service-solution-section__inner{
  display: flex;
  gap: 20px;
}
.service-solution-section__content{
  padding: 0 78px 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 50%;
}
.service-solution-section:nth-child(even) .service-solution-section__inner .service-solution-section__content{
  order: 1;
  padding: 0 0px 0 98px;
}
.service-solution-section__title{
  margin: 0;
  font-size: 30px;
  font-weight: 600;
  color: var(--black-color);
  text-transform: none;
}
.service-solution-section__title:after{
  content: "";
  display: block;
  width: 98px;
  height: 4px;
  background: var(--primary-color);
  margin: 20px 0;
}
.service-solution-section__desc p{
  margin: 0 0 18px;
  color: var(--text-color);
}
.service-solution-section__feature{
  list-style: none;
  margin: 28px 0;
  padding: 0;
  width: 100%;
  max-width: 634px;
}
.service-solution-section__feature-item{
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.service-solution-section__feature-item + .service-solution-section__feature-item{
  margin-top: 37px;
}
.service-solution-section__feature-icon{
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--primary-color);
  color: var(--white-color);
  display: flex;
  align-items: center;
  justify-content: center;
}
.service-solution-section__feature-icon img{
  width: 28px;
  height: 28px;
  object-fit: contain;
}
.service-solution-section__feature-icon-img--on-primary{
  filter: brightness(0) invert(1);
}
.service-solution-section__feature-body{
  flex: 1;
  min-width: 0;
}
.service-solution-section__feature-title{
  margin: 0 0 10px;
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--black-color);
  line-height: 1.35;
}
.service-solution-section__feature-body p,
.service-solution-section__feature-desc{
  color: var(--text-color);
  margin: 0;
  font-size: 0.95rem;
  line-height: 2.34;
}
.service-solution-section__btn{
  margin-top: 8px;
}
.service-solution-section__media{
  line-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-width: 50%;
  border-radius: 16px;
  gap: 32px;
}
.service-solution-section__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ihmts-info-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  max-width: 1286px;
  margin: 0 auto;
}
.ihmts-info-card{
  background: var(--white-color);
  border-radius: 10px;
  box-shadow: 0px 4px 4px 0px #E0E0E040;
  padding: 20px 40px;
  text-align: center;
  min-height: 221px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.ihmts-info-card__icon{
  margin: 0 0 20px;
}
.ihmts-info-card__title{
  font-size: 24px;
  font-weight: 500;
  color: var(--text-color);
}
.ihmts-gallery-slider-wrap{
  margin: 0 -10px;
}
.ihmts-gallery-slider .slick-slide{
  padding: 0 10px;
}
.ihmts-gallery__figure{
  margin: 0;
  aspect-ratio: 1;
}
.ihmts-gallery__img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ihmts-gallery-arrows{
  margin-top: 50px;
  width: 100%;
}
.ihmts-gallery-arrows button.slick-arrow{
  position: static;
  transform: none;;
  margin: 0;
}
.bti-form-section{
  padding: 60px 0 0;
}
.bti-form-section .container{
  max-width: 1200px;
}
.bti-form form p{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -30px;
}
.bti-form form p > label{
  padding: 0 30px;
  width: 100%;
  margin: 0 0 20px;
}
/* Reduce the gap specifically after the main checkbox block (before Message). */
.bti-form form p label:not(.agree-label):has(.wpcf7-form-control.wpcf7-checkbox){
  margin-bottom: 0;
}
input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type=reset], input[type=tel], input[type=date], select, textarea{
  height: 60px;
  border-color: #979797;
}
.wpcf7 .wpcf7-form-control-wrap[data-name=your-address] textarea {
  min-height: 120px;
}
textarea{
  min-height: 200px;
}
.bti-form form p label span.label{
  margin: 0 0 5px;
}
.bti-form form p label span{
  font-size: 20px;
  font-weight: 400;
  color: var(--black-color);
  display: block;
  line-height: normal;
}
label span.hs-form-required{
  display: inline !important;
  color: #d0021b !important;
}
.bti-form form p label.half-width{
  max-width: 50%;
}
.bti-form form p label.full-width{
  max-width: 100%;
}
.bti-form form p label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-radio{
  display: flex;
  gap: 30px;
}
.bti-form form p label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-radio label{
  display: flex;
  padding: 0 0;
  align-items: center;
}
.bti-form form p label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.bti-form form p label .wpcf7-list-item{
  margin: 0 0;
}
.bti-form form p label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item{
  width: 100%;
}
.bti-form form p label > .wpcf7-list-item > label{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
/* Override global label span{display:block;} for CF7 option text */
.bti-form form p label .wpcf7-list-item-label{
  display: inline;
  margin: 0;
}
.bti-form form p label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-radio .wpcf7 input[type=radio]{
  margin: 0px 10px 0 0;
}

/* Privacy text container (recommended vs <p class="form-privacy">) */
.bti-form .form-privacy-box{
  width: 100%;
  padding: 0 30px;
  margin: 0 0 18px;
  box-sizing: border-box;
}
.bti-form .form-privacy-box p{
  display: block; /* override .bti-form form p { display:flex } */
  margin: 0 0 12px;
  font-size: 20px;
  font-weight: 400;
  line-height: 32px;
  color: var(--black-color);
}
.bti-form .form-privacy-box .agree-label{
  padding: 0;
  margin: 0 0 12px;
}
.bti-form .form-privacy-box .agree-label .wpcf7-list-item label{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.bti-form .form-privacy-box .agree-label .wpcf7-list-item-label{
  display: inline;
  margin: 0;
  font-size: 20px;
  font-weight: 400;
  line-height: 32px;
}
.bti-form .form-privacy-box .agree-label input[type="checkbox"]{
  margin: 0;
}

/* Consent checkbox should not use the multi-column grid layout */
.bti-form .agree-label .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox{
  display: block;
  grid-template-columns: none;
  gap: 0;
}
.bti-form .form-privacy-box a{
  color: var(--secondary-color);
  text-decoration: underline;
}
.bti-form .form-privacy-box a:hover{
  color: var(--primary-color);
}
input[type="submit"]{
  min-width: 140px;
  margin: 0 0 28px 30px;
}
.agree-label .wpcf7-form-control-wrap .wpcf7-checkbox .wpcf7-list-item label{
  display: flex;
  align-items: flex-start;
  padding: 0 0;
}
.agree-label .wpcf7-form-control-wrap .wpcf7-checkbox .wpcf7-list-item label input[type=checkbox]{
  margin: 4px 7px 0 0px;
}
.wpcf7-response-output{
  display: none;
}
.wpcf7-form label.error {
  font-size: 14px !important;
}
.inquiry-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  position: relative;
  z-index: 10;
}
.inquiry-card{
  background: var(--white-color);
  border-radius: 16px;
  padding: 40px 30px;
  text-align: center;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.inquiry-card__title{
  margin: 0 0 20px;
}
.inquiry-card p{
  margin: 0 0 20px;
}
.offices-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin: 0 -30px;
}
.offices-section .offices-grid > .office-card{
  padding:20px 30px;
  background-color: #51738d24;
}

.offices-section .offices-grid > .office-card:nth-child(3n+2),
.offices-section .offices-grid > .office-card:nth-child(3n+3){
  border-left: 1px solid var(--primary-color);
  padding-left: 30px;
}
.offices-section .offices-grid > .office-card:nth-child(n+4){
  border-top: 1px solid var(--primary-color);
  padding-top: 30px;
}
.office-card__header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 15px;
}
.office-card__title{
  margin: 0;
}
.hq-badge{
  display: inline-flex;
  width: fit-content;
  background: var(--primary-color);
  color: var(--white-color);
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 20px;
  letter-spacing: 1px;
  white-space: nowrap;
}
.offices-section .offices-grid .office-card:not(:first-child) .office-card__header{
  min-height: 42px;
}
.address{
  display: flex;
  align-items: flex-start;
  margin-bottom: 25px;
  font-style: normal;
  gap: 15px;
}
.address .icon{
  font-size: 26px;
  color: var(--primary-color);
}
.address-content p{
  margin: 0 0px;
}
.map-link{
  color: var(--black-color);
  transition: all 0.3s ease;
  font-size: 16px;
}
.map-link:hover{
  color: var(--primary-color);
}
.contact-list{
  border-top: 0px solid var(--primary-color);
  padding-top: 20px;
}
.contact-list li{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  line-height: normal;
  font-size: 16px;
}
.contact-list .label{
  font-weight: 600;
  color: var(--secondary-color);
}
.contact-list a.value{
  color: var(--primary-color);
  font-weight: 500;
}
.intro-box__inner{
  box-shadow: 0px 2.02px 5.04px 0px #8B8B8B40;
  border-radius: 16px;
  background-color: var(--white-color);
  border-top: 6px solid var(--primary-color);
  padding: 40px 30px;
}

.intro-box__inner p a{
  color: var(--secondary-color);
}
.intro-box__inner p a:hover{
  text-decoration: underline;
}
.benefits-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}
.benefit-card{
  background: var(--white-color);
  border: 1px solid transparent;
  border-radius: 12px;
  padding: 30px 20px;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
  transition: all 0.3s ease;
}
.benefit-card:hover{
  border-color: var(--secondary-color);
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.benefit-icon{
  width: 60px;
  height: 60px;
  background: var(--tertiary-color);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  margin: 0 auto 15px auto;
  transition: all 0.3s ease;
}
.benefit-card:hover .benefit-icon{
  background: var(--primary-color);
  color: var(--white-color);
}
.jobs-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}
.job-card{
  background: var(--white-color);
  border: 1px solid var(--tertiary-color);
  border-radius: 12px;
  padding: 25px 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
}
.job-card::before,
.feature-item::before{
  content: '';
  position: absolute;
  left: -1px;
  top: 0;
  height: 100%;
  width: 5px;
  background-color: var(--primary-color);
  transform: scaleY(0);
  transition: transform 0.3s ease;
  transform-origin: bottom;
  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;
}
.job-info{
  display: flex;
  align-items: center;
  gap: 20px;
}
.job-icon-wrapper{
  width: 50px;
  height: 50px;
  background: var(--tertiary-color);
  color: var(--primary-color);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.3rem;
  transition: all 0.3s ease;
  flex-shrink: 0;
}
.job-action{
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--primary-color);
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--primary-color);
  font-size: 1.1rem;
  transition: all 0.3s ease;
  flex-shrink: 0;
}
.job-title{
  margin-bottom: 4px;
  transition: color 0.3s ease;
  font-size: 18px;
}
.job-meta{
  font-size: 16px;
  color: var(--primary-color);
}
.job-card:hover,
.feature-item:hover{
  border-color: transparent;
  box-shadow: 0 15px 35px rgba(0, 82, 155, 0.08);
  transform: translateY(-3px);
}
.job-card:hover::before,
.feature-item:hover::before{
  transform: scaleY(1);
}
.job-card:hover .job-title,
.feature-item:hover .feature-item__text{
  color: var(--secondary-color);
}
.job-card:hover .job-action,
.feature-item:hover .feature-item__icon{
  color: var(--white-color);
  background-color: var(--primary-color);
}

/* Resources page */
.resources-page {
  background-color: #f4f7f9;
}
.resources-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: 18px;
}
.resources-grid .resource-card:nth-child(1) {
  grid-row: span 2;
}
.resources-grid ul {
  list-style: disc;
}
.resources-grid ul li {
  margin-bottom: 10px;
  list-style: disc;
  font-size: 18px;
  font-weight: 400;
  color: var(--black-color);
}
.resource-card {
  background-color: var(--white-color);
  border-radius: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  padding: 32px 36px 36px;
}
.resource-card--full {
  grid-column: 1 / -1;
}
.resource-card__header {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 20px;
}
.resource-card__icon {
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background-color: var(--primary-color);
  color: var(--white-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.resource-card__icon img {  
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.resource-card__title-wrap {
  flex: 1;
  min-width: 0;
}

.resource-card__subhead {
  margin: 20px 0;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--secondary-color);
}
.resource-card__list {
  margin: 0;
  padding-left: 1.25em;
  list-style-type: disc;
}
.resource-card__list li {
  margin: 0 0 10px;
  padding-left: 4px;
  line-height: 1.5;
  color: var(--black-color);
}
.resource-card__list li:last-child {
  margin-bottom: 0;
}
.resource-card__list a {
  color: var(--black-color);
  text-decoration: none;
  transition: color 0.2s ease;
}
.resource-card__list a:hover,
.resource-card__list a:focus {
  text-decoration: underline;
}

.challenge-container{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 1057px;
  gap: 15px;
}
.challenge-section .challenge-section__icon{
  font-size: 70px;
  color: var(--black-color);
}
.challenge-section .highlight-text{
  color: var(--secondary-color);
}
.services-spotlight-cards__inner{
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.services-spotlight-cards__grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}
.services-spotlight-card{
  background: var(--services-spotlight-card-bg);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 30px 24px;
  min-height: 0;
}
.services-spotlight-card__media{
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  margin: 0 0 36px;
  height: 278px;
}
.services-spotlight-card__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.services-spotlight-card__body{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 1 auto;
}
.services-spotlight-card__title{
  color: var(--black-color);
  text-transform: none;
  margin: 0 0 14px;
  font-weight: 600;
}
.services-spotlight-card__desc{
  margin: 0 0 20px;
  color: var(--black-color);
  flex-grow: 1;
}
.services-spotlight-cards__grid.services-spotlight-cards__grid--3{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.services-spotlight-cards__grid.services-spotlight-cards__grid--3 .services-spotlight-card__media{
  height: 229px;
}

.services-fast-cta__banner{
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  min-height: 431px;
  display: flex;
  align-items: center;
}
.services-fast-cta__media{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.services-fast-cta__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.services-fast-cta__inner{
  position: relative;
  z-index: 1;
  padding: 38px;
  max-width: 996px;
}
.services-fast-cta__title{
  margin: 0 0 20px;
  color: var(--white-color);
  text-transform: none;
}
.services-fast-cta__text{
  margin: 0 0 20px;
  font-weight: 400;
  color: var(--white-color);
}
.services-fast-cta__text .bold-text{
  font-weight: 600;
  display: block;
}
.services-fast-cta__actions{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 40px;
}
.services-fast-cta__phone{
  margin: 0;
  font-size: 24px;
  line-height: 34px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--white-color);
}
a.services-fast-cta__phone-link{
  color: var(--white-color);
  font-weight: 600;
  font-size: 24px;
  line-height: 34px;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.services-fast-cta__phone-link:hover,
.services-fast-cta__phone-link:focus{
  color: var(--white-color);
}
figure.certification-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.service-detail__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.41fr);
  gap: 20px;
  align-items: flex-start;
  margin: 0 0 37px;
}
.service-detail__inner--no-media {
  grid-template-columns: 1fr;
}
.service-detail__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.service-detail__content {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.service-detail__title {
  font-size: 30px;
  font-weight: 500;
  color: var(--black-color);
  line-height: 1.563;
  margin: 0;
}
.service-detail p {
  color: var(--black-color);
  margin: 0;
}
.service-detail__lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 40px;
  margin: 0;
}
.service-detail ul {
  list-style: disc;
}
.service-detail ul li {
  list-style: disc;
  font-size: 18px;
  font-weight: 400;
  color: var(--black-color);
  list-style-position: inside;
}
.service-detail ul li + .service-detail ul li {
  margin-top: 4px;
}
.service-detail p a {
  color: var(--primary-color);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.service-detail__note {
  margin: 19px 0 0;
}
.service-detail__note p:not(:last-child) {
  margin-bottom: 19px;
}
.service-agreements-section .service-agreements-card .service-agreements-card__body .service-agreements-card__title {
  min-height: auto;
}

/* BTI Sync — Key features (3×2 grid, dashed icon rings) */
.bti-key-features {
  background-color: var(--body-bg-color);
  padding: 56px 0 64px;
}
.bti-key-features__heading {
  max-width: 920px;
  text-align: center;
  margin: 0 auto 48px;
}
.bti-key-features__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px 36px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bti-key-features__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  height: 100%;
  background: var(--white-color);
  border-radius: 10px;
  padding: 26px 22px 28px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.bti-key-features__item:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  transform: translateY(-3px);
}
.bti-key-features__icon-ring {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  border: 2px dashed var(--secondary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 20px;
  flex-shrink: 0;
}

.bti-key-features__title {
  margin: 0 0 12px;
  color: var(--secondary-color);
}
.bti-key-features__text {
  margin: 0;
  color: var(--text-color);
}

body.page-template-career section.section-mb-3 h5.section-label {
  display: none;
}

body.page-template-our-customers .detail-layout p:not(:last-child) {
  margin-bottom: 19px;
}

section.why-choose-section .why-choose-section__inner h5.section-label, section.content-block h5.section-label {
  display: none;
}

.site-footer .footer-row .footer-col.logo-contact-col .contact-info a.contact .number {
  font-size: 17px;
}
#ast-scroll-top{
  bottom: 75px;
  right: 20px;
}