/* Public directory and landing pages for product brands */
.brand-pages{max-width:1208px;margin:0 auto;padding:24px 0 55px;color:#253a2c}
.brand-pages h1{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em;line-height:1.14;margin:20px 0 14px}
.brand-pages h2{font-size:clamp(1.25rem,2.3vw,1.8rem);letter-spacing:-.03em}
.brand-pages nav.brands-breadcrumb{
  width:100%;max-width:none;margin:0;padding:0;border:0;
  display:flex;justify-content:flex-start;align-items:center;
  gap:9px;flex-wrap:wrap;text-align:left;
  font-size:13px;color:#536d5b;
}
.brands-breadcrumb a{color:#235a40;text-decoration:underline;text-underline-offset:3px}
.brand-intro{font-size:16px;color:#5c6f61;line-height:1.65;margin-bottom:30px}
.brand-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.brand-tile{border:1px solid #dce6db;background:#fff;border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:16px;min-width:0}
.brand-tile-media{display:flex;align-items:center;justify-content:center;background:#f4f7f1;border-radius:12px;min-height:140px;padding:18px}
.brand-tile-media img{max-width:100%;max-height:106px;object-fit:contain}
.brand-fallback{display:grid;place-items:center;width:82px;height:82px;border-radius:16px;background:#e0ece0;color:#235a40;font-size:42px;font-weight:800}
.brand-tile h2{font-size:20px;margin:0 0 10px}
.brand-tile h2 a:hover,.brand-tile-link:hover{text-decoration:underline}
.brand-tile p{margin:0 0 10px;color:#56695a;line-height:1.6;font-size:14px}
.brand-tile small{display:block;margin-bottom:12px;color:#637763}
.brand-tile .brand-tile-link{color:#235a40;font-weight:700}
.brand-detail-head{display:flex;gap:32px;align-items:center;padding:28px;background:#f4f7ef;border-radius:18px;margin:28px 0 38px}
.brand-detail-logo{width:220px;min-height:160px;flex:0 0 220px;padding:20px;display:grid;place-items:center;background:white;border-radius:14px}
.brand-detail-logo img{width:100%;max-height:140px;object-fit:contain}
.brand-detail-head h1{margin:0 0 14px}.brand-detail-head p{line-height:1.7;color:#536b5a;margin:0;white-space:normal}
.brand-products h2{margin-bottom:22px}.brand-products .products{grid-template-columns:repeat(4,minmax(0,1fr))}
.brand-products .product{padding-bottom:14px}.brand-products .product-title{display:block;margin-top:13px}
.brand-products .product-availability{font-size:12px;color:#536b5a}
.brand-products .product-bottom{gap:12px;flex-wrap:wrap}
.brand-product-link{font-size:12px;font-weight:700;color:#235a40;text-decoration:underline;text-underline-offset:3px}
.brand-long-description{border-top:1px solid #e4e9e0;padding:26px 0;margin:42px 0 10px;max-width:1000px;line-height:1.7}
.brand-long-description h2{margin-bottom:18px}.brand-long-description .product-description{color:#445a49}
.brand-pagination{margin-top:24px;display:flex;gap:20px;justify-content:center;align-items:center}.brand-pagination a,.brand-return a{color:#235a40;font-weight:650;text-decoration:underline}
.brand-return{margin-top:26px}.product-brand-line{font-size:14px;color:#526958;margin:0 0 20px}
.product-brand-line a{color:#176348;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:950px){.brand-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-products .products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.brand-directory{grid-template-columns:1fr}.brand-pages{padding:15px 0 32px}.brand-detail-head{flex-direction:column;align-items:stretch;gap:15px;padding:22px}.brand-detail-logo{width:100%;flex:auto;min-height:100px}.brand-products .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.brand-tile{padding:18px}}
@media(max-width:390px){.brand-products .products{grid-template-columns:1fr}}
