@charset "UTF-8";
/* 상단 메인 섹션 */
 .top-section {
   display: flex;
   align-items: flex-start;
   width: 100%;
   padding-bottom: 64px;
   position: relative;
}
/* 썸네일 영역 */
 .product-thumbnail {
   display: flex;
   flex-direction: column;
   gap: 8px;
   align-items: flex-start;
   width: 480px;
   position: relative;
}
 .current-img {
   position: relative;
   border-radius: 8px;
   width: 100%;
}
 .current-img-inner {
   display: flex;
   flex-direction: column;
   gap: 8px;
   align-items: flex-start;
   overflow: hidden;
   border-radius: inherit;
   width: 100%;
   position: relative;
}
 .aspect-ratio-spacer {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   overflow: hidden;
   width: 100%;
   position: relative;
}
 .aspect-ratio-inner {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   position: relative;
}
 .main-product-img {
   position: relative;
   width: 100%;
   height: 100%;
}
 .main-product-img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   box-sizing: border-box;
}
 .img-border {
   position: absolute;
   border: 1px solid rgba(0, 0, 0, 0.08);
   inset: 0;
   pointer-events: none;
   border-radius: 8px;
}
/* 썸네일 아이템들 */
 .thumbnail-items {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
   align-items: flex-start;
   width: 100%;
   justify-content: flex-start;
}
 .thumb-item {
   flex: 0 1 auto;
   background: rgba(255, 255, 255, 0.01);
   display: flex;
   flex-direction: column;
   gap: 8px;
   align-items: flex-start;
   min-width: 64px;
   overflow: hidden;
   border-radius: 8px;
   position: relative;
}
 .thumb-item.selected {
   box-shadow: 0 0 0 2px inset rgba(0, 0, 0, 0.8);
}
 .thumb-item:not(.selected) {
   box-shadow: 0 0 0 1px inset rgba(0, 0, 0, 0.08);
}
 .thumb-img {
   position: relative;
   width: 73.611px;
   height: 73.611px;
}
 .thumb-img {
   width: 100%;
   height: 100%;
   box-sizing: border-box;
}
 .thumb-img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   aspect-ratio: 1;
   box-sizing: border-box;
}
/* 상품 정보 영역 */
 .product-info {
   flex: 1;
   min-width: 0;
   position: relative;
}
 .product-info-inner {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   width: 100%;
   height: 100%;
}
 .product-info-content {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   padding-left: 56px;
   width: 100%;
}
/* 카테고리 */
 .category {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   padding-bottom: 12px;
}
 .category-text {
   flex: 1;
   font-weight: 400;
   font-size: 13px;
   color: #2b2c33;
   min-width: 0;
}
/* 상품명 */
 .item-name {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
}
 .item-name-text {
   flex: 1;
   font-weight: 700;
   font-size: 26px;
   color: #1a1a1a;
   letter-spacing: -0.28px;
   line-height: 1.1;
   min-width: 0;
}
/* 설명 */
 .description {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   padding-top: 6px;
}
 .description-text {
   flex: 1;
   font-weight: 400;
   font-size: 15px;
   color: #878787;
   min-width: 0;
}
/* 리뷰 섹션 */
 .review-section {
   display: flex;
   gap: 8px;
   align-items: center;
   width: 100%;
   padding: 16px 0 24px;
   position: relative;
}
 .review-left {
   display: flex;
   gap: 3px;
   align-items: center;
   flex: 1;
   min-width: 0;
}
 .stars {
   display: flex;
   align-items: center;
}
 .star-icon {
   width: 15px;
   height: 15px;
}
 .star-filled {
   fill: #ff4d4d;
}
 .star-empty {
   fill: #dfdfdf;
}
 .rating-text {
   font-weight: 500;
   font-size: 13px;
   color: #3a3a3a;
   white-space: nowrap;
}
 .review-link {
   font-weight: 400;
   font-size: 13px;
   color: #3a3a3a;
   text-decoration: underline;
   letter-spacing: -0.4px;
   white-space: nowrap;
}
 .share-section {
   position: absolute;
   right: 0;
   top: 7px;
   display: flex;
   gap: 8px;
   align-items: flex-start;
}
 .share-btn {
   background: white;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 36px;
   width: 36px;
   height: 36px;
   border: 1px solid #dbdbdb;
   cursor: pointer;
   padding: 6px;
   box-sizing: border-box;
}
 .share-btn:hover {
   background: #f5f5f5;
}
 .share-btn svg {
   width: 100%;
   height: 100%;
   box-sizing: border-box;
}
/* 가격 섹션 */
 .price-section {
   display: flex;
   gap: 8px;
   align-items: center;
   width: 100%;
   padding-bottom: 30px;
   border-bottom: 1px solid #3a3a3a;
   position: relative;
}
 .price-multi-section-wrap {
   width: 100%;
   padding-bottom: 20px;
   border-bottom: 1px solid var(--_pt_border-divider_light, #eaeaea);
   box-sizing: border-box;
}
 .price-multi-section {
   display: flex;
   align-items: center;
   gap: 16px;
   align-self: stretch;
   border-radius: var(--radius-greyBox, 8px);
   background: var(--surface-greyBox, #f6f6f6);
   box-sizing: border-box;
}
 .price-multi-section .price-multi-item {
   flex: 1;
   padding: 20px;
   width: 50%;
   box-sizing: border-box;
   position: relative;
}
 .price-multi-section .price-multi-item:first-child::before {
   content: '';
   position: absolute;
   right: 0;
   top: 50%;
   transform: translateY(-50%);
   width: 1px;
   height: calc(100% - 40px);
   background: #dbdbdb;
   box-sizing: border-box;
}
 .price-multi-section .price-kind {
   margin-bottom: 12px;
   color: var(--text-tertiary, #7f7f84);
   font-family: "Noto Sans KR";
   font-size: 15px;
   font-style: normal;
   font-weight: 700;
   line-height: 140%;
  /* 21px */
}
 .price-multi-section .discount-rate {
   color: var(--SHOP-price_emphasis_txt, #f90006);
   font-family: "Noto Sans KR";
   font-size: 18px;
   font-style: normal;
   font-weight: 400;
   line-height: 140%;
  /* 25.2px */
   letter-spacing: var(--ltr_spc-compact, -0.4px);
}
 .price-multi-section .current-price-wrap {
   color: var(--pt_text-prominent, #1a1a1a);
   font-family: "Noto Sans KR";
   font-size: 22px;
   font-style: normal;
   font-weight: 400;
   line-height: 140%;
  /* 30.8px */
   letter-spacing: var(--ltr_spc-compact, -0.4px);
}
 @media screen and (max-width: 1160px) {
   .price-multi-section {
     flex-direction: column;
     align-items: flex-start;
  }
   .price-multi-section .price-multi-item {
     width: 100%;
  }
   .price-multi-section .price-multi-item:first-child::before {
     width: calc(100% - 40px);
     height: 1px;
     left: 50%;
     top: 100%;
     transform: translateX(-50%) translateY(0);
  }
}
 .discount-rate {
   font-weight: 400;
   font-size: 26px;
   color: #f90006;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .price-wrap {
   display: flex;
   gap: 6px;
   align-items: center;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .current-price {
   font-weight: 700;
   font-size: 26px;
   color: #1a1a1a;
}
 .original-price {
   font-weight: 400;
   font-size: 16px;
   color: #bbb;
   text-decoration: line-through;
}
/* 상품 정보 아이템들 */
 .info-item {
   position: relative;
   width: 100%;
}
 .info-item-border {
   position: absolute;
   border-bottom: 1px solid #eaeaea;
   inset: 0;
   pointer-events: none;
}
 .info-item-content {
   display: flex;
   gap: 8px;
   align-items: center;
   padding: 20px 8px 20px 0;
   width: 100%;
}
 .info-label {
   display: flex;
   align-items: flex-start;
   max-width: 112px;
   min-width: 0;
   flex: 0 0 auto;
   font-weight: 700;
   font-size: 14px;
   color: #3a3a3a;
   flex: 1;
   min-width: 0;
}
 .info-content {
   display: flex;
   align-items: flex-start;
   flex: 1;
   min-width: 0;
}
 .info-content-text {
   font-weight: 400;
   font-size: 14px;
   color: #3a3a3a;
   flex: 1;
   min-width: 0;
}
 .point-text {
   font-weight: 400;
   font-size: 14px;
   color: #3a3a3a;
}
 .point-bold {
   font-weight: 700;
}
 .delivery-info {
   display: flex;
   gap: 4px;
   align-items: flex-start;
   font-weight: 400;
   font-size: 14px;
   color: #3a3a3a;
   flex: 1;
   min-width: 0;
}
/* 드롭다운 */
 .dropdown {
   background: white;
   border: 1px solid #dbdbdb;
   border-radius: 8px;
   box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.04);
   display: flex;
   align-items: center;
   padding: 8px 8px 8px 14px;
   gap: 8px;
   cursor: pointer;
   position: relative;
}
 .dropdown.full-width {
   width: 100%;
   max-width: 360px;
}
 .dropdown.fixed-width {
   width: 200px;
}
 .dropdown.medium-width {
   flex: 1;
   max-width: 300px;
   min-width: 0;
}
 .dropdown:hover {
   border-color: #5268db;
}
 .dropdown-text {
   font-weight: 500;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
   flex: 1;
   min-width: 0;
}
 .dropdown-arrow {
   width: 20px;
   height: 20px;
   overflow: hidden;
   position: relative;
}
 .dropdown-arrow svg path {
   transition: transform 0.2s ease;
}
 .dropdown-options {
   display: none;
   position: absolute;
   top: 100%;
   left: 0;
   right: 0;
   background: white;
   border: 1px solid #dbdbdb;
   border-top: none;
   border-radius: 0 0 8px 8px;
   box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);
   z-index: 1000;
   max-height: 200px;
   overflow-y: auto;
}
 .dropdown-option {
   padding: 12px 14px;
   font-size: 14px;
   color: #2b2c33;
   cursor: pointer;
   border-bottom: 1px solid #f5f5f5;
}
 .dropdown-option:hover {
   background-color: #f8f9fa;
}
 .dropdown-option:last-child {
   border-bottom: none;
}
 .dropdown.active {
   border-color: #5268db;
   border-radius: 8px 8px 0 0;
}
/* 장바구니 아이템 */
 .cart-item {
   background: white;
   width: 100%;
   border-bottom: 1px solid #e1e1e1;
   position: relative;
}
 .cart-item-content {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   padding: 20px 8px 20px 0;
   width: 100%;
}
 .cart-item-info {
   min-height: 80px;
   width: 100%;
   position: relative;
}
 .cart-item-info-inner {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   min-height: inherit;
   padding-left: 100px;
   width: 100%;
   position: relative;
   box-sizing: border-box;
}
 .cart-item-row1 {
   display: flex;
   gap: 8px;
   align-items: flex-start;
   width: 100%;
}
 .cart-item-name {
   font-weight: 500;
   font-size: 16px;
   color: #2b2c33;
   flex: 1;
   min-width: 0;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
}
 .remove-btn {
   padding: 4px;
   border-radius: 6px;
   cursor: pointer;
   border: none;
   background: transparent;
}
 .remove-btn:hover {
   background: rgba(0, 0, 0, 0.05);
}
 .remove-icon {
   width: 22px;
   height: 22px;
}
 .cart-item-row2 {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   width: 100%;
   padding-top: 8px;
}
 .quantity-control {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 114px;
}
 .quantity-btn {
   background: white;
   border: 1px solid #dbdbdb;
   border-radius: 40px;
   box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.04);
   display: flex;
   align-items: center;
   justify-content: center;
   width: 30px;
   height: 30px;
   cursor: pointer;
}
 .quantity-btn:hover {
   background: #f5f5f5;
}
 .quantity-icon {
   width: 18px;
   height: 18px;
}
 .quantity-text {
   font-weight: 500;
   font-size: 15px;
   color: #2b2c33;
   white-space: nowrap;
}
 .item-price {
   font-weight: 400;
   font-size: 16px;
   color: #2b2c33;
   white-space: nowrap;
   letter-spacing: -0.4px;
   padding-top: 8px;
}
 .cart-thumb {
   position: absolute;
   left: 0;
   top: 0;
   display: flex;
   align-items: flex-start;
}
 .cart-thumb-img {
   border-radius: 6px;
   width: 80px;
   height: 80px;
   position: relative;
}
 .cart-thumb-img-inner {
   overflow: hidden;
   border-radius: inherit;
   width: 80px;
   height: 80px;
   position: relative;
}
 .cart-thumb-img img {
   position: absolute;
   height: 196.38%;
   left: -46.38%;
   max-width: none;
   top: -63.16%;
   width: 197.35%;
}
 .cart-thumb-border {
   position: absolute;
   border: 1px solid rgba(0, 0, 0, 0.08);
   inset: 0;
   pointer-events: none;
   border-radius: 6px;
}
/* 옵션 박스 */
 .option-box {
   background: #f6f6f6;
   border-radius: 8px;
   width: 100%;
   position: relative;
}
 .option-box-content {
   display: flex;
   flex-direction: column;
   align-items: center;
   width: 100%;
   padding: 0 12px;
   box-sizing: border-box;
}
 .option-add-section {
   display: flex;
   flex-direction: column;
   gap: 16px;
   align-items: flex-start;
   width: 100%;
   padding: 12px 0;
}
 .option-group2 {
   display: flex;
   flex-direction: column;
   gap: 8px;
   align-items: flex-start;
   width: 100%;
}
 .option-group2-label {
   font-weight: 700;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
 .option-item {
   width: 100%;
   border-top: 1px solid #e1e1e1;
   position: relative;
}
 .option-inner .nx-ips1 {
   border-radius: 6px;
}
 .option-item-content {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 12px 0 12px 4px;
   width: 100%;
}
 .option-left {
   display: flex;
   gap: 16px;
   align-items: center;
}
 .option-label {
   display: flex;
   gap: 3px;
   align-items: center;
   font-size: 14px;
   white-space: nowrap;
}
 .option-label-bold {
   font-weight: 700;
   color: #565656;
}
 .option-label-normal {
   font-weight: 400;
   color: #2b2c33;
}
 .option-quantity {
   font-weight: 400;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
 .option-right {
   display: flex;
   gap: 16px;
   align-items: center;
}
 .option-price {
   font-weight: 400;
   font-size: 16px;
   color: #656878;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .option-remove-btn {
   background: rgba(0, 0, 0, 0.04);
   border: none;
   border-radius: 6px;
   padding: 4px;
   cursor: pointer;
}
 .option-remove-btn:hover {
   background: rgba(0, 0, 0, 0.08);
}
 .option-remove-icon {
   width: 16px;
   height: 16px;
}
/* 배송/구독 옵션 */
 .delivery-option, .subscription-option {
   display: flex;
   flex-wrap: wrap;
   gap: 12px;
   align-items: center;
   justify-content: flex-end;
   width: 100%;
}
 .delivery-label, .subscription-label {
   font-weight: 400;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
 .subscription-freq {
   font-weight: 400;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
/* 합계 */
 .total-section {
   display: flex;
   gap: 8px;
   align-items: center;
}
 .total-label {
   font-weight: 400;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
 .total-price {
   font-weight: 700;
   font-size: 20px;
   color: #2b2c33;
   white-space: nowrap;
   letter-spacing: -1px;
}
 .subscription-total {
   display: flex;
   gap: 3px;
   align-items: center;
   font-weight: 700;
   color: #2b2c33;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .subscription-monthly {
   font-size: 18px;
}
 .subscription-price {
   font-size: 20px;
}
 .subscription-plus {
   font-size: 18px;
}
/* 결제 정보 박스 */
 .payment-info-box {
   background: #f6f6f6;
   border-radius: 8px;
   width: 100%;
   padding: 16px;
}
 .payment-info-section {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   width: 100%;
   padding: 32px 0;
}
 .payment-label-lg {
   font-weight: 700;
   font-size: 16px;
   color: #2b2c33;
   white-space: nowrap;
   padding-bottom: 12px;
}
 .payment-label-lg.with-top-margin {
   padding-top: 24px;
   padding-bottom: 12px;
}
 .payment-row {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding-bottom: 12px;
   font-weight: 700;
   color: #2b2c33;
   white-space: nowrap;
}
 .payment-row-label {
   font-size: 14px;
}
 .payment-row-price {
   font-size: 16px;
   letter-spacing: -0.4px;
}
 .payment-sub-row {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding: 0 0 12px 12px;
   font-weight: 400;
   font-size: 14px;
   color: #7f7f84;
   white-space: nowrap;
}
 .payment-sub-row-price {
   letter-spacing: -0.4px;
}
 .payment-total {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding-top: 12px;
   border-top: 1px solid #e1e1e1;
}
 .payment-total-label {
   font-weight: 700;
   font-size: 16px;
   color: #2b2c33;
   white-space: nowrap;
}
 .payment-total-price {
   font-weight: 700;
   font-size: 24px;
   color: #f90006;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .monthly-payment-row {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding-bottom: 12px;
}
 .monthly-payment-label {
   font-weight: 700;
   font-size: 14px;
   color: #2b2c33;
   white-space: nowrap;
}
 .monthly-payment-price {
   display: flex;
   gap: 3px;
   align-items: center;
   font-weight: 700;
   font-size: 16px;
   color: #2b2c33;
   white-space: nowrap;
   letter-spacing: -0.4px;
}
 .next-billing {
   display: flex;
   gap: 12px;
   align-items: center;
   width: 100%;
   padding-top: 12px;
   border-top: 1px solid #e1e1e1;
}
 .next-billing-info {
   display: flex;
   gap: 3px;
   align-items: center;
   font-weight: 400;
   font-size: 14px;
   color: #7f7f84;
   white-space: nowrap;
}
/* 버튼 섹션 */
 .button-section {
   display: flex;
   gap: 8px;
   align-items: flex-start;
   width: 100%;
}
 .favorite-btn {
   background: white;
   border: 1px solid #dbdbdb;
   border-radius: 8px;
   box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.04);
   display: flex;
   align-items: center;
   padding: 0 16px;
   height: 46px;
   cursor: pointer;
   box-sizing: border-box;
}
 .favorite-btn:hover {
   background: #f5f5f5;
}
 .favorite-btn svg {
   fill: #7f7f84;
}
 .favorite-btn.active {
   border: 2px solid #5268db;
   padding: 0 15px;
}
 .favorite-btn.active svg {
   fill: #5268db;
}
 .heart-icon {
   width: 28px;
   height: 28px;
   display: flex;
   align-items: center;
   justify-content: center;
}
 .btn-cart {
   flex: 1;
   background: white;
   border: 1px solid #dbdbdb;
   border-radius: 8px;
   box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.04);
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 80px;
   padding: 12px 20px;
   cursor: pointer;
}
 .btn-cart:hover {
   background: #f5f5f5;
}
 .btn-cart-text {
   font-weight: 500;
   font-size: 16px;
   color: #2b2c33;
   white-space: nowrap;
}
 .btn-pay {
   flex: 1;
   background: #5268db;
   border: none;
   border-radius: 8px;
   box-shadow: 0 2px 4px 0 rgba(82, 104, 219, 0.32);
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 80px;
   padding: 12px 20px;
   cursor: pointer;
}
 .btn-pay:hover {
   background: #4557c9;
}
 .btn-pay-text {
   font-weight: 500;
   font-size: 16px;
   color: white;
   white-space: nowrap;
}
/* 하단 여백 */
 .bottom-wrap {
   width: 100%;
}
 .bottom-wrap-inner {
   display: flex;
   flex-direction: column;
   align-items: flex-end;
   width: 100%;
}
 .bottom-content {
   display: flex;
   flex-direction: column;
   gap: 16px;
   align-items: flex-end;
   padding: 16px 0 0 100px;
   width: 100%;
   box-sizing: border-box;
}
 .shop-wrap {
   position: relative;
   width: 100%;
   box-sizing: border-box;
}
 .shop-wrap:before {
   content: '';
   display: block;
   width: 100vw;
   left: 50%;
   transform: translateX(-50%);
   top: 0;
   position: absolute;
   height: 1px;
   background: #dbdbdb;
}
 .shop-tab-wrap {
   padding-top: 8px;
   display: flex;
   gap: 24px;
   align-items: center;
   justify-content: center;
   width: 100%;
   position: relative;
}
 .shop-tab-wrap .shop-tab-item {
   position: relative;
   flex: 1;
   box-sizing: border-box;
   display: flex;
   align-items: center;
   justify-content: center;
   color: #7f7f84;
   text-align: center;
   font-family: "Noto Sans KR";
   font-size: 16px;
   font-style: normal;
   font-weight: 700;
   line-height: 140%;
  /* 22.4px */
   background: #fff;
   border: 0;
   text-align: center;
}
 .shop-tab-wrap .shop-tab-item .text {
   position: relative;
   display: flex;
   padding: 13px 15px;
   box-sizing: border-box;
   transition: all 0.2s ease-in-out;
}
 .shop-tab-wrap .shop-tab-item.active, .shop-tab-wrap .shop-tab-item:hover {
   color: #2b2c33;
}
 .shop-tab-wrap .shop-tab-item.active .text:after, .shop-tab-wrap .shop-tab-item:hover .text:after {
   content: '';
   display: block;
   width: 100%;
   height: 2px;
   background: #000;
   position: absolute;
   bottom: 0;
   left: 0;
}
 .shop-tab-group:not(.active) {
   display: none;
}
 .payment-price-section {
   width: 100%;
   display: flex;
   padding: 32px 0;
   justify-content: flex-end;
   align-items: center;
   gap: 16px;
   box-sizing: border-box;
}
 .payment-price-section .text {
   color: var(--pt_text-default, #3a3a3a);
   font-family: "Noto Sans KR";
   font-size: 16px;
   font-style: normal;
   font-weight: 400;
   line-height: 140%;
  /* 22.4px */
}
 .payment-price-section .price {
   color: var(--SHOP-price_emphasis_txt, #f90006);
   font-family: "Noto Sans KR";
   font-size: 26px;
   font-style: normal;
   font-weight: 700;
   line-height: 140%;
  /* 36.4px */
   letter-spacing: var(--ltr_spc-condensed, -1px);
}
 .radio-group-btns {
   display: flex;
   align-items: center;
   gap: 8px;
}
 .radio-group-btns .radio-btn .radio-btn-label {
   display: flex;
   max-width: var(--input-wth_sm, 160px);
   padding: 8px 18px;
   align-items: center;
   gap: 8px;
   flex: 1 0 0;
   border-radius: 40px;
   border: 1px solid var(--btn-bdr_base, #dbdbdb);
   background: var(--btn-bg_base, #fff);
   box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.04);
   color: var(--btn-txt_primary, #2b2c33);
   font-family: "Noto Sans KR";
   font-size: 14px;
   font-style: normal;
   font-weight: 500;
   line-height: 140%;
  /* 19.6px */
}
 .radio-group-btns .radio-btn input[type="radio"] {
   display: none;
}
 .radio-group-btns .radio-btn input[type="radio"]:checked ~ .radio-btn-label {
   border: 2px solid #5268db;
   color: #5268db;
}
/* 반응형 - 태블릿 */
 @media (max-width: 1024px) {
   .product-thumbnail {
     width: 400px;
  }
   .product-info-content {
     padding-left: 32px;
  }
}
/* 반응형 - 모바일 */
 @media (max-width: 768px) {
   .top-section {
     flex-direction: column;
     padding-bottom: 32px;
  }
   .product-thumbnail {
     width: 100%;
  }
   .product-info {
     width: 100%;
  }
   .product-info-content {
     padding-left: 0;
     padding-top: 24px;
  }
   .info-item-content {
     flex-direction: column;
     align-items: flex-start;
     gap: 8px;
  }
   .info-label {
     max-width: 100%;
     padding-bottom: 4px;
  }
   .bottom-content {
     padding-left: 0;
  }
   .shop-tab-wrap {
     gap: 8px;
  }
   .shop-tab-wrap .shop-tab-item {
     font-size: 14px;
  }
   .shop-tab-wrap .shop-tab-item .text {
     padding: 10px 8px;
  }
   .payment-price-section .price {
     font-size: 20px;
  }
}
 