.header{background-color:#fff;box-shadow:0 2px 4px #0000001a;padding:15px 0;position:sticky;top:0;z-index:1000}.header-content{display:flex;justify-content:space-between;align-items:center;position:relative}.logo{text-decoration:none;color:#333;z-index:1001}.logo h1{font-size:24px}.orange{color:#ff6b35}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001;position:relative}.hamburger span{width:30px;height:3px;background:#333;border-radius:10px;transition:all .3s linear;position:relative;transform-origin:1px}.hamburger.open span:first-child{transform:rotate(45deg);background:#ff6b35}.hamburger.open span:nth-child(2){opacity:0;transform:translate(-20px)}.hamburger.open span:nth-child(3){transform:rotate(-45deg);background:#ff6b35}.nav-menu{display:block}.nav-links{display:flex;list-style:none;gap:30px}.nav-links a{text-decoration:none;color:#333;font-weight:500;transition:color .3s;position:relative}.nav-links a:hover{color:#ff6b35}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:#ff6b35;transition:width .3s}.nav-links a:hover:after{width:100%}.menu-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:998;animation:fadeIn .3s ease}@media(max-width:768px){.hamburger{display:flex}.nav-menu.mobile{position:fixed;top:0;right:-100%;width:80%;max-width:400px;height:100vh;background:#fff;padding:80px 20px 20px;transition:right .3s ease;z-index:999;box-shadow:-2px 0 10px #0000001a}.nav-menu.mobile.open{right:0}.nav-menu.mobile .nav-links{flex-direction:column;gap:20px}.nav-menu.mobile .nav-links li{width:100%}.nav-menu.mobile .nav-links a{display:block;padding:15px;font-size:18px;border-bottom:1px solid #eee;text-align:center}.nav-menu.mobile .nav-links a:hover{background:#f5f5f5}.nav-menu.mobile .nav-links a:after{display:none}.nav-menu.mobile.open .nav-links li{animation:slideIn .3s ease forwards;opacity:0;transform:translate(30px)}.nav-menu.mobile.open .nav-links li:nth-child(1){animation-delay:.1s}.nav-menu.mobile.open .nav-links li:nth-child(2){animation-delay:.2s}.nav-menu.mobile.open .nav-links li:nth-child(3){animation-delay:.3s}.nav-menu.mobile.open .nav-links li:nth-child(4){animation-delay:.4s}@keyframes slideIn{to{opacity:1;transform:translate(0)}}}@media(max-width:480px){.logo h1{font-size:20px}.nav-menu.mobile{width:100%;max-width:none}}@media(prefers-reduced-motion:reduce){.hamburger span,.nav-menu.mobile,.nav-menu.mobile .nav-links li,.menu-overlay,.nav-links a:after{transition:none;animation:none}}.nav-links a.active{color:#ff6b35;font-weight:600}.nav-links a.active:after{width:100%}.nav-menu.mobile .nav-links a.active{background:#fff0e6;color:#ff6b35;border-bottom:2px solid #ff6b35}.house-card{transition:transform .3s}.house-card a{text-decoration:none;color:inherit}.house-image{height:200px;overflow:hidden}.house-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.house-card:hover .house-image img{transform:scale(1.1)}.house-info{padding:20px}.house-title{font-size:18px;margin-bottom:8px;color:#333}.house-location{color:#666;font-size:14px;margin-bottom:12px}.house-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.house-price{color:#ff6b35;font-size:20px;font-weight:700}.house-surface{color:#666}.house-features{display:flex;gap:15px;color:#888;font-size:14px;margin-bottom:15px}.view-details{width:100%}.search-container{background:#fff;padding:30px 0;margin-bottom:30px}.search-form{max-width:600px;margin:0 auto;display:flex;gap:10px}.search-input{flex:1;padding:12px 15px;border:2px solid #e0e0e0;border-radius:5px;font-size:16px;transition:border-color .3s}.search-input:focus{outline:none;border-color:#ff6b35}.search-btn{padding:12px 30px;font-weight:600}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:40px 0}.page-numbers{display:flex;gap:10px}.page-number{width:40px;height:40px;border:none;background:#fff;border-radius:5px;cursor:pointer;font-size:16px;transition:all .3s}.page-number:hover{background:#ff6b35;color:#fff}.page-number.active{background:#ff6b35;color:#fff;font-weight:700}.pagination-btn{min-width:100px}.houses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:30px;margin:30px 0}.results-info{margin:20px 0;color:#666;font-size:16px}.no-results{text-align:center;padding:50px;background:#fff;border-radius:8px;margin:30px 0}.no-results p{font-size:18px;color:#666}.agent-info{background:#fff;border-radius:8px;padding:20px;margin:20px 0;box-shadow:0 2px 8px #0000001a;border:1px solid #f0f0f0}.agent-header{display:flex;align-items:center;gap:15px;cursor:pointer;flex-wrap:wrap}.agent-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;background:#ff6b35;display:flex;align-items:center;justify-content:center}.agent-avatar img{width:100%;height:100%;object-fit:cover}.agent-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:700;background:#ff6b35}.agent-summary{flex:1}.agent-summary h4{margin:0 0 5px;color:#333;font-size:18px}.agent-type{margin:0 0 5px;color:#666;font-size:14px}.agent-rating{display:flex;align-items:center;gap:5px;font-size:14px}.stars{color:#ffc107;letter-spacing:2px}.rating-value{color:#333;font-weight:700}.reviews-count{color:#999}.expand-btn{background:none;border:none;color:#ff6b35;cursor:pointer;font-size:14px;padding:5px 10px;border-radius:5px;transition:background .3s}.expand-btn:hover{background:#fff0e6}.agent-details{margin-top:20px;padding-top:20px;border-top:2px solid #f0f0f0}.agent-description{color:#666;line-height:1.6;margin-bottom:15px;font-style:italic}.availability{display:flex;align-items:center;gap:10px;color:#666;margin-bottom:20px;padding:10px;background:#f9f9f9;border-radius:5px}.availability .icon{font-size:18px}.contact-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:20px}.contact-btn2{padding:12px;border:none;border-radius:5px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px}.contact-btn2.phone{background:#4caf50;color:#fff}.contact-btn2.phone:hover{background:#45a049}.contact-btn2.whatsapp{background:#25d366;color:#fff}.contact-btn2.whatsapp:hover{background:#128c7e}.contact-btn2.email{background:#2196f3;color:#fff}.contact-btn2.agent-avatar:hover{background:#1976d2}.agent-note{background:#fff0e6;padding:15px;border-radius:5px;border-left:4px solid #ff6b35}.agent-note .note-text{color:#666;margin:0}.agent-note strong{color:#ff6b35;display:block;margin-bottom:5px}@media(max-width:768px){.agent-header{flex-direction:column;text-align:center}.agent-summary{width:100%}.contact-buttons{grid-template-columns:1fr}.expand-btn{width:100%}}.detail-container{padding:30px 20px}.back-btn{display:inline-block;margin-bottom:30px;color:#ff6b35;text-decoration:none;font-weight:500;transition:color .3s}.back-btn:hover{color:#ff5216}.detail-title{font-size:32px;margin-bottom:10px}.detail-location{color:#666;font-size:18px;margin-bottom:30px}.detail-gallery{margin-bottom:40px}.main-image{position:relative;width:100%;height:500px;overflow:hidden;border-radius:8px;margin-bottom:15px}.main-image img{width:100%;height:100%;object-fit:cover}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;width:50px;height:50px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s;z-index:10}.gallery-nav:hover{background:#000c}.gallery-nav.prev{left:20px}.gallery-nav.next{right:20px}.thumbnail-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.thumbnail{width:100%;height:100px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.6;transition:opacity .3s,transform .3s}.thumbnail:hover{opacity:.8;transform:scale(1.05)}.thumbnail.active{opacity:1;border:3px solid #ff6b35}.detail-price-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:#fff;border-radius:8px}.detail-price{font-size:36px;color:#ff6b35;font-weight:700}.contact-btn{padding:15px 40px;font-size:18px;max-width:20%!important}.detail-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:30px}.feature{background:#fff;padding:20px;border-radius:8px;text-align:center}.feature-label{display:block;color:#666;margin-bottom:5px}.feature-value{font-size:24px;font-weight:700;color:#333}.detail-description,.detail-characteristics{background:#fff;padding:30px;border-radius:8px;margin-bottom:30px}.detail-description h3,.detail-characteristics h3{margin-bottom:20px;color:#333}.detail-description p{line-height:1.8;color:#666}.characteristics-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.characteristics-list li{padding:10px;background:#f5f5f5;border-radius:4px;color:#666}.characteristics-list li:before{content:"✓";color:#ff6b35;margin-right:10px;font-weight:700}@media screen and (max-width:900px){.detail-price-section{display:flex;flex-direction:column}.contact-btn{min-width:100%!important;margin-top:30px}}.contact-form-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.contact-form-modal{background:#fff;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;border-radius:12px;padding:30px;position:relative;box-shadow:0 10px 40px #0003;animation:slideUp .3s ease}.modal-close{position:absolute;top:20px;right:20px;width:40px;height:40px;border:none;background:#f5f5f5;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .3s;z-index:10}.modal-close:hover{background:#ff6b35;color:#fff;transform:rotate(90deg)}.contact-form-header{margin-bottom:20px;padding-right:40px}.contact-form-header h2{color:#333;font-size:24px;margin-bottom:10px}.agent-badge{display:inline-block;padding:5px 15px;border-radius:20px;font-size:14px;font-weight:500}.agent-badge.agence{background:#e3f2fd;color:#1976d2}.agent-badge.particulier{background:#f3e5f5;color:#7b1fa2}.agent-quick-info{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.quick-contact{flex:1;min-width:140px;padding:10px;border-radius:5px;text-decoration:none;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .3s}.quick-contact.phone{background:#4caf50;color:#fff}.quick-contact.phone:hover{background:#45a049;transform:translateY(-2px)}.quick-contact.whatsapp{background:#25d366;color:#fff}.quick-contact.whatsapp:hover{background:#128c7e;transform:translateY(-2px)}.contact-form{margin-top:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:all .3s;font-family:inherit}.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:#bdbdbd}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#f44336}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.required{color:#f44336;margin-left:3px}.optional{color:#999;font-size:12px;font-weight:400;margin-left:5px}.error-message{display:block;margin-top:5px;color:#f44336;font-size:13px}.form-footer{margin-top:30px}.privacy-note{background:#f5f5f5;padding:12px;border-radius:8px;color:#666;font-size:13px;margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-actions{display:flex;gap:15px}.btn-cancel{flex:1;padding:12px;background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s}.btn-cancel:hover:not(:disabled){background:#f5f5f5;border-color:#999}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-orange2{flex:2;padding:12px;background:#ff6b35;border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:10px}.btn-orange2:hover:not(:disabled){background:#ff5216;transform:translateY(-2px);box-shadow:0 5px 15px #ff6b354d}.btn-orange2:disabled{opacity:.5;cursor:not-allowed}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}.contact-form-modal.success,.contact-form-modal.error{text-align:center}.success-content,.error-content{padding:20px 0}.success-icon{width:80px;height:80px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;margin:0 auto 20px;animation:scaleIn .5s ease}.error-icon{width:80px;height:80px;background:#f44336;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;margin:0 auto 20px}.success-content h3,.error-content h3{color:#333;font-size:24px;margin-bottom:10px}.success-content p,.error-content p{color:#666;margin-bottom:8px;line-height:1.6}.success-details{background:#f5f5f5;padding:15px;border-radius:8px;margin:20px 0;text-align:left}.success-details p{margin-bottom:5px}.success-actions{display:flex;gap:15px;margin-top:20px}.btn-new-message{flex:1;padding:12px;background:#2196f3;border:none;border-radius:8px;color:#fff;font-size:16px;cursor:pointer;transition:all .3s}.btn-new-message:hover{background:#1976d2}.error-content ul{text-align:left;margin:20px 0;padding-left:30px;color:#666}.error-content li{margin-bottom:5px}.phone-link{display:inline-block;padding:10px 20px;background:#4caf50;color:#fff;text-decoration:none;border-radius:5px;margin:15px 0;font-size:18px}.btn-retry{padding:12px 30px;background:#ff6b35;border:none;border-radius:8px;color:#fff;font-size:16px;cursor:pointer;margin-right:10px}.error-actions{display:flex;gap:15px;justify-content:center;margin-top:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}@media(max-width:768px){.contact-form-modal{width:95%;padding:20px}.contact-form-header h2{font-size:20px}.agent-quick-info{flex-direction:column}.quick-contact{width:100%}.form-actions{flex-direction:column}.btn-cancel,.btn-orange2{width:100%}.success-actions,.error-actions{flex-direction:column}.btn-retry{margin-right:0;margin-bottom:10px}}@media(prefers-reduced-motion:reduce){.contact-form-overlay,.contact-form-modal,.modal-close,.quick-contact,.btn-orange,.success-icon{animation:none;transition:none}}.buy-page{padding:40px 0;background:#f5f5f5;min-height:calc(100vh - 80px)}.page-title{font-size:32px;margin-bottom:30px;color:#333}.buy-layout{display:grid;grid-template-columns:300px 1fr;gap:30px}.filters-sidebar{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a;height:fit-content;position:sticky;top:100px}.filters-sidebar h2{margin-bottom:20px;color:#333;font-size:20px}.filter-group{margin-bottom:20px}.filter-group label{display:block;margin-bottom:8px;color:#666;font-weight:500}.filter-group input,.filter-group select{width:100%;padding:10px;border:2px solid #e0e0e0;border-radius:5px;font-size:14px;transition:border-color .3s}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#ff6b35}.filter-range{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.filter-range span{color:#666}.filter-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.btn-reset{padding:10px;background:none;border:2px solid #e0e0e0;border-radius:5px;color:#666;font-size:14px;cursor:pointer;transition:all .3s}.btn-reset:hover{background:#f5f5f5;border-color:#999}.buy-results{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.results-header{margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.results-header p{color:#666;font-size:16px}@media(max-width:768px){.buy-layout{grid-template-columns:1fr}.filters-sidebar{position:static;margin-bottom:20px}.page-title{font-size:24px}}.sell-page{padding:40px 0;background:#f5f5f5;min-height:calc(100vh - 80px)}.sell-steps{display:flex;justify-content:space-between;margin:40px 0;position:relative}.sell-steps:before{content:"";position:absolute;top:25px;left:0;right:0;height:2px;background:#e0e0e0;z-index:1}.step{position:relative;z-index:2;background:#fff;padding:0 20px;display:flex;flex-direction:column;align-items:center}.step-number{width:50px;height:50px;background:#e0e0e0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#666;margin-bottom:10px;transition:all .3s}.step.active .step-number{background:#ff6b35;color:#fff}.step-label{color:#666;font-weight:500}.step.active .step-label{color:#ff6b35}.sell-form{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:800px;margin:0 auto}.form-step h2{margin-bottom:30px;color:#333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#666;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:5px;font-size:16px;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#ff6b35}.file-input{padding:10px;border:2px dashed #e0e0e0;background:#f9f9f9;cursor:pointer}.file-hint{margin-top:5px;color:#999;font-size:14px}.form-actions{display:flex;gap:15px;margin-top:30px}@media(max-width:768px){.form-row{grid-template-columns:1fr;gap:0}.step-label{display:none}.sell-steps:before{top:25px}.form-actions{flex-direction:column}}.contact-page{padding:40px 0;background:#f5f5f5;min-height:calc(100vh - 80px)}.contact-layout{display:grid;grid-template-columns:350px 1fr;gap:30px;margin-top:40px}.contact-info{display:flex;flex-direction:column;gap:20px}.info-card{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.info-card h3{color:#333;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #ff6b35}.info-item{display:flex;gap:15px;margin-bottom:20px}.info-item:last-child{margin-bottom:0}.info-icon{font-size:24px;min-width:30px}.info-item h4{color:#333;margin-bottom:5px}.info-item p{color:#666;line-height:1.6}.schedule p{margin-bottom:10px;color:#666}.schedule strong{color:#333}.social-links{display:flex;gap:15px}.social-link{color:#666;text-decoration:none;padding:8px 15px;background:#f5f5f5;border-radius:5px;transition:all .3s}.social-link:hover{background:#ff6b35;color:#fff}.contact-form-container{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.contact-form h2{margin-bottom:30px;color:#333}.success-message{text-align:center;padding:40px 20px}.success-icon{display:inline-block;width:80px;height:80px;background:#4caf50;color:#fff;border-radius:50%;font-size:40px;line-height:80px;margin-bottom:20px}.success-message h3{color:#333;margin-bottom:10px;font-size:24px}.success-message p{color:#666;margin-bottom:30px}@media(max-width:768px){.contact-layout{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.social-links{flex-wrap:wrap}.social-link{flex:1;text-align:center}}*{margin:0;padding:0;box-sizing:border-box}body{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:#f5f5f5;color:#333}.app{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:20px}.btn-orange{background-color:#ff6b35;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:16px;transition:background-color .3s}.btn-orange:hover{background-color:#ff5216}.btn-orange:disabled{background-color:#ffb39e;cursor:not-allowed}.card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:transform .3s,box-shadow .3s}.card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0003}
