.booking-intro{max-width:790px;margin:auto;text-align:center;padding:67px 0 36px}.booking-intro .eyebrow{justify-content:center}.booking-intro h1{font-family:Manrope,sans-serif;font-size:49px;letter-spacing:-2px;font-weight:600;line-height:1.16;margin:20px 0}.booking-intro>p{font-size:15px;line-height:1.85;color:var(--muted);max-width:720px;margin:0 auto}.booking-calendar{max-width:1070px;margin:0 auto;padding-bottom:65px}.calendar-shell{width:100%;min-width:0;background:#fff}.calendar-shell iframe{display:block;width:100%;border:0;max-width:100%}.calendar-fallback{font-size:11px;color:var(--muted);text-align:center;margin:13px 0 0}.calendar-fallback a{color:var(--brand-deep);border-bottom:1px solid #b5d8f0}.support-booking{display:grid;grid-template-columns:280px minmax(0,1fr);gap:45px;padding:14px 0 65px}.support-info{padding:25px 23px;background:#f5faff;border:1px solid var(--line);border-radius:7px;align-self:start}.support-info article+article{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.support-info h2{font-family:Manrope;font-size:18px;font-weight:650;letter-spacing:-.5px;line-height:1.4;margin:0 0 12px}.support-info p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.support-icon{color:var(--brand-deep);font-size:25px;margin-bottom:16px}.support-info dl{margin:0}.support-info dl div{margin-top:16px}.support-info dt{font-size:11px;color:var(--muted)}.support-info dd{font-size:12px;margin:3px 0 0;font-weight:550}.links{gap:25px}@media(max-width:1000px){.support-booking{grid-template-columns:220px minmax(0,1fr);gap:20px}.links{gap:15px;font-size:12px}}@media(max-width:800px){.site-header .menu-toggle{display:block}.site-header .nav{position:relative}.site-header .links{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;background:var(--paper);z-index:10;border:1px solid var(--line);border-radius:5px;padding:22px;align-items:stretch;gap:20px}.site-header .links.open{display:flex}}@media(max-width:700px){.booking-intro{padding:42px 0 25px}.booking-intro h1{font-size:36px;letter-spacing:-1.5px;margin:17px 0}.booking-intro>p{font-size:14px}.support-booking{grid-template-columns:1fr;gap:25px;padding-top:5px;padding-bottom:40px}.support-info{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:23px}.support-info article+article{border:0;margin:0;padding:0}.booking-calendar{padding-bottom:40px}.site-header .links{top:67px}}@media(max-width:400px){.support-info{grid-template-columns:1fr}.support-info article+article{border-top:1px solid var(--line);padding-top:20px}}

/* Consistent two-column layout across all booking pages. */
.booking-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:45px;align-items:start;padding:55px 0 65px}
.booking-copy{min-width:0;padding-top:28px}
.booking-intro{max-width:none;margin:0;text-align:left;padding:0}
.booking-intro .eyebrow{justify-content:flex-start}
.booking-intro h1{font-size:43px;line-height:1.15;letter-spacing:-1.8px;margin:22px 0}
.booking-intro>p{margin:0;font-size:15px;max-width:390px;line-height:1.85}
.booking-calendar{width:100%;min-width:0;max-width:none;margin:0;padding:0}
.booking-copy .support-info{margin-top:30px;padding:24px;display:block}
.booking-copy .support-info article+article{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}
.booking-copy .support-info dl div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.booking-copy .support-info dd{margin:0;white-space:nowrap}
@media(max-width:1100px){.booking-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:25px}.booking-intro h1{font-size:37px;letter-spacing:-1.5px}.booking-copy .support-info dl div{display:block}.booking-copy .support-info dd{margin-top:3px}}
@media(max-width:800px){.booking-layout{grid-template-columns:1fr;gap:30px;padding:38px 0 45px}.booking-copy{padding-top:0}.booking-intro{max-width:650px}.booking-intro>p{max-width:620px}.booking-copy .support-info{max-width:650px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-copy .support-info article+article{border:0;padding:0;margin:0}.booking-calendar{padding:0}.booking-intro h1{font-size:38px;max-width:550px}}
@media(max-width:480px){.booking-intro h1{font-size:35px}.booking-intro>p{font-size:14px}.booking-copy .support-info{grid-template-columns:1fr}.booking-copy .support-info article+article{border-top:1px solid var(--line);padding-top:20px}.booking-layout{gap:24px}}
