@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root,:root[data-theme=light]{--bg-primary: #f6f6f8;--bg-secondary: #ffffff;--bg-tertiary: #f0f0f3;--bg-hover: #e9e9ee;--text-primary: #18181b;--text-secondary: #5b5b66;--text-muted: #8a8a95;--accent: #e11d48;--accent-hover: #be123c;--accent-soft: rgba(225, 29, 72, .09);--accent-contrast: #ffffff;--sale: #2563eb;--border-color: #e4e4e9;--border-strong: #cfcfd6;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(24, 24, 27, .07);--overlay: rgba(15, 15, 20, .45);--skeleton: #e8e8ed;--skeleton-shine: #f4f4f7;--shadow-sm: 0 1px 3px rgba(16, 16, 24, .06), 0 1px 2px rgba(16, 16, 24, .04);--shadow-md: 0 6px 16px -4px rgba(16, 16, 24, .1);--shadow-lg: 0 18px 32px -8px rgba(16, 16, 24, .16);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--topbar-h: 76px;color-scheme:light}:root[data-theme=dark]{--bg-primary: #0a0a0c;--bg-secondary: #141416;--bg-tertiary: #1c1c1f;--bg-hover: #26262a;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--accent: #f43f5e;--accent-hover: #fb7185;--accent-soft: rgba(244, 63, 94, .14);--accent-contrast: #ffffff;--sale: #60a5fa;--border-color: #27272a;--border-strong: #3f3f46;--glass-bg: rgba(20, 20, 22, .8);--glass-border: rgba(255, 255, 255, .08);--overlay: rgba(0, 0, 0, .6);--skeleton: #1f1f23;--skeleton-shine: #2a2a2f;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .4);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .5);color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;transition:background-color .25s ease,color .25s ease}:root[data-theme=dark] body{background-image:radial-gradient(circle at 15% 50%,rgba(244,63,94,.04) 0%,transparent 25%),radial-gradient(circle at 85% 30%,rgba(59,130,246,.04) 0%,transparent 25%);background-attachment:fixed}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit;transition:all .2s ease}input,select{font-family:inherit;outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.text-secondary{color:var(--text-secondary)}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;max-width:1400px;margin:0 auto;width:100%;padding:2rem}.footer{text-align:center;padding:2rem 1rem;color:var(--text-secondary);border-top:1px solid var(--border-color);margin-top:auto}.footer a{text-decoration:underline}.footer a:hover{color:var(--accent)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;height:var(--topbar-h);padding:0 2rem;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.logo{display:flex;align-items:center;gap:.6rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);flex-shrink:0}.search-container{flex:1;max-width:620px;position:relative}.search-input{width:100%;padding:.8rem 2.75rem .8rem 3rem;border-radius:99px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-size:.975rem;transition:all .2s ease}.search-input::-webkit-search-cancel-button{display:none}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent);background:var(--bg-secondary);box-shadow:0 0 0 3px var(--accent-soft)}.search-icon{position:absolute;left:1.1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--text-secondary)}.search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.topbar-actions{display:flex;gap:.5rem;flex-shrink:0}.icon-btn{position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--text-primary);border:1px solid var(--border-color);background:var(--bg-secondary)}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.icon-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--accent);color:var(--accent-contrast);font-size:.7rem;font-weight:700;display:grid;place-items:center}.home-layout{display:grid;grid-template-columns:290px 1fr;gap:2rem;align-items:start}.sidebar{position:sticky;top:calc(var(--topbar-h) + 1.5rem);max-height:calc(100vh - var(--topbar-h) - 3rem);display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.sidebar-header h2{font-size:1.15rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.sidebar-body{overflow-y:auto;padding:.5rem 1.5rem 1.5rem;scrollbar-width:thin}.sidebar-close,.sidebar-footer,.sidebar-backdrop,.btn-outline.filters-toggle{display:none}.filter-section{padding:1.25rem 0;border-bottom:1px solid var(--border-color)}.filter-section:last-child{border-bottom:none}.filter-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem}.filter-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-weight:600}.filter-options{display:flex;flex-direction:column;gap:.6rem}.filter-label{display:flex;align-items:center;gap:.6rem;cursor:pointer;color:var(--text-primary);font-size:.93rem;transition:color .2s}.filter-label:hover{color:var(--accent)}.filter-label.is-empty{opacity:.45}.filter-label-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-count{font-size:.78rem;color:var(--text-muted);background:var(--bg-tertiary);border-radius:99px;padding:0 .5rem;min-width:26px;text-align:center}.filter-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:18px;height:18px;border:2px solid var(--border-strong);border-radius:5px;background:var(--bg-secondary);cursor:pointer;position:relative;transition:all .2s}.filter-checkbox:checked{background:var(--accent);border-color:var(--accent)}.filter-checkbox:checked:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.filter-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--accent);color:var(--accent-contrast);font-size:.72rem;font-weight:700}.filter-hint{margin-top:.6rem;font-size:.78rem;color:var(--text-muted)}.link-btn{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent);font-size:.85rem;font-weight:500;align-self:flex-start;padding:.15rem 0}.link-btn:hover{text-decoration:underline}.segmented{display:grid;grid-template-columns:repeat(3,1fr);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:3px;gap:3px}.segmented-btn{padding:.5rem .25rem;border-radius:6px;font-size:.85rem;font-weight:500;color:var(--text-secondary);display:flex;justify-content:center;align-items:center;gap:.3rem}.segmented-btn:hover{color:var(--text-primary)}.segmented-btn.active{background:var(--bg-secondary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.segmented-count{font-size:.72rem;color:var(--text-muted)}.chip-group{display:flex;gap:.4rem}.chip-group.wrap{flex-wrap:wrap;margin-bottom:.75rem}.chip{flex:1;padding:.45rem .7rem;border-radius:99px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.82rem;font-weight:500;white-space:nowrap}.chip-group:not(.wrap) .chip{min-width:0;padding:.45rem 0}.chip-group.wrap .chip{flex:0 0 auto}.chip:hover{border-color:var(--accent)}.chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.range-row{display:flex;align-items:center;gap:.5rem}.range-sep{color:var(--text-muted)}.filter-input{width:100%;min-width:0;padding:.6rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:.9rem}.filter-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.filter-input::placeholder{color:var(--text-muted)}.results-area{min-width:0}.results-header{margin-bottom:1rem;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap}.results-title{font-size:1.4rem;font-weight:700}.results-stats{color:var(--text-secondary);font-size:.9rem}.results-controls{display:flex;gap:.75rem;align-items:center}.sort-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.sort-select{padding:.55rem 2rem .55rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a8a95' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.sort-select:focus{border-color:var(--accent)}.active-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1.5rem}.active-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem .35rem .85rem;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-size:.85rem;font-weight:500;border:1px solid transparent}.active-chip:hover{border-color:var(--accent)}.properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.5rem;margin-bottom:2rem}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;padding:4rem 2rem;margin-top:1rem;background:var(--bg-secondary);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text-secondary)}.empty-state h3{font-size:1.3rem;color:var(--text-primary)}.empty-state .btn-outline{margin-top:.5rem}.pagination-container{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.4rem;margin-top:2rem;padding:1rem}.pagination-btn{min-width:40px;height:40px;padding:0 .75rem;display:grid;place-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);font-weight:500}.pagination-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pagination-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-gap{color:var(--text-muted);padding:0 .25rem}.property-card{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.property-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-strong)}.card-image-wrapper{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-tertiary)}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.property-card:hover .card-image{transform:scale(1.04)}.card-tags{position:absolute;top:.75rem;left:.75rem;right:3.5rem;display:flex;flex-wrap:wrap;gap:.4rem;z-index:2}.tag{display:inline-block;background:#0f0f14b8;color:#fff;padding:.2rem .7rem;border-radius:99px;font-size:.74rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tag.highlight{background:var(--accent)}.tag.tag-sale{background:var(--sale)}.card-like-btn{position:absolute;top:.65rem;right:.65rem;z-index:3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#ffffffeb;color:#3f3f46;box-shadow:var(--shadow-sm)}.card-like-btn:hover{transform:scale(1.1);color:#e11d48}.card-like-btn.active{color:#e11d48}.card-slider-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;color:#18181b;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;opacity:0;z-index:2;box-shadow:var(--shadow-sm)}.card-slider-btn:hover{transform:translateY(-50%) scale(1.1)}.card-slider-btn.prev{left:.5rem}.card-slider-btn.next{right:.5rem}.property-card:hover .card-slider-btn,.card-slider-btn:focus-visible{opacity:1}@media (hover: none){.card-slider-btn{opacity:.85}}.slider-dots{position:absolute;bottom:.75rem;left:50%;transform:translate(-50%);display:flex;gap:4px;z-index:2}.slider-dot{width:6px;height:6px;border-radius:50%;background:#ffffff8c;transition:all .2s ease}.slider-dot.active{background:#fff;transform:scale(1.25)}.photo-count{position:absolute;bottom:.6rem;right:.6rem;z-index:2;font-size:.72rem;font-weight:600;color:#fff;background:#0f0f1499;padding:.1rem .5rem;border-radius:99px}.card-content{padding:1.1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.card-type{color:var(--accent);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.card-price{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.card-price-suffix{font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-left:.2rem}.card-title{font-size:.9rem;font-weight:500;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}.card-features{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-weight:600;font-size:.88rem;margin-top:auto;padding-top:.6rem}.card-feature{display:inline-flex;align-items:center;gap:.35rem}.card-feature svg{color:var(--text-muted)}.card-address{display:flex;gap:.3rem;align-items:center;color:var(--text-secondary);font-size:.85rem;padding-top:.6rem;border-top:1px solid var(--border-color);margin-top:.4rem}.card-address svg{flex-shrink:0;color:var(--accent)}.card-address span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skeleton{pointer-events:none}.skeleton-block,.skeleton-line{background:linear-gradient(90deg,var(--skeleton) 25%,var(--skeleton-shine) 50%,var(--skeleton) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite linear}.skeleton-line{height:12px;border-radius:6px;margin-bottom:.4rem}.skeleton-line.lg{height:22px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.page-message{min-height:50vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;text-align:center}.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--border-color);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.details-page{max-width:1200px;margin:0 auto;animation:fadeIn .4s ease-out}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-weight:500}.back-link:hover{color:var(--accent)}.details-header{margin-bottom:2rem}.details-heading{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem 2rem;margin-top:1rem}.details-heading>div:first-child{flex:1;min-width:260px}.details-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.75rem}.details-title{font-size:clamp(1.6rem,3vw,2.25rem);font-weight:700;margin-bottom:.5rem;line-height:1.2}.details-address{color:var(--text-secondary);font-size:1.05rem;display:flex;align-items:center;gap:.5rem}.details-address svg{flex-shrink:0;color:var(--accent)}.details-price-box{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}.details-price{font-size:2rem;font-weight:700}.fav-btn.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.details-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:250px 250px;gap:.75rem;border-radius:var(--radius-xl);overflow:hidden;margin-bottom:3rem}.details-gallery.count-1{grid-template-columns:1fr}.details-gallery.count-2 .gallery-wrapper:not(.gallery-main){grid-row:span 2}.gallery-main{grid-row:span 2}.gallery-wrapper{overflow:hidden;position:relative;padding:0;background:var(--bg-tertiary)}.gallery-item{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.gallery-wrapper:hover .gallery-item{transform:scale(1.04)}.gallery-more{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:grid;place-items:center;font-size:1.25rem;font-weight:600;color:#fff}.details-content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.details-main{display:flex;flex-direction:column;gap:2.5rem;min-width:0}.features-banner{display:flex;justify-content:space-around;flex-wrap:wrap;gap:1.5rem;padding:1.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.feature-item{display:flex;flex-direction:column;align-items:center;gap:.4rem}.feature-value{font-size:1.25rem;font-weight:600}.feature-label{color:var(--text-secondary);font-size:.875rem}.section-title{font-size:1.4rem;font-weight:600;margin-bottom:1rem}.details-description{color:var(--text-secondary);line-height:1.8;font-size:1.02rem;white-space:pre-line}.fees-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary)}.fees-list li{padding-left:1.1rem;position:relative}.fees-list li:before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:50%;background:var(--accent)}.pricing-card{position:sticky;top:calc(var(--topbar-h) + 1.5rem);padding:2rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.pricing-label{font-size:.95rem;font-weight:500;margin-bottom:.5rem}.pricing-price{font-size:2.25rem;font-weight:700;margin-bottom:1rem}.pricing-fees{padding-bottom:1.25rem;border-bottom:1px solid var(--border-color);margin-bottom:1.25rem}.fee-row{display:flex;justify-content:space-between;margin-bottom:.5rem;color:var(--text-secondary)}.pricing-total{display:flex;justify-content:space-between;gap:1rem;font-weight:600;font-size:1.1rem;margin-bottom:1.75rem}.contact-btn{width:100%;padding:.95rem 1rem;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);font-weight:600;font-size:1rem;display:flex;justify-content:center;align-items:center;gap:.5rem;transition:background .2s}.contact-btn:hover{background:var(--accent-hover)}.btn-outline{padding:.55rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.92rem}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.share-wrapper{position:relative;display:flex;justify-content:center;align-items:center;height:56px;margin-top:1rem}.share-main-btn{width:100%;padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border-color);color:var(--text-primary);display:flex;justify-content:center;align-items:center;gap:.5rem;font-weight:600;font-size:1rem;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:absolute;left:0;z-index:10}.share-main-btn:hover{border-color:var(--accent)}.share-wrapper.active .share-main-btn{width:48px;height:48px;padding:0;border-radius:50%;background:var(--bg-tertiary)}.social-btns-container{display:flex;gap:.75rem;opacity:0;pointer-events:none;transform:scale(.8);transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:absolute;right:0}.share-wrapper.active .social-btns-container{opacity:1;pointer-events:auto;transform:scale(1)}.social-btn{width:44px;height:44px;border-radius:50%;background:var(--bg-tertiary);display:grid;place-items:center;color:var(--text-primary);font-size:1.25rem;border:1px solid var(--border-color)}.social-btn:hover{color:#fff;transform:translateY(-3px)}.social-btn.whatsapp:hover{background:#25d366;border-color:#25d366}.social-btn.facebook:hover{background:#1877f2;border-color:#1877f2}.social-btn.twitter:hover{background:#000;border-color:#000}.social-btn.copy:hover{background:var(--accent);border-color:var(--accent)}.image-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.image-modal-overlay.open{opacity:1;pointer-events:auto}.modal-counter{position:absolute;top:2rem;left:3rem;color:#fff;font-size:1.1rem;font-weight:500;z-index:1010}.modal-close-btn,.modal-nav-btn{position:absolute;color:#fff;background:#ffffff1a;border-radius:50%;display:grid;place-items:center;z-index:1010}.modal-close-btn{top:2rem;right:2rem;width:48px;height:48px}.modal-nav-btn{top:50%;transform:translateY(-50%);width:56px;height:56px}.modal-close-btn:hover,.modal-nav-btn:hover{background:#fff3}.modal-nav-btn.prev{left:2rem}.modal-nav-btn.next{right:2rem}.modal-image-container{width:80%;height:65vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.modal-image{max-width:100%;max-height:100%;object-fit:contain;transition:transform .3s ease-out;cursor:zoom-in}.modal-image.zoomed{transform:scale(2.5);cursor:zoom-out}.modal-thumbnails-container{display:flex;gap:.75rem;padding:1rem .5rem;max-width:90vw;overflow-x:auto;margin-top:2rem;z-index:1010;scrollbar-width:none}.modal-thumbnails-container::-webkit-scrollbar{display:none}.modal-thumbnail-btn{flex:0 0 auto;width:80px;height:60px;border-radius:8px;overflow:hidden;border:2px solid transparent;opacity:.5;background:#222}.modal-thumbnail-btn.active{opacity:1;border-color:var(--accent);transform:scale(1.1)}.modal-thumbnail-btn:hover{opacity:.85}.modal-thumbnail-img{width:100%;height:100%;object-fit:cover}.map-container{border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border-color)}.map-header{padding:1.25rem 1.5rem;background:var(--bg-secondary);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;border-bottom:1px solid var(--border-color)}.map-header h3{font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.map-iframe{display:block;width:100%;height:380px;border:none;background:var(--bg-tertiary)}:root[data-theme=dark] .map-iframe{filter:invert(.9) hue-rotate(180deg) brightness(.95)}@media (max-width: 1024px){.details-content{grid-template-columns:1fr}.pricing-card{position:static}}@media (max-width: 900px){.home-layout{grid-template-columns:1fr}.btn-outline.filters-toggle{display:inline-flex}.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(360px,88vw);max-height:none;border-radius:0 var(--radius-lg) var(--radius-lg) 0;z-index:300;transform:translate(-105%);transition:transform .3s ease;box-shadow:var(--shadow-lg)}.sidebar.open{transform:translate(0)}.sidebar-body{flex:1}.sidebar-close,.sidebar-footer{display:block}.sidebar-close{display:grid}.sidebar-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:250;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-backdrop.open{opacity:1;pointer-events:auto}}@media (max-width: 768px){.main-content{padding:1.25rem 1rem}.topbar{height:auto;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem}.search-container{order:3;flex-basis:100%;max-width:none}.logo{font-size:1.3rem}.results-controls{width:100%;justify-content:space-between}.sort-label>span{display:none}.details-gallery{grid-template-columns:1fr;grid-template-rows:280px;border-radius:var(--radius-lg)}.gallery-wrapper:not(.gallery-main){display:none}.details-price-box{align-items:flex-start}.modal-nav-btn{width:44px;height:44px}.modal-nav-btn.prev{left:.5rem}.modal-nav-btn.next{right:.5rem}.modal-image-container{width:100%}.modal-counter{left:1.25rem}.modal-close-btn{right:1rem;top:1.25rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root,:root[data-theme=light]{--safe: #15803d;--safe-soft: rgba(22, 163, 74, .1);--warn: #b45309;--warn-soft: rgba(217, 119, 6, .12);--danger: #c2410c;--danger-soft: rgba(234, 88, 12, .12);--water: #0284c7}:root[data-theme=dark]{--safe: #4ade80;--safe-soft: rgba(74, 222, 128, .12);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .12);--danger: #fb923c;--danger-soft: rgba(251, 146, 60, .14);--water: #38bdf8}.flood-badge{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;padding:.3rem .7rem;border-radius:99px;font-size:.85rem;font-weight:600;line-height:1.2;background:var(--bg-tertiary);color:var(--text-secondary)}.flood-badge.compact{font-size:.76rem;padding:.22rem .55rem;margin-top:.5rem}.flood-badge.safe{background:var(--safe-soft);color:var(--safe)}.flood-badge.warn{background:var(--warn-soft);color:var(--warn)}.flood-badge.danger{background:var(--danger-soft);color:var(--danger)}.flood-filter-icon{color:var(--safe);flex-shrink:0}.flood-card{padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--border-color);border-left:4px solid var(--text-muted);background:var(--bg-secondary);display:flex;flex-direction:column;gap:1rem}.flood-card.safe{border-left-color:var(--safe)}.flood-card.warn{border-left-color:var(--warn)}.flood-card.danger{border-left-color:var(--danger)}.flood-text{color:var(--text-secondary);line-height:1.7}.flood-bars{display:flex;flex-direction:column;gap:.45rem}.flood-bars-caption{font-size:.8rem;color:var(--text-muted);margin-bottom:.15rem}.flood-bar-row{display:grid;grid-template-columns:64px 1fr 52px;align-items:center;gap:.75rem;font-size:.875rem}.flood-bar-label{font-weight:600}.flood-bar-track{height:10px;border-radius:99px;background:var(--bg-tertiary);overflow:hidden}.flood-bar-fill{display:block;height:100%;border-radius:99px;background:var(--water)}.flood-bar-value{text-align:right;color:var(--text-secondary);font-variant-numeric:tabular-nums}.flood-source{font-size:.8rem;color:var(--text-muted);line-height:1.5}.flood-source a{color:var(--accent);display:inline-flex;align-items:center;gap:.2rem}.card-charges{display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:.8rem;color:var(--text-secondary)}.card-charges span:before{content:"+ ";color:var(--text-muted)}.fee-value{color:var(--text-primary);font-weight:600}.fee-note{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}
