/* ------------------------------------------------------------------
   Blog (Nieuws) - aanvullingen op de Dax-styling voor de Silverstripe
   blogmodule. Geladen door Blog.ss en BlogPost.ss.
   ------------------------------------------------------------------ */

/* Categoriefilter: in Dax zijn dit <li>'s met een isotope-filter,
   hier zijn het links naar de categoriepagina's van de blogmodule. */
.filter-btns-one.blog-categories li {
    padding: 0;
}
.filter-btns-one.blog-categories li a {
    display: block;
    padding: 8px 15px;
    color: inherit;
}

/* Kaart in het overzicht: klikbare afbeelding; de hoogte moet meeschalen met de breedte
   (de img heeft width/height-attributen tegen layoutverschuiving, Dax zet enkel width: 100%) */
.blog-item .image a {
    display: block;
}
.blog-item .image img {
    height: auto;
}

/* Vorig/volgend bericht: achtergrondafbeelding heeft hoogte nodig */
.next-prev-post .blog-item .image {
    min-height: 180px;
}

/* Detailpagina: content uit de WYSIWYG-editor */
.blog-details-content .lead {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
}
.blog-details-content img {
    max-width: 100%;
    height: auto;
}
.blog-details-content h2:not(:first-child),
.blog-details-content h3:not(:first-child),
.blog-details-content h4:not(:first-child) {
    margin-top: 35px;
}
.blog-details-content p {
    margin-bottom: 15px;
}
.blog-details-content blockquote {
    margin: 40px 0;
}
.blog-details-content blockquote p {
    color: white;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.25;
    margin-bottom: 0;
}
.blog-details-content ul:not([class]) {
    list-style: none;
    padding-left: 0;
    margin-bottom: 25px;
}
.blog-details-content ul:not([class]) li {
    display: flex;
}
.blog-details-content ul:not([class]) li:not(:last-child) {
    margin-bottom: 10px;
}
.blog-details-content ul:not([class]) li:before {
    width: 7px;
    height: 7px;
    flex: none;
    content: '';
    margin-top: 10px;
    margin-right: 10px;
    border-radius: 50%;
    background: var(--primary-color);
}
.blog-details-content ol:not([class]) {
    list-style: decimal;
    padding-left: 20px;
    margin-bottom: 25px;
}
.blog-details-content table {
    width: 100%;
    margin: 40px 0;
    text-align: center;
}
.blog-details-content table th {
    color: white;
    padding: 20px 10px;
    background: #282E35;
}
.blog-details-content table td {
    padding: 20px 10px;
    border-right: 1px solid var(--border-color);
}
.blog-details-content table td:first-child {
    border-left: 1px solid var(--border-color);
}
.blog-details-content table tr:last-child td {
    border-bottom: 1px solid var(--border-color);
}

/* Detailbanner: de titel van het bericht niet per woord kapitaliseren in de breadcrumb */
.blog-single-banner .breadcrumb .breadcrumb-item.active {
    text-transform: none;
}

/* Blog Post Image &Blog Post Image Caption */
.caption {
    font-size: 16px;
}

.captionImage.center, .caption.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

/* Posttypes: videokaart zonder thumbnail, citaatkaart, video-embed op de detailpagina */
.blog-item .image.video.bgc-black {
    min-height: 220px;
}
.blog-item .content .quote a {
    color: inherit;
}
.blog-item .content .quote a:hover {
    color: var(--primary-color);
}
.blog-details-content .ratio iframe {
    border: 0;
}

/* Instagram-berichten */
.blog-item .image.video .video-play-link {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 2;
    color: white;
    font-size: 40px;
    transform: translate(-50%, -50%);
}
.blog-item .content .blog-meta li a:not(:hover) {
    color: inherit;
}
.instagram-media {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
}
.instagram-media img,
.instagram-media video {
    display: block;
    width: 100%;
    height: auto;
}
.instagram-media .instagram-video,
.instagram-media .instagram-video-fallback {
    grid-column: 1 / -1;
}
.instagram-media .instagram-video {
    max-height: 80vh;
    background: #000;
}
.instagram-media .instagram-video-fallback {
    position: relative;
    display: block;
}
.instagram-media .instagram-video-fallback .theme-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/* Afbeeldingen uit de WYSIWYG-editor (klassen van Silverstripe: captionImage, caption, left/right/center).
   De editor zet een vaste breedte in px op de omhullende div; op smalle schermen moet die meeschalen. */
.blog-details-content .captionImage {
    max-width: 100%;
    margin-bottom: 25px;
}
.blog-details-content .captionImage img {
    width: 100%;
    height: auto;
}
.blog-details-content .captionImage.center,
.blog-details-content img.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.blog-details-content .captionImage.left,
.blog-details-content img.left {
    float: left;
    margin: 5px 25px 15px 0;
}
.blog-details-content .captionImage.right,
.blog-details-content img.right {
    float: right;
    margin: 5px 0 15px 25px;
}
.blog-details-content .captionImage.leftAlone,
.blog-details-content img.leftAlone {
    display: block;
    margin: 0 auto 25px 0;
}
.blog-details-content .captionImage.rightAlone,
.blog-details-content img.rightAlone {
    display: block;
    margin: 0 0 25px auto;
}
.blog-details-content .caption {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.5;
    color: #62656A;
}
.blog-details-content .caption.center {
    text-align: center;
}
.blog-details-content p:after,
.blog-details-content h2:after,
.blog-details-content h3:after,
.blog-details-content h4:after {
    content: '';
    display: table;
    clear: both;
}
@media (max-width: 575px) {
    /* Zwevende afbeeldingen op een telefoon gecentreerd onder elkaar, zonder ze op te blazen */
    .blog-details-content .captionImage.left,
    .blog-details-content .captionImage.right,
    .blog-details-content img.left,
    .blog-details-content img.right {
        float: none;
        display: block;
        max-width: 100%;
        margin: 0 auto 20px;
    }
}
