.booking-breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.booking-intro{padding-top:27px}
.booking-intro__heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-block:34px 30px}
.booking-intro h1{font-size:54px;letter-spacing:-.04em}
.booking-intro__heading>div{font-size:15px;max-width:350px}
.booking-text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;background:transparent;padding:0;text-decoration:underline;text-underline-offset:4px;font-size:15px}
.booking-price-note{max-width:790px}
.booking-price-note h2{font-size:20px;letter-spacing:-.015em;margin-bottom:8px}
.booking-price-note p{font-size:16px;color:var(--muted)}
.booking-module{margin-block:28px 64px;scroll-margin-top:110px}
.booking-module .home-booking__frame{display:block;width:100%;border:1px solid var(--line);border-radius:18px;background:var(--paper);overflow:hidden}
.booking-module .home-booking__frame:not([src]){display:none}
.booking-module .home-booking__frame--overlay{position:fixed;inset:0;z-index:3000;width:100%;height:100dvh!important;min-height:0;background:#000}
.booking-overlay-open{overflow:hidden}
.booking-module__status,.booking-module__noscript{font-size:14px;color:var(--muted)}
.booking-module__status:empty{display:none}
.booking-module__fallback{display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:12px}
.booking-module__fallback .booking-text-link{font-size:13px}
.booking-payment{border-top:1px solid var(--line);padding-top:44px;scroll-margin-top:110px}
.booking-payment h2,.booking-guests h2{font-size:38px}
.booking-payment__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;margin-top:32px}
.booking-payment__amounts{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}
.booking-payment__amount{font-size:58px;line-height:1.1;letter-spacing:-.045em;color:var(--green);margin-bottom:14px}
.booking-payment__amount span{font-size:30px;margin-left:3px}
.booking-payment h3,.booking-guests h3{font-size:23px;margin-bottom:10px}
.booking-payment__amounts>div>p:last-child,.booking-payment__confirmation{color:var(--muted);font-size:15px}
.booking-payment__confirmation{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px}
.booking-payment__cancellation{border-left:1px solid var(--line);padding-left:42px}
.booking-payment__cancellation p+p{margin-top:16px}
.booking-payment__cancellation .booking-text-link{margin-top:8px}
.booking-guests{margin-block:56px 64px;border-top:1px solid var(--line);padding-top:42px}
.booking-guests__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:28px}
.booking-guests__grid p{max-width:47ch;color:var(--muted)}
.booking-guests .booking-text-link{margin-top:8px}
@media(max-width:899px){.booking-intro__heading{display:block}.booking-intro__heading>div{margin-top:20px;max-width:none}.booking-intro h1{font-size:48px}.booking-payment__grid{grid-template-columns:1fr;gap:30px}.booking-payment__cancellation{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.booking-guests__grid{gap:32px}}
@media(max-width:639px){.booking-intro{padding-top:20px}.booking-breadcrumbs{font-size:11px}.booking-intro__heading{margin-block:26px 24px}.booking-intro h1{font-size:38px}.booking-intro__heading>div{margin-top:18px;font-size:15px}.booking-price-note h2{font-size:20px;line-height:1.3;max-width:25ch}.booking-price-note p{font-size:15px}.booking-module{margin-block:24px 40px}.booking-module__fallback .booking-text-link{line-height:1.5;align-items:baseline}.booking-payment,.booking-guests{padding-top:30px}.booking-payment h2,.booking-guests h2{font-size:30px}.booking-payment__grid{margin-top:26px}.booking-payment__amounts{gap:22px 20px}.booking-payment__amount{font-size:46px}.booking-payment__amount span{font-size:25px}.booking-payment h3,.booking-guests h3{font-size:21px}.booking-payment__amounts>div>p:last-child,.booking-payment__confirmation{font-size:14px}.booking-payment__cancellation p,.booking-guests__grid p{font-size:15px}.booking-guests{margin-block:38px 42px}.booking-guests__grid{grid-template-columns:1fr;gap:26px;margin-top:24px}.booking-text-link{font-size:14px}}
@media(max-width:359px){.booking-intro h1{font-size:34px}.booking-payment h2,.booking-guests h2{font-size:28px}.booking-payment__amounts{gap:20px 14px}}
