.amm-catalog-intro {
  padding-block: clamp(48px, 7vw, 84px) clamp(24px, 3vw, 36px);
}

.amm-catalog-intro h1 {
  max-width: 640px;
  margin-bottom: 14px;
  font-size: clamp(2rem, 4.5vw, 3.4rem);
  font-weight: 850;
  letter-spacing: -0.03em;
  line-height: 1.02;
}

.amm-catalog-intro p:last-child {
  max-width: 560px;
  color: var(--amm-muted);
  font-size: clamp(0.96rem, 1.4vw, 1.1rem);
}

.amm-catalog {
  padding-block: 0 clamp(60px, 8vw, 100px);
}

.amm-catalog-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: clamp(28px, 3.5vw, 42px);
}

.amm-catalog-filter [role="tab"] {
  border: 1px solid var(--amm-line);
  border-radius: var(--amm-radius);
  padding: 10px 16px;
  background: var(--amm-white);
  color: var(--amm-black);
  font: inherit;
  font-size: 0.8rem;
  font-weight: 750;
  cursor: pointer;
  transition: border-color 300ms ease, color 300ms ease, background 300ms ease;
}

.amm-catalog-filter [role="tab"]:hover {
  border-color: var(--amm-red);
  color: var(--amm-red);
}

.amm-catalog-filter [role="tab"][aria-selected="true"] {
  border-color: var(--amm-black);
  background: var(--amm-black);
  color: var(--amm-white);
}

.amm-equipment-cards--catalog {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 980px) {
  .amm-equipment-cards--catalog {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .amm-catalog-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
    -webkit-overflow-scrolling: touch;
  }

  .amm-catalog-filter [role="tab"] {
    flex: 0 0 auto;
  }

  .amm-equipment-cards--catalog {
    grid-template-columns: minmax(0, 1fr);
  }
}
