:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,sans-serif;background:#f4f6f2;color:#173126;--surface:rgba(255,255,255,0.94);--surface-muted:#edf2eb;--border:#d5dfd4;--text-muted:#5f6f65;--accent:#275d43;--accent-soft:#e5efe8;--sale:#2c6d4b;--rent:#8b4f1d;--shadow:0 14px 35px rgba(23,49,38,0.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,rgba(164,198,167,.18),transparent 35%),linear-gradient(180deg,#f9fbf8,#eef3ef)}a{color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}@keyframes house{0%,to{transform:scale(1);opacity:.92}50%{transform:scale(1.045);opacity:1}}@keyframes house-delayed{0%,to{transform:scale(1);opacity:.75}50%{transform:scale(1.08);opacity:.9}}@keyframes fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.animate-house{animation:house 4.2s ease-in-out infinite}.animate-house-delayed{animation:house-delayed 5.4s ease-in-out infinite;animation-delay:.4s}.animate-fade-in{animation:fade-in .75s cubic-bezier(.16,1,.3,1) forwards}.breathing-orb,.breathing-orb__svg{display:block;width:100%;height:100%}.breathing-orb__svg{overflow:visible}.breathing-orb__glow-wrap{transform-box:fill-box;transform-origin:center;transform:scale(1.22)}.breathing-orb__glow{filter:blur(10px);opacity:.85}.breathing-orb__core,.breathing-orb__glow{transform-box:fill-box;transform-origin:center}.breathing-orb__core{filter:drop-shadow(0 6px 14px rgba(23,49,38,.18))}.breathing-orb__highlight{opacity:.6;filter:blur(1.5px)}.brand-mark{display:flex;align-items:center;gap:.7rem;text-decoration:none}.brand-mark__orb{display:block;width:min(78vw,34rem);height:min(78vw,34rem);transition:width 1.1s cubic-bezier(.16,1,.3,1),height 1.1s cubic-bezier(.16,1,.3,1)}.brand-mark__text{font-size:1.3rem;font-weight:800;letter-spacing:.09em;color:var(--accent);white-space:nowrap;opacity:0}.landing-intro{position:relative}.landing-mark{position:absolute;top:50vh;left:50%;z-index:50;transform:translate(-50%,-50%);transition:top 1.1s cubic-bezier(.16,1,.3,1),left 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);pointer-events:none}.landing-mark--settled{top:max(1.1rem,env(safe-area-inset-top));left:50%;transform:translate(-50%);pointer-events:auto}.landing-mark--settled .brand-mark__orb{width:2.75rem;height:2.75rem}.landing-mark--settled .brand-mark__text{animation:fade-in .65s cubic-bezier(.16,1,.3,1) .32s forwards}.landing-reveal{opacity:0;transform:translateY(18px);pointer-events:none}.landing-reveal--visible{pointer-events:auto}.landing-reveal--visible.animate-fade-in{animation-delay:.95s}.shell{max-width:1080px;margin:0 auto;padding:2rem 1rem 4rem}.shell--wide{max-width:1240px}.filters-card,.hero,.listing-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow)}.hero,.panel{padding:1.5rem}.stack{display:grid;grid-gap:1rem;gap:1rem}.eyebrow{margin:0 0 .5rem;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.eyebrow,.muted{color:var(--text-muted)}.text-link{color:var(--accent);font-weight:600;text-decoration:none}.text-link:focus-visible,.text-link:hover{text-decoration:underline}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.8rem 1rem;border:none;border-radius:999px;text-decoration:none;font-weight:700;cursor:pointer}.button-link--primary{background:var(--accent);color:#fff}.button-link--secondary{background:var(--accent-soft);color:var(--accent)}.button-link:focus-visible,.button-link:hover{transform:translateY(-1px)}.filters-card{padding:1.25rem}.detail-hero__header,.filters-card__actions,.filters-card__header,.listing-card__footer,.listing-card__headline,.results-header{display:flex;gap:1rem;align-items:center;justify-content:space-between}.filters-grid{margin:1rem 0 0;padding:0;border:0;display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:start}.field{display:grid;grid-gap:.4rem;gap:.4rem;color:var(--text-muted);font-size:.95rem}.field span{color:#173126;font-weight:600}.field input,.field select{width:100%;min-height:2.75rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:12px;background:#fff;color:inherit}.field input:focus-visible,.field select:focus-visible,.segmented-control__option:focus-visible span{outline:2px solid var(--accent);outline-offset:2px}.field--wide{grid-column:1/-1}.field-range-group{grid-column:span 2;display:grid;grid-gap:.9rem;gap:.9rem;min-width:320px}.field-range-row{grid-template-columns:repeat(2,minmax(0,1fr))}.field-range-row,.filters-side-group{display:grid;grid-gap:.9rem;gap:.9rem}.filters-side-group{align-content:start;min-width:180px}.filters-side-group .button-link{justify-self:start}.field-checkbox-group{display:flex;flex-wrap:wrap;gap:.9rem}.field-checkbox{display:flex;align-items:center;gap:.5rem;color:#173126;font-weight:400}.field-checkbox input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.segmented-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.segmented-control__option{text-decoration:none}.segmented-control__option span{display:flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:12px;background:#fff;font-size:1.02rem;font-weight:600;text-align:center;cursor:pointer;white-space:nowrap}.segmented-control__option[aria-pressed=true] span{background:var(--accent-soft);border-color:rgba(39,93,67,.4);color:var(--accent)}.listings-grid{display:grid;grid-gap:1rem;gap:1rem}.listing-card{display:grid;overflow:hidden}.listing-card__media{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;text-decoration:none;background:var(--surface-muted)}.listing-card__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.listing-card__placeholder{width:100%;height:100%}.gallery--empty,.listing-card__placeholder{display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:linear-gradient(135deg,#eff4ef,#dde8de)}.gallery--empty{min-height:220px}.listing-badge{display:inline-flex;align-items:center;padding:.4rem .65rem;border-radius:999px;font-size:.8rem;font-weight:700;color:#fff}.listing-badge--sale{background:var(--sale)}.listing-badge--rent{background:var(--rent)}.listing-card .listing-badge{position:absolute;top:1rem;left:1rem}.listing-card__content{display:grid;grid-gap:.8rem;gap:.8rem;padding:1rem 1rem 1.2rem}.detail-hero h1,.listing-card__headline h3{margin:0;font-size:1.25rem;line-height:1.25}.listing-card__headline h3 a{text-decoration:none}.listing-card__headline h3 a:focus-visible,.listing-card__headline h3 a:hover{text-decoration:underline}.detail-price p,.listing-card__price{margin:0;font-size:1.35rem;font-weight:800;color:var(--accent);text-align:right}.detail-price span,.listing-card__meta,.listing-card__submeta{color:var(--text-muted);font-size:.95rem}.listing-card__meta,.listing-card__submeta{margin:0}.detail-facts,.feature-list,.gallery,.listing-card__facts{margin:0;padding:0}.listing-card__facts{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none}.detail-facts .detail-row,.feature-list li,.listing-card__facts li{border-radius:999px;background:var(--surface-muted)}.listing-card__facts li{padding:.45rem .7rem;font-weight:600}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.pagination__pages{display:flex;gap:.5rem;flex-wrap:wrap}.pagination__link,.pagination__page{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0 .9rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);text-decoration:none;font-weight:600}.pagination__page--active{background:var(--accent);border-color:var(--accent);color:#fff}.pagination__link[aria-disabled=true]{opacity:.45;pointer-events:none}.empty-state{text-align:center;display:grid;grid-gap:.75rem;gap:.75rem;justify-items:center}.detail-back{margin-bottom:-.2rem}.detail-hero{display:grid;grid-gap:1rem;gap:1rem}.detail-price{display:grid;grid-gap:.25rem;gap:.25rem;justify-items:end}.detail-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:.75rem;gap:.75rem}.detail-grid{display:grid;grid-gap:1rem;gap:1rem}.detail-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:0}.detail-row{display:grid;grid-gap:.25rem;gap:.25rem;padding:.8rem .9rem}.detail-row dt{color:var(--text-muted);font-size:.9rem}.detail-row dd{margin:0;font-weight:600}.carousel,.gallery{display:grid;grid-gap:.75rem;gap:.75rem}.carousel__stage{position:relative;overflow:hidden;border-radius:16px;background:var(--surface-muted)}.carousel__image{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.carousel__control{position:absolute;top:50%;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:999px;background:rgba(23,34,27,.55);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;transform:translateY(-50%)}.carousel__control:focus-visible,.carousel__control:hover{background:rgba(23,34,27,.75)}.carousel__control--prev{left:.75rem}.carousel__control--next{right:.75rem}.carousel__counter{position:absolute;right:.75rem;bottom:.75rem;padding:.25rem .65rem;border-radius:999px;background:rgba(23,34,27,.55);color:#fff;font-size:.8rem;font-weight:700}.carousel__thumbs{display:flex;gap:.5rem;padding:.1rem .1rem .35rem;overflow-x:auto}.carousel__thumb{flex:0 0 auto;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:none}.carousel__thumb--active{border-color:var(--accent)}.carousel__thumb-image{display:block;width:72px;height:54px;object-fit:cover}.feature-list{list-style:none;display:flex;flex-wrap:wrap;gap:.65rem}.feature-list li{padding:.55rem .8rem}.source-notice{display:grid;grid-gap:.85rem;gap:.85rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.listing-map{display:grid;grid-gap:1rem;gap:1rem}.listing-map__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.listing-map__header h2{margin:0}.listing-map__frame{width:100%;min-height:420px;border:1px solid var(--border);border-radius:16px;background:var(--surface-muted)}.listing-map__notice{margin:0;color:var(--text-muted);font-size:.88rem}.description{line-height:1.7}.description p{margin:0}.description p+p{margin-top:.9rem}.source-description summary{color:var(--accent);font-weight:700;cursor:pointer}.source-description .description{margin-top:1rem}.ai-summary{display:grid;grid-gap:1rem;gap:1rem;border-left:4px solid var(--accent)}.ai-summary__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.ai-summary__header h2{margin:0}.ai-summary__costs{display:flex;flex-wrap:wrap;gap:.75rem}.ai-summary__cost{display:grid;grid-gap:.2rem;gap:.2rem;padding:.7rem 1rem;border-radius:14px;background:var(--accent-soft);min-width:160px}.ai-summary__cost--secondary{background:var(--surface-muted)}.ai-summary__cost-label{font-size:.78rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.ai-summary__cost-value{font-size:1.15rem;font-weight:800;color:var(--accent)}.ai-summary__cost--secondary .ai-summary__cost-value{color:#173126}.ai-summary__text{margin:0;line-height:1.7}.ai-summary__highlights{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.6rem}.ai-summary__highlights li{padding:.45rem .7rem;border-radius:999px;background:var(--surface-muted);font-weight:600;font-size:.92rem}.results-header{align-items:end}.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}.listings-hero{position:relative;display:flex;min-height:520px;align-items:center;padding:4rem 1rem 4.5rem;color:#173126;background-color:#eee8dc;background-image:linear-gradient(90deg,rgba(247,245,238,.06),rgba(247,245,238,.2) 50%,rgba(247,245,238,.04)),url(/hero-background.png);background-size:cover;background-position:50%}.listings-hero__content{width:100%;max-width:1120px;margin:0 auto;display:grid;grid-gap:1.1rem;gap:1.1rem;text-align:center}.listings-hero__title{max-width:780px;margin:0;margin-inline:auto;font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;text-shadow:0 1px 14px rgba(255,255,255,.9);text-wrap:balance}.listings-hero__subtitle{margin:0;color:#314d41;font-size:1.08rem;font-weight:600;text-shadow:0 1px 10px rgba(255,255,255,.95)}.listings-hero__search{display:grid;grid-gap:.6rem;gap:.6rem;margin-top:1rem;padding:1rem;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.9);border-radius:18px;box-shadow:0 22px 55px rgba(23,49,38,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:left;color:#173126}.listings-hero__search input{color:#173126}.listings-hero__search-field input{width:100%;min-height:2.9rem;padding:.7rem 1rem;border:1px solid var(--border);border-radius:12px;color:#173126}.listings-hero__submit{width:100%}.listings-hero__cities{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:.3rem}.city-chip span{display:inline-flex;align-items:center;padding:.55rem 1.15rem;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border);color:#173126;font-weight:600;font-size:.92rem;cursor:pointer;text-decoration:none}.city-chip:focus-visible span,.city-chip:hover span{background:var(--accent-soft);border-color:rgba(39,93,67,.4)}.city-chip[aria-pressed=true] span{background:var(--accent);color:#fff;border-color:var(--accent)}@media (min-width:640px){.listings-hero__cities{flex-basis:100%;order:10;margin-top:.9rem}.listings-hero__search{display:flex;flex-wrap:wrap;align-items:stretch}.listings-hero__transaction{flex:0 0 auto;min-width:260px}.listings-hero__search-field{flex:1 1 auto}.listings-hero__submit{flex:0 0 auto;width:auto;padding-left:1.75rem;padding-right:1.75rem}}@media (max-width:639px){.listings-hero{min-height:auto;padding:2.75rem .75rem 3rem;background-image:linear-gradient(90deg,rgba(247,245,238,.72),rgba(247,245,238,.35)),url(/hero-background.png);background-position:68%}.listings-hero__content{gap:.85rem}.listings-hero__subtitle{font-size:.98rem}.listings-hero__search{margin-top:.55rem}}@media (min-width:760px){.detail-grid,.gallery,.listings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:759px){.filters-card{position:static}.detail-hero__header,.filters-card__header,.listing-card__footer,.listing-card__headline,.listing-map__header,.results-header{align-items:flex-start;flex-direction:column}.listing-map__frame{min-height:330px}.detail-price{justify-items:start}}