.news-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}
.news-card{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;border:1px solid #66625b;background:var(--paper);transition:transform .2s ease,box-shadow .2s ease}
.news-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.news-card>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.news-card>img.news-cover--left{object-position:left center}.news-card>img.news-cover--center{object-position:center}.news-card>img.news-cover--right{object-position:right center}
.news-card-body{padding:25px 26px 28px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.news-card time{color:var(--muted);font-size:14px}
.news-card h3{font-size:clamp(27px,2.4vw,40px);line-height:1.02;letter-spacing:-.03em;margin:20px 0 22px}
.news-card i{display:block;width:100%;border-top:1px solid var(--line)}
.news-card p{font-size:16px;line-height:1.55;margin:22px 0 26px}
.read-more{margin-top:auto;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.news-listing>.eyebrow{margin-bottom:22px}
.news-listing>h1{letter-spacing:-.015em}
.home-page .news>.eyebrow{margin:0 0 22px;font-size:14px}
@media(max-width:800px){.news-cards{grid-template-columns:1fr}.news-card-body{padding:23px}.news-card h3{font-size:32px}}

/* Featured story shares the section gutters and news-card border. */
.featured-news>.eyebrow{margin:0 0 20px;font-size:20px;letter-spacing:.16em}
.focus-card{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);height:clamp(520px,55vw,720px);overflow:hidden}
.focus-card-image{display:block;position:relative;min-width:0;height:100%;overflow:hidden}
.focus-card-image>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.focus-card-image--left>img{object-position:left center}.focus-card-image--center>img{object-position:center}.focus-card-image--right>img{object-position:right center}
.focus-card .news-card-body{min-width:0;padding:clamp(25px,3.5vw,56px)}
.focus-card h1{font-size:clamp(32px,4vw,64px);line-height:1.05;letter-spacing:-.04em;margin:20px 0 24px;overflow-wrap:anywhere}
.focus-card .focus-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;line-clamp:7;overflow:hidden;margin-bottom:22px}
.focus-card--text-only{grid-template-columns:1fr}
.news-card:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
/* Touch devices keep sharp photographs; mouse and keyboard reveal focus. */
@media(hover:hover) and (pointer:fine){
  .news-cards .news-card{overflow:hidden}
  .news-cards .news-card>img{filter:blur(2px);transition:filter .3s ease}
  .news-cards .news-card:hover>img,.news-cards .news-card:focus-visible>img{filter:blur(0)}
}
@media(max-width:800px){
  .featured-news>.eyebrow{font-size:16px}
  .focus-card{grid-template-columns:1fr;height:auto}
  .focus-card-image{height:auto;aspect-ratio:4/3}
  .focus-card .news-card-body{padding:23px}
  .focus-card h1{font-size:clamp(32px,7vw,48px)}
  .focus-card .focus-excerpt{-webkit-line-clamp:6;line-clamp:6}
}

/* Homepage galleries use the same image-over-copy card structure as news. */
.home-galleries .card{min-height:0;padding:0;justify-content:flex-start;color:var(--ink);background:var(--paper);border:1px solid #66625b;border-radius:0;transition:transform .2s ease,box-shadow .2s ease}
.home-galleries .card::after{display:none}
.home-galleries .card img{position:static;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.home-galleries .card span{padding:22px 24px 0;color:var(--muted)}
.home-galleries .card h3{padding:0 24px 26px;margin:10px 0 0;font-size:clamp(25px,2.2vw,36px);line-height:1.05;letter-spacing:-.025em}
.home-galleries .card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
@media(max-width:800px){.home-galleries .card{min-height:0}.home-galleries .card h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){
  .news-card,.news-cards .news-card>img{transition:none}
  .news-card:hover{transform:none}
}

/* Keep dividers aligned with the edges of the homepage cards. */
.home-page>section{position:relative;padding-top:7vw;padding-bottom:7vw}
.home-page>.featured-news{padding-bottom:3.5vw}
.home-page>.featured-news+section{padding-top:3.5vw}
.home-page>section+section::before{content:"";position:absolute;top:0;left:8vw;right:8vw;height:1px;background:#aaa69e}
@media(max-width:800px){
  .home-page>section{padding-top:14vw;padding-bottom:14vw}
  .home-page>.featured-news{padding-bottom:7vw}
  .home-page>.featured-news+section{padding-top:7vw}
  .home-page>section+section::before{left:7vw;right:7vw}
}

/* Full report followed by the shared photo gallery and lightbox. */
.album-news .gallery-intro{grid-template-columns:1fr;gap:30px;padding-bottom:2.5vw}
.album-news .gallery-intro>div{max-width:900px}
.album-news .gallery-intro>div::after{content:"";display:block;width:100%;border-top:2px solid var(--ink);margin-top:24px}
.album-news .gallery-intro h1{max-width:900px;letter-spacing:-.015em;overflow-wrap:anywhere}
.album-news .gallery-intro .lead{max-width:900px;margin:32px 0 0;font-weight:700}
.article-cover{width:100%;max-width:900px;aspect-ratio:16/9;margin:0;overflow:hidden;border-radius:4px;background:#e5e3dc}
.article-cover img{display:block;width:100%;height:100%;object-fit:cover}
.article-cover--left img{object-position:left center}.article-cover--center img{object-position:center}.article-cover--right img{object-position:right center}
.article-body{padding:0 8vw 5vw}
.article-body>div{max-width:900px;font-size:18px;line-height:1.8;overflow-wrap:anywhere}
.article-body p{margin:0 0 1.25em}.article-body h2{font-size:clamp(30px,4vw,48px);margin:1.25em 0 .55em}.article-body h3{font-size:clamp(23px,3vw,32px);margin:1.25em 0 .5em}.article-body blockquote{margin:1.5em 0;padding:.25em 0 .25em 24px;border-left:3px solid var(--ink);font-family:Gloock,Georgia,serif;font-size:1.25em}.article-body a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.article-body ul,.article-body ol{padding-left:1.4em;margin:0 0 1.25em}
.album-news .gallery-images{padding-top:1vw}.album-news .photo-grid{max-width:900px}
@media(max-width:800px){.album-news .gallery-intro{padding-bottom:7vw;gap:22px}.album-news .gallery-intro .lead{margin-top:24px}.article-body{padding:0 7vw 9vw}.article-body>div{font-size:16px}.album-news .gallery-images{padding-top:2vw}.article-cover{border-radius:4px}}

/* Gloock's built-in pair kerning is unusually tight at display sizes. */
h1,h2,h3,.article-body blockquote{letter-spacing:.012em;font-kerning:none;font-variant-ligatures:none;font-feature-settings:"kern" 0,"liga" 0,"clig" 0}
h1{line-height:1.02}
h2,h3{line-height:1.08}
