/* ═══════════════════════════════════════════════════════════════
   Legal text page (page-agb.php). Scoped to .pp-legal – loaded on that page only.
   White page, gold accents, readable measure; the whole text in normal flow (no accordions).
   ═══════════════════════════════════════════════════════════════ */
.pp-legal {
    --lg-gold:  #2676A3;                 /* gold text/links: ≥ 4.5:1 on white */
    --lg-line:  #D5E8F3;
    --lg-ivory: #F2F8FC;
    --lg-ink:   #1A1A1A;
    --lg-text:  #333;
    --lg-mute:  #5C5C5C;
    background: #fff; color: var(--lg-text);
    padding: calc(var(--header-h, 113px) + 28px) 0 clamp(56px, 7vw, 96px);
}
.pp-legal__wrap { box-sizing: border-box; max-width: 860px; margin: 0 auto; padding: 0 var(--gap, 1.5rem); }
.pp-legal__crumbs ol { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; font-size: 14px; line-height: 1.5; color: var(--lg-mute); }
.pp-legal__crumbs li + li::before { content: '›'; margin: 0 10px; color: #A9A296; }
.pp-legal__crumbs a { color: var(--lg-mute); text-decoration: none; }
.pp-legal__crumbs a:hover { color: var(--lg-gold); }
.pp-legal__crumbs [aria-current] { color: var(--lg-gold); }
.pp-legal__title {
    margin: 18px 0 0; padding-bottom: 22px; border-bottom: 1px solid var(--lg-line);
    font: 400 clamp(1.875rem, 4vw, 3rem)/1.15 'Playfair Display', Georgia, serif; color: var(--lg-ink); overflow-wrap: anywhere; text-wrap: balance;
}
.pp-legal__empty { margin: 28px 0 0; padding: 14px 18px; background: var(--lg-ivory); border-left: 3px solid var(--lg-gold); font-size: 15px; }

.pp-legal__content { margin-top: 28px; font-size: 17px; line-height: 1.7; overflow-wrap: anywhere; }
.pp-legal__content > *:first-child { margin-top: 0; }
.pp-legal__content h2 {   /* "§ 1 Geltungsbereich" */
    margin: 44px 0 14px; font: 500 clamp(1.375rem, 2.4vw, 1.75rem)/1.25 'Playfair Display', Georgia, serif; color: var(--lg-ink);
}
.pp-legal__content h3 { margin: 30px 0 10px; font: 600 18px/1.35 var(--font-body, 'Barlow', sans-serif); color: var(--lg-ink); }
.pp-legal__content p { margin: 0 0 14px; }
.pp-legal__content ol, .pp-legal__content ul { margin: 0 0 16px; padding-left: 1.4em; }
.pp-legal__content li { margin: 0 0 8px; }
.pp-legal__content a { color: var(--lg-gold); text-decoration: underline; text-underline-offset: 3px; }
.pp-legal__content a:hover { color: #1E6085; }
.pp-legal__content strong { color: var(--lg-ink); font-weight: 600; }
.pp-legal__content hr { margin: 40px 0; border: 0; border-top: 1px solid var(--lg-line); }
/* Widerrufsbelehrung / Muster-Widerrufsformular: an ivory block; form blanks as lines that wrap on phones */
.pp-legal__content .pp-legal__box { margin: 20px 0 24px; padding: 22px 24px; background: var(--lg-ivory); border-radius: 6px; }
.pp-legal__content .pp-legal__box > *:last-child { margin-bottom: 0; }
.pp-legal__content .pp-legal__blank { display: inline-block; min-width: min(16em, 100%); border-bottom: 1px solid #9C9486; }
.pp-legal__content ol > li > p { margin-bottom: 8px; }
.pp-legal__content ol > li > p:last-child { margin-bottom: 0; }
.pp-legal__content ol > li { margin-bottom: 14px; }
.pp-legal__content .pp-legal__box h3:first-child { margin-top: 0; }
.pp-legal__content .pp-legal__line .pp-legal__blank { display: block; width: 100%; min-width: 0; height: 1.6em; }   /* whole-line blanks of the form */
.pp-legal__content .pp-legal__sign { margin-top: 26px; font-size: 14px; color: var(--lg-mute); }
.pp-legal__content .pp-legal__sign .pp-legal__blank { height: 1.4em; margin-bottom: 4px; }
@media (max-width: 640px) {
    .pp-legal__content { font-size: 16px; }
    .pp-legal__content .pp-legal__box { padding: 18px 16px; }
}
