/* Compact first-screen treatment shared by Products, FAQ and Blog. */
.products-hero {
  padding: 20px 24px 18px;
}

.products-hero h1 {
  font-size: clamp(32px, 3.2vw, 44px);
  letter-spacing: -1.3px;
}

.products-hero > p:not(.eyebrow) {
  margin: 9px auto 0;
  font-size: 14px;
  line-height: 1.45;
}

.products-hero .catalog-link {
  display: none;
}

.catalog-search label,
.catalog-search button {
  height: 48px;
}

.quick-searches {
  margin-top: 10px !important;
}

.catalog {
  padding-top: 20px;
}

.catalog .catalog-intro h2 {
  font-size: clamp(28px, 2.5vw, 36px);
  letter-spacing: -1px;
}

.catalog-toolbar {
  margin-top: 14px;
  margin-bottom: 14px;
}

.catalog-count {
  margin-top: 10px;
}

.faq-hero,
.blog-hero {
  padding: 28px 25px 30px;
}

.faq-hero h1,
.blog-hero h1 {
  font-size: clamp(40px, 4.2vw, 56px);
}

.faq-hero > p:not(.eyebrow),
.blog-hero > p:not(.eyebrow) {
  margin: 12px auto;
  line-height: 1.55;
}

.faq-search,
.blog-search {
  margin-top: 18px;
  padding: 4px;
}

.faq-search input,
.blog-search input {
  padding-block: 8px;
}

.faq-search button,
.blog-search button {
  padding: 9px 17px;
}

@media (max-width: 620px) {
  .products-hero,
  .faq-hero,
  .blog-hero {
    padding: 26px 20px 24px;
  }

  .products-hero h1,
  .faq-hero h1,
  .blog-hero h1 {
    font-size: clamp(30px, 9vw, 40px);
  }
}
