/* Preserved press archive: restrained frames, ivory mounts, original scans. */
.news-grid{columns:3;column-gap:24px}.news-preview{display:grid;columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:32px;align-items:start}
.news-card{display:block;break-inside:avoid;margin:0 0 32px;min-width:0;background:transparent}.news-preview .news-card{margin:0}
.news-image{display:block;width:100%;padding:clamp(18px,3vw,30px);background:#eae3d4;border:7px solid #605444;border-radius:7px;outline:1px solid #bca77a;outline-offset:-5px;box-shadow:inset 0 0 0 1px #d8c8a2,inset 0 0 0 5px #81715b,inset 0 0 0 6px #c4af84,0 5px 14px #231f2015;cursor:zoom-in;transition:box-shadow 180ms ease,background-color 180ms ease}
.news-image img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;background:#f9f7f1;box-shadow:0 0 0 1px #c8beab,0 2px 5px #231f2015}
.news-card figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;background:transparent;color:#493f32;padding:14px 3px 0;font-size:14px;line-height:1.5}.news-card figcaption>span:first-child{font-weight:600}.news-enlarge{color:#74654b;font-size:13px}.news-image:focus-visible,.news-close:focus-visible{outline:3px solid #004a43;outline-offset:4px}
@media(hover:hover){.news-image:hover{background:#eee8db;box-shadow:inset 0 0 0 1px #d8c8a2,inset 0 0 0 5px #81715b,inset 0 0 0 6px #c4af84,0 7px 18px #231f2022}}
#news-dialog{width:min(1100px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:14px;border:1px solid #bca77a;border-radius:16px;background:#004a43;color:#fffdf8;overflow:auto}#news-dialog::backdrop{background:#001c19e6}.news-dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;position:sticky;top:-14px;background:#004a43;z-index:1;padding-block:6px}.news-close{width:44px;height:44px;border:1px solid #bca77a88;border-radius:50%;background:#ffffff08;color:#fffdf8;font-size:28px;line-height:1;cursor:pointer}.news-dialog-image{overflow:auto;background:#f8f5ee;border-radius:6px}.news-dialog-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}

@media(max-width:600px){.news-grid{columns:1}.news-preview{grid-template-columns:1fr;gap:24px}.news-card{margin-bottom:28px}.news-image{padding:20px;border-width:6px}.news-image img{max-height:520px}.news-preview .news-image img{max-height:380px}.news-preview .news-card:nth-child(n+2){display:none}#news-dialog{padding:10px}.news-dialog-bar{top:-10px}}
@media(prefers-reduced-motion:reduce){.news-image{transition:none}}

/* Phone option C: matching outer frames, complete scans contained inside. */
@media(max-width:600px){
 .news-image{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden}
 .news-image img,.news-preview .news-image img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;background:transparent;box-shadow:none}
}

/* Explicit image bounds prevent intrinsic scan sizes escaping their mounts. */
.news-image{position:relative;box-sizing:border-box;min-width:0;max-width:100%;overflow:hidden}
.news-image img{box-sizing:border-box;max-width:100%;min-width:0}
@media(max-width:600px){
 .news-image{display:block;aspect-ratio:4/3;height:auto;min-height:0}
 .news-image img,.news-preview .news-image img{position:absolute;top:20px;left:20px;width:calc(100% - 40px);height:calc(100% - 40px);max-width:calc(100% - 40px);max-height:calc(100% - 40px);margin:0;object-fit:contain}
}
/* Full-screen transparent click surface surrounds the actual image panel. */
#news-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:24px;border:0;border-radius:0;background:transparent;overflow:hidden;box-sizing:border-box;color:#fffdf8}
#news-dialog[open]{display:flex;align-items:center;justify-content:center}
.news-dialog-panel{width:min(1100px,100%);max-height:100%;overflow:auto;overscroll-behavior:contain;box-sizing:border-box;padding:14px;background:#004a43;border:1px solid #bca77a;border-radius:16px;box-shadow:0 12px 40px #0004}
.news-dialog-bar{top:-14px}
@media(max-width:600px){#news-dialog{padding:20px}.news-dialog-panel{padding:10px}.news-dialog-bar{top:-10px}}
