/* Van Beijck – afrekenpagina's (adres, verzending, betalen) in de huisstijl */
.o_wsale_checkout, .o_wsale_address_fill, #shop_checkout, .oe_website_sale { --vb-rood:#C8102E; --vb-donker:#2E2E30; }
.oe_website_sale h3, .oe_website_sale h4, .o_wsale_address_fill h3, .o_page_header { font-family:"Barlow Condensed",Barlow,sans-serif; text-transform:uppercase; letter-spacing:.01em; }

/* stappenbalk */
.o_wizard .o_wizard_step_active, .o_wizard .o_wizard_circle_progress { color:#C8102E !important; }
.o_wizard .progress-bar { background:#C8102E !important; }

/* formuliervelden */
.o_customer_address_fill .form-control, .o_customer_address_fill .form-select { padding:.7rem .9rem; border-radius:9px; border-color:#CFCFCB; font-size:15px; }
.o_customer_address_fill .form-control:focus, .o_customer_address_fill .form-select:focus { border-color:#C8102E; box-shadow:0 0 0 .2rem rgba(200,16,46,.15); }
.o_customer_address_fill .col-form-label { font-weight:600; font-size:13.5px; color:#3A3A3E; }
.o_customer_address_fill form, .o_wsale_address_fill form { background:#fff; border:1px solid #E4E4E0; border-radius:14px; padding:18px 20px 8px; }
.vb-verborgen { display:none !important; }

/* postcodehulp */
.vb-pc { background:#F7F7F5; border:1px solid #E4E4E0; border-radius:12px; padding:14px 16px 10px; }
.vb-pc-kop { font-size:14px; color:#5E5E64; margin-bottom:10px; }
.vb-pc-rij { display:grid; grid-template-columns:1.2fr 1fr .8fr; gap:12px; }
.vb-pc-veld { display:flex; flex-direction:column; gap:5px; font-weight:600; font-size:13.5px; color:#3A3A3E; }
.vb-pc-veld input { text-transform:uppercase; }
.vb-pc-msg { margin-top:10px; border-radius:9px; padding:10px 14px; font-size:14.5px; }
.vb-pc-msg.goed { background:#E7F4EC; border:1px solid #BFE3CC; color:#1D5F38; font-weight:600; }
.vb-pc-msg.fout { background:#FFF4DA; border:1px solid #F1D592; color:#7A5000; }
.vb-pc-msg.zoek { background:#F1F1EE; color:#5E5E64; }
.vb-pc-zelf { background:none; border:0; padding:8px 0 4px; color:#C8102E; text-decoration:underline; font-size:13.5px; cursor:pointer; }
@media (max-width:576px){ .vb-pc-rij { grid-template-columns:1fr 1fr; } }

/* adreskaarten en verzendmethoden */
.o_wsale_address_fill .card, #shop_checkout .card, .o_delivery_carrier_select, #o_delivery_methods li, .o_delivery_method {
  border-radius:12px !important; }
#o_delivery_methods .list-group-item, .o_delivery_carrier_select { border:2px solid #DADAD6 !important; margin-bottom:10px; padding:14px 16px !important; }
#o_delivery_methods .list-group-item:has(input:checked), .o_delivery_carrier_select:has(input:checked) { border-color:#C8102E !important; background:#FBEFF1; }
#o_delivery_methods .o_delivery_carrier_label, #o_delivery_methods label { font-weight:700; }

/* betaalmethoden als grote tegels */
.o_payment_form .list-group-item, #o_payment_methods .list-group-item { border:2px solid #DADAD6 !important; border-radius:12px !important; margin-bottom:10px; padding:14px 16px !important; }
.o_payment_form .list-group-item:has(input:checked), #o_payment_methods .list-group-item:has(input:checked) { border-color:#C8102E !important; background:#FBEFF1; }
.o_payment_form .o_payment_option_label, .o_payment_form label { font-weight:600; font-size:15.5px; }

/* knoppen */
.oe_website_sale .btn-primary, .o_customer_address_fill .btn-primary, #o_payment_form_pay, button[name="o_payment_submit_button"] {
  background:#C8102E !important; border-color:#C8102E !important; border-radius:10px; font-weight:700; padding:.8rem 1.4rem; font-size:16px; }
.oe_website_sale .btn-primary:hover, .o_customer_address_fill .btn-primary:hover { background:#A50D25 !important; border-color:#A50D25 !important; }

/* overzicht rechts */
.o_wsale_accordion, #o_cart_summary, .o_total_card { border-radius:14px !important; border:1px solid #E4E4E0 !important; }

/* ---- indeling zoals het voorbeeld ---- */
.o_customer_address_fill form.address_autoformat > .d-flex h4 { display:none; }           /* standaard 'Details'-kop */
.o_customer_address_fill form.address_autoformat > .d-flex { justify-content:flex-end !important; }
.o_customer_address_fill .o_address_signin { font-size:14px; color:#5E5E64; }
.o_customer_address_fill .o_address_signin .btn { background:#fff !important; color:#C8102E !important; border:1px solid #C8102E !important; padding:.4rem .9rem; font-size:14px; }
.vb-kop h3 { font-family:"Barlow Condensed",Barlow,sans-serif; font-weight:700; font-size:26px; text-transform:uppercase; letter-spacing:.01em; margin:4px 0 8px; color:#1E1E20; }
.vb-kop2 { margin-top:22px; padding-top:20px; border-top:1px solid #ECECE8; }
.vb-zacht { font-weight:400; color:#6A6A70; }
.vb-zak label { display:flex; align-items:center; gap:10px; font-size:15px; margin:10px 0 4px; cursor:pointer; }
.vb-zak input { width:18px; height:18px; accent-color:#C8102E; }
.vb-land { max-width:360px; }
.o_customer_address_fill form.address_autoformat { padding:24px 26px 14px; }
.vb-pc { margin-top:6px; }

/* stappenbalk */
.o_wizard, .o_website_sale_checkout .o_wizard { font-weight:600; }
.o_wizard .o_wizard_step_active, .o_wizard a.active, .o_wizard .active { color:#1E1E20 !important; font-weight:700; }

/* verzendmethoden en betaalmethoden: tegels naast elkaar */
#o_delivery_methods ul, #o_delivery_methods .list-group { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:12px; }
#o_delivery_methods .list-group-item { margin:0 !important; }
.o_payment_form .list-group, #payment_method .list-group { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px; border:0; }
.o_payment_form .list-group-item { margin:0 !important; }
#payment_method > h4, #o_delivery_methods h4, .o_website_sale_checkout h4, .oe_website_sale h4 { font-family:"Barlow Condensed",Barlow,sans-serif; font-weight:700; font-size:26px; text-transform:uppercase; }
/* kleuren vastzetten op de huisstijl */
.oe_website_sale h4, .oe_website_sale h5, #o_delivery_methods h4, .o_website_sale_checkout h4 { color:#1E1E20 !important; }
.oe_website_sale .form-check-input:checked, .o_customer_address_fill .form-check-input:checked, .o_payment_form .form-check-input:checked { background-color:#C8102E !important; border-color:#C8102E !important; }
.oe_website_sale .card.border-primary, .oe_website_sale .card.bg-primary, .o_wsale_address_fill .card.border-primary { border-color:#C8102E !important; }
