:root{--primary: #D84B1F; --secondary: #0A2E5C; --accent: #FF9F1C; --bg-color: #F8F9FA; --white: #FFFFFF; --text-main: #2B2D42; --text-light: #6C757D; --border: #E9ECEF; --shadow-sm: 0 4px 6px rgba(0, 0, 0, 0.05); --shadow-md: 0 10px 15px rgba(0, 0, 0, 0.1); --shadow-hover: 0 20px 25px rgba(0, 0, 0, 0.15); --transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); --radius: 12px;}*{margin: 0; padding: 0; box-sizing: border-box;}body{font-family: 'Inter', 'Segoe UI', Roboto, sans-serif; background-color: var(--bg-color); color: var(--text-main); line-height: 1.6;}a{text-decoration: none; color: inherit;}ul{list-style: none;}h1, h2, h3, h4{color: var(--secondary); font-weight: 700; margin-bottom: 0.5rem;}header{background-color: var(--white); box-shadow: var(--shadow-sm); position: sticky; top: 0; z-index: 100;}.nav-container{max-width: 1200px; margin: 0 auto; padding: 1rem 2rem; display: flex; justify-content: space-between; align-items: center;}.logo{font-size: 1.8rem; font-weight: 800; color: var(--secondary); display: flex; align-items: center; gap: 0.5rem;}.logo span{color: var(--primary);}.nav-links{display: flex; gap: 1.2rem; align-items: center; margin-left: auto;}.nav-links a{font-weight: 500; font-size: 0.95rem; color: var(--secondary); transition: var(--transition); position: relative;}.nav-links a:hover{color: var(--primary);}.nav-links a::after{content: ''; position: absolute; width: 0; height: 2px; bottom: -4px; left: 0; background-color: var(--primary); transition: var(--transition);}.nav-links a:hover::after{width: 100%;}.mobile-nav-toggle{display: none; background: none; border: none; color: var(--secondary); font-size: 1.5rem; cursor: pointer; padding: 0.5rem; z-index: 1001; transition: var(--transition); margin-left: auto;}.mobile-nav-toggle:hover{color: var(--primary);}@media (max-width: 992px){.mobile-nav-toggle{display: block;}.nav-links{position: fixed; top: 0; right: -100%; width: 80%; max-width: 400px; height: 100vh; background-color: var(--white); flex-direction: column; padding: 6rem 2rem 2rem; gap: 1.2rem; box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1); transition: 0.4s cubic-bezier(0.25, 0.8, 0.25, 1); z-index: 1000; align-items: flex-start; margin-left: 0;}.nav-links.active{right: 0;}.nav-links a{font-size: 1.1rem; width: 100%; padding: 0.5rem 0; border-bottom: 1px solid var(--border);}.nav-links a::after{display: none;}.nav-links .btn-primary{width: 100%; justify-content: center; margin-top: 1rem; font-size: 1rem;}.nav-links .lang-switch{margin-top: 2rem; width: 100%; padding-top: 2rem; border-top: 2px solid var(--border);}} .btn-primary{background-color: var(--primary); color: var(--white); padding: 0.6rem 1.2rem; border-radius: var(--radius); font-weight: 600; font-size: 0.95rem; transition: var(--transition); border: none; cursor: pointer; display: inline-flex; align-items: center; gap: 0.5rem; min-height: 40px;}.btn-primary:hover{background-color: #d94b1f; transform: translateY(-2px); box-shadow: var(--shadow-md); color: var(--white);}.btn-secondary:hover{background-color: #082144; transform: translateY(-2px); box-shadow: var(--shadow-md);}.btn-secondary{background-color: var(--secondary); color: var(--white); padding: 0.6rem 1.2rem; border-radius: var(--radius); font-weight: 600; font-size: 0.95rem; transition: var(--transition); min-height: 40px; display: inline-flex; align-items: center;}.login-btn{display: flex; align-items: center; gap: 0.4rem; padding: 0.4rem 0.4rem; border: 1px solid var(--border); border-radius: 20px; color: var(--text-light) !important; font-weight: 600; font-size: 0.85rem; transition: var(--transition); background-color: var(--white); min-height: 36px;}.login-btn:hover{background-color: var(--bg-color); border-color: var(--text-light); transform: translateY(-1px); color: var(--secondary) !important;}.nav-links .login-btn::after{display: none;}.hero{background: linear-gradient(rgba(10, 46, 92, 0.8), rgba(10, 46, 92, 0.8)), url('../images/hero-bg.webp') center/cover; height: 60vh; min-height: 500px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: var(--white); padding: 0 2rem;}.hero h1{color: var(--white); font-size: 3.5rem; margin-bottom: 1rem; animation: fadeInDown 0.8s ease;}.hero p{font-size: 1.2rem; max-width: 600px; margin-bottom: 2rem; opacity: 0.9; animation: fadeInUp 1s ease;}.search-bar{display: flex; background: var(--white); padding: 0.5rem; border-radius: 50px; width: 100%; max-width: 800px; box-shadow: var(--shadow-md); animation: fadeInUp 1.2s ease;}.search-bar input, .search-bar select{border: none; padding: 1rem 1.5rem; font-size: 1rem; outline: none; background: transparent; border-right: 1px solid var(--border);}.search-bar input{flex: 1;}.search-bar select{width: 200px; color: var(--text-light); cursor: pointer;}.search-bar .btn-primary{border-radius: 50px; padding: 0 2rem; min-height: 48px;}.container{max-width: 1200px; margin: 0 auto; padding: 4rem 2rem;}.section-title{text-align: center; margin-bottom: 3rem;}.section-title h2{font-size: 2.5rem; color: var(--secondary);}.section-title .underline{height: 4px; width: 80px; background-color: var(--primary); margin: 0.5rem auto 0; border-radius: 2px;}.property-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); gap: 2.5rem;}.property-card{background: var(--white); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: var(--transition); position: relative; display: flex; flex-direction: column; cursor: pointer;}.property-card:hover{transform: translateY(-10px); box-shadow: var(--shadow-hover);}.property-badge{position: absolute; top: 1rem; left: 1rem; background-color: var(--primary); color: var(--white); padding: 0.3rem 1rem; border-radius: 20px; font-weight: 600; font-size: 0.85rem; z-index: 10; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);}.property-badge.private{background-color: var(--secondary);}.property-img{width: 100%; height: 250px; object-fit: cover; transition: transform 0.5s ease;}.property-card:hover .property-img{transform: scale(1.05);}.property-img-wrapper{overflow: hidden; position: relative;}.property-details{padding: 1.5rem; flex: 1; display: flex; flex-direction: column;}.property-status{font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.5px; color: var(--text-light); font-weight: 600; margin-bottom: 0.2rem;}.property-price{font-size: 1.8rem; font-weight: 800; color: var(--primary); margin-bottom: 0.5rem;}.property-title{font-size: 1.2rem; margin-bottom: 0.5rem; color: var(--secondary);}.property-address{color: var(--text-light); font-size: 0.9rem; margin-bottom: 1rem; display: flex; align-items: center; gap: 0.3rem;}.property-features{display: flex; gap: 1.5rem; margin-bottom: 1.5rem; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 1rem 0;}.feature{display: flex; align-items: center; gap: 0.4rem; color: var(--text-main); font-weight: 500; font-size: 0.95rem;}.feature i{color: var(--primary);}.property-footer{display: flex; justify-content: space-between; align-items: center; margin-top: auto;}.agent-info{display: flex; align-items: center; gap: 0.8rem;}.agent-avatar{width: 40px; height: 40px; border-radius: 50%; background-color: var(--border); display: flex; align-items: center; justify-content: center; color: var(--secondary); font-weight: bold;}.agent-name{font-size: 0.9rem; font-weight: 600; color: var(--secondary);}.agent-type{font-size: 0.75rem; color: var(--text-light);}.contact-btn{background-color: transparent; color: var(--primary); border: 1px solid var(--primary); padding: 0.5rem 1rem; border-radius: var(--radius); font-weight: 600; transition: var(--transition); display: flex; align-items: center; gap: 0.4rem;}.contact-btn:hover{background-color: var(--primary); color: var(--white);}@keyframes fadeInUp{from{opacity: 0; transform: translateY(20px);}to{opacity: 1; transform: translateY(0);}} @keyframes fadeInDown{from{opacity: 0; transform: translateY(-20px);}to{opacity: 1; transform: translateY(0);}} footer{background-color: var(--secondary); color: var(--white); padding: 4rem 2rem 2rem; margin-top: 4rem;}.footer-content{max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 3rem; margin-bottom: 3rem;}.footer-col h3{color: var(--white); margin-bottom: 1.5rem;}.footer-col p{color: #adb5bd; margin-bottom: 1rem;}.social-links{display: flex; gap: 1rem; margin-top: 1.5rem;}.social-links a{width: 40px; height: 40px; border-radius: 50%; background-color: rgba(255, 255, 255, 0.1); display: flex; align-items: center; justify-content: center; transition: var(--transition);}.social-links a:hover{background-color: var(--primary); transform: translateY(-3px);}.footer-bottom{text-align: center; padding-top: 2rem; border-top: 1px solid rgba(255, 255, 255, 0.1); color: #adb5bd; font-size: 0.9rem;}@media (max-width: 768px){.nav-container{flex-direction: column; justify-content: center; gap: 1rem;}.hero{height: auto; min-height: auto; padding: 3rem 1.5rem; justify-content: flex-start;}.hero h1{font-size: 2.5rem;}.search-bar{flex-direction: column; border-radius: 12px; padding: 1rem;}.search-bar input, .search-bar select{border-right: none; border-bottom: 1px solid var(--border); width: 100%;}.search-bar .btn-primary{border-radius: 8px; margin-top: 1rem; padding: 1rem; justify-content: center;}} .page-header{background-color: var(--secondary); color: var(--white); padding: 4rem 2rem; text-align: center;}.page-header h1{color: var(--white); font-size: 2.5rem;}.faq-section{padding: 4rem 2rem; background-color: var(--white);}.faq-container{max-width: 800px; margin: 0 auto;}.faq-item{border-bottom: 1px solid var(--border); padding: 1rem 0;}.faq-question{width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; background: none; border: none; font-size: 1.1rem; font-weight: 600; color: var(--secondary); cursor: pointer; text-align: left; transition: var(--transition);}.faq-question:hover{color: var(--primary);}.faq-answer{max-height: 0; overflow: hidden; transition: all 0.4s cubic-bezier(0, 1, 0, 1); color: var(--text-light); font-size: 0.95rem; line-height: 1.6;}.faq-item.active .faq-answer{max-height: 500px; padding-bottom: 1rem; transition: all 0.4s cubic-bezier(1, 0, 1, 0);}.faq-question i{transition: transform 0.3s ease; color: var(--primary);}.faq-item.active .faq-question i{transform: rotate(180deg);}.stats-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px; margin-bottom: 40px;}.stat-card{background: white; border-radius: 12px; padding: 25px 20px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); text-align: center; border: 1px solid #e9ecef;}.stat-card i{font-size: 2.5rem; color: var(--primary); margin-bottom: 15px;}.stat-card h3{font-size: 2rem; margin-bottom: 5px; color: #212529;}.stat-card p{color: #6c757d; font-weight: 500;}.status-badge{display: inline-block; padding: 5px 12px; border-radius: 50px; font-size: 0.85rem; font-weight: 600; margin-right: 10px;}.status-active{background: #d4edda; color: #155724;}.status-sold{background: #cce5ff; color: #004085;}.status-expired{background: #fff3cd; color: #856404;}.filter-buttons{display: flex; gap: 10px; margin-bottom: 20px; flex-wrap: wrap;}.filter-btn{padding: 8px 16px; border: 1px solid #dee2e6; background: white; border-radius: 6px; cursor: pointer; font-weight: 500;}.filter-btn.active{background: var(--primary); color: white; border-color: var(--primary);}.filter-section{background: white; border-radius: 12px; padding: 25px; margin-bottom: 30px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); border: 1px solid #e9ecef;}.filter-section h3{margin-bottom: 20px; font-size: 1.3rem; color: var(--primary);}.filter-group{margin-bottom: 20px;}.filter-group label{display: block; margin-bottom: 8px; font-weight: 600; color: #495057;}.filter-group select, .filter-group input{width: 100%; padding: 10px 15px; border: 1px solid #ced4da; border-radius: 8px; font-family: inherit;}.price-range{display: flex; gap: 10px;}.price-range input{width: 50%;}.filter-actions{display: flex; gap: 10px; margin-top: 20px;}.filter-actions button, .filter-actions a{flex: 1; text-align: center; padding: 12px; border-radius: 8px; text-decoration: none; font-weight: 600;}.apply-filters{background: var(--primary); color: white; border: none; cursor: pointer;}.clear-filters{background: #e9ecef; color: #495057;}.results-header{display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; flex-wrap: wrap; gap: 15px;}.results-count{color: #6c757d; font-size: 1rem;}.sort-dropdown{padding: 8px 15px; border: 1px solid #ced4da; border-radius: 6px; font-family: inherit; background: white;}.no-results{text-align: center; padding: 60px 20px; background: #f8f9fa; border-radius: 12px; grid-column: 1/-1;}.no-results i{font-size: 4rem; color: #adb5bd; margin-bottom: 20px;}.pagination{display: flex; justify-content: center; gap: 10px; margin-top: 40px;}.pagination a, .pagination span{padding: 10px 15px; border: 1px solid #dee2e6; border-radius: 6px; text-decoration: none; color: var(--primary);}.pagination .current{background: var(--primary); color: white; border-color: var(--primary);}.filter-section{background: white; padding: 20px; border-radius: 12px; margin-bottom: 30px; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}.filter-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px;}.filter-item{display: flex; flex-direction: column; gap: 5px;}.filter-item label{font-weight: 600; font-size: 0.9rem; color: #495057;}.filter-item select, .filter-item input{padding: 10px; border: 1px solid #dee2e6; border-radius: 8px; font-family: inherit;}.filter-actions{display: flex; gap: 10px; margin-top: 20px;}.results-count{margin: 20px 0; color: #6c757d; font-weight: 500;}.type-filter-list{display: flex; flex-wrap: wrap; gap: 10px; margin-top: 15px; padding-top: 15px; border-top: 1px solid #dee2e6;}.type-filter-item{padding: 8px 16px; border: 1px solid #dee2e6; border-radius: 50px; cursor: pointer; font-size: 0.9rem; transition: all 0.2s; text-decoration: none; color: #212529;}.type-filter-item:hover{background: #e9ecef;}.type-filter-item.active{background: var(--primary); color: white; border-color: var(--primary);}.type-filter-item .count{color: #6c757d; margin-left: 5px;}.type-filter-item.active .count{color: rgba(255,255,255,0.8);}.no-results{text-align: center; padding: 60px 20px; background: #f8f9fa; border-radius: 12px; grid-column: 1/-1;}.no-results i{font-size: 4rem; color: #adb5bd; margin-bottom: 20px;}.sort-select{padding: 8px 12px; border: 1px solid #dee2e6; border-radius: 8px; margin-left: auto;}.btn-secondary{background: #6c757d; color: white; padding: 10px 20px; border-radius: 8px; text-decoration: none; display: inline-block; font-weight: 500;}.btn-secondary:hover{background: #5a6268;}.auth-container{max-width: 450px; margin: 3rem auto; padding: 2.5rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem; font-size: 2rem;}.auth-header p{color: #6c757d;}.auth-header i{font-size: 3rem; color: var(--primary); margin-bottom: 1rem;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.form-group input.error{border-color: #dc3545;}.btn-submit{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-submit:hover{background: #0a3d7a;}.btn-submit:disabled{background: #6c757d; cursor: not-allowed;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #e9ecef;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.info-text{background: #e7f3ff; border-left: 4px solid var(--primary); padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem; font-size: 0.95rem;}.info-text i{color: var(--primary); margin-right: 8px;}.countdown-timer{text-align: center; margin-top: 1rem; font-size: 0.9rem; color: #6c757d;}.listing-container{max-width: 900px; margin: -3rem auto 4rem; background: var(--white); border-radius: var(--radius); box-shadow: var(--shadow-md); padding: 3rem; position: relative; z-index: 10;}.form-section{margin-bottom: 2.5rem; padding-bottom: 2.5rem; border-bottom: 1px solid var(--border);}.form-section:last-child{border-bottom: none; margin-bottom: 0; padding-bottom: 0;}.form-section h3{color: var(--secondary); margin-bottom: 1.5rem; display: flex; align-items: center; gap: 0.5rem;}.form-section h3 i{color: var(--primary);}.form-row{display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-bottom: 1.5rem;}@media (max-width: 768px){.form-row{grid-template-columns: 1fr;}.listing-container{padding: 2rem;}} .form-group{display: flex; flex-direction: column; gap: 0.5rem;}.form-group.full-width{grid-column: 1 / -1;}label{font-weight: 500; color: var(--text-main); font-size: 0.95rem;}input[type="text"], input[type="number"], input[type="email"], input[type="tel"], select, textarea{padding: 0.8rem 1rem; border: 1px solid var(--border); border-radius: 8px; font-family: inherit; font-size: 1rem; transition: var(--transition); background-color: #fafafa;}input:focus, select:focus, textarea:focus{outline: none; border-color: var(--primary); background-color: var(--white); box-shadow: 0 0 0 3px rgba(240, 90, 40, 0.1);}.radio-group{display: flex; gap: 2rem; background: #fafafa; padding: 1rem; border-radius: 8px; border: 1px solid var(--border); flex-wrap: wrap;}.radio-option{display: flex; align-items: center; gap: 0.5rem; cursor: pointer;}.radio-option input[type="radio"]{accent-color: var(--primary); width: 18px; height: 18px;}.upload-area{border: 2px dashed var(--border); border-radius: var(--radius); padding: 3rem 2rem; text-align: center; background: #fafafa; transition: var(--transition); cursor: pointer;}.upload-area:hover, .upload-area.dragover{border-color: var(--primary); background: rgba(240, 90, 40, 0.02);}.upload-icon{font-size: 3rem; color: var(--primary); margin-bottom: 1rem;}.upload-text{color: var(--text-main); font-weight: 500; margin-bottom: 0.5rem;}.upload-subtext{color: var(--text-light); font-size: 0.9rem;}#file-input{display: none;}.image-preview-container{display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 1rem; margin-top: 1.5rem;}.preview-item{position: relative; border-radius: 8px; overflow: hidden; aspect-ratio: 1; box-shadow: var(--shadow-sm);}.preview-img{width: 100%; height: 100%; object-fit: cover;}.remove-img{position: absolute; top: 5px; right: 5px; background: rgba(0, 0, 0, 0.6); color: white; border: none; border-radius: 50%; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: var(--transition); font-size: 0.8rem;}.remove-img:hover{background: var(--primary); transform: scale(1.1);}.checkout-summary{background: var(--secondary); color: var(--white); padding: 2rem; border-radius: var(--radius); display: flex; justify-content: space-between; align-items: center; margin-top: 2rem;}.checkout-price-info p{opacity: 0.8; margin-bottom: 0.3rem;}.checkout-price-info h3{color: var(--white); font-size: 2rem; margin-bottom: 0; display: flex; align-items: center; gap: 0.5rem;}@media (max-width: 600px){.checkout-summary{flex-direction: column; text-align: center; gap: 1.5rem;}} .alert{padding: 1rem; border-radius: 8px; margin-bottom: 2rem;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.login-prompt{background: #fff3cd; color: #856404; padding: 1rem; border-radius: 8px; margin-bottom: 2rem; border: 1px solid #ffeeba;}.login-prompt a{color: var(--primary); font-weight: 600; text-decoration: underline;}.auth-container{max-width: 450px; margin: 3rem auto; padding: 2.5rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem; font-size: 2rem;}.auth-header p{color: #6c757d;}.auth-header i{font-size: 3rem; color: var(--primary); margin-bottom: 1rem;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.form-group input.error{border-color: #dc3545;}.form-options{display: flex; justify-content: space-between; align-items: center; margin: 1.5rem 0;}.remember-me{display: flex; align-items: center; gap: 8px;}.remember-me input[type="checkbox"]{width: 16px; height: 16px; cursor: pointer;}.remember-me label{color: #495057; cursor: pointer;}.forgot-password a{color: var(--primary); text-decoration: none; font-size: 0.9rem;}.forgot-password a:hover{text-decoration: underline;}.btn-login{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-login:hover{background: #0a3d7a;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #e9ecef;}.auth-footer p{margin-bottom: 0.5rem; color: #6c757d;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.register-buttons{display: flex; gap: 15px; margin-top: 1rem;}.register-btn{flex: 1; padding: 12px; border: 2px solid var(--primary); border-radius: 10px; text-align: center; text-decoration: none; color: var(--primary); font-weight: 600; transition: all 0.2s;}.register-btn:hover{background: var(--primary); color: white;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.demo-credentials{background: #f8f9fa; border-radius: 8px; padding: 1rem; margin-top: 2rem; font-size: 0.9rem;}.demo-credentials h4{margin-bottom: 0.5rem; color: #495057;}.demo-credentials p{margin-bottom: 0.25rem; color: #6c757d;}.pricing-section{padding: 4rem 2rem; max-width: 1200px; margin: 0 auto;}.pricing-intro{text-align: center; margin-bottom: 3rem; max-width: 700px; margin-left: auto; margin-right: auto;}.pricing-intro h2{font-size: 2.2rem; color: var(--secondary); margin-bottom: 1rem;}.pricing-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 2rem; justify-content: center;}.pricing-card{background: var(--white); border-radius: var(--radius); padding: 3rem 2rem; box-shadow: var(--shadow-md); text-align: center; transition: var(--transition); position: relative; overflow: hidden; border: 1px solid var(--border);}.pricing-card:hover{transform: translateY(-10px); box-shadow: var(--shadow-hover);}.pricing-card.premium{border: 2px solid var(--primary); box-shadow: 0 15px 30px rgba(240, 90, 40, 0.15);}.popular-badge{position: absolute; top: 1.5rem; right: -2rem; background: var(--primary); color: var(--white); padding: 0.5rem 3rem; transform: rotate(45deg); font-size: 0.8rem; font-weight: 700; letter-spacing: 1px;}.pricing-icon{font-size: 3rem; color: var(--secondary); margin-bottom: 1rem;}.pricing-card.premium .pricing-icon{color: var(--primary);}.pricing-title{font-size: 1.5rem; color: var(--secondary); margin-bottom: 1rem;}.price{font-size: 3rem; font-weight: 800; color: var(--text-main); margin-bottom: 0.5rem;}.price span{font-size: 1rem; color: var(--text-light); font-weight: 500;}.pricing-desc{color: var(--text-light); margin-bottom: 2rem; min-height: 72px;}.features-list{text-align: left; margin-bottom: 3rem;}.features-list li{margin-bottom: 1rem; color: var(--text-main); display: flex; align-items: flex-start; gap: 0.5rem;}.features-list li i{color: #10B981; margin-top: 0.3rem;}.pricing-card .btn-primary, .pricing-card .btn-secondary{width: 100%; justify-content: center;}.duration-badge{background: #f8f9fa; padding: 0.25rem 0.75rem; border-radius: 50px; font-size: 0.9rem; color: var(--text-light); display: inline-block; margin-bottom: 1rem;}.pricing-section{padding: 4rem 2rem; max-width: 1200px; margin: 0 auto;}.pricing-intro{text-align: center; margin-bottom: 3rem; max-width: 700px; margin-left: auto; margin-right: auto;}.pricing-intro h2{font-size: 2.2rem; color: var(--secondary); margin-bottom: 1rem;}.pricing-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 2rem; justify-content: center;}.pricing-card{background: var(--white); border-radius: var(--radius); padding: 3rem 2rem; box-shadow: var(--shadow-md); text-align: center; transition: var(--transition); position: relative; overflow: hidden; border: 1px solid var(--border);}.pricing-card:hover{transform: translateY(-10px); box-shadow: var(--shadow-hover);}.pricing-card.premium{border: 2px solid var(--primary); box-shadow: 0 15px 30px rgba(240, 90, 40, 0.15);}.popular-badge{position: absolute; top: 1.5rem; right: -2rem; background: var(--primary); color: var(--white); padding: 0.5rem 3rem; transform: rotate(45deg); font-size: 0.8rem; font-weight: 700; letter-spacing: 1px;}.pricing-icon{font-size: 3rem; color: var(--secondary); margin-bottom: 1rem;}.pricing-card.premium .pricing-icon{color: var(--primary);}.pricing-title{font-size: 1.5rem; color: var(--secondary); margin-bottom: 1rem;}.price{font-size: 3rem; font-weight: 800; color: var(--text-main); margin-bottom: 0.5rem;}.price span{font-size: 1rem; color: var(--text-light); font-weight: 500;}.pricing-desc{color: var(--text-light); margin-bottom: 2rem; min-height: 72px;}.features-list{text-align: left; margin-bottom: 3rem;}.features-list li{margin-bottom: 1rem; color: var(--text-main); display: flex; align-items: flex-start; gap: 0.5rem;}.features-list li i{color: #10B981; margin-top: 0.3rem;}.pricing-card .btn-primary, .pricing-card .btn-secondary{width: 100%; justify-content: center;}.duration-badge{background: #f8f9fa; padding: 0.25rem 0.75rem; border-radius: 50px; font-size: 0.9rem; color: var(--text-light); display: inline-block; margin-bottom: 1rem;}.comparison-table{margin-top: 3rem; overflow-x: auto;}.comparison-table table{width: 100%; max-width: 800px; margin: 0 auto; border-collapse: collapse; background: white; border-radius: 12px; overflow: hidden; box-shadow: 0 5px 15px rgba(0,0,0,0.05);}.comparison-table th{background: var(--primary); color: white; padding: 1rem; font-weight: 600;}.comparison-table td{padding: 1rem; border-bottom: 1px solid #dee2e6;}.comparison-table tr:last-child td{border-bottom: none;}.comparison-table tr:hover{background: #f8f9fa;}.dashboard-container{max-width: 1200px; margin: 2rem auto; padding: 0 20px;}.welcome-card{background: linear-gradient(135deg, var(--primary) 0%, #1a4a8a 100%); color: white; padding: 2rem; border-radius: 16px; margin-bottom: 2rem; box-shadow: 0 10px 30px rgba(10, 46, 92, 0.2);}.welcome-card h1{color: white; margin-bottom: 0.5rem; font-size: 2rem;}.welcome-card p{opacity: 0.9; margin-bottom: 1.5rem;}.stats-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 20px; margin-bottom: 30px;}.stat-card{background: white; border-radius: 12px; padding: 1.5rem; box-shadow: 0 5px 15px rgba(0,0,0,0.05); text-align: center; border: 1px solid #e9ecef; transition: transform 0.2s;}.stat-card:hover{transform: translateY(-5px); box-shadow: 0 10px 25px rgba(0,0,0,0.1);}.stat-card i{font-size: 2.5rem; color: var(--primary); margin-bottom: 1rem;}.stat-card .stat-value{font-size: 2rem; font-weight: 700; color: #212529; margin-bottom: 0.25rem;}.stat-card .stat-label{color: #6c757d; font-weight: 500;}.package-card{background: #f8f9fa; border-radius: 12px; padding: 1.5rem; margin-bottom: 2rem; border-left: 4px solid var(--primary);}.package-card h3{margin-bottom: 1rem; color: var(--primary);}.package-details{display: flex; gap: 2rem; flex-wrap: wrap;}.package-detail-item{display: flex; align-items: center; gap: 10px;}.package-detail-item i{color: var(--primary); font-size: 1.2rem;}.progress-bar{width: 100%; height: 8px; background: #e9ecef; border-radius: 4px; margin: 1rem 0; overflow: hidden;}.progress-fill{height: 100%; background: var(--primary); border-radius: 4px; transition: width 0.3s;}.listing-limit-warning{background: #fff3cd; color: #856404; padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem; border-left: 4px solid #ffc107;}.listing-limit-warning i{margin-right: 10px;}.section-header{display: flex; justify-content: space-between; align-items: center; margin-bottom: 2rem; flex-wrap: wrap; gap: 1rem;}.section-header h2{font-size: 1.8rem; margin-bottom: 0;}.btn-add{background-color: #28a745; color: white; padding: 12px 24px; border-radius: 8px; text-decoration: none; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; transition: background-color 0.2s;}.btn-add:hover{background-color: #218838; color: white;}.btn-add.disabled{background-color: #6c757d; pointer-events: none; opacity: 0.6;}.property-card{position: relative;}.status-badge{position: absolute; top: 10px; right: 10px; padding: 5px 12px; border-radius: 50px; font-size: 0.85rem; font-weight: 600; z-index: 2;}.status-active{background: #d4edda; color: #155724;}.status-sold{background: #cce5ff; color: #004085;}.status-expired{background: #fff3cd; color: #856404;}.status-pending{background: #e2e3e5; color: #383d41;}.action-buttons{display: flex; gap: 8px; margin-top: 15px; flex-wrap: wrap;}.action-btn{flex: 1; padding: 8px 12px; border-radius: 6px; text-decoration: none; font-size: 0.9rem; font-weight: 500; text-align: center; transition: all 0.2s; border: none; cursor: pointer;}.btn-edit{background: #6c757d; color: white;}.btn-edit:hover{background: #5a6268; color: white;}.btn-sold{background: #007bff; color: white;}.btn-sold:hover{background: #0056b3; color: white;}.btn-renew{background: #ffc107; color: #212529;}.btn-renew:hover{background: #e0a800;}.btn-delete{background: #dc3545; color: white;}.btn-delete:hover{background: #c82333; color: white;}.image-count{position: absolute; bottom: 10px; right: 10px; background: rgba(0,0,0,0.6); color: white; padding: 4px 8px; border-radius: 4px; font-size: 0.8rem; z-index: 2;}.no-listings{text-align: center; padding: 4rem 2rem; background: #f8f9fa; border-radius: 12px; grid-column: 1/-1;}.no-listings i{font-size: 4rem; color: #adb5bd; margin-bottom: 1rem;}.no-listings h3{margin-bottom: 0.5rem; color: #495057;}.no-listings p{color: #6c757d; margin-bottom: 2rem;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.member-since{font-size: 0.9rem; opacity: 0.8;}.quick-tips{background: #e7f3ff; border-radius: 8px; padding: 1rem; margin-top: 1rem;}.quick-tips h4{color: var(--primary); margin-bottom: 0.5rem;}.quick-tips ul{list-style: none; padding: 0;}.quick-tips li{margin-bottom: 0.5rem; display: flex; align-items: center; gap: 8px;}.quick-tips i{color: var(--primary);}.property-header-section{background-color: var(--white); padding: 3rem 2rem 2rem;}.property-header-container{max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid var(--border); padding-bottom: 2rem; flex-wrap: wrap; gap: 1rem;}.prop-title-area h1{font-size: 2.2rem; color: var(--secondary); margin-bottom: 0.5rem;}.prop-address{color: var(--text-light); font-size: 1.1rem;}.prop-price-area{text-align: right;}.prop-price{font-size: 2.5rem; color: var(--primary); font-weight: 800;}.gallery-grid{max-width: 1200px; margin: 2rem auto; padding: 0 2rem; display: grid; grid-template-columns: 2fr 1fr; grid-template-rows: 250px 250px; gap: 1rem;}.gallery-main{grid-row: 1 / span 2; border-radius: var(--radius); overflow: hidden;}.gallery-sub{border-radius: var(--radius); overflow: hidden;}.gallery-img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; cursor: pointer;}.gallery-img:hover{transform: scale(1.05);}.content-container{max-width: 1200px; margin: 3rem auto; padding: 0 2rem; display: grid; grid-template-columns: 2fr 1fr; gap: 3rem;}@media (max-width: 900px){.gallery-grid{grid-template-columns: 1fr; grid-template-rows: auto;}.gallery-main{grid-row: auto;}.content-container{grid-template-columns: 1fr;}.prop-price-area{text-align: left;}} .prop-description{background: var(--white); padding: 2.5rem; border-radius: var(--radius); box-shadow: var(--shadow-sm);}.prop-description h3{font-size: 1.5rem; margin-bottom: 1.5rem; border-bottom: 2px solid var(--border); padding-bottom: 0.5rem;}.desc-text{color: var(--text-light); line-height: 1.8; margin-bottom: 2rem;}.key-features{display: flex; flex-wrap: wrap; gap: 2rem; margin-bottom: 2rem; background: var(--bg-color); padding: 1.5rem; border-radius: var(--radius);}.key-feature{display: flex; align-items: center; gap: 0.8rem; font-size: 1.1rem; font-weight: 600; color: var(--secondary);}.key-feature i{color: var(--primary); font-size: 1.5rem;}.sidebar-card{background: var(--white); padding: 2.5rem; border-radius: var(--radius); box-shadow: var(--shadow-sm); position: sticky; top: 100px;}.agent-profile{text-align: center; margin-bottom: 2rem;}.agent-profile .agent-avatar{width: 80px; height: 80px; font-size: 1.5rem; margin: 0 auto 1rem;}.contact-form .form-group{margin-bottom: 1rem;}.contact-form input, .contact-form textarea{width: 100%; padding: 1rem; border: 1px solid var(--border); border-radius: var(--radius); font-family: inherit; outline: none; transition: var(--transition);}.contact-form input:focus, .contact-form textarea:focus{border-color: var(--primary);}.contact-form .btn-primary{width: 100%; justify-content: center;}.auth-container{max-width: 500px; margin: 3rem auto; padding: 2rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem;}.auth-header p{color: #6c757d;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.form-group input.error{border-color: #dc3545;}.password-hint{font-size: 0.85rem; color: #6c757d; margin-top: 0.25rem;}.checkbox-group{display: flex; align-items: center; gap: 10px; margin: 1.5rem 0;}.checkbox-group input[type="checkbox"]{width: 18px; height: 18px; cursor: pointer;}.checkbox-group label{color: #495057; cursor: pointer;}.checkbox-group a{color: var(--primary); text-decoration: none;}.checkbox-group a:hover{text-decoration: underline;}.btn-register{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-register:hover{background: #0a3d7a;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #e9ecef;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.role-selector{display: flex; gap: 20px; margin-bottom: 2rem; justify-content: center;}.role-option{flex: 1; text-align: center; padding: 1rem; border: 2px solid #e9ecef; border-radius: 12px; cursor: pointer; transition: all 0.2s; text-decoration: none; color: inherit;}.role-option:hover{border-color: var(--primary);}.role-option.active{border-color: var(--primary); background: rgba(10, 46, 92, 0.05);}.role-option i{font-size: 2rem; color: var(--primary); margin-bottom: 0.5rem;}.role-option h3{margin-bottom: 0.25rem;}.role-option p{font-size: 0.9rem; color: #6c757d;}.info-box{background: #e7f3ff; border-left: 4px solid var(--primary); padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.info-box i{color: var(--primary); margin-right: 8px;}.auth-container{max-width: 500px; margin: 3rem auto; padding: 2rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem;}.auth-header p{color: #6c757d;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.form-group input.error{border-color: #dc3545;}.password-hint{font-size: 0.85rem; color: #6c757d; margin-top: 0.25rem;}.checkbox-group{display: flex; align-items: center; gap: 10px; margin: 1.5rem 0;}.checkbox-group input[type="checkbox"]{width: 18px; height: 18px; cursor: pointer;}.checkbox-group label{color: #495057; cursor: pointer;}.checkbox-group a{color: var(--primary); text-decoration: none;}.checkbox-group a:hover{text-decoration: underline;}.btn-register{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-register:hover{background: #0a3d7a;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #e9ecef;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.role-selector{display: flex; gap: 20px; margin-bottom: 2rem; justify-content: center;}.role-option{flex: 1; text-align: center; padding: 1rem; border: 2px solid #e9ecef; border-radius: 12px; cursor: pointer; transition: all 0.2s; text-decoration: none; color: inherit;}.role-option:hover{border-color: var(--primary);}.role-option.active{border-color: var(--primary); background: rgba(10, 46, 92, 0.05);}.role-option i{font-size: 2rem; color: var(--primary); margin-bottom: 0.5rem;}.role-option h3{margin-bottom: 0.25rem;}.role-option p{font-size: 0.9rem; color: #6c757d;}.auth-container{max-width: 500px; margin: 3rem auto; padding: 2rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem;}.auth-header p{color: #6c757d;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.form-group input.error{border-color: #dc3545;}.password-hint{font-size: 0.85rem; color: #6c757d; margin-top: 0.25rem;}.checkbox-group{display: flex; align-items: center; gap: 10px; margin: 1.5rem 0;}.checkbox-group input[type="checkbox"]{width: 18px; height: 18px; cursor: pointer;}.checkbox-group label{color: #495057; cursor: pointer;}.checkbox-group a{color: var(--primary); text-decoration: none;}.checkbox-group a:hover{text-decoration: underline;}.btn-register{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-register:hover{background: #0a3d7a;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #e9ecef;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}.role-selector{display: flex; gap: 20px; margin-bottom: 2rem; justify-content: center;}.role-option{flex: 1; text-align: center; padding: 1rem; border: 2px solid #e9ecef; border-radius: 12px; cursor: pointer; transition: all 0.2s;}.role-option:hover{border-color: var(--primary);}.role-option.active{border-color: var(--primary); background: rgba(10, 46, 92, 0.05);}.role-option i{font-size: 2rem; color: var(--primary); margin-bottom: 0.5rem;}.role-option h3{margin-bottom: 0.25rem;}.role-option p{font-size: 0.9rem; color: #6c757d;}.auth-container{max-width: 450px; margin: 3rem auto; padding: 2.5rem; background: white; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.1);}.auth-header{text-align: center; margin-bottom: 2rem;}.auth-header h1{color: var(--primary); margin-bottom: 0.5rem; font-size: 2rem;}.auth-header p{color: #6c757d;}.auth-header i{font-size: 3rem; color: var(--primary); margin-bottom: 1rem;}.form-group{margin-bottom: 1.5rem;}.form-group label{display: block; margin-bottom: 0.5rem; font-weight: 600; color: #495057;}.form-group input{width: 100%; padding: 12px 15px; border: 2px solid #e9ecef; border-radius: 10px; font-size: 1rem; transition: border-color 0.2s;}.form-group input:focus{outline: none; border-color: var(--primary);}.password-hint{font-size: 0.85rem; color: #6c757d; margin-top: 0.25rem;}.btn-submit{width: 100%; padding: 14px; background: var(--primary); color: white; border: none; border-radius: 10px; font-size: 1.1rem; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}.btn-submit:hover{background: #0a3d7a;}.auth-footer{text-align: center; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #e9ecef;}.auth-footer a{color: var(--primary); text-decoration: none; font-weight: 600;}.auth-footer a:hover{text-decoration: underline;}.alert{padding: 1rem; border-radius: 8px; margin-bottom: 1.5rem;}.alert-error{background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;}.alert-success{background: #d4edda; color: #155724; border: 1px solid #c3e6cb;}