:root{--ink:#20221f;--ink-2:#292c28;--paper:#f0eee7;--paper-2:#fcfbf6;--line:#d1cec4;--moss:#69775d;--ochre:#c99443;--muted:#656a63;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}.directory-shell{width:min(1180px,calc(100% - 3rem));margin-inline:auto}.directory-topbar{background:var(--ink);color:var(--paper-2);border-bottom:1px solid #3d403b}.directory-topbar .directory-shell{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.directory-brand{display:flex;gap:.7rem;text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.13em}.directory-brand span{color:#b7bdaf;font-weight:600}.directory-nav{display:flex;gap:1.4rem;font-size:.76rem}.directory-nav a{color:#d8d9d2;text-underline-offset:4px}.directory-kicker{margin:0;color:var(--moss);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.directory-hero{padding:clamp(4.5rem,10vw,8rem) 0 4.5rem;background:var(--ink);color:var(--paper-2)}.directory-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(3rem,8vw,8rem);align-items:end}.directory-hero h1,.directory-section h2{font-family:var(--serif);font-weight:400;letter-spacing:-.04em}.directory-hero h1{max-width:830px;margin:.65rem 0 1.4rem;font-size:clamp(3.7rem,8vw,7.2rem);line-height:.9}.directory-hero p{max-width:650px;margin:0;color:#d1d3cc;font-size:clamp(1.02rem,1.7vw,1.2rem)}.directory-stat{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#50534d;border:1px solid #50534d}.directory-stat div{padding:1.1rem;background:#242723}.directory-stat strong{display:block;font-family:var(--serif);font-size:2.4rem;font-weight:400;line-height:1}.directory-stat span{display:block;margin-top:.4rem;color:#b9bdb4;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.directory-index{padding:1rem 0 6rem}.directory-section{display:grid;grid-template-columns:minmax(210px,.55fr) minmax(0,1.45fr);gap:clamp(2rem,7vw,6rem);padding:4.5rem 0;border-bottom:1px solid var(--line)}.directory-section-head{position:sticky;top:1.5rem;align-self:start}.directory-section h2{margin:.55rem 0;font-size:clamp(1.9rem,3vw,2.8rem);line-height:1}.directory-section-head p{max-width:310px;margin:.8rem 0 0;color:var(--muted);font-size:.88rem}.directory-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.directory-list li{border-bottom:1px solid var(--line)}.directory-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.15rem .25rem;color:inherit;text-decoration:none;transition:background .2s,padding .2s}.directory-list a:hover,.directory-list a:focus-visible{padding-inline:1rem;background:var(--paper-2);outline:none}.directory-list strong{font-family:var(--serif);font-size:clamp(1.1rem,1.8vw,1.35rem);font-weight:400;line-height:1.2}.directory-list small{color:var(--muted);font-size:.68rem;overflow-wrap:anywhere}.directory-list .directory-arrow{margin-left:.4rem;color:var(--ochre)}.directory-note{margin-top:1.2rem;padding:1.2rem;border:1px solid var(--line);background:var(--paper-2);color:var(--muted);font-size:.82rem}.directory-footer{padding:2.5rem 0;background:var(--ink);color:#bfc2ba;font-size:.78rem}.directory-footer .directory-shell{display:flex;justify-content:space-between;gap:2rem}.directory-footer nav{display:flex;flex-wrap:wrap;gap:1.2rem}.directory-footer a{color:inherit;text-underline-offset:3px}
@media(max-width:760px){.directory-shell{width:min(100% - 2rem,1180px)}.directory-topbar .directory-shell{min-height:62px}.directory-nav a:not(:last-child){display:none}.directory-hero{padding:4rem 0 3rem}.directory-hero-grid,.directory-section{grid-template-columns:1fr}.directory-hero h1{font-size:clamp(3.5rem,17vw,5.2rem)}.directory-stat{margin-top:1rem}.directory-section{padding:3rem 0}.directory-section-head{position:static}.directory-list a{grid-template-columns:1fr}.directory-list small{margin-top:-.6rem}.directory-footer .directory-shell{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.directory-list a{transition:none}}
