.homes-page{max-width:1100px;margin:auto;padding:24px 0 60px}.homes-heading{padding:22px 0 38px}.homes-heading h1{font-size:clamp(30px,5vw,46px);letter-spacing:-2px;margin:10px 0 18px}.homes-heading p:last-child{color:#776b5e;line-height:1.9}/* Directory heading and search share one row on wide screens. */
.homes-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 20px;border-bottom:1px solid #e7dfd1}
.homes-list-heading{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.homes-list-heading h2{font-size:22px;line-height:1.4;margin:0;letter-spacing:-.7px}
.homes-list-heading #saved-home{font-size:12px}
.homes-search{display:flex;align-items:stretch;gap:8px;flex:0 1 420px;min-width:0;margin:0}
.homes-search-field{display:flex;align-items:center;gap:10px;flex:1;min-width:0;height:48px;padding:0 14px;border:1px solid #ded5c5;border-radius:12px;background:#fffdf8;color:#9a8b77}
.homes-search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #e9532514}
.homes-search-field svg{flex:none}
.homes-search-field input{flex:1;width:100%;min-width:0;height:46px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;font-size:14px;line-height:normal;letter-spacing:-.025em;outline:0}
.homes-page .homes-search-field input:focus-visible{outline:0}.homes-search-field input::placeholder{color:#958a7b}
.homes-page .homes-search button{flex:0 0 76px;width:76px;height:48px;min-height:48px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--accent);border:1px solid var(--accent);color:white;font-size:14px;font-weight:600;line-height:1}
.homes-page .homes-search button:hover{background:#cf4218;border-color:#cf4218}
.homes-page button{min-height:44px}
#homes-status{font-size:13px;color:#837665;margin:18px 0 0}
.homes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.home-door{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid #e1d9c9;border-radius:22px;background:#fffdf7;padding:16px;transition:transform .16s}.home-door:hover{transform:translateY(-4px);border-color:#cc8c64}.home-door-picture{display:flex;align-items:center;flex-direction:column;background:#f3ede0;border-radius:14px;min-height:190px;margin-bottom:16px;padding:16px;background-image:linear-gradient(90deg,transparent 49%,#e9e0cc 50%,transparent 51%);background-size:48px 48px}.home-door:nth-child(3n+2) .home-door-picture{background-color:#eaf0e6}.home-door:nth-child(3n) .home-door-picture{background-color:#f8e9df}.home-door-window{font-size:11px;color:#766653;background:#fffdf7;padding:5px 12px;border-radius:20px}.home-door strong{font-size:20px;margin:0 0 6px}.home-door-age{font-size:13px;color:#817362}.home-door-link{color:#b04d2a;font-size:13px;margin:18px 0 2px}.homes-page [hidden]{display:none!important}.homes-page a:focus-visible,.homes-page button:focus-visible,.homes-page input:focus-visible{outline:3px solid #b04d2a;outline-offset:4px}#home-room{scroll-margin-top:100px}
@media(max-width:760px){.homes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.homes-heading{padding-top:6px}.homes-toolbar{flex-direction:column;align-items:stretch;gap:16px;padding-bottom:18px}.homes-list-heading h2{font-size:20px}.homes-search{flex:none;width:100%}.homes-search-field{padding:0 12px;gap:8px}.homes-search-field input{font-size:13px}.homes-page .homes-search button{flex-basis:64px;width:64px;font-size:13px}.home-door{padding:10px;border-radius:16px}.home-door strong{font-size:17px}.home-door-picture{min-height:150px;padding:8px}.home-door canvas{width:120px;height:120px}.home-door-window{font-size:10px;padding:4px 6px}}@media(prefers-reduced-motion:reduce){.home-door{transition:none}.home-door:hover{transform:none}}

.home-art-placeholder{display:flex;align-items:center;justify-content:center;min-height:144px;font-size:12px;color:#837360;text-align:center}.home-door-picture:has(.home-art-placeholder){justify-content:space-between}
.homes-page button{border:1px solid #d9cbb8;border-radius:12px;background:#fffaf2;color:#67563f;padding:9px 16px;font-size:13px}.homes-page button:hover{background:#f2e7d5}.homes-page button:disabled{opacity:.5;cursor:default}

