* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    font-family: 'Heebo', sans-serif;
}

.container {
    display: flex;
    width: 100%;
    height: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.menu {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2.0833vw;
    height: 3.2292vw;
    padding: 1.0417vw;
    z-index: 20;
    font-size: 0.9375vw;
    font-weight: 700;
    direction: rtl;
    background: rgba(70, 53, 66, 0.5);
    backdrop-filter: blur(17px);
}

.menu span {
    cursor: pointer;
    color: #fff;
    font-size: 1.3021vw;
    margin-left: 4.1667vw;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: transparent;
    color: #fff;
}

.menu span.active {
    color: rgba(250, 245, 237, 0.5)
}

.sidebar {
    width: 32.65625vw;
    background: #391F33;
    position: relative;
    display: flex;
    align-content: center;
    justify-content: center;
}

.sidebar .wpcf7 {
    margin-top: 2.4042vw !important;
}

#sidebar-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0 3.125vw !important;
    max-height: 100%;
}

.sidebar:after {
    content: '';
    position: absolute;
    top: 0;
    left: 100%;
    width: 7.87498vw;
    min-width: 150px;
    height: 100vh;
    background-image: url('../wine-assets/images/column-left.svg');
    background-size: auto 100%;
    background-position: bottom left;
    background-repeat: no-repeat;
    z-index: 100;
}

/* .sidebar:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    margin-left: -0.1042vw;
    width: 2.30208vw;
    background-image: url('../wine-assets/images/sidebar-decor-mask.svg');
    background-size: contain;
    background-position: bottom left;
    background-repeat: no-repeat;
    z-index: 999999;
} */

.sidebar img {
    width: 100%;
    height: auto;
}

.sidebar h1 {
    font-size: 2.3958vw;
    color: #fff;
    margin: 0;
}

.sidebar hr {
    width: 100%;
    border: 0.026vw solid #c5b49c;
    margin: 0.7813vw 0;
}

.pricing {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 0.5208vw;
    width: 100%;
}

.pricing .text {
    font-size: 1.0417vw;
    color: #fff;
    font-size: 1.9271vw;
    border-top: 0.026vw solid #c5b49c;
    border-bottom: 0.026vw solid #c5b49c;
    padding: 0 0.3646vw;
    margin-left: 0.52083vw;
}

.pricing .price {
    font-size: 2.0833vw;
    color: #fff;
    position: relative;
    font-weight: bold;
}

.sidebar .pricing .price {
    font-size: 2.3958vw;
    line-height: 2.3958vw;
}

.pricing .price span {
    position: absolute;
    background-color: #391F33;
    font-size: 0.6771vw;
    width: 3.5938vw;
    height: 0.8854vw;
    top: 50%;
    right: 0.7813vw;
    transform: translateY(-50%);
    text-align: center;
    line-height: 0.8854vw;
}

.main {
    flex: 1;
    position: relative;
    width: calc(100vw - 32.6563vw)
}

.slide {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    z-index: 0;
}

.slide.active {
    opacity: 1;
    z-index: 1;
}

.slide video,
.slide img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.dots {
    position: absolute;
    bottom: 1.0417vw;
    right: 50%;
    transform: translateX(50%);
    display: flex;
    gap: 0.5208vw;
    z-index: 10;
}

.dot {
    width: 0.625vw;
    height: 0.625vw;
    border-radius: 50%;
    background: #fff;
    opacity: 0.5;
    cursor: pointer;
}

.dot.active {
    opacity: 1;
    background: #000;
}

#sidebar-logo {
    width: 12.4479vw;
}

#sidebar-presale {
    width: 100%;
    height: auto;
    margin-top: 2.7083vw;
}

.swiper-slide {
    height: 100vh;
}

.swiper-slide video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.swiper-pagination {
    width: 9.5833vw !important;
    background-color: rgba(250, 245, 237, 0.5);
    left: 50% !important;
    bottom: 1.8229vw !important;
    height: 2.9167vw !important;
    transform: translateX(-50%);
    border-radius: 1.5625vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-pagination-bullet {
    height: 1.3542vw;
    width: 1.3542vw;
    background: transparent !important;
    border: 0.1042vw solid #391F33 !important;
    position: relative !important;
}

.swiper-pagination-bullet-active:after {
    content: '';
    width: 0.8333vw;
    height: 0.8333vw;
    background: #391F33 !important;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slide-content {
    /* position: relative; */
}

/* First slide */
#first-right-decor {
    position: absolute;
    top: 0;
    right: 0;
    width: 5.5729vw;
    min-width: 100px;
    background-repeat: no-repeat;
    height: 100%;
    background-image: url("../wine-assets/images/first-right-decor.svg");
    background-size: auto 100%;
    background-position: bottom right;
}

#first-slide-text-banner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 80%;
    color: #fff;
    text-align: center;
    background: url('../wine-assets/images/symbol.svg'), rgba(250, 245, 237, 0.5);
    background-size: 12.7604vw;
    background-position: center;
    padding: 4.0625vw 1.3021vw;
    height: 16.25vw;
    width: 47.8646vw;
    color: #000;
    font-size: 1.5625vw;
    display: flex;
    align-items: center;
    background-repeat: no-repeat;
}

/* Second slide */
#environment-section-content {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #FAF5ED;
    width: 31.25vw;
    padding: 3.125vw 1.5625vw;
}

#environment-section-content .title {
    font-size: 1.6667vw;
    font-weight: bold;
    margin-bottom: 2.0833vw;
    color: #391F33;
    font-size: 1.8229vw;
    margin-top: 1.5625vw;
    text-align: center;
}

#env-items {
    display: flex;
    flex-direction: column;
    gap: 1.6667vw;
}

.env-item {
    display: flex;
    flex-direction: column;
    gap: 0.8333vw;
    justify-content: center;
    align-items: center;
}

#env-items hr {
    border: 0.026vw solid #391F33;
}

.env-item .icon {
    flex-shrink: 0;
    width: 3.3333vw;
    height: 3.3333vw;
}

.env-item .icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.env-item .text {
    font-size: 0.9375vw;
    line-height: 1.6;
    text-align: center;
    color: #391F33;
}

/* Third slide */
#specs-wrap {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #FAF5ED;
    width: 31.25vw;
    padding: 5.2083vw 1.5625vw;
    background-image: url("../wine-assets/images/spec-bg.svg");
    background-position: right bottom;
}

#specs-wrap .para {
    color: #391F33;
    font-weight: bold;
    font-size: 0.8854vw;
    max-width: 17.1875vw;
    margin-bottom: 1.0417vw;
}

#specs-wrap .title {
    font-size: 1.5625vw;
    font-weight: bold;
    margin-bottom: 0.5208vw;
    color: #391F33;
    font-size: 1.5625vw;
    margin-top: 1.5625vw;
}

#specs-wrap .specs {
    display: flex;
    flex-direction: column;
}

.spec-item {
    display: flex;
    align-items: center;
    font-size: 0.9375vw;
    font-weight: 300;
    color: #391F33;
    margin-bottom: 0.5208vw;
}

.spec-item img {
    width: 2.2917vw;
    height: 2.2917vw;
    object-fit: contain;
    margin-left: 0.5208vw;
}

/* Fourth slide */
#location-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Mobile */
#mobile-navbar,
#mobile-menu,
#mobile-footer,
#first-slide-pricing {
    display: none;
}

#mobile-contact-popup {
    display: none;
}

.wpcf7 {
    width: 100%;
}

.form-title {
    text-align: center;
    font-size: 1.6667vw;
    color: #fdf6ef;
    margin-bottom: 0.5vw;
    font-weight: bold;
}

.wpcf7-form label {
    display: block;
    color: #fdf6ef;
    margin-bottom: 0.5208vw;
    font-size: 0.8333vw;
}

.wpcf7-not-valid-tip {
    margin-top: -0.6771vw !important;
    font-size: 0.8rem;
}

.wpcf7 form .wpcf7-response-output {
    padding: 0;
    margin: 0.52083vw 0 0;
}

.input-name,
.input-tel,
.input-email {
    width: 100%;
    background-color: #fdf6ef;
    border: none;
    height: 2.6042vw;
    margin-bottom: 0.625vw !important;
    font-size: 0.7813vw;
    padding-right: 0.5208vw !important;
    box-sizing: border-box;
    text-align: right;
    color: #000;
    border-radius: 0 !important;
}

.wpcf7-form p {
    margin-bottom: 0;
}

.submit-btn {
    width: 100%;
    background-color: #c5b49c;
    color: #fff;
    font-size: 0.9375vw;
    height: 2.6042vw;
    border: none;
    cursor: pointer;
    font-weight: bold;
    border-radius: 0 !important;
}

.submit-wrap {
    position: relative;
}

.submit-wrap .wpcf7-spinner {
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
}

/* thank-you-popup */
#thank-you-popup {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 101;
    background: #faf5ed;
    top: 0;
    right: 0;
}

#thank-you-popup {
    display: flex;
    flex-direction: column;
    align-items: start;
}

#thank-you-popup:before,
#thank-you-popup:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 7.87498vw;
    min-width: 150px;
    height: 100vh;
    background-image: url('../wine-assets/images/column-left.svg');
    background-size: auto 100%;
    background-position: bottom left;
    background-repeat: no-repeat;
    z-index: 102;
}

#thank-you-popup:before {
    left: inherit;
    right: 0;
    background-image: url('../wine-assets/images/column-right.svg');
    background-position: bottom right;
}


#thank-you-popup video {
    width: 100%;
}

.thank-you-top {
    width: 100%;
    height: 17.71vw;
    /* 340px */
    /* margin-top: -17.71vw; */
    /* -340px */
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2.71vw 0;
    /* 52px */
    animation: slideTopToBottom 1s ease-out forwards;
}

@keyframes slideTopToBottom {
  0% {
    margin-top: -17.71vw;
    /* height: 0; */
  }
  100% {
    margin-top: 0;
    /* height: 17.71vw; */
  }
}
.thank-you-top {
    margin-top: 0;
    transition: margin-top 1s ease-in-out;
}

.thank-you-top .thank-you-title {
    font-size: 2.57vw;
    /* 49.4px */
    line-height: 1.2;
    font-weight: 500;
    padding: 0.78vw 0 0.26vw;
    /* 15px 0 5px */
    margin-bottom: 1.98vw;
    /* 38px */
    border-top: 1px solid rgba(197, 180, 156, 1);
    border-bottom: 1px solid rgba(197, 180, 156, 1);

}

.thank-you-top .thank-you-button {
    cursor: pointer;
    font-size: 0.9vw;
    /* 17.33px */
    font-weight: bold;
    background: rgba(197, 180, 156, 1);
    color: rgba(250, 245, 237, 1);
    width: 17.86vw;
    /* 343px */
    height: 3.02vw;
    /* 58px */
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}

.thank-you-top .thank-you-button img {
    margin-right: 0.42vw;
    /* 8px */
}

@media (max-width: 768px) {
    .sidebar {
        display: none;
    }

    .menu {
        display: none;
    }

    #mobile-navbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: 120px;
        background-color: #391F33;
        padding: 0 40px;
    }

    #mobile-navbar img {
        height: 80px;
    }

    #mobile-navbar #hamburger {}

    #mobile-navbar #hamburger span {
        width: 60px;
        height: 2px;
        background-color: #C5B49C;
        display: block;
        margin-bottom: 13px;
    }

    #mobile-navbar #hamburger span:last-child {
        margin-bottom: 0;
    }

    #mobile-menu.active {
        display: flex;
        transition: 0.3s ease-in-out;
    }

    .menu-active #mobile-navbar,
    .menu-active #mobile-footer,
    .menu-active .swiper {
        /* Add the blur effect */
        filter: blur(10px);
        -webkit-filter: blur(10px);
    }

    #mobile-menu {
        position: fixed;
        top: 0;
        right: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(50, 50, 50, 0.65);
        z-index: 99999999;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    #mobile-contact-close,
    #mobile-menu-close {
        /* position: absolute;
        top: 19.5vh;
        left: 50%; */
        /* transform: translateX(-50%); */
        width: 42px;
        height: 42px;
        background: url('../wine-assets/images/close-icon.svg') center center no-repeat;
        background-size: contain;
        cursor: pointer;
        margin: 0 auto 60px;
    }

    #mobile-contact-close {
        width: 24px;
        height: 24px;
        margin: 20px 20px 0 0;
    }

    #mobile-menu-links {
        display: flex;
        flex-direction: column;
        gap: 24px;
        text-align: center;
        /* margin-top: 180px; */
    }

    .mobile-menu-link {
        font-size: 24px;
        font-weight: bold;
        cursor: pointer;
        color: #fff;
        margin-bottom: 60px;
    }

    #first-right-decor {
        display: none;
    }

    #specs-wrap {
        background: rgba(250, 245, 237, 0.8);
        width: 100%;
        padding: 0 43px;
        /* display: flex;
        align-items: center;
        align-content: center;
        justify-content: center; */
    }

    #specs {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
        margin-top: 50px;
    }

    .spec-item {
        flex-direction: column;
    }

    .spec-item .text {
        font-size: 12px;
        text-align: center;
    }

    #specs-wrap .title {
        font-size: 25px;
    }

    #specs-wrap .para {
        font-size: 15px;
        max-width: 100%;
    }

    .spec-item img {
        height: 36px;
        width: 36px;
        margin-left: 0;
    }

    #environment-section-content {
        width: 100%;
        background-color: rgba(250, 245, 237, 0.8);
        padding: 0 43px;
    }

    #environment-section-content .title {
        font-size: 25px;
        margin-top: 10px;
        margin-bottom: 10px;
    }


    .env-item .text {
        font-size: 12px;
    }

    .env-item .icon {
        height: 41px;
        width: 41px;
    }

    #env-items {
        gap: 14px;
    }

    #mobile-footer {
        display: flex;
        justify-content: center;
        /* align-items: center; */
        height: 80px;
        padding-top: 10px;
        background-color: #391F33;
        position: fixed;
        bottom: 0;
        width: 100%;
        position: fixed;
        bottom: 0;
        right: 0;
        left: 0;
        z-index: 101;
    }

    #mobile-footer a {
        box-sizing: border-box;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 7.38583px 29.5433px;
        gap: 7.39px;
        width: 186.07px;
        height: 38.77px;
        line-height: 38.77px;
        background: #C5B49C;
        border: 0.738583px solid #C5B49C;
        box-shadow: 0px 2.24176px 2.24176px rgba(0, 0, 0, 0.25);
        border-radius: 56.1323px;
        flex: none;
        order: 0;
        flex-grow: 0;
        color: #391F33;
        text-decoration: none;
        font-weight: 500;
    }

    #mobile-footer a span {
        height: 10px;
        width: 20px;
        background-size: contain;
        background-repeat: no-repeat;
        background-image: url('../wine-assets/images/arrow.svg');
        animation: bounce-right 1s ease-in-out infinite;
    }

    @keyframes bounce-right {

        0%,
        100% {
            margin-right: 0;
        }

        50% {
            margin-right: 7px;
        }
    }

    #first-slide-text-banner {
        display: none;
    }

    #first-slide-pricing {
        display: block;
        position: absolute;
        right: 15px;
        left: 15px;
        min-height: 100px;
        background: rgba(57, 31, 51, 0.85);
        top: 50%;
        transform: translateY(-50%);
        border-radius: 8px;
        padding: 32px 38px;
        margin-top: -25%;
    }

    #main-presale {
        width: 100%;
    }

    #first-slide-pricing h1 {
        color: #fff;
        font-size: 23px;
        text-align: center;
        margin-bottom: -5px;
    }

    #first-slide-pricing hr {
        width: 100%;
        border: 0.5px solid #c5b49c;
        margin: 5px 0;
        margin-bottom: 10px;
    }

    .pricing {
        margin-top: 10px;
    }

    .pricing .text {
        font-size: 17px;
        padding: 4px;
        margin-left: 5px;
    }

    .pricing .price {
        font-size: 25px;
        font-weight: bold;
    }

    .pricing .price span {
        font-size: 10px;
        width: 34px;
        height: 13px;
        right: 5px;
        line-height: 13px;
        font-weight: 300;
    }

    #mobile-contact-popup {}

    #mobile-contact-popup {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.7);
        z-index: 99999999;
    }

    #mobile-contact-popup-box {
        top: 50%;
        left: 15px;
        right: 15px;
        position: fixed;
        background-color: #391F33;
        transform: translateY(-50%);
        padding: 38px;
    }

    #mobile-contact-popup-box h1 {
        color: #fff;
        font-size: 23px;
        text-align: center;
        margin-bottom: -5px;
    }

    #mobile-contact-popup-box hr {
        width: 100%;
        border: 0.5px solid #c5b49c;
        margin: 5px 0;
        margin-bottom: 10px;
    }

    .form-title {
        margin-bottom: 0px;
        margin-top: 10px;
    }

    .input-name,
    .input-tel,
    .input-email {
        height: 31px;
        border: none !important;
        margin-bottom: 7px !important;
        font-size: 12px;
    }

    .submit-btn {
        height: 36px;
        line-height: 20px !important;
        font-size: 13px;
    }

    .swiper-slide {
        height: calc(100vh - 200px);
    }

    #location-bg {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: left bottom;
    }

    .swiper-pagination {
        display: none;
    }
    #thank-you-popup:before, #thank-you-popup:after {
        top: initial;
        bottom: 0;
    }
    #thank-you-popup {
        align-items: center;
    }
    .thank-you-top {
        width: 100%;
        height: 230px;
        padding: 22px 0;
        animation: slideTopToBottom 1s ease-out forwards;
    }

    @keyframes slideTopToBottom {
        0% {
            margin-top:-230px;
        }
        100% {
            margin-top:0;
        }
    }
    

    .thank-you-top .thank-you-title {
        font-size: 32px;
        line-height: 1.2;
        font-weight: 500;
        padding: 15px 0 5px;
        margin-bottom: 28px;
        border-top: 1px solid rgba(197, 180, 156, 1);
        border-bottom: 1px solid rgba(197, 180, 156, 1);
    }

    .thank-you-top .thank-you-button {
        cursor: pointer;
        font-size: 17.33px;
        font-weight: bold;
        background: rgba(197, 180, 156, 1);
        color: rgba(250, 245, 237, 1);
        width: auto;
        padding: 0 10px;
        height: 58px;
        display: flex;
        justify-content: center;
        align-items: center;
        align-content: center;
    }

    .thank-you-top .thank-you-button img {
        margin-right: 8px;
    }
    #thank-you-popup video {
        height: 100%;
        width: auto;
    }
}

@media (max-width: 480px) {
    .thank-you-top .thank-you-title {
        font-size: 18px;
        line-height: 1.2;
        font-weight: 500;
        padding: 15px 0 5px;
        margin-bottom: 28px;
        border-top: 1px solid rgba(197, 180, 156, 1);
        border-bottom: 1px solid rgba(197, 180, 156, 1);
    }

    .thank-you-top .thank-you-button {
        cursor: pointer;
        font-size: 16px;
        font-weight: bold;
        background: rgba(197, 180, 156, 1);
        color: rgba(250, 245, 237, 1);
        width: auto;
        padding:0 10px;
        height: 38px;
        display: flex;
        justify-content: center;
        align-items: center;
        align-content: center;
    }
}
.accessibility-statement {position: fixed;bottom: 8px;left: 100px;z-index: 9999999;color: #fff;text-decoration: underline;font-size: 14px;}
.accessibility-statement:hover {color: #fff;text-decoration: none;}
.accessibility-statement-thankyou:hover,
.accessibility-statement-thankyou {color:#000;}
@media only screen and (max-width: 480px) {
    .accessibility-statement {left: 50px;}
    .accessibility-statement-thankyou:hover,
    .accessibility-statement-thankyou {color:#fff;}
}