/* Rechtsseiten – schlicht und gut lesbar, gleiche Farbwelt wie die
   Startseite, aber ohne deren Bewegung und Bilder. */

:root {
    --cream:      #FAF6F0;
    --cream-2:    #F4ECE1;
    --white:      #FFFFFF;
    --sand:       #E7D8C6;
    --sand-soft:  #F0E4D6;
    --tan:        #C39A72;
    --tan-text:   #8B633B;
    --bronze:     #7E6039;
    --bronze-deep:#5F482A;
    --ink:        #332C25;
    --ink-soft:   #6B6055;
    --ink-faint:  #736A5F;

    --font-head: 'Playfair Display', Georgia, 'Times New Roman', serif;
    --font-body: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }

body {
    margin: 0;
    padding: 3rem 1.5rem 4rem;
    background: var(--cream);
    color: var(--ink);
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.75;
    -webkit-font-smoothing: antialiased;
}

.legal-container {
    max-width: 760px;
    margin-inline: auto;
}

.back-link {
    display: inline-block;
    margin-bottom: 2.4rem;
    font-size: .84rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--bronze);
    text-decoration: none;
}
.back-link:hover { color: var(--bronze-deep); }

h1 {
    margin: 0 0 .3rem;
    font-family: var(--font-head);
    font-size: clamp(2.2rem, 5vw, 3rem);
    font-weight: 500;
    line-height: 1.15;
}

.updated {
    margin: 0 0 2.6rem;
    font-size: .76rem;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--tan-text);
}

h2 {
    margin: 2.6rem 0 .7rem;
    font-family: var(--font-head);
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--bronze);
}

p { margin: 0 0 1.05em; color: var(--ink-soft); }
strong { color: var(--ink); font-weight: 500; }

ul { margin: 0 0 1.2em; padding-left: 1.3rem; color: var(--ink-soft); }
li { margin-bottom: .35em; }

a { color: var(--bronze); text-decoration: underline; text-underline-offset: .18em; }
a:hover { color: var(--bronze-deep); }

.contact-box {
    margin: 0 0 1.6rem;
    padding: 1.5rem 1.6rem;
    border: 1px solid var(--sand);
    border-radius: 14px;
    background: var(--white);
}
.contact-box p { margin-bottom: .7em; color: var(--ink); }
.contact-box p:last-child { margin-bottom: 0; }

.legal-footer {
    margin-top: 3.4rem;
    padding-top: 1.4rem;
    border-top: 1px solid var(--sand);
    font-size: .84rem;
    color: var(--ink-soft);
}
.legal-footer a { text-decoration: none; }
.legal-footer a:hover { text-decoration: underline; }

:focus-visible { outline: 2px solid var(--bronze); outline-offset: 3px; border-radius: 4px; }

@media (max-width: 620px) {
    body { padding: 2rem 1.2rem 3rem; }
    .contact-box { padding: 1.2rem 1.1rem; }
}
