/* Fixed typography: Cormorant Garamond headings and Jost body text. */
:root {
  --font-heading: "Cormorant Garamond", Georgia, serif;
  --font-body: "Jost", Arial, sans-serif;
  --heading-weight: 500;
  --heading-size: clamp(40px, 4.2vw, 66px);
  --card-heading-size: clamp(32px, 2.8vw, 44px);
}
html:root body {
  font-family: var(--font-body);
  font-weight: 400;
}
html:root
  :is(h1, h2, h3, h4, h5, h6, .contact-value, .contact-email) {
  font-family: var(--font-heading);
  font-weight: var(--heading-weight);
  line-height: 1.02;
  letter-spacing: -0.02em;
  text-transform: none;
}
html:root
  :is(#willkommen h1, .section01 h2, .section02-copy h2, .section03-copy h2,
      .specialties-heading h2, .editorial-copy h2, .contact-hero h1, .inquiry-heading h2) {
  font-family: var(--font-heading);
  font-size: var(--heading-size);
  font-weight: var(--heading-weight);
  line-height: 1.02;
  letter-spacing: -0.02em;
  text-transform: none;
}
html:root .specialty-card h3 {
  font-size: var(--card-heading-size);
  margin-bottom: 22px;
}
html:root
  :is(.combined-contact-item p, .combined-contact-item a, .menu-languages,
      input, textarea, select, button, .site-header .topnav a) {
  font-family: var(--font-body);
}
html:root .combined-contact-item p {
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
}
html:root .combined-contact-item p a {
  font-size: inherit;
  font-weight: inherit;
}
html:root .combined-contact-item div > a {
  font-size: 17px;
  font-weight: 600;
}
html:root .combined-contact-item h3 {
  font-size: 28px;
  letter-spacing: 0;
}
html:root .combined-footer-bottom {
  font-size: 14px;
}
html:root .site-header .topnav a {
  font-size: 16px;
  font-weight: 500;
}
html:root .menu-panel .menu-navigation > a {
  font-family: var(--font-heading);
  font-weight: var(--heading-weight);
  letter-spacing: -0.02em;
  line-height: 1.08;
}
html:root
  :is(#willkommen p, .section01 p, .section02-copy p, .section03-copy p,
      .editorial-copy > p:not(.editorial-kicker)) {
  font-size: clamp(18px, 1.45vw, 21px);
  line-height: 1.55;
}
html:root .specialty-card p {
  font-size: 18px;
  line-height: 1.55;
}
@media (max-width: 768px) {
  :root { --heading-size: clamp(34px, 9vw, 46px); --card-heading-size: 34px; }
  .site-header .topnav .header-scroll-logo span {
    position: absolute;
    left: 50% !important;
    width: min(90%, 130px) !important;
  }
}
