.booking-home{max-width:1200px;margin:24px auto;background:#0b1009;border:1px solid #35442d;border-radius:24px;overflow:hidden}.booking-home header{max-width:none;padding:22px 32px}.booking-home main{padding:24px 32px 36px}.booking-home h2{font-size:clamp(32px,4vw,48px)}.booking-home .page-title p:last-child{font-size:18px}.booking-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-paths article{padding:28px;border:1px solid #54663c;border-radius:20px;background:#151e11;min-width:0}.booking-paths .visit-path{border-top:3px solid #ffcc00}.booking-paths h3{font-size:28px}.booking-paths p{font-size:17px}.booking-paths .kicker,.booking-paths .micro{font-size:13px}.booking-paths .button{font-size:17px;min-height:55px}.booking-location{font-size:14px!important}.booking-home .text-link{font-size:16px}.live-calendar{margin-top:28px;padding:24px;border:1px solid #647844;border-radius:20px;scroll-margin-top:16px;animation:screen-reveal .3s ease}.calendar-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.calendar-heading h3{margin:0}.calendar-heading button{background:transparent;border:1px solid #647844;border-radius:10px;color:#f4f6ef;padding:10px 12px;font:inherit;cursor:pointer}.live-calendar iframe{display:block;width:100%;height:740px;border:0;border-radius:14px;background:#11190f;margin:18px 0}.booking-home footer{padding:18px 32px}@media(max-width:767px){.booking-home{margin:0;border:0;border-radius:0}.booking-home header{padding:16px}.booking-home main{padding:20px 16px}.booking-home .page-title p:last-child{font-size:15px}.booking-paths{grid-template-columns:1fr;gap:16px}.booking-paths article{padding:22px}.booking-paths h3{font-size:25px}.booking-paths p{font-size:15px}.live-calendar{padding:16px}.live-calendar iframe{height:760px}.calendar-heading h3{font-size:21px}.calendar-heading button{font-size:13px}.booking-home footer{padding:16px}}@media(prefers-reduced-motion:reduce){.live-calendar{animation:none}}

/* Booking choices form one continuous page, with navigation always reachable. */
html:has(body.booking-scroll){height:auto;overflow-y:auto;overflow-x:hidden}
body.booking-scroll{height:auto;min-height:100dvh;overflow:visible}
.booking-scroll .booking-home{height:auto;max-height:none;min-height:100dvh;display:block;overflow:visible;margin:0 auto;border-radius:0;padding-bottom:env(safe-area-inset-bottom)}
.booking-scroll .booking-home>header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;margin:0;background:#0b1009f5;padding: max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left));border-bottom:1px solid #303930}
.booking-scroll header>.back-home{grid-column:1;grid-row:1;margin:0;width:36px;height:40px}
.booking-scroll header>.brand{grid-column:2;grid-row:1;min-width:0;gap:8px}
.booking-scroll header>.language-switch{grid-column:3;grid-row:1;position:static;inset:auto;transform:none;margin:0;min-height:40px;white-space:nowrap}
.booking-scroll .booking-home>main{height:auto;overflow:visible;padding-bottom:32px}
.booking-scroll .booking-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.booking-scroll .booking-paths article{margin-bottom:0}
@media(max-width:767px){.booking-scroll .booking-paths{grid-template-columns:1fr;gap:16px}}
@media(max-width:380px){.booking-scroll .booking-home>header{gap:8px}.booking-scroll header .brand span{font-size:10px;letter-spacing:.5px}.booking-scroll header .brand small{font-size:9px}.booking-scroll header>.language-switch{font-size:12px;padding:8px 10px}}
