/* BASIC css start */
 .item_container .item {
    width: 100% !important;    margin-bottom: 0!important;
}

.promotion .item {
    width: 100%;
    margin-bottom: 0px;
}


/* ===== 히어로 하늘 (WebGL) ===== */
.slide-title{ position:relative; }
.hero-sky{ position:relative; width:100%; padding-top:36.46%;   /* 1920 x 700 */
           overflow:hidden; pointer-events:none;
           background:linear-gradient(180deg,#F5F9FF 0%,#B3D9FF 40%,#80B3FF 72%,#6699E6 100%); }
.hero-sky canvas{ position:absolute; inset:0; width:100%; height:100%; display:block; }
.hero-sky-grain{ position:absolute; inset:-30px; pointer-events:none; opacity:.035; z-index:2;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:heroGrain .5s steps(3) infinite; }
@keyframes heroGrain{0%{transform:translate(0,0)}33%{transform:translate(-12px,8px)}66%{transform:translate(9px,-11px)}100%{transform:translate(0,0)}}
.intro_container{ z-index:3; }
@media (max-width:767px){
  .hero-sky{ padding-top:0; height:80vh; }
  .hero .slide-title{ height:80vh; }
  .hero .intro_container{ height:80vh; }
}
@media (prefers-reduced-motion:reduce){ .hero-sky-grain{ animation:none } }

/* ===== 랭킹 순위 배지 (TOP 10) ===== */
#ranking .item_container{ counter-reset:rank; }
#ranking .item{ position:relative; counter-increment:rank; }
#ranking .item::before{ content:counter(rank); position:absolute; top:6px; left:6px; z-index:5; min-width:24px; height:24px; padding:0 6px;
  border-radius:3px; background:#111; color:#fff; font-size:12px; font-weight:700; line-height:24px; text-align:center; }
#ranking .item:nth-child(-n+3)::before{ background:#2f6bed; }

.intro_container {     padding: 20px 0;display: flex;flex-direction: column;align-items: flex-start;gap: 10px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -164px); }
.intro_container .intro_t1 {background: #fff;color: #000;font-weight: 600;padding: 3px 8px;font-size: 14px;}
.intro_container .intro_t2 {font-size: 50px;color: #000;}
.intro_container .intro_t3 {font-size: 14px;color: #000;}

/* 모바일: 히어로 풀높이(90vh) 배너 + 텍스트 하단 정렬 (PC는 기본값 유지) */
@media (max-width:767px){
  .slide-title{ height:90vh; overflow:hidden; }
  .intro_container{ padding:20px; gap:0; left:auto; top:0; height:90vh; transform:none; justify-content:flex-end; }
  .intro_container .intro_t2{ font-size:40px; }
}

/* 미드시즌: 카테고리데이 4-카테고리 패널(활성만 노출) + PC(768+) 1줄 */
.cat-panel{ display:none; }
.cat-panel.on{ display:block; }

/* 기간 한정 노출 섹션 (장마템/바캉스템) — 기간 밖이면 숨김 */
.season-gate{ display:none; }
.season-gate.on{ display:block; }

/* 섹션 타이틀 옆 강조 플래그 */
.sec-title .flag{ margin-left:8px; font-size:12px; font-weight:700; color:#fe3e19; vertical-align:middle; }

@media (min-width:768px){
  #catday .item_container.custom_scroll { grid-template-rows:auto;overflow-x:hidden; }

  #limited .item_container.custom_scroll,
  #best .item_container.custom_scroll,
  #jangma .item_container.custom_scroll,
  #vacance .item_container.custom_scroll,
  #openrun .item_container.custom_scroll,
  #offseason .item_container.custom_scroll{ grid-template-rows:repeat(2,auto);overflow-x:hidden; }
}

#hdWrap, #headerBanner, #header {transition: opacity 0.5s ease;opacity: 1;}
#hdWrap.hide, #headerBanner.hide, #header.hide {opacity: 0;pointer-events: none;}


 :root{
    --wf-max: 1180px;
    --wf-pad: clamp(16px, 4vw, 28px);
    --ph:#f5f6f8; --ph-b:#e5e7eb; --line:#ececee;
    --ink:#111; --mut:#71767e; --tag:#9aa0a8; --bg:#fff;
    --on:#1f8a5b;
    --bar:#eceef1; --bar-dk:#dcdee2;
  }
  *{box-sizing:border-box}
  html{ scroll-behavior:smooth; }
  [id]{ scroll-margin-top:64px; }
  .promotion{ margin:0; background:var(--bg); color:var(--ink);    padding-bottom: 100px;
    font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue','Noto Sans KR',sans-serif; -webkit-font-smoothing:antialiased; }
  .container{ width:100%; max-width:var(--wf-max); margin:0 auto; padding-inline:var(--wf-pad); }

  /* 플레이스홀더 */
  .ph{ background:var(--ph); border:1px solid var(--ph-b); border-radius:6px; display:flex; align-items:center; justify-content:center;
    color:var(--mut); font-size:clamp(11px,1.3vw,13px); font-weight:600; text-align:center; padding:8px; }
  .ph-img{ background-image:
      linear-gradient(to top right, transparent calc(50% - .8px), var(--ph-b) calc(50% - .8px), var(--ph-b) calc(50% + .8px), transparent calc(50% + .8px)),
      linear-gradient(to top left,  transparent calc(50% - .8px), var(--ph-b) calc(50% - .8px), var(--ph-b) calc(50% + .8px), transparent calc(50% + .8px)); }
  .bar{ background:var(--bar); border-radius:4px; height:12px; }
  .bar.sm{ height:9px } .bar.dk{ background:var(--bar-dk) }
  .bar.w30{width:30%} .bar.w40{width:40%} .bar.w55{width:55%} .bar.w70{width:70%} .bar.w85{width:85%}

  /* 섹션 */
  section{ padding-block: clamp(26px,4.5vw,46px); }
  section + section{ border-top:1px solid var(--line); }
  .wf-tag{ display:inline-block; font-size:10px; font-weight:600; letter-spacing:.12em; color:var(--tag);
    border:1px solid var(--line); border-radius:999px; padding:3px 9px; margin-bottom:12px; }
  .sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:clamp(14px,2.2vw,22px); }
  .sec-title{ font-size:clamp(18px,2.4vw,25px); font-weight:600; }
  .sec-sub{ font-size:clamp(11px,1.4vw,13px); color:var(--mut); margin-top:6px; font-weight:600; }
  .more{ font-size:clamp(11px,1.3vw,13px); color:var(--mut); font-weight:700; white-space:nowrap; }
  .sort{ font-size:11px; font-weight:700; color:var(--mut); border:1px solid var(--line); border-radius:999px; padding:4px 10px; }

  /* 가로 스크롤 공통 */
  .scroller{ overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .scroller::-webkit-scrollbar{ display:none }
  .dragscroll{ cursor:grab }

  /* HERO */
  .hero{ padding:0 }
  .hero .ph-img{ width:100%; border-radius:0; border-inline:0; border-top:0; aspect-ratio:3/4; font-size:clamp(13px,1.8vw,16px); }
  @media(min-width:768px){ .hero .ph-img{ aspect-ratio:16/7 } }

  /* NAV sticky */
  .navbar{ position:sticky; top:0; z-index:20; background:#fff; transition:box-shadow .2s ease; }
  .navbar.scrolled{ box-shadow:0 2px 10px rgba(0,0,0,.08); }
  .nav-scroll{ display:flex; gap:20px; padding-block:0; }
  .chip{ flex:0 0 auto; background:none; border:0; border-radius:0; border-bottom:2px solid transparent;
    height:48px; padding:0 2px; display:flex; align-items:center; font-size:13px; font-weight:700;
    color:#555; text-decoration:none; user-select:none; cursor:pointer; }
  .chip.on{ color:#111; border-bottom-color:#111; }

  /* 날짜칩 */
  .dates{ display:flex; gap:8px; padding-bottom:4px; margin-bottom:clamp(14px,2vw,20px); }
  .date{ flex:0 0 auto; height:34px;    line-height: 34px; padding:0 14px; border-radius:999px; border:1px solid #e0e0e0; background:#f2f2f2;
    color:#555; font-size:12px; font-weight:700; display:flex; align-items:center; gap:5px; user-select:none; white-space:nowrap; cursor:pointer; }
  .date.on{ background:#333; color:#fff; border-color:#333; }
  .date .caret{ font-size:9px; opacity:.7 }

  /* 쿠폰 다운로드 */
  .coupons{ display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(10px,1.6vw,16px); }
  @media(min-width:768px){ .coupons{ grid-template-columns:repeat(4,1fr) } }
  .cpn{ position:relative; border:1px dashed var(--ph-b); border-radius:12px; padding:18px; min-height:152px;
    display:flex; flex-direction:column; gap:10px; background:#fff; }
  .cpn .pct{ font-size:clamp(24px,3.4vw,34px); font-weight:600; line-height:1; }
  .cpn .cname{ font-size:13px; font-weight:700; color:var(--mut); line-height:1.45; }
  .cpn .dl{ margin-top:auto; height:40px; border-radius:8px; background:var(--ph); border:1px solid var(--ph-b);
    display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:var(--mut); text-decoration:none; }
  .cpn .st{ position:absolute; top:14px; right:14px; font-size:10px; font-weight:600; padding:3px 8px; border-radius:999px; background:var(--ph); color:var(--mut); }
  .cpn .st.live{ background:rgba(31,138,91,.12); color:var(--on); }
  .cpn.off{ opacity:.5 }

  .cp_wrap {display: flex;justify-content: space-between;}
.cp_down a {display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 4px; cursor: pointer;}
.dashed {z-index: 1; height: 100%; border-left: 1px dashed rgb(0, 0, 0); opacity: 0.2; border-top-color: rgb(0, 0, 0); border-right-color: rgb(0, 0, 0); border-bottom-color: rgb(0, 0, 0);}
.cp_down_w {display: flex;gap: 15px;}

.paybenefit_wrap {padding-top: 30px;}
.paybenefit {background: #f0f5fa;padding:10px 15px; border-radius: 3px;    color: #222;   width: 100%;}
.paybenefit img { width: 50px;    float: right;margin-top: -46px;}
.paybenefit_info {}
.paybenefit_info div:nth-child(1) {font-weight: 700;font-size: 14px;line-height: 24px;}
.paybenefit_info div .cunt {    background: #353535;color: #fff;padding: 2px 7px;border-radius: 4px;margin-left: 10px;font-size: 12px;vertical-align:bottom;}
.paybenefit_info div {font-size: 14px;font-family: 'Pretendard', "Apple SD Gothic Neo";color: #222;line-height: 1.5;}


  .item_txt2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

  /* 24시간 타이머 */
  .cd-pill{ display:inline-flex; align-items:center; gap:9px; background:#2f6bed; border:1px solid #2f6bed; color:#fff; border-radius:999px;
    padding:9px 16px; font-weight:600; font-variant-numeric:tabular-nums; font-size:clamp(15px,2vw,19px); }
  .cd-pill .cd-label{ font-size:11px; opacity:.7; font-weight:700; letter-spacing:.04em; color:#fff; }
  .cd-pill .cd{ color:#fff; }

  /* 원데이특가 단일상품 */
  .oneday{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(14px,2.4vw,28px); align-items:center; }
  @media(max-width:680px){ .oneday{ grid-template-columns:1fr } }
  .oneday .ph-img{ width:100%; aspect-ratio:1/1; }
  .oneday .info{ display:flex; flex-direction:column; gap:14px; }
  .badge-ph{ width:120px; height:30px; border-radius:6px; background:var(--ph); border:1px solid var(--ph-b);
    display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; color:var(--mut); }
  .btn-ph{ height:46px; border-radius:8px; background:var(--ph); border:1px solid var(--ph-b);
    display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; color:var(--mut); margin-top:4px; }

  /* 상품 그리드 */
  .products{ display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(10px,1.6vw,18px); }
  @media(min-width:768px){ .products{ grid-template-columns:repeat(4,1fr) } }
  .card{ display:flex; flex-direction:column; gap:9px; }
  .card .ph-img{ width:100%; aspect-ratio:1/1; }
  .meta{ display:flex; flex-direction:column; gap:6px; padding-top:2px; }

  /* ── 진열부: 2줄 가로 스크롤 (모바일 3.2 / PC 5단 + 좌우버튼) ── */
  .dealgrid-wrap{ position:relative; }
  .item_container.custom_scroll{ --g:12px; display:grid; grid-auto-flow:column; grid-template-rows:repeat(2,auto);
    grid-auto-columns:calc((100% - 3*var(--g))/3.2); gap:30px var(--g); overflow-x:auto; -webkit-overflow-scrolling:touch;
    scrollbar-width:none; padding-bottom:2px; }
  .item_container.custom_scroll::-webkit-scrollbar{ display:none; }
  .item_container.custom_scroll::after{ display:none; }
  @media(min-width:768px){ .item_container.custom_scroll{ --g:5px; grid-auto-columns:calc((100% - 4*var(--g))/5); } }
  .item_more{ grid-row:1 / -1; align-self:stretch; display:flex; align-items:center; justify-content:center; text-align:center;
    border:1px solid var(--ph-b); border-radius:3px; color:var(--mut); font-size:12px; font-weight:700; text-decoration:none; padding:10px 16px;
    background: #f5f6f8;margin-top: 40px; }
  .rail-arrow{ display:none; }
  @media(min-width:768px){
    .rail-arrow{ position:absolute; top:50%; transform:translateY(-50%); z-index:6; width:42px; height:42px; border-radius:999px;
      background:#fff; border:2px solid #e5e7eb; box-shadow:0 3px 12px rgba(0,0,0,.12); cursor:pointer;
      display:flex; align-items:center; justify-content:center; font-size:22px; line-height:1; color:var(--ink); padding-bottom:2px; }
    .rail-arrow.prev{ left:-40px } .rail-arrow.next{ right:-40px }
    .rail-arrow:hover{ background:#f1f2f4; }
    .rail-arrow.disabled{ background:#eee; color:#878787; border-color:#eee; box-shadow:none; cursor:default; pointer-events:none; }
    .rail-arrow.disabled:hover{ background:#eee; }
  }

  /* ── product_simple 카드 (다크 테마) ── */
  .item{ min-width:0; }
  .item .simple{ display:block; color:var(--ink); text-decoration:none; }
  .item .thumbnail{ position:relative; width:100%; aspect-ratio:1/1; border-radius:3px; overflow:hidden; background:var(--ph); }
  .item .thumbnail img{ width:100%; height:100%; object-fit:cover; display:block; }
  .item .thumbnail_swiper, .item .thumbnail_swiper .swiper-wrapper, .item .thumbnail_swiper .swiper-slide{ width:100%; height:100%; }
  .item .thumb-swiper-button{ display:none; }
  .item .icon_wish{ position:absolute; top:8px; right:8px; z-index:2; cursor:pointer; line-height:0; }
  .item .icon_wish img{ width:24px; height:24px; }
  .item .icon_wish .my-wish-list img + img{ display:none; }   /* 기본: 빈 하트만 노출 */
  .item .icons{ position:absolute; left:7px; top:7px; display:flex; gap:4px; z-index:2; }
  .item .icons img{ height:18px; }
  .item .sale_percent{   color:#fe3e19; font-weight:600;
    font-size:clamp(13px,1.6vw,16px); }
  .item .sale_percent .unit{ font-size:.7em; }
  .item .item_txt{ padding-top:0px;    flex-direction: column; }
  .item_txta {
    display: flex;
    gap: 15px;
    align-items: center;
}
  .item .item_txt .name{ margin:0; font-size:13px; line-height:1.35; color:var(--ink);
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
  .item .item_txt .name{ margin-bottom:0 !important; }
  .item .item_price{ margin-top:5px; display:flex; gap:6px; align-items:baseline; flex-wrap:wrap; }
  .item .item_price .strike{ color:var(--mut); text-decoration:line-through; font-size:12px; }
  .item .item_price .price{ color:#111; font-weight:600; font-size:14px; }
  .item .item_price .unit{ font-size:.78em; font-weight:400; opacity:.8; display:none; }
  .item .review{ margin-top:5px; font-size:11px; color:var(--mut); }

  /* 날짜별 진열 패널 — 활성 날짜만 노출 */
  .day-panel{ display:none; }
  .day-panel.on{ display:block; }
  .oneday-single{ max-width:340px; }

  /* 원데이특가 섹션 배경 강조 */
  #oneday{ background:#eef3ff; border-top:0; border-radius:10px; }
  #catday{ border-top:0; }

  /* 원데이특가: 좌 썸네일 / 우 상품정보·할인·가격·구매버튼 (히어로 단일상품, #oneday 한정) */
  #oneday .oneday-single{ max-width:50%; }
  #oneday .oneday-single .item{ width:100%;    display: flex;
    gap: 5px;}
  #oneday .oneday-single .simple{ display:flex; gap:clamp(15px,3vw,15px); align-items:stretch; }
  #oneday .oneday-single .thumbnail{ flex:1 1 0; min-width:100%; aspect-ratio:5/3;align-self: flex-start; }
  /* promotion 이미지가 빈 div 2겹 안에 있어 object-fit가 안 먹음 → wrapper 제거(display:contents)해 img가 thumbnail에 직접 차게 */
  #oneday .oneday-single .thumbnail > div,
  #oneday .oneday-single .thumbnail > div > div { display:contents; }
  /* 세로 크롭 위치: 값↑ = 이미지 위로 올라가 윗부분이 더 잘림 (0%=아래만 잘림, 50%=위아래 균등) */
  #oneday .oneday-single .thumbnail img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 50%; }
  #oneday .oneday-single .item_txt{ flex:1 1 0; min-width:100%;  display:flex; flex-direction:column; gap:14px; align-items:flex-start;
    background: var(--ph);
    border: 1px solid var(--ph-b);
    border-radius: 3px;
    padding: 15px;
    height: auto;     justify-content: center;}
  #oneday .oneday-single .item_txt .name{ font-size:clamp(14px,2.2vw,14px); -webkit-line-clamp:3; }
  #oneday .oneday-single .item_price{ margin-top:0; align-items:baseline; }
  #oneday .oneday-single .item_price .price{ font-size:clamp(16px,2.6vw,16px); }
  #oneday .oneday-single .item_price .strike{ font-size:13px; }
  #oneday .oneday-single .sale_percent{ font-size:clamp(16px,2.4vw,16px); font-weight:700; }
.thumbnail2 img {
    width: 60px;    border-radius: 3px;
}

  /* 원데이특가 모바일: 위아래로 쌓기 (썸네일 위 / 정보·버튼 아래), PC는 50:50 가로 유지 */
  @media (max-width:767px){
    #oneday .oneday-single{ max-width:none; }
    #oneday .oneday-single .item{ flex-direction:column; align-items:stretch; gap:14px; }
    #oneday .oneday-single .thumbnail{ flex:none; width:100%; }
    #oneday .oneday-single .item_txt{ flex:none; width:100%; }
    #oneday .oneday-single .item_txt::after{ width:100%; }
    .paybenefit_info {display:flex; gap:15px;align-items: center;}
    .cp_down a {    flex-direction: row;}
    /* 모바일 카드/그리드 촘촘하게 */
    .item_container.custom_scroll{ --g:5px; gap:20px var(--g); }
    .item .item_txt{ margin:5px 0; }
    .item .item_txt .name{ margin-bottom:0; }
    .item .item_price{ margin-top:0; }
    #oneday .oneday-single .item_txt{ gap:5px; }
  }
  .cat-coupon{ display: none;
    align-items: center;
    justify-content: center;
    height: 40px;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    background: #eef3ff;
    padding: 10px 16px;
    border: 1px solid #bcd2fb;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(47,107,237,.10);
    transition: border-color .15s, box-shadow .15s; }
  .cat-coupon div {font-size: 13px; font-weight: 700; }
  .cat-coupon svg path{ fill:#2f6bed; }
  .cat-coupon:hover{ border-color:#2f6bed; box-shadow:0 4px 14px rgba(47,107,237,.20); }
  .cat-coupon.on{ display:inline-flex; }

  /* 오늘의 카테고리 라벨 */
  .today-cat{ display:flex; align-items:center; gap:10px; margin-bottom:clamp(12px,2vw,18px); flex-wrap:wrap; }
  .today-cat .k{ font-size:12px; font-weight:600; color:var(--mut); border:1px solid var(--line); border-radius:999px; padding:4px 10px; }
  .today-cat .v{ font-size:clamp(15px,2.2vw,20px); font-weight:600; }




  .item_txt .cpn {
    flex-direction: row;
    min-height: auto;
    width: 100%;
    justify-content: space-between;
    border-radius: 3px;
}
.flex {
    display: flex;
    gap: 20px;
}

/* ===================================================================
   사뿐위크 진열 리디자인 v3 (260921) — 이 블록만 지우면 이전 상태로 복귀
   =================================================================== */
:root{ --sw-band:#f5f6f8; --sw-ink:#111; --sw-sub:#6b7079; --sw-accent:#2f6bed; --sw-sale:#fe3e19; }

/* 섹션 리듬: 박스·구분선 없이 흰색 / 연회색 풀폭 띠 교차 */
.promotion section{ padding-block:clamp(44px,6vw,80px); }
.promotion section.hero{ padding-block:0; }                        /* 히어로는 여백 없이 네비에 바로 붙음 */
.promotion .navbar + section{ padding-top:clamp(28px,3.5vw,44px); }  /* 네비 바로 아래 첫 섹션 */
.promotion section + section{ border-top:0; }
#catday, #new26fw, #offseason{ background:var(--sw-band); box-shadow:0 0 0 100vmax var(--sw-band); clip-path:inset(0 -100vmax); }
#oneday{ background:none; border-radius:0; margin-top:0; }

/* 섹션 헤더 + 우측 '전체 상품 보기' */
.sec-head{ align-items:flex-end; margin-bottom:clamp(16px,2.2vw,24px); }
.sec-title{ font-size:clamp(20px,2.4vw,28px); font-weight:700; letter-spacing:-.03em; line-height:1.25; color:var(--sw-ink); }
.sec-sub{ font-size:clamp(13px,1.3vw,15px); font-weight:400; color:var(--sw-sub); margin-top:6px; letter-spacing:-.01em; }
.sec-more{ flex:0 0 auto; font-size:13px; color:#444; text-decoration:none; white-space:nowrap; padding-bottom:3px; }
.sec-more::after{ content:"›"; margin-left:4px; font-size:15px; }
.sec-more:hover{ color:#000; }
.rail-top{ display:flex; justify-content:flex-end; margin:0 0 10px; }

/* 상단 네비 탭 */
.chip{ font-size:14px; font-weight:500; color:#8a8f98; height:50px; }
.chip.on{ font-weight:700; color:#111; }
@media(min-width:768px){ .nav-scroll{ gap:28px; } .chip{ font-size:15px; } }

/* 날짜 · 카테고리 칩 */
.dates{ gap:6px; margin-bottom:clamp(16px,2vw,22px); }
.date{ height:32px; line-height:32px; padding:0 13px; border:0; background:#eef0f3; color:#555; font-size:13px; font-weight:500; }
#catday .date{ background:#fff; }
.date.on, #catday .date.on{ background:#111; color:#fff; font-weight:600; }

/* 타이머: 알약 → 텍스트 */
.cd-pill{ flex:0 0 auto; white-space:nowrap; background:none; border:0; padding:0 0 3px; border-radius:0; gap:8px; }
.cd-pill::before{ content:"종료까지"; font-size:13px; font-weight:500; color:var(--sw-sub); }
.cd-pill .cd{ color:var(--sw-sale); font-size:clamp(16px,1.8vw,20px); font-weight:700; }
/* 모바일: 타이머 섹션 헤더 = [타이틀 ↔ 카운트] 한 줄 + 서브타이틀 전체폭 */
@media(max-width:767px){
  #oneday .sec-head, #catday .sec-head, #openrun .sec-head{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; column-gap:12px; }
  #oneday .sec-head > div:first-child, #catday .sec-head > div:first-child, #openrun .sec-head > div:first-child{ display:contents; }
  #oneday .sec-title, #catday .sec-title, #openrun .sec-title{ grid-column:1; grid-row:1; }
  #oneday .sec-head .cd-pill, #catday .sec-head .cd-pill, #openrun .sec-head .cd-pill{ grid-column:2; grid-row:1; padding:0; }
  #oneday .sec-sub, #catday .sec-sub, #openrun .sec-sub{ grid-column:1 / -1; grid-row:2; }
}

/* 오늘의 카테고리 + 카테고리 쿠폰 카드 */
.today-cat{ gap:10px 14px; margin-bottom:16px; align-items:center; }
.today-cat .k{ border:0; padding:0; font-size:13px; font-weight:500; color:var(--sw-sub); }
.today-cat .v{ font-size:clamp(16px,1.8vw,20px); font-weight:700; }
#catCoupons{ margin-left:0; }
/* 카테고리데이 PC: 차수 버튼(좌) ↔ 쿠폰(우) 한 줄 */
@media(min-width:768px){
  .cat-bar{ display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; }
  .cat-bar .dates{ margin-bottom:0; min-width:0; flex:1 1 auto; }
  .cat-bar .today-cat{ margin:0; flex:0 0 auto; }
}
.cat-coupon{ display:none; align-items:center; gap:10px; height:auto; padding:7px 12px 7px 14px; border:1px solid #dfe3ea; border-radius:8px; background:#fff; color:#111; text-decoration:none; box-shadow:none; white-space:nowrap; }
.cat-coupon.on{ display:inline-flex; }
.cat-coupon:hover{ border-color:#111; box-shadow:none; }
.cc-pct{ font-size:19px; font-weight:700; color:var(--sw-accent); letter-spacing:-.02em; line-height:1; }
.cc-txt{ display:flex; flex-direction:column; gap:1px; line-height:1.3; }
.cc-txt b{ font-size:12.5px; font-weight:600; color:#111; }
.cc-txt em{ font-style:normal; font-size:11.5px; color:var(--sw-sub); }
.cc-btn{ margin-left:6px; width:20px; height:20px; flex:0 0 20px; background:none; color:#111; display:inline-flex; align-items:center; justify-content:center; transition:transform .15s ease; }
.cat-coupon:hover .cc-btn{ transform:translateY(1px); }
@media(max-width:767px){ #catCoupons{ margin-left:0; flex:1 0 100%; } .cat-coupon.on{ display:flex; } .cc-btn{ margin-left:auto; } }


/* 진열 카드: 촘촘하되 정리된 레일 (MO 3.2칸 / PC 5칸) */
.item_container.custom_scroll{ --g:8px; gap:26px var(--g); grid-auto-columns:calc((100% - 3*var(--g))/3.2); }
@media(min-width:768px){ .item_container.custom_scroll{ --g:14px; gap:40px var(--g); grid-auto-columns:calc((100% - 4*var(--g))/5); } }
.item .thumbnail{ border-radius:4px; }
.item .item_txt{ margin:10px 0 0; }
.item .item_txt .name{ font-size:12.5px; font-weight:400; color:#333; line-height:1.4; -webkit-line-clamp:1; }
.item .item_price{ margin-top:4px; gap:5px; align-items:baseline; }
.item .sale_percent{ font-size:14px; font-weight:700; color:var(--sw-sale); }
.item .item_price .strike{ display:none; }
.item .item_price .price{ font-size:14px; font-weight:700; color:var(--sw-ink); }
@media(min-width:768px){
  .item .item_txt .name{ font-size:14px; }
  .item .sale_percent, .item .item_price .price{ font-size:15px; }
}

/* 좌우 화살표: 원형 버튼 → 얇은 셰브론 */
@media(min-width:768px){
  .rail-arrow{ display:flex; align-items:center; justify-content:center; width:40px; height:56px; border:0; border-radius:0; background:transparent; box-shadow:none; color:#222; padding:0; line-height:0; }
  .rail-arrow svg{ display:block; width:28px; height:28px; }
  .rail-arrow:hover{ background:transparent; color:#000; }
  .rail-arrow.prev{ left:-52px; } .rail-arrow.next{ right:-52px; }
  .rail-arrow.disabled, .rail-arrow.disabled:hover{ background:transparent; color:#cfd3d8; border:0; }
  #ranking .item_container.custom_scroll, #new26fw .item_container.custom_scroll{ overflow-x:hidden; }
}
@media(min-width:768px) and (max-width:1279px){ .rail-arrow.prev{ left:-16px; } .rail-arrow.next{ right:-16px; } }

/* 랭킹: 한 줄 가로 1→10 */
#ranking .item_container.custom_scroll{ grid-template-rows:auto; }
#ranking .item::before, #ranking .item:nth-child(-n+3)::before{ top:0; left:0; min-width:28px; height:28px; line-height:28px; padding:0 7px; font-size:13px; border-radius:4px 0 4px 0; background:#111; }

/* 원데이특가: 21일치 슬라이드 한 줄 나열(날짜순) · 오늘 슬라이드만 선명, 나머지 화이트 오퍼시티 */
#oneday .item_container.custom_scroll{ grid-template-rows:auto; grid-auto-columns:calc((100% - 1.3*var(--g))/2.3); }
@media(min-width:768px){ #oneday .item_container.custom_scroll{ grid-auto-columns:calc((100% - 3*var(--g))/4); overflow-x:hidden; } }
@media(max-width:767px){
  #oneday .item_container.custom_scroll{ --g:10px; column-gap:var(--g); grid-auto-columns:calc((100% - var(--g))/1.7); scroll-snap-type:x mandatory; overscroll-behavior-x:contain; }
  #oneday .od-slide{ scroll-snap-align:start; scroll-snap-stop:always; }
  #oneday .od-slide .item_txt{ margin-top:10px; }
  #oneday #onedayDates{ margin-bottom:14px; }
}
#oneday .od-slide{ min-width:0; }
#oneday .od-slide .item{ display:block; width:100%; }
#oneday .od-slide .thumbnail{ position:relative; }
#oneday .od-slide .thumbnail::after{ content:""; position:absolute; inset:0; z-index:2; background:#fff; opacity:.5; pointer-events:none; transition:opacity .2s ease; border-radius:inherit; }
#oneday .od-slide.is-today .thumbnail::after{ opacity:0; }
#oneday .od-slide:not(.is-today) .item_txt{ opacity:.45; }
#oneday .od-slide:not(.is-today):hover .thumbnail::after{ opacity:.3; }
/* 원데이 전용 카드(promotion2 · 일반카드와 같은 구조): 썸네일 → 날짜문구 → 상품명 → 가격 */
#oneday .od-slide .simple{ display:block; }
#oneday .od-slide .thumbnail{ aspect-ratio:1/1; overflow:hidden; border-radius:4px; background:#f2f2f2; }
#oneday .od-slide .thumbnail img{ display:block; width:100%; height:100%; object-fit:cover; }
#oneday .od-slide .item_txt{ margin:12px 0 0; padding:0; display:block; }
#oneday .od-slide .item_txt .name{ margin:0; font-size:12px; font-weight:400; line-height:1.4; color:#333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#oneday .od-slide .item_price{ margin-top:3px; display:flex; gap:5px; align-items:baseline; }
#oneday .od-slide .item_price .sale_percent{ font-size:14px; font-weight:700; color:var(--sw-sale); }
#oneday .od-slide .item_price .sale_percent .unit{ display:inline !important; font-size:inherit; font-weight:inherit; color:inherit; margin:0; }   /* 할인율 % 표시 */
#oneday .od-slide .item_price .price{ font-size:14px; font-weight:700; color:var(--sw-ink); }
@media(min-width:768px){ #oneday .od-slide .item_txt .name{ font-size:13px; } #oneday .od-slide .item_price .sale_percent, #oneday .od-slide .item_price .price{ font-size:15px; } }
.od-day{ margin:0 0 4px; font-size:11.5px; line-height:1.3; color:var(--sw-sub); letter-spacing:-.01em; }
.od-day b{ font-weight:700; color:#111; margin-right:5px; }
.od-day{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
@media(max-width:767px){ .od-extra{ display:none; } }
.is-today .od-day, .is-today .od-day b{ color:var(--sw-sale); font-weight:700; }
@media(min-width:768px){ .od-day{ font-size:12px; } }

/* BASIC css end */

