/* Home search: a compact editorial card with progressive detail. */
#floatingSearch.home-search-card{width:min(460px,calc(100vw - 48px));padding:24px;top:104px;right:max(30px,calc((100vw - 1360px)/2));border-radius:22px;background:#fffefb;color:#102d3b;border:1px solid #ffffffb3;box-shadow:0 24px 80px #071c2445;max-height:calc(100dvh - 130px);overflow:auto;scrollbar-width:thin;scrollbar-color:#bdcbc0 transparent;overscroll-behavior:contain}
#floatingSearch .search-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
#floatingSearch .home-search-eyebrow{display:block;font-size:9px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#728278;margin-bottom:7px}
#floatingSearch h2{font-size:24px;line-height:1.2;letter-spacing:-.8px;margin:0;color:#102d3b}
#floatingSearch .search-close{width:32px;height:32px;min-height:32px;flex:none;border:1px solid #e6ebe3;background:#f2f5ef;color:#33584b;font-size:20px;border-radius:50%;padding:0;display:grid;place-items:center}
#floatingSearch .home-search-tabs{display:flex;gap:4px;margin:0 0 18px;border:0;background:#edf1e9;padding:4px;border-radius:12px}
#floatingSearch .home-search-tabs .tab{flex:1;border:0;border-radius:9px;padding:10px 6px;font-size:12px;color:#62756a;transition:background .16s,color .16s,box-shadow .16s}
#floatingSearch .home-search-tabs .tab.active{background:#fff;color:#102d3b;box-shadow:0 2px 7px #102d3b12}
#floatingSearch .home-search-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;align-items:start}
#floatingSearch .home-search-field{display:block;min-width:0;margin:0;letter-spacing:0;text-transform:none}
#floatingSearch .home-search-field>span,#floatingSearch .home-search-budget legend{display:block;font-size:10px;letter-spacing:.3px;font-weight:700;color:#607568;margin:0 0 7px}
#floatingSearch .home-search-field input,#floatingSearch .home-search-field select,#floatingSearch .home-search-budget input{width:100%;min-width:0;height:43px;min-height:43px;padding:0 11px;background:#fff;border:1px solid #dfe6dc;border-radius:9px;font-size:12px;font-weight:500;color:#102d3b;outline:none;text-overflow:ellipsis}
#floatingSearch input::placeholder{color:#8b968e;opacity:1}
#floatingSearch input:focus,#floatingSearch select:focus{border-color:#729781;box-shadow:0 0 0 3px #7297811c}
#floatingSearch :focus-visible{outline:2px solid #537f68;outline-offset:3px}
#floatingSearch input:focus-visible,#floatingSearch select:focus-visible{outline:none}
#floatingSearch select:disabled{background:#f2f3ef;color:#9aa39b;cursor:not-allowed}
#floatingSearch .home-search-location{grid-column:1/-1}
#floatingSearch .home-search-location input{height:47px;font-size:13px;background:#f9faf6}
#floatingSearch .home-search-budget{padding:0;margin:0;border:0;min-width:0}
#floatingSearch .home-search-budget>div{display:flex;align-items:center;gap:5px}
#floatingSearch .home-search-budget>div>span{color:#97a398;font-size:11px}
#floatingSearch .home-search-budget input{padding:0 7px;font-size:11px;appearance:textfield;-moz-appearance:textfield}
#floatingSearch input[type=number]::-webkit-inner-spin-button{appearance:none}
#floatingSearch .home-budget-hint{grid-column:1/-1;color:#7b887f;font-size:10px;line-height:1.4;margin:-7px 0 0;max-width:none;text-shadow:none}
#floatingSearch .home-search-more{grid-column:1/-1;border-top:1px solid #e6ebe2;padding-top:12px;margin:0}
#floatingSearch .home-search-more>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:#365c4b;font-size:12px;font-weight:600;list-style:none;padding:1px 0 3px}
#floatingSearch summary::-webkit-details-marker{display:none}
#floatingSearch .home-search-more small{font-size:11px;color:#6a816f}
#floatingSearch .home-search-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 4px 3px 0}
#floatingSearch details[open] .home-search-chevron{transform:rotate(225deg);margin-bottom:-3px}
#floatingSearch .home-search-extra{display:grid;grid-template-columns:1fr 1fr;gap:13px 12px;padding-top:15px}
#floatingSearch .home-search-checks{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}
#floatingSearch .home-search-checks label{display:flex;align-items:center;gap:7px;border:1px solid #e4e9df;background:#fafbf7;border-radius:8px;padding:9px;margin:0;color:#496350;letter-spacing:0;text-transform:none;font-size:11px;font-weight:500;cursor:pointer}
#floatingSearch .home-search-checks label:has(input:checked){background:#edf4e5;border-color:#9eb69a;color:#102d3b}
#floatingSearch .home-search-checks input{width:13px;height:13px;min-height:0;margin:0;accent-color:#244c3c;padding:0}
#floatingSearch .home-search-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:14px;margin:1px 0 0;min-height:47px;padding:12px;border-radius:10px;font-size:13px;background:#102d3b;color:#fff;transition:background .18s}
#floatingSearch .home-search-submit:hover{background:#2b5a46}
#floatingSearch .home-search-reset{grid-column:1/-1;justify-self:center;border:0;padding:0 10px;background:transparent;color:#7a897b;font-size:10px;margin:-6px 0 0}
#floatingSearch .home-search-reset:hover{color:#102d3b}
#floatingSearch .home-search-describe{margin:15px 0 0;padding:13px 0 0;border:0;border-top:1px solid #e6ebe2;border-radius:0;background:transparent}
#floatingSearch .home-search-describe>summary{font-size:11px;color:#5d7564;padding:0;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-weight:500}
#floatingSearch .home-search-describe>summary>span{font-size:17px;font-weight:400}
#floatingSearch .home-search-describe[open]>summary>span{transform:rotate(45deg)}
#floatingSearch #premium-natural{padding:14px 0 0}
#floatingSearch #premium-natural label{font-size:10px;margin-bottom:7px;color:#647668}
#floatingSearch #premium-natural>div{display:grid;grid-template-columns:1fr;gap:8px}
#floatingSearch #premium-natural input{min-height:43px;width:100%;font-size:11px;background:#fff;color:#102d3b}
#floatingSearch #premium-natural button{min-height:36px;font-size:11px;border-color:#d8e1d3;background:#f2f6ed;color:#264e3b;border-radius:8px}
#floatingSearch #premium-natural small{font-size:9px;color:#7b887d;display:block;line-height:1.5;margin-top:7px}
@media(min-width:1051px){.home-view:has(.home-search-card.is-open) .hero-content{max-width:calc(100% - 505px)}.home-view:has(.home-search-card.is-open) .hero-content h1{font-size:clamp(43px,4.9vw,76px)}.home-view:has(.home-search-card.is-open) .hero-content p{white-space:normal;max-width:500px}}
@media(max-width:800px){#floatingSearch.home-search-card{position:fixed;top:86px;right:16px;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 102px);z-index:45}}
@media(max-width:480px){#floatingSearch.home-search-card{right:12px;width:calc(100vw - 24px);padding:20px;border-radius:18px;top:81px;max-height:calc(100dvh - 94px)}#floatingSearch h2{font-size:22px}#floatingSearch .home-search-field input,#floatingSearch .home-search-field select,#floatingSearch #premium-natural input{font-size:16px}#floatingSearch .home-search-budget input{font-size:13px}#floatingSearch .home-search-eyebrow{font-size:8px}#floatingSearch .home-search-tabs .tab{min-height:40px}#floatingSearch .search-close{width:36px;height:36px}#floatingSearch .home-search-reset{padding:5px 10px;margin:-8px 0;font-size:11px}}
@media(prefers-reduced-motion:reduce){#floatingSearch.home-search-card,#floatingSearch .tab{transition:none}}
