.spb-kw-step1-list{display:block}
.spb-kw-step1-list .spb-kw-row{display:flex;gap:12px;align-items:flex-end;margin-bottom:10px;flex-wrap:wrap}
.spb-kw-row-field{display:flex;flex-direction:column;min-width:160px;flex:1}
.spb-kw-row-field label{font-size:12px;color:#fff;margin-bottom:6px}
.spb-kw-row-field input[type=number],
.spb-kw-row-field select{
	background:#fff;
	color:#000;
	border:3px solid #d00;
	border-radius:10px;
	padding:12px 14px;
	font-size:18px;
	line-height:1.2;
}

/* Bigger thumb-friendly number input (hide default spinners for consistency) */
.spb-kw-row-field input[type=number]::-webkit-outer-spin-button,
.spb-kw-row-field input[type=number]::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }
.spb-kw-row-field input[type=number]{ -moz-appearance: textfield; }

/* Make select touch-friendly */
.spb-kw-row-field select{ appearance:none; -webkit-appearance:none; -moz-appearance:none; background-image: linear-gradient(45deg, transparent 50%, #000 50%), linear-gradient(135deg, #000 50%, transparent 50%); background-position: calc(100% - 18px) calc(1em + 2px), calc(100% - 13px) calc(1em + 2px); background-size: 5px 5px, 5px 5px; background-repeat:no-repeat; appearance:none }
.spb-kw-row-actions{display:flex;align-items:center}
.spb-kw-row-actions .spb-kw-remove-row{border:0;background:#eee;border-radius:4px;width:34px;height:34px;cursor:pointer}

@media (max-width: 600px){
	.spb-kw-step1-list .spb-kw-row{flex-direction:column;align-items:stretch}
	.spb-kw-row-actions{justify-content:flex-end}
}

/* Add another service link-style button */
.spb-kw-actions{display:flex;justify-content:flex-start}
.spb-kw-actions .spb-kw-add-service{
	background:none;border:0;padding:4px 0;cursor:pointer;color:#fff;font-size:16px;
	text-decoration:none;border-bottom:2px dashed rgba(255,255,255,0.8);
}
.spb-kw-actions .spb-kw-add-service:before{content:'+';display:inline-block;margin-right:8px;font-weight:700}
.spb-kw-actions .spb-kw-add-service:hover{border-bottom-color:#fff}

/* Step 2 review table responsiveness */
.spb-kw-review{overflow-x:auto}
.spb-kw-review-table{width:100%;border-collapse:collapse;table-layout:auto}
.spb-kw-review-table th,.spb-kw-review-table td{padding:10px;border-bottom:1px solid #eee;vertical-align:top;color:#fff}
.spb-kw-review-table thead th{position:sticky;top:0;background:rgba(255,255,255,0.06);z-index:1;color:#fff}
.spb-kw-review-table tfoot th{background:rgba(255,255,255,0.06);color:#fff}

/* Tighten number columns, give name column room */
.spb-kw-review-table .col-item{width:auto}
.spb-kw-review-table .col-qty{width:80px;text-align:right;white-space:nowrap}
.spb-kw-review-table .col-price{width:120px;text-align:right;white-space:nowrap}
.spb-kw-review-table .col-total{width:130px;text-align:right;white-space:nowrap}

@media (max-width: 600px){
	.spb-kw-review-table{font-size:14px}
	.spb-kw-review-table th,.spb-kw-review-table td{padding:8px}

	/* Turn table into card list for better UX */
	.spb-kw-review{overflow-x:visible}
	.spb-kw-review-table thead{display:none}
	.spb-kw-review-table, .spb-kw-review-table tbody, .spb-kw-review-table tr, .spb-kw-review-table td, .spb-kw-review-table tfoot{display:block;width:100%}
	.spb-kw-review-table tbody tr{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:10px;padding:10px;margin:10px 0}
	.spb-kw-review-table td{border-bottom:0}
	.spb-kw-review-table td.col-item{font-weight:600;margin-bottom:6px;word-break:normal;overflow-wrap:anywhere}
	.spb-kw-review-table td.col-qty{display:flex;justify-content:space-between}
	.spb-kw-review-table td.col-total{display:flex;justify-content:space-between}
	.spb-kw-review-table td.col-qty:before{content:'Aantal';color:rgba(255,255,255,0.8)}
	.spb-kw-review-table td.col-total:before{content:'Totaal';color:rgba(255,255,255,0.8)}
	/* Hide price column on small screens */
	.spb-kw-review-table .col-price{display:none}
	/* Slightly reduce widths */
	.spb-kw-review-table .col-qty{width:64px}
	.spb-kw-review-table .col-total{width:100px}
	/* Footer total as its own card */
	.spb-kw-review-table tfoot tr{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);border-radius:10px;padding:10px;margin-top:12px}
	.spb-kw-review-table tfoot th{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;color:#fff}
}
.spb-kw-calculator{background:#101523;color:#ffffff;border:1px solid rgba(226,50,18,0.25);padding:24px;border-radius:10px;font-size:1.5em}
.spb-kw-calculator .et_pb_module_header{color:#ffffff;border-bottom:2px solid #e23212;padding-bottom:6px;margin-bottom:12px;font-size:1.4em;line-height:1.2}

.spb-kw-calculator .spb-kw-success{display:none;text-align:center;padding:40px 20px;border:3px solid #e23212;border-radius:10px;background:#0b0f1a;color:#ffffff;font-weight:700}

.spb-kw-calculator .spb-kw-copy{margin:6px 0 14px}
.spb-kw-calculator .spb-kw-copy p{margin:.25rem 0 0;color:#ffffff}
.spb-kw-calculator .spb-kw-icons{margin:.5rem 0 0;padding-left:1em}
.spb-kw-calculator .spb-kw-icons li{list-style:none;margin:.25rem 0;color:#ffffff;opacity:.95}

/* Top controls */
.spb-kw-calculator .spb-kw-top-controls{display:grid;grid-template-columns:1fr 2fr;gap:16px;margin:10px 0 16px}
.spb-kw-calculator .spb-kw-field label{display:block;font-weight:600;margin-bottom:6px;color:#ffffff}
.spb-kw-calculator .spb-kw-qty-control{display:flex;align-items:center;gap:8px}
.spb-kw-calculator .spb-kw-btn{width:44px;height:44px;border-radius:8px;border:1px solid #e23212;background:transparent;color:#ffffff;font-size:1em;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease}
.spb-kw-calculator .spb-kw-btn:hover{background:#e23212}

/* Inputs/selects styling: white background, thick red borders, larger font */
.spb-kw-calculator .spb-kw-field input[type="number"],
.spb-kw-calculator .spb-kw-field select,
.spb-kw-calculator .spb-kw-lead-form input[type="text"],
.spb-kw-calculator .spb-kw-lead-form input[type="email"],
.spb-kw-calculator .spb-kw-lead-form input[type="tel"]{width:100%;padding:14px 12px;border:3px solid #e23212;border-radius:8px;font-size:1em;background:#ffffff;color:#101523}
.spb-kw-calculator .spb-kw-field input[type="number"]::placeholder,
.spb-kw-calculator .spb-kw-lead-form input::placeholder{color:#6b7280}
.spb-kw-calculator .spb-kw-field select option{color:#101523;background:#ffffff}
.spb-kw-calculator .spb-kw-field input[type="number"]:focus,
.spb-kw-calculator .spb-kw-field select:focus,
.spb-kw-calculator .spb-kw-lead-form input:focus{outline:none;border-color:#e23212;box-shadow:0 0 0 2px rgba(226,50,18,0.25)}

/* Extra services */
.spb-kw-calculator .spb-kw-extras{margin:10px 0 10px}
.spb-kw-calculator .spb-kw-extras > strong{display:block;margin-bottom:6px;color:#ffffff}
.spb-kw-calculator .spb-kw-extras-list{display:flex;flex-wrap:wrap;gap:10px}
.spb-kw-calculator .spb-kw-extra{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(226,50,18,0.35);border-radius:8px;background:#0b0f1a}
.spb-kw-calculator .spb-kw-extra-price{opacity:.95}

/* Info + total */
.spb-kw-calculator .spb-kw-summary{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:14px 0 20px}
.spb-kw-calculator .spb-kw-travel-note{padding:10px 12px;border-left:3px solid #e23212;background:#0b0f1a;border-radius:6px;color:#ffffff}
.spb-kw-calculator .spb-kw-info-line{margin:6px 0;color:#ffffff;opacity:.95}
.spb-kw-calculator .spb-kw-total-box{padding:12px 14px;border:2px solid #e23212;border-radius:6px;font-size:1em;font-weight:700;background:#0b0f1a;color:#ffffff}
.spb-kw-calculator .spb-kw-actions{margin-top:10px}

/* Step 2 form */
.spb-kw-calculator .spb-kw-lead-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.spb-kw-calculator .spb-kw-lead-title{grid-column:1/-1;margin:0;color:#ffffff;border-bottom:2px solid #e23212;padding-bottom:6px;font-size:1.2em;line-height:1.25}
.spb-kw-calculator .spb-kw-copy--step2{grid-column:1/-1;margin:6px 0 10px}
.spb-kw-calculator .spb-kw-consent{grid-column:1/-1;display:flex;gap:8px;align-items:flex-start;margin-top:4px}
.spb-kw-calculator .spb-kw-consent input[type="checkbox"]{margin-top:6px;width:20px;height:20px}
.spb-kw-calculator .spb-kw-consent a{color:#e23212;text-decoration:underline}
.spb-kw-calculator .spb-kw-lead-actions{grid-column:1/-1;display:flex;gap:8px}
.spb-kw-calculator .spb-kw-message{grid-column:1/-1;margin-top:4px}

/* Step 2 review */
.spb-kw-calculator .spb-kw-review{grid-column:1/-1;margin:6px 0 10px;padding:10px 12px;border:1px dashed rgba(226,50,18,0.6);border-radius:6px;background:#0b0f1a}
.spb-kw-calculator .spb-kw-review-table{width:100%;border-collapse:collapse;color:#ffffff}
.spb-kw-calculator .spb-kw-review-table th,
.spb-kw-calculator .spb-kw-review-table td{padding:8px;border-bottom:1px solid rgba(226,50,18,0.25);text-align:left}
.spb-kw-calculator .spb-kw-review-table thead th{border-bottom:2px solid #e23212}
.spb-kw-calculator .spb-kw-review-table tfoot th{border-top:2px solid #e23212}

/* Buttons to match palette */
.spb-kw-calculator .et_pb_button{background:#e23212;color:#ffffff;border:1px solid #e23212;border-radius:6px;padding:10px 16px;transition:opacity .15s ease,transform .1s ease;font-size:1em}
.spb-kw-calculator .et_pb_button:hover{opacity:.9}
.spb-kw-calculator .et_pb_button:active{transform:translateY(1px)}
.spb-kw-calculator .et_pb_button:disabled{opacity:.5;cursor:not-allowed}

@media (max-width: 768px){
	.spb-kw-calculator .spb-kw-top-controls{grid-template-columns:1fr}
	.spb-kw-calculator .spb-kw-lead-form{grid-template-columns:1fr}
}
