/* Keep the date and time visible. No small-screen modal or native time menu. */
.simple-booking .request-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:start;padding-top:24px}
.request-form{padding:28px;max-width:1120px;margin-inline:auto}
.request-service-field{max-width:650px}
.request-form #visit-service{font-size:16px;height:48px}
.request-form label,.request-calendar legend,.request-time-field legend{font-size:13px;line-height:1.5;font-weight:600}
.request-calendar legend,.request-time-field legend{display:flex;align-items:baseline;justify-content:space-between;gap:12px;width:100%;margin-bottom:14px}
.request-time-field{border:0;padding:0;margin:0;min-width:0}
.request-time-field legend>span,.request-calendar .calendar-selection{font-size:11px;font-weight:400;color:#705768}
.request-calendar .calendar-top{margin-bottom:12px}
.request-calendar .calendar-top h3{font-size:19px;line-height:1.5}
.request-calendar .calendar-nav{width:44px;height:44px;min-height:44px;border-radius:10px}
.request-calendar .calendar-weekdays{font-size:11px;line-height:24px;margin:0 0 6px}
.request-calendar .calendar-days{gap:4px}
.request-calendar .calendar-days button{height:44px;font-size:14px;border-radius:10px;transition:background 160ms ease-out,box-shadow 160ms ease-out,transform 160ms ease-out}
.request-calendar .calendar-days button:disabled{color:#9b8994}
.request-calendar .calendar-days button[aria-pressed=true]{background:linear-gradient(#694659,#432d3a);border-color:#533849;box-shadow:inset 0 1px #f4dce940,0 3px 7px #603c4e25}
.time-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}
.time-option{height:44px;min-width:0;border:1px solid #dac6d2;border-radius:10px;padding:0 4px;background:linear-gradient(#fcf9fa,#f3eaf0);box-shadow:inset 0 1px #fcf9fa,0 2px 3px #603c4e08;color:#46313f;font:inherit;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer;touch-action:manipulation;transition:background 160ms ease-out,box-shadow 160ms ease-out,transform 160ms ease-out}
.time-option[aria-pressed=true]{color:#fcf9fa;background:linear-gradient(#694659,#432d3a);border-color:#533849;box-shadow:inset 0 1px #f4dce940,0 3px 7px #603c4e25}
.time-option:focus-visible{outline:3px solid #82465f;outline-offset:2px;transition:none}
.time-option:active{transform:scale(.97);box-shadow:inset 0 2px 4px #603c4e20}
.time-option:focus-visible:active{transform:none}
.time-empty{grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:144px;margin:0;padding:22px;text-align:center;background:#f4edf1;border:1px dashed #cdb3c2;border-radius:10px;font-size:13px;line-height:1.6;color:#6a4f60}
.request-time-field[aria-busy=true] .time-empty{background:#ede2e9}
.request-time-field[aria-invalid=true] .time-options{outline:2px solid #842b4e;outline-offset:5px;border-radius:8px}
.request-time-field .request-availability{font-size:11px;line-height:1.6;margin:12px 0 22px}
.request-form .request-contact-fields{gap:14px}
.request-form .request-contact-fields input{font-size:16px;height:48px}
.request-form .request-submit{min-height:48px;margin-top:20px}
.request-form .field-error{font-size:12px;line-height:1.5}
@media(hover:hover) and (pointer:fine){.time-option:hover:not([aria-pressed=true]){background:#efdee8;border-color:#be9caf}}
@media(max-width:750px){.simple-booking .request-body{gap:24px}.request-form{padding:20px}.request-form .request-contact-fields{grid-template-columns:1fr}.time-options{gap:6px}.time-option{font-size:12px}}
@media(max-width:650px){.simple-booking{padding-block:30px}.simple-booking .request-body{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:20px}.request-form{padding:18px}.request-service-row{grid-template-columns:minmax(0,1fr);gap:14px}.request-form .request-service-field{max-width:none}.request-form .request-price{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:8px 12px;text-align:left;max-width:none}.request-form .request-price>span{font-size:11px}.request-form .request-price #booking-duration{font-size:11px}.request-form .request-price>strong{font-size:32px}.request-form .request-price>.quote-price-text{font-size:22px}.request-price-note{font-size:11px;line-height:1.6;margin:12px 0 18px}.request-calendar .calendar-top h3{font-size:18px}.request-calendar .calendar-days{gap:2px}.request-calendar .calendar-days button{font-size:14px}.request-calendar legend,.request-time-field legend{font-size:13px;margin-bottom:12px}.time-options{gap:8px}.time-option{font-size:14px}.request-form .request-contact-fields{grid-template-columns:minmax(0,1fr);gap:18px}.request-form label{font-size:13px;margin-bottom:8px}.request-form .request-privacy{font-size:11px;line-height:1.6;margin-top:14px}.request-form .inline-privacy{margin:6px 0 0;min-height:44px;font-size:11px}.request-time-field .request-availability{font-size:11px;margin-bottom:24px}.booking-advice{margin-bottom:20px}}
@media(max-width:359px){.request-form{padding:14px}.request-calendar .calendar-selection{font-size:10px}.time-options{gap:6px}.time-option{font-size:13px}}
@media(prefers-reduced-motion:reduce){.time-option,.request-calendar .calendar-days button{transition:none;transform:none}}
/* Desktop keeps the whole decision visible; secondary help follows the form. */
.simple-booking .booking-advice{margin:20px auto 0;max-width:1120px}
@media(min-width:1000px){.simple-booking .time-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.simple-booking .time-option{font-size:12px}.simple-booking .request-form{padding:22px 26px}.simple-booking .request-body{padding-top:18px;gap:36px}.simple-booking .request-price-note{margin-block:10px 14px}.simple-booking .request-time-field .request-availability{margin:10px 0 16px}.simple-booking .request-submit{margin-top:16px}.simple-booking .request-privacy{font-size:10px;line-height:1.6}.simple-booking .request-privacy .inline-privacy{min-height:36px}.simple-booking .time-empty{min-height:148px}.simple-booking .request-calendar .calendar-top{margin-bottom:8px}}
@media(min-width:1000px) and (max-height:800px){.simple-booking{padding-block:24px}.simple-booking .simple-booking-heading{margin-bottom:18px}.simple-booking .simple-booking-heading h2{font-size:36px}.simple-booking .request-privacy{margin-top:8px}.simple-booking .request-calendar legend,.simple-booking .request-time-field legend{margin-bottom:10px}}
