*{margin: 0; padding: 0; box-sizing: border-box;}
html{height: 100%;}
body{font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; line-height: 1.6; color: #333; background-color: #fff; min-height: 100%; display: flex; flex-direction: column;}
.container{max-width: 1400px; margin: 0 auto; padding: 0 30px; width: 100%;}
.site-header{background-color: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.08); position: sticky; top: 0; z-index: 1000; width: 100%;}
.site-branding{display: flex; align-items: center; flex: 0 0 auto;}
.site-logo{max-height: 50px; width: auto; display: block;}
.site-title{font-size: 1.75rem; font-weight: 700; text-decoration: none; color: #1a4a8e; margin: 0; display: flex; align-items: center; gap: 0.5rem;}
.site-title a{color: #1a4a8e; text-decoration: none; transition: color 0.3s;}
.site-title a:hover{color: #f7c500;}
@keyframes patternMove{
    0%, 100% { transform: translate(0, 0) scale(1); }
    50% { transform: translate(-20px, -20px) scale(1.1); }
}
.badge-icon{font-size: 1.2rem; animation: pulse 2s ease-in-out infinite;}
@keyframes pulse{
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}
.btn-icon{font-size: 1.3rem;}
.stat-label{font-size: 0.95rem; opacity: 0.9; font-weight: 400; text-transform: uppercase; letter-spacing: 0.05em;}
@keyframes fadeInUp{
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.content-section{max-width: 1400px; margin: 0 auto; padding: 6rem 20px;}
.section-title{font-size: 3rem; text-align: center; margin-bottom: 3rem; color: #1a4a8e; font-weight: 800; line-height: 1.2; letter-spacing: -0.02em; position: relative; padding-bottom: 1.5rem;}
.section-title::after{content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 80px; height: 4px; background: linear-gradient(135deg, #f7c500 0%, #ffd700 100%); border-radius: 2px;}
.placeholder-icon{font-size: 3rem; opacity: 0.5;}
#page{flex: 1; display: flex; flex-direction: column;}
.site-main{flex: 1;}
.site-footer{background-color: #1a4a8e; color: #fff; padding: 2rem 0; text-align: center; margin-top: auto; width: 100%;}
.site-info p{margin-bottom: 0.5rem;}
@keyframes fadeInUp{
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (max-width: 768px){.site-logo{max-height: 60px;}
.section-title{font-size: 2rem;}
}
.mobile-menu-close{display: none;}
@media (min-width: 769px){.mobile-categories-list{display: none !important;}
}
@keyframes fadeIn{
    from {
        opacity: 0;
        transform: translateX(15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
.search-form{display: flex; align-items: center; gap: 0.5rem;}
.search-form input[type="search"]{padding: 0.5rem 1rem; border: 1px solid #ddd; border-radius: 25px; font-size: 0.9rem; min-width: 200px; outline: none; transition: border-color 0.3s;}
.search-form input[type="search"]:focus{border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.1);}
.search-submit{background: #1a4a8e; color: #fff; border: none; border-radius: 50%; width: 40px; height: 40px; cursor: pointer; font-size: 1.2rem; display: flex; align-items: center; justify-content: center; transition: background 0.3s;}
.search-submit:hover{background: #153a6e;}
.btn{display: inline-flex; align-items: center; justify-content: center; padding: 0.75rem 1.5rem; background: #1a4a8e; color: #fff; text-decoration: none; border-radius: 5px; border: none; cursor: pointer; font-size: 1rem; font-weight: 600; transition: all 0.3s; text-align: center; gap: 0.5rem;}
.btn:hover{background: #153a6e; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.2);}
.btn-primary{background: #1a4a8e; color: #fff;}
.btn-primary:hover{background: #153a6e;}
.btn-icon{font-weight: 700; display: inline-flex; align-items: center; justify-content: center;}
.btn-large{padding: 1rem 2rem; font-size: 1.1rem;}
.login-form-container,.register-form-container{max-width: 600px; margin: 2rem auto; padding: 3rem; background: #fff; border-radius: 15px; box-shadow: 0 4px 20px rgba(0,0,0,0.1); border: 1px solid #e9ecef;}
.register-form-container h2{font-size: 2rem; margin-bottom: 2rem;}
.add-listing-wizard{max-width: 900px; margin: 2rem auto; padding: 2rem; background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.1);}
.wizard-progress{margin-bottom: 3rem;}
.progress-steps{display: flex; justify-content: space-between; align-items: flex-start; position: relative; padding: 0 2rem;}
.progress-steps::before{content: ''; position: absolute; top: 25px; left: 10%; right: 10%; height: 2px; background: #e9ecef; z-index: 0;}
.step{flex: 1; display: flex; flex-direction: column; align-items: center; position: relative; z-index: 1;}
.step-circle{width: 50px; height: 50px; border-radius: 50%; background: #e9ecef; color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.2rem; margin-bottom: 0.5rem; transition: all 0.3s; border: 3px solid #e9ecef;}
.step.active .step-circle{background: #ff6b6b; border-color: #ff6b6b; transform: scale(1.1);}
.step.completed .step-circle{background: #51cf66; border-color: #51cf66;}
.step-label{font-size: 0.85rem; text-align: center; color: #666; max-width: 120px; line-height: 1.3;}
.step.active .step-label{color: #ff6b6b; font-weight: 600;}
.wizard-step{display: none;}
.wizard-step.active{display: block; animation: fadeIn 0.3s;}
@keyframes fadeIn{
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.step-content{min-height: 400px; padding: 2rem 0;}
.step-title{font-size: 1.8rem; color: #1a4a8e; margin-bottom: 2rem; text-align: center;}
.ad-type-selection{display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1.5rem; margin-top: 2rem;}
.ad-type-option{cursor: pointer;}
.ad-type-option input[type="radio"]{display: none;}
.ad-type-card{background: #f8f9fa; border: 3px solid #e9ecef; border-radius: 12px; padding: 2rem 1.5rem; text-align: center; transition: all 0.3s; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.ad-type-card:hover{border-color: #1a4a8e; transform: translateY(-5px); box-shadow: 0 4px 12px rgba(0,0,0,0.1);}
.ad-type-option input[type="radio"]:checked + .ad-type-card,.ad-type-card.selected{border-color: #ff6b6b; background: #fff5f5; transform: translateY(-5px); box-shadow: 0 4px 12px rgba(255, 107, 107, 0.2);}
.ad-type-icon{font-size: 3rem; margin-bottom: 1rem;}
.ad-type-text{font-size: 1.1rem; font-weight: 600; color: #333;}
.step-actions{display: flex; justify-content: space-between; gap: 1rem; padding-top: 2rem; border-top: 1px solid #e9ecef; margin-top: 2rem;}
.step-actions .btn{min-width: 120px;}
.form-control.error{border-color: #ff6b6b; box-shadow: 0 0 0 3px rgba(255, 107, 107, 0.1);}
@media (max-width: 768px){.add-listing-wizard{padding: 1rem;}
.progress-steps{padding: 0 1rem;}
.step-circle{width: 40px; height: 40px; font-size: 1rem;}
.step-label{font-size: 0.75rem; max-width: 80px;}
.ad-type-selection{grid-template-columns: 1fr; gap: 1rem;}
.step-content{min-height: auto; padding: 1rem 0;}
.step-title{font-size: 1.4rem;}
.step-actions{flex-direction: column;}
.step-actions .btn{width: 100%;}
}
@media (max-width: 480px){.progress-steps{padding: 0 0.5rem;}
.step-label{font-size: 0.7rem; max-width: 60px;}
.step-circle{width: 35px; height: 35px; font-size: 0.9rem;}
}
.login-form-container h2,.register-form-container h2{color: #1a4a8e; margin-bottom: 1.5rem; text-align: center;}
.form-group{margin-bottom: 2rem;}
.form-group label{display: block; margin-bottom: 0.75rem; font-weight: 600; color: #333; font-size: 1.05rem;}
.form-group .required{color: #e74c3c;}
.form-control{width: 100%; padding: 0.75rem; border: 1px solid #ddd; border-radius: 5px; font-size: 1rem; transition: border-color 0.3s;}
.form-control:focus{outline: none; border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.1);}
.form-control-large{padding: 1rem 1.25rem; font-size: 1.1rem; border: 2px solid #ddd; border-radius: 8px;}
.form-control-large:focus{border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.15);}
.form-row{display: grid; grid-template-columns: 1fr 1fr; gap: 1rem;}
textarea.form-control{min-height: 120px; resize: vertical; font-family: inherit; padding: 0.75rem; border: 1px solid #ddd; border-radius: 5px; font-size: 1rem; transition: border-color 0.3s;}
textarea.form-control:focus{outline: none; border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.1);}
.error-message,.success-message{padding: 1rem; border-radius: 5px; margin-bottom: 1.5rem;}
.error-message{background: #fee; color: #c33; border: 1px solid #fcc;}
.success-message{background: #efe; color: #3c3; border: 1px solid #cfc;}
.login-footer,.register-footer{margin-top: 1.5rem; text-align: center; padding-top: 1.5rem; border-top: 1px solid #ddd;}
.login-footer a,.register-footer a{color: #1a4a8e; text-decoration: none;}
.login-footer a:hover,.register-footer a:hover{text-decoration: underline;}
.page-title{font-size: 2.5rem; color: #1a4a8e; margin: 0;}
.filter-form{display: flex; gap: 1rem; flex-wrap: wrap;}
.filter-form input,.filter-form select{flex: 1; min-width: 200px; padding: 0.75rem; border: 1px solid #ddd; border-radius: 5px;}
.listings-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 2rem; margin-bottom: 2rem;}
.listing-card{background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.1); transition: transform 0.3s, box-shadow 0.3s; position: relative;}
.listing-card:hover{transform: translateY(-5px); box-shadow: 0 4px 15px rgba(0,0,0,0.2);}
.listing-card-link{display: block; text-decoration: none; color: inherit; width: 100%; height: 100%;}
.listing-card-link:hover{text-decoration: none; color: inherit;}
.listing-image{width: 100%; height: 250px; overflow: hidden; background: #f0f0f0; position: relative;}
.listing-image::after{content: ''; position: absolute; bottom: 10px; right: 10px; width: 80px; height: 30px; background-image: var(--site-logo-url); background-size: contain; background-repeat: no-repeat; background-position: center; opacity: 0.7; z-index: 10; pointer-events: none;}
.listing-image-placeholder{display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f5f7fa 0%, #e9ecef 100%);}
.placeholder-icon{font-size: 4rem; opacity: 0.3;}
.listing-image img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s;}
.listing-card:hover .listing-image img{transform: scale(1.05);}
.listing-content{padding: 1.5rem;}
.listing-title{margin: 0 0 1rem 0; font-size: 1.3rem; color: #1a4a8e;}
.listing-card-link:hover .listing-title{color: #153a6e;}
.listing-meta{display: flex; gap: 1rem; margin-bottom: 1rem; flex-wrap: wrap;}
.listing-price{font-size: 1.2rem; font-weight: 700; color: #1a4a8e;}
.listing-location{color: #666; font-size: 0.9rem;}
.listing-excerpt{color: #555; margin-bottom: 1rem; line-height: 1.6;}
.listing-footer{display: flex; justify-content: space-between; align-items: center; padding-top: 1rem; border-top: 1px solid #e9ecef; font-size: 0.9rem; color: #666;}
.listing-category{background: #f0f0f0; padding: 0.25rem 0.75rem; border-radius: 15px; font-size: 0.85rem;}
.badge-icon{font-size: 0.9rem;}
.badge-text{text-transform: uppercase; letter-spacing: 0.5px;}
.single-promoted-listing .promoted-badge-large{display: inline-flex; align-items: center; gap: 0.5rem; background: linear-gradient(135deg, #f7c500 0%, #ffd700 100%); color: #1a4a8e; padding: 0.75rem 1.5rem; border-radius: 25px; font-size: 1rem; font-weight: 700; margin-bottom: 1.5rem; box-shadow: 0 2px 8px rgba(247, 197, 0, 0.3);}
.single-promoted-listing .promoted-badge-large .badge-icon{font-size: 1.2rem;}
.original-listing-notice{background: #e0e7ff; border: 2px solid #1a4a8e; border-radius: 10px; padding: 1.5rem; margin-bottom: 2rem; text-align: center;}
.original-listing-notice p{margin: 0 0 1rem 0; color: #1a4a8e; font-size: 1.1rem;}
.listing-header{margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 2px solid #e9ecef;}
.listing-title{font-size: 2.5rem; color: #1a4a8e; margin-bottom: 1rem;}
.listing-meta-top{display: flex; gap: 1.5rem; flex-wrap: wrap; align-items: center; margin-top: 1.5rem;}
.listing-price-wrapper{display: flex; align-items: baseline; gap: 0.5rem; padding: 0;}
.price-label{font-size: 1.1rem; font-weight: 500; color: #666; line-height: 1.2;}
.price-symbol{font-size: 1.8rem; font-weight: 700; color: #1a4a8e; line-height: 1;}
.listing-price-large{font-size: 1.8rem; font-weight: 800; color: #1a4a8e; letter-spacing: -0.01em; line-height: 1;}
.listing-location-wrapper{display: flex; align-items: center; gap: 0.75rem; background: linear-gradient(135deg, #e0e7ff 0%, #f0f4f8 100%); padding: 0.75rem 1.25rem; border-radius: 10px; border: 1px solid #c7d2fe;}
.location-icon{font-size: 1.4rem; line-height: 1; display: flex; align-items: center;}
.listing-location{font-size: 1.1rem; font-weight: 600; color: #1a4a8e; line-height: 1.2;}
.listing-condition-wrapper{display: flex; align-items: center; gap: 0.75rem; background: #fff; padding: 0.75rem 1.25rem; border-radius: 10px; border: 1px solid #e9ecef; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}
.condition-icon{font-size: 1.4rem; line-height: 1; display: flex; align-items: center;}
.listing-condition{font-size: 1.1rem; font-weight: 600; color: #555; text-transform: capitalize; line-height: 1.2;}
.listing-content-wrapper{display: grid; grid-template-columns: 2fr 1fr; gap: 2rem;}
.listing-image-large{margin-bottom: 2rem; position: relative;}
.listing-image-large::after{content: ''; position: absolute; bottom: 15px; right: 15px; width: 100px; height: 40px; background-image: var(--site-logo-url); background-size: contain; background-repeat: no-repeat; background-position: center; opacity: 0.7; z-index: 10; pointer-events: none;}
.listing-image-large img{width: 100%; height: auto; border-radius: 10px;}
.listing-gallery{margin-bottom: 2rem;}
.gallery-main-image{margin-bottom: 1rem; border-radius: 10px; overflow: hidden; position: relative;}
.gallery-main-image::after{content: ''; position: absolute; bottom: 15px; right: 15px; width: 100px; height: 40px; background-image: var(--site-logo-url); background-size: contain; background-repeat: no-repeat; background-position: center; opacity: 0.7; z-index: 10; pointer-events: none;}
.gallery-main-image img{width: 100%; height: auto; display: block; cursor: pointer; transition: transform 0.3s;}
.gallery-main-image img:hover{transform: scale(1.02);}
.gallery-thumbnails{display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 0.5rem;}
.gallery-thumb{cursor: pointer; border-radius: 5px; overflow: hidden; border: 2px solid transparent; transition: all 0.3s;}
.gallery-thumb:hover{border-color: #1a4a8e; transform: scale(1.05);}
.gallery-thumb.active{border-color: #ff6b6b;}
.gallery-thumb img{width: 100%; height: 100px; object-fit: cover; display: block;}
.register-company-container{max-width: 800px; margin: 2rem auto; padding: 2rem; background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.1);}
.register-company-container h2{color: #1a4a8e; margin-bottom: 1.5rem; text-align: center;}
.single-company{max-width: 1200px; margin: 2rem auto;}
.company-header{display: grid; grid-template-columns: 200px 1fr; gap: 2rem; margin-bottom: 3rem; padding: 2rem; background: #f8f9fa; border-radius: 10px;}
.company-logo-section{display: flex; align-items: flex-start;}
.company-logo{width: 200px; height: 200px; border-radius: 10px; overflow: hidden; background: #fff; padding: 1rem; display: flex; align-items: center; justify-content: center;}
.company-logo img{width: 100%; height: 100%; object-fit: contain;}
.company-logo-placeholder{width: 200px; height: 200px; background: linear-gradient(135deg, #f5f7fa 0%, #e9ecef 100%); border-radius: 10px; display: flex; align-items: center; justify-content: center;}
.company-logo-placeholder .placeholder-icon{font-size: 5rem; opacity: 0.3;}
.company-info{flex: 1;}
.company-title{font-size: 2.5rem; color: #1a4a8e; margin-bottom: 1.5rem;}
.company-meta{display: flex; flex-direction: column; gap: 0.75rem;}
.company-contact{margin: 0; color: #555; font-size: 1rem;}
.company-contact a{color: #1a4a8e; text-decoration: none;}
.company-contact a:hover{text-decoration: underline;}
.company-description{margin-bottom: 3rem; padding: 2rem; background: #f8f9fa; border-radius: 10px;}
.company-description h2{color: #1a4a8e; margin-bottom: 1rem;}
.company-listings-section{margin-top: 3rem;}
.company-listings-section h2{color: #1a4a8e; margin-bottom: 2rem; font-size: 2rem;}
.user-dashboard-layout{display: flex; gap: 2rem; margin: 2rem 0; min-height: calc(100vh - 300px);}
.dashboard-sidebar{width: 280px; flex-shrink: 0; background: #2d2d2d; border-radius: 15px; padding: 1.5rem; color: #fff; height: fit-content; position: sticky; top: 2rem;}
.sidebar-user-info{text-align: center; padding-bottom: 1.5rem; border-bottom: 1px solid #444; margin-bottom: 1.5rem;}
.sidebar-avatar{margin-bottom: 1rem;}
.sidebar-avatar .dashboard-avatar{width: 80px; height: 80px; border-radius: 50%; border: 3px solid #4a9eff;}
.sidebar-avatar .avatar-placeholder{width: 80px; height: 80px; border-radius: 50%; background: #3d3d3d; display: flex; align-items: center; justify-content: center; font-size: 3rem; border: 3px solid #4a9eff; margin: 0 auto;}
.sidebar-user-name{font-size: 1.3rem; color: #fff; margin: 0 0 1rem 0; font-weight: 600;}
.sidebar-stats{display: flex; flex-direction: column; gap: 0.5rem; font-size: 0.9rem;}
.sidebar-stat{display: flex; justify-content: space-between; align-items: center;}
.sidebar-stat .stat-label{color: #aaa;}
.sidebar-stat .stat-value{color: #fff; font-weight: 600;}
.sidebar-menu{display: flex; flex-direction: column; gap: 1.5rem;}
.menu-section{display: flex; flex-direction: column; gap: 0.5rem;}
.menu-section-title{font-size: 0.85rem; color: #888; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 0.5rem; font-weight: 600;}
.sidebar-menu-item{display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem 1rem; border-radius: 8px; color: #ccc; text-decoration: none; transition: all 0.2s; position: relative;}
.sidebar-menu-item:hover{background: #3d3d3d; color: #fff;}
.sidebar-menu-item.active{background: #4a9eff; color: #fff;}
.sidebar-menu-item .menu-icon{font-size: 1.2rem; flex-shrink: 0;}
.sidebar-menu-item .menu-text{flex: 1; font-size: 0.95rem;}
.sidebar-menu-item .menu-count{background: rgba(255, 255, 255, 0.2); padding: 0.2rem 0.5rem; border-radius: 12px; font-size: 0.8rem; font-weight: 600;}
.sidebar-menu-item.active .menu-count{background: rgba(255, 255, 255, 0.3);}
.sidebar-menu-item.sidebar-menu-button{background: #4a9eff; color: #fff; font-weight: 600; margin-top: 0.5rem;}
.sidebar-menu-item.sidebar-menu-button:hover{background: #5aaeff;}
.sidebar-menu-item.logout-item{color: #ff6b6b;}
.sidebar-menu-item.logout-item:hover{background: rgba(255, 107, 107, 0.1);}
.dashboard-content{flex: 1; background: #fff; border-radius: 15px; padding: 2rem; min-height: 500px;}
.dashboard-content .section-title{color: #1a4a8e; font-size: 1.8rem; margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 2px solid #e9ecef;}
.dashboard-content .messages-section,.dashboard-content .dashboard-listings-section{background: transparent; padding: 0;}
.dashboard-content .listings-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem;}
.dashboard-avatar{width: 120px; height: 120px; border-radius: 50%; border: 3px solid #4a9eff;}
.avatar-placeholder{width: 120px; height: 120px; border-radius: 50%; background: #3d3d3d; display: flex; align-items: center; justify-content: center; font-size: 4rem; border: 3px solid #4a9eff;}
.stat-label{color: #aaa;}
.stat-value{color: #fff; font-weight: 600;}
.section-title{font-size: 1.3rem; color: #fff; margin-bottom: 1rem; font-weight: 600;}
.menu-icon{font-size: 1.5rem; flex-shrink: 0;}
.menu-icon-secondary{font-size: 1.2rem; margin-left: auto; opacity: 0.7;}
.menu-text{flex: 1; font-size: 1rem;}
.btn-icon{font-size: 1.3rem; color: #4a9eff;}
.dashboard-listings-section{margin-top: 2rem; padding-top: 2rem; border-top: 1px solid #444;}
.dashboard-listings-section .listings-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 1.5rem;}
.dashboard-listings-section .listing-card{background: #3d3d3d; border: 1px solid #555;}
.dashboard-listings-section .listing-card:hover{border-color: #4a9eff; box-shadow: 0 4px 15px rgba(74, 158, 255, 0.2);}
.dashboard-listings-section .listing-title{color: #fff;}
.dashboard-listings-section .listing-excerpt{color: #ccc;}
.dashboard-listings-section .listing-footer{border-top: 1px solid #555;}
.dashboard-listings-section .listing-category,.dashboard-listings-section .listing-date{color: #aaa;}
.dashboard-listings-section .no-listings{text-align: center; padding: 3rem; color: #aaa;}
.dashboard-listings-section .listing-price{color: #4a9eff; font-weight: 600;}
.dashboard-listings-section .listing-location{color: #aaa;}
.dashboard-listings-section .listing-image-placeholder{background: #2d2d2d;}
.dashboard-listings-section .listing-image-placeholder .placeholder-icon{color: #555;}
.dashboard-listings-section .btn-edit-listing{background: #4a9eff; color: #fff;}
.dashboard-listings-section .btn-edit-listing:hover{background: #5aaeff;}
.author-profile{max-width: 1200px; margin: 2rem auto;}
.author-header{display: grid; grid-template-columns: 150px 1fr; gap: 2rem; margin-bottom: 3rem; padding: 2rem; background: #f8f9fa; border-radius: 10px;}
.author-avatar-section{display: flex; align-items: flex-start;}
.author-avatar-wrapper{width: 150px; height: 150px; border-radius: 50%; overflow: hidden; background: #fff; display: flex; align-items: center; justify-content: center; border: 4px solid #1a4a8e;}
.author-avatar-wrapper img{width: 100%; height: 100%; object-fit: cover;}
.author-avatar-placeholder{background: linear-gradient(135deg, #f5f7fa 0%, #e9ecef 100%);}
.author-avatar-placeholder .placeholder-icon{font-size: 4rem; opacity: 0.5;}
.author-info{flex: 1;}
.author-name{font-size: 2.5rem; color: #1a4a8e; margin-bottom: 1rem;}
.author-registered{margin: 0; color: #555; font-size: 1rem;}
.author-listings-section{margin-top: 2rem;}
.author-listings-section h2{color: #1a4a8e; margin-bottom: 2rem; font-size: 2rem;}
.listing-actions{margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #e9ecef;}
.btn-edit-listing{display: inline-block; padding: 0.5rem 1rem; background: #f0f4f8; color: #1a4a8e; text-decoration: none; border-radius: 5px; font-size: 0.9rem; transition: all 0.3s;}
.btn-edit-listing:hover{background: #1a4a8e; color: #fff;}
@media (max-width: 768px){.company-header{grid-template-columns: 1fr; text-align: center;}
.company-logo,.company-logo-placeholder{margin: 0 auto;}
.author-header{grid-template-columns: 1fr; text-align: center;}
.author-avatar-wrapper{margin: 0 auto;}
.stat-label{font-size: 0.85rem;}
.section-title{font-size: 2rem;}
.listing-content-wrapper{grid-template-columns: 1fr;}
.listing-sidebar{order: -1; margin-bottom: 2rem;}
.listing-title{font-size: 1.8rem;}
.listing-price-large{font-size: 1.5rem;}
.gallery-thumbnails{grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));}
}
.listing-description{margin-bottom: 2rem;}
.listing-description h2{color: #1a4a8e; margin-bottom: 1rem;}
.listing-categories{padding: 1rem; background: #f8f9fa; border-radius: 5px;}
.listing-categories a{color: #1a4a8e; text-decoration: none; margin-left: 0.5rem;}
.listing-categories a:hover{text-decoration: underline;}
.listing-sidebar{display: flex; flex-direction: column; gap: 1.5rem;}
.share-box{position: relative; margin-bottom: 1.5rem;}
@keyframes slideDown{
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.contact-box,.listing-date-box{background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%); padding: 2rem; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); border: 1px solid #e9ecef; margin-bottom: 1.5rem;}
.contact-box,.listing-date-box{margin-bottom: 1.5rem;}
.message-box{background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%); padding: 2rem; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); border: 1px solid #e9ecef; margin-bottom: 1.5rem;}
.message-box h3{color: #1a4a8e; margin-bottom: 1.5rem; font-size: 1.4rem; display: flex; align-items: center; gap: 0.5rem;}
.message-icon{font-size: 1.5rem;}
.message-form{display: flex; flex-direction: column; gap: 1rem;}
.message-form .form-group{margin: 0;}
.message-form textarea{width: 100%; padding: 0.875rem; border: 1px solid #e9ecef; border-radius: 8px; font-size: 1rem; font-family: inherit; resize: vertical; min-height: 100px;}
.message-form textarea:focus{outline: none; border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.1);}
.btn-block{width: 100%; display: flex; align-items: center; justify-content: center; gap: 0.5rem;}
.message-success{background: #d1fae5; color: #065f46; padding: 1rem; border-radius: 8px; margin-top: 1rem; text-align: center; font-weight: 600;}
.messages-section{max-width: 1000px; margin: 2rem auto;}
.messages-header{display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 2px solid #e9ecef;}
.back-to-inbox{color: #1a4a8e; text-decoration: none; font-weight: 600; transition: color 0.3s;}
.back-to-inbox:hover{color: #f7c500;}
.messages-header h2{margin: 0; color: #1a4a8e; font-size: 1.8rem;}
.messages-list{display: flex; flex-direction: column; gap: 1rem;}
.message-thread{display: flex; align-items: flex-start; gap: 1rem; padding: 1.5rem; background: #fff; border: 2px solid #e9ecef; border-radius: 12px; text-decoration: none; color: inherit; transition: all 0.3s ease; position: relative;}
.message-thread:hover{border-color: #1a4a8e; box-shadow: 0 4px 12px rgba(26, 74, 142, 0.1); transform: translateX(5px);}
.message-thread.unread{background: #f0f4f8; border-color: #1a4a8e;}
.thread-avatar{flex-shrink: 0;}
.thread-avatar img{width: 50px; height: 50px; border-radius: 50%; border: 2px solid #e9ecef;}
.thread-content{flex: 1; min-width: 0;}
.thread-header{display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5rem;}
.thread-header strong{color: #1a4a8e; font-size: 1.1rem;}
.thread-time{color: #666; font-size: 0.9rem;}
.thread-listing{color: #666; font-size: 0.9rem; margin-bottom: 0.5rem;}
.thread-preview{color: #555; font-size: 0.95rem; line-height: 1.5;}
.unread-badge{position: absolute; top: 1rem; right: 1rem; width: 12px; height: 12px; background: #1a4a8e; border-radius: 50%;}
.unread-count-badge{display: inline-block; background: #ef4444; color: #fff; font-size: 0.75rem; font-weight: 700; padding: 0.2rem 0.5rem; border-radius: 12px; margin-left: 0.5rem; min-width: 20px; text-align: center; line-height: 1.2;}
.chat-messages{background: #f8f9fa; border-radius: 12px; padding: 2rem; max-height: 600px; overflow-y: auto; margin-bottom: 2rem; display: flex; flex-direction: column; gap: 1rem;}
.chat-message{display: flex; max-width: 70%;}
.message-sent{align-self: flex-end; margin-left: auto;}
.message-received{align-self: flex-start;}
.message-content{background: #fff; padding: 1rem 1.25rem; border-radius: 12px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);}
.message-sent .message-content{background: linear-gradient(135deg, #1a4a8e 0%, #667eea 100%); color: #fff;}
.message-received .message-content{background: #fff; color: #333;}
.message-time{font-size: 0.75rem; opacity: 0.7; margin-top: 0.5rem;}
.chat-form{margin-top: 1rem;}
.chat-input-wrapper{display: flex; gap: 1rem; align-items: flex-end;}
.chat-input{flex: 1; padding: 1rem; border: 2px solid #e9ecef; border-radius: 12px; font-size: 1rem; font-family: inherit; resize: none; min-height: 60px;}
.chat-input:focus{outline: none; border-color: #1a4a8e; box-shadow: 0 0 0 3px rgba(26, 74, 142, 0.1);}
.chat-send-btn{padding: 1rem 2rem; white-space: nowrap;}
.no-messages{text-align: center; padding: 3rem; color: #666;}
.password-input-wrapper{position: relative; display: flex; align-items: center;}
.password-input-wrapper .form-control{padding-right: 90px;}
.password-toggle,.password-generate{position: absolute; right: 10px; background: none; border: none; cursor: pointer; padding: 0.5rem; display: flex; align-items: center; justify-content: center; transition: transform 0.2s; z-index: 5;}
.password-generate{right: 50px;}
.password-toggle:hover,.password-generate:hover{transform: scale(1.1);}
.toggle-icon,.generate-icon{font-size: 1.2rem; opacity: 0.7; transition: opacity 0.2s;}
.password-toggle:hover .toggle-icon,.password-generate:hover .generate-icon{opacity: 1;}
.password-hint{display: block; margin-top: 0.5rem; font-size: 0.9rem; color: #666;}
.password-match-indicator{margin-top: 0.5rem; font-size: 0.9rem; font-weight: 600; min-height: 1.2rem;}
.password-match-indicator.match{color: #10b981;}
.password-match-indicator.no-match{color: #ef4444;}
.btn-large{padding: 1rem 2rem; font-size: 1.1rem; font-weight: 600;}
.listing-date-box{display: flex; align-items: center; gap: 1rem; background: linear-gradient(135deg, #e0e7ff 0%, #f0f4f8 100%);}
.date-icon{font-size: 2rem; flex-shrink: 0;}
.date-content{display: flex; flex-direction: column; gap: 0.25rem;}
.date-content strong{color: #666; font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em;}
.date-content span{color: #1a4a8e; font-size: 1.1rem; font-weight: 600;}
.contact-box h3{color: #1a4a8e; margin-bottom: 1.5rem; font-size: 1.4rem; display: flex; align-items: center; gap: 0.5rem;}
.contact-icon{font-size: 1.5rem;}
.contact-item{display: flex; align-items: flex-start; gap: 1rem; padding: 1rem; margin-bottom: 1rem; background: #fff; border-radius: 8px; border: 1px solid #e9ecef; transition: all 0.3s ease;}
.contact-item:hover{border-color: #1a4a8e; box-shadow: 0 4px 12px rgba(26, 74, 142, 0.1); transform: translateX(5px);}
.contact-item-icon{font-size: 1.5rem; flex-shrink: 0; margin-top: 0.2rem;}
.contact-item-content{flex: 1; display: flex; flex-direction: column; gap: 0.25rem;}
.contact-item-content strong{color: #666; font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em;}
.contact-item-content a,.contact-item-content span{color: #1a4a8e; font-size: 1.1rem; font-weight: 600; text-decoration: none; transition: color 0.3s;}
.contact-item-content a:hover{color: #f7c500; text-decoration: underline;}
.contact-box p{margin-bottom: 0.75rem;}
.contact-box a{color: #1a4a8e; text-decoration: none;}
.contact-box a:hover{text-decoration: underline;}
.mobile-menu-toggle{display: none; flex-direction: column; justify-content: space-around; width: 32px; height: 32px; background: transparent; border: none; cursor: pointer; padding: 0; z-index: 1004; position: relative; flex-shrink: 0;}
.mobile-menu-toggle span{width: 100%; height: 3px; background: #1a4a8e; border-radius: 3px; transition: all 0.3s ease; transform-origin: center;}
.mobile-menu-toggle.active span:nth-child(1){transform: rotate(45deg) translate(8px, 8px);}
.mobile-menu-toggle.active span:nth-child(2){opacity: 0;}
.mobile-menu-toggle.active span:nth-child(3){transform: rotate(-45deg) translate(8px, -8px);}
@media (max-width: 768px){.mobile-menu-toggle{display: flex;}
.site-branding{flex: 1;}
.mobile-menu-close{position: absolute; top: 1rem; right: 1rem; width: 40px; height: 40px; background: #1a4a8e; color: #fff; border: none; border-radius: 50%; font-size: 1.5rem; font-weight: normal; cursor: pointer; display: flex !important; align-items: center; justify-content: center; z-index: 1004; transition: all 0.3s; line-height: 1; padding: 0;}
.mobile-menu-close::before,.mobile-menu-close::after{display: none !important;}
.mobile-menu-close:hover,.mobile-menu-close:active{background: #153a6e; color: #fff;}
.search-form{width: 100%; display: flex; align-items: center; gap: 0.5rem; position: relative;}
.search-form input[type="search"]{flex: 1; min-width: 0; font-size: 16px; padding: 0.75rem 1rem; border: 1px solid #ddd; border-radius: 25px;}
.search-form .search-submit{display: none !important;}
.menu-item-has-children > a::after{content: '▼'; float: right; font-size: 0.8rem; transition: transform 0.3s;}
.menu-item-has-children.active > a::after{transform: rotate(180deg);}
.mobile-categories-list{list-style: none; margin: 0; padding: 0; display: none !important; width: 100%; background: #fff; max-height: 70vh; overflow-y: auto;}
.mobile-category-item{border-bottom: 1px solid #e9ecef; position: relative;}
.mobile-category-link{display: block; padding: 1rem; color: #333; text-decoration: none; font-weight: 600; width: calc(100% - 50px);}
.mobile-category-link:hover{color: #1a4a8e;}
.mobile-category-toggle{position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); background: none; border: none; font-size: 0.8rem; color: #666; cursor: pointer; padding: 0.5rem; transition: transform 0.3s;}
.mobile-category-item.active .mobile-category-toggle{transform: translateY(-50%) rotate(180deg);}
.mobile-subcategories-list{list-style: none; margin: 0; padding: 0; background: #f8f9fa; display: none;}
.mobile-category-item.active .mobile-subcategories-list{display: block;}
.mobile-subcategories-list li{border-bottom: 1px solid #e9ecef;}
.mobile-subcategories-list li:last-child{border-bottom: none;}
.mobile-subcategories-list a{display: block; padding: 0.75rem 1rem 0.75rem 2rem; color: #666; text-decoration: none; font-size: 0.95rem;}
.mobile-subcategories-list a:hover{color: #1a4a8e; background: #fff;}
.form-row{grid-template-columns: 1fr;}
.listings-grid{grid-template-columns: 1fr;}
.listing-content-wrapper{grid-template-columns: 1fr;}
.filter-form{flex-direction: column;}
.filter-form input,.filter-form select{width: 100%;}
.user-dashboard-layout{flex-direction: column;}
.dashboard-sidebar{width: 100%; position: static;}
.dashboard-content{margin-top: 1rem;}
.chat-widget{display: none !important;}
.chat-widget-body{height: 400px;}
.mobile-action-bar{position: fixed; bottom: 0; left: 0; right: 0; background: #fff; box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); display: flex; justify-content: space-around; align-items: center; padding: 0.75rem 0.5rem; z-index: 999; border-top: 1px solid #e9ecef;}
.mobile-action-btn{display: flex; flex-direction: column; align-items: center; gap: 0.25rem; padding: 0.5rem; text-decoration: none; color: #555; font-size: 0.75rem; flex: 1; transition: all 0.3s; border-radius: 8px; max-width: 120px;}
.mobile-action-btn:active{background: #f0f4f8; transform: scale(0.95);}
.mobile-action-btn .action-icon{font-size: 1.5rem;}
.mobile-action-btn .action-text{font-size: 0.7rem; font-weight: 500; text-align: center; line-height: 1.2;}
body{padding-bottom: 70px;}
.chat-widget{bottom: 80px;}
}
.chat-widget{position: fixed; bottom: 20px; right: 20px; width: auto; min-width: 200px; max-width: 350px; background: #fff; border-radius: 15px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); z-index: 9999; display: flex; flex-direction: column; max-height: 600px; overflow: hidden;}
.chat-widget-header{background: #1a4a8e; color: #fff; padding: 1rem 1.25rem; display: flex; justify-content: space-between; align-items: center; cursor: pointer; border-radius: 15px 15px 0 0;}
.chat-header-info{display: flex; align-items: center; gap: 0.75rem; flex: 1;}
.chat-icon{font-size: 1.3rem;}
.chat-title{font-weight: 600; font-size: 1rem;}
.chat-unread-badge{background: #ef4444; color: #fff; font-size: 0.75rem; font-weight: 700; padding: 0.2rem 0.5rem; border-radius: 12px; min-width: 20px; text-align: center;}
.chat-toggle-btn{background: none; border: none; color: #fff; font-size: 1rem; cursor: pointer; padding: 0.25rem 0.5rem; transition: transform 0.2s;}
.chat-widget-body{display: none; flex-direction: column; height: 500px; overflow: hidden;}
.chat-threads-list{flex: 1; overflow-y: auto; padding: 1rem;}
.chat-thread-item{display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem; border-radius: 8px; cursor: pointer; transition: background 0.2s; margin-bottom: 0.5rem; position: relative;}
.chat-thread-item:hover{background: #f5f5f5;}
.chat-thread-item.unread{background: #e3f2fd; font-weight: 600;}
.thread-avatar-small{flex-shrink: 0;}
.thread-avatar-small img{width: 40px; height: 40px; border-radius: 50%;}
.thread-info-small{flex: 1; min-width: 0;}
.thread-name-small{font-size: 0.9rem; font-weight: 600; color: #333; margin-bottom: 0.25rem;}
.thread-preview-small{font-size: 0.8rem; color: #666; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.thread-unread-dot{width: 10px; height: 10px; background: #ef4444; border-radius: 50%; flex-shrink: 0;}
.chat-no-threads{text-align: center; padding: 2rem; color: #999;}
.chat-conversation{display: flex; flex-direction: column; height: 100%;}
.chat-conv-header{padding: 1rem; border-bottom: 1px solid #e9ecef; display: flex; align-items: center; gap: 1rem; background: #f8f9fa;}
.chat-back-btn{background: none; border: none; color: #1a4a8e; cursor: pointer; font-size: 0.9rem; padding: 0.5rem; transition: color 0.2s;}
.chat-back-btn:hover{color: #0d3a6b;}
.chat-conv-user{font-weight: 600; color: #333;}
.chat-messages-container{flex: 1; overflow-y: auto; padding: 1rem; background: #f8f9fa;}
.chat-message{margin-bottom: 1rem; display: flex;}
.chat-message.message-sent{justify-content: flex-end;}
.chat-message.message-received{justify-content: flex-start;}
.chat-message .message-content{max-width: 75%; padding: 0.75rem 1rem; border-radius: 12px; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);}
.chat-message.message-sent .message-content{background: #1a4a8e; color: #fff;}
.chat-message .message-time{font-size: 0.75rem; color: #999; margin-top: 0.5rem;}
.chat-message.message-sent .message-time{color: rgba(255, 255, 255, 0.7);}
.chat-send-form{padding: 1rem; border-top: 1px solid #e9ecef; background: #fff;}
.chat-input-container{display: flex; gap: 0.5rem; align-items: flex-end;}
.chat-input-container textarea{flex: 1; padding: 0.75rem; border: 1px solid #ddd; border-radius: 8px; resize: none; font-family: inherit; font-size: 0.9rem;}
.chat-input-container textarea:focus{outline: none; border-color: #1a4a8e;}
.chat-send-button{background: #1a4a8e; color: #fff; border: none; padding: 0.75rem 1.5rem; border-radius: 8px; cursor: pointer; font-weight: 600; transition: background 0.2s;}
.chat-send-button:hover{background: #0d3a6b;}
.mobile-action-bar{display: none;}
@media (max-width: 768px){.mobile-action-bar{display: flex; position: fixed; bottom: 0; left: 0; right: 0; background: #fff; box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); justify-content: space-around; align-items: center; padding: 0.75rem 0.5rem; z-index: 999; border-top: 1px solid #e9ecef;}
.mobile-action-btn{display: flex; flex-direction: column; align-items: center; gap: 0.25rem; padding: 0.5rem; text-decoration: none; color: #555; font-size: 0.75rem; flex: 1; transition: all 0.3s; border-radius: 8px; max-width: 120px;}
.mobile-action-btn:active{background: #f0f4f8; transform: scale(0.95);}
.mobile-action-btn .action-icon{font-size: 1.5rem;}
.mobile-action-btn .action-text{font-size: 0.7rem; font-weight: 500; text-align: center; line-height: 1.2;}
body{padding-bottom: 70px;}
.chat-widget{bottom: 80px;}
}
.blog-header{margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 2px solid #e9ecef;}
.blog-header .page-title{font-size: 2.5rem; color: #1a4a8e; margin-bottom: 1rem;}
.blog-description{color: #666; font-size: 1.1rem; line-height: 1.6;}
.blog-filters{margin-bottom: 2rem;}
.blog-filters .filter-form{display: flex; gap: 1rem; flex-wrap: wrap;}
.blog-filters .filter-form input,.blog-filters .filter-form select{padding: 0.75rem; border: 1px solid #ddd; border-radius: 8px; font-size: 1rem;}
.blog-filters .filter-form input{flex: 1; min-width: 200px;}
.blog-filters .filter-form select{min-width: 200px;}
.blog-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 2rem; margin-bottom: 2rem;}
.blog-card{background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.1); transition: transform 0.3s, box-shadow 0.3s; display: flex; flex-direction: column;}
.blog-card:hover{transform: translateY(-5px); box-shadow: 0 4px 15px rgba(0,0,0,0.2);}
.blog-card-link{display: flex; flex-direction: column; text-decoration: none; color: inherit; height: 100%;}
.blog-card-image{width: 100%; height: 200px; overflow: hidden; background: #f0f0f0;}
.blog-card-image img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s;}
.blog-card:hover .blog-card-image img{transform: scale(1.05);}
.blog-card-content{padding: 1.5rem; display: flex; flex-direction: column; flex: 1;}
.blog-card-meta{display: flex; gap: 1rem; margin-bottom: 1rem; font-size: 0.85rem; color: #666; flex-wrap: wrap;}
.blog-card-meta .blog-date,.blog-card-meta .blog-category{display: inline-flex; align-items: center;}
.blog-card-meta .blog-category{color: #1a4a8e; font-weight: 500;}
.blog-card-title{font-size: 1.4rem; margin: 0 0 1rem 0; color: #333; line-height: 1.3; transition: color 0.3s;}
.blog-card-link:hover .blog-card-title{color: #1a4a8e;}
.blog-card-excerpt{color: #666; line-height: 1.6; margin-bottom: 1rem; flex: 1;}
.blog-card-footer{margin-top: auto;}
.blog-read-more{color: #1a4a8e; font-weight: 600; transition: color 0.3s;}
.blog-card-link:hover .blog-read-more{color: #0d3a6b;}
.single-blog-post{max-width: 900px; margin: 0 auto; background: #fff; padding: 2rem; border-radius: 12px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);}
.blog-post-header{margin-bottom: 2rem;}
.blog-post-meta{display: flex; gap: 1.5rem; margin-bottom: 1rem; font-size: 0.9rem; color: #666; flex-wrap: wrap;}
.blog-post-meta span{display: inline-flex; align-items: center; gap: 0.5rem;}
.meta-icon{font-size: 1rem;}
.blog-post-categories a{color: #1a4a8e; text-decoration: none; transition: color 0.3s;}
.blog-post-categories a:hover{color: #0d3a6b; text-decoration: underline;}
.blog-post-title{font-size: 2.5rem; color: #1a4a8e; margin: 0; line-height: 1.2;}
.blog-post-featured-image{margin-bottom: 2rem; border-radius: 12px; overflow: hidden;}
.blog-post-featured-image img{width: 100%; height: auto; display: block;}
.blog-post-content{font-size: 1.1rem; line-height: 1.8; color: #333; margin-bottom: 2rem;}
.blog-post-content h2,.blog-post-content h3,.blog-post-content h4{color: #1a4a8e; margin-top: 2rem; margin-bottom: 1rem;}
.blog-post-content p{margin-bottom: 1.5rem;}
.blog-post-content img{max-width: 100%; height: auto; border-radius: 8px; margin: 1.5rem 0;}
.blog-post-content a{color: #1a4a8e; text-decoration: underline;}
.blog-post-content a:hover{color: #0d3a6b;}
.blog-post-tags{padding: 1rem 0; border-top: 1px solid #e9ecef; border-bottom: 1px solid #e9ecef; margin-bottom: 2rem; display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap;}
.tags-label{font-weight: 600; color: #333;}
.blog-post-tags a{color: #1a4a8e; text-decoration: none; padding: 0.25rem 0.75rem; background: #f0f4f8; border-radius: 20px; font-size: 0.9rem; transition: background 0.3s;}
.blog-post-tags a:hover{background: #e3eaf3;}
.blog-post-navigation{display: flex; justify-content: space-between; gap: 2rem; margin-bottom: 3rem; padding-top: 2rem; border-top: 2px solid #e9ecef;}
.blog-nav-prev,.blog-nav-next{flex: 1;}
.nav-label{display: block; font-size: 0.9rem; color: #666; margin-bottom: 0.5rem;}
.blog-post-navigation a{color: #1a4a8e; text-decoration: none; font-weight: 600; transition: color 0.3s; display: block;}
.blog-post-navigation a:hover{color: #0d3a6b; text-decoration: underline;}
.related-posts{margin-top: 3rem; padding-top: 2rem; border-top: 2px solid #e9ecef;}
.related-posts-title{font-size: 1.8rem; color: #1a4a8e; margin-bottom: 1.5rem;}
.related-posts-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 1.5rem;}
.related-post-item{background: #f8f9fa; border-radius: 8px; overflow: hidden; transition: transform 0.3s;}
.related-post-item:hover{transform: translateY(-3px);}
.related-post-item a{display: block; text-decoration: none; color: inherit;}
.related-post-image{width: 100%; height: 150px; overflow: hidden; background: #e9ecef;}
.related-post-image img{width: 100%; height: 100%; object-fit: cover;}
.related-post-item h4{padding: 1rem; margin: 0; font-size: 1rem; color: #333; transition: color 0.3s;}
.related-post-item:hover h4{color: #1a4a8e;}
.no-posts{text-align: center; padding: 3rem; color: #666;}
@media (max-width: 768px){.blog-grid{grid-template-columns: 1fr;}
.blog-header .page-title{font-size: 2rem;}
.blog-filters .filter-form{flex-direction: column;}
.blog-filters .filter-form input,.blog-filters .filter-form select{width: 100%;}
.single-blog-post{padding: 1.5rem;}
.blog-post-title{font-size: 1.8rem;}
.blog-post-navigation{flex-direction: column;}
.related-posts-grid{grid-template-columns: 1fr;}
}
