/*
 * Woodlands Caravan Park
 * Touring page styles
 *
 * Page-specific styles for touring.php / the Touring Park page.
 * Keep shared header, navigation and footer styling in modern.css.
 */

/* =========================================================
   TOURING HERO
   The CMS can continue to control the hero background image.
   This stylesheet controls the overlay and presentation only.
   ========================================================= */

.touring-hero {
    position: relative;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

/*
 * Dark enough behind the heading on the left, then fades away
 * through the middle so the right-hand side of the photograph
 * remains bright and visible.
 */
/* Keep all hero content above the overlay */
.touring-hero > * {
    position: relative;
    z-index: 1;
}

/*
 * Common alternative class names.
 * These let the file work if the existing page uses .touring-page-hero
 * or .hero-tour instead of .touring-hero.
 */
.touring-page-hero,
.hero-tour {
    position: relative;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.touring-page-hero > *,
.hero-tour > * {
    position: relative;
    z-index: 1;
}

/* =========================================================
   MOBILE
   On small screens the copy occupies more of the photograph,
   so retain a little more shading for readability.
   ========================================================= */

/* =========================================================
   TOURING PAGE — CONSISTENT CONTENT WIDTH
   Match the existing "Choose your pitch" section.
   Shared footer is deliberately untouched.
   ========================================================= */

.touring-main > .touring-facilities-premium,
.touring-main > .touring-tariffs-premium,
.touring-main > .stay-section,
.touring-main > .map-premium,
.touring-main > .touring-section,
.touring-main > .touring-gallery-tease,
.touring-main > .touring-book-final {
    width: min(calc(100% - 64px), 1240px) !important;
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Preserve the intended vertical spacing. */
.touring-main > .touring-tariffs-premium {
    margin-top: 96px !important;
}

.touring-tariffs-premium .touring-heading,
.touring-tariffs-premium .woodlands-tariff-card,
.touring-tariffs-premium .tariff-notes {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Landscape park map remains fully visible. */
.map-premium {
    overflow: hidden;
}

.map-premium .map-frame {
    min-width: 0;
}

.touring-map-link,
.touring-map-image-wrap {
    display: block;
    width: 100%;
}

.touring-map-link {
    text-decoration: none;
}

.touring-map-image-wrap {
    overflow: hidden;
    border-radius: 18px;
    background: #fff;
}

.touring-map-image-wrap img {
    position: static !important;
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    transform: none !important;
    object-fit: contain !important;
    border-radius: 18px;
}

.touring-map-view {
    display: none !important;
}

/* Closing CTA: same width as Choose your pitch, with a white gap
   before the shared footer. */
.touring-main > .touring-book-final {
    margin-top: 80px !important;
    margin-bottom: 72px !important;
    padding: 64px 40px !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
}

.touring-main > .touring-book-final::before,
.touring-main > .touring-book-final::after {
    content: none !important;
    display: none !important;
}

.touring-main {
    background: #fff;
}

.touring-main > .touring-book-final h2 {
    margin-top: 8px !important;
    margin-bottom: 16px !important;
}

.touring-main > .touring-book-final p {
    margin-bottom: 24px !important;
}

@media (max-width: 900px) {
    .touring-main > .touring-facilities-premium,
    .touring-main > .touring-tariffs-premium,
    .touring-main > .stay-section,
    .touring-main > .map-premium,
    .touring-main > .touring-section,
    .touring-main > .touring-gallery-tease,
    .touring-main > .touring-book-final {
        width: min(calc(100% - 32px), 1240px) !important;
    }

    .touring-main > .touring-tariffs-premium {
        margin-top: 64px !important;
    }

    .touring-main > .touring-book-final {
        margin-top: 60px !important;
        margin-bottom: 48px !important;
        padding: 46px 24px !important;
        border-radius: 18px !important;
    }
}
