/* Editorial layout is scoped to News, preserving the shared Eagle IT identity. */
.news-page { --news-rule: rgba(184,204,220,.28); --news-muted: #b8ccdc; background: var(--color-bg-dark); }
.news-page main { padding-bottom: var(--space-3xl); }
.news-masthead { padding-top: calc(80px + var(--space-2xl)); }
.news-masthead-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-xl); padding-bottom: var(--space-lg); border-bottom: 1px solid var(--news-rule); }
.news-masthead h1 { margin: 0; font-size: clamp(2.25rem,5vw,3.5rem); line-height: 1.05; letter-spacing: -.03em; }
.news-masthead h1 span { color: var(--color-brand-gold,#C1A200); }
.news-edition { color: var(--news-muted); font-size: .875rem; text-align: right; }
.news-edition time { display: block; color: var(--color-text-primary); }
.news-masthead-intro { margin-top: var(--space-lg); color: var(--news-muted); }
.news-layout { display: grid; grid-template-columns: 176px minmax(0,1fr); gap: var(--space-2xl); margin-top: var(--space-xl); }
.news-sidebar { position: sticky; top: 100px; align-self: start; padding-right: var(--space-lg); border-right: 1px solid var(--news-rule); }
.news-sidebar h2 { margin: 0 0 var(--space-sm); font-size: 1.125rem; }
.news-filter-buttons { display: grid; gap: var(--space-xs); }
.news-filter-buttons button { display: flex; align-items: center; justify-content: space-between; gap: var(--space-sm); width: 100%; min-height: 44px; padding: var(--space-sm); border: 0; border-radius: 0; background: transparent; color: var(--news-muted); font: inherit; font-size: .875rem; text-align: left; cursor: pointer; }
.news-filter-buttons button span { font-variant-numeric: tabular-nums; font-size: .75rem; }
.news-filter-buttons button:hover { color: var(--color-primary-light); background: rgba(56,189,248,.08); }
.news-filter-buttons button[aria-pressed="true"] { color: var(--color-text-primary); background: rgba(56,189,248,.12); box-shadow: inset 0 -1px var(--color-primary-light); }
.news-filter-mobile { display: none; }
.news-page button:focus-visible,.news-page select:focus-visible { outline: 2px solid var(--color-primary-light); outline-offset: 4px; }
.news-sections { display: grid; margin-top: var(--space-xl); padding-top: var(--space-lg); border-top: 1px solid var(--news-rule); }
.news-sections a { display: flex; align-items: center; min-height: 44px; color: var(--news-muted); font-size: .875rem; }
.news-sections a:hover { color: var(--color-primary-light); text-decoration: underline; text-underline-offset: .25em; }
.news-results { min-width: 0; }
.news-status { margin: 0; padding-bottom: var(--space-md); border-bottom: 1px solid var(--news-rule); color: var(--news-muted); font-size: .8125rem; }
.news-page [hidden] { display: none !important; }
.news-empty { padding: var(--space-xl) 0; color: var(--news-muted); }
.news-section { padding-top: var(--space-xl); scroll-margin-top: 100px; }
.news-page .news-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0 var(--space-2xl); }
.news-story { min-width: 0; padding: var(--space-xl) 0; border-bottom: 1px solid var(--news-rule); }
.news-story h2 { margin: 0; font-size: 1.625rem; line-height: 1.15; letter-spacing: -.02em; text-wrap: balance; }
.news-story h2 a,.news-archive-story h3 a { display: block; min-height: 44px; color: var(--color-text-primary); }
.news-story h2 a:hover,.news-archive-story h3 a:hover { color: var(--color-primary-light); text-decoration: underline; text-underline-offset: .12em; text-decoration-thickness: 1px; }
.news-story:is(:first-child,.news-lead) { grid-column: span 2; grid-row: span 2; padding-right: var(--space-2xl); border-right: 1px solid var(--news-rule); }
.news-story:is(:first-child,.news-lead) h2 { max-width: 19ch; font-size: clamp(2.25rem,3.5vw,3.25rem); line-height: 1.06; letter-spacing: -.03em; }
.news-page .news-grid--filtered { grid-template-columns: repeat(2,minmax(0,1fr)); }
.news-grid--filtered .news-story.news-lead { grid-column: 1/-1; grid-row: auto; padding-right: 0; border-right: 0; }
.news-photo { margin: var(--space-lg) 0 0; }
.news-photo img { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.news-photo figcaption { padding-top: var(--space-xs); color: var(--news-muted); font-size: .6875rem; line-height: 1.5; }
.news-meta { display: flex; flex-wrap: wrap; gap: .25rem var(--space-md); margin: var(--space-md) 0 0; color: var(--news-muted); font-size: .8125rem; line-height: 1.5; }
.news-meta span { color: var(--color-primary-light); }
.news-summary { max-width: 65ch; margin: var(--space-md) 0 0; color: var(--news-muted); font-size: 1rem; line-height: 1.65; }
.news-story:is(:first-child,.news-lead) .news-summary { max-width: 48ch; font-size: 1.125rem; }
.news-archive { padding-top: var(--space-3xl); scroll-margin-top: 100px; }
.news-archive h2 { margin: 0; padding-bottom: var(--space-lg); border-bottom: 1px solid var(--news-rule); font-size: 1.75rem; }
.news-archive-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 var(--space-2xl); }
.news-archive-story { min-width: 0; padding: var(--space-lg) 0; border-bottom: 1px solid var(--news-rule); }
.news-archive-story h3 { margin: 0; font-size: 1.25rem; line-height: 1.25; }
.news-archive-story .news-meta { margin-top: var(--space-sm); }
.news-archive-story .news-summary { font-size: .9375rem; }
.news-follow { margin-top: var(--space-3xl); padding: var(--space-xl) 0 0; border-top: 1px solid var(--news-rule); }
.news-follow-inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-lg) var(--space-2xl); }
.news-follow h2 { margin: 0; font-size: 1.25rem; }
.news-follow p { color: var(--news-muted); margin-top: var(--space-sm); }
.news-social { display: flex; flex-wrap: wrap; gap: var(--space-md) var(--space-xl); }
.news-social a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: .25em; }
.news-page h1,.news-page h2,.news-page h3,.news-page p,.news-page a { overflow-wrap: anywhere; }
.news-page a:focus-visible { outline: 2px solid var(--color-primary-light); outline-offset: 4px; }
@media (max-width: 1100px) {
 .news-layout { grid-template-columns: minmax(0,1fr); gap: var(--space-lg); }
 .news-sidebar { position: static; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-md) var(--space-xl); padding-right: 0; border-right: 0; }
 .news-filter-heading,.news-filter-buttons { display: none; }
 .news-filter-mobile { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-sm); }
 .news-filter-mobile label { color: var(--news-muted); font-size: .875rem; }
 .news-filter-mobile select { max-width: 100%; min-height: 44px; padding: var(--space-sm); border: 1px solid var(--news-rule); border-radius: 0; background: var(--color-bg-dark); color: var(--color-text-primary); font: inherit; color-scheme: dark; }
 .news-sections { display: flex; flex-wrap: wrap; gap: 0 var(--space-lg); margin: 0; padding: 0; border: 0; }
 .news-page .news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .news-story:is(:first-child,.news-lead) { grid-row: auto; padding-right: 0; border-right: 0; }
 .news-story:is(:first-child,.news-lead) h2 { max-width: 25ch; }
}
@media (max-width: 680px) {
 .news-sidebar [data-news-filters] { width: 100%; }
 .news-filter-mobile select { flex: 1; width: auto; min-width: 0; }
 .news-sections a[href="#actueel"] { display: none; }
 .news-masthead { padding-top: calc(80px + var(--space-lg)); }
 .news-masthead-heading { align-items: flex-start; flex-direction: column; gap: var(--space-md); }
 .news-edition { text-align: left; }
 .news-edition time { display: inline; margin-left: var(--space-sm); }
 .news-sections { column-gap: var(--space-lg); }
 .news-page .news-grid,.news-page .news-grid--filtered,.news-archive-grid { grid-template-columns: minmax(0,1fr); }
 .news-story:is(:first-child,.news-lead) { grid-column: auto; }
 .news-story { padding: var(--space-lg) 0; }
 .news-story:is(:first-child,.news-lead) h2 { font-size: clamp(2rem,7.8vw,2.75rem); }
 .news-story h2 { font-size: 1.5rem; }
 .news-story:is(:first-child,.news-lead) .news-summary { font-size: 1rem; }
 .news-archive { padding-top: var(--space-2xl); }
}
