.booking-promo{margin-block:20px;padding:18px;border:1px solid #ded8cd;border-radius:8px;background:#fcfaf7;min-width:0}.booking-promo .field{display:grid;gap:8px;margin:0}.booking-promo input{box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:10px 12px;background:#fff;border:1px solid #cfc7b9;font:inherit}.booking-promo .visit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.booking-promo .visit-actions button{min-height:44px;padding:10px 16px;border:1px solid #292923;background:#292923;color:#fff;font:inherit;cursor:pointer}.booking-promo .visit-actions button+button{background:transparent;color:#292923}.booking-promo .visit-actions button:disabled{opacity:.5;cursor:default}.booking-promo .price-note{margin:12px 0 0;font-size:13px;line-height:1.8}.booking-promo [role=status]{margin-top:12px;border-top:1px solid #ded8cd;padding-top:8px;font-size:14px;line-height:1.8}.booking-promo [role=alert]{color:#9c2929;font-size:14px}.visit-selection{display:grid;gap:14px;margin:22px 0}.visit-selection article{border:1px solid #e2ddd6;background:#fff;padding:18px;border-radius:8px;min-width:0}.visit-selection article>header{display:flex;align-items:start;justify-content:space-between;gap:14px}.visit-selection h3{margin:0 0 5px;font-size:17px}.visit-selection p{margin:5px 0;color:#69615c;font-size:13px;line-height:1.7}.visit-edit,.visit-selection article>header button{border:0;background:none;text-decoration:underline;color:#70523c;min-height:44px;padding:8px;cursor:pointer}.visit-selection .field{margin-top:18px}.visit-schedule .time-grid{max-height:236px;overflow:auto;padding:3px}.visit-schedule .time-grid button{min-height:44px}.visit-schedule .time-grid small{display:block;font-size:9px;font-weight:400}.visit-schedule details{margin-top:14px;color:#70655b}.visit-basket{padding:18px;border:1px solid #d9cfc2;border-radius:8px;background:#faf7f2;margin:20px 0}.visit-basket>header{display:flex;justify-content:space-between;gap:12px}.visit-basket ul{padding:0;list-style:none;margin:10px 0 0}.visit-basket li{padding:10px 0;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e9e1d7;font-size:13px}.visit-basket li:last-child{border-bottom:0}.visit-basket small{display:block;color:#716960;margin-top:4px}.visit-basket strong{white-space:nowrap}.visit-confirm-total{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid #ddd;font-weight:700}.visit-actions{display:flex;gap:10px;align-items:center}.visit-actions .wide-action{flex:1}.visit-actions>button:not(.wide-action){min-height:48px;padding:12px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.visit-flow .choice-grid button{position:relative;padding-inline-end:32px}.visit-flow .choice-grid button.selected:after{content:"✓";position:absolute;top:12px;inset-inline-end:12px}.visit-flow fieldset{border:0;padding:0;min-width:0;margin:0}.visit-flow .flow-card{min-width:0}.visit-flow .category-tabs{flex-wrap:wrap}.visit-flow .flow-intro h1{font-size:clamp(34px,4vw,58px)}@media(max-width:600px){.visit-selection article{padding:14px}.visit-basket li{flex-wrap:wrap}.visit-basket strong{white-space:normal}.visit-flow .flow-card{padding:22px 16px}.visit-flow .choice-grid{grid-template-columns:1fr}.visit-actions{flex-wrap:wrap}.visit-actions .wide-action{flex-basis:100%}}