/* ClinicaMOB v260 — final typography hierarchy standard.
   Desktop-only type normalization. Mobile remains governed by existing responsive rules. */
@media (min-width: 901px){
  /* Global page-title ceiling: prevents legacy 64–74px presentation-scale headings. */
  body.cm-fixed-target.cm-v255-final main h1{
    font-size:clamp(2.35rem,2.85vw,3.05rem)!important;
    line-height:1.03!important;
    letter-spacing:-.018em!important;
  }

  /* Homepage retains the strongest headline, but stays within website proportions. */
  body.cm-fixed-home.cm-v255-final main h1,
  body.cm-fixed-home.cm-v255-final .cm-hero-copy h1{
    font-size:clamp(2.65rem,3.25vw,3.35rem)!important;
    line-height:.99!important;
  }

  /* Search hero: direct, compact, form-forward. */
  body.cm-v219-search-page.cm-v255-final main h1,
  body.cm-v219-search-page.cm-v255-final .cm-v219-search-hero h1{
    font-size:clamp(2.2rem,2.65vw,2.75rem)!important;
    line-height:1.01!important;
  }

  /* Market/specialty and resource families: consistent interior hierarchy. */
  body.cm-v219-market-page.cm-v255-final main h1,
  body.cm-v219-specialty-page.cm-v255-final main h1,
  body.cm-v219-resource-page.cm-v255-final main h1,
  body.cm-v219-hospital-page.cm-v255-final main h1,
  body.cm-v219-general.cm-v255-final main .page-hero h1,
  body.cm-v219-general.cm-v255-final main .soft h1{
    font-size:clamp(2.25rem,2.65vw,2.75rem)!important;
    line-height:1.02!important;
  }

  /* Paid-search landing pages need impact without billboard-scale type. */
  body.cm-google-lp.cm-v255-final main h1{
    font-size:clamp(2.35rem,2.85vw,3rem)!important;
    line-height:1.01!important;
  }

  /* Section hierarchy. */
  body.cm-fixed-target.cm-v255-final main h2{
    font-size:clamp(1.45rem,1.65vw,1.85rem)!important;
    line-height:1.12!important;
    letter-spacing:-.012em!important;
  }
  body.cm-fixed-target.cm-v255-final main h3{
    font-size:clamp(1.05rem,1.1vw,1.22rem)!important;
    line-height:1.2!important;
  }

  /* About/profile headline is supportive, not a second hero. */
  body.cm-v219-general.cm-v255-final main .cm-about-copy h2,
  body.cm-v219-general.cm-v255-final main .cm-v219-profile-copy h2,
  body.cm-v219-general.cm-v255-final main .cm-profile-copy h2{
    font-size:clamp(1.45rem,1.6vw,1.8rem)!important;
    line-height:1.12!important;
  }

  /* Comfortable reading size stays stable; small utility text remains intentionally small. */
  body.cm-fixed-target.cm-v255-final main p:not(.eyebrow):not(.kicker):not(.cm-micro):not(.small),
  body.cm-fixed-target.cm-v255-final main li{
    font-size:clamp(.94rem,.84vw,1rem);
    line-height:1.5;
  }

  /* Buttons/CTAs should be compact but never tiny. */
  body.cm-fixed-target.cm-v255-final main button,
  body.cm-fixed-target.cm-v255-final main .cta,
  body.cm-fixed-target.cm-v255-final main a.button,
  body.cm-fixed-target.cm-v255-final main .btn{
    font-size:.88rem!important;
    line-height:1.15!important;
  }

  /* Eyebrows and labels: consistent professional micro-hierarchy. */
  body.cm-fixed-target.cm-v255-final main .eyebrow,
  body.cm-fixed-target.cm-v255-final main .kicker,
  body.cm-fixed-target.cm-v255-final main label{
    font-size:.73rem!important;
    line-height:1.25!important;
    letter-spacing:.05em;
  }
}
@media (min-width: 901px){
  /* High-specificity final hierarchy lock: wins over legacy family overrides. */
  body.cm-fixed-target.cm-v255-final.cm-fixed-interior main h2{
    font-size:clamp(1.45rem,1.6vw,1.85rem)!important;
    line-height:1.12!important;
  }
  body.cm-fixed-target.cm-v255-final.cm-fixed-interior main h3{
    font-size:clamp(1.05rem,1.08vw,1.22rem)!important;
    line-height:1.2!important;
  }
  body.cm-fixed-target.cm-v255-final.cm-fixed-home main h2{
    font-size:clamp(1.45rem,1.65vw,1.9rem)!important;
    line-height:1.12!important;
  }
}
