/* BASIC css start */
.best-items {
    padding: 0 15px;
}
.category-nav-wrap {
        background-color: #f4f6f8;
        border-bottom: 1px solid #ddd;
    }

    /* 1. 상단 경로 (Breadcrumb) */
    .breadcrumb {
        padding: 7px 15px;
        font-size: 11px;
        color: #333;
        letter-spacing: -0.02em;
    }
    .breadcrumb span.arrow {
        margin: 0 4px;
        color: #999;
        font-size: 12px;
    }

    /* 2. 카테고리 3x3 그리드 */
    .category-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3단 배치 */
        background-color: #fff;
        border-top: 1px solid #e5e5e5;
    }

    /* 개별 아이템 테두리 설정 (우측, 하단) */
    .category-grid li {
        border-bottom: 1px solid #ddd;
        border-right: 1px solid #ddd;
    }
    /* 3번째마다 우측 테두리 제거 */
    .category-grid li:nth-child(3n) {
        border-right: none;
    }

    .category-grid li a {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 30px;
        font-size: 12px;
        color: #333;
        letter-spacing: -0.02em;
    }

    /* ★ 선택된 아이템 (active 클래스) */
    .category-grid li.active {
        background-color: #555555;
    }
    .category-grid li.active a {
        color: #fff;
        font-weight: bold;
    }

    /* ★ 초기 숨김 처리: 10번째 아이템부터 숨김 (3x3까지만 노출) */
    .category-grid li:nth-child(n+10) {
        display: none;
    }

    /* 더보기 상태일 때 숨겨진 아이템 노출 */
    .category-grid.is-expanded li:nth-child(n+10) {
        display: block; 
    }
/* 3열 그리드에서 마지막 줄(Row)에 해당하는 li만 선택하여 하단 선 제거 */
.category-grid li:nth-child(3n+1):nth-last-child(-n+3),
.category-grid li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
    border-bottom: none;
}
    /* 3. 하단 더보기/접기 버튼 */
    .btn-toggle-more {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 25px;
        background-color: #fff;
        border: none;
        color: #999;
        font-size: 12px;
        cursor: pointer;
        gap: 2px;
        letter-spacing: -0.02em;
        border-top: 1px solid #ddd;
        margin-top: -1px;
    }
    
    /* SVG 화살표 회전 애니메이션 */
    .btn-toggle-more .icon-arrow {
        transition: transform 0.3s ease;
    }
    .btn-toggle-more.is-expanded .icon-arrow {
        transform: rotate(180deg); /* 접기 상태일 때 위로 회전 */
    }
    
    
/* 필터 */
.list_array {margin-bottom:0;}
.btn-filter-wrap {position:relative;padding:10px 8px;margin-bottom:20px;border-bottom:1px solid #4a4a4a;display: none;}
.btn-filter-wrap strong {display:inline-block; font-size:12px; color:#3b3b3b;}
.btn-filter-wrap a {position:absolute; top:10px; right:8px; width:18px; height:18px; background:url(/images/common/icon_filter.png) no-repeat left center; vertical-align:middle; font-size:0; text-indent:-9999px;}
.filter-wrap * {font-family:'Malgun Gothic'; color:#202020; word-break:break-all;}
.filter-wrap button {border:0;}
.layer-filter-wrap {}
.layer-filter-wrap .layer-filter {/* position:fixed; *//* left:0; *//* top:0; *//* width:100%; *//* height:100%; *//* background:#fff; *//* z-index:999; *//* overflow:auto; */position: relative;}
.layer-filter-wrap .layer-filter .tit {position:sticky;top:0;padding: 15px;background:#fff;border-bottom:1px solid #f0f0f0;z-index:100;}
.layer-filter-wrap .layer-filter .tit h3 {display:inline-block;font-size: 13px;font-weight:bold;margin:0;padding:0;}
.layer-filter-wrap .layer-filter .tit .total-count {display:inline-block;margin-left: 10px;color: var(--maincolor);font-size: 13px;font-weight: 400;}
.layer-filter-wrap .layer-filter .tit .btn-close {position:absolute;right:30px;top:30px;width:18px;height:18px;font-size:0px;text-indent:-9999px;background:url(/images/common/icon_close.png) no-repeat left center;display: none;}
.layer-filter-wrap .layer-filter .opt-box li {padding: 15px;border-bottom:1px solid #f0f0f0;/* background:url(/images/common/icon_arr_down.png) no-repeat 92% 25px; */font-size: 13px;font-weight:bold;cursor:pointer;}
.layer-filter-wrap .layer-filter .opt-box li.active {/* background:url(/images/common/icon_arr_up.png) no-repeat 92% 25px; */}
.layer-filter-wrap .layer-filter .opt-box li > div {margin-top: 12px;display: flex !important;flex-wrap: wrap;gap: 10px;}
.layer-filter-wrap .layer-filter .opt-box li input[type="checkbox"]{display:none;}
.layer-filter-wrap .layer-filter .opt-box li .chk-box label {position:relative;height:21px;line-height:19px;padding-left:26px;display:block;font-size: 13px;font-weight:normal;cursor:pointer;}
.layer-filter-wrap .layer-filter .opt-box li .chk-box label:before {position:absolute; left:0; top:0; width:21px; height:21px; background:url(/images/common/chkbox_off.png) no-repeat center center; content:'';}
.layer-filter-wrap .layer-filter .opt-box li .chk-box input[type="checkbox"]:checked + label:before {background:url(/images/common/chkbox_on.png) no-repeat center center;}
.layer-filter-wrap .layer-filter .opt-box li .chk-color-code {display:flex; flex-wrap:wrap; column-gap:20px; row-gap:5px; margin-top:18px; justify-content:flex-start;}
.layer-filter-wrap .layer-filter .opt-box li .chk-color-code label {display:block; width:36px; height:36px; border:3px solid #fff; border-radius:50%; font-size:13px; font-weight:normal; box-shadow:0px 0px 1px 1px #dfdfdf; cursor:pointer;}
.layer-filter-wrap .layer-filter .opt-box li .chk-color-code input[type="checkbox"]:checked + label {box-shadow:0px 0px 1px 1px #000;}
.layer-filter-wrap .layer-filter .opt-box li .chk-color-code input[type="checkbox"]:checked + label + p {color:#202020;}
.layer-filter-wrap .layer-filter .opt-box li .chk-color-code p {margin:8px 0; color:#a6a6a6; font-size:12px; text-align:center; font-weight:normal;}
.layer-filter-wrap .layer-filter .select-filter {display:flex;flex-wrap:wrap;gap:5px;margin: 20px 0 0;padding: 0 15px;}
.layer-filter-wrap .layer-filter .select-filter li {display:flex; align-items:center; padding:8px 10px; background:#f8f8f8; border-radius:5px; font-size:13px;}
.layer-filter-wrap .layer-filter .select-filter li .btn-del {width:10px; height:10px; margin-left:5px; background:url(/images/common/icon_txt_delete.png) no-repeat right center; font-size:0px; text-indent:-9999px;}
.layer-filter-wrap .layer-filter .select-filter li .color-code {display:inline-block; width:18px; height:18px; margin-right:5px; border-radius:50%;}
.layer-filter-wrap .layer-filter .select-filter li .filter-text {max-width:200px;}
.layer-filter-wrap .layer-filter .btn-wrap {display:flex;/* margin:30px; *//* border:1px solid #202020; */box-sizing:border-box;position: absolute;top: 7px;left: 135px;z-index: 100;}
.layer-filter-wrap .layer-filter .btn-wrap button {width:auto;padding: 8px 0;text-align:center;background: var(--maincolor);font-size: 12px;font-weight: 400;border-radius: 4px;}
.layer-filter-wrap .layer-filter .btn-wrap button.btn-reset {width:100%;min-width: 80px;}
.layer-filter-wrap .layer-filter .btn-wrap button.btn-search {min-width:60%; background:#202020;}
.layer-filter-wrap .layer-filter .btn-wrap button span {display:inline-block;visibility:visible;color: #fff;}
.layer-filter-wrap .layer-filter .btn-wrap button span.fc-fff {color:#fff;}

.sec-best {
    background: #f4f6f8;
    margin: 0;
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd;
}
.sec-best .items>li .thumbArea {
    border: 1px solid #ddd;
}
.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding: 25px 15px 0;
    letter-spacing: -0.02em;
}

.section-header h2 {
    font-size: 13px;
    font-weight: 400;
    color: #333333;
}

.section-header h2 span {
    position: relative;
    color: #000;
    font-weight: bold;
    font-size: 16px;
    padding-right: 10px;
    margin-right: 10px;
}
/*
.section-header h2 span::after {
    content: "";
    background: #ddd;
    width: 1px;
    height: 15px;
    position: absolute;
    top: 4px;
    right: 0;
}
*/
.product_count {
    color: #333;
    font-size: 12px;
    letter-spacing: -0.02em;
}

.product_count strong {
    font-weight: 400;
    color: #000;
}

.sort {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 25px;
}

.sec-trend {padding: 0 15px;margin-top: 25px;}

.sort select {
    color: #333;
    font-size: 12px;
    letter-spacing: -0.02em;
    border: 1px solid #ddd;
    width: 84px;
    height: 30px;
    border-radius: 30px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #ffffff;
    outline: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23333333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding: 0 15px;
} 
.sort select::-ms-expand {
    display: none;
}

.sort select:focus {
    border-color: #999999;
}

.moreButton {
    margin: 30px 0;
}


.swiper:has(> .items) .swiper-button-prev, .swiper:has(> .items) .swiper-button-next {
    background: #fff;
}

.sec-best .items>li .thumbArea {
    border: 1px solid rgba(0, 0, 0, .04);
}

.sec-best .items>li .thumbArea .thumb-link::after {
    background-color: transparent;
}







.shop-footer {margin-top:0 !important;}
.sec-best {padding-bottom: 55px !important;}
/* BASIC css end */

