.catalog-collapse {
  display: grid;
  gap: 20px;
}

.catalog-collapse > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 88px;
  padding: 20px 24px;
  border: 1px solid #d5e2da;
  border-radius: 22px;
  background: #fff;
  color: #173f35;
  cursor: pointer;
  box-shadow: 0 12px 34px rgba(35, 69, 57, .07);
  list-style: none;
}

.catalog-collapse > summary::-webkit-details-marker {
  display: none;
}

.catalog-collapse > summary > span {
  display: grid;
  gap: 4px;
}

.catalog-collapse > summary strong {
  font-family: "Manrope", sans-serif;
  font-size: 1.12rem;
}

.catalog-collapse > summary small {
  color: #687f77;
  font-size: .92rem;
  line-height: 1.45;
}

.catalog-collapse > summary i {
  display: grid;
  flex: 0 0 42px;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #edf6e5;
  color: #35681f;
  font-style: normal;
  font-size: 1.35rem;
  transition: transform .2s ease;
}

.catalog-collapse > summary:hover,
.catalog-collapse > summary:focus-visible {
  border-color: #8fcf58;
  outline: 0;
}

.catalog-collapse[open] > summary i {
  transform: rotate(45deg);
}

.catalog-collapse[open] > .catalog-grid {
  animation: reveal-plans .2s ease-out;
}

@keyframes reveal-plans {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 800px) {
  .catalog-collapse > summary {
    min-height: 82px;
    padding: 18px;
    border-radius: 18px;
  }

  .catalog-collapse > summary small {
    font-size: .86rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .catalog-collapse[open] > .catalog-grid {
    animation: none;
  }
}
