.booking-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,90px);background:#1b1813;color:#e9e2d4;border-top:1px solid #494337}
.booking-intro h2{font-size:clamp(36px,4vw,68px);line-height:1.05;margin:18px 0 25px}.booking-intro>p{max-width:490px;color:#bcb5a7;line-height:1.65}.booking-facts{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.booking-facts span{border:1px solid #544d40;border-radius:2px;padding:10px 15px;font-size:12px;color:#e2c894}.booking-panel{min-width:0;background:#27231b;border:1px solid #5d5546;border-radius:2px;padding:clamp(18px,2.5vw,38px)}.booking-calendar-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:26px}.booking-calendar-head h3{font-size:24px;margin:8px 0 0;text-transform:capitalize}.booking-arrows{display:flex;gap:8px}.booking-panel button{font:inherit;cursor:pointer}.booking-arrows button{width:40px;height:40px;background:transparent;border:1px solid #6c6352;border-radius:50%;color:#e2c894}.booking-panel button:disabled{opacity:.3;cursor:not-allowed}.booking-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:24px}.booking-week,.booking-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.booking-week{font-size:11px;color:#a59c89;text-align:center;margin-bottom:12px}.booking-days button{aspect-ratio:1;border:1px solid transparent;border-radius:50%;background:transparent;color:#e2c894;min-width:0;padding:0;font-size:14px}.booking-days button:not(:disabled):hover{border-color:#c9a86b;background:#332f27}.booking-days button[aria-pressed=true]{background:#c9a86b;color:#1c1914}.booking-times-panel{border-left:1px solid #4c4639;padding-left:22px;min-width:0}.booking-times-panel>strong{font-size:13px;font-weight:500;color:#c9a86b}.booking-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px;max-height:240px;overflow:auto;scrollbar-width:thin}.booking-times button{border:1px solid #635b4b;color:#e2c894;background:transparent;border-radius:2px;min-height:38px}.booking-times button:hover,.booking-times button[aria-pressed=true]{background:#c9a86b;color:#1c1914}.booking-panel #booking-status{font-size:13px;color:#c9a86b;line-height:1.6;margin:24px 0 0}.booking-panel form{margin-top:24px;border-top:1px solid #4c4639;padding-top:24px}.booking-panel form[hidden],.booking-panel [hidden]{display:none!important}.booking-panel label{display:block;font-size:12px;color:#c9a86b;margin:16px 0}.booking-panel input:not([type=checkbox]),.booking-panel textarea{box-sizing:border-box;width:100%;background:#1a1813;border:1px solid #605848;border-radius:2px;color:#efe8d8;padding:12px;font:inherit;font-size:15px;margin-top:8px}.booking-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-panel .booking-consent{display:flex;gap:10px;align-items:flex-start;line-height:1.6}.booking-consent input{accent-color:#c9a86b;margin-top:4px}.booking-consent a{color:inherit;text-decoration:underline}.booking-panel .booking-submit{display:flex;justify-content:space-between;width:100%;padding:15px 18px;border:0;border-radius:2px;background:#c9a86b;color:#211e18;font-size:14px;font-weight:600}.booking-panel :focus-visible{outline:2px solid #e2c894;outline-offset:3px}.booking-trap{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-result-link{display:inline-block;margin-top:15px;color:#e2c894}.booking-panel #booking-result{border-top:1px solid #645c4b;margin-top:24px;padding-top:24px;line-height:1.7}.booking-note{font-size:13px}
@media(max-width:1050px){.booking-section{grid-template-columns:1fr}.booking-intro h2 br{display:none}.booking-intro>p{max-width:650px}}
@media(max-width:540px){.booking-layout{grid-template-columns:1fr}.booking-times-panel{border-left:0;border-top:1px solid #4c4639;padding:18px 0 0}.booking-times{grid-template-columns:repeat(3,minmax(0,1fr));max-height:180px}.booking-inputs{grid-template-columns:1fr;gap:0}.booking-calendar-head .eyebrow{font-size:9px}.booking-facts{gap:7px}.booking-panel{padding:18px}.booking-days button{max-height:44px}.booking-section{padding-inline:18px}}
