/* ==========================================================================
   Rechtstexte: /impressum, /datenschutz, /agb
   Kleiner Raum-Hero, darunter schlichte, gut lesbare Textspalte.
   ========================================================================== */

.rhero { position: relative; padding: 156px 0 clamp(56px, 7vw, 92px); background: var(--raum); overflow: hidden; isolation: isolate; }
.rhero::after { content: ""; position: absolute; inset: auto 0 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(227, 196, 106, .45), transparent); }
.rhero__in { display: grid; gap: 20px; width: min(820px, 100% - 48px); }
.rhero__titel { font-size: clamp(32px, 5.2vw, 64px); text-wrap: balance; hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; min-width: 0; }
.rhero__in > * { min-width: 0; }

.recht { padding-block: clamp(56px, 7vw, 96px) clamp(80px, 9vw, 130px); }
.recht__spalte { width: min(820px, 100% - 48px); margin-inline: auto; }
.recht__text { font-size: 16.5px; line-height: 1.75; color: #2b3445; overflow-wrap: anywhere; }
.recht__text > :first-child { margin-top: 0; }
.recht__text p { margin: 0 0 1em; }
.recht__text h2 { margin: 2.2em 0 .6em; padding-top: 26px; border-top: 1px solid var(--line-d); font-size: clamp(20px, 2vw, 25px); line-height: 1.25; letter-spacing: -.02em; color: var(--ink); }
.recht__text > h2:first-child { padding-top: 0; border-top: 0; }
.recht__text h3 { margin: 1.6em 0 .5em; font-size: 18.5px; line-height: 1.3; letter-spacing: -.015em; color: var(--ink); }
.recht__text strong { color: var(--ink); font-weight: 650; }
.recht__text a { color: var(--gold-lo); text-decoration: underline; text-underline-offset: 3px; }
.recht__text a:hover { color: var(--ink); }
.recht__text ul, .recht__text ol { margin: 0 0 1.2em; padding-left: 0; list-style: none; display: grid; gap: .5em; }
.recht__text li { position: relative; padding-left: 24px; }
.recht__text ul li::before { content: ""; position: absolute; left: 3px; top: .68em; width: 7px; height: 7px; border-radius: 50%; background: var(--gold); }
.recht__text ol { counter-reset: n; }
.recht__text ol li { counter-increment: n; }
.recht__text ol li::before { content: counter(n) "."; position: absolute; left: 0; font-family: var(--mono); font-size: .85em; color: var(--gold-lo); }
.recht__text table { width: 100%; border-collapse: collapse; margin: 18px 0; font-size: 15px; }
.recht__text td, .recht__text th { border: 1px solid var(--line-d); padding: 9px 12px; text-align: left; vertical-align: top; }

.recht .bildung { margin: clamp(40px, 5vw, 56px) 0 0; padding: 18px 20px; border-radius: 12px; background: var(--paper-2); border-left: 3px solid var(--gold); font-size: 14px; line-height: 1.6; color: var(--muted-d); }
.recht .bildung__mark { display: block; margin-bottom: 4px; font-family: var(--mono); font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-lo); }

@media (max-width: 680px) {
  .rhero { padding-top: 120px; }
  .recht__text { font-size: 16px; }
}
