.booking-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;padding-top:43px;padding-bottom:43px}.booking-intro h1{font-size:83px;line-height:.95;margin-top:20px;letter-spacing:-.6px}.booking-intro h1 em{color:#819071}.booking-intro>p{font-size:13px;line-height:1.9;color:#718267;max-width:360px;margin-bottom:7px}.booking-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:27px;align-items:start;padding-top:0;padding-bottom:55px}.calendar-panel{background:#fdfdf8;border:1px solid #d8dfce;border-radius:5px;padding:30px}.calendar-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.calendar-panel-head h2{font-size:40px;margin-top:14px;line-height:1.03}.calendar-mark{font-size:43px;color:#a1b086;margin-right:5px}.booking-fields{display:grid;grid-template-columns:1.25fr 1.2fr .65fr;gap:11px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:22px}.booking-fields label{display:block;font-size:10px;color:#6f8062;margin-bottom:9px}.booking-fields input,.booking-fields select{width:100%;min-width:0;border:1px solid #d1dac4;border-radius:3px;background:#f8f9f1;color:var(--ink);font-family:var(--sans);font-size:11px;padding:11px 8px;height:40px;outline-offset:3px}.booking-fields select{padding-right:3px}.booking-fields input:focus-visible,.booking-fields select:focus-visible{outline:2px solid #8c9c76}.calendar-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:20px}.calendar-controls>p{font-size:8px;letter-spacing:1.4px;color:#8b997c}.calendar-controls>div{display:flex;gap:8px}.calendar-controls button{border:1px solid #d1dbc2;border-radius:50%;width:29px;height:29px;padding:0;display:grid;place-items:center;font-size:17px;color:#7f926b}.calendar-controls button:hover:not(:disabled){background:#e9efdd;color:var(--green)}.calendar-controls button:disabled{opacity:.35;cursor:default}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:23px}.calendar-month h3{font-family:var(--sans);font-size:12px;font-weight:500;margin-bottom:18px;text-align:center}.calendar-month table{width:100%;table-layout:fixed;border-spacing:0;border-collapse:separate;font-size:11px}.calendar-month th{font-weight:400;font-size:9px;color:#839373;padding:0 0 12px;text-align:center}.calendar-month abbr{text-decoration:none}.calendar-month td{padding:3px 0;text-align:center}.calendar-day{display:block;width:100%;max-width:35px;height:35px;margin:0 auto;border-radius:50%;font-size:11px;padding:0;border:1px solid transparent;position:relative}.calendar-day:hover:not(:disabled){border-color:#8b9f74;background:#edf2e1}.calendar-day:disabled{color:#ccd2c4;cursor:default}.calendar-day.today:not(.arrival-day)::after{content:'';width:3px;height:3px;border-radius:50%;position:absolute;bottom:3px;left:calc(50% - 1.5px);background:#94a57e}.calendar-day.in-stay{border-radius:3px;background:#e7edd9;color:#5c7750}.calendar-day.arrival-day{background:var(--green);color:var(--cream);border-color:var(--green)}.calendar-day.departure-day{border:1px solid var(--green);color:var(--green);background:#f2f5e9}.calendar-day:focus-visible{outline:2px solid #a2b686;outline-offset:1px;z-index:1}.calendar-legend{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e0e5d6;margin-top:24px;padding-top:17px;gap:20px}.calendar-legend>span{display:flex;align-items:center;gap:7px;font-size:9px;color:#7a8d6b}.calendar-legend i{width:10px;height:10px;background:#dce6c8;display:inline-block;border-radius:2px}.calendar-legend>button{font-size:9px;text-decoration:underline;text-underline-offset:3px;color:#7c8e6d;padding:3px}.calendar-note{font-size:9px;color:#87967b;line-height:1.9;margin-top:17px}.calendar-note a{text-decoration:underline}.booking-card{position:sticky;top:25px;border-radius:5px;overflow:hidden;background:#edf0e2;border:1px solid #d7dfc9}.booking-card-image{height:151px;position:relative;background:#bdc8af;overflow:hidden}.booking-card-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%}.booking-card-image::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#263d2d70)}.booking-card-image>span{position:absolute;bottom:15px;left:24px;font-size:7px;letter-spacing:1.6px;color:white;z-index:1}.booking-card-body{padding:25px 24px 23px}.booking-card-body h2{font-size:34px;line-height:1}.booking-address{font-size:9px;color:#839274;margin-top:10px}.booking-property-facts{font-size:8px;color:#748a60;display:flex;gap:11px;flex-wrap:wrap;margin-top:17px;padding-bottom:23px;border-bottom:1px solid #ced8bd}.booking-property-facts span+span::before{content:'·';margin-right:11px}.booking-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:21px}.booking-summary span{font-size:7px;letter-spacing:1.2px;color:#8b9a7c;display:block;margin-bottom:9px}.booking-summary strong{font-size:11px;font-weight:500;line-height:1.8}.summary-length{font-size:9px;color:#7c9268;border-bottom:1px solid #ced8bd;margin-top:13px;padding-bottom:20px}.weekly-rate{margin-top:21px}.weekly-rate>span{font-size:7px;letter-spacing:1.6px;color:#7e916b}.weekly-rate h3{font-size:33px;margin-top:10px;line-height:1.1}.weekly-rate p{font-size:10px;line-height:1.9;color:#728964;margin-top:11px}.booking-continue{background:var(--green);color:var(--cream);border-color:var(--green);width:100%;padding:14px 14px;margin-top:21px;font-size:10px;gap:15px;line-height:1.4}.booking-continue:hover{background:#435c46;color:white}.booking-continue[aria-disabled=true]{opacity:.5;cursor:default}.booking-continue[aria-disabled=true]:hover{transform:none;background:var(--green)}.booking-status{font-size:9px;color:#657e55;line-height:1.8;margin-top:13px}.booking-children{font-size:8px;color:#849675;line-height:1.8;border-top:1px solid #ced8bd;margin-top:18px;padding-top:16px}.booking-how{padding-top:0;padding-bottom:65px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.booking-how>div{border-top:1px solid var(--line);padding-top:23px}.booking-how>div>span{font-size:8px;color:#98a689;letter-spacing:1px}.booking-how h3{font-size:28px;margin:12px 0}.booking-how p{font-size:11px;color:#77896a;line-height:1.9;max-width:270px}
@media(max-width:1150px){.booking-layout{gap:20px;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.calendar-panel{padding:24px 20px}.calendar-months{gap:15px}.calendar-day{height:31px;font-size:10px}.booking-fields{gap:8px}.booking-fields input,.booking-fields select{font-size:10px;padding-left:6px}.booking-card-body{padding:23px 20px}.booking-property-facts{gap:8px}.booking-property-facts span+span::before{margin-right:8px}.booking-intro h1{font-size:74px}.calendar-panel-head h2{font-size:37px}.booking-continue{font-size:9px;padding:13px 11px}}
@media(max-width:950px){.booking-layout{grid-template-columns:1fr;gap:25px}.calendar-panel{padding:30px}.calendar-months{gap:35px}.calendar-day{height:39px;max-width:39px;font-size:12px}.calendar-month h3{font-size:14px}.booking-fields input,.booking-fields select{font-size:12px;height:43px;padding:11px 10px}.booking-fields label{font-size:11px}.booking-card{position:static;display:grid;grid-template-columns:.85fr 1.3fr;align-items:stretch}.booking-card-image{height:100%;min-height:420px}.booking-card-image>span{left:20px;bottom:20px;font-size:7px}.booking-card-body{padding:28px}.booking-summary strong{font-size:12px}.booking-intro>p{font-size:12px;max-width:290px}.booking-intro h1{font-size:69px}.booking-how{gap:25px}.booking-how p{font-size:10px}.booking-continue{font-size:11px}.booking-card-body h2{font-size:38px}.booking-address{font-size:10px}.booking-property-facts{font-size:9px}.weekly-rate p{font-size:11px}.booking-status{font-size:10px}.booking-children{font-size:9px}.calendar-note{font-size:10px}.calendar-legend>span,.calendar-legend>button{font-size:10px}}
@media(max-width:600px){.booking-intro{display:block;padding:31px 7% 32px}.booking-intro .eyebrow{font-size:7px;letter-spacing:1.5px}.booking-intro h1{font-size:67px;margin-top:20px}.booking-intro>p{font-size:12px;line-height:1.9;max-width:none;margin-top:23px}.booking-intro>p br{display:none}.booking-layout{padding:0 5% 35px;gap:22px}.calendar-panel{padding:25px 19px}.calendar-panel-head{margin-bottom:24px}.calendar-panel-head .eyebrow{font-size:7px}.calendar-panel-head h2{font-size:37px;margin-top:13px}.calendar-mark{font-size:35px}.booking-fields{grid-template-columns:1.5fr 1fr;gap:16px 11px;margin-bottom:20px;padding-bottom:21px}.booking-fields>div:first-child{grid-column:1/3}.booking-fields label{font-size:10px;margin-bottom:7px}.booking-fields input,.booking-fields select{font-size:12px;padding-left:10px;height:42px}.booking-fields>div:last-child select{font-size:12px}.calendar-controls{margin-bottom:21px}.calendar-controls>p{font-size:7px;letter-spacing:1.2px}.calendar-controls button{width:31px;height:31px}.calendar-months{display:block}.calendar-month:nth-child(2){display:none}.calendar-month h3{font-size:14px;margin-bottom:22px}.calendar-month th{font-size:10px;padding-bottom:13px}.calendar-day{height:37px;max-width:37px;font-size:12px}.calendar-month td{padding:4px 0}.calendar-legend{margin-top:23px;padding-top:17px}.calendar-legend>span,.calendar-legend>button{font-size:9px}.calendar-note{font-size:10px;line-height:1.9;margin-top:18px}.booking-card{display:block}.booking-card-image{height:185px;min-height:0}.booking-card-image>span{font-size:8px;bottom:16px;left:23px}.booking-card-body{padding:25px 23px}.booking-card-body h2{font-size:37px}.booking-address{font-size:10px}.booking-property-facts{font-size:9px;margin-top:17px;padding-bottom:23px;gap:9px}.booking-summary{gap:20px;padding-top:21px}.booking-summary span{font-size:8px}.booking-summary strong{font-size:13px}.summary-length{font-size:10px}.weekly-rate>span{font-size:8px}.weekly-rate h3{font-size:36px}.weekly-rate p{font-size:12px}.booking-continue{font-size:11px;padding:15px 16px}.booking-status{font-size:10px}.booking-children{font-size:10px}.booking-how{grid-template-columns:1fr;gap:24px;padding:0 7% 50px}.booking-how>div{padding-top:20px;display:grid;grid-template-columns:30px 1fr;gap:0 15px}.booking-how>div>span{grid-row:1/3;padding-top:8px;font-size:8px}.booking-how h3{font-size:29px;margin:0 0 10px}.booking-how p{font-size:12px;max-width:none}}
.calendar-day.arrival-day:hover:not(:disabled){background:var(--green);border-color:var(--green);color:var(--cream)}
.month-weekly-rate{display:block;font-size:9px;font-weight:400;color:#7a8c69;margin-top:8px}.calendar-day.unavailable-day{background:repeating-linear-gradient(135deg,#eee6de,#eee6de 3px,#f7f0e9 3px,#f7f0e9 6px);color:#b39d8b;text-decoration:line-through;cursor:default}.calendar-legend{flex-wrap:wrap;gap:12px}.calendar-legend i.unavailable-key{background:repeating-linear-gradient(135deg,#cbb5a2,#cbb5a2 2px,#f4ede6 2px,#f4ede6 4px)}.calendar-legend button:disabled{opacity:.5;cursor:default}.season-rate-list{border-bottom:1px solid #ced8bd;padding:18px 0}.season-rate-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:10px 0;font-size:10px;color:#718560}.season-rate-list strong{font-weight:500;color:var(--ink);white-space:nowrap}.season-rate-list small{font-size:9px;font-weight:400}.guest-heading{font-family:var(--serif);font-size:28px;font-weight:400;margin:24px 0 18px}.guest-field{margin:14px 0}.guest-field label{display:block;font-size:10px;color:#6d815e;margin-bottom:7px}.guest-field input{font:inherit;width:100%;padding:11px 10px;background:#f9faf4;border:1px solid #cdd8bd;border-radius:3px;font-size:12px;color:var(--ink)}.guest-field input:focus-visible{outline:2px solid #8fa278;outline-offset:2px}.booking-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.booking-result{border-top:1px solid #cbd7ba;margin-top:25px;padding-top:23px}.booking-result h3{font-size:31px;margin-bottom:15px}.booking-result p{font-size:11px;line-height:1.9;color:#6d825c;margin:13px 0}.booking-result .text-link{font-size:11px;margin-top:8px}.booking-card{position:static}.guest-field input:disabled{opacity:.65}[hidden]{display:none!important}.footer-bottom a{font-size:9px;color:#687d5b}.footer-bottom a:hover{text-decoration:underline}@media(max-width:950px){.booking-card{display:block}.booking-card-image{height:190px;min-height:0}.booking-card-body{padding:28px}.guest-field label{font-size:11px}.season-rate-list>div{font-size:12px}.season-rate-list small{font-size:10px}.booking-children{font-size:10px}}@media(max-width:600px){.month-weekly-rate{font-size:10px}.guest-field label{font-size:11px}.guest-field input{font-size:14px;padding:12px}.booking-card-body{padding:25px 23px}.season-rate-list>div{font-size:12px}.season-rate-list small{font-size:10px}.footer-bottom a{font-size:8px}}
