/* Inhalts-, Rechts- und Detailseiten (Impressum, Datenschutz, Prüfverfahren). */
.inhaltskopf {
    background: linear-gradient(160deg, var(--farbe-primaer) 0%, var(--farbe-primaer-dunkel) 100%);
    color: var(--farbe-text-invers);
    padding-block: var(--abstand-gross);
}

.inhaltskopf__pfad {
    font-size: 0.85rem;
    color: #cfe0f0;
    margin-bottom: 0.6rem;
}

.inhaltskopf__pfad a {
    color: #e6eef7;
    text-decoration: underline;
}

.inhaltskopf__kuerzel {
    display: inline-block;
    font-weight: 700;
    letter-spacing: 0.04em;
    background: rgba(255, 255, 255, 0.16);
    color: #ffffff;
    padding: 0.15rem 0.7rem;
    border-radius: 999px;
    font-size: 0.85rem;
    margin-bottom: 0.6rem;
}

.inhaltskopf__titel {
    color: var(--farbe-text-invers);
    margin-bottom: 0.4rem;
}

.inhaltskopf__untertitel {
    color: #d7e5f2;
    max-width: 70ch;
    font-size: 1.05rem;
}

.inhaltsseite {
    display: grid;
    gap: var(--abstand-gross);
    /* Grid-Spalte darf nicht über den Container hinauswachsen. Ohne minmax(0,…)
       richtet sich die Spur nach dem breitesten Mindestinhalt eines Kindes –
       ein einziger langer Knopftext zog so alle Karten in die Breite. */
    grid-template-columns: minmax(0, 1fr);
}

/* Gleiche Absicherung für die Kinder selbst: Grid-Elemente haben von Haus aus
   min-width: auto und schrumpfen sonst nicht unter ihren Mindestinhalt. */
.inhaltsseite > * {
    min-width: 0;
}

.inhaltsseite--schmal {
    max-width: 820px;
}

/* Rechts-/Textseiten (Impressum, Datenschutz): Inhalt direkt auf dem
   hellgrauen Hintergrund, keine weiße Kachel, volle Inhaltsbreite. */
.rechtstext > h2 {
    color: var(--farbe-primaer);
    font-size: 1.4rem;
    margin-top: var(--abstand-gross);
    margin-bottom: var(--abstand-klein);
}

.rechtstext > h2:first-child {
    margin-top: 0;
}

.rechtstext h3 {
    color: var(--farbe-primaer);
    font-size: 1.05rem;
    margin-top: var(--abstand-mittel);
    margin-bottom: 0.3rem;
}

.rechtstext p,
.rechtstext ul {
    margin-bottom: var(--abstand-mittel);
}

.rechtstext ul {
    padding-left: 1.3rem;
    list-style: disc;
}

.rechtstext li {
    margin-bottom: 0.35rem;
}

.inhaltsseite .karte h3 {
    margin-top: var(--abstand-mittel);
    margin-bottom: 0.3rem;
    color: var(--farbe-primaer);
    font-size: 1.05rem;
}

.inhaltsseite .karte p,
.inhaltsseite .karte ul {
    margin-bottom: var(--abstand-mittel);
}

.inhaltsseite .karte ul {
    padding-left: 1.3rem;
    list-style: disc;
}

.inhaltsseite .karte li {
    margin-bottom: 0.35rem;
}

.inhaltsseite__hinweis {
    color: var(--farbe-text-leise);
    font-size: 0.92rem;
}

/* Prüfpunkt-Liste auf den Verfahren-Detailseiten. */
.pruefpunkt-liste {
    list-style: none;
    display: grid;
    gap: 0.6rem;
    padding-left: 0 !important;
    margin-bottom: var(--abstand-mittel) !important;
}

.pruefpunkt-liste li {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
}

.pruefpunkt-liste svg {
    flex: 0 0 auto;
    margin-top: 0.15rem;
    color: var(--farbe-erfolg);
}

/* CTA-Band als abgesetzte Karte innerhalb von Inhaltsseiten. */
.siegel-cta--einbett {
    border: 1px solid var(--farbe-rahmen);
    border-radius: var(--radius-gross);
    padding-inline: var(--abstand-gross);
}

.siegel-cta__raster--mittig {
    grid-template-columns: 1fr;
    text-align: center;
}

.siegel-cta__raster--mittig .siegel-cta__aktionen {
    justify-content: center;
}

/* Team-Profil (Über uns): Foto + Text nebeneinander. */
.team-profil__inhalt {
    display: flex;
    flex-wrap: wrap;
    gap: var(--abstand-gross);
    align-items: flex-start;
}

.team-profil__bild {
    flex: 0 0 auto;
    width: 220px;
}

.team-profil__bild img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: center 22%;
    border-radius: var(--radius-mittel);
    display: block;
    box-shadow: var(--schatten-karte);
}

.team-profil__text {
    flex: 1 1 320px;
    min-width: 0;
}

/* Der Brotkrumen-Pfad ist Navigation und war mit 0.85rem (13,6 px) auf dem
   Handy grenzwertig klein. */
@media (max-width: 640px) {
    .inhaltskopf__pfad {
        font-size: 0.9rem;
    }
}
