/*
Theme: Natwerk
Version: 1.0
Theme_URI: https://www.lemon.nl
Date: 04/2026
Author: Roeland ten Holder | Lemon
Author URI: roeland@lemon.nl
*/

/** ******************************** **/
/**      _____                       **/
/**    _(  _  )__________________    **/
/**   ( | (___)     | ____ |  _  |   **/
/**   |_|_______|_|_|______|_| |_|   **/
/**                                  **/
/**            www.lemon.nl          **/
/**                                  **/
/** ******************************** **/

/*************** FONTS ****************/

/* 
Proxima Nova Thin			font-family: "proxima-nova", sans-serif; font-weight: 100; font-style: normal;
Proxima Nova Thin It		font-family: "proxima-nova", sans-serif; font-weight: 100; font-style: italic;
Proxima Nova Light			font-family: "proxima-nova", sans-serif; font-weight: 300; font-style: normal;
Proxima Nova Regular		font-family: "proxima-nova", sans-serif; font-weight: 400; font-style: normal;
Proxima Nova Regular It		font-family: "proxima-nova", sans-serif; font-weight: 400; font-style: italic;
Proxima Nova Semibold		font-family: "proxima-nova", sans-serif; font-weight: 600; font-style: normal;
Proxima Nova Semibold It	font-family: "proxima-nova", sans-serif; font-weight: 600; font-style: italic;
Proxima Nova Bold			font-family: "proxima-nova", sans-serif; font-weight: 700; font-style: normal;
Proxima Nova Bold It		font-family: "proxima-nova", sans-serif; font-weight: 700; font-style: italic;
*/

h1, #nav h2							{ font-size: 78px; line-height: 1.00em; font-weight: 300; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 0.5em 0; }
h2									{ font-size: 48px; line-height: 1.00em; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0.3em 0 0.8em 0; letter-spacing: 0.0075em; }
h3, .faq-title, h4.big				{ font-size: 36px; line-height: 1.10em; font-weight: 300; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 0 0; letter-spacing: 0.0075em; }
.has-step-cards-top h3 				{ font-size: 72px; line-height: 1.00em; font-weight: 300; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 0.4em 0; letter-spacing: 0.0075em; }
h4									{ font-size: 32px; line-height: 1.10em; font-weight: 100; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0.1em 0 0.1em 0; }
.has-step-cards-top p				{ font-size: 28px; line-height: 1.05em; font-weight: 300; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 4px 0; }
.footer h4 							{ font-size: 28px; line-height: 1.05em; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 4px 0; }
.headerwrapper h4					{ font-size: 24px; line-height: 1.05em; font-weight: 400; }
h5 									{ font-size: 13px; line-height: 1.30em; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 0 0; text-transform: uppercase; }
h6									{ font-size: 24px; line-height: 1.30em; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 4px 0; }
body								{ font-size: 20px; line-height: 1.15em; font-weight: 100; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; letter-spacing: 0.04em; }
.intro, .big						{ font-size: 23px; line-height: 1.25em; font-weight: 100; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; letter-spacing: 0.04em; }
.case p,  .card						{ font-size: 18px; line-height: 1.20em; font-weight: 100; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; }
.date, .small, .small a 			{ font-size: 15px; line-height: 1.30em;                   font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; }
.tag								{ font-size: 13px; line-height: 1.20em; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 20px 0; letter-spacing: 0.05em; text-decoration: none; text-transform: uppercase; }
.topmenu a, .button 				{ font-size: 16px; line-height:   26px; font-weight: 400; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; }
.number								{ font-size: 80px; line-height: 1.20em; font-weight: 400; }
.number-suffix 						{ font-size: 32px; line-height: 1.20em; font-weight: 400; vertical-align: top; margin-top: 14px; display: inline-block; }
.number-big							{ font-size: 85px; line-height: 1.55em; font-weight: 100; font-style: normal; font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; margin: 0 0 0 0; }


.proxima-nova 						{ font-family: 'proxima-nova', Arial, Helvetica, Verdana, sans-serif; }

.content ol li 						{ margin-left: 0; margin-bottom: 15px; }

.content p							{ font-weight: 300; }
b, strong 							{ font-weight: 400; }

a.underline 						{ text-decoration: underline; }
a.nounderline 						{ text-decoration: none; }
a.nounderline:hover					{ text-decoration: underline; }
.content a i 						{ font-size: 0.7em; vertical-align: middle; }

.footer 							{ font-weight: 400; }
.footer a:hover 					{ text-decoration: underline;  }

.topmenu a {
	color: var(--white);
	text-decoration: none;
}

.topmenu a:hover,
.topmenu a:focus,
.topmenu a#nl.nl,
.topmenu a#en.en,
.topmenu a.active {
	text-decoration: underline;
}


.contentpaddingright p {
	padding-right: 200px;
}

.hero .content p,
.hero.content p {
	font-size: 24px;
	font-weight: 300;
	line-height: 1.45em;
}

.hero.content p b,
.hero .content p b,
.hero.content p strong,
.hero .content p strong  {
	font-weight: 400;
}

a h1, a h2, a h3, a h4, a h5, a h6,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a 	{ text-decoration: none; }

a.page-numbers:hover,
.has-author a:hover,
.has-article a:hover h3,
a.list-article:hover h2  {
	text-decoration: underline;
}




a.has-case {
	text-decoration: none;
}

a.has-case h3,
a.has-case p > span {
	opacity: 0.6;
	transition: all 0.2s;
}

a.has-case p .more {
	opacity: 0;
	text-decoration: underline;
}

a.has-case:hover h3,
a.has-case:hover p .more {
	opacity: 1;
}




.videoheader {
	position: relative;
}

.videoheader video {
	width: 100%;
}


.videoheader .widthcontainer {
	position: absolute;
	top: 0;
}



/************* CONTAINERS *************/
body {
	background-color: var(--lightgrey);
}

body.admin-bar {
	/* padding-top: 32px; */
}

.pagewrapper 			{ width: 100%; margin-left: auto; margin-right: auto; }
.headerwrapper 			{ width: 100%; max-width: 100%; aspect-ratio: 2/1; padding: 0; margin-left: auto; margin-right: auto; margin-bottom: 0px; }
.case.headerwrapper.has-background-image	{ aspect-ratio: 2/1.4; }
.fullcontainer 			{ width: 100%; padding-left: 0; padding-right: 0;  }
.widthcontainer 		{ width: calc(100% - var(--fullmargin)); max-width: 1600px; padding-left: var(--halfmargin); padding-right: var(--halfmargin); margin-left: auto; margin-right: auto; }
.container				{ width: calc(100% - var(--fullmargin)); max-width: 1500px; padding-left: var(--halfmargin); padding-right: var(--halfmargin); margin-left: auto; margin-right: auto; }
.smallcontainer 		{ position: relative; width: calc(100% - var(--fullmargin)); max-width:  950px; padding-left: var(--halfmargin); padding-right: var(--halfmargin); margin-left: auto; margin-right: auto; }


/* 
.footer 	{ position: fixed; z-index: 0;}
.has-cases 	{ margin-bottom: 650px;} 
*/

.fullpage 				{ width: 100vw; height: 100vh; display: flex; }
.streamer 				{ padding-left: var(--threequartmargin); padding-right: var(--threequartmargin); }

.page-template-page-yellow {
	background-color: var(--lime);
}

/* .row {
	margin-right: calc(-.5 * var(--halfmargin));
	margin-left: calc(-.5 * var(--halfmargin));
}
.row [class*="col"],
.row [class*="col-"] {
	padding-right: 20px;
	padding-left: 20px;
} */

.fullcontainer > .row {
	margin-right: 0;
	margin-left: 0;
}




#page1 {
	position: fixed;
	z-index: 0;
}

#home-step-23 {
	text-align: right;
}

#page11 {
	position: relative;
	z-index: 1;
}


#page2 {
	position: fixed;
	top: 100vh;
	/* aspect-ratio: 16/9; */
	z-index: 2;
	transition: all 0.6s ease-out;
}

/* based on wait */
#page2.active {
	top: 50vh;
	transition: all 0.6s ease-out;
}

/* based on scroll */
#page2.scroll {
	animation: page2 linear;
	animation-timeline: scroll(nearest);
	transition: all 0.6s ease-out;
}

#page2.active #home-step-3 {
	aspect-ratio: 16/9;
	background-size: 90%;
	animation: homestep3 linear;
	animation-timeline: scroll(nearest);
	transition: all 0.6s ease-out;
}



@keyframes page2 {
	0%   {  }
	20%  { top: -10vh; }
	70%,100%  { top: -40vh; }
}

@keyframes homestep3 {
	0%   { }
	20%, 100%  { background-size: 100%; }
}




#page3 {
	position: relative;
	z-index: 3;
}

#page4 {
	position: relative;
	z-index: 4;
}

#page5 {
	position: relative;
	z-index: 5;
}



.tipped:hover {
	cursor: pointer;
}

.tooltip {
	pointer-events: none;
	display: inline;
	position: sticky;

	width: 130px;
	height: 160px;
	z-index: +9999999;
	opacity: 0.1;
}

.tooltip.show {
	opacity: 1;
}

#page6 {
	position: relative;
	z-index: 6;
}





#page1 .logo {
	max-width: 87%;
	margin: 0 auto;
}

#home-step-1 {
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	opacity: 0;
	transition: all 0.6s ease-out;
}

#home-step-1.active {
	top: 100px;
	opacity: 1;
}




#home-step-22 {
	position: relative;
	margin-top: -50px;
	opacity: 0;
	transition: all 0.6s ease-out;
	font-weight: 400;
}

#home-step-22 p {
	padding-bottom: 10px;
}

#home-step-22.active {
	margin-top: 0px;
	opacity: 1;
}






#home-step-3.paralax {
	top: 0vh;
	background-size: 100%;
	transition: all 0.3s ease-out;
	position: relative;
}

#nav {
	position: fixed;
	top: 0;
	z-index: +3;
	width: 100%;
	
}

#nav .overlay {
	opacity: 0;
	transition: all 0.3s ease-out;
	color: var(--white);
	padding: 40px;
}

#nav.overlay  .overlay {
	opacity: 1;
	transition: all 0.3s ease-out;
}


.bg-black .tag.opacity6 {
	opacity: 1;
}



@media (min-width: 992px) {
	.has-step-cards-top .stepbutton {
		margin-top: 15px;
	}

	.has-step-cards-top #steps {
		position: relative;
	}

	.has-step-cards-top .step1, 
	.has-step-cards-top .step2 {
		position: absolute;
		top: 0;
	}

	.has-step-cards-top .stepbutton,
	.has-step-cards-top .step0,
	.has-step-cards-top .step1,
	.has-step-cards-top .step2 { opacity: 0; }


	.has-step-cards-top .stepbutton.active,
	.has-step-cards-top .step.active { opacity: 1; }

	.has-step-cards {
		border-top: 1px solid rgba(0,0,0,0.2);
		border-bottom: 1px solid rgba(0,0,0,0.2);
		overflow-x: hidden !important;
		max-width: 100%;
	}

	.has-step-cards .has-rows {
		width: 100vw;
	}


	.has-step-cards .has-rows > div {
		height: 600px;
		position: relative;
	}

	.has-step-cards .has-rows .stepsrow {
		display: flex;
		overflow: hidden;
		transition: left 0.5s;
		max-width: 100%;
		position: absolute;
		top: 0;
	}

	.stepsrow {
		left: 101vw;
	}

	.row0 {
		left: 0;
	}

	.showrow1 .row0,
	.showrow2 .row0,
	.showrow3 .row0,
	.showrow4 .row0 { left: -101vw; }

	.showrow1 .row1,
	.showrow2 .row2,
	.showrow3 .row3,
	.showrow4 .row4 { left: 0; }

	.button.more {
		padding: 14px 5px 15px;
		text-align: center;
		width: 100%;
		max-width: 400px;
	}

	.has-step-card {
		width: 25%;
		border-right: 1px solid rgba(0,0,0,0.2);
	}

	.has-step-card:last-of-type {
		border-right: 0;
	}

	.step-card {
		color: var(--black);
		opacity: 0.2;
		transition: all 0.3s;
		padding: 1px 20px 20px;
		height: 600px;
	}

	.step-card p,
	.step-card h4 {
		margin-bottom: 32px;
	}

	.step-card.fadeout {
		opacity: 0;
		transition: all 0.2s;
	}

	.has-step-card:first-of-type .step-card {
		padding-left: 0;
	}

	.has-step-card:last-of-type .step-card {
		padding-right: 0;
	}

	.step-card p {
		opacity: 0;
		font-size: 18px;
		font-weight: 100;
		line-height: 1.3em;
		transition: all 0.4s;
	}

	.step-card:hover,
	.step-card:hover div,
	.step-card:hover p {
		opacity: 1;
	}
}





.button.more:hover .rotate svg {
	transition: all 0.3s;
	transform: rotate(360deg);
}



.has-how-card {
	border-right: 1px solid rgba(255,255,255,0.2);
}

.how-card {
	display: inline-block;
	color: var(--white);
	opacity: 0.6;
	transition: all 0.4s;
	padding-top: 40px;
	padding-left: 20px;
	padding-right: 20px;
	text-decoration: none;
}

.how-card > div {
	aspect-ratio: 1/1.75;
}

.has-how-card:last-of-type {
	border: 0;
}

.how-card:last-of-type div {
	padding-right: 0;
}

.how-card:first-of-type div {
	padding-left: 0;
}

.how-card:hover,
.how-card:hover div,
.how-card:hover p {
	opacity: 1;
}

.how-card .tag {
	margin-bottom: 40px;
}
.how-card p,
.how-card h4 {
	margin-bottom: 32px;
}

.how-card p {
	opacity: 0;
	font-size: 18px;
	font-weight: 100;
	line-height: 1.3em;
	transition: all 0.4s;
}



.has-article {
	height: 100%;
}

.has-article .hero-article {
	height: calc(100% - 20px);
}


.article {
	position: relative;
	margin-bottom: 20px;
	background-color: var(--white);
}





.img-container {
	aspect-ratio: 1/0.625;
	position: relative;
}






.navbar-brand.logo {
	width: 100%;
	max-width: 200px;
	padding-bottom: 2px;
}


.container.header {
	padding-top: var(--fullmargin);
	padding-bottom: var(--fullmargin);
}


.container .has-header-date {
	padding-top: 8px;
	padding-left: 60px;
}

.container .has-logo {
	text-align: center;
}

.container .has-logo .logo img {
	width: 250px;
	margin: 6px;
	max-width: 100%;
}

.container .has-mini-nav {
	padding-top: 8px;
	padding-right: 60px;
}

.has-mini-nav a,
.has-mini-nav span {
	padding-left: 10px;
	cursor: poproxima-nova;
}

.has-mini-nav a:hover {
	cursor: poproxima-nova;
}

.has-mini-nav i {
	font-size: 1.1em;
	margin: 0 10px;
}


/*************** NAV ***************/

.has-top-nav,
.header,
.has-header-nav {
	position: relative;
	z-index: +1;
}

.has-header-nav {
	padding-bottom: var(--halfmargin);
}

.header-nav {
	position: relative;
	padding: 0;
	z-index: +1;
	border-top: 1px solid var(--black);
	border-bottom: 1px solid var(--black);
	text-align: center;
}

.has-header-nav .navbar-nav {
	margin: 0 var(--fullmargin);
	justify-content: space-between;
	width: 100%;
}

.navbar-nav li a {
	transition: all 0.2s;
}

.navbar-nav li.current_page_item > a,
.navbar-nav li a:focus,
.navbar-nav li a:hover {
	transition: all 0.2s;
}

.has-header-nav .navbar-nav > li > a {
	display: inline-block;
	padding: 11px 10px;
}

.has-top-nav .navbar-nav > li > a {
	display: inline-block;
	padding: 13px 0 12px 25px;
}


/* SUBMENU */
.navbar-nav > li.menu-item-has-children {
	position: relative;
}

.navbar-nav > li.menu-item-has-children > a {
	padding-right: 30px;
}

.navbar-nav > li.menu-item-has-children > a::after {
	position: absolute;
	right: 10px;
	top: 24px;
	font: var(--fa-font-solid);
	content: "\f078";
}

.navbar-nav li .sub-menu {
	position: absolute;
	padding: 0 20px;
	margin-left: -10px;
	display: block;
	opacity: 0;
	max-height: 0;
	min-width: 300px;
	background-color: #fff;
	overflow: hidden;
	transition: all 0.2s;
	border-radius: 20px;
}

.navbar-nav li:hover .sub-menu {
	opacity: 1;
	padding-top: 5px;
	padding-bottom: 5px;
	max-height: 300px;
	transition: max-height 0.5s ease-out;
	z-index: +1;
}

.navbar-nav > li li > a {
	display: block;
	padding: 12px 15px 11px 0;
	border-bottom: 1px solid var(--grey);
}

.navbar-nav > li li:last-of-type > a {
	display: block;
	border-bottom: none;
}


/************* MODAL *************/

.modal {
	background-color: rgba(255, 255, 255, 0.92);
}

.modal-content {
	position: relative;
	border-radius: 0;
	border-color: var(--black);
	background-color: var(--lightgrey);
}

#popup_2 .modal-content {
	color: var(--red) !important;
	border-color: var(--red);
	background-color: var(--white);
}


#popup_2 .modal-content.content h4 {
	color: var(--red) !important;
	margin-bottom: 32px;
}

.modal-body {
	padding: 40px 50px;
}

#popup_2 .button {
	margin-top: 24px;
}

.modal-body p {
	font-weight: 300;
	margin-bottom: 20px;
}

.button-close {
	position: absolute;
	right: 31px;
	top: 31px;
	z-index: +1;
	width: 58px;
	height: 58px;
	border-radius: 30px;
	background-color: var(--white);
	color: var(--black);
	padding: 19px 20px;
	font-size: 16px;
	line-height: 16px;
	text-align: center;
	transition: all 0.2s;
}

.page-template-page-yellow .button-close {
	background-color: var(--lime);
	border: 1px solid var(--black);
	padding: 18px 19px;
}

.button-close:hover,
.page-template-page-yellow .button-close:hover {
	background-color: var(--black);
	color: var(--white);
	transition: all 0.2s;
}





.minimal-image-size {
	width: 100%;
	min-height: 200px;
	aspect-ratio: 4/3;
}

/*************** FOOTER ***************/

.fullcontainer.footer {
	position: relative;
}

.footer {
	font-size: 13px;
}
.footer a {
	transition: all 0.2s;
}
.footer a:hover {
	transition: all 0.2s;
}

.content_footer a {
	display: inline-block;
	font-size: 18px;
	line-height: 1.25em;
	font-weight: 400;
	padding-top: 30px;
}


/******************* BUTTONS ****************/

.button:hover {
	cursor: pointer;
}

.button,
#gform_submit_button_1,#gform_submit_button_2,#gform_submit_button_3,#gform_submit_button_4,#gform_submit_button_5,
#gform_submit_button_6,#gform_submit_button_7,#gform_submit_button_8,#gform_submit_button_9,#gform_submit_button_10,
#gform_submit_button_11,#gform_submit_button_12,#gform_submit_button_13,#gform_submit_button_14,#gform_submit_button_15,
#gform_submit_button_16,#gform_submit_button_17,#gform_submit_button_18,#gform_submit_button_19,#gform_submit_button_20,
.gform-theme .gform_button.button {
	padding: 14px 40px 15px;
	border: none;
	border-radius: 60px;
	text-decoration: none !important;
	transition: all 0.1s;
	margin: 10px 0 0 0;
	border: 1px solid rgba(255,255,255,1);
	display: inline-block;
}

a.col:hover .button,
#gform_submit_button_1:hover,#gform_submit_button_2:hover,#gform_submit_button_3:hover,#gform_submit_button_4:hover,#gform_submit_button_5:hover,
#gform_submit_button_6:hover,#gform_submit_button_7:hover,#gform_submit_button_8:hover,#gform_submit_button_9:hover,#gform_submit_button_10:hover,
#gform_submit_button_11:hover,#gform_submit_button_12:hover,#gform_submit_button_13:hover,#gform_submit_button_14:hover,#gform_submit_button_15:hover,
#gform_submit_button_16:hover,#gform_submit_button_17:hover,#gform_submit_button_18:hover,#gform_submit_button_19:hover,#gform_submit_button_20:hover,
.gform-theme .gform_button.button:hover,
.button:focus, .button:active, .button:hover {
	transition: all 0.1s;
}

.button.big, .button.width, .button.wide, .button.full, .button.button-full {
	width: 100%;
	max-width: 480px;
}

.button.small {
	border-radius: 10px;
	font-size: 16px;
	padding: 7px 30px;
	margin: 7px 10px 5px 0;
	width: unset;
}

a.button i {
	position: relative;
	font-size: 1em;
	margin-right: 5px;
}

a.button.has-icon-right i { margin-right: unset; margin-left: 5px; }
a.button.has-icon-left i  { margin-right: 5px; }

a.button.button-donate i {
	top: -2px;
}



/************** RESPONSIVE VIDEO ***************/
.video, video, .video video { max-width: 100%;}
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; margin-bottom: 20px; }
.video-container iframe, .video-container object, .video-container embed, .video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100% !important; }
