:root{--ink:#10233f;--muted:#5d6f86;--line:#d7e1ed;--canvas:#f4f7fb;--surface:#fff;--soft:#f8fbff;--brand:#1e4f91;--brand-2:#143c70;--accent:#b7791f;--focus:rgba(30,79,145,.28);--shadow:0 18px 48px rgba(15,45,80,.1);font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--canvas)}
*{box-sizing:border-box} body{margin:0;min-width:320px;background:linear-gradient(180deg,#edf4fc 0, var(--canvas) 310px);line-height:1.5}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.skip-link{position:fixed;top:8px;left:12px;z-index:9;padding:10px 14px;border-radius:10px;background:#10233f;color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{border-bottom:1px solid rgba(215,225,237,.9);background:rgba(255,255,255,.92);backdrop-filter:blur(15px);position:sticky;top:0;z-index:4}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-family:Poppins,Inter,sans-serif;font-weight:700;text-decoration:none}.brand img{filter:drop-shadow(0 4px 8px rgba(15,45,80,.14))}.site-header nav{display:flex;align-items:center;gap:16px}.site-header nav a{min-height:42px;display:inline-flex;align-items:center;color:#35506f;font-size:14px;font-weight:700;text-decoration:none}.site-header nav a:hover{color:var(--brand)}.site-header .nav-login{padding:9px 14px;border:1px solid #aec7e4;border-radius:10px;background:#fff}
.directory-hero{padding:58px 0 38px}.eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#785112;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.eyebrow.small{margin-bottom:5px;font-size:10px}.directory-hero h1{max-width:800px;margin:0;color:#10233f;font-family:Poppins,Inter,sans-serif;font-size:clamp(34px,5vw,57px);letter-spacing:-.04em;line-height:1.08}.intro{max-width:760px;margin:17px 0 0;color:var(--muted);font-size:18px;line-height:1.72}
.directory-layout{display:grid;grid-template-columns:290px minmax(0,1fr);align-items:start;gap:26px;padding-bottom:70px}.filters-panel,.directory-results{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:var(--shadow)}.filters-panel{position:sticky;top:94px;padding:22px}.filters-heading,.results-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.filters-heading h2,.results-topline h2{margin:0;font-family:Poppins,Inter,sans-serif;font-size:22px;line-height:1.25}.clear-button{min-height:38px;padding:7px 0;border:0;background:transparent;color:#43617f;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.clear-button:hover{text-decoration:underline}form{display:grid;gap:9px;margin-top:20px}label{color:#405772;font-size:12px;font-weight:800}input,select{width:100%;min-height:45px;padding:10px 12px;border:1px solid #cbd9e7;border-radius:10px;background:#fff;color:#10233f;font:inherit;font-size:14px}input::placeholder{color:#8292a5}input:focus,select:focus{border-color:var(--brand);outline:3px solid var(--focus);outline-offset:1px}.search-field{display:grid;gap:7px}.input-with-icon{position:relative;display:block}.input-with-icon i{position:absolute;top:50%;left:13px;color:var(--brand);transform:translateY(-50%);pointer-events:none}.input-with-icon input{padding-left:40px}.apply-button{min-height:46px;margin-top:8px;padding:10px 14px;border:1px solid var(--brand);border-radius:10px;background:var(--brand);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.apply-button:hover{background:var(--brand-2)}
.directory-results{min-height:530px;padding:clamp(20px,3vw,30px)}#directoryStatus{max-width:225px;margin:0;color:var(--muted);font-size:13px;font-weight:700;text-align:right}.active-filters{display:flex;flex-wrap:wrap;gap:8px;min-height:0;margin:18px 0 14px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #cad9e9;border-radius:999px;background:#f2f7fd;color:#3c5876;font-size:12px;font-weight:700}.filter-chip button{width:22px;height:22px;border:0;border-radius:50%;background:transparent;color:#3c5876;font:inherit;cursor:pointer}.filter-chip button:hover{background:#dceafa}.directory-results-list{display:grid;gap:12px}.profile-result{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--soft);transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease}.profile-result:hover{border-color:#8cb4df;box-shadow:0 10px 22px rgba(15,45,80,.08);transform:translateY(-1px)}.profile-photo{width:56px;height:68px;overflow:hidden;border:2px solid #c8dcf1;border-radius:10px;background:#e8f1fa}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-photo-fallback{display:grid;width:100%;height:100%;place-items:center;color:var(--brand);font-size:19px}.profile-main{min-width:0}.profile-main h3{margin:0;color:#10233f;font-family:Poppins,Inter,sans-serif;font-size:17px;line-height:1.25}.profile-title{margin:3px 0 8px;color:#45617d;font-size:13px}.profile-location{display:flex;align-items:center;gap:6px;margin:0;color:#5b728b;font-size:12px;font-weight:700}.profile-location i{color:#9b6a1f}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tag{padding:4px 7px;border-radius:7px;background:#eaf2fa;color:#355a7e;font-size:11px;font-weight:700}.tag.more{background:#f3eadb;color:#785112}.profile-link{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:9px 12px;border:1px solid #9ebce0;border-radius:10px;background:#fff;color:#174f91;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.profile-link:hover{border-color:var(--brand);background:#eef6ff}.directory-empty{padding:35px 20px;border:1px dashed #b9cade;border-radius:14px;background:#fafcff;color:#526b84;text-align:center}.directory-empty i{display:block;margin-bottom:9px;color:#926319;font-size:24px}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px}.pagination button{min-height:42px;padding:8px 12px;border:1px solid #bed0e4;border-radius:10px;background:#fff;color:#244f7c;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{color:#536b84;font-size:13px;font-weight:700}.site-footer{padding:24px 0;border-top:1px solid var(--line);background:#fff;color:#63758a;font-size:13px}
a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media(max-width:860px){.directory-layout{grid-template-columns:1fr}.filters-panel{position:static}.filters-panel form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.filters-panel form label{align-self:end}.filters-panel .search-field,.filters-panel .apply-button{grid-column:1/-1}.directory-results{min-height:0}}@media(max-width:620px){.shell{width:calc(100% - 28px)}.header-inner{min-height:64px}.site-header nav{gap:11px}.site-header nav a:not(.nav-login){font-size:0}.site-header nav a:not(.nav-login)::before{font-family:"Font Awesome 6 Free";font-size:15px;font-weight:900}.site-header nav a:first-child::before{content:"\f015"}.site-header nav a:nth-child(2)::before{content:"\f002"}.directory-hero{padding:37px 0 28px}.intro{font-size:16px}.filters-panel,.directory-results{border-radius:15px;padding:18px}.filters-panel form{grid-template-columns:1fr}.profile-result{grid-template-columns:50px minmax(0,1fr);gap:12px}.profile-photo{width:50px;height:60px}.profile-link{grid-column:1/-1;width:100%}.results-topline{display:block}#directoryStatus{max-width:none;margin-top:9px;text-align:left}.pagination{justify-content:space-between;gap:8px}.pagination span{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
