/* Global tour layout fix: keeps content visible and booking aligned on all tour pages */

html.activity-page body {
    background: #f4f7fc !important;
}

.tour-page {
    background: #f4f7fc;
    overflow: visible;
}

.tour-page .tour-hero {
    margin-bottom: 0;
}

/* AOS safety: if AOS JS fails, keep content visible */
html.qb-aos-fallback [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

/* Required reusable layout */
.tour-layout {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px;
    overflow: visible;
}

.tour-content {
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
}

.tour-booking {
    flex: 0 0 380px;
    width: 380px;
    position: sticky;
    top: 110px;
    align-self: flex-start;
}

.tour-booking .booking-widget {
    width: 100%;
    margin-top: 0;
}

/* Keep content sections readable */
.tour-content .description-section,
.tour-content .info-grid,
.tour-content .section-title {
    margin-bottom: 20px;
}

@media (max-width: 992px) {
    .tour-layout {
        flex-direction: column;
    }

    .tour-booking {
        width: 100%;
        flex: 1 1 auto;
        position: static;
    }
}
