@import url(https://fonts.cdnfonts.com/css/sf-ui-display);

/*
    font-family: 'SF UI Display', sans-serif;
*/


/* general */

html {
    height: 100%;
    position: relative;
    overflow-x: hidden;
}
body {
    position: relative;
    height: 100%;
    color: #ffffff;
    background-color: #000000;
    font-size: 16px;
    line-height: 1.4;
    font-family: 'SF UI Display', sans-serif;
    overflow-x: hidden;
    margin: 0;
}
.container {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
    padding: 0 16px;
    position: relative;
    z-index: 9;
}
.container-main {
    padding: 0;
    max-width: 420px;
    width: calc(100% - 80px);
}
.btn {
    position: relative;
    font-family: 'SF UI Display', sans-serif;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #4793FF;
    color: #fff;
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
    line-height: 1.2;
    /* width: 100%; */
    min-height: 44px;
    box-sizing: border-box;
    border: none;
    padding: 10px 30px;
    outline: 0;
    margin: 0 auto;
}

/* Preloader */

.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 12;
    display: flex;
    align-items: center;
    justify-content: center;
}
.preloader img {
    max-width: 100px;
    width: 100%;
    -webkit-animation: scale 2s linear;
    animation: scale 2s linear;
}
@-webkit-keyframes scale {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.2);
    }
}
@keyframes scale {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.2);
    }
}

/* Intro */

.intro {
    background-color: rgba(0, 0, 0, 0.3);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 11;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding-bottom: 100px;
}
.intro .title {
    color: #fff;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 30px;
}

/* Header */

.block-header {
    padding: 6px 0;
}
.block-header__main {
    position: relative;
}
.block-header__main .camera {
    right: 1px;
    top: 5px;
    position: absolute;
}

/* Content */

.block-images {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}
.block-images::after {
    content: '';
    background: linear-gradient(180deg, rgba(0, 0, 0, 7e-05) 0%, rgba(0, 0, 0, 0.7) 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.block-images video {
    display: none;
    max-width: 600px;
    width: 100%;
    height: 100vh;
    height: 100svh;
    height: 100dvh;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top;
    margin: 0 auto;
    border-radius: 0 0 10px 10px;
}
.block-images video.active {
    display: block;
}
.block-images.blur {
    -webkit-filter: blur(22.5px);
    filter: blur(22.5px);
}
.block-layout {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.block-layout__main {
    position: relative;
    height: inherit;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow-y: auto;
    overflow-x: hidden;
}

/* Step */

.step-content {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 25vh;
    /* position: relative; */
    /* z-index: 10; */
}
.step {
    position: relative;
    z-index: 99;
    display: none;
    background: #ffffff;
    border-radius: 12px;
    padding: 40px;
    -webkit-animation: fade-in-bottom 0.4s linear .2s forwards;
    animation: fade-in-bottom 0.4s linear .2s forwards;
    opacity: 0;
}
.step.active {
    display: block;
}
@-webkit-keyframes fade-in-bottom {
    0% {
        transform: translateY(50px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
@keyframes fade-in-bottom {
    0% {
        transform: translateY(50px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
.step-final {
    background: transparent;
    border-radius: 0;
    padding: 0;
    text-align: center;
}
.step-final .icon {
    font-size: 100px;
}
.step-final .title {
    color: #FF3F70;
    font-size: 32px;
    font-weight: 800;
    line-height: normal;
    margin-bottom: 15px;
}
.step-final p {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 25px;
    line-height: normal;
}
.stories-btn {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 50%;
    cursor: pointer;
    z-index: 9;
    pointer-events: none;
}
.prev--btn {
    left: 0;
}
.next--btn {
    right: 0;
}
@media (max-width: 768px) {
    .step-title__big {
        font-size: 26px;
    }
    .block-header__text {
        font-size: 12px;
    }
}

/* Slider */

.noUi-horizontal {
    background-color: #ccc;
    border: none;
    box-shadow: none;
    height: 8px;
}
.noUi-connects {
    border-radius: 4px;
}
.noUi-connect {
    background: linear-gradient(to right, #BB00B1, #F1000F);
    border-radius: 4px;
}
.noUi-horizontal .noUi-handle {
    -webkit-animation: slide-handle 1s 0.8s both;
    animation: slide-handle 1s 0.8s both;
    background: none;
    border: none;
    box-shadow: none;
    cursor: pointer;
    height: 42px;
    width: 42px;
    right: -21px;
    top: -17px;
}
.noUi-horizontal .noUi-handle::before,
.noUi-horizontal .noUi-handle::after {
    display: none;
}
.noUi-connects::after {
    -webkit-animation: slide-connects 1s 0.8s both;
    animation: slide-connects 1s 0.8s both;
    background: linear-gradient(to right, #BB00B1, #F1000F);
    display: block;
    content: '';
    height: 100%;
    width: 50px;
    transform: translateX(-50px);
}
.noUi-touch-area::after {
    display: block;
    font-size: 36px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#slider1 .noUi-touch-area::after,
#slider1+.emoji-icon .core::after {
    content: '👅';
}
#slider2 .noUi-touch-area::after,
#slider2+.emoji-icon .core::after {
    content: '🍌';
}
#slider3 .noUi-touch-area::after,
#slider3+.emoji-icon .core::after {
    content: '🍆';
}
#slider4 .noUi-touch-area::after,
#slider4+.emoji-icon .core::after {
    content: '🍑';
}
#slider5 .noUi-touch-area::after,
#slider5+.emoji-icon .core::after {
    content: '🤤';
}
#slider6 .noUi-touch-area::after,
#slider6+.emoji-icon .core::after {
    content: '💦';
}
.emoji-slider-wrap {
    position: relative;
}
.emoji-icon {
    font-size: 144px;
    line-height: 1;
    position: absolute;
    top: -172px;
    left: -72px;
    right: 72px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s;
}
.emoji-icon .shell {
    display: block;
}
.emoji-icon .core {
    -webkit-animation: none;
    animation: none;
    display: inline-block;
    transform: scale(0.25);
    transform-origin: center bottom;
}
.step.complete {
    pointer-events: none;
}
.step.complete .shell {
    -webkit-animation: slide-out-top 2s 0.2s ease-in-out both;
    animation: slide-out-top 2s 0.2s ease-in-out both;
}
.step.passed .noUi-horizontal .noUi-handle,
.step.passed .noUi-connects::after {
    -webkit-animation: none;
    animation: none;
}
@-webkit-keyframes slide-handle {
    0% {
        transform: translateX(0);
    }
    45% {
        transform: translateX(50px);
    }
    55% {
        transform: translateX(50px);
    }
    100% {
        transform: translateX(0);
    }
}
@keyframes slide-handle {
    0% {
        transform: translateX(0);
    }
    45% {
        transform: translateX(50px);
    }
    55% {
        transform: translateX(50px);
    }
    100% {
        transform: translateX(0);
    }
}
@-webkit-keyframes slide-connects {
    0% {
        transform: translateX(-50px);
    }
    45% {
        transform: translateX(0);
    }
    55% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50px);
    }
}
@keyframes slide-connects {
    0% {
        transform: translateX(-50px);
    }
    45% {
        transform: translateX(0);
    }
    55% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50px);
    }
}
@-webkit-keyframes slide-out-top {
    0% {
        transform: translateY(0);
        opacity: 1;
    }
    15% {
        transform: translateY(3px);
        opacity: 1;
    }
    100% {
        transform: translateY(-75vh);
        opacity: 0;
    }
}
@keyframes slide-out-top {
    0% {
        transform: translateY(0);
        opacity: 1;
    }
    15% {
        transform: translateY(3px);
        opacity: 1;
    }
    100% {
        transform: translateY(-75vh);
        opacity: 0;
    }
}

/* Footer */

.footer {
    padding: 29px 0 20px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
    pointer-events: none;
}
.user-info {
    display: none;
    position: relative;
    font-size: 14px;
    letter-spacing: 0.015em;
    padding-bottom: 22px;
}
.user-info.active {
    display: block;
}
.user-info .account {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
    font-weight: 600;
}
.user-info .ava {
    border-radius: 50%;
    display: block;
    flex-shrink: 0;
}
.user-info .name {
    padding: 0 5px 0 9px;
}
.user-info .follow {
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.40);
    margin-left: 14px;
    padding: 2px 8px;
    cursor: default;
}
.user-info .music {
    display: flex;
    align-items: center;
    margin-top: 14px;
}
.user-info .music img {
    margin: 0 10px 0 2px;
}
.user-info .sidebar {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: -12px;
    bottom: 13px;
    width: 50px;
}
.user-info .sidebar .item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 11px 0;
    font-size: 12px;
}
.user-info .sidebar .item img {
    margin-bottom: 8px;
}
.pagination-list {
    display: flex;
    margin: 0 -16px 11px;
    width: calc(100% + 32px);
}
.pagination-list__item {
    height: 2px;
    width: calc(100% / 7);
    background-color: rgba(255, 255, 255, 0.35);
}
.pagination-list__item.active::before {
    content: '';
    height: 100%;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.75);
    display: block;
}
.pagination-list__item.complete::before {
    content: '';
    height: 100%;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.75);
    display: block;
}
.bottom-bar {
    display: flex;
    justify-content: center;
}