/* Lenox refresh of the mirrored T.A.L.K. site (public/talk).
   Richard's colours, wave banners and photography stay as they are. This layer sets
   the shared type scale (section 0), centres the text, tidies the phone header and
   gives buttons clearer states. It is linked last on every /talk page, after Elementor. */

/* 0. SHARED TYPE SCALE, the same values as lenoxmktg.com and the T.A.L.K. site (brief of
      2026-10-07): Inter only, at 400, 500, 600 and 700, and seven roles. The fonts are the
      Inter files the Lenox site itself serves (SIL Open Font License 1.1), self-hosted here;
      the theme's Google Fonts (Open Sans, Montserrat) and Elementor's local Roboto and Inter
      sheets are no longer linked (improve.py). Icon fonts (Font Awesome, eicons) are left
      alone. Rules carry !important because Elementor sizes each element by id.
      Role            desktop / mobile   weight   line height
      h1              48 / 36            700      1.15
      h2              36 / 28            700      1.2
      h3              24 / 22            600      1.3
      h4 to h6        20 / 18            600      1.4
      body and lists  18 / 16            400      1.6
      ui              16 / 16            500      1.4    menus, buttons, form controls
      label           16 / 16            600      1.4
      caption         14 / 14            400      1.5    captions, helper and footer text
      Headings (h1 to h4 roles) share -0.015em letter spacing, as on both sites.
      Headings in Elementor heading and call to action widgets get their role from
      gen-type-css.mjs (generated block below), by the size the page gave them. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/talk/_lenox/fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
  --type-font: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
    Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  --type-h1: 2.25rem;
  --type-h2: 1.75rem;
  --type-h3: 1.375rem;
  --type-h4: 1.125rem;
  --type-body: 1rem;
  --type-ui: 1rem;
  --type-label: 1rem;
  --type-caption: 0.875rem;
}
@media (min-width: 48rem) {
  :root {
    --type-h1: 3rem;
    --type-h2: 2.25rem;
    --type-h3: 1.5rem;
    --type-h4: 1.25rem;
    --type-body: 1.125rem;
  }
}

/* rem is measured against the browser's 16px root, as on both sites: the theme had shrunk the
   root to 93.75% on desktop and 85.5% on phones, which shrank every size in the scale. */
html {
  font-size: 100% !important;
}

/* One family for every piece of text; icon elements keep their icon font. */
html body,
body :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, a, span, div, button, input, select, textarea,
  label, td, th, strong, b, em, blockquote, figcaption, small, cite, sup, sub, address):not(.fa, .fas,
  .far, .fab, [class*='fa-'], [class*='eicon'], [class*='e-font-icon']) {
  font-family: var(--type-font) !important;
}
:is(input, textarea)::placeholder {
  font-family: var(--type-font) !important;
}

/* Body and list text */
html body,
#content :is(p, li, dt, dd, td, th, blockquote, address),
#content :is(.elementor-widget-text-editor, .elementor-icon-list-text, .elementor-image-box-description,
  .elementor-icon-box-description, .elementor-cta__description, .elementor-tab-content,
  .elementor-testimonial-content) {
  font-size: var(--type-body) !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
}

/* Headings by tag where no widget sets them: post content and text blocks */
#content :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .entry-content) h1 {
  font-size: var(--type-h1) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}
#content :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .entry-content) h2 {
  font-size: var(--type-h2) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}
#content :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .entry-content) h3,
#content :is(.elementor-image-box-title, .elementor-icon-box-title, .elementor-tab-title,
  .elementor-toggle-title, .elementor-toggle .elementor-tab-title a) {
  font-size: var(--type-h3) !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}
#content :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .entry-content)
  :is(h4, h5, h6) {
  font-size: var(--type-h4) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}

/* Menus, buttons and form controls */
:is(.elementor-button, .elementor-button-text, .elementor-cta__button, .elementor-nav-menu a,
  .elementor-item, .elementor-sub-item, .menu-item a, button, input, select, textarea) {
  font-size: var(--type-ui) !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
}
:is(label, .elementor-field-label) {
  font-size: var(--type-label) !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

/* Footer text is caption size; footer headings add emphasis weight */
.elementor-location-footer :is(p, li, a, span, div, address, .elementor-icon-list-text,
  .elementor-heading-title) {
  font-size: var(--type-caption) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}
.elementor-location-footer .elementor-heading-title,
.elementor-location-footer .elementor-heading-title :is(a, span) {
  font-weight: 600 !important;
}

/* Emphasis is weight 600, never another font or size */
body :is(strong, b) {
  font-weight: 600 !important;
}

/* 1. Centred text in the page content (#content) and the footer. The header keeps
      its desktop layout of logo, menu and Contact button. */
#content :is(h1, h2, h3, h4, h5, h6, p, blockquote, figcaption, li),
#content :is(.elementor-heading-title, .elementor-widget-heading, .elementor-widget-text-editor,
  .elementor-widget-image, .elementor-widget-theme-site-logo, .elementor-widget-divider,
  .elementor-image-box-wrapper, .elementor-icon-box-wrapper, .elementor-cta__content,
  .elementor-tab-title, .elementor-tab-content, .entry-content, .entry-header),
.elementor-location-footer :is(h1, h2, h3, h4, h5, h6, p, li, .elementor-heading-title,
  .elementor-widget-heading, .elementor-widget-text-editor, .elementor-widget-image,
  .elementor-widget-theme-site-logo) {
  text-align: center !important;
}

/* Lists read as centred lines instead of a ragged left column */
#content :is(.elementor-widget-text-editor, .entry-content) :is(ul, ol) {
  list-style-position: inside;
  padding-inline-start: 0 !important;
  margin-inline: auto;
}

/* Icon lists: feature bullets in the pages, link columns in the footer */
:is(#content, .elementor-location-footer) .elementor-icon-list-items,
:is(#content, .elementor-location-footer) .elementor-icon-list-text {
  text-align: center !important;
}
:is(#content, .elementor-location-footer) :is(.elementor-icon-list-item, .elementor-icon-list-item > a,
  .elementor-inline-items) {
  justify-content: center !important;
}

/* A check mark flows in front of its line, so an item that wraps still reads as one
   centred unit instead of a pinned icon beside a centred paragraph */
:is(#content, .elementor-location-footer) .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item {
  display: block !important;
}
:is(#content, .elementor-location-footer) .elementor-icon-list-item > a {
  display: inline !important;
}
:is(#content, .elementor-location-footer) .elementor-icon-list-items .elementor-icon-list-item > a {
  text-align: center !important;
}
:is(#content, .elementor-location-footer) .elementor-icon-list-icon {
  display: inline-flex !important;
  vertical-align: middle;
  margin-inline-end: 6px;
}
:is(#content, .elementor-location-footer) .elementor-icon-list-text {
  display: inline !important;
}

/* The copyright bar sat in the left half of a two column row whose right half is empty */
.elementor-location-footer .elementor-element.elementor-element-10816cb8 {
  width: 100% !important;
}
.elementor-location-footer .elementor-element.elementor-element-56d32a73 {
  display: none !important;
}

/* Image and icon boxes that sat beside their picture now stack under it, centred */
#content :is(.elementor-position-left, .elementor-position-right) :is(.elementor-image-box-wrapper,
  .elementor-icon-box-wrapper) {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
#content :is(.elementor-image-box-img, .elementor-icon-box-icon) {
  margin-inline: auto !important;
}
#content :is(.elementor-position-left, .elementor-position-right) :is(.elementor-image-box-img,
  .elementor-icon-box-icon) {
  margin-bottom: 16px !important;
}

/* Call to action boxes, buttons, social icons, dividers, embedded forms */
#content .elementor-cta__content {
  justify-content: center !important;
}
:is(#content, .elementor-location-footer) :is(.elementor-button-wrapper, .elementor-cta__button-wrapper) {
  display: flex;
  justify-content: center !important;
  text-align: center !important;
}
:is(#content, .elementor-location-footer) .elementor-social-icons-wrapper {
  --justify-content: center;
  justify-content: center !important;
  text-align: center !important;
}
#content :is(.elementor-divider-separator, .elementor-widget-image img, .elementor-widget-html iframe) {
  margin-inline: auto;
}
#content .elementor-widget-html iframe {
  display: block;
}

/* 2. Typography: balanced headings, no stranded last words, readable line length */
#content :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title),
.elementor-location-footer .elementor-heading-title {
  text-wrap: balance;
}
#content :is(p, li),
.elementor-location-footer p {
  text-wrap: pretty;
}
#content :is(.elementor-widget-text-editor, .entry-content) :is(p, ul, ol) {
  max-width: 72ch;
  margin-inline: auto;
}

/* 3. Buttons keep the green, square, uppercase look, with clearer hover and focus */
.elementor-button {
  transition: filter 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.elementor-button:hover {
  filter: brightness(1.06);
  box-shadow: 0 8px 20px rgba(123, 181, 43, 0.28);
  transform: translateY(-1px);
}
:is(.elementor-button, .elementor-item, .elementor-sub-item, .elementor-menu-toggle, a):focus-visible {
  outline: 3px solid rgba(123, 181, 43, 0.5);
  outline-offset: 3px;
}

/* 4. Phone header: the logo centred on top, then the menu and Contact side by side,
      instead of three stacked rows. The menu still opens full width. */
@media (max-width: 767px) {
  .elementor-location-header .elementor-element-6607a8a {
    position: relative;
  }
  .elementor-location-header .elementor-element-6607a8a > .elementor-container {
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    column-gap: 12px;
    padding: 10px 16px 12px;
  }
  .elementor-location-header .elementor-element-32de485 {
    width: 100% !important;
  }
  .elementor-location-header .elementor-element-ba1a12a {
    text-align: center !important;
  }
  .elementor-location-header .elementor-element-ba1a12a img {
    display: block;
    width: 100%;
    max-width: 250px;
    margin-inline: auto;
  }
  .elementor-location-header :is(.elementor-element-b651c2e, .elementor-element-cbb57f5) {
    width: auto !important;
  }
  .elementor-location-header :is(.elementor-element-32de485, .elementor-element-b651c2e,
    .elementor-element-cbb57f5) > .elementor-widget-wrap {
    padding: 0 !important;
    justify-content: center;
  }
  .elementor-location-header :is(.elementor-element-b651c2e, .elementor-element-b651c2e > .elementor-widget-wrap,
    .elementor-element-8fd0103) {
    position: static !important;
  }
  .elementor-location-header .elementor-element-8fd0103 .elementor-menu-toggle {
    width: 44px;
    height: 44px;
    border: 1px solid #dfe8d2;
    border-radius: 2px;
    background: #fff;
  }
  .elementor-location-header .elementor-element-8fd0103 nav.elementor-nav-menu--dropdown {
    position: absolute;
    left: 0 !important;
    right: 0;
    width: auto !important;
    top: 100%;
    z-index: 100;
  }
  .elementor-location-header .elementor-nav-menu--dropdown :is(.elementor-item, .elementor-sub-item) {
    justify-content: center;
    text-align: center;
    padding-block: 14px !important;
  }
  .elementor-location-header .elementor-element-5e38780 .elementor-button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  #content .elementor-button {
    min-height: 44px;
  }
}

/* Tablet header (768 to 1024px): the three header columns kept fixed shares, so the Contact
   button (146px at the shared 16px size) spilled past the right edge of a 768px screen. Its
   column now takes the width the button needs, and the menu column, which only holds the
   menu button at these widths, gives up the space. */
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-location-header .elementor-element-cbb57f5 {
    width: auto !important;
    flex: 0 0 auto;
  }
  .elementor-location-header .elementor-element-b651c2e {
    width: auto !important;
    flex: 1 1 auto;
  }
}

/* Phone footer: the five link columns were 116px wide, three to a row, so long links
   broke word by word. Two to a row, the odd one centred. */
@media (max-width: 767px) {
  .elementor-location-footer .elementor-element.elementor-element-6afe5b05 > .elementor-container {
    flex-wrap: wrap;
    justify-content: center;
  }
  .elementor-location-footer .elementor-element:is(.elementor-element-9ee4c25, .elementor-element-6576fd8a,
    .elementor-element-e79efed, .elementor-element-3ee8251, .elementor-element-a0ed123) {
    width: 50% !important;
    padding-bottom: 22px;
  }
}

/* 5. The Invoice Factoring form hands off to T.A.L.K.'s live page, where the form's
      submissions are actually received. Same button as the rest of the site. */
.lenox-form-handoff {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
}
.lenox-form-handoff .elementor-button {
  background-color: #7bb52b;
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 17px 34px;
  border-radius: 2px;
}
.lenox-form-handoff p {
  margin: 0;
  font-size: var(--type-caption) !important;
  line-height: 1.5 !important;
  color: #6b6b6b;
}

/* Phone numbers never split at their hyphens */
.lenox-nowrap {
  white-space: nowrap;
}

/* Phone fixes the type scale does not cover */
@media (max-width: 767px) {
  /* This heading had a desktop custom width that left it 240px wide on phones */
  body #content .elementor-element.elementor-element-464ada25 {
    width: 100% !important;
    max-width: 100% !important;
  }
  /* A long heading inside a text block runs past six lines, where balance stops */
  body #content .elementor-element.elementor-element-1295cf0e h2 {
    text-wrap: pretty;
  }
}

/* 6. No smooth scrolling (Jo, 2026-10-09: links go straight to their form or page, never
      "bouncing around"). Elementor turns it on for html; this turns it off, as on lenoxmktg.com. */
html {
  scroll-behavior: auto !important;
}

/* BEGIN generated phone fixes (gen-mobile-css.mjs): desktop side padding and side margins
   measured at 390px, which squeezed or broke text on phones. */
@media (max-width: 767px) {
  #content .elementor-element.elementor-element-17bea95 { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-334e09d { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-6dd02b37 { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-729acb2 { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-ab98835 { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-e9ac0b9 { padding-left: 16px !important; padding-right: 16px !important; }
  #content .elementor-element.elementor-element-187cb08 > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-22a78fa > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-628fed0 > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-66a2285 > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-69dd493 > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-8d6f56f > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
  #content .elementor-element.elementor-element-d408165 > .elementor-widget-container { margin-left: 0 !important; margin-right: 0 !important; }
}
/* END generated phone fixes */

/* BEGIN generated type roles (gen-type-css.mjs): 83 headings, each with its role in the
   shared scale from the desktop size its page gave it. */
/* page titles (h1) */
#content .elementor-element.elementor-element-14348bad .elementor-heading-title /* h1 24px */,
#content .elementor-element.elementor-element-209b263a .elementor-heading-title /* h1 42px */,
#content .elementor-element.elementor-element-22728e4e .elementor-heading-title /* h1 20px */,
#content .elementor-element.elementor-element-4724da20 .elementor-heading-title /* h1 42px */,
#content .elementor-element.elementor-element-4eedef30 .elementor-heading-title /* h1 48px */,
#content .elementor-element.elementor-element-5257929 .elementor-heading-title /* h1 24px */,
#content .elementor-element.elementor-element-6a370c0 .elementor-heading-title /* h1 42px */,
#content .elementor-element.elementor-element-6bf17ab6 .elementor-heading-title /* h1 42px */,
#content .elementor-element.elementor-element-73e71a94 .elementor-heading-title /* h1 24px */,
#content .elementor-element.elementor-element-78e4d43 .elementor-heading-title /* h1 42px */,
#content .elementor-element.elementor-element-a6ae721 .elementor-heading-title /* h1 24px */ {
  font-size: var(--type-h1) !important; line-height: 1.15 !important; font-weight: 700 !important; letter-spacing: -0.015em !important;
}
/* section titles: headings the page set at 30px and up */
#content .elementor-element.elementor-element-0036280 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-031ad42 .elementor-heading-title /* h2 43px */,
#content .elementor-element.elementor-element-0b909b7 .elementor-cta__title /* h2 32px */,
#content .elementor-element.elementor-element-1688158 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-172b0569 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-1740f6c .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-1dd9d1c .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-2144e56 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-22374d11 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-22a78fa .elementor-heading-title /* h2 42px */,
#content .elementor-element.elementor-element-2704cafa .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-2e322982 .elementor-heading-title /* h2 48px */,
#content .elementor-element.elementor-element-464ada25 .elementor-heading-title /* h2 42px */,
#content .elementor-element.elementor-element-4945bf6 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-5c0a40d .elementor-heading-title /* h2 37px */,
#content .elementor-element.elementor-element-610e134 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-6123c56c .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-66a2285 .elementor-heading-title /* h2 42px */,
#content .elementor-element.elementor-element-671ad72 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-69dd493 .elementor-heading-title /* h2 42px */,
#content .elementor-element.elementor-element-6ab32a4 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-6bcf4bc .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-6c5a27bc .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-7269d129 .elementor-heading-title /* h2 48px */,
#content .elementor-element.elementor-element-7a0bb8a .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-82bc43e .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-87c365e .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-89b26f4 .elementor-heading-title /* h2 35px */,
#content .elementor-element.elementor-element-8acd77f .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-91df1eb .elementor-heading-title /* h2 45px */,
#content .elementor-element.elementor-element-9c055e5 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-a76dec6 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-b0e5d21 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-b1ea58c .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-b3f32be .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-b5e95a7 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-ba67836 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-cf37e88 .elementor-heading-title /* h2 34px */,
#content .elementor-element.elementor-element-d68ce47 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-d967c90 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-db4eb71 .elementor-cta__title /* h2 32px */,
#content .elementor-element.elementor-element-dceea0b .elementor-heading-title /* h2 40px */,
#content .elementor-element.elementor-element-e3c318e .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-eddd546 .elementor-heading-title /* h2 32px */,
#content .elementor-element.elementor-element-ef80147 .elementor-cta__title /* h2 32px */,
#content .elementor-element.elementor-element-f22e239 .elementor-cta__title /* h2 32px */,
#content .elementor-element.elementor-element-f4a3bc9 .elementor-cta__title /* h2 32px */ {
  font-size: var(--type-h2) !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.015em !important;
}
/* subsection titles: 20 to 29px */
#content .elementor-element.elementor-element-069f822 .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-21834fa .elementor-heading-title /* h3 22px */,
#content .elementor-element.elementor-element-2c7bb451 .elementor-heading-title /* h2 28px */,
#content .elementor-element.elementor-element-2d961a0 .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-2ee96a00 .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-40a973d7 .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-52bb650 .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-5bf9511 .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-60aaa86 .elementor-heading-title /* h3 22px */,
#content .elementor-element.elementor-element-61b5681 .elementor-heading-title /* h3 26.6667px */,
#content .elementor-element.elementor-element-86c91c9 .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-8dc450b .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-9277e84 .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-9d2bae6 .elementor-heading-title /* h2 29px */,
#content .elementor-element.elementor-element-a5ddd0c .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-af40a40 .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-b90317a .elementor-heading-title /* h2 22px */,
#content .elementor-element.elementor-element-c2f8f39 .elementor-heading-title /* h3 22px */,
#content .elementor-element.elementor-element-dd8b4cd .elementor-heading-title /* h2 24px */,
#content .elementor-element.elementor-element-ef110dd .elementor-heading-title /* h3 26.6667px */ {
  font-size: var(--type-h3) !important; line-height: 1.3 !important; font-weight: 600 !important; letter-spacing: -0.015em !important;
}
/* h4 role: 17 to 19px */
#content .elementor-element.elementor-element-125e7aa .elementor-heading-title /* h4 21.3333px */,
#content .elementor-element.elementor-element-1d3cba9 .elementor-heading-title /* h4 28px */,
#content .elementor-element.elementor-element-2e2253c .elementor-heading-title /* h4 21.3333px */,
#content .elementor-element.elementor-element-be27304 .elementor-heading-title /* h4 21.3333px */ {
  font-size: var(--type-h4) !important; line-height: 1.4 !important; font-weight: 600 !important; letter-spacing: -0.015em !important;
}
/* labels set in heading tags at 15 to 16px: body size, emphasis weight */
#content .elementor-element.elementor-element-72161c98 .elementor-heading-title /* h2 16px */ {
  font-size: var(--type-body) !important; line-height: 1.6 !important; font-weight: 600 !important;
}
/* END generated type roles */
