/* One rounded display voice for banner and section titles across every route. */
body:is([data-page="home"],[data-page="why"],[data-page="menu"],[data-page="where"],[data-page="contact"]) :where(h1,h2){
  font-family:"Baloo 2",var(--font-display),sans-serif!important;
  font-style:normal!important;
  font-weight:700!important;
  font-synthesis:none;
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}

body:is([data-page="home"],[data-page="why"],[data-page="menu"],[data-page="where"],[data-page="contact"]) :where(h1,h2) :where(span,strong,em){
  font-family:inherit!important;
}

body:is([data-page="home"],[data-page="why"],[data-page="menu"],[data-page="where"],[data-page="contact"]){
  --heading-on-light:#2b0b35;
  --heading-on-dark:#fffaf8;
  --heading-copy-on-dark:#f1e2eb;
  --heading-accent:#efa69a;
}

/* High-contrast titles on the site's purple campaign surfaces. */
#page-home .snap-hero h1,
#page-home #demo .demo-copy h2,
#page-home [data-home-section="03"] .section-head h2,
#page-home .campus-drop h2,
#page-home [data-home-section="05"] .section-head h2,
#page-home [data-home-section="06"] .section-head h2,
#page-home .home-partner-head h2,
#page-home .final-cta h2,
#page-why .why-hero h1,
#page-why .why-section-head h2,
#page-why .why-impact-creative h2,
#page-why .why-brand-intro h2,
#page-why .why-final h2,
#page-menu .menu-hero h1,
#page-menu .menu-brand-partner__copy h2,
#page-menu .menu-stock-copy h2,
#page-menu .menu-final h2,
#page-where .where-hero h1,
#page-where .where-pattern .where-section-head h2,
#page-where .where-spaces .where-section-head h2,
#page-where .where-planning-copy h2,
#page-where .where-final h2,
#page-contact .contact-hero h1,
#page-contact .contact-next .contact-section-head h2,
#page-contact .contact-final h2{
  color:var(--heading-on-dark)!important;
  text-shadow:0 7px 24px rgba(31,7,35,.2)!important;
}

/* Titles sitting on white or blush cards stay deep plum. */
#page-menu .menu-explorer .menu-section-head h2,
#page-where .where-readiness .where-section-head h2,
#page-contact .contact-form-heading h2{
  color:var(--heading-on-light)!important;
  text-shadow:none!important;
}

/* Accent lines retain the machine artwork's warm peach cue. */
#page-why .why-hero h1 > span,
#page-where .where-hero h1 > span,
#page-contact .contact-hero h1 > span{
  color:var(--heading-accent)!important;
}

/* Conversion panels: readable hierarchy from eyebrow through support copy. */
#page-why .why-final .why-eyebrow,
#page-where .where-final .where-eyebrow,
#page-contact .contact-final .contact-eyebrow,
#page-menu .menu-final .menu-eyebrow{
  color:var(--heading-accent)!important;
}

#page-why .why-final > div > p,
#page-where .where-final > div > p,
#page-contact .contact-final-copy > p,
#page-menu .menu-final p{
  color:var(--heading-copy-on-dark)!important;
}

#page-why .why-final li,
#page-where .where-final li{
  color:var(--heading-on-dark)!important;
}
