:root {

  /* ── Fluid type scale (375px → 1728px) ───────────────────── */
  --text-lg      : clamp(2.500rem, 2.084rem + 1.774vw, 4.000rem);  /* 40px → 64px */
  --text-md      : clamp(1.750rem, 1.542rem + 0.887vw, 2.500rem);  /* 28px → 40px */
  --text-sm      : clamp(1.250rem, 1.042rem + 0.887vw, 2.000rem);  /* 20px → 32px */
  --text-sub-lg  : clamp(1.500rem, 1.431rem + 0.296vw, 1.750rem);  /* 24px → 28px */
  --text-sub-md  : clamp(1.250rem, 1.181rem + 0.296vw, 1.500rem);  /* 20px → 24px */
  --text-sub-sm  : clamp(1.000rem, 0.931rem + 0.296vw, 1.250rem);  /* 16px → 20px */
  --text-body-lg : clamp(1.250rem, 1.181rem + 0.296vw, 1.500rem);  /* 20px → 24px */
  --text-body-md : clamp(1.000rem, 0.931rem + 0.296vw, 1.250rem);  /* 16px → 20px */
  --text-nav-label : clamp(1.000rem, 0.931rem + 0.296vw, 1.250rem);  /* 16px → 20px */

}


h1, h2, h3, h4, h5, h6 { padding-bottom: 0; color: inherit; }


/* ── Font weight ──────────────────────────────────────────── */
/* Update comment after running figma-typography skill with Typekit CSS */
/* Loaded weights: 400, 700 */
.font-thin       { font-weight: 100 !important; }
.font-extralight { font-weight: 200 !important; }
.font-light      { font-weight: 300 !important; }
.font-normal     { font-weight: 400 !important; }
.font-medium     { font-weight: 500 !important; }
.font-semibold   { font-weight: 600 !important; }
.font-bold       { font-weight: 700 !important; }
.font-extrabold  { font-weight: 800 !important; }
.font-black      { font-weight: 900 !important; }

/* ── Line height ──────────────────────────────────────────── */
.leading-none    { line-height: 1; }
.leading-tight   { line-height: 1.1; }
.leading-snug    { line-height: 1.25; }
.leading-normal  { line-height: normal; }
.leading-relaxed { line-height: 1.5; }
.leading-loose   { line-height: 1.75; }

/* ── Type scale ───────────────────────────────────────────── */
/* One utility class per token, each on its own --font-[slug]. */
/* line-height and letter-spacing come from Figma per token;   */
/* override line-height per instance using .leading-* classes. */
.heading-lg { font-size: var(--text-lg); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1.125; }
.heading-lg h1, .heading-lg h2, .heading-lg h3,
.heading-lg h4, .heading-lg h5, .heading-lg h6,
.heading-lg p  { font-size: inherit; font-family: inherit; line-height: inherit; }

.heading-md { font-size: var(--text-md); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1.2; }
.heading-md h1, .heading-md h2, .heading-md h3,
.heading-md h4, .heading-md h5, .heading-md h6,
.heading-md p  { font-size: inherit; font-family: inherit; line-height: inherit; }

.heading-sm { font-size: var(--text-sm); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1; }
.heading-sm h1, .heading-sm h2, .heading-sm h3,
.heading-sm h4, .heading-sm h5, .heading-sm h6,
.heading-sm p  { font-size: inherit; font-family: inherit; line-height: inherit; }

.subheading-lg { font-size: var(--text-sub-lg); font-family: var(--font-mr-eaves-sans); line-height: 1.143; letter-spacing: 0.25em; text-transform: uppercase; }
.subheading-lg p, .subheading-lg li { font-size: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }
.subheading-lg h1, .subheading-lg h2, .subheading-lg h3, .subheading-lg h4, .subheading-lg h5, .subheading-lg h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }   /* headings take the class type too, like .heading-* */

.subheading-md { font-size: var(--text-sub-md); font-family: var(--font-mr-eaves-sans); line-height: 1.167; letter-spacing: 0.25em; text-transform: uppercase; }
.subheading-md p, .subheading-md li { font-size: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }
.subheading-md h1, .subheading-md h2, .subheading-md h3, .subheading-md h4, .subheading-md h5, .subheading-md h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }   /* headings take the class type too, like .heading-* */

.subheading-sm { font-size: var(--text-sub-sm); font-family: var(--font-mr-eaves-sans); line-height: 1.2; letter-spacing: 0.3em; text-transform: uppercase; }
.subheading-sm p, .subheading-sm li { font-size: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }
.subheading-sm h1, .subheading-sm h2, .subheading-sm h3, .subheading-sm h4, .subheading-sm h5, .subheading-sm h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }   /* headings take the class type too, like .heading-* */

.body-lg { font-size: var(--text-body-lg); font-family: var(--font-mr-eaves-sans); line-height: 1.167; }
.body-lg p, .body-lg li { font-size: inherit; font-family: inherit; line-height: inherit; }
/* ── Rich-text lists — take the body-lg line-height (28px desktop) instead of Divi's fixed
   26px from `.et-l--body ul`; the extra class outranks it regardless of load order ── */
.et_pb_module.body-lg :is(ul, ol) { line-height: inherit; }
.body-lg h1, .body-lg h2, .body-lg h3, .body-lg h4, .body-lg h5, .body-lg h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; }   /* headings take the class type too, like .heading-* */

/* ── Lining figures — phone numbers in body copy sit level, matching the buttons ── */
.nums-lining { font-family: var(--font-mr-eaves-xl-sans); }

/* Figma "Body/M Body": Mr Eaves San OT Reg — 16/22 mobile → 20/24 desktop (line-height scales 22px → 24px) */
.body-md { font-size: var(--text-body-md); font-family: var(--font-mr-eaves-sans); line-height: clamp(1.375rem, 1.340rem + 0.148vw, 1.500rem); }
.body-md p, .body-md li { font-size: inherit; font-family: inherit; line-height: inherit; }
.body-md h1, .body-md h2, .body-md h3, .body-md h4, .body-md h5, .body-md h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; }   /* headings take the class type too, like .heading-* */

/* Figma "Desktop/Body/S Body": Mr Eaves San OT Reg Italic 16/20 — fixed 16px at every width */
.body-sm { font-size: 1rem; font-family: var(--font-mr-eaves-sans); line-height: 1.25; font-style: italic; }
.body-sm p, .body-sm li { font-size: inherit; font-family: inherit; line-height: inherit; font-style: inherit; }
.body-sm h1, .body-sm h2, .body-sm h3, .body-sm h4, .body-sm h5, .body-sm h6 { font-size: inherit; font-weight: inherit; font-family: inherit; line-height: inherit; font-style: inherit; }   /* headings take the class type too, like .heading-* */


/* ── Footer & Nav type — header/footer chrome + top-bar buttons ── */
/* Figma "Footer&Nav" styles: Menu 16/20, Info 16/20, Labels 20→16/24 +30 tracking. */
.nav-menu, .nav-menu a { font-family: var(--font-nav) !important; text-transform: uppercase; }
.nav-info  { font-size: 1rem; font-family: var(--font-nav); line-height: 1.25; }
.nav-small { font-size: 0.875rem; font-family: var(--font-nav); line-height: 1.286; }  /* top-bar locations note, 14/18 */
.nav-label { font-size: var(--text-nav-label); font-family: var(--font-nav); line-height: 1.2; letter-spacing: 0.3em; text-transform: uppercase; }
.nav-info p, .nav-small p, .nav-label p { font-size: inherit; font-family: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit; }


/* ── Rich text ────────────────────────────────────────────── */
/* Apply to Code modules or WP editor content outside Divi's control */
.rich-text h1 { font-size: var(--text-lg); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1.125; }
.rich-text h2 { font-size: var(--text-md); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1.2; }
.rich-text h3,
.rich-text h4,
.rich-text h5,
.rich-text h6 { font-size: var(--text-sm); font-family: var(--font-mrs-eaves-xl-serif); line-height: 1; }

.rich-text p,
.rich-text li {
  font-size   : var(--text-body-lg);
  font-family : var(--font-mr-eaves-sans);
  line-height : 1.167;
}

.rich-text ol,
.rich-text ul  { padding-left: 1.5em; }

.rich-text a   { text-decoration: underline; color: inherit; }
