.booking-layout{display:grid;grid-template-columns:minmax(0,760px)260px;gap:60px;padding-bottom:80px}.booking-main{min-width:0}.booking-choices{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:30px}.booking-choice{padding:24px;border:1px solid #bcc7b3;background:#eeefe8;display:block;line-height:1.9}.booking-choice.is-current{border-color:var(--ink);background:var(--ink);color:white}.booking-choice>span{font-size:11px}.booking-choice strong{display:block;font-family:var(--serif);font-size:22px;font-weight:500;margin-top:10px}.booking-choice p{font-size:11px;margin-top:12px}.booking-notice{border-left:3px solid var(--red);padding:18px 24px;background:#eeefe8;margin-bottom:25px}.booking-notice strong{font-weight:500;font-size:16px}.booking-notice p{font-size:12px;margin-top:8px;line-height:2}.booking-form{padding:32px;background:white;border:1px solid var(--line)}.booking-form h2{font-family:var(--serif);font-size:25px;margin:30px 0 24px;padding-bottom:15px;border-bottom:1px solid var(--line)}.booking-form h2:first-child{margin-top:0}.booking-form label{display:block;font-size:13px;margin-bottom:23px}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #a9b6a0;background:#fbfbf7;padding:13px 14px;margin-top:9px;font:inherit;font-size:16px;color:var(--ink);border-radius:0}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:2px solid #496a4b;outline-offset:2px}.required-label,.optional-label{font-size:9px;padding:3px 7px;margin-left:8px;background:#e8ebe1}.required-label{color:#8f3c2f}.booking-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-side{position:sticky;top:130px;align-self:start}.booking-side .page-contact-box p{margin-top:10px}.booking-side>.text-link{margin-top:22px}.booking-form button{cursor:pointer}.booking-review{background:white;padding:30px;border:1px solid var(--line)}.booking-review h2{font-family:var(--serif);font-size:27px;margin-bottom:20px}.booking-review>p{font-size:12px;line-height:2}.booking-review dl{margin:25px 0}.booking-review dl>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.booking-review dt{color:var(--muted)}.booking-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.booking-review button{cursor:pointer;background:#f8f7f2}.booking-preview-end{margin-top:20px;background:#eeefe8;padding:15px}
@media(max-width:1000px){.booking-layout{grid-template-columns:minmax(0,1fr)220px;gap:30px}.booking-choice{padding:19px}.booking-choice strong{font-size:20px}}
@media(max-width:700px){.booking-layout{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.booking-choices{gap:10px}.booking-choice{padding:17px 13px}.booking-choice strong{font-size:18px}.booking-choice>span{font-size:10px}.booking-choice p{font-size:10px}.booking-notice{padding:16px 18px}.booking-notice strong{font-size:14px}.booking-notice p{font-size:11px}.booking-form{padding:23px 18px}.booking-form h2{font-size:23px}.booking-form label{font-size:12px}.booking-pair{gap:13px}.booking-form input,.booking-form select,.booking-form textarea{padding:12px 9px}.booking-side{position:static}.booking-review{padding:23px 18px}.booking-review dl>div{grid-template-columns:1fr;gap:5px;font-size:13px}.booking-review h2{font-size:25px}}
