/*************************************************
                TKU THEME PARK ENTRANCE
*************************************************/

.themepark-entrance{
    position:relative;
    width:100%;
    height:100vh;
    min-height:700px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}
.entrance-background{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-color:#000;
    z-index:1;
}
.entrance-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,.75));
    z-index:2;
}
.gatekeeper-box{
    position:relative;
    z-index:3;
    width:min(520px,90%);
    padding:35px;
    text-align:center;
    color:white;
    background:rgba(0,0,0,.65);
    backdrop-filter:blur(8px);
    border:2px solid #FFD700;
    border-radius:35px;
    box-shadow:0 0 40px rgba(255,215,0,.4);
    animation:entranceFade 1s ease;
}
.gatekeeper-box h1{
    font-family:'Tangerine',cursive;
    font-size:5rem;
    margin:0 0 10px;
    color:#fff;
    text-shadow:0 0 15px #A855F7,0 0 30px #6A0DAD;
}
.gatekeeper-box h2{
    color:#FFD700;
    margin-bottom:15px;
}
.gatekeeper-box p{
    color:#ddd;
    font-size:1.1rem;
    line-height:1.5;
}
.question-card{
    margin-top:25px;
    padding:25px;
    background:rgba(20,0,40,.75);
    border-radius:25px;
    border:1px solid #6A0DAD;
}
.question-card h3{
    color:white;
    font-size:1.2rem;
    margin-bottom:20px;
}
.question-card input{
    width:80%;
    padding:12px 18px;
    border-radius:25px;
    border:none;
    outline:none;
    font-size:1rem;
    text-align:center;
}
.question-card button,
.park-pass button{
    margin-top:20px;
    padding:12px 30px;
    border:none;
    border-radius:30px;
    background:#0FFF50;
    color:#111;
    font-weight:bold;
    cursor:pointer;
    transition:.3s;
}
.question-card button:hover,
.park-pass button:hover{
    transform:scale(1.05);
    box-shadow:0 0 20px #0FFF50;
}
#passMessage{
    margin-top:15px;
    color:#FFD700;
    font-weight:bold;
}
.park-pass{
    margin-top:25px;
    animation:ticketReveal .8s ease;
}
.ticket{
    margin:20px auto;
    padding:20px;
    width:260px;
    background:#fff;
    color:#222;
    border-radius:15px;
    border:4px dashed #FFD700;
    font-weight:bold;
    box-shadow:0 0 25px rgba(255,215,0,.7);
}
.hidden{
    display:none;
}
@keyframes entranceFade{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
@keyframes ticketReveal{
    from{
        opacity:0;
        transform:scale(.7);
    }
    to{
        opacity:1;
        transform:scale(1);
    }
}

/*************************************************
                TKU CENTRAL PLAZA
*************************************************/

.park-plaza{
    position:relative;
    width:min(1500px,95%);
    min-height:1400px;
    margin:auto;
    overflow:hidden;
    color:white;
    border-radius:50px;
    background:linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,.7));
    background-size:cover;
    background-position:center;
    border:3px solid #6A0DAD;
    box-shadow:0 0 50px rgba(106,13,173,.5);
}

.plaza-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.25);
    z-index:1;
}

.plaza-header{
    position:relative;
    z-index:3;
    text-align:center;
    padding-top:40px;
}

.plaza-header h1{
    font-family:'Tangerine',cursive;
    font-size:5rem;
    margin:0;
    color:#FFD700;
    text-shadow:0 0 20px #A855F7;
}

.plaza-header p{
    color:#d62828;
    font-size:1.2rem;
}

/*************************************************
                PARK GUIDE MODAL
*************************************************/

.park-guide{
    position:absolute;
    top:40px;
    right:40px;
    z-index:10;
}

.guide-button{
    padding:12px 30px;
    border-radius:30px;
    border:2px solid #FFD700;
    background:rgba(0,0,0,.75);
    color:#FFD700;
    font-size:1rem;
    font-weight:bold;
    cursor:pointer;
    transition:.3s;
}

.guide-button:hover{
    background:#6A0DAD;
    color:white;
    box-shadow:0 0 25px #FFD700;
    transform:scale(1.05);
}

.guide-modal{
    position:fixed;
    top:180px;
    left:0;
    right:0;
    bottom:0;
    display:flex;
    justify-content:center;
    align-items:flex-start;
    padding:20px;
    background:rgba(0,0,0,.75);
    z-index:9999;
    overflow-y:auto;
}

.guide-content{
    width:min(700px,90%);
    padding:35px;
    background:
    linear-gradient(
        180deg,
        rgba(40,10,80,.95),
        rgba(5,0,15,.95)
    );
    border:3px solid #FFD700;
    border-radius:35px;
    color:white;
    text-align:center;
    box-shadow:0 0 50px rgba(168,85,247,.6);
    position:relative;
}

.guide-content h2{
    color:#FFD700;
    font-family:'Tangerine',cursive;
    font-size:3.5rem;
    margin:0 0 20px;
}

.guide-content p{
    color:#ddd;
    line-height:1.6;
    text-align:left;
    max-width:850px;
    margin:18px auto;
}

.guide-footer{
    margin-top:25px;
    color:#0FFF50 !important;
    font-weight:bold;
    text-align:center !important;
}

.guide-close{
    position:absolute;
    top:15px;
    right:20px;
    font-size:1.5rem;
    cursor:pointer;
    color:#FFD700;
}

.guide-close:hover{
    color:#0FFF50;
}

.hidden{
    display:none;
}

/*************************************************
                PATHWAYS
*************************************************/

.zone-map{
    position:relative;
    height:1200px;
    z-index:2;
}

/*************************************************
                PARK WALKING PATHS
*************************************************/

.zone-map:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:
    radial-gradient(
        ellipse at center,
        transparent 0,
        transparent 45%,
        rgba(255,215,0,.18) 46%,
        transparent 47%
    );
}

.zone-map{
    position:relative;
}

.zone-map:after{
    content:"⛲";
    position:absolute;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%);
    font-size:9rem;
    z-index:3;
    animation:fountainGlow 2s infinite alternate;
}

/*************************************************
                ZONE BUILDINGS
*************************************************/

.zone-card{
    position:absolute;
    width:260px;
    text-align:center;
    text-decoration:none;
    color:white;
    z-index:3;
    transition:.35s;
}

.zone-card:hover{
    transform:scale(1.08);
}

.zone-card img{
    width:260px;
    height:180px;
    object-fit:contain;
    filter:drop-shadow(0 0 25px rgba(255,215,0,.6));
}

.zone-card h2{
    margin:10px auto;
    width:max-content;
    max-width:260px;
    padding:8px 18px;
    background:rgba(0,0,0,.75);
    border:2px solid #FFD700;
    border-radius:25px;
    color:#FFD700;
    font-size:1.4rem;
}

/*************************************************
                ZONE POSITIONS
*************************************************/

.food-zone{
    top:120px;
    left:50%;
    transform:translateX(-50%);
}

.food-zone:hover{
    transform:translateX(-50%) scale(1.13);
}

.music-zone{
    top:420px;
    left:80px;
}

.mystery-zone{
    top:420px;
    right:80px;
}

.seasonal-zone{
    bottom:140px;
    right:320px;
    left:auto;
}

.challenge-zone{
    bottom:120px;
    left:220px;
    right:auto;
}

/*************************************************
                WALKING TRAILS
*************************************************/
/*************************************************
                WALKING TRAILS
*************************************************/

.food-zone:after,
.music-zone:after,
.mystery-zone:after,
.challenge-zone:after,
.seasonal-zone:after{
    content:"";
    position:absolute;
    width:300px;
    height:180px;
    border:0;
    border-radius:50%;
    border-top:5px dashed rgba(255,215,0,.35);
    z-index:0;
}

.food-zone:after{
    left:50%;
    bottom:-180px;
    border-top:none;
    border-left:5px dashed rgba(255,215,0,.35);
    transform:translateX(-50%);
}

.music-zone:after{
    right:-290px;
    top:50%;
    transform:rotate(5deg);
}

.mystery-zone:after{
    left:-280px;
    top:50%;
    transform:rotate(-5deg);
}

.challenge-zone:after{
    right:-210px;
    top:-50%;
    transform:rotate(-40deg);
}

.seasonal-zone:after{
    left:-160px;
    top:-50%;
    transform:rotate(40deg);
}
/*************************************************
                CENTER PLAZA
*************************************************/

.zone-map:after{
    content:"⛲";
    position:absolute;
    left:50%;
    top:55%;
    transform:translate(-50%,-50%);
    font-size:12rem;
    z-index:2;
    animation:fountainGlow 2s infinite alternate;
}

@keyframes fountainGlow{
    from{
        filter:drop-shadow(0 0 5px #0FFF50);
    }
    to{
        filter:drop-shadow(0 0 30px #0FFF50);
    }
}

/*************************************************
                PARK ZONES
*************************************************/

.park-zone-page{
    position:relative;
    min-height:100vh;
    padding:50px 5% 100px;
    overflow:hidden;
    color:white;
    isolation:isolate;
}

.zone-background{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    z-index:-2;
}

.park-zone-page:after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.5);
    z-index:-1;
}

.zone-header{
    position:relative;
    z-index:1;
    text-align:center;
}

.zone-header h1{
    font-family:'Tangerine',cursive;
    font-size:5rem;
    margin:0;
    color:#FFD700;
    text-shadow:0 0 20px #A855F7;
}

.zone-header p{
    color:#ddd;
    font-size:1.2rem;
}

.zone-attractions{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:center;
    align-items:stretch;
    flex-wrap:wrap;
    gap:45px;
    margin-top:70px;
}

.zone-attraction{
    width:300px;
    min-height:420px;
    padding:25px;
    text-align:center;
    background:rgba(40,15,0,.9);
    border:3px solid #FFD700;
    border-radius:35px;
    box-shadow:0 0 30px rgba(255,165,0,.4);
    transition:.35s;
}

.zone-attraction:hover{
    transform:translateY(-12px) scale(1.03);
    border-color:#0FFF50;
    box-shadow:0 0 40px rgba(15,255,80,.5);
}

.zone-attraction img{
    width:230px;
    height:170px;
    object-fit:contain;
}

.zone-attraction h2{
    color:#FFD700;
    margin:15px 0;
}

.zone-attraction p{
    color:#ddd;
    line-height:1.5;
}

.zone-attraction a,
.zone-attraction button{
    display:inline-block;
    margin-top:20px;
    padding:10px 30px;
    border:none;
    border-radius:25px;
    background:#0FFF50;
    color:#111;
    font-weight:bold;
    text-decoration:none;
}

.lock{
    font-size:5rem;
    margin:35px 0;
}

.locked{
    opacity:.7;
}

.locked button{
    background:#555;
    color:white;
}

.music-zone-page .zone-attraction{
    background:rgba(10,0,40,.9);
    box-shadow:0 0 30px rgba(106,13,173,.5);
}

/*************************************************
                IPAD AIR LANDSCAPE
                1180px x 820px
*************************************************/

@media (min-width:1000px) and (max-width:1300px) and (orientation:landscape){
    /***************
        ENTRANCE
    ***************/
    .themepark-entrance{
        height:80dvh;
        min-height:0;
        max-height:100dvh;
        overflow:hidden;
    }

    .entrance-background{
        position:absolute;
        inset:0;
        background-size:cover;
        background-position:center;
    }

    .gatekeeper-box{
        width:400px;
        max-height:85dvh;
        padding:20px;
        box-sizing:border-box;
    }

    .gatekeeper-box h1{
        font-size:3.2rem;
        margin:0 0 5px;
    }

    .gatekeeper-box h2{
        font-size:1.2rem;
        margin:5px 0 10px;
    }

    .gatekeeper-box p{
        font-size:.85rem;
        line-height:1.25;
        margin:8px 0;
    }

    .question-card{
        margin-top:12px;
        padding:12px;
    }

    .question-card h3{
        font-size:.95rem;
        margin-bottom:8px;
    }

    .question-card input{
        width:90%;
        padding:8px;
        font-size:.85rem;
    }

    .question-card button,
    .park-pass button{
        margin-top:10px;
        padding:8px 22px;
    }

    .park-pass{
        margin-top:10px;
    }

    .ticket{
        width:200px;
        padding:10px;
        margin:10px auto;
    }

    /***************
        CENTRAL PLAZA
    ***************/

    .park-plaza{
        width:96%;
        min-height:1050px;
        border-radius:40px;
    }

    .plaza-header{
        padding-top:25px;
    }

    .plaza-header h1{
        font-size:3rem !important;
    }

    .plaza-header p{
        width:70%;
        margin:auto;
        font-size:1rem;
    }

    /***************
        GUIDE BUTTON
    ***************/

    .park-guide{
        top:25px;
        right:25px;
    }

    .guide-button{
        padding:8px 12px;
        font-size:.7rem;
    }

    /***************
        MAP
    ***************/

    .zone-map{
        height:950px;
    }

    /***************
        ZONE CARDS
    ***************/

    .zone-card{
        width:150px;
    }

    .zone-card img{
        width:150px;
        height:auto;
    }

    .zone-card h2{
        font-size:0.7rem;
        max-width:140px;
        margin-top: 0;
    }

    /***************
        ZONE POSITIONS
    ***************/

    .food-zone{
        top:80px;
        left:50%;
    }

    .music-zone{
        top:330px;
        left:120px;
    }

    .mystery-zone{
        top:330px;
        right:140px;
    }

    .challenge-zone{
        top:auto !important;
        bottom:150px !important;
        left:220px;
    }

    .seasonal-zone{
        top:auto !important;
        bottom:120px !important;
        right:270px;
    }

    /***************
        CENTER FOUNTAIN
    ***************/

    .zone-map:after{
        font-size:7rem;
        top:52%;
    }

    /***************
        WALKING PATHS
    ***************/

    .food-zone:after,
    .music-zone:after,
    .mystery-zone:after,
    .seasonal-zone:after,
    .challenge-zone:after{
        opacity:.5;
        width:200px;
    }

    .food-zone:after{
        height:180px;
        bottom:-180px;
        left:100px;
    }

    .music-zone:after{
        height:140px;
        right:-190px;
        top:50%;
        transform:rotate(12deg);
    }

    .mystery-zone:after{
        height:140px;
        left:-200px;
        top:50%;
        transform:rotate(-10deg);
    }

    .challenge-zone:after{
        height:140px;
        right:-170px;
        top:-120px;
        transform:rotate(-40deg);
    }

    .seasonal-zone:after{
        height:140px;
        left:-150px;
        top:-120px;
        transform:rotate(45deg);
    }

    /***************
        GUIDE MODAL
    ***************/

    .guide-modal{
        top:120px;
    }

    .guide-content{
        width:85%;
        padding:25px;
    }

    .guide-content h2{
        font-size:3rem;
    }

    .park-zone-page{
        padding:35px 4% 70px;
    }

    .zone-header h1{
        font-size:3rem !important;
    }

    .zone-attractions{
        gap:25px;
        margin-top:45px;
    }

    .zone-attraction{
        width:230px;
        min-height:330px;
        padding:18px;
        border-radius:25px;
    }

    .zone-attraction img{
        width:170px;
        height:130px;
    }

    .zone-attraction h2{
        font-size:1rem;
        margin:10px 0;
    }

    .zone-attraction p{
        font-size:.9rem;
        line-height:1.3;
    }

    .zone-attraction a,
    .zone-attraction button{
        margin-top:15px;
        padding:8px 22px;
        font-size:.9rem;
    }

    .lock{
        font-size:4rem;
        margin:25px 0;
    }
}

/*************************************************
        TABLET PORTRAIT (iPAD)
*************************************************/

@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){
    .themepark-entrance{
        height:85dvh;
        min-height:0;
        overflow:hidden;
    }

    .entrance-background{
        background-size:cover;
        background-position:center;
    }

    .gatekeeper-box{
        width:400px;
        max-height:82dvh;
        padding:22px;
    }

    .gatekeeper-box h1{
        font-size:3rem;
    }

    .gatekeeper-box h2{
        font-size:1.5rem;
    }

    .gatekeeper-box p{
        font-size:1.1rem;
    }

    .question-card{
        padding:20px;
    }

    .question-card h3{
        font-size:1.1rem;
    }

    .question-card input{
        width:90%;
        padding:7px;
        font-size:1.1rem;
    }

    .question-card button,
    .park-pass button{
        margin-top:18px;
        padding:8px 22px;
    }

    .park-pass{
        margin-top:8px;
    }

    .ticket{
        width:180px;
        padding:18px;
        margin:8px auto;
    }

    /***************
        CENTRAL PLAZA
    ***************/

    .park-plaza{
        width:94%;
        min-height:900px;
        border-radius:35px;
    }

    .plaza-header{
        padding-top:30px;
    }

    .plaza-header h1{
        font-size:3rem !important;
    }

    .plaza-header p{
        font-size:1rem;
    }

    /***************
        GUIDE BUTTON
    ***************/

    .park-guide{
        top:15px;
        right:20px;
    }

    .guide-button{
        padding:7px 10px;
        font-size:.65rem;
    }

    /***************
        MAP
    ***************/
    .zone-map{
        height:900px;
    }

    /***************
        ZONE CARDS
    ***************/

    .zone-card{
        width:180px;
    }

    .zone-card img{
        width:160px;
        height:auto;
    }

    .zone-card h2{
        font-size:0.8rem;
        max-width:180px;
        margin-top:0;
    }


    /***************
        ZONE POSITIONS
    ***************/

    .food-zone{
        top:70px;
        left:50%;
    }

    .music-zone{
        top:300px;
        left:40px;
    }

    .mystery-zone{
        top:300px;
        right:30px;
    }
    .challenge-zone{
        top:auto !important;
        bottom:130px !important;
        left:100px;
    }

    .seasonal-zone{
        top:auto !important;
        bottom:120px !important;
        right:100px;
    }

    /***************
        CENTER FOUNTAIN
    ***************/

    .zone-map:after{
        font-size:8rem;
        top:52%;
    }

    /***************
        WALKING PATHS
    ***************/

    .food-zone:after,
    .music-zone:after,
    .mystery-zone:after,
    .seasonal-zone:after,
    .challenge-zone:after{
        opacity:.5;
        width:150px;
    }

    .food-zone:after{
        height:150px;
        bottom:-150px;
        left:100px;
    }

    .music-zone:after{
        height:120px;
        right:-100px;
        top:50%;
        transform:rotate(25deg);
    }

    .mystery-zone:after{
        height:120px;
        left:-100px;
        top:50%;
        transform:rotate(-10deg);
    }

    .challenge-zone:after{
        height:120px;
        right:-80px;
        top:-100px;
        transform:rotate(-35deg);
    }

    .seasonal-zone:after{
        height:120px;
        left:-80px;
        top:-70px;
        transform:rotate(45deg);
    }

    /***************
        GUIDE MODAL
    ***************/

    .guide-modal{
        top:100px;
    }

    .guide-content{
        width:88%;
        padding:20px;
    }

    .guide-content h2{
        font-size:2.5rem;
    }

    .park-zone-page{
        padding:35px 4% 70px;
    }

    .zone-header h1{
        font-size:4rem !important;
    }

    .zone-attractions{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:stretch;
        gap:25px;
        margin-top:40px;
    }

    .zone-attraction{
        width:300px;
        min-height:350px;
        padding:20px;
        border-radius:28px;
    }

    .zone-attraction img{
        width:180px;
        height:140px;
    }

    .zone-attraction h2{
        font-size:1.2rem;
        margin:12px 0;
    }

    .zone-attraction p{
        font-size:.95rem;
        line-height:1.4;
    }

    .zone-attraction a,
    .zone-attraction button{
        padding:9px 25px;
        margin-top:15px;
    }

    .lock{
        font-size:4rem;
        margin:25px 0;
    }
}

/*************************************************
MOBILE
*************************************************/

@media(max-width:768px){
    .themepark-entrance{
        height:auto;
        min-height:60vh;
    }

    .entrance-background{
        object-position:center;
    }

    .gatekeeper-box{
        padding:15px 10px;
    }

    .gatekeeper-box h1{
        font-size:2rem !important; 
    }

    .gatekeeper-box p{
        font-size:.7rem;
        padding:0 10px;
    }

    .question-card input{
        width:70%;
    }

    .question-card h3{
        font-size:0.9rem;
        margin-bottom:5px;
        margin-top: -10px;
    }

    .question-card input{
        width:70%;
        padding:8px 10px;
        border-radius:20px;
        font-size:0.7rem;
    }

    .question-card button,
    .park-pass button{
        margin-top:10px;
        padding:8px 20px;
        font-size:0.6rem;
    }

    .ticket{
        margin:20px auto;
        padding:20px;
        width:260px;
        font-size:0.9rem ;
    }
    
    .park-plaza{
        width:100%;
        min-height:100vh;
        border-radius:0;
        border:none;
        box-shadow:none;
        padding:15px;
    }

    .plaza-header{
        margin-bottom:0;
        margin-top: 20px;
    }

    .plaza-header h1{
        font-size:2rem !important;
        line-height:1;
    }

    .plaza-header p{
        width:75%;
        margin:5px auto 0;
        font-size:0.75rem;
        line-height:1.5;
    }

    .park-guide{
        top:5px;
        right:20px;
    }

    .park-guide .guide-button{
        padding:5px 10px;
        font-size:0.6rem;
    }

    .guide-content{
        padding:15px;
    }

    .guide-content h2{
        font-size:1.5rem !important;
    }

    .guide-content p{
        font-size:0.7rem;
    }

    .guide-close{
        top:5px;
        font-size:1rem;
    }

    .zone-map{
        position:relative;
        height:600px;
    }
    
    .zone-map:before,
    .park-plaza:before{
        display:none;
    }
    
    .zone-map:after{
        font-size:4.5rem;
        top:40% !important;
    }
    
    .zone-card{
        width:80px;
        display:flex;
        flex-direction:column;
        align-items:center;
    }
    
    .zone-card img{
        width:80px;
        height:auto;
    }
    
    .zone-card h2{
        margin-top:5px;
        padding:4px 10px;
        font-size:.6rem !important;
        text-align:center;
        box-sizing:border-box;
    }
    
    .food-zone{
        top:30px;
        left:50%;
        transform:translateX(-50%);
    }
    
    .music-zone{
        top:140px;
        left:20px;
    }
    
    .mystery-zone{
        top:100px;
        right:20px;
    }
    
    .challenge-zone{
        bottom:230px;
        left:40px;
    }
    
    .seasonal-zone{
        bottom:240px;
        right:40px;
    }

    /***************
        MOBILE PATHS
    ***************/

    .food-zone:after,
    .music-zone:after,
    .mystery-zone:after,
    .seasonal-zone:after,
    .challenge-zone:after{
        opacity:.45;
        width:90px;
        border-width:3px;
    }

    .food-zone:after{
        height:80px;
        left:49px;
        bottom:-80px;
    }

    .music-zone:after{
        width:80px;
        height:70px;
        right:-50px;
        top:70%;
        transform:rotate(10deg);
    }

    .mystery-zone:after{
        width:80px;
        height:70px;
        left:-60px;
        top:70%;
        transform:rotate(-35deg);
    }

    .challenge-zone:after{
        width:80px;
        height:70px;
        right:-65px;
        top:-40px;
        transform:rotate(-45deg);
    }

    .seasonal-zone:after{
        width:80px;
        height:70px;
        left:-65px;
        top:-15px;
        transform:rotate(25deg);
    }

    .park-zone-page{
        padding:20px 15px 40px;
    }

    .zone-header h1{
        font-size:2rem !important;
    }

    .zone-attractions{
        flex-direction:column;
        align-items:center;
        gap:12px;
        margin-top:15px;
    }

    .zone-attraction{
        width:70%;
        min-height:auto;
        padding:10px;
        border-radius:20px;
    }

    .zone-attraction img{
        width:130px;
        height:90px;
    }

    .zone-attraction h2{
        font-size:.95rem !important;
        margin:5px 0;
    }

    .zone-attraction img{
        width:150px;
        height:auto;
    }

    .zone-attraction p{
        font-size:.7rem;
        line-height:1.4;
    }

    .zone-attraction a,
    .zone-attraction button{
        margin-top:5px;
        padding:4px 25px;
        font-size:.7rem;
    }

    .lock{
        font-size:3.5rem;
        margin:20px 0;
    }
}
