@font-face {
    font-family: "Metropolis";
    src:
        url(../fonts/Metropolis-Black.woff2) format("woff2"),
        url(../fonts/Metropolis-Black.woff) format("woff");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Metropolis";
    src:
        url(../fonts/Metropolis-ExtraBold.woff2) format("woff2"),
        url(../fonts/Metropolis-ExtraBold.woff) format("woff");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Metropolis";
    src:
        url(../fonts/Metropolis-Bold.woff2) format("woff2"),
        url(../fonts/Metropolis-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Metropolis";
    src:
        url(../fonts/Metropolis-Medium.woff2) format("woff2"),
        url(../fonts/Metropolis-Medium.woff) format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Metropolis";
    src:
        url(../fonts/Metropolis-Regular.woff2) format("woff2"),
        url(../fonts/Metropolis-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


.vd_wrapper {
    max-width: 47vw;
    margin: auto;
}

span.starIcon {
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/3a623b0b-5127-44cc-81f9-ce2147e28800/400) no-repeat;
    background-size: contain;
    background-position: center;
    display: block;
    width: 0.7em;
    height: 1em;
    /* filter: brightness(1) drop-shadow(0px 0px 4px transparent); */
    /* filter: brightness(1.3) drop-shadow(-1px -1px 4px yellow); */

    /* animation: starBlinkRotate 1.5s infinite alternate; */
    transform-origin: center center;
    /* rotate around center */
}

.float-star-1,
.float-star-2,
.float-star-3,
.float-star-4 {
    filter: brightness(1) drop-shadow(0px 0px 6px transparent);
    opacity: 1;
    will-change: transform, filter, opacity;
}

@keyframes starBlinkRotate {

    0%,
    100% {
        filter: brightness(1.5) drop-shadow(-1px -1px 4px yellow);
        transform: rotate(0deg);
    }

    50% {
        filter: brightness(1.1) drop-shadow(-1px -1px 4px transparent);
        transform: rotate(-5deg);
    }

}

h1,
h2,
h3,
h4 {

    color: #F4DAA3;
    font-weight: 700;
    text-align: center;

}

h1,
h2 {
    width: fit-content;
    display: flex;
    flex-direction: row;
    margin: auto;
    font-size: 2rem;
    gap: 18px;
    text-shadow: -4px 4px 4px rgba(0, 0, 0, 0.45);

}

.celebration_date {
    display: block;
    width: 7vw;
    height: 7vw;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    font-family: "Metropolis";
    font-weight: 700;
    text-transform: capitalize;
    line-height: 1.1;
    font-size: 1dvi;
    border: 0;
    transition: transform 0.3s ease, filter 0.3s ease;
    position: relative;
    z-index: 3;

}

.celebration_date:not(.this_active):hover {
    color: #F4DAA3;
}

.celebration_date.this_active::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/d14816cf-fe12-4e8b-b24f-081eea498100/400) no-repeat center / contain;
    z-index: -1;
    scale: 1.2;
}


.celebration_date span {
    font-size: 2dvi;
}

.celebration_date.expired {
    color: #062725;
}


.celebration_date.this_active.expired::before {
    filter: brightness(0.5);
}

.featuredimg {
    width: 20vw;
    object-fit: contain;
    transition: transform 1s ease;
}

.ct-wrapper {
    flex-direction: row;
    justify-content: center;
    gap: 4dvw;
}

.ct-wrapper {
    display: none;
}

.ct-wrapper.active {
    display: flex;
}

.calendar-dates {
    position: relative;
    width: fit-content;
    margin: auto;
}

.calendar-dates::before {
    content: "";
    display: block;
    background: #005650;
    width: 96%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 84%;
    margin: auto;
    z-index: -1;
    border-radius: 18px;
    border: 0.3dvi solid #FFEBBC;
    pointer-events: none;
}

.ry_bg {
    position: relative;
}

.ry_bg::after {
    content: "";
    background: linear-gradient(to bottom, transparent, #003c39);
    position: absolute;
    width: 100%;
    bottom: 0;
    height: 90%;
    left: 0;
    right: 0;
    z-index: -1;
    opacity: 1;
    pointer-events: none;



}

.ry_bg::before {
    content: "";
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/a46106f4-4283-42a3-20a6-2958660bab00/1920);
    position: absolute;
    width: 100%;
    top: 0%;
    height: 100%;
    left: 0;
    right: 0;
    background-size: cover;
    z-index: -1;
    opacity: 1;
    pointer-events: none;



}

/* Rotation animation */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.switches-container {
    display: flex;
    justify-content: center;
    background: transparent;
    width: fit-content;
    margin: auto;
    border-radius: 30px;
    overflow: hidden;
    border: 0.2dvi solid #FFEBBC;

}

.switch button {
    position: relative;
    padding: 10px 1.8rem;
    border: 0;
    background: transparent;
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
    z-index: 1;
}

/* ACTIVE BUTTON */
.switch button.actives {
    background: linear-gradient(144deg, #FFEBBC -124.9%, #B77D39 107.65%);
    color: #fff;
}


.desktop-only {
    display: block;
}

.mobile-only {
    display: none;
}

.happenings {
    background: #003C39;
    position: relative;

}

.happenings::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/0b5e8395-ec5e-47d2-122c-50b5432ffb00/1920) repeat;
    background-size: 141%;
    background-position: top center;
    pointer-events: none;

}

.happenings::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    /* bottom: 0; */
    width: 100%;
    height: 29vh;
    background: linear-gradient(to top, transparent, #003C39);
    z-index: 1;
    pointer-events: none;

}

.featuredimg:hover {
    transform: translateY(-10px);
}

.fcont {
    position: relative;
}

.fcont::after {
    content: "";
    position: absolute;
    top: -8%;
    left: 0;
    right: 0;
    /* bottom: 0; */
    width: 100%;
    height: 23vh;
    background: linear-gradient(to top, transparent, #062624);
    z-index: -1;
    pointer-events: none;

}

.ontopgrad {
    position: absolute !important;
    bottom: 0;
    left: 0;
    right: 0;
    /* bottom: 0; */
    width: 100%;
    height: 29vh;
    background: linear-gradient(to bottom, transparent, #072725);
    z-index: 1 !important;
}

.happenings>* {
    position: relative;
    z-index: 3;
}

.mall_cont_wrapper .mcw {
    display: flex;
    flex-direction: row;
    max-width: 80vw;
    margin: auto;
    gap: 3rem;
    align-items: flex-start;
}

.mallDetails {
    width: 60vw;
}

.mallThumb {
    width: 35%;
}

.fhCarousel01 .splide__arrow--next {
    right: 0;
}

.fhCarousel01 .splide__arrow--prev {
    left: 0;
}

.splide .splide__arrow {
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    opacity: 1;
}

.splide .splide__arrow svg {
    display: none;
    /* hide default SVG */
}

/* PREV */
.splide .splide__arrow--prev {
    background: url("https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/28e40381-8e64-4b90-2f24-0031276c6200/400") center / contain no-repeat;
}

/* NEXT */
.splide .splide__arrow--next {
    background: url("https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/dc95a177-95f5-4e17-de8c-fe4e4db1f200/400") center / contain no-repeat;
}

.line-title {
    position: relative;
    text-align: center;
    font-size: 1.32vw;
    font-weight: 700;
    font-family: "Metropolis";
    color: #fff0f0;
    margin-bottom: 1.5rem;
}

.line-title::before,
.line-title::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 14dvw;
    height: 3px;
    background: #F4DAA3;
}

.line-title.extend::before,
.line-title.extend::after {

    width: 10dvw;

}

.line-title::before {
    left: 0;
}

.line-title::after {
    right: 0;
    background: #F4DAA3;
}

.line-title span {
    padding: 0 1.5rem;
    position: relative;
    z-index: 1;
    color: #F4DAA3;
}

p.sm_caption {
    text-align: center;
    font-size: 0.74vw;
}

.splide__arrow:disabled {
    opacity: 0 !important;
}

.actImg,
.actImg2 {
    width: 100%;
    margin: auto;
    display: block;
}

.share-cont {
    max-width: 811px;
    margin: auto;
    border-radius: 40px;
    border: 4px solid #EDE4CE;
    background: #006D64;
    box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.50) inset;
    padding: 40px 30px;
}

.share-wrapper p {
    line-height: 2;
    font-size: 0.9rem;
}

.sc-flw-1a,
.sc-flw-1b,
.sc-flw-1c,
.sc-flw-1d {
    will-change: transform;
}

.sc-flw-1 {
    position: absolute;
    top: -45%;
    left: -7%;
    width: 12em;
    height: 20em;
    object-fit: contain;
    object-position: top;
}

.sc-flw-1a {
    position: absolute;
    top: -45%;
    left: 0%;
    width: 8em;
    height: 8em;
    object-fit: contain;
    object-position: top;
    z-index: 3;
}

.sc-flw-1b {
    position: absolute;
    top: -23%;
    left: -7%;
    width: 9em;
    height: 9em;
    object-fit: contain;
    object-position: top;
    z-index: 2;
}

.sc-flw-1c {
    position: absolute;
    top: 1%;
    left: -8.5%;
    width: 9em;
    height: 13em;
    object-fit: contain;
    object-position: top;
    z-index: 0;
}

.sc-flw-1d {
    position: absolute;
    top: -11%;
    left: -6%;
    width: 9em;
    height: 13em;
    object-fit: contain;
    object-position: top;
    z-index: 0;
}

.sc-flw-2 {
    position: absolute;
    bottom: -17%;
    right: -6%;
    width: 7em;
    height: 6em;
    object-fit: contain;
    object-position: top;
}


.share_social {
    position: relative;
    min-height: 30dvi;
}

.share_social::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/ad24ca55-9cc7-4c05-9a34-12543ba61100/1920) no-repeat;
    background-size: cover;
    z-index: 2;
    width: 100%;
    height: 62%;
    background-position: center;
    pointer-events: none;
}

.frame-btm {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
}

.float-star {
    position: absolute;
    top: 6%;
    left: 11%;
    width: 6dvi;
    height: 6dvi;
    object-fit: contain;
}

.float-star-1 {
    position: absolute;
    top: 8.6%;
    left: 12%;
    width: 4dvi;
    height: 6dvi;
    object-fit: contain;
}

.float-star-2 {
    position: absolute;
    top: 6.2%;
    left: 14.6%;
    width: 1.8dvi;
    height: 1.8dvi;
    object-fit: contain;
}

.float-star-3 {
    position: absolute;
    top: 8.6%;
    right: 12%;
    width: 4dvi;
    height: 6dvi;
    object-fit: contain;
}

.float-star-4 {
    position: absolute;
    top: 6.2%;
    right: 14.6%;
    width: 1.8dvi;
    height: 1.8dvi;
    object-fit: contain;
}

.float-flower {
    position: absolute;
    bottom: 0%;
    right: 0px;
    width: 13dvi;
    height: 14dvi;
    object-fit: contain;
    z-index: 2;
}

.float-flower-1 {
    position: absolute;
    bottom: 9%;
    right: 2%;
    width: 13dvi;
    height: 11dvi;
    object-fit: contain;
    z-index: 2;
    object-position: top;

}

.float-flower-2 {
    position: absolute;
    bottom: 1%;
    right: -1%;
    width: 14dvi;
    height: 11dvi;
    object-fit: contain;
    z-index: 1;
    object-position: top;
}

.float-flower-1a {
    position: absolute;
    top: 44%;
    left: 5%;
    width: 13dvi;
    height: 11dvi;
    object-fit: contain;
    z-index: 2;
    object-position: top;

}

.float-flower-2a {
    position: absolute;
    top: 48%;
    left: -1%;
    width: 13dvi;
    height: 13dvi;
    object-fit: contain;
    z-index: 1;
    object-position: top;
}

.float-flower-1,
.float-flower-1a,
.float-flower-2,
.float-flower-2a {
    will-change: transform;
}
/* .float-star-1, .float-star-2, .float-star-3, .float-star-4 {
opacity: 0;
} */

.mall_cont_wrapper {
    display: flex;
    flex-direction: column;
    opacity: 0;
    height: 0;
    overflow: hidden;
    pointer-events: none;
    transition: opacity 0.5s ease, height 0.5s ease;
}

.mall_cont_wrapper.active {
    opacity: 1;
    height: auto;
    pointer-events: auto;
}

/* hide sliders until Splide mounted */
.mall_cont_wrapper .splide {
    visibility: hidden;
}

.mall_cont_wrapper.active .splide {
    visibility: visible;
}


@media screen and (min-width: 768px) and (max-width: 1024px) {
    .max1 {
        max-width: 30ch;
        margin: auto;
        margin-bottom: 1rem;
    }

    .share-cont {
        max-width: 70%;
    }

    .sc-flw-1 {
        top: -45%;
        left: -8%;
        width: 11em;
        height: 16em;
    }

}

@media screen and (max-width: 768px) {
    #mallSelect {
        display: block;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 7px 0;
        font-size: 0.85rem;
        font-weight: 400;
        font-family: "Metropolis";
        outline: none;
        appearance: none;
        border: 0;
        margin: auto;
        background: unset;
        padding-left: 1rem;
        text-align: left;

    }

    .switch-wrapper::after {
        content: "";
        display: inline-block;
        width: 1.3em;
        /* height: 100%; */
        margin-left: 10px;
        background-size: 3dvi;
        background-repeat: no-repeat;
        transition: transform 0.3s ease;
        background-image: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/9972d805-347f-46ea-2d27-da4d1d475000/400);
        display: flex;
        position: absolute;
        right: 1em;
        top: 0;
        bottom: 0;
        justify-content: center;
        align-content: center;
        background-position: center;
        pointer-events: none;
        padding-left: 1rem;
    }

    .switches-container {
        width: 81%;
        border: 0.7dvi solid #FFEBBC;

    }
}

@media screen and (max-width: 767px) {
   

    .basic_cta {
        font-size: 15px;
    }

    .vd_wrapper {
        max-width: 100%;
    }

    span.starIcon {
        width: 1em;
        height: 1em;
        margin: auto;

    }

    .celebration_date {
        width: 18vw;
        height: 18vw;
        font-size: 2.6dvi;
    }

    .ct-wrapper {
        flex-direction: column;
    }

    .celebration_date span {
        font-size: 5dvi;
    }

   

    p.ftdesc {
        font-size: 1.2rem;
        max-width: 27ch;
        min-height: 9em;
        margin: auto;
    }

    .featuredimg {
        width: 55vw;
        margin: auto;
        display: block;
    }

    .desktop-only {
        display: none;
    }

    .mobile-only {
        display: block;
    }

    .mall_cont_wrapper .mcw {
        flex-direction: column;
        max-width: 100%;
        gap: 2rem;
    }

    .mallThumb {
        width: 70%;
        margin: auto;
    }

    .mallDetails {
        width: 100%;
        padding: 0 1.5rem;
    }

    .line-title {
        font-size: 4.2vw;
    }

    .float-flower {

        bottom: 0%;
        right: 0px;
        width: 24dvi;
        height: 24dvi;
        object-fit: contain;
    }


    .calendar-dates::before {
        border: 0.7dvi solid #FFEBBC
    }

    .switch-wrapper {
        width: 100%;
        position: relative;
    }

    .ry_bg::before {
        background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/56dcbd34-3049-47c7-071f-f4dea180b300/public);
        background-size: 100%;
        top: 0%;
        background-position: top;
    }

    .share-cont h2 {
        max-width: 13ch;
        width: 100%;
    }

    .share-cont {
        max-width: 87%;

    }

    .sc-flw-1 {
        top: -13%;
        left: -7%;
        width: 24dvi;
        height: 37dvi;
    }

    .sc-flw-2 {
        bottom: -7%;
        right: -6%;
        width: 15dvi;
        height: 14dvi;
    }

    .actImg,
    .actImg2 {
        width: 87%;
    }

    p.sm_caption {
        font-size: 0.6rem;
    }

    .happenings::before {
        background-size: 400%;
        background-position: top center;
    }

    .ry_bg::after {
        height: 12vh;
    }

    .float-star-1,
    .float-star-3 {
        width: 6dvi;
        height: 6dvi;
        top: 7em;

    }

    .float-star-2,
    .float-star-4 {
        width: 10dvi;
        height: 10dvi;
        top: 5em;
    }

    .float-star-4 {
        right: 2.5em;
        top: 5em;
    }

    .float-star-3 {
        right: 0.5em;
    }

    .float-star-1 {
        left: 1em;
    }

    .float-star-2 {
        left: 2.5em;
        top: 5em;
    }

    .float-flower-1 {
        width: 20dvi;
        height: 20dvi;
        bottom: 6%;
        right: 7%;
    }

    .float-flower-2 {
        width: 24dvi;
        height: 24dvi;
    }

    .float-flower-1a,
    .float-flower-2a {
        display: none;
    }

    .sc-flw-1a {
        width: 5em;
        height: 5em;
        top: -11%;
        left: 10%;
    }

    .sc-flw-1b {
        width: 6em;
        height: 6em;
        left: -11%;
        top: -12%;
    }

    .sc-flw-1c {
        width: 7em;
        height: 7em;
        left: -18%;
        top: 16%;
    }

    .sc-flw-1d {
        height: 8em;
        left: -15%;
        top: 5%;
    }
}