/* Theme: Vagabond / Product Page CSS Template / Updated: 22/11/21 */
body {
    overflow: unset;
}
section {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
}
#footer {
    padding-bottom: var(--booking-bar-height) !important;
}
#product-hero {
    overflow-x: hidden !important;
}
#product-hero .product-hero-container {
    min-height: 35rem;
}
#product-hero .product-hero-header {
    max-width: 65rem;
}
#product-hero .product-hero-text {
    max-width: 45rem;
}
#product-hero .overlay-image {
    width: 40%;
    position: absolute;
    right: 0;
    bottom: -2rem;
}
@media (min-width: 768px) {
    #product-hero .text-overlay {
        margin-left: -7rem;
    }
    #product-hero .overlay-image {
        width: 150%;
        left: -4rem;
        bottom: 2rem;
    }
}
@media (min-width: 992px) {
    #product-hero .overlay-image {
        width: 120%;
        right: -4rem;
        left: unset;
        bottom: 4rem;
    }
}
#product-overview p {
    white-space: pre-line;
}
@media (min-width: 768px) {
    .highlights-card:nth-child(3n), .highlights-card:nth-child(3n + 1) {
        margin-top: 50px;
        margin-bottom: -50px;
    }
}
@media (min-width: 768px) {
    #product-schedule .schedule-card {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        position: relative;
        margin-bottom: 15%;
    }
    #product-schedule .schedule-left {
        grid-column: 1 / span 7;
        grid-row: 1;
        padding-bottom: 10%;
        z-index: -1;
    }
    #product-schedule .schedule-right {
        grid-column: 6 / -1;
        grid-row: 1;
        padding-top: 10%;
     }
    #product-schedule .swiper-controls {
         position: absolute;
         right: 0;
         top: 4rem;
         z-index: 20;
         padding: 1rem;
     }
}
@media (max-width: 767px) {
    #product-schedule .container {
        padding: 0;
    }
    #product-schedule .schedule-left {
        position: relative;
        margin-right: 10%;
        margin-bottom: -10%;
        z-index: -1;
    }
    #product-schedule .schedule-left .img-border {
        border-left: none !important;
    }
    #product-schedule .schedule-right {
        padding-right: 15px;
        padding-left: 15px;
    }
    #product-schedule .swiper-controls {
         position: absolute;
         right: 0;
         top: 14.5rem;
         z-index: 20;
         padding: 1.5rem;
     }
}
.hosts-card {
    border: solid 1px var(--body-color);
}
#product-included .row {
    border: solid 1px var(--body-color);
}
#product-included .included-header {
    border-bottom: solid 1px var(--body-color);
}
@media (min-width: 768px) {
    #product-included .included-items {
        border-right: solid 1px var(--body-color);
    }
}
@media (max-width: 767px) {
    #product-included .included-items {
        border-bottom: solid 1px var(--body-color);
    }
}
#product-location .top-left {
    top: 0;
    left: 0;
    max-width: 560px;
    z-index: 1;
}
#product-location .bottom-right {
    bottom: 0;
    right: 0;
    max-width: 400px;
}
@media (max-width: 991px) {
    #product-location .top-left {
        position: relative !important;
        margin-bottom: -2rem;
        z-index: 1;
    }
    #product-location .bottom-right {
        position: relative !important;
        margin-top: -2rem;
        z-index: 1;
        max-width: 600px;
        margin-right: -1rem;
    }
}
#faqAccordion {
    border: solid 1px var(--body-color);
}
.faq-answer {
    border-bottom: solid 1px var(--body-color);
}
.faq-heading {
    border-bottom: solid 1px var(--body-color);
}
.faq-heading svg {
    transition: all ease 0.3s;
}
.faq-heading:not(.collapsed) svg {
    transform: rotate(45deg);
}
@media (max-width: 767px) {
    #faqAccordion {
        box-shadow: none;
        border-bottom: none;
    }
}
.reviews-card {
    border: solid 1px var(--body-color);
}
.tip-card p {
    white-space: pre-line;
}
@media (min-width: 768px) {
    .tip-text {
        width: 70%;
        margin-left: auto;
        margin-top: -3rem !important;
        z-index: 2;
        position: relative;
    }
}
.dateCard {
    border: solid 1px var(--body-color);
}
.dateCard .button {
    min-width: 140px;
    text-align: center;
}
@media (min-width: 768px) {
    .dateCard .button {
        min-width: 180px;
        text-align: center;
    }
    .dateCard .label-banner:not(:last-of-type) {
        margin-right: .5rem !important;
    }
}
@media (min-width: 768px) {
    .booking-bar-banners .label-banner:not(:last-of-type) {
        margin-right: .5rem !important;
    }
}
@media (max-width: 767px) {
    #product-bookingbar .label-small-uppercase {
        font-size: 0.8rem;
    }
    #product-bookingbar .label-big {
        font-size: 1rem;
    }
}
.blog-author-image {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
}

.text-border {
    -webkit-text-stroke: 1px var(--body-color);
}

#product-tips {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.product-video {
  width: 80%;
  object-fit: contain;
  object-position: top;
  margin: 0 auto;
}

.product-video.aspect-ratio--16-9 {
  aspect-ratio: 16 / 9;
}