/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

h1 {
	word-spacing:-4px;
}
h2 {
	line-height: 1em;
}

@media only screen and (max-width:999px) and (min-width:691px) {
	h3 {
		font-size: 1.35em !important;
		line-height: 1.2 !important;	
	}
}

/* Drop-Shadow */

.drop-shadow {
	filter: drop-shadow(0px 2px 2px rgba(0,0,0,0.5));
}

/* Fullscreen Mobile */

@media only screen and (max-width: 999px) {
    /* 1. Set the column height */
    .fullscreen-mobile {
        min-height: calc(100vh - (94px + var(--nectar_hook_before_nav_content_height, 0px))) !important;
        min-height: calc(100dvh - (94px + var(--nectar_hook_before_nav_content_height, 0px))) !important; 
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-end !important;
        position: relative !important;
    }

    /* 2. Force the inner structures to fill the container */
    .fullscreen-mobile > .vc_column-inner,
    .fullscreen-mobile > .vc_column-inner > .wpb_wrapper {
        height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-end !important;
    }
    
    /* 3. FIX: Override Salient's JS heights and force the background to cover 100% */
    .fullscreen-mobile .column-image-bg-wrap,
    .fullscreen-mobile .inner-wrap,
    .fullscreen-mobile .column-image-bg {
        height: 100% !important;
        min-height: 100% !important;
        top: 0 !important;
        transform: none !important; /* Disables the parallax movement breaking the alignment */
    }

    /* Ensures the actual <img> tag fills the container properly */
    .fullscreen-mobile .column-image-tag {
        height: 100% !important;
        object-fit: cover !important;
    }
}

/* Navigation */

.menu-title-text {
	font-weight: bold;
}

#top nav>.sf-menu>li ul {
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
}

.sf-menu>li ul a {
	padding: 6px 12px;
}

#top .sf-menu li ul li.menu-item a {
	border-radius: 6px;
	margin-bottom: 2px;
}

#header-outer nav>ul>.megamenu>ul>li>a {
	border-bottom: 1px solid;
	border-radius: 0 !important;
	padding: 0 !important;
	margin-bottom: 6px !important;
}

#header-outer nav > ul > .megamenu > ul > li > a {
	font-size: 1.7em !important;
}

/* Off Canvas Navigation */

@media only screen and (max-width: 1000px) {
    /* 1. Reset: Turn off bullets everywhere to clear the board */
    ul.sub-menu li {
        list-style: none !important;
        list-style-type: none !important;
    }

    /* 2. Target the nested second-level sub-menu list items */
    ul.sub-menu > li.menu-item > ul.sub-menu > li {
        display: block !important;
        position: relative !important;
        /* Create a gutter on the left so the text doesn't sit on top of the bullet */
        padding-left: 20px !important;
    }

    /* 3. Manually inject a bullet anchored to the first line */
    ul.sub-menu > li.menu-item > ul.sub-menu > li::before {
        content: "•" !important;
        position: absolute !important;
        left: 0 !important;
        /* Aligns it directly with the height of the first line of text */
        top: -4px !important; 
        
        /* Match your theme styling */
        color: #e76c32 !important; 
        font-size: 1.75em !important;
        line-height: 1 !important;
    }
	
	#slide-out-widget-area[data-dropdown-func=separate-dropdown-parent-link] .off-canvas-menu-container li ul {
		padding-left: 5px !important;
	}
	
	ul.sub-menu > li.menu-item > ul.sub-menu > li a {
		font-size: .5em !important;
	}
}

#slide-out-widget-area.fullscreen-split .off-canvas-menu-container li>a:after {
	border-top: 1px solid #fff !important;
	bottom: 1px !important;
}

#slide-out-widget-area.fullscreen-split .inner-wrap>.inner>.container {
	left: 10% !important;
}

/* 1. Ensure the parent container allows vertical wrapping */
#slide-out-widget-area .container.normal-container {
    flex-direction: column !important;
}

/* 2. Force both sides to take up the full width */
#slide-out-widget-area .left-side,
#slide-out-widget-area .right-side {
    width: 80% !important;
}

#slide-out-widget-area.fullscreen-split .left-side {
	width: 80% !important;
	padding-right: 0 !important;
}

#slide-out-widget-area.fullscreen-split .right-side {
	justify-content: left !important;
	padding-left: 0!important;
	border-top: solid 1px;
	padding-top: 20px;
}

@media only screen and (max-width: 690px) {
	#slide-out-widget-area.fullscreen-split .right-side-inner>* {
		margin-top: 10px !important;
	}
	#slide-out-widget-area.fullscreen-split .inner-wrap>.inner>.container {
		left: 0% !important;
	}
	#slide-out-widget-area .left-side,
	#slide-out-widget-area .right-side {
    	width: 100% !important;
	}
}

/* Page Header */

#page-header-bg h1 {
	font-weight: 600 !important;
	margin-bottom: 20px !important;
}

@media only screen and (max-width:999px) {
	#page-header-bg .span_6 span.subheader {
		font-size: 1.3em!important;
		line-height: 1.15!important;
	}
}

/* Nectar Button */

body.material .nectar-button.large {
	border-radius: 10px !important;
}

.nectar-button span {
	font-size: 1.5em !important;
}

/* Nectar Fancy List */

.nectar-fancy-ul ul li {
	margin-bottom: 10px !important;
}

/* FlipBox */

.flip-box-front,
.flip-box-front:after,
.flip-box-back,
.flip-box-back:after {
	border-radius:15px;
}

.nectar-flip-box .flip-box-front i {
	margin-bottom: 10px;
	text-align: left;
}

/* Nectar Highlighted Text */

.nectar-highlighted-text h4 {
	font-size:1.15em!important;
}

.nectar-highlighted-text[data-style=regular_underline] em {
	padding-bottom: 4px;
}

/* Next Sections button */

.skip-hash {
	border-radius:50%!important;
}

/* Interactive Map */

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	border-radius:20px;
}

.leaflet-touch .leaflet-bar {
	border-radius:10px;
}

.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 10px !important;
	border-top-right-radius: 10px !important;
}

.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 10px !important;
	border-bottom-right-radius: 10px !important;
}

.leaflet-touch .leaflet-control-attribution {
	display:none;
}

/* Target the map tiles directly with a single, high-performance CSS filter chain */
.nectar-leaflet-map[data-greyscale="1"] img.leaflet-tile,
.nectar-leaflet-map img.leaflet-tile {
    filter: grayscale(70%) sepia(25%) brightness(108%) contrast(100%) !important;
    -webkit-filter: grayscale(70%) sepia(25%) brightness(108%) contrast(100%) !important;
}

/* Make sure all old pseudo-element experiments are permanently killed */
.nectar-leaflet-map .leaflet-tile-pane::after {
    display: none !important;
    content: none !important;
}

/* Row Padding */

#interactive-map,
#praktisch-echo,
#buik-echo,
#hart-echo,
#dracht-echo,
#andere-ingrepen,
#nascholing-congressen {
	padding:0 2% 4% 2%!important;
}

#werkervaring-opleidingen {
	padding:2% 2% 4% 2%!important;
}

/* TextBlock ListItem */

/* --- Base Margin/Spacing Adjustments --- */
.wpb_text_column ul {
    margin-left: 15px !important;
}

.wpb_text_column li {
    margin-bottom: 15px;
}

/* --- Isolated Custom Bullet Styles (Excludes Calendar) --- */

/* 1. Kill the native browser/theme bullets entirely on the list container and items */
.wpb_text_column ul:not(.simcal-events),
.wpb_text_column ul:not(.simcal-events) > li {
    list-style: none !important;
    list-style-type: none !important;
}

/* 2. Configure the list item to host our custom bullet */
.wpb_text_column ul:not(.simcal-events) > li {
    position: relative !important;
    padding-left: 25px !important; /* Creates a clean gap so text never overlaps the bullet */
}

/* 3. Style and place the singular custom disc */
.wpb_text_column ul:not(.simcal-events) > li::before {
    content: "•" !important;
    position: absolute !important;
    
    /* Position alignment (anchored perfectly to the first line) */
    left: 0 !important;
    top: -6px !important; 
    
    /* Visual tweaks */
    color: #ff85a1 !important;   /* Custom pink bullet color */
    font-size: 2em !important;    /* Controls bullet sizing independently */
    line-height: 1 !important;
}

/* --- Calendar Safety Reset --- */
.wpb_text_column ul.simcal-events,
.wpb_text_column ul.simcal-events li,
.wpb_text_column ul.simcal-events li::before {
    list-style: none !important;
    list-style-type: none !important;
    content: none !important;
    padding-left: 4px !important;
    position: static !important;
    margin: 0 !important;
}

/* Calendar */

/* 1. Target the actual calendar grid table element */
.simcal-calendar.simcal-default-calendar-grid table.simcal-calendar-grid {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
	margin-bottom:0!important;
}

/* 2. Top Left Corner: Target the navigation/header row's first child */
.simcal-calendar-grid thead.simcal-calendar-head tr:first-child th:first-child {
    border-top-left-radius: 20px !important;
}

/* 3. Top Right Corner: Target the navigation/header row's last child */
.simcal-calendar-grid thead.simcal-calendar-head tr:first-child th:last-child {
    border-top-right-radius: 20px !important;
}

/* 4. Bottom Left Corner: Target the very last row's first cell */
.simcal-calendar-grid tbody.simcal-month tr:last-child td:first-child {
    border-bottom-left-radius: 20px !important;
}

/* 5. Bottom Right Corner: Target the very last row's last cell */
.simcal-calendar-grid tbody.simcal-month tr:last-child td:last-child {
    border-bottom-right-radius: 20px !important;
}

@media only screen and (max-width:690px) {
	#kalender {
		padding:0 4% 4% 4%!important;
	}
}

.simcal-default-calendar-grid .simcal-calendar-head .simcal-nav {
	background: rgb(255, 255, 255);
}

.simcal-default-calendar .simcal-current h3 {
	margin-bottom:0!important;
}

.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-day-number {
	background: #ede8e4;
}

.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-day:hover {
	background-color: rgba(237,232,228,0.5);
}

.simcal-default-calendar-grid .simcal-day-void {
	background-color: rgba(237, 232, 228, 0.35) !important;
}

.simcal-default-calendar-grid .simcal-events {
	font-size: .75rem;
	line-height: 1.25;
}

/* Linksonder: Eerste cel van de laatste rij (altijd een maandag) */
.simcal-calendar-grid tbody tr:last-child td:first-child div {
    border-bottom-left-radius: 20px;
}

/* Rechtsonder: Alleen als de LAATSTE cel van de laatste rij een ECHTE dag is (zondag) */
.simcal-calendar-grid tbody tr:last-child td:last-child:not(.simcal-day-void) div {
    border-bottom-right-radius: 20px;
}

.simcal-event-bubble {
	border-radius: 15px;
}

.qtip .qtip-tip, 
.qtip .qtip-tip .qtip-vml, 
.qtip .qtip-tip canvas {
    border-color: #e6e6e6 !important;
}

.simcal-event-details p {
	font-size:1rem;
	margin:0!important;
}

td.simcal-day-has-events .simcal-day-label.simcal-day-number {
    color: #ffffff !important;
}

td.simcal-day-has-events {
    background-color: rgba(255,133,161,0.35) !important;
}

@media only screen and (max-width:690px) {
	td.simcal-today > div {
		min-height: 60px !important;
	}
}

/* Custom Table */

/* 1. De wrapper is puur transparant en flexibel */
.salient-custom-sheet-wrapper {
    margin: 20px 0;
    padding: 0 !important;
    background: transparent !important; /* Volledig transparant */
    height: auto !important;
}

/* 2. De tabelbasis instellen */
.salient-custom-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: none !important;
    /* CRUCIALE FIX: Dwingt de tabelstructuur zelf om de ronde hoeken van de cellen te respecteren */
    border-radius: 15px !important;
    overflow: hidden !important; 
}

/* 3. Standaard celinstellingen, witte achtergrond voor de ONEVEN rijen */
.salient-custom-table td {
    padding: 14px 18px !important;
    border-bottom: 1px solid #998f82 !important;
    border-right: 1px solid #998f82 !important;
    border-top: 1px solid #998f82 !important;
    border-left: 1px solid #998f82 !important;
    vertical-align: middle !important;
    background-color: #ffffff !important;
    height: 1px !important; 
    box-sizing: border-box !important;
    font-size: .75em !important;
}

/* 4. ALTERNATING COLORS: Geef elke EVEN rij een zachtgrijze achtergrond */
.salient-custom-table tr:nth-child(even) td {
    background-color: #ede8e4 !important;
}

/* 5. Voorkom dubbele lijnen in het midden van de tabel */
.salient-custom-table tr + tr td {
    border-top: none !important;
}
.salient-custom-table td + td {
    border-left: none !important;
}

/* 6. Dwing de hoeken en randen af op de exacte buitenhoeken van de cellen */
.salient-custom-table tr:first-child td:first-child { 
    border-top-left-radius: 15px !important; 
}
.salient-custom-table tr:first-child td:last-child { 
    border-top-right-radius: 15px !important; 
}
.salient-custom-table tr:last-child td:first-child { 
    border-bottom-left-radius: 15px !important; 
}
.salient-custom-table tr:last-child td:last-child { 
    border-bottom-right-radius: 15px !important; 
}

/* 1. Force the table to span full width and behave with a fixed layout */
#lidmaatschappen .salient-custom-table {
    width: 100% !important;
    table-layout: fixed !important;
}

/* 2. Divide the 4 columns exactly into equal widths (100% / 4 = 25%) */
#lidmaatschappen .salient-custom-table td {
    width: 25% !important;
    text-align: center; /* Optional: Centers text neatly inside its equal column */
}

/* Contact Form */

.cf7-smart-grid.has-grid .field>label {
	margin-top: 14px !important;
}

.cf7-smart-grid.has-grid .wpcf7-form-control:not(img) {
	border-radius: 10px !important;
}

.fancy-select-wrap {
	padding-top: 0px !important;
	margin-top: 14px;
}

body[data-fancy-form-rcs="1"] .fancy-select-wrap label {
	font-size: 18.4px !important;
	color: #676767 !important;
}

.cf7-smart-grid.has-grid .wpcf7-form-control-wrap .select2-selection.select2-selection--single {
	border-radius: 10px !important;
	margin-bottom: 0px;
}

.cf7-smart-grid.has-grid .wpcf7-form-control-wrap .select2-selection--single .select2-selection__rendered {
	font-size: 1em !important;
	line-height: 36px !important;
}

.select2-container--open .select2-dropdown--below {
	border-top-left-radius: 6px!important;
	border-top-right-radius: 6px!important;
	border-bottom-left-radius: 10px!important;
	border-bottom-right-radius: 10px!important;
}

body[data-fancy-form-rcs="1"] .select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option[aria-selected=true],
.select2-results__option {
	border-radius: 6px;
	margin: 2px;
}

body[data-form-submit=regular] .container-wrap input[type=submit] {
	margin-top: 40px;
	font-size: 1.15em !important;
}

.cf7-smart-grid.has-grid .field>label em {
	display: none;
}

/* 1. Force the parent container to align its items horizontally */
div.field.cf7sg-popup-box {
    display: inline-flex !important;
    align-items: center !important; /* Vertically centers the spinner with the button */
}

/* 2. Explicitly force the button to sit first */
div.field.cf7sg-popup-box input.wpcf7-submit {
    order: 1 !important;
}

/* 3. Explicitly force the spinner to sit second (on the right) */
div.field.cf7sg-popup-box .wpcf7-spinner {
    order: 2 !important;
    margin: 0 !important; /* Resets any weird centering margins */
}

.wpcf7-submit {
	background-color: #e76c32 !important;
}

.wpcf7-spinner {
	width: 28px !important;
	top: 10px;
	left: 10px;
}

.cf7-smart-grid.has-grid div.field span.wpcf7-not-valid-tip {
	background: none !important;
	box-shadow: none !important;
	color: #e76c32;
}

.wpcf7 form .cf7sg-response-output {
	padding: .8em 1em !important;
	margin: 14px 0 0 0 !important;
	border-radius: 10px;
	border-width: 1px !important;
}

/* Footer */

#footer-outer .widget h4 {
	font-size: 1.25rem;
	line-height:1.2;
	font-weight: 600;
}

#footer-outer #footer-widgets .widget.widget_nav_menu li {
	margin-bottom: 10px!important;
}

/* 1. Target the list items using Salient's global widget structure */
body.material #footer-outer #footer-widgets .col .widget ul li,
body.material #footer-outer #footer-widgets .col ul li {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 2. Target the links inside Salient menus (This is usually the hidden culprit) */
body.material #footer-outer #footer-widgets .col .widget ul li a,
body.material #footer-outer #footer-widgets .col ul.menu li a {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: inline-block; /* Forces Salient to respect the zeroed padding */
}

#footer-outer .nectar-fancy-ul p {
	margin-left: 30px;
	padding-top: 2px;
	font-weight: 300;
	font-size: 1.1rem;
}

#gallery-1 {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-end; /* Aligns the bottoms of the logos */
}

#gallery-1 .gallery-item {
    margin: 0;
    max-width: calc(50% - 20px);
    float: none;
}

#gallery-1 img {
	border: none !important;
}

/* Makers Mark */

.makersmark {
	cursor: pointer;	
	width: 24px!important;
	height: auto!important;
	margin-bottom: -5px!important;
	-webkit-transition: -webkit-transform 0.5s ease-in-out;
	transition: transform 0.5s ease-in-out;
}

.makersmark:hover {
	-webkit-transform: rotate(720deg);
	transform: rotate(720deg);
}

/* Complianz */

#cmplz-manage-consent .cmplz-manage-consent {
	right:60px!important;
	border-radius: 10px!important;
}

.cmplz-cookiebanner ul li {
	list-style:none!important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences {
	border-radius:10px!important;
}

#cmplz-document {
font-size: 14px;
margin: 2%!important;
max-width: 100%!important;
}

#cmplz-document p {
	font-size: 16px!important;
}