/* ===========================================================
   Product category SEO archives
   =========================================================== */
.bf-cat-hero{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(1.25rem,4vw,3rem);
  align-items:center;
  margin:0 0 1.5rem;
  padding:clamp(1.5rem,4vw,3rem);
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-cat-hero__copy{min-width:0}
.bf-cat-hero__eyebrow{
  margin:0 0 .6rem;
  color:var(--bf-forest);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.bf-cat-hero__title{margin:0;max-width:12ch}
.bf-cat-hero__intro,.bf-cat-seo-intro{color:var(--bf-stone-deep)}
.bf-cat-hero__intro p,.bf-cat-seo-intro p,.bf-cat-guide p,.bf-cat-bottom-copy p,.bf-cat-standard p{margin-top:0}
.bf-cat-hero__trust{
  display:inline-flex;
  margin:1rem 0 0;
  padding:.55rem .85rem;
  border-radius:var(--bf-radius);
  background:var(--bf-mint);
  color:var(--bf-green-ink);
  font-size:.9rem;
  font-weight:700;
}
.bf-cat-hero__media{
  margin:0;
  background:var(--bf-mint);
  border-radius:var(--bf-radius);
  overflow:hidden;
  aspect-ratio:4/3;
}
.bf-cat-hero__media img{display:block;width:100%;height:100%;object-fit:contain;padding:1rem}
.bf-cat-quicklinks,.bf-cat-chiprow{display:flex;flex-wrap:wrap;gap:.5rem}
.bf-cat-quicklinks{margin-top:1rem}
.bf-cat-quicklinks a,.bf-cat-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:.45rem .8rem;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  background:#fff;
  color:var(--bf-graphite);
  font-size:.9rem;
  font-weight:700;
  text-decoration:none;
}
.bf-cat-quicklinks a:hover,.bf-cat-chip:hover{border-color:var(--bf-green);color:var(--bf-forest)}
.bf-cat-badges{
  display:grid;
  grid-template-columns:1fr;
  gap:.75rem;
  margin:0 0 1.5rem;
}
.bf-cat-badge{
  padding:1rem;
  background:var(--bf-mint);
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-cat-badge strong{
  display:block;
  color:var(--bf-green-ink);
  font-family:var(--wp--preset--font-family--heading);
  font-size:1.1rem;
  line-height:1.1;
}
.bf-cat-badge span{display:block;margin-top:.25rem;color:var(--bf-stone-deep);font-size:.9rem}
.bf-cat-seo-intro{max-width:760px;margin:0 0 1.5rem}
.bf-cat-panel,.bf-cat-content,.bf-cat-featured,.bf-cat-faq,.bf-cat-related,.bf-cat-standard{margin:2rem 0}
.bf-cat-panel{
  padding:1.25rem;
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-cat-panel h2,.bf-cat-content h2,.bf-cat-featured h2,.bf-cat-faq h2,.bf-cat-related h2,.bf-cat-standard h2{margin-top:0}
.bf-cat-panel__head p{margin-top:-.25rem;color:var(--bf-stone-deep);font-size:.92rem}
.bf-cat-filter{padding-top:1rem;border-top:1px solid var(--bf-hairline)}
.bf-cat-filter:first-of-type{border-top:0;padding-top:0}
.bf-cat-filter h3{margin:.25rem 0 .6rem;font-size:1rem}
.bf-cat-brands .bf-cat-chip{background:var(--bf-paper)}
.bf-cat-guide,.bf-cat-bottom-copy{
  padding:1.25rem;
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-cat-content{display:grid;gap:1rem}
.bf-cat-featured__grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1rem;
  padding:0;
  margin:0;
  list-style:none;
}
.bf-cat-faq details{
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  margin:.65rem 0;
  padding:0;
}
.bf-cat-faq summary{cursor:pointer;padding:1rem;font-weight:700;color:var(--bf-graphite)}
.bf-cat-faq details>div{padding:0 1rem 1rem;color:var(--bf-stone-deep)}
.bf-cat-related__grid{display:grid;grid-template-columns:1fr;gap:.75rem}
.bf-cat-related__grid a{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:1rem;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  background:#fff;
  color:var(--bf-graphite);
  text-decoration:none;
}
.bf-cat-related__grid a:hover{border-color:var(--bf-green)}
.bf-cat-related__grid span{font-family:var(--wp--preset--font-family--heading);font-weight:600}
.bf-cat-related__grid small{color:var(--bf-stone-deep)}
.bf-cat-standard{
  padding:clamp(1.5rem,4vw,2.5rem);
  background:var(--bf-mint);
  border-radius:var(--bf-radius);
  text-align:center;
}
.bf-cat-standard p{
  max-width:680px;
  margin-inline:auto;
  color:var(--bf-green-ink);
  font-weight:600;
}

@media (min-width:700px){
  .bf-cat-hero{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr)}
  .bf-cat-badges{grid-template-columns:repeat(3,1fr)}
  .bf-cat-content{grid-template-columns:1fr 1fr}
  .bf-cat-related__grid{grid-template-columns:repeat(3,1fr)}
  .bf-cat-related__grid a{display:block}
  .bf-cat-related__grid small{display:block;margin-top:.25rem}
}
@media (min-width:900px){
  .bf-cat-featured__grid{grid-template-columns:repeat(4,1fr)}
}

/* Product category visual refinement */
.bf-shop.tax-product_cat .content-area.alignwide{
  max-width:none;
  margin-inline:auto;
}
.bf-shop.tax-product_cat .woocommerce-breadcrumb{
  margin:0 0 .9rem;
  color:var(--bf-stone-deep);
  font-size:.82rem;
}
.bf-shop.tax-product_cat .woocommerce-breadcrumb a{
  color:var(--bf-stone-deep);
  text-decoration:none;
}
.bf-shop.tax-product_cat .woocommerce-breadcrumb a:hover{
  color:var(--bf-forest);
  text-decoration:underline;
}
.bf-shop.tax-product_cat .woocommerce-products-header{
  margin-bottom:1.35rem;
}
.bf-shop.tax-product_cat .woocommerce-notices-wrapper{
  margin:0;
}
.bf-shop.tax-product_cat .woocommerce-result-count,
.bf-shop.tax-product_cat .woocommerce-ordering{
  margin:0 0 1rem;
}
.bf-shop.tax-product_cat .woocommerce-result-count{
  float:none;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  color:var(--bf-stone-deep);
  font-size:.9rem;
}
.bf-shop.tax-product_cat .woocommerce-ordering{
  float:none;
  display:flex;
  justify-content:flex-start;
}
.bf-shop.tax-product_cat .woocommerce-ordering select{
  min-height:38px;
  max-width:100%;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  background:#fff;
  color:var(--bf-graphite);
  padding:.45rem 2rem .45rem .9rem;
  font:inherit;
  font-size:.9rem;
}
.bf-shop.tax-product_cat .woocommerce-result-count + .woocommerce-ordering{
  margin-top:-.25rem;
}

.bf-cat-hero{
  position:relative;
  overflow:hidden;
  margin:0 0 1.25rem;
  padding:clamp(1.4rem,4vw,3.25rem);
  background:
    radial-gradient(circle at 92% 10%, rgba(93,184,35,.13), transparent 30%),
    linear-gradient(135deg, #fff 0%, var(--bf-paper) 58%, var(--bf-mint) 100%);
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  box-shadow:0 10px 30px rgba(20,20,20,.05);
}
.bf-cat-hero__eyebrow{
  color:var(--bf-forest);
  font-size:.72rem;
  letter-spacing:.16em;
}
.bf-cat-hero__title{
  max-width:14ch;
  font-size:clamp(2rem,4.6vw,4.45rem);
  line-height:.98;
  letter-spacing:-.02em;
}
.bf-cat-hero__intro{
  max-width:58ch;
  margin-top:1rem;
  font-size:1rem;
}
.bf-cat-hero__intro p{
  margin-bottom:0;
}
.bf-cat-hero__trust{
  max-width:100%;
  margin-top:1rem;
  border:1px solid rgba(8,36,15,.08);
  box-shadow:0 2px 10px rgba(20,20,20,.04);
}
.bf-cat-hero__media{
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid rgba(230,236,224,.85);
  box-shadow:inset 0 0 0 8px var(--bf-paper);
}
.bf-cat-hero__media img{
  padding:clamp(1rem,3vw,2rem);
  filter:drop-shadow(0 12px 18px rgba(20,20,20,.08));
}

.bf-cat-quicklinks{
  gap:.45rem;
}
.bf-cat-quicklinks a{
  background:var(--bf-graphite);
  border-color:var(--bf-graphite);
  color:#fff;
}
.bf-cat-quicklinks a:hover{
  background:var(--bf-green);
  border-color:var(--bf-green);
  color:var(--bf-green-ink);
  text-decoration:none;
}
.bf-cat-badges{
  margin:0 0 1.25rem;
}
.bf-cat-badge{
  background:#fff;
  border-color:var(--bf-hairline);
  box-shadow:0 3px 14px rgba(20,20,20,.04);
}
.bf-cat-badge strong{
  color:var(--bf-forest);
}
.bf-cat-seo-intro{
  max-width:860px;
  margin:0 0 1.25rem;
  padding-left:1rem;
  border-left:3px solid var(--bf-green);
  color:var(--bf-stone-deep);
}

.bf-cat-panel{
  padding:clamp(1rem,3vw,1.5rem);
  background:#fff;
  box-shadow:0 4px 18px rgba(20,20,20,.04);
}
.bf-cat-panel__head{
  display:flex;
  flex-direction:column;
  gap:.25rem;
  margin-bottom:1rem;
}
.bf-cat-panel__head h2{
  margin-bottom:0;
}
.bf-cat-panel__head p{
  max-width:66ch;
  margin:0;
}
.bf-cat-filters{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
}
.bf-cat-filters .bf-cat-panel__head{
  grid-column:1/-1;
}
.bf-cat-filter{
  min-width:0;
  padding:0;
  border:0;
}
.bf-cat-filter h3{
  margin:0 0 .5rem;
  color:var(--bf-green-ink);
  font-family:var(--wp--preset--font-family--body);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bf-cat-chiprow{
  gap:.4rem;
}
.bf-cat-chip{
  min-height:32px;
  padding:.42rem .72rem;
  border-color:#dbe5d4;
  background:var(--bf-paper);
  color:var(--bf-green-ink);
  font-size:.84rem;
  font-weight:700;
  line-height:1.1;
}
.bf-cat-chip:hover{
  background:var(--bf-mint);
  border-color:var(--bf-green);
  color:var(--bf-green-ink);
  text-decoration:none;
}

.bf-cat-content{
  gap:1rem;
}
.bf-cat-guide,
.bf-cat-bottom-copy{
  padding:clamp(1.1rem,3vw,1.6rem);
  box-shadow:0 4px 18px rgba(20,20,20,.04);
}
.bf-cat-guide h2{
  margin-bottom:.7rem;
}
.bf-cat-bottom-copy{
  background:var(--bf-mint);
  color:var(--bf-green-ink);
}
.bf-cat-bottom-copy p:last-child,
.bf-cat-guide p:last-child{
  margin-bottom:0;
}
.bf-cat-faq details{
  box-shadow:0 3px 14px rgba(20,20,20,.035);
}
.bf-cat-faq summary{
  list-style:none;
  position:relative;
  padding-right:2.5rem;
}
.bf-cat-faq summary::-webkit-details-marker{
  display:none;
}
.bf-cat-faq summary::after{
  content:"+";
  position:absolute;
  right:1rem;
  top:50%;
  transform:translateY(-50%);
  color:var(--bf-forest);
  font-size:1.35rem;
  line-height:1;
}
.bf-cat-faq details[open] summary::after{
  content:"-";
}
.bf-cat-related__grid a{
  min-height:96px;
  background:linear-gradient(180deg,#fff 0%,var(--bf-paper) 100%);
  box-shadow:0 3px 14px rgba(20,20,20,.035);
}
.bf-cat-related__grid span{
  display:block;
  color:var(--bf-graphite);
  font-size:1.08rem;
}
.bf-cat-standard{
  background:
    radial-gradient(circle at 50% -30%, rgba(93,184,35,.22), transparent 42%),
    var(--bf-mint);
  border:1px solid #d6ebca;
}
.bf-cat-standard .bf-btn{
  margin-top:.5rem;
}

@media (max-width:599px){
  .bf-shop.tax-product_cat .woocommerce-result-count{
    display:flex;
  }
  .bf-shop.tax-product_cat .woocommerce-ordering select{
    width:100%;
  }
  .bf-cat-hero__title{
    max-width:none;
    font-size:2.2rem;
  }
  .bf-cat-hero__trust{
    border-radius:var(--bf-radius);
  }
  .bf-cat-hero__media{
    aspect-ratio:1/1;
  }
  .bf-cat-quicklinks a,
  .bf-cat-chip{
    width:100%;
    justify-content:center;
  }
}
@media (min-width:700px){
  .bf-cat-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (min-width:1000px){
  .bf-shop.tax-product_cat .woocommerce-result-count{
    float:left;
    margin-bottom:1.25rem;
  }
  .bf-shop.tax-product_cat .woocommerce-ordering{
    float:right;
    justify-content:flex-end;
    margin-bottom:1.25rem;
  }
  .bf-shop.tax-product_cat ul.products{
    clear:both;
  }
  .bf-cat-filters{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Product category archive layout correction */
.bf-shop.tax-product_cat main.wp-block-group{
  background:linear-gradient(180deg,#f8fbf6 0%,#fff 34rem);
  padding:0 clamp(1rem,3vw,2rem) clamp(3rem,6vw,5rem);
}
.bf-shop.tax-product_cat .content-area.alignwide{
  width:100%;
  max-width:none;
  margin-inline:auto;
}
.bf-shop.tax-product_cat .woocommerce-breadcrumb{
  max-width:none;
  margin:0 auto 1.15rem;
  padding-top:1rem;
  font-size:.78rem;
}
.bf-shop.tax-product_cat .woocommerce-products-header{
  margin:0;
}

.bf-shop.tax-product_cat .bf-cat-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,380px);
  gap:clamp(1.25rem,3vw,2.5rem);
  align-items:center;
  min-height:360px;
  margin:0 0 1rem;
  padding:clamp(2rem,5vw,4rem);
  background:#101411;
  border:0;
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-hero--text,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)){
  display:block;
  min-height:0;
  padding-block:clamp(2.6rem,6vw,5rem);
}
.bf-shop.tax-product_cat .bf-cat-hero--text .bf-cat-hero__copy,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)) .bf-cat-hero__copy{
  max-width:850px;
}
.bf-shop.tax-product_cat .bf-cat-hero__eyebrow{
  color:var(--bf-green);
}
.bf-shop.tax-product_cat .bf-cat-hero__title{
  max-width:11ch;
  color:#fff;
  font-size:clamp(2.6rem,5vw,5rem);
  letter-spacing:-.01em;
}
.bf-shop.tax-product_cat .bf-cat-hero--text .bf-cat-hero__title,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)) .bf-cat-hero__title{
  max-width:12ch;
}
.bf-shop.tax-product_cat .bf-cat-hero__intro{
  max-width:62ch;
  color:#dce6dc;
}
.bf-shop.tax-product_cat .bf-cat-hero__trust{
  display:block;
  width:fit-content;
  max-width:620px;
  margin-top:1.1rem;
  padding:.7rem .95rem;
  background:rgba(93,184,35,.14);
  border:1px solid rgba(93,184,35,.28);
  border-radius:var(--bf-radius);
  box-shadow:none;
  color:#edf8e8;
}
.bf-shop.tax-product_cat .bf-cat-hero__media{
  aspect-ratio:1/1;
  background:#fff;
  border:0;
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-hero__media img{
  width:100%;
  height:100%;
  padding:0;
  object-fit:cover;
  filter:none;
}
.bf-shop.tax-product_cat .bf-cat-quicklinks{
  margin-top:1.35rem;
}
.bf-shop.tax-product_cat .bf-cat-quicklinks a{
  min-height:38px;
  padding:.62rem 1rem;
  background:#fff;
  border-color:#fff;
  color:#101411;
}
.bf-shop.tax-product_cat .bf-cat-quicklinks a:hover{
  background:var(--bf-green);
  border-color:var(--bf-green);
  color:var(--bf-green-ink);
}

.bf-shop.tax-product_cat .bf-cat-badges{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem;
  margin:0 0 1rem;
}
.bf-shop.tax-product_cat .bf-cat-badge{
  padding:.85rem 1rem;
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-badge strong{
  font-size:1rem;
}
.bf-shop.tax-product_cat .bf-cat-seo-intro{
  max-width:none;
  margin:.25rem 0 1.25rem;
  padding:.1rem 0 .1rem 1rem;
  font-size:.98rem;
}

.bf-shop.tax-product_cat .bf-cat-panel{
  margin:1rem 0;
  padding:1.1rem;
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-brands{
  display:flex;
  align-items:center;
  gap:1rem;
  justify-content:space-between;
}
.bf-shop.tax-product_cat .bf-cat-brands h2{
  margin:0;
  font-size:1.15rem;
}
.bf-shop.tax-product_cat .bf-cat-brands .bf-cat-chiprow{
  justify-content:flex-end;
}
.bf-shop.tax-product_cat .bf-cat-filters{
  display:grid;
  grid-template-columns:1.2fr repeat(3,minmax(0,1fr));
  gap:1.15rem 1.4rem;
  align-items:start;
}
.bf-shop.tax-product_cat .bf-cat-filters .bf-cat-panel__head{
  grid-column:auto;
  margin:0;
  padding-right:1rem;
}
.bf-shop.tax-product_cat .bf-cat-filters .bf-cat-panel__head h2{
  font-size:1.25rem;
}
.bf-shop.tax-product_cat .bf-cat-filters .bf-cat-panel__head p{
  font-size:.86rem;
  line-height:1.45;
}
.bf-shop.tax-product_cat .bf-cat-filter h3{
  margin-bottom:.45rem;
  font-size:.68rem;
}
.bf-shop.tax-product_cat .bf-cat-chiprow{
  gap:.35rem;
}
.bf-shop.tax-product_cat .bf-cat-chip{
  min-height:30px;
  padding:.4rem .65rem;
  font-size:.78rem;
  border-radius:var(--bf-radius);
}

.bf-shop.tax-product_cat .woocommerce-result-count,
.bf-shop.tax-product_cat .woocommerce-ordering{
  float:none;
  margin:1.5rem 0 .85rem;
}
.bf-shop.tax-product_cat .woocommerce-result-count{
  display:flex;
  align-items:center;
  min-height:42px;
}
.bf-shop.tax-product_cat .woocommerce-ordering{
  justify-content:flex-end;
}
.bf-shop.tax-product_cat .woocommerce-ordering select{
  border-radius:var(--bf-radius);
}
.bf-shop.tax-product_cat .woocommerce-result-count + .woocommerce-ordering{
  margin-top:-3.45rem;
}
.bf-shop.tax-product_cat ul.products{
  clear:both;
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(220px,260px));
  justify-content:start;
  gap:1.25rem;
  margin:0 0 2rem !important;
  padding:0 !important;
}
.bf-shop.tax-product_cat ul.products::before,
.bf-shop.tax-product_cat ul.products::after{
  content:none !important;
}
.bf-shop.tax-product_cat ul.products li.product{
  float:none !important;
  width:auto !important;
  margin:0 !important;
}
.bf-shop.tax-product_cat ul.products li.product.bf-card{
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  overflow:hidden;
  box-shadow:0 6px 18px rgba(20,20,20,.06);
}
.bf-shop.tax-product_cat .bf-card__media{
  background:var(--bf-paper);
}

.bf-shop.tax-product_cat .bf-cat-content{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:1rem;
  margin:1.75rem 0;
}
.bf-shop.tax-product_cat .bf-cat-guide,
.bf-shop.tax-product_cat .bf-cat-bottom-copy,
.bf-shop.tax-product_cat .bf-cat-faq details,
.bf-shop.tax-product_cat .bf-cat-related__grid a{
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-faq,
.bf-shop.tax-product_cat .bf-cat-related,
.bf-shop.tax-product_cat .bf-cat-standard{
  margin:1.75rem 0;
}
.bf-shop.tax-product_cat .bf-cat-related__grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.bf-shop.tax-product_cat .bf-cat-standard{
  padding:clamp(2rem,5vw,3rem);
  border-radius:var(--bf-radius);
}

@media (max-width:899px){
  .bf-shop.tax-product_cat .bf-cat-hero{
    grid-template-columns:1fr;
    min-height:0;
  }
  .bf-shop.tax-product_cat .bf-cat-hero__title{
    max-width:13ch;
  }
  .bf-shop.tax-product_cat .bf-cat-badges,
  .bf-shop.tax-product_cat .bf-cat-content,
  .bf-shop.tax-product_cat .bf-cat-related__grid{
    grid-template-columns:1fr;
  }
  .bf-shop.tax-product_cat .bf-cat-brands{
    display:block;
  }
  .bf-shop.tax-product_cat .bf-cat-brands .bf-cat-chiprow{
    justify-content:flex-start;
    margin-top:.75rem;
  }
  .bf-shop.tax-product_cat .bf-cat-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bf-shop.tax-product_cat .bf-cat-filters .bf-cat-panel__head{
    grid-column:1/-1;
    padding-right:0;
  }
  .bf-shop.tax-product_cat .woocommerce-result-count + .woocommerce-ordering{
    margin-top:0;
  }
  .bf-shop.tax-product_cat .woocommerce-ordering{
    justify-content:flex-start;
  }
}

@media (max-width:599px){
  .bf-shop.tax-product_cat main.wp-block-group{
    padding-inline:.85rem;
  }
  .bf-shop.tax-product_cat .bf-cat-hero{
    padding:1.5rem;
  }
  .bf-shop.tax-product_cat .bf-cat-hero__title{
    font-size:2.25rem;
  }
  .bf-shop.tax-product_cat .bf-cat-quicklinks a,
  .bf-shop.tax-product_cat .bf-cat-chip{
    width:auto;
    justify-content:flex-start;
  }
  .bf-shop.tax-product_cat .bf-cat-filters{
    grid-template-columns:1fr;
  }
  .bf-shop.tax-product_cat ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.85rem;
  }
}

/* Product category Filter | Catalogue layout */
.bf-shop.tax-product_cat .bf-cat-shop-layout{
  display:grid;
  grid-template-columns:minmax(230px,280px) minmax(0,1fr);
  gap:clamp(1rem,2.5vw,1.6rem);
  align-items:start;
  margin:1.25rem 0 2rem;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters{
  position:sticky;
  top:92px;
  display:block;
  margin:0;
  padding:1rem;
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters .bf-cat-panel__head{
  display:block;
  margin:0 0 .95rem;
  padding:0 0 .9rem;
  border-bottom:1px solid var(--bf-hairline);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters .bf-cat-panel__head h2{
  margin:0;
  font-size:1.35rem;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters .bf-cat-panel__head p{
  margin:.35rem 0 0;
  font-size:.82rem;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter{
  padding:.95rem 0 0;
  margin:.95rem 0 0;
  border-top:1px solid var(--bf-hairline);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter:first-of-type{
  padding-top:0;
  margin-top:0;
  border-top:0;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter h3{
  margin:0 0 .55rem;
  color:var(--bf-graphite);
  font-size:.72rem;
  letter-spacing:.1em;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-chiprow{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-chip{
  min-height:29px;
  padding:.38rem .62rem;
  background:#f8fbf6;
  border-color:#dfe8d8;
  color:var(--bf-green-ink);
  font-size:.76rem;
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-chip:hover{
  background:var(--bf-green);
  border-color:var(--bf-green);
  color:var(--bf-green-ink);
}

.bf-shop.tax-product_cat .bf-cat-catalogue{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:.85rem 1rem;
  min-width:0;
  padding:1rem;
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-notices-wrapper{
  grid-column:1/-1;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-result-count,
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering{
  float:none;
  margin:0;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-result-count{
  color:var(--bf-stone-deep);
  font-size:.86rem;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering{
  justify-content:flex-end;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-result-count + .woocommerce-ordering{
  margin-top:0;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering select{
  min-height:36px;
  border-radius:var(--bf-radius);
  font-size:.84rem;
}
.bf-shop.tax-product_cat .bf-cat-catalogue ul.products{
  grid-column:1/-1;
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:1rem;
  justify-content:stretch;
  margin:0 !important;
  padding:0 !important;
}
.bf-shop.tax-product_cat .bf-cat-catalogue ul.products li.product{
  width:auto !important;
  max-width:none;
}

@media (min-width:1200px){
  .bf-shop.tax-product_cat .bf-cat-shop-layout{
    grid-template-columns:292px minmax(0,1fr);
  }
}

@media (max-width:899px){
  .bf-shop.tax-product_cat .bf-cat-shop-layout{
    grid-template-columns:1fr;
  }
  .bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters{
    position:static;
  }
  .bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:.75rem;
    align-items:start;
  }
  .bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter h3{
    margin:.35rem 0 0;
  }
}

@media (max-width:599px){
  .bf-shop.tax-product_cat .bf-cat-catalogue{
    grid-template-columns:1fr;
    padding:.85rem;
  }
  .bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering{
    justify-content:flex-start;
  }
  .bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering select{
    width:100%;
  }
  .bf-shop.tax-product_cat .bf-cat-catalogue ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filter{
    display:block;
  }
}

/* Product category above-fold structure */
.bf-shop.tax-product_cat .bf-cat-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.1rem;
  min-height:0;
  margin:0 0 1.1rem;
  padding:clamp(1.1rem,2.5vw,1.6rem);
  background:var(--bf-paper);
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  box-shadow:none;
}
.bf-shop.tax-product_cat .bf-cat-hero--with-media{
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
}
.bf-shop.tax-product_cat .bf-cat-hero--text,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)){
  display:grid;
  padding-block:clamp(1.1rem,2.5vw,1.6rem);
}
.bf-shop.tax-product_cat .bf-cat-hero__copy,
.bf-shop.tax-product_cat .bf-cat-hero--text .bf-cat-hero__copy,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)) .bf-cat-hero__copy{
  max-width:none;
}
.bf-shop.tax-product_cat .bf-cat-hero__eyebrow{
  margin:0 0 .45rem;
  color:var(--bf-forest);
}
.bf-shop.tax-product_cat .bf-cat-hero__title,
.bf-shop.tax-product_cat .bf-cat-hero--text .bf-cat-hero__title,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)) .bf-cat-hero__title{
  max-width:none;
  color:var(--bf-graphite);
  font-size:clamp(2rem,3.2vw,3.35rem);
  line-height:1;
}
.bf-shop.tax-product_cat .bf-cat-hero__title::after{
  content:"";
  display:block;
  width:116px;
  height:2px;
  margin:.55rem 0 0;
  background:var(--bf-green);
}
.bf-shop.tax-product_cat .bf-cat-hero__intro{
  max-width:none;
  margin-top:.8rem;
  color:var(--bf-stone-deep);
  font-size:.94rem;
  line-height:1.55;
}
.bf-shop.tax-product_cat .bf-cat-hero__trust{
  display:block;
  width:auto;
  max-width:none;
  margin:.65rem 0 0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  color:var(--bf-green-ink);
  font-size:.85rem;
}
.bf-shop.tax-product_cat .bf-cat-quicklinks{
  margin-top:.8rem;
}
.bf-shop.tax-product_cat .bf-cat-hero__media{
  grid-row:1;
  grid-column:2;
  aspect-ratio:4/3;
  background:#fff;
  border:1px solid var(--bf-hairline);
}
.bf-shop.tax-product_cat .bf-cat-hero__tiles{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
  margin-top:.15rem;
}
.bf-shop.tax-product_cat .bf-cat-hero-tile{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(72px,34%);
  align-items:end;
  min-height:104px;
  overflow:hidden;
  padding:.75rem;
  background:#fff;
  border:1px solid var(--bf-hairline);
  border-radius:var(--bf-radius);
  color:var(--bf-graphite);
  text-decoration:none;
}
.bf-shop.tax-product_cat .bf-cat-hero-tile:hover{
  border-color:var(--bf-green);
}
.bf-shop.tax-product_cat .bf-cat-hero-tile__copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:.12rem;
  position:relative;
  z-index:1;
}
.bf-shop.tax-product_cat .bf-cat-hero-tile strong{
  font-size:.92rem;
  line-height:1.05;
}
.bf-shop.tax-product_cat .bf-cat-hero-tile small{
  color:var(--bf-stone-deep);
  font-size:.72rem;
}
.bf-shop.tax-product_cat .bf-cat-hero-tile img{
  align-self:center;
  justify-self:end;
  width:100%;
  max-height:88px;
  object-fit:contain;
}

.bf-shop.tax-product_cat .bf-cat-shop-layout{
  margin:0 0 2rem;
  grid-template-columns:minmax(220px,270px) minmax(0,1fr);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters,
.bf-shop.tax-product_cat .bf-cat-catalogue{
  border-radius:var(--bf-radius);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters .bf-cat-panel__head h2,
.bf-shop.tax-product_cat .bf-cat-catalogue__head h2{
  margin:0;
  font-size:1.05rem;
  line-height:1.2;
}
.bf-shop.tax-product_cat .bf-cat-catalogue__head{
  min-width:0;
}
.bf-shop.tax-product_cat .bf-cat-catalogue{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-ordering::before{
  content:"Sort By";
  display:block;
  margin:0 0 .3rem;
  color:var(--bf-graphite);
  font-size:.75rem;
  font-weight:700;
}
.bf-shop.tax-product_cat .bf-cat-catalogue .woocommerce-result-count{
  align-self:start;
  min-height:0;
  margin-top:-.35rem;
}

@media (max-width:899px){
  .bf-shop.tax-product_cat .bf-cat-hero--with-media{
    grid-template-columns:1fr;
  }
  .bf-shop.tax-product_cat .bf-cat-hero__media{
    grid-row:auto;
    grid-column:auto;
  }
  .bf-shop.tax-product_cat .bf-cat-hero__tiles{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .bf-shop.tax-product_cat .bf-cat-shop-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:599px){
  .bf-shop.tax-product_cat .bf-cat-hero__tiles{
    grid-template-columns:1fr;
  }
  .bf-shop.tax-product_cat .bf-cat-hero-tile{
    min-height:88px;
  }
  .bf-shop.tax-product_cat .bf-cat-catalogue{
    align-items:start;
  }
}

/* Product category width alignment with header */
.bf-shop.tax-product_cat main.wp-block-group{
  padding-inline:clamp(1rem,5vw,2rem);
}
.bf-shop.tax-product_cat .content-area.alignwide,
.bf-shop.tax-product_cat .woocommerce-breadcrumb{
  width:100%;
  max-width:var(--wp--style--global--wide-size);
  box-sizing:border-box;
}
.bf-shop.tax-product_cat .content-area.alignwide{
  margin-inline:auto;
}
.bf-shop.tax-product_cat .site-main{
  width:100%;
}

/* Product category fine-tuning */
.bf-shop.tax-product_cat .bf-cat-hero__title,
.bf-shop.tax-product_cat .bf-cat-hero--text .bf-cat-hero__title,
.bf-shop.tax-product_cat .bf-cat-hero:not(:has(.bf-cat-hero__media)) .bf-cat-hero__title{
  font-size:clamp(1.75rem,2.2vw,2.6rem);
}
.bf-shop.tax-product_cat .bf-cat-shop-layout .bf-cat-filters .bf-cat-panel__head{
  margin-bottom:.75rem;
  padding-bottom:0;
  border-bottom:0;
}
.bf-shop.tax-product_cat .bf-cat-catalogue ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

@media (max-width:1099px){
  .bf-shop.tax-product_cat .bf-cat-catalogue ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:699px){
  .bf-shop.tax-product_cat .bf-cat-catalogue ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* ---------- Filter facets (checkbox-style rows, à la layered nav) ---------- */
.bf-cat-filters__head{flex-direction:row;align-items:baseline;justify-content:space-between;gap:1rem}
.bf-facet__clear{font-size:.8rem;font-weight:600;color:var(--bf-forest);text-decoration:none;white-space:nowrap}
.bf-facet__clear:hover{color:var(--bf-green-deep);text-decoration:underline}
.bf-facet{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.05rem}
.bf-facet__item{margin:0}
.bf-facet__item--hidden{display:none}
.bf-facet__row{display:flex;align-items:center;gap:.6rem;padding:.42rem .4rem;border-radius:var(--bf-radius);
  text-decoration:none;color:var(--bf-graphite);font-size:.9rem;line-height:1.3}
.bf-facet__row:hover{background:var(--bf-paper)}
.bf-facet__check{flex:0 0 auto;width:18px;height:18px;border:1.5px solid var(--bf-hairline);
  border-radius:var(--bf-radius);background:#fff;position:relative;transition:border-color .15s ease,background .15s ease}
.bf-facet__row:hover .bf-facet__check{border-color:var(--bf-green)}
.bf-facet__row.is-active .bf-facet__check{background:var(--bf-green);border-color:var(--bf-green)}
.bf-facet__row.is-active .bf-facet__check::after{content:"";position:absolute;left:5px;top:1px;
  width:5px;height:9px;border:solid var(--bf-green-ink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.bf-facet__name{flex:1 1 auto;min-width:0}
.bf-facet__row.is-active .bf-facet__name{font-weight:600}
.bf-facet__count{flex:0 0 auto;color:var(--bf-stone-deep);font-size:.8rem;font-variant-numeric:tabular-nums}
.bf-facet__more{display:inline-flex;align-items:center;margin:.4rem 0 0 .4rem;padding:.15rem 0;
  background:none;border:0;color:var(--bf-forest);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}
.bf-facet__more:hover{color:var(--bf-green-deep);text-decoration:underline}
