@font-face {
    font-family: 'NanumSquareNeoBold';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.ttf) format("truetype");
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");
}

body,td,table,input,div,form,a,p,span,textarea,center {font-family:'NanumSquareNeo' !important;}
	
    /* 상위 감싸는 전체 영역 */
    .wrapper4 {
      width: 100%;
      background-color: #ffffff;
      padding: 10px 0;
    }

    /* 중앙 정렬 컨테이너 (PC 기준 1300px) */
    .container4 {
      max-width: 1300px;
      margin: 0 auto;
      padding: 0 20px; /* 기본 반응형 여백 */
    }

    /* 헤더 영역 */
    .product-header {
      text-align: center;
      margin-bottom: 20px;
    }

    .product-sub-title {
      font-size: 14px;
      color: #333333;
      margin-bottom: 10px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 600;
	  font-family:'NanumSquareNeo' !important;
    }

    .product-main-title {
      font-size: 38px;
      font-weight: 700;
      color: #111111;
      line-height: 1.2;
	  font-family:'NanumSquareNeo' !important;	  
      letter-spacing: -1px;
    }

    /* 상품 코스 아이템 박스 */
    .course-item {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      padding: 40px 0;
    }

    /* 구분선 (요청하신 #f9f9f9 선) */
    .divider {
      width: 100%;
      height: 1px;
      background-color: #f1f1f1;
    }

    /* 왼쪽 제품 내용 영역 */
    .course-content {
      flex: 1;
    }

    .course-title {
      font-size: 22px;
      font-weight: 700;
      color: #111111;
      margin-bottom: 20px;
      letter-spacing: 0.5px;
    }

    .course-list {
      list-style: none;
    }

    .course-list li {
      font-size: 15px;
      color: #444444;
      line-height: 1.8;
      position: relative;
      padding-left: 12px;
    }

    .course-list li::before {
      content: "-";
      position: absolute;
      left: 0;
      color: #444444;
    }

    /* 오른쪽 하단 금액 영역 */
    .price-box {
      text-align: right;
      padding-left: 20px;
    }

    .price-original {
      font-size: 15px;
      color: #111111;
      text-decoration: line-through; /* 취소선(중앙 실선) */
      margin-bottom: 4px;
    }

    .price-event {
      font-size: 18px;
      font-weight: 700;
      color: #111111;
      line-height: 1.4;
      margin-bottom: 4px;
    }

    .price-label {
      font-size: 15px;
      color: #111111;
      margin-bottom: 4px;
    }

    /* 스크롤 애니메이션 관련 스타일 */
    .fade-up {
      opacity: 0;
      transform: translateY(30px);
      transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    }

    .fade-up.visible {
      opacity: 1;
      transform: translateY(0);
    }

    /* 태블릿 및 모바일 반응형 (768px 이하) */
    @media (max-width: 768px) {
      .wrapper4 {
        padding: 20px 0;
      }

      .container4 {
        padding: 0 20px; /* 모바일/태블릿 좌우 여백 10px */
      }

      .product-sub-title {
        font-size: 12px;
      }

      .product-main-title {
        font-size: 26px;
      }

      .course-item {
        flex-direction: column;
        align-items: flex-start;
        padding: 30px 0;
      }

      .price-box {
        text-align: left;
        margin-top: 25px;
        padding-left: 0;
        width: 100%;
      }

      .course-title {
        font-size: 18px;
        margin-bottom: 15px;
      }

      .course-list li {
        font-size: 14px;
        line-height: 1.7;
      }

      .price-original, 
      .price-label {
        font-size: 14px;
      }

      .price-event {
        font-size: 15px;
      }}