/*
 * ============================================================
 * LEGAL – STYLESHEET
 * ============================================================
 */


* {
    box-sizing: border-box;
}


html {
    min-height: 100%;
}


body {
    min-height: 100vh;

    margin: 0;

    padding: 40px 20px;

    background: #ffffff;

    color: #212529;

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Arial,
        sans-serif;
}


/*
 * ============================================================
 * CONTAINER
 * ============================================================
 */

.container {
    width: 100%;

    max-width: 900px;

    margin: 0 auto;
}


/*
 * ============================================================
 * RECHTLICHER INHALT
 * ============================================================
 */

.legal {
    width: 100%;

    line-height: 1.6;
}


.legal h1 {
    margin: 0 0 20px;

    color: #212529;

    font-size: 32px;

    font-weight: 600;

    line-height: 1.2;
}


.legal h2 {
    margin: 30px 0 12px;

    color: #212529;

    font-size: 23px;

    font-weight: 600;

    line-height: 1.3;
}


.legal h3 {
    margin: 25px 0 10px;

    color: #212529;

    font-size: 19px;

    font-weight: 600;

    line-height: 1.4;
}


.legal p {
    margin: 0 0 16px;

    color: #343a40;

    line-height: 1.7;
}


.legal ul,
.legal ol {
    margin: 0 0 18px;

    padding-left: 25px;
}


.legal li {
    margin-bottom: 7px;

    line-height: 1.6;
}


.legal a {
    color: #0d6efd;

    text-decoration: none;
}


.legal a:hover {
    text-decoration: underline;
}


.legal strong {
    font-weight: 600;
}


/*
 * ============================================================
 * TABELLEN
 * ============================================================
 */

.legal table {
    width: 100%;

    margin: 20px 0;

    border-collapse: collapse;
}


.legal th,
.legal td {
    padding: 10px;

    border: 1px solid #dee2e6;

    text-align: left;

    vertical-align: top;
}


.legal th {
    background: #f8f9fa;

    font-weight: 600;
}


/*
 * ============================================================
 * CODE
 * ============================================================
 */

.legal code {
    padding: 2px 5px;

    background: #f1f3f5;

    border-radius: 4px;

    font-family:
        "SFMono-Regular",
        Consolas,
        "Liberation Mono",
        Menlo,
        monospace;

    font-size: 0.9em;
}


/*
 * ============================================================
 * RESPONSIVE
 * ============================================================
 */

@media (max-width: 650px) {

    body {
        padding: 25px 15px;
    }


    .legal h1 {
        font-size: 28px;
    }


    .legal h2 {
        font-size: 21px;
    }


    .legal table {
        font-size: 14px;
    }


    .legal th,
    .legal td {
        padding: 8px;
    }

}
