.elementor-2303 .elementor-element.elementor-element-dfa7166{--display:flex;}.elementor-2303 .elementor-element.elementor-element-2038377{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for shortcode, class: .elementor-element-7b409ab */.forminator-ui#forminator-module-3049.forminator-design--flat .forminator-button-submit:hover {
    background-color: #00000000;
    border: none;
    box-shadow: none;
    color: #f4a1b5;
}

.forminator-ui#forminator-module-3049.forminator-design--flat .forminator-textarea {
    padding: 10px 0 0 10px !important;
}

/* MAIN FIELD STYLING */
#contactForm input,
#contactForm textarea,
#contactForm select,
#contactForm .select2-selection,
#contactForm .select2-selection--single,
#contactForm .forminator-input,
#contactForm .forminator-textarea {
    border: none !important;
    border-radius: 24px !important;
    background-color: #fadad6 !important;
    color: #ea6250 !important;
    box-shadow: none !important;
}

/* LABELS */
#contactForm .forminator-label {
    color: #ea6250 !important;
}

/* PLACEHOLDERS */
#contactForm input::placeholder,
#contactForm textarea::placeholder {
    color: #ea6250 !important;
    opacity: 1 !important;
}

/* SELECT2 VISIBLE TEXT */
#contactForm .select2-selection__rendered,
#contactForm .select2-selection__placeholder {
    color: #ea6250 !important;
}

/* SELECT2 ARROW */
#contactForm .select2-selection__arrow,
#contactForm .forminator-icon-chevron-down,
#contactForm .forminator-icon-chevron-down:before {
    color: #ea6250 !important;
}

/* FORMINATOR FLAT SELECT2 ARROW */
#contactForm .forminator-ui.forminator-custom-form[data-design=flat] 
select.forminator-select2 + .forminator-select .selection 
span[role=combobox].select2-selection--single 
.select2-selection__arrow [class*=forminator-icon-]:before {
    color: #ea6250 !important;
}

/* OPEN DROPDOWN */
.select2-container--open .forminator-select-dropdown {
    background: #fadad6 !important;
    border: 2px solid #ea6250 !important;
    box-shadow: none !important;
}

.select2-container--open .forminator-select-dropdown .select2-results__options {
    background: #fadad6 !important;
}

.select2-container--open .forminator-select-dropdown .select2-results__option {
    color: #ea6250 !important;
    background: transparent !important;
}

.select2-container--open .forminator-select-dropdown .select2-results__option--highlighted {
    background: #ea6250 !important;
    color: #fadad6 !important;
}

/* TEXTAREA PADDING */
#contactForm .forminator-textarea {
    padding: 10px 12px !important;
}

/* SUBMIT BUTTON */
#contactForm .forminator-button-submit {
    border-radius: 24px !important;
    font-family: "Plus Jakarta Sans" !important;
    width: 100%;
}

#contactForm .forminator-button-submit:hover {
    background-color: white !important;
    color: #ea6250 !important;
}/* End custom CSS */
/* Start custom CSS *//* ============================================================
   SEARCH RESULTS STYLING
   ============================================================ */

/* General availability text */
.gloAvailabilityT {
    font-family: "Plus Jakarta Sans" !important;
}

/* Search result title */
.gloLodgeResultR h2 {
    font-family: "IvyPresto Display" !important;
    font-weight: bold;
    font-size: 44px;
}

/* Standard text sizing */
.gloLodgeResultR p, 
.gloSmBo, 
.gloBiTx {
    font-family: "Plus Jakarta Sans" !important;
    font-size: 16px !important;
}

/* Bold labels before/after price */
.gloSmBo, 
.gloBiTx {
    color: black;
    font-weight: bold;
}

/* Price per night + loyalty points */
.gloBiPr {
    font-size: 24px !important;
    font-family: "Plus Jakarta Sans" !important;
}

/* Mobile: spacing under buttons */
@media only screen and (max-width: 768px) {
    div.gloLodgeResultR > p:nth-child(5) {
        padding-bottom: 64px;
    }
}

/* Button hover styling */
input[type=submit], 
div.GloUnitPrices > button {
    border: none;
}

input[type=submit]:hover, 
div.GloUnitPrices > button:hover {
    background-color: #294e75;
}

input[type=submit]:active, 
div.GloUnitPrices > button:active {
    opacity: 0.75;
}


/* ============================================================
   POPUP STYLING
   ============================================================ */

/* Popup text container */
.gloOfferContentR {
    width: 100% !important;
    padding: 24px;
    text-align: left !important;
}

/* Popup: room rate + price breakdown typography */
.gloTileCont h3, 
.gloTileCont p, 
.gloBreakdownContI, 
.gloPriceDescri {
    font-family: "Plus Jakarta Sans" !important;
}

/* Chosen rate - larger text */
#popup-content1 > div.gloBreakdownCont > div:nth-child(3) > h2 > b, 
div.gloBreakdownCont > div:nth-child(3) > h2 > span.gloBiTx, 
div.gloBreakdownCont > div:nth-child(3) > h2 {
    font-size: 24px !important;
}

.gloBreakdownContI:nth-child(3) {
    width: 100% !important;
}


/* ============================================================
   GENERAL FIXES & STRUCTURE CORRECTIONS
   ============================================================ */

/* 3-step images layout */
.gloRegStep {
    display: flex;
}

.gloRegStep div img {
    width: 64%;
}

/* Location + date badges */
.gloAvailabilityTI, 
.gloAvailabilityTI2 {
    background-color: #ea614f;
    width: fit-content;
    padding: 8px 24px;
    border-radius: 24px;
    color: #eeebd5;
    margin-top: 8px;
    margin-bottom: 40px;
}

/* Desktop: Search layout becomes a row */
@media (min-width: 1025px) {
    .gloAvailabilityT {
        display: flex;
        gap: 32px;
    }
}

/* Date badge heading text */
#glo-search-scope > div.gloAvailabilityT > div.gloAvailabilityTI > h2 > b, 
.gloAvailabilityTI2 h2 {
    color: #142538;
}

/* Orange date text */
.gloOrange {
    color: #eeebd5;
    font-weight: normal;
}


/* ============================================================
   MOBILE: SEARCH PAGE LAYOUT
   ============================================================ */

@media (max-width: 767px) {

    /* Reduce heading size */
    .gloAvailabilityT div h2 {
        font-size: 16px !important;
    }

    /* Badge spacing fix */
    .gloAvailabilityTI, 
    .gloAvailabilityTI2 {
        margin-top: 8px;
        margin-bottom: 0px;
    }

    .gloAvailabilityTI2 {
        margin-bottom: 32px;
    }

    /* Stack search results column */
    .gloLodgeResult {
        flex-direction: column;
    }

    .gloLodgeResultL img {
        border-radius: 24px 24px 0 0 !important;
        max-width: 94.7vw !important;
    }
}


/* ============================================================
   SEARCH RESULT CARDS
   ============================================================ */

.gloLodgeResult {
    background-color: #eeebd5;
    border-radius: 24px;
    display: flex;
    gap: 24px;
    margin-bottom: 32px;
}

/* Result image */
.gloLodgeResultL img {
    border-radius: 24px 0 0 24px;
    height: 100%;
    object-fit: cover;
    max-width: 600px;
}

/* Right column */
.gloLodgeResultR {
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Icons under title */
.gloIconLodgeResult {
    display: flex;
    gap: 8px;
    align-items: center;
}

.gloIconLodgeResult p {
    margin: 0;
    padding: 0;
    font-weight: bold;
}

.gloIconLodgeResult img {
    width: 32px;
}

/* Price line spacing */
#glo-search-scope > div.gloLodgeResult > div.gloLodgeResultR > div:nth-child(3) {
    margin-bottom: 16px;
}

/* Buttons (book/enquire) */
.GloUnitPrices button, 
.glo-popup-nav button, 
div.gloPriceButton > div > form > input[type=submit]:nth-child(6) {
    background-color: #132538;
    color: #eeebd5;
    border-radius: 24px;
    font-size: 16px;
    margin-top: 24px;
    border: none;
}


/* ============================================================
   POPUP NAVIGATION + CLOSE BUTTON
   ============================================================ */

.gloClose {
    background-color: #132538;
    padding: 12px 36px 12px 32px !important;
    color: #eeebd5;
}

.gloClose div > p {
    margin: 0;
    padding: 0;
    font-family: "IvyPresto Display";
    font-size: 24px;
    font-weight: bold;
}

button.gloClose {
    padding: 4px;
    border: none;
    background-color: #132538;
}

button.gloClose:hover {
    background-color: #ea614f;
    color: #132538;
}

/* Popup nav buttons */
.glo-popup-nav {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 0;
    gap: 0;
    padding: 0;
}

.glo-popup-nav button {
    width: 80%;
    margin: 0;
    border-radius: 0 !important;
}

/* Popup image */
.glo-popup-main .glo-popup-content .glo-pop-img {
    width: 98% !important;
    margin: 0 !important;
}


/* ============================================================
   PRICE BREAKDOWN STRUCTURE
   ============================================================ */

.gloBreakdownCont div {
    display: flex;
    align-items: center;
    gap: 2px;
}

.gloBreakdownCont div p {
    margin: 0;
    padding: 16px 24px;
    background-color: #ea614f;
    color: #eeebd5;
    text-align: center;
    width: 20%;
    font-weight: bold;
}

/* Bold price descriptions */
.gloPriceDescriI, 
.gloPriceDescriO {
    display: flex;
    flex-direction: column-reverse;
}

.gloPriceDescri {
    display: flex;
    justify-content: space-around;
}

.gloPriceDescriI p, 
.gloPriceDescriO p {
    width: 98%;
    margin: 0;
    font-weight: bold;
    padding-top: 24px;
}

/* Breakdown titles */
div.gloBreakdownCont > div > h2 {
    background-color: #eeebd5;
    text-align: left;
    width: 78%;
    padding: 13px 24px;
    margin: 0;
    height: 100%;
    font-size: 24px !important;
}


/* ============================================================
   AMENITIES STYLING
   ============================================================ */

/* Keep h3 on its own line */
.gloAmenitO {
    display: block;
}

/* Desktop: single-row amenities */
@media (min-width: 1025px) {
    .gloAmenitO {
        white-space: nowrap;
        margin-bottom: 32px;
    }

    .gloAmenitO .gloAmenit {
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        margin-right: 20px;
        vertical-align: top;
        text-align: center;
    }
}

/* Tablet + Mobile: wrap items */
@media (max-width: 1024px) {
    .gloAmenitO {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin: 8px 0px 48px 0;
    }

    .gloAmenitO h3 {
        width: 100%;
        margin-bottom: 10px;
    }

    .gloAmenit {
        flex: 1 1 120px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/* Force h3 to always stay on top */
.gloAmenitO h3 {
    white-space: nowrap;
    margin-top: 32px;
    margin-bottom: 16px;
}

/* Icon styling */
.gloAmenit img {
    width: 50px;
    height: auto;
    margin-bottom: 8px;
}

.gloAmenit p {
    margin: 0;
    font-size: 14px;
    line-height: 1.3;
}


/* ============================================================
   PRICE BUTTON FIXES
   ============================================================ */

.gloPriceButton {
    width: 98%;
    margin-top: 0 !important;
    border: none;
}

div.gloPriceButton > div > form > input[type=submit]:nth-child(6) {
    margin-top: 0 !important;
}


/* ============================================================
   MOBILE POPUP FIXES
   ============================================================ */

@media only screen and (max-width: 767px) {

    .glo-popup-main {
        transform: translateX(0%) !important;
    }

    .gloClose {
        padding: 8px !important;
    }

    .glo-popup-nav {
        flex-direction: column !important;
        gap: 0 !important;
    }

    .glo-popup-nav button {
        width: 100% !important;
        font-size: 16px !important;
    }

    .gloBreakdownCont div {
        flex-direction: column;
    }

    .gloBreakdownCont div h2, 
    .gloBreakdownCont div p {
        width: 100% !important;
        font-size: 16px !important;
        padding: 4px !important;
        text-align: left !important;
    }

    .gloBreakdownCont div h2 b {
        font-size: 16px !important;
    }

    .gloPriceDescri {
        flex-direction: column;
    }

    .gloTileCont b, 
    .gloOfferContentL b {
        font-size: 20px !important;
    }

    .gloRegStep div img {
        width: 100% !important;
    }
}/* End custom CSS */