/* Reference thresholds, with native responsive layouts and accessible controls. */
/* Keep slide layers in the same frame during fades, below their controls. */
.hero-carousel__container, .promo-carousel__container, .gallery-base__slider .slide-track { display: grid; grid-template-columns: minmax(0, 1fr); }
.hero-carousel-item, .promo-carousel-item, .gallery-base__slider .slide { grid-area: 1 / 1; min-width: 0; }
.hero-carousel-item.is-active, .promo-carousel-item.is-active, .gallery-base__slider .slide.is-active { position: relative; z-index: 2; }
.is-exiting { position: relative; z-index: 1; pointer-events: none; }
.hero-controls-position { z-index: 5; }
.hero-carousel__controls { pointer-events: auto; }
.carousel-playback { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; flex: 0 0 32px; border: 1px solid var(--gk-primary-color); border-radius: 50%; color: var(--gk-primary-color); background: #fff; }
.carousel-playback:hover { color: #fff; background: var(--gk-primary-color); }
.carousel-playback .icon { display: flex; }
.promo-list__title-container > .carousel-playback { margin-left: auto; }
.gallery-playback { position: absolute; top: 20px; right: 20px; z-index: 6; }
.feature-track { justify-content: flex-start; overflow-x: auto; padding-bottom: 30px; gap: 0; margin-inline: -10px; width: calc(100% + 20px); }
.promo-list__items.feature-track > article { width: auto; max-width: none; flex: 0 0 calc((100% + 52px) / 1.7); padding-inline: 10px; }
.promo-list__container { opacity: 1; overflow: hidden; }
.promo-list__title-container { width: 100%; }
.main-footer-top__label--accordion:disabled { opacity: 1; color: #fff; }
.newsletter-block__wrapper { min-width: 0; }
.newsletter-block__rich-text { min-width: 0; }
.gallery-base__thumbs .slide-track { justify-content: center; }
.promo-carousel-item__rte { color: #fff; }
.newsletter-block__input { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #e6e6e6; border-radius: 4px; color: var(--gk-neutral-black); background: #fff; }
.newsletter-block__input[aria-invalid="true"] { border-color: var(--gk-primary-color); }
.newsletter-message a { text-decoration: underline; font-weight: 700; }
@media (min-width: 431px) {
  .promo-list__items.feature-track > article { flex-basis: calc((100% + 52px) / 1.7); }
}
@media (min-width: 768px) {
  :root { --container-max: calc(100% - 72px); }
  .introduction-item__texts-wrapper, .introduction-item__opening-hours-wrapper { width: 50%; }
  .introduction-item--booking-widget .introduction-item__opening-hours-wrapper { margin-right: 50%; }
  .facilities-layout { grid-template-columns: 5fr 6fr; gap: 8.333%; }
  .facilities-layout > * { padding-inline: 0; }
  .areas-layout > div { width: 100%; }
  .footer-layout { grid-template-columns: 4fr 7fr; column-gap: 8.333%; }
  .footer-layout > :nth-child(n+3) { grid-column: 1 / -1; }
  .hero-controls-position .hero-carousel__controls { left: 10px; }
  .carousel-dot { width: 16px; padding: 12px 0; }
  .carousel-dot[aria-pressed="true"] { width: 32px; }
  .promo-list__items.feature-track > article { flex-basis: calc((100% + 92px) / 2.26); }
  .promo-carousel-item__elem { display: flex; flex-wrap: wrap; }
  .promo-carousel-item__elem > :only-child { width: 100%; }
  .promo-carousel-item__elem > .promo-carousel-item__wrapper { width: 42.5%; }
  .newsletter-block__email-form { flex-wrap: wrap; }
  .newsletter-message { max-width: 390px; }
}
@media (min-width: 1024px) {
  :root { --container-max: calc(100% - 124px); }
  .introduction-item__texts-wrapper, .introduction-item__opening-hours-wrapper { width: 58.333%; }
  .introduction-item--booking-widget .introduction-item__opening-hours-wrapper { margin-right: 41.667%; }
  .facilities-layout { grid-template-columns: 3fr 8fr; gap: 8.333%; }
  .areas-layout > div { width: 66.667%; margin-inline: auto; }
  .footer-layout { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 0; }
  .footer-layout > :nth-child(n+3) { grid-column: auto; }
  .main-footer-top__label--accordion { pointer-events: none; }
  .promo-list__items.feature-track > article { flex-basis: 33.333%; }
  .promo-carousel-item__elem > .promo-carousel-item__wrapper { width: 35.5%; }
}
@media (min-width: 1400px) {
  :root { --container-max: calc(100% - 224px); }
  .footer-layout { grid-template-columns: 3fr 3fr 3fr 3fr; }
  .footer-layout > :nth-child(2) { padding-left: 33.333%; }
}
@media (min-width: 1920px) {
  :root { --container-max: 1560px; }
  .footer-layout { grid-template-columns: 3fr 3fr 3fr 3fr; }
}
@media (max-width: 767px) {
  .promo-list__title-container { align-items: flex-start; }
  .promo-carousel-item__image { margin-inline: -26px; }
  .cookie-dialog[open] { display: block; padding: 22px 26px; }
  .cookie-actions { margin-top: 20px; }
  .cookie-actions .btn { flex: 1 1 100%; }
  .main-footer-top__contact-wrapper { gap: 20px; justify-content: space-between; }
  .main-footer-top__location, .main-footer-top__phone { min-width: 0; }
  .main-footer-top__phone { flex: 0 0 42%; }
  .main-footer-top__location { flex: 1; }
}
