:root {
    --primaer: #1f4e79;
    --akzent:  #e8a33d;
    --grau:    #f4f6f8;
}
 
* { margin: 0; padding: 0; box-sizing: border-box; }
 
body {
    font-family: system-ui, Arial, sans-serif;
    line-height: 1.6;
    color: #222;
}
 
.container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 1.25rem;
}
 
/* Kopfbereich */
header { border-bottom: 1px solid #ddd; }
.kopf {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 1rem; padding-bottom: 1rem;
}
.logo { font-size: 1.3rem; font-weight: bold;
        color: var(--primaer); text-decoration: none; }
nav ul { display: flex; gap: 1.5rem; list-style: none; }
nav a { color: #222; text-decoration: none; }
nav a:hover { color: var(--primaer); }
.menue-knopf { display: none; font-size: 1.5rem;
               background: none; border: none; cursor: pointer; }
 
/* Einstieg */
.einstieg {
    background: var(--primaer);
    color: #fff;
    padding: 4rem 0;
    text-align: center;
}
.einstieg h1 { font-size: 2.2rem; margin-bottom: 1rem; }
.knopf {
    display: inline-block;
    background: var(--akzent);
    color: #1a1a1a;
    padding: 0.8rem 1.8rem;
    border-radius: 6px;
    text-decoration: none;
    margin-top: 1.5rem;
}
 
/* Abschnitte und Karten */
.abschnitt { padding: 3rem 0; }
.grau { background: var(--grau); }
.abschnitt h2 { color: var(--primaer); margin-bottom: 1rem; }
 
.karten {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.5rem;
    margin-top: 1.5rem;
}
.karte {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 1.5rem;
    font-style: normal;
}
.karte h3 { color: var(--primaer); margin-bottom: 0.5rem; }
.karte a { color: var(--primaer); font-weight: bold; }
.klein { font-size: 0.85rem; color: #666; }
 
/* Fußbereich */
footer { background: #16232e; color: #ccc; padding: 1.5rem 0; }
footer a { color: #ccc; margin-right: 1rem; }
 
/* Handy */
@media (max-width: 768px) {
    .menue-knopf { display: block; }
    nav { display: none; width: 100%; }
    nav.offen { display: block; }
    nav ul { flex-direction: column; gap: 0.5rem; padding: 1rem 0; }
    .kopf { flex-wrap: wrap; }
}
