
#product-manufacturer.brand-directory{--brand-ink:#263c37;--brand-muted:#74817c;--brand-accent:#c96540;padding-top:20px;padding-bottom:70px}
.brand-directory .brand-hero{display:flex;align-items:center;justify-content:space-between;background:#f3eee7;border:1px solid #e9e2d8;border-radius:18px;padding:44px 52px;overflow:hidden;margin-bottom:44px;min-height:300px;position:relative}
.brand-directory .brand-hero-copy{position:relative;z-index:1}.brand-directory .brand-eyebrow{display:block;color:#946947;font-size:11px;letter-spacing:2.5px;font-weight:700;margin-bottom:16px}
.brand-directory #brand-title{color:var(--brand-ink);font-size:46px;line-height:1.12;letter-spacing:-1.5px;font-weight:600;margin:0 0 18px;padding:0;border:0;background:none;text-transform:none}.brand-directory #brand-title:after{display:none}.brand-directory #brand-title em{font-family:Georgia,serif;font-weight:400;color:var(--brand-accent)}
.brand-directory .brand-hero p{color:#6c756c;font-size:14px;line-height:1.8;margin:0 0 24px}.brand-directory .brand-hero-meta{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:600;color:#68776e;letter-spacing:.3px}.brand-directory .brand-hero-meta>span{width:6px;height:6px;border-radius:50%;background:#7c9376}
.brand-directory .brand-hero-art{width:38%;max-width:370px;align-self:stretch;display:flex;align-items:center;justify-content:center;position:relative;color:var(--brand-ink)}.brand-directory .brand-art-orbit{position:absolute;width:260px;height:260px;border:1px solid #ddd3c5;border-radius:50%;background:#eae2d5}.brand-directory .brand-art-orbit:after{content:'';position:absolute;inset:18px;border:1px solid #dacebe;border-radius:50%}.brand-directory .brand-hero-art svg{position:relative;width:100%;transform:rotate(-12deg);filter:drop-shadow(0 18px 13px #574c3620)}.brand-directory .brand-art-label{position:absolute;bottom:0;right:12px;font-size:12px;font-family:Georgia,serif;font-style:italic;color:#837963;letter-spacing:.4px}
.brand-directory .brand-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.brand-directory .brand-tools h2{font-size:24px;line-height:1.3;letter-spacing:-.5px;font-weight:600;color:var(--brand-ink);margin:0 0 6px}.brand-directory .brand-tools p{margin:0;color:var(--brand-muted);font-size:13px}
.brand-directory .brand-search-wrap{display:flex;align-items:center;position:relative;width:310px;max-width:100%;flex-shrink:0}.brand-directory .brand-search-wrap svg{position:absolute;left:15px;width:19px;height:19px;color:#7c8780;pointer-events:none}.brand-directory #brand-search{width:100%;height:46px;border:1px solid #dce1dc;border-radius:8px;background:#fff;padding:0 40px 0 44px;font-size:13px;color:var(--brand-ink);box-shadow:none}.brand-directory #brand-search:focus{outline:2px solid #789b8c;outline-offset:2px}.brand-directory #brand-search::-webkit-search-cancel-button{display:none}.brand-directory #brand-clear{position:absolute;right:12px;background:none;border:0;color:#6e7b73;font-size:23px;cursor:pointer;padding:2px}
.brand-directory .brand-alphabet{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid #e3e7e2;padding:0 0 20px;margin:0 0 30px}.brand-directory .brand-alphabet a,.brand-directory .brand-all{display:inline-flex;align-items:center;justify-content:center;min-width:37px;height:36px;padding:0 10px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:600;color:#6c7b74;background:transparent;text-decoration:none;cursor:pointer;transition:background .18s,color .18s}.brand-directory .brand-alphabet a:hover,.brand-directory .brand-alphabet a.is-active,.brand-directory .brand-all.is-active{background:var(--brand-ink);color:white}.brand-directory .brand-all{padding:0 16px}.brand-directory .brand-alphabet-divider{width:1px;height:20px;background:#dce1da;margin:0 10px}.brand-directory .brand-alphabet a:focus-visible,.brand-directory .brand-card:focus-visible,.brand-directory button:focus-visible{outline:2px solid var(--brand-accent);outline-offset:3px}
.brand-directory .brand-group{margin:0 0 30px;scroll-margin-top:150px}.brand-directory .brand-group-heading{display:flex;align-items:center;gap:13px;margin-bottom:16px}.brand-directory .brand-group-heading h2{margin:0;font-size:25px;font-weight:500;color:var(--brand-ink);line-height:1.2}.brand-directory .brand-group-heading>span{font-size:11px;color:#8b948c}.brand-directory .brand-group-line{height:1px;flex:1;background:#e3e7e2;margin-left:5px}
.brand-directory .brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.brand-directory .brand-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e4e8e1;border-radius:10px;text-decoration:none;color:var(--brand-ink);overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.brand-directory .brand-card:hover{transform:translateY(-4px);border-color:#9caf9f;box-shadow:0 9px 22px #263c3710;color:var(--brand-ink)}.brand-directory .brand-logo{height:142px;display:flex;align-items:center;justify-content:center;padding:24px}.brand-directory .brand-logo img{display:block;width:100%;height:100%;max-width:150px;max-height:98px;object-fit:contain}.brand-directory .brand-card-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #f0f1ed;padding:14px 18px;font-size:12px;font-weight:600;letter-spacing:.3px}.brand-directory .brand-card-arrow{font-size:18px;font-weight:400;color:#98a398;line-height:1}.brand-directory .brand-card:hover .brand-card-arrow{color:var(--brand-accent)}
.brand-directory [hidden]{display:none!important}.brand-directory .brand-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-directory .brand-empty{text-align:center;padding:50px 20px;color:var(--brand-muted)}.brand-directory .brand-empty h3{font-size:22px;color:var(--brand-ink);margin:12px 0}.brand-directory .brand-reset{border:0;border-radius:6px;background:var(--brand-ink);color:#fff;padding:12px 20px;margin-top:12px;cursor:pointer}
@media(min-width:1400px){.brand-directory .brand-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:991px){.brand-directory .brand-hero{padding:32px}.brand-directory #brand-title{font-size:38px}.brand-directory .brand-art-orbit{width:200px;height:200px}.brand-directory .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-directory .brand-tools h2{font-size:21px}}
@media(max-width:600px){#product-manufacturer.brand-directory{padding-top:12px;padding-bottom:35px}.brand-directory .brand-hero{padding:28px 24px;min-height:0;margin-bottom:28px;border-radius:12px}.brand-directory #brand-title{font-size:34px}.brand-directory .brand-hero-art{display:none}.brand-directory .brand-hero p{font-size:13px}.brand-directory .brand-tools{align-items:stretch;flex-direction:column;gap:18px;margin-bottom:18px}.brand-directory .brand-search-wrap{width:100%}.brand-directory .brand-alphabet{gap:3px;margin-bottom:24px}.brand-directory .brand-alphabet a{min-width:30px;padding:0 8px}.brand-directory .brand-alphabet-divider{margin:0 4px}.brand-directory .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.brand-directory .brand-logo{height:120px;padding:18px}.brand-directory .brand-card-caption{padding:12px;font-size:11px}.brand-directory .brand-hero-meta{font-size:10px}}
@media(prefers-reduced-motion:reduce){.brand-directory .brand-card{transition:none}.brand-directory .brand-card:hover{transform:none}}

/* Keep link hover/click feedback light; reserve focus rings for keyboard use. */
.brand-directory a:focus:not(:focus-visible){outline:none;box-shadow:none}
.brand-directory .brand-alphabet a:hover,
.brand-directory .brand-alphabet a.is-active{background:transparent;color:var(--brand-accent);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.brand-directory .brand-card:hover{box-shadow:none}
