.contact input.tekstbox {
	border-color: #74C402;
}
.contact input.knop {
	background-color: #74C402;
}
.dt3stem input.knop {
	background-color: #74C402;
}
.contact textarea.berichtbox {
	width: 96%;
	height: 250px;
	border-style: solid;
	border-width: 1px;
	font-size:14px;
	padding:5px;
	margin: 0px 0px 15px 0px;
	border-radius: 10px;
	border-color: #74C402;
}
.melding#rood {
	background-color: red;
	color: #ffffff;
	font-weight: bold;
}
.melding#groen {
	background-color: green;
	color: #ffffff;
	font-weight: bold;
}

/* Contact page: readable form and editorial FAQ within the shared box system. */
.contact-page .contact-content { padding: 22px 22px 24px; }
.contact-page .contact-intro {
	margin: 0 0 23px;
	color: #4d6172;
	font-size: 17px;
	line-height: 1.5;
}
.contact-page .contact-form { margin: 0; padding: 0; }
.contact-page .contact-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px 16px; }
.contact-page .contact-field-wide { grid-column: 1 / -1; }
.contact-page .contact-field label {
	display: block;
	margin-bottom: 7px;
	color: #172b40;
	font-size: 16px;
	font-weight: 600;
}
.contact-page .contact-field label span { color: #d74716; }
.contact-page .contact-field label small { color: #687c8b; font-size: 14px; font-weight: 400; }
.contact-page .contact-field input,
.contact-page .contact-field textarea {
	display: block;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	padding: 11px 12px;
	border: 1px solid #cddbe5;
	border-radius: 9px;
	background: #f9fbfc;
	color: #172b40;
	font: 17px 'Barlow Semi Condensed', Arial, sans-serif;
}
.contact-page .contact-field textarea { min-height: 180px; resize: vertical; line-height: 1.45; }
.contact-page .contact-field input:focus,
.contact-page .contact-field textarea:focus {
	border-color: #0878b9;
	outline: 3px solid rgba(8,120,185,0.17);
	background: #fff;
}
.contact-page .contact-form-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 22px;
}
.contact-page .contact-form-bottom p { margin: 0; color: #657989; font-size: 14px; }
.contact-page .contact-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 46px;
	padding: 10px 17px;
	border: 0;
	border-radius: 9px;
	background: #ff4400;
	color: #fff;
	font: 600 18px 'Barlow Semi Condensed', Arial, sans-serif;
	cursor: pointer;
	box-shadow: 0 5px 13px rgba(255,68,0,0.18);
}
.contact-page .contact-submit:hover { background: #dc3c00; }
.contact-page .contact-submit:focus-visible { outline: 3px solid #0878b9; outline-offset: 3px; }
.contact-page .contact-notice { padding: 14px 16px; border-radius: 9px; font-size: 16px; line-height: 1.45; }
.contact-page .contact-notice ul { margin: 7px 0 0; padding-left: 20px; }
.contact-page .contact-success { border: 1px solid #b7dba1; background: #edf7e8; color: #315c1c; }
.contact-page .contact-error { margin-bottom: 19px; border: 1px solid #edbfbc; background: #fff1f0; color: #8f2820; }
.contact-page .contact-error li { color: #8f2820; }
.contact-faq .contact-faq-list { padding: 4px 22px 14px; }
.contact-faq .contact-faq-item { padding: 19px 0; border-bottom: 1px solid #e3ebf0; }
.contact-faq .contact-faq-item:last-child { border-bottom: 0; }
#blauw.contact-faq .contact-faq-item h2 { margin: 0 0 9px; color: #172b40; font-size: 20px; line-height: 1.25; }
.contact-faq .contact-faq-item p { margin: 0; color: #4d6172; font-size: 16px; line-height: 1.55; }
.contact-faq .contact-faq-item a { color: #0878b9; text-decoration: underline; text-underline-offset: 3px; }
.contact-faq .contact-faq-item a:hover { color: #ff4400; }
@media(max-width:650px){
	.contact-page .contact-content { padding: 18px 17px 21px; }
	.contact-page .contact-form-grid { grid-template-columns: 1fr; }
	.contact-page .contact-form-bottom { align-items: stretch; flex-direction: column; }
	.contact-faq .contact-faq-list { padding-inline: 17px; }
}
