/* Semantic typography shared by the public pages and visual editor.
   Explicit per-text styles and Customizer choices remain user-controlled. */
:root {
  --eex-type-font: "Barlow", Arial, sans-serif;
  --eex-type-copy: 1.125rem;
  --eex-type-ui: 1rem;
  --eex-type-note: .875rem;
  --eex-type-kicker: .875rem;
  --eex-type-h1: clamp(2.125rem, 4vw, 3.5rem);
  --eex-type-h2: clamp(1.75rem, 3vw, 2.5rem);
  --eex-type-h3: clamp(1.25rem, 2vw, 1.5rem);
}
body .site-main section :is(h1,h2,h3,p,li,label,button,input,select,textarea):not([style*="font-family"]) {
  font-family: var(--eex-type-font);
}
body .site-main section p:not([style*="font-size"]),
body .site-main section li:not([style*="font-size"]) {
  font-size: var(--eex-type-copy);
  line-height: 1.75;
}
body .site-main section h1:not([style*="font-size"]) {
  font-size: var(--eex-type-h1); line-height: 1.15; font-weight: 700;
}
body .site-main section h2:not([style*="font-size"]) {
  font-size: var(--eex-type-h2); line-height: 1.2; font-weight: 700;
}
body .site-main section h3:not([style*="font-size"]) {
  font-size: var(--eex-type-h3); line-height: 1.3; font-weight: 600;
}
/* Cards/UI have their own consistently smaller reading scale. */
body .site-main section :is(.document-card__body,.eex-office-card,.eex-interest-guide__option,.eex-about-philosophy__pillar) :is(p,li):not([style*="font-size"]) {
  font-size: var(--eex-type-ui); line-height: 1.65;
}
body .site-main section :is(.eex-reference-person__header,.eex-legal__section) h3:not([style*="font-size"]) { font-size: var(--eex-type-h3); }
body .site-main section :is(.v2-form-step,.eex-legal__section) h2:not([style*="font-size"]) { font-size: var(--eex-type-h3); line-height: 1.3; }
body .site-main section .eex-precheck-includes h2:not([style*="font-size"]) { font-size: var(--eex-type-copy); }
body .site-main section :is(select,textarea,input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"])):not([style*="font-size"]),
body .site-main section .button:not([style*="font-size"]) { font-size: var(--eex-type-ui); }
body .site-main section label:not([style*="font-size"]),
body .site-main section .v2-form-step p:not([style*="font-size"]),
body .site-main section .eex-reference-person__header p:not([style*="font-size"]),
body .site-main section p:is(.v2-source-note,.eex-about-philosophy__caption):not([style*="font-size"]) {
  font-size: var(--eex-type-note); line-height: 1.6;
}
body .site-main section :is(.eex-reference-kicker,.v2-eyebrow,.eex-about-introduction__kicker,.eex-negotiation__eyebrow,.eex-codeethics__eyebrow):not([style*="font-size"]) {
  font-size: var(--eex-type-kicker); line-height: 1.5;
}
/* Homepage art direction uses more specific legacy selectors. */
body.home .site-main .v2-hero h1:not([style*="font-family"]) { font-family: var(--eex-type-font); }
body.home .site-main .v2-hero h1:not([style*="font-size"]) { font-size: var(--eex-type-h1); line-height: 1.15; }
body.home .site-main :is(.eex-mechanism,.eex-codeethics,.eex-negotiation,.eex-about-intro) :is(p,li):not([style*="font-size"]) { font-size: var(--eex-type-copy); line-height: 1.75; }
body.home .site-main :is(.eex-mechanism,.eex-codeethics,.eex-negotiation,.eex-about-intro) h2:not([style*="font-size"]) { font-size: var(--eex-type-h2); line-height: 1.2; }
body.home .site-main .eex-about-intro .eex-about-intro__inner p:not([style*="font-size"]) { font-size: var(--eex-type-copy); line-height: 1.75; }
body.home .site-main :is(.eex-mechanism__content,.eex-codeethics__content,.eex-negotiation__content) :is(p,li):not([style*="font-size"]) { font-size: var(--eex-type-copy); line-height: 1.75; }
body.home .site-main :is(.eex-mechanism__content,.eex-codeethics__content,.eex-negotiation__content) h2:not([style*="font-size"]) { font-size: var(--eex-type-h2); line-height: 1.2; }
@media (max-width: 760px) {
  :root { --eex-type-copy: 1rem; --eex-type-kicker: .75rem; }
}
