:root{color-scheme:dark}
.story-skeleton__quote{height:17.2em;margin-bottom:24px;padding-top:8px}
.story-skeleton__line{display:block;height:13px;width:94%;margin:0 0 18px;border-radius:4px;background:color-mix(in srgb,var(--text-secondary) 14%,var(--bg-elevated))}
.story-skeleton__line--short{width:68%}
.story-skeleton__avatar,.story-skeleton__icon{background:color-mix(in srgb,var(--text-secondary) 14%,var(--bg-elevated));border:0}
.story-skeleton__identity{flex:1;padding-top:6px}
.story-skeleton__identity .story-skeleton__line{height:12px;margin-bottom:14px}
.story-skeleton__actions{justify-content:flex-end;min-height:57px}
.story-skeleton__icon{display:block;width:20px;height:20px;border-radius:4px;margin:12px}
.story-skeleton{animation:story-loading-pulse 1.7s ease-in-out infinite}
@keyframes story-loading-pulse{50%{opacity:.62}}
@media(prefers-reduced-motion:reduce){.story-skeleton{animation:none}}
:root[data-theme="light"]{color-scheme:light;--bg-primary:#f8f7f4;--bg-elevated:#fff;--text-primary:#171512;--text-secondary:#57534e;--border-subtle:#e6e0d6;--gold:#806224}
body{background:var(--bg-primary);color:var(--text-primary);font-family:Inter,sans-serif}
.stories-page{max-width:1180px;margin:auto;padding:28px 24px 64px}.stories-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:56px}.stories-nav a{color:var(--gold);font-weight:700}.stories-page button{padding:12px 16px;border:1px solid var(--gold);border-radius:10px;background:var(--bg-elevated);color:var(--text-primary);cursor:pointer}.stories-page header{text-align:center;margin-bottom:36px}.stories-page h1{color:var(--gold);font-size:clamp(2rem,5vw,3.5rem);margin:12px 0}.stories-page header p,#stories-status{color:var(--text-secondary)}.stories-eyebrow{letter-spacing:.15em;text-transform:uppercase;font-weight:700}.stories-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:22px;align-items:start}.story-card{min-width:0;padding:26px;border:1px solid var(--border-subtle);border-left:3px solid var(--gold);border-radius:18px;background:var(--bg-elevated)}.story-card blockquote{margin:0 0 24px;max-height:17.2em;overflow-y:auto;white-space:pre-line;overflow-wrap:anywhere;line-height:1.72;padding-right:12px;scrollbar-width:thin;scrollbar-color:var(--gold) var(--bg-elevated)}.story-person{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border-subtle);padding-top:18px;overflow-wrap:anywhere}.story-person img,.story-avatar{width:52px;height:52px;flex:none;border:1px solid var(--gold);border-radius:50%;object-fit:cover}.story-avatar{display:grid;place-items:center;color:var(--gold);font-weight:700}.story-person small{display:block;color:var(--text-secondary);margin-top:6px;line-height:1.5}a:focus-visible,button:focus-visible,blockquote:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}@media(max-width:600px){.stories-page{padding:20px 18px 48px}.stories-nav{margin-bottom:36px}.story-card{padding:22px}}

/* Homepage navigation shell on the student stories page. */
.stories-page{padding-top:120px}
.header-inner{gap:18px}
.public-theme-toggle{background:transparent;border:0;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:12px;white-space:nowrap}
:root[data-theme="light"] .site-header{background:rgba(248,247,244,.92)}
.site-header .cta-btn{color:#171512;white-space:nowrap}
.nav-link[aria-current="page"]{color:var(--gold)}
@media(max-width:1400px){.site-header .nav-links{display:none}.mobile-menu-btn{display:flex;align-items:center;justify-content:center}}
@media(max-width:768px){.stories-page{padding-top:96px}.header-inner{gap:10px}.logo{max-width:150px;height:auto}.site-header .cta-btn{padding:10px 14px;font-size:12px}.public-theme-toggle{font-size:11px}.mobile-menu{top:64px}}
@media(max-width:420px){.logo{max-width:110px}.public-theme-toggle{max-width:52px;white-space:normal}.header-inner{gap:8px}}
.mobile-menu{top:80px;background:var(--bg-elevated)}@media(max-width:768px){.mobile-menu{top:64px}}

.site-header .nav-links{gap:24px;flex-shrink:0}.site-header .nav-link{white-space:nowrap}.site-header .logo,.site-header .cta-btn,.public-theme-toggle,.mobile-menu-btn{flex-shrink:0}
.mobile-menu{max-height:calc(100dvh - 80px);overflow-y:auto}
@media(min-width:1401px){#mobile-menu{display:none}}
@media(max-width:768px){.mobile-menu{max-height:calc(100dvh - 64px)}}
