.directory-main { padding-top: 56px; }
.directory-heading { padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.directory-eyebrow { margin: 0 0 14px; font-size: .7rem; letter-spacing: .16em; color: var(--gold); font-weight: 600; }
.directory-heading h1 { margin: 0; color: var(--ink); font: 600 clamp(2rem, 5vw, 3rem)/1.3 var(--header-font); }
.directory-heading h1 span { color: var(--gold); margin-left: 4px; }
.directory-heading > p:last-child { margin: 15px 0 0; color: var(--muted); font-size: .9rem; }
.directory-section { margin-top: 32px; }
.directory-section h2 { margin: 0 0 16px; color: var(--ink); font-size: 1rem; font-weight: 600; }
.directory-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
.directory-grid li { min-width: 0; }
.directory-grid a { display: flex; flex-direction: column; height: 100%; padding: 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.directory-grid a:hover { border-color: var(--gold-line); }
.directory-title { display: flex; justify-content: space-between; gap: 14px; color: var(--ink); font-weight: 600; font-size: .95rem; }
.directory-title > span { color: var(--gold); }
.directory-description { display: block; margin: 8px 0 14px; color: var(--muted); font-size: .82rem; }
.directory-path { display: block; margin-top: auto; color: var(--gold); font-size: .72rem; overflow-wrap: anywhere; }
.directory-note { margin: 30px 0 0; font-size: .8rem; color: var(--muted); }
.directory-note a { color: var(--gold); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 600px) { .directory-main { padding-top: 32px; } .directory-grid { grid-template-columns: minmax(0,1fr); } .directory-grid a { padding: 17px; } }
