/* Dossier (Capital Review) — briefing sheet: lead memo + ruled memo table */
.epg-dos { --dos-rule: var(--text-main); --dos-line: var(--border); --dos-serif: var(--font-heading, 'Merriweather'), Georgia, serif; }
.epg-dos__sheet { position: relative; }
.epg-dos__strip { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; padding: 12px 0; margin-bottom: 34px; border-top: 4px double var(--dos-rule); border-bottom: 1px solid var(--dos-rule); }
.epg-dos__stamp { display: inline-flex; align-items: center; gap: 10px; color: var(--accent-text, var(--accent)); font: 800 11.5px/1 var(--font-body, 'Inter'), sans-serif; letter-spacing: 2.4px; text-transform: uppercase; }
.epg-dos__stamp::before { content: ''; width: 10px; height: 10px; background: var(--accent); }
.epg-dos__strip-meta { display: inline-flex; align-items: center; gap: 10px; color: var(--text-muted); font: 600 12px/1 var(--font-body, 'Inter'), sans-serif; letter-spacing: .6px; text-transform: uppercase; font-variant-numeric: tabular-nums; }

.epg-dos__grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); gap: 0 44px; }
.epg-dos__grid.is-solo { grid-template-columns: minmax(0, 1fr); }

/* Lead memo */
.epg-dos__lead { display: flex; flex-direction: column; min-width: 0; }
.epg-dos__label { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-bottom: 16px; font: 700 11px/1 var(--font-body, 'Inter'), sans-serif; letter-spacing: 1.6px; text-transform: uppercase; color: var(--text-main); }
.epg-dos__label > span { display: inline-flex; align-items: center; gap: 10px; }
.epg-dos__label > span::after { content: ''; width: 26px; height: 1px; background: var(--dos-rule); }
.epg-dos__desk { color: var(--accent-text, var(--accent)) !important; font: 700 11px/1.3 var(--font-body, 'Inter'), sans-serif; letter-spacing: 1.4px; text-transform: uppercase; }
.epg-dos__title { margin: 0 0 16px; font-family: var(--dos-serif); font-size: clamp(1.75rem, 1.15rem + 1.7vw, 2.65rem); font-weight: 900; line-height: 1.16; letter-spacing: -.6px; }
.epg-dos__title a, .epg-dos__memo-title a { color: var(--text-main); background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .35s ease, color .2s; }
.epg-dos__title a:hover, .epg-dos__memo-title a:hover { color: var(--accent-text, var(--accent)); background-size: 100% 1px; }
.epg-dos__standfirst { margin: 0 0 18px; padding-left: 16px; border-left: 3px solid var(--accent); color: color-mix(in srgb, var(--text-main) 74%, transparent); font-family: var(--dos-serif); font-size: 1.06rem; font-style: italic; font-weight: 300; line-height: 1.7; }
.epg-dos .epg-dos__lead .epj-meta { margin-bottom: 22px; text-transform: uppercase; letter-spacing: .5px; font-size: 11.5px; }
.epg-dos__media { display: block; aspect-ratio: 16 / 9; margin-top: auto; overflow: hidden; border-radius: 2px; }
.epg-dos__media img, .epg-dos__media .epj-ph { width: 100%; height: 100%; object-fit: cover; filter: saturate(.85); transition: transform .8s ease, filter .4s; }
.epg-dos__lead:hover .epg-dos__media img { transform: scale(1.03); filter: none; }

/* Memo table */
.epg-dos__memos { min-width: 0; padding-left: 44px; border-left: 1px solid var(--dos-line); }
.epg-dos__thead, .epg-dos__memo { display: grid; grid-template-columns: 46px minmax(0, 1fr) 54px; gap: 14px; align-items: baseline; }
.epg-dos__thead { padding: 0 0 10px; border-bottom: 2px solid var(--dos-rule); color: var(--text-muted); font: 700 10.5px/1 var(--font-body, 'Inter'), sans-serif; letter-spacing: 1.6px; text-transform: uppercase; }
.epg-dos__thead span:last-child, .epg-dos__read { text-align: right; }
.epg-dos__list { margin: 0; padding: 0; list-style: none; counter-reset: none; }
.epg-dos__memo { position: relative; margin: 0; padding: 17px 0; border-bottom: 1px solid var(--dos-line); transition: background-color .25s; }
.epg-dos__memo::marker { content: none; }
.epg-dos__memo::before { content: ''; position: absolute; left: -44px; top: -1px; bottom: -1px; width: 3px; background: var(--accent); transform: scaleY(0); transform-origin: top; transition: transform .3s ease; }
.epg-dos__memo:hover::before { transform: scaleY(1); }
.epg-dos__n { color: var(--accent-text, var(--accent)); font-family: var(--dos-serif); font-size: 1.35rem; font-weight: 900; line-height: 1; font-variant-numeric: lining-nums tabular-nums; }
.epg-dos__subject { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.epg-dos__subject .epg-dos__desk { font-size: 10.5px; }
.epg-dos__memo-title { margin: 0; font-family: var(--dos-serif); font-size: 1.02rem; font-weight: 700; line-height: 1.42; }
.epg-dos__date { color: var(--text-muted); font-size: 12px; font-weight: 500; }
.epg-dos__read { color: var(--text-muted); font: 600 12px/1 var(--font-body, 'Inter'), sans-serif; font-variant-numeric: tabular-nums; white-space: nowrap; }

/* Short dossiers (2–3 memos): fuller memo rows, slimmer lead image */
.epg-dos__memo-ex { display: -webkit-box; margin: 2px 0 2px; overflow: hidden; color: color-mix(in srgb, var(--text-main) 66%, transparent); font-size: 14.5px; line-height: 1.6; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.epg-dos__grid.is-short .epg-dos__memo { padding: 24px 0; }
.epg-dos__grid.is-short .epg-dos__memo-title { font-size: 1.15rem; }
.epg-dos__grid.is-short .epg-dos__media { aspect-ratio: 2 / 1; }

/* Dark */
[data-theme="dark"] .epg-dos { --dos-rule: color-mix(in srgb, var(--text-main) 70%, transparent); }
[data-theme="dark"] .epg-dos__media img { filter: saturate(.8) brightness(.92); }

/* Responsive */
@media (max-width: 992px) {
	.epg-dos__grid { grid-template-columns: minmax(0, 1fr); gap: 34px; }
	.epg-dos__memos { padding-left: 0; border-left: 0; }
	.epg-dos__memo::before { left: -14px; }
	.epg-dos__media { margin-top: 4px; }
}
@media (max-width: 560px) {
	.epg-dos__strip { margin-bottom: 24px; }
	.epg-dos__strip-meta { font-size: 11px; }
	.epg-dos__thead, .epg-dos__memo { grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; }
	.epg-dos__n { font-size: 1.1rem; }
	.epg-dos__memo::before { display: none; }
}
