@charset "utf-8";

/* ============================================================
   [NB2024-12343] 슈즈위크 MO 기초 (공유 bf2026_common.css의 .bf 기초를 .sw로 이식)
   - vw 단위: 80px => calc(80 * var(--vw-400)); (400px 기준)
   ============================================================ */
.sw { --vw-400: 0.25vw; }
.sw *,
.sw *::before,
.sw *::after {
  box-sizing: border-box;
}
/* reset */
.sw img,
.sw video {
  display: block;
  width: 100%;
  max-width: 100%;
  vertical-align: top;
}
.sw video {
  outline: none;
  border: 0;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
}
.sw figure {
  margin: 0;
  padding: 0;
}
/* icon */
.sw [class*='ico--'] {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}
.sw .ico--nb {
  width: calc(32 * var(--vw-400));
  height: calc(16 * var(--vw-400));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='16' viewBox='0 0 32 16' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.2212 5.64902L17.7067 2.96566L22.7382 2.63176L22.9133 2.30696L18.2612 1.97002L19.3498 0.00303555H27.9799C30.6328 0.00303555 32.5941 0.989565 31.8352 3.89148C31.6047 4.77177 30.5248 6.98463 27.3641 7.91045C28.0353 7.99545 29.7076 8.76342 29.4187 10.7608C28.908 14.3032 24.4981 15.9909 22.0436 15.9909L11.858 15.997L11.3531 13.945L16.691 13.5564L16.872 13.2316L11.0845 12.8644L10.46 10.436L18.6961 9.93512L18.8741 9.61336L4.08009 8.642L4.7893 7.36103L20.7157 6.28647L20.8937 5.96471L16.227 5.64902M22.8841 6.18023L24.3551 6.16809C25.3357 6.16202 26.3572 5.69759 26.7278 4.75052C27.0722 3.87327 26.6111 3.12654 25.9953 3.12958H24.571L22.8812 6.18023H22.8841ZM21.1914 9.23392L19.4199 12.4272H21.1068C21.8889 12.4272 23.2898 12.0205 23.7218 10.864C24.1216 9.78941 23.3861 9.23089 22.8754 9.23392H21.1914ZM8.34114 14.1666L7.31966 15.9909L0 16L0.709201 14.719L8.34114 14.1635V14.1666ZM8.85772 0L14.7415 0.00607095L15.1851 1.73933L8.14852 1.28097L8.85772 0ZM15.5236 3.11136L16.1657 5.64902L6.11431 4.96301L6.82351 3.68203L15.5236 3.11136ZM10.4016 10.436L9.12038 12.7338L2.03713 12.318L2.74633 11.037L10.4016 10.4329V10.436Z' fill='white'/%3E%3C/svg%3E");
}
.sw .ico--nk {
  width: calc(47 * var(--vw-400));
  height: calc(24 * var(--vw-400));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='47' height='24' viewBox='0 0 47 24' fill='none'%3E%3Cg clip-path='url(%23clip0_1_514)'%3E%3Cpath d='M25.1314 11.0863C23.9999 12.7862 25.2908 14.162 25.2908 14.162C26.9481 15.7397 28.4886 14.1195 28.4886 14.1195L28.6905 11.0863C26.7463 9.2643 25.1314 11.0863 25.1314 11.0863Z' fill='white'/%3E%3Cpath d='M46.9057 4.32935C46.9057 4.32935 42.9004 2.58699 32.4197 1.90173L27.0757 0L26.8738 1.85923L21.6521 2.34263C21.6521 2.34263 20.6799 0.600266 18.9801 1.0093C18.1142 1.21647 17.6202 1.52457 17.3121 1.87517C16.494 2.05046 15.8619 2.55511 15.6335 3.21381L12.5525 3.92032L11.0544 3.07038L10.5392 4.12749L10.0452 3.90438L9.76361 4.36653L9.56706 4.68526L8.42497 4.97211L8.14343 2.09827L3.81408 2.58167L3.97344 3.69721L3.50066 3.75033L2.86853 3.8247L2.96414 4.45153L3.30412 6.73572L0 8.37716L3.39973 18.9801L5.0571 18.5817L5.11023 18.927L5.73174 18.8207L5.8008 18.8048L5.94422 19.83L10.1142 19.3041L9.99203 18.0876C9.99203 18.0876 11.0863 17.9283 12.7224 18.0345L13.3121 18.6401L13.7424 19.081L14.0717 18.757L14.842 19.4635L16.34 18.0452C16.34 18.0452 23.7875 19.0173 27.6282 20.1487C31.4741 21.2802 36.5312 23.1023 38.4754 23.9947L40.8659 18.4914C40.8659 18.4914 42.2417 18.008 42.6082 16.6693C42.9748 15.336 42.9748 14.8101 42.8101 13.7158L45.5617 12.4197C45.5617 12.4197 45.6042 11.3254 44.3453 10.1142L46.8951 4.32935H46.9057ZM14.0398 18.2098L7.88845 11.9363L8.69588 17.7211L5.90173 18.2098L3.83533 4.36653L6.62948 4.0425L7.5591 9.58831L10.5551 4.69057L13.9548 6.23107L10.6348 11.251L15.8141 16.4728L14.0345 18.2151L14.0398 18.2098ZM17.5246 14.162L16.919 6.51262L19.8353 6.39044L20.0372 13.9602L17.5299 14.162H17.5246ZM18.2311 5.13679C17.2377 5.13679 16.4303 4.53121 16.4303 3.7822C16.4303 3.0332 17.2377 2.42762 18.2311 2.42762C19.2244 2.42762 20.0319 3.0332 20.0319 3.7822C20.0319 4.53121 19.2244 5.13679 18.2311 5.13679ZM30.8367 17.8858L28.409 17.5246L28.4515 16.7968C28.4515 16.7968 25.2537 17.9283 23.3094 15.7822C21.3652 13.6361 21.8114 10.9641 23.4316 9.34927C25.0518 7.72908 27.5591 7.80876 28.7331 8.70119L29.0571 4.16999L32.255 5.0996L30.8367 17.8858ZM41.5193 12.0584C41.5193 12.0584 40.7118 10.9641 39.7769 10.4382C39.7769 10.4382 38.8473 9.91235 38.4436 10.5179C38.0398 11.1235 38.8048 11.8938 39.1288 12.1381C39.4529 12.3825 41.5989 14.0398 40.8287 15.7397C40.0584 17.4396 38.7623 18.0876 37.0252 17.5618C35.2829 17.0359 33.907 15.8194 33.3015 14.2417L34.9588 13.3493C34.9588 13.3493 36.0903 15.0491 37.3068 15.4157C37.3068 15.4157 37.9548 15.7769 38.4011 15.1341C38.8473 14.4861 38.077 13.9177 38.077 13.9177C38.077 13.9177 36.8659 12.8659 36.5418 12.3825C36.2178 11.8991 35.2457 11.0066 36.5843 9.06242C36.5843 9.06242 37.7583 7.48473 39.9841 8.41434C39.9841 8.41434 42.0451 9.26428 43.0598 11.0066L41.5246 12.0584H41.5193Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_1_514'%3E%3Crect width='46.9057' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}
/* button (공유 common .bf .btn 이식) */
.sw .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(6 * var(--vw-400));
  border: 1px solid transparent;
  background-color: transparent;
  border-radius: calc(5 * var(--vw-400));
}
.sw .btn--lg {
  padding: 0 calc(20 * var(--vw-400));
  min-width: calc(310 * var(--vw-400));
  height: calc(48 * var(--vw-400));
  font-size: calc(16 * var(--vw-400));
  letter-spacing: calc(-0.8 * var(--vw-400));
}
.sw .btn--lg b {
  font-weight: 700;
}
.sw .btn--sm {
  height: calc(40 * var(--vw-400));
  font-size: calc(14 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
}
.sw .btn--point {
  background-color: #2B303C;
  color: #fff;
}
.sw .btn--white-outlined {
  border-color: #C7CACD;
  color: #fff;
}
.sw .btn--white-outlined.disabled,
.sw .btn--white-outlined:disabled {
  border-color: #8A8A8A;
  color: #8A8A8A;
  pointer-events: none;
}

.sw--main {
  background-color: #fff;
  color: #151415;
}
/* 스티키 탭 (Figma 128:39): 네이비 배경 + 5탭 폭 꽉차게(space-between, 무스크롤) + 활성 블루/밑줄 */
.sw--main .tabBar__container {
  background-color: #2b303c;
}
.sw--main .tabBar__container .tabBar__inner {
  justify-content: space-between;
  gap: 0;
  padding: 0 calc(16 * var(--vw-400));
}
.sw--main .tabBar__container .tabBar__title {
  width: auto;
  white-space: nowrap;
  color: #8f959b;
}
.sw--main .tabBar__container .tabBar__title.on {
  color: #5481d8;
}
.sw--main .tabBar__container .line {
  background-color: #5481d8;
}

.sw__section {}
.sw__section .section__header {
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--vw-400));
  padding-top: calc(35 * var(--vw-400));
  margin-bottom: calc(40 * var(--vw-400));
  color: #fff;
  text-align: center;
}
.sw__section .section__header.subTit {
  gap: 0;
}
.sw__section .section__header.subTit .section__tab{
  margin-top: 0;
}
.sw__section .section__title {
  font-size: calc(26 * var(--vw-400));
  font-weight: 900;
  line-height: calc(36 * var(--vw-400));
  letter-spacing: calc(-1.3 * var(--vw-400));
}
.sw__section .section__title .font--ko {
  font-family: 'Noto Sans KR', Dotum, "돋움", sans-serif;
}
.sw__section .section__title .font--en {
  font-size: calc(30 * var(--vw-400));
  font-weight: 800;
  line-height: calc(39 * var(--vw-400));
}
.sw__section .section__sub-title {
  font-size: calc(24 * var(--vw-400));
  font-weight: 900;
  line-height: calc(34 * var(--vw-400));
  letter-spacing: calc(-1.2 * var(--vw-400));
}
.sw__section .section__sub-title.sub {
  font-size: calc(16 * var(--vw-400));
  line-height: calc(22 * var(--vw-400));
  color: #134AFD;
  margin-bottom: calc(2 * var(--vw-400));
  font-weight: 700;
}
.sw__section .section__sub-title.main {
  line-height: calc(28 * var(--vw-400));
  font-size: calc(18 * var(--vw-400));
  margin-bottom: calc(30 * var(--vw-400));
  font-weight: 700;
}
.sw__section .section__sub-title .font--en {
  font-size: calc(26 * var(--vw-400));
  font-weight: 700;
}
.sw__section .section__sub-title.main .font--en {
  font-size: calc(20 * var(--vw-400));
}
.sw__section .section__desc {
  font-size: calc(16 * var(--vw-400));
  line-height: calc(26 * var(--vw-400));
  letter-spacing: calc(-0.8 * var(--vw-400));
}
.sw__section .section__desc .font--en {
  font-size: calc(18 * var(--vw-400));
}

.sw__section .section__tab {
  display: flex;
  justify-content: safe center;
  gap: calc(8 * var(--vw-400));
  padding: 0 calc(16 * var(--vw-400));
  overflow-x: auto;
  white-space: nowrap;
  scrollbar-width: none;
}
.sw__section .section__tab::-webkit-scrollbar { display: none; }
.sw__section .section__tab .tab__btn {
  height: calc(32 * var(--vw-400));
  padding: 0 calc(15 * var(--vw-400));
  border: 0;
  border-radius: calc(20 * var(--vw-400));
  background-color: #444344;
  font-size: calc(13 * var(--vw-400));
  font-weight: 700;
  line-height: 1;
  letter-spacing: calc(-0.65 * var(--vw-400));
  color: #B9B9B9;
  cursor: pointer;
}
.sw__section.sw__section--launch .section__tab .tab__btn{
  padding: 0 calc(22 * var(--vw-400));
}
.sw__section.sw__section--ranking .section__tab{
  margin-top: calc(8 * var(--vw-400));
}

.sw__section .section__tab .tab__btn.on {
  background-color: #fff;
  color: #000;
}
.sw__section .section__tab .tab__btn .font--en {letter-spacing: calc(-0.39 * var(--vw-400));}

.section__tab-content:not(.on) {
  display: none;
}

/* benefit section */
.sw__section--benefit {
  padding-top: calc(45 * var(--vw-400));
}

/* goods section */
.sw__section--goods {
  /*margin-top: calc(35 * var(--vw-400));*/
  text-align: center;
}
.sw__section--goods .section__tab{
  margin-top: calc(20 * var(--vw-400));
}
.sw__section--goods .goods__container {
  position: relative;
}
/* [NB2024-11701] 상품 1개 노출 시 가운데 정렬 */
.goods__container--center .swiper-wrapper {
  justify-content: center;
}
.sw__section--goods .goods__list {
  min-height: calc(173 * var(--vw-400));
  padding: 0 calc(12 * var(--vw-400));
  overflow: hidden;
}
.sw__section--goods .goods__item {
  width: calc(122 * var(--vw-400));
  padding: 0 calc(4 * var(--vw-400));
}
.sw__section--goods .goods__item a {
  display: block;
  color: #fff;
  text-align: left;
}
.sw__section--goods .goods__thumb {
  margin: 0;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background-color: #E0E2E3;
}
.sw__section--goods .goods__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sw__section--goods .goods__title {
  margin-top: calc(10 * var(--vw-400));
  overflow: hidden;
  font-size: calc(12 * var(--vw-400));
  line-height: 1;
  letter-spacing: calc(-0.6 * var(--vw-400));
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sw__section--goods .goods__title .font--en {
  font-size: calc(14 * var(--vw-400));
}
.sw__section--goods .goods__origin {
  margin-top: calc(10 * var(--vw-400));
  font-size: calc(13 * var(--vw-400));
  line-height: 1;
  color: #737273;
  text-decoration: line-through;
}
.sw__section--goods .goods__origin .kor {
  font-size: calc(12 * var(--vw-400));
}
.sw__section--goods .goods__sale {
  margin-top: calc(8 * var(--vw-400));
  display: flex;
  gap: calc(6 * var(--vw-400));
  align-items: center;
  font-size: calc(14 * var(--vw-400));
  font-weight: 700;
  line-height: 1;
}
.sw__section--goods .goods__discount {
  color: #134AFD;
}
.sw__section--goods .goods__price .kor {
  font-size: calc(12 * var(--vw-400));
  font-weight: 400;
}

/* more 버튼 */
.sw__section--goods .goods__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: calc(40 * var(--vw-400)) auto 0;
  width: calc(120 * var(--vw-400));
}

/* ranking section */
.sw__section--ranking {
  margin-top: calc(35 * var(--vw-400));
  overflow: hidden;
}

.sw__section--ranking .ranking__list {
 min-height: calc(403 * var(--vw-400));
  margin: 0 calc(-4 * var(--vw-400));
}
.sw__section--ranking .ranking__col {
  display: flex;
  flex-direction: column;
  width: calc(321 * var(--vw-400));
  padding: 0 calc(20 * var(--vw-400));
}
.sw__section--ranking .ranking__wrap {
  padding: calc(10 * var(
  --vw-400)) 0;
}
.sw__section--ranking .ranking__col .ranking__wrap + .ranking__wrap {
  border-top: 1px solid #E8E8E8;
}
.sw__section--ranking .ranking__wrap a {
  display: flex;
  align-items: center;
  gap: calc(20 * var(--vw-400));
  width: 100%;
  color: #fff;
}
.sw__section--ranking .ranking__number {
  flex: 0 0 calc(30 * var(--vw-400));
  font-size: calc(20 * var(--vw-400));
  font-weight: 800;
  font-style: italic;
}
.sw__section--ranking .ranking__number i {
  font-style: italic;
}
.sw__section--ranking .ranking__prod {
  display: flex;
  align-items: center;
  gap: calc(20 * var(--vw-400));
  flex: 1;
  min-width: 0;
}
.sw__section--ranking .prod__thumb {
  flex: 0 0 calc(80 * var(--vw-400));
  width: calc(80 * var(--vw-400)) !important;
  height: calc(80 * var(--vw-400));
  background-color: #E0E2E3;
  object-fit: contain;
}
.sw__section--ranking .prod__info {
  display: flex;
  flex-direction: column;
  gap: calc(8 * var(--vw-400));
  flex: 1;
  min-width: 0;
}
.sw__section--ranking .info__displayName {
  margin: 0;
  overflow: hidden;
  font-size: calc(14 * var(--vw-400));
  font-weight: 400;
  line-height: 1;
  letter-spacing: calc(-0.7 * var(--vw-400));
  white-space: nowrap;
  text-overflow: ellipsis;
}
.sw__section--ranking .info__displayName .font--en {
  font-size: calc(15 * var(--vw-400));
}
.sw__section--ranking .info__price {
  display: flex;
  align-items: flex-end;
  margin: 0;
  font-size: calc(15 * var(--vw-400));
  font-weight: 700;
  line-height: 1;
}
.sw__section--ranking .info__price .price__discount {
  margin-right: calc(6 * var(--vw-400));
  color: #134AFD;
}
.sw__section--ranking .info__price .font--en {
}
.sw__section--ranking .info__price .kor {
  font-size: calc(13 * var(--vw-400));
}
.sw__section--ranking .ranking__nav {
  display: none;
}

/* ============================================================
   [NB2024-12343] 슈즈위크 MO 신규 섹션 (라이트 테마)
   ============================================================ */
/* 프로모션 인트로 (상단 블루→화이트 그라데이션) */
.bg_wrap {
  background: linear-gradient(180deg, #5481d8 -20%, #dbe4f6 15%, #fff 40%);
}
.sw__intro {
  padding: calc(50 * var(--vw-400)) calc(16 * var(--vw-400)) calc(20 * var(--vw-400));
  text-align: center;
}
.sw__intro-date {
  margin: 0;
  font-size: calc(20 * var(--vw-400));
  font-weight: 800;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.75 * var(--vw-400));
  color: #5481d8;
}
.sw__intro-date .dash {
  letter-spacing: calc(-1.2 * var(--vw-400));
}
.sw__intro-title {
  margin-top: calc(16 * var(--vw-400));
  font-size: calc(18 * var(--vw-400));
  font-weight: 700;
  line-height: calc(26 * var(--vw-400));
  letter-spacing: calc(-0.85 * var(--vw-400));
  color: #2b303c;
}

/* 결제 & 쿠폰 혜택 */
.sw__benefit {
  margin-top: 0;
  padding: 0 calc(16 * var(--vw-400));
}
.sw__benefit .section__header {
  gap: calc(6 * var(--vw-400));
  padding-top: calc(40 * var(--vw-400));
  margin-bottom: calc(30 * var(--vw-400));
  color: #2b303c;
}
.sw__benefit-sub {
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #5481d8;
}
.sw__benefit .section__title {
  color: #2b303c;
}
.sw__benefit-content {
  display: flex;
  flex-direction: column;
  gap: calc(40 * var(--vw-400));
}
.sw__benefit-col {
  display: flex;
  flex-direction: column;
  gap: calc(20 * var(--vw-400));
}
.sw__benefit-col-title {
  font-size: calc(20 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.85 * var(--vw-400));
  color: #2b303c;
  text-align: center;
}
/* 네이버페이 결제혜택 */
.sw__npay {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(16 * var(--vw-400));
  width: 100%;
  height: calc(120 * var(--vw-400));
  padding-right: calc(16 * var(--vw-400));
  background-color: #f5f5f5;
}
.sw__npay-img {
  flex: none;
  width: calc(120 * var(--vw-400));
  height: calc(120 * var(--vw-400));
}
.sw__npay-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sw__npay-text .sw__npay-title {
  margin-bottom: calc(10 * var(--vw-400));
  font-size: calc(15 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.75 * var(--vw-400));
  color: #2b303c;
}
.sw__npay-text ul {
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--vw-400));
}
.sw__npay-text li {
  font-size: calc(15 * var(--vw-400));
  font-weight: 400;
  line-height: calc(20 * var(--vw-400));
  letter-spacing: calc(-0.65 * var(--vw-400));
  color: #2b303c;
}
.sw__npay-text li + li{margin-bottom: calc(4 * var(--vw-400));}
.sw__npay-text li strong {
  font-weight: 700;
}
/* 네이버페이 예산 소진 종료 오버레이 (Figma 135:1388) */
.sw__npay-end {
  display: none;
}
.sw__npay--end .sw__npay-end {
  display: flex;
  position: absolute;
  inset: 0;
  align-items: center;
  justify-content: center;
  background-color: rgba(43, 48, 60, 0.7);
  font-size: calc(17 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.85 * var(--vw-400));
  color: #fff;
}
/* 쿠폰 혜택 */
.sw__coupon {
  display: flex;
  flex-direction: column;
  gap: calc(12 * var(--vw-400));
  width: 100%;
}
.sw__coupon-item {
  display: flex;
}
.sw__coupon-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column-reverse; /* 시안: desc(대상 안내) 위 / name(쿠폰명) 아래 */
  justify-content: center;
  gap: calc(4 * var(--vw-400));
  height: calc(76 * var(--vw-400));
  padding: 0 calc(20 * var(--vw-400));
  border-radius: calc(8 * var(--vw-400));
  background-color: #5481d8;
  color: #fff;
}
.sw__coupon-item--auto .sw__coupon-info {
  background-color: #8f959b;
  color: #e3e5e6;
}
.sw__coupon-name {
  font-size: calc(18 * var(--vw-400));
  font-weight: 700;
  line-height: calc(28 * var(--vw-400));
  letter-spacing: calc(-0.9 * var(--vw-400));
}
.sw__coupon-name .font--en {
  font-size: calc(20 * var(--vw-400));
}
.sw__coupon-desc {
  font-size: calc(13 * var(--vw-400));
  font-weight: 400;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.65 * var(--vw-400));
}
.sw__coupon-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(8 * var(--vw-400));
  flex: 0 0 calc(84 * var(--vw-400));
  width: calc(84 * var(--vw-400));
  height: calc(76 * var(--vw-400));
  border: 0;
  border-radius: calc(8 * var(--vw-400));
  background-color: #5481d8;
  font-size: calc(12 * var(--vw-400));
  font-weight: 400;
  letter-spacing: calc(-0.6 * var(--vw-400));
  color: #fff;
  cursor: pointer;
}
.sw__coupon-btn svg {
  width: calc(20 * var(--vw-400));
  height: auto;
}
.sw__coupon-btn::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: calc(66 * var(--vw-400));
  border-left: 1px dashed rgba(255, 255, 255, 0.6);
}
.sw__coupon-btn--auto {
  background-color: #8f959b;
  color: #e3e5e6;
  cursor: default;
}
/* 쿠폰 대상상품 안내 문구 */
.sw__coupon-note {
  font-size: calc(14 * var(--vw-400));
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #8f959b;
  text-align: center;
}
/* 유의사항 */
.sw__benefit-notice {
  display: block;
  margin: calc(30 * var(--vw-400)) auto 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: calc(14 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #8f959b;
  text-decoration: underline;
  text-underline-offset: calc(3 * var(--vw-400));
  cursor: pointer;
}

/* 빠른 도착 배너 */
.sw__delibox {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(40 * var(--vw-400));
  padding: calc(60 * var(--vw-400)) calc(16 * var(--vw-400)) ;
}
.sw__delibox-visual {
  width: 100%;
}
.sw__delibox-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: none;
  font-size: calc(14 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #8f959b;
  text-decoration: underline;
  text-underline-offset: calc(3 * var(--vw-400));
  cursor: pointer;
}

/* 오늘의 발매 (라이트 그레이, 대표카드 + 가로 스와이퍼) */
.sw__today {
  padding: calc(45 * var(--vw-400)) 0 calc(60 * var(--vw-400));
  background-color: #e3e5e6;
  text-align: center;
}
.sw__today .section__header {
  gap: calc(6 * var(--vw-400));
  color: #2b303c;
}
.sw__today-sub {
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #5481d8;
}
.sw__today .section__title {
  color: #2b303c;
}
.sw__today-feature {
  margin: 0 calc(16 * var(--vw-400)) calc(20 * var(--vw-400));
  padding: calc(14 * var(--vw-400));
  border-radius: calc(5 * var(--vw-400));
  background-color: #2b303c;
  text-align: left;
}
/* 이미지 영역 : 시안 340x260 (17:13), 카드 안쪽 14 인셋 + 라운드 5 */
.sw__today-visual {
  width: 100%;
  aspect-ratio: 340 / 260;
  overflow: hidden;
  border-radius: calc(5 * var(--vw-400));
}
.sw__today-visual-link {
  display: block;
  width: 100%;
  height: 100%;
}
.sw__today-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sw__today-info {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: calc(10 * var(--vw-400));
  padding: calc(19 * var(--vw-400)) 0 calc(6 * var(--vw-400));
  color: #fff;
}
.sw__today-title {
  font-size: calc(22 * var(--vw-400));
  font-weight: 800;
  line-height: 1.3;
}
.sw__today-date {
  flex: none;
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.8 * var(--vw-400));
}
.sw__today-date .font--en {
  font-size: calc(18 * var(--vw-400));
}
.sw__today .goods__item a {
  color: #2b303c;
}
.sw__today .goods__discount {
  color: #cf0a2c;
}
.sw__today-btn {
  display: flex;
  margin: calc(24 * var(--vw-400)) auto 0;
  width: calc(130 * var(--vw-400));
  height: calc(40 * var(--vw-400));
  background-color: #2b303c;
  color: #fff;
  font-size: calc(14 * var(--vw-400));
}

/* 발매 & 재입고 캘린더 (네이비, 세로 리스트) */
.sw__calendar {
  padding: calc(45 * var(--vw-400)) calc(16 * var(--vw-400)) calc(60 * var(--vw-400));
  background-color: #2b303c;
  text-align: center;
}
.sw__calendar .section__header {
  gap: calc(6 * var(--vw-400));
  margin-bottom: calc(24 * var(--vw-400));
  color: #fff;
}
.sw__calendar-sub {
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #5481d8;
}
.sw__calendar .section__title {
  color: #fff;
}
.sw__calendar-allNoti {
  margin: calc(16 * var(--vw-400)) auto 0;
  width: calc(180 * var(--vw-400));
  height: calc(44 * var(--vw-400));
  border: 0;
  border-radius: calc(5 * var(--vw-400));
  background-color: #5481d8;
  font-size: calc(14 * var(--vw-400));
  font-weight: 400;
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #fff;
  cursor: pointer;
}
.sw__calendar-list {
  display: flex;
  flex-direction: column;
  gap: calc(40 * var(--vw-400));
  text-align: left;
}
.sw__calendar-item {
  display: flex;
  flex-direction: column;
  gap: calc(10 * var(--vw-400));
}
.sw__calendar-date {
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  letter-spacing: calc(-0.8 * var(--vw-400));
  color: #fff;
}
.sw__calendar-date .font--en {
  font-size: calc(18 * var(--vw-400));
}
/* 시안(128:367): 이미지 130 좌 + 우측 컬럼(텍스트/버튼), items-end. content는 wrapper 제거 효과(display:contents)로 grid 참여 */
.sw__calendar-body {
  display: grid;
  grid-template-columns: calc(130 * var(--vw-400)) 1fr;
  column-gap: calc(14 * var(--vw-400));
  row-gap: calc(20 * var(--vw-400));
  align-items: end;
}
.sw__calendar-content {
  display: contents;
}
.sw__calendar-visual {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: end;
  width: calc(130 * var(--vw-400));
  height: calc(130 * var(--vw-400));
  overflow: hidden;
  background-color: #bcbfc1;
}
.sw__calendar-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sw__calendar-textbox {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--vw-400));
  color: #fff;
}
.sw__calendar-title {
  font-size: calc(18 * var(--vw-400));
  font-weight: 800;
  line-height: calc(26 * var(--vw-400));
}
.sw__calendar-desc {
  font-size: calc(15 * var(--vw-400));
  font-weight: 400;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.75 * var(--vw-400));
}
.sw__calendar-btns {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  gap: calc(8 * var(--vw-400));
}
.sw__calendar-btn {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: calc(36 * var(--vw-400));
  border: 0;
  border-radius: calc(5 * var(--vw-400));
  font-size: calc(13 * var(--vw-400));
  font-weight: 400;
  letter-spacing: calc(-0.65 * var(--vw-400));
  cursor: pointer;
  text-decoration: none;
}
.sw__calendar-btn--more {
  border: 1px solid #fff;
  background: none;
  color: #fff;
}
.sw__calendar-btn--noti {
  background-color: #fff;
  color: #2b303c;
}
.sw__calendar-btn--noti.is-done {
  background-color: #8f959b;
  color: #e3e5e6;
  cursor: default;
  pointer-events: none;
}
.sw__calendar-btn--go {
  /* 발매완료 시 이 버튼만 단독 노출 → flex:1이면 꽉 참. 2버튼(더 알아보기+알림) 중 한 칸과 동일 너비로 고정 */
  flex: none;
  width: calc(50% - calc(4 * var(--vw-400)));
  background-color: #5481d8;
  color: #fff;
}

/* 베스트 랭킹 (라이트 테마 + 탭 미노출) */
.sw__ranking-sub {
  font-size: calc(16 * var(--vw-400));
  font-weight: 700;
  line-height: calc(22 * var(--vw-400));
  letter-spacing: calc(-0.7 * var(--vw-400));
  color: #5481d8;
}
.sw__section--ranking .section__header {
  color: #2b303c;
}
.sw__section--ranking .section__tab {
  display: none;
}
.sw__section--ranking .ranking__wrap a {
  color: #2b303c;
}
.sw__section--ranking .info__price .price__discount {
  color: #cf0a2c;
}