/* Offerteflows – neemt lettertype van de site over; kleuren via --cvof-* (Instellingen). */
.cvof,.cvof-upsell{--cvof-rand:#e2e0d9;--cvof-licht:color-mix(in srgb,var(--cvof-keuze) 18%,#fff);font-size:16px;line-height:1.5;color:inherit;display:flex;flex-direction:column;gap:14px;max-width:680px}
.cvof{margin-left:auto;margin-right:auto;width:100%}
.cvof *,.cvof-upsell *{box-sizing:border-box}
.cvof p,.cvof-upsell p,.cvof h3{margin:0!important;padding:0!important}
.cvof .cvof-fout{color:#b42318!important}
.cvof-voortgang{height:6px;background:#eceae3;border-radius:6px;overflow:hidden}
.cvof-voortgang div{height:100%;background:var(--cvof-keuze);transition:width .25s}
.cvof-stapnr{margin:0;font-size:.82em;opacity:.7;font-weight:600}
.cvof-vraag{margin:0;font-size:1.3em;line-height:1.3;outline:none}
.cvof-uitleg{margin:0;opacity:.8}
.cvof-opties{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.cvof-optie{display:flex;align-items:center;gap:8px;border:2px solid var(--cvof-rand);border-radius:12px;padding:14px 16px;background:#fff;color:#1d2127;font:inherit;font-weight:600;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}
.cvof-optie:hover,.cvof-optie[aria-pressed="true"],.cvof-check:has(input:checked){border-color:var(--cvof-keuze);background:var(--cvof-licht)}
.cvof-optie:focus-visible,.cvof-verder:focus-visible,.cvof-terug:focus-visible{outline:3px solid var(--cvof-keuze);outline-offset:2px}
.cvof-check input{width:18px;height:18px;accent-color:var(--cvof-accent);flex:none}
.cvof-velden{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cvof-veld{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.92em}
.cvof-veld input,.cvof-veld textarea{border:2px solid var(--cvof-rand);border-radius:10px;padding:11px 12px;font:inherit;font-weight:400;font-size:16px;background:#fff;color:#1d2127;width:100%}
.cvof-veld input:focus,.cvof-veld textarea:focus{border-color:var(--cvof-keuze);outline:none}
.cvof-vol{grid-column:1/-1}
.cvof-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.cvof-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.cvof-adres:empty{display:none}
.cvof-adres-ok{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:var(--cvof-licht);border:1px solid var(--cvof-keuze);font-weight:600;font-size:.95em}
.cvof-adres-let{display:block;color:#a15c00;font-weight:600;font-size:.92em}
.cvof-privacy{margin:0;font-size:.82em;opacity:.75}
.cvof-fout{margin:0;color:#b42318;font-weight:600}
.cvof-knoppen{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.cvof-verder{background:var(--cvof-accent);color:var(--cvof-accent-tekst);border:0;border-radius:999px;padding:13px 24px;font:inherit;font-weight:700;cursor:pointer}
.cvof-verder:disabled{opacity:.6;cursor:wait}
.cvof-terug{background:none;border:0;padding:8px 0;font:inherit;font-weight:600;opacity:.75;cursor:pointer;color:inherit}
.cvof-upsell{border:2px dashed var(--cvof-keuze);background:var(--cvof-licht);border-radius:14px;padding:18px;gap:10px;margin:18px auto!important;width:100%}
.cvof-upsell-kop{margin:0;font-weight:700;font-size:1.1em}
.cvof-upsell-sub{margin:0;opacity:.8}
.cvof-upsell-knoppen{display:flex;gap:10px;flex-wrap:wrap}
.cvof-upsell-ok{margin:0;font-weight:700}
@media (max-width:600px){
  .cvof,.cvof-upsell{width:calc(100% - 32px)!important;max-width:calc(100vw - 32px)}
  .cvof-velden{grid-template-columns:1fr}
  .cvof-opties{grid-template-columns:1fr}
  .cvof-vraag{font-size:1.2em}
  .cvof-knoppen .cvof-verder{flex:1 1 auto;text-align:center}
  .cvof-upsell-knoppen .cvof-verder{width:100%}
}
@media (prefers-reduced-motion:reduce){.cvof-voortgang div,.cvof-optie{transition:none}}
