/* ============================================================
   Georg Volmer — Legal Pages Stylesheet
   Version: 2026-06-26
   ============================================================

   SCHRIFTARTEN EINRICHTEN (einmalig):
   1. Gehe zu fonts.google.com/specimen/Plus+Jakarta+Sans
   2. Klicke "Get font" → "Download all"
   3. Entpacke das ZIP
   4. Konvertiere die TTF-Dateien zu WOFF2 unter fontsquirrel.com/tools/webfont-generator
      (Preset "Optimal" waehlen, nur WOFF2 ankreuzen)
   5. Benenne die Dateien um und lade sie in den fonts/-Ordner deines GitHub-Repos:
      fonts/PlusJakartaSans-Regular.woff2    (weight 400)
      fonts/PlusJakartaSans-Medium.woff2     (weight 500)
      fonts/PlusJakartaSans-Bold.woff2       (weight 700)

   LOGO EINRICHTEN:
   Lade Georg-Volmer-logo-RGB.png in den assets/-Ordner deines GitHub-Repos.
   ============================================================ */


/* --- Schriftarten --- */

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('/fonts/plus-jakarta-sans-v12-latin-regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('/fonts/plus-jakarta-sans-v12-latin-500.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('/fonts/plus-jakarta-sans-v12-latin-700.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}


/* --- Reset --- */

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


/* --- Basis --- */

html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont,
        'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-weight: 400;
    color: #4D4D4F;
    background-color: #ffffff;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


/* --- Layout --- */

.container {
    max-width: 760px;
    margin: 0 auto;
    padding: 0 24px;
}


/* --- Header --- */

.site-header {
    background: #ffffff;
    border-bottom: 1px solid #D2D2D2;
    padding: 18px 0;
}

.site-header .container {
    display: flex;
    align-items: center;
}

.site-logo {
    display: inline-block;
    line-height: 0;
    text-decoration: none;
}

.site-logo img {
    height: 38px;
    width: auto;
    display: block;
}


/* --- Hauptinhalt --- */

main {
    padding: 52px 0 96px;
}


/* --- Seitentitel --- */

h1 {
    font-size: 2rem;
    font-weight: 700;
    color: #4D4D4F;
    line-height: 1.25;
    margin-bottom: 6px;
}

.page-date {
    font-size: 0.875rem;
    color: #999999;
    margin-bottom: 52px;
}


/* --- Abschnittsueberschriften --- */

h2 {
    font-size: 1.125rem;
    font-weight: 700;
    color: #F15B4E;
    margin-top: 52px;
    margin-bottom: 16px;
    line-height: 1.4;
}

h3 {
    font-size: 1rem;
    font-weight: 700;
    color: #4D4D4F;
    margin-top: 32px;
    margin-bottom: 10px;
    line-height: 1.4;
}


/* --- Fliestext --- */

p {
    margin-bottom: 14px;
}

strong {
    font-weight: 700;
}


/* --- Links --- */

a {
    color: #F15B4E;
    text-decoration: none;
}

a:hover,
a:focus {
    text-decoration: underline;
}


/* --- Listen --- */

ul {
    padding-left: 24px;
    margin-bottom: 16px;
}

ul li {
    margin-bottom: 10px;
}


/* --- Adressbloecke --- */

.address {
    font-style: normal;
    margin-bottom: 16px;
    line-height: 1.75;
}


/* --- Rechtlicher Hinweistext (DSGVO-Grossbuchstabenabsaetze) --- */

.legal-notice {
    font-size: 0.875rem;
    line-height: 1.7;
    margin-bottom: 14px;
    color: #4D4D4F;
}


/* --- Footer --- */

.site-footer {
    border-top: 1px solid #D2D2D2;
    padding: 36px 0;
}

.footer-nav {
    display: flex;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin-bottom: 12px;
}

.footer-nav a {
    color: #999999;
    font-size: 0.875rem;
    text-decoration: none;
}

.footer-nav a:hover {
    color: #F15B4E;
}

.footer-nav a[aria-current="page"] {
    color: #4D4D4F;
    font-weight: 500;
}

.footer-copy {
    text-align: center;
    font-size: 0.8125rem;
    color: #999999;
}


/* --- Responsive --- */

@media (max-width: 600px) {
    h1 {
        font-size: 1.625rem;
    }
    h2 {
        font-size: 1rem;
        margin-top: 40px;
    }
    main {
        padding: 36px 0 72px;
    }
    .footer-nav {
        gap: 18px;
    }
    .container {
        padding: 0 20px;
    }
}
