/* Editorial pages and the home-page news feature. */
.navigation a[aria-current="page"]{color:var(--red)}
.news-section{border-top:1px solid var(--line);background:var(--paper)}
.news-section .section-heading{align-items:center}
.news-section .section-heading>.text-link{font-size:12px;flex-shrink:0}
.news-feature{display:grid;grid-template-columns:1.1fr 1fr;background:#fff;border:1px solid var(--line)}
.news-feature-image{display:block;overflow:hidden;background:#e9e9e6}
.news-feature-image img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;transition:transform .4s}
.news-feature-image:hover img{transform:scale(1.025)}
.news-feature-copy{padding:clamp(26px,3vw,50px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.news-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:10px;letter-spacing:1.4px;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
.news-category{color:var(--red)}
.news-feature h3{font-size:clamp(25px,2.5vw,38px);line-height:1.16;letter-spacing:-1px;margin:0 0 18px}
.news-feature-copy>p{font-size:14px;color:var(--muted);margin-bottom:25px;max-width:530px}
.news-feature .text-link{font-size:12px}
.news-page{background:#fff}
.editorial-wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad)}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;line-height:1.7;color:var(--muted);padding:30px 0;margin:0;list-style:none}
.breadcrumbs a:hover{color:var(--red)}
.article-header{max-width:1100px;padding:30px 0 40px}
.article-header .news-meta{margin-bottom:22px}
.article-header h1,.news-index-title{font-size:clamp(34px,4.5vw,64px);line-height:1.07;letter-spacing:-2.3px;margin:0 0 26px;font-weight:750}
.article-header .article-lead{font-size:clamp(17px,1.5vw,21px);line-height:1.65;max-width:970px;color:#555b5e;margin:0}
.article-cover{margin:0 0 44px}
.article-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#eee}
.article-photo{display:block;position:relative;cursor:zoom-in;background:#eee;overflow:hidden}
.article-photo::after{content:"↗";position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:34px;height:34px;background:#fff;color:var(--ink);font-size:20px;box-shadow:0 2px 12px #0001}
figure{margin:0}
.article-cover figcaption,.story-figure figcaption,.photo-grid figcaption{font-size:12px;line-height:1.55;color:var(--muted);padding:13px 0 0}
.article-layout{display:grid;grid-template-columns:minmax(0,790px) minmax(190px,250px);gap:clamp(35px,6vw,100px);justify-content:space-between;align-items:start;padding-bottom:80px}
.article-body{min-width:0}
.article-body p,.article-body li{font-size:17px;line-height:1.85}
.article-body p{margin:0 0 23px}
.article-body h2{font-size:clamp(27px,2.4vw,36px);line-height:1.2;letter-spacing:-1px;margin:48px 0 22px;scroll-margin-top:120px}
.article-body h2:first-child{margin-top:0}
.article-body strong{font-weight:700}
.story-figure{margin:30px 0 38px}
.story-figure img{width:100%;height:auto}
.story-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0 38px;align-items:start}
.story-pair .story-figure{margin:0}
.story-pair img{aspect-ratio:4/3;object-fit:cover;object-position:center}
.story-pair .portrait-photo img{aspect-ratio:4/5;object-fit:contain;background:#f1f1ef}
.article-aside{position:sticky;top:125px;border-top:3px solid var(--red);padding-top:22px}
.aside-label{display:block;font-size:10px;font-weight:700;letter-spacing:1.7px;margin-bottom:20px;color:var(--muted)}
.article-aside nav{display:flex;flex-direction:column;gap:17px}
.article-aside nav a{font-size:13px;line-height:1.5}
.article-aside nav a:hover{color:var(--red)}
.aside-bottom{border-top:1px solid var(--line);margin-top:28px;padding-top:22px;font-size:12px;line-height:1.7;color:var(--muted)}
.aside-bottom a{color:var(--ink);font-weight:700}
.article-callout{padding:28px 30px;border-left:3px solid var(--red);background:var(--paper);margin:38px 0}
.article-callout p:last-child{margin-bottom:0}
.article-callout .text-link{font-size:13px;margin-top:8px}
.article-body .article-sources{border-top:1px solid var(--line);padding-top:20px;margin-top:35px;font-size:12px;color:var(--muted);line-height:1.8}
.article-sources a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.gallery-section{border-top:1px solid var(--line);background:var(--paper);padding:65px var(--pad) 80px}
.gallery-inner{max-width:1270px;margin:auto}
.gallery-section .section-heading{margin-bottom:30px}
.gallery-section .section-heading h2{font-size:clamp(30px,3.3vw,46px);letter-spacing:-1.5px}
.gallery-intro{color:var(--muted);font-size:13px;line-height:1.7;max-width:560px;margin:0}
.photo-grid{columns:3;column-gap:22px}
.photo-grid figure{break-inside:avoid;margin-bottom:26px}
.photo-grid img{width:100%;height:auto}
.article-end{padding:45px var(--pad);display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid var(--line)}
.article-end .text-link{font-size:12px}
.news-index{padding-bottom:90px;min-height:60vh}
.news-index-head{padding:35px 0 48px;max-width:900px}
.news-index-title{margin-top:22px}
.news-index-head>p{color:var(--muted);font-size:17px;max-width:700px;margin-bottom:0}
.photo-dialog{border:0;border-radius:0;padding:0;width:min(1250px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 32px);background:#17191a;color:#fff;overflow:auto}
.photo-dialog::backdrop{background:#000d}
.photo-viewer{position:relative;padding:50px 55px 22px}
.photo-viewer>img{width:100%;height:min(72svh,800px);object-fit:contain}
.photo-close{position:absolute;right:12px;top:7px;font-size:32px;padding:3px 12px;color:white;line-height:1.2}
.photo-controls{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:17px}
.photo-controls button{font-size:23px;min-width:44px;min-height:44px;color:#fff;border:1px solid #555}
.photo-counter{font-size:12px;letter-spacing:1px;font-variant-numeric:tabular-nums}
.photo-caption{font-size:13px;line-height:1.6;text-align:center;color:#ccc;margin:12px auto 0;max-width:850px}
@media(min-width:900px) and (max-width:1300px){.header:has(.navigation>a[href="/news/"]) .navigation{gap:19px}.header:has(.navigation>a[href="/news/"]) .header-actions{gap:16px}}
@media(max-width:950px){.article-layout{grid-template-columns:minmax(0,1fr);gap:0}.article-aside{display:none}.news-feature{grid-template-columns:1fr 1fr}.news-feature h3{font-size:27px}.news-feature-copy>p{font-size:13px}.photo-grid{columns:2}.article-layout{padding-bottom:50px}}
@media(max-width:600px){.news-feature{grid-template-columns:1fr}.news-feature-image img{height:auto}.news-feature-copy{padding:27px 23px 30px}.news-feature h3{font-size:27px;letter-spacing:-.8px}.news-feature .news-meta{font-size:9px;gap:12px;margin-bottom:17px}.news-section .section-heading{align-items:flex-start}.news-section .section-heading>.text-link{font-size:11px}.article-header{padding:18px 0 27px}.article-header h1,.news-index-title{font-size:35px;letter-spacing:-1.3px;line-height:1.12}.article-header .article-lead{font-size:17px;line-height:1.7}.article-cover{margin:0 0 30px}.article-body p,.article-body li{font-size:16px;line-height:1.85}.article-body h2{font-size:27px;margin-top:37px}.article-cover figcaption,.story-figure figcaption,.photo-grid figcaption{font-size:11px;padding-top:10px}.story-pair{gap:15px;grid-template-columns:1fr;margin:25px 0 32px}.story-pair img{aspect-ratio:auto;object-fit:contain}.story-pair .portrait-photo img{aspect-ratio:auto;max-height:none}.article-callout{padding:23px 22px;margin:30px 0}.gallery-section{padding-block:45px}.photo-grid{column-gap:14px}.photo-grid figure{margin-bottom:22px}.gallery-section .section-heading{align-items:flex-start}.gallery-intro{font-size:12px}.article-end{flex-direction:column;align-items:flex-start;padding-block:30px}.news-index-head{padding:18px 0 32px}.news-index-head>p{font-size:16px}.news-index{padding-bottom:55px}.breadcrumbs{font-size:10px;padding-block:20px;gap:8px}.photo-dialog{width:calc(100vw - 12px);max-height:calc(100svh - 12px)}.photo-viewer{padding:50px 10px 20px}.photo-viewer>img{height:65svh}.photo-caption{font-size:12px}.photo-controls{gap:20px}}
