/* Mobile First Responsive Styles */
@media (max-width: 767px) {
    /* Hero Section Mobile Fixes */
    .hero-block .poster {
        height: 35vh !important;
        min-height: 250px;
        background-image: url('https://images.pexels.com/photos/3183183/pexels-photo-3183183.jpeg');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    
    /* Typography Adjustments for Mobile */
    .display-6 {
        font-size: 1.75rem !important;
    }
    
    .display-4 {
        font-size: 2rem !important;
    }
    
    .h1, h1 {
        font-size: 1.5rem !important;
    }
    
    .lead {
        font-size: 1rem !important;
        line-height: 1.5 !important;
    }
    
    /* Container padding adjustments */
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* Section padding adjustments */
    .pt-5, .py-5 {
        padding-top: 2rem !important;
    }
    
    .pb-5, .py-5 {
        padding-bottom: 2rem !important;
    }
    
    /* Image responsiveness */
    .img-fluid {
        max-width: 100%;
        height: auto;
    }
    
    /* Contact form improvements */
    .shadow {
        box-shadow: none !important;
        border: 1px solid #dee2e6;
    }
    
    /* Footer improvements */
    .footer .d-flex {
        flex-direction: column;
    }
    
    .footer .gap-3 {
        gap: 1rem !important;
    }
}

@media (max-width: 991px) {
    body.poster {
        margin-top: 60vh;
    }
    
    /* Hero Section for Tablet */
    .hero-block .poster {
        height: 40vh !important;
        min-height: 300px;
        background-image: url('https://images.pexels.com/photos/3183183/pexels-photo-3183183.jpeg');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
}

body.poster {
    background-attachment: fixed;
}

/* Additional responsive utilities */
.top-5 {
    top: 5px;
}

/* Ensure images don't overflow */
img {
    max-width: 100%;
    height: auto;
}

/* Mobile navigation improvements */
@media (max-width: 767px) {
    .navbar-brand {
        font-size: 1.1rem !important;
    }
    
    .navbar-nav .nav-link {
        padding: 0.5rem 1rem !important;
        text-align: center;
    }
    
    /* Services section mobile improvements */
    .col-xl-3 {
        margin-bottom: 1.5rem;
    }
    
    /* Hero section text improvements */
    .hero-block .lead {
        padding-right: 0 !important;
    }
    
    /* Why Choose Us section text size fix */
    .h5.mb-3 {
        font-size: 1rem !important;
        line-height: 1.6 !important;
    }
    
    /* Contact section improvements */
    .col-lg-5, .col-lg-6 {
        margin-bottom: 2rem;
    }
    
    /* Form improvements */
    .form-control {
        font-size: 16px; /* Prevents zoom on iOS */
        padding: 0.75rem;
    }
    
    /* Button improvements */
    .btn {
        padding: 0.75rem 1.5rem;
        font-size: 0.9rem;
    }
}

/* Additional mobile improvements for larger phones */
@media (max-width: 480px) {
    .hero-block .poster {
        height: 30vh !important;
        min-height: 200px;
    }
    
    .display-6 {
        font-size: 1.5rem !important;
    }
    
    .navbar-brand span {
        font-size: 1rem !important;
    }
    
    /* Reduce padding further on small screens */
    .pt-5, .py-5 {
        padding-top: 1.5rem !important;
    }
    
    .pb-5, .py-5 {
        padding-bottom: 1.5rem !important;
    }
}
