.booking-section{border-top:1px solid var(--line)}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;margin-top:28px}.booking-aside p{font-size:15px}.booking-aside .demo-note{margin-top:22px;background:var(--blue);max-width:none}.booking-form{background:white;padding:28px;border:1px solid var(--line);border-radius:18px}.booking-form label,.booking-form legend{display:block;font-size:14px;font-weight:650;margin-bottom:7px}.booking-form input:not([type=radio]):not([type=checkbox]),.booking-form textarea{width:100%;font:inherit;color:var(--ink);border:1px solid #9aacb3;border-radius:9px;padding:11px 12px;background:var(--paper);margin-bottom:19px}.booking-form input:focus,.booking-form textarea:focus{outline:2px solid #326981;outline-offset:2px}.booking-form fieldset{padding:0;margin:0 0 22px;border:0}.slot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.slot-label{position:relative;margin:0!important}.slot-label input{position:absolute;opacity:0;width:1px;height:1px}.slot-label span{display:block;text-align:center;padding:8px 3px;border:1px solid #9aacb3;border-radius:8px;background:var(--paper);cursor:pointer;font-size:13px;font-weight:500}.slot-label input:checked+span{background:var(--ink);color:white}.slot-label input:focus-visible+span{outline:3px solid #326981;outline-offset:2px}.booking-form .consent{display:flex;gap:9px;align-items:start;font-size:12px;font-weight:400;line-height:1.65;margin:5px 0 20px}.consent input{margin-top:4px;flex-shrink:0}.booking-form button{font:inherit;cursor:pointer}.booking-form button:disabled{opacity:.55;cursor:wait}.booking-status{font-size:14px;margin:10px 0 16px;min-height:23px}.booking-error{color:#8b2038}.booking-success{background:var(--yellow);border:1px solid var(--ink);padding:24px;border-radius:14px;margin-top:20px}.booking-success h3{margin:0 0 12px}.booking-success a{overflow-wrap:anywhere}.privacy{font-size:12px!important;line-height:1.7}.booking-form[aria-busy=true]{opacity:.8}@media(max-width:760px){.booking-layout{grid-template-columns:1fr;gap:22px}.booking-form{padding:20px}.slot-grid{grid-template-columns:repeat(4,1fr)}.navlinks{flex-wrap:wrap;gap:10px 18px}}
