.catalog-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 400px);
  align-items: end;
  column-gap: 48px;
  padding: 48px 0 24px;
  border-bottom: 1px solid #d9ddd7;
}

.catalog-hero .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: 10px;
}

.catalog-hero h1 {
  max-width: none;
  margin: 0;
  font-size: clamp(2rem, 3.1vw, 3.25rem);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.025em;
}

.catalog-hero p {
  max-width: 400px;
  margin: 0 0 4px;
  color: #63736e;
  font-size: .91rem;
  line-height: 1.6;
}

.catalog-controls { margin-top: 20px; }

@media (max-width: 900px) {
  .catalog-hero {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 34px 0 20px;
  }

  .catalog-hero .eyebrow { margin-bottom: 0; }
  .catalog-hero h1 { font-size: clamp(2rem, 5vw, 2.6rem); }
  .catalog-hero p { max-width: 620px; }
}

@media (max-width: 640px) {
  .catalog-hero { padding: 28px 0 18px; }
  .catalog-hero h1 { font-size: 2rem; }
  .catalog-hero p { font-size: .84rem; }
}
