/* ---------- Contact Page ---------- */
.contact-page { position:relative; width:100%; padding:95px 0 110px; overflow:hidden; color:var(--textColor); background:#F6F3F0; }
.contact-page__container { display:grid; grid-template-columns:minmax(0,.92fr) minmax(430px,1fr); gap:86px; align-items:center; width:calc(100% - 40px); max-width:1120px; margin:0 auto; }
.contact-page__content { min-width:0; }
.contact-page__header { max-width:580px; }
.contact-page__eyebrow { margin:0 0 5px; color:var(--backgroundColorOrange); font-size:14px; line-height:1.4; font-weight:600; text-transform:uppercase; }
.contact-page__title { margin-top:0; color:var(--backgroundColorBlack); font-size:clamp(30px,2.3vw,40px); line-height:1.15; font-weight:700; letter-spacing:-.025em; }
.contact-page__title span { color:var(--backgroundColorOrange); }
.contact-page__title.line { margin-bottom:22px; }
.contact-page__description { max-width:560px; color:var(--textColor); font-size:16px; line-height:1.7; }
.contact-page__description p { margin:0; }
.contact-page__description p + p { margin-top:8px; }
.contact-page__details { display:flex; flex-direction:column; gap:0; margin-top:30px; }
.contact-page__detail { display:grid; grid-template-columns:54px minmax(0,1fr); gap:16px; align-items:center; min-height:72px; padding:10px 0; color:var(--textColor); background:#fff; border:0; border-radius:0; box-shadow:none; text-decoration:none; transform:none; transition:none; }
.contact-page__detail:not(:last-child) { border-bottom:1px solid rgba(15,15,15,.1); }
a.contact-page__detail:hover,a.contact-page__detail:focus { color:var(--textColor); background:#fff; border-color:rgba(15,15,15,.1); box-shadow:none; text-decoration:none; transform:none; }
.contact-page__detail-icon { display:flex; align-items:center; justify-content:center; width:50px; height:50px; color:var(--backgroundColorOrange); background:rgba(var(--backgroundColorOrangeRGB),.07); border:0; border-radius:50%; box-shadow:none; transform:none; }
.contact-page__detail:hover .contact-page__detail-icon { color:var(--backgroundColorOrange); background:rgba(var(--backgroundColorOrangeRGB),.07); transform:none; }
.contact-page__detail-icon .kami-icon { display:block; width:27px; height:27px; color:currentColor; }
.contact-page__detail-icon .dashicons { width:27px; height:27px; color:currentColor; font-size:27px; line-height:27px; }
.contact-page__detail-content { min-width:0; }
.contact-page__detail-label { margin:0 0 3px; color:var(--backgroundColorOrange); font-size:11px; line-height:1.3; font-weight:700; letter-spacing:.035em; text-transform:uppercase; }
.contact-page__detail-value { color:var(--backgroundColorBlack); font-size:14px; line-height:1.45; font-weight:600; overflow-wrap:anywhere; }
.contact-page__availability { display:grid; grid-template-columns:54px minmax(0,1fr); gap:16px; align-items:center; margin-top:30px; padding:13px 16px; background:rgba(var(--backgroundColorOrangeRGB),.045); border:0; border-left:3px solid var(--backgroundColorOrange); border-radius:0 10px 10px 0; box-shadow:none; }
.contact-page__availability-icon { display:flex; align-items:center; justify-content:center; width:50px; height:44px; color:var(--backgroundColorOrange); background:#fff; border:0; border-radius:50%; }
.contact-page__availability-icon .kami-icon { display:block; width:28px; height:28px; color:currentColor; }
.contact-page__availability-icon .dashicons { width:28px; height:28px; font-size:28px; line-height:28px; }
.contact-page__availability-content { display:flex; flex-direction:column; gap:1px; min-width:0; }
.contact-page__availability-content strong { color:var(--backgroundColorBlack); font-size:14px; line-height:1.4; font-weight:700; }
.contact-page__availability-content span { color:var(--textColor); font-size:13px; line-height:1.5; }
.contact-page__form-card { min-width:0; padding:30px; color:#fff; background:var(--backgroundColorBlack); border:0; border-radius:18px; box-shadow:0 22px 50px rgba(15,15,15,.2); }
.contact-page__form-header { display:flex; align-items:center; gap:16px; margin-bottom:22px; padding-bottom:20px; border-bottom:1px solid rgba(255,255,255,.08); }
.contact-page__form-icon { display:flex; flex:0 0 44px; align-items:center; justify-content:center; width:44px; height:44px; color:var(--backgroundColorOrange); border:1px solid var(--backgroundColorOrange); border-radius:50%; }
.contact-page__form-icon .kami-icon { display:block; width:23px; height:23px; color:currentColor; }
.contact-page__form-icon .dashicons { width:23px; height:23px; color:currentColor; font-size:23px; line-height:23px; }
.contact-page__form-title { margin:0; color:#fff; font-size:21px; line-height:1.3; font-weight:700; }
.contact-home__form,.contact-page__form { width:100%; }
.contact-home__form form,.contact-page__form form { width:100%; }
.contact-home__form label,.contact-page__form label { display:block; margin:0 0 7px; color:#fff; font-size:13px; line-height:1.4; font-weight:600; }
.contact-home__form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),.contact-home__form select,.contact-home__form textarea,.contact-page__form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),.contact-page__form select,.contact-page__form textarea { display:block; width:100%; min-height:48px; margin:0; padding:12px 14px; color:#fff; background:rgba(15,15,15,.72); border:1px solid rgba(255,255,255,.09); border-radius:6px; box-shadow:none; font:inherit; font-size:14px; line-height:1.4; outline:0; transition:border-color .25s ease,background-color .25s ease,box-shadow .25s ease; }
.contact-home__form textarea,.contact-page__form textarea { min-height:100px; resize:vertical; }
.contact-home__form input::placeholder,.contact-home__form textarea::placeholder,.contact-page__form input::placeholder,.contact-page__form textarea::placeholder { color:rgba(255,255,255,.3) !important; -webkit-text-fill-color:rgba(255,255,255,.3) !important; opacity:1 !important; }
.contact-home__form input:focus,.contact-home__form select:focus,.contact-home__form textarea:focus,.contact-page__form input:focus,.contact-page__form select:focus,.contact-page__form textarea:focus { color:#fff; background:rgba(20,20,20,.9); border-color:var(--backgroundColorOrange); box-shadow:0 0 0 2px rgba(var(--backgroundColorOrangeRGB),.12); }
.contact-home__form input[type="submit"],.contact-home__form button[type="submit"],.contact-page__form input[type="submit"],.contact-page__form button[type="submit"] { display:inline-flex; align-items:center; justify-content:center; width:100%; min-height:50px; margin:0; padding:0 22px; color:#fff; background:var(--backgroundColorOrange); border:1px solid var(--backgroundColorOrange); border-radius:5px; font:inherit; font-size:14px; line-height:1; font-weight:700; text-decoration:none; cursor:pointer; transition:background-color .25s ease,border-color .25s ease,transform .25s ease; }
.contact-home__form input[type="submit"]:hover,.contact-home__form button[type="submit"]:hover,.contact-page__form input[type="submit"]:hover,.contact-page__form button[type="submit"]:hover { color:#fff; background:var(--buttonHover); border-color:var(--buttonHover); text-decoration:none; transform:translateY(-2px); }
.contact-home__form .ff-el-group,.contact-home__form .fluentform .ff-el-group,.contact-page__form .ff-el-group,.contact-page__form .fluentform .ff-el-group { margin-bottom:18px; }
.contact-home__form .ff-el-form-control,.contact-page__form .ff-el-form-control { color:#fff !important; background-color:rgba(15,15,15,.72) !important; border-color:rgba(255,255,255,.09) !important; box-shadow:none !important; outline:none !important; }
.contact-home__form .ff-el-form-control:focus,.contact-home__form .ff-el-form-control:focus-visible,.contact-page__form .ff-el-form-control:focus,.contact-page__form .ff-el-form-control:focus-visible { color:#fff !important; background-color:rgba(20,20,20,.9) !important; border-color:var(--backgroundColorOrange) !important; box-shadow:0 0 0 2px rgba(var(--backgroundColorOrangeRGB),.12) !important; outline:none !important; }
.contact-home__form .ff-btn-submit,.contact-page__form .ff-btn-submit { width:100%; min-height:50px; color:#fff; background:var(--backgroundColorOrange); border-color:var(--backgroundColorOrange); border-radius:5px; font-weight:700; }
.contact-home__form .ff-btn-submit:hover,.contact-page__form .ff-btn-submit:hover { color:#fff; background:var(--buttonHover); border-color:var(--buttonHover); }
.contact-home__form .ff-el-is-error .ff-el-form-control,.contact-page__form .ff-el-is-error .ff-el-form-control { border-color:#e74c3c !important; }
.contact-home__form .error,.contact-home__form .text-danger,.contact-page__form .error,.contact-page__form .text-danger { color:#ff776b; }
.contact-home__form .ff-message-success,.contact-page__form .ff-message-success { padding:16px; color:#fff; background:rgba(46,204,113,.12); border:1px solid rgba(46,204,113,.4); border-radius:6px; }
.contact-home__form textarea.ff-el-form-control,.contact-page__form textarea.ff-el-form-control { color:#fff !important; -webkit-text-fill-color:#fff !important; background-color:rgba(15,15,15,.72) !important; background-image:none !important; border:1px solid rgba(255,255,255,.09) !important; box-shadow:none !important; outline:none !important; caret-color:#fff; appearance:none; }
.contact-home__form textarea.ff-el-form-control:hover,.contact-page__form textarea.ff-el-form-control:hover { color:#fff !important; -webkit-text-fill-color:#fff !important; background-color:rgba(15,15,15,.72) !important; border-color:rgba(255,255,255,.16) !important; }
.contact-home__form textarea.ff-el-form-control:focus,.contact-home__form textarea.ff-el-form-control:focus-visible,.contact-home__form textarea.ff-el-form-control:active,.contact-page__form textarea.ff-el-form-control:focus,.contact-page__form textarea.ff-el-form-control:focus-visible,.contact-page__form textarea.ff-el-form-control:active { color:#fff !important; -webkit-text-fill-color:#fff !important; background-color:rgba(20,20,20,.9) !important; background-image:none !important; border-color:var(--backgroundColorOrange) !important; box-shadow:0 0 0 2px rgba(var(--backgroundColorOrangeRGB),.12) !important; outline:none !important; }
.contact-home__form textarea.ff-el-form-control::placeholder,.contact-page__form textarea.ff-el-form-control::placeholder { color:rgba(255,255,255,.3) !important; -webkit-text-fill-color:rgba(255,255,255,.3) !important; opacity:1 !important; }
.contact-page__form-usps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:26px; padding-top:18px; border-top:1px solid rgba(255,255,255,.08); }
.contact-page__form-usp { display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; padding:0 11px; color:#fff; border-right:1px solid rgba(255,255,255,.1); }
.contact-page__form-usp:first-child { padding-left:0; }
.contact-page__form-usp:last-child { padding-right:0; border-right:0; }
.contact-page__form-usp-icon { display:flex; flex:0 0 24px; align-items:center; justify-content:center; width:24px; height:24px; color:var(--backgroundColorOrange); }
.contact-page__form-usp-icon .kami-icon { display:block; width:22px; height:22px; color:currentColor; }
.contact-page__form-usp-icon .dashicons { width:22px; height:22px; color:currentColor; font-size:22px; line-height:22px; }
.contact-page__form-usp-text { min-width:0; color:#fff; font-size:10px; line-height:1.35; font-weight:600; white-space:normal; }

@media (max-width:1100px) {
.contact-page__container { grid-template-columns:minmax(0,.9fr) minmax(390px,1fr); gap:55px; }
}

@media (max-width:900px) {
.contact-page__container { grid-template-columns:1fr; align-items:start; max-width:720px; }
.contact-page__content { width:100%; max-width:650px; }
.contact-page__form-card { width:100%; }
}

@media (max-width:767px) {
.contact-page { padding:65px 0 80px; }
.contact-page__container { width:calc(100% - 40px); gap:45px; }
.contact-page__eyebrow { font-size:13px; }
.contact-page__title { font-size:29px; line-height:1.1; }
.contact-page__description { font-size:15px; line-height:1.65; }
.contact-page__details { margin-top:28px; }
.contact-page__detail { grid-template-columns:48px minmax(0,1fr); gap:14px; min-height:68px; padding:10px 0; }
.contact-page__detail-icon { width:44px; height:44px; }
.contact-page__detail-icon .kami-icon { width:24px; height:24px; }
.contact-page__detail-icon .dashicons { width:24px; height:24px; font-size:24px; line-height:24px; }
.contact-page__detail-value { font-size:13px; }
.contact-page__availability { grid-template-columns:48px minmax(0,1fr); gap:14px; margin-top:25px; padding:13px 14px; }
.contact-page__availability-icon { width:44px; height:40px; }
.contact-page__form-card { padding:24px 20px; border-radius:14px; }
.contact-page__form-header { margin-bottom:20px; padding-bottom:18px; }
.contact-page__form-title { font-size:19px; }
.contact-page__form-usps { grid-template-columns:1fr; }
.contact-page__form-usp { justify-content:flex-start; padding:12px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.08); }
.contact-page__form-usp:first-child { padding-top:0; }
.contact-page__form-usp:last-child { padding-bottom:0; border-bottom:0; }
.contact-page__form-usp-text { font-size:12px; white-space:normal; }
}

@media (max-width:420px) {
.contact-page__container { width:calc(100% - 32px); }
.contact-page__form-card { padding-right:17px; padding-left:17px; }
.contact-page__availability { padding-right:12px; padding-left:12px; }
}
/* ---------- Netter (28-09): gegevens als kaart, gelijke iconen, beter zichtbare velden ---------- */
.contact-page__details { margin-top:32px; padding:4px 22px; background:#fff; border:1px solid rgba(15,15,15,.06); border-radius:var(--radius-card,14px); box-shadow:var(--shadow-card,0 10px 30px rgba(15,15,15,.06)); }
.contact-page__detail { grid-template-columns:46px minmax(0,1fr); gap:16px; min-height:78px; padding:14px 0; background:transparent; }
.contact-page__detail:not(:last-child) { border-bottom-color:rgba(15,15,15,.08); }
a.contact-page__detail:hover, a.contact-page__detail:focus { background:transparent; }
.contact-page__detail-icon, .contact-page__detail:hover .contact-page__detail-icon { width:46px; height:46px; background:rgba(var(--backgroundColorOrangeRGB),.08); }
.contact-page__detail-icon .kami-icon, .contact-page__detail-icon .kami-lucide { width:22px; height:22px; }
.contact-page__detail-label { color:var(--orange-text-light,#B34600); }
.contact-page__detail-value { font-size:15px; transition:color .25s ease; }
a.contact-page__detail:hover .contact-page__detail-value, a.contact-page__detail:focus-visible .contact-page__detail-value { color:var(--orange-text-light,#B34600); }
.contact-page__availability { grid-template-columns:46px minmax(0,1fr); gap:16px; margin-top:14px; padding:16px 22px; background:rgba(var(--backgroundColorOrangeRGB),.06); border:1px solid rgba(var(--backgroundColorOrangeRGB),.16); border-radius:var(--radius-card,14px); }
.contact-page__availability-icon { width:46px; height:46px; background:#fff; }
.contact-page__availability-icon .kami-icon, .contact-page__availability-icon .kami-lucide { width:22px; height:22px; }
.contact-page__availability-content strong { font-size:15px; }
.contact-page__availability-content span { font-size:14px; }
.contact-page__form-card { padding:36px; border-radius:var(--radius-card-lg,16px); }
.contact-page__form-header { margin-bottom:26px; padding-bottom:22px; }
.contact-page__form-icon { background:rgba(var(--backgroundColorOrangeRGB),.12); border-color:rgba(var(--backgroundColorOrangeRGB),.4); }
.contact-page__form-icon .kami-lucide { width:22px; height:22px; }
.contact-page__form-card .contact-page__form .ff-el-form-control, .contact-page__form-card .contact-page__form .ff-el-form-control:hover { background-color:rgba(255,255,255,.045) !important; border-color:rgba(255,255,255,.14) !important; border-radius:8px; }
.contact-page__form-card .contact-page__form .ff-el-form-control:focus, .contact-page__form-card .contact-page__form .ff-el-form-control:focus-visible { background-color:rgba(255,255,255,.07) !important; border-color:var(--backgroundColorOrange) !important; }
.contact-page__form-card .contact-page__form .ff-btn-submit { min-height:52px; border-radius:8px; font-size:15px; }
.contact-page__form fieldset > .ff-el-group:last-child, .contact-page__form .ff_submit_btn_wrapper { margin-bottom:0; }
@media (max-width:767px) {
.contact-page__details { padding:2px 16px; }
.contact-page__detail { grid-template-columns:42px minmax(0,1fr); gap:14px; min-height:70px; }
.contact-page__detail-icon { width:42px; height:42px; }
.contact-page__availability { grid-template-columns:42px minmax(0,1fr); gap:14px; padding:14px 16px; }
.contact-page__availability-icon { width:42px; height:42px; }
.contact-page__form-card { padding:26px 20px; }
}

/* Blocks below the contact section (the FAQ) continue on the same beige background, so no double spacing. */
.contact-page + .faq-block { padding-top: 0; }

/* Native dropdown lists ignore the translucent field background: keep the options readable. */
.contact-home__form select option,.contact-page__form select option { color:#fff; background:#1a1a1a; }
