/* ===== RESPONSIVE BREAKPOINTS ===== */
/* Mobile First Approach */

/* ===== MOBILE (up to 575px) ===== */
@media (max-width: 575.98px) {
    /* Typography */
    .hero-title {
        font-size: 2.5rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 1.75rem;
    }
    
    .section-subtitle {
        font-size: 1.125rem;
    }
    
    .section-description {
        font-size: 1rem;
    }
    
    /* Hero Section */
    .hero-section {
        padding: 120px 0 60px;
        min-height: auto;
    }
    
    .hero-buttons .btn {
        display: block;
        width: 100%;
        margin: 0 0 1rem 0;
    }
    
    /* Sections */
    .section-padding {
        padding: 60px 0;
    }
    
    /* Cards */
    .feature-card,
    .service-card,
    .price-card,
    .case-study-card,
    .blog-card {
        margin-bottom: 1.5rem;
    }
    
    /* Team Members */
    .team-photo {
        width: 100px;
        height: 100px;
    }
    
    /* Process Steps */
    .step-number {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    /* Contact Form */
    .contact-form {
        padding: 1.5rem;
    }
    
    /* Navbar */
    .navbar-brand {
        font-size: 1.25rem;
    }
    
    /* Hero Shapes - Disable on mobile for better performance */
    .hero-shapes {
        display: none;
    }
    
    /* Disable animations on mobile (prefers-reduced-motion alternative) */
    .feature-card:hover,
    .service-card:hover,
    .price-card:hover,
    .case-study-card:hover,
    .blog-card:hover,
    .review-card:hover,
    .faq-card:hover,
    .feature-item:hover {
        transform: none;
        box-shadow: var(--shadow-sm);
    }
    
    .gallery-image:hover {
        transform: none;
    }
    
    .btn:hover {
        transform: none;
    }
}

/* ===== SMALL MOBILE (up to 375px) ===== */
@media (max-width: 375px) {
    .hero-title {
        font-size: 2rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 1.5rem;
    }
    
    .hero-buttons .btn {
        padding: 0.75rem 1rem;
        font-size: 1rem;
    }
    
    .contact-form {
        padding: 1rem;
    }
    
    .feature-card,
    .service-card,
    .price-card {
        padding: 1.5rem;
    }
}

/* ===== TABLET (576px to 767.98px) ===== */
@media (min-width: 576px) and (max-width: 767.98px) {
    .hero-title {
        font-size: 3rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 2rem;
    }
    
    .hero-buttons .btn {
        display: inline-block;
        width: auto;
        margin-right: 1rem;
    }
    
    /* Grid adjustments for tablet */
    .team-member {
        margin-bottom: 2rem;
    }
    
    .review-card {
        margin-bottom: 1.5rem;
    }
}

/* ===== MEDIUM TABLET (768px to 991.98px) ===== */
@media (min-width: 768px) and (max-width: 991.98px) {
    .hero-title {
        font-size: 3.25rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 2.125rem;
    }
    
    /* Services grid optimization */
    .service-card {
        margin-bottom: 2rem;
    }
    
    /* Process steps alignment */
    .process-step {
        margin-bottom: 2rem;
    }
}

/* ===== LARGE TABLET / SMALL DESKTOP (992px to 1199.98px) ===== */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .hero-title {
        font-size: 3.5rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 2.25rem;
    }
    
    /* Optimize spacing for large tablets */
    .section-padding {
        padding: 100px 0;
    }
    
    /* Feature items spacing */
    .feature-item {
        margin-bottom: 1.5rem;
    }
}

/* ===== DESKTOP (1200px and up) ===== */
@media (min-width: 1200px) {
    .hero-title {
        font-size: 4rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 2.5rem;
    }
    
    .section-padding {
        padding: 120px 0;
    }
    
    /* Enhanced spacing for desktop */
    .hero-section {
        padding: 0;
    }
    
    /* Re-enable hover effects for desktop */
    .feature-card:hover,
    .service-card:hover,
    .price-card:hover,
    .case-study-card:hover,
    .blog-card:hover,
    .review-card:hover,
    .faq-card:hover,
    .feature-item:hover,
    .analytics-card:hover,
    .model-card:hover,
    .integration-card:hover,
    .security-card:hover,
    .support-card:hover,
    .tech-card:hover,
    .industry-card:hover,
    .research-card:hover,
    .global-card:hover,
    .roadmap-card:hover {
        transform: translateY(-5px);
        box-shadow: var(--shadow-md);
    }
    
    .feature-item:hover {
        transform: translateY(-3px);
    }
    
    .gallery-image:hover {
        transform: scale(1.05);
        box-shadow: var(--shadow-md);
    }
    
    .btn:hover {
        transform: translateY(-1px);
    }
    
    /* Hero shapes enabled for desktop */
    .hero-shapes {
        display: block;
    }
}

/* ===== LARGE DESKTOP (1400px and up) ===== */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }
    
    .hero-title {
        font-size: 4.5rem;
    padding-top: 150px;
}
    
    .section-title {
        font-size: 2.75rem;
    }
    
    .section-padding {
        padding: 140px 0;
    }
}

/* ===== ULTRA-WIDE DESKTOP (1600px and up) ===== */
@media (min-width: 1600px) {
    .container {
        max-width: 1500px;
    }
    
    .section-padding {
        padding: 160px 0;
    }
}

/* ===== NAVBAR RESPONSIVE ===== */
@media (max-width: 991.98px) {
    .navbar-collapse {
        background-color: var(--bg-white);
        padding: 1rem;
        border-radius: 0.5rem;
        margin-top: 1rem;
        box-shadow: var(--shadow-md);
    }
    
    .navbar-nav .nav-link {
        padding: 0.75rem 1rem;
        border-bottom: 1px solid var(--border-light);
    }
    
    .navbar-nav .nav-link:last-child {
        border-bottom: none;
    }
}

/* ===== GRID RESPONSIVE ADJUSTMENTS ===== */

/* Services Grid */
@media (max-width: 767.98px) {
    .service-card {
        margin-bottom: 2rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .col-lg-4.col-md-6 {
        margin-bottom: 2rem;
    }
}

/* Team Grid */
@media (max-width: 575.98px) {
    .team-member {
        margin-bottom: 2rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .col-lg-2.col-md-4.col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

/* Process Steps Grid */
@media (max-width: 767.98px) {
    .process-step {
        margin-bottom: 2rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .col-lg-2.col-md-4 {
        flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 2rem;
    }
}

/* FAQ Grid */
@media (max-width: 767.98px) {
    .faq-card {
        margin-bottom: 1.5rem;
    }
}

/* Gallery Grid */
@media (max-width: 575.98px) {
    .col-lg-3.col-md-4.col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 1rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .col-lg-3.col-md-4.col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 1rem;
    }
}

/* ===== HERO RESPONSIVE ===== */
@media (max-width: 991.98px) {
    .hero-section .row {
        text-align: center;
    }
    
    .hero-section .col-lg-6:first-child {
        margin-bottom: 3rem;
    }
    
    .hero-image {
        margin-top: 2rem;
    }
}

/* ===== FEATURE ITEMS RESPONSIVE ===== */
@media (max-width: 767.98px) {
    .feature-item {
        flex-direction: column;
        text-align: center;
    }
    
    .feature-item .feature-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
}

/* ===== PRICE CARDS RESPONSIVE ===== */
@media (max-width: 991.98px) {
    .price-card.featured {
        transform: none;
        margin-bottom: 2rem;
    }
    
    .price-card.featured:hover {
        transform: translateY(-5px);
    }
}

/* ===== CONTACT SECTION RESPONSIVE ===== */
@media (max-width: 767.98px) {
    .contact-info {
        margin-bottom: 2rem;
    }
    
    .contact-form .row .col-md-6 {
        margin-bottom: 1rem;
    }
}

/* ===== FOOTER RESPONSIVE ===== */
@media (max-width: 767.98px) {
    .footer {
        text-align: center;
    }
    
    .footer .col-lg-4 {
        margin-bottom: 2rem;
    }
    
    .footer .col-lg-4:last-child {
        margin-bottom: 0;
    }
}

/* ===== BREADCRUMB RESPONSIVE ===== */
@media (max-width: 767.98px) {
    .breadcrumb-section {
        padding: 100px 0 30px;
    }
}

/* ===== ADDITIONAL PAGES RESPONSIVE ===== */
@media (max-width: 767.98px) {
    .analytics-card,
    .model-card,
    .integration-card,
    .security-card,
    .support-card,
    .tech-card,
    .industry-card,
    .research-card,
    .global-card,
    .roadmap-card {
        margin-bottom: 1.5rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .col-lg-2.col-md-4 {
        margin-bottom: 2rem;
    }
}

/* ===== PERFORMANCE OPTIMIZATIONS ===== */

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
    .hero-shapes {
        display: none;
    }
    
    .feature-card,
    .service-card,
    .price-card,
    .case-study-card,
    .blog-card,
    .review-card,
    .faq-card,
    .feature-item,
    .gallery-image,
    .btn,
    .analytics-card,
    .model-card,
    .integration-card,
    .security-card,
    .support-card,
    .tech-card,
    .industry-card,
    .research-card,
    .global-card,
    .roadmap-card {
        transition: none;
    }
    
    .feature-card:hover,
    .service-card:hover,
    .price-card:hover,
    .case-study-card:hover,
    .blog-card:hover,
    .review-card:hover,
    .faq-card:hover,
    .feature-item:hover,
    .gallery-image:hover,
    .btn:hover,
    .analytics-card:hover,
    .model-card:hover,
    .integration-card:hover,
    .security-card:hover,
    .support-card:hover,
    .tech-card:hover,
    .industry-card:hover,
    .research-card:hover,
    .global-card:hover,
    .roadmap-card:hover {
        transform: none;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    :root {
        --border-light: #000000;
        --border-medium: #000000;
        --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.3);
        --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3);
        --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
    }
    
    .feature-card,
    .service-card,
    .price-card,
    .case-study-card,
    .blog-card,
    .review-card,
    .faq-card,
    .contact-form,
    .analytics-card,
    .model-card,
    .integration-card,
    .security-card,
    .support-card,
    .tech-card,
    .industry-card,
    .research-card,
    .global-card,
    .roadmap-card {
        border: 2px solid var(--text-dark);
    }
} 

body {
    overflow-x: hidden;
}