.vfl-chronik {
    margin: 2.5rem 0 2rem;
    overflow-wrap: anywhere;
}
.vfl-chronik-jahr + .vfl-chronik-jahr {
    margin-top: 2rem;
}
.vfl-chronik-jahr > h3 {
    color: #327927;
    margin: 0 0 .75rem;
}
.vfl-chronik-eintrag {
    background: #f7f8f5;
    border: 1px solid #dbe2d8;
    border-radius: .5rem;
    margin-bottom: .75rem;
}
.vfl-chronik-eintrag > summary {
    cursor: pointer;
    display: grid;
    gap: .2rem .75rem;
    grid-template-columns: minmax(0, 1fr) 1.1rem;
    list-style: none;
    padding: .9rem 1rem;
}
.vfl-chronik-eintrag > summary::-webkit-details-marker {
    display: none;
}
.vfl-chronik-eintrag > summary::after {
    content: "+";
    color: #327927;
    font-size: 1.35rem;
    font-weight: 700;
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
}
.vfl-chronik-eintrag[open] > summary::after {
    content: "−";
}
.vfl-chronik-eintrag > summary:focus-visible {
    outline: 2px solid #327927;
    outline-offset: 2px;
}
.vfl-chronik-eintrag > summary > * {
    grid-column: 1;
}
.vfl-chronik-eintrag time {
    color: #436242;
    font-size: .9em;
    font-weight: 600;
}
.vfl-chronik-eintrag strong {
    color: #252825;
    font-size: 1.12em;
    line-height: 1.35;
}
.vfl-chronik-eintrag > summary > span {
    line-height: 1.55;
}
.vfl-chronik-beitrag {
    background: #fff;
    border-top: 1px solid #dbe2d8;
    padding: 1.25rem;
}
#main .vfl-chronik-beitrag,
#main .vfl-news-page .wp-block-post-content:has(> .vfl-chronik-titelbild) {
    display: flow-root;
    max-width: 1080px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}
#main .vfl-chronik-titelbild {
    display: block;
    float: right;
    width: auto !important;
    height: auto !important;
    max-width: 42% !important;
    max-height: 320px !important;
    object-fit: contain;
    border-radius: .4rem;
    margin: .25rem 0 1rem 1.5rem;
}
#main .vfl-chronik-beitrag:not(:has(> p ~ p)):not(:has(.vfl-chronik-fotos, .wp-block-gallery)) > .vfl-chronik-titelbild {
    float: none;
    max-width: 100% !important;
    max-height: 260px !important;
    margin: .25rem auto 1rem;
}
#main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    clear: both;
    gap: 1rem;
    width: 100%;
    max-width: none;
    margin: 1.5rem 0 .5rem;
}
#main .vfl-chronik-fotos > .wp-block-group__inner-container,
#main .vfl-chronik-beitrag .wp-block-gallery > .blocks-gallery-grid {
    display: contents;
}
#main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) .wp-block-image {
    float: none;
    margin: 0 !important;
    min-width: 0;
    width: 100% !important;
    max-width: none;
    justify-self: stretch;
}
#main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) img {
    display: block;
    width: 100% !important;
    height: 280px !important;
    max-height: 280px;
    object-fit: contain;
    object-position: center;
    background: #f3f5f0;
    border-radius: .35rem;
}
#main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) .wp-block-image:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    width: calc(50% - .5rem) !important;
    justify-self: center;
}
@media (max-width: 600px) {
    #main .vfl-chronik-titelbild {
        float: none;
        max-width: 100% !important;
        max-height: 250px !important;
        margin: .5rem auto 1rem;
    }
    #main .vfl-chronik-beitrag:not(:has(> p ~ p)):not(:has(.vfl-chronik-fotos, .wp-block-gallery)) > .vfl-chronik-titelbild {
        max-height: 250px !important;
    }
    #main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) {
        grid-template-columns: minmax(0, 1fr);
        gap: .8rem;
    }
    #main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) .wp-block-image:last-child:nth-child(odd) {
        grid-column: auto;
        width: 100% !important;
    }
    #main :is(.vfl-chronik-fotos, .vfl-chronik-beitrag .wp-block-gallery) img {
        height: 250px !important;
        max-height: 250px;
    }
    .vfl-chronik-eintrag > summary,
    .vfl-chronik-beitrag {
        padding: .8rem;
    }
}

/* Vorbereitete Bildpaare: nur für die beiden redaktionell ergänzten Beiträge. */
#main .vfl-chronik-fotos.vfl-selected-photos {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:24px 0;
  clear:both;
}
#main .vfl-chronik-fotos.vfl-selected-photos .wp-block-image {
  display:flex;
  flex-direction:column;
  width:100%!important;
  margin:0!important;
  min-width:0;
}
#main .vfl-chronik-fotos.vfl-selected-photos img {
  width:100%!important;
  height:300px!important;
  max-height:300px;
  object-fit:cover!important;
  object-position:center;
  border-radius:6px;
}
#main .vfl-chronik-fotos.vfl-selected-photos figcaption {
  margin:0;
  padding:8px 0 0;
  font-size:14px!important;
  line-height:1.4!important;
  color:#576150;
}
@media(max-width:600px) {
  #main .vfl-chronik-fotos.vfl-selected-photos {grid-template-columns:minmax(0,1fr);gap:18px}
  #main .vfl-chronik-fotos.vfl-selected-photos img {height:230px!important;max-height:230px}
}
