/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.9.1787316363
Updated: 2026-08-21 12:46:03

*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

.gform_validation_errors{
	display:none;
}
/* ---- Field grid: Figma row gap 22, column gap 23 ---- */
.page-id-57 .gform_wrapper.gravity-theme .gform_fields {
	grid-column-gap: 23px;
	grid-row-gap: 22px;
}

/* ---- Micro-labels: Montserrat 600 11 / lh 11 / ls 1.54 / caps / white 55% ---- */
.page-id-57 .gform_wrapper.gravity-theme .gfield_label,
.page-id-57 .gform_wrapper.gravity-theme .gform-field-label {
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 11px;
	letter-spacing: 1.54px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.55);
	margin: 0 0 9px;
	padding: 0;
}

.page-id-57 .gform_wrapper.gravity-theme .gform-field-label > .gfield_required,
.page-id-57 .gform_wrapper.gravity-theme .gfield_label > .gfield_required,
.page-id-57 .gform_wrapper.gravity-theme .gfield_required,
.page-id-57 .gform_wrapper.gravity-theme .gfield_required_asterisk {
	display: none;
}
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="text"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="email"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="tel"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="number"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="password"],
.page-id-57 .gform_wrapper.gravity-theme .gfield textarea {
	width: 100%;
	box-sizing: border-box;
	background-color: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(212, 176, 57, 0.3);
	border-radius: 2px;
	padding: 10px;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	line-height: 1.6;
	transition: border-color 0.25s ease, background-color 0.25s ease;
}

.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="text"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="email"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="tel"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="number"],
.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="password"] {
	height: 50px;
}

.page-id-57 .gform_wrapper.gravity-theme .gfield textarea,
.page-id-57 .gform_wrapper.gravity-theme .gfield textarea.large,
.page-id-57 .gform_wrapper.gravity-theme .gfield textarea.medium,
.page-id-57 .gform_wrapper.gravity-theme .gfield textarea.small {
	height: 120px;
	min-height: 120px;
	resize: vertical;
}

.page-id-57 .gform_wrapper.gravity-theme .gfield input:focus,
.page-id-57 .gform_wrapper.gravity-theme .gfield textarea:focus {
	background-color: rgba(255, 255, 255, 0.1);
	border-color: #d4b039;
	outline: 2px solid rgba(212, 176, 57, 0.35);
	outline-offset: 1px;
}

.page-id-57 .gform_wrapper.gravity-theme ::placeholder {
	color: rgba(255, 255, 255, 0.35);
	opacity: 1;
}

/* Stop the browser autofill white flash on the dark field */
.page-id-57 .gform_wrapper.gravity-theme .gfield input:-webkit-autofill {
	-webkit-text-fill-color: #fff;
	-webkit-box-shadow: 0 0 0 1000px #262a52 inset;
}


.page-id-57 .gform_wrapper.gravity-theme #field_1_10 {
	margin-top: 2px; /* 22px grid gap + 2 = Figma 24 */
}

.page-id-57 .gform_wrapper.gravity-theme .gfield--type-checkbox .gfield_checkbox {
	margin: 0;
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 3px 0 0;
	background-color: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(212, 176, 57, 0.45);
	border-radius: 2px;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:hover {
	border-color: #d4b039;
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:checked {
	background-color: #d4b039;
	border-color: #d4b039;
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 5px;
	top: 2px;
	width: 5px;
	height: 9px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.page-id-57 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:focus-visible {
	outline: 2px solid rgba(212, 176, 57, 0.55);
	outline-offset: 2px;
}

/* Consent text uses the Figma privacy-note type */
.page-id-57 .gform_wrapper.gravity-theme .gchoice label,
.page-id-57 .gform_wrapper .bcz-form-note {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 23.1px;
	letter-spacing: 0;
	text-transform: none;
	color: rgba(255, 255, 255, 0.55);
	max-width: 509px;
	margin: 0;
	cursor: pointer;
}

.page-id-57 .gform_wrapper.gravity-theme .gform_required_legend {
	display: none;
}

/* ---- Submit: 289x49, padding 18/34, radius 2, gold with navy label ---- */
.page-id-57 .gform_wrapper.gravity-theme .gform_footer {
	margin: 24px 0 0;
	padding: 0;
	align-items: center;
	line-height: 1; /* the inherited 25.5px strut added 8px to the flex row */
}

.page-id-57 .gform_wrapper.gravity-theme .gform_footer button.gform_button,
.page-id-57 .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	background-color: #d4b039;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.3px;
	line-height: 13px;
	text-transform: uppercase;
	border: 0;
	border-radius: 2px;
	padding: 18px 34px;
	width: auto;
	height: auto;
	margin: 0;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.page-id-57 .gform_wrapper.gravity-theme .gform_footer button.gform_button:hover,
.page-id-57 .gform_wrapper.gravity-theme .gform_footer button.gform_button:focus,
.page-id-57 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.page-id-57 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:focus {
	background-color: #b8962f;
	color: #1f2144;
}

/* ---- AJAX loading state ---- */
.page-id-57 .gform_wrapper.gravity-theme .gform_ajax_spinner {
	margin-left: 14px;
	vertical-align: middle;
}

.page-id-57 .gform_wrapper.gravity-theme .gform_footer button.gform_button[disabled],
.page-id-57 .gform_wrapper.gravity-theme .gform_footer input[type="submit"][disabled] {
	opacity: 0.6;
	cursor: default;
}

.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="text"],
.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="email"],
.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="tel"],
.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="number"],
.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="password"],
.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error textarea {
	border-color: #e8836f;
	background-color: rgba(232, 131, 111, 0.08);
}

.page-id-57 .gform_wrapper.gravity-theme .gfield.gfield_error .gchoice input[type="checkbox"] {
	border-color: #e8836f;
	background-color: rgba(232, 131, 111, 0.08);
}

.page-id-57 .gform_wrapper.gravity-theme .gfield_error .gfield_label,
.page-id-57 .gform_wrapper.gravity-theme .gfield_error .gform-field-label {
	color: rgba(255, 255, 255, 0.75);
}

.page-id-57 .gform_wrapper.gravity-theme .gfield_validation_message,
.page-id-57 .gform_wrapper.gravity-theme .validation_message {
	background: none;
	border: 0;
	padding: 6px 0 0;
	margin: 0;
	color: #e8836f;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
}

.page-id-57 .gform_wrapper.gravity-theme .gform_validation_errors {
	background: rgba(232, 131, 111, 0.1);
	border: 1px solid rgba(232, 131, 111, 0.5);
	border-radius: 2px;
	box-shadow: none;
	padding: 14px 18px;
	margin: 0 0 24px;
}

.page-id-57 .gform_wrapper.gravity-theme .gform_validation_errors > h2 {
	color: #e8836f;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0;
}

/* ---- Success / confirmation ---- */
.page-id-57 .gform_confirmation_message,
.page-id-57 .gform_confirmation_wrapper .gform_confirmation_message {
	background: rgba(212, 176, 57, 0.1);
	border: 1px solid rgba(212, 176, 57, 0.45);
	border-radius: 2px;
	padding: 26px 30px;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 17px;
	line-height: 1.7;
}

.page-id-57 .gform_confirmation_message strong {
	color: #d4b039;
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
	/* 16px prevents iOS Safari auto-zoom on focus */
	.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="text"],
	.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="email"],
	.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="tel"],
	.page-id-57 .gform_wrapper.gravity-theme .gfield input[type="number"],
	.page-id-57 .gform_wrapper.gravity-theme .gfield textarea {
		font-size: 16px;
	}
	.page-id-57 .gform_wrapper.gravity-theme .gform_fields {
		grid-column-gap: 0;
		grid-row-gap: 18px;
	}
	.page-id-57 .gform_wrapper.gravity-theme .gform_footer button.gform_button,
	.page-id-57 .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
		width: 100%;
	}
}

/* =========================================================================
   STICKY HEADER — anchor landing offset                (added 2026-08-25)
   -------------------------------------------------------------------------
   The header (Elementor Theme Builder template #53 "BCZ Header") is
   position:fixed once sticky is enabled. Elementor applies its own
   `sticky_anchor_link_offset` ONLY to the in-page anchor CLICKS it handles.
   Native browser fragment jumps get no offset, so without this rule:
     - the "Skip to content" link (#content) lands behind the header
     - cold-load deep links (e.g. /lidmaatschap/#tarieven) land behind it
   `scroll-margin-top` fixes both. It affects scroll landing position only —
   zero layout or visual change — and does NOT double up with Elementor's
   own scrollTo() offset (scroll-margin does not apply to explicit scrollTo).
   Values = measured header height at each breakpoint.
   REMOVE THIS BLOCK if the header is ever made non-sticky again.
   ========================================================================= */
:target,
#content {
	scroll-margin-top: 184px;
}

@media (max-width: 1366px) {
	:target,
	#content {
		scroll-margin-top: 170px;
	}
}

@media (max-width: 1024px) {
	:target,
	#content {
		scroll-margin-top: 128px;
	}
}

@media (max-width: 880px) {
	:target,
	#content {
		scroll-margin-top: 115px;
	}
}

@media (max-width: 767px) {
	:target,
	#content {
		scroll-margin-top: 113px;
	}
}

/* =========================================================================
   CONTACT PAGE (post 237) — Gravity Form 2 on a WHITE section
   -------------------------------------------------------------------------
   Same form design language as the intake form (.page-id-57): micro-caps
   labels, 50px inputs, 120px textarea, 2px radius, gold submit with navy
   label. Colours are inverted for the white panel: dark text, white fields
   with a navy hairline, instead of white-on-navy.
   Scoped to .page-id-237 only — it cannot reach any other page.
   The six Gravity Forms specificity fixes learned on page 57 are repeated
   here on purpose; do not "simplify" the selectors.
   ========================================================================= */

/* ---- Field grid ---- */
.page-id-237 .gform_wrapper.gravity-theme .gform_fields {
	grid-column-gap: 23px;
	grid-row-gap: 22px;
}

/* ---- Micro-labels: Montserrat 600 11 / ls 1.54 / caps / navy 62% ---- */
.page-id-237 .gform_wrapper.gravity-theme .gfield_label,
.page-id-237 .gform_wrapper.gravity-theme .gform-field-label {
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 11px;
	letter-spacing: 1.54px;
	text-transform: uppercase;
	color: rgba(31, 33, 68, 0.62);
	margin: 0 0 9px;
	padding: 0;
}

/* (4) 4-class selector — GF's own rule sets .gfield_required{display:inline}
   and loads later, so anything shorter ties and loses. */
.page-id-237 .gform_wrapper.gravity-theme .gform-field-label > .gfield_required,
.page-id-237 .gform_wrapper.gravity-theme .gfield_label > .gfield_required,
.page-id-237 .gform_wrapper.gravity-theme .gfield_required,
.page-id-237 .gform_wrapper.gravity-theme .gfield_required_asterisk {
	display: none;
}

/* (6) hide only the English required legend, never .gform_heading */
.page-id-237 .gform_wrapper.gravity-theme .gform_required_legend {
	display: none;
}

/* ---- Inputs: white field, navy hairline, navy text ---- */
.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="text"],
.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="email"],
.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="tel"],
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea {
	width: 100%;
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid rgba(31, 33, 68, 0.22);
	border-radius: 2px;
	padding: 10px;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	line-height: 1.6;
	transition: border-color 0.25s ease, background-color 0.25s ease;
}

.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="text"],
.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="email"],
.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="tel"] {
	height: 50px;
}

/* (1) GF's basic.min.css sets textarea.large{height:288px} — the short
   selector loses, so .gfield + .large is required. */
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea,
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea.large,
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea.medium,
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea.small {
	height: 150px;
	min-height: 150px;
	resize: vertical;
}

.page-id-237 .gform_wrapper.gravity-theme .gfield input:focus,
.page-id-237 .gform_wrapper.gravity-theme .gfield textarea:focus {
	background-color: #fcfbf7;
	border-color: #d4b039;
	outline: 2px solid rgba(212, 176, 57, 0.35);
	outline-offset: 1px;
}

.page-id-237 .gform_wrapper.gravity-theme ::placeholder {
	color: rgba(31, 33, 68, 0.38);
	opacity: 1;
}

.page-id-237 .gform_wrapper.gravity-theme .gfield input:-webkit-autofill {
	-webkit-text-fill-color: #1f2144;
	-webkit-box-shadow: 0 0 0 1000px #ffffff inset;
}

/* ---- Submit: gold with navy label ---- */
/* (2) GF renders <button class="gform_button">, not <input type="submit">.
   (3) it also adds margin-bottom:8px, which inflates the footer. */
.page-id-237 .gform_wrapper.gravity-theme .gform_footer {
	margin: 26px 0 0;
	padding: 0;
	align-items: center;
	line-height: 1;
}

.page-id-237 .gform_wrapper.gravity-theme .gform_footer button.gform_button,
.page-id-237 .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	background-color: #d4b039;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.3px;
	line-height: 13px;
	text-transform: uppercase;
	border: 0;
	border-radius: 2px;
	padding: 18px 34px;
	width: auto;
	height: auto;
	margin: 0;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.page-id-237 .gform_wrapper.gravity-theme .gform_footer button.gform_button:hover,
.page-id-237 .gform_wrapper.gravity-theme .gform_footer button.gform_button:focus,
.page-id-237 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.page-id-237 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:focus {
	background-color: #b8962f;
	color: #1f2144;
}

.page-id-237 .gform_wrapper.gravity-theme .gform_ajax_spinner {
	margin-left: 14px;
	vertical-align: middle;
}

.page-id-237 .gform_wrapper.gravity-theme .gform_footer button.gform_button[disabled],
.page-id-237 .gform_wrapper.gravity-theme .gform_footer input[type="submit"][disabled] {
	opacity: 0.6;
	cursor: default;
}

/* ---- Errors: darker coral so it still passes contrast on white ---- */
/* (5) the base input rule is (0,5,1) via attribute selectors, so the error
   rule needs .gfield.gfield_error + the same attribute selectors to win. */
.page-id-237 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="text"],
.page-id-237 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="email"],
.page-id-237 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="tel"],
.page-id-237 .gform_wrapper.gravity-theme .gfield.gfield_error textarea {
	border-color: #b4543c;
	background-color: rgba(180, 84, 60, 0.06);
}

.page-id-237 .gform_wrapper.gravity-theme .gfield_error .gfield_label,
.page-id-237 .gform_wrapper.gravity-theme .gfield_error .gform-field-label {
	color: rgba(31, 33, 68, 0.85);
}

.page-id-237 .gform_wrapper.gravity-theme .gfield_validation_message,
.page-id-237 .gform_wrapper.gravity-theme .validation_message {
	background: none;
	border: 0;
	padding: 6px 0 0;
	margin: 0;
	color: #b4543c;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
}

/* ---- Success / confirmation ---- */
.page-id-237 .gform_confirmation_message,
.page-id-237 .gform_confirmation_wrapper .gform_confirmation_message {
	background: rgba(212, 176, 57, 0.12);
	border: 1px solid rgba(212, 176, 57, 0.55);
	border-radius: 2px;
	padding: 26px 30px;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	line-height: 1.7;
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
	/* 16px prevents iOS Safari auto-zoom on focus */
	.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="text"],
	.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="email"],
	.page-id-237 .gform_wrapper.gravity-theme .gfield input[type="tel"],
	.page-id-237 .gform_wrapper.gravity-theme .gfield textarea {
		font-size: 16px;
	}
	.page-id-237 .gform_wrapper.gravity-theme .gform_fields {
		grid-column-gap: 0;
		grid-row-gap: 18px;
	}
	.page-id-237 .gform_wrapper.gravity-theme .gform_footer button.gform_button,
	.page-id-237 .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
		width: 100%;
	}
}

/* =========================================================================
   MIJN CIRKEL — inlogpagina (post 328) + ledengedeelte
   -------------------------------------------------------------------------
   Het inlogformulier is het gewone Gravity Form "User Login" (id 3), geplaatst
   met [gravityform id="3"]. Het rendert dezelfde .gform_wrapper.gravity-theme
   markup als de intake- en contactformulieren, dus dit is bewust hetzelfde
   recept als .page-id-237: micro-caps labels, 50px velden, 2px radius, gouden
   submit met navy label — in de lichte variant voor het creme paneel.

   De Gravity Forms specificiteitsfixes uit post 57 en 237 staan hier met
   opzet opnieuw; niet "vereenvoudigen". Nieuw ten opzichte van 237:
   input[type="password"] en het HTML-veld met "Wachtwoord vergeten?".

   Gescoped op .page-id-328 of op een eigen .bcz-* klasse; deze regels kunnen
   geen enkele bestaande pagina raken.
   ========================================================================= */

/* ---- Veldrooster ---- */
.page-id-328 .gform_wrapper.gravity-theme .gform_fields {
	grid-column-gap: 23px;
	grid-row-gap: 22px;
}

/* ---- Micro-labels: Montserrat 600 11 / ls 1.54 / caps / navy 62% ---- */
.page-id-328 .gform_wrapper.gravity-theme .gfield_label,
.page-id-328 .gform_wrapper.gravity-theme .gform-field-label {
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 11px;
	letter-spacing: 1.54px;
	text-transform: uppercase;
	color: rgba(31, 33, 68, 0.62);
	margin: 0 0 9px;
	padding: 0;
}

/* 4-class selector: de eigen regel van GF zet .gfield_required{display:inline}
   en laadt later, dus iets korters verliest. Verbergt "(Required)". */
.page-id-328 .gform_wrapper.gravity-theme .gform-field-label > .gfield_required,
.page-id-328 .gform_wrapper.gravity-theme .gfield_label > .gfield_required,
.page-id-328 .gform_wrapper.gravity-theme .gfield_required,
.page-id-328 .gform_wrapper.gravity-theme .gfield_required_asterisk {
	display: none;
}

/* Alleen de Engelse verplicht-legenda verbergen, nooit .gform_heading */
.page-id-328 .gform_wrapper.gravity-theme .gform_required_legend {
	display: none;
}

/* ---- Velden: wit, navy hairline, navy tekst, 50px hoog ---- */
.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="text"],
.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="email"],
.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="password"] {
	width: 100%;
	box-sizing: border-box;
	height: 50px;
	background-color: #ffffff;
	border: 1px solid rgba(31, 33, 68, 0.22);
	border-radius: 2px;
	padding: 10px;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	line-height: 1.6;
	transition: border-color 0.25s ease, background-color 0.25s ease;
}

.page-id-328 .gform_wrapper.gravity-theme .gfield input:focus {
	background-color: #fcfbf7;
	border-color: #d4b039;
	outline: 2px solid rgba(212, 176, 57, 0.35);
	outline-offset: 1px;
}

.page-id-328 .gform_wrapper.gravity-theme ::placeholder {
	color: rgba(31, 33, 68, 0.38);
	opacity: 1;
}

.page-id-328 .gform_wrapper.gravity-theme .gfield input:-webkit-autofill {
	-webkit-text-fill-color: #1f2144;
	-webkit-box-shadow: 0 0 0 1000px #ffffff inset;
}

/* ---- "Ingelogd blijven": zelfde gouden vinkje als de andere formulieren ---- */
.page-id-328 .gform_wrapper.gravity-theme .gfield_checkbox {
	margin: 0;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice {
	display: flex;
	align-items: center;
	gap: 12px;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 0;
	background-color: #ffffff;
	border: 1px solid rgba(31, 33, 68, 0.28);
	border-radius: 2px;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:hover {
	border-color: #d4b039;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:checked {
	background-color: #d4b039;
	border-color: #d4b039;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 5px;
	top: 2px;
	width: 5px;
	height: 9px;
	border: solid #ffffff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice input[type="checkbox"]:focus-visible {
	outline: 2px solid rgba(212, 176, 57, 0.55);
	outline-offset: 2px;
}

.page-id-328 .gform_wrapper.gravity-theme .gchoice label {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0;
	text-transform: none;
	color: rgba(31, 33, 68, 0.62);
	margin: 0;
	cursor: pointer;
}

/* ---- Submit: goud met navy label ---- */
/* GF rendert <button class="gform_button">, geen <input type="submit">, en
   zet margin-bottom:8px, wat de footer opblaast. */
.page-id-328 .gform_wrapper.gravity-theme .gform_footer {
	margin: 26px 0 0;
	padding: 0;
	align-items: center;
	line-height: 1;
}

.page-id-328 .gform_wrapper.gravity-theme .gform_footer button.gform_button,
.page-id-328 .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	background-color: #d4b039;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.3px;
	line-height: 13px;
	text-transform: uppercase;
	border: 0;
	border-radius: 2px;
	padding: 18px 34px;
	width: auto;
	height: auto;
	margin: 0;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.page-id-328 .gform_wrapper.gravity-theme .gform_footer button.gform_button:hover,
.page-id-328 .gform_wrapper.gravity-theme .gform_footer button.gform_button:focus,
.page-id-328 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.page-id-328 .gform_wrapper.gravity-theme .gform_footer input[type="submit"]:focus {
	background-color: #b8962f;
	color: #1f2144;
}

/* ---- Fouten: donkerder koraal, houdt contrast op creme ---- */
/* De basisregel is (0,5,1) via attribuutselectors, dus de foutregel heeft
   .gfield.gfield_error plus dezelfde attribuutselectors nodig om te winnen. */
.page-id-328 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="text"],
.page-id-328 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="email"],
.page-id-328 .gform_wrapper.gravity-theme .gfield.gfield_error input[type="password"] {
	border-color: #b4543c;
	background-color: rgba(180, 84, 60, 0.06);
}

.page-id-328 .gform_wrapper.gravity-theme .gfield_error .gfield_label,
.page-id-328 .gform_wrapper.gravity-theme .gfield_error .gform-field-label {
	color: rgba(31, 33, 68, 0.85);
}

.page-id-328 .gform_wrapper.gravity-theme .gfield_validation_message,
.page-id-328 .gform_wrapper.gravity-theme .validation_message {
	background: none;
	border: 0;
	padding: 6px 0 0;
	margin: 0;
	color: #b4543c;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
}

/* De samenvattingsbalk bovenaan het formulier, mocht die ooit verschijnen */
.page-id-328 .gform_wrapper.gravity-theme .gform_validation_errors {
	background: rgba(180, 84, 60, 0.08);
	border: 0;
	border-left: 3px solid #b4543c;
	border-radius: 2px;
	box-shadow: none;
	margin: 0 0 22px;
	padding: 13px 16px;
}

.page-id-328 .gform_wrapper.gravity-theme .gform_validation_errors > h2 {
	color: #8c2c23;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}

.page-id-328 .gform_wrapper.gravity-theme .gform_validation_errors > h2 .gform-icon {
	display: none;
}

/* ---- "Wachtwoord vergeten?" (HTML-veld in het formulier) ---- */
.page-id-328 .gform_wrapper.gravity-theme .gfield--type-html {
	margin-top: -4px;
}

.page-id-328 .bcz-lostpassword {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: rgba(31, 33, 68, 0.62);
	text-decoration: none;
	border-bottom: 1px solid rgba(31, 33, 68, 0.25);
	padding-bottom: 2px;
	transition: color 0.3s ease, border-color 0.3s ease;
}

.page-id-328 .bcz-lostpassword:hover,
.page-id-328 .bcz-lostpassword:focus-visible {
	color: #b8962f;
	border-color: #b8962f;
}

/* ---- Melding boven het formulier (na uitloggen) ---- */
.bcz-login-notice {
	margin: 0;
	padding: 13px 16px;
	border-radius: 2px;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
}

.bcz-login-notice--ok {
	background-color: rgba(31, 33, 68, 0.05);
	border-left: 3px solid #d4b039;
	color: #1f2144;
}

/* ---- Uitloggen ---- */
/* Tekstlink in de ledenheader: exact de vormgeving van de Login-knop in de
   publieke header (Montserrat 500 14, wit 70%, hover wit). */
.bcz-logout--link {
	display: inline-block;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 14px;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: color 0.3s ease;
}

.bcz-logout--link:hover,
.bcz-logout--link:focus-visible {
	color: #ffffff;
}

/* Gouden knop in het mobiele ledenmenu: zelfde recept als de knoppen in de
   bestaande Mobile Menu popup. */
.bcz-logout--button {
	display: block;
	width: 100%;
	text-align: center;
	background-color: #d4b039;
	color: #1f2144;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.3px;
	line-height: 13px;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 2px;
	padding: 12px 15px;
	transition: background-color 0.3s ease;
}

.bcz-logout--button:hover,
.bcz-logout--button:focus-visible {
	background-color: #b8962f;
	color: #1f2144;
}

/* ---- Verschillen tussen formulier 3 en het oude add-on-formulier ---- */
/* Formulier 3 is een gewoon Gravity Form en rendert net iets anders: een lege
   koptekst, het wachtwoordveld in een extra wrapper, validatiemeldingen bóven
   het veld, en een keuzelabel dat óók .gform-field-label heet. */

/* Lege koptekst (titel staat uit, omschrijving is leeg) niet laten meetellen */
.page-id-328 .gform_wrapper.gravity-theme .gform_heading {
	margin: 0;
}

.page-id-328 .gform_wrapper.gravity-theme .gform_description:empty {
	display: none;
}

/* Het wachtwoordveld zit in twee extra spans die anders niet meeschalen */
.page-id-328 .gform_wrapper.gravity-theme .ginput_container_password .ginput_password,
.page-id-328 .gform_wrapper.gravity-theme .password_input_container {
	display: block;
	width: 100%;
}

/* Validatiemelding staat bij dit formulier bóven het veld */
.page-id-328 .gform_wrapper.gravity-theme .field_validation_above .gfield_validation_message {
	margin: 0 0 8px;
	padding: 0;
}

/* "Ingelogd blijven" is een keuzelabel, geen veldlabel: gewone schrijfwijze.
   Dit moet specifieker zijn dan de micro-caps-regel hierboven, want Gravity
   Forms geeft het label nu óók de klasse .gform-field-label. */
.page-id-328 .gform_wrapper.gravity-theme .gchoice label.gform-field-label,
.page-id-328 .gform_wrapper.gravity-theme .gchoice label {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0;
	text-transform: none;
	color: rgba(31, 33, 68, 0.62);
	margin: 0;
	cursor: pointer;
}


/* ---- Profielblok in de ledenheader: avatar + naam + uitklapmenu ---- */
/* Typografie en kleuren zijn exact die van de oude Login-knop in de publieke
   header (Montserrat 500 14, wit 70%, hover wit, 0.3s), zodat de rechterbovenhoek
   niet verandert van toon. De klassen bestaan alleen in het ledenheader-template,
   dus ze zijn zelf-gescoped. */
.bcz-user {
	position: relative;
	display: inline-flex;
}

.bcz-user__trigger {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 2px;
	cursor: pointer;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 14px;
	color: rgba(255, 255, 255, 0.7);
	transition: color 0.3s ease;
}

.bcz-user:hover .bcz-user__trigger,
.bcz-user.is-open .bcz-user__trigger,
.bcz-user__trigger:focus-visible {
	color: #ffffff;
}

.bcz-user__trigger:focus-visible {
	outline: 2px solid rgba(212, 176, 57, 0.55);
	outline-offset: 3px;
}

/* Avatar: 32px rondje met gouden hairline. De initialen liggen eronder en
   worden zichtbaar als er geen avatar is of de afbeelding niet laadt. */
.bcz-user__avatar {
	position: relative;
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	overflow: hidden;
	border: 1px solid rgba(212, 176, 57, 0.6);
	border-radius: 50%;
	background-color: #191a36;
	transition: border-color 0.3s ease;
}

.bcz-user:hover .bcz-user__avatar,
.bcz-user.is-open .bcz-user__avatar {
	border-color: #d4b039;
}

.bcz-user__initials {
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.5px;
	color: #d4b039;
}

.bcz-user__avatar-img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
}

.bcz-user__name {
	max-width: 180px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.bcz-user__chevron {
	flex: 0 0 auto;
	width: 0;
	height: 0;
	border-top: 5px solid currentColor;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	opacity: 0.75;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.bcz-user:hover .bcz-user__chevron,
.bcz-user.is-open .bcz-user__chevron {
	opacity: 1;
	transform: rotate(180deg);
}

/* Het uitklapmenu */
.bcz-user__menu {
	position: absolute;
	top: calc(100% + 14px);
	right: 0;
	z-index: 100;
	min-width: 168px;
	padding: 6px;
	background-color: #191a36;
	border: 1px solid rgba(212, 176, 57, 0.35);
	border-radius: 2px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
}

/* Brug over de ruimte tussen naam en menu, anders valt de hover weg zodra de
   muis de tussenruimte raakt. */
.bcz-user__menu::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 100%;
	left: 0;
	height: 14px;
}

.bcz-user:hover .bcz-user__menu,
.bcz-user:focus-within .bcz-user__menu,
.bcz-user.is-open .bcz-user__menu {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.bcz-user__logout {
	display: block;
	padding: 9px 12px;
	border-radius: 2px;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.8);
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.bcz-user__logout:hover,
.bcz-user__logout:focus-visible {
	background-color: rgba(212, 176, 57, 0.14);
	color: #d4b039;
}

@media (prefers-reduced-motion: reduce) {
	.bcz-user__trigger,
	.bcz-user__avatar,
	.bcz-user__chevron,
	.bcz-user__menu,
	.bcz-user__logout {
		transition: none;
	}
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
	/* 16px voorkomt dat iOS Safari inzoomt bij focus */
	.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="text"],
	.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="email"],
	.page-id-328 .gform_wrapper.gravity-theme .gfield input[type="password"] {
		font-size: 16px;
	}
}
