.honors-hero { padding: clamp(24px, 4vw, 56px); }
.honors-grid { grid-column: 1 / -1; width: 100%; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.honor-card { display: grid; grid-template-columns: minmax(120px, 38%) minmax(0, 1fr); min-width: 0; color: inherit; text-decoration: none; overflow: hidden; }
.honor-card-photo { background: var(--bg, #f7f7f5); aspect-ratio: 1; min-height: 210px; }
.honor-card-photo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.honor-card-copy { padding: clamp(18px, 2vw, 32px); min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.honor-card-copy h2 { margin: 0; font-size: clamp(22px, 2.2vw, 34px); line-height: 1.1; }
.honor-card-copy p { margin: 0; line-height: 1.5; }
.honor-card-copy strong { margin-top: auto; color: var(--purple); }
.honor-card:hover strong, .honor-card:focus-visible strong { text-decoration: underline; }
.honor-detail .about-writing-body { overflow-wrap: anywhere; }
.honor-back { grid-column: 1 / -1; padding: 22px clamp(20px, 3vw, 42px); }
.honor-back a { color: var(--purple); text-decoration: none; font-weight: 700; }
.honor-video { grid-column: 1 / -1; padding: clamp(20px, 3vw, 42px); }
.honor-video h2 { margin: 8px 0 20px; }
.honor-video-frame { width: 100%; max-width: 1000px; aspect-ratio: 16 / 9; background: #111; }
.honor-video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.honor-video-direct { display: block; width: 100%; max-width: 1000px; max-height: 75vh; background: #111; }
@media (max-width: 1100px) { .honors-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) {
    .honor-card { grid-template-columns: 1fr; }
    .honor-card-photo { aspect-ratio: 4 / 3; min-height: 0; }
    .honor-card-copy { gap: 10px; }
}
