.catalog .cat-home-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(230px, .8fr);
  align-items: center;
  column-gap: clamp(24px, 4vw, 68px);
}
.catalog .cat-home-hero > * { margin: 0; min-width: 0; }
.catalog .cat-home-tools { display: grid; gap: 14px; }
.catalog .cat-home-tools h1 { max-width: 19ch; }
.catalog .cat-home-tools .cat-search { margin: 4px 0 0; }
.catalog .cat-home-finder a { font-weight: 700; }
.catalog .cat-home-jumps {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 20px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
  font-size: .9rem;
}
.catalog .cat-home-photo { max-width: 430px; justify-self: end; width: 100%; }
.catalog .cat-home-photo img { width: 100%; height: auto; border-radius: 8px; }
.catalog .cat-home-photo figcaption, .catalog .cat-guide-photo figcaption {
  margin-top: 8px;
  color: var(--muted);
  font-size: .88rem;
  line-height: 1.45;
}
.catalog .cat-fieldguide { max-width: 1190px; margin: clamp(36px,5vw,74px) auto; }
.catalog .cat-fieldguide > header { max-width: 780px; }
.catalog .cat-fieldguide > header h2 { max-width: 31ch; font-size: clamp(29px,3vw,44px); }
.catalog .cat-fieldguide > header p {
  font-size: clamp(17px,1.4vw,20px);
  line-height: 1.65;
  margin-top: 14px;
}
.catalog .cat-guide-layout {
  display: grid;
  grid-template-columns: minmax(175px, .38fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(22px,4.5vw,76px);
  margin-top: clamp(24px,3.1vw,42px);
}
.catalog .cat-guide-nav {
  border-top: 3px solid var(--accent);
  background: var(--light);
  padding: 18px 20px 20px;
}
.catalog .cat-guide-nav p { font-weight: 700; }
.catalog .cat-guide-nav ul { list-style: none; padding: 0; margin: 8px 0 0; }
.catalog .cat-guide-nav li + li { margin-top: 8px; }
.catalog .cat-guide-text { min-width: 0; max-width: 75ch; font-size: 17px; line-height: 1.7; }
.catalog .cat-guide-text section { scroll-margin-top: 18px; border-top: 1px solid var(--line); padding-top: 19px; }
.catalog .cat-guide-text section + section { margin-top: 34px; }
.catalog .cat-guide-text h3 { font-size: clamp(23px,2.2vw,31px); }
.catalog .cat-guide-text p { margin-block: 12px; }
.catalog .cat-guide-text h4 { color: var(--ink); font-size: 1.12rem; line-height: 1.35; margin: 20px 0 0; }
.catalog .cat-guide-text h4 + p { margin-top: 6px; }
.catalog .cat-guide-photo { margin-top: 20px; max-width: 650px; }
.catalog .cat-guide-photo img { width: 100%; height: auto; border-radius: 8px; }
.catalog #featured-parts h2, .catalog #departments h2 { margin-bottom: 16px; }
@media (max-width: 800px) {
  .catalog .cat-home-hero { grid-template-columns: minmax(0, 1fr) minmax(185px, .55fr); }
}
@media (max-width: 700px) {
  .catalog .cat-home-hero, .catalog .cat-guide-layout { grid-template-columns: minmax(0, 1fr); }
  .catalog .cat-home-photo { justify-self: start; max-width: 340px; margin-top: 19px; }
  .catalog .cat-guide-text { font-size: 16px; }
}
@media print {
  .catalog .cat-home-jumps, .catalog .cat-guide-nav { display: none; }
  .catalog .cat-guide-layout { display: block; }
}

.catalog .cat-guide-hero h1 { max-width: 24ch; }
.catalog .cat-browse-photo {
  width: min(100%, 340px);
  justify-self: end;
  background: white;
  padding: 16px 16px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
}
.catalog .cat-browse-photo img { display: block; width: 100%; height: clamp(140px, 13vw, 205px); object-fit: contain; }
.catalog .cat-browse-photo figcaption { border-top: 1px solid var(--line); padding: 9px 3px 0; margin-top: 10px; font-size: .85rem; line-height: 1.45; }
.catalog .cat-browse-photo figcaption a { text-decoration-thickness: 1px; }
.catalog #categories h2 { margin-bottom: 14px; }
.catalog .cat-guide-example { padding: 12px 0; }
.catalog .cat-guide-example + .cat-guide-example { border-top: 1px solid var(--line); }
.catalog .cat-guide-example h4 { margin: 0; }
.catalog .cat-guide-example .cat-guide-part { font: .82rem/1.4 ui-monospace,monospace; color: var(--muted); margin: 7px 0; }
.catalog .cat-guide-example dl { margin: 12px 0; font-size: .92rem; }
.catalog .cat-guide-example dl div { display: grid; grid-template-columns: minmax(85px, .35fr) minmax(0, 1fr); gap: 12px; }
.catalog .cat-guide-example dt { font-weight: 650; }
.catalog .cat-guide-example dd { margin: 0; overflow-wrap: anywhere; }
.catalog .cat-guide-next { display: flex; flex-wrap: wrap; gap: 10px 20px; border-top: 1px solid var(--line); margin-top: 24px; padding-top: 16px; }
@media (max-width: 700px) {
  .catalog .cat-browse-photo { justify-self: start; margin-top: 15px; }
  .catalog .cat-browse-photo img { height: 132px; }
}
