/* ===== PROFESSIONAL RESPONSIVE DESIGN SYSTEM ===== */

/* Mobile First - Optimized for Modern Devices */
@media (max-width: 768px) {
    :root {
        /* Enhanced Mobile Typography - Better Readability */
        --text-7xl: clamp(2.5rem, 8vw, 3.5rem);    /* 40-56px */
        --text-6xl: clamp(2rem, 7vw, 3rem);        /* 32-48px */
        --text-5xl: clamp(1.75rem, 6vw, 2.5rem);   /* 28-40px */
        --text-4xl: clamp(1.5rem, 5vw, 2rem);      /* 24-32px */
        --text-3xl: clamp(1.25rem, 4vw, 1.75rem);  /* 20-28px */
        --text-2xl: clamp(1.125rem, 3vw, 1.5rem);  /* 18-24px */
        --text-xl: clamp(1rem, 2.5vw, 1.25rem);    /* 16-20px */
        --text-lg: clamp(1rem, 2vw, 1.125rem);     /* 16-18px */
        --text-base: 1rem;       /* 16px - Always readable */
        --text-sm: 0.875rem;     /* 14px */
        --text-xs: 0.75rem;      /* 12px */
        
        /* Enhanced Mobile Spacing - Touch-Friendly */
        --space-32: 3rem;        /* 48px */
        --space-24: 2.5rem;      /* 40px */
        --space-20: 2rem;        /* 32px */
        --space-16: 1.75rem;     /* 28px */
        --space-12: 1.5rem;      /* 24px */
        --space-10: 1.25rem;     /* 20px */
        --space-8: 1rem;         /* 16px */
        --space-6: 0.75rem;      /* 12px */
        --space-5: 0.625rem;     /* 10px */
        --space-4: 0.5rem;       /* 8px */
        --space-3: 0.375rem;     /* 6px */
        --space-2: 0.25rem;      /* 4px */
        --space-1: 0.125rem;     /* 2px */
        
        /* Mobile-specific touch targets */
        --touch-target: 48px;    /* Minimum touch target size */
        --touch-target-large: 56px;
    }
    
    /* Enhanced Mobile Base */
    html {
        font-size: 16px; /* Increased base font size for better readability */
        scroll-padding-top: 100px;
        -webkit-text-size-adjust: 100%; /* Prevent iOS zoom on input focus */
        -webkit-tap-highlight-color: rgba(59, 130, 246, 0.2);
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100); /* Mobile viewport height fix */
    }
    
    body {
        font-size: var(--text-base);
        line-height: 1.6; /* Improved line height for mobile reading */
        overflow-x: hidden;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-rendering: optimizeLegibility;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
    }
    
    /* Enhanced Mobile Container */
    .container {
        max-width: 100%;
        padding: 0 var(--space-4);
        margin: 0 auto;
    }
    
    /* Touch-friendly mobile sections */
    .section {
        padding: var(--space-12) 0;
        scroll-margin-top: 100px; /* Offset for fixed header */
    }
    
    .section-compact {
        padding: var(--space-8) 0;
    }
    
    .section-large {
        padding: var(--space-16) 0;
    }
    
    .section-header {
        margin-bottom: var(--space-8);
        text-align: center;
        padding: 0 var(--space-2);
    }
    
    .section-title {
        font-size: var(--text-4xl);
        margin-bottom: var(--space-4);
        line-height: 1.2;
        font-weight: var(--font-bold);
    }
    
    .section-subtitle {
        font-size: var(--text-base);
        line-height: 1.6;
        margin: 0 auto;
        max-width: 100%;
        color: var(--gray-600);
    }
    
    /* Enhanced Mobile Navigation */
    .header {
        position: fixed;
        top: var(--space-2);
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - var(--space-4));
        max-width: 100%;
        z-index: var(--z-modal);
        transition: all var(--transition-normal);
        /* Enhanced mobile glass effect */
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: var(--blur-2xl);
        -webkit-backdrop-filter: var(--blur-2xl);
        border: 1px solid rgba(255, 255, 255, 0.9);
        border-radius: var(--radius-3xl);
        box-shadow: 0 8px 40px rgba(15, 23, 42, 0.12);
    }
    
    .header.scrolled {
        background: rgba(255, 255, 255, 0.99);
        backdrop-filter: var(--blur-3xl);
        -webkit-backdrop-filter: var(--blur-3xl);
        box-shadow: 0 12px 50px rgba(15, 23, 42, 0.18);
        border: 1px solid rgba(255, 255, 255, 0.95);
        top: var(--space-1);
    }
    
    .navbar {
        padding: var(--space-3) var(--space-4);
        min-height: var(--touch-target-large);
    }
    
    .nav-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }
    
    .nav-logo {
        display: flex;
        align-items: center;
        gap: var(--space-2);
        z-index: var(--z-modal);
        transition: all var(--transition-normal);
    }
    
    .nav-logo:hover {
        transform: scale(1.02);
    }
    
    .logo-image {
        height: 40px; /* Optimized size for mobile */
        width: auto;
        object-fit: contain;
        transition: all var(--transition-normal);
    }
    
    /* Hide desktop navigation */
    .nav-menu {
        display: none;
    }
    
    .nav-actions {
        display: none;
    }
    
    /* Enhanced Mobile Hamburger - Touch Optimized */
    .hamburger {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: var(--touch-target);
        height: var(--touch-target);
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: var(--blur-lg);
        -webkit-backdrop-filter: var(--blur-lg);
        border: 2px solid rgba(15, 23, 42, 0.08);
        border-radius: var(--radius-xl);
        cursor: pointer;
        transition: all var(--transition-normal);
        gap: 4px;
        z-index: var(--z-tooltip);
        box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08);
        position: relative;
    }
    
    .hamburger::before {
        content: '';
        position: absolute;
        inset: -4px;
        border-radius: inherit;
        z-index: -1;
    }
    
    .hamburger:hover {
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: var(--blur-xl);
        -webkit-backdrop-filter: var(--blur-xl);
        border-color: rgba(59, 130, 246, 0.2);
        transform: scale(1.02);
        box-shadow: 0 8px 30px rgba(59, 130, 246, 0.15);
    }
    
    .hamburger:active {
        transform: scale(0.98);
    }
    
    .hamburger .bar {
        width: 22px;
        height: 2.5px;
        background: var(--gray-700);
        border-radius: var(--radius-full);
        transition: all var(--transition-normal);
        transform-origin: center;
    }
    
    /* Hamburger Animation */
    .hamburger.active {
        background: rgba(220, 38, 38, 0.1);
        border-color: rgba(220, 38, 38, 0.3);
    }
    
    .hamburger.active .bar {
        background: var(--brand-error);
    }
    
    .hamburger.active .bar:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }
    
    .hamburger.active .bar:nth-child(2) {
        opacity: 0;
        transform: scaleX(0);
    }
    
    .hamburger.active .bar:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }
    
    /* Enhanced Mobile Menu */
    .nav-menu {
        position: fixed;
        top: 70px;
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - var(--space-4));
        max-width: 400px;
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: var(--blur-2xl);
        -webkit-backdrop-filter: var(--blur-2xl);
        border: 2px solid rgba(255, 255, 255, 0.9);
        border-radius: var(--radius-3xl);
        box-shadow: 0 25px 80px rgba(15, 23, 42, 0.15);
        padding: var(--space-6);
        opacity: 0;
        visibility: hidden;
        transform: translateX(-50%) translateY(-20px) scale(0.95);
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: var(--z-dropdown);
        list-style: none;
        margin: 0;
        max-height: calc(100vh - 120px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .nav-menu.active {
        opacity: 1;
        visibility: visible;
        transform: translateX(-50%) translateY(0) scale(1);
    }
    
    .nav-item {
        margin-bottom: var(--space-2);
    }
    
    .nav-item:last-child {
        margin-bottom: 0;
    }
    
    .nav-link {
        display: flex;
        align-items: center;
        padding: var(--space-4) var(--space-5);
        color: var(--gray-700);
        font-weight: var(--font-semibold);
        font-size: var(--text-base);
        text-decoration: none;
        border-radius: var(--radius-2xl);
        transition: all var(--transition-normal);
        background: rgba(248, 250, 252, 0.8);
        border: 2px solid transparent;
        position: relative;
        overflow: hidden;
        letter-spacing: 0.025em;
        min-height: var(--touch-target);
        justify-content: center;
    }
    
    .nav-link::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: var(--gradient-secondary);
        transition: left var(--transition-normal);
        z-index: -1;
    }
    
    .nav-link:hover::before,
    .nav-link.active::before {
        left: 0;
    }
    
    .nav-link:hover,
    .nav-link.active {
        color: var(--white);
        border-color: rgba(59, 130, 246, 0.3);
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2);
    }
    
    .nav-link:active {
        transform: translateY(0) scale(0.98);
    }
    
    /* Enhanced Mobile Get Started Button */
    .mobile-get-started {
        margin-top: var(--space-6);
        padding-top: var(--space-6);
        border-top: 2px solid rgba(15, 23, 42, 0.06);
    }
    
    .mobile-get-started .btn {
        width: 100%;
        justify-content: center;
        padding: var(--space-5);
        min-height: var(--touch-target-large);
        font-weight: var(--font-bold);
        border-radius: var(--radius-2xl);
        background: var(--gradient-primary);
        color: var(--white);
        text-decoration: none;
        text-align: center;
        display: flex;
        align-items: center;
        gap: var(--space-3);
        transition: all var(--transition-normal);
        box-shadow: 0 8px 30px rgba(15, 23, 42, 0.25);
        border: 2px solid transparent;
        letter-spacing: 0.025em;
        font-size: var(--text-base);
    }
    
    .mobile-get-started .btn:hover {
        background: var(--gradient-secondary);
        transform: translateY(-2px);
        box-shadow: 0 12px 40px rgba(59, 130, 246, 0.3);
        border-color: rgba(255, 255, 255, 0.2);
    }
    
    .mobile-get-started .btn:active {
        transform: translateY(0) scale(0.98);
    }
    
    /* Professional Mobile Backdrop */
    .nav-backdrop {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(15, 23, 42, 0.4);
        backdrop-filter: var(--blur-sm);
        -webkit-backdrop-filter: var(--blur-sm);
        opacity: 0;
        visibility: hidden;
        transition: all var(--transition-normal);
        z-index: calc(var(--z-dropdown) - 1);
    }
    
    .nav-backdrop.active {
        opacity: 1;
        visibility: visible;
    }
    
    /* Mobile Body Adjustments */
    body {
        padding-top: 0;
    }
    
    /* Enhanced Mobile Hero */
    .hero {
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
        padding-top: 80px;
        padding-bottom: var(--space-12);
        text-align: center;
        overflow: hidden;
        display: flex;
        align-items: center;
    }
    
    .hero-container {
        width: 100%;
    }
    
    .hero-content {
        grid-template-columns: 1fr;
        gap: var(--space-8);
        min-height: auto;
        text-align: center;
        align-items: center;
    }
    
    .hero-text-centered {
        text-align: center;
        margin: 0;
        padding: 0 var(--space-2);
        order: 2;
    }
    
    .hero-visual {
        order: 1;
        min-height: 240px;
        margin-bottom: var(--space-6);
    }
    
    .hero-visual-container {
        max-width: 260px;
        height: 260px;
        margin: 0 auto;
    }
    
    .ai-brain-visual {
        width: 180px;
        height: 180px;
    }
    
    .ai-brain-visual i {
        font-size: 3.5rem;
    }
    
    .code-snippets {
        display: none; /* Hide on mobile for better performance and focus */
    }
    
    .hero-title {
        font-size: var(--text-5xl);
        margin-bottom: var(--space-6);
        line-height: 1.2;
        font-weight: var(--font-bold);
    }
    
    .hero-description {
        font-size: var(--text-lg);
        margin-bottom: var(--space-8);
        max-width: 100%;
        line-height: 1.6;
        color: var(--gray-600);
    }
    
    .hero-stats {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--space-3);
        margin-bottom: var(--space-8);
        max-width: 100%;
    }
    
    .stat {
        padding: var(--space-3);
        min-width: auto;
        width: 100%;
        text-align: center;
        border-radius: var(--radius-xl);
        background: rgba(255, 255, 255, 0.8);
        backdrop-filter: var(--blur-sm);
        border: 1px solid rgba(255, 255, 255, 0.6);
    }
    
    .stat-number {
        font-size: var(--text-xl);
        margin-bottom: var(--space-1);
        font-weight: var(--font-bold);
        color: var(--brand-secondary);
    }
    
    .stat-label {
        font-size: var(--text-xs);
        font-weight: var(--font-medium);
        color: var(--gray-600);
    }
    
    .hero-actions {
        flex-direction: column;
        gap: var(--space-4);
        width: 100%;
        align-items: stretch;
    }
    
    .btn-large {
        width: 100%;
        justify-content: center;
        padding: var(--space-5) var(--space-6);
        font-size: var(--text-base);
        min-height: var(--touch-target-large);
        border-radius: var(--radius-2xl);
    }
    
    /* Enhanced Mobile Features */
    .features-grid {
        grid-template-columns: 1fr;
        gap: var(--space-6);
    }
    
    .feature-card {
        padding: var(--space-6);
        margin-bottom: var(--space-4);
        border-radius: var(--radius-2xl);
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: var(--blur-sm);
        border: 1px solid rgba(255, 255, 255, 0.8);
        box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08);
        transition: all var(--transition-normal);
    }
    
    .feature-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 8px 30px rgba(15, 23, 42, 0.12);
    }
    
    .feature-icon {
        width: 64px;
        height: 64px;
        font-size: var(--text-2xl);
        margin-bottom: var(--space-4);
        border-radius: var(--radius-xl);
        background: var(--gradient-secondary);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--white);
    }
    
    .feature-title {
        font-size: var(--text-xl);
        margin-bottom: var(--space-3);
        font-weight: var(--font-semibold);
        color: var(--gray-900);
    }
    
    .feature-description {
        font-size: var(--text-base);
        line-height: 1.6;
        color: var(--gray-600);
    }
    
    /* Professional Mobile About */
    .about-content {
        grid-template-columns: 1fr;
        gap: var(--space-12);
    }
    
    .stats-container {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-4);
    }
    
    .stat-item {
        padding: var(--space-5) var(--space-3);
    }
    
    .stat-item .stat-number {
        font-size: var(--text-3xl);
    }
    
    .stat-item .stat-label {
        font-size: var(--text-xs);
    }
    
    /* Enhanced Mobile Services */
    .services {
        padding: var(--space-12) 0;
        touch-action: pan-y; /* Allow vertical scrolling */
        overflow: visible;
    }
    
    .services .section-header {
        margin-bottom: var(--space-8);
        padding: 0 var(--space-4);
    }
    
    .services .section-title {
        font-size: var(--text-4xl);
        font-weight: var(--font-bold);
    }
    
    .services .section-subtitle {
        font-size: var(--text-base);
        color: var(--gray-600);
    }
    
    .services-grid {
        grid-template-columns: 1fr;
        gap: var(--space-6);
        max-width: 100%;
        padding: 0 var(--space-4);
        margin-bottom: var(--space-8);
    }
    
    /* Enhanced Mobile Carousel - Show all cards */
    .services-carousel {
        max-width: 100%;
        padding: 0 var(--space-2);
        margin-bottom: var(--space-12);
        overflow: visible;
        touch-action: pan-y; /* Allow vertical scrolling */
        position: relative;
    }
    
    .carousel-container {
        position: relative;
        overflow: visible;
        border-radius: var(--radius-2xl);
    }
    
    .carousel-wrapper {
        overflow: visible;
        border-radius: var(--radius-2xl);
    }
    
    .carousel-track {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--space-6);
        transform: none !important;
        transition: none !important;
        will-change: auto;
        touch-action: pan-y; /* Allow vertical scrolling */
        overflow: visible;
    }
    
    .carousel-slide {
        flex: none;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: stretch;
        width: 100%;
        position: relative;
    }
    
    /* Override desktop carousel slide styling for mobile - Higher Specificity */
    .services-carousel .carousel-slide .service-card {
        transform: none !important;
        opacity: 1 !important;
        position: relative;
        transition: all var(--transition-normal);
        animation: none !important;
    }
    
    .services-carousel .carousel-slide.active .service-card {
        transform: none !important;
        opacity: 1 !important;
        animation: none !important;
    }
    
    /* Ensure all carousel slides are active-looking on mobile */
    .carousel-slide .service-card,
    .carousel-slide.active .service-card {
        transform: scale(1) !important;
        opacity: 1 !important;
        box-shadow: 0 8px 32px rgba(59, 130, 246, 0.12) !important;
    }
    
    .carousel-nav {
        display: none !important; /* Completely hidden on mobile */
    }
    
    .carousel-dots {
        display: none !important; /* Completely hidden on mobile */
    }
    
    .carousel-dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background: rgba(15, 23, 42, 0.2);
        border: none;
        cursor: pointer;
        transition: all var(--transition-normal);
        position: relative;
        overflow: hidden;
    }
    
    .carousel-dot::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--brand-secondary);
        opacity: 0;
        transition: opacity var(--transition-normal);
    }
    
    .carousel-dot.active,
    .carousel-dot:hover {
        background: rgba(59, 130, 246, 0.2);
        transform: scale(1.2);
    }
    
    .carousel-dot.active::after {
        opacity: 1;
    }
    
    .service-card {
        padding: var(--space-6);
        border-radius: var(--radius-2xl);
        width: 100%;
        max-width: 340px;
        min-height: 460px;
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: var(--blur-sm);
        border: 2px solid rgba(59, 130, 246, 0.15);
        box-shadow: 0 8px 32px rgba(59, 130, 246, 0.12);
        transition: all var(--transition-normal);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        transform: none;
        opacity: 1;
        position: relative;
    }
    
    .service-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--gradient-secondary);
        opacity: 0.02;
        border-radius: inherit;
        pointer-events: none;
    }
    
    .service-card.featured {
        transform: none;
        margin-top: 0;
        border: 2px solid rgba(59, 130, 246, 0.3);
        background: rgba(255, 255, 255, 1);
        box-shadow: 0 12px 40px rgba(59, 130, 246, 0.15);
    }
    
    .service-card.featured::before {
        opacity: 0.05;
    }
    
    .service-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 16px 40px rgba(59, 130, 246, 0.2);
        border-color: rgba(59, 130, 246, 0.25);
    }
    
    .service-card.featured:hover {
        transform: translateY(-4px);
        box-shadow: 0 20px 50px rgba(59, 130, 246, 0.25);
        border-color: rgba(59, 130, 246, 0.4);
    }
    
    /* Enhanced Mobile Service Card Content */
    .plan-header {
        text-align: center;
        margin-bottom: var(--space-4);
    }
    
    .plan-icon {
        width: 60px;
        height: 60px;
        margin: 0 auto var(--space-3);
        background: var(--gradient-secondary);
        border-radius: var(--radius-xl);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--white);
        font-size: var(--text-xl);
    }
    
    .plan-title {
        font-size: var(--text-xl);
        font-weight: var(--font-bold);
        color: var(--gray-900);
        margin-bottom: var(--space-2);
    }
    
    .plan-subtitle {
        font-size: var(--text-sm);
        color: var(--gray-600);
        margin-bottom: var(--space-4);
    }
    
    .pricing {
        text-align: center;
        margin: var(--space-4) 0;
    }
    
    .pricing .currency {
        font-size: var(--text-lg);
        font-weight: var(--font-semibold);
        color: var(--gray-700);
        vertical-align: top;
    }
    
    .pricing .price {
        font-size: var(--text-4xl);
        font-weight: var(--font-black);
        color: var(--brand-secondary);
        line-height: 1;
    }
    
    .pricing .period {
        font-size: var(--text-base);
        color: var(--gray-600);
        font-weight: var(--font-medium);
    }
    
    .billing-info {
        text-align: center;
        font-size: var(--text-sm);
        color: var(--gray-500);
        margin-bottom: var(--space-4);
    }
    
    .features-section h4 {
        font-size: var(--text-base);
        font-weight: var(--font-semibold);
        color: var(--gray-800);
        margin-bottom: var(--space-3);
        text-align: center;
    }
    
    .feature-list {
        list-style: none;
        padding: 0;
        margin-bottom: var(--space-6);
    }
    
    .feature-list li {
        display: flex;
        align-items: center;
        gap: var(--space-2);
        padding: var(--space-2) 0;
        font-size: var(--text-sm);
        color: var(--gray-700);
        border-bottom: 1px solid rgba(15, 23, 42, 0.05);
    }
    
    .feature-list li:last-child {
        border-bottom: none;
    }
    
    .feature-list i {
        width: 16px;
        height: 16px;
        color: var(--brand-success);
        font-size: 12px;
        flex-shrink: 0;
    }
    
    .cta-section {
        margin-top: auto;
        text-align: center;
    }
    
    .cta-section .btn {
        width: 100%;
        padding: var(--space-4) var(--space-6);
        font-size: var(--text-base);
        font-weight: var(--font-semibold);
        border-radius: var(--radius-xl);
        min-height: var(--touch-target);
        transition: all var(--transition-normal);
    }
    
    .cta-section .btn-outline {
        background: rgba(59, 130, 246, 0.1);
        color: var(--brand-secondary);
        border: 2px solid rgba(59, 130, 246, 0.2);
    }
    
    .cta-section .btn-outline:hover {
        background: var(--brand-secondary);
        color: var(--white);
        border-color: var(--brand-secondary);
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(59, 130, 246, 0.25);
    }
    
    .cta-section .btn-primary {
        background: var(--gradient-secondary);
        color: var(--white);
        border: 2px solid transparent;
    }
    
    .cta-section .btn-primary:hover {
        background: var(--gradient-primary);
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(15, 23, 42, 0.25);
    }
    
    .trial-info,
    .guarantee {
        font-size: var(--text-xs);
        color: var(--gray-500);
        margin-top: var(--space-2);
        line-height: 1.4;
    }
    
    /* Special styling for featured service card */
    .service-card.featured .plan-icon {
        background: var(--gradient-primary);
        box-shadow: 0 4px 20px rgba(15, 23, 42, 0.2);
    }
    
    .service-card.featured .pricing .price {
        color: var(--brand-primary);
    }
    
    .service-card.featured .feature-list li {
        font-weight: var(--font-medium);
    }
    
    /* Popular badge for featured card */
    .service-card.featured::after {
        content: 'Most Popular';
        position: absolute;
        top: -1px;
        left: 50%;
        transform: translateX(-50%);
        background: var(--gradient-secondary);
        color: var(--white);
        font-size: var(--text-xs);
        font-weight: var(--font-bold);
        padding: var(--space-1) var(--space-4);
        border-radius: 0 0 var(--radius-lg) var(--radius-lg);
        box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
        letter-spacing: 0.5px;
        text-transform: uppercase;
    }
    
    .popular-badge {
        font-size: var(--text-xs);
        padding: var(--space-1) var(--space-4);
        top: -8px;
    }
    
    .plan-icon {
        width: 60px;
        height: 60px;
        margin-bottom: var(--space-3);
    }
    
    .plan-icon i {
        font-size: var(--text-xl);
    }
    
    .plan-title {
        font-size: var(--text-xl);
        margin-bottom: var(--space-1);
    }
    
    .plan-subtitle {
        font-size: var(--text-sm);
    }
    
    .main-price .price {
        font-size: var(--text-4xl);
    }
    
    .main-price .currency {
        font-size: var(--text-xl);
    }
    
    .main-price .period {
        font-size: var(--text-lg);
    }
    
    .monthly-equivalent {
        font-size: var(--text-sm);
    }
    
    .feature-list li {
        font-size: var(--text-sm);
        margin-bottom: var(--space-2);
        padding: var(--space-1) 0;
    }
    
    .feature-list i {
        width: 16px;
        height: 16px;
        font-size: 10px;
    }
    
    .btn {
        padding: var(--space-3) var(--space-6);
        font-size: var(--text-sm);
        min-width: 160px;
    }
    
    .trial-info,
    .guarantee {
        font-size: var(--text-xs);
    }
    
    /* Trust Indicators Mobile */
    .trust-indicators {
        grid-template-columns: 1fr;
        gap: var(--space-6);
        padding: var(--space-12) var(--space-4) 0;
        margin-top: var(--space-8);
    }
    
    .trust-item {
        padding: var(--space-4);
    }
    
    .trust-icon {
        width: 50px;
        height: 50px;
        margin-bottom: var(--space-3);
    }
    
    .trust-icon i {
        font-size: var(--text-lg);
    }
    
    .trust-item h4 {
        font-size: var(--text-base);
        margin-bottom: var(--space-1);
    }
    
    .trust-item p {
        font-size: var(--text-sm);
    }
    
    .service-price {
        font-size: var(--text-xl);
        margin-bottom: var(--space-6);
    }
    
    .service-card .btn {
        padding: var(--space-4) var(--space-6);
        font-size: var(--text-sm);
        width: 100%;
    }
    
    /* Professional Mobile Testimonials */
    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: var(--space-8);
    }
    
    .testimonial-card {
        padding: var(--space-8);
    }
    
    .testimonial-content p {
        font-size: var(--text-base);
        line-height: var(--leading-relaxed);
    }
    
    .author-avatar {
        width: 50px;
        height: 50px;
    }
    
    .author-avatar i {
        font-size: var(--text-xl);
    }
    
    .author-info h4 {
        font-size: var(--text-base);
    }
    
    .author-info span {
        font-size: var(--text-sm);
    }
    
    .testimonial-rating i {
        font-size: var(--text-base);
    }
    
    /* Enhanced Mobile Contact Forms */
    .contact-content {
        grid-template-columns: 1fr;
        gap: var(--space-8);
    }
    
    .contact-info-section {
        text-align: center;
        gap: var(--space-6);
    }
    
    .contact-details {
        gap: var(--space-4);
    }
    
    .contact-form-container {
        padding: var(--space-6);
        border-radius: var(--radius-2xl);
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: var(--blur-sm);
        border: 1px solid rgba(255, 255, 255, 0.8);
    }
    
    .contact-form {
        gap: var(--space-4);
    }
    
    .contact-form input,
    .contact-form select,
    .contact-form textarea {
        padding: var(--space-4);
        font-size: var(--text-base);
        border-radius: var(--radius-xl);
        border: 2px solid rgba(15, 23, 42, 0.1);
        background: rgba(255, 255, 255, 0.9);
        transition: all var(--transition-normal);
        min-height: var(--touch-target);
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }
    
    .contact-form input:focus,
    .contact-form select:focus,
    .contact-form textarea:focus {
        border-color: var(--brand-secondary);
        box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
        outline: none;
    }
    
    .contact-form label {
        font-size: var(--text-sm);
        font-weight: var(--font-semibold);
        color: var(--gray-700);
        margin-bottom: var(--space-2);
    }
    
    .contact-form button[type="submit"] {
        margin-top: var(--space-4);
        padding: var(--space-5);
        width: 100%;
        font-size: var(--text-base);
        min-height: var(--touch-target-large);
        border-radius: var(--radius-2xl);
        background: var(--gradient-primary);
        color: var(--white);
        border: none;
        cursor: pointer;
        transition: all var(--transition-normal);
    }
    
    .contact-form button[type="submit"]:hover {
        background: var(--gradient-secondary);
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2);
    }
    
    .contact-details {
        display: grid;
        grid-template-columns: 1fr;
        gap: var(--space-4);
        margin-bottom: var(--space-6);
    }
    
    .contact-item {
        display: flex;
        align-items: center;
        gap: var(--space-4);
        padding: var(--space-4);
        background: rgba(248, 250, 252, 0.8);
        border-radius: var(--radius-xl);
        border: 2px solid rgba(15, 23, 42, 0.05);
    }
    
    .contact-item i {
        width: 48px;
        height: 48px;
        font-size: var(--text-xl);
        flex-shrink: 0;
    }
    
    .contact-item h4 {
        font-size: var(--text-base);
        margin-bottom: var(--space-1);
    }
    
    .contact-item p {
        font-size: var(--text-sm);
        margin: 0;
        line-height: var(--leading-relaxed);
    }
    
    /* Professional Mobile Footer */
    .footer {
        padding: var(--space-16) 0 var(--space-8);
    }
    
    .footer-content {
        grid-template-columns: 1fr;
        gap: var(--space-8);
        text-align: center;
    }
    
    .footer-section {
        padding: var(--space-6);
    }
    
    .footer-logo-image {
        height: 36px;
    }
    
    .footer-section h3 {
        font-size: var(--text-lg);
        margin-bottom: var(--space-4);
    }
    
    .footer-links a {
        font-size: var(--text-base);
        padding: var(--space-2) 0;
    }
    
    .social-links {
        justify-content: center;
        gap: var(--space-4);
        margin-top: var(--space-4);
    }
    
    .social-link {
        width: 44px;
        height: 44px;
        font-size: var(--text-lg);
    }
    
    .footer-bottom p {
        font-size: var(--text-sm);
        padding-top: var(--space-6);
        margin-top: var(--space-6);
    }
}

/* Professional Tablet and Desktop Restoration */

/* Tablet and Desktop - Restore Original Desktop Navigation */
@media (min-width: 769px) {
    /* Hide mobile navigation elements */
    .hamburger {
        display: none !important;
    }
    
    .nav-backdrop {
        display: none !important;
    }
    
    .mobile-get-started {
        display: none !important;
    }
    
    /* Restore original desktop header */
    .header {
        position: fixed;
        top: var(--space-4);
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - var(--space-8));
        max-width: 1200px;
        z-index: var(--z-modal);
        transition: all var(--transition-normal);
        /* Original glass morphism effect */
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: var(--radius-full);
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    }
    
    .header.scrolled {
        background: rgba(255, 255, 255, 0.15);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.3);
    }
    
    .navbar {
        padding: var(--space-3) var(--space-6);
    }
    
    .nav-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    
    .nav-logo {
        display: flex;
        align-items: center;
        gap: var(--space-2);
        color: var(--gray-900);
        font-weight: var(--font-bold);
        font-size: var(--text-lg);
        text-decoration: none;
    }
    
    .logo-image {
        height: 40px;
        width: auto;
        object-fit: contain;
    }
    
    /* Original desktop navigation menu */
    .nav-menu {
        display: flex !important;
        align-items: center;
        gap: var(--space-2);
        list-style: none;
        margin: 0;
        padding: var(--space-2);
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: var(--radius-full);
        position: static;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        box-shadow: none;
        width: auto;
        max-width: none;
    }
    
    .nav-item {
        margin-bottom: 0;
    }
    
    .nav-link {
        color: var(--gray-700);
        font-weight: var(--font-medium);
        font-size: var(--text-sm);
        text-decoration: none;
        padding: var(--space-2) var(--space-4);
        border-radius: var(--radius-full);
        transition: all var(--transition-normal);
        background: transparent;
        border: none;
    }
    
    .nav-link:hover,
    .nav-link.active {
        color: var(--primary-color);
        background: rgba(255, 255, 255, 0.2);
        backdrop-filter: blur(15px);
        -webkit-backdrop-filter: blur(15px);
        box-shadow: 0 4px 20px rgba(30, 64, 175, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.3);
        transform: translateY(-1px);
    }
    
    /* Original desktop actions */
    .nav-actions {
        display: flex !important;
        align-items: center;
        gap: var(--space-3);
    }
    
    .nav-actions .btn {
        padding: var(--space-2) var(--space-4);
        font-size: var(--text-sm);
        font-weight: var(--font-medium);
        border-radius: var(--radius-full);
        transition: all var(--transition-normal);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }
    
    .nav-actions .btn-primary {
        background: var(--primary-color);
        color: var(--white);
        border: 1px solid var(--primary-color);
    }
    
    .nav-actions .btn-primary:hover {
        background: var(--primary-hover);
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(30, 64, 175, 0.3);
    }
    
    .nav-actions .btn-outline {
        background: rgba(255, 255, 255, 0.1);
        color: var(--gray-700);
        border: 1px solid rgba(255, 255, 255, 0.2);
    }
    
    .nav-actions .btn-outline:hover {
        background: rgba(255, 255, 255, 0.2);
        color: var(--primary-color);
        border: 1px solid rgba(255, 255, 255, 0.3);
        transform: translateY(-1px);
    }
    
    /* Reset body padding for desktop */
    body {
        padding-top: 0;
    }
    
    /* Restore desktop layout for all content */
    .hero {
        min-height: 100vh;
        padding-top: 120px;
        padding-bottom: var(--space-16);
    }
    
    .hero-content {
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: var(--space-16);
        min-height: 70vh;
    }
    
    .hero-text {
        text-align: left;
        max-width: none;
    }
    
    .hero-title {
        font-size: var(--text-7xl);
    }
    
    .hero-description {
        font-size: var(--text-xl);
        max-width: 90%;
    }
    
    .hero-actions {
        flex-direction: row;
        gap: var(--space-4);
    }
    
    .btn-large {
        width: auto;
        padding: var(--space-4) var(--space-8);
    }
    
    .hero-visual {
        order: 2;
        min-height: 500px;
    }
    
    .features-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 800px;
        gap: var(--space-8);
        justify-items: center;
        align-items: start;
    }
    
    /* Desktop Carousel Adjustments */
    .services-carousel {
        max-width: 1000px;
    }
    
    .carousel-nav {
        display: flex; /* Show nav buttons on desktop */
    }
    
    .testimonials-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .about-content {
        grid-template-columns: 1fr 1fr;
    }
    
    .contact-content {
        grid-template-columns: 1fr 1fr;
    }
    
    .footer-content {
        grid-template-columns: 2fr 1fr 1fr 1fr;
    }
}

/* Small Devices (Landscape Phones) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .container {
        max-width: 540px;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .services-grid {
        grid-template-columns: 1fr;
    }
    
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
    
    .hero-stats {
        flex-direction: row;
        justify-content: center;
    }
    
    .stats-container {
        grid-template-columns: 1fr 1fr;
    }
}

/* Medium Devices (Tablets) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .container {
        max-width: 720px;
    }
    
    .nav-menu {
        display: flex;
    }
    
    .hamburger {
        display: none;
    }
    
    .hero-content {
        text-align: center;
        min-height: 50vh;
    }
    
    .floating-elements-around {
        display: block;
    }
    
    .floating-card-1, .floating-card-5 {
        left: 10%;
    }
    
    .floating-card-2, .floating-card-4, .floating-card-6 {
        right: 10%;
    }
    
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .services-grid {
        grid-template-columns: 1fr;
    }
    
    /* Tablet Carousel Adjustments */
    .services-carousel {
        max-width: 600px;
        padding: 0 var(--space-4);
    }
    
    .carousel-nav {
        display: flex; /* Show nav buttons on tablet */
    }
    
    .carousel-btn {
        width: 50px;
        height: 50px;
    }
    
    .testimonials-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .about-content {
        grid-template-columns: 1fr;
        gap: var(--space-12);
    }
    
    .contact-content {
        grid-template-columns: 1fr;
        gap: var(--space-12);
    }
    
    .footer-content {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .floating-elements-around {
        display: block;
    }
}

/* Large Devices (Small Desktops) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .container {
        max-width: 960px;
    }
    
    .hero-content {
        text-align: center;
        min-height: 60vh;
    }
    
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 800px;
        gap: var(--space-8);
        justify-items: center;
        align-items: start;
    }
    
    .testimonials-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .about-content {
        grid-template-columns: 1fr 1fr;
    }
    
    .contact-content {
        grid-template-columns: 1fr 1fr;
    }
    
    .footer-content {
        grid-template-columns: 2fr 1fr 1fr 1fr;
    }
}

/* Extra Large Devices (Large Desktops) */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .container {
        max-width: 1140px;
    }
    
    .features-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 900px;
        gap: var(--space-10);
        justify-items: center;
        align-items: start;
    }
}

/* Extra Extra Large Devices (Larger Desktops) */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }
    
    .features-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 1000px;
        gap: var(--space-12);
        justify-items: center;
        align-items: start;
    }
}

/* ===== RESPONSIVE UTILITIES ===== */

/* Hide elements on specific breakpoints */
@media (max-width: 767.98px) {
    .hidden-mobile {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .hidden-tablet {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .hidden-desktop {
        display: none !important;
    }
}

/* Show elements only on specific breakpoints */
@media (max-width: 767.98px) {
    .show-mobile {
        display: block !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .show-tablet {
        display: block !important;
    }
}

@media (min-width: 992px) {
    .show-desktop {
        display: block !important;
    }
}

/* ===== RESPONSIVE TYPOGRAPHY ===== */
@media (max-width: 575.98px) {
    h1, .hero-title {
        font-size: var(--text-4xl);
        line-height: 1.2;
    }
    
    h2, .section-title {
        font-size: var(--text-3xl);
        line-height: 1.3;
    }
    
    h3 {
        font-size: var(--text-xl);
    }
    
    .hero-description {
        font-size: var(--text-base);
    }
    
    .section-subtitle {
        font-size: var(--text-base);
    }
}

/* ===== RESPONSIVE SPACING ===== */
@media (max-width: 767.98px) {
    .section {
        padding: var(--space-12) 0;
    }
    
    .section-header {
        margin-bottom: var(--space-8);
    }
    
    .hero {
        padding-top: 80px;
    }
}

/* ===== RESPONSIVE ANIMATIONS ===== */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ===== TOUCH DEVICE OPTIMIZATIONS ===== */
@media (hover: none) {
    .btn:hover,
    .feature-card:hover,
    .service-card:hover,
    .testimonial-card:hover {
        transform: none;
    }
    
    .btn {
        -webkit-tap-highlight-color: transparent;
    }
}

/* ===== PRINT STYLES ===== */
@media print {
    * {
        background: transparent !important;
        color: black !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }
    
    .header,
    .footer,
    .nav-actions,
    .hero-actions,
    .btn {
        display: none !important;
    }
    
    .hero,
    .section {
        padding: var(--space-8) 0 !important;
        page-break-inside: avoid;
    }
    
    h1, h2, h3 {
        page-break-after: avoid;
    }
    
    .container {
        max-width: none !important;
        padding: 0 !important;
    }
    
    a[href^="http"]:after {
        content: " (" attr(href) ")";
    }
}

/* ===== ENHANCED MOBILE OPTIMIZATIONS ===== */

/* Mobile-specific performance optimizations */
@media (max-width: 768px) {
    /* Optimize animations for mobile */
    * {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    
    /* Enhanced touch interactions */
    .btn, .nav-link, .feature-card, .service-card, .hamburger {
        -webkit-tap-highlight-color: rgba(59, 130, 246, 0.1);
        touch-action: manipulation;
        cursor: pointer;
    }
    
    /* Improve scroll performance */
    .nav-menu, .contact-form-container {
        -webkit-overflow-scrolling: touch;
        transform: translateZ(0);
        will-change: transform;
    }
    
    /* Mobile keyboard handling */
    .contact-form input[type="email"],
    .contact-form input[type="tel"],
    .contact-form input[type="text"] {
        font-size: 16px; /* Prevents zoom on iOS */
        zoom: 1; /* Reset zoom */
    }
    
    /* Enhanced button states for touch */
    .btn:active,
    .nav-link:active,
    .hamburger:active {
        transform: scale(0.96);
        transition-duration: 0.1s;
    }
    
    /* Mobile-specific spacing adjustments */
    .section:first-of-type {
        padding-top: calc(var(--space-16) + 60px); /* Account for fixed header */
    }
    
    /* Improve text readability on small screens */
    p, .feature-description, .testimonial-content p {
        text-align: left;
        hyphens: auto;
        -webkit-hyphens: auto;
        -moz-hyphens: auto;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    /* Enhanced mobile cards */
    .feature-card, .service-card, .testimonial-card {
        box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.8);
        will-change: transform;
    }
    
    .feature-card:hover, .service-card:hover, .testimonial-card:hover {
        box-shadow: 0 6px 20px rgba(15, 23, 42, 0.1);
    }
    
    /* Mobile-specific image optimizations */
    img {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    
    /* Enhanced mobile form inputs */
    input, textarea, select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: var(--radius-xl);
    }
    
    /* Mobile-specific accessibility improvements */
    .btn, .nav-link {
        min-height: var(--touch-target);
        min-width: var(--touch-target);
    }
    
    /* Optimize gradients for mobile */
    .gradient-text {
        background-attachment: fixed;
    }
    
    /* Mobile navigation optimizations */
    .nav-menu {
        contain: layout style paint;
    }
    
    /* Reduce motion for users who prefer it */
    @media (prefers-reduced-motion: reduce) {
        .nav-menu,
        .feature-card,
        .service-card,
        .btn {
            transition: none !important;
            animation: none !important;
        }
        
        .hamburger .bar {
            transition: none !important;
        }
    }
}

/* Ultra-small screens (iPhone SE, etc.) */
@media (max-width: 375px) {
    .container {
        padding: 0 var(--space-3);
    }
    
    .hero-title {
        font-size: var(--text-4xl);
    }
    
    .hero-stats {
        grid-template-columns: 1fr;
        gap: var(--space-2);
    }
    
    .stat {
        padding: var(--space-2);
    }
    
    .navbar {
        padding: var(--space-2) var(--space-3);
    }
    
    .nav-menu {
        width: calc(100% - var(--space-2));
        padding: var(--space-4);
    }
}

/* Large mobile screens */
@media (min-width: 414px) and (max-width: 768px) {
    .hero-stats {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--space-4);
    }
    
    .features-grid {
        gap: var(--space-8);
    }
    
    .contact-form {
        gap: var(--space-6);
    }
}

/* ===== LANDSCAPE ORIENTATION ===== */
@media (orientation: landscape) and (max-height: 600px) {
    .hero {
        min-height: 100vh;
        padding-top: 60px;
    }
    
    .hero-content {
        gap: var(--space-8);
    }
    
    .section {
        padding: var(--space-16) 0;
    }
    
    /* Hamburger menu optimization for landscape */
    .hamburger {
        position: fixed;
        top: 10px;
        right: 10px;
        box-shadow: 0 2px 15px rgba(0, 0, 0, 0.15);
        border: 1px solid var(--primary-color-light);
    }
}

/* ===== DARK MODE SUPPORT ===== */
@media (prefers-color-scheme: dark) {
    /* Future implementation for dark mode */
    /* Can be activated when dark mode toggle is implemented */
}

/* ===== CRITICAL MOBILE CAROUSEL FIX ===== */
/* This must be at the end to override components.css */
@media (max-width: 768px) {
    /* COMPLETE CAROUSEL OVERRIDE: Show all cards as active on mobile */
    .services-carousel .carousel-track {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto !important;
        gap: var(--space-6) !important;
        transform: none !important;
        transition: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Ensure all slides are visible on mobile */
    .services-carousel .carousel-slide {
        display: block !important;
        position: static !important;
        transform: none !important;
        opacity: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: var(--space-4) !important;
    }
    
    /* Fix carousel container and wrapper on mobile */
    .services-carousel .carousel-container,
    .services-carousel .carousel-wrapper {
        overflow: visible !important;
        height: auto !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Ensure services carousel section has proper mobile spacing */
    .services .carousel-container {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Mobile pricing card specific improvements */
    .services-carousel .service-card {
        min-height: 650px !important; /* Even more height for content */
        max-height: none !important;
        height: auto !important;
        padding: var(--space-6) var(--space-4) !important;
        box-sizing: border-box !important;
    }
    
    /* Ensure pricing section has adequate space */
    .services-carousel .service-card .pricing {
        margin: var(--space-4) 0 !important;
        padding: var(--space-3) 0 !important;
    }
    
    /* Features section spacing */
    .services-carousel .service-card .features-section h4 {
        margin-top: var(--space-4) !important;
        margin-bottom: var(--space-3) !important;
        font-size: var(--text-base) !important;
    }
    
    /* CTA section at bottom */
    .services-carousel .service-card .cta-section {
        margin-top: var(--space-5) !important;
        padding-top: var(--space-4) !important;
        border-top: 1px solid rgba(15, 23, 42, 0.1) !important;
    }
    
    /* Plan header spacing */
    .services-carousel .service-card .plan-header {
        margin-bottom: var(--space-4) !important;
    }
    
    /* Billing info spacing */
    .services-carousel .service-card .billing-info {
        margin: var(--space-3) 0 !important;
        padding: var(--space-2) 0 !important;
    }
    
    /* HIGHEST SPECIFICITY: Override all carousel slide disabled styling on mobile */
    .services .services-carousel .carousel-container .carousel-wrapper .carousel-track .carousel-slide .service-card,
    .services .services-carousel .carousel-container .carousel-wrapper .carousel-track .carousel-slide.active .service-card,
    .services-carousel .carousel-slide .service-card,
    .services-carousel .carousel-slide.active .service-card,
    .carousel-slide .service-card,
    .carousel-slide.active .service-card {
        transform: scale(1) !important;
        opacity: 1 !important;
        box-shadow: 0 8px 32px rgba(59, 130, 246, 0.12) !important;
        animation: none !important;
        position: relative !important;
        transition: all var(--transition-normal) !important;
        background: rgba(255, 255, 255, 0.98) !important;
        border: 2px solid rgba(59, 130, 246, 0.15) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        min-height: 600px !important; /* Increased height for mobile */
        height: auto !important;
        overflow: visible !important;
        padding: var(--space-6) !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }
    
    /* Ensure content sections have proper spacing on mobile */
    .services-carousel .service-card .features-section,
    .services-carousel .service-card .cta-section {
        margin-top: auto !important;
        padding-top: var(--space-4) !important;
    }
    
    /* Make feature list more compact but readable on mobile */
    .services-carousel .service-card .feature-list {
        margin: var(--space-3) 0 !important;
        padding: 0 !important;
    }
    
    .services-carousel .service-card .feature-list li {
        margin-bottom: var(--space-2) !important;
        font-size: var(--text-sm) !important;
        line-height: 1.4 !important;
    }
    
    /* Hide all carousel navigation on mobile */
    .services-carousel .carousel-nav,
    .services-carousel .carousel-dots,
    .carousel-nav,
    .carousel-dots {
        display: none !important;
    }
    
    /* Ensure hover states work properly */
    .services .services-carousel .carousel-slide .service-card:hover,
    .services-carousel .carousel-slide .service-card:hover,
    .carousel-slide .service-card:hover {
        transform: translateY(-4px) scale(1) !important;
        box-shadow: 0 16px 40px rgba(59, 130, 246, 0.2) !important;
        border-color: rgba(59, 130, 246, 0.25) !important;
    }
    
    /* Featured card styling */
    .services .services-carousel .carousel-slide .service-card.featured,
    .services-carousel .carousel-slide .service-card.featured,
    .carousel-slide .service-card.featured {
        background: rgba(255, 255, 255, 1) !important;
        border: 2px solid rgba(59, 130, 246, 0.3) !important;
        box-shadow: 0 12px 40px rgba(59, 130, 246, 0.15) !important;
    }
    
    /* ===== MOBILE BUTTON STYLING FIXES ===== */
    /* Center buttons on mobile and match navbar Get Started styling */
    .hero-actions {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        margin-top: var(--space-6) !important;
    }
    
    .hero-actions .btn,
    .contact-form .btn {
        width: 100% !important;
        max-width: 300px !important;
        margin: 0 auto !important;
        text-align: center !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: var(--space-2) !important;
    }
    
    /* Enhanced Mobile Button Styling - Match navbar Get Started */
    .hero-actions .btn-primary,
    .contact-form .btn-primary {
        background: var(--primary-color) !important;
        color: var(--white) !important;
        border: 2px solid var(--primary-color) !important;
        padding: var(--space-4) var(--space-6) !important;
        font-weight: 600 !important;
        font-size: var(--text-base) !important;
        border-radius: var(--radius-xl) !important;
        transition: all var(--transition-smooth) !important;
        box-shadow: 0 4px 20px rgba(59, 130, 246, 0.25) !important;
    }
    
    /* Mobile Button Hover States - Black text on hover */
    .hero-actions .btn-primary:hover,
    .contact-form .btn-primary:hover {
        background: var(--white) !important;
        color: var(--gray-900) !important;
        border: 2px solid var(--primary-color) !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 8px 25px rgba(59, 130, 246, 0.3) !important;
        scale: 1.02 !important;
    }
    
    /* Mobile Button Active States */
    .hero-actions .btn-primary:active,
    .contact-form .btn-primary:active {
        transform: translateY(-1px) !important;
        scale: 0.98 !important;
    }
    
    /* Ensure contact form button centering */
    .contact-form {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    
    .contact-form .btn {
        margin-top: var(--space-4) !important;
    }
    
    /* ===== MOBILE FORM FIELD CONSISTENCY ===== */
    /* Ensure ALL form fields have consistent sizing on mobile */
    .contact-form input,
    .contact-form input[type="text"],
    .contact-form input[type="email"],
    .contact-form input[type="tel"],
    .contact-form select,
    .contact-form textarea {
        width: 100% !important;
        max-width: 100% !important;
        padding: var(--space-4) !important;
        font-size: var(--text-base) !important;
        border-radius: var(--radius-xl) !important;
        border: 2px solid rgba(15, 23, 42, 0.1) !important;
        background: rgba(255, 255, 255, 0.9) !important;
        transition: all var(--transition-normal) !important;
        min-height: var(--touch-target) !important;
        height: var(--touch-target) !important; /* Fixed height for consistency */
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        font-family: inherit !important;
        line-height: 1.5 !important;
    }
    
    /* Special handling for textarea - allow height to expand */
    .contact-form textarea {
        height: auto !important;
        min-height: 120px !important;
        max-height: 200px !important;
        resize: vertical !important;
        padding-top: var(--space-4) !important;
        padding-bottom: var(--space-4) !important;
    }
    
    /* Custom dropdown arrow for select */
    .contact-form select {
        background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e") !important;
        background-repeat: no-repeat !important;
        background-position: right var(--space-4) center !important;
        background-size: 16px !important;
        padding-right: calc(var(--space-4) + 24px) !important;
        cursor: pointer !important;
    }
    
    /* Form group spacing consistency */
    .contact-form .form-group {
        margin-bottom: var(--space-4) !important;
        width: 100% !important;
    }
    
    /* Label consistency */
    .contact-form .form-group label {
        display: block !important;
        margin-bottom: var(--space-2) !important;
        font-weight: 600 !important;
        color: var(--gray-700) !important;
        font-size: var(--text-sm) !important;
    }
    
    /* Focus states - consistent for all fields */
    .contact-form input:focus,
    .contact-form input[type="text"]:focus,
    .contact-form input[type="email"]:focus,
    .contact-form input[type="tel"]:focus,
    .contact-form select:focus,
    .contact-form textarea:focus {
        border-color: var(--brand-secondary) !important;
        box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
        outline: none !important;
        background: rgba(255, 255, 255, 1) !important;
    }
}

/* ===== DESKTOP BUTTON HOVER REMOVAL ===== */
/* Remove hover effects for Get Started and Send Message buttons on desktop */
@media (min-width: 769px) {
    /* Remove hover effects from navbar Get Started button */
    .nav-actions .btn-primary:hover {
        background: var(--primary-color) !important;
        color: var(--white) !important;
        border: 2px solid var(--primary-color) !important;
        transform: none !important;
        box-shadow: 0 4px 20px rgba(59, 130, 246, 0.25) !important;
        scale: 1 !important;
    }
    
    /* Remove hover effects from hero Start Learning button */
    .hero-actions .btn-primary:hover {
        background: var(--primary-color) !important;
        color: var(--white) !important;
        border: 2px solid var(--primary-color) !important;
        transform: none !important;
        box-shadow: 0 4px 20px rgba(59, 130, 246, 0.25) !important;
        scale: 1 !important;
    }
    
    /* Remove hover effects from contact form Send Message button */
    .contact-form .btn-primary:hover {
        background: var(--primary-color) !important;
        color: var(--white) !important;
        border: 2px solid var(--primary-color) !important;
        transform: none !important;
        box-shadow: 0 4px 20px rgba(59, 130, 246, 0.25) !important;
        scale: 1 !important;
    }
    
    /* Ensure no active state transforms either */
    .nav-actions .btn-primary:active,
    .hero-actions .btn-primary:active,
    .contact-form .btn-primary:active {
        transform: none !important;
        scale: 1 !important;
    }
}

/* ===== ENHANCED DESKTOP FOOTER STYLING ===== */
/* Improve footer appearance on desktop only (min-width: 769px) */
@media (min-width: 769px) {
    .footer {
        position: relative;
        background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
        color: var(--white);
        padding: var(--space-12) 0 var(--space-8);
        overflow: hidden;
    }
    
    /* Add subtle pattern overlay */
    .footer::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: 
            radial-gradient(circle at 20% 50%, rgba(59, 130, 246, 0.1) 0%, transparent 50%),
            radial-gradient(circle at 80% 20%, rgba(147, 51, 234, 0.1) 0%, transparent 50%),
            radial-gradient(circle at 40% 80%, rgba(59, 130, 246, 0.05) 0%, transparent 50%);
        pointer-events: none;
    }
    
    /* Enhanced footer content layout */
    .footer-content {
        display: grid;
        grid-template-columns: 2fr 1fr 1fr;
        gap: var(--space-10);
        margin-bottom: var(--space-8);
        position: relative;
        z-index: 1;
    }
    
    /* Enhanced footer sections */
    .footer-section {
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: var(--radius-xl);
        padding: var(--space-6);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
        transition: all var(--transition-smooth);
        position: relative;
        overflow: hidden;
    }
    
    /* Hover effects for footer sections */
    .footer-section:hover {
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(59, 130, 246, 0.3);
        transform: translateY(-2px);
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    }
    
    /* Enhanced logo section */
    .footer-section:first-child {
        background: rgba(59, 130, 246, 0.1);
        border-color: rgba(59, 130, 246, 0.2);
    }
    
    .footer-section:first-child:hover {
        background: rgba(59, 130, 246, 0.15);
        border-color: rgba(59, 130, 246, 0.4);
    }
    
    /* Enhanced section headings */
    .footer-section h3 {
        color: var(--white);
        margin-bottom: var(--space-6);
        font-size: var(--text-xl);
        font-weight: 700;
        position: relative;
        padding-bottom: var(--space-3);
    }
    
    .footer-section h3::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 40px;
        height: 3px;
        background: linear-gradient(90deg, var(--primary-color), var(--primary-light));
        border-radius: 2px;
    }
    
    /* Enhanced footer logo */
    .footer-logo {
        display: flex;
        justify-content: center;
        margin-bottom: var(--space-4);
        padding: var(--space-6);
        background: rgba(255, 255, 255, 0.1);
        border-radius: var(--radius-lg);
        transition: all var(--transition-smooth);
    }
    
    .footer-logo:hover {
        background: rgba(255, 255, 255, 0.15);
        transform: scale(1.05);
    }
    
    .footer-logo-image {
        height: 80px;
        width: auto;
        object-fit: contain;
        filter: brightness(0) invert(1);
        transition: all var(--transition-smooth);
    }
    
    /* Enhanced social links */
    .social-links {
        display: flex;
        gap: var(--space-4);
        justify-content: center;
        margin-top: var(--space-4);
    }
    
    .social-link {
        width: 44px;
        height: 44px;
        background: rgba(255, 255, 255, 0.1);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--gray-300);
        transition: all var(--transition-smooth);
        border: 2px solid rgba(255, 255, 255, 0.2);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        font-size: var(--text-lg);
    }
    
    .social-link:hover {
        background: var(--primary-color);
        color: var(--white);
        transform: translateY(-3px) scale(1.1);
        box-shadow: 0 15px 35px rgba(59, 130, 246, 0.4);
        border-color: var(--primary-light);
    }
    
    /* Enhanced footer links */
    .footer-links {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    
    .footer-links li {
        margin-bottom: var(--space-3);
        transform: translateX(0);
        transition: transform var(--transition-fast);
    }
    
    .footer-links li:hover {
        transform: translateX(8px);
    }
    
    .footer-links a {
        color: var(--gray-300);
        transition: all var(--transition-smooth);
        position: relative;
        font-size: var(--text-base);
        display: block;
        padding: var(--space-2) var(--space-3);
        border-radius: var(--radius-md);
        text-decoration: none;
    }
    
    .footer-links a:hover {
        color: var(--white);
        background: rgba(59, 130, 246, 0.2);
        padding-left: var(--space-4);
    }
    
    .footer-links a::before {
        content: '→';
        position: absolute;
        left: -20px;
        opacity: 0;
        transition: all var(--transition-smooth);
        color: var(--primary-color);
    }
    
    .footer-links a:hover::before {
        left: var(--space-1);
        opacity: 1;
    }
    
    /* Enhanced footer bottom */
    .footer-bottom {
        border-top: 2px solid rgba(255, 255, 255, 0.1);
        padding-top: var(--space-6);
        text-align: center;
        color: var(--gray-400);
        font-size: var(--text-base);
        margin-top: var(--space-6);
        position: relative;
        z-index: 1;
        background: rgba(0, 0, 0, 0.2);
        border-radius: var(--radius-lg);
        padding: var(--space-4) var(--space-6);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }
    
    .footer-bottom p {
        margin: 0;
        font-weight: 500;
        letter-spacing: 0.5px;
    }
}
