/* Editorial news system. */
.news-latest { background: radial-gradient(circle at 75% 10%, var(--color-accent-glow), transparent 26%), var(--color-ink); }
.news-latest { padding-block:clamp(2.35rem,4vw,3.75rem); }
.news-section-heading { margin-bottom:var(--space-4); }
.news-section-heading h2, .news-related h2 { margin:0; font-size:clamp(1.8rem,3vw,3.25rem); letter-spacing:.01em; }
.news-all-link, .news-back-link, .news-card__read { font-family:var(--font-display); font-weight:var(--font-weight-bold); font-size:var(--text-xs); letter-spacing:var(--tracking-label); text-transform:uppercase; }
.news-all-link { color:var(--color-accent-bright); white-space:nowrap; }
.news-latest-grid { display:grid; gap:var(--space-3); }
.news-card { min-width:0; overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius); background:linear-gradient(145deg,rgb(17 26 19 / .82),rgb(5 9 6 / .9)); box-shadow:inset 0 1px 0 rgb(255 255 255 / .045); transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base); }
.news-card:hover, .news-card:focus-within { border-color:rgb(87 221 135 / .52); background:linear-gradient(145deg,rgb(24 39 28 / .9),rgb(6 13 8 / .94)); box-shadow:0 .9rem 2rem rgb(0 0 0 / .2),0 0 1.75rem rgb(36 184 93 / .12),inset 0 1px 0 rgb(255 255 255 / .09); transform:translateY(-2px); }
.news-card > a { display:block; height:100%; color:inherit; }
.news-card__media { position:relative; overflow:hidden; aspect-ratio:4 / 3; border-radius:var(--radius) var(--radius) 0 0; background:var(--color-surface-soft); }
.news-card__media::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,rgb(0 0 0 / .32)); content:""; pointer-events:none; }
.news-card__media img, .news-image-fallback { display:block; width:100%; height:100%; min-height:0; aspect-ratio:auto; object-fit:cover; object-position:var(--news-focal-x,50%) var(--news-focal-y,50%); }
.news-card__content { padding:var(--space-5); }
.news-card__label, .news-card__meta { margin:0; color:var(--color-text-dim); font-size:var(--text-xs); font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); text-transform:uppercase; }
.news-card__label { color:var(--color-accent-bright); margin-bottom:var(--space-2); }
.news-card h2, .news-card h3 { margin:var(--space-3) 0 var(--space-4); font-family:var(--font-body); font-size:clamp(1.35rem,2vw,2.35rem); font-weight:var(--font-weight-bold); letter-spacing:-.025em; line-height:1.1; text-transform:none; }
.news-card--1 h3 { font-size:clamp(2rem,3.4vw,3.8rem); line-height:1.06; }
.news-card--latest h3 { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.news-card--latest.news-card--1 h3 { -webkit-line-clamp:4; }
.news-card__read { display:inline-flex; gap:.45rem; color:var(--color-accent-bright); }
.news-image-fallback { position:relative; display:grid; place-items:center; background:radial-gradient(circle at 75% 20%,var(--color-accent-glow),transparent 22%),linear-gradient(135deg,var(--color-surface-raised),var(--color-ink)); }
.news-image-fallback::before { position:absolute; inset:12%; border:1px solid rgb(255 255 255 / .12); content:""; transform:skewX(-14deg); }
.news-image-fallback span { color:var(--color-accent-bright); font-family:var(--font-display); font-size:clamp(3rem,10vw,8rem); font-weight:var(--font-weight-black); letter-spacing:var(--tracking-display); }
.news-archive__hero, .news-article__hero { position:relative; overflow:hidden; padding:clamp(5rem,12vw,10rem) 0 var(--space-7); background:radial-gradient(circle at 84% 8%,var(--color-accent-glow),transparent 24%),var(--gradient-hero); }
.news-archive__hero h1, .news-article__hero h1 { max-width:13ch; margin:var(--space-3) 0; font-size:clamp(3.5rem,10vw,9rem); line-height:.82; text-transform:uppercase; }
.news-article__hero { padding:clamp(1.5rem,3vw,2.75rem) 0; }
.news-article__hero-grid { display:grid; grid-template-columns:minmax(0,45fr) minmax(0,55fr); align-items:center; gap:clamp(2rem,4.5vw,5rem); }
.news-article__hero-media { position:relative; min-height:clamp(25rem,58vh,39rem); overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius); background:var(--color-surface-soft); box-shadow:var(--shadow-elevation); }
.news-article__hero-image { display:block; width:100%; height:100%; min-height:inherit; padding:0; border:0; background:transparent; cursor:zoom-in; }
.news-article__hero-media img,.news-article__hero-media .news-image-fallback { display:block; width:100%; height:100%; min-height:inherit; object-fit:cover; object-position:var(--news-focal-x,50%) var(--news-focal-y,50%); }
.news-article__hero-image:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:-4px; }
.news-article__hero-copy { min-width:0; max-width:47rem; padding-block:var(--space-4); }
.news-article__hero h1 { max-width:16ch; margin:var(--space-3) 0 0; padding-bottom:.08em; overflow:visible; font-family:var(--font-body); font-size:clamp(2.25rem,4vw,4.65rem); font-weight:var(--font-weight-bold); letter-spacing:-.04em; line-height:1.06; overflow-wrap:break-word; text-transform:none; }
.news-article__standfirst { max-width:42rem; margin:var(--space-4) 0 0; color:var(--color-text-muted); font-size:clamp(1rem,1.35vw,1.25rem); line-height:1.55; }
.news-archive__hero p:last-child { max-width:38rem; color:var(--color-text-muted); font-size:var(--text-lg); }
.news-archive__content { padding-block:var(--space-8); }
.news-archive-grid, .news-related__grid { display:grid; gap:var(--space-5); }
.news-archive-grid { align-items:start; }
.news-card--archive { break-inside:avoid; border-bottom:1px solid var(--color-border); background:linear-gradient(180deg,rgb(255 255 255 / .018),transparent); }
.news-card--archive .news-card__media { overflow:hidden; background:var(--color-surface-soft); }
.news-card--archive .news-card__media::after { display:none; }
.news-card--archive .news-card__media img { width:100%; min-height:0; max-height:none; height:100%; aspect-ratio:auto; object-fit:cover; object-position:var(--news-focal-x,50%) var(--news-focal-y,50%); }
.news-card--archive:hover :is(h2,.news-card__read) { color:var(--color-accent-bright); }
.news-card--archive .news-card__content { padding:var(--space-5) var(--space-5) var(--space-6); }
.news-card--archive .news-card__read { transition:color var(--transition-fast); }
.news-pagination { margin-top:var(--space-7); }
.news-pagination .page-numbers { display:flex; flex-wrap:wrap; gap:var(--space-2); max-width:100%; padding:0; list-style:none; }
.news-pagination a, .news-pagination span { display:inline-flex; min-width:2.75rem; min-height:2.75rem; align-items:center; justify-content:center; border:1px solid var(--color-border); color:var(--color-text); font-family:var(--font-display); font-size:var(--text-sm); }
.news-pagination .current, .news-pagination a:hover, .news-pagination a:focus-visible { border-color:var(--color-accent); background:var(--color-accent); color:var(--color-ink); }
.news-pagination a:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:2px; }
.news-back-link { display:inline-flex; color:var(--color-accent-bright); }
.news-article__date { margin:var(--space-4) 0 0; color:var(--color-text-muted); font-size:var(--text-xs); font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); text-transform:uppercase; }
.news-article__body.news-article__share-wrap { margin:0 auto var(--space-8); }
.news-share { display:flex; align-items:center; flex-wrap:wrap; gap:var(--space-3); margin-top:var(--space-7); }
.news-share__label { color:var(--color-text-dim); font-size:var(--text-xs); font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); text-transform:uppercase; }
.news-share__actions { display:flex; flex-wrap:wrap; gap:var(--space-2); }
.news-share__button { display:inline-flex; min-width:2.75rem; min-height:2.75rem; align-items:center; justify-content:center; border:1px solid var(--color-border); background:rgb(3 5 4 / .38); color:var(--color-text-muted); font-family:var(--font-body); font-size:var(--text-xs); font-weight:var(--font-weight-bold); letter-spacing:.01em; cursor:pointer; transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast); }
.news-share__button:hover, .news-share__button:focus-visible, .news-share__button.is-copied { border-color:var(--color-accent); background:var(--color-accent); color:var(--color-ink); transform:translateY(-1px); }
.news-share__native { display:none; padding-inline:var(--space-4); text-transform:uppercase; }
.news-share__native[hidden] { display:none; }
.news-article__media { position:relative; z-index:1; margin:calc(var(--space-7) * -1) 0 0; }
.news-media__stage { display:flex; justify-content:center; padding:var(--space-4) var(--gutter); background:radial-gradient(ellipse at 50% 15%,var(--color-accent-glow),transparent 55%),var(--color-surface); }
.news-media__frame { width:100%; max-width:75rem; }
.news-media__trigger { display:block; width:100%; padding:0; overflow:hidden; border:0; border-radius:var(--radius); background:transparent; cursor:zoom-in; box-shadow:var(--shadow-elevation); }
.news-media__trigger:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:4px; }
.news-media__frame img { display:block; width:100%; height:auto; object-fit:initial; }
.news-media--landscape .news-media__frame { max-width:min(75rem,140vh); }
.news-media--square .news-media__frame { max-width:min(52rem,80vh); }
.news-media--portrait .news-media__frame { max-width:min(40rem,70vh); }
.news-lightbox { position:fixed; z-index:9999; inset:0; display:grid; place-items:center; padding:clamp(1rem,4vw,3rem); background:rgb(0 0 0 / .92); opacity:0; transition:opacity var(--transition-base); }
.news-lightbox.is-open { opacity:1; }
.news-lightbox[hidden] { display:none; }
.news-lightbox__image { display:block; max-width:100%; max-height:calc(100vh - 6rem); width:auto; height:auto; border-radius:var(--radius-sm); box-shadow:0 1.5rem 5rem rgb(0 0 0 / .55); }
.news-lightbox__close { position:absolute; top:1rem; right:1rem; display:grid; width:2.75rem; height:2.75rem; place-items:center; border:1px solid rgb(255 255 255 / .25); border-radius:50%; background:rgb(0 0 0 / .45); color:#fff; font-size:1.75rem; line-height:1; cursor:pointer; }
.news-lightbox__close:hover, .news-lightbox__close:focus-visible { border-color:var(--color-accent-bright); background:var(--color-accent); color:var(--color-ink); }
body.news-lightbox-open { overflow:hidden; }
.news-article__fallback { position:relative; z-index:1; margin-top:calc(var(--space-7) * -1); }
.news-article__fallback .news-image-fallback { display:block; width:100%; min-height:clamp(18rem,42vw,40rem); aspect-ratio:auto; }
.news-article__body { width:min(100% - (var(--gutter) * 2), 48rem); margin:clamp(3rem,6vw,5.5rem) auto var(--space-7); font-size:clamp(1.05rem,1.4vw,1.25rem); line-height:1.8; }
.news-article__body :is(img,iframe,video,table) { max-width:100%; height:auto; }
.news-article__body a { color:var(--color-accent-bright); text-decoration:underline; text-underline-offset:.2em; }
.news-article__body blockquote { margin-inline:0; padding:var(--space-5); border-left:3px solid var(--color-accent); background:var(--color-surface); color:var(--color-text); font-family:var(--font-display); font-size:var(--text-xl); line-height:1.2; }
.news-article__body table { display:block; overflow-x:auto; border-collapse:collapse; }
.news-article__body :is(td,th) { padding:.65rem; border:1px solid var(--color-border); }
.news-article__entities { width:min(100% - (var(--gutter) * 2), 48rem); margin:0 auto var(--space-5); }
.news-article__entity-list { display:flex; flex-wrap:wrap; gap:var(--space-2); }
.news-article__entity { display:inline-flex; align-items:center; min-height:2.25rem; padding:.4rem .75rem; border:1px solid var(--color-border); border-radius:999px; color:var(--color-text-muted); font-size:var(--text-sm); line-height:1.2; }
a.news-article__entity { color:var(--color-text); text-decoration:none; transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast); }
a.news-article__entity:hover, a.news-article__entity:focus-visible { border-color:var(--color-accent); background:var(--color-accent); color:var(--color-ink); }
.news-related { border-top:1px solid var(--color-border); background:var(--color-surface); }
.news-related h2 { margin-bottom:var(--space-6); }
.news-empty { padding:var(--space-7) 0; color:var(--color-text-muted); }
/* All public card contexts share the same restrained editorial crop. */
.news-card--latest .news-card__media { min-height:0; }
.news-card--latest .news-card__media img, .news-card--latest .news-image-fallback { min-height:0; aspect-ratio:auto; }
.news-card--latest .news-card__content { padding:var(--space-5); }
.news-card--latest h3, .news-card--latest.news-card--1 h3 { margin:var(--space-2) 0 var(--space-2); font-size:clamp(1.1rem,1.3vw,1.45rem); line-height:1.18; -webkit-line-clamp:3; }
@media (min-width:48rem) { .news-latest-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .news-archive-grid, .news-related__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:64rem) { .news-latest-grid, .news-archive-grid, .news-related__grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:63.99rem) { .news-article__hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--space-5); } .news-article__hero-media { min-height:clamp(22rem,48vw,31rem); } .news-article__hero h1 { font-size:clamp(2rem,4.5vw,3.5rem); } }
@media (max-width:47.99rem) { .news-latest { padding-block:var(--space-6); } .news-card__content { padding:var(--space-4); } .news-article__hero { padding:var(--space-3) 0 var(--space-5); } .news-article__hero-grid { grid-template-columns:1fr; gap:var(--space-5); } .news-article__hero-media { min-height:0; aspect-ratio:4/3; } .news-article__hero-copy { padding:0; } .news-article__hero h1 { max-width:none; font-size:clamp(2.15rem,10vw,3.35rem); line-height:1.08; } .news-article__date { margin-top:var(--space-3); } .news-article__standfirst { margin-top:var(--space-3); } .news-article__body { margin-top:var(--space-6); } .news-share { align-items:stretch; flex-direction:column; margin-top:calc(var(--space-6) + .5rem); } .news-share__actions { gap:.4rem; } .news-share__button { min-width:2.9rem; min-height:2.9rem; } .news-share__native:not([hidden]) { display:inline-flex; } .news-media__stage { padding:var(--space-3) var(--gutter); } .news-media__frame,.news-media--landscape .news-media__frame,.news-media--square .news-media__frame,.news-media--portrait .news-media__frame { max-width:100%; } .news-lightbox__image { max-height:calc(100vh - 5rem); } .news-article__entities { margin-top:0; margin-bottom:var(--space-5); } }
@media (prefers-reduced-motion:reduce) { .news-card, .news-card__media img, .news-image-fallback { transition:none; } .news-card:hover, .news-card:focus-within { transform:none; } }
