* {
    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%);
}

.mainspot {
    perspective: 1500px;
}

.main,
.spotc {

    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%);
}

.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,
.design,
.logo,
.pulse,
.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.28%;
    background-size: 100%;
}

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

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

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

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

.design {
    background-position: 0 50.01%;
    background-size: 100%;
}

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

.pulse {
    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.72%;
    background-size: 100%;
}

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

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

.mainspot {
    mix-blend-mode: multiply;
}