:root{--ink:#243e35;--sand:#f8f7f2;--muted:#777b73;--line:#d9ddd4;--terra:#a38660}.booking-page{background:var(--sand)}.booking-page .wrap{width:min(1280px,calc(100% - 80px))}.booking-page .notice{font-size:11px;padding:8px}.booking-page header{padding:30px 0;border-bottom:1px solid var(--line)}.booking-page .brand{display:block;font:28px Georgia;letter-spacing:4px}.booking-page .brand-small{font:9px sans-serif;margin-top:7px}.return-link{font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:6px}.booking-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:65px 0 40px}.booking-intro h1{font:64px/1.08 Georgia;letter-spacing:-2px;margin:20px 0 0}.booking-intro h1 em{font-weight:400}.booking-intro>p{font-size:14px;line-height:1.8;color:var(--muted)}.trip-controls{display:grid;grid-template-columns:1fr 1fr .8fr 1.3fr;gap:30px;align-items:end;padding:28px 32px;background:#fff;border:1px solid var(--line)}.trip-controls label{font-size:11px;letter-spacing:1px}.trip-controls input,.trip-controls select{width:100%;min-width:0;display:block;padding:15px 0 8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:16px}.custom-button,.select-stay{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;background:var(--ink);border:1px solid var(--ink);color:white;padding:10px 10px 10px 22px;min-height:52px;text-decoration:none;border-radius:40px;font-size:12px;cursor:pointer;transition:background .3s,color .3s}.button-mark{width:32px;height:32px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s}.button-mark:before{content:"";width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);margin-left:-3px}.custom-button:hover:not(:disabled),.select-stay:hover{background:#3e5b4d}.custom-button:hover .button-mark,.select-stay:hover .button-mark{transform:rotate(-35deg)}.custom-button:disabled{opacity:.45;cursor:not-allowed}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:50px;padding:55px 0}.options-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.options-top h2{font:33px Georgia;margin:0}.options-top p{font-size:11px;color:var(--muted)}.category-filters{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.category-filters button{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:30px;padding:10px 17px;font-size:11px}.category-filters button[aria-pressed=true]{background:var(--ink);color:white}.stay-card{display:grid;grid-template-columns:45% 1fr;gap:28px;border-bottom:1px solid var(--line);padding:0 0 28px;margin-bottom:28px}.stay-card[hidden]{display:none}.stay-card>img{width:100%;height:260px;object-fit:cover;border-radius:4px}.stay-card>div{padding:8px 0;display:flex;flex-direction:column;align-items:start}.stay-card h3{font:28px/1.15 Georgia;margin:12px 0}.stay-card p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:25px}.stay-card .eyebrow{font-size:9px;letter-spacing:1.5px}.select-stay{margin-top:auto;background:transparent;color:var(--ink);border-color:var(--line);font-size:11px;padding:8px 8px 8px 16px;min-height:44px}.select-stay:hover{color:white}.select-stay .button-mark{width:27px;height:27px}.stay-card.selected{border-bottom-color:var(--ink)}.stay-card.selected .select-stay{background:var(--ink);color:white}.trip-summary{position:sticky;top:25px;align-self:start;background:#ecefe7;padding:30px;border:1px solid var(--line)}.trip-summary h2{font:30px/1.2 Georgia;margin:15px 0 30px}.trip-summary .eyebrow{font-size:9px}.trip-summary dl{margin:0}.trip-summary dl>div{padding:15px 0;border-top:1px solid var(--line)}.trip-summary dt{font-size:11px;color:var(--muted)}.trip-summary dd{margin:5px 0 0;font-size:15px}.trip-summary #trip-status{font-size:12px;margin:22px 0;line-height:1.7}.trip-summary .custom-button{width:100%}.help-link{display:block;text-align:center;font-size:11px;margin:20px 0;text-underline-offset:5px}.summary-small{font-size:10px;color:var(--muted);line-height:1.8}.relocation{border-top:1px solid var(--line);padding:55px 0 80px;max-width:780px}.relocation h2{font-size:38px}.relocation>p{color:var(--muted);font-size:14px}.relocation .custom-button{margin-top:18px}.booking-page footer{font-size:11px}.booking-page :focus-visible{outline:3px solid #aa875c;outline-offset:4px}
@media(max-width:900px){.booking-page .wrap{width:calc(100% - 40px)}.booking-intro{display:block;padding:40px 0 25px}.booking-intro h1{font-size:48px}.trip-controls{grid-template-columns:1fr 1fr;gap:22px;padding:22px}.booking-layout{grid-template-columns:1fr;gap:30px}.trip-summary{position:static;grid-row:1}.trip-summary h2{font-size:25px}.trip-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trip-summary dl>div:last-child{grid-column:1/-1}.stay-card{gap:20px}.stay-card>img{height:230px}.stay-card h3{font-size:24px}.relocation h2{font-size:32px}}
@media(max-width:540px){.booking-page header{padding:20px 0}.return-link{max-width:140px;font-size:10px;text-align:right}.stay-card{grid-template-columns:1fr;gap:10px}.stay-card>img{height:250px}.stay-card>div{padding:10px 0}.options-top h2{font-size:28px}.trip-controls .custom-button{font-size:10px;padding-left:15px;gap:8px}.category-filters button{padding:9px 12px}.trip-summary{padding:22px}}
.stay-card{position:relative;background:#fff;border:1px solid #e0e4d9;border-radius:15px;padding:12px;box-shadow:0 4px 8px #293e3005,0 18px 35px #293e3009;transition:transform .35s,box-shadow .35s;gap:28px;isolation:isolate}.stay-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #293e3009,0 24px 45px #293e3014}.stay-photo-link{display:block;overflow:hidden;border-radius:9px;min-width:0}.stay-photo-link img{display:block;width:100%;height:285px;object-fit:cover;transition:transform .6s}.stay-card:hover .stay-photo-link img{transform:scale(1.035)}.stay-card>div{padding:15px 18px 15px 0}.stay-card h3 a{text-decoration:none}.area-tag{display:inline-block;font-size:10px;letter-spacing:.5px;color:#647664;background:#edf1e8;padding:5px 10px;border-radius:20px;margin:0 0 4px}.explore-stay{font-size:11px;text-underline-offset:5px;margin-bottom:18px;color:#67755e}.custom-button,.select-stay{box-shadow:inset 0 1px 0 #ffffff35,0 5px 10px #233d3412;transition:background .3s,box-shadow .3s,transform .3s}.custom-button:active,.select-stay:active{transform:translateY(1px)}.stay-card.selected{border:1px solid #6f8069;box-shadow:0 18px 35px #293e3014}.stay-options>.muted{font-size:11px}.stay-photo-link:focus-visible{outline-offset:3px}
@media(max-width:540px){.stay-card>div{padding:10px}.stay-photo-link img{height:250px}.stay-card{gap:8px}.stay-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.stay-photo-link{align-self:start;background:#f1eee7}
.stay-photo-link img{height:auto;aspect-ratio:3/2;object-fit:contain}
.stay-card:hover .stay-photo-link img{transform:none}
.relocation-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin-top:18px;min-width:0}
.relocation-actions .custom-button{margin:0;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.relocation .relocation-request{background:transparent;color:var(--ink);border:1px solid var(--line)}
@media(max-width:600px){.relocation-actions .custom-button{display:flex;width:100%;justify-content:center}}
