.store {
  background-color: #ffffff;
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.store .overlap-wrapper-2 {
  width: 100%;
  height: 100%; /* 또는 적절한 높이 */
  aspect-ratio: 393/852; /* 원본 비율 유지 */
  margin: 0 auto; /* 중앙 정렬 */
}

.store .overlap-5 {
  position: relative;
  height: 100%;
  background-image: url(../img/title-bg.png);
  width: 100%;
  aspect-ratio: 393/852; /* 원본 비율 유지 */
}

.store .store-bg {
  background-image: url(./img/store-1.png);
  background-size: cover;
  background-position: 50% 50%;
  position: absolute;
  aspect-ratio: 393/852; /* 원본 비율 유지 */
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.store .store-bg-2 {
  object-fit: cover;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.store .small-logo-wt-2 {
  position: absolute;
  width: clamp(25px, 7.6vw, 30px); /* 최솟값, 선호값, 최댓값 */
  height: clamp(30px, 9.2vw, 36px); /* 최솟값, 선호값, 최댓값 */
  bottom: clamp(20px, 3vh, 40px); /* 최솟값, 선호값, 최댓값 */
  right: clamp(15px, 4.5vw, 30px); /* 최솟값, 선호값, 최댓값 */
}

.store .group-3 {
  height: 30px;
  top: 0;
  position: absolute;
  width: 30px;
  left: 0;
}

.store .group-4 {
  height: 3px;
  top: 33px;
  position: absolute;
  width: 30px;
  left: 0;
}

.store .frame {
  position: relative;
  width: 90%;
  max-width: 342px;
  height: 80vh;
  max-height: 568px;
  border-radius: 27px;
  border: none;
  box-shadow: inset 0px 0px 33.7px rgba(255, 255, 255, 0.48), 0px 4px 4px rgba(0, 0, 0, 0.25);
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.18) 0%,
    rgba(255, 255, 255, 0.06) 54%,
    rgba(255, 255, 255, 0.36) 100%
  );
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  overflow: hidden;
  
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  padding: 30px;
}

.store .frame::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 27px;
  padding: 1px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.2) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: exclude;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
  pointer-events: none;
}

.store .button-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  order: 5;
  width: 100%;
  gap: 20px;
  margin: 0 auto;
  text-align: center;
}

.store .store-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  /* 동적 뷰포트 높이 사용 */
  height: calc(var(--vh, 1vh) * 100);
  min-height: calc(var(--vh, 1vh) * 100);
  gap: 15px;
  padding: 20px 0;
}

/* button-group 안에 있는 버튼들 크기 고정 */
.store .button-group .button {
  width: clamp(180px, 54.97vw, 216.1px); /* 최솟값, 선호값, 최댓값 */
  height: clamp(45px, 7.45vh, 63.5px); /* 최솟값, 선호값, 최댓값 */
  background-color: #fafafa;
  border-radius: 100px;
  box-shadow: inset 0px 5px 1px #ffffff, inset 0px -4px 4px rgba(193, 109, 109, 0.25), 0px 19px 39.1px rgba(198, 87, 87, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease-in-out;
  cursor: pointer;
  flex-shrink: 0;
  margin: 0 auto;
}

/* .store .button-group .button:hover {
  transform: scale(1.05);
}

.store .button-group .button:active {
  transform: scale(0.95);
} */

/* button-group 안의 링크 태그들 중앙 정렬 */
.store .button-group a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  text-decoration: none;
}

/* button-group 안의 이미지들 크기 제한 */
.store .button-group .tiktok
{
  max-width: 70%;
  max-height: 70%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.store .button-group .amazon {
  position: relative;
  max-width: 50%;
  max-height: 60%;
  top: 2px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.store .button-group-bottom {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-evenly;
  width: clamp(280px, 95vw, 380px); /* 최솟값, 선호값, 최댓값 */
  height: clamp(50px, 10vw, 80px); /* 최솟값, 선호값, 최댓값 */
  gap: clamp(10px, 2vw, 25px); /* 최솟값, 선호값, 최댓값 */
}

/* Frame 내부 요소들 */
.store .product-description-2 {
  position: relative;
  text-shadow: 0px 4px 10px rgba(154, 0, 0, 0.25);
  font-family: "Gotham Book-Regular", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: 15.5px;
  text-align: center;
  letter-spacing: -0.31px;
  line-height: 1.2;
  white-space: nowrap;
  order: 1;
}

.store .product-name-4 {
  position: relative;
  max-width: 280px;
  height: auto;
  order: 2;
  font-family: "Gotham Medium-Regular", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: 28px;
  text-align: center;
  letter-spacing: -0.56px;
  line-height: normal;
  white-space: nowrap;
  text-shadow: 0px 4px 10px rgba(154, 0, 0, 0.25);
}

.store .store-product-place {
  position: relative;
  max-width: 189px;
  height: auto;
  aspect-ratio: 189/228;
  object-fit: contain;
  flex: 1;
  order: 3;
}

.store .button {
  position: relative;
  width: 90%;
  max-width: 216px;
  height: 16vw; /* 64px → 반응형 */
  max-height: 64px; /* 최대 높이 제한 */
  min-height: 48px; /* 최소 높이 보장 */
  background-color: #fafafa;
  border-radius: 100px;
  box-shadow: inset 0px 5px 1px #ffffff, inset 0px -4px 4px rgba(193, 109, 109, 0.25), 0px 19px 39.1px rgba(198, 87, 87, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease-in-out;
  order: 4;
  cursor: pointer;
}

/* .store .button:hover {
  transform: scale(1.05);
}

.store .button:active {
  transform: scale(0.95);
} */

.store .button-3 {
  position: relative;
  width: 100%;
  max-width: 216px;
  height: 16vw; /* 64px → 반응형 */
  max-height: 64px; /* 최대 높이 제한 */
  min-height: 48px; /* 최소 높이 보장 */
  background-color: #fafafa;
  border-radius: 100px;
  box-shadow: inset 0px 5px 1px #ffffff, inset 0px -4px 4px rgba(193, 109, 109, 0.25), 0px 19px 39.1px rgba(198, 87, 87, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease-in-out;
  order: 5;
  cursor: pointer;
}

/* .store .button-3:hover {
  transform: scale(1.05);
}

.store .button-3:active {
  transform: scale(0.95);
} */

/* 하단 버튼들 */
.store .button-2 {
  position: relative;
  width: clamp(140px, 44vw, 164.2px); /* 최솟값, 선호값, 최댓값 */
      height: clamp(22px, 6.5vh, 50px); /* 최솟값, 선호값, 최댓값 */
  background-color: #fafafa;
  border-radius: 20px;
  box-shadow: inset 0px 5px 1px #ffffff, inset 0px -4px 4px rgba(193, 109, 109, 0.25), 0px 19px 39.1px rgba(198, 87, 87, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease-in-out;
  order: 6;
  cursor: pointer;
}

/* .store .button-2:hover {
  transform: scale(1.05);
}

.store .button-2:active {
  transform: scale(0.95);
} */

/* .store .button-4는 실제 HTML에서 사용되지 않음 - 두 버튼 모두 button-2 클래스 사용 */

/* button-4 관련 스타일 제거됨 - 실제로는 두 버튼 모두 button-2 클래스 사용 */

/* 텍스트 요소들 */
.store .text-wrapper-4 {
  font-family: "Gotham Bold-Regular", Helvetica;
  font-weight: 400;
  color: var(--bk);
  font-size: 20px;
  text-align: center;
  letter-spacing: -0.40px;
  line-height: normal;
  white-space: nowrap;
}

.store .text-wrapper-5 {
  font-family: "Gotham Bold-Regular", Helvetica;
  font-weight: 400;
  color: var(--bk);
  font-size: 20px;
  text-align: center;
  letter-spacing: -0.40px;
  line-height: normal;
  white-space: nowrap;
}

/* 이미지들 */
.store .tiktok {
  max-width: 80%;
  height: auto;
  object-fit: contain;
}

.store .amazon {
  position: relative;
  max-width: 70%;
  top: 10px;
  height: auto;
  object-fit: contain;
}

/* 반응형 디자인 */
@media (min-height: 800px) {
  .store .frame {
    height: 65vh;
    max-height: 650px;
  }
  
  .store .store-content {
    gap: 20px;
  }
}

@media (min-height: 896px) {
  .store .frame {
    height: 60vh;
    max-height: 750px;
  }
  
  .store .store-content {
    gap: 20px;
  }
}

@media (max-height: 667px) {
  .store .frame {
    width: 95%;
    padding: 20px;
    height: 70vh;
    max-height: 667px;
  }
  
  .store .product-name-4 {
    font-size: 24px;
    max-width: 90%;
  }
  
  .store .product-description-2 {
    font-size: 14px;
  }
  
  /* clamp 사용으로 인해 버튼 크기 조정 불필요 */
}

@media (max-width: 320px) {
  .store .frame {
    width: 100%;
    padding: 20px;
  }
  
  .store .product-description-2 {
    font-size: 13px;
  }
}
