/* responsive.css */

/* Reset default margins and ensure box-sizing */
* {
    box-sizing: border-box !important;
}

/* Base styles for small screens (mobile-first approach) */
.container {
    width: 100% !important;
    padding: 0 15px !important;
    margin: 0 auto !important;
}

/* Hero Slider Section */
@media (max-width: 576px) {
    .hero-slider .row {
        flex-direction: column !important;
    }
    .hero-image, .hero-image-small {
        height: 50vh !important;
    }
    .overlay-text {
        height: 70% !important;
        margin-top: 0 !important;
        padding: 10px !important;
    }
    .overlay-content {
        flex-direction: column !important;
        gap: 10px !important;
    }
    .overlay-image {
        width: 100% !important;
        height: 150px !important;
    }
    .overlay-text-content {
        width: 100% !important;
    }
    .hero-title {
        font-size: 20px !important;
    }
    .hero-subtitle {
        font-size: 14px !important;
    }
    .learn-more {
        padding: 8px 15px !important;
        font-size: 12px !important;
    }
    .overlay-text-small {
        padding: 20px !important;
    }
    .hero-heading {
        font-size: 20px !important;
    }
    .form-info {
        font-size: 12px !important;
    }
    .form-toggle-btn {
        padding: 8px 15px !important;
        font-size: 12px !important;
    }
    .contact-form input, .contact-form textarea {
        padding: 8px !important;
        font-size: 14px !important;
    }
    .contact-form button {
        padding: 8px !important;
        font-size: 14px !important;
    }
    .footer-text {
        font-size: 12px !important;
    }
}

@media (min-width: 577px) and (max-width: 768px) {
    .hero-image, .hero-image-small {
        height: 60vh !important;
    }
    .overlay-text {
        height: 60% !important;
        margin-top: 100px !important;
    }
    .hero-title {
        font-size: 28px !important;
    }
    .hero-subtitle {
        font-size: 16px !important;
    }
    .overlay-image {
        width: 50% !important;
    }
    .overlay-text-content {
        width: 45% !important;
    }
}

/* Features Section */
@media (max-width: 576px) {
    .Features .row {
        flex-direction: column !important;
        margin-left: 0 !important;
    }
    .Features img {
        height: 300px !important;
        margin-top: 20px !important;
    }
    .feature-content {
        padding: 0 !important;
    }
    .feature-item {
        margin-left: 0 !important;
        width: 100% !important;
    }
    .feature-item p {
        font-size: 16px !important;
    }
    .banner-content h2 {
        font-size: 20px !important;
    }
}

@media (min-width: 577px) and (max-width: 992px) {
    .Features .row {
        margin-left: -50px !important;
    }
    .Features img {
        height: 500px !important;
    }
    .feature-item {
        width: 600px !important;
    }
}

/* Services Section */
@media (max-width: 576px) {
    .services .row {
        flex-direction: column !important;
        gap: 20px !important;
    }
    .single-service {
        height: 200px !important;
        width: 100% !important;
    }
    .services p {
        font-size: 14px !important;
    }
    .services a {
        font-size: 14px !important;
        padding: 8px 15px !important;
    }
    .testimonial-text {
        width: 100% !important;
    }
    .testimonial-text p {
        font-size: 18px !important;
    }
    .testimonial-author {
        font-size: 14px !important;
    }
}

@media (min-width: 577px) and (max-width: 992px) {
    .single-service {
        width: 80% !important;
    }
    .testimonial-text {
        width: 800px !important;
    }
}

/* Free Version Banner */
@media (max-width: 576px) {
    .free-version-banner .container {
        height: auto !important;
        padding: 20px 0 !important;
    }
    .free-version-banner h2 {
        font-size: 20px !important;
    }
    .free-version-banner p {
        font-size: 14px !important;
    }
    .contact-btn {
        text-align: center !important;
        margin-top: 20px !important;
    }
}

/* Pricing Table */
@media (max-width: 576px) {
    .pricing-table .row {
        flex-direction: column !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .pricing-block {
        padding: 20px !important;
    }
    .pricing-title {
        font-size: 20px !important;
    }
    .price {
        font-size: 16px !important;
    }
    .pricing-block, .pricing-image {
        height: auto !important;
        min-height: 200px !important;
    }
}

@media (min-width: 577px) and (max-width: 992px) {
    .pricing-table .row {
        margin-left: -100px !important;
        margin-right: -100px !important;
    }
}

/* Newsletter Section */
@media (max-width: 576px) {
    .newsletter .row {
        flex-direction: column !important;
        width: 100% !important;
        margin-left: 0 !important;
    }
    .newsletter-card img {
        width: 100% !important;
        height: 150px !important;
    }
    .newsletter h2 {
        font-size: 20px !important;
    }
}

@media (min-width: 577px) and (max-width: 992px) {
    .newsletter .row {
        width: 100% !important;
        margin-left: 0 !important;
    }
    .newsletter-card img {
        width: 100% !important;
        height: 200px !important;
    }
}

/* General adjustments for larger screens */
@media (min-width: 993px) {
    .container {
        max-width: 1200px !important;
    }
    .hero-image, .hero-image-small {
        height: 80vh !important;
    }
    .overlay-text {
        margin-top: 200px !important;
    }
   
    /* .feature-item {
        width: 850px !important;
    } */
    .pricing-table .row {
        margin-left: -380px !important;
        margin-right: -380px !important;
    }
    .newsletter .row {
        width: 2200px !important;
        margin-left: -240px !important;
    }
}

/* Ensure images are responsive */
img {
    max-width: 100% !important;
    height: auto !important;
}