.booking-page .site-header{position:relative;background:var(--ink);border-bottom-color:#ffffff30}
.booking-page.nav-open .site-header{position:fixed}
.booking-main{padding:58px 7% 70px}
.booking-layout{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 343px;grid-template-areas:"intro widget" "policies widget";column-gap:10%;row-gap:30px;align-items:start}
.booking-intro{grid-area:intro;padding-top:12px}
.booking-intro .eyebrow{font-size:.875rem}
.booking-intro h1{font-family:var(--serif);font-size:clamp(3.5rem,5vw,5.2rem);font-weight:400;letter-spacing:-.04em;line-height:1.03;margin:22px 0 27px}
.booking-intro h1 em{font-weight:400}
.booking-intro>p:not(.eyebrow){font-size:1rem;line-height:1.85;color:var(--soft);max-width:390px}
.booking-panel{grid-area:widget;min-width:0;max-width:100%;scroll-margin-top:24px}
.booking-panel:focus{outline:none}
.booking-panel:focus-visible{outline:2px solid var(--ink);outline-offset:8px}
.booking-widget{width:343px;max-width:100%;min-height:576px}
.booking-widget .dineplan-widget{width:100%;min-height:576px}
.booking-page .booking-widget .dineplan-widget.dp-inline,.booking-page .booking-widget .dineplan-widget iframe{width:100%!important;max-width:100%;height:576px!important}
.booking-fallback{margin-top:21px}
.booking-fallback .text-link{font-size:.875rem;gap:15px;flex-wrap:wrap}
.booking-embed-status{font-size:.95rem;line-height:1.75;color:var(--soft);margin-bottom:18px}
.booking-preview-note{font-size:.875rem;line-height:1.75;color:var(--soft);padding-top:19px;margin-top:23px;border-top:1px solid var(--line)}
@media(max-width:750px){.booking-main{padding:33px 6% 48px}.booking-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "widget" "policies";gap:31px;max-width:520px}.booking-intro{padding-top:0}.booking-intro h1{font-size:3.5rem;margin:16px 0 20px}.booking-intro>p:not(.eyebrow){max-width:none}.booking-panel{width:343px;justify-self:center}.booking-fallback{margin-top:18px}.booking-preview-note{margin-top:18px}}
@media(max-width:360px){.booking-intro h1{font-size:3.15rem}}

.booking-section-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.booking-section-links .button{min-height:46px;padding:12px 20px;font-size:.9rem}
.booking-events-link{border:1px solid var(--ink);gap:24px}
.booking-events-link:hover{background:#e5e8dc}
.booking-intro .booking-group-prompt{font-size:.875rem;line-height:1.8;margin-top:20px;max-width:410px}
.booking-group-prompt a{text-decoration:underline;text-underline-offset:4px}
.booking-policies{grid-area:policies;max-width:520px;scroll-margin-top:30px}
.booking-policies h2{font-size:2.3rem;line-height:1.15;margin-bottom:21px}
.booking-policy{padding:19px 0;border-top:1px solid var(--line);scroll-margin-top:30px}
.booking-policy:last-child{padding-bottom:0}
.booking-policy h3{font-family:var(--sans);font-size:1rem;font-weight:500;margin:0 0 8px}
.booking-policy p{font-size:1rem;line-height:1.85;color:var(--soft)}
.booking-policy p+p{margin-top:12px}
.booking-contact-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:16px;font-size:.9375rem}
.booking-contact-links a{text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.booking-events{max-width:1200px;margin:82px auto 0;background:var(--ink);color:var(--cream);scroll-margin-top:26px}
.booking-events-intro{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.booking-events-photo{min-width:0;position:relative;min-height:390px}
.booking-events-photo img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:55% center}
.booking-events-copy{padding:48px 11% 40px;align-self:center}
.booking-events-copy .eyebrow{font-size:.875rem}
.booking-events-copy h2{font-size:clamp(3rem,4vw,4.2rem);line-height:1.05;margin:20px 0 25px}
.booking-events-copy>p:not(.eyebrow){font-size:1rem;line-height:1.85;color:#e2e7da;margin-bottom:18px}
.booking-events-copy>p:last-child{margin-bottom:0}
.event-faqs{padding:48px 8% 52px}
.event-faqs>h3{font-family:var(--serif);font-size:2.25rem;font-weight:400;line-height:1.2;letter-spacing:-.02em;margin-bottom:27px}
.event-faq{border-top:1px solid #ffffff35}
.event-faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:74px;padding:20px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:1.75rem;line-height:1.2}
.event-faq summary::-webkit-details-marker{display:none}
.event-faq summary:hover{color:#d1ddbf}
.event-faq summary:focus-visible{outline-offset:2px}
.event-faq-toggle{position:relative;flex:0 0 20px;width:20px;height:20px}
.event-faq-toggle:before,.event-faq-toggle:after{content:'';position:absolute;background:currentColor;transition:transform .2s}
.event-faq-toggle:before{height:1px;width:16px;left:2px;top:9px}
.event-faq-toggle:after{width:1px;height:16px;left:9.5px;top:1.5px}
.event-faq[open] .event-faq-toggle:after{transform:rotate(90deg)}
.event-faq-answer{padding:0 44px 25px 0;max-width:790px;font-size:.9375rem;line-height:1.85;color:#e2e7da}
.event-faq[open] .event-faq-answer{animation:event-answer-reveal .2s ease-out}
.event-faq-answer p+p{margin-top:13px}
.event-faq-answer a{text-decoration:underline;text-underline-offset:5px}
.event-hire-rates{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:2px 0 20px;color:var(--cream)}
.event-hire-rates>div{padding:0 0 0 18px;border-left:1px solid #ffffff40}
.event-hire-rates dt{font-size:.875rem;line-height:1.5}
.event-hire-rates dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 9px;font-family:var(--serif);font-size:3.15rem;line-height:1.2;margin:6px 0 0;font-variant-numeric:lining-nums}
.event-hire-rates dd span{font-family:var(--sans);font-size:.8125rem;white-space:nowrap;color:#e2e7da}
.event-menu-showcase-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;margin-top:14px;font-size:1rem}
.event-enquiry-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:25px 40px;border-top:1px solid #ffffff35;padding-top:35px}
.event-enquiry-footer>div:first-child{flex:1 1 300px;max-width:490px}
.event-enquiry-footer h3{font-family:var(--serif);font-size:2.15rem;line-height:1.2;font-weight:400;margin-bottom:12px}
.event-enquiry-footer p{font-size:.9375rem;line-height:1.85;color:#e2e7da}
.event-enquiry-actions{max-width:100%}
.event-enquiry{font-size:.9375rem;padding:14px 18px;gap:16px;white-space:normal}
.events-email{display:block;font-size:.875rem;margin-top:14px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
@keyframes event-answer-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.booking-events-copy{padding:38px 9%}.booking-events-copy h2{font-size:3.35rem}}
@media(max-width:750px){.booking-section-links{margin-top:21px}.booking-intro .booking-group-prompt{max-width:none;margin-top:17px}.booking-policies{padding-top:13px}.booking-policies h2{font-size:2.25rem}.booking-events{margin-top:60px;max-width:520px}.booking-events-intro{grid-template-columns:1fr}.booking-events-photo{min-height:0;aspect-ratio:4/3}.booking-events-copy{padding:34px 8% 0}.booking-events-copy h2{font-size:3.2rem}.booking-events-copy .eyebrow{font-size:.8125rem}.event-faqs{padding:37px 8% 39px}.event-faqs>h3{font-size:2rem;margin-bottom:22px}.event-faq summary{font-size:1.5rem;gap:18px;min-height:70px;padding:18px 0}.event-faq-answer{padding-right:0}.event-hire-rates{gap:15px}.event-hire-rates>div{padding-left:12px}.event-hire-rates dd{font-size:2.6rem}.event-hire-rates dd span{display:block;flex-basis:100%;margin-top:3px}.event-enquiry-footer{padding-top:28px;gap:22px}.event-enquiry-footer>div:first-child{flex-basis:100%}.event-enquiry{font-size:.875rem}.booking-contact-links{gap:12px 20px}}
