* {
    box-sizing: border-box;
}

html,
body {
    padding: 0;
    margin: 0;
    height: 100dvh;
    overflow: hidden;
}

.nt-wrapper {

    width: 100dvw;
    height: 100dvh;
    background-color: #000000;

    display: flex;
    justify-content: center;
    align-items: center;
}

.nt-progress-bar-cont {
    width: 45%;
    max-width: 250px;
    height: 7px;
    /* border : 1px solid red; */
    position: relative;
}

.nt-progress-bar {

    width: 100%;
    height: 100%;
    border: 1px solid #333;
    border-radius: 3px;
    overflow: hidden;
    position: absolute;
}

.nt-progress {
    width: 1%;
    height: 100%;
    background-color: white;
    position: absolute;
}

.nt-ad-container {

    width: auto;
    height: auto;
    overflow: hidden;
    background-color: #f9f9fa;
    position: absolute;
    display: none;
    perspective: 1500px;

}


.nt-ad-container * {
    width: 100%;
    height: 100%;
    position: absolute;
    pointer-events: none;

}

.border {
    border: 1px solid #000;
    z-index: 999;
    pointer-events: none;
}

.hs {
    /* background-color: #ff000090; */
    pointer-events: all;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.main {

    transform-style: preserve-3d;
}

.mainfront,
.mainback {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.mainback {
    transform: rotateY(180deg);
}

.hss-spot {
    pointer-events: all;
    /* background-color: #ff000050; */
    aspect-ratio: 1/1.5;
    width: 37%;
    height: auto;
    transform: translateX(-50%)translateY(-50%);
    z-index: 1;
}

.hss-back {
    pointer-events: all;
    /* background-color: #ff000050; */
    aspect-ratio: 1/1;
    width: 21%;
    height: auto;
    left: 0%;
    top: 0%;
    display: none;
}

.close-btn {
    display: none;
    /* comment this out on production */
    position: absolute;
    width: 20px;
    height: 20px;
    top: 5px;
    right: 5px;
    color: #fff;
    border: 1px #fff solid;
    background-color: #000000;
    border-radius: 10px;
    text-align: center;
    pointer-events: all;
    line-height: 17px;
}

/* generate your sprite here: https://assets.nativetouch.io/test/spritegen/index.html */
.back,
.card1,
.card2,
.card3,
.card4,
.copy,
.cta,
.find,
.logo,
.mapbg,
.spot1,
.spot2,
.spot3,
.spot4,
.tap {
    max-width: 100%;
    background-size: 100%;
    background-image: url('images/sprite.png');
}

.back {
    background-position: 0 0.00%;
    background-size: 100%;
}

.card1 {
    background-position: 0 7.14%;
    background-size: 100%;
}

.card2 {
    background-position: 0 14.29%;
    background-size: 100%;
}

.card3 {
    background-position: 0 21.43%;
    background-size: 100%;
}

.card4 {
    background-position: 0 28.57%;
    background-size: 100%;
}

.copy {
    background-position: 0 35.71%;
    background-size: 100%;
}

.cta {
    background-position: 0 42.86%;
    background-size: 100%;
}

.find {
    background-position: 0 50.00%;
    background-size: 100%;
}

.logo {
    background-position: 0 57.14%;
    background-size: 100%;
}

.mapbg {
    background-position: 0 64.29%;
    background-size: 100%;
}

.spot1 {
    background-position: 0 71.43%;
    background-size: 100%;
}

.spot2 {
    background-position: 0 78.57%;
    background-size: 100%;
}

.spot3 {
    background-position: 0 85.71%;
    background-size: 100%;
}

.spot4 {
    background-position: 0 92.86%;
    background-size: 100%;
}

.tap {
    background-position: 0 100.00%;
    background-size: 100%;
}

.hs-find {
    /* background-color: #ff000090; */
    width: 50%;
    left: 26%;
    height: 12%;
    bottom: 0%;
}

.hs-close {
    /* background-color: #ff000090; */
    aspect-ratio: 1/1;
    width: 12%;
    height: auto;
    top: 24%;
    left: 86%;

}

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

mapcomponent-nt {
    /* display: none; */
    top: 28%;
    aspect-ratio: 4 / 6;
    height: 57% !important;
    width: auto !important;
    left: 50%;
    transform: translateX(-50%);
    pointer-events: all !important;

}

.near {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 0.8rem;
    color: #000;
    top: 25%;
    left: 15%;
}