/*
	Theme Name: Monique van Dijk
	Theme URI: 
	Description: Thema voor Monique van Dijk
	Author: Emile Zeldenrust
	Author URI: https://www.emilezeldenrust.nl/
	Version: 1.0
	Tags: 
*/

* {
	 padding: 0px;
	 margin: 0px;
}

:root {
	--bg: #6247aa;
	--tekst: #dec9e9;
	--kleur1: #c19ee0;
	--kleur2: #198754;
	--kleur3: #0d6efd;
}

body {
	position: relative;
	background-color: var(--bg);
	color: var(--tekst);
	font-size: 1.2vw;
	line-height: 1.5;
	font-family: "Outfit", sans-serif;
}

div {
	display: block;
}

a img {
	border: none;
	outline: none;
}

:focus, a:focus {
	 outline: none;
}

::-webkit-scrollbar {
	display: none;
}

/* ==========================================================================
	HEADER
	========================================================================== */

header {
	position: relative;
	height: auto;
	overflow: hidden;
}

header #vara-container, header .ster, header > h2 {
	display: none;
}

.page-id-12 header #vara-container {
	display: block;
	padding: 25dvh 0 0;
}

header #vara-container svg {
	overflow: visible;
}

.page-id-12 header .ster {
	position: absolute;
	display: block;
	width: 4vw;
	height: 4vw;
	left: 50%;
	margin: -21.6vw 0 0 0.9vw;
	background-image: url('images/ster.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	background-color: var(--bg);
	transform: translate(-50%,-50%) scale(0) rotate(-325deg);
	animation: ster 0.5s 0.5s forwards ease-out;
}

@keyframes ster {
	100% {
		transform: translate(-50%,-50%) scale(1) rotate(35deg);
	}
}

.page-id-12 header > h2 {
	display: block;
	text-align: center;
	font-size: 2vw;
	letter-spacing: 0.15vw;
	font-weight: 500;
	color: #fff;
	margin: 2dvh 0 0 0;
	transform: scale(0.94);
	animation: scale 3s 3s forwards cubic-bezier(0.5, 1, 0.89, 1);
}

@keyframes scale {
	100% {
		transform: scale(1);
	}
}

header > h2 span {
	display: inline-block;
	opacity: 0;
	filter: blur(4px);
}

header > h2 span:nth-child(1) {
	animation: fade-in 1s 3s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

header > h2 span:nth-child(2) {
	animation: fade-in 1s 4s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

header > h2 span:nth-child(3) {
	animation: fade-in 1s 5s forwards cubic-bezier(0.11, 0, 0.5, 0);
}

@keyframes fade-in {
	100% {
		opacity: 1;
		filter: blur(0);
	}
}

/* ==========================================================================
	TEKST
	========================================================================== */
	
p {
	font-weight: 500;
	margin: 0 0 10px 0;
}

p:empty {
	display: none;
}

a, a:visited {
	color: inherit;
	text-decoration: underline;
}

a:hover, a:active, a:focus {
	color: inherit;
	text-decoration: none;
}

h1 {
	font-size: 40px;
	font-weight: bold;
	margin: 0 0 10px 0;
}

h1.entry-title > a {
	display: flex;
	float: left;
	justify-content: center;
	align-items: center;
	background-color: var(--tekst);
	color: var(--bg);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-decoration: none;
	font-size: 34px;
	margin-right: 20px;
	-webkit-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
}

h1.entry-title > a:hover {
	background-color: #fff;
}

h2 {
	font-size: 2.4vw;
	font-weight: bold;
	margin: 0 0 1.4vw 0;
}

h3 {
	font-size: 28px;
	margin: 0 0 10px 0;
}

h4 {
	font-size: 24px;
	margin: 0 0 10px 0;
}

h5 {
	font-size: 20px;
	margin: 0 0 10px 0;
}

h6 {
	font-size: 16px;
	margin: 0 0 10px 0;
}

hr {
	border: none !important;
	height: 2px !important;
	background-color: #000;
	margin: 10px auto 10px auto;
	width: 95%;
	opacity: 1;
}

.entry-content i {
	font-size: 20px;
	vertical-align: -2px;
	margin: 0 4px;
}

/* ==========================================================================
	ALIGNMENT
	========================================================================== */

div.spacer {
	width: 100%;
	clear: both;
}

/* ==========================================================================
	CONTENT
	========================================================================== */

#content {
}

.main-col {
	padding-top: 4vw;
	padding-bottom: 4vw;
}

.entry-content img {
	max-width: 100%;
	height: auto;
}

/* YOUTUBE */

.wp-block-embed-youtube, .wp-block-embed-vimeo {
	display: inline-block;
	width: 100%;
	margin: 0 0 10px 0 !important;
}

.wp-block-embed__wrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	width: 100%;
	overflow: hidden;
}

.wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ==========================================================================
	BLOG
	========================================================================== */

.page-id-77 h1.entry-title {
	margin: 0 10vw 10px calc(11vw - 58px);
}

.blogrij {
	margin: 0;
	padding: 0 10vw;
}

.blog {
	border: 1vw solid transparent;
	margin-bottom: 24px;
}

.blog > a {
	position: relative;
	display: block;
	text-decoration: none;
	color: var(--bg);
	overflow: hidden;
	-webkit-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

.blog a:hover {
	-webkit-transform: translateZ(0) scale(1.05);
	transform: translateZ(0) scale(1.05);
}

.blog .plaatje {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 75%;
	overflow: hidden;
	background-color: var(--tekst);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.blog:nth-child(1) .plaatje {
	-webkit-mask-image: url('images/blog1.png');
	mask-image: url('images/blog1.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

.blog:nth-child(2) .plaatje {
	-webkit-mask-image: url('images/blog2.png');
	mask-image: url('images/blog2.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

.blog:nth-child(3) .plaatje {
	-webkit-mask-image: url('images/blog3.png');
	mask-image: url('images/blog3.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

.blog .info {
	margin: -1.2vw 0 0 0;
	padding: calc(1.2vw + 12px) 24px 24px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
	background-color: #fff;
}

.blog > a .info p.datum {

}

.blog > a .info h2 {
	font-size: 30px;
	font-weight: bold;
	text-transform: none;
	margin: auto 0 12px 0;
	color: var(--bg);
	hyphens: auto;
}

.blog > a .info .samenvatting p {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: var(--bg);
	margin: 0;
}

/* ==========================================================================
	SINGLE BLOG
	========================================================================== */

.single-blog {
	background-color: var(--tekst);
	color: var(--bg);
}

.single-blog .main-col {
	max-width: 1000px;
	margin: 0 auto;
}

.single-blog .blog {
	border: none;
	margin: 0;
}

.single-blog img.uitgelichte-foto {
	width: 100%;
	height: 30vw;
	margin: -4vw 0 24px 0;
	object-fit: cover;
	object-position: center center;
}

a.terug {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--bg);
	color: var(--tekst);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-decoration: none;
	font-size: 34px;
	margin: 0 0 0 -74px;
	-webkit-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
}

a.terug:hover {
	color: var(--bg);
	background-color: transparent;
}

@media (max-width: 1140px) {
	a.terug {
		position: relative;
		float: left;
		margin: 0 12px 0 0;
	}
}

.single-blog p.datum {
	margin-bottom: 24px;
}

/* ==========================================================================
	HOMEPAGE
	========================================================================== */

.page-id-12 .main-col {
	margin: 24vw 0 0 0;
	padding: 0;
	background-color: var(--kleur1);
	color: var(--bg);
}

.page-id-12 .main-col:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 100vw;
	height: 34vw;
	margin-top: -34vw;
	background-color: var(--kleur1);
	-webkit-mask-image: url('images/topmask1.png');
	mask-image: url('images/topmask1.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	pointer-events: none;
}

.page-id-12 .blogtitel {
	margin: 2vw 0 1.4vw calc(10vw + 12px);
}

.page-id-12 .blogrij + .wp-block-buttons {
	padding: 0 calc(11vw + 12px);
}

.page-id-12 .wp-block-group {
	padding: 5vw 30vw;
	margin: 0;
}

.page-id-12 .wp-block-group:nth-of-type(2) {
	background-color: var(--tekst);
	color: var(--bg);
	margin-top: 15vw;
	padding-bottom: 20vw;
}

.page-id-12 .wp-block-group:nth-of-type(2):before, .page-id-12 .wp-block-group:nth-of-type(4):before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 100vw;
	height: 39vw;
	margin-top: -44vw;
	background-color: var(--tekst);
	-webkit-mask-image: url('images/topmask2.png');
	mask-image: url('images/topmask2.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	pointer-events: none;
}

.page-id-12 .wp-block-group:nth-of-type(3) {
	background-color: var(--bg);
	color: var(--tekst);
	padding-bottom: 20vw;
}

.page-id-12 .wp-block-group:nth-of-type(3):before, .page-id-12 .wp-block-group:nth-of-type(5):before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 100vw;
	height: 34vw;
	margin-top: -39vw;
	background-color: var(--bg);
	-webkit-mask-image: url('images/topmask1.png');
	mask-image: url('images/topmask1.png');
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	pointer-events: none;
}

.page-id-12 .wp-block-group:nth-of-type(4) {
	background-color: var(--kleur1);
	color: var(--bg);
	padding-bottom: 20vw;
}

.page-id-12 .wp-block-group:nth-of-type(4):before {
	background-color: var(--kleur1);
}

.page-id-12 .wp-block-group:nth-of-type(5) {
	background-color: var(--tekst);
	color: var(--bg);
	padding-bottom: 20vw;
}

.page-id-12 .wp-block-group:nth-of-type(5):before {
	background-color: var(--tekst);
}

.page-id-12 .wp-block-image.rondje {
	width: fit-content;
	margin: -8vw 2vw 1vw -14vw;
	float: left;
}

.page-id-12 .wp-block-image.rondje img {
	width: 17vw !important;
	height: auto;
}

/* ==========================================================================
	UNDER CONSTRUCTION
	========================================================================== */

.page-id-48 header, .page-id-48 .navbar, .page-id-48 > footer, .page-id-48 h1.entry-title {
	display: none;
}

.page-id-48 #content {
	max-width: none;
	padding: 0 12px;
}

.page-id-48 .main-col {
	padding: 0;
}

.page-id-48 .main-col .entry-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100dvh;
	gap: 2vw;
}

/* ==========================================================================
	BUTTONS
	========================================================================== */

.wp-block-buttons div.wp-block-button {
	margin: 0 0 20px 0;
}

a.wp-block-button__link, a.wp-block-button__link:visited {
	width: auto;
	height: auto;
	background-color: var(--bg);
	border: none;
	-webkit-border-radius: 0;
	border-radius: 0;
	color: #fff;
	font-size: 1.2vw;
	letter-spacing: 0.05vw;
	padding: 0.5vw 1vw;
	text-decoration: none;
	line-height: normal;
	font-family: inherit;
	font-weight: 600;
	text-transform: none;
	-webkit-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
}

a.wp-block-button__link:hover, a.wp-block-button__link:active, a.wp-block-button__link:focus {
	background-color: var(--tekst) !important;
	color: var(--bg) !important;
}

/* ==========================================================================
	GALERIJ
	========================================================================== */

.wp-block-gallery {
	margin-bottom: 20px !important;
	gap: 1vw !important;
	justify-content: space-between;
}

.wp-block-gallery figure.wp-block-image {
	margin: 0 !important;
	flex-grow: 0 !important;
}

.wp-block-gallery.columns-1 figure.wp-block-image {
	width: 100% !important;
}

.wp-block-gallery.columns-2 figure.wp-block-image {
	width: calc(50% - 0.5vw) !important;
}

.wp-block-gallery.columns-3 figure.wp-block-image, .wp-block-gallery.columns-default figure.wp-block-image {
	width: calc(33.33% - 0.67vw) !important;
}

.wp-block-gallery.columns-4 figure.wp-block-image {
	width: calc(25% - 0.75vw) !important;
}

.wp-block-gallery.columns-5 figure.wp-block-image {
	width: calc(20% - 0.8vw) !important;
}

.wp-block-gallery.columns-6 figure.wp-block-image {
	width: calc(16.66% - 0.83vw) !important;
}

.wp-block-gallery.columns-7 figure.wp-block-image {
	width: calc(14.28% - 0.86vw) !important;
}

.wp-block-gallery.columns-8 figure.wp-block-image {
	width: calc(12.5% - 0.88vw) !important;
}

.wp-block-gallery figure.wp-block-image:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	margin: 0;
	transition: all 0.5s;
	opacity: 0;
	background: rgba(255,255,255,1.00);
	-webkit-box-shadow: inset 0 0 100px 20px #000;
	box-shadow: inset 0 0 100px 20px #000;
	pointer-events: none;
}

.wp-block-gallery figure.wp-block-image:hover:before {
	opacity: 0.4;
}

.wp-block-gallery figure.wp-block-image figcaption {
	display: none !important;
}

/* ==========================================================================
	NIVO-LIGHTBOX
	========================================================================== */

body .nivo-lightbox-theme-default .nivo-lightbox-prev {
	top: 0;
	height: 100%;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='70' height='70' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='square' stroke-linejoin='arcs'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E");
	background-size: contain;
	width: 70px;
	max-width: 8vw;
}

body .nivo-lightbox-theme-default .nivo-lightbox-next {
	top: 0;
	height: 100%;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='70' height='70' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='square' stroke-linejoin='arcs'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
	background-size: contain;
	width: 70px;
	max-width: 8vw;
}

body .nivo-lightbox-theme-default .nivo-lightbox-close {
	width: 25px;
	height: 25px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='square' stroke-linejoin='arcs'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
	background-size: contain;
	background-position: center center;
}

body .nivo-lightbox-theme-default.nivo-lightbox-overlay {
	background: #000;
	z-index: 12;
}

body .nivo-lightbox-wrap {
	top: 10px;
	bottom: 26px;
}

body .nivo-lightbox-theme-default .nivo-lightbox-title-wrap {
	bottom: -26px;
	height: 26px;
}

body .nivo-lightbox-theme-default .nivo-lightbox-title {
	background: transparent;
	font-family: inherit;
	font-size: 13px;
	text-transform: none;
	padding: 5px;
	color: rgba(255, 255, 255, 0.7);
}

/* ==========================================================================
	CONTACTFORMULIER
	========================================================================== */

.wpcf7-form label {
	width: 100%;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 0;
}

.wpcf7-form-control-wrap {
	display: block;
	margin-bottom: 10px;
}

.wpcf7-form-control {
	width: 100%;
	height: auto;
	padding: 10px;
	border: 2px solid #000;
	display: block;
	font-size: 13px;
	line-height: 1;
	color: #000;
	background: rgba(255, 255, 255, 0.5);
	-webkit-border-radius: 0;
	border-radius: 0;
}

.wpcf7-form-control:focus {
	background: #fff;
	color: #000;
	border-color: #d51317;
	box-shadow: none;
}

input[type=button], input[type=submit], input[type=text], input[type=email], textarea {
	-webkit-appearance: none; /*Safari/Chrome*/
	-moz-appearance: none; /*Firefox*/
	-ms-appearance: none; /*IE*/
	-o-appearance: none; /*Opera*/
	appearance: none;
}

input.wpcf7-submit {
	width: 160px;
	margin: 10px 0;
	padding: 0 20px;
	color: #fff !important;
	background-color: #000;
	border: none;
	font-size: 14px;
	line-height: 44px;
	text-decoration: none;
	font-weight: normal;
	-webkit-border-radius: 0;
	border-radius: 0;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

input.wpcf7-submit:hover, input.wpcf7-submit:focus {
	background-color: #fff !important;
	color: #000 !important;
	border: none;
}

.wpcf7-response-output {
	clear: both;
	text-align: center;
	padding: 30px !important;
}

form.sent > div.row, form.sent > p, form.sent > h3 {
	display: none;
}

/* PLACEHOLDERS */
::-webkit-input-placeholder { /* WebKit browsers */
	 color: #999 !important;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	 color: #999 !important;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	 color: #999 !important;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
	 color: #999 !important;
}

/* SWITCH */
.form-switch {
	padding-left: 1.5em;
}
.form-switch .wpcf7-acceptance {
	border: none;
	background-color: transparent;
}
.form-switch .form-check-input {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='white'/%3e%3c/svg%3e");
	font-size: 18px;
	margin-top: 1px;
	background-color: #d32f2f;
	border-color: white;
}
.form-switch .form-check-input:focus {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='white'/%3e%3c/svg%3e");
	box-shadow: none;
}
.form-switch .form-check-input:checked {
	background-color: green;
	border-color: white;
}

.wpcf7-form.sent .form-switch {
	display: none;
}

/* ==========================================================================
	FOOTER
	========================================================================== */

body > footer {
	text-align: center;
	padding: 12px 0;
}

body > footer p {
	font-size: 14px;
	letter-spacing: 1px;
	margin: 0;
}