/**
 * BrokerBusinessListings Custom Fixes
 * Addressing: Menu shifting, excessive whitespace, professional design
 * Created: 2025-11-20
 */

/* ========================================
   FIX 0: Prevent Header Shift Between Pages
   ======================================== */

/* Force scrollbar to always show to prevent layout shift */
html {
    overflow-y: scroll;
    overflow-x: hidden;
}

/* ========================================
   FIX 1: Menu Shifting Prevention
   ======================================== */

/* Prevent menu items from shifting left/right on hover */
.main-menu .navigation > li {
    position: relative;
    display: inline-block;
    margin-right: 0px !important;
    transition: none !important;
}

.main-menu .navigation > li > a {
    position: relative;
    display: block;
    padding: 20px 15px !important;
    transition: color 0.3s ease !important;
    transform: none !important;
}

.main-menu .navigation > li > a:before,
.main-menu .navigation > li > a:after {
    display: none !important;
}

/* Fix sticky header menu shifting */
.sticky-header .main-menu .navigation > li {
    margin-right: 0px !important;
}

.sticky-header .main-menu .navigation > li > a {
    padding: 15px 15px !important;
}

/* ========================================
   FIX 2: Reduce Excessive Whitespace
   ======================================== */

/* Reduce section padding throughout site */
section {
    padding: 60px 0 !important;
}

section.banner-section {
    padding: 80px 0 60px 0 !important;
}

/* Reduce excessive form spacing */
.form-group {
    margin-bottom: 15px !important;
}

.row.clearfix {
    margin-bottom: 0 !important;
}

/* Compact search area */
.search-field {
    padding: 30px !important;
}

.top-search {
    margin-bottom: 15px !important;
}

/* Reduce advanced search whitespace */
.advanced-search {
    padding: 20px !important;
}

.advanced-search .row {
    margin-bottom: 0 !important;
}

/* Compact range box */
.range-box {
    margin-top: 15px !important;
    padding-top: 15px !important;
}

/* ========================================
   FIX 3: Professional Tab Design
   ======================================== */

/* Make tabs more professional and less bulky */
.tab-btn-box {
    margin-bottom: 20px !important;
}

.tab-buttons li.tab-btn {
    padding: 12px 30px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    margin: 0 5px !important;
    background: #f8f9fa !important;
    color: #333 !important;
    border-radius: 5px 5px 0 0 !important;
    transition: all 0.3s ease !important;
}

.tab-buttons li.tab-btn.active-btn {
    background: linear-gradient(135deg, #1e88e5 0%, #43a047 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 10px rgba(30, 136, 229, 0.3) !important;
}

.tab-buttons li.tab-btn:hover {
    background: linear-gradient(135deg, #1976d2 0%, #388e3c 100%) !important;
    color: #ffffff !important;
}

/* Fix font readability on colored backgrounds */
.tab-btn-box label,
.form-group label {
    color: #333 !important;
    font-weight: 600 !important;
    text-shadow: none !important;
    background: none !important;
    padding: 0 !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* ========================================
   FIX 4: Compact Form Controls
   ======================================== */

.form-group .form-control,
.form-group input,
.form-group select,
.form-group textarea {
    height: 45px !important;
    padding: 10px 15px !important;
    font-size: 14px !important;
}

.form-group textarea {
    height: auto !important;
    min-height: 100px !important;
}

.select-box {
    height: 45px !important;
}

.field-input input {
    height: 45px !important;
    padding-left: 45px !important;
}

/* ========================================
   FIX 5: Professional Button Styling
   ======================================== */

.search-btn button,
.theme-btn {
    padding: 12px 30px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: 5px !important;
    transition: all 0.3s ease !important;
}

.search-btn button {
    background: linear-gradient(135deg, #1e88e5 0%, #43a047 100%) !important;
    border: none !important;
}

.search-btn button:hover {
    opacity: 0.9 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3) !important;
}

/* ========================================
   FIX 6: Compact Header
   ======================================== */

.header-top {
    padding: 10px 0 !important;
}

.header-top .top-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.header-top .left-column {
    width: auto;
    float: left;
}

.header-top .right-column {
    width: auto;
    float: right;
}

/* Ensure consistent spacing for header items */
.header-top .info li {
    margin-right: 25px;
}

.header-top .social-links li {
    margin-left: 10px;
}

.header-top .sign-box {
    margin-left: 20px;
}

.header-lower {
    padding: 0 !important;
}

.main-header .logo-box {
    padding: 15px 0 !important;
}

/* ========================================
   FIX 7: Professional Content Sections
   ======================================== */

/* Reduce excessive content padding */
.content-side,
.content-box {
    padding: 30px !important;
}

.inner-box,
.inner-container {
    padding: 0 !important;
}

/* Compact cards and listings */
.feature-block,
.deals-block,
.news-block {
    margin-bottom: 30px !important;
}

/* ========================================
   FIX 8: Fix Colorful Menu Legibility
   ======================================== */

/* Ensure all text is readable - high contrast */
.banner-section h2,
.banner-section h3,
.banner-section h4,
.banner-section h5,
.banner-section h6 {
    color: #ffffff !important;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3) !important;
    font-weight: 700 !important;
}

.banner-section p {
    color: #ffffff !important;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.3) !important;
}

/* Fix form labels in colored sections */
.search-field label,
.tabs-content label {
    color: #333 !important;
    background: rgba(255,255,255,0.9) !important;
    padding: 4px 8px !important;
    border-radius: 3px !important;
    display: inline-block !important;
    font-weight: 600 !important;
    text-shadow: none !important;
}

/* ========================================
   FIX 9: Mobile Responsiveness
   ======================================== */

@media (max-width: 768px) {
    section {
        padding: 40px 0 !important;
    }
    
    .search-field {
        padding: 20px !important;
    }
    
    .form-group {
        margin-bottom: 12px !important;
    }
    
    .tab-buttons li.tab-btn {
        padding: 10px 20px !important;
        font-size: 14px !important;
    }
}

/* ========================================
   FIX 10: Consistent Spacing System
   ======================================== */

/* Use consistent spacing throughout */
.mb-10 { margin-bottom: 10px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-30 { margin-bottom: 30px !important; }

.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }
.mt-30 { margin-top: 30px !important; }

.p-15 { padding: 15px !important; }
.p-20 { padding: 20px !important; }
.p-30 { padding: 30px !important; }

