/* Site-wide typography normalization.
   "Cormorant Garamond" is reserved for display headings; Outfit carries readable copy. */
:root{
  --sh-copy:#55534f;
  --sh-heading:#30373b;
  --sh-copy-size:17px;
  --sh-copy-leading:1.75;
}

body,
button,
input,
select,
textarea{
  font-family:Outfit,Arial,sans-serif;
}

h1,h2,h3,
.article-heading h1,
.article-body>h2,
.article-body>h3{
  font-family:"Cormorant Garamond",Georgia,serif;
}

/* Standard editorial copy on light page surfaces. */
.service-page :where(.editorial-intro,.condition-observations,.condition-components,.referral-grid,.related-condition,.approach-grid,.training-options) :where(p:not(.eyebrow),li),
.about-page :where(.profile-copy,.about-approach,.about-principles) :where(p:not(.eyebrow),li),
.clinics-page main :where(p:not(.eyebrow),li),
.faq-page main :where(p:not(.eyebrow),li),
.insight-article-page .article-body>p,
.insight-article-page .article-body>ul,
.insight-article-page .article-body>ol,
.insight-article-page .article-body>ul li,
.insight-article-page .article-body>ol li,
.legal-content :where(p:not(.legal-updated),li){
  color:var(--sh-copy);
  font-family:Outfit,Arial,sans-serif;
  font-size:var(--sh-copy-size);
  font-weight:400;
  line-height:var(--sh-copy-leading);
}

/* Lists formerly inherited the darker heading color on service pages. */
.service-page :where(.option-grid,.virtual-option-grid,.condition-observations,.condition-components,.approach-grid) li{
  color:var(--sh-copy);
}

/* Preserve intentionally larger "Cormorant Garamond" lead copy. */
.service-page .editorial-intro .lead{
  color:var(--sh-heading);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:38px;
  line-height:1.2;
}

/* Dark photographic and closing bands need their designed light contrast. */
.service-page :where(.service-hero-copy,.image-statement) p:not(.eyebrow){
  color:rgba(246,242,235,.82);
}
.service-page .image-statement .statement{
  color:#f6f2eb;
  font-family:"Cormorant Garamond",Georgia,serif;
}

/* Keep small supporting text deliberately subordinate, but on-brand. */
:where(figcaption,.article-meta,.caption,.form-field small,.form-note){
  font-family:Outfit,Arial,sans-serif;
}

/* Article copy must not inherit bold or dark color overrides from imported markup. */
.insight-article-page .article-body :where(h2,h3,h4){
  font-family:"Cormorant Garamond",Georgia,serif!important;
}
.insight-article-page .article-body>p,
.insight-article-page .article-body>ul,
.insight-article-page .article-body>ol,
.insight-article-page .article-body>ul li,
.insight-article-page .article-body>ol li{
  color:#55534f;
  font-family:Outfit,Arial,sans-serif;
  font-weight:300;
}
.insight-article-page .article-body :where(p,li),
.insight-article-page .article-body :where(p,li) *,
.insight-article-page .article-body figcaption,
.insight-article-page .article-body figcaption *{
  font-family:Outfit,Arial,sans-serif!important;
}
.insight-article-page .article-body strong,
.insight-article-page .article-body strong em{
  color:#55534f!important;
  font-family:Outfit,Arial,sans-serif!important;
  font-style:normal;
  font-weight:500!important;
}
.insight-article-page .article-body :where(p,li,em,strong) a,
.insight-article-page .article-body :where(p,li,em,strong) a strong,
.insight-article-page .article-body :where(p,li,em,strong) a strong em,
.insight-article-page .article-body :where(p,li,em) strong a{
  color:#705a30!important;
  font-family:Outfit,Arial,sans-serif!important;
  font-style:normal;
  font-weight:400!important;
  text-decoration-color:#b2905c;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}

@media(max-width:600px){
  .service-page .editorial-intro .lead{font-size:32px}
}
