/* Shared editorial type scale. Keep utility labels, prices and controls distinct. */
:root {
  --ugh-type-h1: clamp(42px, 4vw, 52px);
  --ugh-type-h2: clamp(32px, 3.2vw, 40px);
  --ugh-type-h3: 21px;
  --ugh-type-body: 16px;
  --ugh-type-heading-color: #30352e;
  --ugh-type-body-color: #52564d;
}

main > #wrap h1,
main > #wrap #product_detail #product_details .product_display_name {
  font-size: var(--ugh-type-h1) !important;
  line-height: 1.1 !important;
  letter-spacing: -.025em !important;
  font-weight: 600 !important;
  text-transform: none !important;
  color: var(--ugh-type-heading-color) !important;
}

main > #wrap h2 {
  font-size: var(--ugh-type-h2) !important;
  line-height: 1.18 !important;
  letter-spacing: -.018em !important;
  font-weight: 600 !important;
  text-transform: none !important;
  color: var(--ugh-type-heading-color) !important;
}

main > #wrap h3 {
  font-size: var(--ugh-type-h3) !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  text-transform: none !important;
  color: var(--ugh-type-heading-color) !important;
}

/* Price is a commerce component, not a section heading. */
main > #wrap #product_detail .product_price h3 {
  font-size: inherit !important;
}

/* Content paragraphs share one size; captions, overlines and controls stay compact. */
main > #wrap.ugh-home p:not(.ugh-home-eyebrow):not(.ugh-home-note),
main > #wrap.ugh-home .ugh-home-product-text,
main > #wrap.ugh-rt p:not(.rt-eyebrow):not(.rt-hero-note):not(.rt-model-hint):not(.rt-small):not(.rt-model-error),
main > #wrap.o_wsale_products_page #category_header p,
main > #wrap:not(.ugh-home):not(.ugh-rt):not(.o_wsale_products_page):not(.js_sale) > section p,
main > #wrap #product_detail #product_details .sale_description,
main > #wrap #product_detail #product_details .js_main_product > div > p {
  font-size: var(--ugh-type-body) !important;
  line-height: 1.7 !important;
  color: var(--ugh-type-body-color) !important;
}

main > #wrap.ugh-rt .rt-contact ul {
  font-size: var(--ugh-type-body) !important;
  color: var(--ugh-type-body-color) !important;
}

/* Dealer homepage: dynamic category titles are image overlays. */
html[data-website-id="2"] main > #wrap.ugh-dealer-home .s_dynamic_category_item h3,
html[data-website-id="2"] main > #wrap.ugh-dealer-home .s_dynamic_category_item h3 *,
html[data-website-id="2"] main > #wrap.ugh-dealer-home .s_dynamic_category_item [name="category_overlay"] {
  color: #ffffff !important;
}

@media (max-width: 767px) {
  :root {
    --ugh-type-h1: clamp(36px, 8vw, 44px);
    --ugh-type-h2: clamp(28px, 7vw, 36px);
    --ugh-type-h3: 20px;
  }
}
