/* chrome single-article (global, is_single) */
.label {font-family: var(--font-body);
  font-size: var(--step--2);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);}
.label--ink {color: var(--ink);}
.breadcrumb {padding: 0.75rem 0;
  font-family: var(--font-body);
  font-size: var(--step--1);
  color: var(--muted);
  border-bottom: var(--rule-thin) solid var(--rule-faint);}
.breadcrumb ol {list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: baseline;}
.breadcrumb li {display: inline-flex;
  align-items: baseline;
  gap: 0.5rem;}
.breadcrumb li:not(:last-child)::after {content: '›';
  color: var(--accent);
  font-weight: 400;
  margin-left: 0.25rem;}
.breadcrumb a {color: var(--muted);
  border-bottom: var(--rule-thin) solid transparent;
  transition: color 0.15s, border-color 0.15s;}
.breadcrumb a:hover {color: var(--accent); border-color: var(--accent);}
.breadcrumb li:last-child {color: var(--ink); font-weight: 600;}
.hero__lead .label {margin-bottom: 0.6rem; display: block;}
.hero__lead .lede {font-size: var(--step-1); line-height: 1.5; color: var(--ink-soft); max-width: 56ch; margin-bottom: 1rem; font-weight: 400;}
.hero__card .label {font-size: 0.65rem; margin-bottom: 0.4rem; display: block;}
.cat-block__title-col .label {display: block; margin-bottom: 0.75rem; font-size: var(--step--1);}
.cat-block__featured .label {display: block; margin-bottom: 0.5rem; font-size: 0.65rem;}
.article-card .label {font-size: 0.65rem; display: block; margin-bottom: 0.5rem;}
.article-page {padding: 3rem 0 4rem;}
.article-header {max-width: var(--article-width);
  margin: 0 auto 2.5rem;
  text-align: left;}
.article-header .label {margin-bottom: 1rem; display: block;}
.article-header h1 {font-size: var(--step-6); line-height: 1.04; margin-bottom: 1.25rem; letter-spacing: -0.025em;}
.article-header .lede {font-size: var(--step-2);
  line-height: 1.45;
  color: var(--ink-soft);
  font-weight: 400;
  margin-bottom: 1.5rem;
  font-family: var(--font-display);
  font-style: italic;}
.article-byline {display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  border-top: var(--rule-thin) solid var(--ink);
  border-bottom: var(--rule-thin) solid var(--ink);
  font-size: var(--step--1);
  flex-wrap: wrap;}
.article-byline img {width: 40px; height: 40px; border-radius: 50%; object-fit: cover; filter: grayscale(1);}
.article-byline strong {font-weight: 700;}
.article-byline .sep {color: var(--rule-faint);}
.article-hero-img {max-width: 1000px; margin: 0 auto 2.5rem; padding: 0 var(--gutter);}
.article-hero-img img {width: 100%; aspect-ratio: 16/9; object-fit: cover; filter: saturate(0.95);}
.article-hero-img .caption {font-size: var(--step--1);
  color: var(--muted);
  margin-top: 0.75rem;
  font-style: italic;
  border-left: var(--rule-thin) solid var(--rule-faint);
  padding-left: 0.75rem;}
.article-layout {max-width: 1320px;
  margin: 0 auto;
  padding: 0 var(--gutter);
  display: grid;
  grid-template-columns: 200px 1fr 260px;
  gap: 3rem;
  align-items: start;}
.article-rail {position: sticky;
  top: 2rem;
  padding-top: 0.5rem;
  font-size: var(--step--1);}
.article-rail__block {padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: var(--rule-thin) solid var(--rule-faint);}
.article-rail__block:last-child {border-bottom: none;
  margin-bottom: 0;}
.article-rail h4 {font-family: var(--font-body);
  font-size: var(--step--2);
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: var(--rule-thin) solid var(--ink);}
.article-rail h4 .subtitle {display: block;
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 500;
  font-size: var(--step--1);
  letter-spacing: 0;
  text-transform: none;
  color: var(--muted);
  margin-top: 0.2rem;}
.article-rail__item {padding: 0.7rem 0;
  border-bottom: var(--rule-thin) solid var(--rule-faint);}
.article-rail__item:last-child {border-bottom: none;}
.article-rail__item .cat {font-family: var(--font-body);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  display: block;
  margin-bottom: 0.25rem;}
.article-rail__item h5 {font-family: var(--font-display);
  font-size: var(--step-0);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 0.25rem;
  color: var(--ink);}
.article-rail__item h5 a:hover {color: var(--accent);}
.article-rail__item .timestamp {font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--muted);
  letter-spacing: 0.02em;}
.article-rail__item--with-img {display: grid;
  grid-template-columns: 60px 1fr;
  gap: 0.75rem;
  align-items: start;}
.article-rail__item--with-img img {width: 60px;
  height: 60px;
  object-fit: cover;
  filter: saturate(0.95);}
.article-toc {position: sticky;
  top: 2rem;
  padding-top: 0.5rem;}
.article-toc h4 {font-family: var(--font-body);
  font-size: var(--step--2);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 1rem;
  padding-bottom: 0.6rem;
  border-bottom: var(--rule-thin) solid var(--ink);}
.article-toc ol {list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: toc;}
.article-toc li {counter-increment: toc;
  padding: 0.5rem 0;
  border-bottom: var(--rule-thin) solid var(--rule-faint);
  position: relative;
  padding-left: 1.75rem;}
.article-toc li:last-child {border-bottom: none;}
.article-toc li::before {content: counter(toc, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0.5rem;
  font-family: var(--font-mono);
  font-size: var(--step--2);
  color: var(--muted);
  font-weight: 600;}
.article-toc a {display: block;
  font-size: var(--step--1);
  line-height: 1.35;
  color: var(--ink-soft);
  font-weight: 500;
  transition: color 0.15s;}
.article-toc a:hover, .article-toc a.active {color: var(--accent);}
.category-header .label {font-size: var(--step--1); display: block; margin-bottom: 1rem;}
@media (max-width: 1024px) {
  .article-layout {grid-template-columns: 1fr;}
  .article-rail {position: static;}
  .article-toc {position: static;}
}
.article-rail__item--with-img:not(:has(> img)) {grid-template-columns: 1fr !important;}
.article-rail__item--with-img:not(:has(> img)) > div {min-width: 0;}
.post-article__item--with-img:not(:has(> img)), .feed-item:not(:has(> img)), .latest-feed__item:not(:has(> img)), .article-rail__item.with-img:not(:has(> img)) {grid-template-columns: 1fr !important;}
.article-rail__item--with-img:not(:has(> img)):not(:has(> picture)):not(:has(.author-bio__photo)) {grid-template-columns: 1fr !important;}
@media (max-width: 640px) {
  .hero__grid, .cat-block__layout, .cat-block__header, .latest-feed__grid, .opinion__grid, .tools-grid, .maillage-grid, .grid-3, .grid-4, .article-layout, .hero-grid, .hero__bento, .picks-board {grid-template-columns: 1fr !important;}
}