/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}
body {
    margin: 0;
}
main {
    display: block;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}
pre {
    font-family: monospace, monospace;
    font-size: 1em;
}
a {
    background-color: rgba(0, 0, 0, 0);
}
abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}
b,
strong {
    font-weight: bolder;
}
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}
small {
    font-size: 80%;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
img {
    border-style: none;
    max-width: 100%;
    height: auto;
}
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}
button,
input {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}
fieldset {
    padding: 0.35em 0.75em 0.625em;
}
legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}
progress {
    vertical-align: baseline;
}
textarea {
    overflow: auto;
}
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}
[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}
details {
    display: block;
}
summary {
    display: list-item;
}
template {
    display: none;
}
[hidden] {
    display: none;
}
@font-face {
    font-family: "Klapt Cyrillic";
    src: url(images/KlaptCyrillic-Regular.woff2) format("woff2"), url(images/KlaptCyrillic-Regular.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Klapt Cyrillic";
    src: url(images/KlaptCyrillic-Medium.woff2) format("woff2"), url(images/KlaptCyrillic-Medium.woff) format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Klapt Cyrillic";
    src: url(images/KlaptCyrillic-Light.woff2) format("woff2"), url(images/KlaptCyrillic-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Klapt Cyrillic";
    src: url(images/KlaptCyrillic-Bold.woff2) format("woff2"), url(images/KlaptCyrillic-Bold.woff) format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Adobe Thai";
    src: url(images/AdobeThai-Regular.woff2) format("woff2"), url(images/AdobeThai-Regular.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Kozuka";
    src: url(images/KozGoPr6N-Regular-AlphaNum.woff2) format("woff2"), url(images/KozGoPr6N-Regular-AlphaNum.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Mangal";
    src: url(images/Mangal-Regular.woff2) format("woff2"), url(images/Mangal-Regular.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
.lang_switcher_outer {
    position: absolute;
    top: 1.2rem;
    right: 30rem;
    height: 3.5em;
    z-index: 32;
    width: 15em;
    cursor: pointer;
    color: #fff;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 140%;
}
.lang_switcher_outer.act .lang_switcher {
    border-bottom-right-radius: 0;
}
.lang_switcher_outer.act .lang_list {
    opacity: 1;
    pointer-events: auto;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    border-radius: 0;
}
.lang_switcher_outer.act .lang_arr {
    transform: rotate(180deg);
}
.lang_switcher_outer .lang_switcher {
    display: flex;
    align-items: center;
    justify-content: space-between;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    cursor: pointer;
    position: relative;
    height: 100%;
    padding: 0 0 0 1em;
    z-index: 3;
}
.lang_switcher_outer .lang_switcher .curr_lang {
    position: relative;
    display: flex;
    align-items: center;
    width: 8em;
    padding-left: 0.8em;
}
.lang_switcher_outer .lang_switcher .curr_lang span {
    font-size: 1.3em;
    line-height: 1;
    font-weight: 700;
}
.lang_switcher_outer .lang_switcher .curr_lang em {
    margin: 0 0.8em 0 0;
}
.lang_switcher_outer .lang_arr {
    width: 1.2em;
    position: absolute;
    height: 0.75em;
    right: 1em;
    transition: all 0.2s ease;
    top: 1.5em;
    display: flex;
    justify-content: center;
    align-items: center;
}
.lang_switcher_outer .lang_arr svg {
    fill: none;
    stroke: #fff;
}
.lang_switcher_outer p {
    font-size: 1.2em;
    line-height: 1;
    position: relative;
    color: #fff;
    text-transform: none;
    display: inline-block;
    text-align: center;
    font-weight: 500;
}
.lang_flag {
    display: inline-block;
    width: 1.6em;
    height: 1.6em;
    border-radius: 0;
    overflow: hidden;
    margin: 0 0.8em 0 0;
    position: relative;
}
.lang_list {
    position: absolute;
    list-style-type: none;
    top: 3.5em;
    opacity: 0;
    pointer-events: none;
    right: 0;
    width: 6em;
    overflow: hidden;
    cursor: auto;
    transition: all 0.1s ease;
    background: rgba(0, 0, 0, 0.6);
}
.lang_list li {
    display: flex;
    align-items: center;
    height: 2em;
    cursor: pointer;
    padding-left: 0.8em;
}
.lang_list li span {
    font-size: 1.3em;
    font-weight: 700;
}
.lang_list li.curr {
    pointer-events: none;
    color: #ff4800;
}
.lang_list li:hover {
    color: #ff4800;
}
.lang_switcher_outer p {
    display: none;
}
.lang_switcher_outer {
    width: 6em;
}
.lang_switcher_outer .lang_switcher {
    padding-left: 0;
}
.lang_switcher_outer.act .lang_switcher {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
html.en .en {
    display: block;
}
html .en {
    display: none;
}
html.de .de {
    display: block;
}
html .de {
    display: none;
}
html.pl .pl {
    display: block;
}
html .pl {
    display: none;
}
html.pt .pt {
    display: block;
}
html .pt {
    display: none;
}
html.es .es {
    display: block;
}
html .es {
    display: none;
}
html.ro .ro {
    display: block;
}
html .ro {
    display: none;
}
html.hu .hu {
    display: block;
}
html .hu {
    display: none;
}
html.ph .ph {
    display: block;
}
html .ph {
    display: none;
}
html.vn .vn {
    display: block;
}
html .vn {
    display: none;
}
html.th .th {
    display: block;
}
html .th {
    display: none;
}
html.jp .jp {
    display: block;
}
html .jp {
    display: none;
}
html.lt .lt {
    display: block;
}
html .lt {
    display: none;
}
html.lv .lv {
    display: block;
}
html .lv {
    display: none;
}
html.ee .ee {
    display: block;
}
html .ee {
    display: none;
}
html.sk .sk {
    display: block;
}
html .sk {
    display: none;
}
html.ca .ca {
    display: block;
}
html .ca {
    display: none;
}
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    outline: none;
}
a {
    text-decoration: none;
}
ul[class] {
    list-style: none;
}
body {
    font-family: "Klapt Cyrillic", sans-serif;
}
html {
    font-size: 10px;
    background: #000;
}
html.hide {
    display: block;
}
html.hide .blur__wrap {
    background: rgba(0, 0, 0, 0);
    filter: none;
    z-index: initial;
    position: relative;
}
@media (min-width: 2100px) {
    html {
        font-size: 11px;
    }
}
@media (min-width: 2400px) {
    html {
        font-size: 12px;
    }
}

.app-card {
    display: none;
}

.preloader {
    width: 5em;
    height: 5em;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 6;
}
.preloader.hide {
    display: none;
}
.page {
    position: relative;
}
.blur__wrap {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    top: 0;
    width: 100%;
    min-height: 100vh;
    transition: all 0.3s ease-in-out;
    filter: blur(5px);
}
.wrapper {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 1fr max-content;
    height: 100%;
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}
.page__content {
    position: relative;
}
.content {
    background: #000 url(images/bg.jpg) 50% 0 / cover no-repeat;
    min-height: 100vh;
}
.webp .content {
    background: #000 url(images/bg.webp) 50% 0 / cover no-repeat;
}
.container {
    max-width: 120rem;
    margin: 0 auto;
    padding: 0 2rem;
    position: relative;
}
.main {
    padding: 3.5rem 0;
}
.logo {
    max-width: 25.5rem;
    margin: 0 auto 3.4rem;
    display: block;
    position: relative;
    z-index: 27;
}
.logo img {
    width: 100%;
}
.title {
    margin-bottom: 4.6rem;
}
.title__text {
    color: #fff;
    font-size: 4.8em;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    text-align: center;
}
.orange {
    color: #ff4800 !important;
}
.orange span {
    color: #ff4800 !important;
}
.game {
    position: relative;
    width: 62.5em;
    height: 47.9em;
    margin: 0 auto 4rem;
}
#animation_container {
    width: 62.5em !important;
    height: 47.9em !important;
    max-width: 62.5em;
    max-height: 47.9em;
    position: relative;
    margin: 0 auto;
    z-index: 4;
}
#canvas {
    width: 100% !important;
    height: 100% !important;
}
.game__preloader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
}
.game__preloader img {
    width: 24em;
}
.game__btn {
    width: 24.1em;
    height: 7.8em;
    background: url(images/btn-spin.png) 50% 50% / 100% 100% no-repeat;
    border: none;
    outline: none;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 50%);
    bottom: 0;
    cursor: pointer;
    z-index: 5;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0 0 1.2em rgba(255, 72, 0, 0.45));
    transition: filter 0.3s linear, transform 0.3s linear;
}
.game__btn span {
    text-align: center;
    font-size: 2.8em;
    font-style: normal;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    line-height: 0.7;
    padding-bottom: 0.1em;
    position: relative;
    z-index: 2;
}
.game__btn:hover {
    filter: drop-shadow(0 0 2em rgba(255, 72, 0, 0.75));
    transform: translate(-50%, 50%) scale(1.03);
}
.game__btn:disabled {
    pointer-events: none;
    opacity: 0.85;
}
.game__btn_text-second {
    display: none;
}
.game__btn_final .game__btn_text-first {
    display: none;
}
.game__btn_final .game__btn_text-second {
    display: block;
}
.footer {
    padding: 2rem 0;
}

.line {
    height: 1px;
    background: rgba(255, 255, 255, 0.15);
    width: 100%;
    margin-bottom: 0.9rem;
}
.line__mob {
    display: none;
}

.popup {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.66);
    z-index: 25;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease-in-out;
}
.popup__show {
    opacity: 1;
    pointer-events: auto;
}
.popup__window {
    width: 64em;
    background: url(images/popup-bg.jpg) 50% 50% / 100% 100% no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 11rem;
    display: none;
    filter: drop-shadow(0 0 3em rgba(255, 72, 0, 0.25));
}
.popup__window_show {
    display: block;
}
.popup__window_first {
    top: 18rem;
}
.popup__window_first .popup__container {
    min-height: 48em;
    padding: 6em 5em 7em;
}
.popup__window_first .popup__text {
    margin-bottom: 4em;
    font-size: 79%;
}
.popup__window_final .popup__container {
    min-height: 58em;
    padding: 7em 5em 6em;
}
.popup__container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.popup__title {
    margin-bottom: 1.7em;
}
.popup__title span {
    text-align: center;
    font-size: 4.8em;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.popup__title .ph {
    line-height: 100%;
}
.popup__text span {
    color: #fff;
    text-align: center;
    font-size: 4.4em;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}

.popup__text_bonus {
    margin-bottom: 8em;
}
.popup__btn {
    width: 39.3em;
    height: 8.2em;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(images/btn-popup.png) 50% 50% / 100% 100% no-repeat;
    border: none;
    outline: none;
    margin: 0 auto;
    cursor: pointer;
    filter: drop-shadow(0 0 1.2em rgba(255, 72, 0, 0.45));
    transition: filter 0.3s linear, transform 0.3s linear;
}
.popup__btn:hover {
    filter: drop-shadow(0 0 2em rgba(255, 72, 0, 0.75));
    transform: scale(1.03);
}
.popup__btn span {
    color: #fff;
    text-align: center;
    font-size: 3.5em;
    font-style: normal;
    font-weight: 700;
    text-transform: uppercase;
    padding-bottom: 0.1em;
}
.popup__img {
    display: none;
}
.ua .popup__btn_final span {
    font-size: 3.2em;
}
.elements,
.element__mob {
    display: none !important;
}
.element {
    position: absolute;
    pointer-events: none;
    z-index: 27;
}
.element img {
    width: 100%;
}
.element-left {
    left: -3%;
    top: 0;
    width: 17.8em;
    height: 78em;
}
.element-right {
    right: -3%;
    top: 0;
    width: 48.2em;
    height: 19.8em;
}
.element-bottom {
    right: -3%;
    top: auto;
    bottom: 0;
    width: 31.7em;
    height: 54.6em;
}
.element__mob {
    display: none;
}
.terms {
    font-size: 1.4em;
    display: block;
    margin: 1em auto 0;
    color: #fff;
    text-decoration: underline;
    width: max-content;
    font-family: "Roboto", sans-serif;
}
.terms:hover {
    text-decoration: none;
}
@media (max-width: 1680px) {
    html {
        font-size: 9px;
    }
}
@media (max-width: 1560px) {
    .popup {
        font-size: 95%;
    }
}
@media (max-width: 1480px) {
    html {
        font-size: 8.5px;
    }
    .element {
        font-size: 78%;
    }
    .element-left {
        left: -3%;
    }
    .element-bottom {
        right: -3%;
    }
    .lang_switcher_outer {
        top: 0.2rem;
        right: 23rem;
    }
}
@media (max-width: 1040px) {
    .popup {
        font-size: 100%;
    }
    .element-left {
        display: none;
    }
    .element-bottom {
        display: none;
    }
}
@media (max-width: 920px) {
    html {
        font-size: 8px;
    }
}
@media (max-width: 840px) {
    html {
        font-size: 7.5px;
    }
    .element-right {
        right: -7%;
    }
    .lang_switcher_outer {
        right: 17rem;
    }
}
@media (max-width: 780px) {
    html {
        font-size: 7px;
    }
}
@media (max-width: 660px) {
    html {
        font-size: 6.5px;
    }
}
@media (max-width: 600px) {
    html {
        font-size: 2.78vw;
    }
    .elements {
        display: none;
    }
    .content {
        background: #000 url(images/bg-mob.jpg) 50% 0 / cover no-repeat;
    }
    .webp .content {
        background: #000 url(images/bg-mob.webp) 50% 0 / cover no-repeat;
    }
    .container {
        padding: 0;
    }
    .main {
        padding: 4.8rem 0 0;
    }
    .logo {
        max-width: 18.8rem;
        margin-bottom: 2rem;
    }
    .title {
        margin-bottom: 7rem;
    }
    .game {
        font-size: 59%;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 6rem;
    }
    .game__btn {
        font-size: 110%;
    }
    .title__text {
        font-size: 2.5rem;
    }
    .popup {
        font-size: 53%;
    }
    .popup__window {
        top: 12rem;
    }

    .line {
        margin-bottom: 1.4rem;
    }
    .line__mob {
        display: block;
        margin-bottom: 2.4rem;
    }

    .age {
        position: relative;
        margin-right: 1rem;
        top: 0;
        transform: none;
    }
    .lang_switcher_outer {
        font-size: 110%;
        top: 0.9rem;
        right: 0.5rem !important;
    }
    .element__mob {
        font-size: 100%;
        display: block;
        right: 0;
        top: 0;
        width: 32em;
    }
}

.cards__wrapper.active {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 8em;
    width: max-content;
    margin: 0 auto 2rem;
}
.cards__wrapper {
    display: none;
}
.card {
    cursor: pointer;
    width: 35.98em;
    height: 22.024em;
    border-radius: 0;
    transition: all 0.3s ease-in-out;
    position: relative;
    background: url(images/cart_bg_eur.jpg) 50% 50% no-repeat;
    background-size: 92% 92%;
    overflow: hidden; /* clip card images that extend beyond edges */
}
.card__img {
    position: relative;
    z-index: 3;
    width: 100%;
}
.game.hide {
    display: none;
}

img {
    border-style: none;
    max-width: 100%;
    height: auto;
}
.card__anim {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0;
    z-index: 2;
    width: 100%;
}

.card__img_final {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0;
    z-index: 2;
}
.card__text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    width: 90%;
}
.card__text div {
    font-size: 6em;
    font-weight: 900;
    color: #f7f700;
    text-align: center;
    white-space: nowrap;
    text-shadow: 0 -0.3rem 0 #ab7930, 0 -0.3rem 0 #ab7930, 0 0.3rem 0 #ab7930, 0 0.3rem 0 #ab7930, -0.3rem 0 0 #ab7930, 0.3rem 0 0 #ab7930, -0.3rem 0 0 #ab7930,
        0.3rem 0 0 #ab7930, -0.1rem -0.3rem 0 #ab7930, 0.1rem -0.3rem 0 #ab7930, -0.1rem 0.3rem 0 #ab7930, 0.1rem 0.3rem 0 #ab7930, -0.3rem -0.1rem 0 #ab7930,
        0.3rem -0.1rem 0 #ab7930, -0.3rem 0.1rem 0 #ab7930, 0.3rem 0.1rem 0 #ab7930, -0.2rem -0.3rem 0 #ab7930, 0.2rem -0.3rem 0 #ab7930,
        -0.2rem 0.3rem 0 #ab7930, 0.2rem 0.3rem 0 #ab7930, -0.3rem -0.2rem 0 #ab7930, 0.3rem -0.2rem 0 #ab7930, -0.3rem 0.2rem 0 #ab7930,
        0.3rem 0.2rem 0 #ab7930, -0.3rem -0.3rem 0 #ab7930, 0.3rem -0.3rem 0 #ab7930, -0.3rem 0.3rem 0 #ab7930, 0.3rem 0.3rem 0 #ab7930,
        -0.3rem -0.3rem 0 #ab7930, 0.3rem -0.3rem 0 #ab7930, -0.3rem 0.3rem 0 #ab7930, 0.3rem 0.3rem 0 #ab7930;
}

.card__active1 {
    pointer-events: none;
    box-shadow: 0 0 2rem #b96705;
}

.card__active1 .card__anim1 {
    opacity: 1;
}
.card__active1 .card__img {
    display: none;
}
.card__disabled {
    pointer-events: none;
}
.card__active2 {
    pointer-events: none;
    box-shadow: 0 0 2rem #b96705;
}
.card__active2 .card__img {
    display: none;
}
.card__active2 .card__anim2 {
    opacity: 1;
}

.footer {
    margin-top: auto;
    text-align: center;
    color: rgba(255, 255, 255, 0.5);
    font-family: "Roboto", sans-serif;
    background-color: #000000;
    position: relative;
    z-index: 1;
}

.footer::after {
    display: block;
    position: absolute;
    width: 100%;
    content: "";
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 1) 100%);
    top: -5rem;
    height: 5rem;
}

.footer-block {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    position: relative;
    padding-bottom: 14px;
}

.footer-block__item {
    height: 40px;
    min-width: 34px;
}

.footer-block::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.15);
    bottom: 0;
    left: 0;
}

.footer-copy {
    padding-top: 24px;
    padding-bottom: 16px;
    font-size: 10px;
    text-transform: uppercase;
}

.footer-copy__item:last-of-type {
    padding-top: 8px;
    text-transform: none;
}

@media (min-width: 768px) {
    .footer {
        padding-top: 0;
    }

    .footer-block {
        gap: 12px;
    }

    .footer-block__item {
        height: 36px;
    }
}

@media (min-width: 1024px) {
    .footer-block {
        column-gap: 26px;
        padding-top: 2rem;
    }

    .footer-block__item {
        height: 40px;
    }
}

@media (min-width: 1440px) {
    .footer {
        z-index: 1;
    }

    .footer-block {
        column-gap: 32px;
    }
}
