/* CMS Styles */
/* Home Page ------------------------------------------------------------*/
.page--home {
    .eclub-join {

        & .btn,
        & .btn:active,
        & .btn:hover {
            align-items: center;
            display: flex;
            justify-content: center;
        }
    }

    .section--hero {
        & .hero-container {
            align-items: center;
            aspect-ratio: 9 / 16;
            display: flex;
            justify-content: center;
            height: 80vh;
            position: relative;
            width: 100vw;
        }

        & .hero-container video {
            height: 100%;
            object-fit: cover;
            position: absolute;
            top: 0px;
            width: 100%;
            z-index: -1;
        }

        & h1 {
            color: rgb(255, 255, 255);
            font-size: 1.5rem;
            letter-spacing: 8px;
            text-shadow: rgb(0, 0, 0) 2px 2px 0px;

            &.valentine-title {
                font-family: "Relaxation" !important;
                font-size: 4rem;
                font-weight: 500;
                color: #e3bc51;
                letter-spacing: 4px;

            }
        }

        & .btn--silver-gradient,
        & .btn--silver-gradient:active {
            background: linear-gradient(rgb(218, 218, 218) 0%, rgb(93, 93, 93) 100%) rgba(0, 0, 0, 0);
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.125rem;
            padding: 0.75rem 2.5rem;
            font-family: "Montserrat", "Montserrat-Bold",
                sans-serif;
            font-weight: 600;
        }

        & .btn--silver-gradient:hover,
        & .btn--silver-gradient:focus {
            color: rgb(0, 0, 0) !important;
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.125rem;
            padding: 0.75rem 2.5rem;
            font-family: "Montserrat", "Montserrat-Bold",
                sans-serif;
            font-weight: 600;
            background: linear-gradient(96deg, var(--ev-smokey-blue) 0%, var(--ev-slate-gray) 50%, rgba(71, 80, 97, 1) 100%) !important;
            background: -moz-linear-gradient(96deg, var(--ev-smokey-blue) 0%, var(--ev-slate-gray) 50%, var(--ev-smokey-blue) 100%) !important;
            background: -webkit-linear-gradient(96deg, var(--ev-smokey-blue) 0%, var(--ev-slate-gray) 50%, var(--ev-smokey-blue) 100%) !important;
            color: #d5e7ff !important;
            border: none;
        }

        & .hero-scroll {
            bottom: 10%;
            left: 50%;
            position: absolute;
            transform: translateX(-50%);
        }

        & .down-arrow_animated {
            background: linear-gradient(rgb(255, 255, 255) 10%, transparent);
            transform-origin: center top;
            animation: 5s ease 0s infinite alternate none running pulse;
            text-shadow: rgb(0, 0, 0) 2px 2px;
            width: 2px;
            height: 3rem;
            align-self: center;
        }
    }

    .section--features {
        p {
            text-transform: uppercase;
            text-align: center;
            line-height: 1.3;
            color: #fff;
        }

        & .container {
            padding-bottom: 2rem;
            padding-top: 2rem;
        }

        & .features-content {
            align-items: center;
            display: flex;
            flex-direction: column;
            justify-content: center;
            margin: 1rem auto;
        }

        & .content-header img {
            max-height: 5rem;
        }

        & .content-body {
            padding: 1rem;
        }

        & .content-body h3 {
            color: rgb(255, 255, 255);
            font-size: 1rem;
            line-height: 1.5;
            text-align: center;
            text-transform: uppercase;
        }

        & .content-footer a {
            font-size: 0.75rem;
            min-width: 14rem;
        }
    }

    .section--promotion {
        & .gap-4 {
            gap: 1rem;
        }

        & .justify-content-evenly {
            justify-content: space-evenly !important;
        }

        & .pb-20 {
            padding-bottom: 5rem !important;
        }

        & p,
        & .btn {
            font-size: 0.85rem;
        }
    }


    .btn-scroll {
        font-weight: 400;
        letter-spacing: 0.1rem;
        cursor: pointer;
        color: #fff;
        text-shadow: 1px 1px 6px #000;
        font-size: 1.5rem;
    }

    @keyframes pulse {

        0%,
        100% {
            opacity: 1;
        }

        50% {
            opacity: 0;
        }
    }

    @media (min-width: 360px) {
        .section--promotion {

            & p,
            & .btn {
                font-size: 1rem;
            }
        }
    }

    @media (min-width: 375px) {
        .section--hero {
            h1 {
                &.valentine-title {
                    font-size: 5rem;
                }
            }
        }
    }

    @media (min-width: 575px) {
        .section--hero {
            h1 {
                &.valentine-title {
                    font-size: 7rem;
                }
            }
        }
    }

    @media (min-width: 992px) {
        .promotion-content {
            & p {
                font-size: 1.15rem;
            }
        }
    }

    @media (min-width:1024px) {
        .section--hero {
            h1 {
                &.valentine-title {
                    font-size: 9rem;
                }
            }

            & .hero-container {
                height: 85vh;
            }
        }
    }

    @media (min-width: 1200px) {
        .section--hero {
            & .hero-content {
                min-width: 100%;
            }

            & h1 {
                font-size: 2.5rem;
            }
        }

        .section--features {
            & .container {
                padding-bottom: 4rem;
                padding-top: 4rem;
            }

            & .content-body h3 {
                font-size: 1.05rem;
            }

            & .content-footer a {
                min-width: 15rem;
            }
        }

    }

    @media (min-width: 1400px) {

        .promotion-content {
            & p {
                font-size: 1.5rem;
            }
        }
    }

    @media (min-width: 1650px) {
        .promotion-container {
            aspect-ratio: 21 / 9;
        }

        .promotion-title img {
            width: 90%;
        }

        .promotion-img {
            height: 100%;
            object-fit: cover;
            width: 100%;
        }
    }



}




/* NRO (locations/new-locations Page ------------------------------------------------------------ START*/

.locations-page {
    margin: 0;
    padding: 32px 0 32px;
    background: var(--ev-ash-blue);
    min-height: calc(100vh - 490px);


    .new-locations.container {
        max-width: 880px;
        border-radius: 12px;
        padding: 24px;
    }

    .new-locations p.no-record {
        text-align: center;
        font-family: 'Montserrat-Bold';
        font-weight: bold;
        font-size: 1.125rem;
        line-height: 1.5;
    }

    .new-locations .tabs {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        width: 100%;
        max-width: 680px;
        /* padding: 3px;
        background: #e7e7e7; */
        border-radius: 40px;
        flex-wrap: wrap;
    }

    .new-locations .tab {
        flex: 1;
        padding: 8px 12px;
        text-align: center;
        font-family: 'Montserrat-Bold';
        font-size: 1rem;
        line-height: 1.5;
        font-weight: 700;
        color: #606060;
        border-radius: 40px;
        cursor: pointer;
        transition: background 0.25s ease;
        background: #e7e7e7;
    }

    .new-locations .tab a {
        color: inherit !important;
        text-decoration: none;
        text-wrap-mode: nowrap;
        white-space: nowrap;
    }

    .new-locations .tab:not(.active):hover {
        background: #dcdcdc;
    }

    .new-locations .tab.active {
        background: var(--ev-gray-shadow);
        color: #ffffff;
    }

    .location-card {
        display: flex;
        gap: 20px;
        min-height: 150px;
        margin-bottom: 16px;
        background: var(--ev-gray-clouds);
        border: 1px solid #D6D6D6;
        border-radius: 16px;
        overflow: hidden;
        flex-direction: column;
    }

    .location-card .card-image {
        flex: 0 0 145px;
        aspect-ratio: 1 / 1;
        overflow: hidden;
    }

    .location-card .card-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .card-content {
        display: flex;
        justify-content: space-between;
        /* align-items: center; */
        width: 100%;
        padding: 32px;
        flex-direction: column;
    }

    .loc-title {
        font-family: 'Montserrat-Bold';
        font-size: 1rem;
        line-height: 1.5;
        font-weight: 700;
        color: #414d63;
        margin: 0 0 10px;
    }

    a .loc-title:hover {
        color: #ffffff;
    }

    .card-text a {
        text-decoration: underline;
        color: #414d63;
    }

    .card-text a:hover {
        text-decoration: none;
        color: #ffffff;
    }

    .address {

        font-family: var(--ev-body-font);
        font-weight: 400;
        font-size: 1rem;
        line-height: 1.3;
        color: #303030;
    }

    .card-status {
        display: flex;
        align-items: center;
    }

    .status-pill {
        padding: 8px 32px;
        border: 2px solid var(--ev-gray-cool);
        border-radius: 30px;
        background: #b6bec6;
        font-family: var(--ev-body-font);
        font-size: 1rem;
        line-height: 1.5;
        font-weight: 400;
        text-transform: uppercase;
        color: #000000;
    }

    .comingsoon .status-pill {
        background: #D7E9EB;
    }

    .quote-text {
        font-size: 1rem;
        font-weight: bold;
        text-transform: uppercase;
    }

    @media (max-width: 767px) {

        .locations-page {
            padding: 20px 0;

            .new-locations.container {
                padding: 16px;
            }

            .new-locations .tabs {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 8px;
                padding: 8px;
                background: transparent;
                border-radius: 16px;
            }

            .new-locations .tab {
                padding: 12px 0;
                background: #e7e7e7;
            }

            .new-locations .tab:hover {
                background: #dcdcdc !important;
            }

            .new-locations .tab.active:hover {
                background: var(--ev-gray-shadow) !important;
            }

            .location-card {
                gap: 10px;
            }

            .card-content {
                display: grid;
                grid-template-rows: auto auto;
                gap: 16px;
                padding: 20px 20px 20px 0;
                justify-content: center;
            }

            .card-text {
                text-align: center;
            }

            .card-status {
                justify-content: center;
                width: 100%;
            }

            .status-pill {
                padding: 6px 14px;
            }

        }
    }

    @media (min-width:576px) {
        .location-card {
            flex-direction: row;
        }

        .location-card .card-image {
            flex: 0 0 12.5rem;
        }


    }

    @media (min-width:768px) {
        .new-locations .tabs {
            flex-wrap: nowrap;
            background: #e7e7e7;
          }
      }

    @media (min-width:992px) {
        .card-content {
            flex-direction: row;
            align-items: center;
        }

        .address {
            margin-bottom: 0;
        }
    }


}



/* NRO (locations/new-locations  Page ------------------------------------------------------------END*/