@charset "utf-8";

.benefit-section {
  box-sizing: border-box;

  display: flex;
  width: 100%;
  padding: 120px 96px 40px 96px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  gap: 60px;
  background: var(--sys-bg-default, #f3f5f7);
}

.benefit-section .title-text {
  color: var(--ref-base-black, #151818);
  text-align: center;
  /* Display/Medium */
  font-family: Pretendard;
  font-size: var(--ref-font-size-10-fluent, 45px);
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 63px */
}

.benefit-section .benefits {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.benefit-section .benefit-item {
  flex-grow: 1;
  box-sizing: border-box;
  flex-shrink: 0;

  display: flex;
  width: 303px;
  height: 280px;
  padding: 20px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 16px;
  background: var(--sys-bg-alt, #fff);
  /* shadow/basic/sm */
  box-shadow: 0 0 8px 0 rgba(55, 61, 68, 0.08);
}

.benefit-section .benefit-item .benefit-emoji-text {
  color: var(--global-gray-900, #222);
  text-align: center;
  font-family: Pretendard;
  font-size: 54px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 81px */
}

.benefit-section .benefit-item .benefit-name-text {
  color: var(--sys-text-default-900, #373d44);
  text-align: center;
  font-family: Pretendard;
  font-size: var(--ref-font-size-7-fluent, 28px);
  font-style: normal;
  font-weight: 600;
  line-height: 140%; /* 39.2px */
}

.benefit-section .benefit-item .benefit-description-text {
  color: var(--sys-text-lightest-500, #7e8a96);
  text-align: center;
  /* Title/Large */
  font-family: Pretendard;
  font-size: var(--ref-font-size-5-static, 20px);
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 32px */
}

.benefit-section .benefit-table {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow-x: auto;
  white-space: nowrap; /* 중요! 텍스트가 줄바꿈되지 않도록 */
  -webkit-overflow-scrolling: touch; /* iOS 부드러운 스크롤 */
  /* 스크롤바 숨기기 - 크로스 브라우저 */
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE 10+ */
}

.benefit-section .benefit-table::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

.benefit-section .benefit-table img {
  width: 1248px;
  height: auto;
  display: block;
  max-width: none;
}

@media screen and (max-width: 1440px) {
  .benefit-section .benefit-table {
    width: 100%;
    display: flex;
    justify-content: start;
    align-items: flex-start;
    overflow-x: auto;
    white-space: nowrap; /* 중요! 텍스트가 줄바꿈되지 않도록 */
    -webkit-overflow-scrolling: touch; /* iOS 부드러운 스크롤 */
  }
}

@media screen and (max-width: 1023px) {
  .benefit-section {
    box-sizing: border-box;

    display: flex;
    width: 100%;
    padding: 50px 0 40px 0;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    gap: 30px;
    background: var(--sys-bg-default, #f3f5f7);
  }

  .benefit-section .title-text {
    color: var(--ref-base-black, #151818);
    text-align: center;
    /* Headline/Medium */
    font-family: Pretendard;
    font-size: var(--ref-font-size-7-fluent, 28px);
    font-style: normal;
    font-weight: 700;
    line-height: 140%; /* 39.2px */
  }

  .benefit-section .benefits {
    padding: 0 24px 30px 24px;

    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
  }

  .benefit-section .benefit-item {
    flex-grow: 1;
    box-sizing: border-box;
    flex-shrink: 0;

    display: flex;
    width: 312px;
    height: 180px;
    padding: 10px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    align-self: stretch;
  }

  .benefit-section .benefit-item .benefit-emoji-text {
    color: var(--global-gray-900, #222);
    text-align: center;
    font-family: Pretendard;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 54px */
  }

  .benefit-section .benefit-item .benefit-name-text {
    color: var(--sys-text-default-900, #373d44);
    text-align: center;
    font-family: Pretendard;
    font-size: var(--ref-font-size-5-static, 20px);
    font-style: normal;
    font-weight: 600;
    line-height: 160%; /* 32px */
  }

  .benefit-section .benefit-item .benefit-description-text {
    color: var(--sys-text-lightest-500, #7e8a96);
    text-align: center;

    /* Title/Small */
    font-family: Pretendard;
    font-size: var(--ref-font-size-3-static, 16px);
    font-style: normal;
    font-weight: 700;
    line-height: 160%; /* 25.6px */
  }

  .benefit-section .benefit-table img {
    padding: 0 24px;
    width: 942px;
    height: auto;
    display: block;
    max-width: none;
  }
}
