body.pvg-apotheker-landingpage {
  margin: 0;
  background: #fff;
}

.pvg-apotheker-landingpage *,
.pvg-apotheker-landingpage *::before,
.pvg-apotheker-landingpage *::after {
  box-sizing: border-box;
}

.pvg-hero__skip {
  position: fixed;
  z-index: 9999;
  top: .5rem;
  left: .5rem;
  translate: 0 -200%;
  padding: .75rem 1rem;
  border: 3px solid #ffbf47;
  background: #fff;
  color: #00498e;
}

.pvg-hero__skip:focus {
  translate: 0;
}

/*
 * Hotfix 1.0.2: heading typography parity with the live doctor Gold Master.
 *
 * The doctor page's scoped page shell supplies the shared responsive H2/H3
 * contract before its component styles. Keep that contract equally scoped to
 * the genuine Apotheker page headings; the MediBU Kompass is intentionally
 * excluded and the v1.0.1 content-width rules below remain unchanged.
 */
body.pvg-apotheker-landingpage :is(
  #warum-bu .pvg-why-bu__title,
  #apotheker-versorgungswerk-title,
  .pvg-costs__title,
  .pvg-nvi-apotheker h2,
  .pvg-health-apotheker h2,
  .pvg-best-bu .pvg-h2,
  .pvg-performance-cases__title,
  #faq-title,
  #final-title,
  .pvg-author-box__title
) {
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.15;
}

body.pvg-apotheker-landingpage :is(
  #warum-bu h3,
  .pvg-pension h3,
  .pvg-costs h3:not(.pvg-costs__visually-hidden),
  .pvg-nvi-apotheker h3,
  .pvg-health-apotheker h3:not(.pvg-health-apotheker__visually-hidden),
  .pvg-best-bu .pvg-h3,
  .pvg-performance-cases h3,
  .pvg-apotheker-faq h3,
  .pvg-apotheker-final h3
) {
  line-height: 1.25;
}

@media (min-width: 64rem) {
  body.pvg-apotheker-landingpage #pvg-hero-apotheker-title,
  body.pvg-apotheker-landingpage .pvg-hero__intro,
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__header,
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__title,
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__description,
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__evidence,
  body.pvg-apotheker-landingpage #apotheker-versorgungswerk-title,
  body.pvg-apotheker-landingpage .pvg-pension__lead,
  body.pvg-apotheker-landingpage .pvg-pension__block-header,
  body.pvg-apotheker-landingpage .pvg-costs__header,
  body.pvg-apotheker-landingpage .pvg-costs__subheader,
  body.pvg-apotheker-landingpage .pvg-costs__title,
  body.pvg-apotheker-landingpage .pvg-costs__intro,
  body.pvg-apotheker-landingpage .pvg-nvi-apotheker__header,
  body.pvg-apotheker-landingpage .pvg-nvi-apotheker__block > header,
  body.pvg-apotheker-landingpage .pvg-nvi-apotheker__lead,
  body.pvg-apotheker-landingpage .pvg-health-apotheker__lead,
  body.pvg-apotheker-landingpage #beste-bu .pvg-header > .pvg-lead,
  body.pvg-apotheker-landingpage #leistungsbeispiele .pvg-performance-cases__header,
  body.pvg-apotheker-landingpage #leistungsbeispiele .pvg-performance-cases__title,
  body.pvg-apotheker-landingpage #leistungsbeispiele .pvg-performance-cases__intro {
    width: 100%;
    max-width: none;
  }

  body.pvg-apotheker-landingpage :is(
    #warum-bu .pvg-why-bu__title,
    #apotheker-versorgungswerk-title,
    .pvg-costs__title,
    .pvg-nvi-apotheker h2,
    .pvg-health-apotheker h2,
    .pvg-best-bu .pvg-h2,
    .pvg-performance-cases__title,
    #faq-title,
    #final-title,
    .pvg-author-box__title
  ) {
    width: 100% !important;
    max-width: none !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: clamp(2.7rem, 2.5vw, 3rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.035em !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    text-wrap: balance !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  body.pvg-apotheker-landingpage .pvg-best-bu .pvg-h2 {
    margin-bottom: 1.75rem !important;
  }

  /* Hotfix 1.0.2D: let only the longer Why-BU H2 use the full inner card box. */
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__header {
    width: calc(100% + (2 * clamp(1.25rem, 4vw, 4rem))) !important;
    margin-inline-start: calc(-1 * clamp(1.25rem, 4vw, 4rem));
    padding-inline: clamp(1.25rem, 4vw, 4rem);
  }

  /*
   * Hotfix 1.0.2G: restore the component's established 54rem heading measure.
   * The full-width header and intro copy stay independent from this H2-only cap.
   */
  body.pvg-apotheker-landingpage #warum-bu .pvg-why-bu__title {
    width: 100% !important;
    max-width: 54rem !important;
    margin-inline-start: 0;
  }

  body.pvg-apotheker-landingpage :is(
    #warum-bu h3,
    .pvg-pension h3,
    .pvg-costs h3:not(.pvg-costs__visually-hidden),
    .pvg-nvi-apotheker h3,
    .pvg-health-apotheker h3:not(.pvg-health-apotheker__visually-hidden),
    .pvg-best-bu .pvg-h3,
    .pvg-performance-cases h3,
    .pvg-apotheker-faq h3,
    .pvg-apotheker-final h3
  ) {
    width: 100% !important;
    max-width: none !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: clamp(2rem, 1.9vw, 2.3rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    line-height: 1.1 !important;
    white-space: normal !important;
    text-wrap: balance !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
}
