/*
Theme Name: Beaver Builder Child Theme
Theme URI: https://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: https://www.fastlinemedia.com
template: bb-theme
*/

/* Add your custom styles here...Remember to change the Version number above! */

.fl-page-header-container{
	background-image: url(/wp-content/uploads/2025/06/watercolor.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-attachment: scroll;
    background-size: auto;
}

.content-single-nieuwsbericht .fl-row-content-wrap{
	 box-shadow: -1px 10px 36px -9px rgba(0, 0, 0, 0.75);
    -webkit-box-shadow: -1px 10px 36px -9px rgb(0 0 0 / 16%);
    -moz-box-shadow: -1px 10px 36px -9px rgba(0,0,0,0.75);
    margin-top: -150px;
    background: white;
    margin-bottom: 40px;
	border-radius: 20px;
}

.related-posts-carousel.familie {
    padding-top: 0px;
    padding-bottom: 0px;
}

.familie .post-carousel-image{
    height: auto;
}

.content-single-nieuwsbericht .fl-row-content-wrap .fl-row-content .fl-col-group .fl-col .fl-col-content .fl-module-photo .fl-photo-content img{
	border-radius: 10px 10px 0px 0px;
    object-fit: cover;
    max-height: 475px;
}

.content-single-nieuwsbericht .fl-row-content-wrap{
	margin-bottom: 0;
}

.home .fl-page-nav-right .fl-page-nav-wrap .navbar-nav li.current-menu-item>a{
    color: #28265a !important;
}

/* .single-post h1{
    padding-left: 20px;
    position: relative;
}

.single-post h1:before {
    content: "\f105" !important;
    color: #ff7f7f;
    font-size: 30px;
    font-family: "Font Awesome 5 Free";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
} */

.footer-nieuwsbericht{
	max-width: 225px;
    background: #28265a;
    padding: 20px;
    border-radius: 0px 0px 10px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
	margin: 0 auto;
	margin-bottom: 40px;
}

.footer-nieuwsbericht h4{
	color: white;
}

.footer-nieuwsbericht-rij .fl-row-content-wrap .fl-row-content .fl-col-group .fl-col .fl-col-content .fl-module{
	margin: 0;
}


            .related-posts-carousel {
                padding: 40px 0;
                position: relative;
            }
            
            .swiper-container-related {
                overflow: hidden;
                position: relative;
                padding: 0 50px;
            }
            
            .swiper-slide-post {
                height: auto;
            }
            
            .post-carousel-item {
                position: relative;
                overflow: hidden;
                border-radius: 8px;
                cursor: pointer;
                transition: transform 0.3s ease;
            }
            
            .post-carousel-image {
                position: relative;
                width: 100%;
                height: 300px;
                overflow: hidden;
            }
            
            .post-carousel-image img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 0.5s ease;
            }
            
            .post-carousel-item:hover .post-carousel-image img {
                transform: scale(1.1);
            }
            
            .post-carousel-overlay {
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.3) 50%, transparent 100%);
                display: flex;
                flex-direction: column;
                justify-content: flex-end;
                padding: 20px;
                color: white;
            }
            
            .post-carousel-title {
                margin-top: 5px;
                font-size: 20px;
                font-weight: bold;
                margin-bottom: 10px;
                line-height: 1.3;
                color: white;
                text-decoration: none;
                display: block;
                transition: color 0.3s ease;
            }
            
            .post-carousel-title:hover {
                color: #f0f0f0;
            }
            
            .post-carousel-date {
                font-size: 14px;
                opacity: 0.9;
                color: white;
            }
           
            .swiper-button-next-custom,
            .swiper-button-prev-custom {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                width: 40px;
                height: 40px;
                background: rgba(255,255,255,0.9);
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                cursor: pointer;
                transition: all 0.3s ease;
                z-index: 10;
                box-shadow: 0 2px 10px rgba(0,0,0,0.1);
            }
            
            .swiper-button-next-custom:hover,
            .swiper-button-prev-custom:hover {
                background: white;
                box-shadow: 0 4px 20px rgba(0,0,0,0.2);
            }
            
            .swiper-button-prev-custom {
                left: 20px;
            }
            
            .swiper-button-next-custom {
                right: 20px;
            }
            
            .swiper-button-next-custom:after,
            .swiper-button-prev-custom:after {
                font-family: swiper-icons;
                font-size: 16px;
                color: #333;
                font-weight: bold;
            }
            
            .swiper-button-prev-custom:after {
                content: "prev";
            }
            
            .swiper-button-next-custom:after {
                content: "next";
            }
            
            /* Responsief voor mobiel */
            @media (max-width: 768px) {
                .swiper-container-related {
                    padding: 0 30px;
                }
                
                .post-carousel-image {
                    height: 250px;
                }
                
                .post-carousel-title {
                    font-size: 18px;
                }
                
                .swiper-button-next-custom,
                .swiper-button-prev-custom {
                    width: 35px;
                    height: 35px;
                }
            }
            
            @media (max-width: 480px) {
                .swiper-container-related {
                    padding: 0 20px;
                }
                
                .post-carousel-image {
                    height: 200px;
                }
                
                .post-carousel-title {
                    font-size: 16px;
                }
                
                .post-carousel-overlay {
                    padding: 15px;
                }
            }

.single-post .fl-page-footer-widgets, .single-familiebericht .fl-page-footer-widgets{
	padding-top: 250px;
}

.cta-nieuwsbericht{
	position: absolute;
    top: -15px;
    left: 50%;
    transform: translate(-50%, 0%);
    z-index: 10;
}

/* Wrapper om horizontaal te kunnen scrollen */
.table-wrapper {
  width: 100%;
  overflow-x: auto;
  max-height: 500px; /* stel zelf de max hoogte in voor verticaal scrollen */
  border: 1px solid #ddd;
  border-radius: 6px;
}

/* Algemene tabel styling */
table.dataframe {
  width: 100%;
  border-collapse: collapse;
  min-width: 800px; /* zodat hij kan scrollen op kleine schermen */
  font-family: Arial, sans-serif;
  font-size: 14px;
}

/* Kopregel */
table.dataframe thead th {
  background-color: #f2f2f2;
  padding: 12px;
  text-align: left;
  border-bottom: 2px solid #ddd;
  white-space: nowrap;
  position: sticky;
  top: 0;
  z-index: 2; /* blijft boven de body-rijen */
}

/* Rij-styling */
table.dataframe tbody td {
  padding: 10px 14px;
  border-bottom: 1px solid #eee;
  white-space: nowrap;
}

/* Zebra-strepen */
table.dataframe tbody tr:nth-child(odd) {
  background-color: #fafafa;
}

table.dataframe tbody tr:nth-child(even) {
  background-color: #ffffff;
}

/* Links in de tabel */
table.dataframe a {
  color: #28265A;
  text-decoration: none;
}

table.dataframe a:hover {
  text-decoration: underline;
}

.mejs-container{
    border-radius: 20px 20px 0px 0px;
    overflow: hidden;
}

.famiie-kolom{
    position: relative;
}

.familie-afb{
    position: absolute;
    bottom: -150px;
    left: 50%;
    transform: translate(-50%, 0%);
    border-radius: 280px;
    overflow: hidden;
    z-index: 10;
}

.familie-titel{
    font-size: 35px !important;
    color: white !important;
}

.familie-titel.memoriam{
    font-size: 30px !important;
}

.extra-titel-rij{
    width: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    z-index: 9;
}

.kessellogo{
    background: #28265a;
    padding-top: 20px;
    padding-bottom: 20px;
}

.kessellogo img{
    margin: 0 auto;
    display: block;
}

.video-speler-familie .fl-wp-video.wp-video-shortcode, .video-speler-familie .fl-wp-video .wp-video .mejs-container{
    object-fit: cover !important;
    height: 530px !important;
}

.video-speler-familie .fl-wp-video .wp-video-shortcode{
    object-fit: cover !important;
}

.video-speler-familie{
    height: 530px !important;
}

.video-speler-familie .fl-wp-video{
        height: 530px !important;
}


    .filter-controls {
        margin-bottom: 20px;
    }
    
    .filter-buttons {
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
        margin-bottom: 20px;
    }
    
    .filter-btn {
        padding: 8px 16px;
        border: 1px solid #FF7F7F;
        background: #FF7F7F;
        cursor: pointer;
        border-radius: 4px;
        transition: all 0.3s ease;
    }
    
    .filter-btn:hover,
    .filter-btn.active {
        background: #28265a;
        color: #fff;
        border-color: #28265a;
    }
    
    .posts-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
        gap: 15px;
        margin-bottom: 30px;
    }
    
    .post-carousel-item {
        position: relative;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        transition: transform 0.3s ease;
    }
    
    .post-carousel-link {
        display: block;
        text-decoration: none;
        color: inherit;
    }
    
    .post-carousel-image {
        position: relative;
        height: 250px;
        overflow: hidden;
    }
    
    .post-carousel-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .post-carousel-overlay {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        background: linear-gradient(transparent, rgba(0,0,0,0.8));
        padding: 20px;
        color: white;
    }
    
    .post-carousel-title {
        margin: 0 0 5px 0;
        font-size: 18px;
        font-weight: bold;
    }
    
    .post-carousel-date {
        font-size: 14px;
        opacity: 0.9;
    }
    
    .pagination {
        display: flex;
        justify-content: center;
        gap: 5px;
        margin-top: 30px;
    }
    
    .pagination a,
    .pagination span {
        padding: 8px 12px;
        border: 1px solid #ddd;
        border-radius: 3px;
        text-decoration: none;
        color: #28265A;
    }
    
    .pagination .current {
        background: #28265A;
        color: white;
        border-color: #28265A;
        border-radius: 3px;
    }
    
    #loading-spinner {
        text-align: center;
        padding: 20px;
    }

    .autoplay-video-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 530px;
    border-radius: 20px 20px 0px 0px;
}

.autoplay-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: none;
    outline: none;
}

.autoplay-video::-webkit-media-controls {
    display: none !important;
}

.autoplay-video::-webkit-media-controls-panel {
    display: none !important;
}

.autoplay-video::-webkit-media-controls-play-button {
    display: none !important;
}

.autoplay-video::-webkit-media-controls-start-playback-button {
    display: none !important;
}

[data-vp-layout=masonry] .vp-portfolio__item-wrap .vp-portfolio__item{
    border-radius: 5px;
}

#wpforms-374-field_4{
    height: 30px;
}

.wp-block-visual-portfolio{
    margin-top: 50px;
}

.fc-scroller>.fc-day-grid, .fc .fc-scrollgrid-section-body table, .fc-unthemed th{
	background: #ffffff;
}

.tribe-events-event-meta.primary, .tribe-events-venue-map{
	width: 100%
}

.tribe-events-meta-group {
    flex: 1 0 100%;
}

@media(max-width: 1100px){
    .content-single-nieuwsbericht{
        margin: 40px;
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 0;
    }
    .content-single-nieuwsbericht .fl-row-content-wrap{
        margin-top: -180px;
    }
}

@media(max-width: 992px){
    .content-single-nieuwsbericht .fl-row-content-wrap{
        margin-top: -325px !important;
    }
    .cta-nieuwsbericht{
        top: 21px;
    }
    .single .content-single-nieuwsbericht .fl-row-content-wrap{
        margin-top: -185px !important;
    }
    .post-template-defaul h1{
        font-size: 35px !important;
    }
}

@media(max-width: 768px){
    .single-familiebericht .content-single-nieuwsbericht .fl-row-content-wrap{
        margin-top: -350px !important;
    }
    .autoplay-video-container{
        height: 425px;
    }
}

@media(max-width: 767px){
.fl-page-header-container{
    padding-top: 15px;
}
.fl-page-header-logo{
    padding-bottom: 15px !important;
}
.fl-nav-mobile-offcanvas.fl-responsive-nav-enabled .fl-nav-offcanvas-collapse.navbar-collapse{
    width: 100% !important;
}
.fl-page-nav-toggle-icon.fl-page-nav-toggle-visible-mobile .fl-page-nav .navbar-toggle{
    font-size: 30px !important;
}
.fl-nav-mobile-offcanvas.fl-responsive-nav-enabled.fl-offcanvas-push-right .fl-page .fl-nav-offcanvas-collapse, .fl-nav-mobile-offcanvas.fl-responsive-nav-enabled.fl-offcanvas-push-opacity-right .fl-page .fl-nav-offcanvas-collapse {
    right: -100%;
}
.fl-nav-mobile-offcanvas.fl-responsive-nav-enabled header[class*=" fl-page-nav-toggle-visible-"].fl-page-header .fl-nav-offcanvas-collapse .navbar-nav li>a {
    font-size: 26px;
}
.fl-nav-mobile-offcanvas.fl-responsive-nav-enabled .fl-offcanvas-close {
    font-size: 33px;
}
.fl-nav-mobile-offcanvas.fl-responsive-nav-enabled.fl-offcanvas-push-right .fl-page .fl-button-close{
    text-align: right;
}
.inhoud-content{
    margin-top: 100px !important;
}
.familie-afb .fl-photo-content{
    width: 230px !important;
}
.familie-afb{
    bottom: -75px;
}
.cta-nieuwsbericht{
    top: 66px;
}
}





