#bodyContent {background: #fff; background: url(../img/repeat-square.png) center / 271px; overflow: hidden;}
@media (max-width: 40em) {
    #bodyContent {background-size: 30%;}
}

.timerBox {text-align: right;}
#headerNew .timerBox {display: inline-block;}
.timerBox .wrap {display: inline-block; margin-top: 0.35rem;}
.timerBox .wrap > div {display: inline-block; vertical-align: middle;}
.timerBox.toStart .txt {width: 3.2rem; height: 2rem; background: url(../img/timer/teasertimer_white_01.png) no-repeat center / contain; margin-right: .5rem;}
.timerBox.toEnd .txt {width: 10rem; height: 2rem; background: url(../img/timer/txt-white.png) no-repeat center / contain; margin-right: .5rem;}
#headerNew .timerBox.toStart .txt {background: url(../img/timer/teasertimer_01.png) no-repeat center / contain;}
#headerNew .timerBox.toEnd .txt {background: url(../img/timer/txt.png) no-repeat center / contain;}
.timerBox.toStart .txt2 {width: 6rem; height: 2rem; background: url(../img/timer/teasertimer_white_02.png) no-repeat center / contain; margin-left: .5rem;}
#headerNew .timerBox.toStart .txt2 {background: url(../img/timer/teasertimer_02.png) no-repeat center / contain;}
.timerBox .timer {width: 12rem;}
.timerBox .timer > div {float: left; width: 5%; text-align: center; font-size: 2rem; line-height: .9; }
.timerBox .timer > .timerBlock {position: relative; width: 30%;}
.timerBox .timerBlock > span:not(.num) {color: #000; font-size: .65rem; display: block; text-align: center; position: absolute; bottom: 100%; left: 0; right: 0; margin: 0 auto .35rem; text-align: center;}
.timerBox .timerBlock > span.num {display: block;}
.timerBox .timerBlock > span.num > span {position: relative; color: #fff; border-radius: .25rem; box-shadow: 1px 1px 3px 1px rgb(0, 0, 0,.15); font-weight: 600; font-size: 1.75rem; background-color: #333; text-align: center; width: calc(50% - 2px); margin: 0 1px; float: left; line-height: 1; font-family: "Public Sans", sans-serif;font-optical-sizing: auto;font-style: normal; padding: .4rem 0 .3rem;}
.timerBox .timerBlock > span.num > span:after {content: ''; display: block; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 100%; height: 1px; background-color: #505050;}

@media (max-width: 40em) {
    #headerNew .timerBox {margin-top: 1.25rem;}
    .timerBox {text-align: center;}
    .timerBox .timer {width: 15rem;}
    .timerBox .timerBlock > span.num > span {font-size: 2rem;}
}
 

#sectionTop .bgWrapper {background: #a68768; background: linear-gradient(to bottom, #e3c39d 75%, #d9b994 80%, #c0a07e 86%, #a68768 90%, #66482c 100%); padding-bottom: 1px; margin-bottom: 7rem;}
#campaignHead {position: relative; }
#KV {position: relative; background-color: #fff; border-radius: 0 0 16.5rem 16.5rem; padding-bottom: .65rem; box-shadow: 0px 0px 6px 3px rgb(0, 0, 0,.35); opacity: 0;}
#campaignHead.contentLoaded #KV {opacity: 1; -webkit-animation: bounceInDown 1s; animation: bounceInDown 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both;}
@keyframes bounceInDown {
    0%,60%,75%,90%,to {animation-timing-function: cubic-bezier(.215,.61,.355,1)}
    0% {opacity: 0; -webkit-transform: translate3d(0,-3000px,0); transform: translate3d(0,-3000px,0)}
    60% {opacity: 1; -webkit-transform: translate3d(0,25px,0); transform: translate3d(0,25px,0)}
    75% {-webkit-transform: translate3d(0,-10px,0); transform: translate3d(0,-10px,0)}
    90% {-webkit-transform: translate3d(0,5px,0); transform: translate3d(0,5px,0)}
    to {-webkit-transform: translateZ(0); transform: translateZ(0)}
} 
#KV img.KVImg {width: 100%; border-radius: 0 0 17rem 17rem;}
#campaignTitle {position: absolute; top: 14.5%; left: 0; right: 0; margin: auto; max-width: 70rem; width: 60%;}
#campaignHead.contentLoaded #campaignTitle {-webkit-animation: swing 1s; animation: swing 1s; -webkit-transform-origin: top center;transform-origin: top center;}
@keyframes swing {
    20% {-webkit-transform: rotate(10deg);transform: rotate(10deg)}
    40% {-webkit-transform: rotate(-5deg);transform: rotate(-5deg)}
    60% {-webkit-transform: rotate(2deg);transform: rotate(2deg)}
    80% {-webkit-transform: rotate(-2deg);transform: rotate(-2deg)}
    to {-webkit-transform: rotate(0deg);transform: rotate(0deg)}
}
#campaignTitle img.ttImg {width: 100%; }
#campaignTitle .campaignLogo img.logo {position: absolute; top: -18px; bottom: 0; left: 11%; margin: auto; width: 12%; transform: translateY(3.5rem);}
#campaignHead .deco {position: absolute; left: 0; right: 0; margin: auto; bottom: .55rem; background: url(../img/deco.png) no-repeat center / contain; opacity: 0;} 
#campaignHead.contentLoaded .deco {-webkit-animation: flipInX 1s .7s forwards; animation: flipInX 1s .7s forwards; -webkit-backface-visibility: visible; backface-visibility: visible; -webkit-transform-origin: bottom center;transform-origin: bottom center;}
@keyframes flipInX {
    0% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg)
    }
    40% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(400px) rotateX(-20deg);
        transform: perspective(400px) rotateX(-20deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg)
    }
    80% {
        -webkit-transform: perspective(400px) rotateX(-5deg);
        transform: perspective(400px) rotateX(-5deg)
    }
    to {
        opacity: 1;
        -webkit-transform: perspective(400px);
        transform: perspective(400px)
    }
}

@media (min-width: 40rem) {
    #KV {height: 33rem;}
    #KV img.KVImg {object-fit: cover; height: 100%;}
    #campaignTitle {max-width: 46rem;}
    #campaignHead .deco {width: 28rem; height: 14rem;}
}

@media (min-width: 80rem) {
    #KV {height: 41rem;}
    #campaignTitle {max-width: 52rem;}
    #campaignHead .deco {width: 35rem; height: 18rem;}
}

@media (max-width: 48rem) {
    #KV img.ttImg {width: 71%;}
}

@media (max-width: 40rem) {
    #sectionTop .bgWrapper {background: linear-gradient(to bottom, #e3c39d 50%, #d9b994 60%, #c0a07e 70%, #a68768 80%, #66482c 100%); margin-bottom: 0;}
    #KV {border-radius: 0 0 24vw 24vw; padding-bottom: 0.9rem;}
    #KV img.KVImg {border-radius: 0 0 8rem 8rem;}
    #campaignTitle {top: 25%; width: 85%;}
    #campaignTitle .campaignLogo img.logo {top: auto; bottom: 10%; left: 18.5%; width: 14%; transform: none;}
    #campaignHead .deco {width: 70%; height: auto; padding-bottom: 34%;}
}



#promoBlock {position: relative; margin-top: -4.5rem; z-index: 1; margin-bottom: -7rem;}
#promoBlock .container {padding: 0 3rem;}
#promoBlock .promo1 {width: 83%;}
#promoBlock .promo2 {width: 83%;}
#promoBlock .promo3 {width: 86%;}
#promoBlock .column:nth-child(1):after, #promoBlock .column:nth-child(2):after {content: ''; display: block; width: 4rem; height: 4rem; transform: translate(50%, -.6rem); position: absolute; right: 0; top: 0; bottom: 0; margin: auto; background: url(../img/promo/plus.png) no-repeat center / contain; filter: drop-shadow(0px 0px 4px rgba(0,0,0,0.25));}

@media (min-width: 80rem) {
    #promoBlock .container > .row {max-width: 100rem;}
    #promoBlock .column:nth-child(1):after, #promoBlock .column:nth-child(2):after {width: 6rem; height: 6rem; transform: translate(50%, 0rem); }
}

@media (max-width: 40rem) {
    #promoBlock {margin-top: -3.5rem; margin-bottom: 2rem;}
    #promoBlock .container {padding: 0 4rem;}
    #promoBlock .promo1, #promoBlock .promo2 {margin-bottom: 5rem;}
    #promoBlock .column:nth-child(1):after, #promoBlock .column:nth-child(2):after {width: 5rem; height: 5.5rem; transform: none; top: auto; left: 0; bottom: -.15rem;}
}



#logosBlock .wrapper {background-color: #fff; padding: 1rem 0; margin: 8rem 0 3rem;}
#logosBlock .container {max-width: 80rem; margin: auto;}
#logosBlock .logo {display: flex; flex-flow: row nowrap; align-items: center;}
#logosBlock .logo img {max-width: 100%; max-height: 100%; margin: auto;}

@media (max-width: 40rem) {
    #logosBlock .wrapper {margin: 2rem 0;}
}


#introBlock {padding: 2.5rem 0 0rem; position: relative; margin-top: -3rem; z-index: 0;}
#introBlock .container {max-width: 78rem; margin: auto; z-index: 2;}
#introBlock .introTxt {margin-bottom: 3rem; text-align: center;}
#introBlock .introTxt p {color: #725747; font-size: 1.65rem; line-height: 1.6;}
#introBlock .introTxt p.lg {font-size: 2.25rem; font-weight: 800; margin-bottom: 1rem;}
#introBlock .date {background-color: #291f41; border: 3px solid #D9D3A2; border-radius: 5rem; box-shadow: 0px 0px 5px 2px rgb(0, 0, 0,.35); margin: auto; width: 85%; max-width: 33rem; padding: 1.5rem 4.5rem;}
#introBlock .date img {-webkit-filter: drop-shadow(1px 1px 2px rgba(0,0,0,0.75)); filter: drop-shadow(1px 1px 2px rgba(0,0,0,0.75));}
#introBlock .bg {background-image: var(--bg); background-position: center; background-size: cover; position: absolute; z-index: 0; left: 0; top: 0; width: 100%; height: 100%;}
#introBlock .bg:after {content: ''; display: block; position: absolute; z-index: 1; width: 100%; height: 100%; top: 0; left: 0; background: rgb(0, 0, 0,.35);}

@media (max-width: 40em) {
    #introBlock {margin-top: 0; padding: 1rem;}
    #introBlock .bg {background: var(--bgm) no-repeat center / cover;}
    #introBlock .introTxt {margin-bottom: 2rem; padding: 0 1.5rem;}
    #introBlock .introTxt p {font-size: 3.8vw;}
    #introBlock .introTxt p.lg {font-size: 4.65vw;}
    /* #introBlock .date {padding: 1.25rem 1.75rem;} */
}



#sectionBottom {/*background: url(../img/repeat-square.png) center / 271px, linear-gradient(0deg, #ffffff 30%, #D8DDFF 70%);*/ position: relative; padding: 5rem 0;}

#booking {}
#booking .wrapper {max-width: 82rem; margin: auto;}
#resultExclusive {}
#resultExclusive .head > .row {max-width: 78rem;}
#resultExclusive .head .logoTTs {font-size: 0;}
#resultExclusive .head .logoTTs img {}
#resultExclusive .head .logoTTs img.logo {display: inline-block; vertical-align: middle;}
#resultExclusive .head .logoTTs img.or {width: 6.5rem; margin-right: 2rem;}
#resultExclusive .head .logoTTs img.menu {width: 11rem;}
#resultExclusive .head .logoTTs img.tt {width: 22rem;}
#resultExclusive .head .timerBox .wrap {width: 43rem; height: 11rem; background: url(../img/timer/timerBG.png) no-repeat center / contain; margin-top: 0; text-align: center; padding-top: 3.4rem;} 
#resultExclusive .head .timerBox.toStart .txt {width: 4.1rem; height: 2.5rem; margin-right: .6rem;}
#resultExclusive .head .timerBox.toEnd .txt {width: 12rem; height: 2.5rem; margin-right: 1.5rem;}
#resultExclusive .head .timerBox.toStart .txt2 {width: 8rem; height: 2.5rem;}
#resultExclusive .head .timerBox .timer {width: 20rem;}
#resultExclusive .head .timerBox .timer > div {font-size: 3rem;}
#resultExclusive .head .timerBox .timerBlock > span:not(.num) {color: #fff; font-size: .75rem;}
#resultExclusive .head .timerBox .timerBlock > span.num > span {font-size: 2.4rem; padding: 0.8rem 0 0.7rem;}

#resultExclusive > .container {display: flex; flex-flow: row wrap; margin-top: 1.5rem;}
#resultExclusive .poiItem {width: 23.8325rem; margin: 0 1.75rem 2.5rem;}

@media (min-width: 40rem) {
    #resultExclusive > .container {margin-top: 2.5rem;}
    /* #resultExclusive .poiItem {width: 60rem; padding: 0;}
    #resultExclusive .poiItem .wrapper {display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-flow: row wrap; -webkit-flex-flow: row wrap; flex-flow: row nowrap; padding: 0;}
    #resultExclusive .poiItem .wrapper > div:first-child {-ms-flex: 0 0 53%; -webkit-flex: 0 0 53%; flex: 0 0 53%; max-width: 53%;}
    #resultExclusive .poiItem .wrapper > div:last-child {-ms-flex: 0 0 47%; -webkit-flex: 0 0 47%; flex: 0 0 47%; max-width: 47%; padding: 0.75rem; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-flow: column nowrap; -webkit-flex-flow: column nowrap; flex-flow: column nowrap; justify-content: space-between;}
    #resultExclusive .poiItem .imgBox {aspect-ratio: 0; height: 100%; min-height: 20rem;} */
}


@media (max-width: 40em) {
    #resultExclusive > .container {justify-content: center;}
    #sectionBottom {padding: 3rem 0; background-size: 200px;}
    #resultExclusive .head .logoTTs {text-align: center;}
    #resultExclusive .head .logoTTs img.tt {margin: .25rem auto 1rem; width: 17rem;}
    #resultExclusive .head .timerBox .wrap {width: 97%; height: auto; margin-top: .25rem; padding: 9% 0;}
    #resultExclusive .head .timerBox .txt {width: 30%; height: auto; margin-right: 3%; padding-bottom: 6%;}
    #resultExclusive .head .timerBox .timer {width: 45%;}
    #resultExclusive .head .timerBox .timerBlock > span.num > span {padding: 12% 0;}
}



.poiItem { padding: .1rem .1rem .15rem; background-color: #fff; border-radius: 16px; box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.15);}
.poiItem .wrapper {border-radius: 14px; padding: .3rem; height: 100%; display: flex; flex-flow: column nowrap; justify-content: space-between;}
.poiItem .imgBox {position: relative; aspect-ratio: 6 / 4;}
.poiItem .imgBox .img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.poiItem .imgBox .periodTitle {-webkit-transform: translateZ(0); -webkit-backface-visibility: hidden;position: absolute; z-index: 1; bottom: 0; left: 0; width: 100%; background-color: #291f41; text-align: center; padding: .5rem 1rem .65rem;}
.poiItem .imgBox .periodTitle span {font-size: 1.1rem; line-height: 1.2; color: #fff;}
.poiItem .imgBox .periodTitle span.yellowTxt {color: #ffd90a;}
.poiItem .imgBox .logo {position: absolute; display: block; width: 20%; padding-bottom: 20%; border-radius: 50%; top: -10%; left: 3%;}
.poiItem .descBox {padding: .85rem .45rem 1.45rem; }
.poiItem .descBox .tt {font-size: 1.425rem; font-weight: 700; color: #2c2c30; margin: 0; line-height: 1.3; font-weight: 400;}

.poiItem .btmBox {border-top: 1px dashed #d3d3d3; padding: .85rem 0 .495rem;}

.poiItem .offerBox {padding: 0 .45rem .5rem; flex-grow: 1; font-size: 0;display: none;}
.poiItem .offerBox .offerItem {border: 1px solid #ccc; border-radius: .5rem; padding: 0.45rem 0.75rem 0.5rem; display: inline-block; vertical-align: middle; width: 32.334%; margin: 0 .5% 5px; text-align: center; position: relative;}
.poiItem .offerBox .offerItem.active {background-color: #643762; border: 1px solid #643762;}
.poiItem .offerBox .offerItem:not(.active) {cursor: pointer;}
.poiItem .offerBox .offerItem .tt {color: #2c2c30; font-size: .985rem; font-weight: 600;}
.poiItem .offerBox .offerItem.active .tt {color: #fff;}
.poiItem .offerBox .offerItem .soldOut {font-size: 0.7rem; color: #fff; position: absolute; top: -25%; right: -5%; background-color: #8d8d8d;padding: 0 5px; border-radius: 18px; width: 3rem; line-height: 1.5; display: none;}
.poiItem .offerBox .offerItem.soldOut .soldOut {display: block;}

.poiItem .btmBox .priceGroup {padding: 0 .65rem;}

.poiItem .btmBox .priceO {color: #643762; font-weight: 700;}
.poiItem .btmBox .priceO span {font-size: 2.1rem; line-height: 1.375rem;}
.poiItem .btmBox .priceO small {font-size: 1.375rem; letter-spacing: 0; line-height: 1;}
.poiItem .btmBox .priceO small:last-child {font-size: 1.1rem;}
.poiItem .btmBox .priceO small.perTxt {color: #4b4b4b;}
.poiItem .btmBox .priceD {color: #f86e7e;}
.poiItem .btmBox .priceD span {font-size: 1.25rem; text-decoration: line-through; float: right; line-height: 1.5;}
.poiItem .btmBox .srvFeeTxt {font-size: .8rem; color: #a0a3a2; font-weight: 600;}
.poiItem .btmBox .btnGroup {padding: 0 .45rem;}
.poiItem .btmBox .menuBtn {display: none;}
.poiItem .btmBox .menuBtn.active {display: block; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-flow: row nowrap;-webkit-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: space-between; justify-content: space-between; align-items: center;}

.poiItem .btmBox .btn {font-size: 1.55rem; color: #fff; background-color: #643762; line-height: 3rem; padding: 0 1.5rem .1rem; border-radius: .45rem; margin-top: .75rem; text-align: center; display: none; -ms-flex: 0 0 100%; -webkit-flex: 0 0 100%;flex: 0 0 100%; max-width: 100%;}
.poiItem .btmBox .btn:not(.soon):not(.soldout) {background: linear-gradient(120deg, #934a7f, #643762, #643762, #191838, #934a7f, #934a7f, #643762, #643762, #191838, #934a7f, #934a7f);background-size: 350% 350%;-webkit-animation: btnBGCanimate 9s linear infinite;animation: btnBGCanimate 9s linear infinite; }
.poiItem .btmBox .btn:not(.soldout) {-ms-flex: 0 0 83%; -webkit-flex: 0 0 83%;flex: 0 0 83%; max-width: 83%;}
@-webkit-keyframes btnBGCanimate {
    0% {background-position: 0% 0%;}
    100% {background-position: 350% 0%;}
}
@keyframes btnBGCanimate {
    0% {background-position: 0% 0%;}
    100% {background-position: 350% 0%;}
}
.poiItem .btmBox .btn:not(.soon):not(.soldout):before {content: ''; display: inline-block;vertical-align: middle;width: 2rem;height: 2rem;background: url(../img/icons/cart.svg) no-repeat center / contain;margin: -0.3rem 0.5rem 0 0;}
.poiItem .btmBox .btn.soon {background: transparent; border: 1px solid; color: #a0a3a2;}
.poiItem .btmBox .btn.soldout {background-color: #6d6d6d; color: #adadad;}
.poiItem .btmBox .upcoming .btn.soon {display: block;}
.poiItem .btmBox .ongoing:not(.soldOutAll) .menuBtn:not(.soldOut) .btn:not(.soon):not(.soldout) {display: block;}
.poiItem .btmBox .expired .btn.soldout {display: block;}
.poiItem .btmBox .ongoing.soldOutAll .btn.soldout, .poiItem .btmBox .ongoing .menuBtn.soldOut .btn.soldout {display: block;}
.poiItem .btmBox a.shareBtn {-ms-flex: 0 0 12%; -webkit-flex: 0 0 12%;flex: 0 0 12%; max-width: 12%; padding-bottom: 12%; background: url(../img/icons/share_button.svg) no-repeat center center; background-size: contain; margin-top: .75rem; display: none;}
.poiItem .btmBox .upcoming a.shareBtn, .poiItem .btmBox .ongoing a.shareBtn {display: block;}


#resultMore {margin-top: 3rem;}
#resultMore .moreTtImg {max-width: 22.5rem; margin: 0 auto 2rem;}
#resultMore .container {width: 100%; margin: auto; padding: 0 1.5rem 5.5rem; display: flex; flex-flow: row wrap;}
#resultMore .swiper-container {padding-top: 2%;}
#resultMore .swiper-slide {-webkit-transform: translateZ(0); -webkit-backface-visibility: hidden;}
#resultMore .poiItem {margin: 0; }
#resultMore .poiItem .btmBox .btn.soon, #resultMore .poiItem .btmBox .btn.soldout {display: none!important;}
#resultMore .poiItem .btmBox .btn:not(.soon):not(.soldout) {display: block!important;}
/* #resultMore .poiItem .btmBox a.shareBtn {display: block;} */

.swiper-navs {width: 11rem; position: absolute; margin: auto; left: 0; right: 0; bottom: 2rem;}
.swiper-button-prev, .swiper-button-next {width: 35px!important;height: 35px!important;background-color: #fff;border-radius: 50%; box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16); opacity: .8;}
.swiper-button-prev {left: 5px!important;}
.swiper-button-next {right: 5px!important;}
.swiper-button-prev:after, .swiper-button-next:after {font-size: 16px!important; color: #412c2c!important; font-weight: 700;}

@media (max-width: 48em) {
    #resultMore > .container {padding: 0 .9rem;}
    #resultMore .swiper-container {padding-top: 4%;}
}

@media (max-width: 40em) {
    #resultMore .moreTtImg {max-width: 18rem;}
    .swiper-navs {display: none;}
}


#videoBlock {margin-top: 3rem;}
#videoBlock .videoTtImg {max-width: 22.5rem; margin: 0 auto 2rem;}
#videoBlock .container {max-width: 77rem; width: 100%; margin: auto; padding: 0 1rem; position: relative; padding-bottom: calc(77rem * .5625);}
#videoBlock .container iframe {border-radius: 2rem; overflow: hidden; box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16); position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

@media (max-width: 48em) {
    #videoBlock .container {padding-bottom: 56.25%;}
}
@media (max-width: 40em) {
    #videoBlock {padding: 0 1rem;}
    #videoBlock .videoTtImg {max-width: 18rem;}
}


#whatsappBox{max-width:140px;position:fixed;z-index:100;bottom:2rem;right:-200px;opacity:0;transition:all .3s ease-in-out;margin:auto}
#whatsappBox.show{right:1rem;opacity:1}
#whatsappBox img {-webkit-filter: drop-shadow(1px 1px 4px rgba(0,0,0,0.6));filter: drop-shadow(1px 1px 4px rgba(0,0,0,0.6));}
@media screen and (max-width: 40em) {
    #whatsappBox img{width: 9rem;}
}
