/* TT-NDT service pages: one semantic DOM for desktop and mobile.
   Desktop keeps the original 1200px composition. Mobile styles the source
   sections directly; no service text or navigation is cloned by JavaScript. */

/* Card and process subheadings use the strong service-page treatment. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
  .tt-ut-why__copy,
  .tt-ut-process__item,
  .tt-ut-applications__copy,
  .tt-ut-related__copy,
  .tt-vt-choose__copy
) :is(h3, h4) {
  font-weight:800 !important;
}

html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro.tt-svc-intro {
  display: none !important;
}

@keyframes tt-services-page-mobile-left-bracket {
  0%, 18% { opacity: 0; transform: translateX(2.8em); }
  18% { opacity: 1; }
  50%, 100% { opacity: 1; transform: translateX(0); }
}

@keyframes tt-services-page-mobile-right-bracket {
  0%, 18% { opacity: 0; transform: translateX(-2.8em); }
  18% { opacity: 1; }
  50%, 100% { opacity: 1; transform: translateX(0); }
}

@media (max-width: 1199.98px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  html body.tt-service-single-dom .tt-stage,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner {
    background: #dcdcdc;
  }

  /* Opening catalogue. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero.tt-services-page-hero {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 34px 20px 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    background: #dcdcdc !important;
    color: #333333 !important;
    transform: none !important;
    isolation: isolate;
  }

  /* Keep the mobile header visually separate from the catalogue without
     introducing an extra horizontal rule. */
  html body.tt-service-single-dom .tt-mobile-header.tt-mobile-header--light,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero.tt-services-page-hero {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background:
      linear-gradient(90deg, transparent calc(33.333% - .5px), #e3e3e3 calc(33.333% - .5px), #e3e3e3 calc(33.333% + .5px), transparent calc(33.333% + .5px)),
      linear-gradient(90deg, transparent calc(33.333% + 7.5px), #e3e3e3 calc(33.333% + 7.5px), #e3e3e3 calc(33.333% + 8.5px), transparent calc(33.333% + 8.5px)),
      linear-gradient(90deg, transparent calc(66.666% - .5px), #e3e3e3 calc(66.666% - .5px), #e3e3e3 calc(66.666% + .5px), transparent calc(66.666% + .5px)),
      linear-gradient(90deg, transparent calc(66.666% + 7.5px), #e3e3e3 calc(66.666% + 7.5px), #e3e3e3 calc(66.666% + 8.5px), transparent calc(66.666% + 8.5px));
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero > * {
    z-index: 1;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__grid,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__top,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__intro {
    display: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__title {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    /* Flex removes whitespace nodes between spans, keeping the brackets
       flush with the word like the other bracketed headings. */
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    width: auto !important;
    max-width: calc(100vw - 40px) !important;
    height: auto !important;
    /* The title container starts inside the 20 px page gutter. Compensate
       Space Mono's opening side-bearing so the visible "[" is at X=20. */
    margin: 0 0 34px -0.236em !important;
    padding: 0 !important;
    color: #333333 !important;
    font-family: "Space Mono", monospace !important;
    font-size: clamp(40px, calc(4.7619vw + 22.8571px), 80px) !important;
    font-weight: 700 !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
    text-align: left !important;
    text-transform: uppercase !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    transform: none !important;
  }

  /* Keep the catalogue heading bracketed on responsive layouts too. The
     brackets begin together over the word and travel outward, matching the
     desktop entrance animation. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__bracket {
    position: static !important;
    display: inline-block !important;
    top: auto !important;
    /* Keep a visible fallback: CSS animations cannot override an important
       opacity declaration, which previously left the whole title invisible. */
    opacity: 1;
    animation-duration: 1.35s !important;
    animation-timing-function: cubic-bezier(.22, 1, .36, 1) !important;
    animation-fill-mode: forwards !important;
    animation-iteration-count: 1 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__bracket--left {
    animation-name: tt-services-page-mobile-left-bracket !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__bracket--right {
    animation-name: tt-services-page-mobile-right-bracket !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__word {
    position: static !important;
    display: inline-block !important;
    opacity: 1;
    clip-path: inset(0 100% 0 0);
    transform: none !important;
    animation: tt-services-page-word 1.35s cubic-bezier(.22, 1, .36, 1) 1 forwards !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__services {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 -20px !important;
    padding: 0 !important;
    border-top: 1px solid #e3e3e3 !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__col {
    position: static !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    align-items: stretch !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: initial !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    display: flex !important;
    grid-column: auto !important;
    grid-row: auto !important;
    align-self: stretch !important;
    order: initial !important;
    flex: 0 0 50% !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 76px !important;
    margin: 0 !important;
    padding: 11px 12px 10px 20px !important;
    /* Keep multi-line labels anchored to the card's top padding. */
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 8px !important;
    border: 0 !important;
    border-right: 1px solid #e3e3e3 !important;
    border-bottom: 1px solid #e3e3e3 !important;
    box-sizing: border-box !important;
    background: #dcdcdc !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight:400 !important;
    line-height: 1.18 !important;
    text-decoration: none !important;
    text-transform: none !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service:nth-child(2n) {
    padding-right: 20px !important;
    padding-left: 12px !important;
    border-right: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service::before {
    display: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service::after {
    content: "\2192" !important;
    position: static !important;
    display: inline !important;
    flex: 0 0 auto !important;
    color: #ff5c17 !important;
    font-family: "Space Mono", monospace !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service > span {
    position: static !important;
    left: auto !important;
    top: auto !important;
    display: inline !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    color: inherit !important;
    font: inherit !important;
    white-space: normal !important;
    opacity: 1 !important;
    transform: none !important;
  }

  /* The mobile card already has its single arrow on the link itself. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service > span::before,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service > span::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active {
    background: #6a6a6a !important;
    color: #dcdcdc !important;
    font-weight:800 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active > span {
    font-weight:800 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active::after {
    color: #dcdcdc !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service:focus-visible {
    z-index: 2 !important;
    outline: 2px solid #ff5c17 !important;
    outline-offset: -2px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__image {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 680px !important;
    height: clamp(220px, 66vw, 320px) !important;
    margin: 42px auto 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    opacity: 1 !important;
    transform: none !important;
  }

  /* Original service introduction; the text is not copied into a mobile shell. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro#tt-svc-intro.tt-svc-intro {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 30px 20px 58px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    background: #dcdcdc !important;
    color: #333333 !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__grid,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__shot,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__tags {
    display: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__title,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__col,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__sub,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__p {
    position: static !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    width: auto !important;
    max-width: 680px !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__title {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    color: #333333 !important;
    font-family: "Space Mono", monospace !important;
    font-size: clamp(27px, 8.2vw, 44px) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: -.045em !important;
    text-transform: uppercase !important;
  }

  /* Retain the semantic H1 for search and assistive technology, without
     rendering a second service name in the compact layout. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 0 !important;
    max-height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__sub {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: var(--tt-type-subtitle) !important;
    font-weight:800 !important;
    line-height: 1.32 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__p {
    margin-top: 14px !important;
    margin-bottom: 0 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__sub + .tt-svc-intro__p {
    margin-top: 10px !important;
  }

  /* Narrative source sections. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what,
    #tt-ut-why,
    #tt-ut-process,
    #tt-ut-applications,
    #tt-ut-related,
    #tt-vt-receive,
    #tt-vt-choose,
    #tt-bp-faq
  ) {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 52px 20px 58px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    border-top: 1px solid #e3e3e3 !important;
    background: #dcdcdc !important;
    color: #333333 !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what#tt-ut-what,
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related,
    #tt-vt-receive#tt-vt-receive,
    #tt-vt-choose#tt-vt-choose,
    #tt-bp-faq#tt-bp-faq
  ) :is(
    .tt-ut-what__label,
    .tt-ut-why__title,
    .tt-ut-process__title,
    .tt-ut-applications__title,
    .tt-ut-related__title,
    .tt-vt-receive__title,
    .tt-vt-choose__label,
    .tt-bp-faq__title
  ) {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what,
    #tt-ut-why,
    #tt-ut-process,
    #tt-ut-applications,
    #tt-ut-related,
    #tt-vt-receive,
    #tt-vt-choose,
    #tt-bp-faq
  ) * {
    box-sizing: border-box;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what,
    #tt-ut-why,
    #tt-ut-process,
    #tt-ut-applications,
    #tt-ut-related,
    #tt-vt-receive,
    #tt-vt-choose,
    #tt-bp-faq
  ) :is(
    .tt-ut-what__label,
    .tt-ut-what__copy,
    .tt-ut-why__title,
    .tt-ut-why__copies,
    .tt-ut-why__copy,
    .tt-ut-process__title,
    .tt-ut-process__list,
    .tt-ut-process__item,
    .tt-ut-applications__title,
    .tt-ut-applications__copies,
    .tt-ut-applications__copy,
    .tt-ut-related__title,
    .tt-ut-related__copies,
    .tt-ut-related__copy,
    .tt-vt-receive__title,
    .tt-vt-receive__col,
    .tt-vt-receive__caption,
    .tt-vt-receive__list,
    .tt-vt-choose__label,
    .tt-vt-choose__copy,
    .tt-bp-faq__title,
    .tt-bp-faq__list,
    .tt-bp-faq__row,
    .tt-bp-faq__btn,
    .tt-bp-faq__a
  ) {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    max-width: 680px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what,
    #tt-ut-why,
    #tt-ut-process,
    #tt-ut-applications,
    #tt-ut-related,
    #tt-vt-receive,
    #tt-vt-choose,
    #tt-bp-faq
  ) :is(
    .tt-ut-what__grid,
    .tt-ut-what__tag,
    .tt-ut-why__grid,
    .tt-ut-why__line,
    .tt-ut-why__button,
    .tt-ut-process__grid,
    .tt-ut-applications__grid,
    .tt-ut-applications__line,
    .tt-ut-related__grid,
    .tt-ut-related__line,
    .tt-vt-receive__grid,
    .tt-vt-choose__grid,
    .tt-vt-choose__tags,
    .tt-bp-faq__grid,
    .tt-bp-faq__line,
    .tt-bp-faq__rule
  ) {
    display: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-what__label,
    .tt-ut-why__title,
    .tt-ut-process__title,
    .tt-ut-applications__title,
    .tt-ut-related__title,
    .tt-vt-receive__title,
    .tt-vt-choose__label,
    .tt-bp-faq__title
  ) {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 17px !important;
    font-weight:800 !important;
    line-height: 1.32 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: none !important;
    white-space: normal !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-what__copy,
    .tt-ut-why__copies,
    .tt-ut-process__list,
    .tt-ut-applications__copies,
    .tt-ut-related__copies,
    .tt-vt-receive__col,
    .tt-vt-choose__copy,
    .tt-bp-faq__list
  ) {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy
  ) {
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy
  ) + :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy
  ) {
    margin-top: 30px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy,
    .tt-vt-choose__copy
  ) :is(h3, h4) {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 10px !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight:800 !important;
    line-height: 1.3 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-what__copy,
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy,
    .tt-vt-receive__col,
    .tt-vt-choose__copy
  ) :is(p, ul, ol) {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    .tt-ut-what__copy,
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy,
    .tt-vt-receive__col,
    .tt-vt-choose__copy
  ) p + p {
    margin-top: 14px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__caption {
    display: block !important;
    margin-top: 30px !important;
    margin-bottom: 14px !important;
    color: #6a6a6a !important;
    font-family: "DotGothic16", sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: .05em !important;
    text-transform: lowercase !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__list {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__list li {
    position: static !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: baseline !important;
    border: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__list li + li {
    margin-top: 10px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__num,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__item {
    position: static !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__num {
    color: #6a6a6a !important;
    font-family: "DotGothic16", sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-receive .tt-vt-receive__item {
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight:800 !important;
    line-height: 1.35 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-choose :is(.tt-vt-choose__media, figure),
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-ut-related :is(figure, img) {
    position: static !important;
    display: block !important;
    width: 120px !important;
    height: 160px !important;
    margin: -14px auto 30px !important;
    background-position: center !important;
    background-size: cover !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__row {
    display: block !important;
    border: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__row + .tt-bp-faq__row {
    margin-top: 10px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__btn {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
    grid-template-rows: auto auto !important;
    column-gap: 10px !important;
    row-gap: 8px !important;
    width: 100% !important;
    padding: 18px 20px 18px 0 !important;
    align-items: center !important;
    border: 0 !important;
    background: transparent !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 15px !important;
    font-weight:800 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    cursor: pointer !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__btn > span,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__btn svg {
    position: static !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__num {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__q {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  /* Number, text and toggle are independent grid columns on mobile. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__ico {
    position: relative !important;
    right: auto !important;
    top: auto !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin-top: 0 !important;
    display: grid !important;
    place-items: center !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: end !important;
    /* Optically aligns the symbol with the first question line. */
    transform: translateY(-5.25px) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__ico .tt-bp-faq__svg {
    position: absolute !important;
    left: 13px !important;
    top: 13px !important;
    width: 18px !important;
    height: 18px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__ico .tt-bp-faq__svg path {
    stroke-width: 1.5 !important;
    vector-effect: non-scaling-stroke !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__a {
    display: none !important;
    padding: 0 34px 20px 44px !important;
    color: #333333 !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-bp-faq .tt-bp-faq__row.is-open .tt-bp-faq__a {
    display: block !important;
  }
  /* Final high-specificity reset for legacy component rules embedded later in
     the HTML. The duplicated IDs only increase cascade priority; they still
     address the same source sections. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what#tt-ut-what,
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related,
    #tt-vt-receive#tt-vt-receive,
    #tt-vt-choose#tt-vt-choose,
    #tt-bp-faq#tt-bp-faq
  ) {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 52px 20px 58px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    border-top: 1px solid #e3e3e3 !important;
    background: #dcdcdc !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what#tt-ut-what,
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related,
    #tt-vt-receive#tt-vt-receive,
    #tt-vt-choose#tt-vt-choose,
    #tt-bp-faq#tt-bp-faq
  ) :is(
    .tt-ut-what__label,
    .tt-ut-what__copy,
    .tt-ut-why__title,
    .tt-ut-why__copies,
    .tt-ut-why__copy,
    .tt-ut-process__title,
    .tt-ut-process__list,
    .tt-ut-process__item,
    .tt-ut-applications__title,
    .tt-ut-applications__copies,
    .tt-ut-applications__copy,
    .tt-ut-related__title,
    .tt-ut-related__copies,
    .tt-ut-related__copy,
    .tt-vt-receive__title,
    .tt-vt-receive__col,
    .tt-vt-receive__caption,
    .tt-vt-receive__list,
    .tt-vt-choose__label,
    .tt-vt-choose__copy,
    .tt-bp-faq__title,
    .tt-bp-faq__list,
    .tt-bp-faq__row
  ) {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 680px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    grid-template-columns: none !important;
    column-count: auto !important;
    opacity: 1 !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what#tt-ut-what,
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related,
    #tt-vt-receive#tt-vt-receive,
    #tt-vt-choose#tt-vt-choose,
    #tt-bp-faq#tt-bp-faq
  ) :is(
    .tt-ut-what__label,
    .tt-ut-why__title,
    .tt-ut-process__title,
    .tt-ut-applications__title,
    .tt-ut-related__title,
    .tt-vt-receive__title,
    .tt-vt-choose__label,
    .tt-bp-faq__title
  ) {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related
  ) :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy
  ) + :is(
    .tt-ut-why__copy,
    .tt-ut-process__item,
    .tt-ut-applications__copy,
    .tt-ut-related__copy
  ) {
    margin-top: 30px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what#tt-ut-what,
    #tt-ut-why#tt-ut-why,
    #tt-ut-process#tt-ut-process,
    #tt-ut-applications#tt-ut-applications,
    #tt-ut-related#tt-ut-related,
    #tt-vt-receive#tt-vt-receive,
    #tt-vt-choose#tt-vt-choose
  ) :is(p, h3, h4, ul, ol) {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    transform: none !important;
  }
}

@media (max-width: 359px) {
  html body #tt-services-page-hero#tt-services-page-hero.tt-services-page-hero {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__services {
    margin-right: -16px !important;
    margin-left: -16px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service {
    min-height: 72px !important;
    padding-left: 16px !important;
    font-size: 14px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service:nth-child(2n) {
    padding-right: 16px !important;
  }
}

/* Align the final Visual NDT paragraph with the second paragraph. */
html body #tt-ut-what.tt-ut-what .tt-ut-what__copy p:nth-child(3) {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

/* The shared footer breakpoints in tokens.css are expressed for the legacy
   1200px canvas, where the whole section is scaled down on narrow screens.
   Service pages switch to a native-width DOM below 1200px, so those enlarged
   values (45px type and 60px cell gutters on phones) must be normalised here. */
@media (max-width: 1199.98px) {
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple {
    height: auto !important;
    min-height: 340px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns {
    grid-template-rows: repeat(2, minmax(130px, 1fr)) !important;
    min-height: 340px !important;
    padding: 40px 20px !important;
    font-size: clamp(14px, 1.35vw, 15px) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col a,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__privacy,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__privacy a,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__privacy button {
    font-size: clamp(14px, 1.35vw, 15px) !important;
    line-height: 1.4 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__label {
    font-size: 14px !important;
    line-height: 1.25 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(odd) {
    padding: 0 28px 24px 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(even) {
    padding: 0 0 24px 24px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(n + 3) {
    padding-top: 36px !important;
    padding-bottom: 0 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(3),
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(3) a,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__columns > .tt-footer-simple__col:nth-child(3) .tt-footer-simple__label {
    line-height: 1.4 !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-footer-simple.tt-footer-simple .tt-footer-simple__mail {
    width: min(100%, 150px) !important;
    height: 24px !important;
    font-size: clamp(14px, 1.35vw, 15px) !important;
  }
}

@media (min-width: 1200px) {
  html body .tt-stage .tt-stage__inner #tt-ut-applications.tt-ut-applications
    .tt-ut-applications__title[data-text="Where industrial mechanical services are used"] {
    width: 570px !important;
    white-space: nowrap !important;
  }
}

/* Keep all service-page content headings on one shared type size. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
  #tt-ut-what,
  #tt-ut-why,
  #tt-ut-process,
  #tt-ut-applications,
  #tt-ut-related,
  #tt-vt-receive,
  #tt-vt-choose,
  #tt-bp-faq
) :is(h2, h3) {
  font-size: 12px !important;
}

/* The service name is a Manrope heading; the display face is reserved for [SERVICES]. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__title {
  font-family: "Manrope", sans-serif !important;
  font-weight: 800 !important;
}

/* Service menu: Manrope uses only regular and black weights. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service,
html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service > span {
  font-size: 12px !important;
  font-weight: 400 !important;
}

html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active,
html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active > span {
  font-size: 12px !important;
  font-weight: 800 !important;
}

/* Keep service-menu type readable without crowding responsive cards. */
@media (max-width: 1199.98px) {
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service > span,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__service.is-active > span {
    font-size: 14px !important;
  }

  /* Every visible Manrope heading in the compact service layout meets the
     14 px minimum, while desktop typography remains unchanged. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what,
    #tt-ut-why,
    #tt-ut-process,
    #tt-ut-applications,
    #tt-ut-related,
    #tt-vt-receive,
    #tt-vt-choose,
    #tt-bp-faq
  ) :is(h2, h3) {
    font-size: 14px !important;
  }

  /* The request section is shared by the service templates but its original
     rules live inside individual pages. This selector keeps its Manrope copy
     on the same accessible minimum as the service content. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-request-block :is(
    .tt-request-privacy,
    .tt-request-state,
    .tt-request-kits__empty,
    .tt-request-kits__list li
  ) {
    font-size: 14px !important;
  }
}

/* Service-section subtitles. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
  #tt-ut-what,
  #tt-ut-why,
  #tt-ut-process,
  #tt-ut-applications,
  #tt-ut-related,
  #tt-vt-receive,
  #tt-vt-choose,
  #tt-bp-faq
) :is(
  .tt-ut-what__label,
  .tt-ut-why__title,
  .tt-ut-process__title,
  .tt-ut-applications__title,
  .tt-ut-related__title,
  .tt-vt-receive__title,
  .tt-vt-choose__title,
  .tt-vt-choose__label,
  .tt-bp-faq__title
) {
  font-size: 14px !important;
  font-weight: 800 !important;
  pointer-events: auto !important;
}

/* The centred “Why choose…” headings keep their own absolute layout. */
html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-vt-choose .tt-vt-choose__label {
  position: absolute !important;
  left: 50% !important;
  margin: 0 !important;
  text-align: center !important;
  transform: translateX(-50%) !important;
  z-index: 5 !important;
}

@media (min-width: 1200px) {
  /* FAQ question text stays legible in the desktop composition. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner
  #tt-bp-faq .tt-bp-faq__q {
    font-size: 14px !important;
  }

  /* Long service-section headings use the shared content-column width. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-what .tt-ut-what__label,
    #tt-ut-why .tt-ut-why__title,
    #tt-ut-process .tt-ut-process__title,
    #tt-ut-applications .tt-ut-applications__title,
    #tt-ut-related .tt-ut-related__title
  ) {
    width: 570px !important;
    white-space: nowrap !important;
  }

  /* Keep every “What is…” heading in the standard title cell, even on
     legacy pages that supplied a page-specific offset. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-ut-what#tt-ut-what .tt-ut-what__label {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    width: 570px !important;
    margin: 0 0 20px !important;
    white-space: nowrap !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-ut-process .tt-ut-process__item h3 {
    white-space: nowrap !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-ut-applications .tt-ut-applications__title {
    width: 570px !important;
    white-space: nowrap !important;
  }
}

/* Native service-page typography. These values deliberately live only below
   the desktop artboard breakpoint; the 1200px composition remains untouched. */
@media (max-width: 1199.98px) {
  html body.tt-service-single-dom .tt-stage .tt-stage__inner {
    --fs-display-responsive: clamp(40px, calc(4.7619vw + 22.8571px), 80px);
    --fs-page-responsive: clamp(27px, 8.2vw, 44px);
    --fs-section-responsive: clamp(16px, 2.2vw, 22px);
    --fs-subheading-responsive: 16px;
    --fs-lead-responsive: clamp(18px, 2.4vw, 24px);
    --fs-body-responsive: 14px;
    --fs-ui-responsive: 12px;
    --fs-meta-responsive: 12px;
    --fs-input-responsive: 16px;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__sub {
    font-size: var(--fs-section-responsive) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner :is(
    #tt-ut-what, #tt-ut-why, #tt-ut-process, #tt-ut-applications,
    #tt-ut-related, #tt-vt-receive, #tt-vt-choose, #tt-bp-faq
  ) :is(.tt-ut-what__label, .tt-ut-why__title, .tt-ut-process__title,
      .tt-ut-applications__title, .tt-ut-related__title, .tt-vt-receive__title,
      .tt-vt-choose__title, .tt-vt-choose__label, .tt-bp-faq__title) {
    font-size: var(--fs-section-responsive) !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner
  #tt-bp-faq .tt-bp-faq__q {
    font-size: var(--fs-section-responsive) !important;
  }

  /* The desktop grid resets paragraph margins with an ID selector; restore
     the native vertical rhythm when the What-is block becomes one column. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner
  #tt-ut-what#tt-ut-what .tt-ut-what__copy p + p {
    margin-top: 14px !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner
  #tt-vt-receive#tt-vt-receive .tt-vt-receive__caption {
    margin-top: 30px !important;
    margin-bottom: 24px !important;
  }

  /* On native-width layouts the centred heading must participate in flow,
     otherwise its desktop-width box can overflow compact screens. */
  html body.tt-service-single-dom .tt-stage .tt-stage__inner.tt-stage__inner
  #tt-vt-choose#tt-vt-choose .tt-vt-choose__label {
    position: static !important;
    left: auto !important;
    width: 100% !important;
    max-width: 680px !important;
    margin: 0 auto 24px !important;
    text-align: center !important;
    transform: none !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-svc-intro .tt-svc-intro__p, #tt-ut-what .tt-ut-what__copy,
    #tt-ut-why .tt-ut-why__copies, #tt-ut-process .tt-ut-process__list,
    #tt-ut-applications .tt-ut-applications__copies, #tt-ut-related .tt-ut-related__copies,
    #tt-vt-receive .tt-vt-receive__col, #tt-vt-choose .tt-vt-choose__copy,
    #tt-bp-faq .tt-bp-faq__a
  ) :is(p, li),
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-svc-intro .tt-svc-intro__p {
    font-size: var(--fs-body-responsive) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-ut-why, #tt-ut-process, #tt-ut-applications, #tt-ut-related, #tt-vt-choose
  ) :is(h3, h4) {
    font-size: var(--fs-subheading-responsive) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(
    #tt-vt-receive .tt-vt-receive__caption, #tt-vt-receive .tt-vt-receive__num
  ) {
    font-size: var(--fs-meta-responsive) !important;
  }

  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-request-block :is(input, textarea, select) {
    font-size: var(--fs-input-responsive) !important;
  }
}

@media (max-width: 1199.98px) {
  html body.tt-service-single-dom .tt-stage .tt-stage__inner :is(h1, h2, h3, h4) {
    box-sizing: border-box !important;
    max-width: calc(100vw - 40px) !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__bracket,
  html body.tt-service-single-dom .tt-stage .tt-stage__inner #tt-services-page-hero#tt-services-page-hero .tt-services-page-hero__word {
    opacity: 1 !important;
    clip-path: none !important;
    transform: none !important;
    animation: none !important;
  }
}
