@charset "UTF-8";

/*
  Shared content section heading system.
  This file manages the eyebrow + large section title text rules and
  the standard spacing from the title to the first following content block.
  Alignment, max-width, spacing around the block, and page layout stay in page CSS.
*/

:root {
  --site-section-eyebrow-color: #24a65a;
  --site-section-eyebrow-size: var(--site-banner-eyebrow-size, 0.78rem);
  --site-section-eyebrow-weight: 800;
  --site-section-eyebrow-line-height: 1;
  --site-section-eyebrow-letter-spacing: normal;
  --site-section-eyebrow-gap: 14px;
  --site-section-title-size: clamp(34px, 4vw, 54px);
  --site-section-title-weight: 800;
  --site-section-title-line-height: 1.04;
  --site-section-title-letter-spacing: -0.045em;
  --site-section-title-bottom-gap: 34px;
}

:is(
  .home-section-kicker,
  .about-section-kicker,
  .products-section-kicker,
  .pl-section-kicker,
  .product-section-eyebrow,
  .support-section-kicker,
  .support-warranty-register__eyebrow,
  .search-section-kicker,
  .status-section-kicker,
  .trial-section-kicker,
  .contact-section-kicker,
  .ti-section-head .ti-eyebrow,
  .nd-section-head .nd-kicker
) {
  display: block;
  width: auto;
  min-height: 0;
  margin: 0 0 var(--site-section-eyebrow-gap);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--site-section-eyebrow-color);
  font-size: var(--site-section-eyebrow-size);
  font-weight: var(--site-section-eyebrow-weight);
  line-height: var(--site-section-eyebrow-line-height);
  letter-spacing: var(--site-section-eyebrow-letter-spacing);
  text-transform: uppercase;
}

:is(
  .home-section-title,
  .about-section-head h2,
  .about-cta h2,
  .products-section-title,
  .pl-section-title,
  .product-section-title,
  .support-section-head h2,
  .support-section-title,
  .support-warranty-register__title,
  .search-section-title,
  .status-section-title,
  .trial-section-title,
  .contact-section-head h2,
  .contact-message__intro h2,
  .contact-service__panel h2,
  .ti-section-head h2,
  .nd-section-head h2
) {
  margin-top: 0;
  margin-bottom: var(--site-section-title-bottom-gap);
  color: currentColor;
  font-size: var(--site-section-title-size);
  font-weight: var(--site-section-title-weight);
  line-height: var(--site-section-title-line-height);
  letter-spacing: var(--site-section-title-letter-spacing);
}

:is(
  .home-section-copy,
  .about-section-head p:not(.about-section-kicker),
  .about-cta p,
  .products-section-lead,
  .pl-section-lead,
  .support-section-head p,
  .support-warranty-register__body,
  .search-section-lead,
  .status-section-lead,
  .trial-section-lead,
  .contact-section-head p:not(.contact-section-kicker),
  .contact-message__intro p:not(.contact-section-kicker),
  .contact-service__panel p:not(.contact-section-kicker)
) {
  margin-top: 0;
}

@media (max-width: 768px) {
  :root {
    --site-section-eyebrow-size: 14px;
    --site-section-title-size: clamp(32px, 10vw, 52px);
    --site-section-title-bottom-gap: 28px;
  }
}
