        /* --- Layout Containers --- */
        .section-container {
            width: 100%;
            max-width: 1480px;
            margin: 0 auto;
            padding: 4rem 1rem;
        }

        .cards-grid {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 3.5rem; /* Equivalent to gap-10 */
            align-items: flex-start;
        }

        /* --- Card Styles --- */
        .process-card {
            background-color: var(--card-bg);
            width: 100%;
            max-width: 320px;
            border-radius: 1rem;
            overflow: hidden;
            position: relative;
            cursor: default;
            border: 1px solid #f1f5f9;
            
            /* Initial Shadow (Greyish) */
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
            
            /* Smooth Transitions */
            transition: transform 0.4s var(--transition-curve), box-shadow 0.4s ease;
            will-change: transform, box-shadow;
        }

        /* Hover Effects */
        .process-card:hover {
            transform: scale(1.1);
            z-index: 10;
            /* Blueish Shadow on Hover */
            box-shadow: 0 20px 25px -5px var(--shadow-hover), 0 8px 10px -6px rgba(59, 130, 246, 0.1);
        }

        /* --- Image Area --- */
        .card-image-wrapper {
            height: 192px; /* 12rem or h-48 */
            position: relative;
            overflow: hidden;
            background-color: #eff6ff;
        }

        .card-image {
            width: 100%;
            height: 100%;
            object-fit: contain;
            opacity: 1;
            transition: transform 0.7s ease;
        }

        .card-overlay {
            position: absolute;
            inset: 0;
            background-color: rgba(30, 58, 138, 0.1); /* blue-900 with opacity */
            transition: background-color 0.3s ease;
        }

        /* Inner Image Zoom on Hover */
        .process-card:hover .card-image {
            transform: scale(1.1);
        }

        .process-card:hover .card-overlay {
            background-color: transparent;
        }

        /* --- Badge (01, 02, 03) --- */
        .card-badge {
            position: absolute;
            top: 170px;
            left: 2rem;
            width: 3rem;
            height: 3rem;
            background-color: var(--primary-blue);
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
            font-size: 1.125rem;
            border: 4px solid white;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            z-index: 2;
        }

        /* --- Card Body --- */
        .card-body {
            padding: 3rem 1.5rem 2rem; /* pt-12 pb-8 px-6 */
        }

        .card-title {
            font-size: 1.25rem;
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 0.75rem;
            transition: color 0.3s ease;
        }

        .process-card:hover .card-title {
            color: var(--primary-blue);
        }

        .card-description {
            font-size: 1.1rem;
            color: var(--text-light);
            text-align: justify;
            margin-bottom: 1.5rem;
            line-height: 1.5;
        }

        /* --- Mobile Responsiveness --- */
        @media (max-width: 768px) {
            .section-container {
                padding: 3rem 1rem;
            }
        }