/* Selected from the three-direction lab: Dark gallery, September 4, 2026. */
.case-directory {
    --selected-work-surface: #101917;
    --selected-work-copy: #f4f0e6;
    background: var(--selected-work-surface);
    color: var(--selected-work-copy);
    border-block: 1px solid #11120f;
    padding-top: clamp(5.5rem, 7vw, 7rem);
    gap: 3rem;
}
.case-directory-header { max-width: none; grid-template-columns: minmax(0, 1fr) auto; gap: 1.8rem 2rem; }
.case-directory-header h2 { grid-column: 1 / -1; max-width: 18ch; font-size: clamp(3.5rem, 5.9vw, 6rem); line-height: .95; }
.case-directory-header > span { max-width: 36rem; padding: 0; font-size: 1rem; line-height: 1.5; font-weight: 500; color: var(--selected-work-copy); }
.case-directory-header > p { grid-column: 2; min-width: 0; gap: 1rem; color: var(--selected-work-copy); font-size: .75rem; line-height: 1.3; }
.case-directory-card { min-height: 32rem; border: 1px solid #f4f0e63d; }
.case-directory-card-top > p { font-size: .75rem; line-height: 1.5; letter-spacing: .02em; }
.case-directory-card h3 { font-size: clamp(2.8rem, 4.5vw, 4.5rem); line-height: .95; }
.case-directory-summary { font-size: 1rem; line-height: 1.5; font-weight: 500; }
.case-directory-actions { grid-template-columns: 1fr; gap: .85rem; }
.case-directory-experience > span { font-size: .875rem; }
.case-directory-experience small { font-size: .75rem; line-height: 1.4; color: #24291f; letter-spacing: .02em; }
.case-directory-read { font-size: .875rem; line-height: 1.4; letter-spacing: .02em; }
.case-directory-card[data-directory-case="ready-set-van"] { min-height: 27rem; }
.landing-header[data-directory-active="true"] { color: #f4f0e6; --header-surface: #101917; }
.landing-header[data-directory-active="true"] .landing-role { visibility: hidden; }

@media (min-width: 48.01rem) and (max-width: 75rem) {
    .case-directory { padding-left: calc(var(--signal-spine-x) + 4rem); padding-right: 2rem; }
    .case-directory-header { grid-template-columns: 1fr; }
    .case-directory-header > p { grid-column: 1; }
}
@media (max-width: 48rem) {
    /* Keep fixed identity text off the narrow case-reading column. */
    .landing-header[data-directory-active="true"] .landing-header-main { visibility: hidden; }
    .case-directory { padding: 5rem 1rem 3rem calc(var(--signal-spine-x) + 2rem); gap: 2rem; }
    .case-directory-header { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
    .case-directory-header h2 { max-width: 13ch; font-size: clamp(2.65rem, 8.8vw, 3.8rem); }
    .case-directory-header > span { margin: 0; font-size: 1rem; }
    .case-directory-header > p { grid-column: 1; margin: 0; }
    .case-directory-grid { grid-template-columns: 1fr; gap: 1rem; }
    .case-directory-card,
    .case-directory-card[data-directory-case="ready-set-van"] { grid-column: 1; min-height: 0; padding: 1.25rem; gap: 1.5rem; }
    .case-directory-card h3 { max-width: 12ch; font-size: clamp(2.5rem, 8.5vw, 3.5rem); }
    .case-directory-motion { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    /* The static hero is one screen tall: it must end before the directory starts. */
    body[data-layout="mature"] .registration-stage { height: 100svh; }
    .case-directory { margin-top: 0; }
}
