/* Shared inner-page banner dimensions; the homepage slider is excluded. */
html body .tt-info-hero,
html body .tt-contact-hero,
html body .tt-category-hero,
html body .tt-cat-hero,
html body .tt-search-hero,
html body .tt-blog-single-hero {
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 0 0 calc(50% - 50vw) !important;
  min-height: 490px !important;
  height: auto !important;
  padding: 58px 0 !important;
  display: flex;
  align-items: center !important;
}

html body .tt-cat-hero-copy {
  padding-top: 0;
  padding-bottom: 0;
}

/* Compact the manufacturing ticker without changing its animation. */
html body .tt-manufacturing-page .tt-info-strip-track span {
  min-height: 42px;
  padding: 0 28px;
}

@media (max-width: 980px) {
  html body .tt-info-hero,
  html body .tt-contact-hero,
  html body .tt-category-hero,
  html body .tt-cat-hero,
  html body .tt-search-hero,
  html body .tt-blog-single-hero {
    min-height: 0 !important;
    padding: 42px 0 !important;
  }
}

@media (max-width: 560px) {
  html body .tt-info-hero,
  html body .tt-contact-hero,
  html body .tt-category-hero,
  html body .tt-cat-hero,
  html body .tt-search-hero,
  html body .tt-blog-single-hero {
    padding: 24px 0 22px !important;
  }
  html body .tt-manufacturing-page .tt-info-strip-track span {
    min-height: 36px;
    padding: 0 20px;
  }
}

/* Inner-page hero content has vertical padding below the header. */
@layer tt-card-layout {
  :is(#tt-static-motion, body) #content :is(.tt-info-hero, .tt-contact-hero, .tt-category-hero, .tt-cat-hero, .tt-search-hero, .tt-blog-single-hero):not(#tt-no-banner-padding) {
    padding: var(--tt-inner-hero-padding, var(--tt-section-spacing, 50px) 0) !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    min-height: 490px !important;
  }
  @media (max-width: 980px) {
    :is(#tt-static-motion, body) #content :is(.tt-info-hero, .tt-contact-hero, .tt-category-hero, .tt-cat-hero, .tt-search-hero, .tt-blog-single-hero):not(#tt-no-banner-padding) {
      min-height: 320px !important;
    }
  }
}
/* Hero titles use natural spacing on landing and inner pages. */
@layer tt-card-layout {
  html body :is(.tt-hero-slider, .tt-info-hero, .tt-contact-hero, .tt-category-hero, .tt-cat-hero, .tt-search-hero, .tt-blog-single-hero) :is(h1, h2, h3),
  html body :is(.tt-hero-slider, .tt-info-hero, .tt-contact-hero, .tt-category-hero, .tt-cat-hero, .tt-search-hero, .tt-blog-single-hero) :is(h1, h2, h3) * {
    letter-spacing: 0 !important;
  }
}