:root {
    --color-gray: #989898;
    --color-white: #fff;
    --color-black: #000;
    --color-light-gray: #F6F6F6;
    --color-medium-gray: #D0D0D0;
    --color-light-gray1: #F3F3F3;
    --font-size-10: 10px;
    --font-size-12: 12px;
    --font-size-14: 14px;
    --font-size-16: 16px;
    --font-size-18: 18px;
    --font-size-20: 20px;
    --font-size-24: 24px;
    --font-size-26: 26px;
    --font-weight-600: 600;
}

.top-bar .e-n-accordion-item-title-text {
    text-align: center;
}

.accordion-header,
.accordion-header:hover,
.accordion-header:active,
.accordion-header:focus,
.accordion-header:visited {
    color: #000000 !important;
}

.accordion-header {
    padding-left: 20px;
    padding-right: 20px;
}

.accordion-arrow>div {
    height: auto !important;
}

/* .amenities-wrapper .amenity-type-community:first-of-type .accordion-header:first-of-type,
.amenities-wrapper .amenity-type-apartment:first-of-type .accordion-header:first-of-type {
    width: 70% !important;
} */
.mobile-menu-modal a.elementor-button-link,
.mobile-menu-modal a.elementor-button {
    height: auto !important;
    display: block !important;

}

.mobile-menu-modal svg {
    width: 1.4em;
}

/* body:has(.mobile-menu-modal[aria-hidden="false"]),
body:has(.mobile-menu-modal[aria-modal="true"]) {
    overflow: hidden !important;
    height: 100vh !important;
} */
.mce-btn button {
    background: #fff !important;
}

.wp-core-ui .quicktags-toolbar input.button.button-small {
    background: #fff !important;
    color: #50575e !important;

}

a.elementor-button-link,
button.elementor-button-link,
a.elementor-button,
button.elementor-button,
.gform_button {
    font-family: var(--e-global-typography-primary-font-family);
    font-weight: 700 !important;
    height: 40px;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* custom gallery modal css */
.mobile-gallery-carousel.swiper-slide {
    max-width: 100% !important;
}

.mobile-gallery-carousel.swiper-slide img {
    width: 100%;
    height: 225px;
    border-style: hidden !important;
}

/* .schedule-tour-click svg {
    width: 1.4em;
} */
.dinning-section-wrapper .amenity-width .type-amenity {
    overflow: hidden;
}

.gallery-carousel-wrapper {
    max-width: initial !important;
}

.gallery-carousel-wrapper img {
    height: auto;
    object-fit: cover;
}

.custom-gallery-overlay {
    position: fixed;
    inset: 0;
    background: #ffffffb0;
    z-index: 99999;
    display: none;
    backdrop-filter: blur(8px);
}

.custom-gallery-modal {
    max-width: 75%;
    width: 100%;
    position: relative;
}

.custom-gallery-modal img {
    width: 100%;
    height: auto;
    display: block;
}

.custom-gallery-close {
    font-size: 36px !important;
    background: none !important;
    color: var(--e-global-color-text) !important;
    border: 0;
    cursor: pointer !important;
    z-index: 10;
    padding: 10px 0 !important;
    font-weight: normal !important;
}

.custommediaSwiper .swiper-wrapper .swiper-slide {
    padding: 30px 0;
    display: flex;
    justify-content: center;
}

.custom-slide-meta {
    color: var(--e-global-color-cdea08e);
    height: 60px;
    padding: 10px 0;

    position: absolute;
    bottom: -30px;
    text-align: center;
    width: 100%;
}

.custom-slide-meta h5 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
}

.custom-slide-meta p {
    margin: 0;
    font-size: 11px;
    color: var(--e-global-color-text);
    font-weight: 700;
}

.action-container {
    display: flex;
    align-items: center;
    /* position: absolute; */
    top: 3%;
    justify-content: end;
    position: absolute;
    width: 100%;
    left: 0;
    padding: 0 20px;
}

.custommediaSwiper .swiper-wrapper {
    height: auto;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.custommediaSwiper .swiper-slide>img {
    width: auto;
    border-radius: 4px;
    max-height: 80vh;
}

.custom-gallery-modal[class] .swiper-button-prev,
.custom-gallery-modal[class] .swiper-button-next {
    top: 50%;
    transform: translateY(-50%);
    width: 7vw;
    height: 7vw;
    background-color: var(--e-global-color-cdea08e);
    border-radius: 100%;
    box-shadow: 0 4px 4px #00000052;
    max-width: 50px;
    max-height: 50px;
    display: flex !important;
    color: var(--e-global-color-text);
}

.custom-gallery-modal .swiper-button-prev:after,
.custom-gallery-modal .swiper-button-next:after {
    font-size: 26px;
    font-weight: 600;
}

.custom-gallery-modal[class] .swiper-button-next {
    right: -7vw;
}

.custom-gallery-modal[class] .swiper-button-prev {
    left: -7vw;
}

.custom-gallery-overlay.is-active {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.elementor-gallery-title:last-child {
    border-radius: 0px 25px 25px 0px;
}

.desktop-gallery-lightbox,
.custom-gallery-back,
.custommediaSwiperThumb {
    display: none;
}

@media (max-width: 767px) {

    .refer-submit .gform_wrapper .gform-loader,
    .refer-submit .gform-loader {
        margin-left: 12px;
        margin-top: 12px;
    }

    .media-gallery-container {
        padding-bottom: 35px !important;
    }

    .about-us-img div {
        flex: 1;
    }

    .custom-gallery-overlay {
        background: var(--e-global-color-cdea08e);
        backdrop-filter: none;
    }

    .custom-gallery-back,
    .custommediaSwiperThumb {
        display: block;
    }

    .custom-gallery-back {
        font-size: 14px;
        text-transform: uppercase;
        text-decoration: underline !important;
    }

    .custom-gallery-back:hover {
        text-decoration: underline;
    }

    .custommediaSwiperThumb .swiper-wrapper,
    .custommediaSwiperThumb .swiper-wrapper .swiper-slide {
        height: auto !important;
    }

    .custommediaSwiperThumb .swiper-wrapper .swiper-slide {
        /* opacity: 0.5; */
        transition: opacity 0.2s ease;
    }

    .custommediaSwiperThumb .swiper-wrapper .swiper-slide-thumb-active {
        /* opacity: 1; */
        border: 3px solid var(--e-global-color-primary, #6B1D2A);
        padding: 1px;
        /* border-radius: 3px; */
    }

    .custommediaSwiperThumb .swiper-wrapper .swiper-slide img {
        width: 100%;
        object-fit: cover;
        aspect-ratio: 1 / 1;
        border-radius: 2px;
    }

    .custommediaSwiper .swiper-wrapper .swiper-slide {
        padding: 0;
        display: initial;
    }

    .custom-slide-meta {
        position: static;
        text-align: left;
    }

    .custom-gallery-modal[class] .swiper-button-prev,
    .custom-gallery-modal[class] .swiper-button-next {
        margin-top: -6vw;
    }

    .custom-gallery-modal .swiper-button-prev:after,
    .custom-gallery-modal .swiper-button-next:after {
        font-size: 4vw;
    }

    .custom-gallery-modal[class] .swiper-button-next {
        right: -3vw;
    }

    .custom-gallery-modal[class] .swiper-button-prev {
        left: -3vw;
    }

    .action-container {
        justify-content: space-between;
        width: 75%;
        left: 12.5%;
        padding: 0;
    }

    .custommediaSwiper .swiper-slide>img {
        width: 100%;
        /* object-fit: cover; */
        object-fit: contain;
        aspect-ratio: 1 / 1;
        border-radius: 4px;
    }
}

@media (max-width: 575px) {
    .custom-gallery-modal {
        max-width: 92%;
    }

    .action-container {
        width: 92%;
        left: 3.5%;
    }
}

@media (max-width: 450px) {
    .about-us-cards h2.elementor-heading-title {
        font-size: 12px !important;
    }
}

/* end custom gallery modal css */

/* virtual tour iframe expand css*/
.virtual-tours {
    margin-bottom: 10px;
}

.virtualtour {
    position: relative;
    transition: all 0.3s ease;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.virtualclose {
    position: absolute;
    top: 0px;
    right: 0;
    display: none;
    z-index: 9;
    width: 100%;
    text-align: right;
    background: var(--e-global-color-text);
    background: linear-gradient(180deg, rgb(0 0 0 / 17%) 0%, rgb(0 0 0 / 56%) 10%, rgb(0 0 0 / 0%) 100%);
    padding: 0 10px 10px 10px;
}

/* Default iframe collapsed */
.virtualtour .e-con-inner {
    max-width: 100%;
}

.virtualtour .e-con-inner .iframe-click {
    height: 100%;
}

.virtualtour iframe {
    transition: height 0.4s ease;
    min-height: 250px;
    /* height: auto !important; */
    height: 100% !important;
}

.virtualtour.is-expanded iframe {
    width: 100%;
    height: calc(100vh - 350px) !important;
    /* full viewport minus 150px */
}

/* Close / Expand buttons */
.virtualtour.is-expanded .virtualclose {
    display: block;
}

@media (max-width: 767px) {
    .virtualtour {
        aspect-ratio: auto;
    }

    .virtualtour iframe {
        height: auto !important;
        min-height: unset !important;
        aspect-ratio: 16 / 9;
        width: 100% !important;
    }
}

/* end virtual tour iframe expand css */

/* video tour iframe expand css*/
.video-tour {
    margin-bottom: 10px;
}

.videotour {
    position: relative;
    transition: all 0.3s ease;
    overflow: hidden;
}

.videoclose {
    position: absolute;
    top: 0px;
    right: 0;
    display: none;
    z-index: 9;
    width: 100%;
    text-align: right;
    background: var(--e-global-color-text);
    background: linear-gradient(180deg, rgb(0 0 0 / 17%) 0%, rgb(0 0 0 / 56%) 10%, rgb(0 0 0 / 0%) 100%);
    padding: 0 10px 10px 10px;
}

/* Default iframe collapsed */
.videotour iframe {
    transition: height 0.4s ease;
    /* min-height: 238px; */
    /* height: 238px !important; */
}

.videotour.is-expanded iframe {
    width: 100%;
    height: calc(100vh - 220px) !important;
    /* full viewport minus 150px */
}

/* Close / Expand buttons */
.videotour.is-expanded .videoclose {
    display: block;
}

@media(max-width: 767px) {
    .videotour.is-expanded iframe {
        height: 300px !important;
    }

    .videotour.is-expanded .Video-Vertical iframe {
        height: 66vh !important;
    }

    .custom-gallery-virtual-tours .e-n-tab-title {
        min-width: 125px;
    }

    .custom-gallery-virtual-tours .e-n-tabs-heading {
        padding: 0;
    }
}

@media(max-width: 425px) {
    .custom-gallery-virtual-tours .e-n-tab-title {
        min-width: auto;
    }
}

/* end video tour iframe expand css */

/* fixed menu dropdown display issue */
header[data-elementor-type="header"],
div[data-elementor-type="wp-page"] {
    position: relative;
    z-index: 9;
}

div[data-elementor-type="wp-page"] {
    z-index: 0;
}

/* end fixed menu dropdown display issue */

/* form floating overlay */
/* ===== Floating Label Base ===== */
/* .contact-name-field .ginput_container_name {
    display: grid !important;
    row-gap: 20px !important;
} */
.contact-form-description {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.contact-form-container .gform-footer input[type=submit] {
    background-color: var(--e-global-color-accent) !important;
    width: 117px !important;
    height: 40px !important;
    text-transform: uppercase !important;
    font-family: var(--e-global-typography-primary-font-family) !important;
    font-weight: 700 !important;
    letter-spacing: 6% !important;
    font-size: 15px !important;
    border-radius: 4px !important;
}

.gfield {
    position: relative !important;
}

.gfield .gfield_label {
    position: absolute !important;
    top: 3px !important;
    left: 10px !important;
    transform: translateY(-50%) !important;
    font-size: 11px !important;
    pointer-events: none !important;
    transition: all 0.2s ease !important;
    background: var(--e-global-color-cdea08e) !important;
    z-index: 2 !important;
    padding: 0 3px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.gfield .ginput_container input[type=text],
.gfield .ginput_container input[type=email],
.gfield .ginput_container input[type=tel],
.gfield .ginput_container select,
.gfield .ginput_container textarea {
    height: 46px !important;
    font-size: 16px !important;
    border-radius: 4px !important;
    padding: 15px 15px 12px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.gfield .ginput_container textarea {
    height: auto !important;
}

.gfield .ginput_container input[type=text]:focus,
.gfield .ginput_container input[type=email]:focus,
.gfield .ginput_container input[type=tel]:focus,
.gfield .ginput_container select:focus,
.gfield .ginput_container textarea:focus {
    box-shadow: none;
    outline: none;
}

.gfield.gfield_error input[type=text],
.gfield.gfield_error input[type=email],
.gfield.gfield_error input[type=tel],
.gfield.gfield_error select,
.gfield.gfield_error textarea {
    border: 1px solid #e53935 !important;
    box-shadow: none;
}

.gfield .ginput_container input::placeholder,
.gfield .ginput_container textarea::placeholder {
    color: #ccc !important;
}

/* Remove default browser arrow */
.gfield .ginput_container select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none !important;
    padding-right: 42px;
    /* space for arrow */
}

/* Gray out select when placeholder (first option) is selected */
.gfield .ginput_container select.gf-select-placeholder {
    color: #ccc !important;
}

/* Black text when a real option is selected */
.gfield .ginput_container select.gf-select-value {
    color: inherit !important;
}

/* Options always display in normal black — prevent inheriting placeholder gray */
.gfield .ginput_container select option {
    color: #000 !important;
}

/* Wrapper needed for positioning */
.gfield .ginput_container_select {
    position: relative;
}

/* Custom arrow */
.gfield .ginput_container_select::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 10px;
    height: 16px;
    background-image: url('../images/select-arrow-Icon.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    pointer-events: none;
    opacity: 1 !important;
    visibility: visible !important;
}

.gform-theme--framework .gform_validation_errors .gform_submission_error {
    letter-spacing: normal;
    text-transform: none;
}

.gfield .gfield_label .gfield_required .gfield_required_text {
    display: none !important;
}

.gfield .gfield_label .gfield_required::after {
    content: "*";
    color: #e53935;
    font-size: 14px;
    margin-left: -3px;
}

.gfield--type-name>.gfield_label {
    display: none !important;
}

.gform-theme--foundation .hidden_label .gfield_label,
.gform-theme--foundation .hidden_sub_label,
.gform-theme--foundation .screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    word-wrap: normal !important;
    padding: 0;
    position: absolute;
    width: 1px;
}

.gfield--type-name .gform-grid-col {
    position: relative;
}

.gfield--type-name .hidden_sub_label {
    position: absolute !important;
    height: auto !important;
    width: auto !important;
    clip: auto !important;
    overflow: visible !important;
    white-space: normal !important;
    color: #000 !important;
    clip-path: initial !important;
    top: 3px;
    left: 17px !important;
    transform: translateY(-50%) !important;
    font-size: 11px !important;
    pointer-events: none !important;
    transition: all 0.2s ease !important;
    background: var(--e-global-color-cdea08e) !important;
    z-index: 2 !important;
    padding: 0 3px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
}

/* Only if Name field is required */
.gfield--type-name.gfield_contains_required .hidden_sub_label::after {
    content: " *";
    color: #e53935;
    font-size: 13px;
    margin-left: 2px;
}

/* ===== Gravity Forms Success Modal ===== */
.contact-section-container {
    position: relative;
}

.gf-modal {
    position: absolute;
    inset: 0;
    background: var(--e-global-color-cdea08e);
    z-index: 9999;
    display: none;
    overflow-y: auto;
    top: 0;
    left: 0;
}

.gf-modal-content {
    max-width: 665px;
    margin: 0 auto;
    padding: 24px;
    position: relative;
    height: 100%;
}

/* .gf-modal-close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
} */

.gf-modal-close {
    position: absolute;
    top: 40px;
    right: 20px;
    font-size: 36px !important;
    background: none !important;
    color: var(--e-global-color-text) !important;
    border: 0;
    cursor: pointer !important;
    z-index: 10;
    padding: 10px 0 !important;
    font-weight: normal !important;
    display: none;
}

.gf-modal-close img {
    width: 18.5px;
}

/* .gf-back-link {
    display: inline-block;
    margin-bottom: 40px;
    font-size: 12px;
    letter-spacing: 1px;
    text-decoration: none;
    color: var(--e-global-color-c7e2887);
} */

.gf-back-link {
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: underline !important;
    position: absolute;
    left: 20px;
    top: 50px;
    display: none;
}

.gf-back-link img {
    height: 13px;
    padding: 0 7px;
}

.gf-back-link:hover {
    text-decoration: underline;
}

.gf-modal-body {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* padding-top: 30px; */
}

.gf-modal-body h1 {
    font-size: 54px;
    line-height: 1.1;
    letter-spacing: -7%;
    text-align: center;
    margin-top: 0;
}

.gf-modal-body p {
    font-size: 16px;
    margin-bottom: 16px;
    font-weight: 600;
    line-height: 22px;
}

.gf-cta {
    display: inline-block;
    margin-top: 24px;
    padding: 10px 22px;
    background: var(--e-global-color-primary);
    color: var(--e-global-color-cdea08e) !important;
    text-decoration: none;
    font-size: 15px;
    letter-spacing: 6%;
    border-radius: 4px;
    min-width: 188px;
    font-family: var(--e-global-typography-primary-font-family);
}

.gf-btn {
    text-align: center;
}

.gf-icon {
    margin-bottom: 25px;
}

svg.gf-icon {
    margin: 0;
}

@media (max-width: 1279px) {
    .contact-form-container .gform-footer {
        display: flex;
        justify-content: center;
    }

    .gf-modal {
        position: fixed;
    }

    .gf-back-link,
    .gf-modal-close {
        display: block;
    }

    .gf-modal-body {
        padding-top: 30px;
        align-items: start;
    }

    .gf-modal-body h1 {
        text-align: left;
    }

    /* .gf-icon {
        margin-bottom: 25px;
    } */
}

/* end form floating overlay */

/* ==========================
   EVENT CALENDAR STYLES
   ========================== */
.aseo-calendar {
    background: var(--e-global-color-accent);
    padding: 20px 0 0;
    border-radius: 12px;
    /* min-height: 600px; */
}

.fc,
.fc-toolbar-title,
.fc-daygrid-day-number {
    color: var(--e-global-color-cdea08e);
}

.fc .fc-toolbar-title {
    color: var(--e-global-color-cdea08e);
    letter-spacing: 2px;
    font-weight: normal;
    font-size: 14px;
}

.fc-toolbar.fc-header-toolbar button.fc-button.fc-button-primary {
    background-color: transparent;
    color: var(--e-global-color-cdea08e);
    width: 85px;
}

.fc-toolbar.fc-header-toolbar button.fc-button.fc-button-primary:hover {
    opacity: 0.8;
    background-color: transparent;
}

.fc .fc-col-header-cell-cushion,
.fc .fc-daygrid-day-number {
    color: var(--e-global-color-cdea08e) !important;
    width: 27px;
    height: 27px;
    padding-top: 5px;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
}

.fc .fc-scroller-liquid-absolute {
    overflow: hidden !important;
}

.fc-event {
    background: var(--e-global-color-secondary);
    border: none;
    border-radius: 20px;
    padding: 4px 10px;
    font-size: 12px;
    cursor: pointer;
}

.fc-theme-standard .fc-list,
.fc-theme-standard .fc-scrollgrid,
.fc-theme-standard td,
.fc-theme-standard th {
    border: 0 !important;
    background-color: transparent !important;
    margin-bottom: 0;
}

.fc .fc-daygrid-day-frame {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.fc .fc-daygrid-day-top {
    flex-direction: column;
    text-align: center;
    position: relative;
    z-index: 0;
    height: 60px;
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-bg,
.fc-direction-ltr .fc-daygrid-event .fc-event-time,
.fc-daygrid-dot-event .fc-event-title

/*.fc .fc-scrollgrid-section-body table.fc-scrollgrid-sync-table tr:last-child*/
    {
    display: none;
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events .fc-daygrid-event.fc-daygrid-dot-event {
    background-color: transparent !important;
    height: 100%;
    padding: 0;
    display: flex;
    justify-content: center;
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    position: absolute;
    top: 0;
    z-index: 9;
    width: 60px;
    height: 60px;
    margin-top: 0;
}

.fc-daygrid-event-dot {
    border-color: var(--e-global-color-e4c4395) !important;
    /* margin-top: 25px; */
}

.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events .fc-daygrid-event-harness {
    margin-top: 0 !important;
    height: 100%;
    position: absolute;
    width: 100%;
}

.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number,
.fc .fc-timegrid-col.fc-day-today .fc-daygrid-day-number {
    background-color: var(--e-global-color-secondary);
}

.fc-theme-standard th .fc-scrollgrid-sync-inner {
    display: flex;
    justify-content: center;
    text-transform: uppercase;
}

.fc-theme-standard th .fc-scrollgrid-sync-inner .fc-col-header-cell-cushion {
    color: var(--e-global-color-e4c4395) !important;
    font-size: 11px;
}

.fc .fc-scrollgrid table,
.fc .fc-daygrid-body {
    width: 100% !important;
}

.fc-day-past.aseo-past-day a {
    color: var(--e-global-color-e4c4395) !important;
}

.fc-event-selected:after,
.fc-event:focus:after {
    background: none;
}

.fc-event-selected,
.fc-event:focus {
    box-shadow: none !important;
}

/* =========================
   MODAL
========================= */
.aseo-event-modal {
    position: absolute;
    inset: 0;
    z-index: 9999;
}

.aseo-modal-content {
    background: var(--e-global-color-cdea08e);
    width: 100%;
    max-width: 100%;
    position: relative;
    animation: aseoFade .25s ease;
    height: 100%;
    overflow: auto;
}

@keyframes aseoFade {
    from {
        transform: translateY(30px);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

/* Image */
.aseo-event-image-wrap img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

/* Content */
.event-card {
    min-height: auto !important;
    aspect-ratio: 1 / 1;
}

.event-card p {
    margin-bottom: 0;
}

.aseo-event-title {
    padding: 15px 0 5px;
    margin: 0;
}

.aseo-event-time,
.aseo-event-location {
    padding: 0 5px;
    color: #666;
    font-size: 14px;
    margin-bottom: 0;
    display: inline-block;
}

.aseo-event-desc {
    padding: 15px 5px 0;
}

.aseo-close {
    position: absolute;
    right: 10px;
    top: 10px;
    font-size: 40px;
    cursor: pointer;
    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 50px;
    align-items: center;
    justify-content: center;
    text-shadow: 0 0 10px #333;
    color: var(--e-global-color-cdea08e);
}

.aseo-event-meta {
    font-size: 14px;
    margin-bottom: 10px;
    color: #666;
}

@media only screen and (max-width: 767px) {
    .aseo-event-action-btn {
        width: 100%;
    }

    .aseo-calendar {
        padding: 24px;
    }

    .fc .fc-toolbar.fc-header-toolbar {
        flex-direction: row;
        display: flex;
        justify-content: space-between;
        margin-bottom: 18px;
    }

    .fc-toolbar-chunk {
        width: auto;
    }

    .fc .fc-toolbar-title {
        font-weight: 700;
    }

    .fc-toolbar.fc-header-toolbar button.fc-button.fc-button-primary {
        width: 65px
    }
}

/* ==========================
   EVENT DATE FILTER STYLES
========================== */
.fc .fc-daygrid-day {
    cursor: default;
}

.fc .fc-daygrid-day.aseo-has-events {
    cursor: pointer;
}

.fc .fc-daygrid-day.aseo-has-events:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
}

.fc .fc-daygrid-day.aseo-date-selected,
.fc-theme-standard td.aseo-date-selected {
    background-color: transparent !important;
}

.fc .fc-daygrid-day.aseo-date-selected .fc-daygrid-day-number {
    background-color: var(--e-global-color-primary, #333) !important;
    color: #fff !important;
    font-weight: bold;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.aseo-event-loop-grid {
    position: relative;
    overflow: hidden;
    transition: height 0.3s ease;
}


.aseo-loop-loading .elementor-loop-container {
    opacity: 0.3;
    pointer-events: none;
    transition: opacity 0.3s;
}

.aseo-loop-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 36px;
    height: 36px;
    margin: -18px 0 0 -18px;
    border: 3px solid var(--e-global-color-secondary, #ccc);
    border-top-color: transparent;
    border-radius: 50%;
    animation: aseoSpin 0.7s linear infinite;
    z-index: 10;
}

@keyframes aseoSpin {
    to {
        transform: rotate(360deg);
    }
}

.aseo-event-action-btn,
.aseo-event-action-btn:hover {
    display: inline-block;
    margin-top: 20px;
    padding: 0 !important;
    background: none !important;
    color: var(--e-global-color-primary, #333) !important;
    border: none;
    cursor: pointer !important;
    text-decoration: underline;
}

.aseo-no-events {
    text-align: center;
    padding: 40px 20px;
    color: #2d2d2d;
    font-size: 16px;
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.aseo-no-events p {
    margin: 0;
}

@media (max-width: 1279px) {
    .aseo-no-events {
        width: calc(100vw - 50px);
    }
}

/* end event date filter styles */

/* slider pagination styling */
.aminity-carousel-container .swiper-pagination {
    top: auto !important;
    width: 100% !important;
    transform: translate(0);
}

.aminity-carousel-container .swiper-pagination .swiper-pagination-bullet {
    width: 7.5px;
    height: 7.5px;
    background-color: transparent;
    border: 2px solid #fff;
    opacity: 1;
}

.aminity-carousel-container .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #fff;
}

.desktop-image-slider-container img.swiper-slide-image {
    aspect-ratio: 1 / 1;
    height: auto !important;
    /* object-fit: none; */
    border-radius: 4px !important;
}

.desktop-image-slider-container .swiper-pagination .swiper-pagination-bullet,
.mobile-image-slider-container .swiper-pagination .swiper-pagination-bullet,
.gallery-carousel-wrapper .swiper-pagination .swiper-pagination-bullet {
    width: 7.5px;
    height: 7.5px;
    border: 2px solid #AFAFAF;
    opacity: 1;
    background-color: transparent;
    margin: 0 4px;
}

.desktop-image-slider-container .swiper-pagination .swiper-pagination-bullet-active,
.mobile-image-slider-container .swiper-pagination .swiper-pagination-bullet-active,
.gallery-carousel-wrapper .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #333333;
    border-color: #333333;
}

.desktop-pagination-position .swiper-pagination {
    top: auto !important;
    /* width: calc(100% - 80px) !important; */
}

.testimonial-container .swiper-pagination {
    width: auto !important;
    bottom: 20px !important;
    margin-left: 0;
}

/* Single testimonial: Elementor skips Swiper init when there is only one slide,
   so the slide falls back to width:100%. Keep it the same size as a multi-slide card. */
.testimonial-container .swiper:not(.swiper-initialized) {
    overflow: hidden;
}

.testimonial-container .swiper:not(.swiper-initialized) .swiper-wrapper {
    display: flex;
    gap: 16px;
    transform: none !important;
}

.testimonial-container .swiper-slide:only-child,
.testimonial-container .swiper:not(.swiper-initialized) .swiper-slide {
    width: calc((100% - 16px) / 2) !important;
    max-width: calc((100% - 16px) / 2) !important;
    flex: 0 0 calc((100% - 16px) / 2) !important;
    margin-right: 0 !important;
}

@media only screen and (max-width: 1024px) {
    .testimonial-container .swiper-slide:only-child,
    .testimonial-container .swiper:not(.swiper-initialized) .swiper-slide {
        width: 100% !important;
        max-width: 100% !important;
        flex-basis: 100% !important;
    }
}

.elementor-image-carousel .swiper-slide img {
    aspect-ratio: 1 / 1;
    height: auto !important;
    object-fit: cover;
}

.photo-gallery a {
    display: block;
}

@media only screen and (max-width: 767px) {
    .testimonial-container .swiper-pagination {
        width: 100% !important;
    }

    .mobile-image-slider-container .swiper-pagination {
        display: none;
    }

    .aminity-carousel-container .swiper-pagination {
        margin-left: 0;
    }

    .aminity-carousel-container .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 4px;
    }
}

.aminity-carousel-container .swiper {
    padding-inline-end: 0 !important;
    padding-inline-start: 0 !important;
}

.aminity-carousel-container .swiper-slide:last-child {
    margin-right: 0 !important;
}

/* Stretch all slides to the same height */
.renovation-carousel .swiper-wrapper,
.aminity-carousel-container .swiper-wrapper {
    align-items: stretch !important;
}

.renovation-carousel .swiper-slide,
.aminity-carousel-container .swiper-slide {
    display: flex !important;
    margin-right: 12px !important;
}

/* Make the inner card fill the slide */
.renovation-carousel .swiper-slide>.elementor,
.renovation-carousel .swiper-slide>*,
.aminity-carousel-container .swiper-slide>.elementor,
.aminity-carousel-container .swiper-slide>* {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
}

.renovation-carousel .swiper-slide .e-loop-item,
.renovation-carousel .swiper-slide .elementor-widget-wrap,
.aminity-carousel-container .swiper-slide .e-loop-item,
.aminity-carousel-container .swiper-slide .elementor-widget-wrap {
    height: 100%;
    flex: 1;
}

/* .renovation-carousel .aminity-carousel-container.e-con {
    margin-left: 0 !important;
    padding-right: 0;
} */

/* ==========================
   LEASE TERMS STYLISH DROPDOWN
========================== */
.aseo-custom-select {
    position: relative;
    display: inline-block;
    min-width: 180px;
    width: auto;
    font-family: inherit;
    font-size: inherit;
    margin-right: 10px;
}

.aseo-select-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 14px 14px !important;
    background-color: var(--color-light-gray) !important;
    border: 1px solid var(--color-medium-gray) !important;
    gap: 12px;
    transition: border-color 0.2s;
    box-shadow: 2px 3px 5px #0000000D;
    text-align: center;
    font-size: var(--font-size-small) !important;
    text-decoration: none;
    color: var(--color-black) !important;
    text-transform: none !important;
    height: 51px;
    border-radius: 0 !important;
}

@media (max-width: 1100px) {
    .aseo-select-trigger {
        font-size: var(--font-size-12) !important;
        height: 47px !important;
        padding: 13px !important;
    }
}

@media (max-width: 991px) {
    .aseo-select-trigger {
        height: 30px !important;
        background-color: var(--color-white) !important;
        padding: 0 10px !important;
        box-shadow: 0px 2px 7px 2px #0000001a !important;
        border-radius: 3px !important;
    }
}

.aseo-select-trigger:hover,
.aseo-custom-select.aseo-select-open .aseo-select-trigger {
    border-color: #bbb;
    outline: none;
}

.aseo-select-label {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600;
    font-family: var(--e-global-typography-text-font-family) !important;
}

.aseo-select-arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    color: #222;
    transition: transform 0.22s ease;
}

.aseo-custom-select.aseo-select-open .aseo-select-arrow {
    transform: rotate(180deg);
}

.aseo-select-dropdown {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    list-style: none;
    margin: 0;
    padding: 4px 0;
    z-index: 9999;
    max-height: 260px;
    overflow-y: auto;
    transform-origin: top center;
    transform: scaleY(0.96) translateY(-4px);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.18s ease, opacity 0.18s ease;
}

.aseo-custom-select.aseo-select-open .aseo-select-dropdown {
    transform: scaleY(1) translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.aseo-select-option {
    padding: 9px 14px;
    font-size: inherit;
    color: #2d2d2d;
    cursor: pointer;
    transition: background 0.12s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
}

.aseo-select-option:hover {
    background: #f7f7f7;
    color: var(--e-global-color-primary, #c0392b);
}

.aseo-select-option.aseo-select-selected {
    font-weight: 600;
    color: var(--e-global-color-primary, #c0392b);
    background: #fafafa;
}

.aseo-select-option.aseo-select-selected::after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 11px;
    border-right: 2px solid var(--e-global-color-primary, #c0392b);
    border-bottom: 2px solid var(--e-global-color-primary, #c0392b);
    transform: rotate(45deg) translateY(-2px);
    flex-shrink: 0;
}

/* Scrollbar inside dropdown */
.aseo-select-dropdown::-webkit-scrollbar {
    width: 4px;
}

.aseo-select-dropdown::-webkit-scrollbar-track {
    background: transparent;
}

.aseo-select-dropdown::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 4px;
}

/* end lease terms stylish dropdown */

.amenities-mobile-container .mobile-featured-image {
    display: none;
}

.amenities-mobile-container .e-con-full:last-child>.e-con-full:last-child {
    width: calc(100% - 80px);
}

/* media gallery load more */
.media-gallery-container {
    padding-bottom: 80px;
}

.media-gallery-container .aseo-gallery-hidden {
    display: none !important;
}

.aseo-load-more-photos {
    display: flex;
    margin: 0 auto;
    background: none !important;
    text-decoration: underline;
    text-underline-offset: 2px;
    color: var(--e-global-color-primary) !important;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

.aseo-load-more-photos:hover {
    text-decoration: underline;
}

/* Force gallery items visible when e-gallery--animated is removed on iOS */
.media-gallery-container .e-gallery-item {
    opacity: 1 !important;
    transform: none !important;
}

/* reviews read more */
.aseo-review-read-more,
.aseo-review-read-less {
    color: var(--e-global-color-cdea08e) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    cursor: pointer;
    font-size: inherit;
    font-weight: 600 !important;
}

.aseo-review-read-more:hover,
.aseo-review-read-less:hover {
    opacity: 0.7;
}

/* Reviews longer than five lines are cut to five until "Read more" is clicked (see global.js) */
.aseo-review-clamped .aseo-review-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    line-clamp: 5;
    overflow: hidden;
}

.aseo-review-text> :last-child {
    margin-bottom: 0;
}

.aseo-review-read-more,
.aseo-review-read-less {
    display: inline-block;
    margin-top: 6px;
}

/* Reviews carousel cards: no minimum height, so the longest review sets the height of every card
   (see the stretch rules below). !important: the loop template's own CSS sets a minimum with the same specificity */
[data-query-id="reviews-load"] .swiper-slide>.e-con {
    --min-height: 0px !important;
}

/* Reviews section at 1367-1724px, per the 1724px design: cards start about 45% across (about 770px
   at 1724px) and the heading moves in with them (260px from the left at 1724px).
   The number of cards is set in global.js. !important: Elementor's page CSS has higher specificity */
@media (min-width: 1367px) and (max-width: 1724px) {
    .e-con:has(> .testimonial-container [data-query-id="reviews-load"]) > .testimonial-container {
        --width: 55.3% !important;
    }

    .e-con:has(> .testimonial-container [data-query-id="reviews-load"]) > .e-con:not(.testimonial-container) {
        --width: calc(44.7% - 10px) !important;
        padding-left: calc(44.7vw - 510px) !important;
    }
}

/* Reviews cards visible at 1024px and below (above that, see reviewsPerView() in global.js).
   Cards width = (visible area - gaps before the last card) / card count */
@media (min-width: 768px) and (max-width: 1024px) {

    /* 2.5 cards: the carousel starts 5vw in and runs past the screen edge, so 95vw shows; 10px gaps */
    .aminity-carousel-container [data-query-id="reviews-load"] .swiper-slide {
        width: calc((95vw - 20px) / 2.5) !important;
    }
}

@media (max-width: 767px) {

    /* 1.1 cards: 12px gap */
    .aminity-carousel-container [data-query-id="reviews-load"] .swiper-slide {
        width: calc((100% - 12px) / 1.1) !important;
    }
}

/* Reviews carousel cards below 768px: fixed side padding, and no 341px content cap from the
   loop template, which left large empty sides on wider phones. The padding goes on the inner
   wrapper because the section's custom CSS in Elementor forces padding: 0 on the card itself.
   !important: same specificity as the template / beats that custom CSS */
@media (max-width: 767px) {
    [data-query-id="reviews-load"] .swiper-slide>.e-con {
        --content-width: 100% !important;
        --padding-left: 0px !important;
        --padding-right: 0px !important;
    }

    [data-query-id="reviews-load"] .swiper-slide>.e-con>.e-con-inner {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* Reviews carousel: every card as tall as the longest one. Swiper's height: 100%
   stops the slides from stretching in the flex row, so let them size to the row */
[data-query-id="reviews-load"] .swiper-wrapper {
    align-items: stretch;
}

[data-query-id="reviews-load"] .swiper-slide {
    height: auto !important;
}

#header-menu[class] .elementor-nav-menu a.elementor-item:after {
    width: 100% !important;
    margin: 0px !important;
}

.topbar-slider .elementor-widget-n-accordion .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened svg {
    width: 25px;
    height: 25px;
    margin-top: -7px;
}

.articles-post .e-loop__load-more .elementor-button-icon {
    font-size: 20px;
}

.article-container .e-n-tabs-heading {
    padding-right: 19px;
}

.article-container .e-n-tabs-heading .e-n-tab-title svg,
.article-container .e-n-tabs-heading .e-n-tab-title:hover svg {
    width: 22px;
}

#next-article .elementor-button-icon {
    font-size: 9px;
    margin-top: 0;
}

#next-article .elementor-button-icon svg {
    padding-left: 6px !important;
    width: 14px;
}

.contact-form-container input:-webkit-autofill,
.contact-form-container input:-webkit-autofill:hover,
.contact-form-container input:-webkit-autofill:focus,
.contact-form-container textarea:-webkit-autofill,
.contact-form-container select:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px var(--e-global-color-cdea08e) inset !important;
    /* your bg color */
    -webkit-text-fill-color: var(--e-global-color-text) !important;
    /* text color */
    transition: background-color 5000s ease-in-out 0s;
    caret-color: var(--e-global-color-text) !important;
    /* cursor color */
}

.timer-slide-in-form input:-webkit-autofill,
.timer-slide-in-form input:-webkit-autofill:hover,
.timer-slide-in-form input:-webkit-autofill:focus,
.timer-slide-in-form textarea:-webkit-autofill,
.timer-slide-in-form select:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px var(--e-global-color-primary) inset !important;
    /* your bg color */
    -webkit-text-fill-color: var(--e-global-color-cdea08e) !important;
    /* text color */
    transition: background-color 5000s ease-in-out 0s;
    caret-color: var(--e-global-color-cdea08e) !important;
    /* cursor color */
}

/* other inner pages css */
/* 	--------------------Events/Amenities-css-starts---------------- */
.articles-filter-bar .aseo-button-override svg {
    width: 12px;
}

.event-details .elementor-loop-container {
    gap: 6px;
}

.amenities-subtitle-wrapper {
    margin-top: 60px !important;
    margin-bottom: 30px !important;
}

.aseo-event-action-btn {
    font-weight: 700;
    font-family: var(--e-global-typography-primary-font-family);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
}

.e-loop-nothing-found-message {
    font-weight: 700;
    font-size: 20px;
}

.upcoming-events-content p {
    margin-bottom: 0;
}

.actions-arrow svg {
    width: 9px;
}

.gallery-search-filter .e-n-tabs-heading {
    gap: 0;
}

.gallery-search-filter .e-n-tab-title {
    padding: 10px;
}

.gallery-search-filter .e-n-tab-title:hover {
    background-color: #fff !important;
}

.events-search-filter .e-n-tab-title .st0,
.events-search-filter .e-n-tab-title .cls-1,
.events-search-filter .e-n-tab-title path,
.gallery-search-filter .e-n-tab-title .st0 {
    fill: #afafaf !important;
}

.events-search-filter .e-n-tab-title[aria-selected="true"] .st0,
.events-search-filter .e-n-tab-title[aria-selected="true"] .cls-1,
.events-search-filter .e-n-tab-title[aria-selected="true"] path,
.gallery-search-filter .e-n-tab-title[aria-selected="true"] .st0 {
    fill: #8c242d !important;
}

.events-search-filter .e-n-tab-title:hover .st0,
.events-search-filter .e-n-tab-title:hover .cls-1,
.gallery-search-filter .e-n-tab-title:hover .st0 {
    fill: #8c242d !important;
}

.top-bar-wrapper .e-con-inner {
    padding: 0;
}

.load-event-link .elementor-button-icon {
    font-size: 11px;
}

.mobile-list-content .e-con-inner {
    display: flex;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 8px;
}

.mobile-list-content .e-con-inner a {
    width: 100%;
}

.events-search-filter .elementor-loop-container .e-con-full {
    padding: 0;
}

.aseo-event-loop-grid .e-con.e-flex>.e-con-inner {
    justify-content: flex-start;
}

.event-colorbar {
    position: absolute;
    left: 0;
    height: 100%;
}

/* .renovation-carousel .swiper-slide a {
    padding: 20px;
} */

.renovation-slider .swiper-slide a img {
    object-fit: contain;
    aspect-ratio: auto !important;
    width: 90%;
}

@media screen and (max-width: 1024px) {
    .events-search-filter .e-search-results {
        width: 95vw !important;
        position: absolute;
        background-color: #ffffff;
    }
}

/* @media screen and (max-width: 400px) {
	.event-type-resident-exclusive a {
    min-height: 42vh;
 }
} */
/* 	--------------------Events-css-ends---------------- */

/* 	--------------------cookies-preferences---------------- */
#s-c-bnc {
    text-align: end;
}

#s-cnt #s-rall-bn,
#s-all-bn {
    display: none;
}

#s-ttl {
    font-family: 'avenir-next-lt-pro';
}

#c-ttl svg {
    display: none;
}

#c-ttl {
    font-size: 12px;
    font-weight: 500;
    display: none;
    margin-bottom: 0;

    a {
        font-size: 12px;
        font-weight: 500;
        border-bottom: none;
        line-height: 20px;
    }
}

#s-ttl {
    font-weight: 900;
    font-size: 30px;
    line-height: 32px;
    letter-spacing: -7%;
    text-transform: uppercase;
}

#s-hdr {
    border-bottom: none;
}

#s-bl .b-bn {
    padding: 10px 15px;
}

#s-c-bn {
    background-color: transparent;
}

#s-c-bn:before,
#s-c-bn:after {
    background: #ffffff;
    height: 1em;
}

#s-bl {
    padding: 0 1.6em;
    padding-top: 0;
    font-family: 'Avenir Next LT Pro';
}

#cs,
#s-inr {
    height: 100%;
}

#s-cnt #s-bl .c-bl .desc .p {
    font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 22px !important;
    letter-spacing: 0em !important;
    margin-top: 0;
}

#s-bl .c-bl {
    background: transparent;
    border: 1px solid var(--e-global-color-134b741);
    padding: 10px 26px 15px 26px;
}

#s-cnt .b-bn .b-tl {
    padding: 0.2em 6.4em 0.2em 2em;
}

#s-cnt .b-bn .b-tl:active,
#s-cnt .b-bn .b-tl:hover {
    background: transparent;
    text-transform: uppercase;
    letter-spacing: 0.9px;
    line-height: 20px;
}

.title.b-bn {
    border: 1px solid #E6E6E6;
    background-color: rgb(0 0 0 / 88%);
    border-radius: 4px;
}

#s-bl .c-bl:first-child {
    margin-bottom: 1em;
}

.cc_div .cloud #c-inr {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cc_div .act .b-bn .exp:before,
.cc_div .b-bn .exp:before {
    content: '';
    border: none !important;
    width: 20px;
    height: 20px;
    left: 0;
    top: 3px;
    background-color: var(--e-global-color-e4c4395);
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat center / contain;
    transform: none;
    transition: transform 0.25s ease;
}

.cc_div .act .b-bn .exp:before {
    transform: rotate(180deg);
}

.show--settings .c--anim #cs-ov {
    opacity: 0 !important;
}

#s-bns,
#s-hdr,
#s-bl,
#s-inr {
    background: rgb(0 0 0 / 70%);
}

.cc_div a {
    border-bottom: none !important;
    font-weight: 500 !important;
}

.cc_div .cloud #c-bns {
    max-width: 280px;
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    min-width: auto;
    vertical-align: middle;
}

#s-cnt .b-bn .b-tl {
    font-size: 14px;
    font-weight: 800;
}

.cc_div .b-bn .exp:before {
    left: 0;
}

.title.b-bn {
    padding: 10px 15px;
}

#cm.cloud {
    max-width: 100% !important;
    width: 100% !important;
}

#cm.cloud {
    max-width: 100% !important;
    overflow: hidden;
    padding: 15px 60px;
    width: 100%;
    border-radius: 0;
}

#cm.box.center,
#cm.cloud {
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
}

#cm.cloud .c-bn {
    line-height: 1;
    font-size: 14px;
    width: fit-content !important;
    border-radius: 27px !important;
    border: #fff solid 1px !important;
    padding: 7px 11px 26px;
    height: 30px;
    letter-spacing: 0;
}

#c-txt svg {
    margin-top: 0 !important;
}

.cc_div .cloud #c-inr-i {
    vertical-align: middle;
}

#s-c-bn {
    width: 1.8em;
    height: 2.2em;
}

#c-s-in {
    max-height: 40.5em;
}

#cc--main .c-bn {
    float: none;
    margin: 0 auto;
    font-size: 15px;
    letter-spacing: 6%;
}

#cc--main #s-bns .c-bn {
    line-height: 11px;
    font-weight: 500 !important;
    font-family: var(--e-global-typography-accent-font-family);
    width: 181px;
    height: 40px;
    border-radius: 4px;
}

#s-bns {
    text-align: center;
    height: 5.5em;
    border-top: none;
}

#cc-main button[aria-label="Close"] {
    float: right !important;
    margin: 0 !important;
}

#s-bl .c-bl:last-child {
    display: none;
}

#cc--main {
    z-index: 99999 !important;
}

@media (max-width: 1024px) and (min-width: 992px) {
    #cm.cloud .c-bn {
        font-size: 12px;
    }
}

@media (max-width: 992px) {
    #cm.cloud .c-bn {
        font-size: 10px;
        padding: 7px;
    }

    .cc_div .cloud #c-bns {
        display: flex;
        flex-direction: row;
        max-width: 198px;
        min-width: 198px;
    }
}

@media (min-width: 400px) {
    .cc_div .cloud #c-inr-i {
        padding: 0 12px;
    }
}

@media screen and (max-width: 767px) {
    #c-ttl {
        font-size: 11px;
    }

    .cc_div .c-bn {
        margin-right: 0;
        width: auto;
    }

    .cc_div .bns-t .c-bn {
        font-size: 15px;
        padding: 10px 28px;
        letter-spacing: 6%;
        line-height: 20px;
    }

    .bns-t #s-bns {
        height: 11.5em;
    }

    #s-inr {
        padding-top: 4.5em;
        padding-bottom: 5.5em;
    }

    .cc_div .cloud #c-bns,
    .cc_div .cloud #c-inr,
    .cc_div .cloud #c-inr-i {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #c-ttl {
        display: block;
    }

    .cc_div .cloud #c-txt {
        display: none;
    }

    #cm.cloud {
        max-width: 97% !important;
        margin: 0 auto;
        bottom: 14px;
        border-radius: 30px;
        padding: 10px 12px !important;
    }

    #c-s-in {
        height: auto;
        overflow-y: auto;
        max-height: 100%;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    #s-cnt .b-bn .b-tl {
        text-overflow: ellipsis;
    }

    #c-txt svg {
        display: none;
    }
}

@media screen and (max-width: 375px) {
    #cm.cloud .c-bn {
        font-size: .6em;
        margin: 0 !important;
    }

    .cc_div * {
        font-size: 0.97em;
    }

    #cm.cloud .c-bn {
        margin: 0 !important;
    }
}

/* ===== Termly Cookie Banner - iPhone Compact Fix ===== */
@media (max-width: 767px) {
    .cloud #c-ttl {
        padding: 0 0 0 5px;
    }

    /* Banner container */
    body #cm.cloud,
    html body #cm.cloud,
    #cm.cloud.bottom,
    #cm.cloud.cloud {
        left: 10px !important;
        right: 10px !important;
        bottom: 10px !important;
        width: auto !important;
        max-width: calc(100vw - 20px) !important;
        margin: 0 !important;
        padding: 12px !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    /* Inner wrapper - horizontal */
    #cm.cloud #c-inr {
        flex-direction: row !important;
        align-items: center !important;
        gap: 8px !important;
        width: 100% !important;
        flex-wrap: nowrap !important;
    }

    /* Text - give it more room */
    #cm.cloud #c-inr-i {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Buttons container */
    #cm.cloud #c-bns {
        display: flex !important;
        flex-direction: row !important;
        gap: 5px !important;
        flex-shrink: 0 !important;
        flex-wrap: nowrap !important;
        padding: 0 !important;
        margin: 0 !important;
        width: auto !important;
        max-width: 55% !important;
    }

    /* SMALLER buttons - compact */
    #cm.cloud #c-bns .c-bn,
    #cm.cloud .c-bn {
        font-size: 11px !important;
        padding: 6px 8px !important;
        height: auto !important;
        min-height: 28px !important;
        width: auto !important;
        max-width: none !important;
        white-space: nowrap !important;
        margin: 0 !important;
        line-height: 1.1 !important;
        flex-shrink: 1 !important;
        border-width: 1px !important;
        letter-spacing: 0 !important;
    }

    /* Prevent iOS auto font resize */
    #cm.cloud,
    #cm.cloud * {
        -webkit-text-size-adjust: 100% !important;
        text-size-adjust: 100% !important;
    }
}

/* Extra-small screens (iPhone SE, etc) */
@media (max-width: 380px) {

    /* Banner container */
    body #cm.cloud,
    html body #cm.cloud,
    #cm.cloud.bottom,
    #cm.cloud.cloud {
        left: 5px !important;
        right: 5px !important;
        max-width: calc(100vw - 10px) !important;
    }

    /* #cm.cloud #c-bns .c-bn,
    #cm.cloud .c-bn {
        font-size: 9px !important;
        padding: 5px 6px !important;
        min-height: 26px !important;
    } */

    #cm.cloud #c-inr-i {
        font-size: 10px !important;
    }

    .cloud #c-ttl br {
        display: none;
    }
}

/* 	--------------------cookies-preferences---------------- */

/* 	------------shuttle-shedule----------- */
.shuttle-shedule-accordian .theplus-accordion-item {
    gap: 15px;
    display: flex;
    flex-direction: column;
}

.shuttle-shedule-accordian .plus-accordion-content {
    box-shadow: 0px 0px 20px 0px #0000001A;
    padding: 0;
}

.shuttle-shedule-accordian .time-slots {
    display: flex;
    width: 100%;
    border-radius: 4px;
    overflow: hidden;
}

.shuttle-shedule-accordian .time-col {
    flex: 1;
}

.shuttle-shedule-accordian .time-col:last-child {
    border-right: none;
}

.shuttle-shedule-accordian .time-col>p {
    font-weight: 700;
    font-size: 13px;
    padding: 12px 20px;
    margin: 0;
    background-color: #f0f0f0;
    font-family: var(--e-global-typography-primary-font-family);
}

.shuttle-shedule-accordian .time-col ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.shuttle-shedule-accordian .time-col li {
    padding: 12px 20px;
    font-size: 16px;
    margin: 0;
    color: #24272A;
}

.shuttle-shedule-accordian .time-col li:nth-child(odd) {
    background-color: #ffffff !important;
}

.shuttle-shedule-accordian .time-col li:nth-child(even) {
    background-color: #F3F3F3 !important;
}

/* 	------------shuttle-shedule----------- */

/* 	------------Amenities----------- */
.gallery-insta-post .crt-grid-post-tokyo .crt-grid-post-content,
.gallery-insta-post .crt-grid-post-tokyo .crt-post-hover,
.crt-grid-post-tokyo .crt-grid-post-image {
    border-radius: 4px;
}

.aseo-load-more-photos {
    font-family: var(--e-global-typography-primary-font-family);
}

.amenities-right-icon img {
    width: 80%;
    height: 70px !important;
}

.desktop-amenity-content-container .elementor-widget-container {
    padding: 0 !important;
}

.desktop-amenity-content-container {
    flex-wrap: nowrap;
}

.amenities-subtitle-wrapper {
    max-width: 730px;
    margin: 0 auto;
}

.aminity-carousel-container .e-con-inner .e-con ul {
    padding-bottom: 0 !important;
}

.aminity-carousel-container .e-con-inner .e-con ul li {
    margin-bottom: 20px;
}

.desktop-amenity-content-container ul {
    padding-left: 1.5rem;
}

.amenity-width .type-amenity {
    overflow: visible;
}

.gallery-carousel-wrapper .elementor-swiper-button.elementor-swiper-button-next {
    right: -60px !important;
}

.gallery-carousel-wrapper .elementor-swiper-button.elementor-swiper-button-prev {
    left: -60px !important;
}

#m-content-img img {
    height: 200px !important;
    object-fit: cover;
}

.furnished-spaces .swiper-slide img {
    height: 200px !important;
}

.desktop-image-slider-container .elementor-image-carousel .swiper-slide:last-child img {
    height: initial !important;
}

.amenities-loop-container .elementor-grid {
    display: block;
}

/* M24: enable the mobile/tablet gaps between amenity cards. */
@media (max-width: 1024px) {
    .amenities-loop-container .elementor-loop-container.elementor-grid {
        display: flex;
        flex-direction: column;
        row-gap: 30px;
    }
    .amenities-loop-container .elementor-loop-container.elementor-grid:has(> .amenity-type-apartment) {
        row-gap: 25px;
    }
}

.amenities-post-container>div {
    gap: 16px !important;
    margin-bottom: 25px !important;
}

.edit-post-btn a {
    margin-bottom: 16px;
}

.amenities-loop-container .desktop-image-slider-container .elementor-swiper-button-next {
    right: -10px !important;
}

.amenities-loop-container .desktop-image-slider-container .elementor-swiper-button-prev {
    left: -10px !important;
}

.search-post-list .category-badge {
    max-width: fit-content !important;
    display: none !important;
}

/* Shown by JS only after the Event Type / category text is set */
.search-post-list .category-badge.aseo-badge-ready {
    display: block !important;
}

.search-post-list .post-full-link {
    position: absolute;
    z-index: 9;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.search-post-list .post-full-link a {
    font-size: 0;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
}

@media (max-width: 768px) {

    .gallery-carousel-wrapper .swiper-slide.swiper-slide-active:first-child {
        margin-left: 24px;
    }

    .amenity-width .type-amenity {
        overflow: hidden;
    }

    .gallery-carousel-wrapper img {
        height: 170px;
        object-fit: cover;
    }

    .gallery-carousel-wrapper .elementor-image-carousel {
        gap: 4px;
    }

    .amenities-fix-active .amenities-desktop-container .desktop-image-slider-container .swiper-slide {
        max-width: 100% !important;
        padding: 0 24px;
    }

    .amenities-fix-active .amenities-desktop-container .amenity-type-meal-plan .desktop-image-slider-container .swiper-slide img {
        padding: 0;
    }

    .elementor-element.elementor-element-0a827e5.e-con-full.desktop-amenity-content-container.e-flex.e-con.e-child {
        padding: 20px 24px 0 24px;
    }

    .desktop-amenity-content-container img {
        width: 60px !important;
        height: 65px !important;
        max-width: 60px !important;
        object-fit: contain;
    }

    .amenities-subtitle-wrapper {
        margin-top: 30px !important;
        margin-bottom: 30px !important;
    }

    .dinning-carousel-features .desktop-amenity-content-container {
        gap: 0;
    }

    .aminity-carousel-container .swiper-slide {
        width: 80vw !important;
    }
}

@media (width: 768px) {
    .amenities-desktop-container .e-con {
        padding: 0;
        gap: 4px;
    }

    .amenities-fix-active .amenities-desktop-container .desktop-image-slider-container .swiper-slide img {
        padding: 0 !important;
    }
}

@media (min-width: 768px) {

    .amenities-subtitle-wrapper .align-to-site-width .e-con-inner,
    .amenity-width .amenity-type-community .e-con-inner,
    .amenities-features-wrapper .e-con-inner,
    .amenities-fix-active .e-con-inner,
    .amenity-type-apartment .e-con-inner {
        margin: 0;
    }

}

@media (max-width: 1024px) {

    .amenities-subtitle-wrapper .align-to-site-width .e-con-inner,
    .amenity-width .amenity-type-community .e-con-inner,
    .amenities-features-wrapper .e-con-inner,
    .amenities-fix-active .e-con-inner,
    .amenity-type-apartment .e-con-inner {
        margin: 0;
        gap: 20px;
    }

    .aminity-carousel-container .e-con-inner .e-con ul li {
        margin-bottom: 0px;
    }

    .amenities-fix-active .mobile-image-slider-container .amenities-gallery {
        display: none;
    }

    /* .amenities-post-container .mobile-image-slider-container .amenities-gallery {
        padding-left: 24px;
    } */

    .amenities-mobile-container.mobile-image-slider-container {
        gap: 16px;
    }

    .social-slider-wrapper .e-con-inner {
        margin: 0;
        max-width: 100%;
    }

    .aminity-carousel-container .swiper-slide .e-con-inner .e-con.e-child {
        flex: 1;
    }

    .amenities-right-icon img {
        height: 70px !important;
    }
}

@media (max-width: 1024px) and (min-width: 768px) {

    /* Full-bleed carousel to viewport edge */
    .aminity-carousel-container .elementor-widget-loop-carousel,
    .aminity-carousel-container .elementor-widget-loop-carousel .swiper {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-right: calc(-50vw + 50%) !important;
        padding-right: 0 !important;
    }

    /* Add gap between slides */
    .aminity-carousel-container .swiper-slide {
        margin-right: 10px !important;
        /* ← change this value for gap size */
    }

    .gallery-text {
        width: 100%;
    }

    .desktop-amenity-content-container img {
        width: 65px !important;
        height: 65px !important;
        max-width: 65px !important;
        object-fit: contain;
    }

    /* .amenity-type-community:last-child,
    .amenity-type-apartment:last-child {
        width: calc(100% - 338px);
    } */

    /* .amenity-type-meal-plan:last-child {
        width: calc(100% - 180px);
    } */

    .amenities-fix-active {
        margin-bottom: 30px !important;
    }

    .aminity-carousel-container.e-con {
        --container-max-width: 900px;
        /* margin-left: 24px; */
    }

    .aminity-carousel-container .swiper-slide {
        width: 40vw !important;
    }

}

@media (min-width: 1024px) {

    .elementor-element.elementor-element-0a827e5.e-con-full.desktop-amenity-content-container.e-flex.e-con.e-child {
        gap: 20px;
    }
}

@media (max-width: 1440px) and (min-width: 1280px) {
    .amenity-width .elementor-widget-container {
        overflow: inherit;
    }
}

@media (max-width: 1280px) and (min-width: 1024px) {

    .renovation-carousel .swiper-wrapper,
    .aminity-carousel-container .swiper-wrapper {
        align-items: stretch !important;
        /* safe: centre only when the slides fit. Plain centre pushes an overflowing row
           (e.g. 19 reviews) far off to the left, which leaves the carousel blank */
        justify-content: safe center;
    }
}

/* auto-carousel loops with duplicated slides, so the track must start at the left edge (1024px matches the rule above) */
@media (max-width: 1024px) {

    .aminity-carousel-container .auto-carousel .swiper-wrapper,
    .aminity-carousel-container [data-query-id="reviews-load"] .swiper-wrapper {
        justify-content: flex-start;
    }

    .desktop-image-slider-container img.swiper-slide-image,
    .amenities-post-container .mobile-image-slider-container .amenities-gallery img {
        border-radius: 2px !important;
    }

    .amenities-bullet-points ul {
        padding-left: 103px;
    }

    .amenities-post-container>div {
        margin-bottom: 50px !important;
    }
}

/* auto-carousel: size the slides from the carousel's own width instead of the viewport */
@media (max-width: 1024px) and (min-width: 768px) {

    /* The container has a 24px left margin, so keep it inside its parent */
    .aminity-carousel-container.e-con:has(.auto-carousel) {
        max-width: calc(100% - 24px);
    }

    .aminity-carousel-container .auto-carousel .swiper-slide {
        width: 40% !important;
    }
}

@media (max-width: 767px) {
    .aminity-carousel-container .auto-carousel .swiper-slide {
        width: 80% !important;
    }
}

/* amenities loop (query ID "amenities-loop-gallery") below 1025px: no arrows or dots on its sliders */
@media (max-width: 1024px) {
    [data-query-id="amenities-loop-gallery"] .amenities-gallery .elementor-swiper-button,
    [data-query-id="amenities-loop-gallery"] .amenities-gallery .swiper-pagination {
        display: none !important;
    }

    [data-query-id="amenities-loop-gallery"] .amenities-gallery.elementor-pagination-position-outside .swiper {
        padding-bottom: 0 !important;
    }
}

/* gallery carousel below 768px: full width, and Swiper handles the gap and the 24px side inset
   (see "gallery carousel mobile fix" in global.js) so the last slide can be shown in full */
@media (max-width: 767px) {
    .gallery-carousel-wrapper {
        width: 100% !important;
        max-width: 100% !important;
    }

    .gallery-carousel-wrapper .elementor-image-carousel {
        gap: 0;
    }

    .gallery-carousel-wrapper .swiper-slide.swiper-slide-active:first-child {
        margin-left: 0;
    }

    /* Arrows and dots only show above 767px */
    .gallery-carousel-wrapper .elementor-swiper-button,
    .gallery-carousel-wrapper .swiper-pagination {
        display: none !important;
    }

    /* no room needed under the slider for the hidden dots */
    .gallery-carousel-wrapper .elementor-image-carousel-wrapper {
        padding-bottom: 0 !important;
    }

    .amenities-bullet-points ul {
        padding-left: 95px;
    }
}

/* gallery carousel dots added by global.js: place them below the slider (looks come from the site styles)
   !important: Elementor writes padding 0 and its own bottom offset for this widget */
@media (min-width: 768px) {
    .gallery-carousel-wrapper .aseo-gallery-nav {
        position: relative;
        padding-bottom: 30px !important;
    }

    .gallery-carousel-wrapper .aseo-gallery-nav>.swiper-pagination {
        bottom: 0 !important;
    }

    /* keep the arrows centred on the image, not on image + dots */
    .gallery-carousel-wrapper .aseo-gallery-nav>.elementor-swiper-button {
        top: calc(50% - 15px);
    }

    /* Elementor's own dots: the page CSS fixes the slider at the image height, so the
       30px dots area ends up over the image. Let it grow to image + dots instead */
    .gallery-carousel-wrapper.elementor-pagination-position-outside .elementor-image-carousel-wrapper {
        height: auto !important;
    }
}

@media (min-width: 1280px) {
    .desktop-image-slider-container img.swiper-slide-image {
        aspect-ratio: 1.5 / 1;
        height: auto !important;
    }
}

@media (min-width: 1360px) {
    .amenities-loop-container .desktop-image-slider-container .elementor-swiper-button-next {
        right: -32px !important;
    }

    .amenities-loop-container .desktop-image-slider-container .elementor-swiper-button-prev {
        left: -32px !important;
    }
}

@media (min-width: 1441px) {
    .align-to-site-width {
        padding-left: 0 !important;
    }

    .desktop-amenity-content-container {
        padding: 10%;
    }
}

@media (max-width: 600px) {
    .accordian-header .e-con {
        width: 60%;
    }

    .amenities-bullet-points ul {
        padding-left: 90px;
    }
}

@media (max-width: 480px) {
    .amenities-bullet-points ul {
        padding-left: 85px;
    }
}

/* Amenities and Gallery CSS Ends */
.virtualtour {
    position: relative;
}

.hide-virtual-image {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 100%;
}

.hide-virtual-image img {
    width: 100%;
    height: 100%;
    object-fit: inherit;
}

body .uwy .uai {
    display: none !important;
}

.play-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: opacity .5s;
    background-color: rgba(0, 0, 0, .4);
}

.play-image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.play-button {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ===== Dynamic ACF form inside an Elementor popup: loading state ===== */
.aseo-acf-loading {
    position: relative;
    pointer-events: none;
}

.aseo-acf-loading>* {
    opacity: .25;
    filter: blur(1px);
}

.aseo-acf-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 34px;
    height: 34px;
    margin: -17px 0 0 -17px;
    border: 3px solid rgba(0, 0, 0, .15);
    border-top-color: currentColor;
    border-radius: 50%;
    animation: aseo-acf-spin .7s linear infinite;
}

@keyframes aseo-acf-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Form locked because it is not (provably) bound to the clicked post */
.aseo-acf-blocked {
    pointer-events: none;
}

.aseo-acf-blocked>*:not(.aseo-acf-error) {
    opacity: .35;
}

.aseo-acf-error {
    pointer-events: auto;
    margin: 0 0 1em;
    padding: .85em 1em;
    border-left: 4px solid #b3282e;
    background: #fdf0f0;
    color: #7a1a1e;
    font-size: 14px;
    line-height: 1.45;
}

/* Desktop amenity cards start image-right; count DIV cards, not injected STYLE elements. */
@media (min-width: 1025px) {
.amenities-loop-container .elementor-loop-container > .e-loop-item:nth-of-type(odd) .desktop-image-slider-container { order: 2; }
.amenities-loop-container .elementor-loop-container > .e-loop-item:nth-of-type(odd) .desktop-amenity-content-container { order: 1; }
.amenities-loop-container .elementor-loop-container > .e-loop-item:nth-of-type(even) .desktop-image-slider-container { order: 1; }
.amenities-loop-container .elementor-loop-container > .e-loop-item:nth-of-type(even) .desktop-amenity-content-container { order: 2; }
}
/* ---------- WP media modal on the frontend (ACF gallery / image picker) ----------
   The theme's heading/button styles (negative letter-spacing, big red close
   button) leak into the modal. Reset them so it reads like the wp-admin one. */
.media-modal {
    top: 40px;
    z-index: 160000;
}

.media-modal .media-frame-title h1,
.media-modal .media-frame-title h2,
.media-modal .media-modal-content h1,
.media-modal .media-modal-content h2,
.media-modal .media-modal-content h3,
.media-modal .uploader-inline-content h2,
.media-modal .media-menu-item,
.media-modal .media-router .media-menu-item {
    letter-spacing: normal !important;
    word-spacing: normal !important;
    font-kerning: normal;
    text-transform: none;
    line-height: 1.4;
}

.media-modal .media-frame-title h1 {
    font-size: 22px;
    font-weight: 600;
    padding: 0 16px;
    margin: 0;
    color: #1d2327;
}

.media-modal .media-router .media-menu-item {
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: .04em !important;
}

.media-modal .uploader-inline-content h2 {
    font-size: 22px;
    font-weight: 400;
    margin: 0 0 12px;
}

/* Close button: small square in the corner, not a large red block that
   covers the "Expand Details" link. */
.media-modal .media-modal-close {
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
    padding: 0;
    background: transparent !important;
    color: #646970;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.media-modal .media-modal-close:hover,
.media-modal .media-modal-close:focus {
    background: #f0f0f1 !important;
    color: #d63638;
}

.media-modal .media-modal-close .media-modal-icon {
    background: none;
}

.media-modal .media-modal-close .media-modal-icon:before {
    color: inherit;
    font: normal 20px/50px dashicons;
}

/* Keep the router tabs / "Expand Details" clear of the close button */
.media-modal .media-frame-router,
.media-modal .media-frame-menu-toggle {
    right: 50px;
}

.media-modal .media-frame-content,
.media-modal .media-frame-toolbar .button,
.media-modal .media-frame-toolbar .media-toolbar-primary .button {
    letter-spacing: normal;
}

.media-modal .button.media-button-select,
.media-modal .button.media-button-insert {
    min-height: 40px;
    padding: 0 20px;
    text-transform: uppercase;
}

/* ---------- ACF gallery / image field buttons on the frontend form ---------- */
.acf-gallery .acf-gallery-toolbar {
    padding: 12px 16px;
    border-top: 1px solid #ddd;
    background: #fafafa;
}

.acf-gallery .acf-gallery-toolbar .acf-hl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.acf-gallery .acf-gallery-toolbar .acf-hl:before,
.acf-gallery .acf-gallery-toolbar .acf-hl:after {
    display: none;
}

.acf-gallery .acf-gallery-toolbar li {
    margin: 0;
    float: none;
}

.acf-gallery .acf-gallery-add,
.acf-field-image .acf-button,
.acf-field-image .acf-image-uploader .button {
    display: inline-block;
    padding: 10px 22px;
    border: 1px solid #c00;
    border-radius: 4px;
    background: #c00;
    color: #fff !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .04em;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}

.acf-gallery .acf-gallery-add:hover,
.acf-gallery .acf-gallery-add:focus,
.acf-field-image .acf-button:hover,
.acf-field-image .acf-image-uploader .button:hover {
    background: #a30000;
    border-color: #a30000;
    color: #fff !important;
}

.acf-gallery .acf-gallery-count {
    font-size: 13px;
    color: #646970;
}

/* ---------- Media modal: tabs + uploader button ---------- */
/* The theme's <button> styling (dark red fill, blue text) was leaking onto the
   "Upload Files" / "Media Library" tabs. Reset them to plain tabs. */
.media-modal .media-router .media-menu-item,
.media-modal .media-router button.media-menu-item {
    background: transparent !important;
    color: #50575e !important;
    border: 0 !important;
    border-bottom: 4px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 8px 16px !important;
    margin: 0 !important;
    min-height: 0;
}

.media-modal .media-router .media-menu-item:hover,
.media-modal .media-router .media-menu-item:focus {
    color: #c00 !important;
}

.media-modal .media-router .media-menu-item.active {
    color: #1d2327 !important;
    border-bottom-color: #c00 !important;
    font-weight: 600;
}

/* plupload's invisible file input sits over "Select Files"; keep it clickable */
.media-modal .moxie-shim,
.media-modal .moxie-shim input[type="file"] {
    cursor: pointer;
}

.media-modal .moxie-shim input[type="file"] {
    opacity: 0;
}

.home-bottom-section {
    background-position: center 57% !important;
}

.hero-refer-a-friend {
    background-position: center -87% !important;
}

.home-floorplan-card h2 a {
    font-weight: var(--e-global-typography-primary-font-weight);
}

.amenities-more-feature-container{
    background-position: center 25% !important;
}