/**
 * mod_academy_profiles
 *
 * Eigenständig gestaltet, weil das Template "astropraxis" kein CSS-Framework
 * mitbringt. Alles unter .academy-profiles verschachtelt.
 *
 * Die Spaltenzahl kommt als CSS-Variable aus dem Layout. auto-fit sorgt
 * dafür, dass die eingestellte Zahl eine OBERGRENZE ist: Auf schmalen
 * Bildschirmen bricht das Raster von selbst um, ohne Medienabfrage je Stufe.
 */

.academy-profiles {
    --academy-profiles-columns: 4;
    --ap-primary: #432333;
    --ap-muted: #6b6069;
    --ap-gap: 1.5rem;

    display: grid;
    gap: var(--ap-gap);
    grid-template-columns: repeat(auto-fit, minmax(min(11rem, 100%), 1fr));
}

@media (min-width: 700px) {
    .academy-profiles {
        grid-template-columns: repeat(var(--academy-profiles-columns), 1fr);
    }
}

.academy-profiles-card {
    display: flex;
    flex-direction: column;
    gap: .6rem;
}

.academy-profiles-link {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    text-decoration: none;
    color: inherit;
}

.academy-profiles-link:hover .academy-profiles-name,
.academy-profiles-link:focus-visible .academy-profiles-name {
    text-decoration: underline;
}

.academy-profiles-link:focus-visible {
    outline: 2px solid var(--ap-primary);
    outline-offset: 3px;
}

.academy-profiles-photo img {
    display: block;
    inline-size: 100%;
    block-size: auto;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: 2px;
}

.academy-profiles-placeholder {
    display: block;
    inline-size: 100%;
    aspect-ratio: 4 / 5;
    background: #ece8ea;
    border-radius: 2px;
}

.academy-profiles-caption {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.academy-profiles-name {
    font-weight: 700;
    line-height: 1.3;
    color: var(--ap-primary);
}

.academy-profiles-subtitle {
    font-size: .875rem;
    line-height: 1.4;
    color: var(--ap-muted);
}

/* Position (1.2.0) — etwas zurückhaltender als der Untertitel, damit die
   Reihenfolge Name » Untertitel » Position auch optisch eine Abstufung ist. */
.academy-profiles-position {
    font-size: .8125rem;
    line-height: 1.4;
    color: var(--ap-muted);
    opacity: .9;
}
