.category-showcase{margin-block:72px}
.category-showcase .section-title{align-items:end;gap:24px;margin-bottom:28px}
.category-showcase .section-title h2{margin:0;line-height:1.12}
.category-showcase .section-title p{margin:12px 0 0;color:#666;font-size:15px}
.category-showcase .section-title>a{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font-size:14px;color:#252525;padding-block:8px}
.category-showcase .section-title>a svg{width:19px;height:19px}
.category-showcase .category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.category-tile{display:block;min-width:0;border:1px solid #e2e2e2;background:white;border-radius:4px;overflow:hidden}
.category-visual{position:relative;height:230px;padding:34px 26px 20px;background:#f7f7f7;border-bottom:1px solid #e9e9e9;overflow:hidden}
.category-visual img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .25s ease-out}
.category-count{position:absolute;top:14px;left:16px;background:white;border:1px solid #e5e5e5;border-radius:3px;padding:3px 8px;font-size:12px;color:#555;font-variant-numeric:tabular-nums}
.category-caption{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px}
.category-caption h3{font-size:23px;font-weight:700;line-height:1.25;letter-spacing:-.3px;margin:0;color:#222}
.category-caption p{font-size:13px;line-height:1.5;color:#666;margin:7px 0 0}
.category-arrow{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#fff0e5;color:#a63800;transition:background .2s,color .2s}
.category-arrow svg{width:20px;height:20px;stroke-width:1.8}
.category-tile:hover{border-color:#ff5b00}
.category-tile:hover .category-arrow{background:#ff5b00;color:#202020}
.category-tile:hover img{transform:scale(1.04)}
.category-tile:focus-visible{outline:3px solid #ff5b00;outline-offset:4px}
.category-filter .filter-option{min-height:44px;padding:8px 10px;border:1px solid transparent;border-radius:3px;gap:9px;margin-block:3px}
.category-filter .filter-option:hover{background:#f5f5f5}
.category-filter .filter-option:has(input:checked){background:#fff1e6;border-color:#ffb17b;font-weight:600}
.category-filter .filter-option:has(input:focus-visible){outline:2px solid #a63800;outline-offset:2px}
.category-filter .filter-option small{background:#eee;color:#555;min-width:24px;padding:1px 5px;border-radius:3px;text-align:center}
.category-filter .filter-option:has(input:checked) small{background:#ff5b00;color:#222}
@media(max-width:1050px){.category-showcase .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-visual{height:210px}.category-caption{padding:20px}}
@media(max-width:600px){.category-showcase{margin-block:44px}.category-showcase .section-title{display:flex;align-items:start;flex-direction:column;gap:10px;margin-bottom:20px}.category-showcase .section-title h2{font-size:35px}.category-showcase .section-title p{font-size:14px;margin-top:10px}.category-showcase .category-grid{gap:16px 12px}.category-visual{height:146px;padding:35px 12px 12px}.category-count{top:10px;left:10px;font-size:11px;padding:2px 6px}.category-caption{padding:14px 12px;gap:6px;min-height:114px;align-items:start}.category-caption h3{font-size:18px;letter-spacing:-.2px}.category-caption p{font-size:12px;margin-top:7px}.category-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.category-visual img,.category-arrow{transition:none}.category-tile:hover img{transform:none}}

.category-showcase .category-visual{padding:0;height:auto;aspect-ratio:16/10}.category-showcase .category-visual img{display:block;object-fit:cover;width:100%;height:100%;mix-blend-mode:normal}.category-showcase .category-count{background:#fffffff2;color:#333;border-color:#ffffff80;box-shadow:0 2px 8px #0001}@media(max-width:600px){.category-showcase .category-visual{height:auto;aspect-ratio:4/3}}
.all-categories{padding-block:28px 80px}.all-categories-heading{margin:28px 0 38px;max-width:700px}.all-categories-heading h1{font-size:44px;line-height:1.15;letter-spacing:-1px;margin:0 0 16px}.all-categories-heading p{font-size:15px;color:#666;line-height:1.8}.all-categories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.category-directory-card{border:1px solid #e2e5e7;border-radius:8px;padding:26px;background:white;min-width:0}.category-directory-meta{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#666;margin-bottom:18px}.category-directory-card h2{font-size:21px;line-height:1.4;margin:0 0 18px;letter-spacing:-.3px}.category-directory-card h2 a{display:flex;justify-content:space-between;gap:16px}.category-directory-card h2 svg{width:22px;height:22px;flex-shrink:0;color:#a63800;margin-top:4px}.category-directory-card ul{list-style:none;margin:0;padding:0}.category-directory-card li a{display:block;padding:9px 0;font-size:12px;line-height:1.7;color:#555;border-bottom:1px solid #f0f0f0}.category-directory-card a:hover{color:#a63800;text-decoration:underline;text-underline-offset:4px}.category-directory-card>p{font-size:13px;color:#666}.category-more{border:0;padding:0;margin:14px 0;background:none}.category-more summary{font-size:12px;font-weight:600;color:#a63800;cursor:pointer;min-height:40px;line-height:1.6;padding-block:10px}.category-directory-card .category-directory-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;font-weight:700;margin-top:22px;padding-top:18px;border-top:1px solid #ddd;color:#a63800;min-height:44px}@media(max-width:1050px){.all-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.all-categories{padding-block:22px 48px}.all-categories-heading h1{font-size:34px}.all-categories-grid{grid-template-columns:1fr;gap:18px}.category-directory-card{padding:22px}.category-directory-card li a{min-height:44px}}
.category-directory-card{overflow:hidden}.main-category-image{display:block;margin:-26px -26px 24px;aspect-ratio:16/10;overflow:hidden;background:#eee}.main-category-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease-out}.main-category-image:hover img{transform:scale(1.035)}.main-category-image:focus-visible{outline:3px solid #a63800;outline-offset:-4px}@media(max-width:600px){.main-category-image{margin:-22px -22px 22px}}@media(prefers-reduced-motion:reduce){.main-category-image img{transition:none}.main-category-image:hover img{transform:none}}
