.app-header{background-color:#fffffffa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:0 40px;color:#333;box-shadow:0 2px 6px #0000000f;position:sticky;top:0;z-index:1000;width:100%;box-sizing:border-box}.header-content{display:flex;justify-content:space-between;align-items:center;height:80px;max-width:100%;margin:0 auto}.logo-container{display:flex;align-items:center;gap:15px}.site-logo{height:50px;width:auto}.logo{font-size:1.8rem;font-weight:700;color:#007bff;cursor:pointer}.main-nav{display:flex;gap:30px}.main-nav a{color:#333;text-decoration:none;font-size:1rem;font-weight:500;transition:color .2s;padding:5px 0;position:relative}.main-nav a:hover{color:#007bff}.main-nav a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:#007bff;transition:width .3s}.main-nav a:hover:after{width:100%}.main-nav a.highlight-link{color:#007bff;font-weight:600}.header-actions{display:flex;align-items:center}.search-container{position:relative;display:flex;align-items:center}.search-input{border:1px solid #e1e1e1;background-color:#f8f9fa;border-radius:20px;padding:8px 40px 8px 15px;font-size:.9rem;transition:width .3s ease-in-out,border-color .3s;width:200px}.search-input:focus{outline:none;border-color:#007bff;width:250px}.search-icon{position:absolute;right:15px;color:#888;pointer-events:none}.mobile-menu-btn{display:none;background:none;border:none;color:#333;cursor:pointer;padding:5px}@media (max-width: 768px){.app-header{padding:15px 20px;height:auto;background-color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.header-content{flex-wrap:wrap;gap:0}.logo-container{flex-grow:1}.mobile-menu-btn{display:block}.main-nav{display:flex;position:fixed;top:80px;left:0;width:100%;height:calc(100vh - 80px);background-color:#fff;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:40px;gap:30px;transform:translate(-100%);transition:transform .3s ease-in-out,visibility 0s linear .3s;visibility:hidden;border-top:1px solid #eee;margin:0;z-index:999}.main-nav.open{transform:translate(0);visibility:visible;transition:transform .3s ease-in-out,visibility 0s linear 0s}.header-actions{display:none;width:100%;justify-content:center;padding-bottom:20px}.header-actions.open{display:flex}.search-input,.search-input:focus{padding:12px 40px 12px 20px;width:100%}}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;padding:20px}.modal-content{background-color:transparent;padding:0;border-radius:0;max-width:700px;width:100%;position:relative;box-shadow:0 5px 15px #0000004d;max-height:90vh;margin:auto;display:flex;flex-direction:column;overflow:hidden}.modal-header-bar{height:40px;background-color:#2c3e50;width:100%;display:flex;align-items:center;justify-content:flex-end;padding:0 10px;box-sizing:border-box;flex-shrink:0;border-radius:8px 8px 0 0}.modal-body{overflow-y:auto;flex:1;width:100%;background-color:#fff}.modal-body img{border-radius:0!important}.modal-close-btn{background-color:#fff3;border:none;font-size:1.2rem;cursor:pointer;color:#fff;line-height:1;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s,background-color .2s}.modal-close-btn:hover{background-color:#fff6;transform:scale(1.1)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.modal-content:not(.modal-contact){animation:fadeIn .3s ease-out}.modal-content:not(.modal-contact).closing{animation:fadeOut .3s ease-out forwards}.modal-content.modal-contact{background-color:#fff;position:absolute;bottom:100px;right:30px;width:380px;max-width:90vw;padding:20px;max-height:none;overflow:visible;border-radius:12px;animation:scaleUpFromBottomRight .3s cubic-bezier(.18,.89,.32,1.28);transform-origin:bottom right}.modal-content.modal-contact .modal-body{padding:0;overflow:visible;display:block}.modal-content.modal-contact .modal-header-bar{background-color:transparent;position:absolute;top:5px;right:5px;height:auto;width:auto;padding:0}.modal-content.modal-contact .modal-close-btn{background-color:transparent;color:#999}.modal-content.modal-contact .modal-close-btn:hover{background-color:#f5f5f5;color:#333}@keyframes scaleUpFromBottomRight{0%{opacity:0;transform:scale(.1)}to{opacity:1;transform:scale(1)}}@keyframes scaleDownToBottomRight{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.1)}}.modal-content.modal-contact.closing{animation:scaleDownToBottomRight .3s ease-in forwards}@media (max-width: 768px){.modal-overlay{padding:0;align-items:flex-start}.modal-content{width:100%;height:100%;max-width:none;max-height:none;margin:0;border-radius:0}.modal-content.modal-contact{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%)!important;width:90%;max-width:320px;height:auto;margin:0;border-radius:12px;animation:fadeIn .3s ease-out;box-shadow:0 10px 40px #0000004d}}.advertise-card{padding:0;color:#333}.advertise-header-styled{background-color:#f8f9fa;padding:30px 30px 25px;border-bottom:1px solid #eee;text-align:center;border-radius:0}.advertise-header-styled h2{margin:0 0 10px;color:#2c3e50;font-size:1.8rem;font-weight:700}.advertise-header-styled p{margin:0;color:#666;font-size:1rem;line-height:1.5}.advertise-form-styled{padding:30px;display:flex;flex-direction:column;gap:20px}.form-row-styled{display:flex;gap:20px}.form-group-styled{display:flex;flex-direction:column;gap:8px;flex:1}.form-group-styled label{font-size:.9rem;font-weight:600;color:#444;margin-left:2px}.form-group-styled input,.form-group-styled textarea{padding:12px 15px;border:2px solid #ccc;border-radius:8px;font-size:1rem;background-color:#f9f9f9;transition:all .2s ease;width:100%;box-sizing:border-box}.form-group-styled input:focus,.form-group-styled textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 4px #007bff1a}.btn-submit-styled{background-color:#007bff;color:#fff;border:none;padding:15px;border-radius:8px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;margin-top:10px;box-shadow:0 4px 10px #007bff33}.btn-submit-styled:hover{background-color:#0056b3;transform:translateY(-2px)}@media (max-width: 600px){.form-row-styled{flex-direction:column;gap:20px}.advertise-form-styled{padding:20px}}.imovel-card{background-color:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 4px 20px #0000000d;width:100%;max-width:none;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease,opacity .3s ease;position:relative;opacity:.9}.imovel-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a;opacity:1}.imovel-imagem{width:100%;height:200px;object-fit:cover}.imovel-info{padding:20px;display:flex;flex-direction:column;flex-grow:1}.imovel-info h2{margin-top:0;font-size:1.5rem;color:#333}.imovel-descricao{color:#666;line-height:1.6;font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:15px}.imovel-precos{margin-top:auto;margin-bottom:15px}.imovel-preco{font-size:1.4rem;font-weight:700;color:#2c3e50;margin:0}.imovel-preco-aluguel{font-size:1.1rem;font-weight:700;color:#27ae60;margin:5px 0 0}.imovel-preco-aluguel .mes{font-size:.8rem;font-weight:400;color:#7f8c8d}.btn-detalhes,.btn-contato{background-color:transparent;color:#007bff;border:1px solid #007bff;padding:12px 20px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;margin-top:20px;transition:background-color .2s;align-self:flex-start;width:100%;text-align:center}.btn-detalhes:hover,.btn-contato:hover{background-color:#0056b3;color:#fff}.card-tags{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:5px;align-items:flex-end;z-index:10}.card-tag{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 5px #0003}.card-tag.venda{background-color:#e74c3c}.card-tag.aluguel{background-color:#2980b9}@media (max-width: 768px){.imovel-info{padding:25px}.imovel-descricao{margin-bottom:25px}.btn-detalhes{padding:15px;font-size:1.05rem;background-color:#f8f9fa;border-color:#e1e1e1}}.imovel-detalhes{text-align:left;display:flex;flex-direction:column}.detalhes-imagem{width:100%;height:300px;object-fit:cover;border-radius:0;margin-bottom:0;box-shadow:none}.detalhes-conteudo{padding:30px}.detalhes-conteudo h2{font-size:1.8rem;color:#2c3e50;margin:0 0 12px;font-weight:700}.detalhes-descricao{color:#666;line-height:1.6;font-size:1rem;margin-bottom:30px}.detalhes-lista{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:15px}.detalhes-lista li{background-color:#f8f9fa;padding:15px 10px;border-radius:12px;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid #eee;transition:transform .2s}.detalhes-lista li:hover{transform:translateY(-2px);border-color:#e0e0e0;box-shadow:0 4px 10px #0000000d}.detalhes-lista .label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-weight:600}.detalhes-lista .value{font-size:1.1rem;color:#2c3e50;font-weight:700}.detalhes-footer{display:flex;align-items:center;justify-content:space-between;padding-top:25px;border-top:1px solid #eee;gap:20px}.preco-box{display:flex;flex-direction:column}.preco-label{font-size:.85rem;color:#888;margin-bottom:2px}.detalhes-preco{color:#2c3e50;font-size:1.8rem;font-weight:800;margin:0}.btn-contato{background-color:#25d366;color:#fff;border:none;border-radius:50px;padding:14px 35px;font-size:1rem;font-weight:600;cursor:default;box-shadow:0 4px 15px #25d3664d;width:auto;margin-top:0}@media (max-width: 768px){.detalhes-imagem{height:200px}.detalhes-conteudo{padding:25px 20px 40px}.detalhes-descricao{font-size:1.05rem;line-height:1.8;margin-bottom:40px}.detalhes-lista{grid-template-columns:1fr 1fr;gap:20px}.detalhes-footer{flex-direction:column;gap:25px;align-items:stretch;text-align:center}.btn-contato{width:100%;padding:18px;font-size:1.1rem}}.carousel-container{position:relative;width:100%;height:350px;background-color:#eee;border-radius:8px 8px 0 0;overflow:hidden}.carousel-container .detalhes-imagem{height:100%;border-radius:0;cursor:zoom-in;transition:opacity .3s ease}.detalhes-imagem.hidden{opacity:0}.placeholder-image{display:flex;align-items:center;justify-content:center;background-color:#e0e0e0;color:#777;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;height:100%;width:100%}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:#0000004d;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background-color .3s;z-index:2}.carousel-btn:hover{background-color:#000000b3}.carousel-btn.prev{left:15px}.carousel-btn.next{right:15px}.carousel-indicators{position:absolute;bottom:15px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:2}.indicator{width:10px;height:10px;background-color:#ffffff80;border-radius:50%;cursor:pointer;transition:all .3s}.indicator.active{background-color:#fff;transform:scale(1.2)}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000d9;display:flex;justify-content:center;align-items:center;z-index:3000;animation:fadeIn .3s}.lightbox-image{max-width:90vw;max-height:90vh;object-fit:contain;box-shadow:0 10px 30px #00000080}.lightbox-close-btn{position:absolute;top:20px;right:30px;background:transparent;border:none;color:#fff;font-size:3rem;font-weight:300;cursor:pointer;transition:transform .2s}.lightbox-close-btn:hover{transform:scale(1.1)}.lightbox-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:#ffffff1a;color:#fff;border:none;width:60px;height:60px;border-radius:50%;cursor:pointer;font-size:2rem;display:flex;align-items:center;justify-content:center;transition:background-color .3s,transform .2s;z-index:3010}.lightbox-btn:hover{background-color:#ffffff4d;transform:translateY(-50%) scale(1.1)}.lightbox-btn.prev{left:40px}.lightbox-btn.next{right:40px}.image-loader{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0;z-index:1}.spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-left-color:#007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.floating-button{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background-color:#007bff;color:#fff;border-radius:50%;border:none;box-shadow:0 4px 12px #0003;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1000;transition:transform .2s ease-in-out,background-color .2s}.floating-button:hover{background-color:#0056b3;transform:scale(1.1)}.floating-button svg{width:28px;height:28px}.floating-button .tooltip-text{visibility:hidden;width:120px;background-color:#555;color:#fff;text-align:center;border-radius:6px;padding:5px 0;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-60px;opacity:0;transition:opacity .3s}.floating-button:hover .tooltip-text{visibility:visible;opacity:1}.floating-button .tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#555 transparent transparent transparent}.contact-info-container{padding:10px 10px 20px;text-align:center;width:100%;box-sizing:border-box}.contact-info-container h2{margin-top:0;margin-bottom:10px;color:#333;font-size:1.4rem}.contact-info-container p{margin-top:0;margin-bottom:20px;color:#666;font-size:.95rem}.contact-grid{display:flex;flex-direction:column;gap:12px;width:100%}.contact-btn{display:flex;align-items:center;padding:12px 16px;border-radius:10px;text-decoration:none;color:#fff;transition:transform .2s ease,box-shadow .2s ease;width:100%;box-sizing:border-box;text-align:left}.contact-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.contact-btn.whatsapp{background-color:#25d366}.contact-btn.email{background-color:#007bff}.icon-wrapper{margin-right:15px;display:flex;align-items:center}.text-wrapper{display:flex;flex-direction:column;overflow:hidden}.name{font-weight:700;font-size:1rem;line-height:1.2}.sub-text{font-size:.85rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sobre-nos-section{width:100%;background-color:#2c3e50;color:#fff;padding:80px 20px;margin-top:60px;box-sizing:border-box}.sobre-nos-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:60px}.sobre-nos-image-container{flex:1;display:flex;align-items:center;justify-content:center}.sobre-nos-logo{max-width:100%;height:auto;max-height:400px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.3))}.sobre-nos-content{flex:1}.sobre-nos-content h2{font-size:2.5rem;margin-bottom:25px;color:#fff;font-weight:700}.sobre-nos-content p{font-size:1.1rem;line-height:1.8;margin-bottom:20px;color:#e0e0e0}.creci-badge{display:inline-block;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.3);padding:6px 16px;border-radius:50px;font-weight:700;margin-bottom:20px;color:#4db8ff;font-size:.95rem;letter-spacing:1px}@media (max-width: 900px){.sobre-nos-container{flex-direction:column;gap:40px;text-align:center}.sobre-nos-image-container{width:100%;height:auto}.sobre-nos-content h2{font-size:2rem}}.imovel-page-layout{display:flex;width:100%;max-width:1920px;margin:0 auto;padding:40px 20px;gap:30px;position:relative;align-items:flex-start;box-sizing:border-box}.filter-sidebar{width:280px;flex-shrink:0;background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:16px;padding:20px;height:calc(100vh - 120px);position:sticky;top:100px;box-shadow:0 8px 32px #0000000d;overflow-y:auto;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:100}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.05)}.sidebar-header h3{margin:0;font-size:1.2rem;color:#2c3e50}.close-sidebar-btn{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#555}.filter-group{margin-bottom:15px}.filter-group label{display:block;font-size:.9rem;font-weight:600;color:#444;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.filter-options{display:flex;flex-direction:column;gap:8px}.filter-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.filter-btn{padding:8px 12px;border:1px solid rgba(0,0,0,.1);background-color:#fff9;border-radius:8px;cursor:pointer;font-size:.9rem;color:#555;transition:all .2s ease;text-align:center}.filter-btn:hover{background-color:#ffffffe6;border-color:#bbb}.filter-btn.active{background-color:#2c3e50;color:#fff;border-color:#2c3e50;box-shadow:0 4px 10px #2c3e5033}.price-inputs{display:flex;align-items:center;gap:10px}.range-slider{position:relative;width:100%;height:5px;margin:25px 0}.slider-track{position:absolute;width:100%;height:5px;background-color:#ddd;border-radius:5px;top:0;z-index:1}.slider-range{position:absolute;height:5px;background-color:#2c3e50;border-radius:5px;top:0;z-index:2}.range-slider input[type=range]{position:absolute;width:100%;height:5px;top:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;z-index:3;margin:0}.range-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:18px;width:18px;border-radius:50%;background-color:#2c3e50;border:2px solid white;box-shadow:0 2px 6px #0003;pointer-events:auto;cursor:pointer;margin-top:-7px}.range-slider input[type=range]::-moz-range-thumb{height:18px;width:18px;border-radius:50%;background-color:#2c3e50;border:2px solid white;box-shadow:0 2px 6px #0003;pointer-events:auto;cursor:pointer}.input-wrapper{display:flex;align-items:center;background:#fff9;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:0 10px;flex:1;transition:all .2s ease}.input-wrapper:focus-within{background:#fff;border-color:#2c3e50;box-shadow:0 0 0 2px #2c3e501a}.currency-prefix{font-size:.85rem;color:#888;margin-right:5px;font-weight:600}.input-wrapper input{width:100%;padding:10px 0;border:none;background:transparent;font-size:.9rem;outline:none;color:#333}.mobile-filter-bar{display:none}.imovel-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;padding:10px 0 40px;width:100%;flex:1;min-width:0;box-sizing:border-box;min-height:400px}.skeleton{background:#f6f7f8;background:linear-gradient(to right,#f6f7f8 8%,#edeef1 18%,#f6f7f8 33%);background-size:800px 104px;animation:shimmer 1.5s infinite linear}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.skeleton-card{background-color:#fff;border:1px solid #f0f0f0;border-radius:12px;width:100%;max-width:none;height:420px;display:flex;flex-direction:column;overflow:hidden}.skeleton-image{width:100%;height:200px;flex-shrink:0}.skeleton-content{padding:20px;display:flex;flex-direction:column;gap:15px;flex:1}.skeleton-title{height:24px;width:80%;border-radius:4px}.skeleton-text{height:16px;width:100%;border-radius:4px}.skeleton-text.short{width:60%}.skeleton-price{height:30px;width:40%;border-radius:4px;margin-top:auto}.skeleton-button{height:40px;width:100%;border-radius:8px;margin-top:10px}@media (max-width: 768px){.imovel-page-layout{display:block;padding:0}.mobile-filter-bar{display:block;padding:15px 20px;background:#fff;position:sticky;top:0;z-index:90;border-bottom:1px solid #eee;box-shadow:0 2px 10px #0000000d}.sidebar-toggle-btn{display:flex;align-items:center;gap:8px;background:#2c3e50;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;width:100%;justify-content:center}.filter-sidebar{position:fixed;top:0;left:0;height:100vh;width:85%;max-width:320px;z-index:1001;transform:translate(-100%);border-radius:0 16px 16px 0;background:#fff}.filter-sidebar.open{transform:translate(0)}.close-sidebar-btn{display:block}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .3s}.imovel-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:40px;padding-bottom:60px}}.app-footer{background-color:#282c34;padding:40px 40px 20px;color:#fff;margin-top:auto}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;max-width:1200px;margin:0 auto;gap:20px;width:100%}.footer-section{flex:1;min-width:200px;text-align:center}.footer-section h4{font-size:1.2rem;margin-bottom:15px;border-bottom:2px solid #007bff;padding-bottom:10px;display:inline-block}.footer-section p,.footer-section ul,.footer-section a{color:#ccc;text-decoration:none}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:10px}.footer-section a:hover{color:#fff}.social-links{display:flex;flex-direction:column;align-items:center;gap:10px}.footer-bottom{text-align:center;margin-top:20px;padding-top:20px;border-top:1px solid #444;font-size:.9rem;color:#aaa}@media (max-width: 768px){.app-footer{padding:30px 20px;text-align:center}.footer-content{flex-direction:column;gap:30px;align-items:center;text-align:center}.footer-section h4{margin-bottom:10px}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f4f4f4}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
