

/* SEITE: LEHRGÄNGE */
section.lehrgang {
    margin-bottom: 2rem;
    display: grid;
    gap: 0.2rem 1rem;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4, max-content);
    grid-template-areas: 
        "title"
        "date"
        "location"
        "ausschreibung"
        ;
}

@media (min-width: 960px) {
    section.lehrgang {
        grid-template-columns: 25ch 1fr;
        grid-template-rows: repeat(3, max-content);
        grid-template-areas: 
            "date title"
            "empty location"
            "empty ausschreibung"
            ;
    }

    .lehrgang .date { 
        text-align: end;
        margin-top: revert;
    }

    .lehrgang .title,
    .lehrgang .date { 
        align-self: baseline;
    }
}

.lehrgang .date { 
    grid-area: date;
    font-style: italic;
    margin-top: -1ex;
}
.lehrgang .title {
    grid-area: title;
    font-size: large;
}
.lehrgang .location { grid-area: location }
.lehrgang .ausschreibung { grid-area: ausschreibung }


/* SEITE: LEHRERIN */
.lehrerin-table {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.2rem 1rem;
}

.lehrerin-table .row {
    display: grid;
    grid-column: 1 / span 2;
    grid-template-columns: subgrid;
}

.lehrerin-table .row :first-child {
    font-weight: 800;
    text-align: end;
}

.lehrerin-table .row p {
    margin: 0;
    text-wrap: balance;
}



/* FIGURES */
figure {
    display: grid;
    margin: 1rem;
    place-content: center;
}

figure > figcaption {
    display: grid;
    grid-template-columns: 1fr max-content;
    gap: 1em;
    margin: 0;
}

figcaption > .caption {
    margin: 0;
    display: inline-block;
    grid-column: 1 / span 1;
}

figcaption > .attr {
    grid-column: 2 / span 1;
}

figure.small-figure-float {
    float: inline-end;
}

figure.half-size {
    max-width: clamp(32ch, 50%, 45ch);
    margin-inline: auto;
}

figure.full-width {
    margin-inline: 0;
}


/* GALLERIES */
.gallery {
  display: flex;
  flex-direction: column;

  margin-bottom: 2rem;

  .gallery__images {
    display: flex;
    gap: 0.25rem 0.5rem;
    justify-content: center;
    flex-wrap: wrap;
  }

  .gallery__caption {
    text-align: center;
  }
}

@media (prefers-reduced-motion: no-preference) {
    .gallery a {
        transition: scale 200ms;
    }
    .gallery a:hover {
        scale: 1.02;
    }
}


/* BERICHTE */
a.bericht-link {
    display: block;
    margin-top: -1rem;
    margin-bottom: 2rem;
}


/* WANN UND WO */
.wann-wo-grid {
    display: grid;
    gap: 0.2rem 1rem;
    grid-template-columns: minmax(10ch, max-content) repeat(2, max-content);
    justify-content: center;
    margin-bottom: 1rem;
}

.wann-wo-grid .two-rows { grid-row-end: span 2 }
.wann-wo-grid .two-cols { grid-column-end: span 2 }
.wann-wo-grid .col1 { grid-column-start: 1 }
.wann-wo-grid .col2 { grid-column-start: 2 }
.wann-wo-grid .col3 { grid-column-start: 3 }
