/* A shared photographic system for discovery, rooms, and comparison. */
.discovery-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:24px 0 29px;border-top:1px solid var(--line)}
.discovery-intro .eyebrow{margin:0 0 10px;color:var(--muted);font-size:.75rem;letter-spacing:1.7px}.discovery-intro h1{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,3.2vw,3.3rem);letter-spacing:-1.7px;line-height:1.15;margin:0}
.browse-modes{display:flex;padding:5px;background:#f1f4f8;border-radius:9px;flex:none}.browse-modes button{font-size:.875rem;padding:9px 18px;border-radius:6px}.browse-modes button[aria-pressed=true]{background:white;box-shadow:0 2px 7px #10264b12;color:var(--blue)}
.visual-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 24px}.visual-filters>span{font-size:.875rem;color:var(--muted);margin-right:12px}.visual-filters button{font-size:.875rem;padding:7px 14px;border:1px solid var(--line);border-radius:30px}.visual-filters button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}
.discovery-results{margin-bottom:28px}.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.card-media{position:relative}.discovery-grid .card-image{aspect-ratio:1.43;border-radius:9px}.card-category{position:absolute;top:15px;left:15px;background:#fffef9ed;padding:5px 10px;border-radius:4px;font-size:.75rem;pointer-events:none}.card-photo-controls{position:absolute;bottom:13px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;color:white}.card-photo-controls button{pointer-events:auto;background:#10203085;color:white;width:32px;height:32px;border-radius:50%;font-size:24px;line-height:1}.card-photo-controls>span{font-size:.75rem;background:#102030a6;border-radius:20px;padding:5px 11px}.card-copy{padding:18px 0 14px;display:block}.card-price{font-size:1.6rem;font-weight:500;margin:0 0 6px}.card-title{font-family:var(--serif);font-size:1.5rem;letter-spacing:-.45px;margin-bottom:5px}.card-place,.card-facts{font-size:.875rem}.card-finance{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;font-size:.8125rem}.card-finance strong{font-weight:500;color:var(--blue);font-size:1rem}.card-finance button{font-size:.8125rem;color:var(--muted);padding:7px 0;text-align:right}.home-card{transition:transform .2s}.home-card:focus-within .card-image{outline-color:var(--blue)}
.discovery-results.with-map{display:grid;grid-template-columns:1.12fr 1fr;gap:30px}.with-map .discovery-grid{grid-template-columns:1fr 1fr;gap:24px}.with-map .card-finance{display:block}.with-map .card-finance button{display:block}.with-map .card-title{font-size:1.3rem}#discovery-map{position:sticky;top:20px;align-self:start;border:1px solid var(--line);border-radius:12px;overflow:hidden}#browse-map{border:0;width:100%;height:430px;background:#f0f4f7;display:block}.map-caption{padding:22px}.map-caption strong{font-family:var(--serif);font-size:1.4rem;font-weight:400}.map-caption p{font-size:.8125rem;color:var(--muted);margin:7px 0 14px}.map-caption button{padding:7px 13px;border:1px solid var(--line);border-radius:5px;font-size:.875rem;margin-right:8px}
.property-media-nav{display:flex;gap:25px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line);overflow-x:auto;white-space:nowrap}.property-media-nav>span{color:var(--muted);font-size:.875rem;margin-right:auto}.property-media-nav button{font-size:.875rem;padding:6px 0}.property-media-nav button:last-child{color:var(--blue)}
.property-gallery{aspect-ratio:2.5;grid-template-columns:1.65fr 1fr}.property-main-photo{border-top-left-radius:12px}.property-gallery .property-kitchen-photo{border-top-right-radius:12px}.property-gallery .property-living-photo{border-bottom-right-radius:12px}.property-identity h2{font-size:clamp(2.3rem,4vw,3.5rem)}
.gallery-dialog{width:1400px}.room-tabs{gap:15px}.room-tabs button{width:150px;font-size:.875rem;text-align:left;padding-bottom:9px}.room-thumbnail{display:block;width:100%;height:78px;border-radius:5px;background-repeat:no-repeat;margin-bottom:7px;pointer-events:none}.room-view{width:min(100%,calc((100svh - 380px) * var(--room-ratio,1.9)))}
.compare-dialog{width:1380px}.comparison-photo{height:225px;border-radius:8px}.comparison-table th:first-child{width:145px}.comparison-table{min-width:760px}.comparison-name{display:block}.comparison-table th,.comparison-table td{padding:18px}.comparison-table tbody tr:nth-child(3),.comparison-table tbody tr:nth-child(4){background:#f4f7fc}.comparison-table tbody tr:nth-child(3) th,.comparison-table tbody tr:nth-child(4) th{padding-left:12px}.comparison-table .emphasis{font-size:1.7rem}
/* Individually sourced media adapts to every surface without collage cropping. */
[data-home= garden] .main-photo,[data-home=garden] .property-main-photo{background-image:var(--exterior);background-size:cover;background-position:center}
[data-home=garden] .kitchen-photo,[data-home=garden] .property-kitchen-photo{background-image:var(--kitchen);background-size:cover;background-position:center}
[data-home=garden] .living-photo,[data-home=garden] .property-living-photo{background-image:var(--living);background-size:cover;background-position:center}
.room-card-image.kitchen{background-image:var(--kitchen,var(--gallery));background-size:var(--photo-fit,var(--right-size) var(--top-size))}.room-card-image.living{background-image:var(--living,var(--gallery));background-size:var(--photo-fit,var(--right-size) var(--bottom-size))}.layout-room-photo{background-image:var(--kitchen,var(--gallery));background-size:var(--photo-fit,var(--right-size) var(--top-size))}.layout-room-photo.living{background-image:var(--living,var(--gallery));background-size:var(--photo-fit,var(--right-size) var(--bottom-size))}.application-photo[data-home=garden]{background-image:var(--exterior);background-size:cover;background-position:center}
@media(min-width:1500px){.discovery-grid .card-image{aspect-ratio:1.5}.discovery-intro{padding-top:30px;padding-bottom:34px}}
@media(max-width:1100px){.discovery-grid{gap:18px}.card-finance{display:block}.card-finance button{display:block}.discovery-intro h1{font-size:2.4rem}.browse-modes button{padding:9px 12px}.discovery-results.with-map{grid-template-columns:1fr 1fr}.with-map .discovery-grid{grid-template-columns:1fr}.comparison-photo{height:170px}}
@media(max-width:750px){.discovery-intro{align-items:flex-start;flex-direction:column;gap:22px;padding:18px 0 24px}.discovery-intro h1{font-size:2.6rem;max-width:440px}.browse-modes{width:100%}.browse-modes button{flex:1}.visual-filters{gap:8px}.visual-filters>span{width:100%;margin:0 0 4px}.discovery-grid{grid-template-columns:1fr;gap:24px}.discovery-grid .card-image{aspect-ratio:1.6}.card-copy{padding-top:15px}.card-title{font-size:1.65rem}.card-finance{display:flex}.card-finance button{display:inline}.discovery-results.with-map{display:flex;flex-direction:column-reverse}.with-map .discovery-grid{grid-template-columns:1fr}#discovery-map{position:static;width:100%}#browse-map{height:260px}.map-caption{padding:17px}.property-media-nav{gap:20px;padding:12px 0}.property-media-nav>span{display:none}.property-gallery{aspect-ratio:1.4;grid-template-columns:1fr 1fr}.room-tabs{flex-wrap:nowrap;gap:10px}.room-tabs button{width:30%;font-size:.8125rem}.room-thumbnail{height:65px}.room-view{width:100%;min-height:190px}.comparison-photo{height:150px}.comparison-table{min-width:720px}.comparison-table th:first-child{width:115px}.comparison-table th,.comparison-table td{padding:12px}.compare-dialog .dialog-heading h2{font-size:2rem}.gallery-dialog{padding:18px}.discovery-intro .eyebrow{font-size:.75rem}.property-gallery .property-kitchen-photo,.property-gallery .property-living-photo{border-radius:0}}
.results-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.results-controls p{font-size:.875rem;color:var(--muted);margin:0}.results-controls label{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:.875rem}.results-controls select{width:auto;margin:0;border:0;padding:8px 26px 8px 8px;font-size:.875rem;max-width:210px;background:var(--soft);border-radius:5px}.compare-access #compare-count{display:grid;place-items:center;background:var(--blue);color:white;font-size:.75rem;min-width:22px;height:22px;border-radius:50%;padding:0 4px}.card-shortlist{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 0 12px}.card-shortlist button{font-size:.875rem;padding:7px 0;display:flex;align-items:center;gap:7px}.card-shortlist .icon{width:17px;height:17px}.card-shortlist button[aria-pressed=true]{color:var(--blue)}.card-shortlist button[data-card-plan]{color:var(--muted)}.card-finance,.card-finance button{font-size:.875rem}.photo-next-step{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:650px;margin:18px auto}.photo-next-step .primary-button{padding:11px 18px}.room-view{width:min(100%,calc((100svh - 450px) * var(--room-ratio,1.9)))}.map-fallback{display:block;color:var(--blue);font-size:.875rem;margin-bottom:17px}.map-caption button{margin-bottom:5px}
@media(max-width:1100px) and (min-width:751px){.card-shortlist{flex-wrap:wrap;gap:2px}.card-shortlist button{font-size:.875rem}}
@media(max-width:750px){.results-controls{align-items:flex-start}.results-controls label{font-size:0;gap:0}.results-controls select{max-width:175px;font-size:.875rem}.results-controls p{max-width:150px;font-size:.8125rem}.toolbar-actions button.compare-access{font-size:.8125rem;gap:6px}.toolbar-actions{gap:14px}.compare-access .icon{display:none}.card-shortlist button{font-size:.875rem}.photo-next-step{gap:12px;margin:15px 0}.photo-next-step .primary-button{font-size:.875rem;padding:11px 14px}.photo-next-step .text-link{font-size:.875rem}.room-view{width:100%}.room-thumbnail{height:55px}}

/* Primary discovery search */
.home-search{margin:0 0 28px;max-width:880px}.home-search>label{display:block;font-size:1rem;font-weight:600;margin-bottom:12px;color:#102447}.home-search-field{display:flex;align-items:center;gap:15px;padding:8px 8px 8px 20px;border:1px solid #a8bbd6;border-radius:7px;background:white;box-shadow:0 5px 20px #153b7710}.home-search-field:focus-within{outline:2px solid #0753ee;outline-offset:2px}.home-search-field>.icon{flex-shrink:0;color:#526e94}.home-search input{border:0;background:transparent;outline:none;min-width:0;flex:1;font:inherit;font-size:1rem;color:#102447;padding:12px 0}.home-search input::placeholder{color:#65758e}.home-search button{cursor:pointer;font:inherit;font-size:.875rem}.search-submit{display:flex;align-items:center;gap:20px;border:0;border-radius:4px;background:#0753ee;color:white;padding:15px 19px;white-space:nowrap}.search-submit:hover{background:#003ebf}#clear-home-search{border:0;background:transparent;color:#526786;padding:10px}.home-search>p{font-size:.8125rem;color:#65758e;margin:9px 0 0}.home-search button:focus-visible{outline:2px solid #0753ee;outline-offset:3px}@media(max-width:600px){.home-search{margin-bottom:22px}.home-search-field{gap:9px;padding-left:12px;flex-wrap:wrap}.home-search input{flex-basis:calc(100% - 85px)}.home-search .search-submit{justify-content:center;flex:1}.home-search>label{font-size:1rem}.home-search input{font-size:1rem}#clear-home-search{order:2}.home-search .search-submit{order:3}}

.possible-homes{margin:0 0 28px;padding:26px;background:#f2f7ff;border:1px solid #d9e5f6;border-radius:10px}.possible-top{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:22px}.possible-top .eyebrow{font-size:.75rem;margin:0 0 8px;color:#526e94}.possible-top h2{font-family:Arial,sans-serif;font-size:1.65rem;letter-spacing:-.04em;margin:0 0 8px}.possible-top p{font-size:1rem;color:#526786;margin:0}.readiness{font-size:.75rem;color:#486184;background:#e7effb;padding:6px 9px;border-radius:4px;display:inline-block;white-space:normal;line-height:1.4}.budget-inputs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;align-items:center}.possible-homes label{display:block;font-size:.875rem;color:#243e62}.possible-homes input:not([type=checkbox]),.possible-homes select{width:100%;padding:12px;margin-top:8px;background:white;border:1px solid #bfcee2;border-radius:4px;font:inherit;font-size:1rem}.possible-homes input[type=checkbox]{width:17px;height:17px;margin:0 8px 0 0;accent-color:#0753ee;flex:none}.possible-only{display:flex!important;align-items:center;line-height:1.5}.life-controls{margin:18px 0;border-top:1px solid #d2e0f2;padding-top:16px}.life-controls summary,.life-fit summary,.path-options summary{font-size:.9375rem;cursor:pointer;color:#1d477f;padding:5px 0}.life-inputs{display:grid;grid-template-columns:.6fr 1.4fr 1fr;gap:20px;margin-top:15px}.priority-checks{display:flex;gap:25px;flex-wrap:wrap;margin-top:20px}.priority-checks label{display:flex;align-items:center}.life-controls p,#possible-status{font-size:.8125rem;line-height:1.6;color:#526786;margin:14px 0 0}.possible-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.possible-actions button{font-size:.875rem}.possible-actions span{font-size:.75rem;color:#526786}.possible-card-note{border-top:1px solid #dce5f1;padding:13px 0;display:flex;align-items:center;gap:14px;justify-content:space-between}.possible-card-note button{font-size:.875rem;line-height:1.5;color:#0753ee;text-align:right}.map-possibilities{padding:22px;border-bottom:1px solid #dce5f1}.map-possibilities h3{font-family:Arial,sans-serif;font-size:1.25rem;margin:0 0 8px}.map-possibilities p{font-size:.8125rem;color:#526786;line-height:1.5}.map-possibilities h4{font-size:.875rem;margin:20px 0 7px}.map-possibilities button{width:100%;display:flex;gap:12px;justify-content:space-between;text-align:left;padding:13px 0;border-top:1px solid #e1e8f2;font-size:.875rem}.map-possibilities small{display:block;font-size:.75rem;color:#526786;margin-top:5px;line-height:1.4}.map-possibilities strong{white-space:nowrap;color:#0753ee}.property-possibilities{background:#f5f8fd;border:1px solid #d9e5f5;border-radius:8px;padding:26px;margin:0 0 30px}.possibility-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.possibility-heading h3{font-family:Arial,sans-serif;font-size:1.5rem;letter-spacing:-.03em;margin:8px 0 18px}.fit-summary{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:18px}.fit-summary span,.fit-summary small{display:block;font-size:.875rem;color:#526786}.fit-summary strong{display:block;font-size:1.7rem;margin:8px 0}.path-options,.life-fit{border-top:1px solid #d9e5f5;padding:15px 0}.path-options>p,.possible-muted{font-size:.875rem;line-height:1.6;color:#526786}.path-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.path-cards article{background:white;border:1px solid #dce5f1;padding:20px;border-radius:5px}.path-cards h4{font-size:1.0625rem;margin:0 0 8px}.path-cards p{font-size:.8125rem;line-height:1.5;color:#526786;margin:10px 0}.path-cards strong{display:block;font-size:1.65rem;margin:16px 0 7px;color:#10396e}.path-cards strong small{font-size:.8125rem;font-weight:400}.path-cards article>span{font-size:.875rem}.path-cards button,.next-step-line button{color:#0753ee;font-size:.875rem;padding:10px 0}.fit-evidence{padding:0;list-style:none}.fit-evidence li{display:flex;justify-content:space-between;gap:25px;padding:12px 0;border-bottom:1px solid #e0e8f4;font-size:.875rem;line-height:1.5}.fit-evidence li span{color:#526786;max-width:60%}.next-step-line{border-top:1px solid #d9e5f5;display:flex;justify-content:space-between;gap:25px;align-items:center;padding-top:16px}.next-step-line p{font-size:.875rem;line-height:1.6;color:#526786}.next-step-line button{flex:none}.unresolved-path{background:#fff;padding:15px;border-left:3px solid #526e94}
@media(max-width:750px){.possible-homes{padding:20px}.possible-top{display:block}.possible-top>.readiness{margin-top:12px}.budget-inputs,.life-inputs{grid-template-columns:1fr}.budget-inputs{gap:15px}.possible-actions{gap:14px}.possible-actions .primary-button{width:100%;justify-content:center}.property-possibilities{padding:20px}.possibility-heading{display:block}.possibility-heading>.readiness{margin-bottom:18px}.fit-summary{gap:16px}.fit-summary strong{font-size:1.4rem}.path-cards{grid-template-columns:1fr}.fit-evidence li{display:block}.fit-evidence li span{display:block;max-width:none;margin-top:6px}.next-step-line{display:block}.map-possibilities{padding:17px}}

/* Compact buying preferences keep the listings in view. */
.possible-homes{padding:0;margin-bottom:18px;border-radius:8px}.possible-compact{display:flex;align-items:center;gap:18px;min-height:68px;padding:16px 20px;cursor:pointer;list-style:none}.possible-compact::-webkit-details-marker{display:none}.possible-compact strong{font-size:1rem;white-space:nowrap}.possible-compact #possible-budget-summary{font-size:.875rem;color:#526786;flex:1;line-height:1.5}.possible-estimate{font-size:.75rem;color:#64758c}.possible-edit{display:flex;align-items:center;gap:9px;font-size:.875rem;color:#0753ee;white-space:nowrap}.possible-edit .when-open{display:none}#possible-panel[open] .when-open{display:inline}#possible-panel[open] .when-closed{display:none}#possible-panel[open] .possible-edit>span:last-child{transform:rotate(180deg)}#possible-panel[open]>.possible-compact{border-bottom:1px solid #d9e5f6}#possible-form{padding:20px}.possible-compact:focus-visible{outline:2px solid #0753ee;outline-offset:3px;border-radius:8px}@media(max-width:750px){.possible-homes{padding:0}.possible-compact{padding:14px 16px;gap:7px 12px;flex-wrap:wrap}.possible-compact strong{flex:1}.possible-compact #possible-budget-summary{order:3;flex-basis:100%}.possible-estimate{display:none}.possible-edit{font-size:.8125rem}#possible-form{padding:16px}}

.home-search{max-width:1100px}.home-search-row{display:flex;align-items:stretch;gap:12px}.home-search-row .home-search-field{flex:1;min-width:0}.search-refine{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;min-height:56px;border:1px solid #a8bbd6;border-radius:7px;background:#fff;color:#102447;font-weight:600!important;white-space:nowrap}.search-refine:hover{background:#f0f5ff;border-color:#0753ee}.search-refine[aria-expanded=true]{background:#edf3ff;border-color:#0753ee}
.home-search-row>.search-submit{justify-content:center}
@media(max-width:600px){.home-search-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.home-search-row .home-search-field{grid-column:1/-1;flex-wrap:nowrap;padding:10px 12px;gap:10px}.home-search-row .home-search-field>.address-suggest{min-width:0;flex:1}.home-search-field datalist{display:none}.home-search-field #clear-home-search{padding:6px}.home-search-row>.search-submit{grid-column:1;grid-row:2;justify-content:center;padding:13px 15px;gap:12px}.home-search-row>.search-refine{grid-column:2;grid-row:2;min-height:48px;padding:0 20px}.home-search-row .address-suggestions{min-width:0}.home-search>p{line-height:1.5}}

/* Keep budgeting in the selected home, with progressive detail. */
.property-possibilities{padding:18px 22px;margin-bottom:22px;background:#fff}
.property-possibilities .possibility-heading{align-items:center;margin-bottom:14px}
.property-possibilities .possibility-heading .eyebrow{font-size:.75rem;margin:0 0 5px}
.property-possibilities .possibility-heading h3{font:600 1.25rem/1.3 "Segoe UI",Arial,sans-serif;margin:0}
.possibility-heading>button{color:#064eff;font-size:.875rem;min-height:44px}
.inline-home-budget{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px 16px;align-items:start}
.inline-home-budget label{font-size:.875rem;color:#365376;min-width:0}
.inline-home-budget input{display:block;width:100%;min-width:0;box-sizing:border-box;border:1px solid #b9cbe4;background:white;color:#102447;border-radius:8px;padding:10px 12px;font:600 1.125rem/1.4 "Segoe UI",Arial,sans-serif;font-variant-numeric:tabular-nums;margin-top:6px}
.inline-home-budget input:focus-visible{outline:2px solid #064eff;outline-offset:2px}
.inline-home-budget label small{display:block;font-size:.8125rem;margin-top:4px;color:#526786}
.inline-home-budget>button{background:#064eff;color:#fff;border:0;border-radius:8px;padding:12px 16px;min-height:46px;margin-top:24px;font-size:.875rem;font-weight:600}
.inline-home-budget .inline-budget-status{grid-column:1/-1;font-size:.8125rem;margin:0;color:#365376;line-height:1.5}
.inline-budget-status:empty{display:none}
.budget-context{display:flex;gap:12px 28px;flex-wrap:wrap;font-size:.8125rem;color:#526786;padding:12px 0}.budget-context strong{color:#102447;font-variant-numeric:tabular-nums}
.property-possibilities .path-options,.property-possibilities .life-fit{padding:7px 0}
.possible-card-note{display:block!important;padding:0!important}
.card-budget-editor{width:100%}.card-budget-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:48px;padding:12px 18px;font-size:.8125rem;color:#526786;list-style:none}
.card-budget-editor>summary::-webkit-details-marker{display:none}.card-budget-editor>summary strong{font-size:.875rem;font-weight:500;color:#064eff;text-align:right}
.card-budget-editor .inline-home-budget{padding:0 18px 16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.card-budget-editor .inline-home-budget>button{grid-column:1/-1;margin-top:0;text-align:center;color:#fff}
.card-extra-facts{font-size:.8125rem;line-height:1.6;color:#526786;margin:4px 0 12px}
@media(max-width:600px){.property-possibilities{padding:16px}.property-possibilities .possibility-heading{align-items:start;gap:8px}.possibility-heading>button{max-width:145px;text-align:right}.inline-home-budget{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.inline-home-budget>button{grid-column:1/-1;margin-top:0}.budget-context{gap:8px 16px}}
