/*
 * RBC - Gravity Forms in de stijl van de oude Contact Form 7-formulieren.
 * Waarden overgenomen uit de live CF7-formulieren (thema "livewall", Bulma).
 * Alles is beperkt tot formulieren met de klasse "rbc-form".
 */

.gform_wrapper.rbc-form_wrapper {
	--rbc-red: #da1e48;
	--rbc-text: #636363;
	--rbc-border: rgba(151, 151, 151, 0.3);
	--rbc-border-focus: rgb(151, 151, 151);
	--rbc-link: #65bbe9;
	font-family: "Frutiger LT Std Roman", sans-serif;
	margin: 0;
}

/* Raster: 12px tussen rijen en kolommen, zoals .field / .is-grouped */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_fields {
	grid-row-gap: 12px;
	grid-column-gap: 12px;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield {
	position: relative;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_required_legend {
	display: none;
}

/* Invoervelden */
.gform_wrapper.gravity-theme.rbc-form_wrapper input[type="text"],
.gform_wrapper.gravity-theme.rbc-form_wrapper input[type="email"],
.gform_wrapper.gravity-theme.rbc-form_wrapper input[type="tel"],
.gform_wrapper.gravity-theme.rbc-form_wrapper textarea {
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 9px 0 15px;
	font-family: "Frutiger LT Std Roman", sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: #000;
	background-color: #fff;
	border: 1px solid var(--rbc-border);
	border-radius: 4px;
	box-shadow: none;
	outline: none;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper textarea,
.gform_wrapper.gravity-theme.rbc-form_wrapper textarea.large {
	height: 276px;
	max-height: none;
	padding: 10px 10px 25px 15px;
	resize: vertical;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper input:focus,
.gform_wrapper.gravity-theme.rbc-form_wrapper textarea:focus,
.gform_wrapper.gravity-theme.rbc-form_wrapper select:focus {
	border-color: var(--rbc-border-focus);
	outline: none;
	box-shadow: none;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper ::placeholder {
	color: rgba(54, 54, 54, 0.3);
	opacity: 1;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper input[readonly] {
	background-color: #fff;
	color: #000;
}

/* Keuzelijst (Bulma .select met pijltje) */
.gform_wrapper.gravity-theme.rbc-form_wrapper select {
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 40px 0 9px;
	font-family: "Frutiger LT Std Roman", sans-serif;
	font-size: 16px;
	line-height: 30px;
	color: var(--rbc-text);
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23636363' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 18px center;
	border: 1px solid #dbdbdb;
	border-radius: 4px;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
}

/* In de pop-ups (offerte, bel mij terug, pagina-modal) is het tekstvak lager */
.modal .gform_wrapper.gravity-theme.rbc-form_wrapper textarea,
.modal .gform_wrapper.gravity-theme.rbc-form_wrapper textarea.large {
	height: 100px;
	max-height: 100px;
}

/* Kopjes en teksten tussen de velden */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-html h3 {
	margin: 18px 0 -2px;
	font-family: "Frutiger LT Std", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.05;
	color: var(--rbc-red);
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-html:first-child h3,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-honeypot:first-child + .gfield--type-html h3 {
	margin-top: 0;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-html h3 + p {
	margin: 10px 0 0;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-html h2 {
	margin: 0;
	font-size: 32px;
	font-weight: 700;
	line-height: 32px;
	color: #000;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-html p.hint {
	margin: 0;
	color: var(--rbc-text);
}

/* Zichtbare labels (alleen bij formulieren met labels) */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_label,
.gform_wrapper.gravity-theme.rbc-form_wrapper legend.gfield_label {
	margin-bottom: 4px;
	padding: 0;
	font-size: inherit;
	font-weight: 400;
	color: var(--rbc-text);
}

/* Aanvinkvakjes (akkoord + meerkeuze) */
.gform_wrapper.gravity-theme.rbc-form_wrapper .ginput_container_consent,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_checkbox .gchoice {
	display: flex;
	align-items: baseline;
	gap: 4px;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .ginput_container_consent {
	margin: 14px 0 0;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .ginput_container_consent input[type="checkbox"],
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_checkbox input[type="checkbox"] {
	flex: 0 0 auto;
	width: 13px;
	height: 13px;
	margin: 0;
	position: relative;
	top: 1px;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_consent_label,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_checkbox label {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 25.6px;
	color: var(--rbc-text);
	white-space: pre-line;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_consent_label a {
	font-size: 16px;
	color: var(--rbc-link);
	text-decoration: underline;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield--type-consent .gfield_required,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_required_custom {
	display: none;
}

/* Verstuurknop: stijl komt van het thema (.button.primary); hier alleen de plek */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_footer {
	margin: 18px 0 0;
	padding: 0;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_footer .gform_button {
	margin: 0;
	height: 44px;
	line-height: 0;
	font-family: "Frutiger LT Std", sans-serif;
	font-size: 18px;
	border-radius: 8px;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_footer .gform_button[disabled] {
	opacity: 0.5;
	cursor: not-allowed;
	box-shadow: none;
}

/* Foutmeldingen: rode rand + melding rechts in het veld, zoals CF7 */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error input[type="text"],
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error input[type="email"],
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error input[type="tel"],
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error textarea,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error select {
	border: 2px solid var(--rbc-red);
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_error .gfield_label {
	color: var(--rbc-text);
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield_validation_message,
.gform_wrapper.gravity-theme.rbc-form_wrapper .validation_message {
	margin: 4px 0 0;
	padding: 0;
	font-size: 14px;
	color: var(--rbc-red);
	background: none;
	border: 0;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield.hidden_label.gfield--type-text .gfield_validation_message,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield.hidden_label.gfield--type-email .gfield_validation_message,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield.hidden_label.gfield--type-textarea .gfield_validation_message {
	position: absolute;
	top: 15px;
	right: 14px;
	margin: 0;
	z-index: 2;
	max-width: 60%;
	text-align: right;
	pointer-events: none;
}

/* Samenvatting bovenaan en bevestiging: kader zoals de CF7-meldingen */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_validation_errors {
	margin: 0 0 16px;
	padding: 0.2em 1em;
	background: none;
	border: 2px solid #ffb900;
	border-radius: 0;
	box-shadow: none;
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_validation_errors .gform_submission_error {
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--rbc-text);
}
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_validation_errors .gform-icon,
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_validation_errors ol {
	display: none;
}
.gform_confirmation_wrapper.rbc-form .gform_confirmation_message {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #46b450;
	color: var(--rbc-text);
}

/* Spinner naast de knop */
.gform_wrapper.gravity-theme.rbc-form_wrapper .gform_ajax_spinner {
	margin-left: 16px;
	vertical-align: middle;
}

@media (max-width: 640px) {
	.gform_wrapper.gravity-theme.rbc-form_wrapper .gfield.hidden_label .gfield_validation_message {
		position: static;
		max-width: none;
		text-align: left;
	}
}

/*
 * Offerteformulier op productpagina's altijd tonen. Het thema (main.js, showQuotationForm) verbergt het
 * bij bezoekers met een gclid (Google Ads) ten gunste van een Eloqua-formulier dat is uitgeschakeld,
 * waardoor de pop-up leeg bleef.
 */
.modal.offerte .quotation[data-quotation="default"] {
	display: block !important;
}
