/* Mobile (Phones) */
@media (max-width: 767px) {
    .sub-header { height: auto; padding: 10px 0; }
    .contact-info-top { flex-direction: column; text-align: center; gap: 5px; }
    
    .navbar { top: 60px !important; }
    body { padding-top: 130px !important; }

    .blog-slider__img {
        transform: none !important;
        width: 100% !important;
        height: 250px !important;
        margin-bottom: 20px;
    }
    
    .blog-slider { height: auto !important; padding: 20px !important; }
    .footer { text-align: center; }
    .footer .social-links { justify-content: center; display: flex; }
}
/* Mobile-specific fixes for header and navigation */
@media (max-width: 768px) {
    /* Adjust body padding to account for header height */
    body {
        padding-top: 140px !important;
    }
    
    /* Fix sub-header height and layout */
    .sub-header {
        height: 60px; /* Increased height to accommodate content */
        padding: 0.5rem 0;
    }
    
    .contact-info-top {
        flex-direction: column;
        gap: 0.4rem; /* Increased gap between items */
        justify-content: center;
        align-items: center;
        padding: 0 1rem;
    }
    
    .contact-item {
        margin-bottom: 0;
        width: 100%;
        text-align: center;
    }
    
    .contact-item a {
        font-size: 0.65rem;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.3rem;
    }
    
    .contact-item a span {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 200px; /* Increased max-width */
        display: inline-block;
    }

    /* Adjust navbar position and styling */
    .navbar {
        top: 60px; /* Updated to match new sub-header height */
        padding: 0.5rem 0;
    }
    
    .navbar-brand span {
        font-size: 1rem;
    }
    
    /* Hero section adjustments */
    .hero {
        margin-top: -150px; /* Updated to match new total header height */
        padding-top: 150px;
        height: calc(100vh + 150px);
    }
    
    .hero-main {
        font-size: 2rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
        padding: 0 1rem;
    }
    
    /* Adjust section padding for mobile */
    section {
        padding: 3rem 0;
    }
}

@media (max-width: 576px) {
    body {
        padding-top: 145px !important; /* Updated */
    }
    
    .sub-header {
        height: 55px; /* Increased */
        padding: 0.4rem 0;
    }
    
    .contact-info-top {
        gap: 0.1rem;
        padding: 0 0.5rem;
    }
    
    .navbar {
        top: 55px; /* Updated */
    }
    
    .hero {
        margin-top: -145px; /* Updated */
        padding-top: 145px;
        height: calc(100vh + 145px);
    }
    
    .contact-item a {
        font-size: 0.7rem;
    }
    
    .contact-item a span {
        max-width: 180px; /* Slightly smaller for very small screens */
    }
}
/* Tablets */
@media (min-width: 768px) and (max-width: 1024px) {
    .blog-slider__img { width: 300px !important; height: 300px !important; }
    .service-card { height: 350px; }
}

/* Footer Grid Responsiveness */
@media (max-width: 991px) {
    .footer .col-md-6 { margin-bottom: 30px; }
}