/* Catalogue and editorial navigation share the main LUMA design system. */
.breadcrumbs { background:var(--ink); color:#c5cbc3; border-bottom:1px solid #ffffff14; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px 12px; padding-block:15px; margin-block:0; list-style:none; font-size:12px; line-height:1.6; }
.breadcrumbs li { display:flex; gap:12px; min-width:0; }
.breadcrumbs li + li::before { content:' / '; color:#82907f; }
.breadcrumbs a { text-decoration:none; padding-block:4px; }
.breadcrumbs a:hover { color:#fff; text-decoration:underline; }
.breadcrumbs span { padding-block:4px; }
.catalogue-hero { background:var(--ink); color:var(--paper); padding-block:80px; }
.catalogue-hero-grid { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:64px; }
.catalogue-hero h1 { font-size:clamp(40px,4.6vw,66px); line-height:1.08; letter-spacing:-.04em; font-weight:600; margin:24px 0; }
.catalogue-hero .lead { color:#c5cbc3; font-size:19px; max-width:47ch; }
.catalogue-actions { display:flex; align-items:center; gap:12px 24px; flex-wrap:wrap; margin-top:30px; }
.catalogue-actions .text-link { color:#f5f3ee; }
.catalogue-photo { margin:0; }
.catalogue-photo img { width:100%; aspect-ratio:4 / 5; object-fit:cover; }
.catalogue-photo figcaption { margin-top:14px; color:#c5cbc3; font-size:12px; }
.catalogue-families { display:grid; grid-template-columns:1fr 1fr; gap:0 64px; }
.catalogue-family { display:grid; grid-template-columns:32px 1fr; gap:24px; border-top:1px solid var(--line-light); padding:36px 0 48px; }
.catalogue-number { color:var(--muted); font-size:13px; padding-top:4px; }
.catalogue-family .kicker { margin:0 0 16px; color:var(--muted); font-size:10px; }
.catalogue-family h3 { margin:0; font-size:32px; font-weight:600; line-height:1.15; letter-spacing:-.03em; }
.catalogue-family p { color:var(--muted); font-size:17px; max-width:43ch; }
.catalogue-family > img,.catalogue-material { grid-column:2; width:100%; height:220px; object-fit:contain; background:#eeeee8; }
.catalogue-material { display:flex; align-items:center; justify-content:center; color:#4b5848; font-size:clamp(40px,5vw,64px); font-weight:600; letter-spacing:-.03em; border-bottom:1px solid var(--line-light); }
.catalogue-advice { background:var(--paper-2); }
.catalogue-advice .button { margin-top:24px; }
.catalogue-checklist { margin:0; padding:0; list-style:none; counter-reset:steps; }
.catalogue-checklist li { counter-increment:steps; position:relative; display:grid; gap:8px; padding:24px 0 24px 45px; border-top:1px solid #c9d0c3; }
.catalogue-checklist li::before { content:'0' counter(steps); position:absolute; left:0; top:26px; font-size:12px; color:var(--muted); }
.catalogue-checklist strong { font-size:22px; line-height:1.25; font-weight:600; }
.catalogue-checklist span { color:var(--muted); }
.catalogue-faq details { padding-block:22px; border-top:1px solid var(--line-light); }
.catalogue-faq summary { cursor:pointer; font-weight:600; font-size:19px; line-height:1.5; }
.catalogue-faq details p { color:var(--muted); margin-bottom:0; }
.article-toc { margin-bottom:40px; border-block:1px solid var(--line-light); padding-block:22px; }
.article-toc p { font-size:12px; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); margin:0 0 16px; }
.article-toc ol { margin:0; padding-left:20px; font-size:16px; }
.article-toc a { display:inline-block; padding-block:5px; }
.content h2,.content h3,.side-panel h2,.related-list strong { text-transform:none; font-weight:600; letter-spacing:-.025em; line-height:1.2; }
@media(max-width:900px) {
 .catalogue-hero-grid { grid-template-columns:1fr; gap:36px; }
 .catalogue-photo img { aspect-ratio:16 / 9; }
 .catalogue-families { gap:0 36px; }
 .catalogue-family { grid-template-columns:24px 1fr; gap:14px; }
 .catalogue-family h3 { font-size:28px; }
 .breadcrumbs li:last-child { flex:1 1 200px; }
}
@media(max-width:600px) {
 .catalogue-hero { padding-block:48px; }
 .catalogue-hero h1 { font-size:40px; }
 .catalogue-hero .lead { font-size:17px; }
 .catalogue-families { grid-template-columns:1fr; }
 .catalogue-family > img,.catalogue-material { height:190px; }
 .catalogue-faq summary { font-size:18px; }
}

/* Editorial archives: clear topics and readable article rows. */
.archive-topics { display:flex; flex-wrap:wrap; gap:8px 28px; padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--line-light); }
.archive-topics a { padding:10px 0; text-decoration:none; color:var(--muted); font-size:16px; }
.archive-topics a:hover,.archive-topics a[aria-current] { color:var(--orange-ink); text-decoration:underline; text-underline-offset:7px; }
.archive-grid { gap:0 64px; }
.archive-card { display:flex; flex-direction:column; padding:30px 0 36px; background:transparent; border:0; border-bottom:1px solid var(--line-light); }
.archive-card:hover { background:transparent; transform:none; border-bottom-color:var(--orange-ink); }
.archive-card h2 { font-family:var(--body); font-size:clamp(24px,2.2vw,30px); font-weight:600; text-transform:none; line-height:1.2; letter-spacing:-.025em; }
.archive-card small { color:var(--muted); font-weight:400; letter-spacing:.04em; }
.archive-card p { font-size:17px; margin:10px 0 24px; max-width:52ch; }
.archive-action { margin-top:auto; color:var(--orange-ink); font-size:14px; font-weight:600; }
.archive-card:hover .archive-action { text-decoration:underline; text-underline-offset:4px; }
.archive-empty { max-width:65ch; grid-column:1 / -1; padding-block:24px; }
.archive-empty h2 { font-size:32px; font-weight:600; }
@media(max-width:600px) { .archive-grid { grid-template-columns:1fr; } .archive-topics { gap:6px 22px; } }
