:root{
  --lk-bg:#f7f1e7;
  --lk-ink:#2f2f2f;
  --lk-ink-soft:#5e574f;
  --lk-border: rgba(222,214,203,1);
  --lk-card: rgba(255,255,255,.28);
  --lk-dark:#4a3f35;
  --lk-dark-2:#3f3a32;
}

.collection-page{ background:var(--lk-bg); color:var(--lk-ink); }
.collection-page *{ box-sizing:border-box; }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0;
}

/* Hero */
.collection-hero{ max-width:1100px; margin:0 auto; padding:44px 24px 26px; }
.collection-kicker{
  font-family:Inter,sans-serif; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--lk-ink-soft);
}
.collection-title{
  font-family:"Cormorant Garamond", serif;
  font-size:52px; line-height:1.05; margin:10px 0 8px; color:#2F2A24;
}
.collection-sub{
  font-family:Inter,sans-serif; font-size:14px; line-height:1.85; color:var(--lk-ink-soft);
  margin:0 0 18px; max-width:720px;
}

/* Controls */
.collection-controls{
  display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between;
  margin-top:14px;
}
.collection-search{
  display:flex; gap:10px; align-items:center;
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.25);
  padding:10px 12px;
  min-width:280px;
}
.collection-search input{
  border:0; outline:0; background:transparent;
  font-family:Inter,sans-serif; font-size:14px; width:100%;
}
.collection-right-controls{
  display:flex; flex-wrap:wrap; gap:10px; align-items:center;
}
.collection-count{
  font-family:Inter,sans-serif; font-size:12px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--lk-ink-soft);
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  padding:10px 12px;
}
.collection-sort select{
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  padding:10px 12px;
  font-family:Inter,sans-serif;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#3A342D;
  outline:none;
}

/* Filter toggle (mobile) */
.filter-toggle{
  display:none;
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  padding:10px 12px;
  font-family:Inter,sans-serif;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
}

/* Active chips */
.active-filters{
  display:flex; flex-wrap:wrap; gap:10px;
  margin-top:14px;
}
.chip{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  padding:8px 10px;
  border-radius:999px;
  font-family:Inter,sans-serif;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#3A342D;
}
.chip button{
  width:22px; height:22px;
  border:1px solid var(--lk-border);
  background:transparent;
  border-radius:999px;
  cursor:pointer;
  font-size:14px;
  line-height:1;
  color:#3A342D;
}

/* Layout */
.collection-body{
  max-width:1100px;
  margin:0 auto;
  padding:26px 24px 70px;
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:22px;
  align-items:start;
  position:relative;
}

/* Filters */
.filters{
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.20);
  padding:16px;
  position:sticky;
  top:20px;
}
.filters-top{
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:10px;
}
.filters h3{
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-size:26px;
  color:#2F2A24;
}
.filters-close{
  display:none;
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  width:34px; height:34px;
  border-radius:999px;
  cursor:pointer;
  font-size:20px;
  line-height:1;
}
.group{ margin:12px 0 14px; }
.group strong{
  display:block;
  font-family:Inter,sans-serif;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--lk-ink-soft);
  margin-bottom:10px;
}
.group label{
  display:flex;
  gap:10px;
  align-items:center;
  font-family:Inter,sans-serif;
  font-size:14px;
  color:#3A342D;
  margin:8px 0;
}
.clear-filters{
  width:100%;
  border:1px solid rgba(63,58,50,.9);
  background:#3F3A32;
  color:#fff;
  font-family:Inter,sans-serif;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:12px 14px;
  cursor:pointer;
  transition:.2s ease;
}
.clear-filters:hover{ background:#2f2a24; }
.filters-note{
  margin-top:12px;
  font-family:Inter,sans-serif;
  font-size:12px;
  line-height:1.8;
  color:var(--lk-ink-soft);
}

/* Overlay for mobile filters */
.filters-overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(47,42,36,.45);
  z-index:60;
}

/* Grid */
.collection-grid{
  display:grid;
  /*
    Force a true multi-column layout on desktop.
    (Some host/plugin CSS can interfere with auto-fit + minmax and collapse to 1 column.)
  */
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:22px;
  width:100%;
  align-items:start;
}

/* Shop landing can render multiple collection sections. */
.collection-grid.is-sections{
  display:flex;
  flex-direction:column;
  gap:34px;
}

.collection-section{ }
.collection-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:2px 0 14px;
}
.collection-section-title{
  font-family:"Cormorant Garamond", serif;
  font-size:36px;
  line-height:1.1;
  margin:0;
  color:#2F2A24;
}
.collection-section-sub{
  font-family:Inter,sans-serif;
  font-size:13px;
  line-height:1.8;
  color:var(--lk-ink-soft);
  margin:8px 0 0;
  max-width:720px;
}
.collection-section-link{ white-space:nowrap; }

.collection-section-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:22px;
  width:100%;
  align-items:start;
}

/* Hard-enforce section grid (override-safe) */
.collection-grid.is-sections .collection-section-grid{
  display:grid !important;
  justify-items:stretch;
}
.collection-grid.is-sections .collection-section-grid > *{ min-width:0; }
.collection-grid.is-sections .collection-section-grid .col-card{ width:100%; }

/* Woo default loop support (if any template still outputs <ul class="products">) */
.collection-grid ul.products{
  list-style:none;
  margin:0;
  padding:0;
  display:contents; /* makes <li> behave like direct grid children */
}
.collection-grid ul.products > li{ list-style:none; margin:0; }

/* Card */
.col-card{
  position:relative;
  border:1px solid var(--lk-border);
  background: var(--lk-card);
  overflow:hidden;
}
.col-media img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
}
.col-meta{ padding:12px 12px 16px; text-align:center; }
.col-meta .name{
  font-family:"Cormorant Garamond", serif;
  font-size:22px;
  line-height:1.25;
  color:#2F2A24;
  margin:0;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.meta-row{
  display:flex;
  gap:8px;
  justify-content:center;
  align-items:center;
  margin:6px 0 8px;
}
.badge{
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.18);
  padding:6px 10px;
  border-radius:999px;
  font-family:Inter,sans-serif;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--lk-ink-soft);
}
.badge-soft{ background: transparent; }
.dot{ color:var(--lk-ink-soft); opacity:.7; }
.col-meta .price{
  font-family:"Cormorant Garamond", serif;
  font-size:18px;
  color:#3A342D;
}

/* Hover add */
.hover-add{
  position:absolute;
  left:12px; right:12px; bottom:12px;
  opacity:0;
  transform:translateY(8px);
  transition:.2s ease;
}
.col-card:hover .hover-add{ opacity:1; transform:translateY(0); }
.hover-add .btn{ width:100%; }

/* Empty state */
.collection-grid .empty{ grid-column:1/-1; }
.collection-pagination{ grid-column:1/-1; display:flex; justify-content:center; margin-top:24px; }
.empty-card{
  border:1px solid var(--lk-border);
  background: rgba(255,255,255,.22);
  padding:22px;
  text-align:center;
}
.empty-title{
  font-family:"Cormorant Garamond", serif;
  font-size:28px;
  color:#2F2A24;
  margin-bottom:6px;
}
.empty-copy{
  font-family:Inter,sans-serif;
  font-size:14px;
  line-height:1.85;
  color:var(--lk-ink-soft);
  margin-bottom:14px;
}

/* Dark filled luxury button */
.lk-btn-dark{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;min-height:44px;
  background:#3F3A32;color:#fff;border:1px solid rgba(63,58,50,.9);
  font-family:Inter,sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;
  cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.lk-btn-dark:hover{
  background:#2f2a24;border-color:rgba(47,42,36,.95);
  transform:translateY(-1px); box-shadow:0 10px 24px rgba(63,58,50,.18);
}
.lk-btn-dark:active{ transform:translateY(0); box-shadow:0 6px 14px rgba(63,58,50,.14); }

/* Responsive */
@media(max-width:1100px){
  .collection-body{ grid-template-columns: 260px 1fr; }
}
@media(max-width:980px){
  .collection-body{ grid-template-columns: 1fr; }
  .collection-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .collection-section-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .filters{ position:fixed; top:0; right:-100%; height:100vh; width:min(360px, 92vw); z-index:70; transition:.25s ease; overflow:auto; }
  .filters.is-open{ right:0; }
  .filters-overlay{ display:block; opacity:0; pointer-events:none; transition:.2s ease; }
  .filters-overlay.is-on{ opacity:1; pointer-events:auto; }
  .filters-close{ display:inline-flex; align-items:center; justify-content:center; }
  .filter-toggle{ display:inline-flex; }
}


@media(max-width:620px){
  .collection-grid{ grid-template-columns: 1fr; }
  .collection-section-grid{ grid-template-columns: 1fr; }
  .collection-section-head{ align-items:flex-start; flex-direction:column; }
}

/* Discovery Set minis: avoid overly-cropped thumbnails (use contain + gentle padding). */
.collection-page .col-card.is-discovery .col-media {
  background: rgba(0,0,0,0.02);
}
.collection-page .col-card.is-discovery .col-media img {
  object-fit: contain;
  padding: 14px;
  height: 210px;
}
