.card {
  background: var(--c-white);
  border: 1px solid var(--c-soft);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow);
  padding: 18px;
}

.grid {
  display: grid;
  gap: 16px;
}

.grid.two-col-1-2 {
  grid-template-columns: 1.2fr 0.8fr;
}

.grid.two-col-equal {
  grid-template-columns: 1fr 1fr;
}

.grid.three-col {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .grid.two-col-1-2,
  .grid.two-col-equal,
  .grid.three-col {
    grid-template-columns: 1fr;
  }
}

.grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 980px) { .grid.cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .grid.cols-3 { grid-template-columns: 1fr; } }


