/*
 * 650 KGL Search UI — Ollie integration layer.
 * The copied booking styles remain the visual authority.
 * These rules only adapt the legacy wrapper to the current Ollie block-theme shell.
 */

body.page-id-45 {
    background: #f4f7fa;
}

body.page-id-45 main#wp--skip-link--target {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f4f7fa !important;
}

body.page-id-45 .wp-block-post-title {
    display: none !important;
}

body.page-id-45 .entry-content.wp-block-post-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-id-45 .entry-content.wp-block-post-content > .kgl-booking-workflow {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

/*
 * Legacy theme used an 80px fixed-header offset.
 * Ollie's locked header is sticky and remains in document flow,
 * therefore that old offset must not be duplicated.
 */
body.page-id-45 .kgl-booking-workflow {
    width: 100%;
    max-width: none;
    min-height: 0 !important;
    margin: 0 !important;
    padding-top: 0 !important;
    background: #f4f7fa;
}

/* Do not inherit Ollie's constrained block widths inside the booking experience. */
body.page-id-45 .kgl-booking-workflow > *,
body.page-id-45 .kgl-booking-workflow .kgl-booking-hero,
body.page-id-45 .kgl-booking-workflow .kgl-booking-content {
    box-sizing: border-box;
}

/* Preserve the target 1180px booking contract. */
body.page-id-45 .kgl-booking-content {
    width: min(1180px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
}

/* Explicitly preserve the target shell measurements. */
body.page-id-45 .kgl-v177-search-shell {
    width: 100%;
    box-sizing: border-box;
}

/* Protect the locked Ollie site chrome from legacy booking layout assumptions. */
body.page-id-45 > .wp-site-blocks > header.site-header,
body.page-id-45 > .wp-site-blocks > footer.site-footer {
    position: relative;
    z-index: 20;
}

@media (max-width: 680px) {
    body.page-id-45 .kgl-booking-content {
        width: min(calc(100% - 24px), 1180px);
    }
}
/* KGL SEARCH DESKTOP GEOMETRY FIX START */
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-check-in-date,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-check-out-date,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-adults,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-children {
    line-height: 24px !important;
}

body.page-id-45 .mphb_sc_search-form select[name="mphb_adults"],
body.page-id-45 .mphb_sc_search-form select[name="mphb_children"] {
    height: 52px !important;
    min-height: 52px !important;
    line-height: normal !important;
}
/* KGL SEARCH DESKTOP GEOMETRY FIX END */
/* KGL SEARCH TARGET FORM TYPOGRAPHY LOCK START */

body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-check-in-date,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-check-out-date,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-adults,
body.page-id-45 .mphb_sc_search-form > .mphb_sc_search-children {
    font-size: 16px !important;
    line-height: 24px !important;
}

body.page-id-45 .mphb_sc_search-form > p > label {
    display: block !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    font-size: 11.52px !important;
    font-weight: 800 !important;
    line-height: 17.2833px !important;
    letter-spacing: 0.6912px !important;
}

body.page-id-45 .mphb_sc_search-form input.mphb-datepick {
    height: 52px !important;
    min-height: 52px !important;
    font-size: 16px !important;
    line-height: 24px !important;
}

body.page-id-45 .mphb_sc_search-form select[name="mphb_adults"],
body.page-id-45 .mphb_sc_search-form select[name="mphb_children"] {
    height: 52px !important;
    min-height: 52px !important;
    font-size: 16px !important;
    line-height: normal !important;
}

/* KGL SEARCH TARGET FORM TYPOGRAPHY LOCK END */