.hosting-lang {
  margin: -8px 0 0;
  color: var(--soft);
  font-size: 0.86rem;
}

.plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 36px;
}

.plan-card {
  display: flex;
  flex-direction: column;
  padding: 26px 24px 22px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface-tint);
}

.plan-name {
  margin: 0 0 12px;
  color: var(--soft);
  font: 0.72rem var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.plan-price { margin: 0; font-family: var(--display); font-size: 2rem; line-height: 1.1; }
.plan-price span { color: var(--soft); font-family: var(--font); font-size: 0.9rem; }
.plan-vat { margin: 6px 0 0; color: var(--soft); font-size: 0.78rem; }
.plan-people { margin: 18px 0 0; font-size: 1.05rem; font-weight: 600; }
.plan-details { flex: 1; margin: 16px 0 0; }
.plan-details > div { padding: 10px 0; border-top: 1px solid var(--line); }
.plan-details dt { color: var(--soft); font-size: 0.75rem; }
.plan-details dd { margin: 3px 0 0; font-size: 0.9rem; }
.plan-card .btn { justify-content: center; margin-top: 18px; }

@media (max-width: 900px) {
  .plan-grid { grid-template-columns: 1fr; margin-top: 28px; }
}
