/* LessthanRRP v0.18.0 — compact retail catalogue */
.bw-shop-main{padding-top:42px;padding-bottom:96px}
.bw-shop-main .woocommerce-breadcrumb,.bw-search-products-page .woocommerce-breadcrumb{margin:0 0 24px!important;color:#777!important;font-size:11px!important}
.woocommerce-products-header,.bw-catalogue-header,.bw-merch-header{max-width:860px;margin:0 0 34px}
.woocommerce-products-header__title.page-title,.bw-catalogue-header h1,.bw-merch-header h1{margin:0;font-size:clamp(38px,4.4vw,62px);line-height:.96;letter-spacing:-.052em;font-weight:900}
.woocommerce-products-header .term-description,.bw-catalogue-header p,.bw-merch-header p{max-width:690px;margin:15px 0 0;color:#5f5f5b;font-size:15px;line-height:1.6}

.bw-catalogue-toolbar{margin:0 0 38px;border-top:1px solid #e5e2dc;border-bottom:1px solid #e5e2dc;background:#fff}
.bw-catalogue-toolbar__top{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.bw-catalogue-count{margin:0;color:#4f4f4b;font-size:13px;font-weight:750}
.bw-catalogue-toolbar__actions{display:flex;align-items:center;gap:10px}
.bw-filter-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid #d9d5cd;border-radius:999px;background:#fff;color:#111;font-size:12px;font-weight:850;cursor:pointer}
.bw-filter-toggle:hover{border-color:#111}.bw-filter-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.bw-filter-toggle b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--accent-text);font-size:10px}
.bw-catalogue-sort label{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 5px 0 15px;border:1px solid #d9d5cd;border-radius:999px;background:#fff}
.bw-catalogue-sort span{color:#77736d;font-size:11px;font-weight:700}.bw-catalogue-sort select{height:40px;max-width:180px;border:0;background:transparent;color:#111;font:inherit;font-size:12px;font-weight:850;outline:none;padding-right:28px}

.bw-catalogue-filters{display:none;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;padding:20px 0;border-top:1px solid #ece9e3}
.bw-catalogue-toolbar.is-open .bw-catalogue-filters{display:grid}
.bw-filter-field{display:block;min-width:0}.bw-filter-field>span{display:block;margin:0 0 7px;font-size:9px;line-height:1;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#73736f}
.bw-filter-field select,.bw-filter-field input{width:100%;height:48px;border:1px solid #d8d2c8;border-radius:12px;background:#fff;color:#111;padding:0 38px 0 13px;font:inherit;font-size:12px;outline:none}
.bw-filter-field select:focus,.bw-filter-field input:focus{border-color:#111;box-shadow:0 0 0 2px rgba(17,17,17,.07)}
.bw-filter-price__inputs{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;align-items:center}.bw-filter-price__inputs label{position:relative;display:block}.bw-filter-price__inputs label b{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:11px}.bw-filter-price__inputs input{padding-left:25px;padding-right:8px}.bw-filter-price__inputs em{font-style:normal;color:#8a877f;font-size:12px}
.bw-filter-stock{display:flex;align-items:center;gap:11px;min-height:48px;padding:0 14px;border:1px solid #d8d2c8;border-radius:12px;background:#fff;cursor:pointer}.bw-filter-stock input{width:17px;height:17px;margin:0;accent-color:#111}.bw-filter-stock b,.bw-filter-stock small{display:block}.bw-filter-stock b{font-size:12px}.bw-filter-stock small{margin-top:2px;color:#77736d;font-size:10px}
.bw-filter-actions{display:flex;align-items:center;gap:12px}.bw-filter-apply{min-height:48px;padding:0 20px;border:1px solid var(--accent);border-radius:12px;background:var(--accent);color:var(--accent-text);font-size:11px;font-weight:900;cursor:pointer}.bw-filter-clear{font-size:11px;font-weight:850;border-bottom:1px solid currentColor;white-space:nowrap}
.bw-active-filters{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 16px}.bw-active-filters a{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid #d7d2c8;border-radius:999px;background:#fff;font-size:11px;font-weight:800}.bw-active-filters a span{font-size:15px;color:#777}

.bw-shop-main>.products,.bw-search-products-page>.products{margin-top:0!important}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:42px 24px!important;margin:0!important;padding:0!important;list-style:none!important}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;min-width:0!important}.woocommerce ul.products li.product a img{border-radius:16px!important;background:#f3f1ec!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px!important;line-height:1.3!important;letter-spacing:-.015em!important}.woocommerce ul.products li.product .price{margin-top:10px!important}
.bw-card-stock{margin:8px 0 0;color:#9b4b13;font-size:10px;font-weight:850}.bw-card-stock::before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:#9b4b13;vertical-align:1px}.bw-card-stock--out{color:#76736d}.bw-card-stock--out::before{background:#76736d}
.woocommerce nav.woocommerce-pagination{margin-top:64px;text-align:center}.woocommerce nav.woocommerce-pagination ul{display:inline-flex!important;gap:7px;border:0!important;margin:0!important;padding:0!important}.woocommerce nav.woocommerce-pagination ul li{border:0!important;float:none!important}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid!important;place-items:center;width:44px;height:44px;padding:0!important;border:1px solid #d7d2c8!important;border-radius:12px!important;background:#fff!important;color:#111!important;font-size:12px!important;font-weight:850!important}.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:#111!important;color:#fff!important;border-color:#111!important}
.woocommerce-info,.woocommerce-message,.woocommerce-error{border-top-color:#111!important;background:#f5f4f0!important;color:#111!important;padding:18px 22px!important;font-size:13px!important}
@media(max-width:1240px){.bw-catalogue-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.bw-filter-actions{grid-column:1/-1}.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:820px){.bw-shop-main{padding-top:30px;padding-bottom:72px}.bw-catalogue-toolbar{margin-bottom:28px}.bw-catalogue-toolbar__top{min-height:64px}.bw-catalogue-filters{grid-template-columns:1fr 1fr}.bw-filter-price,.bw-filter-stock,.bw-filter-actions{grid-column:1/-1}.woocommerce-products-header__title.page-title,.bw-catalogue-header h1,.bw-merch-header h1{font-size:40px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:34px 16px!important}}
@media(max-width:520px){.bw-catalogue-toolbar__top{align-items:center;gap:10px}.bw-catalogue-toolbar__actions{gap:6px}.bw-filter-toggle{padding:0 12px}.bw-catalogue-sort label{padding-left:11px}.bw-catalogue-sort label>span{display:none}.bw-catalogue-sort select{max-width:126px;font-size:11px}.bw-catalogue-filters{grid-template-columns:1fr}.bw-filter-price,.bw-filter-stock,.bw-filter-actions{grid-column:auto}.bw-filter-actions{justify-content:space-between}.bw-filter-apply{flex:1}.woocommerce ul.products{gap:30px 12px!important}.woocommerce ul.products li.product a img{border-radius:12px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important}}



/* v0.18.1 — compact expanded archive filters */
@media(min-width:821px){
  .bw-catalogue-filters{
    grid-template-columns:minmax(360px,520px) minmax(220px,320px) auto!important;
    justify-content:start;
    gap:14px!important;
    align-items:end;
    padding:18px 0!important;
  }

  /* If a brand selector is present on broader shop/search archives, keep it compact. */
  .bw-catalogue-filters > .bw-filter-field:not(.bw-filter-price){
    max-width:260px;
  }

  .bw-filter-price{
    min-width:0;
  }

  .bw-filter-price__inputs{
    grid-template-columns:minmax(140px,1fr) auto minmax(140px,1fr)!important;
    gap:8px!important;
  }

  .bw-filter-stock{
    min-height:48px!important;
    width:auto!important;
    min-width:220px;
    max-width:320px;
    padding:0 16px!important;
  }

  .bw-filter-actions{
    width:auto;
    align-self:end;
    gap:14px!important;
  }

  .bw-filter-apply{
    white-space:nowrap;
    padding:0 22px!important;
  }

  .bw-filter-clear{
    color:#66625c;
    border-bottom:1px solid #aaa59d!important;
    font-weight:750!important;
  }
}

/* When Brand + Price + Stock are all present, keep the filter panel balanced
   rather than allowing any one control to stretch across the whole row. */
@media(min-width:1241px){
  .bw-catalogue-filters:has(.bw-filter-field:not(.bw-filter-price)) {
    grid-template-columns:240px minmax(340px,460px) minmax(220px,300px) auto!important;
  }
}
