.content-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin: 20px 0; }
.content-card { background: var(--bg-card); border: 1px solid var(--border-light); border-radius: var(--radius-md); overflow: hidden; }
.content-card a { color: inherit; text-decoration: none; display: block; padding: 16px; }
.content-card img, .hero-photo { width: 100%; height: auto; object-fit: cover; border-radius: var(--radius-sm); }
.content-card h3 { font-size: 1.15rem; margin: 8px 0; }
.chip-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.chip { background: var(--teal-light); color: var(--deep-slate); border-radius: var(--radius-full); padding: 6px 12px; text-decoration: none; }
.reading { padding: 32px 0 64px; }
.prose { font-size: 1.125rem; line-height: 1.9; max-width: 42rem; }
.prose img { max-width: 100%; height: auto; }
.video-frame { position: relative; width: min(100%, 42rem); aspect-ratio: 16 / 9; margin: 16px 0; }
.video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.tool-form, .pager { display: grid; gap: 12px; max-width: 32rem; margin: 16px 0; }
.crumbs { margin-bottom: 12px; }
.maintenance-note, .form-error { color: #8a3b32; }
.pager a { margin-inline-end: 12px; }
