.booking-section{max-width:1080px;margin:3rem auto;padding:clamp(1rem,4vw,3rem);border-top:1px solid var(--border-color);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,3rem)}
.booking-intro h2{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.15}.booking-eyebrow{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.booking-timezone,.booking-small{font-size:.88rem}.booking-form{min-width:0;text-align:left}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.booking-field{display:flex;flex-direction:column;min-width:0;margin-bottom:.75rem}.booking-field label{font-weight:600;margin-bottom:.35rem}.booking-field input,.booking-field textarea{font:inherit;font-size:16px;min-width:0;max-width:100%;width:100%;padding:.8rem;border:1px solid #88777d;border-radius:.4rem;background:#fffefa;color:#2b2523}.booking-field input:focus,.booking-field textarea:focus,.booking-consent input:focus-visible{outline:3px solid #49353f;outline-offset:3px}.booking-field [aria-invalid=true]{border:2px solid #8b2424}.field-error,.booking-errors{color:#8b2424;font-size:.9rem;min-height:1.3em}.booking-consent{display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem}.booking-consent input{flex:0 0 auto;width:1.2rem;height:1.2rem;margin-top:.25rem;accent-color:#49353f}.booking-consent label{line-height:1.45}.booking-form .booking-submit{min-height:48px;padding:.85rem 1.5rem;background:#49353f;color:#fff;border:2px solid #49353f;border-radius:.4rem;font:inherit;font-weight:600;cursor:pointer}.booking-submit:disabled{opacity:.7;cursor:wait}.booking-submit:focus-visible{outline:3px solid #49353f;outline-offset:4px}.booking-status{font-weight:600;overflow-wrap:anywhere}.booking-status[data-state=success]{padding:1rem;border:1px solid #49694c;border-radius:.4rem;background:#f0f6ed;color:#224326}.booking-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){.booking-section{grid-template-columns:minmax(0,1fr);margin-top:1.5rem}.booking-grid{grid-template-columns:minmax(0,1fr)}.booking-form .booking-submit{width:100%}}
