/*
	Theme Name: Ranbron Child
	Description: A child theme of ranbron.
	Template: ranbron
	Version: 3.2
*/

:root {
    --vpva-blue: #254155;
    --vpva-brown: #55333A;
    --vpva-copper: #B87E41;
    --vpva-font-default: "Open Sans";
    --vpva-font-heading: Arial;
    --vpva-font-size-default: 1.4rem;
    --vpva-font-subtitle: Georgia;
    --vpva-grey: #576E80;
    --vpva-iron: #EAC59A;
    --vpva-light-grey: #959BAA;
    --vpva-off-white: #2541550F;
    --vpva-white: #FFF;
}

* {
    font-family: var(--vpva-font-default), sans-serif;
}

/* Theme overrides
---------------------------------------------------------
 */

/* Removes the default min-height of 1px to prevent gaps */
.vc_column_container {
	min-height: 0px !important;
}

/* Overrides the styling of the navigation in the header */
.header-navigation {
	li {
		a {
			color: var(--vpva-blue) !important;
		}
		
		a::after {
			background: var(--vpva-copper) !important;
			height: 2px !important;
		}
	}
	
	li:hover > a:after,
	.current-menu-item > a:after {
		width: 100% !important;
	}
	
	.sub-menu {
		background-color: #FFF !important;
		box-shadow: 0 0 4px rgba(0, 0, 0, .2);

		a:hover {
			color: var(--vpva-copper) !important;
		}

		.sub-menu {
			box-shadow: 4px 0 4px rgba(0, 0, 0, .2)	;
		}
	}
} 

/* Overrides the styling of the bottom footer, as it cannot be modified through the theme options */
.footer-bottom {
    background-color: var(--vpva-brown);
    color: var(--vpva-iron);
    font-size: var(--vpva-font-size-default);
    padding: 1rem 0;

    .thm-container {
        opacity: 0.56;
    }
}

/* Removes the default footer and button displayed on posts */
.button3,
.entry-footer {
	display: none !important;
}

/* Removes the bottom margin from the individual elements inside the footer, otherwise it causes too much white space */
.footer {
    .thm-container {
        max-width: unset;

        .row {
            display: flex;

            .footer-widget {
                margin-bottom: 0;
            }

            .footer-widget-1 {
                align-items: center;
                display: flex;
                justify-content: center;
                width: 30%;
            }

            .footer-widget-2 {
                width: 20%;
            }

            .footer-widget-3 {
                padding-left: 10%;
                width: 45%;

                .wp-block-columns {
                    gap: 0 !important;
                }
            }

            .footer-widget-4 {
                align-items: center;
                display: flex;
                justify-content: center;
                min-width: 75px;
                width: 5%;
            }
        }
    }
}

/* Overrides the styling of the top header, as it cannot be modified through the theme options */
.hdr_top_bar {
    background-color: var(--vpva-blue);
}

/* Removes the top and bottom padding from the main content area, otherwise it causes too much white space */
.mainblock {
    padding-bottom: 0 !important;
	padding-top: 0 !important;
}

/* --------------------------------------------------------- */

.vpva-background-blue a {
    background-color: var(--vpva-blue) !important;
}

.vpva-background-copper a {
    background-color: var(--vpva-copper) !important;
}

.vpva-background-grey a {
    background-color: var(--vpva-grey) !important;
}

.vpva-branch-image {

}

.vpva-button a {
    border: none !important;
    color: inherit !important;
    font-family: var(--vpva-font-default), sans-serif !important;
    font-size: var(--vpva-font-size-default) !important;
    font-weight: bold !important;
    padding: 1rem 3rem !important;
}

.vpva-categories-column > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-column-news > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-news-grid .vc_pageable-slide-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 20px !important;
	justify-content: space-between !important;
	width: 100% !important;
}

.vpva-news-grid .vc_pageable-slide-wrapper:after,
.vpva-news-grid .vc_pageable-slide-wrapper:before {
	display: none !important;
}

.vpva-nieuws-grid-item {
	flex: 0 0 calc(100%/3 - 20px) !important;
	padding: 0 !important;
	
	.vc_grid-item-mini {
		height: 100%;
		
		.vc_gitem-zone {
			height: 100%;

			.vc_gitem-zone-mini {
				height: 100%;

				.vc_gitem_row {
					height: 100%;

					.vc_gitem-col {
						background-color: var(--vpva-brown);
						display: flex;
						flex-direction: column;
						height: 100%;
						padding: 0 !important;

						> div {
							margin: 0 !important;
							padding: 0 !important;
							
							div {
								height: 100% !important;
							}
							
							a {
								display: block !important;
								height: 100% !important;
								padding: 0 2rem 20px !important;
								width: 100% !important;
							}

							h5, p {
								margin: 0 !important;
							}
						}

						.wpb_single_image {
							padding: 0 !important;
							
							figure {
								width: 100% !important;
								
								a {
									display: block !important;
									min-height: 200px !important;
									padding: 0 0 20px !important;
									width: 100% !important;

									img {
										aspect-ratio: 16/9;
										object-fit: cover;
										width: 100%;
									}
								}
							}		
						}

						.vpva-news-grid-excerpt {
							flex-grow: 1 !important;
						}
					}
				}
			}
		}
	}
}

.vpva-nieuws-grid-item-copper {
	.vc_grid-item-mini {
		.vc_gitem-zone {
			.vc_gitem-zone-mini {
				.vc_gitem_row {
					.vc_gitem-col {
						background-color: var(--vpva-copper) !important;
					}
				}
			}
		}
	}
}

.vpva-product-grid-item {
	flex: 0 0 calc(100%/3 - 35px) !important;
	padding: 0 !important;
	
	.vc_grid-item-mini {
		height: 100%;
		
		.vc_gitem-zone {
			height: 100%;

			.vc_gitem-zone-mini {
				height: 100%;

				.vc_gitem_row {
					height: 100%;

					.vc_gitem-col {
						display: flex;
						flex-direction: column;
						height: 100%;
						padding: 0 !important;

						> div {
							margin: 0 !important;
							padding: 0 1rem !important;
							
							a {
								display: block !important;
								padding-bottom: 20px !important;
								width: 100% !important;
							}

							h4, p {
								margin: 0 !important;
							}
						}

						.wpb_single_image {
							padding: 0 !important;
							
							figure {
								width: 100% !important;
								
								a {
									display: block !important;
									padding: 2rem 0 !important;
									width: 100% !important;

									img {
										width: 60px;
									}
								}
							}		
						}

						.vpva-product-grid-excerpt {
							flex-grow: 1 !important;
						}
					}
				}
			}
		}
	}
}

.vpva-categorie-product-grid-item {
	flex: 0 0 25% !important;
	
	.vc_grid-item-mini {
		height: 100%;
		
		.vc_gitem-zone {
			height: 100%;
			padding: 0 !important;

			.vc_gitem-zone-mini {
				height: 100%;

				.vc_gitem_row {
					height: 100%;

					.vc_gitem-col {
						display: flex;
						flex-direction: column;
						gap: 2rem;
						height: 100%;
						padding: 0 !important;

						> div {
							margin: 0 !important;
							padding: 0 1rem !important;

							p {
								margin: 0 !important;
							}
						}

						.wpb_single_image {
							background-color: var(--vpva-white);
							padding: 2rem 0 !important;

							img {
								width: 36px;
							}
						}

						.vpva-category-service-grid-excerpt {
							flex-grow: 1 !important;
						}
					}
				}
			}
		}
	}
}

.vpva-service-grid .vc_pageable-slide-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 35px !important;
	justify-content: space-between !important;
	width: 100% !important;
}

.vpva-service-grid .vc_pageable-slide-wrapper:after,
.vpva-service-grid .vc_pageable-slide-wrapper:before {
	display: none !important;
}

.vpva-categories-grid .vc_pageable-slide-wrapper {
    display: flex;

    .vc_grid-item {
        padding: 0 !important;

        .vc-gitem-zone-height-mode-auto:before {
            padding-top: 30%;
        }

        div {
            margin: 0 !important;
            padding: 0 !important;
        }

        img {
            height: 30px;
            width: 30px;
        }

        p {
            font-size: 1.2rem;
            font-weight: 600;
            line-height: normal;
            margin: 0;
            text-align: center;
            text-transform: uppercase;
        }
    }
}

.vpva-category-service-grid-excerpt {
	margin-bottom: 0 !important;
	
	p {
		font-size: 1.2rem !important;
	}
} 

.vpva-category-grid-image img {
	height: 40px !important;
	width: 40px !important;
}

.vpva-category-service-title div {
	color: inherit;
	font-size: 1.6rem;
	font-weight: 800;
	line-height: 1.8rem;
}

.vpva-color-blue {
    color: var(--vpva-blue) !important;
}

.vpva-color-brown {
    color: var(--vpva-brown) !important;
}

.vpva-color-copper {
    color: var(--vpva-copper) !important;
}

.vpva-color-grey {
    color: var(--vpva-grey) !important;
}

.vpva-color-iron {
    color: var(--vpva-iron) !important;
}

.vpva-color-light-grey {
    color: var(--vpva-light-grey) !important;
}

.vpva-color-white {
    color: var(--vpva-white) !important;
}

.vpva-column-padding-horizontal .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	padding-top: 0 !important;
}

@media (min-width: 768px) {
	.vpva-column-overlap .vc_column-inner {
		width: 160% !important;
		
		.vpva-padding-right {
			padding-right: 20rem !important;
		}
	}
}

.vpva-employee-image {
	
	
	img {
		border: 2px solid #FFF;
		width: 100%;
	}
}

.vpva-footer-content {
    color: var(--vpva-white);
    font-size: 1.3rem;

    a {
        color: var(--vpva-white);
    }
	
	a:hover {
		color: var(--vpva-copper);
	}
}

.vpva-footer-label {
    color: var(--vpva-copper);
    font-size: 1.3rem;
    margin: 0;
}

.vpva-footer-social li a {
    font-size: 3rem !important;
}

.vpva-form-bottom-row {
	align-items: end;
	display: flex;
}

.vpva-form-column {
    padding-left: 6rem !important;
}

.vpva-form-field,
.vpva-form-footer {
    .wpcf7-not-valid-tip {
        font-size: var(--vpva-font-size-default);
        font-weight: 500;
        line-height: 1.8rem;
    }
}

.vpva-form-field {
    margin-bottom: 1rem;

    p {
        align-items: center;
        display: flex;
        gap: 2rem;

        label {
            color: var(--vpva-blue);
            font-size: var(--vpva-font-size-default);
            font-weight: 600;
            line-height: 1.8rem;
            margin: 0;
            width: 240px;
        }

        .wpcf7-form-control-wrap {
            width: 100%;

            .wpcf7-select,
			.wpcf7-text,
            .wpcf7-textarea {
                border: 1px solid var(--vpva-brown);
                color: var(--vpva-blue);
                font-size: 1.4rem;
                font-weight: 500;
                line-height: 1.8rem;
                padding: .5rem 1rem;
                width: 100%;
            }

            .wpcf7-radio {
                .wpcf7-list-item {
                    margin: 0 1em 0 0;

                    input {
                        accent-color: var(--vpva-copper);
                    }

                    .wpcf7-list-item-label {
                        color: var(--vpva-blue);
                        font-size: var(--vpva-font-size-default);
                        font-weight: 500;
                        line-height: 1.8rem;
                    }
                }
            }
        }
    }
}

.vpva-form-footer {
    align-items: center;
    display: flex;
    justify-content: space-between;
    width: 100%;

    p {
        margin-bottom: 0;

        .wpcf7-list-item {
            margin: 0;

            .wpcf7-list-item-label {
                color: var(--vpva-blue);
                font-size: var(--vpva-font-size-default);
                font-weight: 500;
                line-height: 1.8rem;
            }
        }
    }

    .vpva-form-accept {
        input {
            accent-color: var(--vpva-copper);
        }
    }

    .vpva-form-submit {
        p {
            direction: rtl;

            input {
                background-color: var(--vpva-copper);
                border: none;
                color: var(--vpva-white);
                font-family: var(--vpva-font-default), sans-serif;
                font-size: var(--vpva-font-size-default);
                font-weight: 600;
                padding: .5rem 6rem;
            }
        }
    }
}

.vpva-grid-button a {
    background: none !important;
    font-weight: 600;
}

.vpva-h1 h1 {
    color: inherit;
    font-family: var(--vpva-font-heading), sans-serif;
    font-size: 4rem;
    font-weight: bold;
    margin-top: 0;
}

.vpva-h2 h2 {
    color: inherit;
    font-family: var(--vpva-font-heading), sans-serif;
    font-size: 4rem;
    font-weight: bold;
    letter-spacing: -1.8px;
    margin-top: 0;
}

.vpva-h3 h3 {
    color: inherit;
    font-family: var(--vpva-font-heading), sans-serif;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: -1.8px;
    margin-top: 0;
}

.vpva-h4 h4 {
    color: inherit;
    font-family: var(--vpva-font-heading), sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
    letter-spacing: -1.6px;
    margin-top: 0;
}


.vpva-h5 h5 {
    color: inherit;
    font-family: var(--vpva-font-heading), sans-serif;
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: -1.4px;
    margin-top: 0;
}

.vpva-highlight-link-copper p a,
.vpva-highlight-link-copper li a {
    color: var(--vpva-copper);
}

.vpva-highlight-link-iron p a,
.vpva-highlight-link-iron li a {
    color: var(--vpva-iron);
}

.vpva-image-branch {
    figure {
        width: 100%;

        div {
            width: 100%;

            img {
                aspect-ratio: 3 / 2;
                height: 180px;
                object-fit: cover;
                width: 100%;
            }
        }
    }
}

.vpva-image-overlap-right {
	max-width: unset !important;
	width: 160% !important;
}

.vpva-image-rectangle img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.vpva-image-square img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.vpva-link a {
    color: inherit;
}

.vpva-main-categories > .vc_column-inner {
	overflow-x: auto !important;
	padding-bottom: 6rem !important;
	padding-left: 6rem !important;
	padding-right: 6rem !important;
	padding-top: 4rem !important;
}

.vpva-main-content {
	width: calc(100%/3 + 4rem) !important;
	
	> .vc_column-inner {
		padding-left: 8rem !important;
		padding-right: 4rem !important;
	}
}

.vpva-main-content-image {
	width: calc(100%/3*2 - 4rem) !important;
	
	.vpva-button {
		bottom: 0 !important;
		position: absolute !important;
		right: 0 !important;
		transform: translatey(-100%) !important;
	}

	.vpva-button:nth-child(3) {
		transform: translatey(20%) !important;
	}
}

.vpva-main-employees > .vc_column-inner {
	padding-bottom: 12rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	padding-top: 12rem !important;
	
	.vc_grid-item {
		padding-bottom: 0 !important;
	}
}

.vpva-main-image > .vc_column-inner {
	padding-bottom: 5rem !important;
	padding-left: 5rem !important;
	padding-right: 5rem !important;
	
	.wpb_single_image {
		margin-top: -12rem !important;
	}
}

.vpva-main-services > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	
	.vpva-subtitle {
		margin-bottom: -6rem;
	}
}

.vpva-main-text > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-margin-bottom-0 {
	a, h1, h2, h3, h4, h5, h6, p {
		margin-bottom: 0;
	}
}

.vpva-medewerker-description-column {
	background-color: #FFF !important;
	flex-grow: 1;
	
	> .vc_column-inner {
		margin-bottom: 12rem !important;
		margin-top: 12rem !important;
		padding-left: 12rem !important;
		padding-right: 8rem !important;
	}
} 

.vpva-medewerker-documents > .vc_column-inner {
	margin-left: -4rem !important;
	margin-top: 12rem !important;
	min-height: 400px;
	padding-bottom: 8rem !important;
	padding-left: 4rem !important;
	padding-right: 4rem !important;
	padding-top: 8rem !important;
}

.vpva-medewerkers-grid-brown {
    .vc_grid-owl-nav {
        opacity: 1 !important;

        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            font-size: 4rem !important;
            opacity: 1 !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			align-items: center;
			display: flex;
			justify-content: center;
			position: absolute;
			right: 4px;
			width: 3rem;
		}
    }

    .vc_grid-item {
        padding-bottom: 60px;
        padding-right: 60px;

        .vc_custom_heading {
            margin-bottom: 0;

            p {
                margin-bottom: 0 !important;
            }
        }

        .vpva-medewerkers-grid-function,
        .vpva-medewerkers-grid-title {
            font-size: var(--vpva-font-size-default);
            font-weight: 600;
            line-height: 1.8rem;
        }
    }
}

.vpva-medewerkers-grid-column { 
	margin-top: 64px !important;
	min-height: 800px !important;
	
	.vc_column-inner {
		padding-left: 8rem !important;
		padding-right: 8rem !important;
	}
}

.vpva-medewerker-image {
	margin-top: 20px;
	
	img {
		border: 2px solid #FFF;
		margin-right: -14rem;
		max-width: calc(100% + 14rem) !important;
		width: 400px;
		z-index: 10;
	}
}

.vpva-medewerker-info-column > .vc_column-inner {
	padding-bottom: 4rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	padding-top: 12rem !important;
}

.vpva-medewerkers-info-column {
	margin-bottom: -100% !important;
	
	.vc_column-inner {
		padding-bottom: 18rem !important;
		padding-left: 8rem !important;
		padding-right: 8rem !important;

		.vpva-medewerkers-info-paragraph {
			padding-right: 8rem !important;
		}
	}
}

.vpva-medewerker-top-row {
	background-color: var(--vpva-copper);
	display: flex;
}

.vpva-grid-arrows-bottom-brown {
	margin-bottom: 16rem !important;
	
    .vc_grid-owl-nav {
        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            color: var(--vpva-brown) !important;
        }

        .vc_grid-owl-next {
            bottom: -4rem !important;
            left: unset !important;
            right: calc(50% - 4rem) !important;
            top: unset !important;
        }

        .vc_grid-owl-prev {
            bottom: -4rem !important;
            left: unset !important;
            right: calc(50% + 1rem) !important;
            top: unset !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			background-color: var(--vpva-white) !important;
			color: var(--vpva-brown) !important;
		}
    }
}

.vpva-grid-arrows-top-brown {
	margin-bottom: 16rem !important;
	
    .vc_grid-owl-nav {
        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            color: var(--vpva-brown) !important;
        }

        .vc_grid-owl-next {
            bottom: unset !important;
            left: unset !important;
            right: 0 !important;
            top: -4rem !important;
        }

        .vc_grid-owl-prev {
            bottom: unset !important;
            left: unset !important;
            right: 6rem !important;
            top: -4rem !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			background-color: var(--vpva-white) !important;
			color: var(--vpva-brown) !important;
		}
    }
}

.vpva-category-services-grid {
	.vc_grid-owl-nav {
        opacity: 1 !important;

        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            color: var(--vpva-brown) !important;
            font-size: 4rem !important;
            opacity: 1 !important;
        }

        .vc_grid-owl-next {
            bottom: unset !important;
            left: unset !important;
            right: 0 !important;
            top: -4rem !important;
        }

        .vc_grid-owl-prev {
            bottom: unset !important;
            left: unset !important;
            right: 6rem !important;
            top: -4rem !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			align-items: center;
			background-color: var(--vpva-white) !important;
			color: var(--vpva-copper) !important;
			display: flex;
			justify-content: center;
			position: absolute;
			right: 4px;
			width: 3rem;
		}
    }
	
	.vc_pageable-slide-wrapper {
		display: flex !important;
	}
}

.vpva-medewerkers-grid-copper {
    .vc_grid-owl-nav {
        opacity: 1 !important;

        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            color: var(--vpva-brown) !important;
            font-size: 4rem !important;
            opacity: 1 !important;
        }

        .vc_grid-owl-next {
            bottom: unset !important;
            left: unset !important;
            right: 0 !important;
            top: -4rem !important;
        }

        .vc_grid-owl-prev {
            bottom: unset !important;
            left: unset !important;
            right: 6rem !important;
            top: -4rem !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			align-items: center;
			background-color: var(--vpva-white) !important;
			color: var(--vpva-copper) !important;
			display: flex;
			justify-content: center;
			position: absolute;
			right: 4px;
			width: 3rem;
		}
    }

    .vc_grid-item {
        padding-bottom: 60px;
        padding-right: 60px;

        .vc_custom_heading {
            margin-bottom: 0;

            p {
                margin-bottom: 0 !important;
            }
        }

        .vpva-medewerkers-grid-function,
        .vpva-medewerkers-grid-title {
            font-size: var(--vpva-font-size-default);
            font-weight: 600;
            line-height: 1.8rem;
        }
    }
}

.vpva-medewerker-grid-content {
	min-height: 100px !important;
}

.vpva-medewerkers-grid-function-brown .vpva-medewerkers-grid-function {
    color: var(--vpva-brown) !important;
}

.vpva-medewerkers-grid-function-copper .vpva-medewerkers-grid-function {
    color: var(--vpva-copper) !important;
}

.vpva-medewerkers-grid-title-blue .vpva-medewerkers-grid-title p {
    color: var(--vpva-blue) !important;
}

.vpva-medewerkers-grid-title-white .vpva-medewerkers-grid-title p {
    color: var(--vpva-white) !important;
}

.vpva-menu-button a {
    font-size: 1.6rem !important;
    padding: 1.4rem 6rem !important;
    width: 300px !important;
}

.vpva-news-grid {
	.vc_grid-owl-nav {
        opacity: 1 !important;

        .vc_grid-owl-next,
        .vc_grid-owl-prev {
            color: var(--vpva-brown) !important;
            font-size: 4rem !important;
            opacity: 1 !important;
        }

        .vc_grid-owl-next {
            bottom: -8rem !important;
            left: unset !important;
            right: calc(50% - 4rem) !important;
			top: unset !important;
        }

        .vc_grid-owl-prev {
            bottom: -8rem !important;
            left: unset !important;
            right: calc(50% + 1rem) !important;
            top: unset !important;
        }
		
		.vc_grid-owl-next::before,
		.vc_grid-owl-prev::before {
			align-items: center;
			background-color: var(--vpva-white) !important;
			color: var(--vpva-copper) !important;
			display: flex;
			justify-content: center;
			position: absolute;
			right: 4px;
			width: 3rem;
		}
    }
}

.vpva-offerte-content > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-outer-form-column > .vc_column-inner {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-page-banner {
	background-blend-mode: multiply;
	background-color: #DDD;
	padding-bottom: 8rem !important;
	padding-left: 8rem !important;
	padding-right: 12rem !important;
}

.vpva-paragraph {
	a, li, p, p em {
		color: inherit;
    	font-size: var(--vpva-font-size-default);
    	font-weight: 500;
    	line-height: 1.8rem;
	}
	
	li > p {
		margin-bottom: 1em !important;
		margin-top: 1em;
	}
}

.vpva-paragraph-acf {
    color: inherit;
    font-size: var(--vpva-font-size-default);
    font-weight: 500;
    line-height: 1.8rem;
}

.vpva-post-back-button a {
	background-image: none !important;
	font-weight: 600 !important;
}

.vpva-post-left-column > .vc_column-inner {
	padding-bottom: 12rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-post-main-content > .vc_column-inner {
	margin-top: 8rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-post-right-column > .vc_column-inner {
	padding-bottom: 12rem !important;
	padding-left: 20rem !important;
	padding-right: 8rem !important;
}

.vpva-product-faq-column .vc_column-inner {
	padding-bottom: 8rem !important;
	padding-left: 8rem !important; 
	padding-right: 8rem !important; 
	padding-top: 8rem !important;
}

.vpva-product-image-column .vc_column-inner {
	margin-top: -6rem !important;
	padding-bottom: 4rem !important;
	padding-left: 8rem !important; 
	padding-right: 0 !important; 
}

.vpva-product-menu-column .vc_column-inner {
	padding: 0 0 0 8rem !important;
}

.vpva-product-menu-item a {
	align-items: center !important;
	background-color: var(--vpva-blue) !important;
	color: var(--vpva-iron) !important;
	display: flex !important;
	font-weight: 600 !important;
	padding: 1.5rem 1rem !important;
	text-align: left !important;
}

.vpva-product-menu-item-active {
	a {
		background-color: var(--vpva-brown) !important;
	}
}

.vpva-product-menu-item a:hover {
	color: var(--vpva-white) !important;
}

.vpva-service-faq {
	.vc_tta-panel-heading {
		border: none !important;
		
		a {
			color: var(--vpva-white) !important;
			
			.vc_tta-controls-icon::after,
			.vc_tta-controls-icon::before {
				border-color: var(--vpva-iron) !important;
			}
		}
	}
	
	.vc_tta-panel-heading:hover {
		background-color: initial !important;
		
		a {
			color: var(--vpva-copper) !important;
			
			.vc_tta-controls-icon::after,
			.vc_tta-controls-icon::before {
				border-color: var(--vpva-copper) !important;
			}
		}
	}
	
	.vc_tta-panel-body p {
		color: var(--vpva-white) !important;
		font-family: var(--vpva-font-default);
		font-size: var(--vpva-font-size-default);
    	font-weight: 500;
    	line-height: 1.8rem;
	}
}

.vpva-subtitle,
.vpva-subtitle p {
    color: inherit;
    font-family: var(--vpva-font-subtitle), sans-serif;
    font-size: 2.8rem;
    font-style: italic;
    line-height: 3.5rem;
}

.vpva-text-shadow {
	text-shadow: 0 0 4px rgba(0, 0, 0, .4);
}

.vpva-vacature-grid-icon .vc_icon_element-inner {
	height: 2rem !important;
	width: 2rem !important;
}

.vpva-vacature-grid-location p {
	margin-bottom: 0 !important;
}

.vpva-vacature-image {
	padding-left: 8rem !important;
	padding-right: 8rem !important;
}

.vpva-vacatures-info > .vc_column-inner {
	padding-bottom: 16rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	padding-top: 12rem !important;
}

.vpva-vacatures-list > .vc_column-inner {
	padding-bottom: 12rem !important;
	padding-left: 8rem !important;
	padding-right: 8rem !important;
	padding-top: 12rem !important;
}

/* Elements
---------------------------------------------------------
 */

.vpva-banner-copper,
.vpva-banner-grey,
.vpva-banner-grey-small {
	height: 0;
	
	img {
		position: absolute;
	}
}

.vpva-banner-copper {
	img {
		right: 0;
		top: -60px;
		width: 180px;
		z-index: 10;
	}
} 

.vpva-banner-grey {
	img {
		left: 0;
		opacity: .6;
		top: 0;
		width: 500px;
		z-index: -1;
	}
} 

.vpva-banner-grey-small {
	img {
		left: 0;
		opacity: .6;
		top: 0;
		width: 300px;
		z-index: -1;
	}
}

@media all and (max-width: 1200px) {
	.vpva-categorie-product-grid-item {
		flex: 1 0 25% !important;
	}
	
	.vpva-main-content {
		width: calc(100%/2 - 4rem) !important;

		> .vc_column-inner {
			padding-bottom: 8rem !important;
			padding-top: 8rem !important; 
		}
	}

	.vpva-main-content-image {
		width: calc(100%/2 + 4rem) !important;
	}
	
	.vpva-nieuws-grid-item {
		flex: 0 0 calc(100%/2 - 20px) !important;
	}
	
	.vpva-product-faq-column .vc_column-inner {
		padding-left: 4rem !important; 
		padding-right: 4rem !important; 
	}
	
	.vpva-product-grid-item {
		flex: 0 0 calc(100%/2 - 35px) !important;
	}
	
	.vpva-product-image-column .vc_column-inner {
		margin-top: -6rem !important;
		padding-right: 0 !important; 
	}
	
	.vpva-product-menu-column .vc_column-inner {
		padding: 0 0 0 4rem !important;
	}
	
	.vpva-medewerkers-grid-column { 
		margin-top: 108px !important;
	}
}

@media all and (max-width: 992px) {
	.footer {
		.thm-container {
			.row {				
				.footer-widget-3 .wp-block-columns {
					flex-direction: column;
				}
			}
		}
	}
	
	.vpva-image-overlap-right {
		width: 100% !important;
	}
	
	.vpva-main-categories > .vc_column-inner {
		padding-bottom: 4rem !important;
		
		.vc_grid-item {
			min-width: 150px !important;
		}
	}
	
	.vpva-main-content {
		width: 100% !important;
		
		> .vc_column-inner {
			padding-left: 8rem !important;
			padding-right: 8rem !important;
		}
	}
	
	.vpva-main-content-image {
		width: 100% !important;
		
		.wpb_single_image {
			margin-bottom: 0 !important;
			width: 100%;
			
			.wpb_wrapper {
				width: 100%;

				.vc_single_image-wrapper {
					width: 100%;

					img {
						max-height: 32rem !important;
						object-fit: cover !important;
						width: 100% !important;
					}
				}
			}
		}
		
		.vpva-button {
			bottom: unset !important;
			top: 50% !important;
			transform: translatey(-110%) !important;
		}
		
		.vpva-button:nth-child(3) {
			transform: translatey(10%) !important;
		}
	}
	
	.vpva-main-employees .vpva-h2 {
		margin-bottom: 20px !important;
	}
	
	.vpva-main-image {
		padding-left: 8rem !important;
		padding-right: 8rem !important;
		
		img {
			aspect-ratio: 16 / 9;
		}
	}
	
	.vpva-main-text > .vc_column-inner {
		margin-top: 8rem !important;
	}
	
	.vpva-medewerker-description-column > .vc_column-inner {
		padding-left: 8rem !important;
		padding-right: 8rem !important;
	}
	
	.vpva-medewerker-documents > .vc_column-inner {
		margin-left: 0 !important;
		margin-top: 0 !important;
		min-height: 0;
		padding-left: 8rem !important;
		padding-right: 8rem !important;
	}

	.vpva-medewerker-image {
		height: 0;
		margin-bottom: 20px !important;
		margin-top: 0 !important;
		
		img {
			margin-right: 0 !important;
			max-width: calc(50% - 8rem) !important;
			position: absolute;
			right: 8rem;
			top: 12rem;
			width: 350px;
		}
	}
	
	.vpva-medewerker-info-column {
		h2, .vpva-subtitle {
			max-width: calc(50% - 12rem);
		}
		
		> .vc_column-inner {
			padding-bottom: 12rem !important;
		}
	}
	
	.vpva-medewerker-top-row {
		background-color: unset !important;
		display: block;
	}
	
	.vpva-medewerkers-grid-column {
		margin-top: 0 !important;
	}
	
	.vpva-medewerkers-info-column {
		margin-bottom: 0 !important;
	}
	
	.vpva-post-main-content > .vc_column-inner {
		margin-top: 0 !important;
	}

	.vpva-post-right-column > .vc_column-inner {
		margin-top: 8rem !important;
		padding-bottom: 0 !important;
		padding-left: 8rem !important;
		padding-right: 8rem !important;
	}
	
	.vpva-product-image-column .vc_column-inner {
		margin-top: -6rem !important;
		padding-bottom: 0 !important;
		padding-left: 4rem !important; 
		padding-right: 4rem !important;
		
		img {
			aspect-ratio: 16/9;
			max-width: 800px !important;
			object-fit: cover;
			width: 100% !important;
		}
	}
	
	.vpva-vacature-image {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-vacatures-info > .vc_column-inner {
		padding-bottom: 12rem !important;
	}
}

@media all and (max-width: 782px) {
	.footer {
		.thm-container {
			.row {
				align-items: center;
				flex-direction: column;
				gap: 2rem;
				margin-left: unset;
				margin-right: unset;
				width: 100%;
				
				.footer-widget-1, .footer-widget-2, .footer-widget-3, .footer-widget-4 {
					padding: 0 8rem;
					width: 100%;
				}
				
				.footer-widget-4 ul {
					flex-direction: row;
				}
			}
		}
	}
	
	.hdr_top_bar .thm-container {
		.left-content {
			display: flex; 
			flex-direction: column;
		}
		
		.right-content .social-icons ul {
			align-items: center;
			display: flex;
			flex-direction: column;
			gap: 1rem;
			justify-content: center;
		}
	}
	
	.vpva-categories-column > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-column-news > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-column-padding-horizontal .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-main-categories > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-main-content > .vc_column-inner,
	.vpva-main-services > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}

	.vpva-main-content-image {
		.vpva-button a {
			padding-right: 1rem !important;
			width: 200px !important;
		}
	}
	
	.vpva-main-employees > .vc_column-inner {
		padding-bottom: 8rem !important;
		padding-left: 4rem !important;
		padding-right: 4rem !important;
		padding-top: 8rem !important;
		
		.vc_grid-item {
			margin: 0 auto !important;
			max-width: 350px !important;
			width: 100% !important;
		}
	}
	
	.vpva-main-image {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-main-text > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-medewerker-description-column > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-medewerker-documents > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}

	.vpva-medewerker-image {
		height: initial;
    	margin-bottom: 35px !important;
    	margin-top: 20px !important;
		text-align: left !important;
		
		img {
			max-width: 100% !important;
			position: unset;
			right: unset;
			top: unset;
		}
	}
	
	.vpva-medewerker-info-column {
		h2, .vpva-subtitle {
			max-width: unset !important;
		}
		
		> .vc_column-inner {
			padding-left: 4rem !important;
			padding-right: 4rem !important;
		}
	}
	
	.vpva-medewerkers-grid-column .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
		
		.vc_grid-item {
			display: inline-block !important;
			width: 50% !important;
		}
	}
	
	.vpva-medewerkers-info-column .vc_column-inner {
		padding-bottom: 12rem !important;
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-nieuws-grid-item {
		flex: 0 0 100% !important;
	}
	
	.vpva-page-banner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-post-left-column > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-post-main-content > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}

	.vpva-post-right-column > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-product-faq-column .vc_column-inner {
		padding-bottom: 4rem !important;
		padding-top: 4rem !important;
	}
	
	.vpva-product-grid-item {
		flex: 0 0 100% !important;
	}
	
	.vpva-product-image-column .vc_column-inner {
		img {
			max-width: 500px !important;
			width: 100% !important;
		}
	}
	
	.vpva-outer-form-column > .vc_column-inner,
	.vpva-offerte-content > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
		
		.vpva-form-bottom-row {
			display: flex;
			flex-direction: column-reverse;
		}
		
		.vpva-form-column {
			padding-left: 15px !important;
			padding-right: 15px !important;
		}
	
		.vpva-form-field p {
			display: flex;
			flex-direction: column;
			gap: .5rem;

			br {
				display: none;
			}

			label {
				width: 100%;
			}
			
			.wpcf7-list-item {
				display: block;
			}
		}
		
		.vpva-form-footer {
			display: flex;
			flex-direction: column;
			
			.vpva-form-accept {
				width: 100%;
			}
			
			.vpva-form-submit {
				width: 100%;
				
				input {
					width: 100%;
				}
			}
		}
	}
	
	.vpva-vacatures-info > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
	
	.vpva-vacatures-list > .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
}

@media all and (max-width: 600px) {
	.vpva-main-image {
		> .vc_column-inner {
			padding-bottom: 3rem !important;
			padding-left: 3rem !important;
			padding-right: 3rem !important;
		}
		
		.wpb_single_image {
			margin-top: -8rem !important;
		}
		
		img {
			aspect-ratio: 1 / 1 !important;
		}
	}
	
	.vpva-main-services {
		.vpva-subtitle {
			margin-bottom: 0 !important;
		}
	}
	
	.vpva-medewerkers-grid-column .vc_column-inner {
		padding-left: 4rem !important;
		padding-right: 4rem !important;
	}
}
