.site-shell { width: min(calc(100% - 2rem), var(--content-width)); margin: 0 auto; padding: var(--space-6) 0 var(--space-8); }
.site-header, .site-footer { display: grid; gap: var(--space-4); padding: var(--space-5) 0; border-bottom: 1px solid var(--color-border); }
.site-footer { border-top: 1px solid var(--color-border); border-bottom: 0; margin-top: var(--space-8); }
.brand-mark { display: grid; grid-template-columns: auto 1fr; gap: var(--space-4); align-items: start; }
.site-nav ul { list-style: none; display: flex; flex-wrap: wrap; gap: var(--space-3); padding: 0; margin: 0; }
.site-main { padding-top: var(--space-7); }
.foyer-hero, .portal-grid, .featured-grid, .listing-grid, .artifact-grid { display: grid; gap: var(--space-5); }
.foyer-hero { grid-template-columns: minmax(0, 1.5fr) minmax(22rem, 1fr); align-items: start; }
.foyer-figure-stack { display: grid; gap: var(--space-4); }
.portal-grid, .featured-grid, .listing-grid, .artifact-grid { grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); }
.page-layout, .dispatch-layout, .project-layout, .shrine-layout, .index-layout, .artifact-index { display: grid; gap: var(--space-6); }
.page-header { max-width: var(--reading-width); }
.prose, .prose--narrow { max-width: var(--reading-width); }
.prose--log { font-family: var(--font-body); }
.dispatch-hero { margin-bottom: var(--space-6); }
@media (max-width: 800px) { .foyer-hero, .brand-mark { grid-template-columns: 1fr; } }
