/* Custom Global Styles */
body { font-family: 'Inter', sans-serif; background-color: #fcfcfc; color: #333; }
a { text-decoration: none; }

/* Top Bar */
.top-bar { background-color: #f8f9fa; border-bottom: 1px solid #eee; font-size: 13px; color: #666; }
.top-socials a { color: #888; transition: 0.3s; }
.top-socials a:hover { color: #e60000; }
.top-links a { color: #444; }

/* Navbar Hover & Mega Menu */
.nav-link { font-size: 15px; border-bottom: 2px solid transparent; }
.nav-link:hover { color: #e60000 !important; }

@media (min-width: 992px) {
    .has-megamenu { position: static; }
    .megamenu { 
        width: 100%; 
        left: 0; 
        right: 0; 
        top: 100%; 
        margin-top: 0; 
        display: none; 
        position: absolute;
        border-radius: 0 0 15px 15px;
    }
    .has-megamenu:hover .megamenu { display: block; animation: slideUp 0.3s ease-out; }
}

.mega-list li a { 
    font-size: 14px; 
    color: #666; 
    padding: 6px 0; 
    display: block; 
    transition: 0.2s; 
}
.mega-list li a:hover { color: #e60000; padding-left: 5px; }

/* Hero Section */
.hero-section {
    background: #000;
    padding: 80px 0 150px 0; /* Extra bottom padding for search overlap */
    color: #fff;
}
.hero-title { font-weight: 800; font-size: 48px; letter-spacing: -1px; }

/* Premium Card */
.consultation-card {
    background: #fff;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 15px 30px rgba(0,0,0,0.2);
    max-width: 350px;
    margin-left: auto;
}
.off-badge { background: #e60000; color: #fff; padding: 4px 10px; font-size: 12px; font-weight: bold; }

/* Search Bar (The Overlapping Magic) */
.search-container { margin-top: -65px; z-index: 1000; position: relative; }
.search-card {
    background: #fff;
    border-radius: 12px;
    padding: 25px 40px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.1);
}
.search-input-group { border: 1px solid #ddd; border-radius: 8px; overflow: hidden; }
.search-input-group i { color: #999; padding-left: 15px; }
.search-input-group input { border: none; padding: 15px 10px; font-size: 15px; width: 100%; }
.search-input-group input:focus { outline: none; }

@keyframes slideUp {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}


/* Swiper Slider Fixes */
.swiper {
    width: 100%;
    padding-bottom: 40px !important; /* Pagination ke liye space */
}
.swiper-slide {
    height: auto; /* Cards ko equal height deta hai */
}

/* Service Card Lead India Style (Less shadow, clean border) */
.service-card {
    border-radius: 12px;
    background-color: #fcfcfc;
    border: 1px solid #eaeaea !important;
    transition: transform 0.3s ease, border-color 0.3s ease;
}
.service-card:hover {
    transform: translateY(-5px);
    border-color: #e60000 !important;
}

/* Footer Hover Effects */
.hover-white:hover { color: #fff !important; }