.taxonomy-family h3{margin:0;font-size:1.12rem;color:var(--navy)}.taxonomy-family p{font-size:.85rem;color:var(--muted);margin:8px 0 14px}.taxonomy-family details{margin-bottom:16px}.taxonomy-family summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--teal-dark)}.taxonomy-family details[open] summary{margin-bottom:8px}.taxonomy-family .family-all{margin-top:auto;padding-top:12px;font-weight:700;color:var(--teal-dark);min-height:44px}.trade-links,.home-trades{display:flex;flex-wrap:wrap;gap:8px}.trade-link{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:9px 13px;border:1px solid var(--border,#ead9ad);border-radius:10px;background:var(--white,#fffdf9);color:var(--teal-dark,#056764);font-size:.9rem;font-weight:700;line-height:1.3;text-decoration:none}.trade-link small{font-size:.75rem;font-weight:500}.trade-link:hover,.trade-link.is-active{background:var(--teal-dark,#056764);color:white;border-color:var(--teal-dark,#056764)}.trade-link:focus-visible,.taxonomy-family summary:focus-visible{outline:3px solid #ffca3a;outline-offset:3px}.directory-professions{margin-bottom:22px}.directory-professions h2{font-size:1.25rem;margin:0 0 12px}.directory-query{grid-column:1/-1}.directory-filters-trades input[type=search]{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;font:inherit;font-size:16px;background:white;color:var(--navy)}.directory-filters-trades{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-filters-trades select{font-size:16px;min-width:0}.directory-reset{min-height:44px;border:0;background:transparent;color:var(--teal-dark);text-decoration:underline;cursor:pointer;font:inherit}.directory-trade{display:block;color:var(--teal-dark);font-size:.8rem;line-height:1.5;margin-top:7px}.home-trades{margin-top:18px}.home-trades .trade-link{padding:10px 13px}.directory-list [hidden]{display:none!important}@media(max-width:900px){.directory-filters-trades{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.directory-filters-trades{grid-template-columns:1fr}.directory-professions .trade-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.trade-link{font-size:.85rem;box-sizing:border-box;min-width:0}.taxonomy-family{padding:18px}.taxonomy-family .trade-links{gap:6px}.directory-filters-trades label{min-width:0}.directory-query{grid-column:auto}}
/* Compact category chooser: a single destination per tile. */
.taxonomy-hub .taxonomy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;grid-auto-rows:152px}
.taxonomy-hub .taxonomy-family{height:152px;min-height:0;padding:0;border:1px solid #d7e4e0;border-radius:12px;background:#fff;box-shadow:none;overflow:hidden;transition:border-color .15s,background .15s}
.taxonomy-hub .taxonomy-family:hover{transform:none;background:#f4faf7;border-color:var(--teal);box-shadow:none}
.taxonomy-hub .category-entry{box-sizing:border-box;height:100%;width:100%;display:grid;grid-template-rows:48px 40px 20px;gap:3px;padding:18px 46px 18px 20px;position:relative;text-decoration:none;color:var(--navy)}
.taxonomy-hub .category-entry h3{margin:0;font:700 1.1rem/24px "DM Sans",sans-serif;align-self:start;color:var(--navy)}
.taxonomy-hub .taxonomy-description{font-size:.88rem;line-height:20px;margin:0;color:var(--muted)}
.taxonomy-hub .taxonomy-count{font-size:.78rem;line-height:20px;color:var(--teal-dark);background:none;padding:0;margin:0}
.taxonomy-hub .category-arrow{position:absolute;margin:0;line-height:1;right:18px;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--teal-dark)}
.taxonomy-hub .category-entry:focus-visible{outline:3px solid #ffca3a;outline-offset:-4px;border-radius:12px}
.taxonomy-hub>h2{font:700 clamp(1.2rem,2.4vw,1.5rem)/1.3 "DM Sans",sans-serif;margin-bottom:18px}
.taxonomy-hub>h2:not(:first-child){margin-top:32px}
.taxonomy-pending{margin-top:28px;border-top:1px solid var(--border);padding-top:12px;color:var(--muted)}
.taxonomy-pending summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:.88rem;font-weight:600;gap:8px}
.taxonomy-pending p{font-size:.88rem;margin:8px 0}.taxonomy-pending>div{display:flex;flex-wrap:wrap;gap:10px}.taxonomy-pending a{padding:10px 12px;min-height:44px;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;font-size:.88rem}
@media(max-width:900px){.taxonomy-hub .taxonomy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.taxonomy-hub .taxonomy-grid{grid-template-columns:1fr;grid-auto-rows:126px;gap:10px}.taxonomy-hub .taxonomy-family{height:126px}.taxonomy-hub .category-entry{grid-template-rows:26px 40px 20px;padding:16px 44px 16px 16px;gap:3px}.taxonomy-hub .category-entry h3{font-size:1rem;line-height:24px}.taxonomy-hub .taxonomy-description{font-size:.86rem}.taxonomy-hub>h2:not(:first-child){margin-top:26px}}
