.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-section{grid-template-columns:.8fr 1.2fr;gap:80px}.booking-simple{padding:32px}.booking-section-label{display:flex;align-items:center;gap:12px;margin:28px 0 17px}.booking-section-label:first-child{margin-top:0}.booking-section-label>span{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;border-radius:50%;background:var(--lime);font-size:10px;font-weight:800}.booking-section-label h3{font-size:20px;letter-spacing:-.6px;margin:0}.compact-packages{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compact-package{position:relative;display:flex;flex-direction:column;gap:14px;padding:18px 15px 16px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.compact-package:has(input:checked){border-color:#899f39;background:#f7fbE9;box-shadow:inset 0 0 0 1px #899f39}.compact-package input{position:absolute;right:12px;top:13px;accent-color:var(--ink);width:15px;height:15px}.compact-package strong{display:block;font-size:13px;line-height:1.45;padding-right:13px}.compact-package small{display:block;font-size:11px;line-height:1.4;margin-top:5px;font-weight:400;color:var(--muted)}.compact-package>b{font-size:28px;letter-spacing:-1px;line-height:1;display:flex;align-items:baseline;gap:5px}.compact-package>b small{font-size:11px;letter-spacing:0}.property-types{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0 0;align-items:center}.property-types legend{float:left;font-size:12px;font-weight:500;letter-spacing:0;line-height:30px;margin:0 10px 0 0}.property-types label,.when-choice label{cursor:pointer;position:relative}.property-types input,.when-choice input{position:absolute;opacity:0;width:1px;height:1px}.property-types span{display:block;font-size:12px;line-height:1.3;padding:9px 12px;border-radius:30px;background:var(--soft);border:1px solid transparent}.property-types input:checked+span{background:var(--ink);color:#fff}.property-types input:focus-visible+span,.when-choice input:focus-visible+span{outline:3px solid #829d3e;outline-offset:3px}.address-wrap{position:relative}.address-wrap input#address-search{padding:17px 14px 17px 39px;font-size:14px;margin:0}.pin-icon{position:absolute;left:13px;top:14px;font-size:22px;line-height:1;pointer-events:none}.address-wrap:focus-within .pin-icon{color:#657c23}#address-results{position:absolute;z-index:12;left:0;right:0;top:calc(100% + 5px);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 25px #17201520;overflow:hidden}#address-suggestions{list-style:none;padding:5px;margin:0;max-height:260px;overflow:auto}#address-suggestions li{padding:10px 12px;cursor:pointer;font-size:13px;border-radius:6px}#address-suggestions li:hover,#address-suggestions li[aria-selected=true]{background:var(--soft)}#address-suggestions strong{display:block}#address-suggestions small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.maps-attribution{padding:5px 15px 10px;font-size:12px;text-align:right;color:#555;letter-spacing:-.3px}#address-note{font-size:11px;margin-top:9px;margin-bottom:5px}.when-choice{display:grid;grid-template-columns:1fr 1fr;gap:5px;border-radius:8px;padding:4px;background:var(--soft);margin-bottom:16px}.when-choice span{display:block;padding:10px 5px;text-align:center;border:1px solid transparent;border-radius:6px;font-size:12px}.when-choice input:checked+span{background:#fff;border-color:#d9dfd0;box-shadow:0 2px 4px #00000006;font-weight:700}.date-strip{display:flex;gap:7px;margin:14px 0 16px;overflow:auto;padding:2px}.date-chip{flex:1;min-width:48px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 4px;font-size:10px;line-height:1.4}.date-chip strong{display:block;font-size:20px;font-weight:700;margin:2px 0}.date-chip.selected{background:var(--lime);border-color:var(--lime)}.date-chip:disabled{opacity:.4;cursor:not-allowed}.booking-simple .form-row>label{font-size:12px;font-weight:500;margin-bottom:8px}.booking-simple .form-row input,.booking-simple .form-row select{font-size:14px;padding:12px 9px}.booking-total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:22px;gap:20px}.booking-total>div>span{font-size:12px;color:var(--muted)}.booking-total strong{display:block;font-size:28px;font-weight:700;letter-spacing:-1px}.booking-total small{font-size:12px;font-weight:400;letter-spacing:0}.booking-total p{font-size:11px;color:var(--muted);text-align:right;line-height:1.6;margin:0}.review-button{width:100%;margin-top:22px}.google-next{font-size:11px;text-align:center;color:var(--muted);margin:13px 0 0}.guarantee{display:flex;gap:14px;margin-top:42px;max-width:330px}.guarantee>span{display:grid;place-items:center;background:var(--lime);width:40px;height:40px;flex-shrink:0;border-radius:50%;font-size:22px}.guarantee strong{font-size:15px;line-height:1.4;display:block}.guarantee p{font-size:13px;color:var(--muted);margin:8px 0}.guarantee a{font-size:11px;text-underline-offset:3px}.review-dialog{border:0;border-radius:18px;padding:30px;max-width:470px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-shadow:0 30px 120px #0004;color:var(--ink)}.review-dialog::backdrop{background:#15200ba8;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.dialog-top .eyebrow{margin:0;font-size:10px}.icon-button{border:0;border-radius:50%;background:var(--soft);color:var(--ink);width:33px;height:33px;flex-shrink:0;font-size:25px;line-height:1}.review-dialog h2{font-size:36px;letter-spacing:-1.6px}.booking-review{margin:25px 0 15px;border-top:1px solid var(--line)}.review-line{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.review-line>span{color:var(--muted);flex-shrink:0}.review-line strong{text-align:right;font-weight:600;max-width:250px;overflow-wrap:anywhere}.review-note{font-size:12px;color:var(--muted);line-height:1.7}#signin-box{border-top:1px solid var(--line);padding-top:20px;margin-top:23px}#signin-box h3{font-size:19px;margin-bottom:7px}#signin-box>p{font-size:12px;color:var(--muted)}#google-signin{min-height:40px;margin:18px 0 8px}.google-unavailable{width:100%;background:#fff;border:1px solid #cfd2d5;border-radius:5px;font-size:14px;min-height:44px;color:#596066;cursor:not-allowed;display:flex;align-items:center;justify-content:center;gap:13px}.google-unavailable svg{width:18px;height:18px}.text-button{display:block;margin:18px auto 0;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;font-size:13px;color:var(--muted)}#confirm-booking{width:100%;margin-top:20px}#signedin-label{font-size:13px;background:var(--soft);padding:12px;border-radius:8px}.account-card{border:1px solid var(--line);border-radius:10px;padding:18px;margin:16px 0}.account-card h3{font-size:16px;letter-spacing:-.2px;line-height:1.4}.account-card p{font-size:12px;color:var(--muted);margin:7px 0}.account-card .status-pill{display:inline-block;background:var(--soft);font-size:10px;font-weight:600;padding:4px 8px;border-radius:20px;margin-bottom:8px}.account-card button{border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:6px;font-size:12px}.account-card button:disabled{cursor:default}.account-dialog #account-status{font-size:13px;color:var(--muted);margin-top:20px}#refund-policy{scroll-margin-top:30px}.header nav .portal-button{font-size:14px;background:none;border:0;font-weight:600;padding:0}.review-dialog .form-error{margin-top:20px}.backend-note{padding:9px 12px;background:var(--soft);border-radius:7px;font-size:12px;color:var(--muted)}@media(max-width:1050px){.booking-section{gap:40px}.booking-simple{padding:24px}}@media(max-width:760px){.booking-section{grid-template-columns:1fr;gap:32px}.booking-simple{padding:23px 20px}.guarantee{max-width:none;margin-top:25px}.compact-package{padding:17px 13px}.booking-section-label{margin-top:25px}.header nav .portal-button{display:none}.date-strip{gap:5px}.date-chip{min-width:41px}.review-dialog{padding:24px}.booking-section-label h3{font-size:19px}}@media(max-width:380px){.booking-simple{padding:20px 15px}.compact-package strong{font-size:12px}.compact-package small{font-size:10px}.property-types legend{width:100%;float:none;line-height:1.5;margin-bottom:8px}.property-types span{font-size:11px}.booking-total p{font-size:10px}}

.maps-attribution{font-weight:400;color:#5e5e5e;white-space:nowrap;font-family:Arial,sans-serif}
