/* Brochure catalogue: retain the site's typography, palette and controls. */
.catalog-nav { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.catalog-nav a { padding:9px 14px; border:1px solid var(--color-border); border-radius:var(--radius-sm); color:var(--color-text); font-size:var(--text-sm); text-decoration:none; background:var(--color-surface); }
.catalog-nav a:hover, .catalog-nav a:focus-visible { border-color:var(--color-steel); color:var(--color-steel); }
.catalog-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.catalog-section { padding-block:clamp(40px,6vw,80px); border-bottom:1px solid var(--color-divider); scroll-margin-top:100px; }
.catalog-card[id] { scroll-margin-top:100px; }
.catalog-section:nth-of-type(even) { background:var(--color-surface-offset); }
.catalog-intro { max-width:72ch; color:var(--color-text-muted); margin:16px 0 28px; }
.catalog-section h2 { font-size:var(--text-xl); max-width:32ch; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:28px; }
.catalog-grid.four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.catalog-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.catalog-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius-lg); background:var(--color-surface); }
.catalog-image { aspect-ratio:4/3; background:#e9ebed; overflow:hidden; }
.catalog-image img { width:100%; height:100%; object-fit:contain; }
.catalog-card-body { padding:22px; display:flex; flex-direction:column; flex:1; }
.catalog-card h3 { font-size:var(--text-lg); line-height:1.25; margin-bottom:10px; }
.catalog-card p { color:var(--color-text-muted); font-size:var(--text-sm); }
.catalog-card a { margin-top:auto; padding-top:20px; font-size:var(--text-sm); color:var(--color-steel); font-weight:600; text-underline-offset:4px; }
.catalog-feature { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; }
.catalog-feature img { width:100%; height:auto; border-radius:var(--radius-lg); }
.catalog-feature ul { padding-left:20px; margin:20px 0; display:grid; gap:10px; color:var(--color-text-muted); }
.catalog-note { font-size:var(--text-sm); color:var(--color-text-muted); max-width:80ch; margin-top:24px; }
.catalog-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:28px; }
.catalog-process h3 { font-size:var(--text-lg); margin-bottom:10px; }
.catalog-process p { color:var(--color-text-muted); font-size:var(--text-sm); }
.catalog-teaser .img-wrap { background:#e9ebed; }
.catalog-teaser .img-wrap img { object-fit:contain; }
.catalog-teaser .body { display:flex; flex-direction:column; flex:1; }
.catalog-teaser .body .arrow { margin-top:auto; padding-top:16px; }
.catalog-teaser h3 { font-size:var(--text-lg); line-height:1.25; margin-bottom:12px; }
.catalog-details { padding:24px 0; }
.catalog-details summary { cursor:pointer; font-size:var(--text-lg); font-weight:600; padding:20px 0; }
@media(max-width:1000px) { .catalog-grid.four { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
  .catalog-feature, .catalog-grid, .catalog-grid.two { grid-template-columns:1fr; }
  .catalog-feature { gap:24px; }
  .catalog-grid.four { grid-template-columns:1fr; }
  .catalog-process { grid-template-columns:1fr 1fr; }
  .catalog-card-body { padding:20px; }
  .catalog-nav a { font-size:13px; padding:8px 10px; }
}
@media (max-width: 360px) {
  .btn { max-width: 100%; white-space: normal; text-align: center; }
}
