@charset "UTF-8";
/* ==================================================
   NAVIPLUS — ECWID GRID
   PC: 4 columns
   Mobile: main categories 3 / subcategories & products 2
   Card names: maximum 3 lines
   ================================================== */
/* 1. Desktop / default columns */
.ec-size .ec-store .grid__categories .grid-category:nth-child(n+1),
.ec-size .ec-store .grid__products .grid-product:nth-child(n+1) {
  box-sizing: border-box !important;
  width: 25% !important;
  min-width: 0 !important;
  max-width: 25% !important;
  flex-basis: 25% !important;
  clear: none !important;
}

/* 2. Remove previous fixed title heights */
.ec-size .ec-store .grid-category__title,
.ec-size .ec-store .grid-product__title {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  white-space: normal !important;
  overflow: visible !important;
}

/* 3. Category names: maximum 3 lines */
.ec-size .ec-store .grid-category__title-inner {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 4.2em !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  text-align: center !important;
}

/* 4. Product names: maximum 3 lines */
.ec-size .ec-store .grid-product__title-inner {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 4.2em !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
}

/* 5. Mobile storefront */
@media screen and (max-width: 767px) {
  /* All subcategories: 2 per row */
  .ec-size .ec-store .grid__categories .grid-category:nth-child(n+1) {
    width: 50% !important;
    min-width: 0 !important;
    max-width: 50% !important;
    flex-basis: 50% !important;
    clear: none !important;
  }
  /* First main category page only: 3 per row */
  .ec-size .ec-store.ec-store__category-page--0
.grid__categories .grid-category:nth-child(n+1) {
    width: 33.333333% !important;
    min-width: 0 !important;
    max-width: 33.333333% !important;
    flex-basis: 33.333333% !important;
    clear: none !important;
  }
  /* Product listings: 2 per row */
  .ec-size .ec-store .grid__products .grid-product:nth-child(n+1) {
    width: 50% !important;
    min-width: 0 !important;
    max-width: 50% !important;
    flex-basis: 50% !important;
    clear: none !important;
  }
  /* Mobile category names */
  .ec-size .ec-store .grid-category__title-inner {
    font-size: 14px !important;
    line-height: 1.4 !important;
    max-height: 4.2em !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
  }
  /* Mobile product names */
  .ec-size .ec-store .grid-product__title-inner {
    font-size: 14px !important;
    line-height: 1.4 !important;
    max-height: 4.2em !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
  }
}

/* Mobile: category heading and breadcrumb limits */
@media screen and (max-width: 767px) {
  /* Large category heading: maximum 3 lines */
  .ec-size .ec-store .ec-page-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
    font-size: 24px !important;
    line-height: 1.3 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 3.9em !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }
  /* Breadcrumb navigation: maximum 2 lines */
  .ec-size .ec-store .breadcrumbs {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 3em !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* MOBILE — prevent heading / breadcrumb / toolbar overlap */
@media screen and (max-width: 767px) {
  /* Heading: reserve its own space */
  .ec-size .ec-store .ec-page-title {
    position: static !important;
    float: none !important;
    flex-shrink: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 3.9em !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    padding-bottom: 0 !important;
  }
  /* Breadcrumb: separate full-width row */
  .ec-size .ec-store .breadcrumbs {
    display: block !important;
    position: static !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    height: auto !important;
    min-height: 20px !important;
    max-height: none !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    font-size: 13px !important;
    line-height: 20px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }
  /* Refine / Sort: separate row above cards */
  .ec-size .ec-store .ec-grid .grid__wrap {
    clear: both !important;
  }
  .ec-size .ec-store .ec-grid .grid__header {
    position: static !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    height: auto !important;
    min-height: 40px !important;
    margin-top: 12px !important;
    margin-bottom: 16px !important;
  }
  /* Leave space above category / product cards */
  .ec-size .ec-store .grid__categories,
.ec-size .ec-store .grid__products {
    clear: both !important;
    margin-top: 16px !important;
  }
}

@media screen and (max-width: 767px) {
  /* 상단 제목: 최대 2줄 */
  .ec-size .ec-store .ec-page-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    font-size: 24px !important;
    line-height: 1.3 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 2.6em !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    margin-bottom: 24px !important;
    padding-bottom: 0 !important;
    flex-shrink: 0 !important;
  }
  /* 정렬 메뉴 위 간격 */
  .ec-size .ec-store .ec-grid .grid__header {
    position: static !important;
    clear: both !important;
    margin-top: 16px !important;
    margin-bottom: 12px !important;
  }
}

@media screen and (max-width: 767px) {
  .ec-size .ec-store .ec-page-title {
    font-family: inherit !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: normal !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 2.8em !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: ellipsis !important;
    margin-bottom: 24px !important;
  }
}

@media screen and (max-width: 767px) {
  /* 제목 안쪽 요소까지 글자 크기 통일 */
  .ec-size .ec-store .ec-page-title,
.ec-size .ec-store .ec-page-title * {
    font-family: inherit !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 25px !important;
    letter-spacing: normal !important;
  }
  /* 바깥 제목 영역: 2줄 + ... */
  .ec-size .ec-store .ec-page-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 50px !important;
    padding: 0 !important;
    margin: 0 0 24px !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  /* 안쪽 제목의 기본 여백과 높이 제거 */
  .ec-size .ec-store .ec-page-title * {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    white-space: normal !important;
  }
}

/* 모바일 카테고리 이미지 영역 통일 */
@media screen and (max-width: 767px) {
  .ec-size .ec-store .grid-category__image {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  .ec-size .ec-store .grid-category__bg,
.ec-size .ec-store .grid-category__bg-image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .ec-size .ec-store img.grid-category__picture-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}

/* NAVIPLUS — PC 상품 목록을 한 줄에 3개 표시 */
@media screen and (min-width: 960px) {
  .ec-size .ec-store .grid__products .grid-product:nth-child(n+1) {
    box-sizing: border-box !important;
    width: 33.333333% !important;
    min-width: 0 !important;
    max-width: 33.333333% !important;
    flex-basis: 33.333333% !important;
  }
}

/* NAVIPLUS — PC 왼쪽 검색 필터 확대 */
@media screen and (min-width: 960px) {
  /* 필터 영역의 기본 글자 */
  .ec-size .ec-store .ec-filters,
.ec-size .ec-store .ec-filters div,
.ec-size .ec-store .ec-filters span,
.ec-size .ec-store .ec-filters a,
.ec-size .ec-store .ec-filters label,
.ec-size .ec-store .ec-filters button {
    font-size: 16px !important;
  }
  /* Filters / Search by phrase / Category 제목 */
  .ec-size .ec-store .ec-filters .ec-filter__title,
.ec-size .ec-store .ec-filters .ec-header-h6 {
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
  }
  /* 왼쪽 검색 입력창 */
  .ec-size .ec-store .ec-filters input[type="text"],
.ec-size .ec-store .ec-filters input[type="search"] {
    box-sizing: border-box !important;
    font-size: 16px !important;
    height: 38px !important;
    min-height: 38px !important;
    line-height: normal !important;
  }
}

/* PC 상품 제목 — 16px / 최대 2줄 / 말줄임 */
@media screen and (min-width: 960px) {
  .ec-size .ec-store .grid-product__title-inner {
    font-size: 16px !important;
    line-height: 1.45 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    max-height: 2.9em !important;
  }
}

/* PC — 왼쪽 필터 + 상품 제목 18px */
@media screen and (min-width: 960px) {
  /* 왼쪽 필터 */
  .ec-size .ec-store .ec-filters,
.ec-size .ec-store .ec-filters div,
.ec-size .ec-store .ec-filters span,
.ec-size .ec-store .ec-filters a,
.ec-size .ec-store .ec-filters label,
.ec-size .ec-store .ec-filters button {
    font-size: 18px !important;
  }
  /* 왼쪽 검색창 */
  .ec-size .ec-store .ec-filters input[type="text"],
.ec-size .ec-store .ec-filters input[type="search"] {
    box-sizing: border-box !important;
    font-size: 18px !important;
    height: 42px !important;
    min-height: 42px !important;
    line-height: normal !important;
  }
  /* 상품 제목 — 최대 2줄 */
  .ec-size .ec-store .grid-product__title-inner {
    font-size: 18px !important;
    line-height: 1.45 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    max-height: 2.9em !important;
  }
}
