/* Editorial cards share six tracks so credits never displace one headline alone. */
.editorial-grid {
  display:grid;
  align-items:stretch;
  column-gap:26px;
  row-gap:0;
}
.editorial-grid > article.editorial-card {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:subgrid;
  grid-row:span 6;
  row-gap:0;
  min-width:0;
  padding:0 0 24px;
  margin:0 0 28px;
  border:0;
  border-bottom:1px solid var(--line);
}
.editorial-grid > article.editorial-card > * { grid-column:1; grid-row:auto; min-width:0; }
.editorial-grid > article.editorial-card > .storythumb,
.editorial-grid > article.editorial-card > .learning-photo {
  position:relative; display:block; width:100%; height:auto;
  aspect-ratio:16/10; margin:0; overflow:hidden; background:#f0f1f3;
}
.editorial-grid > article.editorial-card > .storythumb > img,
.editorial-grid > article.editorial-card > .learning-photo > img {
  display:block; position:absolute; inset:0; width:100%; height:100%;
  max-height:none; margin:0; object-fit:cover; object-position:center;
}
.editorial-grid.news-grid-two > .editorial-card > .storythumb { aspect-ratio:2.4; }
.editorial-grid > article.editorial-card > .photo-credit {
  display:block; margin:0!important; padding:8px 0 12px;
  font-size:10px!important; line-height:1.5!important; color:#626674;
}
.editorial-grid > article.editorial-card > .eyebrow {
  display:block; margin:0; padding:2px 0 10px;
  font-size:11px; line-height:1.5; font-weight:800; letter-spacing:.11em;
  align-self:start;
}
.editorial-grid > article.editorial-card > h3 {
  margin:0; padding:0 0 14px; font-size:25px; line-height:1.22;
  letter-spacing:-.035em; color:#23252a; align-self:start;
}
.editorial-grid > article.editorial-card > .card-deck {
  display:block; margin:0; padding:0 0 20px;
  font-size:15px; line-height:1.65; color:#555b66;
}
.editorial-grid > article.editorial-card > .card-foot {
  display:block; margin:0; padding:0; font-size:10px;
  line-height:1.6; align-self:end;
}
.editorial-grid > article.editorial-card > a.card-foot {
  font-size:13px; font-weight:800; justify-self:start; color:#10165b;
}
.editorial-grid .storythumb > img[src$="mercadolibre-reparto.jpg"] { object-position:50% 83%; }
.editorial-grid .storythumb > img[src$="amazon-van.jpg"] { object-position:55% 66%; }
.editorial-grid .storythumb > img[src$="lisa-cook.jpg"] { object-position:50% 15%; }
.editorial-grid .learning-photo > img[src$="bonos-tesoro.jpg"] { object-position:center 75%; transform:scale(1.25); transform-origin:center bottom; }
.learning-grid { margin-bottom:20px; }
.learning-grid > .editorial-card > h3 { font-size:26px; }
.learning-photo:hover img { filter:brightness(.96); }

/* Photography and reading remain separate, with no dark-on-dark cover text. */
.featured-guide-wrap { min-width:0; }
.featured-guide.photo-guide {
  display:block; background:#fff; border:1px solid #d4d7df;
  box-shadow:none; color:#23252a; overflow:hidden;
}
.featured-guide.photo-guide > img {
  width:100%; height:auto; aspect-ratio:1.55; object-fit:cover; margin:0;
}
.photo-guide .guide-description { padding:25px 28px 28px; }
.photo-guide .guide-description .eyebrow { color:#173c83; font-size:11px; margin:0 0 12px; }
.photo-guide .guide-description h2 { color:#23252a; font-size:34px; line-height:1.12; margin:0 0 13px; }
.photo-guide .guide-description p { color:#555b66; font-size:15px; line-height:1.6; margin:0; }
.photo-guide .guide-open { background:#03062a; color:#fff; }
.photo-guide:hover { text-decoration:none; }
.photo-guide:hover .guide-description h2 { text-decoration:underline; text-underline-offset:5px; }

/* Article photos keep their native geometry. Portraits are deliberately narrower. */
figure.article-media { margin:26px 0 32px; }
figure.article-media > img,
.story figure.article-media > img.articleimage {
  display:block; position:static; width:100%; height:auto;
  max-width:100%; max-height:none; aspect-ratio:auto;
  margin:0; object-fit:contain; object-position:center;
}
figure.article-media.is-portrait { width:min(100%,400px); margin:30px auto 34px; }
figure.article-media > figcaption,
.story figure.article-media > .caption {
  font-size:11px; line-height:1.6; color:#626674; padding:9px 0 0; margin:0;
}
figure.article-media figcaption a { text-decoration:underline; text-underline-offset:2px; }

@media (max-width:1100px) {
  .editorial-grid > article.editorial-card > h3 { font-size:23px; }
}
@media (max-width:900px) {
  .editorial-grid.analysis-grid,
  .editorial-grid.news-grid,
  .editorial-grid.library-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .editorial-grid.home-analysis > .editorial-card:last-child { grid-column:auto; }
}
@media (max-width:700px) {
  .editorial-grid.analysis-grid,
  .editorial-grid.news-grid,
  .editorial-grid.library-row { grid-template-columns:minmax(0,1fr); column-gap:0; }
  .editorial-grid > article.editorial-card,
  .news-grid.editorial-grid > article.editorial-card:last-child {
    grid-template-columns:minmax(0,1fr); padding:0 0 24px!important;
    margin-bottom:28px; border-bottom:1px solid var(--line)!important;
  }
  .editorial-grid > article.editorial-card > .storythumb,
  .editorial-grid.news-grid-two > .editorial-card > .storythumb,
  .editorial-grid > article.editorial-card > .learning-photo { grid-row:auto; grid-column:1; aspect-ratio:16/10; }
  .editorial-grid > article.editorial-card > h3 { grid-row:auto; grid-column:1; font-size:26px; }
  .editorial-grid > article.editorial-card > .eyebrow { grid-row:auto; grid-column:1; font-size:10px; }
  .editorial-grid > article.editorial-card > .meta { grid-row:auto; grid-column:1; }
  .editorial-grid > article.editorial-card > .card-deck { font-size:15px; padding-bottom:17px; }
  .editorial-grid > article.editorial-card > .photo-credit { font-size:10px!important; }
  figure.article-media.is-portrait { width:min(100%,320px); }
  .photo-guide .guide-description { padding:22px; }
  .photo-guide .guide-description h2 { font-size:30px; }
}
