.directory-main{padding-block:24px 64px}.breadcrumbs{font-size:.875rem;color:var(--muted);margin-bottom:28px}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px 10px;margin:0;padding:0}.breadcrumbs li{overflow-wrap:anywhere}.breadcrumbs li+li:before{content:'/';margin-right:10px;color:#9ba6ad}.breadcrumbs a{text-decoration:none}.breadcrumbs [aria-current]{color:var(--ink)}
.directory-intro{max-width:860px}.directory-intro h1{font:600 clamp(2rem,4vw,3.25rem)/1.12 var(--heading);margin:10px 0 18px;text-wrap:pretty}.directory-intro .title-accent{color:var(--accent)}.directory-intro>p:not(.eyebrow){color:var(--muted);font-size:1rem;max-width:720px}.directory-stats{display:flex;gap:0;margin:28px 0 34px;border-block:1px solid var(--line);padding:18px 0}.directory-stats>div{padding:0 36px;border-right:1px solid var(--line);display:flex;flex-direction:column-reverse}.directory-stats>div:first-child{padding-left:0}.directory-stats>div:last-child{border:0}.directory-stats dt{font-size:.875rem;color:var(--muted)}.directory-stats dd{font:600 2rem/1.15 var(--heading);margin:0 0 3px}
.location-section{margin-block:32px 40px}.location-section h2,.directory-results h2,.directory-note h2,.offices-section h2{font:600 1.75rem/1.2 var(--heading);margin-bottom:18px}.location-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px;border-top:1px solid var(--line)}.location-grid>a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:57px;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:1rem}.location-grid>a:hover>span{text-decoration:underline}.location-grid small{white-space:nowrap;font-size:.875rem;color:var(--muted)}
.directory-results{margin-top:34px}.directory-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.directory-results-head h2{margin:0}.directory-results .count,.offices-section .count{font:400 1rem var(--sans);color:var(--muted);margin-left:10px}.directory-search{width:min(380px,100%)}.directory-search label{display:block;font-size:.875rem;margin-bottom:7px}.search-field{display:flex;background:white;border:1px solid #9caab3}.search-field:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search-field input{font:inherit;background:transparent;border:0;width:100%;min-width:0;padding:11px 12px;outline:none}.search-field button{border:0;border-left:1px solid var(--line);background:white;color:var(--accent);font:inherit;font-size:.875rem;padding:8px 12px}.search-count{font-size:.875rem;color:var(--muted);margin-bottom:16px}.company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.company-card{background:white;border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;min-width:0}.company-card:hover{border-color:#9caab3}.company-card-head{display:grid;grid-template-columns:126px minmax(0,1fr);align-items:center;gap:20px;margin-bottom:20px}.company-logo{display:flex;width:126px;height:86px;background:white;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.company-logo img{width:100%;height:100%;object-fit:contain;padding:6px}.logo-dark{background:var(--navy)}.logo-fallback{font:600 2.5rem var(--heading);color:var(--muted);background:var(--paper);border:1px solid var(--line)}.company-cities{font-size:.875rem;color:var(--muted);margin-bottom:5px;overflow-wrap:anywhere}.company-cities a{text-decoration:none}.company-card h3{font:600 1.5rem/1.22 var(--heading);overflow-wrap:anywhere}.company-card h3 a{text-decoration:none}.company-card h3 a:hover{text-decoration:underline}.fair-badge{display:inline-flex;align-items:center;gap:8px;color:#8b2c1d;background:var(--accent-soft);border:1px solid #e8cec5;align-self:flex-start;padding:7px 10px;font-size:.875rem;line-height:1.4;max-width:100%}.fair-badge svg{flex-shrink:0}.company-addresses{padding:0;list-style:none;margin:19px 0 0;font-size:1rem}.company-addresses li{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid #edf0f2;padding:7px 0}.company-addresses strong{font-weight:400}.company-addresses span{text-align:right;color:var(--muted);overflow-wrap:anywhere}.more-offices{font-size:.875rem;color:var(--muted);margin-top:9px}.company-card-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:22px}.phone-link{font-variant-numeric:tabular-nums;font-weight:600;text-decoration:none;white-space:nowrap;display:inline-block;padding-block:8px}.profile-link{font-size:.875rem;display:inline-block;padding-block:8px}.directory-empty{padding:30px;background:white;border:1px solid var(--line)}
.directory-note{margin-top:42px;border-top:2px solid var(--navy);padding-top:24px;max-width:850px}.directory-note p{color:var(--muted);margin-top:12px;font-size:1rem}.directory-source-note{font-size:.875rem;color:var(--muted);margin-top:26px}.company-profile-head{display:flex;align-items:center;gap:32px;padding:12px 0 28px;border-bottom:1px solid var(--line)}.company-profile-head .company-logo{width:200px;height:134px;padding:10px}.company-profile-head>div{min-width:0}.company-profile-head h1{font:600 clamp(1.9rem,4vw,3rem)/1.12 var(--heading);margin:9px 0 14px;overflow-wrap:anywhere}.company-profile-head .fair-badge{margin-top:16px}.profile-locations{font-size:1rem;color:var(--muted)}.participation-note{margin-block:24px 36px;border-left:3px solid var(--accent);padding:16px 20px;background:var(--accent-soft)}.participation-note strong{font-weight:500;font-size:1rem}.participation-note p{font-size:.875rem;color:var(--muted);margin-top:5px}.offices-section{margin-top:32px}.office-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.office-card{background:white;border:1px solid var(--line);padding:28px;min-width:0;scroll-margin-top:150px}.office-card h3{font:600 1.8rem/1.2 var(--heading);margin-block:8px 14px}.office-name{color:var(--muted);margin-bottom:16px}.office-card address{font-style:normal;font-size:1rem;margin-bottom:12px}.office-phones,.office-websites{display:flex;flex-wrap:wrap;gap:5px 18px}.office-websites{margin-block:8px 18px;overflow-wrap:anywhere}.office-source{font-size:.875rem;color:var(--muted);padding-top:16px;border-top:1px solid var(--line);margin-bottom:16px}.office-card>a{font-size:.875rem}.directory-page .eyebrow{font-size:.875rem;letter-spacing:1px}
@media(max-width:1100px){.location-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.company-card-head{grid-template-columns:100px minmax(0,1fr);gap:15px}.company-card .company-logo{width:100px;height:76px}.company-card{padding:20px}}
@media(max-width:900px){.directory-page .header-inner{flex-wrap:wrap;gap:10px 20px}.directory-page .header-credit{display:none}.directory-page .top-nav{margin-left:auto}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-grid{grid-template-columns:1fr}.company-card-head{grid-template-columns:126px minmax(0,1fr)}.company-card .company-logo{width:126px;height:86px}.directory-results-head{align-items:flex-start}.company-profile-head{gap:20px}.company-profile-head .company-logo{width:150px;height:106px}}
@media(max-width:600px){.directory-main{padding-top:20px}.directory-page .header-inner{display:block;padding-block:13px}.directory-page .top-nav{display:flex;gap:24px;margin-top:9px;font-size:.875rem}.directory-page .top-nav a{padding-block:6px}.breadcrumbs{margin-bottom:24px}.directory-intro h1{font-size:2.25rem}.directory-stats>div{padding-inline:22px}.location-grid{gap:0 18px}.location-grid>a{display:block;font-size:.9375rem}.location-grid small{display:block;margin-top:3px}.directory-results-head{display:block}.directory-results-head h2{margin-bottom:20px}.directory-search{width:100%}.company-card{padding:20px}.company-card-head{grid-template-columns:88px minmax(0,1fr);gap:16px}.company-card .company-logo{width:88px;height:70px}.company-card h3{font-size:1.375rem}.company-addresses li{display:block}.company-addresses span{display:block;text-align:left}.company-card-actions{gap:5px}.company-profile-head{align-items:flex-start;flex-direction:column;gap:20px}.company-profile-head .company-logo{width:160px;height:105px}.office-grid{grid-template-columns:1fr}.office-card{padding:23px}.participation-note{padding:16px}.directory-page .brand-caption{text-align-last:auto}.directory-note h2{font-size:1.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.directory-search,.directory-page .site-header,.directory-page .site-footer{display:none}.company-grid,.office-grid{display:block}.company-card,.office-card{break-inside:avoid;margin-bottom:20px}.directory-main{width:100%;padding:0}.company-card[hidden]{display:none!important}.breadcrumbs{display:none}}
.fair-badge-pending{color:#59666f;background:#f3f5f6;border-color:#d9dfe2}.fair-badge-confirmed{color:#315c42;background:#eff5f0;border-color:#becfc3}.participation-note{background:#f0f3f5;border-left-color:#9aa8b2}.participation-note>p:first-child{margin-top:0}.directory-source-note a{display:inline-block}.directory-page .brand-caption{text-align-last:justify}
