.background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-image: radial-gradient(ellipse at 50% 10%, rgb(78 159 239 / 0.09), transparent 35%), linear-gradient(120deg, #111621, #0c1018 70%);;
}

.header {
  background-color: rgb(17 22 33 / 0.6);
}

.prices-main {
  position: relative;
  margin-top: 84px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  --content-width: 1400px;
}

.prices-main-inner {
  width: min(calc(100% - 16px), var(--content-width));
  margin-inline: auto;
}

.prices-table {
  display: grid;
  grid-template-columns: minmax(80px, 160px) 2fr 2fr;
  background-color: #0002;
  border: 1px solid #fff1;
  border-radius: 16px;
  overflow: hidden;
}

.prices-table div {
  border-top: 1px solid #fff2;
  transition: background-color 0.6s ease;
}

.prices-table div.highlight {
  background-color: rgb(78 153 221 / 0.45) !important;
}

.prices-table div.first {
  border-top: none;
}

.prices-table .name span {
  font-weight: normal;
}

.prices-table h2 {
  margin-bottom: 0;
}

.prices-table .section {
  align-content: end;
  padding-bottom: 8px;
  background-color: #0003;
}

.prices-table div.element.odd {
  background-color: rgb(255 255 255 / 0.02);
}

.prices-table div {
  padding: 4px 8px;
}

.prices-table .price {
  text-align: end;
}

.prices-table .price.first, .prices-table .note {
  font-style: italic;
}

.prices-table .price.first, .prices-table .note.first {
  font-weight: bold;
}

@media (max-width: 640px) {
  .prices-table {
    grid-template-columns: 1fr;
  }

  .prices-table .section.price, .prices-table .section.note {
    display: none;
  }

  .prices-table .price {
    text-align: center;
  }

  .prices-table div.element.odd {
    background-color: rgb(255 255 255 / 0.04);
  }

  .prices-table h2 {
    font-size: 20px;
  }

  .prices-table div.empty {
    display: none;
  }
}
