/* PropProof – shared subpage polish aligned with the homepage design */
:root {
  --navy: #1c2e4a;
  --gold: #a46a34;
  --ivory: #f7f7f7;
  --grey: #68717a;
  --line: #1c2e4a26;
  --serif: "Playfair Display", Georgia, serif;
  --sans: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
html { width: 100%; overflow-x: clip; }
body { width: 100%; min-width: 320px; overflow-x: clip; }
img, svg, video, iframe { max-width: 100%; }
header.site {
  min-height: 72px;
  padding: 14px max(24px, calc((100vw - 1280px) / 2)) !important;
  gap: 20px;
  flex-wrap: wrap;
}
header.site > a:first-child { flex: 0 1 auto; min-width: 0; }
header.site .logo { display: block; width: clamp(150px, 18vw, 210px); max-width: 100%; height: auto; }
header.site .back, header.site > a:not(:first-child) { flex: 0 0 auto; }
.pp-nav { min-width: 0; max-width: 100%; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.pp-nav details { min-width: 0; }
.pp-menu { max-width: min(320px, calc(100vw - 32px)); max-height: min(70vh, 520px); overflow: auto; }
.wrap { width: min(100%, 1120px); margin-inline: auto; }
main.wrap { padding-inline: clamp(20px, 4vw, 32px); }
.hero, .dd-hero { min-width: 0; }
.hero-layout, .dd-split, .dd-grid, .dd-cards, .dd-columns, .dd-steps, .grid, .steps {
  min-width: 0;
}
.hero-layout > *, .dd-split > *, .grid > *, .steps > * { min-width: 0; }
.hero h1, .dd-hero h1, main h1 {
  max-width: 100%;
  font-family: var(--serif);
  font-size: clamp(2.6rem, 4vw, 3.7rem);
  line-height: 1.06;
  letter-spacing: -.025em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
  text-wrap: pretty;
}
.section h2 .gold, .dd-sec h2 .gold, main h2 .gold { font-weight: 400; }
.section h2, .dd-sec h2, main h2 {
  max-width: 100%;
  font-size: clamp(2.1rem, 4.1vw, 3.65rem);
  line-height: 1.1;
  letter-spacing: -.02em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
  text-wrap: pretty;
}
main h3, .card h3 { min-width: 0; overflow-wrap: anywhere; hyphens: auto; }
.lead, main p, main li, main td, main th { overflow-wrap: anywhere; }
.grid, .steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.table-wrap, .dd-table-wrap { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
table { max-width: 100%; }
footer.site-footer-pro .ft-wrap { width: min(100%, 1280px); margin-inline: auto; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
@media (max-width: 900px) {
  .hero-layout, .dd-split { grid-template-columns: minmax(0, 1fr) minmax(220px, .8fr); gap: 24px; }
  .hero h1, .dd-hero h1, main h1 { font-size: clamp(2.5rem, 4.8vw, 3.25rem); }
  .grid, .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  header.site { padding: 14px 20px !important; gap: 10px 14px; }
  header.site .logo { width: clamp(142px, 44vw, 190px); }
  header.site .back, header.site > a:not(:first-child) { font-size: 12px; }
  .pp-nav { order: 3; flex: 1 0 100%; }
  .pp-menu { left: 0; right: auto; }
  main.wrap { padding-inline: 20px; }
  .hero, .dd-hero { padding-top: 38px; padding-bottom: 36px; }
  .hero-layout, .dd-split { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .hero h1, .dd-hero h1, main h1 { font-size: clamp(2.05rem, 9vw, 2.65rem); line-height: 1.08; }
  .section h2 .gold, .dd-sec h2 .gold, main h2 .gold { font-weight: 400; }
.section h2, .dd-sec h2, main h2 { font-size: clamp(2rem, 9vw, 2.85rem); }
  .grid, .steps, .dd-grid, .dd-cards, .dd-columns { grid-template-columns: minmax(0, 1fr) !important; }
  .section, .dd-sec { padding-block: 34px; }
  .actions { align-items: stretch; }
  .actions .button { max-width: 100%; text-align: center; white-space: normal; }
  footer.site-footer-pro .ft-wrap { grid-template-columns: minmax(0, 1fr); gap: 30px; padding: 42px 20px 24px; }
  footer.site-footer-pro .ft-bottom { padding: 18px 20px; justify-content: center; text-align: center; }
}
@media (max-width: 380px) {
  header.site { padding-inline: 16px !important; }
  main.wrap { padding-inline: 16px; }
  .hero h1, .dd-hero h1, main h1 { font-size: 2.35rem; }
  .actions { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }

/* Headlines sind auf der gesamten Website niemals fett (Playfair Display, Schnitt 400) */
h1, h2, h3, .hero h1, .dd-hero h1, main h1,
.section h2, .dd-sec h2, main h2, main h3, .card h3,
.hero h1 .gold, .dd-hero h1 .gold, main h1 .gold,
.section h2 .gold, .dd-sec h2 .gold, main h2 .gold {
  font-weight: 400 !important;
}
