*, :after, :before {
    box-sizing: inherit
}

body, html {
    height: 100%
}

html {
    box-sizing: border-box
}

body {
    line-height: 1;
    text-rendering: optimizeSpeed;
    -webkit-text-decoration-skip: objects;
    text-decoration-skip: objects;
    background-color: transparent;
    margin: 0;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent
}

h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
    margin: 0
}

p {
    margin: 0
}

picture {
    display: block
}

img {
    border: none
}

img, svg {
    vertical-align: middle
}

a {
    background-color: transparent;
    color: inherit;
    text-decoration: none
}

b, strong {
    font-weight: 700
}

em, i {
    font-style: italic
}

mark {
    background-color: transparent
}

:focus {
    outline: none
}

:root {
    --bg-color: #050505;
    --font-main-weight: 700;
    --font-main-style: italic;
    --font-main: "Roboto", sans-serif;
    --font-button-weight: 700;
    --font-button-style: italic
}

@keyframes blick {
    0% {
        transform: translateX(-100%)
    }
    to {
        transform: translateX(100%)
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 #a9ff3c
    }
}

.btn {
    align-items: center;
    border: 2px solid #a9ff3c;
    border-radius: 100px;
    color: #3d4147;
    cursor: pointer;
    display: inline-flex;
    font-family: var(--font-button);
    font-style: var(--font-button-style);
    font-weight: var(--font-button-weight);
    overflow: hidden;
    text-transform: uppercase;
    z-index: 1
}

.btn, .btn__text {
    position: relative
}

.btn__text {
    background-color: #a9ff3c;
    border-radius: 90px;
    display: inline-block;
    text-align: center;
    transition: box-shadow .3s
}

.btn__text:after {
    border: 2px solid #cdff68;
    border-radius: inherit
}

.btn:before, .btn__text:after {
    content: "";
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.btn:before {
    animation: blick 3s cubic-bezier(.19, 1, .22, 1) infinite;
    background-image: linear-gradient(-50deg, hsla(0, 0%, 100%, 0) 30%, hsla(0, 0%, 100%, .6) 45%, hsla(0, 0%, 100%, .6) 50%, hsla(0, 0%, 100%, 0) 65%);
    transform: translateX(-100%);
    z-index: 1
}

.body {
    background-color: var(--bg-color);
    color: #fff;
    font-family: var(--font-main);
    font-optical-sizing: var(--font-optical-sizing);
    font-style: var(--font-main-style);
    font-weight: var(--font-main-weight)
}

.body, .main {
    overflow: hidden
}

.main {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.top {
    top: 0
}

.bottom, .top {
    border: 1.92px solid #0097ff;
    box-shadow: .61px -6.973px 14.4px .6px rgba(0, 0, 40, .42);
    left: 0;
    position: absolute
}

.bottom {
    bottom: 0
}

.logo-wrap {
    z-index: 2
}

.logo {
    z-index: 1
}

.header {
    display: grid
}

.title {
    line-height: 1.2;
    text-align: center
}

.desc, .title {
    letter-spacing: .03em;
    text-transform: uppercase;
    z-index: 1
}

.desc__mark {
    color: #05d3ff
}

.cherry, .woman {
    position: absolute
}

.cherry {
    animation: levitation 4s linear infinite
}

.cube-lg {
    animation: levitationRevers 4s linear infinite;
    position: absolute
}

.cube-sm {
    animation: levitation 4s linear infinite;
    position: absolute
}

.coin-lg {
    animation: levitationRevers 4s linear infinite;
    position: absolute
}

.coin-sm {
    animation: levitation 4s linear infinite;
    position: absolute
}

.airplane {
    animation: levitationReversAir 8s linear infinite
}

.airplane, .chip {
    position: absolute
}

.chip {
    animation: levitationRevers 4s linear infinite
}

.chip-reverse {
    animation: levitation 4s linear infinite;
    position: absolute
}

.diamond {
    animation: levitationRevers 4s linear infinite;
    position: absolute
}

.button {
    z-index: 1
}

@keyframes levitation {
    0% {
        transform: translateZ(0) rotate(0deg)
    }
    25% {
        transform: translate3d(4%, 4%, 0) rotate(4deg)
    }
    50% {
        transform: translate3d(2%, 8%, 0) rotate(2deg)
    }
    75% {
        transform: translate3d(4%, 4%, 0) rotate(4deg)
    }
    to {
        transform: translateZ(0) rotate(0deg)
    }
}

@keyframes levitationRevers {
    0% {
        transform: translateZ(0) rotate(0deg)
    }
    25% {
        transform: translate3d(-4%, -4%, 0) rotate(4deg)
    }
    50% {
        transform: translate3d(-2%, -8%, 0) rotate(2deg)
    }
    75% {
        transform: translate3d(-4%, -4%, 0) rotate(4deg)
    }
    to {
        transform: translateZ(0) rotate(0deg)
    }
}

@keyframes levitationReversAir {
    0% {
        transform: translateZ(0) rotate(0deg)
    }
    25% {
        transform: translate3d(-2%, -2%, 0) rotate(2deg)
    }
    50% {
        transform: translate3d(-1%, -4%, 0) rotate(1deg)
    }
    75% {
        transform: translate3d(-2%, -2%, 0) rotate(2deg)
    }
    to {
        transform: translateZ(0) rotate(0deg)
    }
}

.desc {
    direction: rtl;
}

@media (orientation: landscape) and (min-width: 0px) {
    .btn {
        padding: 3px
    }

    .btn__text {
        font-size: clamp(.35714vh, 5.25714vh, 2.62857vw);
        padding: .89286vw 2.67857vw
    }

    .main {
        align-items: flex-start;
        background-image: url(../img/bg/560x280.webp);
        display: grid
    }

    .top {
        background-image: linear-gradient(-7deg, #0e0e9f, #04043c);
        border-width: 1.92px;
        height: 110%;
        transform: skewX(4deg) translate(-7%, -5%);
        width: 42%;
        z-index: 1
    }

    .bottom {
        display: none
    }

    .logo-wrap {
        padding-top: 16.07143vh;
        text-align: center;
        width: 41%
    }

    .logo {
        max-height: 7.85714vh;
        max-width: 18.03571vw
    }

    .header {
        align-content: flex-end;
        align-items: flex-end;
        gap: 7.14286vh;
        text-align: center;
        width: 41%
    }

    .title {
        display: grid;
        font-size: clamp(.35714vh, 11.13929vh, 5.56964vw);
        position: absolute;
        right: 6%;
        top: 50%;
        transform: translateY(-83%)
    }

    .desc {
        font-size: clamp(.35714vh, 6.88929vh, 3.44464vw)
    }

    .desc__mark {
        font-size: clamp(.35714vh, 9.175vh, 4.0875vw)
    }

    .desc__br, .desc__mark {
        display: block
    }

    .woman {
        bottom: 0;
        left: 50%;
        max-height: 86%;
        max-width: 27.5vw;
        transform: translateX(-33%)
    }

    .cherry {
        left: 36%;
        max-height: 18.57143vh;
        max-width: 8.39286vw;
        top: -2%
    }

    .cube-lg {
        max-height: 14.28571vh;
        max-width: 7.67857vw;
        right: 1%;
        top: 3%
    }

    .cube-sm {
        bottom: 3%;
        max-height: 11.78571vh;
        max-width: 6.60714vw;
        right: 9%
    }

    .coin-lg {
        bottom: -2%;
        left: 3%;
        max-height: 20.35714vh;
        max-width: 8.21429vw;
        z-index: 3
    }

    .coin-sm {
        max-height: 17.14286vh;
        max-width: 7.14286vw;
        right: 25%;
        top: 3%
    }

    .airplane {
        bottom: 17%;
        max-height: 25.71429vh;
        max-width: 20.71429vw;
        right: 9%
    }

    .chip {
        left: 1%;
        max-height: 18.21429vh;
        max-width: 6.07143vw;
        top: 2%;
        z-index: 1
    }

    .chip-reverse {
        bottom: 30%;
        max-height: 18.92857vh;
        max-width: 6.42857vw;
        right: -2%
    }

    .diamond {
        left: 41%;
        max-height: 10vh;
        max-width: 5.71429vw;
        top: 34%
    }
}

@media (orientation: portrait) and (min-width: 0px) {
    .btn {
        padding: 3px
    }

    .btn__text {
        font-size: clamp(.22222vh, 3.35111vh, 4.7125vw);
        padding: 2.1875vw 6.5625vw
    }

    .main {
        background-image: url(../img/bg/320x450.webp)
    }

    .top {
        height: 24%;
        transform: skewY(-4deg) translate(-2%, -18%)
    }

    .bottom, .top {
        background-image: linear-gradient(90deg, #0e0e9f, #04043c);
        width: 105%
    }

    .bottom {
        height: 24vh;
        transform: skewY(-4deg) translate(-2%, 18%)
    }

    .logo {
        left: 50%;
        max-height: 6vh;
        max-width: 35.9375vw;
        position: absolute;
        top: 6.5%;
        transform: translateX(-50%)
    }

    .header {
        margin-top: 23.55556vh;
        text-align: center
    }

    .title {
        font-size: clamp(.22222vh, 4.84222vh, 6.80937vw);
        margin-bottom: .88889vh;
        text-shadow: 0 0 12.48px rgba(19, 159, 255, .72)
    }

    .desc {
        font-size: clamp(.22222vh, 3.54444vh, 4.98438vw);
        line-height: 1.15;
        text-shadow: 0 0 9.6px rgba(19, 159, 255, .72)
    }

    .desc__mark {
        font-size: clamp(.22222vh, 5.25778vh, 7.39375vw)
    }

    .desc__br {
        display: block
    }

    .woman {
        bottom: 13%;
        left: 50%;
        max-height: 42%;
        max-width: 37.8125vw;
        transform: translateX(-52%)
    }

    .cherry {
        left: 8%;
        max-height: 8.66667vh;
        max-width: 11.25vw;
        top: 40%
    }

    .cube-lg {
        max-height: 8.22222vh;
        max-width: 12.5vw;
        right: 9%;
        top: 14%
    }

    .cube-sm {
        bottom: 25%;
        max-height: 6.44444vh;
        max-width: 10vw;
        right: 15%
    }

    .coin-lg {
        bottom: 23%;
        left: 9%;
        max-height: 9.77778vh;
        max-width: 10.9375vw
    }

    .coin-sm {
        display: none
    }

    .airplane {
        bottom: 41%;
        max-height: 12.22222vh;
        max-width: 27.5vw;
        right: 10%
    }

    .chip {
        left: 4%;
        max-height: 12.66667vh;
        max-width: 10.3125vw;
        top: 8%;
        transform: rotate(-14deg)
    }

    .chip-reverse {
        max-height: 8.44444vh;
        max-width: 10vw;
        right: 5%;
        top: 35.5%;
        transform: rotate(10deg)
    }

    .diamond {
        bottom: 41%;
        left: 23%;
        max-height: 4.88889vh;
        max-width: 8.125vw
    }

    .button {
        bottom: 5%;
        left: 50%;
        position: absolute;
        transform: translateX(-50%)
    }
}

@media (orientation: portrait) and (min-width: 375px) {
    .btn {
        padding: 6px
    }

    .btn__text {
        font-size: clamp(.12315vh, 2.95936vh, 6.408vw);
        padding: 2.4vw 7.73333vw
    }

    .main {
        background-image: url(../img/bg/375x812.webp)
    }

    .top {
        transform: skewY(-4deg) translate(-2%, -23%)
    }

    .bottom {
        transform: skewY(-4deg) translate(-2%, 20%)
    }

    .logo {
        max-height: 4.6798vh;
        max-width: 44vw;
        top: 7.5%
    }

    .header {
        margin-top: 22.53695vh
    }

    .title {
        font-size: clamp(.12315vh, 4.2069vh, 9.10933vw)
    }

    .desc {
        font-size: clamp(.12315vh, 3.07882vh, 6.66667vw)
    }

    .desc__mark {
        font-size: clamp(.12315vh, 3.5665vh, 9.888vw)
    }

    .desc__mark.subtitle_3 {
        display: block;
    }

    .woman {
        bottom: 18%;
        max-height: 35%;
        max-width: 53.06667vw;
        transform: translateX(-50%)
    }

    .cherry {
        left: 0;
        max-height: 6.15764vh;
        max-width: 12vw
    }

    .cube-lg {
        max-height: 6.65025vh;
        max-width: 15.73333vw;
        right: 4%;
        top: 13.5%
    }

    .cube-sm {
        bottom: 25.5%;
        max-height: 5.91133vh;
        max-width: 14.13333vw;
        right: 5%
    }

    .coin-lg {
        bottom: 29%;
        left: -5%;
        max-height: 7.63547vh;
        max-width: 13.6vw
    }

    .airplane {
        bottom: 46.5%;
        max-height: 7.75862vh;
        max-width: 26.93333vw;
        right: 3%
    }

    .chip {
        left: -3%;
        max-height: 7.51232vh;
        max-width: 14.66667vw;
        top: 5%
    }

    .chip-reverse {
        max-height: 6.28079vh;
        max-width: 11.2vw;
        right: -1%;
        top: 35.5%
    }

    .diamond {
        bottom: 43%;
        left: 12%;
        max-height: 4.6798vh;
        max-width: 11.46667vw
    }

    .button {
        bottom: 6.5%
    }
}

@media (orientation: portrait) and (min-width: 768px) {
    .btn {
        border-width: 3px;
        padding: 9px
    }

    .btn__text {
        font-size: clamp(.09766vh, 3.53125vh, 4.70833vw);
        padding: 2.21354vw 6.51042vw
    }

    .main {
        background-image: url(../img/bg/768x1024.webp)
    }

    .top {
        transform: skewY(-4deg) translate(-2%, -26%)
    }

    .bottom {
        transform: skewY(-4deg) translate(-2%, 25%)
    }

    .logo {
        max-height: 6.34766vh;
        max-width: 36.97917vw;
        top: 6.5%
    }

    .title {
        font-size: clamp(.09766vh, 5.10449vh, 6.80599vw);
        letter-spacing: .03em
    }

    .desc {
        font-size: clamp(.09766vh, 3.73438vh, 4.97917vw)
    }

    .desc__mark {
        font-size: clamp(.09766vh, 5.04004vh, 7.38672vw)
    }

    .desc__mark.subtitle_3 {
        display: inline;
    }

    .woman {
        bottom: 11%;
        max-height: 44%;
        max-width: 37.76042vw;
        transform: translateX(-52%)
    }

    .cherry {
        left: 8%;
        max-height: 9.08203vh;
        max-width: 11.19792vw
    }

    .cube-lg {
        max-height: 8.49609vh;
        max-width: 12.5vw;
        right: 9%;
        top: 12%
    }

    .cube-sm {
        bottom: 24%;
        max-height: 6.44531vh;
        max-width: 9.50521vw;
        right: 16%
    }

    .coin-lg {
        bottom: 21%;
        left: 9%;
        max-height: 10.35156vh;
        max-width: 11.06771vw
    }

    .airplane {
        bottom: 40.5%;
        max-height: 12.69531vh;
        max-width: 27.47396vw;
        right: 11%
    }

    .chip {
        left: 4%;
        max-height: 10.9375vh;
        max-width: 13.15104vw;
        top: 6%
    }

    .chip-reverse {
        max-height: 8.69141vh;
        max-width: 9.76562vw;
        right: 5%;
        top: 35.5%
    }

    .diamond {
        bottom: 41%;
        left: 23%;
        max-height: 5.17578vh;
        max-width: 7.8125vw
    }

    .button {
        bottom: 5%
    }
}

@media (orientation: landscape) and (min-width: 940px) and (min-height: 0px) {
    .btn {
        border-width: 3px;
        padding: 7px
    }

    .main {
        background-image: url(../img/bg/1024x520.webp)
    }

    .logo-wrap {
        padding-top: 15.38462vh
    }

    .woman {
        max-height: 85.57692vh;
        max-width: 27.53906vw
    }
}

@media (orientation: landscape) and (min-width: 940px) and (min-height: 768px) {
    .main {
        background-image: url(../img/bg/1536x754.webp)
    }
}

@media (orientation: landscape) and (min-width: 1024px) and (min-height: 0px) {
    .main {
        background-image: url(../img/bg/1536x754.webp)
    }
}

@media (orientation: landscape) and (min-width: 1024px) and (min-height: 1000px) {
    .btn {
        border-width: 5px;
        padding: 10px
    }

    .btn__text {
        font-size: clamp(.09766vh, 4.21387vh, 3.15886vw);
        padding: .87848vw 2.12299vw
    }

    .main {
        background-image: url(../img/bg/1366x1024.webp)
    }

    .top {
        height: 24vh;
        transform: skewY(-4deg) translate(-2%, -29%)
    }

    .bottom, .top {
        background-image: linear-gradient(90deg, #0e0e9f, #04043c);
        border-width: 3px;
        width: 105%
    }

    .bottom {
        display: block;
        height: 24%;
        transform: skewY(-4deg) translate(-2%, 34%)
    }

    .logo-wrap {
        padding-top: 4.88281vh;
        width: 100%
    }

    .logo {
        max-height: 7.22656vh;
        max-width: 23.57247vw
    }

    .header {
        gap: 0;
        width: 59%
    }

    .title {
        display: initial;
        font-size: clamp(.09766vh, 8.90234vh, 6.6735vw);
        left: 0;
        right: auto;
        text-align: center;
        top: 20%;
        transform: translateY(0);
        width: 100%
    }

    .desc {
        font-size: clamp(.09766vh, 6.65723vh, 4.99048vw);
        transform: translate(-1%, -5%)
    }

    .desc__mark {
        font-size: clamp(.09766vh, 9.03203vh, 7.37042vw)
    }

    .desc__br {
        display: initial
    }

    .woman {
        bottom: 17%;
        max-height: 52.63672vh;
        max-width: 24.9634vw;
        transform: translateX(32%)
    }

    .cherry {
        left: 4%;
        max-height: 11.23047vh;
        max-width: 7.83309vw;
        top: 25%
    }

    .cube-lg {
        max-height: 8.98438vh;
        max-width: 7.46706vw;
        right: -.5%;
        top: 10.5%
    }

    .cube-sm {
        bottom: 24.5%;
        max-height: 8.59375vh;
        max-width: 7.10102vw;
        right: 2.5%
    }

    .coin-lg {
        bottom: 3.5%;
        left: 11.5%;
        max-height: 17.08984vh;
        max-width: 10.32211vw
    }

    .coin-sm {
        display: none
    }

    .airplane {
        max-height: 15.42969vh;
        max-width: 18.59444vw;
        right: 3.5%;
        top: 32.5%
    }

    .chip {
        left: 1.5%;
        max-height: 13.37891vh;
        max-width: 6.58858vw;
        top: 1.5%
    }

    .chip-reverse {
        bottom: 5%;
        max-height: 11.91406vh;
        max-width: 6.07613vw;
        right: 2%
    }

    .diamond {
        left: 53.5%;
        max-height: 6.05469vh;
        max-width: 5.12445vw;
        top: 43%
    }

    .button {
        bottom: 2%;
        left: 50%;
        position: absolute;
        transform: translateX(-50%)
    }
}

@media (orientation: portrait) and (min-width: 1024px) {
    .main {
        background-image: url(../img/bg/1024x1366.webp)
    }

    .logo {
        max-height: 6.36896vh;
        max-width: 36.91406vw
    }
}

@media (orientation: landscape) and (min-width: 1200px) {
    .main {
        background-image: url(../img/bg/1536x754.webp)
    }
}

@media (orientation: landscape) and (min-width: 1500px) {
    .main {
        background-image: url(../img/bg/1536x754.webp)
    }

    .top {
        background-image: linear-gradient(-7deg, #0e0e9f, #04043c);
        border-width: 1.92px;
        height: 110%;
        transform: skewX(4deg) translate(-7%, -5%);
        width: 42%
    }

    .bottom {
        display: none
    }

    .logo-wrap {
        padding-top: 15.38462vh;
        width: 41%
    }

    .logo {
        max-height: 7.85714vh;
        max-width: 18.03571vw
    }

    .header {
        gap: 7.14286vh;
        width: 41%
    }

    .title {
        display: grid;
        font-size: clamp(.35714vh, 11.13929vh, 5.56964vw);
        left: auto;
        right: 6%;
        top: 50%;
        transform: translateY(-83%);
        width: auto
    }

    .desc {
        font-size: clamp(.35714vh, 6.88929vh, 3.44464vw)
    }

    .desc__mark {
        font-size: clamp(.35714vh, 9.175vh, 5.0875vw)
    }

    .desc__br {
        display: block
    }

    .woman {
        bottom: 0;
        max-height: 87.19577vh;
        max-width: 37.92094vw;
        transform: translateX(-33%)
    }

    .cherry {
        left: 36%;
        top: -2%
    }

    .cube-lg {
        right: 1%;
        top: 3%
    }

    .cube-sm {
        bottom: 3%;
        right: 9%
    }

    .coin-lg {
        bottom: -2%;
        left: 3%
    }

    .coin-sm {
        right: 25%;
        top: 3%
    }

    .airplane {
        bottom: 18%;
        max-height: 25.4717vh;
        max-width: 20.3125vw;
        right: 10%;
        top: auto
    }

    .chip {
        left: 1%;
        top: 2%
    }

    .chip-reverse {
        bottom: 30%;
        right: -2%
    }

    .diamond {
        left: 41%;
        top: 34%
    }

    .button {
        bottom: 0;
        left: 0;
        position: static;
        transform: none
    }
}

@media (orientation: landscape) and (min-width: 1700px) {
    .btn {
        border-width: 4px;
        padding: 11px
    }

    .btn__text {
        font-size: clamp(.10582vh, 5.2582vh, 2.58802vw);
        padding: .9375vw 2.60417vw
    }

    .main {
        background-image: url(../img/bg/1920x945.webp)
    }

    .logo {
        max-height: 8.35979vh;
        max-width: 17.8125vw;
        transform: translate(3%, 2%)
    }

    .header {
        gap: 4.33862vh
    }

    .title {
        right: 7%
    }

    .desc {
        transform: translateY(-7%)
    }

    .desc__mark {
        font-size: clamp(.09766vh, 6.03203vh, 7.37042vw)
    }

    .desc__br {
        display: initial
    }

    .button {
        transform: translate(1%)
    }
}

@media (hover: hover) {
    .btn:hover {
        animation: pulse .7s infinite;
        box-shadow: 0 0 .3em 1em transparent
    }

    .btn:hover:before {
        display: none
    }
}

@media (orientation: landscape) {
    transform: translate(0)
}
