/* LWTIN catalogue: focused filters with buyer-selectable columns and rows. */
.catalog-hero{
  min-height:520px!important;
  height:auto!important;
}
.filter-studio.is-simplified,
body.catalog-christmas .filter-studio.is-simplified{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  width:min(1500px,calc(100% - 48px))!important;
  min-height:112px;
  grid-template-columns:minmax(280px,1.45fr) minmax(180px,.68fr) minmax(104px,.3fr) minmax(112px,.34fr) minmax(150px,.38fr) 64px!important;
  align-items:end!important;
  gap:14px!important;
  padding:20px!important;
  border:1px solid rgba(33,32,27,.12)!important;
  border-radius:22px!important;
  background:rgba(249,247,241,.96)!important;
  background-image:none!important;
  box-shadow:0 22px 70px rgba(31,29,24,.14)!important;
  color:#23231f!important;
  margin:24px auto 0!important;
  transform:none!important;
  backdrop-filter:blur(18px);
}
.filter-studio.is-simplified label{
  display:flex!important;
  min-width:0;
  flex-direction:column;
  gap:10px!important;
}
.filter-studio.is-simplified label:has(#columns),
.filter-studio.is-simplified label:has(#rows){display:flex!important}
.filter-studio.is-simplified label>span{
  min-height:auto!important;
  color:#767269!important;
  font-size:9px!important;
  font-weight:750!important;
  letter-spacing:.16em!important;
}
.filter-studio.is-simplified input,
.filter-studio.is-simplified select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:52px!important;
  box-sizing:border-box!important;
  border:1px solid #d6d1c6!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#23231f!important;
  font-size:13px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;
}
.filter-studio.is-simplified input:focus,
.filter-studio.is-simplified select:focus{
  outline:2px solid rgba(237,102,79,.34);
  outline-offset:2px;
  border-color:#ed664f!important;
}
.filter-studio.is-simplified button[type="submit"]{
  grid-column:auto!important;
  height:52px!important;
  margin:0!important;
  border:0!important;
  border-radius:13px!important;
  background:#24251f!important;
  color:#fff!important;
  font-size:9px!important;
  letter-spacing:.15em!important;
  white-space:nowrap;
}
.filter-studio.is-simplified button[type="submit"]:hover{background:#ed664f!important}
.filter-studio.is-simplified>a{
  display:flex!important;
  height:52px!important;
  grid-column:auto!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  border:1px solid #d6d1c6;
  border-radius:13px;
  color:#545149!important;
  font-size:9px!important;
  text-decoration:none;
}
.filter-studio.is-simplified>a:hover{border-color:#23231f;color:#23231f!important}
.visual-search{
  position:relative;
  grid-column:1/-1;
  min-width:0;
  margin-top:0;
  padding-top:2px;
}
.visual-search__details{min-width:0}
.visual-search__summary{display:flex;width:fit-content;max-width:100%;min-height:32px;align-items:center;justify-content:center;gap:9px;margin:0 auto;padding:4px 11px;border:1px solid rgba(35,35,31,.13);border-radius:999px;background:rgba(255,255,255,.55);cursor:pointer;list-style:none;transition:border-color .18s,background .18s}
.visual-search__summary::-webkit-details-marker{display:none}
.visual-search__summary:hover{border-color:rgba(237,102,79,.5);background:#fff}
.visual-search__summary-copy{display:flex;min-width:0;align-items:baseline;gap:8px}
.visual-search__summary-hint{overflow:hidden;color:#716d64;font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.visual-search__drop small{display:block;color:#888278;font-size:9px;line-height:1.35}
.visual-search__eyebrow{flex:0 0 auto;color:#ed664f;font-size:9px;font-weight:800;letter-spacing:.12em}
.visual-search__chevron{display:grid;width:19px;height:19px;flex:0 0 19px;place-items:center;border-radius:50%;background:#f1eee7;color:#514d45;font-size:14px;line-height:1;transition:transform .18s ease}
.visual-search__details[open] .visual-search__chevron{transform:rotate(180deg)}
.visual-search__body{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(180px,.8fr) 38px;align-items:center;gap:12px;width:min(100%,720px);margin:10px auto 0;padding:0 2px 2px}
.visual-search__privacy{grid-column:1/-1;color:#888278;font-size:9px;line-height:1.35;text-align:center}
.visual-search__drop{
  display:flex;
  min-width:0;
  height:58px;
  align-items:center;
  gap:10px;
  padding:7px 11px;
  overflow:hidden;
  border:1px dashed #bbb5aa;
  border-radius:13px;
  background:#fff;
  color:#2a2925;
  cursor:pointer;
  font-size:11px;
  font-weight:700;
  transition:border-color .2s,background .2s;
}
.visual-search__drop:hover,.visual-search__drop:focus,.visual-search__drop.is-dragging{outline:0;border-color:#ed664f;background:#fff8f5}
.visual-search__icon{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:10px;background:#f1eee7;color:#ed664f;font-size:23px}
.visual-search__preview{width:44px;height:44px;flex:0 0 44px;border-radius:9px;background:#f4f2ed;object-fit:contain}
.visual-search__preview[hidden]{display:none!important}
.visual-search.has-image .visual-search__icon{display:none}
.visual-search__similarity{display:flex!important;gap:8px!important}
.visual-search__similarity>span{display:flex!important;justify-content:space-between;color:#5f5b53!important;font-size:10px!important;font-weight:700!important;letter-spacing:.04em!important;text-transform:none!important}
.visual-search__similarity output{color:#ed664f;font-variant-numeric:tabular-nums}
.filter-studio.is-simplified .visual-search__similarity input[type="range"]{height:22px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;accent-color:#ed664f}
.visual-search__clear{display:none!important;width:38px;height:38px;grid-column:3!important;grid-row:2!important;place-items:center;margin:0!important;padding:0;border:1px solid #d6d1c6;border-radius:50%;background:#fff;color:#545149;font-size:18px;line-height:1;cursor:pointer}
.visual-search.has-image .visual-search__clear{display:grid!important}
.visual-search__clear:hover{border-color:#ed664f;color:#ed664f}
.visual-search__status{grid-column:1/-1;margin:0;color:#716d64;font-size:9px;line-height:1.4}
.visual-search.is-busy .visual-search__status::before{display:inline-block;width:8px;height:8px;margin-right:7px;border:1px solid #ed664f;border-right-color:transparent;border-radius:50%;content:'';animation:visual-search-spin .8s linear infinite}
@keyframes visual-search-spin{to{transform:rotate(360deg)}}
.library-head{margin-top:58px!important}
.catalog>.wrap{
  width:calc(100% - 48px)!important;
  max-width:none!important;
}
.grid{
  grid-template-columns:repeat(var(--columns,6),minmax(0,1fr))!important;
  gap:clamp(14px,1.15vw,20px) clamp(10px,.85vw,15px)!important;
}
.grid .card-shell{position:relative;z-index:0;min-width:0;transition:transform .22s ease}
.grid .card-shell:hover,.grid .card-shell:focus-within{z-index:8;transform:translateY(-3px)}
.grid .card{
  display:flex!important;
  min-width:0;
  height:auto!important;
  aspect-ratio:auto!important;
  flex-direction:column;
  overflow:hidden!important;
  border:1px solid rgba(35,35,31,.08)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 10px rgba(34,31,25,.045)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.grid .card:hover{
  z-index:2;
  border-color:rgba(35,35,31,.14)!important;
  box-shadow:0 12px 30px rgba(34,31,25,.12)!important;
  transform:none!important;
}
.grid .card-media{
  position:relative!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  flex:0 0 auto;
  overflow:hidden!important;
  border:0!important;
  background:#f8f7f3!important;
}
.grid .card-link{
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}
.grid .card img{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  transition:transform .32s ease!important;
}
.grid .card:hover img{
  transform:scale(1.025)!important;
}
.grid .card-shell .card-actions{
  position:static;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:5px;
  max-height:0;
  margin-top:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  transform:translateY(-4px);
  transition:max-height .18s ease,margin-top .18s ease,opacity .16s ease,transform .16s ease;
}
.grid .card-shell:hover .card-actions,
.grid .card-shell:focus-within .card-actions{
  max-height:60px;
  margin-top:5px;
  overflow:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.grid .card-shell .card-action{
  display:flex;
  min-width:0;
  min-height:26px;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:4px 5px;
  border:1px solid rgba(35,35,31,.08);
  border-radius:7px;
  background:rgba(255,255,255,.98);
  box-shadow:0 4px 15px rgba(26,25,22,.13);
  color:#262621;
  font:650 clamp(8px,.58vw,9px)/1.1 Arial,sans-serif;
  text-align:center;
  white-space:normal;
  cursor:pointer;
  transition:background .18s,border-color .18s;
}
.grid .card-shell .card-action:hover,
.grid .card-shell .card-action:focus-visible{background:#fff;border-color:rgba(35,35,31,.22);outline:none}
.grid .card-shell .card-action:disabled{opacity:.45;cursor:not-allowed}
.grid .card-shell .card-action--favorite.is-favorite{background:#25251f;border-color:#25251f;color:#fff}
.grid .card-shell .card-action__icon{flex:0 0 auto;font-size:1em;line-height:1}
#product-grid .card-shell .card-action--similar>.card-action__search-icon{display:block!important;width:17px!important;height:17px!important;min-width:17px;min-height:17px;flex:0 0 17px;fill:none!important;stroke:currentColor!important;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){#product-grid .card-shell .card-action--similar>.card-action__search-icon{width:19px!important;height:19px!important;min-width:19px;min-height:19px;flex-basis:19px;stroke-width:2.5}}
.grid .card-shell .card-action>span:last-child{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
@media(hover:none){
  .grid .card-shell{display:flex;flex-direction:column}
  .grid .card-shell .card-actions{max-height:none;margin-top:6px;overflow:visible;opacity:1;pointer-events:auto;transform:none}
}
.grid .card .card-hover{
  position:static!important;
  display:flex!important;
  width:100%!important;
  height:auto!important;
  min-height:104px;
  flex:1 1 auto;
  flex-direction:column;
  padding:11px 12px 12px!important;
  background:#fff!important;
  color:#23231f!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  pointer-events:auto!important;
}
.grid .card .card-hover h2{
  display:-webkit-box;
  min-height:2.7em;
  margin:0 0 7px!important;
  overflow:hidden;
  color:#23231f!important;
  font-size:clamp(10px,.78vw,13px)!important;
  font-weight:650!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.grid .card .card-details{
  display:flex!important;
  min-height:19px;
  gap:4px!important;
  margin:0 0 9px!important;
  overflow:hidden;
  flex-wrap:nowrap!important;
}
.grid .card .card-details span{
  max-width:42%;
  overflow:hidden;
  padding:3px 6px!important;
  border:0!important;
  border-radius:4px!important;
  background:#f1efe9!important;
  color:#77736a!important;
  font-size:7px!important;
  line-height:1.25!important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.grid .card .card-more{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:auto!important;
  padding-top:8px!important;
  border-top:1px solid rgba(35,35,31,.08)!important;
  color:#23231f!important;
  font-size:8px!important;
  font-weight:750!important;
  letter-spacing:.1em!important;
  text-decoration:none!important;
  text-transform:uppercase;
}
.grid .card .card-more span{color:#ed664f!important}
.grid .visual-reference-card{min-width:0;overflow:hidden;border:1px solid rgba(35,35,31,.08);border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(34,31,25,.045)}
.grid .visual-reference-card__media{width:100%;aspect-ratio:1/1;background:#fff}
.grid .visual-reference-card__media img{display:block;width:100%;height:100%;object-fit:contain}
.grid .visual-reference-card__label{padding:10px 12px;color:#716d64;font-size:clamp(8px,.64vw,10px);font-weight:650;line-height:1.3}
body.catalog-christmas .library-head{margin-top:58px!important}
@media(max-width:1200px){
  .filter-studio.is-simplified,
  body.catalog-christmas .filter-studio.is-simplified{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .filter-studio.is-simplified label:has(#q),
  .filter-studio.is-simplified label:has(#season){grid-column:span 2}
}
@media(max-width:900px){
  .catalog>.wrap{
    width:calc(100% - 24px)!important;
  }
  .filter-studio.is-simplified,
  body.catalog-christmas .filter-studio.is-simplified{
    width:calc(100% - 36px)!important;
    grid-template-columns:1fr 1fr!important;
    padding:16px!important;
  }
  .filter-studio.is-simplified label:has(#q),
  .filter-studio.is-simplified label:has(#season){grid-column:1/-1}
  .filter-studio.is-simplified button[type="submit"],
  .filter-studio.is-simplified>a{grid-column:auto!important}
  .visual-search__body{grid-template-columns:1fr 1fr 36px}
  .visual-search__clear{grid-column:3!important;grid-row:2!important}
  .library-head{margin-top:46px!important}
  body.catalog-christmas .library-head{margin-top:46px!important}
}
@media(max-width:800px){
  .catalog-hero{
    min-height:560px!important;
  }
}
@media(max-width:560px){
  .filter-studio.is-simplified,
  body.catalog-christmas .filter-studio.is-simplified{
    grid-template-columns:1fr 1fr!important;
  }
  .filter-studio.is-simplified label:has(#q),
  .filter-studio.is-simplified label:has(#season){grid-column:1/-1}
  .filter-studio.is-simplified label:has(#columns),
  .filter-studio.is-simplified label:has(#rows){grid-column:auto}
  .filter-studio.is-simplified button[type="submit"]{grid-column:1/2!important}
  .filter-studio.is-simplified>a{grid-column:2/3!important}
  .visual-search__body{grid-template-columns:1fr 36px;gap:12px}
  .visual-search__summary{max-width:calc(100% - 8px)}
  .visual-search__drop,.visual-search__status{grid-column:1/-1}
  .visual-search__privacy{grid-column:1/-1}
  .visual-search__similarity{grid-column:1/2}
  .visual-search__clear{grid-column:2/3!important;grid-row:3!important}
  .library-head{margin-top:38px!important}
  .grid{gap:12px 9px!important}
  .grid .card .card-hover{min-height:96px;padding:9px 10px 10px!important}
  .grid .card .card-hover h2{font-size:10px!important}
  body.catalog-christmas .library-head{margin-top:38px!important}
}

/* 2026-10-15: dedicated product-library hero (seasonal landing keeps its own art) */
body:not(.catalog-christmas) .catalog-hero{
  background-image:
    linear-gradient(90deg,rgba(20,19,16,.82) 0%,rgba(20,19,16,.52) 34%,rgba(20,19,16,.16) 68%,rgba(20,19,16,.06) 100%),
    url('/site-assets/performance/20261023-3009daa96718-1600w.webp')!important;
  background-position:center 50%!important;
  background-size:cover!important;
}
@media(max-width:800px){
  body:not(.catalog-christmas) .catalog-hero{
    background-position:58% 50%!important;
  }
}

/* Marketplace grid: generous storefront gutters with a tighter product rhythm. */
.catalog{
  --catalog-card-gap:clamp(10px,.85vw,15px);
  --catalog-edge-gutter:clamp(48px,5vw,80px);
  padding-bottom:var(--catalog-edge-gutter)!important;
}
.catalog>.wrap{
  width:100%!important;
  max-width:none!important;
  margin-inline:auto!important;
}
.catalog .grid{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:var(--catalog-edge-gutter)!important;
  gap:var(--catalog-card-gap)!important;
}
.catalog .pagination{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  margin-top:var(--catalog-card-gap)!important;
  margin-bottom:0!important;
  padding-inline:clamp(8px,2.5vw,48px)!important;
  overflow-x:auto;
  scrollbar-width:none;
}
.product-modal{width:min(1420px,94vw);height:90dvh;max-width:94vw;max-height:94dvh;margin:auto;padding:0;border:1px solid #dedbd4;border-radius:16px;background:#fff;color:#292a23;overflow:hidden;box-shadow:0 24px 90px #0004}
.product-modal[open]{display:flex;flex-direction:column}
.product-modal::backdrop{background:#17171199;backdrop-filter:blur(3px)}
.product-modal__bar{display:flex;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid #e7e3dc;flex-shrink:0;font:14px/1.4 Arial,sans-serif}
.product-modal__bar>span{font-weight:600;margin-inline-end:auto}
.product-modal__bar>a{font-size:12px;color:inherit}
.product-modal__bar>button{font:14px/1.4 Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important;min-height:36px!important;padding:6px 12px!important;border:1px solid #d8d3ca!important;border-radius:8px!important;background:#f4f2ee!important;color:#292a23!important;cursor:pointer}
.product-modal__frame{width:100%;flex:1;min-height:0;border:0;visibility:hidden;background:white}
.product-modal__status{position:absolute;inset:70px 20px auto;text-align:center;font:14px/1.5 Arial,sans-serif}
@media(max-width:600px){.product-modal{width:96vw;max-width:96vw;height:94dvh;border-radius:10px}.product-modal__bar{padding:8px 12px;gap:10px}.product-modal__bar>a{max-width:100px}}
.catalog .pagination::-webkit-scrollbar{
  display:none;
}
.catalog .pagination .page-ellipsis{
  flex:0 0 28px;
  min-width:28px;
  text-align:center;
}
@media(max-width:900px){
  .catalog{--catalog-edge-gutter:24px}
}
@media(max-width:560px){
  .catalog{
    --catalog-card-gap:9px;
    --catalog-edge-gutter:12px;
  }
}
