.booking-page{background:#f1f4ef}.booking-shell{width:min(1140px,calc(100% - 32px))}.booking-page .panel{box-shadow:none;border:1px solid #dce4dd;padding:36px}.booking-page h1{font-size:44px}.booking-progress{display:flex;list-style:none;gap:10px;padding:0;margin:26px 0 32px}.booking-progress li{flex:1;background:#edf1eb;color:#536a5d;font-size:13px;padding:13px 16px;border-radius:12px}.booking-progress li[aria-current]{background:#214e3e;color:white;font-weight:750}.booking-grid{grid-template-columns:minmax(0,1.45fr) minmax(290px,1fr);gap:34px;align-items:start}#booking{min-width:0}#booking h2{font-family:inherit;font-size:22px;line-height:1.3;margin:26px 0 12px}#booking>h2:first-child{margin-top:0}.helper{font-size:13px;color:#586c60;line-height:1.55;margin:10px 0 18px}.booking-page label{font-size:14px}.booking-page input,.booking-page select,.booking-page textarea{font-size:16px;border-color:#bdccc1}.booking-page .calendar-card{margin:20px 0;padding:18px;border-radius:16px;border:1px solid #d0ddd3;background:#f7faf5;color:#16382b}.booking-page .calendar-card h2{margin:0 0 8px!important;font-size:19px!important}.calendar-card .helper{font-size:12px;margin-bottom:14px}.calendar-card .month-jump{font-size:12px}.calendar-card select{padding:9px 12px}.booking-page .calendar{margin-top:12px}.booking-page .day{min-height:36px;display:flex;align-items:center;justify-content:center;font-size:13px}.calendar-legend{line-height:1.5}.services label{border:1px solid #d0ddd3;background:#f5f8f2;border-radius:13px;padding:15px;margin:0}.services input{flex-shrink:0;width:18px;height:18px}.promo-details{border:1px solid #d0ddd3;border-radius:12px;padding:0 15px;margin:20px 0}.promo-details summary{cursor:pointer;font-size:14px;font-weight:700;padding:14px 0}.promo-details[open]{padding-bottom:12px}#quoteButton,#bookButton{width:100%;min-height:50px;border-radius:13px}#customer{scroll-margin-top:20px;border-top:1px solid #d0ddd3;margin-top:28px;padding-top:20px}#customer .check{flex-wrap:wrap;gap:6px}#customer .check input{width:18px;height:18px;flex-shrink:0}.booking-page .summary{top:24px;border-radius:20px;padding:24px;background:#183e32;color:#fff}.summary h2{font-size:27px}.summary-row{gap:16px;font-size:14px}.summary-row strong{text-align:right;overflow-wrap:anywhere}.summary-row.total{font-size:20px}.summary-row.deposit{font-size:22px;color:#f0e5be}.summary-help{font-size:13px;line-height:1.6;color:#d6e1d8;margin-top:20px}.summary #qDates{font-size:12px}.mobile-quote{display:none}[hidden]{display:none!important}button:disabled{opacity:.65;cursor:wait}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b38f3f;outline-offset:2px}
@media(max-width:780px){.booking-shell{width:calc(100% - 20px);padding-top:20px}.booking-page .panel{padding:24px 16px}.booking-page h1{font-size:34px}.booking-progress{gap:5px;margin:22px 0}.booking-progress li{font-size:11px;padding:10px 8px}.booking-grid{grid-template-columns:1fr;gap:24px}.booking-page .summary{position:static}.mobile-quote{display:block;background:#183e32;color:white;font-size:15px;font-weight:700;padding:16px;border-radius:12px;line-height:1.8}.booking-page .calendar-card{padding:14px 10px}.booking-page .fields{gap:10px}.booking-page .summary-row{font-size:15px}.booking-page .day{min-height:36px}.services{gap:10px}.summary h2{font-size:25px}}
.calendar button.day{width:100%;padding:7px 2px;cursor:pointer;font-family:inherit;border-radius:9px;position:static}.calendar button.day:disabled{cursor:not-allowed;opacity:.65}.calendar button.day.range-edge{background:#183e32!important;color:#fff!important;border:2px solid #183e32!important;opacity:1}.calendar button.day.in-range{background:#d6e9d9!important;color:#173f2d!important;border-color:#7da88a!important}.calendar button.day:focus-visible{outline:3px solid #ad781d;outline-offset:1px}.selected-legend{background:#d6e9d9;border:1px solid #7da88a}.date-reset{border:1px solid #bdccc1;background:white;color:#214e3e;padding:8px 12px;border-radius:9px;min-height:40px;font:inherit;font-size:12px;cursor:pointer}
