/* Alleen het zakelijke aanvraagformulier en de bijbehorende KvK-popup. */
#b2b-request, #b2b-kvk-modal { --b2b-text:#243047; --b2b-muted:#657087; --b2b-border:#dce2ea; --b2b-surface:#f6f8fb; }
#b2b-request { display:flex; flex-wrap:wrap; margin-top:24px; color:var(--b2b-text); }
#b2b-request[hidden], #b2b-message[hidden] { display:none !important; }
#b2b-message.b2b-message { margin:24px 0; padding:20px 24px; border:1px solid; border-left-width:5px; border-radius:12px; font-size:16px; line-height:1.65; }
#b2b-message.b2b-message-success { color:#245b30; background:#edf8ef; border-color:#77b785; }
#b2b-message.b2b-message-error { color:#8a2525; background:#fff0f0; border-color:#d58080; }
#b2b-message.b2b-message-info { color:#304969; background:#f0f5fb; border-color:#91aac9; }
#b2b-request > .col-lg-6 { padding:24px; }
#b2b-request h4 { margin:0 0 24px; font-size:21px; font-weight:600; color:var(--b2b-text); }
#b2b-request label { display:block; margin:14px 0 8px; line-height:1.5; color:var(--b2b-text); }
#b2b-request .form-control, #b2b-kvk-modal .form-control { height:52px; padding:12px 14px; border:1px solid var(--b2b-border); border-radius:10px; box-shadow:none; background:#fff; color:var(--b2b-text); font-size:15px; }
#b2b-request .form-control:focus, #b2b-kvk-modal .form-control:focus { border-color:var(--b2b-accent,#6584aa); outline:2px solid var(--b2b-border); outline-offset:2px; }
#b2b-request input[type=checkbox] { width:18px; height:18px; vertical-align:middle; margin-right:8px; }
#b2b-request .btn, #b2b-kvk-modal .btn { border-radius:10px; padding:13px 20px; min-height:46px; font-weight:600; font-size:15px; }
#b2b-request button[type=submit] { width:100%; margin-top:18px; }
#b2b-request .b2b-company-input { display:flex; align-items:stretch; gap:10px; }
#b2b-request .b2b-company-input .form-control { flex:1; min-width:0; }
#b2b-kvk-open { margin:0; flex:none; height:52px; white-space:nowrap; }
#b2b-request p { color:var(--b2b-muted); line-height:1.6; }
#b2b-kvk-modal { width:900px; max-width:calc(100% - 32px); max-height:90vh; margin:auto; padding:36px; border:0; border-radius:24px; overflow:auto; background:#fff; color:var(--b2b-text); }
#b2b-kvk-modal::backdrop { background:rgba(22,32,55,.6); }
#b2b-kvk-modal h2 { margin:8px 40px 12px 0; font-size:32px; font-weight:700; color:var(--b2b-text); }
#b2b-kvk-modal h3 { margin:0 0 18px; font-size:20px; color:var(--b2b-text); }
#b2b-kvk-modal > p { margin-bottom:24px; color:var(--b2b-muted); line-height:1.6; }
#b2b-kvk-modal .b2b-kvk-close { float:right; min-height:32px; padding:0; width:32px; border:0; background:transparent; font-size:25px; color:var(--b2b-text); }
#b2b-kvk-modal .b2b-kvk-layout { display:grid; grid-template-columns:minmax(220px, .8fr) minmax(0, 1.3fr); gap:26px; }
#b2b-kvk-form { padding:22px; border:1px solid var(--b2b-border); border-radius:18px; background:var(--b2b-surface); }
#b2b-kvk-modal .b2b-kvk-fields { display:grid; gap:18px; }
#b2b-kvk-modal label { display:block; margin-bottom:9px; color:var(--b2b-text); }
#b2b-kvk-search { width:100%; margin-top:22px; }
#b2b-kvk-results { display:grid; gap:12px; max-height:390px; overflow:auto; padding:2px 6px 2px 0; }
#b2b-kvk-results button { display:grid; gap:7px; width:100%; height:auto; min-height:108px; flex-shrink:0; line-height:1.5; padding:18px; border:1px solid var(--b2b-border); background:#fff; text-align:left; white-space:normal; color:var(--b2b-text); }
#b2b-kvk-results { grid-auto-rows:max-content; align-content:start; }
#b2b-kvk-results button:hover, #b2b-kvk-results button:focus-visible { border-color:var(--b2b-accent,#6584aa); background:var(--b2b-surface); }
#b2b-kvk-results span { color:var(--b2b-accent,#526c8e); }
#b2b-kvk-results small, #b2b-kvk-message { color:var(--b2b-muted); }
#b2b-kvk-more, #b2b-kvk-back { margin-top:18px; }
#b2b-kvk-modal [hidden] { display:none; }
@media(max-width:640px) {
  #b2b-request > .col-lg-6 { padding:16px; width:100%; }
  #b2b-kvk-modal { padding:22px; }
  #b2b-kvk-modal h2 { font-size:26px; }
  #b2b-kvk-modal .b2b-kvk-layout { grid-template-columns:1fr; }
  #b2b-kvk-results { max-height:300px; }
}
