.frm-personen { container-type: inline-size; color: var(--fr-ink, #334155); font: 400 20px/1.6 'Hanken Grotesk', sans-serif; min-width: 0; margin-block: 64px; }
.frm-personen *, .frm-personen *::before, .frm-personen *::after { box-sizing: border-box; }
.frm-personen__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 32px; }
.frm-personen__card, .frm-personen__body { min-width: 0; }
.frm-personen .frm-personen__heading { color: var(--fr-blue, #2A5E9A); font: 450 clamp(36px, 3.5vw, 56px)/1.12 Newsreader, Georgia, serif; letter-spacing: -.02em; margin: 0 0 32px; overflow-wrap: anywhere; hyphens: auto; }
.frm-personen .frm-bild-text__dot { color: var(--fr-red, #B4453D); }
.frm-personen .frm-bild-text__end { white-space: nowrap; }
.frm-personen__media, .frm-personen__initials { margin: 0 0 24px; aspect-ratio: 4/3; background: var(--fr-hover, #F1F0ED); }
.frm-personen__media img { display: block; width: 100%; height: 100%; aspect-ratio: 4/3; object-fit: cover; }
.frm-personen__initials { display: flex; align-items: center; justify-content: center; color: var(--fr-blue, #2A5E9A); font: 450 64px/1 Newsreader, Georgia, serif; }
.frm-personen .frm-personen__name { color: var(--fr-blue, #2A5E9A); font: 450 32px/1.12 Newsreader, Georgia, serif; margin: 0 0 8px; overflow-wrap: anywhere; hyphens: auto; text-wrap: balance; }
.frm-personen .frm-personen__role { color: var(--fr-red, #B4453D); font: 400 16px/1.6 'Hanken Grotesk', sans-serif; margin: 0 0 16px; overflow-wrap: anywhere; }
.frm-personen .frm-personen__description { color: inherit; font: inherit; margin: 0; overflow-wrap: anywhere; }
.frm-personen a { color: var(--fr-blue, #2A5E9A); font-weight: 600; text-decoration: none; }
.frm-personen a:hover { color: var(--fr-red, #B4453D); }
.frm-personen a:focus-visible { outline: 3px solid var(--fr-blue, #2A5E9A); outline-offset: 2px; }
@media (max-width: 760px) { .frm-personen { margin-block: 48px; } .frm-personen__grid { grid-template-columns: minmax(0, 1fr); gap: 48px; } .frm-personen .frm-personen__heading { font-size: 36px; } }
@container (max-width: 680px) { .frm-personen__grid { grid-template-columns: minmax(0, 1fr); gap: 48px; } .frm-personen .frm-personen__heading { font-size: 36px; } }
