/* ================================================================
   LTGA v1.2.8 — FORCE-LOADED Reference Alignment Fix
   This stylesheet is linked directly from head.tpl with a unique URL so
   browser/static-file caching cannot leave the v1.2.7 rules inactive.
   ================================================================ */

/* ----------------------------------------------------------------
   A. Reference 01 — ONE boxed, centered content lane.
   Only the inner homepage modules are constrained; the hero background
   can remain full-width.
   ---------------------------------------------------------------- */
.ltga-home-experience > .ltga-home-trust,
.ltga-home-experience > .ltga-home-cta,
.ltga-home-experience > .ltga-home-section {
    box-sizing: border-box !important;
    width: calc(100% - 64px) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.ltga-home-experience > .ltga-home-trust { margin-top: 34px !important; }
.ltga-home-experience > .ltga-home-cta { margin-top: 28px !important; }

/* ----------------------------------------------------------------
   B. Reference 02 — above-header is two independent lanes.
   LEFT = page navigation. RIGHT = location/currency/language/theme.
   ---------------------------------------------------------------- */
.ltga-global-header .ltga-top-header .point1 > .ltga-utility-header {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
    min-width: 0 !important;
}
.ltga-global-header .ltga-utility-header__left {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}
.ltga-global-header .ltga-utility-header__left .main-menu {
    flex: 0 1 auto !important;
    width: auto !important;
}
.ltga-global-header .ltga-utility-header__right {
    display: block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin-left: auto !important;
}
.ltga-global-header .ltga-utility-header__right .user-navbar-right {
    display: flex !important;
    width: auto !important;
    justify-content: flex-end !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}

/* ----------------------------------------------------------------
   D. Reference 04/05 — compact desktop hero Search button.
   ---------------------------------------------------------------- */
.ltga-universal-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 104px !important;
    width: 100% !important;
    max-width: 720px !important;
}
.ltga-universal-search__keyword {
    min-width: 0 !important;
}
.ltga-universal-search__submit {
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    font-size: 11px !important;
    letter-spacing: .04em !important;
}

/* ----------------------------------------------------------------
   C. Reference 03 — grouped listing-search fields.
   IMPORTANT: .field is the LABEL in fields_search_box.tpl, so it must
   span the whole row and never consume one of the input columns.
   ---------------------------------------------------------------- */
section.side_block_search .search-item.two-fields,
section.side_block_search .search-item.three-field {
    display: grid !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
}
section.side_block_search .search-item.two-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
section.side_block_search .search-item.three-field {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
section.side_block_search .search-item.two-fields > .field,
section.side_block_search .search-item.three-field > .field,
section.side_block_search .search-item.two-fields > .name,
section.side_block_search .search-item.three-field > .name {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 0 2px !important;
}
section.side_block_search .search-item.two-fields > input,
section.side_block_search .search-item.two-fields > select,
section.side_block_search .search-item.three-field > input,
section.side_block_search .search-item.three-field > select,
section.side_block_search .search-item.three-field > span {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}
section.side_block_search .search-item.three-field > span {
    display: flex !important;
    align-items: center !important;
    min-height: 40px !important;
    padding-top: 0 !important;
    overflow: hidden !important;
}

@media (max-width: 767px) {
    .ltga-home-experience > .ltga-home-trust,
    .ltga-home-experience > .ltga-home-cta,
    .ltga-home-experience > .ltga-home-section {
        width: calc(100% - 28px) !important;
        max-width: none !important;
    }
    .ltga-global-header .ltga-top-header .point1 > .ltga-utility-header {
        display: block !important;
    }
    .ltga-global-header .ltga-utility-header__right {
        display: none !important;
    }
    .ltga-universal-search {
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
    }
    .ltga-universal-search__submit {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}

@media (max-width: 480px) {
    section.side_block_search .search-item.three-field {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    section.side_block_search .search-item.three-field > select,
    section.side_block_search .search-item.three-field > span:last-child {
        grid-column: 1 / -1 !important;
    }
}
