/* Shared editorial typography and first-party directory layout. */
p, .art-body p, .art-body .key-stat p { text-align: justify !important; text-justify: inter-word; hyphens: auto; overflow-wrap: anywhere; }
.awards-data { padding: 4rem 0; background: var(--cream, #faf8f2); color: var(--navy, #101729); }
.awards-layout { width: 90%; max-width: 1500px; margin: auto; display: grid; grid-template-columns: minmax(0,4fr) minmax(220px,1fr); gap: 2rem; align-items: start; }
.awards-content { min-width: 0; }
.awards-content h2 { margin: 2rem 0 1rem; font-size: clamp(1.65rem,2.5vw,2.3rem); }
.awards-content p { margin: 1rem 0; line-height: 1.85; }
.awards-content a { color: #705512; text-decoration: underline; text-underline-offset: 3px; }
.nomination-sidebar { align-self: stretch; min-width: 0; }
.nomination-widget { position: sticky; top: 100px; background: var(--navy, #101729); color: #fff; padding: 1.35rem; border-top: 3px solid var(--gold, #c9a227); }
.nomination-widget h2 { color:#fff; font-size:1.65rem; margin: .7rem 0; line-height:1.2; }
.nomination-widget p { font-size:.92rem; line-height:1.7; color:#e4e5e8; }
.nomination-widget .btn { width:100%; justify-content:center; margin:1rem 0; text-decoration:none; color:#101729; white-space:normal; }
.nomination-widget nav a { display:block; padding:.6rem 0; color:#efcf75; text-decoration:underline; font-size:.9rem; }
.nomination-widget .small { font-size:.8rem; }
.awards-statistics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:#d9cfb6; border:1px solid #d9cfb6; margin:1.5rem 0; }
.awards-statistics > div { background:#fff; padding:1rem; display:flex; flex-direction:column-reverse; }
.awards-statistics dt { font-size:.78rem; line-height:1.5; }
.awards-statistics dd { margin:0; font-size:1.8rem; font-weight:600; }
.data-table-wrap { overflow-x:auto; margin:1.5rem 0; }
.data-table-wrap table { width:100%; border-collapse:collapse; font-size:.94rem; background:#fff; }
.data-table-wrap caption { text-align:left; font-weight:700; padding:.8rem 0; font-size:1.1rem; }
.data-table-wrap th,.data-table-wrap td { text-align:left; padding:.8rem; border-bottom:1px solid #dedbd2; vertical-align:top; }
.data-table-wrap thead { background:#ece6d8; }
.record-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.record-card { background:white; padding:1.25rem; border:1px solid #e0dacb; overflow-wrap:anywhere; }
.record-card h3 { font-size:1.5rem; line-height:1.25; margin:.5rem 0; }
.record-card img { float:right; object-fit:contain; margin:0 0 1rem 1rem; max-width:80px; }
.record-status { font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; color:#705512; font-weight:700; }
.record-card .record-program { font-size:.88rem; font-weight:600; }
.record-card dl > div { display:grid; grid-template-columns:75px minmax(0,1fr); gap:.75rem; font-size:.86rem; margin:.4rem 0; }
.record-card dd { margin:0; }
.record-card dt { color:#555; }
.record-card a { display:inline-block; padding:.7rem 0; }
.data-methodology { margin:2.5rem 0; border-top:1px solid #bfb49c; font-size:.9rem; }
.nomination-photo { width:90%; max-width:1500px; margin:3rem auto; background:linear-gradient(90deg,rgba(10,14,26,.94),rgba(10,14,26,.65)),url('/images/Gala-Ceremony-Jun-2025.jpg') center/cover; color:white; padding:clamp(2rem,5vw,5rem); }
.nomination-photo > div { max-width:650px; }
.nomination-photo h2 { color:white; }
.nomination-photo p { margin:1rem 0 1.75rem; }
.directory-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin:1.5rem 0; }
.directory-filters label { display:flex; flex-direction:column; gap:.35rem; font-size:.85rem; font-weight:600; }
.directory-filters input,.directory-filters select { min-height:44px; width:100%; padding:.6rem; border:1px solid #8b816e; background:#fff; color:#101729; font:inherit; }
.directory-filters button { min-height:44px; cursor:pointer; }
.directory-pagination { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; margin:2rem 0; }
.directory-pagination a { padding:.6rem 1rem; border:1px solid #8b816e; }
:focus-visible { outline:3px solid #986e12; outline-offset:4px; }
@media(max-width:1000px) { .awards-layout { grid-template-columns:1fr; } .nomination-widget { position:static; } .directory-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .record-grid { grid-template-columns:1fr; } .awards-statistics { grid-template-columns:repeat(2,minmax(0,1fr)); } .directory-filters { grid-template-columns:1fr; } .awards-layout { width:90%; } .record-card { padding:1rem; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
@media print { .nomination-sidebar,.nomination-photo { display:none; } .awards-layout { display:block; width:100%; } }
@media(max-width:600px) { .btn { max-width:100%; white-space:normal; overflow-wrap:anywhere; text-align:center; } }
