/* Home: koppen */
.home-section-title {
    font-size: 26px;
    margin: 30px 0 20px;
}

/* Home: gelijke kaarthoogte voor nieuws, teasers en agenda (Bootstrap 3 heeft geen flex-grid) */
.home-cards:before,
.home-cards:after {
    display: none;
}
@media (min-width: 768px) {
    .home-cards {
        display: flex;
        flex-wrap: wrap;
    }
    .home-cards > [class*="col-"] {
        display: flex;
        float: none;
        margin-bottom: 30px;
    }
}
@media (max-width: 767px) {
    .home-cards > [class*="col-"] {
        margin-bottom: 20px;
    }
}

/* Nieuwskaarten */
.home-cards .panel {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
    background: #fff;
}
.home-cards .panel-header img {
    width: 100%;
    height: auto;
}
.home-cards .panel-body {
    flex: 1 1 auto;
    min-height: 0;
}
.home-cards .panel-body p:last-child {
    margin-bottom: 0;
}
.news .panel .panel-body {
    min-height: 0;
}
.news-more {
    margin-top: 10px;
}

/* Teasers */
.teasers .thumbnail {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0;
    border: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}
.teasers .thumbnail > a {
    display: block;
    margin-bottom: 10px;
}
.teasers .thumbnail .caption {
    padding: 0;
    margin-top: auto;
}

/* Instagram */
.home-instagram {
    margin-top: 10px;
}

/* Agenda */
.event-list .agenda-item {
    background: #fff;
    padding: 15px;
    margin-bottom: 0;
    width: 100%;
}
.event-list .agenda-item:after {
    content: "";
    display: table;
    clear: both;
}
.event-list .agenda-item .time {
    flex: 0 0 auto;
}
.event-list .agenda-item .time .day {
    display: block;
    font-family: roboto_condensedbold, "Roboto Condensed", Georgia, serif;
    font-size: 4em;
}
.event-list .agenda-item .time .month {
    display: block;
    margin: 10px 0;
    font-size: 1em;
}
.event-list .agenda-item .media-body {
    width: auto;
}
.event-list .agenda-item h4 {
    margin-top: 0;
}
.event-list .agenda-item .media-body .date {
    margin-bottom: 0;
}
.home-agenda {
    padding-bottom: 20px;
}
.agenda-list:before,
.agenda-list:after {
    display: none;
}
.agenda-list {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
@media (min-width: 768px) {
    .agenda-list {
        display: flex;
        flex-wrap: wrap;
    }
    .agenda-list > li {
        display: flex;
        float: none;
        margin-bottom: 20px;
    }
}
@media (max-width: 767px) {
    .agenda-list > li {
        margin-bottom: 15px;
    }
    .event-list .agenda-item .time {
        width: 80px;
        height: 80px;
        margin-right: 15px;
    }
    .event-list .agenda-item .time .day {
        font-size: 3em;
    }
    .event-list .agenda-item .time .month {
        margin: 5px 0;
        font-size: 0.85em;
    }
}

/* Contrast: standaard worden links bij hover wit, onleesbaar op witte kaarten */
.home-cards a.panel:hover,
.home-cards a.panel:focus {
    color: #212121;
}
.home-cards .btn:hover,
.home-cards .btn:focus,
.home-section-more .btn:hover,
.home-section-more .btn:focus {
    background: #8f0000 !important;
    color: #fff;
}
.home-cards a:focus-visible,
.home-section-more a:focus-visible {
    outline: 3px solid #212121;
    outline-offset: 2px;
}

/* "Meer"-links onder een sectie */
.home-section-more {
    margin: 0 0 10px;
    text-align: right;
}

/* Lege agenda */
.agenda-empty[hidden] {
    display: none;
}
/* Programma-pagina: uitgebreide agenda-items */
.agenda-item-detail .agenda-name {
    margin: 0 0 10px;
    font-size: 22px;
}
.agenda-meta {
    margin: 0;
    padding: 0;
    list-style: none;
    color: #212121;
}
.agenda-meta > li {
    margin-bottom: 4px;
}
.agenda-meta .fas,
.agenda-meta .far {
    width: 1.25em;
    color: #d00000;
    text-align: center;
}
.agenda-address {
    display: block;
    margin-left: 1.25em;
    font-size: 0.9em;
}
.agenda-month {
    margin: 10px 0 15px;
}
.agenda-month h2 {
    margin: 0;
    padding-bottom: 5px;
    border-bottom: 2px solid #d00000;
    font-size: 22px;
}

/* Paginering (Nieuws) */
.home-pagination {
    text-align: center;
}
.home-pagination .pagination > li > a,
.home-pagination .pagination > li > span {
    color: #d00000;
}
.home-pagination .pagination > .active > span {
    background: #d00000;
    border-color: #d00000;
    color: #fff;
}

/* Prinsengalerij */
.gallery-thumb {
    margin: 0 0 20px;
}
.gallery-thumb img {
    width: 100%;
    height: 225px;
    object-fit: contain;
}
.gallery-thumb .caption {
    min-height: 80px;
    text-align: center;
}
