@charset "UTF-8";

@font-face {
    font-family: 'FilsonProBlack';
    src: url('../fonts/FilsonProROBlack.eot');
    src: url('../fonts/FilsonProROBlack.eot?#iefix') format('embedded-opentype'),
        url('../fonts/FilsonProROBlack.woff2') format('woff2'),
        url('../fonts/FilsonProROBlack.woff') format('woff'),
        url('../fonts/FilsonProROBlack.ttf') format('truetype'),
        url('../fonts/FilsonProROBlack.svg#FilsonProROBlack') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --h2-color: #FBB040;
    --h2-shadow-color: #231F20;
    --white: #fff;
    --beige: #C2B59B;
    --red: #BE1E2D;
    --green: #006838;
    --space-1: 0.5rem;
    --space-2: 1rem;
    --space-3: 1.5rem;
    --space-4: 2rem;
    --space-5: 3rem;
}

*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    transition: all 0.1s ease-in;
}

*:focus {
    outline: none !important;
    transition: all 0.1s ease-in;
}

html,
body {
    font-family: "FilsonProBlack", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    height: 100%;
    width: 100%;
    position: relative;
    height: -webkit-fill-available;
    -webkit-overflow-scrolling: touch;
    overflow-x: hidden !important;
    overflow-y: auto;
    margin: 0;
    padding: 0;
}

body {
    margin: 0;
    background: var(--green);
    background-image: url(../images/zone-files/grass.png);
    background-repeat: repeat;
    min-height: 100vh;
    font-size: 1rem;
    color: var(--white);
    padding: 30px 30px;
}

.container {  
    width: 100%;
    max-width: 720px!important;
    margin: 0 auto;
    position: relative;
}

.welcome-area {
    width: 100%;
    max-width: 120px;
    position: absolute;
    left: 7%;
    top: 31.5%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.welcome-area img {
    width: 100%;
    max-width: 100px;
}

.time-travel {
    width: 100%;
    max-width: 160px;
    position: absolute;
    top: 26.5%;
    left: 33%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.time-travel img {
    max-width: 120px;
    width: 100%;
}

.carousel {
    width: 100%;
    max-width: 100px;
    position: absolute;
    top: 31.5%;
    left: 66%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.photo-corner{
    width: 100%;
    position: absolute;
    top: 9%;
    right: 7%;
    display: flex;
    flex-direction: row;
    align-items: self-start;
    justify-content: end;
}

.photo-corner img {
    width: 100%;
    max-width: 100px;
}

.open-bar-area {
    width: 100%;
    max-width: 150px;
    position: absolute;
    right: 27%;
    top: 41%;
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-gap: 3px;
}

.open-bar-area-2 {
    width: 100%;
    max-width: 150px;
    position: absolute;
    left: 9%;
    top: -4%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.open-bar-area-3 {
    width: 100%;
    max-width: 150px;
    position: absolute;
    right: 12%;
    top: 85%;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.open-bar-area img,
.open-bar-area-2 img,
.open-bar-area-3 img {
    width: 100%;
    max-width: 120px;
}

.lounge-area {
    position: absolute;
    left: 9%;
    top: 41%;
    display: flex;
}

.lounge-area h2 {
    text-transform: uppercase;
    color: var(--white);
    /* text-shadow: 4px 0px var(--h2-shadow-color); */
    font-size: 3rem;
    margin: 0;
    text-align: left;
    cursor: pointer;
    animation: none;
    padding: 6px 0 0 0;
    line-height: 1.3;
}

.rotisserie-area {
    position: absolute;
    width: 100%;
    max-width: 150px;
    left: 9%;
    top: 16%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rotisserie-area-2 {
    position: absolute;
    width: 100%;
    max-width: 150px;
    left: 9%;
    top: 35%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rotisserie-area img, 
.rotisserie-area-2 img {
    width: 100%;
    max-width: 120px;
}

.thirty-years{
    position: absolute;
    width: 100%;
    left: 24%;
    top: 26%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.food-area {
    position: absolute;
    width: 100%;
    max-width: 120px;
    right: 9%;
    top: 88%;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 5;
}

.event-area {
    position: absolute;
    width: 100%;
    left: 33%;
    top: 73%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.pasta-bar {
    position: absolute;
    width: 100%;
    max-width: 150px;
    left: 9%;
    top: 77%;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 5;
}

.pasta-bar-2 {
    position: absolute;
    width: 100%;
    max-width: 150px;
    right: 22%;
    top: 35%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.pasta-bar img,
.pasta-bar-2 img {
    width: 100%;
    max-width: 120px;
}

.central-area {
    position: absolute;
    left: 36%;
    top: 0%;
    display: flex;
}

.central-area h2 {
    text-transform: uppercase;
    color: var(--white);
    font-size: 3rem;
    margin: 0;
    text-align: center;
    cursor: pointer;
    animation: none;
    padding: 6px 0 0 0;
    line-height: 1.3;
}

.concert-area {
    width: 100%;
    position: absolute;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 43%;
}

.footer-logos-area {
    position: absolute;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-evenly;
    width: 100%;
    bottom: 38%;
}

.logo-protv-a img, .logo-protv-b img {
    width: 100%;
    max-width: 120px;
}

.toilet-area {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
    width: 100%;
    max-width: 120px;
    bottom: 3%;
    right: 8%;
}

.welcome-area h2,
.time-travel h2, .carousel h2,
.photo-corner h2, .pasta-bar h2, .pasta-bar-2 h2,
.rotisserie-area h2, .rotisserie-area-2 h2,
.food-area h2, .thirty-years h2, .open-bar-area h2,
.open-bar-area-2 h2, .open-bar-area-3 h2, .concert-area h2,
.event-area h2, .toilet-area h2 {
    text-transform: uppercase;
    color: var(--white);
    font-size: .875rem;
    margin: 0;
    text-align: center;
    cursor: pointer;
    animation: jump 2s infinite ease-in-out;
}

.welcome-area, .time-travel,
.carousel, .photo-corner,
.toilet-area
{
    grid-gap: 3px;
}

.container.container-top {
    background-image: url(../images/pavement.png);
    background-repeat: repeat;
}

.container.container-bottom {
    background-image: url(../images/square.png);
    background-repeat: repeat;
}

.grass-bg {
    background-image: url(../images/square.png);
    background-repeat: repeat;
    height: 18%;
}

.beige-bg {
    background-color: var(--beige);
}

.beige-bg.beige-bg-top {
    height: 4%;
    top: 18%;
}

.zone {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.container .zone .interactive-obj {
    cursor: pointer;
}

header {
    background-image: url(../images/square.png);
    background-repeat: repeat;
    padding: 2rem 0 1rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

header .logo-protv {
    width: 16em;
}

footer {
    background-image: url(../images/square.png);
    background-repeat: repeat;
    text-align: center;
    padding: 1rem;
}

footer p {
    margin: 0;
}

h2 {
    text-transform: uppercase;
    color: var(--h2-color);
    /* text-shadow: 4px 0px var(--h2-shadow-color); */
    font-size: 3.3vw;
    margin: 0;
    text-align: center;
    cursor: pointer;
    animation: jump 2s infinite ease-in-out;
    padding: 6px 0 0 0;
}

@-webkit-keyframes jump {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}


h2.h2-xl {
    font-size: 4vw;
}

h2.h2-small {
    font-size: 3vw;
}

h2.h2-xs {
    font-size: 2vw;
}


/* ZONES */

#topLeftZone .top-left {
    display: flex;
    align-items: center;
}

#topLeftZone .top-left .text {
    display: flex;
    top: 50%;
}

#topLeftZone .top-left .text h2 {
    padding: 0 0.5rem;
}

#topMiddleRightZoneReception h2 {
    top: 70%;
}

#bottomZoneGrill {
    top: 20%;
    left: 78%;
}

#bottomZoneBar {
    top: 35%;
    left: 68%;
}

#bottomZone .objects-bottom {
    top: -3px;
}

#topMiddleLeftZone .zone-bg {
    background-image: url(../images/pool_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}


#topLeftZone {
    margin-top: 7%;
}

#topRightZone {
    margin-top: 10%;
}

#topMiddleLeftZone {
    margin-top: 12%;
}

#topMiddleLeftZone .plants-img {
    left: 10%;
    top: 4%;
}

#topMiddleLeftZone .top-umbrellas-obj {
    top: 17%;
    left: 5%;
}

#topMiddleLeftZone .bottom-umbrellas-obj {
    bottom: 0;
    left: 5%;
}

#topMiddleLeftZonePhotoCorner {
    padding-top: 3rem;
}


#topMiddleLeftZonePool {
    padding-bottom: 12%;
    top: -5px;
}

#topMiddleRightZoneReception {
    padding-top: 4rem;
}

#topLeftZoneStage {
    left: 2vw;
}

#topMiddleRightZone .beige-bg {
    flex: 1;
    align-self: center;
}

#topZone .plant-img-top {
    width: 55%;
    left: 6%;
    top: -1%;
}

#topRightZoneBar {
    left: -30%;
}

#topRightZoneBar .plant-img {
    top: 50%;
    left: 100%;
}

.container-top #middleTopZone .beige-bg {
    height: 80%;
}

#middleTopLeftZone {
    margin-top: -3rem;
}

#middleTopLeftZone .plant-img {
    margin-top: 10%;
}

#middleMiddleLeftZonePool {
    top: 10%;
}

#middleMiddleRightZoneBuffet {
    top: 18%;
    left: 24%;
}

#middleBottomLeftZone .plant-img {
    left: 2%;
}

.left-0 {
    left: 0;
}

.top-0 {
    top: 0;
}

.top-0-25 {
    top: 0.25rem;
}

.top-0-75 {
    top: 0.75rem;
}

.top-1 {
    top: 1rem;
}

.top-1-5 {
    top: 1.5rem;
}

.z-1 {
    z-index: 1;
}

.z-2 {
    z-index: 2;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.flex {
    display: flex;
}

.flex-col {
    flex-direction: column;
}

.flex-row {
    flex-direction: row;
}

.justify-center {
    justify-content: center;
}

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.align-center {
    align-items: center;
}

.align-start {
    align-items: flex-start;
}

.align-end {
    align-items: flex-end;
}

.text-transform-90 {
    transform: rotate(-90deg);
}

.h-100 {
    height: 100%;
}

.w-10 {
    width: 10%;
}

.w-15 {
    width: 15%;
}

.w-20 {
    width: 20%;
}

.w-25 {
    width: 25%;
}

.w-30 {
    width: 30%;
}

.w-35 {
    width: 35%;
}

.w-40 {
    width: 40%;
}

.w-50 {
    width: 50%;
}

.w-60 {
    width: 60%;
}

.w-70 {
    width: 70%;
}

.w-80 {
    width: 80%;
}

.w-90 {
    width: 90%;
}

.w-100 {
    width: 100%;
}

.px-1 {
    padding: 0 var(--space-1);
}

.px-5 {
    padding: 0 var(--space-5);
}

.pt-1 {
    padding-top: var(--space-1);
}

.pt-2 {
    padding-top: var(--space-2);
}

.pt-3 {
    padding-top: var(--space-3);
}

.pt-5 {
    padding-top: var(--space-5);
}

.mt-1 {
    margin-top: var(--space-1);
}

.mt-2 {
    margin-top: var(--space-2);
}

.mt-4 {
    margin-top: var(--space-4);
}

.mt-5 {
    margin-top: var(--space-5);
}

.mb-2 {
    margin-bottom: var(--space-2);
}

.mb-5 {
    margin-bottom: var(--space-5);
}

.none {
    display: none;
}

#textCard {
    width: 220px;
    height: auto;
    background-color: rgba(38, 34, 98, .85);
    border: 1px solid var(--white);
    position: absolute;
    z-index: 999;
    padding: 2rem 1rem 1rem 1rem;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1.3;
}

#textCard .closeBtn {
    position: absolute;
    right: 4px;
    top: 4px;
    background-color: var(--white);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    line-height: 1.5rem;
    cursor: pointer;
}

#textCard span {
    font-size: 1.25rem;
    color: var(--red);
}

#textCard p {
    margin: 0;
}

@media (max-width: 991px) {
    h1 {
        font-size: 1.5rem;
    }

    @keyframes jump {
        0%, 100% {
            transform: translateY(0);
        }
        50% {
            transform: translateY(-2px);
        }
    }

    #topZone,
    #middleTopZone,
    #middleBottomZone,
    .container-bottom {
        padding: 0 var(--space-1);
    }

    .grass-bg {
        height: 14%;
    }

    .beige-bg.beige-bg-top {
        height: 4%;
        top: 13%;
    }

    h2 {
        font-size: 4vw;
        /* text-shadow: 2px 0 var(--h2-shadow-color); */
    }

    h2.h2-small {
        font-size: 3.6vw;
    }

    h2.h2-xs {
        font-size: 3.5vw;
    }

    h2.h2-xl {
        font-size: 5vw;
    }

    .top-1 {
        top: 0.25rem;
    }

    #textCard {
        position: fixed;
        width: 300px;
        left: calc(50% - 150px);
        top: 50%;
        transform: translateY(-50%);
    }

    #topZone .plant-img-top {
        width: 48%;
        top: -2%;
    }

    #topMiddleRightZone {
        padding: 0;
    }

    #topMiddleLeftZonePool {
        padding-bottom: 5rem;
    }

    #topLeftZone {
        margin-top: 0;
    }

    #topMiddleRightZoneReception {
        padding-top: 2rem;
    }

    #middleTopLeftZone {
        margin-top: -1rem;
    }

    #middleMiddleLeftZonePool {
        top: 20%;
    }

    #middleMiddleRightZoneBuffet {
        top: 50%;
        left: 20%;
    }

    #topLeftZone .top-left .text {
        top: 46%;
    }

    #middleLeftZoneMasterchef h2 {
        padding-top: 0.1rem;
    }

    #topMiddleLeftZonePhotoCorner h2 {
        top: 12%;
    }

    .container-top #middleTopZone .beige-bg {
        height: 100%;
    }

    #topMiddleLeftZone .top-umbrellas-obj {
        top: 22%;
        left: 10%;
    }
    
    #topMiddleLeftZone .bottom-umbrellas-obj {
        bottom: 2%;
        left: 10%;
    }

    #topMiddleRightZoneReception h2 {
        top: 64%;
    }

    #bottomZoneGrill {
        top: 14%;
        left: 76%;
    }

    #bottomZoneBar {
        top: 34%;
    }
}

@media (min-width: 768px) {
    .w-md-10 {
        width: 10%;
    }
    
    .w-md-15 {
        width: 15%;
    }
    
    .w-md-20 {
        width: 20%;
    }
    
    .w-md-25 {
        width: 25%;
    }
    
    .w-md-30 {
        width: 30%;
    }
    
    .w-md-40 {
        width: 40%;
    }
    
    .w-md-50 {
        width: 50%;
    }
    
    .w-md-60 {
        width: 60%;
    }
    
    .w-md-70 {
        width: 70%;
    }
    
    .w-md-80 {
        width: 80%;
    }
    
    .w-md-90 {
        width: 90%;
    }
    
    .w-md-100 {
        width: 100%;
    }

    .px-md-1 {
        padding: 0 var(--space-1);
    }
    
    .px-md-5 {
        padding: 0 var(--space-5);
    }
    
    .pt-md-2 {
        padding-top: var(--space-2);
    }
    
    .pt-md-3 {
        padding-top: var(--space-3);
    }
    
    .pt-md-5 {
        padding-top: var(--space-5);
    }
    
    .mt-md-1 {
        margin-top: var(--space-1);
    }
    
    .mt-md-2 {
        margin-top: var(--space-2);
    }
    
    .mt-md-5 {
        margin-top: var(--space-5);
    }
    
    .mb-md-5 {
        margin-bottom: var(--space-5);
    }

    .md-block {
        display: block;
    }
}

@media (min-width: 991px) {
    .w-lg-10 {
        width: 10%;
    }
    
    .w-lg-15 {
        width: 15%;
    }
    
    .w-lg-20 {
        width: 20%;
    }
    
    .w-lg-25 {
        width: 25%;
    }
    
    .w-lg-30 {
        width: 30%;
    }
    
    .w-lg-40 {
        width: 40%;
    }
    
    .w-lg-50 {
        width: 50%;
    }
    
    .w-lg-60 {
        width: 60%;
    }
    
    .w-lg-70 {
        width: 70%;
    }
    
    .w-lg-80 {
        width: 80%;
    }
    
    .w-lg-90 {
        width: 90%;
    }
    
    .w-lg-100 {
        width: 100%;
    }

    .px-lg-1 {
        padding: 0 var(--space-1);
    }
    
    .px-lg-5 {
        padding: 0 var(--space-5);
    }
    
    .pt-lg-2 {
        padding-top: var(--space-2);
    }
    
    .pt-lg-3 {
        padding-top: var(--space-3);
    }
    
    .pt-lg-5 {
        padding-top: var(--space-5);
    }
    
    .mt-lg-1 {
        margin-top: var(--space-1);
    }
    
    .mt-lg-2 {
        margin-top: var(--space-2);
    }
    
    .mt-lg-5 {
        margin-top: var(--space-5);
    }
    
    .mb-lg-5 {
        margin-bottom: var(--space-5);
    }

    .lg-block {
        display: block;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    h2 {
        font-size: 3.6vw;
    }
    h2.h2-xs {
        font-size: 3vw;
    }
    #topZone .plant-img-top {
        width: 48%;
        top: -3%;
        left: 10%;
    }
    #middleBottomZone {
        padding: var(--space-5) var(--space-1);
    }
    #middleTopLeftZone .plant-img {
        margin-top: 30%;
    }
}

#tapad_url {
    display: none;
}

@media (max-width: 768px) {
    body {
        padding: 0;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .welcome-area img, .carousel img, .photo-corner img,
    .rotisserie-area img, .rotisserie-area-2 img, .food-area img,
    .pasta-bar img, .pasta-bar-2 img, .open-bar-area img, 
    .open-bar-area-2 img, .open-bar-area-3 img {
        width: 50px;
    }

    .welcome-area h2, .time-travel h2, .carousel h2, 
    .photo-corner h2, .pasta-bar h2, .pasta-bar-2 h2, 
    .rotisserie-area h2, .rotisserie-area-2 h2, .food-area h2, 
    .thirty-years h2, .open-bar-area h2, .open-bar-area-2 h2, 
    .open-bar-area-3 h2, .concert-area h2, .event-area h2, .toilet-area h2 {
        font-size: .6rem;
    }

    .rotisserie-area, .pasta-bar, 
    .rotisserie-area-2, .open-bar-area-2 {
        left: 0;
    }

    .open-bar-area {
        right: 20%;
    }

    .food-area {
        right: 3%;
    }

    .pasta-bar-2 {
        right: 16%;
    }

    .central-area h2,
    .lounge-area h2 {
        font-size: 1.9rem;
    }

    .time-travel img {
        width: 60px;
    }

    .welcome-area {
        left: 3%;
    }

    .time-travel {
        left: 28%;
        top: 27.5%;
    }

    .carousel {
        left: 64%;
    }

    .event-area {
        top: 69%;
    }

    .concert-area {
        top: 38%;
    }

    .logo-protv-a img, .logo-protv-b img {
        width: 75px;
    }

    .toilet-area {
        bottom: 1%;
    }

    .toilet-area img {
        width: 100%;
        max-width: 75px;
    }

}