.benchmark-jump {
  margin-top: 1.75rem;
  font-weight: 800;
}

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

.benchmark-grid,
.budget-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 1.5rem;
  margin: 1.75rem 0;
}

.benchmark-card {
  margin: 0;
  padding: 1.15rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--navy);
}

.benchmark-card h3,
.benchmark-table h3 {
  margin: 0 0 .75rem;
  font-size: 1.1rem;
  font-weight: 800;
}

.benchmark-table .table-scroll {
  margin: 0;
}

.benchmark-table table {
  width: 100%;
  min-width: 0;
  font-size: .9rem;
  font-variant-numeric: tabular-nums;
}

.benchmark-table th,
.benchmark-table td {
  padding: .65rem .6rem;
}

.benchmark-table td {
  white-space: nowrap;
}

.benchmark-note {
  margin: .7rem 0 0;
  color: var(--muted);
  font-size: .83rem;
  line-height: 1.6;
}

.benchmark-result {
  margin: 1rem 0 .6rem;
  font-weight: 800;
}

.benchmark-card p {
  margin: 0;
}

.benchmark-stack {
  display: grid;
  gap: .75rem;
}

#prezzi,
.benchmark-anchor {
  scroll-margin-top: 100px;
}

.benchmark-anchor {
  display: block;
}

.comparison-prices tbody tr:first-child > *,
.budget-grid tbody tr:last-child > * {
  background: #d8ebff;
  color: var(--navy);
  font-weight: 800;
}

.budget-grid th a {
  color: #0050b3;
  text-decoration: underline;
  text-underline-offset: .15em;
}

@media (max-width: 900px) {
  .benchmark-grid,
  .budget-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .benchmark-metrics { grid-template-columns: 1fr; }
  .benchmark-card { padding: 1rem; }
  .benchmark-table th,
  .benchmark-table td { padding: .55rem .38rem; }
  .benchmark-table table { font-size: .78rem; }
}

@media print {
  .benchmark-grid,
  .budget-grid { grid-template-columns: 1fr 1fr; }
  .benchmark-card { break-inside: avoid; }
}
