/* Import default styles
----------------------------------------*/
@import "../../../../wabs_sitepackage_park/Resources/Private/Scss/fonts";
@import "../../../../wabs_sitepackage_park/Resources/Private/Scss/variables";
@import "fonts";
@import "variables";
@import "../../../../wabs_sitepackage_park/Resources/Private/Scss/park-styles";

/* Imports
----------------------------------------*/

@import "base";
@import "form-elements";
@import "navigations";
@import "mega-menu";
@import "header";
@import "footer";
@import "cards";
@import "multiselect";
@import "newsletter";
@import "slider";
@import "info-popup";
@import "social";
@import "feature-items";
@import "filter-elements";
@import "events";
@import "reviews";
@import "badge";
@import "button";
@import "weatherinfo";
@import "news";
@import "attractions";
@import "accordion";

.frame-type-text p a {
  word-break: break-all;
}

.feature-items .container {
  @include media-breakpoint-down(md) {
    margin-top: 0;
  }
}

.content-main {
  @include media-breakpoint-down(md) {
    padding-top: 0;
  }
}

.newsletter-bg .newsletter {
  display: flex;
  line-height: 2.25;

  &:after {
    content: url("../../Images/newsletter-icon.svg");
    padding-left: 15px;
  }
}

.news .mosaic.mosaic-2col {
  .content {
    display: flex;
    flex-direction: column;

    @include media-breakpoint-up(lg) {
      flex-direction: row;
    }

    h3 a:hover {
      color: $white;
      text-decoration: none;
    }

    .btn-inn {
      display: flex;
      justify-content: end;

      .btn-primary {
        background: none;

        &:after {
          content: url("../../Images/chevron-right-light.svg");
          float: right;
        }

        >span {
          display: none;
        }
      }
    }
  }
}

@include media-breakpoint-down(md) {
  .header-main {
    .navbar .navbar-brand .brand-nav.h-100 {
      height: 72% !important;
    }

    .menu-btn {
      margin-left: 5%;
    }
  }
}

.social-element {
  img {
    mix-blend-mode: multiply;
  }

  >.py-4>.row {
    align-items: center;
  }
}

.actions nav.form-navigation .submit .btn {
  border-top-left-radius: 16px;
  border-bottom-left-radius: 16px;
}

.form-text {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.1;
  color: #000000;
}

// responsive styles

@media screen and (max-width: 767px) {

  //--------------------layout spacing--------------------
  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl,
  .container-xxxl,
  .container {
    --bs-gutter-x: 24px;
  }

  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl,
  .container-xxxl {
    .container {
      --bs-gutter-x: 0px;
    }

    .row.split-cont {
      .container {
        --bs-gutter-x: 12px;
      }
    }

    .section-bg-color {
      .container {
        --bs-gutter-x: 24px;

        .container {
          padding-left: 0;
          padding-right: 0;
        }
      }
    }
  }

  // --------------------header---------------
  main.content-main {
    padding-top: 70px; //slider height
  }

  .tx-wabs-attractions .hero-inner.attraction-details {
    margin-top: 0;
  }

  .header-main .btn-booking {
    margin: 0 24px 0 0;
  }

  .header-main .menu-btn {
    margin-left: 24px;
  }

  // --------------------header ends--------------------

  hr {
    height: 20px !important;
  }

  .feature-items {
    margin-top: 0px !important;
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
    left: auto;
    transform: none;
    width: auto;
  }

  .img-top .content {
    padding: 0;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .item.h-100[style="padding-bottom: 50px;"] {
    padding-bottom: 25px !important;
  }

  // navbar logo height
  .header-main .navbar .navbar-brand .brand-nav.h-100,
  .header-main .navbar-image {
    height: 100% !important;
  }

  // --------------------slider review card--------------------
  .slide-item-review {
    padding: 30px;
  }

  .owl-carousel .owl-item .slide-item-review>*:not(:last-child) {
    margin-bottom: 20px;
  }

  .owl-carousel .owl-item .slide-item-review .card-content {
    height: auto;
  }

  .owl-carousel .owl-item .slide-item-review .card-content>p>span {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
  }

  .owl-carousel .slide-item-review h4,
  .slide-item-review .h4,
  .owl-carousel .slide-item-review h4,
  .slide-item-review .h4 {
    height: auto;
    font-size: 18px;
    line-height: 28px;
  }

  // --------------------slider review card ends--------------------
  .slider-out {
    padding-top: 15px;
    margin: 0;
  }

  // --------------------carousel arrows--------------------
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .slider-out .owl-carousel .owl-nav button.owl-prev,
  .slider-out .owl-carousel .owl-nav button.owl-next,
  .slider-out .is-horizontal .f-carousel__nav .f-button.is-next,
  .slider-out .is-horizontal .f-carousel__nav .f-button.is-prev,
  .image-slider .owl-carousel .owl-nav button.owl-prev,
  .image-slider .owl-carousel .owl-nav button.owl-next,
  .image-slider .is-horizontal .f-carousel__nav .f-button.is-next,
  .image-slider .is-horizontal .f-carousel__nav .f-button.is-prev {
    width: 30px;
    height: 30px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 10px 2px;
  }

  .slider-out .owl-carousel .owl-nav button.owl-prev:before,
  .slider-out .owl-carousel .owl-nav button.owl-next:before,
  .image-slider .owl-carousel .owl-nav button.owl-prev:before,
  .image-slider .owl-carousel .owl-nav button.owl-next:before,
  .owl-carousel .owl-nav button.owl-prev:before,
  .owl-carousel .owl-nav button.owl-next:before {
    line-height: 35px;
    font-size: 20px;
    padding: 0;
  }

  .owl-carousel .owl-nav button.owl-prev.owl-prev {
    left: -10px;
  }

  .owl-carousel .owl-nav button.owl-next.owl-next {
    right: -10px;
  }

  .slider-out .owl-carousel#accelerate-slider .owl-nav button.owl-next {
    right: -17px;
  }

  .slider-out .owl-carousel#accelerate-slider .owl-nav button.owl-prev {
    left: -17px;
  }

  // --------------------slider --------------------
  .owl-carousel .card .title,
  .card .title {
    padding-bottom: 20px;
  }

  .owl-carousel .card .title h3,
  .card .title h3 {
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    padding: 0 0 5px;
  }

  .owl-carousel .card .content,
  .card .content {
    padding: 10px;
  }

  .owl-carousel .card .content p,
  .card .content p {
    text-align: left;
  }

  .owl-carousel.cardtype-price .card .content p,
  .card.cardtype-price .content p,
  .owl-carousel .card.cardtype-price .title h3,
  .card.cardtype-price .title h3 {
    padding-left: 10px;
  }

  .owl-carousel .card .content .subtitle,
  .card .content .subtitle,
  .owl-carousel .card .content .subtitle li,
  .card .content .subtitle li,
  .owl-carousel .card .content .price-style1 .title p,
  .card .content .price-style1 .title p {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
  }

  .owl-carousel .card .content .subtitle,
  .card .content .subtitle {
    padding: 0;
  }

  .owl-carousel .card .content .subtitle>ul,
  .card .content .subtitle>ul {
    padding-left: 0;
  }

  .owl-carousel .card .content .subtitle>ul li,
  .card .content .subtitle>ul li {
    padding-left: 25px;
    padding-bottom: 0;
  }

  .owl-carousel .card .content .subtitle>ul li:before,
  .card .content .subtitle>ul li:before {
    left: 10px;
  }

  .owl-carousel .card .content .btn-small,
  .card .content .btn-small {
    width: 100%;
    position: absolute;
    bottom: 6px;
    left: 10px;
  }

  .owl-carousel .card .content .price-wrap .items-below,
  .card .content .price-wrap .items-below {
    padding-top: 0;
  }

  .owl-carousel .card .content .price-wrap .items-below li .title,
  .card .content .price-wrap .items-below li .title {
    align-items: flex-start;
  }

  .owl-carousel .card .content .price -wrap .items-below li,
  .card .content .price-wrap .items-below li {
    padding: 10px;
  }

  .owl-carousel .card .content .price-wrap .items-below li .title,
  .card .content .price-wrap .items-below li .title {
    font-size: 16px;
    line-height: 24px;
  }

  .card .content,
  .owl-carousel .owl-stage .card .content {
    justify-content: flex-start;
  }

  .owl-carousel.image-round .owl-stage .card img,
  .image-round .owl-stage .card img {
    border-radius: 12px 12px 0 0;
  }

  .owl-carousel .border-rounded.img-top .figure,
  .border-rounded.img-top .figure {
    border-radius: 12px 12px 0 0;
  }

  .owl-carousel .border-rounded.img-top .content,
  .border-rounded.img-top .content {
    border-radius: 0 0 12px 12px;
  }

  .owl-carousel.center-large .owl-item.center .slide-item-review>* {
    margin-bottom: 20px;
  }

  .owl-carousel.center-large .owl-item.center .slide-item-review .card-content {
    height: auto;
  }

  .owl-carousel.center-large .owl-item.center .slide-item-review .card-content>p>span {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
  }

  .hero-main .owl-carousel.image-slider .slide-item.image-item {
    margin-top: 0px;
  }

  .container.twocol-50-50 .row.col2-grid.frame-space-before- .col-sm-12.col-md-6.col-lg-6 {
    margin-bottom: 15px;
  }

  .container.twocol-50-50.newsletter-bg .row.col2-grid.frame-space-before- .col-sm-12.col-md-6.col-lg-6:first-child {
    margin-bottom: 0px;
  }

  .news .card .content .subtitle {
    text-align: left;
    padding-left: 10px;
    padding-right: 30px;
  }

  .news .mosaic.mosaic-2col .content .btn-inn .btn-primary {
    background: none;
    position: absolute;
    bottom: 20px;
    right: 0;
  }

  .mosaic .row>* {
    gap: 0;
  }

  .hero-main .owl-carousel .slide-item.video-item {
    margin-top: 0px;
  }

  .card.content-on-image-bottom .content .title .subtitle p {
    padding-right: 25px;
  }

  .footer-main h2,
  .footer-main .h2 {
    padding: 17px 0px;
  }

  .events-cont .events-articles .articles-out .box:hover .figure img,
  .events-cont .events-articles .articles-out .box:focus .figure img,
  .events-cont .events-articles .articles-out .box:active .figure img {
    transform: none !important;
  }

  .accordion-element {
    &.card {
      .contenttable {
        overflow: auto;
        display: block;
      }
    }
  }

  form select.form-control {
    padding: 0rem 0.75rem;
  }

  form select option {
    height: 44px;
    padding: 0.675rem 0.75rem;
  }

  .card .gradient-overlay:before {
    background: #00000047;
    height: 100%;
  }

  .tx-wabs-attractions {
    .filter-elements {
      .title-with-icon {
        padding: 7px 12px 7px 7px;

        .attraction-title {
          margin-right: 4px;
        }
      }
    }
  }

  .accordion-element.card.card-default .card-body {
    padding: 0.5rem 1rem 1rem 1rem;
  }

  .owl-carousel .card .content .price-wrap .items-below,
  .card .content .price-wrap .items-below {
    padding-bottom: 10px;
  }

  .filter-elements .box h3,
  .filter-elements .box .h3,
  .filter-elements .box h4,
  .filter-elements .box .h4 {
    padding: 16px 5px;
  }
}

@media screen and (max-width: 767px) and (orientation: landscape) {

  .owl-carousel .card.cardtype-price .content .subtitle,
  .card .content .subtitle,
  .owl-carousel .card.cardtype-price .content .subtitle li,
  .card .content .subtitle li,
  .owl-carousel .card.cardtype-price .content .price-style1 .title p,
  .card .content .price-style1 .title p {
    font-size: 13px;
    line-height: 20px;
  }

  .owl-carousel .card.cardtype-price .content .price-wrap .items-below li .title,
  .card.cardtype-price .content .price-wrap .items-below li .title {
    font-size: 13px;
    line-height: 20px;
  }

  .card .content .price-wrap .items-below li .price {
    font-size: 13px;
    line-height: 20px;
  }

  .tx-wabs-attractions {
    .hero-inner {
      &.owl-carousel {
        .owl-nav {
          position: absolute;
          top: 50%;
          bottom: 50%;
          transform: translateY(-50%);
          left: 0;
          right: 0;
          display: flex;
          gap: 13px;
          width: 100%;

          button {

            &.owl-prev,
            &.owl-next {
              height: 100px;
              margin: 0;

              &::before {
                width: 100%;
                height: 100%;
                background: transparent;
                font-size: 15px;
                line-height: 100px;
                padding: 0;
              }
            }
          }
        }
      }
    }
  }
}

// EAA accessibility fix
@media (min-width: 1200px) {
  .mega-menu-custom {
    .sub-menu-list {
      ul li>a:focus {
        color: #000000b2;
      }
    }
  }
}