/* The reservation page continues KOON's editorial identity. */
.reservation-page{--reserve-ink:#40332c;--reserve-gold:#a7895d;--reserve-line:#d8cdbb;--reserve-cream:#eee6da}.reservation-heading{padding:35px 7% 62px}.reservation-heading .breadcrumb{font-size:13px;margin-bottom:34px;display:inline-block}.reserve-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.reservation-heading .kicker{font-size:11px;letter-spacing:2px;color:#8b765d;margin:0 0 20px}.reservation-heading h1{font:500 clamp(76px,8vw,132px)/.82 'Cormorant Garamond',Georgia,serif;letter-spacing:-4px;color:var(--reserve-ink)}.reservation-heading h1 em{font-style:italic;color:var(--reserve-gold);display:inline-block;margin-left:80px}.reserve-intro-note{padding:0 3% 7px 0}.reserve-handwritten{font:italic 38px/1.1 'Cormorant Garamond',Georgia,serif;color:#856b4a;display:block;transform:rotate(-5deg);margin-bottom:24px}.reserve-intro-note p{font-size:17px;line-height:1.65;color:#6f6458}.reserve-intro-note>a{display:inline-flex;align-items:center;gap:30px;font-size:13px;border-bottom:1px solid #b5a082;padding:15px 0 9px;margin-top:10px}.reserve-intro-note>a span{font-size:23px}.reservation-layout{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:7%;padding:0 7% 95px;align-items:start}.reservation-address{position:sticky;top:25px;min-width:0}.reserve-photo{position:relative;border-radius:150px 12px 12px 12px;isolation:isolate}.reserve-photo>img{width:100%;height:auto;aspect-ratio:1023/1536;object-fit:contain;border-radius:inherit}.reserve-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#201a17db);z-index:0;border-radius:0 0 12px 12px;pointer-events:none}.reserve-photo-tag{position:absolute;right:-16px;top:34px;transform:rotate(4deg);background:#e9ddc8;color:#544332;font-size:10px;letter-spacing:1.3px;padding:13px 18px;z-index:2;border-radius:4px}.reserve-photo figcaption{position:absolute;bottom:34px;left:35px;right:20px;z-index:1;color:white}.reserve-photo figcaption p{font-size:10px;letter-spacing:2px;color:#e0d4c0}.reserve-photo figcaption h2{font:500 clamp(70px,6vw,100px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px;margin:7px 0;color:#fff9ee}.reserve-photo figcaption>span{font-size:15px;color:#e9e0d2}.reserve-orbit{position:absolute;left:-23px;bottom:110px;width:65px;height:65px;border:1px solid #c3a16c;border-radius:50%;z-index:2;pointer-events:none}.reserve-orbit:after{content:'';position:absolute;left:-17px;top:-24px;width:35px;height:35px;border:1px solid #c3a16c;border-radius:50%}.reservation-address>.reserve-address-footer{padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--reserve-line)}.reservation-address>.reserve-address-footer>p{font-size:13px!important;color:#75634e!important}.reserve-address-footer>a{display:inline-flex;gap:20px;font-size:13px;white-space:nowrap}.reserve-photo-aside{font:500 30px/1.1 'Cormorant Garamond',Georgia,serif;padding:23px 0;text-align:right;color:#6c5a45}.reserve-photo-aside em{font-style:italic;color:#a0835a}.reservation-panel{background:#eee8dd;padding:36px;border:1px solid #e1d7c7;border-radius:20px 75px 20px 20px;box-shadow:0 10px 30px #64503508;scroll-margin-top:25px;min-width:0}.reservation-notice{gap:20px;padding-bottom:25px;margin-bottom:22px;border-color:var(--reserve-line)}.reserve-step{font:italic 58px/1 'Cormorant Garamond',Georgia,serif;color:#a7895d;flex-shrink:0}.reservation-notice .reserve-panel-kicker{font-size:10px;letter-spacing:1.5px;color:#7d6b54;margin:0 0 11px}.reservation-notice h2{font:500 52px/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-1.5px;color:var(--reserve-ink)}.reservation-notice h2 em{font-style:italic;color:#947549}.reservation-notice .reserve-panel-intro{font-size:15px;line-height:1.6;color:#756858;margin-top:13px}.calendar-status{font-size:12px;line-height:1.7;min-height:0;margin-bottom:20px;color:#7c7264}.availability-calendar{padding-bottom:24px;margin-bottom:26px;border-color:var(--reserve-line)}.calendar-navigation h2{font:500 29px/1.2 'Cormorant Garamond',Georgia,serif;letter-spacing:0;color:var(--reserve-ink)}.calendar-navigation button{border-color:#d1c1a9;border-radius:50%;width:40px;height:40px;background:#f8f4eb;color:#68543c;font-size:25px}.calendar-weekdays{font-size:11px;letter-spacing:.5px;color:#8a7a64;margin-bottom:10px}.calendar-days{gap:5px}.calendar-day{border-radius:50%;border:1px solid transparent;background:#faf8f2;font-size:15px;color:#4e4439;min-height:34px;max-height:62px;aspect-ratio:1;justify-self:center;width:100%;max-width:62px}.calendar-day.is-busy{background:#e4ded3;color:#ada394;opacity:.75}.calendar-day:disabled{opacity:.45}.calendar-day:not(:disabled):hover{background:#e1ceb0;border-color:#af9164}.calendar-day.is-chosen{background:#755d3d!important;border-color:#755d3d!important}.calendar-day.in-stay{background:#e6d6bd;border-radius:10px;border-color:transparent}.calendar-day.is-checkout{border:1px dashed #a5895f;background:#f8f4eb;color:#6f5739}.calendar-legend{font-size:11px;gap:16px;color:#80715c}.calendar-legend i{border-radius:50%;width:10px;height:10px}.legend-busy{background:#c9bda9}.legend-free{background:#faf8f2;border-color:#b7a080}#calendar-help{font-size:12px;line-height:1.7;color:#80715c;margin-top:15px}#calendar-retry{font-size:13px}#direct-stay{gap:24px 18px}#direct-stay>label{font-size:10px;letter-spacing:1.2px;color:#806f59;gap:12px}#direct-stay>label>input,#direct-stay>label>select{font-size:16px;padding:13px 10px;border:1px solid #d6c9b5;border-radius:9px;background:#f9f6ee;width:100%;min-height:49px;color:#4a3d2d;box-sizing:border-box}.reservation-guests{flex-direction:row;align-items:center;justify-content:space-between;padding:13px 0;gap:15px;border-bottom:1px solid var(--reserve-line)}.reservation-guests>span,.reservation-summary>span{font-size:11px;letter-spacing:1px;color:#806f59}.reservation-guests strong{font-size:16px}.reservation-summary{border:0;padding:0}.reservation-summary p{font-size:15px;line-height:1.7;margin-top:12px}.booking-price{padding:17px 0 0;border-color:var(--reserve-line)}.booking-price:empty{display:none}.booking-price p{font-size:15px}.booking-price p:last-child{font-size:21px}#direct-stay>.solid-link{font-size:15px;letter-spacing:.2px;min-height:56px;border-radius:35px;background:#4b3928;color:#fffaf0;padding:16px 22px}.reservation-panel .solid-link:disabled{opacity:.5;cursor:default}.reservation-small{font-size:11px;line-height:1.8;color:#80735f}.direct-result{font-size:15px;line-height:1.8;border-color:var(--reserve-line)}.reservation-next{background:#e9e1d4;padding:45px 7%}.reservation-next .kicker{font-size:10px;letter-spacing:1.5px;color:#8a7150}.reservation-next>p:not(.kicker){font-size:16px;line-height:1.8;color:#6c5b46}.reservation-next .text-link{font-size:13px}#booking-details .booking-consent{font-size:14px;color:#5c4d39}#booking-details details{font-size:14px}#booking-details input[type=checkbox]{accent-color:#755d3d}
@media(min-width:1500px){.reservation-layout,.reservation-heading{max-width:1550px;margin:auto}}
@media(max-width:1000px){.reservation-layout{gap:5%;padding-left:5%;padding-right:5%}.reservation-panel{padding:28px 23px}.reservation-heading{padding-left:5%;padding-right:5%}.reserve-photo-tag{right:-10px;font-size:8px}.reserve-address-footer{flex-wrap:wrap}.reserve-intro-note{padding-right:0}.reserve-handwritten{font-size:32px}}
@media(max-width:700px){.reservation-heading{padding:30px 6% 40px}.reservation-heading .breadcrumb{margin-bottom:30px;font-size:12px}.reserve-intro{display:block}.reservation-heading .kicker{font-size:9px;margin-bottom:22px}.reservation-heading h1{font-size:clamp(70px,15vw,100px);letter-spacing:-2px;line-height:.87}.reservation-heading h1 em{margin-left:40px}.reserve-intro-note{padding:25px 0 0 40px}.reserve-handwritten{font-size:29px;margin:0 0 12px;transform:rotate(-3deg)}.reserve-intro-note p{font-size:15px}.reserve-intro-note>a{font-size:12px;padding-top:12px;margin-top:0}.reservation-layout{display:flex;flex-direction:column;padding:0 6% 55px;gap:30px}.reservation-address{position:static;width:100%}.reserve-photo{border-radius:90px 10px 10px 10px;max-width:470px;margin:auto}.reserve-photo>img{height:auto;aspect-ratio:1023/1536;object-fit:contain}.reserve-photo figcaption{left:25px;bottom:27px}.reserve-photo figcaption h2{font-size:75px}.reserve-photo-tag{font-size:9px;right:-8px;top:25px;padding:10px 13px}.reserve-orbit{left:-10px;width:42px;height:42px;bottom:95px}.reserve-orbit:after{width:23px;height:23px;left:-8px;top:-20px}.reservation-address>.reserve-address-footer{padding:18px 0}.reservation-address>.reserve-address-footer>p{font-size:12px!important}.reserve-address-footer>a{font-size:12px}.reserve-photo-aside{font-size:27px;padding:18px 0 0}.reservation-panel{width:100%;padding:28px 20px;border-radius:16px 60px 16px 16px}.reservation-notice{gap:15px}.reservation-notice h2{font-size:47px}.reserve-step{font-size:50px}.calendar-navigation h2{font-size:28px}.calendar-day{font-size:14px;min-height:32px}.calendar-status{font-size:11px}.calendar-weekdays{font-size:10px}.calendar-legend{font-size:10px}#calendar-help{font-size:11px}#direct-stay>label>input,#direct-stay>label>select{font-size:15px;padding:12px 7px}.reservation-summary p{font-size:14px}.reservation-small{font-size:11px}.reservation-next{padding:35px 6%}.reservation-next>p:not(.kicker){font-size:15px}}
@media(prefers-reduced-motion:reduce){.reservation-page *{scroll-behavior:auto!important;transition:none!important}}
.reservation-page .reservation-address>.reserve-photo-aside{font-size:30px;color:#6c5a45}.reservation-page .reserve-photo figcaption p{font-size:10px;color:#e0d4c0}@media(max-width:700px){.reservation-page .reservation-address>.reserve-photo-aside{font-size:27px}}

.reservation-next{position:relative;isolation:isolate}.reservation-next>a,.reserve-future-links a{position:relative;z-index:1;pointer-events:auto;min-height:44px;display:inline-flex;align-items:center;gap:18px}.reserve-future-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.reserve-future-links a{padding:10px 20px;border:1px solid #bfad90;border-radius:30px;font-size:14px;color:#65513a;transition:background .15s}.reserve-future-links a:hover{background:#dfd1ba}

#direct-stay #booking-details label.booking-consent{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-size:14px;line-height:1.65;letter-spacing:0;color:#5c4d39;cursor:pointer}#direct-stay #booking-details .booking-consent>input[type=checkbox]{appearance:auto;display:block;width:20px;min-width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:2px 0 0;padding:0;border-radius:4px;accent-color:#755d3d}#direct-stay #booking-details .booking-consent>span{display:block;flex:1;min-width:0;margin:0}

/* Let form columns shrink inside the mobile panel, including native selects. */
#direct-stay{grid-template-columns:repeat(2,minmax(0,1fr))}
#direct-stay>label,#direct-stay #booking-details{min-width:0;max-width:100%}
#direct-stay>label>select,#direct-stay>label>input{min-width:0;max-width:100%}
