.benefit-section {
            width: 100%;
            padding: 80px 20px;
            max-width: 1300px;
            margin: 0 auto;
        }

        /* 전체 레이아웃 (좌우 2단 그리드: 좌측 텍스트 / 우측 카드 그리드) */
        .benefit-container {
            display: grid;
            grid-template-columns: 360px 1fr;
            gap: 40px;
            align-items: center;
        }

        /* 좌측 타이틀 및 설명 영역 */
        .benefit-left .badge {
            font-size: 13px;
            font-weight: 500;
            color: #4b6bfb;
            margin-bottom: 8px;
            display: block;
        }
        .benefit-left .sub-title {
            font-size: 14px;
            font-weight: 600;
            color: #333;
            margin-bottom: 12px;
            display: block;
        }
        .benefit-left h2 {
            font-size: 34px;
            font-weight: 700;
            color: #111;
            line-height: 1.3;
            margin-bottom: 20px;
            letter-spacing: -0.5px;
        }
        .benefit-left p {
            font-size: 14px;
            color: #666;
            line-height: 1.6;
            margin-bottom: 30px;
        }
        .benefit-btn {
            display: inline-block;
            padding: 12px 24px;
            background-color: #fff;
            color: #111;
            border: 1px solid #ccc;
            text-decoration: none;
            border-radius: 6px;
            font-size: 14px;
            font-weight: 600;
            transition: all 0.2s;
        }
        .benefit-btn:hover { background-color: #f8f9fa; border-color: #111; }

        /* 우측 카드 리스트 영역 (3개 나란히 배치) */
        .benefit-right {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px;
        }

        /* 개별 카드 스타일 */
        .benefit-card {
            background-color: #f4f5f7;
            border-radius: 12px;
            padding: 28px 20px 44px 20px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 380px;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .benefit-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0,0,0,0.06);
        }

        /* 카드 상단 텍스트 영역 */
        .card-top .card-tag {
            font-size: 12px;
            font-weight: 600;
            color: #4b6bfb;
            margin-bottom: 10px;
            display: block;
        }
        .card-top h3 {
            font-size: 20px;
            font-weight: 700;
            color: #111;
            line-height: 1.4;
            margin-bottom: 8px;
            letter-spacing: -0.5px;
        }
        .card-top .card-period {
            font-size: 12px;
            color: #888;
        }

        /* 카드 하단 이미지 영역 */
        .card-image-wrap {
            width: 100%;
            height: 160px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-top: 20px;
        }
        .card-image-wrap img {
            
            border-radius: 20px !important;
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }

        /* 반응형 디자인 (태블릿 및 모바일 최적화) */
        @media (max-width: 1024px) {
            .benefit-container {
                grid-template-columns: 1fr;
                gap: 40px;
            }
            .benefit-right {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        @media (max-width: 768px) {
            .benefit-section {
                padding: 40px 16px;
            }
            .benefit-left h2 {
                font-size: 26px;
            }
            /* 모바일에서는 카드가 가로로 밀리지 않도록 1열 또는 슬라이드 형태로 배치 (여기서는 1열로 알차게 떨어지도록 설정) */
            .benefit-right {
                grid-template-columns: 1fr;
                gap: 16px;
            }
            .benefit-card {
                min-height: auto;
                padding: 24px 20px;
            }
            .card-image-wrap {
                height: 140px;
            }
        }