.hero-with-search{display:flex;flex-direction:column;align-items:stretch;height:auto;min-height:740px;max-height:none}
.hero-with-search .hero-layout{flex:1;min-height:530px;padding-bottom:65px;align-content:center}
.hero-with-search .hero-footer{position:relative;left:auto;right:auto;bottom:auto;width:100%;padding:0 clamp(25px,7vw,104px) 22px}
.hero-with-search .hero-scroll{display:none}
.hero-search{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1.15fr 1.15fr .8fr .85fr;gap:14px;align-items:end;width:100%;padding:24px clamp(24px,7vw,104px) 15px;background:#24473ef2;border-top:1px solid #ffffff30;backdrop-filter:blur(14px)}
.hero-search label{display:grid;gap:9px;min-width:0}.hero-search label[hidden]{display:none}
.hero-search label>span{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#ecebdc}
.hero-search input,.hero-search select{display:block;width:100%;min-width:0;height:52px;padding:0 14px;border:1px solid #e4dfd2;border-radius:4px;background:#fffdf8;color:#24473e;font:400 13px 'DM Sans',sans-serif;color-scheme:light;outline-offset:3px;transition:border-color 200ms ease,box-shadow 200ms ease}
.hero-search input:focus,.hero-search select:focus{outline:2px solid #daa484;border-color:#daa484;box-shadow:0 0 0 4px #daa48420}
.hero-search button{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 22px;border:0;border-radius:4px;background:#d8a58a;color:#16382e;font-size:12px;font-weight:700;cursor:pointer;transition:transform 220ms var(--ease-out),background 220ms ease,box-shadow 220ms ease}
.hero-search button:hover{transform:translateY(-3px);background:#e4b89e;box-shadow:0 7px 18px #10282035}
.hero-search button span{font-size:20px}.hero-search-hint{grid-column:1/-1;margin:0!important;font-size:10px!important;color:#e1e5da;line-height:1.7}
.selection-calendar{padding:22px 25px 15px;background:#fffdf8;color:var(--ink)}
.selection-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 23px}
.selection-calendar-toolbar h3{margin:0;text-transform:capitalize;font:400 25px 'Playfair Display',serif}
.selection-calendar-toolbar button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d5dbd0;border-radius:50%;background:transparent;color:var(--green);font-size:26px;cursor:pointer}
.selection-calendar-toolbar button:disabled{opacity:.3;cursor:default}
.selection-weekdays,.selection-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:5px}
.selection-weekdays{margin-bottom:10px;color:#7c877a;font-size:10px}
.selection-days button{position:relative;display:grid;place-items:center;min-width:0;min-height:42px;padding:7px 0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--green);font-size:12px;cursor:pointer;transition:background 180ms ease,color 180ms ease,transform 180ms var(--ease-out)}
.selection-days button:hover{background:#ecebdf;transform:translateY(-2px)}
.selection-days button:focus-visible{outline:2px solid #c88164;outline-offset:1px}
.selection-days button.is-past{opacity:.35;cursor:default}
.selection-days button.is-busy{background:#f1e3da;color:#9d6048;text-decoration:line-through}
.selection-days button.is-busy::after{content:'';position:absolute;bottom:3px;width:4px;height:4px;border-radius:50%;background:#bf795c}
.selection-days button.is-selected{background:#28463d;color:#fff;text-decoration:none}
.selection-days button.is-start{box-shadow:inset 0 0 0 2px #d7b69d}
.selection-days button.is-checkout{border:2px solid #28463d;background:#f4f3e8;color:#28463d;text-decoration:none}
.selection-days button.is-selected.is-busy{box-shadow:inset 0 0 0 2px #ce9478}
.selection-days button.is-today:not(.is-selected){font-weight:700;border-color:#b4c0ae}
.calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px;font-size:9px;color:#687561}
.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:9px;height:9px;border-radius:3px}.legend-selected{background:#28463d}.legend-busy{background:#d5a48a}.legend-checkout{border:1px solid #28463d;background:transparent}
.calendar-selection-summary{margin:19px 0 8px;font-size:12px;line-height:1.8;color:var(--green);font-weight:500}
.calendar-availability-status{min-height:30px;font-size:10px;line-height:1.7;color:#6e7b68}
.calendar-availability-status.has-conflict,.calendar-availability-status.is-error{color:#9c573d}
.selection-calendar.is-loading .selection-days button:not(.is-selected):not(.is-checkout){color:#8b9385}
@media(max-width:1000px){.hero-search{gap:10px;padding-inline:5vw}.hero-search input,.hero-search select{font-size:12px;padding-inline:10px}.hero-search button{padding-inline:14px}}
@media(max-width:700px){.hero-with-search{height:auto;min-height:0}.hero-with-search .hero-layout{min-height:510px;padding:42px 22px 48px}.hero-with-search .hero-footer{padding:0 22px 18px}.hero-search{grid-template-columns:1fr 1fr;padding:22px;gap:15px 12px}.hero-search button{grid-column:1/-1;justify-content:center;gap:20px}.hero-search-hint{font-size:9px!important}.selection-calendar{padding:20px 16px 15px}.selection-days{gap:3px}.selection-days button{min-height:40px;font-size:11px}.selection-calendar-toolbar h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.hero-search button,.hero-search input,.hero-search select,.selection-days button{transition:none}}

.selection-days button:disabled{cursor:not-allowed;transform:none}.selection-days button.is-busy:disabled{opacity:.7;background:#f1e3da;color:#9d6048}.selection-calendar:focus{outline:none}.stay-form button:disabled{opacity:.5;cursor:not-allowed;transform:none}

.selection-days button.is-busy[aria-disabled=true]{cursor:not-allowed;opacity:.75;background:#f1e3da;color:#9d6048}.occupied-date-popup{width:min(420px,calc(100vw - 40px));padding:35px 28px;border:1px solid #d9cfc0;border-radius:14px;background:#fffdf8;color:#24473e;text-align:center;box-shadow:0 25px 100px #10282045}.occupied-date-popup::backdrop{background:#10282099;backdrop-filter:blur(5px)}.occupied-popup-symbol{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border-radius:50%;background:#f1e3da;color:#ad7054;font-size:29px}.occupied-date-popup h2{margin:0 0 15px;font:400 30px/1.2 'Playfair Display',serif}.occupied-date-popup p{margin:0 0 24px;font-size:13px;line-height:1.9;color:#56645e}.occupied-date-popup button{width:100%;padding:15px;border:0;border-radius:30px;background:#28463d;color:white;font-size:12px;font-weight:600;cursor:pointer}.occupied-date-popup button:focus-visible{outline:2px solid #c88164;outline-offset:4px}.occupied-date-popup[open]{animation:occupied-popup-enter 260ms cubic-bezier(.22,1,.36,1) both}@keyframes occupied-popup-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.occupied-date-popup[open]{animation:none}}
