.booking-page{padding:64px 0 72px}.booking-page-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px;align-items:start}.booking-main{min-width:0}.booking-intro h1{font:700 clamp(40px,4.8vw,64px)/1.08 Manrope,sans-serif;letter-spacing:-.05em;margin:22px 0 24px;max-width:800px}.booking-intro .lede{font-size:20px;line-height:1.6;margin-bottom:44px;max-width:760px}.booking-choices{border:0;padding:0;margin:0 0 30px;min-width:0}.booking-choices legend,.booking-calendar-card>h2{font:700 12px/1.5 Manrope,sans-serif;letter-spacing:1.5px;color:#62756a;margin:0 0 16px}.booking-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:28px;border:2px solid #dce3d5;border-radius:6px;background:#fff;cursor:pointer;min-width:0}.booking-choice:has(input:checked){border-color:#315c47;background:#eaf0df}.booking-choice:has(input:focus-visible){outline:3px solid #799654;outline-offset:3px}.booking-choice input{position:absolute;right:24px;top:28px;width:19px;height:19px;accent-color:#174c3b;cursor:pointer}.booking-duration{font-size:12px;font-weight:700;color:#315c47;background:#fafcf6;border:1px solid #dfe6d6;padding:4px 10px;border-radius:6px;max-width:calc(100% - 30px)}.booking-choice>strong{font:700 24px/1.25 Manrope,sans-serif;letter-spacing:-.04em;color:#172b26}.booking-choice-description{font-size:15px;line-height:1.6;color:#52665a}.booking-calendar-card{border:1px solid #dce3d5;border-radius:6px;background:#fff;padding:32px;min-width:0}.booking-sidebar{display:grid;gap:24px;padding-top:300px;min-width:0}.booking-expect{background:#244e3e;border:1px solid #244e3e;border-radius:6px;color:#f9fcf4;padding:32px}.booking-expect .eyebrow{color:#cfdfb9;font-size:12px}.booking-expect h2{font:700 26px/1.2 Manrope,sans-serif;letter-spacing:-.04em;color:#fff;margin:22px 0}.booking-expect ul{list-style:none;margin:0;padding:0;display:grid;gap:20px}.booking-expect li{position:relative;padding-left:28px;font-size:15px;line-height:1.6;color:#e3edda}.booking-expect li:before{content:'✓';position:absolute;left:0;color:#c4dbaa;font-size:20px;font-weight:700}.booking-expect-note{border-top:1px solid #ffffff25;padding-top:22px;margin-top:24px;margin-bottom:0;font-size:14px;line-height:1.6;color:#d5e1c4}.booking-message{background:#fff;border:1px solid #dce3d5;border-radius:6px;padding:30px}.booking-message h2{font:700 22px/1.3 Manrope,sans-serif;letter-spacing:-.035em;margin:0 0 20px}.booking-message p{font-size:14px;line-height:1.6;margin:12px 0;color:#63736a;overflow-wrap:anywhere}.booking-message a{color:#244e3e;font-weight:700}.booking-page [hidden]{display:none!important}#booking-calendar{min-width:0}#booking-calendar iframe{max-width:100%}
@media(max-width:900px){.booking-page-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:22px}.booking-choice{padding:24px 20px}.booking-sidebar{padding-top:320px}.booking-expect,.booking-message{padding:24px}.booking-choice input{right:16px}.booking-intro .lede{font-size:18px}}
@media(max-width:700px){.booking-page{padding:38px 0 48px}.booking-page-grid{grid-template-columns:1fr;gap:28px}.booking-sidebar{padding-top:0}.booking-intro h1{font-size:42px}.booking-intro .lede{margin-bottom:32px}.booking-choice-grid{gap:12px}.booking-choice{padding:22px 16px;gap:16px}.booking-choice>strong{font-size:21px}.booking-choice-description{font-size:14px}.booking-duration{padding:4px 6px;font-size:11px}.booking-choice input{top:24px;right:12px;width:16px;height:16px}.booking-calendar-card{padding:22px 16px}.booking-expect h2{font-size:28px}}
@media(max-width:380px){.booking-choice-grid{grid-template-columns:1fr}}
