/* E1-11: content headings only. H1 and UI card/widget typography stay independent. */
#content :is(h2, h3):not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) {
  margin: 28px 0 12px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  line-height: 1.4;
  color: #171717;
  white-space: normal;
  overflow-wrap: anywhere;
}
#content h2:not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) { font-size: 24px; }
#content h3:not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) { font-size: 20px; margin-top: 24px; }
/* The CMS contains 14px spans inside H3. Inherit the heading size, not the body size. */
#content :is(h2, h3):not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) :is(span, font, strong, b, em, i, a) {
  font-size: inherit !important;
  line-height: inherit;
}
@media (max-width: 600px) {
  #content :is(h2, h3):not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) { margin: 24px 0 10px; }
  #content h2:not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) { font-size: 22px; }
  #content h3:not(:where(.e1-project-card *, .e1-news-card *, .product-thumb *, .product-layout *, .thumbnail *, .product-price *, .refine-search *, .contacts *, .well *)) { font-size: 18px; margin-top: 20px; }
}
