@media (max-width:760px) {
  h2 {
    font-size: 2.0em;
    line-height: 1.4em;
  }

  h3 {
    font-size: 1.7em;
    line-height: 1.4em;
  }

  .listing-actions {
    justify-content: end;
  }

  .listing-gallery-item:not(:first-child) {
    display: none;
  }

  .listing-heading .container {
    flex-direction: column;
  }

  .listing-gallery {
    height: auto;
  }

  .listing-gallery-item {
    min-height: auto;
  }

  .primary-columns .container {
    grid-template-columns: 100%;
    gap: 0;
  }

  .listing-calculator .payment-kinds .list-item {
    flex-direction: column;
  }

  .last .base {
    margin-bottom: 0;
  }

  .listing-calendar .list-days,
  .calendar-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}

@media (max-width: 480px) {
  button {
    font-size: 0.95em;
  }
  .listing-info .base {
    display: flex;
    flex-direction: column;
  }
  .listing-info > .base > div:nth-child(1) {
    width: 100%;
  }

  .listing-location {
    width: 100%;
  }

  .listing-gallery {
    grid-template-columns: 1fr;
  }

  .listing-gallery-item.large {
    grid-column: span 1;
    grid-row: span 1;
  }
}
