.e-paragraph-base {
  margin-top: 12px; /* was 20px by default — adjust to taste */
}

/* gradient hero overlay */
/* Shared overlay setup */
.hero-overlay.e-con::before,
.hero-overlay > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
  content: '' !important;
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0.92 !important;
}
/* 1441px and wider */
@media (min-width: 1441px) {
  .hero-overlay.e-con::before,
  .hero-overlay > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    content: '' !important;
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: linear-gradient(79deg, rgba(242,242,242,1) 30%, rgba(242,242,242,0) 70%) !important;
    opacity: 0.92 !important;
  }
}

/* Mobile: up to 767px (fades top to bottom) */
@media (max-width: 767px) {
  .hero-overlay.e-con::before,
  .hero-overlay > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-image: linear-gradient(180deg, rgba(242,242,242,1) 50%, rgba(242,242,242,0.7) 100%) !important;
  }
}

/* Tablet: 768px to 1024px */
@media (min-width: 768px) and (max-width: 1024px) {
  .hero-overlay.e-con::before,
  .hero-overlay > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-image: linear-gradient(90deg, rgba(242,242,242,1) 50%, rgba(242,242,242,.5) 85%) !important;
  }
}

/* Laptop: 1025px to 1440px */
@media (min-width: 1025px) and (max-width: 1440px) {
  .hero-overlay.e-con::before,
  .hero-overlay > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-image: linear-gradient(79deg, rgba(242,242,242,1) 38%, rgba(242,242,242,0) 74%) !important;
  }
}

/* Keep the text above the overlay */
.hero-overlay > .e-con-inner,
.hero-overlay > .elementor-element {
  position: relative;
  z-index: 1;
}

/* gradient hero overlay finished */

.rs-addon-services.style5 .services-inner .btn-part a.services-btn{
	color:#fff;
}

@media (min-width: 1367px) and (max-width: 1600px) {
body .rs-full-responsive.header-oil-page .header-right{
	padding-left: 20px;
	padding-right: 20px;
}
	body .rs-full-responsive.header-oil-page .hfe-nav-menu nav > ul > li > .hfe-has-submenu-container > a, body .rs-full-responsive.header-oil-page .hfe-nav-menu nav > ul > li > a{
		padding-left: 18px !important;
	}
	body .rs-full-responsive.header-oil-page .rs-button .rs-btn{
		font-size: 16px;
		padding: 15px 20px;
	}
	
}


.rs-features-list li {
line-height: 22px;
}
/* The grid containing the six cards */
.elementor-element-5b880b3 {
  align-items: stretch !important;
}

/* Each Elementor grid item */
.elementor-element-5b880b3 > .elementor-widget-rs-service-grid {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
}

/* Stretch every plugin wrapper using flex, not percentage heights */
.elementor-element-5b880b3
  > .elementor-widget-rs-service-grid
  > .elementor-widget-container,
.elementor-element-5b880b3
  > .elementor-widget-rs-service-grid
  > .elementor-widget-container
  > .rs-addon-services,
.elementor-element-5b880b3
  > .elementor-widget-rs-service-grid
  > .elementor-widget-container
  > .rs-addon-services
  > .services-inner.box {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  height: auto !important;
}


/* Equal-height "Why TCS" cards */
.elementor-element-5b880b3.e-grid {
    align-items: stretch !important;
}

/* Equal-height "Why TCS" cards — icon version */
.elementor-element-fd84618.e-grid {
    align-items: stretch !important;
}

.elementor-element-fd84618.e-grid > * {
    height: 100% !important;
}

.elementor-element-fd84618 .elementor-widget-container,
.elementor-element-fd84618 .rs-addon-services,
.elementor-element-fd84618 .services-inner.box {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
}

/* Equal-height service cards (Milkcollect page): cards on the same row match the tallest */
.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid,
.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid > .elementor-widget-container,
.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid .rs-addon-services {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid .services-inner {
    flex: 1 1 auto;
}

/* Pin the card images to the bottom so they line up across a row */
.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid .services-inner {
    display: flex;
    flex-direction: column;
}

.elementor-element-7917323 > .e-con > .elementor-widget-rs-service-grid .services-inner .media_wrap {
    margin-top: auto;
}


/* TCS updates #1 (Nov 2026) */
/* Section labels (e.g. WHAT WE DO) at 18px site-wide */
.elementor-widget-rs-heading .prelements-heading .sub-text { font-size: 18px !important; line-height: 1.4 !important; }

/* Footer: current page link white instead of green */
.elementor-25915 .elementor-element-af69b79 li.current-menu-item > a,
.elementor-25915 .elementor-element-af69b79 li.current_page_item > a { color: #FFFFFF !important; }

/* Footer: smaller copyright line */
.elementor-25915 .elementor-element-3d1e51b,
.elementor-25915 .elementor-element-3d1e51b * { font-size: 14px !important; }


/* Header tidy (Nov 2026) */
/* Logo box: less top/bottom padding */
.elementor-23937 .elementor-element.elementor-element-2b80c41 .hfe-site-logo .hfe-site-logo-container { padding: 10px 0 !important; }
/* White menu panel fills the full header height so no grey lines show above or below it */
.elementor-23937 .elementor-element.elementor-element-eeee9c3 { align-items: stretch !important; }
.elementor-23937 .elementor-element.elementor-element-fc13963 { align-self: stretch !important; }
.elementor-23937 .elementor-element.elementor-element-c885d3d { justify-content: center !important; }
/* Keep Get In Touch on one line */
.elementor-23937 .elementor-element-ff08317 .rs-btn, .elementor-23937 .elementor-element-ff08317 .rs-btn span { white-space: nowrap !important; }
/* Logo size by screen width */
@media (max-width: 1366px) { .elementor-23937 .elementor-element-2b80c41 img.rs___default-logo { height: 70px !important; width: auto !important; } }
@media (max-width: 1024px) { .elementor-23937 .elementor-element-2b80c41 img.rs___default-logo { height: 56px !important; } }
@media (max-width: 767px)  { .elementor-23937 .elementor-element-2b80c41 img.rs___default-logo { height: 46px !important; } }

/* Laptop widths: menu and button share the space instead of overflowing */
@media (min-width: 1025px) and (max-width: 1366px) {
  .elementor-23937 .elementor-element.elementor-element-32ae200 { width: auto !important; --width: auto; flex: 0 0 auto !important; }
  .elementor-23937 .elementor-element.elementor-element-7568974 { width: auto !important; --width: auto; flex: 1 1 auto !important; min-width: 0; }
  .elementor-23937 .elementor-element-373e448 .hfe-nav-menu { flex-wrap: nowrap !important; }
  .elementor-23937 .elementor-element-373e448 a.hfe-menu-item { padding-left: 14px !important; padding-right: 14px !important; }
  .elementor-23937 .elementor-element-ff08317 .rs-btn { padding-left: 22px !important; padding-right: 22px !important; }
}
.elementor-23937 .elementor-element-373e448 a.hfe-menu-item { white-space: nowrap !important; }
@media (min-width: 1025px) and (max-width: 1200px) {
  .elementor-23937 .elementor-element-373e448 a.hfe-menu-item { padding-left: 8px !important; padding-right: 8px !important; font-size: 14px !important; }
  .elementor-23937 .elementor-element-ff08317 .rs-btn { padding-left: 16px !important; padding-right: 16px !important; }
}


/* Case study pages: body text spacing (Open Country Dairy, page 30770) */
.elementor-30770 .prelements-heading .description h4 { font-size: 21px !important; line-height: 1.3; margin: 28px 0 8px !important; }
.elementor-30770 .prelements-heading .description p { margin-bottom: 14px !important; }
.elementor-30770 .prelements-heading .description p:last-child { margin-bottom: 0 !important; }
.elementor-30770 .prelements-heading .description ul { margin: 4px 0 0 20px; padding: 0; }
.elementor-30770 .prelements-heading .description li { margin-bottom: 8px; }



/* Sticky sidebar CTA (case study pages): add class tcs-sticky-side to the sidebar container; its last box follows the reader */
body:has(.tcs-sticky-side) { overflow-x: clip !important; overflow-y: visible !important; }
@media (min-width: 768px) {
  .elementor .e-con.tcs-sticky-side > .e-con:last-child { position: sticky; top: 40px; }
  .admin-bar .elementor .e-con.tcs-sticky-side > .e-con:last-child { top: 72px; }
}

/* Dark summary panel (case study pages): add class tcs-dark-panel to the container */
.tcs-dark-panel .title, .tcs-dark-panel .contact-info, .tcs-dark-panel .contact-info *, .tcs-dark-panel .label, .tcs-dark-panel .desc, .tcs-dark-panel p, .tcs-dark-panel li, .tcs-dark-panel span:not(.sub-text) { color: #FFFFFF !important; }
.tcs-dark-panel i, .tcs-dark-panel .contact-icon i, .tcs-dark-panel svg { color: #8FCFA9 !important; fill: #8FCFA9 !important; }

/* Dark summary panel: keep list items on one line, stack the two columns below 1440px */
@media (max-width: 1439px) {
  .elementor .e-con.tcs-dark-panel { padding-left: 30px !important; padding-right: 30px !important; }
  .tcs-dark-panel .address-item .des { font-size: 16px !important; }
}
@media (max-width: 1439px) {
  .tcs-dark-panel > .e-con, .tcs-dark-panel .e-con:has(> .elementor-widget-rs-contact-box) { flex-direction: column !important; }
  .tcs-dark-panel .elementor-widget-rs-contact-box { width: 100% !important; }
}

/* Ata Touch page: equal-height "How we help" cards */
.elementor-30862 .elementor-element-a780571 { align-items: stretch !important; }
.elementor-30862 .elementor-element-a780571 > .elementor-widget > .elementor-widget-container,
.elementor-30862 .elementor-element-a780571 .rs-addon-services,
.elementor-30862 .elementor-element-a780571 .services-inner { height: 100%; }

/* Ata Touch page: price band and help cards */
.tcs-price-band > .e-con, .tcs-price-band .elementor-widget { border: 0 !important; }
.tcs-price-band .tcs-price-suffix { font-size: 0.5em; font-weight: 500; color: #DCE6E0; white-space: nowrap; margin-left: 4px; }
.tcs-price-band > .e-con:first-child { border-right: 1px solid rgba(255,255,255,0.18) !important; }
@media (max-width: 767px) {
  .tcs-price-band > .e-con:first-child { border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,0.18) !important; }
}
.tcs-ata-cards .e-con:has(> .elementor-widget-rs-service-grid) { align-self: stretch; }
.tcs-ata-cards .e-con > .elementor-widget-rs-service-grid { flex-grow: 1; }
.tcs-ata-cards::before { display: none !important; }
.tcs-ata-cards .elementor-widget-rs-service-grid > .elementor-widget-container,
.tcs-ata-cards .elementor-widget-rs-service-grid .rs-addon-services,
.tcs-ata-cards .elementor-widget-rs-service-grid .services-inner { height: 100%; }
.tcs-ata-cards .elementor-widget-rs-service-grid .services-inner { background-color: #F3F5F4 !important; }

/* Ata Touch page: tidy line breaks (balanced headings, no single-word last lines) and true-centre the "How we help" heading */
.elementor-30862 .prelements-heading .title { text-wrap: balance; }
.elementor-30862 p { text-wrap: pretty; }
.elementor-30862 .elementor-element-38135dc .prelements-heading .title { margin-right: 0 !important; }

/* ===== Design fixes (10 Nov 2026) ===== */

/* Milkcollect: show the truck photo and Hi-Tech Awards video card on tablet and mobile */
@media (max-width: 1024px) {
  .tcs-hta-wrap { order: 2; margin-top: 10px; }
  .tcs-hta-wrap .elementor-element-463e1861 { display: none !important; }
  .tcs-hta-wrap .elementor-element-7451d1c { order: 1; min-height: 340px !important; height: 340px !important; justify-content: center !important; }
  .tcs-hta-wrap .elementor-element-16de1fc4 { order: 2; position: relative !important; inset: auto !important; width: calc(100% - 24px) !important; margin: -48px 0 0 auto !important; }
}

/* Milkcollect: keep "Read the case study" on one line */
.elementor-29702 .elementor-element-a1cdf98 .rs-btn { white-space: nowrap; }

/* Decorative gear: stop it stretching past its real size (it was blurry), hide it on mobile */
img[src*="gear_1"] { max-width: 150px !important; height: auto !important; }
.elementor-widget-rs-image:has(img[src*="gear_1"]) { left: -45px !important; }
@media (max-width: 767px) {
  .elementor-widget-rs-image:has(img[src*="gear_1"]) { display: none !important; }
}

/* Mobile: let body text use the full width (Home, About) */
@media (max-width: 767px) {
  .elementor-2435 p, .elementor-30122 p,
  .elementor-2435 .prelements-heading .description, .elementor-30122 .prelements-heading .description { margin-right: 0 !important; padding-right: 0 !important; }
}

/* About: team photos two per row on mobile */
@media (max-width: 767px) {
  .elementor-30122 .rs-team-grid .row > .team-style-column { flex: 0 0 50%; max-width: 50%; width: 50%; padding-left: 6px; padding-right: 6px; }
  .elementor-30122 .rs-team-grid .row { margin-left: -6px; margin-right: -6px; }
  .elementor-30122 .rs-team-grid .team-name, .elementor-30122 .rs-team-grid .team-name a { font-size: 18px !important; }
  .elementor-30122 .rs-team-grid .team-title { font-size: 13px !important; line-height: 1.3 !important; }
  .elementor-30122 .rs-team-grid .team-content { height: 116px !important; padding: 14px 10px !important; }
}

/* Contact: smaller gap between the form and the footer on mobile */
@media (max-width: 767px) {
  .elementor-30152 .elementor-element-698f357 > .e-con-inner { padding-bottom: 10px !important; }
}

/* Footer: bigger, easier to tap links on mobile, one link per line */
@media (max-width: 767px) {
  .elementor-25915 .elementor-element-af69b79 .hfe-nav-menu a.hfe-menu-item { font-size: 16px !important; padding-top: 7px !important; padding-bottom: 7px !important; line-height: 1.3 !important; }
  .elementor-25915 .elementor-element-af69b79 > .elementor-widget-container { height: auto !important; }
  .elementor-25915 .elementor-element-af69b79 .hfe-nav-menu li.menu-item { max-width: 100% !important; width: 100% !important; }
  .elementor-25915 .elementor-element-ea7d8ca { padding-bottom: 0 !important; }
}

/* About: Team profiles not clickable for now (remove this block if TCS add profile pages) */
.elementor-30122 .rs-team-grid a { pointer-events: none !important; cursor: default !important; }
.elementor-30122 .rs-team-grid .social-icons { display: none !important; }


/* ===== Mobile fixes from Brendan's phone screenshots (10 Nov 2026) ===== */
@media (max-width:767px){
  /* Milkcollect hero: keep intro text on the solid part of the fade */
  /* Milkcollect: remove leftover gap where desktop stats overlap */
  .elementor-29702 .elementor-element-b944284 { margin-top: 50px !important; }
  /* Built for everyone: one left edge */
  .elementor-29702 .elementor-element-ddced7f .services-title, .elementor-29702 .elementor-element-ddced7f .services-title .title { padding-left: 0 !important; }
  .elementor-29702 .elementor-element-8c76c42 { width: 100% !important; max-width: 100% !important; }
  .elementor-29702 .elementor-element-8c76c42 .rs-button, .elementor-29702 .elementor-element-8c76c42 a.rs-btn { width: 100% !important; justify-content: center; }
  /* HTA video card: sit flush under the photo */
  .tcs-hta-wrap .elementor-element-16de1fc4 { width: 100% !important; margin: 0 !important; border: 0 !important; border-radius: 0 0 6px 6px; }
  .tcs-hta-wrap .elementor-element-7451d1c { border-radius: 6px 6px 0 0; }
  .tcs-hta-wrap .elementor-element-7451d1c { margin-bottom: 0 !important; }
  .elementor-29702 .elementor-element-fc0fee1, .elementor-29702 .elementor-element-fc0fee1 > .e-con-inner { padding-bottom: 20px !important; }
  /* Benefits: button matches the card width */
    .elementor-29702 .elementor-element-c30865c { width: 100% !important; max-width: 100% !important; }
  .elementor-29702 .elementor-element-c30865c .rs-button, .elementor-29702 .elementor-element-c30865c a.rs-btn { width: 100% !important; justify-content: center; }
  /* Customer stories: breathing room after the grey benefits block */
  .elementor-29702 .elementor-element-b13794a { padding-top: 60px !important; }
  /* Case study cards: darker overlay so the text reads over busy photos */
  .elementor-29702 .elementor-element-8148206::before, .elementor-29702 .elementor-element-d7bb438::before { background-image: linear-gradient(180deg, rgba(0,45,61,0.55) 0%, rgba(0,45,61,0.92) 100%) !important; opacity: 1 !important; }
  /* FAQ blocks: questions use the full width, no decorative gears, smaller gap above footer */
  .elementor-29702 .elementor-element-edb1f36 { padding-right: 0 !important; }
  .elementor-widget-rs-image:has(img[src*="progress-img2"]) { display: none !important; }
  [data-elementor-type="wp-page"] > .e-con:has(img[src*="progress-img2"]) > .e-con-inner { padding-bottom: 70px !important; }
  /* Home hero: "Our Solutions" text link lines up with "Learn more" */
  .elementor-2435 .elementor-element-dc18be5 a.rs-btn { padding-left: 0 !important; }
  /* Home "What we do" cards: smaller headings so long titles fit */
  .elementor-2435 .elementor-element-65a2759 h3 { font-size: 24px !important; line-height: 1.25 !important; }
  /* Home "Why TCS" cards: more room under the icon */
  .elementor-2435 .elementor-element-567b056 h3 { margin-top: 18px !important; }
}


/* ===== Mobile consistency pass (10 Nov 2026) ===== */
@media (max-width:767px){
  /* Same vertical rhythm for every section after the hero */
  [data-elementor-type="wp-page"] > .e-con.e-con-full:not(:first-child) { padding-top: 60px !important; padding-bottom: 60px !important; }
  [data-elementor-type="wp-page"] > .e-con.e-con-boxed:not(:first-child) > .e-con-inner { padding-top: 60px !important; padding-bottom: 60px !important; }
  /* Split image + dark panel sections keep no outer padding */
  [data-elementor-type="wp-page"] > .e-con.e-con-full.elementor-element-1ecb098, [data-elementor-type="wp-page"] > .e-con.e-con-full.elementor-element-03213f9 { padding-top: 0 !important; padding-bottom: 0 !important; }
  /* Headings */
  [data-elementor-type="wp-page"] .elementor-widget-rs-heading h1.title { font-size: 38px !important; line-height: 1.12 !important; }
  [data-elementor-type="wp-page"] .elementor-widget-rs-heading h2.title { font-size: 31px !important; line-height: 1.2 !important; }
  /* Body text */
  [data-elementor-type="wp-page"] .elementor-widget-text-editor p, [data-elementor-type="wp-page"] .prelements-heading .description, [data-elementor-type="wp-page"] .prelements-heading .description p { font-size: 17px !important; line-height: 1.65 !important; }
  /* Two-line buttons: tighter line height */
  [data-elementor-type="wp-page"] a.rs-btn { line-height: 1.35 !important; }
  /* FAQ questions: even space above and below */
  .accordion-header .tab-title { padding-bottom: 18px !important; padding-top: 0 !important; }
  /* Case study cards: less left padding on text */
  .elementor-29702 .elementor-element-8148206, .elementor-29702 .elementor-element-d7bb438 { padding-left: 24px !important; padding-right: 24px !important; }
  /* Same 20px side inset for section content */
  .elementor-2435 .elementor-element-567b056 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-2435 .elementor-element-8f0fced { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-29702 .elementor-element-640704f7 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-29702 .elementor-element-b944284 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-29702 .elementor-element-5ae6e9f { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-29702 .elementor-element-9431cc8 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30174 .elementor-element-0640c98 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30174 .elementor-element-4030632 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30174 .elementor-element-78fbbf1 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30174 .elementor-element-b503589 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30174 .elementor-element-404701a { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30174 .elementor-element-8e57681 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30174 .elementor-element-65b4795 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30378 .elementor-element-3db1d46 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30378 .elementor-element-21ee0c0 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30378 .elementor-element-529986f4 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30378 .elementor-element-435fd50a { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30378 .elementor-element-7ba8131 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30378 .elementor-element-ce15c07 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30378 .elementor-element-296db54 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30862 .elementor-element-4cbdbf8 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30862 .elementor-element-6c49064 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30862 .elementor-element-0687166 { padding-left: 0px !important; padding-right: 0px !important; }
  .elementor-30122 .elementor-element-260830c7 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30122 .elementor-element-2103627 { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30122 .elementor-element-d7446ff { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30122 .elementor-element-d2768f5 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30122 .elementor-element-141ea9c { padding-left: 10px !important; padding-right: 10px !important; }
  .elementor-30122 .elementor-element-9a53e73 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30152 .elementor-element-698f357 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-29702 .elementor-element-5c1df0d { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30862 .elementor-element-2d82f64 { padding-left: 20px !important; padding-right: 20px !important; }
  /* Milkcollect benefits: cards and button on the same 20px inset */
  body .elementor-29702 .elementor-element-2753d63, body .elementor-29702 .elementor-element-e772360 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-29702 .elementor-element-2753d63 .e-con { margin-left: 0 !important; margin-right: 0 !important; }
  /* Headings: drop desktop line breaks, balance the lines */
  [data-elementor-type="wp-page"] .elementor-widget-rs-heading .title br { display: none; }
  [data-elementor-type="wp-page"] .elementor-widget-rs-heading .title { text-wrap: balance; }
  /* Home testimonials: no overlap onto the form above */
  .elementor-2435 .elementor-element-a9be3d6 { margin-top: 0 !important; }
  /* Ata Touch: manuals cards match the other card styles */
  .elementor-30862 .elementor-element-f4f450a { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30862 .tcs-ata-cards .services-title .title, .elementor-30862 .tcs-ata-cards h3 { font-size: 22px !important; line-height: 1.3 !important; }
  /* Engineering intro: very long statement heading a step smaller */
  [data-elementor-type="wp-page"] .elementor-element-e5d7984 .elementor-widget-rs-heading h2.title { font-size: 27px !important; }
}


/* Mobile: dot labels above headings, smaller and on one line where possible, wrapped lines align with the text not the dot */
@media (max-width:767px){
  .elementor-widget-rs-heading .prelements-heading .sub-text { display: inline-flex !important; text-align: left; align-items: flex-start; gap: 8px; font-size: 14px !important; line-height: 1.4 !important; letter-spacing: 0.08em; font-weight: 600; }
  .elementor-widget-rs-heading .prelements-heading .sub-text svg { flex: 0 0 auto; position: static !important; width: 9px !important; height: 9px !important; margin: 5px 0 0 0 !important; }
}

/* ===== Mobile spacing pass 2 (10 Nov 2026) ===== */
@media (max-width:767px){
  [data-elementor-type="wp-page"] > .e-con.e-con-full:not(:first-child) { padding-top: 50px !important; padding-bottom: 50px !important; }
  [data-elementor-type="wp-page"] > .e-con.e-con-boxed:not(:first-child) > .e-con-inner { padding-top: 50px !important; padding-bottom: 50px !important; }
  .elementor-2435 .elementor-element-e075956 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-2435 .elementor-element-7fa4308 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-29702 .elementor-element-32f8e7d { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-29702 .elementor-element-004acf9 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-29702 .elementor-element-5b62c87 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-173ae69 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-e41ffed { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-a91365e { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-4cebcbb { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-e41ffed { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-2e7911b { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-c19973e { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-bf20016 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-c19973e { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-b1782e5 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-1b78874 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-6bc7387 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-7386adc { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-1b78874 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-d83b2fa { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-0873d87 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-8b876f9 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-0873d87 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-9ec9abe { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-40ec810 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30174 .elementor-element-c966e6f { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-41d5c8c { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30174 .elementor-element-40ec810 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-7e03a3b { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-abd8786 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-3eb23be { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-abd8786 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-a1f2a1a { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-35fe9aec { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-27784530 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-35fe9aec { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-eca5efb { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-dfef156 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-420de5ff { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-3827d62f { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-dfef156 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-3822f577 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-3b727d6f { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-7a9f0e4d { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-3b727d6f { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-784c8796 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-17aec0a0 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30378 .elementor-element-1e18dc56 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-6725d320 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30378 .elementor-element-17aec0a0 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30862 .elementor-element-b24a178 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30862 .elementor-element-14b16b7 { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30862 .elementor-element-d51858e { padding-top: 0 !important; margin-top: 0 !important; }
  .elementor-30862 .elementor-element-fae9691 { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30122 .elementor-element-44969c8d { padding-bottom: 0 !important; margin-bottom: 0 !important; }
  .elementor-30122 .elementor-element-5cae1bc { padding-bottom: 0 !important; margin-bottom: 0 !important; }

  .elementor-30378 .elementor-element-e5d7984 .elementor-widget-rs-heading h1.title { font-size: 28px !important; line-height: 1.2 !important; }
  .elementor-30122 .elementor-element-260830c7, .elementor-30152 .elementor-element-698f357 { margin-top: 0 !important; }
  .elementor-30122 .elementor-element-55f9f952 { padding-top: 45px !important; }
  .elementor-30122 .elementor-element-2b03b2ff { width: 100% !important; max-width: 100% !important; }
  .elementor-30122 .elementor-element-7bf52ce > .e-con-inner, .elementor-30122 .elementor-element-7bf52ce { padding-top: 0 !important; }


  .elementor-30152 .elementor-element-698f357 > .e-con-inner { padding-top: 50px !important; }
  .elementor-30152 .elementor-element-069c1be { row-gap: 0 !important; gap: 0 !important; }
  .elementor-30152 .elementor-element-a15fabb { margin-top: 0 !important; }
  .elementor-30152 .elementor-element-069c1be .address-item { padding: 6px 0 !important; }
  .elementor-30152 .elementor-element-8be19d9 { padding-bottom: 0 !important; }
  .elementor-30152 .elementor-element-f058044 { margin-top: 20px !important; }


  .elementor-30862 .elementor-element-6c6f7f6 { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-30862 .tcs-price-band h3 { font-size: 30px !important; line-height: 1.15 !important; }
  .elementor-30862 .tcs-price-band .tcs-price-suffix { display: block; margin: 6px 0 0 0 !important; font-size: 15px !important; }


  .elementor-30122 .elementor-element-7fc96882 { flex-shrink: 0 !important; height: auto !important; }
  .elementor-30122 .elementor-element-14595bcf > .e-con-inner { flex-wrap: nowrap !important; }
  .elementor-30122 .elementor-element-7fc96882 .row > .team-style-column { margin-bottom: 14px !important; }
  .elementor-30122 .elementor-element-4c49219 { margin-top: 16px !important; }
  .elementor-30122 .elementor-element-e84d8a4 .services-title, .elementor-30122 .elementor-element-d2768f5 .rs-addon-services .services-title { margin-top: 28px !important; }
  .elementor-30122 .elementor-element-4c49219 { margin-top: 6px !important; }


  .elementor-23937 .elementor-element-c885d3d { align-items: center !important; justify-content: center !important; }
  .elementor-23937 .elementor-element-2b80c41 { align-self: center !important; margin: 0 !important; }
  .elementor-23937 .elementor-element-2b80c41 .hfe-site-logo-container { padding: 0 !important; }
  .elementor-23937 .elementor-element-2b80c41 img { width: 80px !important; max-width: 80px !important; height: auto !important; }
  .elementor-23937 .elementor-element-2b80c41, .elementor-23937 .elementor-element-2b80c41 .elementor-widget-container, .elementor-23937 .elementor-element-2b80c41 .hfe-site-logo-set, .elementor-23937 .elementor-element-2b80c41 .hfe-site-logo-container { width: 80px !important; max-width: 80px !important; }
  .elementor-23937 .elementor-element-2b80c41 img.rs___default-logo { max-height: none !important; height: auto !important; width: 80px !important; }

}
/* ===== Milkcollect mobile pass (10 Nov 2026) ===== */
@media (max-width:767px){
body [data-elementor-type="wp-page"] > .e-con.e-con-full.elementor-element-1ecb098, body [data-elementor-type="wp-page"] > .e-con.e-con-full.elementor-element-03213f9 { padding-top:0 !important; padding-bottom:0 !important; }

  body .elementor-29702 .elementor-element-b944284 { margin-top: 0 !important; }
  body .elementor-29702 .elementor-element-b944284 > .e-con-inner { padding-top: 40px !important; }


  body .elementor-29702 .elementor-element-e432624 h3[class*="e-heading"] { font-size: 26px !important; line-height: 1.2 !important; }
  body .elementor-29702 .elementor-element-e432624 p[class*="e-paragraph"] { font-size: 15px !important; line-height: 1.55 !important; }


  body .elementor-29702 .elementor-element-a1cdf98 { padding-left: 0 !important; padding-right: 0 !important; }
  body .elementor-29702 .elementor-element-a1cdf98 a.rs-btn { overflow: hidden !important; background: rgba(255,255,255,0.12) !important; }
  body .elementor-29702 .elementor-element-a1cdf98 { align-self: flex-start !important; }

  body .elementor-29702 .elementor-element-7897b39 { row-gap: 28px !important; gap: 28px !important; margin-bottom: 12px !important; }

}
/* ===== Industrial & AG mobile pass (10 Nov 2026) ===== */
@media (max-width:767px){

  /* Images above text in every product section */
  body .elementor-30174 .elementor-element-bf20016, body .elementor-30174 .elementor-element-8b876f9 { order: -1 !important; }
  body .elementor-30174 .elementor-element-173ae69, body .elementor-30174 .elementor-element-bf20016, body .elementor-30174 .elementor-element-b1782e5, body .elementor-30174 .elementor-element-8b876f9, body .elementor-30174 .elementor-element-9ec9abe { padding-top: 0 !important; padding-bottom: 0 !important; margin-bottom: 20px !important; }
  /* PMAC: motor and encoder side by side */
  body .elementor-30174 .elementor-element-9ec9abe { flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; gap: 12px !important; }
  body .elementor-30174 .elementor-element-daea692, body .elementor-30174 .elementor-element-324bd2b { width: calc(50% - 6px) !important; max-width: calc(50% - 6px) !important; flex: 0 0 calc(50% - 6px) !important; }
  /* Heading closer to its text */
  body .elementor-30174 .elementor-element.elementor-widget-rs-heading .prelements-heading .title-inner .title.title { margin-bottom: 4px !important; }
  /* "Designed and built for" list: icon on the first line */
  body .elementor-30174 .elementor-element-b42d881 .elementor-icon-list-item { align-items: flex-start !important; }
  body .elementor-30174 .elementor-element-b42d881 .elementor-icon-list-icon svg { margin-top: 6px !important; }
  /* Feature lists line up with the heading */
  body .elementor-30174 .e-con:has(> .elementor-widget-rs-service-grid) { padding-left: 0 !important; padding-right: 0 !important; }
  body .elementor-30174 .rs-addon-services.style7 .media_wrap { padding: 0 14px 0 0 !important; }
  /* Partner logos clear the footer */
  body .elementor-30174 .elementor-element-65b4795 > .e-con-inner, body .elementor-30378 .elementor-element-296db54 > .e-con-inner { padding-bottom: 150px !important; }

  body .elementor-30174 .elementor-element-9ec9abe .elementor-widget-rs-image { background: #fff; border-radius: 6px; height: 190px; display: flex; align-items: center; justify-content: center; }
  body .elementor-30174 .elementor-element-9ec9abe .elementor-widget-rs-image img { max-height: 170px !important; width: auto !important; max-width: 100% !important; object-fit: contain; }


  .accordion-body { padding-top: 14px !important; }

}
/* ===== I&AG hero fade + heading spacing (10 Nov 2026) ===== */
@media (max-width:767px){
  body .elementor-30174 .elementor-element-0640c98::before, body .elementor-30862 .elementor-element-4cbdbf8::before { background-image: linear-gradient(170deg, rgba(247,247,247,0.97) 0%, rgba(247,247,247,0.95) 48%, rgba(247,247,247,0.7) 72%, rgba(247,247,247,0.15) 100%) !important; opacity: 1 !important; }
  body .elementor-30174 .elementor-element-0640c98, body .elementor-30862 .elementor-element-4cbdbf8 { background-position: center bottom !important; }
  body .elementor-element.elementor-widget-rs-heading .prelements-heading:has(.description) .title-inner .title.title { margin-bottom: 20px !important; }
}
/* ===== Engineering Services mobile pass (10 Nov 2026) ===== */
@media (max-width:767px){
  /* Heading to text gap */
  body .elementor-30378 .elementor-element.elementor-widget-rs-heading .prelements-heading:not(:has(.description)) .title-inner .title.title { margin-bottom: 4px !important; }
  /* Feature lists line up with the heading */
  body .elementor-30378 .e-con:has(> .elementor-widget-rs-service-grid) { padding-left: 0 !important; padding-right: 0 !important; }
  body .elementor-30378 .rs-addon-services.style7 .media_wrap { padding: 0 14px 0 0 !important; }
  /* Tick lists: icon on the first line */
  body .elementor-30378 .elementor-widget-icon-list .elementor-icon-list-item { align-items: flex-start !important; }
  body .elementor-30378 .elementor-widget-icon-list .elementor-icon-list-icon svg { margin-top: 6px !important; }
  /* Image columns: no extra padding, same gap below */
  body .elementor-30378 .elementor-element-7e03a3b, body .elementor-30378 .elementor-element-eca5efb, body .elementor-30378 .elementor-element-7a9f0e4d, body .elementor-30378 .elementor-element-784c8796 { padding-top: 0 !important; padding-bottom: 0 !important; margin-bottom: 20px !important; }
  /* Electronic Product Development: tall portrait photo cropped */
  body .elementor-30378 .elementor-element-f8a673c img { height: 300px !important; width: 100% !important; object-fit: cover; object-position: center 30%; }
  /* High-level software: two photos side by side */
  body .elementor-30378 .elementor-element-eca5efb { flex-direction: row !important; gap: 12px !important; }
  body .elementor-30378 .elementor-element-eca5efb > .elementor-widget { width: calc(50% - 6px) !important; max-width: calc(50% - 6px) !important; flex: 0 0 calc(50% - 6px) !important; margin: 0 !important; }
  body .elementor-30378 .elementor-element-eca5efb img { height: 220px !important; width: 100% !important; object-fit: cover; }
  /* Industrial comms: images above text, one wide and two half */
  body .elementor-30378 .elementor-element-7a9f0e4d { order: -1 !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 12px !important; }
  body .elementor-30378 .elementor-element-7a9f0e4d > .elementor-widget { flex: 0 0 calc(50% - 6px) !important; width: calc(50% - 6px) !important; max-width: calc(50% - 6px) !important; margin: 0 !important; }
  body .elementor-30378 .elementor-element-7a9f0e4d > .elementor-widget:first-child { flex-basis: 100% !important; width: 100% !important; max-width: 100% !important; }
  body .elementor-30378 .elementor-element-7a9f0e4d img { width: 100% !important; height: 140px !important; object-fit: cover; }
  body .elementor-30378 .elementor-element-7a9f0e4d > .elementor-widget:first-child img { height: 200px !important; }
  /* FAQ form card: repeat photo kept short */
  body .elementor-30378 .elementor-element-59c3b1fa img[src*="tcs-engineering-enquiry"] { height: 220px !important; width: 100% !important; object-fit: cover; object-position: center 30%; }
}
/* ===== Feature tick boxes centred (10 Nov 2026) ===== */
@media (max-width:767px){
  body .elementor-30174 .rs-addon-services.style7 .media_wrap, body .elementor-30378 .rs-addon-services.style7 .media_wrap { padding: 0 !important; margin-right: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 32px !important; width: 32px !important; height: 32px !important; }
  body .elementor-30174 .rs-addon-services.style7 .media_wrap .icon_style, body .elementor-30378 .rs-addon-services.style7 .media_wrap .icon_style { display: flex !important; align-items: center !important; justify-content: center !important; height: 32px !important; }
  body .elementor-30174 .rs-addon-services.style7 .media_wrap svg, body .elementor-30378 .rs-addon-services.style7 .media_wrap svg { height: 18px !important; width: 18px !important; }
}
/* ===== Ata Touch mobile pass + FAQ icons (10 Nov 2026) ===== */
@media (max-width:767px){
  /* Heading to text gap (headings without built-in intro) */
  body .elementor-30862 .elementor-element.elementor-widget-rs-heading .prelements-heading:not(:has(.description)) .title-inner .title.title { margin-bottom: 4px !important; }
  /* How we help: room under the icon box */
  body .elementor-30862 .elementor-element-6c49064 h3 { margin-top: 18px !important; }
  /* Just bought checklist: icon left, text right */
  body .elementor-30862 .elementor-element-a178fa3 { gap: 14px !important; margin: 10px 0 !important; }
  body .elementor-30862 .elementor-element-a178fa3 .services-inner { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 16px !important; padding: 0 !important; }
  body .elementor-30862 .elementor-element-a178fa3 .media_wrap { flex: 0 0 56px !important; width: 56px !important; height: 56px !important; padding: 0 !important; align-items: center !important; justify-content: center !important; }
  body .elementor-30862 .elementor-element-a178fa3 .media_wrap svg { width: 34px !important; height: 34px !important; }
  body .elementor-30862 .elementor-element-a178fa3 .content_part { flex: 1 1 auto; }
  body .elementor-30862 .elementor-element-a178fa3 .services-title, body .elementor-30862 .elementor-element-a178fa3 .services-title .title { margin: 0 !important; padding: 0 !important; font-size: 16px !important; line-height: 1.4 !important; }
  /* Version 9 tick list: icon on the first line */
  body .elementor-30862 .elementor-widget-icon-list .elementor-icon-list-item { align-items: flex-start !important; }
  body .elementor-30862 .elementor-widget-icon-list .elementor-icon-list-icon svg { margin-top: 6px !important; }
  /* Price band: even padding top and bottom */
  body .elementor-30862 .tcs-price-band > .e-con { padding: 26px 24px !important; }
  body .elementor-30862 .tcs-price-band .elementor-widget-text-editor p:last-child { margin-bottom: 0 !important; }
  /* Manuals and electricians cards: full width, even padding */
  body .elementor-30862 .tcs-ata-cards .e-con:has(> .elementor-widget-rs-service-grid) { padding: 0 !important; }
  body .elementor-30862 .tcs-ata-cards .services-inner { padding: 26px 24px 22px !important; }
  body .elementor-30862 .tcs-ata-cards .desc-text, body .elementor-30862 .tcs-ata-cards .desc-text p:last-child { margin-bottom: 0 !important; }
  body .elementor-30862 .tcs-ata-cards .btn-part { margin: 18px 0 0 !important; }
  body .elementor-30862 .elementor-element-a178fa3 .elementor-widget > .elementor-widget-container { margin: 0 !important; }
  body .elementor-30862 .tcs-ata-cards .elementor-element-d094fb8 { gap: 16px !important; margin-top: 0 !important; }
}
@media (max-width:767px){
  /* FAQ +/- icon centred on the first line of the question */
  .accordion-header .accordion-button .elementor-accordion-icon { align-self: flex-start !important; margin-top: -10px !important; height: 24px !important; display: flex !important; align-items: center !important; }
  .accordion-header .accordion-button .elementor-accordion-icon > span { display: flex !important; align-items: center !important; height: 24px !important; }
  .accordion-header .accordion-button .elementor-accordion-icon > span[class*="opene"] { display: none !important; }
  .accordion-header .accordion-button:not(.collapsed) .elementor-accordion-icon > span[class*="opene"] { display: flex !important; }
  .accordion-header .accordion-button:not(.collapsed) .elementor-accordion-icon > span[class*="close"] { display: none !important; }
}
/* Ata how we help cards bottom padding */
@media (max-width:767px){ body .elementor-30862 .elementor-element-6c49064 .rs-addon-services.style2 .content_part { padding-bottom: 32px !important; } }
/* ===== Ata Touch icons (10 Nov 2026) ===== */
  html body .elementor-30862 .elementor-element.elementor-element-dcf1464 .rs-addon-services.style2 .services-inner.box .media_wrap svg *, html body .elementor-30862 .elementor-element.elementor-element-017761d .rs-addon-services.style2 .services-inner.box .media_wrap svg * { fill: none !important; stroke: #fff !important; }
  html body .elementor-30862 .elementor-element.elementor-element-d14538b svg * { fill: none !important; stroke: #426252 !important; stroke-width: 3.6 !important; }
@media (max-width:767px){
  body .elementor-30862 .elementor-element-6c49064 .rs-addon-services .media_wrap svg { width: 62px !important; height: 62px !important; }
  body .elementor-30862 .elementor-element-6c49064 .rs-addon-services .media_wrap .icon_style { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 100% !important; }
  body .elementor-30862 .elementor-element-a178fa3 .elementor-element-d14538b .media_wrap svg { width: 44px !important; height: 44px !important; }
}
/* ===== Final check fixes (10 Nov 2026) ===== */
@media (max-width:767px){
  /* Home Why TCS cards: same bottom padding as Ata Touch cards */
  body .elementor-2435 .elementor-element-567b056 .rs-addon-services.style2 .content_part { padding-bottom: 32px !important; }
  body .elementor-2435 .elementor-element-567b056 .rs-addon-services .services-inner { height: auto !important; min-height: 0 !important; }

  /* Case study: same 20px side margins as the other pages */
  body .elementor-30770 .elementor-element-36fdd10, body .elementor-30770 .elementor-element-a719a02, body .elementor-30770 .elementor-element-ef9a438 { padding-left: 20px !important; padding-right: 20px !important; }
  body .elementor-30770 .elementor-element-a1353b1 { padding-left: 20px !important; padding-right: 20px !important; }

  body .elementor-30770 .elementor-element-2ff4875 > .e-con-inner { flex-wrap: nowrap !important; gap: 12px !important; }
  body .elementor-30770 .elementor-element-cee7c70, body .elementor-30770 .elementor-element-1261e10 { width: calc(50% - 6px) !important; max-width: calc(50% - 6px) !important; flex: 0 0 calc(50% - 6px) !important; margin: 0 !important; }
  body .elementor-30770 .elementor-element-cee7c70 img, body .elementor-30770 .elementor-element-1261e10 img { width: 100% !important; height: 240px !important; object-fit: cover; border-radius: 6px; }
}
@media (min-width:768px) and (max-width:1024px){
  body .elementor-30862 .elementor-element-14b16b7 { flex-wrap: wrap !important; }
  body .elementor-30862 .elementor-element-c685763 { max-width: 560px; }
}
/* ===== Mobile menu + Home hero buttons (10 Nov 2026) ===== */
@media (max-width:767px){
  body .elementor-2435 .elementor-element-ec5f446 { flex-direction: row !important; gap: 12px !important; margin-top: 8px !important; }
  body .elementor-2435 .elementor-element-035c4e8, body .elementor-2435 .elementor-element-dc18be5 { flex: 1 1 0 !important; width: auto !important; max-width: none !important; }
  body .elementor-2435 .elementor-element-035c4e8 a.rs-btn, body .elementor-2435 .elementor-element-dc18be5 a.rs-btn { width: 100% !important; justify-content: center !important; padding: 14px 10px !important; font-size: 16px !important; line-height: 1.3 !important; border-radius: 2px !important; box-sizing: border-box; height: 52px; display: inline-flex !important; align-items: center !important; }
  body .elementor-2435 .elementor-element-dc18be5 a.rs-btn { border: 2px solid #426252 !important; background: rgba(255,255,255,0.6) !important; color: #426252 !important; }
  body .elementor-2435 .elementor-element-035c4e8 a.rs-btn { border: 2px solid #426252 !important; }
}
@media (max-width:1024px){
  nav.right_menu_togle { padding: 26px 26px 40px !important; }
  nav.right_menu_togle .sidebar-mobile-menu-logo { margin: 0 0 22px !important; padding: 0 0 22px !important; border-bottom: 1px solid #E3E8E5; height: auto !important; display: flex; align-items: center; min-height: 64px; }
  nav.right_menu_togle .sidebar-mobile-menu-logo img { width: 96px !important; max-width: 96px !important; height: auto !important; max-height: none !important; }
  nav.right_menu_togle .rsoffwrap-close { top: 36px !important; right: 22px !important; width: 44px !important; height: 44px !important; border-radius: 50% !important; background: #F3F5F4 !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  nav.right_menu_togle .rsoffwrap-close i { font-size: 24px !important; line-height: 1 !important; color: #1E3A30 !important; }
  nav.right_menu_togle ul.rs_mobile_menu > li { padding: 0 !important; margin: 0 !important; }
  nav.right_menu_togle ul.rs_mobile_menu > li > a { display: block !important; padding: 15px 14px !important; margin: 2px -14px !important; border-radius: 6px; font-size: 18px !important; line-height: 1.3 !important; font-weight: 500; color: #1E3A30 !important; -webkit-tap-highlight-color: rgba(66,98,82,0.18); transition: background-color .12s ease, color .12s ease; }
  nav.right_menu_togle ul.rs_mobile_menu > li.current-menu-item > a { color: #426252 !important; background: #F3F5F4; box-shadow: inset 3px 0 0 #426252; }
  nav.right_menu_togle ul.rs_mobile_menu > li > a:active, nav.right_menu_togle ul.rs_mobile_menu > li > a.tcs-tapped { background: #426252 !important; color: #fff !important; box-shadow: none; }
}
.tcs-js { position: absolute !important; width: 0 !important; height: 0 !important; overflow: hidden !important; }
/* ===== Menu tap state readable + Home Why TCS grid (10 Nov 2026) ===== */
@media (max-width:1024px){
  html body nav.right_menu_togle ul.rs_mobile_menu > li > a { -webkit-tap-highlight-color: transparent !important; }
  html body nav.right_menu_togle ul.rs_mobile_menu > li > a:hover, html body nav.right_menu_togle ul.rs_mobile_menu > li > a:focus { color: #1E3A30 !important; -webkit-text-fill-color: #1E3A30 !important; }
  html body nav.right_menu_togle ul.rs_mobile_menu > li > a:active, html body nav.right_menu_togle ul.rs_mobile_menu > li > a.tcs-tapped, html body nav.right_menu_togle ul.rs_mobile_menu > li.current-menu-item > a:active, html body nav.right_menu_togle ul.rs_mobile_menu > li.current-menu-item > a.tcs-tapped { background: #DCE8E1 !important; color: #1E3A30 !important; -webkit-text-fill-color: #1E3A30 !important; box-shadow: inset 4px 0 0 #426252 !important; }
}
@media (max-width:767px){ body .elementor-2435 .elementor-element-fd84618 { grid-template-rows: none !important; grid-auto-rows: auto !important; } }
/* ===== About mobile: story align, section gap, team heading gap (10 Nov 2026) ===== */
@media (max-width:767px){
  body .elementor-30122 .elementor-element-56d8a31f { padding-left: 20px !important; padding-right: 20px !important; }
  body .elementor-30122 .elementor-element-2b03b2ff .prelements-heading, body .elementor-30122 .elementor-element-2b03b2ff .prelements-heading * { text-align: left !important; }
  body .elementor-30122 .elementor-element-2b03b2ff .sub-text { justify-content: flex-start !important; }
  body .elementor-30122 .elementor-element-2103627 { margin-top: 0 !important; }
  body .elementor-30122 .elementor-element-240c5205 { margin-bottom: 0 !important; }
  body .elementor-30122 .elementor-element-240c5205 > .e-con-inner, body .elementor-30122 .elementor-element-14595bcf > .e-con-inner { padding-top: 0 !important; padding-bottom: 0 !important; }
  body .elementor-30122 .elementor-element-141ea9c { gap: 32px !important; row-gap: 32px !important; }
  body .elementor-30122 .elementor-element-141ea9c .elementor-widget-rs-heading .prelements-heading .title-inner .title.title { margin-bottom: 0 !important; }
}

/* ===== 404 page (11 Nov 2026) ===== */
body.error404 .page-error { position: relative; min-height: 100vh; display: flex; align-items: center; background-size: cover !important; background-position: center 65% !important; }
body.error404 .page-error::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14,32,26,0.78) 0%, rgba(14,32,26,0.62) 55%, rgba(14,32,26,0.85) 100%); }
body.error404 .page-error::after { content: ""; position: absolute; top: 36px; left: 50%; transform: translateX(-50%); width: 110px; height: 82px; background: url(https://tcs-nz.co.nz/wp-content/uploads/2026/09/tcs-logo-white-clean-web.png) center / contain no-repeat; }
body.error404 .page-error > .container { position: relative; z-index: 1; width: 100%; }
body.error404 .page-error #content { padding: 140px 0 80px !important; }
body.error404 .error-404 .page-content { text-align: center; max-width: 620px; margin: 0 auto; }
body.error404 .error-404 h2 { color: #fff !important; font-size: 30px !important; line-height: 1.3 !important; font-weight: 700; margin: 0 0 30px !important; text-wrap: balance; }
body.error404 .error-404 h2 span { display: block; color: #fff !important; opacity: 0.95; font-size: 150px !important; line-height: 1 !important; letter-spacing: -2px; margin-bottom: 18px; }
body.error404 .error-404 h2::after { content: "The link may be out of date, or the page may have moved. Head back to the homepage to find what you need."; display: block; font-size: 17px; font-weight: 400; line-height: 1.6; color: rgba(255,255,255,0.85); margin-top: 16px; }
body.error404 .error-404 a.readon { background: #426252 !important; color: #fff !important; border-radius: 2px; }
body.error404 .error-404 a.readon:hover { background: #fff !important; color: #1E3A30 !important; }
@media (max-width: 767px){
  body.error404 .error-404 h2 { font-size: 24px !important; }
  body.error404 .error-404 h2 span { font-size: 96px !important; }
  body.error404 .page-error #content { padding: 130px 0 60px !important; }
  body.error404 .page-error .container { padding-left: 20px !important; padding-right: 20px !important; }
}

/* Engineering: keep logos in frame on mobile crops (11 Nov 2026) */
@media (max-width:767px){ body .elementor-30378 .elementor-element-1d521d4a img { object-position: 85% top !important; } body .elementor-30378 .elementor-element-f37a4b8 img { object-position: 70% center !important; } }

/* About: staff cards not linked to profile pages (11 Nov 2026) */
.page-id-30122 .rs-team-grid a[href*="/teams/"]{pointer-events:none;cursor:default;}
.page-id-30122 .rs-team-grid .team-name a{color:inherit;}