/* Showroomafspraak: datumkiezer, tijdsloten en formulier. */
.bwt-booking-section{padding-block:6rem 8rem}
.bwt-booking-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(2rem,6vw,7rem);align-items:start}
.bwt-booking-info .bwt-quote-text{max-width:30rem;margin:1.5rem 0 2rem;font-weight:300;line-height:1.7;color:#888}
.bwt-booking-facts{display:grid;gap:.9rem;margin:0 0 2.5rem;padding:0;list-style:none}
.bwt-booking-facts li{display:flex;align-items:center;gap:.9rem;color:var(--bwt-blue-dark)}
.bwt-booking-facts .bwt-icon{flex:none;width:20px;height:20px;color:var(--bwt-blue)}
.bwt-booking-facts a{color:inherit;text-decoration:none}
.bwt-booking-facts a:hover{color:var(--bwt-blue)}
.bwt-booking-photo{aspect-ratio:16/10;overflow:hidden;background:#f0f0f0}
.bwt-booking-photo img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}

.bwt-booking{scroll-margin-top:calc(var(--bwt-header-h,100px) + 20px);padding:clamp(1.5rem,3vw,2.75rem);background:#fff;border:1px solid var(--bwt-line);box-shadow:0 20px 50px rgba(27,20,100,.06)}
.bwt-booking-step[hidden],.bwt-booking-steps[hidden]{display:none}
.bwt-booking-steps{display:flex;gap:1.5rem;margin:0 0 1.5rem;padding:0 0 1.25rem;border-bottom:1px solid var(--bwt-line);list-style:none}
.bwt-booking-steps li{display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:#9a9aab;transition:color .25s}
.bwt-booking-steps .bwt-booking-num{background:#d9d9e3;transition:background-color .25s}
.bwt-booking-steps li.is-active{color:var(--bwt-blue-dark);font-weight:500}
.bwt-booking-steps li.is-active .bwt-booking-num{background:var(--bwt-blue-dark)}
.bwt-pick{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.25rem;align-items:start}
.bwt-times{min-width:0;padding-left:1.75rem;border-left:1px solid var(--bwt-line)}
.bwt-times-title{margin:0 0 1rem;font-size:1rem;font-weight:400;color:#9a9aab}
.bwt-times-title.is-date{font-weight:500;color:var(--bwt-blue-dark)}
.bwt-times-title.is-date::first-letter{text-transform:uppercase}
.bwt-booking-summary-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem;margin-bottom:1.25rem}
.bwt-booking-back{padding:0 1.1rem;border:1px solid var(--bwt-line);background:#fff;color:var(--bwt-blue-dark);font:400 .9rem "Poppins",sans-serif;cursor:pointer;transition:border-color .2s}
.bwt-booking-back:hover{border-color:var(--bwt-blue-dark)}
.bwt-booking-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1.5rem;font-size:1.2rem;font-weight:500;color:var(--bwt-blue-dark)}
.bwt-booking-num{display:grid;place-items:center;width:30px;height:30px;background:var(--bwt-blue-dark);color:#fff;font-size:.85rem;font-weight:600}
.bwt-booking-picked{font-size:1rem;font-weight:300;color:#888}
.bwt-booking-picked::first-letter,.bwt-booking-summary::first-letter{text-transform:uppercase}

.bwt-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}
.bwt-cal-month{font-size:1.1rem;font-weight:500;color:var(--bwt-blue-dark)}
.bwt-cal-nav{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--bwt-line);background:#fff;color:var(--bwt-blue-dark);font-size:1.5rem;line-height:1;cursor:pointer;transition:background-color .25s,color .25s,border-color .25s}
.bwt-cal-nav:hover:not(:disabled){background:var(--bwt-blue-dark);border-color:var(--bwt-blue-dark);color:#fff}
.bwt-cal-nav:disabled{opacity:.3;cursor:default}
.bwt-cal-weekdays,.bwt-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.bwt-cal-weekdays{margin-bottom:6px;font-size:.75rem;font-weight:600;letter-spacing:1px;text-align:center;text-transform:uppercase;color:#888}
.bwt-cal-day{height:56px;padding:0;border:1px solid transparent;background:#f6f6fa;color:var(--bwt-blue-dark);font:400 1rem "Poppins",sans-serif;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.bwt-cal-day:hover:not(:disabled){border-color:var(--bwt-blue-dark)}
.bwt-cal-day:disabled{background:transparent;color:#c9c9d3;cursor:default}
.bwt-cal-day.is-selected{background:var(--bwt-blue-dark);color:#fff}
.bwt-cal-empty{margin:1rem 0 0;font-size:.95rem;color:#888}
.bwt-cal-grid[aria-busy="true"]{opacity:.5}

.bwt-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:400px;overflow-y:auto;padding-right:2px}
.bwt-slot{padding:15px 8px;border:1px solid var(--bwt-line);background:#fff;color:var(--bwt-blue-dark);font:400 1rem "Poppins",sans-serif;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.bwt-slot:hover{border-color:var(--bwt-blue-dark)}
.bwt-slot.is-selected{background:var(--bwt-blue-dark);border-color:var(--bwt-blue-dark);color:#fff}

.bwt-booking-summary{flex:1;margin:0;padding:.8rem 1.1rem;background:#f6f6fa;border-left:4px solid var(--bwt-blue);font-weight:500;color:var(--bwt-blue-dark)}
.bwt-booking-form .bwt-form-row{gap:1.25rem;margin-bottom:1.5rem}
.bwt-booking-form .bwt-form-input,.bwt-booking-form .bwt-form-select{height:56px}
.bwt-booking-form .bwt-form-textarea{min-height:72px;padding:16px 24px}
.bwt-booking-privacy{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;font-weight:300;color:#666;cursor:pointer}
.bwt-booking-privacy input{flex:none;width:18px;height:18px;margin-top:.2rem;accent-color:var(--bwt-blue-dark)}
.bwt-booking-form .bwt-form-submit{align-items:stretch;margin-top:1.25rem}
.bwt-booking-form .bwt-btn--lg{padding:16px 40px}

.bwt-booking-done{padding:2rem 0;text-align:center}
.bwt-booking-done:focus{outline:0}
.bwt-booking-check{display:inline-grid;place-items:center;width:64px;height:64px;margin-bottom:1.25rem;background:var(--bwt-blue-dark);color:#fff}
.bwt-booking-check .bwt-icon{width:30px;height:30px}
.bwt-booking-done h3{margin:0 0 .75rem;font-size:1.6rem;font-weight:500;color:var(--bwt-blue-dark)}
.bwt-booking-done p{margin:0;font-size:1.05rem;font-weight:300;line-height:1.7;color:#666}

.bwt-booking-heading{display:none}
@media (max-width:700px){.bwt-pick{grid-template-columns:1fr}.bwt-times{padding:1.25rem 0 0;border-left:0;border-top:1px solid var(--bwt-line)}.bwt-slots{grid-template-columns:repeat(3,1fr);max-height:none}}
@media (max-width:1000px){.bwt-booking-grid{grid-template-columns:1fr}.bwt-booking-section{padding-block:4rem 5rem}}
@media (max-width:560px){.bwt-booking{padding:1.25rem}.bwt-cal-weekdays,.bwt-cal-grid{gap:4px}}
@media (prefers-reduced-motion:reduce){.bwt-cal-day,.bwt-slot,.bwt-cal-nav{transition:none}}

/* Brede bannerfoto onder het formulier */
.bwt-booking-banner{width:100%;height:clamp(260px,36vw,560px);overflow:hidden;background:#1d1a45}
.bwt-booking-banner img{width:100%;height:100%;max-width:none;object-fit:cover}
