 *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    font-family: 'Pretendard', sans-serif;
    background: #FAFAFA;
    color: #121212;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
  }

  .section {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto 100px;
    padding: 0 0px;
  }

   /* ── Benefit Section ── */
  .benefit-section {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto 100px;
    padding: 20px 80px;
  }
  .benefit-row { display: flex; align-items: center; }
  .benefit-item {
    flex: 1 1 0;
    padding: 0 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
  .benefit-icon img { width: 80px; height: 80px; object-fit: contain; }
  .benefit-title { text-align: center; color: #121212; font-size: 24px; font-weight: 600; line-height: 36px; margin-bottom: 12px; }
  .benefit-desc { text-align: center; color: #656565; font-size: 16px; font-weight: 400; line-height: 26px; }
  .vdivider { width: 1px; height: 160px; background: #E4E4E4; flex-shrink: 0; }

  /* ── 섹션 헤더 ── */
  .sec-header { display: flex; flex-direction: column; align-items: center; gap: 16px; margin-bottom: 60px; }
  .sec-bar { width: 40px; height: 6px; background: #184ED7; border-radius: 2px; }
  .sec-title { text-align: center; color: #121212; font-size: 32px; font-weight: 600; line-height: 44px; }
  .sec-subtitle { text-align: center; color: #656565; font-size: 20px; font-weight: 400; line-height: 30px; }

  /* ── 특장점 1 (가로 스크롤) ── */
  .feat1-scroll {
    overflow-x: auto;
    padding-bottom: 24px;
    cursor: grab;
    user-select: none;
  }
  .feat1-scroll::-webkit-scrollbar { height: 4px; }
  .feat1-scroll::-webkit-scrollbar-thumb { background: #CECECE; border-radius: 2px; }
  .feat1-row { display: flex; gap: 20px; width: max-content; }

  /* ── 카드 공통 ── */
  .feat-card {
    background: white;
    box-shadow: 0px 2px 20px rgba(0,0,0,0.05);
    overflow: hidden;
    border-radius: 24px;
    outline: 0.5px #CECECE solid;
    display: flex;
    flex-direction: column;
    padding-bottom: 40px;
  }
  .feat-card-400 { width: 400px; flex-shrink: 0; }
  .feat-card-711 { width: 711px; flex-shrink: 0; }
  .feat-img { height: 268px; background: #303030; margin-bottom: 32px; }
  .feat-img img { width: 100%; height: 100%; object-fit: cover; }
  .feat-body { padding: 0 40px; display: flex; flex-direction: column; gap: 8px; }
  .feat-name { color: #121212; font-size: 20px; font-weight: 500; line-height: 30px; }
  .feat-desc { color: #656565; font-size: 16px; font-weight: 400; line-height: 26px; }

  /* ── 특장점 2 ── */
  .feat2-row { display: flex; gap: 20px; }

  /* ── NLU 태그 ── */
  .nlu-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 19px; }
  .nlu-tag { padding: 12px 24px; background: #E3E9F6; border-radius: 40px; color: #184ED7; font-size: 20px; }

  /* ── 하단 CTA ── */
  .bottom-cta-inner {
    background: url('/api/attachments/download/133') center/cover no-repeat;
    border-radius: 24px;
    padding: 60px 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
  .cta-btn {
    padding: 14px 65px;
    background: #121212;
    border-radius: 8px;
    color: white;
    text-decoration: none;
    font-weight: 500;
  }

  /* =========================
   📱 RESPONSIVE (Benefit / Feature)
.content-ctx-Solution_01 ========================= */

@media (max-width: 1024px) {
  .benefit-section {
    padding: 20px 40px;
  }
}

@media (max-width: 768px) {

  /* ===== 공통 ===== */
  .benefit-section {
    padding: 20px 20px;
  }

  /* ===== BENEFIT ===== */
  .benefit-row {
    flex-direction: column;
    gap: 40px;
  }

  .benefit-item {
    padding: 0;
  }

  .vdivider {
    width: 100%;
    height: 1px;
  }

  /* ===== FEATURE 1 (스크롤 카드) ===== */
  .feat1-row {
    gap: 16px;
  }

  .feat-card-400,
  .feat-card-711 {
    width: 280px; /* 🔥 모바일 카드 크기 */
  }

  .feat-img {
    height: 180px;
  }

  .feat-body {
    padding: 0 20px;
  }

  /* ===== FEATURE 2 ===== */
  .feat2-row {
    flex-direction: column;
  }

  .feat2-row .feat-card {
    width: 100%;
  }

  /* ===== NLU TAG ===== */
  .nlu-tag {
    font-size: 14px;
    padding: 8px 16px;
  }

  /* ===== CTA ===== */
  .bottom-cta-inner {
    padding: 40px 20px;
  }

  .cta-btn {
    width: 100%;
    text-align: center;
  }
}