/* section */
/* ============================================================
           Case Detail Page Styles
           ============================================================ */

        /* Navigation */
        .cxj-nav {
            background-color: #fff;
            border-bottom: 1px solid var(--cxj-border);
            position: sticky;
            top: 0;
            z-index: 50;
            box-shadow: var(--shadow-xs);
        }
        .cxj-nav-inner {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 var(--space-6);
            height: 72px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
        .cxj-logo {
            display: flex;
            align-items: center;
            gap: var(--space-3);
        }
        .cxj-logo-mark {
            width: 42px;
            height: 42px;
            background: linear-gradient(135deg, var(--cxj-primary), var(--color-primary-500));
            border-radius: var(--radius-lg);
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-weight: 800;
            font-size: var(--text-sm);
            letter-spacing: -0.02em;
            box-shadow: 0 4px 12px -2px rgb(10 77 162 / 0.30);
        }
        .cxj-logo-text {
            display: flex;
            flex-direction: column;
            line-height: 1.2;
        }
        .cxj-logo-text span:first-child {
            font-weight: 800;
            font-size: var(--text-lg);
            color: var(--cxj-foreground);
            letter-spacing: -0.01em;
        }
        .cxj-logo-text span:last-child {
            font-size: var(--text-xs);
            color: var(--cxj-muted-foreground);
        }
        .cxj-nav-links {
            display: flex;
            align-items: center;
            gap: var(--space-1);
        }
        .cxj-nav-link {
            padding: var(--space-2) var(--space-4);
            font-size: var(--text-sm);
            font-weight: 500;
            color: var(--cxj-muted-foreground);
            border-radius: var(--radius-md);
            transition: all var(--transition-fast);
        }
        .cxj-nav-link:hover {
            color: var(--cxj-primary);
            background-color: var(--color-primary-50);
        }
        .cxj-nav-link.active {
            color: var(--cxj-primary);
            background-color: var(--color-primary-50);
            font-weight: 600;
        }
        .cxj-nav-cta {
            display: flex;
            align-items: center;
            gap: var(--space-3);
        }
        .cxj-mobile-toggle {
            display: none;
            padding: var(--space-2);
            border-radius: var(--radius-md);
            color: var(--cxj-muted-foreground);
            background: none;
            border: none;
            cursor: pointer;
        }
        .cxj-mobile-menu {
            display: none;
            border-top: 1px solid var(--cxj-border);
            background: #fff;
            padding: var(--space-4) var(--space-6);
        }
        .cxj-mobile-menu a {
            display: block;
            padding: var(--space-3) var(--space-4);
            font-size: var(--text-sm);
            font-weight: 500;
            color: var(--cxj-muted-foreground);
            border-radius: var(--radius-md);
            margin-bottom: var(--space-1);
        }
        .cxj-mobile-menu a.active {
            color: var(--cxj-primary);
            background-color: var(--color-primary-50);
        }
        @media (max-width: 1024px) {
            .cxj-nav-links, .cxj-nav-cta .btn {
                display: none;
            }
            .cxj-mobile-toggle {
                display: block;
            }
        }

        /* Case Hero Banner */
        .cxj-case-hero {
            background: linear-gradient(135deg, var(--color-primary-950) 0%, var(--color-primary-800) 50%, var(--color-primary-900) 100%);
            color: #fff;
            padding: var(--space-24) 0 var(--space-16);
            position: relative;
            overflow: hidden;
        }
        .cxj-case-hero::before {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0; bottom: 0;
            background-image: url('../../assets/bg/bg-pattern-tech.webp');
            background-size: cover;
            background-position: center;
            opacity: 0.1;
        }
        .cxj-case-hero::after {
            content: '';
            position: absolute;
            bottom: -40%;
            left: -5%;
            width: 500px;
            height: 500px;
            background: radial-gradient(circle, rgba(230, 0, 18, 0.10) 0%, transparent 70%);
            border-radius: 50%;
        }
        .cxj-case-hero > * {
            position: relative;
            z-index: 1;
        }

        .cxj-case-hero-content {
            position: relative;
            z-index: 1;
        }
        .cxj-case-hero-top {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: var(--space-8);
        }
        .cxj-breadcrumb {
            display: inline-flex;
            align-items: center;
            gap: var(--space-2);
            font-size: var(--text-sm);
            color: rgba(255,255,255,0.7);
        }
        .cxj-breadcrumb a {
            color: rgba(255,255,255,0.7);
        }
        .cxj-breadcrumb a:hover {
            color: #fff;
        }
        .cxj-breadcrumb .separator {
            opacity: 0.5;
        }
        .cxj-breadcrumb .current {
            color: #fff;
            font-weight: 500;
        }
        .cxj-back-btn {
            display: inline-flex;
            align-items: center;
            gap: var(--space-2);
            padding: var(--space-2) var(--space-4);
            font-size: var(--text-sm);
            font-weight: 500;
            color: rgba(255,255,255,0.8);
            background: rgba(255,255,255,0.1);
            border-radius: var(--radius-md);
            transition: all var(--transition-fast);
        }
        .cxj-back-btn:hover {
            color: #fff;
            background: rgba(255,255,255,0.2);
        }
        .cxj-case-hero-badge {
            display: inline-flex;
            align-items: center;
            padding: var(--space-1) var(--space-4);
            background: linear-gradient(135deg, var(--cxj-accent), var(--color-accent-500));
            color: #fff;
            font-size: var(--text-sm);
            font-weight: 600;
            border-radius: var(--radius-full);
            margin-bottom: var(--space-5);
            box-shadow: 0 4px 12px -2px rgb(230 0 18 / 0.30);
        }
        .cxj-case-hero h1 {
            color: #fff;
            font-size: var(--text-5xl);
            font-weight: 800;
            letter-spacing: -0.02em;
            line-height: 1.2;
            margin-bottom: var(--space-8);
            max-width: 900px;
        }
        .cxj-case-meta {
            display: flex;
            flex-wrap: wrap;
            gap: var(--space-8);
        }
        .cxj-case-meta-item {
            display: flex;
            flex-direction: column;
            gap: var(--space-1);
        }
        .cxj-case-meta-label {
            font-size: var(--text-sm);
            color: rgba(255,255,255,0.6);
        }
        .cxj-case-meta-value {
            font-size: var(--text-base);
            font-weight: 600;
            color: #fff;
        }

        /* Case Overview Section */
        .cxj-case-overview {
            padding: var(--space-24) 0;
            background-color: var(--cxj-background);
        }
        .cxj-overview-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: var(--space-12);
            align-items: center;
        }
        .cxj-overview-image {
            position: relative;
            border-radius: var(--radius-2xl);
            overflow: hidden;
            aspect-ratio: 4/3;
            background: linear-gradient(135deg, var(--color-primary-700) 0%, var(--color-primary-900) 100%);
            box-shadow: var(--shadow-2xl);
        }
        .cxj-overview-image-bg {
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
        }
        .cxj-overview-image-bg::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.1) 0%, transparent 50%);
        }
        .cxj-overview-image-bg.has-photo::before {
            display: none;
        }
        .cxj-overview-photo {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            position: relative;
            z-index: 1;
        }
        .cxj-store-illustration {
            width: 70%;
            height: 70%;
            position: relative;
            z-index: 1;
        }
        .cxj-overview-content .eyebrow {
            display: inline-block;
            font-size: var(--text-sm);
            font-weight: 500;
            color: var(--cxj-primary);
            margin-bottom: var(--space-3);
            letter-spacing: 0.08em;
            text-transform: uppercase;
            position: relative;
            padding-left: var(--space-6);
        }
        .cxj-overview-content .eyebrow::before {
            content: '';
            position: absolute;
            left: 0;
            top: 50%;
            width: var(--space-4);
            height: 2px;
            background-color: var(--color-primary-400);
        }
        .cxj-overview-content h2 {
            font-size: var(--text-4xl);
            font-weight: 800;
            letter-spacing: -0.02em;
            margin-bottom: var(--space-5);
            color: var(--cxj-foreground);
        }
        .cxj-overview-desc {
            font-size: var(--text-lg);
            color: var(--cxj-muted-foreground);
            line-height: 1.8;
            margin-bottom: var(--space-8);
        }
        .cxj-overview-stats {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: var(--space-6);
        }
        .cxj-stat-card {
            padding: var(--space-6);
            background: #fff;
            border: 1px solid var(--cxj-border);
            border-radius: var(--radius-xl);
            transition: all var(--transition-base);
            position: relative;
            overflow: hidden;
        }
        .cxj-stat-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, var(--cxj-primary), var(--color-primary-400));
            opacity: 0;
            transition: opacity var(--transition-base);
        }
        .cxj-stat-card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-xl);
            border-color: var(--color-primary-200);
        }
        .cxj-stat-card:hover::before {
            opacity: 1;
        }
        .cxj-stat-number {
            font-size: var(--text-4xl);
            font-weight: 800;
            color: var(--cxj-primary);
            letter-spacing: -0.02em;
            line-height: 1;
            margin-bottom: var(--space-2);
        }
        .cxj-stat-number .unit {
            font-size: var(--text-xl);
            font-weight: 600;
        }
        .cxj-stat-label {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
            font-weight: 500;
        }

        /* Case Detail Sections */
        .cxj-case-detail {
            padding: var(--space-24) 0;
            background-color: #fff;
        }
        .cxj-detail-section {
            max-width: 1280px;
            margin: 0 auto var(--space-16);
        }
        .cxj-detail-section:last-child {
            margin-bottom: 0;
        }
        .cxj-detail-heading {
            display: flex;
            align-items: center;
            gap: var(--space-4);
            margin-bottom: var(--space-8);
        }
        .cxj-detail-heading h3 {
            font-size: var(--text-2xl);
            font-weight: 800;
            letter-spacing: -0.01em;
            color: var(--cxj-foreground);
        }
        .cxj-detail-heading .line {
            flex: 1;
            height: 2px;
            background: linear-gradient(90deg, var(--cxj-primary), transparent);
            max-width: 100px;
        }
        .cxj-detail-text {
            font-size: var(--text-base);
            color: var(--color-gray-600);
            line-height: 1.9;
            margin-bottom: var(--space-4);
        }
        .cxj-detail-text:last-child {
            margin-bottom: 0;
        }

        /* Solution Cards */
        .cxj-solution-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: var(--space-6);
        }
        .cxj-solution-card {
            padding: var(--space-8);
            background: #fff;
            border: 1px solid var(--cxj-border);
            border-radius: var(--radius-xl);
            transition: all var(--transition-base);
            position: relative;
            overflow: hidden;
        }
        .cxj-solution-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, var(--cxj-primary), var(--color-primary-400));
            opacity: 0;
            transition: opacity var(--transition-base);
        }
        .cxj-solution-card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-xl);
            border-color: var(--color-primary-200);
        }
        .cxj-solution-card:hover::before {
            opacity: 1;
        }
        .cxj-solution-icon {
            width: 56px;
            height: 56px;
            background: linear-gradient(135deg, var(--color-primary-50), var(--color-primary-100));
            border-radius: var(--radius-lg);
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: var(--space-4);
            color: var(--cxj-primary);
        }
        .cxj-solution-card h4 {
            font-size: var(--text-lg);
            font-weight: 700;
            margin-bottom: var(--space-3);
            color: var(--cxj-foreground);
            letter-spacing: -0.01em;
        }
        .cxj-solution-card p {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
            line-height: 1.7;
        }

        /* Timeline */
        .cxj-timeline {
            position: relative;
            padding-left: var(--space-8);
        }
        .cxj-timeline::before {
            content: '';
            position: absolute;
            left: 11px;
            top: 8px;
            bottom: 8px;
            width: 2px;
            background: linear-gradient(180deg, var(--cxj-primary), var(--color-primary-300));
        }
        .cxj-timeline-item {
            position: relative;
            padding-bottom: var(--space-8);
        }
        .cxj-timeline-item:last-child {
            padding-bottom: 0;
        }
        .cxj-timeline-dot {
            position: absolute;
            left: calc(-1 * var(--space-8));
            top: 4px;
            width: 24px;
            height: 24px;
            background: #fff;
            border: 3px solid var(--cxj-primary);
            border-radius: 50%;
            z-index: 1;
        }
        .cxj-timeline-item:first-child .cxj-timeline-dot {
            background: var(--cxj-primary);
        }
        .cxj-timeline-period {
            font-size: var(--text-sm);
            font-weight: 700;
            color: var(--cxj-primary);
            margin-bottom: var(--space-2);
        }
        .cxj-timeline-title {
            font-size: var(--text-lg);
            font-weight: 600;
            color: var(--cxj-foreground);
            margin-bottom: var(--space-2);
        }
        .cxj-timeline-desc {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
            line-height: 1.7;
        }

        /* Results Grid */
        .cxj-results-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: var(--space-6);
        }
        .cxj-result-card {
            padding: var(--space-8);
            background: linear-gradient(135deg, var(--color-primary-50) 0%, #fff 100%);
            border: 1px solid var(--color-primary-100);
            border-radius: var(--radius-xl);
            transition: all var(--transition-base);
            position: relative;
            overflow: hidden;
        }
        .cxj-result-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, var(--cxj-primary), var(--color-accent-500));
        }
        .cxj-result-card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-xl);
        }
        .cxj-result-icon {
            width: 48px;
            height: 48px;
            background: linear-gradient(135deg, var(--cxj-primary), var(--color-primary-500));
            border-radius: var(--radius-lg);
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: var(--space-4);
            color: #fff;
            box-shadow: 0 4px 12px -2px rgb(10 77 162 / 0.30);
        }
        .cxj-result-card h4 {
            font-size: var(--text-xl);
            font-weight: 700;
            margin-bottom: var(--space-3);
            color: var(--cxj-foreground);
            letter-spacing: -0.01em;
        }
        .cxj-result-card p {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
            line-height: 1.7;
        }

        /* Testimonial */
        .cxj-testimonial {
            background: linear-gradient(135deg, var(--color-primary-50) 0%, #fff 100%);
            border-radius: var(--radius-2xl);
            padding: var(--space-12);
            position: relative;
            overflow: hidden;
        }
        .cxj-testimonial::before {
            content: '"';
            position: absolute;
            top: -20px;
            left: var(--space-8);
            font-size: 120px;
            font-family: Georgia, serif;
            color: var(--color-primary-200);
            line-height: 1;
            opacity: 0.5;
        }
        .cxj-testimonial-quote {
            position: relative;
            z-index: 1;
            font-size: var(--text-xl);
            line-height: 1.8;
            color: var(--color-gray-700);
            font-weight: 500;
            margin-bottom: var(--space-8);
            padding-left: var(--space-4);
            border-left: 4px solid var(--cxj-primary);
        }
        .cxj-testimonial-author {
            display: flex;
            align-items: center;
            gap: var(--space-4);
        }
        .cxj-testimonial-avatar {
            width: 56px;
            height: 56px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--cxj-primary), var(--color-primary-500));
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-weight: 700;
            font-size: var(--text-lg);
        }
        .cxj-testimonial-info h5 {
            font-size: var(--text-base);
            font-weight: 700;
            color: var(--cxj-foreground);
            margin-bottom: var(--space-1);
        }
        .cxj-testimonial-info p {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
        }

        /* Related Cases */
        .cxj-related-cases {
            padding: var(--space-24) 0;
            background-color: var(--cxj-background);
        }
        .cxj-related-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: var(--space-12);
        }
        .cxj-related-header h2 {
            font-size: var(--text-3xl);
            font-weight: 800;
            letter-spacing: -0.02em;
            color: var(--cxj-foreground);
        }
        .cxj-view-all {
            display: inline-flex;
            align-items: center;
            gap: var(--space-2);
            font-size: var(--text-sm);
            font-weight: 500;
            color: var(--cxj-primary);
            transition: gap var(--transition-fast);
        }
        .cxj-view-all:hover {
            gap: var(--space-3);
        }
        .cxj-cases-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: var(--space-6);
        }
        .cxj-case-card {
            background: #fff;
            border: 1px solid var(--cxj-border);
            border-radius: var(--radius-xl);
            overflow: hidden;
            transition: all var(--transition-base);
            position: relative;
            display: flex;
            flex-direction: column;
        }
        .cxj-case-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, var(--cxj-primary), var(--color-primary-400));
            opacity: 0;
            transition: opacity var(--transition-base);
            z-index: 2;
        }
        .cxj-case-card:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-xl);
            border-color: var(--color-primary-200);
        }
        .cxj-case-card:hover::before {
            opacity: 1;
        }
        .cxj-case-card:hover .cxj-case-image-bg {
            transform: scale(1.05);
        }
        .cxj-case-image {
            position: relative;
            height: 200px;
            overflow: hidden;
        }
        .cxj-case-image-bg {
            width: 100%;
            height: 100%;
            transition: transform var(--transition-slow);
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .cxj-case-image-photo {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            transition: transform var(--transition-slow);
        }
        .cxj-case-card:hover .cxj-case-image-photo {
            transform: scale(1.05);
        }
        .cxj-case-image-icon {
            width: 72px;
            height: 72px;
            background: rgba(255,255,255,0.2);
            border-radius: var(--radius-xl);
            display: flex;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(10px);
            color: #fff;
            font-size: 32px;
        }
        .cxj-case-badge {
            position: absolute;
            top: var(--space-4);
            left: var(--space-4);
            padding: var(--space-1) var(--space-3);
            font-size: var(--text-xs);
            font-weight: 600;
            color: #fff;
            border-radius: var(--radius-full);
            z-index: 1;
        }
        .cxj-case-body {
            padding: var(--space-6);
            flex: 1;
            display: flex;
            flex-direction: column;
        }
        .cxj-case-title {
            font-size: var(--text-lg);
            font-weight: 700;
            color: var(--cxj-foreground);
            margin-bottom: var(--space-3);
            letter-spacing: -0.01em;
            line-height: 1.4;
        }
        .cxj-case-desc {
            font-size: var(--text-sm);
            color: var(--cxj-muted-foreground);
            line-height: 1.7;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            margin-bottom: var(--space-5);
            flex: 1;
        }
        .cxj-case-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-top: var(--space-4);
            border-top: 1px solid var(--cxj-border);
        }
        .cxj-case-client {
            font-size: var(--text-sm);
            font-weight: 600;
            color: var(--color-gray-600);
        }
        .cxj-case-link {
            font-size: var(--text-sm);
            font-weight: 500;
            color: var(--cxj-primary);
            display: flex;
            align-items: center;
            gap: var(--space-1);
            transition: gap var(--transition-fast);
        }
        .cxj-case-link:hover {
            gap: var(--space-2);
        }

        /* Gradient variations for case images */
        .grad-book { background: linear-gradient(135deg, #0A4DA2 0%, #2563eb 100%); }
        .grad-phone { background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%); }
        .grad-traffic { background: linear-gradient(135deg, #059669 0%, #10b981 100%); }
        .grad-retail { background: linear-gradient(135deg, #dc2626 0%, #ef4444 100%); }

        /* CTA Section */
        .cxj-cta-section {
            background: linear-gradient(135deg, var(--color-primary-900) 0%, var(--color-primary-700) 100%);
            padding: var(--space-20) 0;
            position: relative;
            overflow: hidden;
        }
        .cxj-cta-section::before {
            content: '';
            position: absolute;
            top: -100%;
            right: -20%;
            width: 800px;
            height: 800px;
            background: radial-gradient(circle, rgba(59, 130, 246, 0.2) 0%, transparent 60%);
            border-radius: 50%;
        }
        .cxj-cta-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            position: relative;
            z-index: 1;
        }
        .cxj-cta-text h2 {
            color: #fff;
            font-size: var(--text-4xl);
            font-weight: 800;
            letter-spacing: -0.02em;
            margin-bottom: var(--space-3);
        }
        .cxj-cta-text p {
            color: rgba(255,255,255,0.75);
            font-size: var(--text-lg);
            max-width: 500px;
        }

        /* Footer */
        .cxj-footer {
            background-color: var(--color-gray-900);
            color: #fff;
            padding: var(--space-20) 0 var(--space-8);
        }
        .cxj-footer-grid {
            display: grid;
            grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
            gap: var(--space-12);
            margin-bottom: var(--space-12);
        }
        .cxj-footer-brand p {
            color: var(--color-gray-400);
            font-size: var(--text-sm);
            line-height: 1.7;
            margin: var(--space-5) 0;
        }
        .cxj-footer-social {
            display: flex;
            gap: var(--space-3);
        }
        .cxj-footer-social a {
            width: 36px;
            height: 36px;
            background: rgba(255,255,255,0.1);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color-gray-400);
            transition: all var(--transition-fast);
            font-size: var(--text-sm);
        }
        .cxj-footer-social a:hover {
            background: var(--cxj-primary);
            color: #fff;
        }
        .cxj-footer-col h4 {
            color: #fff;
            font-size: var(--text-base);
            font-weight: 600;
            margin-bottom: var(--space-5);
        }
        .cxj-footer-col ul {
            list-style: none;
            padding: 0;
            margin: 0;
        }
        .cxj-footer-col li {
            margin-bottom: var(--space-3);
        }
        .cxj-footer-col a {
            color: var(--color-gray-400);
            font-size: var(--text-sm);
            transition: color var(--transition-fast);
        }
        .cxj-footer-col a:hover {
            color: #fff;
        }
        .cxj-footer-contact li {
            display: flex;
            align-items: flex-start;
            gap: var(--space-3);
            color: var(--color-gray-400);
            font-size: var(--text-sm);
        }
        .cxj-footer-contact li span:first-child {
            color: var(--color-primary-400);
            flex-shrink: 0;
            width: 18px;
            text-align: center;
        }
        .cxj-footer-bottom {
            border-top: 1px solid rgba(255,255,255,0.1);
            padding-top: var(--space-8);
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: var(--space-4);
        }
        .cxj-footer-bottom p {
            color: var(--color-gray-500);
            font-size: var(--text-sm);
        }
        .cxj-footer-links {
            display: flex;
            gap: var(--space-6);
        }
        .cxj-footer-links a {
            color: var(--color-gray-500);
            font-size: var(--text-sm);
            transition: color var(--transition-fast);
        }
        .cxj-footer-links a:hover {
            color: #fff;
        }

        /* Responsive */
        @media (max-width: 1024px) {
            .cxj-overview-grid {
                grid-template-columns: 1fr;
                gap: var(--space-8);
            }
            .cxj-case-hero h1 {
                font-size: var(--text-4xl);
            }
            .cxj-results-grid,
            .cxj-solution-grid {
                grid-template-columns: 1fr;
            }
            .cxj-cases-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            .cxj-footer-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            .cxj-cta-inner {
                flex-direction: column;
                text-align: center;
                gap: var(--space-8);
            }
            .cxj-cta-text p {
                margin: 0 auto;
            }
        }
        @media (max-width: 640px) {
            .cxj-case-hero h1 {
                font-size: var(--text-3xl);
            }
            .cxj-case-meta {
                gap: var(--space-6);
            }
            .cxj-overview-stats {
                grid-template-columns: 1fr;
            }
            .cxj-cases-grid {
                grid-template-columns: 1fr;
            }
            .cxj-footer-grid {
                grid-template-columns: 1fr;
                gap: var(--space-8);
            }
            .cxj-testimonial {
                padding: var(--space-8) var(--space-6);
            }
            .cxj-testimonial-quote {
                font-size: var(--text-lg);
            }
            .cxj-cta-text h2 {
                font-size: var(--text-3xl);
            }
        }

        /* Stagger entrance animation for hero */
        .hero-stagger > * {
            opacity: 0;
            animation: fadeInUp 0.6s var(--ease-out-quart) forwards;
        }
        .hero-stagger > *:nth-child(1) { animation-delay: 0.1s; }
        .hero-stagger > *:nth-child(2) { animation-delay: 0.15s; }
        .hero-stagger > *:nth-child(3) { animation-delay: 0.2s; }
        .hero-stagger > *:nth-child(4) { animation-delay: 0.25s; }
        .hero-stagger > *:nth-child(5) { animation-delay: 0.3s; }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(24px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @media (prefers-reduced-motion: reduce) {
            .hero-stagger > * {
                opacity: 1;
                animation: none;
            }
        }
