@font-face {
  font-family: "Manrope";
  src: url("fonts/manrope-latin-600.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("fonts/inter-latin-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("fonts/inter-latin-600.woff2") format("woff2");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

/* Adjust Arial-compatible fallbacks to the webfont metrics and the site's text widths. */
@font-face {
  font-family: "Mayr Manrope Fallback";
  src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold");
  font-style: normal;
  font-weight: 600;
  size-adjust: 99.195%;
  ascent-override: 107.465%;
  descent-override: 30.243%;
  line-gap-override: 0%;
}

@font-face {
  font-family: "Mayr Inter Fallback";
  src: local("Arial"), local("ArialMT"), local("Liberation Sans");
  font-style: normal;
  font-weight: 400;
  size-adjust: 106.619%;
  ascent-override: 90.861%;
  descent-override: 22.624%;
  line-gap-override: 0%;
}

@font-face {
  font-family: "Mayr Inter Fallback";
  src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold");
  font-style: normal;
  font-weight: 600;
  size-adjust: 101.633%;
  ascent-override: 95.319%;
  descent-override: 23.734%;
  line-gap-override: 0%;
}

body,
body.mayr-native-theme {
  --mayr-copy-size: 17px;
  font-family: var(--mayr-body-font);
  font-size: var(--mayr-copy-size);
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: normal;
}

.mayr-page-layout.mayr-el {
  --e-global-typography-primary-font-family: var(--mayr-heading-font);
  --e-global-typography-secondary-font-family: var(--mayr-heading-font);
  --e-global-typography-text-font-family: var(--mayr-body-font);
  --e-global-typography-accent-font-family: var(--mayr-body-font);
  --e-global-typography-primary-font-weight: 600;
  --e-global-typography-secondary-font-weight: 600;
  --e-global-typography-text-font-weight: 400;
  --e-global-typography-accent-font-weight: 600;
  font-family: var(--mayr-body-font);
}

/* Set only type properties on headings so the existing size hierarchy is retained. */
body :is(
  h1, h2, h3, h4, h5, h6, .mhm-title, .moi-title, .moi-slide-title, .moi-side-name,
  .apc-title, .apc-box-name, .mayr-footer-title, .mayr-el-heading-title, .elementor-heading-title
) {
  font-family: var(--mayr-heading-font) !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

body :is(h1, h2, h3, h4, h5, h6) a {
  font-family: inherit;
  font-weight: inherit;
}

.mayr-page-layout a {
  font-family: inherit;
}

body :is(h1, h2, .mhm-title, .apc-title) {
  line-height: 1.15;
}

body :is(
  .mayr-page-layout .mayr-el-widget-text-editor, .mayr-page-layout .mayr-el-icon-list-text,
  .mayr-partnercalc, .mayr-knk, .mayr-kreditrechner,
  #content p, #content ul, #content ol, #content blockquote,
  .mayr-site-footer p, .moi-single-wrap p, .moi-single-wrap li
) {
  font-family: var(--mayr-body-font) !important;
}

body :is(#content, .entry-content, .moi-single-wrap, .mayr-inheritance-dialog, .mayr-site-footer)
  :is(p, blockquote, ul, ol):not(:where(.mhm-hero *, .mayr-form-progress, .apc-card *, .moi-facts *)) {
  font-size: max(1em, var(--mayr-copy-size));
  line-height: 1.65;
}

body :is(input, select, textarea, label, legend, button, .mayr-el-field, .mayr-el-field-type-html) {
  font-family: var(--mayr-body-font) !important;
}

body :is(input:not([type="checkbox"], [type="radio"], [type="hidden"], [type="range"]), select, textarea) {
  font-size: max(16px, 1em);
  font-weight: 400;
}

body :is(
  button, legend, input[type="button"], input[type="submit"], input[type="reset"],
  .wp-block-button__link, .mayr-el-button, .elementor-button, .mhm-btn, .moi-btn, .moi-slide-cta,
  .moi-filter .moi-btn, .moi-filter button.moi-btn-reset,
  .mayr-btn, .mayr-card-btn, .leadfisher-btn, .mayr-valuation-start
) {
  font-family: var(--mayr-body-font) !important;
  font-weight: 600 !important;
}

body :is(strong, b) {
  font-weight: 600 !important;
}

body :is(.mayr-site-menu, .wpbf-menu, .wp-block-navigation, .elementor-nav-menu) a {
  font-family: var(--mayr-body-font) !important;
  font-weight: 400;
}

body :is(.mayr-site-menu, .wpbf-menu, .wp-block-navigation, .elementor-nav-menu)
  :is(.current-menu-item, .current-menu-ancestor) > a,
body :is(.mayr-site-menu, .wpbf-menu, .wp-block-navigation, .elementor-nav-menu)
  a:is([aria-current="page"], .elementor-item-active) {
  font-weight: 600;
}

@media (max-width: 767px) {
  body,
  body.mayr-native-theme {
    --mayr-copy-size: 16px;
  }

  body :is(h1, h2, .mhm-title) {
    line-height: 1.18;
    text-wrap: balance;
  }
}
