.sr-core-page { min-height: 70vh; background: #fff; }
.sr-core-hero { padding: clamp(56px, 8vw, 96px) 0; background: var(--sr-gradient-dark); color: var(--sr-white); }
.sr-core-hero h1 { max-width: 18ch; margin: 0; color: var(--sr-white); font-size: var(--sr-text-display); }
.sr-core-hero .sr-lead { color: var(--sr-white-copy); }
.sr-core-revival-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sr-space-6); align-items: start; }
.sr-core-directory-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sr-space-5); }
.sr-core-directory-card { padding: 0; overflow: hidden; }
.sr-core-directory-image { display: block; aspect-ratio: 16 / 10; background: var(--sr-surface-tint); overflow: hidden; }
.sr-core-directory-grid--people .sr-core-directory-image { aspect-ratio: 1 / 1; }
.sr-core-directory-image img { width: 100%; height: 100%; object-fit: cover; }
.sr-core-directory-card > div { padding: var(--sr-space-5); }
.sr-core-directory-card h2 { margin: 0 0 var(--sr-space-3); font-size: var(--sr-text-h3); }
.sr-core-directory-card h2 a { color: var(--sr-navy-900); text-decoration: none; }
.sr-core-directory-card p { margin: 0; color: var(--sr-muted); }
.sr-core-directory-card p + p { margin-top: var(--sr-space-3); }
.sr-core-count { font-weight: var(--sr-weight-semibold); }
.sr-core-single-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: var(--sr-space-6); align-items: start; }
.sr-core-profile-grid { display: grid; grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr); gap: var(--sr-space-7); align-items: start; }
.sr-core-filters { display: grid; grid-template-columns: minmax(220px, 1fr) 100px 190px auto auto; gap: var(--sr-space-3); align-items: end; margin: 0 0 var(--sr-space-7); padding: var(--sr-space-5); background: #fff; border: 1px solid var(--sr-border); border-radius: var(--sr-radius-lg); box-shadow: var(--sr-shadow-soft); }
.sr-core-filters--directory { grid-template-columns: minmax(220px, 1fr) 100px auto auto; }
.sr-core-filters label { display: grid; gap: 6px; color: var(--sr-ink); font-weight: 700; font-size: .84rem; }
.sr-core-filters input, .sr-core-filters select { width: 100%; min-height: 44px; margin: 0; padding: 8px 11px; border: 1px solid var(--sr-border); border-radius: var(--sr-radius); background: #fff; color: var(--sr-ink); font: inherit; }
.sr-core-filter-reset { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.sr-core-details h2, .sr-core-profile-grid h2 { margin-top: 0; }
.sr-core-facts { margin: 0; }
.sr-core-facts > div { display: grid; grid-template-columns: minmax(110px, .35fr) 1fr; gap: var(--sr-space-4); padding: var(--sr-space-4) 0; border-bottom: 1px solid var(--sr-border-soft); }
.sr-core-facts dt { font-weight: var(--sr-weight-bold); color: var(--sr-navy-900); }
.sr-core-facts dd { margin: 0; }
.sr-core-copy { margin-top: var(--sr-space-6); }
.sr-core-media img, .sr-core-profile-card > img { width: 100%; height: auto; border-radius: var(--sr-radius); }
.sr-core-person-list { display: grid; gap: var(--sr-space-3); }
.sr-core-person-list a { display: flex; min-height: 64px; padding: var(--sr-space-3); border: 1px solid var(--sr-border); border-radius: var(--sr-radius); align-items: center; gap: var(--sr-space-3); color: var(--sr-navy-900); font-weight: var(--sr-weight-bold); text-decoration: none; }
.sr-core-person-list .sr-core-person-list__av { flex: none; width: 48px; height: 48px; }
.sr-core-person-list span { display: grid; gap: 2px; min-width: 0; }
.sr-core-person-list small, .sr-core-service small, small.sr-core-service { color: var(--sr-muted); font-size: var(--sr-text-support); font-weight: var(--sr-weight-body); }
.sr-core-stack { display: grid; gap: var(--sr-space-6); min-width: 0; }
.sr-core-section > h2 { margin-top: 0; }
.sr-core-service { display: block; }
.sr-core-service + .sr-core-service { margin-top: var(--sr-space-1); }
.sr-core-social { display: flex; flex-wrap: wrap; gap: var(--sr-space-2); margin: var(--sr-space-4) 0 0; padding: 0; list-style: none; }
.sr-core-social a { display: inline-flex; min-height: 46px; align-items: center; gap: var(--sr-space-2); padding: 0 var(--sr-space-3); border: 1px solid var(--sr-border); border-radius: var(--sr-radius); color: var(--sr-navy-900); font-weight: var(--sr-weight-bold); text-decoration: none; }
.sr-core-social a:focus-visible, .sr-core-person-list a:focus-visible { outline: 3px solid var(--sr-blue-500); outline-offset: 2px; }
.sr-core-quote { margin: 0 0 var(--sr-space-4); padding-left: var(--sr-space-4); border-left: 4px solid var(--sr-gold-400); color: var(--sr-navy-900); font-family: var(--sr-font-heading); font-size: 1.2rem; }
.sr-core-empty, .sr-core-empty-media { padding: var(--sr-space-7); border: 1px dashed var(--sr-border-strong); border-radius: var(--sr-radius); background: var(--sr-white); color: var(--sr-muted); text-align: center; }
.sr-core-page .navigation.pagination { margin-top: var(--sr-space-7); }
.sr-core-archive-section { margin-top: var(--sr-space-9); }
.sr-core-archive-section:first-of-type { margin-top: 0; }
.sr-core-archive-section__header { display: flex; align-items: center; justify-content: space-between; gap: var(--sr-space-5); margin-bottom: var(--sr-space-6); padding: var(--sr-space-4) var(--sr-space-5); border: 1px solid var(--sr-border); border-left: 4px solid var(--sr-gold-400); border-radius: var(--sr-radius); background: var(--sr-surface-soft); }
.sr-core-archive-section__header h2 { min-width: 0; margin: 0; color: var(--sr-navy-950); font-size: var(--sr-text-h2); overflow-wrap: anywhere; }
.sr-core-archive-section__header p { max-width: 28ch; margin: 0; color: var(--sr-muted); font-size: var(--sr-text-support); line-height: 1.45; text-align: right; }
.sr-core-past-notice { padding: var(--sr-space-5) 0; border-bottom: 1px solid var(--sr-border); background: var(--sr-surface-soft); }
.sr-core-past-notice__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--sr-space-6); }
.sr-core-past-notice__eyebrow { margin: 0 0 var(--sr-space-1); color: var(--sr-muted); font-size: var(--sr-text-label); font-weight: var(--sr-weight-bold); letter-spacing: .08em; text-transform: uppercase; }
.sr-core-past-notice h2 { margin: 0; color: var(--sr-navy-950); font-size: var(--sr-text-h3); }
.sr-core-past-notice p:last-child { max-width: 68ch; margin: var(--sr-space-2) 0 0; color: var(--sr-muted); }
.sr-core-past-notice--status { border-left: 4px solid var(--sr-gold-600); }
.sr-core-single--past .sr-core-single-grid { filter: grayscale(1); opacity: .72; }
.sr-core-output-actions { margin-bottom: var(--sr-space-5); }
.sr-core-output-list { display: grid; gap: var(--sr-space-4); }
.sr-core-output-entry h2, .sr-core-output-entry p { margin: 0; }
.sr-core-output-entry p + p { margin-top: var(--sr-space-2); }
@media print { .sr-site-header, .sr-site-footer, .sr-core-output-actions { display: none !important; } .sr-core-hero { padding: 20px 0; background: #fff; color: #000; } .sr-core-hero h1 { color: #000; } .sr-section { padding: 0; } .sr-core-output-entry { break-inside: avoid; box-shadow: none; } }
@media (max-width: 900px) { .sr-core-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .sr-core-single-grid, .sr-core-profile-grid { grid-template-columns: 1fr; } .sr-core-filters, .sr-core-filters--directory { grid-template-columns: 1fr 1fr; } }
@media (max-width: 650px) { .sr-core-revival-grid, .sr-core-directory-grid { grid-template-columns: 1fr; } .sr-core-facts > div { grid-template-columns: 1fr; gap: var(--sr-space-1); } .sr-core-filters, .sr-core-filters--directory { grid-template-columns: 1fr; } .sr-core-archive-section__header, .sr-core-past-notice__inner { align-items: flex-start; flex-direction: column; gap: var(--sr-space-2); } .sr-core-archive-section__header p { max-width: none; text-align: left; } }
