#destinations .country-rail-button:hover {
  background: #f5f5f5;
}

#destinations .country-rail-button[data-country-scroll="prev"] {
  left: -21px;
}

#destinations .country-rail-button[data-country-scroll="next"] {
  right: -21px;
}

#destinations .country-rail-button:disabled {
  visibility: hidden;
}

@media (max-width: 1100px) {
  #destinations .country-card,
  #destinations .country-tall {
    flex-basis: calc((100% - 54px) / 4);
  }

  #offers .festival-card {
    min-height: 170px;
    padding: 14px;
  }
}

@media (max-width: 767px) {
  #offers,
  #destinations {
    padding: 30px 0;
  }

  #offers h2,
  #destinations h2 {
    font-size: 25px;
  }

  #offers .section-heading,
  #destinations .section-heading {
    margin-bottom: 20px;
  }

  #offers .festival-grid {
    display: flex;
    gap: 14px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 8px;
  }

  #offers .festival-card {
    flex: 0 0 86%;
    min-height: 170px;
    scroll-snap-align: start;
    padding: 18px;
  }

  #offers .festival-card h3 {
    font-size: 26px;
  }

  #destinations .country-grid {
    gap: 12px;
  }

  #destinations .country-card,
  #destinations .country-tall {
    flex-basis: calc((100% - 24px) / 3);
    height: 235px;
  }

  #destinations .country-card strong {
    font-size: 19px;
  }

  #destinations .country-rail-button {
    width: 34px;
    height: 34px;
  }

  #destinations .country-rail-button[data-country-scroll="prev"] {
    left: -12px;
  }

  #destinations .country-rail-button[data-country-scroll="next"] {
    right: -12px;
  }
}

@media (max-width: 480px) {
  #destinations .country-card,
  #destinations .country-tall {
    flex-basis: 43%;
    height: 230px;
  }

  #destinations .country-see-more {
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #offers .festival-card {
    transition: none;
  }
}
