.booking-main{max-width:1200px;margin:auto;padding:150px 40px 90px;color:#112b3d}
.booking-intro{max-width:680px;margin-bottom:48px}
.booking-intro h1{font-size:clamp(42px,6vw,76px);line-height:1.08;letter-spacing:-.04em;margin:20px 0 24px}
.booking-intro h1 em{font-family:"Instrument Serif",Georgia,serif;font-weight:400;color:#9f7a38}
.booking-intro>p:not(.eyebrow){max-width:560px;line-height:1.8;color:#526370}
.booking-meta{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:13px;font-weight:600;margin-top:25px}
.booking-meta span+span:before{content:"·";margin-right:24px;color:#b79250}
.booking-calendar{min-width:0;overflow:hidden;border:1px solid #e2e7e9;border-radius:16px;padding:32px 0 0;background:#fff;box-shadow:0 12px 40px #102b3d08}
.booking-toolbar{padding:0 32px}
.booking-toolbar h2{font-size:22px;margin:0;letter-spacing:-.02em}
.booking-calendar-intro{margin:12px 0 0;color:#657680;font-size:13px;line-height:1.8}
.booking-consent{margin:28px 32px 32px;padding:32px;border:1px solid #e2e7e9;border-radius:10px;background:#f8fafb}
.booking-consent h3{font-size:20px;line-height:1.4;margin:0 0 14px}
.booking-consent p{max-width:700px;font-size:13px;line-height:1.8;color:#526370;margin:0 0 20px}
.booking-consent-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px}
.booking-consent .button{border:0;cursor:pointer;font-family:inherit}
.booking-consent-link{font-size:12px;color:#526370;text-underline-offset:4px}
.booking-embed{margin-top:24px}
.booking-status{padding:0 32px;color:#657680;font-size:13px;line-height:1.8}
.booking-frame{display:block;width:100%;height:1000px;border:0;background:#f5f5f5}
.booking-controls{margin:18px 32px 24px}
.booking-revoke{padding:8px 0;border:0;background:transparent;color:#526370;font:inherit;font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.booking-support{padding:20px 32px;border-top:1px solid #e2e7e9;color:#526370;font-size:12px;line-height:1.8}
.booking-support summary{cursor:pointer;color:#112b3d}
.booking-support p{margin:12px 0 0}
.booking-support a{color:#112b3d;text-underline-offset:4px}
.booking-noscript{padding:0 32px 24px;font-size:13px;line-height:1.8}
.booking-calendar [hidden]{display:none!important}
.booking-calendar button:focus-visible,.booking-calendar a:focus-visible,.booking-support summary:focus-visible{outline:2px solid #9f7a38;outline-offset:4px}
@media(max-width:760px){.booking-calendar{margin-inline:-22px;border-inline:0;border-radius:0}}
@media(max-width:760px){.booking-main{padding:125px 22px 60px}.booking-intro{margin-bottom:32px}.booking-calendar{padding-top:24px}.booking-toolbar{padding:0 18px}.booking-consent{margin:22px 18px 24px;padding:24px 18px}.booking-consent-actions{align-items:stretch;flex-direction:column;gap:18px}.booking-consent .button{width:100%;padding:17px 14px;font-size:12px}.booking-meta{justify-content:center;flex-wrap:nowrap;gap:0;width:100%;font-size:clamp(9.5px,2.8vw,12px);white-space:nowrap}.booking-meta span{display:inline-flex;align-items:center}.booking-meta span+span:before{margin:0 10px}.booking-frame{height:1100px}.booking-controls{margin:16px 18px 22px}.booking-support{padding:18px}.booking-status,.booking-noscript{padding-right:18px;padding-left:18px}}
