
.correspondence-section { margin-top:48px; padding-top:42px; border-top:2px solid #d8c8df; }
.correspondence-section .section-intro { max-width:760px; }
.correspondence-section h2 { margin-bottom:22px; }
.correspondence-context { padding:24px 28px; background:#f6f2f8; border-left:4px solid #9673a8; margin:28px 0; }
.correspondence-context p:last-child { margin-bottom:0; }
.correspondence-jumps { display:flex; flex-wrap:wrap; gap:12px 26px; padding:16px 0 0; font:16px/1.6 Arial,sans-serif; }
.recording-card { border:1px solid #dacde0; padding:30px; margin:30px 0 0; background:#fdfbfe; }
.recording-card h3 { font-size:27px; line-height:1.3; color:#382843; margin:0 0 18px; }
.recording-meta { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0 0 22px; color:#65596d; font:15px/1.6 Arial,sans-serif; }
.recording-card audio { display:block; width:100%; margin:20px 0; }
.recording-downloads { display:flex; flex-wrap:wrap; gap:12px 24px; font:16px/1.6 Arial,sans-serif; margin:20px 0; }
.transcript-status { border-left:3px solid #b18330; padding:12px 16px; background:#fbf4e4; font-size:17px; }
.recording-card details { border-top:1px solid #dacde0; padding-top:18px; margin-top:24px; }
.recording-card summary { cursor:pointer; font:600 17px/1.6 Arial,sans-serif; color:#653a7c; }
.transcript-content { max-height:620px; overflow:auto; margin-top:24px; padding-right:12px; }
.transcript-paragraph { font-size:18px; line-height:1.75; }
.seek-time { display:inline; background:none; border:0; color:#653a7c; text-decoration:underline; padding:0 6px 0 0; font:14px/1.6 Arial,sans-serif; cursor:pointer; }
.transcript-review-notes { white-space:pre-wrap; font:16px/1.65 Georgia,serif; }
.family-page .family-intro { max-width:760px; margin-bottom:32px; }
.family-military-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.family-military-grid figure { min-width:0; margin:0; padding:16px; background:#f6f2f8; border:1px solid #e4dbe8; text-align:left; }
.family-military-grid .military-portrait { display:block; height:365px; width:100%; background:#eee9f0; }
.family-military-grid .military-portrait img { display:block; width:100%; height:100%; object-fit:contain; margin:0; }
.family-military-grid figcaption { color:#302937; font-size:18px; line-height:1.6; margin-top:20px; }
.family-military-grid figcaption h2 { font-size:25px; margin:0 0 10px; }
.family-military-grid figcaption p { margin:0 0 12px; }
.family-military-grid .service-branch { font:13px/1.5 Arial,sans-serif; color:#775288; letter-spacing:.06em; text-transform:uppercase; }
.family-military-grid .portrait-note { font-size:14px; color:#65596d; }
.red-horse-history { margin-top:40px; padding:30px; background:#f6f2f8; border-left:4px solid #9673a8; }
.red-horse-history h2 { font-size:29px; }
.family-page .archive-note { font-size:16px; color:#65596d; margin:30px 0 0; }
@media(max-width:1000px) { .family-military-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .family-military-grid { grid-template-columns:minmax(0,1fr); } .family-military-grid .military-portrait { height:400px; } .recording-card { padding:20px 16px; } .correspondence-context,.red-horse-history { padding:20px; } .recording-card h3 { font-size:25px; } .family-page h1 { font-size:36px; overflow-wrap:anywhere; } }
@media print { .recording-card audio,.seek-time,.correspondence-jumps { display:none; } .transcript-content { max-height:none; overflow:visible; } .family-military-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .family-military-grid figure { break-inside:avoid; } }
