
/* Allgemeines */

* {
    box-sizing: border-box;
}

    body {
        margin: 0;
        font-family: Arial, sans-serif;
        background-color: #f4f6f9;
        color: #222;
}

/* Kopfbereich */

    header {
        background-color: #163b65;
        color: white;
        text-align: center;
        padding: 10px;
}

    header h1 {
        font-size: 20px;
        margin: 10px 0 20px;
}

/* Navigation */

nav {
    background-color: #48458f;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    padding: 15px;
}

nav a {
    display: inline-block;
    color: white;
    background-color: #292c68;
    text-decoration: none;
    padding: 10px 15px;
    border-radius: 6px;
    margin: 0;
}

nav a:hover {
    background-color: #3674b5;
    color: white;
}

/* Hauptbereich */

    main {
        max-width: 1100px;
        margin: auto;
        padding: 30px 20px;
        min-height: 76vh;
}

/* Abschnitte */

    section {
        background-color: white;
        padding: 25px;
        margin-bottom: 20px;
        border-radius: 10px;
}

    h2 {
     color: #163b65;
}

/* Karten */

    .karten {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px;
        margin-top: 25px;
}

/* Einzelne Karte */

    .box {
        min-width: 0;
        background-color: #f4f6f9;
        padding: 20px;
        border-radius: 10px;
        overflow: hidden;
}

.   box h3 {
        background-color: #5a8a24;
        color: white;
        padding: 15px;
        margin: 0 0 15px;
        border-radius: 5px;
}

/* Bilder */

.  kartenbild {
    display: block;
    width: 100%;
    height: 180px;
    object-fit: cover;
    border-radius: 8px;
}

/* Beschreibung */

    .box p {
        font-size: 16px;
        line-height: 1.5;
}

/* Kontaktbutton */

    .button {
      display: inline-block;
        background-color: #24558a;
         color: white;
        padding: 12px 20px;
        text-decoration: none;
        border-radius: 6px;
        margin-top: 10px;
}

    .button:hover {
     background-color: #163b65;
}

/* Footer */

    footer {
        background-color: #163b65;
        color: white;
        text-align: center;
        padding: 3px;
        margin-top: 100px;
        font-size: 12px;
}

/* Smartphones */

    @media (max-width: 600px) {

        header {
         padding: 10px;
    }

        header h1 {
            font-size: 20px;
    }

        nav {
            gap: 10px;
            padding: 15px;
        }

        nav a {
                font-size: 15px;
                padding: 10px 15px;
            }
    }

        nav a:hover {
            background-color: #3674b5;
            color: white;
    }

        main {
             padding: 15px;
    }

        section {
             padding: 15px;
    }

        h2 {
             font-size: 24px;
    }

        .karten {
            grid-template-columns: 1fr;
            gap: 15px;
    }

        .box {
             padding: 15px;
    }

        .box h3 {
             font-size: 20px;
    }

        .kartenbild {
             height: 200px;
    }

        .button {
             text-align: center;
    }

