article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

button,
html,
input,
select,
textarea {
    font-family: sans-serif;
}

body {
    margin: 0;
}

a:focus {
    outline: thin dotted;
}

a:active,
a:hover {
    outline: 0;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

h2 {
    font-size: 1.5em;
    margin: 0.83em 0;
}

h3 {
    font-size: 1.17em;
    margin: 1em 0;
}

h4 {
    font-size: 1em;
    margin: 1.33em 0;
}

h5 {
    font-size: 0.83em;
    margin: 1.67em 0;
}

h6 {
    font-size: 0.75em;
    margin: 2.33em 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: 700;
}

blockquote {
    margin: 1em 40px;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

p,
pre {
    margin: 1em 0;
}

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    _font-family: courier new, monospace;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}

q:after,
q:before {
    content: "";
    content: none;
}

small,
sub,
sup {
    font-size: 75%;
}

sub,
sup {
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl,
menu,
ol,
ul {
    margin: 1em 0;
}

dd {
    margin: 0 0 0 40px;
}

menu,
ol,
ul {
    padding: 0 0 0 40px;
}

nav ol,
nav ul {
    list-style: none;
    list-style-image: none;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
    overflow: hidden;
}

figure,
form {
    margin: 0;
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
    white-space: normal;
    *margin-left: -7px;
}

button,
input,
select,
textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button,
input {
    line-height: normal;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    *overflow: visible;
}

button[disabled],
input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    *height: 13px;
    *width: 13px;
}

input[type="search"] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body,
html {
    font-family: Source Sans Pro, sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.12);
    cursor: default;
}

html {
    height: 100%;
}

body {
    min-height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: padding 0.5s ease;
    -o-transition: padding 0.5s ease;
    -moz-transition: padding 0.5s ease;
    transition: padding 0.5s ease;
}

li,
ul {
    padding: 0;
    margin: 0;
}

h1 {
    font-size: 28px;
    line-height: 1.29;
}

h1,
h2 {
    font-weight: 700;
}

h2 {
    font-size: 26px;
    line-height: 1.31;
}

h3 {
    font-size: 18px;
    line-height: 1.44;
    margin-bottom: 20px;
    font-weight: 700;
}

.clearfix:after,
.clearfix:before {
    display: table;
    content: " ";
    clear: both;
}

.hidden {
    display: none;
}

.hover-link {
    display: inline-block;
}

.hover-link:after {
    content: "";
    width: 0;
    height: 2px;
    background-color: #4a90e2;
    display: block;
    margin: 5px auto 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    -moz-transition: 0.3s;
    transition: 0.3s;
}

.mobile .hover-link:after {
    display: none;
    -webkit-transition: none;
    -o-transition: none;
    -moz-transition: none;
    transition: none;
}

.hover-link:hover:after {
    width: 100%;
}

.mobile .hover-link:hover:after {
    display: none;
    -webkit-transition: none;
    -o-transition: none;
    -moz-transition: none;
    transition: none;
}

@media (hover: none) {
    .hover-link:hover:after {
        display: none;
        -webkit-transition: none;
        -o-transition: none;
        -moz-transition: none;
        transition: none;
    }
}

.button-prime {
    height: 60px;
    margin-bottom: 20px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #4a90e2;
    font-size: 20px;
    font-weight: 600;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
}

.button-prime a {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0 40px;
    text-align: center;
    text-decoration: none;
    color: #fff;
}

.button-prime-small,
.button-prime a {
    display: inline-block;
}

.sudoku-wrapper {
    margin-bottom: 5px;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
}

.sudoku-wrapper.loading {
    position: relative;
    padding-top: 547px;
}

@media screen and (max-width: 1110px) {
    .sudoku-wrapper.loading {
        padding-top: calc(64.8834% + 47px);
    }
}

@media screen and (max-height: 800px) {
    .sudoku-wrapper.loading {
        padding-top: 434.266px;
    }
}

@media screen and (max-width: 1070px) {
    .sudoku-wrapper.loading {
        padding-top: 547px;
    }
}

@media screen and (max-width: 800px) {
    .sudoku-wrapper.loading {
        padding-top: 713px;
    }
}

@media screen and (max-width: 660px) {
    .sudoku-wrapper.loading {
        padding-top: 673px;
    }
}

@media screen and (max-width: 540px) {
    .sudoku-wrapper.loading {
        padding-top: calc(112.9987% + 108px);
    }
}

.landscape .sudoku-wrapper.loading {
    padding-top: 547px;
}

@media screen and (max-height: 800px) and (min-width: 1070px) {
    .landscape .sudoku-wrapper.loading {
        padding-top: 521px;
    }
}

@media screen and (max-width: 1110px) {
    .landscape .sudoku-wrapper.loading {
        padding-top: calc(64.93125% + 47px);
    }
}

@media screen and (max-width: 1070px) {
    .landscape .sudoku-wrapper.loading {
        padding-top: 547px;
    }
}

@media screen and (max-width: 800px) {
    .landscape .sudoku-wrapper.loading {
        padding-top: calc(65.78786% + 37px);
    }
}

@media screen and (max-width: 580px) {
    .landscape .sudoku-wrapper.loading {
        padding-top: 65.4242%;
    }
}

.sudoku-wrapper.loading .spinner {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50px;
    height: 50px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: spinner 1s linear infinite;
    -moz-animation: spinner 1s linear infinite;
    -o-animation: spinner 1s linear infinite;
    animation: spinner 1s linear infinite;
}

.sudoku-wrapper.loading .loading-label {
    position: absolute;
    top: 57%;
    left: 0;
    height: 20px;
    width: 100%;
    text-align: center;
    color: #6e7c8c;
    font-size: 15px;
}

@media screen and (max-width: 800px) {
    .portrait .sudoku-wrapper {
        max-width: 500px;
        margin: 0 auto 20px;
    }
}

.game-flex-wrapper {
    position: relative;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

@media screen and (max-width: 800px) {
    .portrait .game-flex-wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.game-info-wrapper {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px;
}

@media screen and (max-width: 800px) {
    .game-info-wrapper {
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 479px) {
    .game-info-wrapper {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.game-info-wrapper .difficulty-text {
    display: inline-block;
    margin-right: 10px;
    font-weight: 600;
    color: #344861;
    font-size: 16px;
    line-height: 25px;
    vertical-align: middle;
    text-transform: capitalize;
}

@media screen and (max-width: 580px) {
    .game-info-wrapper .difficulty-text {
        display: none;
    }
}

.game-info-wrapper .difficulty-label {
    position: relative;
    display: inline-block;
    font-weight: 600;
    color: #94a3b7;
    font-size: 16px;
    line-height: 25px;
    vertical-align: middle;
    text-transform: capitalize;
    cursor: pointer;
}

.game-info-wrapper .difficulty-label .dropdown-arrow {
    display: inline-block;
    margin-left: 10px;
}

.game-info-wrapper .difficulty-label.difficulty-menu-open .dropdown-arrow {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

@media screen and (max-width: 979px) {
    .game-info-wrapper .difficulty-label.difficulty-menu-open .dropdown-arrow {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

.game-info-wrapper .timer-wrapper {
    font-size: 0;
}

.game-info-wrapper .timer-wrapper .timer {
    display: inline-block;
    position: relative;
    top: -7px;
    font-weight: 600;
    color: #94a3b7;
    font-size: 16px;
    line-height: 0.8;
}

.game-info-wrapper .check-mistakes-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-tap-highlight-color: transparent;
}

.game-info-wrapper .check-mistakes,
.game-info-wrapper .check-mistakes-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

@media screen and (max-width: 479px) {
    .game-info-wrapper .check-mistakes {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
        -moz-box-orient: vertical;
        -moz-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

.game-info-wrapper .check-mistakes .label-text {
    display: block;
    margin-right: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #94a3b7;
}

@media screen and (max-width: 680px) {
    .game-info-wrapper .check-mistakes .label-text {
        display: none;
    }
}

@media screen and (max-width: 800px) {
    .portrait .game-info-wrapper .check-mistakes .label-text {
        display: none;
    }
}

.game-info-wrapper .switch {
    position: relative;
    top: 1px;
    width: 46px;
    height: 14px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    border-radius: 13px;
    background-color: #e2e7ed;
}

.game-info-wrapper .switch,
.game-info-wrapper .switch .switch-pin {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.game-info-wrapper .switch .switch-pin {
    position: absolute;
    top: -6px;
    left: -1px;
    width: 26px;
    height: 26px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid #e2e7ed;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
}

.game-info-wrapper .switch .switch-pin svg {
    position: relative;
    top: 5px;
    left: 5px;
}

.game-info-wrapper .switch .switch-pin svg path {
    fill: #95a3ba;
}

.game-info-wrapper .switch input:checked+.switch-pin {
    left: 20px;
    border-color: #95a3ba;
}

.game-info-wrapper .switch input:checked+.switch-pin svg path {
    fill: #4a90e2;
}

.game-info-wrapper .switch input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.limit-reached .game-info-wrapper {
    opacity: 0;
    pointer-events: none;
}

.game-wrapper {
    position: relative;
    width: 100%;
    max-width: 500px;
    min-width: 250px;
    background-color: #f3f6fa;
}

@media screen and (max-width: 800px) {
    .portrait .game-wrapper {
        max-width: none;
    }
}

.game-wrapper:after {
    content: "";
    display: block;
    padding-bottom: 100%;
}

.mobile.landscape .game-wrapper {
    width: 60%;
}

.game-wrapper .game {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.limit-reached .game-wrapper {
    opacity: 0;
    pointer-events: none;
}

.game-tip {
    display: none;
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
    padding: 15px 30px;
    background-color: #4a90e2;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    font-size: 15px;
    line-height: 1.67;
    text-align: center;
    z-index: 1;
}

.paused .game-tip {
    opacity: 0;
    pointer-events: none;
}

@media screen and (max-width: 460px) {
    .game-tip {
        left: 10px;
        right: 10px;
        bottom: 10px;
        padding: 10px;
    }
}

.game-table {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    background: #fff;
    user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    border: 2px solid #344861;
}

.game-table,
.game-table:after {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 100%;
}

.game-table:after {
    content: "";
    position: absolute;
    left: 33.3333%;
    width: 33.3333%;
    top: 0;
    border-left: 2px solid #344861;
    border-right: 2px solid #344861;
    pointer-events: none;
}

.game-table tbody {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.game-table tbody:after {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    top: 33.3333%;
    height: 33.4%;
    border-top: 2px solid #344861;
    border-bottom: 2px solid #344861;
    pointer-events: none;
}

.game-row,
.game-table tbody:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
}

.game-row {
    height: 11.11111%;
}

.game-cell,
.game-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    margin: 0;
}

.game-cell {
    -webkit-flex-basis: 11.1111%;
    -ms-flex-preferred-size: 11.1111%;
    flex-basis: 11.1111%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    border-right: 1px solid #bec6d4;
    border-bottom: 1px solid #bec6d4;
    cursor: pointer;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
}

.game-cell:after {
    content: "";
    display: block;
    padding-bottom: 100%;
}

.game-cell:hover {
    background-color: #def;
}

.game-cell:nth-child(3n) {
    border-right: 0;
}

.game-cell:nth-child(3n + 4) {
    border-left: 1px solid #bec6d4;
}

.game-row:nth-child(3n) .game-cell {
    border-bottom: 0;
}

.game-row:nth-child(3n + 4) .game-cell {
    border-top: 1px solid #bec6d4;
}

.game-cell.highlight-table {
    background-color: #e2e7ed;
}

.paused .game-cell.highlight-table {
    background-color: transparent;
}

.game-cell.highlight-number {
    background-color: #cbdbed;
}

.paused .game-cell.highlight-number {
    background-color: transparent;
}

.game-cell.conflict {
    background-color: #f7cfd6;
}

.game-cell.conflict:not(.game-value) .cell-value svg path {
    fill: #fb3d3f;
}

.paused .game-cell.conflict {
    background-color: transparent;
}

.game-cell.mistake .cell-value svg path {
    fill: #fb3d3f;
}

.game-cell.cell-selected {
    background-color: #bbdefb;
}

.paused .game-cell.cell-selected {
    background-color: transparent;
}

.filled-animation {
    -webkit-animation: filledGrid 0.3s cubic-bezier(0, 0.5, 1, 0.5);
    -moz-animation: filledGrid 0.3s cubic-bezier(0, 0.5, 1, 0.5);
    -o-animation: filledGrid 0.3s cubic-bezier(0, 0.5, 1, 0.5);
    animation: filledGrid 0.3s cubic-bezier(0, 0.5, 1, 0.5);
}

.filled-animation-long {
    -webkit-animation: filledGrid 0.4s cubic-bezier(0, 0.5, 1, 0.5);
    -moz-animation: filledGrid 0.4s cubic-bezier(0, 0.5, 1, 0.5);
    -o-animation: filledGrid 0.4s cubic-bezier(0, 0.5, 1, 0.5);
    animation: filledGrid 0.4s cubic-bezier(0, 0.5, 1, 0.5);
}

.cell-value {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-weight: 100;
    color: #666;
    text-align: center;
}

.cell-value svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 50%;
}

@media screen and (max-width: 800px) {
    .cell-value svg {
        height: 60%;
    }
}

.cell-value svg path {
    fill: #4a90e2;
}

.paused .cell-value svg {
    opacity: 0;
}

.game-value .cell-value {
    font-weight: 700;
    color: #000;
    cursor: default;
}

.game-value .cell-value svg path {
    fill: #344861;
}

.pencil-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 0;
    line-height: 0;
}

.pencil-grid-cell {
    position: relative;
    width: 33.3333%;
    height: 33.3333%;
    display: inline-block;
    font-size: 10px;
    line-height: 20px;
    color: #aaa;
}

.pencil-grid-cell svg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 120%;
    -webkit-transform: translate(-50%, -50%) scale(0.45);
    -moz-transform: translate(-50%, -50%) scale(0.45);
    -ms-transform: translate(-50%, -50%) scale(0.45);
    -o-transform: translate(-50%, -50%) scale(0.45);
    transform: translate(-50%, -50%) scale(0.45);
}

.pencil-grid-cell svg path {
    fill: #6e7c8c;
    stroke: #6e7c8c;
}

.pause-overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    cursor: pointer;
    z-index: 10;
}

.pause-overlay svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.paused .pause-overlay {
    display: block;
}

.limited .pause-overlay {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (max-width: 560px) {
    .landscape .limited .pause-overlay {
        padding: 5px;
    }
}

.limited .pause-overlay .icon-play-big {
    display: none;
}

.limited.paused .pause-overlay {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.limit-pause {
    position: absolute;
    left: 20px;
    bottom: 20px;
    right: 20px;
    display: none;
    padding: 10px 0;
    background: #4a90e2;
    text-align: center;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

@media screen and (max-width: 370px) {
    .limit-pause {
        left: 4px;
        bottom: 4px;
        right: 4px;
    }
}

@media screen and (max-width: 560px) {
    .landscape .limit-pause {
        padding: 10px;
    }
}

@media screen and (min-width: 500px) {
    .portrait .limit-pause {
        left: 44px;
        bottom: 44px;
        right: 44px;
        padding: 16px 0;
    }
}

@media screen and (min-width: 700px) {
    .landscape .limit-pause {
        left: 44px;
        bottom: 44px;
        right: 44px;
        padding: 16px 0;
    }
}

.limit-pause svg {
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    position: static;
}

.limited .limit-pause {
    display: block;
}

.limit-heading {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 15px;
    padding: 0 10px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
    text-align: center;
    color: #fff;
}

.limit-reached .limit-heading {
    color: #344861;
}

@media screen and (min-width: 500px) {
    .portrait .limit-heading {
        margin-bottom: 20px;
        font-size: 20px;
        line-height: 1.5;
    }
}

@media screen and (max-width: 500px) {
    .landscape .limit-heading {
        line-height: 1.1;
        margin-bottom: 10px;
    }
}

@media screen and (min-width: 700px) {
    .landscape .limit-heading {
        margin-bottom: 20px;
        font-size: 20px;
        line-height: 1.5;
    }
}

.limit-features {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 0 10px;
    margin-bottom: 12px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (min-width: 500px) {
    .portrait .limit-features {
        margin-bottom: 30px;
    }
}

@media screen and (min-width: 700px) {
    .landscape .limit-features {
        margin-bottom: 30px;
    }
}

.limit-feature-item {
    -webkit-flex-basis: 33.3333%;
    -ms-flex-preferred-size: 33.3333%;
    flex-basis: 33.3333%;
}

.limit-feature-icon {
    width: 30px;
    height: 30px;
    margin: 0 auto 8px;
}

.limit-feature-name {
    font-size: 12px;
    line-height: 1.17;
    letter-spacing: -0.07px;
    text-align: center;
    color: #fff;
    word-spacing: 100vw;
}

.limit-reached .limit-feature-name {
    color: #6e7c8c;
}

@media screen and (min-width: 500px) {
    .portrait .limit-feature-name {
        word-spacing: normal;
    }
}

@media screen and (min-width: 700px) {
    .landscape .limit-feature-name {
        word-spacing: normal;
    }
}

.limit-footer {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border-top: 1px solid #6da5e7;
    padding: 10px 10px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.limit-reached .limit-footer {
    border-top-color: #e0e8f7;
}

@media screen and (max-width: 560px) {
    .landscape .limit-footer {
        padding: 10px 0 0;
    }
}

@media screen and (min-width: 500px) {
    .portrait .limit-footer {
        padding: 15px 15px 0;
    }
}

@media screen and (min-width: 700px) {
    .landscape .limit-footer {
        padding: 15px 15px 0;
    }
}

.limit-app-icon {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0;
    -moz-box-flex: 0;
    -ms-flex: 0 0;
    flex: 0 0;
}

.limit-app-icon .app-icon {
    float: none;
    width: 40px;
    margin: 0 10px 0 0;
}

@media screen and (max-width: 560px) {
    .landscape .limit-app-icon .app-icon {
        width: 32px;
        margin-right: 5px;
    }
}

.limit-app {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0;
    -moz-box-flex: 1;
    -ms-flex: 1 0;
    flex: 1 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.limit-app-name {
    text-align: left;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    color: #fff;
}

.limit-reached .limit-app-name {
    color: #344861;
}

@media screen and (max-width: 560px) {
    .landscape .limit-app-name {
        font-size: 15px;
    }
}

.limit-app-stars {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.limit-app-stars svg {
    width: 12px;
    height: 12px;
    margin-right: 4px;
}

@media screen and (max-width: 560px) {
    .landscape .limit-app-stars svg {
        width: 11px;
        height: 14px;
        margin-right: 2px;
    }
}

.limit-cta {
    display: block;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0;
    -moz-box-flex: 0;
    -ms-flex: 0 0;
    flex: 0 0;
}

.limit-cta,
.limit-cta .app-store-badge {
    margin: 0 auto;
}

@media screen and (max-width: 560px) {
    .landscape .limit-cta .app-store-badge {
        width: 100px;
        height: 32px;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        background-size: cover;
    }
}

.win-overlay {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #4a90e2 -webkit-radial-gradient(center top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 -moz-radial-gradient(center top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 -o-radial-gradient(center top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 radial-gradient(circle at center top, #82ffff 0, #4a90e2 40%);
    z-index: 50;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
}

.limit-reached .win-overlay {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

.landscape .limit-reached .win-overlay {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    background: #4a90e2 -webkit-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 -moz-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 -o-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
    background: #4a90e2 radial-gradient(circle at 25% top, #82ffff 0, #4a90e2 40%);
}

@media screen and (min-height: 500px) {
    .landscape .limit-reached .win-overlay {
        padding: 20px;
    }
}

@media screen and (min-width: 500px) {
    .portrait .limit-reached .win-overlay {
        padding: 20px;
    }
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .win-overlay {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        background: #4a90e2 -webkit-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
        background: #4a90e2 -moz-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
        background: #4a90e2 -o-radial-gradient(25% top, circle, #82ffff 0, #4a90e2 40%);
        background: #4a90e2 radial-gradient(circle at 25% top, #82ffff 0, #4a90e2 40%);
    }
}

.win .win-overlay {
    opacity: 1;
    pointer-events: auto;
}

.win-overlay .win-content-wrapper {
    margin: 0 auto;
    text-align: center;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-30%);
    -moz-transform: translateY(-30%);
    -ms-transform: translateY(-30%);
    -o-transform: translateY(-30%);
    transform: translateY(-30%);
}

.limit-reached .win-overlay .win-content-wrapper {
    position: static;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}

.win-overlay .classic-win {
    display: block;
}

.limit-reached .win-overlay .classic-win,
.win-overlay .limit-win {
    display: none;
}

.limit-reached .win-overlay .limit-win {
    display: block;
}

.win-overlay .win-text {
    margin-bottom: 30px;
    color: #fff;
    font-size: 30px;
    line-height: 0.63;
    font-weight: 600;
}

.limit-reached .win-overlay .win-text {
    margin-bottom: 10px;
}

@media screen and (min-width: 500px) {
    .portrait .limit-reached .win-overlay .win-text {
        font-size: 42px;
        font-weight: 700;
        line-height: 0.86;
        margin-bottom: 13px;
    }
}

.landscape .limit-reached .win-overlay .win-text {
    margin-bottom: 20px;
}

@media screen and (min-height: 500px) {
    .landscape .limit-reached .win-overlay .win-text {
        font-size: 42px;
        font-weight: 700;
        line-height: 0.86;
        margin-bottom: 13px;
    }
}

.win-overlay .win-time-wrapper {
    margin-bottom: 30px;
}

.win-overlay .win-time {
    position: relative;
    top: 2px;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.3px;
    line-height: 21px;
    vertical-align: middle;
    margin-left: 10px;
}

.win-overlay .win-stats-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.win-overlay .win-stats-item:first-child .win-stats-text {
    border-top: none;
}

.win-overlay .win-stats-icon {
    padding: 10px;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -moz-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.win-overlay .win-stats-icon svg {
    width: 24px;
    height: 24px;
}

.win-overlay .win-stats-text {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -moz-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-top: 1px solid hsla(0, 0%, 100%, 0.2);
}

.win-overlay .win-stats-label,
.win-overlay .win-stats-value {
    font-size: 14px;
    letter-spacing: 0.29px;
    color: #fff;
}

.win-overlay .win-stats-value {
    font-weight: 600;
    text-align: right;
}

.win-overlay .win-flags-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    pointer-events: none;
}

.landscape .limit-reached .win-overlay .win-flags-wrapper {
    right: 50%;
}

@media screen and (max-width: 370px) {
    .portrait .limit-reached .win-overlay .win-flags-wrapper {
        display: none;
    }
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .win-overlay .win-flags-wrapper {
        position: absolute;
        left: 0;
        right: 50%;
        top: 0;
        bottom: 0;
    }
}

.win-overlay .win-flags {
    position: absolute;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}

.win .win-overlay .win-flags {
    -webkit-animation: bounce 2s ease forwards;
    -moz-animation: bounce 2s forwards ease;
    -o-animation: bounce 2s forwards ease;
    animation: bounce 2s ease forwards;
}

.win-overlay .win-flags-1 {
    right: 0;
    top: 0;
    width: 97%;
    height: 30%;
    background-image: url(/build/images/flags-1.2fe62b82.png);
}

.limit-reached .win-overlay .win-flags-1 {
    width: 85%;
    height: 20%;
}

.landscape .limit-reached .win-overlay .win-flags-1 {
    width: 82%;
    height: 24%;
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .win-overlay .win-flags-1 {
        width: 82%;
        height: 24%;
    }
}

@media (-o-min-device-pixel-ratio: 2/1),
(-webkit-min-device-pixel-ratio: 2),
(min--moz-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
    .win-overlay .win-flags-1 {
        background-image: url(/build/images/flags-1@2x.fb9a92fb.png);
    }
}

.win .win-overlay .win-flags-1 {
    -webkit-animation-delay: 0.4s;
    -moz-animation-delay: 0.4s;
    -o-animation-delay: 0.4s;
    animation-delay: 0.4s;
}

.win-overlay .win-flags-2 {
    top: -2%;
    right: -10%;
    width: 79%;
    height: 26%;
    background-image: url(/build/images/flags-2.a6ca901f.png);
}

.limit-reached .win-overlay .win-flags-2 {
    width: 65%;
    height: 18%;
}

@media (-o-min-device-pixel-ratio: 2/1),
(-webkit-min-device-pixel-ratio: 2),
(min--moz-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
    .win-overlay .win-flags-2 {
        background-image: url(/build/images/flags-2@2x.7c827aed.png);
    }
}

.win .win-overlay .win-flags-2 {
    -webkit-animation-delay: 0.2s;
    -moz-animation-delay: 0.2s;
    -o-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.win-overlay .win-flags-3 {
    top: -5%;
    left: 0;
    width: 100%;
    height: 37%;
    background-image: url(/build/images/flags-3.6c2b783b.png);
}

.limit-reached .win-overlay .win-flags-3 {
    width: 91%;
    height: 25%;
}

.landscape .limit-reached .win-overlay .win-flags-3 {
    width: 91%;
    height: 32%;
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .win-overlay .win-flags-3 {
        width: 91%;
        height: 32%;
    }
}

@media (-o-min-device-pixel-ratio: 2/1),
(-webkit-min-device-pixel-ratio: 2),
(min--moz-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
    .win-overlay .win-flags-3 {
        background-image: url(/build/images/flags-3@2x.14799322.png);
    }
}

.win .win-overlay .win-flags-3 {
    -webkit-animation-delay: 0.3s;
    -moz-animation-delay: 0.3s;
    -o-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.win-overlay .button-play {
    width: 240px;
    margin: 0 auto;
    background-color: #fff;
    text-align: center;
    color: #4a90e2;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 15px 0;
    -webkit-transition: color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out;
    -moz-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
    cursor: pointer;
}

.limit-reached .win-overlay .button-play {
    display: none;
}

.win-overlay .button-play:hover {
    color: #69a7f0;
}

.win-overlay .button-play:active {
    color: #3277c7;
}

.win-overlay .win-star {
    display: none;
    position: absolute;
    width: 10px;
    height: 10px;
    opacity: 1;
}

.win .win-overlay .win-star {
    -webkit-animation: shine 3s linear forwards;
    -moz-animation: shine 3s linear forwards;
    -o-animation: shine 3s linear forwards;
    animation: shine 3s linear forwards;
}

.win-overlay .win-rays-wrapper,
.win-overlay .win-star svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.win-overlay .win-rays-wrapper {
    pointer-events: none;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
}

@media screen and (max-width: 370px) {
    .portrait .limit-reached .win-overlay .win-rays-wrapper {
        opacity: 0;
    }
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .win-overlay .win-rays-wrapper {
        width: 50%;
    }
}

.landscape .limit-reached .win-overlay .win-rays-wrapper {
    width: 50%;
}

.win-overlay .win-rays-wrapper .win-rays {
    position: absolute;
    top: -60%;
    left: 0;
    width: 99.99%;
    height: 99.99%;
    opacity: 0.7;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}

.win .win-overlay .win-rays-wrapper .win-rays {
    width: 100%;
    height: 100%;
    -webkit-animation: spin 20s linear infinite;
    -moz-animation: spin 20s linear infinite;
    -o-animation: spin 20s linear infinite;
    animation: spin 20s linear infinite;
}

.win-overlay .win-rays-wrapper .win-rays svg {
    width: 100%;
    height: 100%;
}

.win .win-overlay .win-rays-wrapper .win-rays-2 {
    animation: spin 20s linear infinite reverse;
}

.win-overlay .win-rays-wrapper .win-rays-3 {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

.win .win-overlay .win-rays-wrapper .win-rays-3 {
    -webkit-animation: spin 40s linear infinite;
    -moz-animation: spin 40s linear infinite;
    -o-animation: spin 40s linear infinite;
    animation: spin 40s linear infinite;
}

.win-overlay .confetti-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    pointer-events: none;
}

.win-overlay .confetti {
    display: block;
    position: absolute;
    top: -170%;
    left: 20%;
    width: 80%;
    height: 100%;
    opacity: 1;
    pointer-events: none;
}

.win .win-overlay .confetti {
    -webkit-animation: fade-fall 10s ease-out forwards;
    -moz-animation: fade-fall 10s ease-out forwards;
    -o-animation: fade-fall 10s ease-out forwards;
    animation: fade-fall 10s ease-out forwards;
}

.win-overlay .confetti svg {
    width: 100%;
    height: 170%;
}

.win-overlay .confetti-2 {
    -webkit-transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    transform: scaleX(-1);
    left: -20%;
}

.win .win-overlay .confetti-2 {
    -webkit-animation: fade-fall 12s ease-out forwards;
    -moz-animation: fade-fall 12s ease-out forwards;
    -o-animation: fade-fall 12s ease-out forwards;
    animation: fade-fall 12s ease-out forwards;
    -webkit-animation-delay: 0.3s;
    -moz-animation-delay: 0.3s;
    -o-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.limit-block {
    display: none;
    width: 100%;
    padding: 10px 0;
    background: #fff;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    z-index: 1;
}

.limit-block a {
    display: inline-block;
}

.limit-reached .limit-block {
    display: block;
}

.landscape .limit-reached .limit-block {
    width: 50%;
    height: 100%;
    margin-left: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 610px) {
    .landscape .limit-reached .limit-block {
        width: 70%;
        padding: 10px 0;
    }
}

@media screen and (min-height: 500px) {
    .landscape .limit-reached .limit-block {
        padding: 20px 0;
    }
}

@media screen and (max-width: 340px) {
    .portrait .limit-reached .limit-block {
        padding: 10px 0;
    }
}

@media screen and (min-width: 500px) {
    .portrait .limit-reached .limit-block {
        padding: 20px 0;
    }
}

@media screen and (min-width: 801px) {
    .portrait .limit-reached .limit-block {
        width: 50%;
        height: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.limit-content {
    width: 100%;
}

.landscape .limit-content {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.limit-timer-wrap {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 9px;
    border-top: 1px solid #e0e8f7;
    padding: 9px 9px 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 0.88;
    letter-spacing: -0.1px;
    text-align: center;
    color: #6e7c8c;
}

@media screen and (min-width: 700px) {
    .landscape .limit-timer-wrap {
        margin-top: 15px;
    }
}

.limit-timer {
    display: inline-block;
    color: #4a90e2;
}

.limit-logo-block {
    position: relative;
}

.limit-logo-block .app-icon {
    display: block;
    float: none;
    margin: 0 auto;
    padding: 0 20px;
    background: #fff;
    z-index: 1;
    position: relative;
}

@media screen and (max-width: 610px) {
    .landscape .limit-reached .limit-logo-block-logo {
        display: none;
    }
}

.limit-logo-block-divider {
    width: 100%;
    height: 1px;
    background: rgba(0, 32, 69, 0.23);
    position: absolute;
    top: 50%;
}

.dont-wait-heading {
    margin-top: 15px;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
    color: #344861;
}

@media screen and (max-width: 340px) {
    .portrait .limit-reached .dont-wait-heading {
        margin-top: 10px;
    }
}

@media screen and (max-width: 610px) {
    .landscape .limit-reached .dont-wait-heading {
        margin-top: 10px;
        margin-bottom: 5px;
    }
}

.dont-wait-text {
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 1.29;
    color: #6e7c8c;
}

@media screen and (max-width: 340px) {
    .portrait .limit-reached .dont-wait-text {
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 610px) {
    .landscape .limit-reached .dont-wait-text {
        margin-bottom: 10px;
    }
}

.dont-wait-button {
    margin: 0 auto;
}

.new-game-button-wrapper-header {
    display: none;
}

@media screen and (max-width: 979px) {
    .new-game-button-wrapper-header {
        display: inline-block;
        float: right;
        position: relative;
    }
}

.limit-reached .new-game-button-wrapper-header {
    display: none;
}

.new-game-button-wrapper {
    position: relative;
}

@media screen and (max-width: 979px) {
    .new-game-button-wrapper {
        display: none;
        position: absolute;
        top: 15px;
        right: 15px;
        -webkit-transition: top 0.5s ease;
        -o-transition: top 0.5s ease;
        -moz-transition: top 0.5s ease;
        transition: top 0.5s ease;
    }
}

@media screen and (max-width: 479px) {
    .new-game-button-wrapper {
        right: 5px;
    }
}

.new-game-button {
    height: 60px;
    margin-bottom: 20px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #4a90e2;
    font-size: 20px;
    font-weight: 600;
    line-height: 60px;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 979px) {
    .new-game-button {
        height: auto;
        margin-bottom: 0;
        padding: 0 10px;
        font-size: 16px;
        font-weight: 600;
        line-height: 24px;
        vertical-align: middle;
        color: #4a90e2;
        background-color: transparent;
    }
}

.new-game-button:hover {
    background-color: #69a7f0;
}

@media screen and (max-width: 979px) {
    .new-game-button:hover {
        background-color: transparent;
        color: #69a7f0;
    }
}

.new-game-button:active {
    background-color: #3277c7;
}

@media screen and (max-width: 979px) {
    .new-game-button:active {
        background-color: transparent;
        color: #3277c7;
    }
}

.difficulty-menu,
.new-game-menu {
    display: none;
    top: -webkit-calc(100% - 5px);
    top: -moz-calc(100% - 5px);
    top: calc(100% - 5px);
    width: 200px;
    margin: 0;
    padding: 0;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    -webkit-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    text-align: center;
    background-color: #fff;
    color: #000;
    z-index: 51;
}

.difficulty-menu,
.difficulty-menu .tooltip-arrow,
.new-game-menu,
.new-game-menu .tooltip-arrow {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

.difficulty-menu .tooltip-arrow,
.new-game-menu .tooltip-arrow {
    bottom: 100%;
    width: 50px;
    height: 25px;
    overflow: hidden;
}

.difficulty-menu .tooltip-arrow:after,
.new-game-menu .tooltip-arrow:after {
    content: "";
    position: absolute;
    top: 5px;
    left: 50%;
    width: 20px;
    height: 20px;
    background: #fff;
    -webkit-transform: translateX(-50%) translateY(50%) rotate(45deg);
    -moz-transform: translateX(-50%) translateY(50%) rotate(45deg);
    -ms-transform: translateX(-50%) translateY(50%) rotate(45deg);
    -o-transform: translateX(-50%) translateY(50%) rotate(45deg);
    transform: translateX(-50%) translateY(50%) rotate(45deg);
    -webkit-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    -webkit-border-top-left-radius: 8px;
    -moz-border-radius-topleft: 8px;
    border-top-left-radius: 8px;
}

.difficulty-menu ul,
.new-game-menu ul {
    padding: 13px 0;
    margin: 0;
    list-style: none;
}

.difficulty-menu a,
.new-game-menu a {
    display: block;
    padding: 11px 0;
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    color: #4a90e2;
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.difficulty-menu a:hover,
.new-game-menu a:hover {
    background-color: #f3f6fa;
}

.difficulty-menu a.new-game-menu-cancel,
.new-game-menu a.new-game-menu-cancel {
    color: #e55c6c;
}

.new-game-menu {
    width: 200px;
}

@media screen and (max-width: 1070px) {
    .new-game-menu {
        width: 30vw;
    }
}

@media screen and (max-width: 979px) {
    .new-game-menu {
        top: -webkit-calc(100% + 15px);
        top: -moz-calc(100% + 15px);
        top: calc(100% + 15px);
        right: 0;
    }
    .new-game-menu,
    .new-game-menu .tooltip-arrow {
        left: auto;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    .new-game-menu .tooltip-arrow {
        right: 25px;
    }
}

@media screen and (max-width: 700px) {
    .new-game-menu {
        width: 220px;
    }
}

.difficulty-menu {
    top: 35px;
    left: -15px;
    width: 130px;
    text-align: left;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}

@media screen and (max-width: 979px) {
    .difficulty-menu {
        display: none !important;
    }
}

.difficulty-menu .tooltip-arrow {
    display: none;
}

.difficulty-menu ul {
    padding: 5px 0;
}

.difficulty-menu a {
    padding: 10px 15px;
    color: #6e7c8c;
}

.difficulty-menu-select {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: none;
}

@media screen and (max-width: 979px) {
    .difficulty-menu-select {
        display: block;
        opacity: 0;
    }
}

.lost-progress-label {
    padding: 10px 15px;
    font-size: 15px;
    line-height: 1.33;
    color: #6e7c8c;
}

.numpad-wrapper {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.landscape .numpad-wrapper,
.numpad-wrapper {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    position: relative;
}

.landscape .numpad-wrapper {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.numpad-wrapper .numpad {
    position: absolute;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 800px) {
    .numpad-wrapper .numpad {
        position: relative;
    }
}

.landscape .numpad-wrapper .numpad {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.numpad-wrapper .numpad-item {
    position: relative;
    width: 33.3333%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 7% 0 6%;
    text-align: center;
    border-color: #bec6d4;
    border-style: solid;
    border-width: 1px 0 0 1px;
    cursor: pointer;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 800px) {
    .portrait .numpad-wrapper .numpad-item {
        -webkit-flex-basis: 11.11111%;
        -ms-flex-preferred-size: 11.11111%;
        flex-basis: 11.11111%;
        border: 0;
    }
}

@media screen and (max-width: 479px) {
    .landscape .numpad-wrapper .numpad-item {
        padding: 6% 0 5%;
    }
}

.numpad-wrapper .numpad-item:nth-child(3n) {
    border-right-width: 1px;
}

.numpad-wrapper .numpad-item:hover {
    background-color: #f3f6fa;
}

.mobile .numpad-wrapper .numpad-item:hover {
    background-color: transparent;
}

@media (hover: none) {
    .numpad-wrapper .numpad-item:hover {
        background-color: transparent;
    }
}

.numpad-wrapper .numpad-item:active {
    background-color: #e6eaf0;
}

.mobile .numpad-wrapper .numpad-item:active {
    background-color: transparent;
}

.numpad-wrapper .numpad-item:active .digit {
    color: #6e7c8c;
}

.numpad-wrapper .numpad-item svg {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 32px;
    color: #344861;
    -webkit-transition: color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out;
    -moz-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-height: 800px) {
    .numpad-wrapper .numpad-item svg {
        height: 40%;
    }
}

@media screen and (max-width: 1160px) {
    .numpad-wrapper .numpad-item svg {
        height: 40%;
        max-height: 36px;
    }
}

@media screen and (max-width: 800px) {
    .numpad-wrapper .numpad-item svg {
        height: 35%;
    }
    .portrait .numpad-wrapper .numpad-item svg {
        height: 50%;
    }
}

.game-controls-wrapper {
    min-width: 200px;
    max-width: 360px;
    width: 50%;
    margin-left: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}

.limit-reached .game-controls-wrapper {
    opacity: 0;
    pointer-events: none;
}

@media screen and (max-width: 1070px) {
    .game-controls-wrapper {
        max-width: none;
    }
}

@media screen and (max-width: 979px) {
    .game-controls-wrapper {
        margin-left: 10px;
    }
}

@media screen and (max-width: 800px) {
    .portrait .game-controls-wrapper {
        width: 100%;
        margin: 0 auto;
    }
    .portrait .game-controls-wrapper nav {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
        -moz-box-orient: vertical;
        -moz-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 660px) {
    .game-controls-wrapper {
        min-width: 100px;
    }
}

.landscape .game-controls-wrapper {
    position: relative;
}

.game-controls-wrapper nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    height: 100%;
    width: 100%;
}

.landscape .game-controls-wrapper nav {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.game-controls {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -moz-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.landscape .game-controls {
    -webkit-box-flex: 0;
    -webkit-flex: none;
    -moz-box-flex: 0;
    -ms-flex: none;
    flex: none;
}

.game-controls .game-controls-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (max-width: 800px) {
    .portrait .game-controls .game-controls-buttons {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 20px 0;
    }
}

@media screen and (max-width: 660px) {
    .portrait .game-controls .game-controls-buttons {
        padding: 0;
    }
}

.game-controls .game-controls-item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
    padding: 12px 0 6px;
    text-align: center;
    cursor: pointer;
    border-color: #bec6d4;
    border-style: solid;
    border-width: 1px 0 0 1px;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 800px) {
    .game-controls .game-controls-item {
        padding: 10px 0 7px;
    }
    .portrait .game-controls .game-controls-item {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        border: 0;
        padding: 10px 30px 7px;
    }
    .game-controls .game-controls-item svg {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
}

@media screen and (max-width: 580px) {
    .landscape .game-controls .game-controls-item {
        padding: 1% 0 2%;
    }
    .landscape .game-controls .game-controls-item svg {
        height: 30px;
        -webkit-transform: scale(0.7);
        -moz-transform: scale(0.7);
        -ms-transform: scale(0.7);
        -o-transform: scale(0.7);
        transform: scale(0.7);
        margin-bottom: -10px;
    }
}

@media screen and (max-width: 479px) {
    .landscape .game-controls .game-controls-item svg {
        -webkit-transform: scale(0.5);
        -moz-transform: scale(0.5);
        -ms-transform: scale(0.5);
        -o-transform: scale(0.5);
        transform: scale(0.5);
    }
}

@media screen and (max-width: 460px) {
    .portrait .game-controls .game-controls-item {
        padding-left: 5px;
        padding-right: 5px;
    }
}

.game-controls .game-controls-item:nth-child(2n) {
    border-right-width: 1px;
}

.game-controls .game-controls-item:nth-child(3),
.game-controls .game-controls-item:nth-child(4) {
    border-bottom-width: 1px;
}

.game-controls .game-controls-item:hover {
    background-color: #f3f6fa;
}

.mobile .game-controls .game-controls-item:hover {
    background-color: transparent;
}

@media (hover: none) {
    .game-controls .game-controls-item:hover {
        background-color: transparent;
    }
}

.game-controls .game-controls-item:active {
    background-color: #e6eaf0;
}

.mobile .game-controls .game-controls-item:active {
    background-color: transparent;
}

.game-controls .game-controls-item:active .icon-game-control {
    color: #6e7c8c;
}

.game-controls .game-controls-item .icon-game-control {
    width: 30px;
    height: 32px;
    color: #344861;
    -webkit-transition: color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out;
    -moz-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
}

@media screen and (max-width: 800px) {
    .portrait .game-controls .game-controls-undo {
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .portrait .game-controls .game-controls-erase {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .portrait .game-controls .game-controls-pencil {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
    .portrait .game-controls .game-controls-hint {
        -webkit-box-ordinal-group: 5;
        -webkit-order: 4;
        -moz-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
    }
}

.game-controls .game-controls-label {
    font-size: 14px;
    color: #344861;
}

@media screen and (max-width: 479px) {
    .landscape .game-controls .game-controls-label {
        font-size: 12px;
        line-height: 1;
    }
}

.game-controls .game-controls-pencil .svg-wrapper {
    position: relative;
}

.game-controls .game-controls-pencil .svg-wrapper:after {
    content: "OFF";
    display: inline-block;
    position: absolute;
    top: -1px;
    margin-left: 2px;
    padding: 1px 4px;
    font-size: 12px;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #94a3b7;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 660px) {
    .landscape .game-controls .game-controls-pencil .svg-wrapper:after {
        font-size: 8px;
        margin-left: -5px;
    }
}

@media screen and (max-width: 479px) {
    .game-controls .game-controls-pencil .svg-wrapper:after {
        margin-left: -10px;
    }
}

.pencil-mode .game-controls .game-controls-pencil .svg-wrapper:after {
    content: "ON";
    background-color: #4a90e2;
}

.ima-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    pointer-events: none;
    background: 0 0;
}

.ima-active .ima-container {
    background: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    pointer-events: auto;
}

@-webkit-keyframes spinner {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        -webkit-transform: translate(-50%, -50%) rotate(359deg);
        transform: translate(-50%, -50%) rotate(359deg);
    }
}

@-moz-keyframes spinner {
    0% {
        -moz-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        -moz-transform: translate(-50%, -50%) rotate(359deg);
        transform: translate(-50%, -50%) rotate(359deg);
    }
}

@-o-keyframes spinner {
    0% {
        -o-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        -o-transform: translate(-50%, -50%) rotate(359deg);
        transform: translate(-50%, -50%) rotate(359deg);
    }
}

@keyframes spinner {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        -moz-transform: translate(-50%, -50%) rotate(0deg);
        -o-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
        -webkit-transform: translate(-50%, -50%) rotate(359deg);
        -moz-transform: translate(-50%, -50%) rotate(359deg);
        -o-transform: translate(-50%, -50%) rotate(359deg);
        transform: translate(-50%, -50%) rotate(359deg);
    }
}

@-webkit-keyframes filledGrid {
    50% {
        background-color: #abc1da;
    }
}

@-moz-keyframes filledGrid {
    50% {
        background-color: #abc1da;
    }
}

@-o-keyframes filledGrid {
    50% {
        background-color: #abc1da;
    }
}

@keyframes filledGrid {
    50% {
        background-color: #abc1da;
    }
}

@-webkit-keyframes fade-fall {
    30% {
        opacity: 0.9;
    }
    70% {
        opacity: 0;
    }
    to {
        top: 100%;
        opacity: 0;
    }
}

@-moz-keyframes fade-fall {
    30% {
        opacity: 0.9;
    }
    70% {
        opacity: 0;
    }
    to {
        top: 100%;
        opacity: 0;
    }
}

@-o-keyframes fade-fall {
    30% {
        opacity: 0.9;
    }
    70% {
        opacity: 0;
    }
    to {
        top: 100%;
        opacity: 0;
    }
}

@keyframes fade-fall {
    30% {
        opacity: 0.9;
    }
    70% {
        opacity: 0;
    }
    to {
        top: 100%;
        opacity: 0;
    }
}

@-webkit-keyframes spin {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@-moz-keyframes spin {
    to {
        -moz-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@-o-keyframes spin {
    to {
        -o-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@keyframes spin {
    to {
        -webkit-transform: rotate(1turn);
        -moz-transform: rotate(1turn);
        -o-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

@-webkit-keyframes shine {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0.8;
        -webkit-transform: rotate(180deg) scale(1.5);
        transform: rotate(180deg) scale(1.5);
    }
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
        opacity: 0;
    }
}

@-moz-keyframes shine {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0.8;
        -moz-transform: rotate(180deg) scale(1.5);
        transform: rotate(180deg) scale(1.5);
    }
    to {
        -moz-transform: rotate(1turn);
        transform: rotate(1turn);
        opacity: 0;
    }
}

@-o-keyframes shine {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0.8;
        -o-transform: rotate(180deg) scale(1.5);
        transform: rotate(180deg) scale(1.5);
    }
    to {
        -o-transform: rotate(1turn);
        transform: rotate(1turn);
        opacity: 0;
    }
}

@keyframes shine {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0.8;
        -webkit-transform: rotate(180deg) scale(1.5);
        -moz-transform: rotate(180deg) scale(1.5);
        -o-transform: rotate(180deg) scale(1.5);
        transform: rotate(180deg) scale(1.5);
    }
    to {
        -webkit-transform: rotate(1turn);
        -moz-transform: rotate(1turn);
        -o-transform: rotate(1turn);
        transform: rotate(1turn);
        opacity: 0;
    }
}

@-webkit-keyframes bounce {
    0% {
        -webkit-transform: translateY(-100%) scale(1);
        transform: translateY(-100%) scale(1);
    }
    5% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    15% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    30% {
        -webkit-transform: translateY(-20%) scale(1.05);
        transform: translateY(-20%) scale(1.05);
    }
    40% {
        -webkit-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    50% {
        -webkit-transform: translateY(-7%) scale(1.01);
        transform: translateY(-7%) scale(1.01);
    }
    60% {
        -webkit-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    65% {
        -webkit-transform: translateY(-2%);
        transform: translateY(-2%);
    }
    70% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes bounce {
    0% {
        -moz-transform: translateY(-100%) scale(1);
        transform: translateY(-100%) scale(1);
    }
    5% {
        -moz-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    15% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
    30% {
        -moz-transform: translateY(-20%) scale(1.05);
        transform: translateY(-20%) scale(1.05);
    }
    40% {
        -moz-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    50% {
        -moz-transform: translateY(-7%) scale(1.01);
        transform: translateY(-7%) scale(1.01);
    }
    60% {
        -moz-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    65% {
        -moz-transform: translateY(-2%);
        transform: translateY(-2%);
    }
    70% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
    to {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
}

@-o-keyframes bounce {
    0% {
        -o-transform: translateY(-100%) scale(1);
        transform: translateY(-100%) scale(1);
    }
    5% {
        -o-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    15% {
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    30% {
        -o-transform: translateY(-20%) scale(1.05);
        transform: translateY(-20%) scale(1.05);
    }
    40% {
        -o-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    50% {
        -o-transform: translateY(-7%) scale(1.01);
        transform: translateY(-7%) scale(1.01);
    }
    60% {
        -o-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    65% {
        -o-transform: translateY(-2%);
        transform: translateY(-2%);
    }
    70% {
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    to {
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounce {
    0% {
        -webkit-transform: translateY(-100%) scale(1);
        -moz-transform: translateY(-100%) scale(1);
        -o-transform: translateY(-100%) scale(1);
        transform: translateY(-100%) scale(1);
    }
    5% {
        -webkit-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        -o-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    15% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    30% {
        -webkit-transform: translateY(-20%) scale(1.05);
        -moz-transform: translateY(-20%) scale(1.05);
        -o-transform: translateY(-20%) scale(1.05);
        transform: translateY(-20%) scale(1.05);
    }
    40% {
        -webkit-transform: translateY(0) scale(1);
        -moz-transform: translateY(0) scale(1);
        -o-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    50% {
        -webkit-transform: translateY(-7%) scale(1.01);
        -moz-transform: translateY(-7%) scale(1.01);
        -o-transform: translateY(-7%) scale(1.01);
        transform: translateY(-7%) scale(1.01);
    }
    60% {
        -webkit-transform: translateY(0) scale(1);
        -moz-transform: translateY(0) scale(1);
        -o-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1);
    }
    65% {
        -webkit-transform: translateY(-2%);
        -moz-transform: translateY(-2%);
        -o-transform: translateY(-2%);
        transform: translateY(-2%);
    }
    70% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    to {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

.icon-arrow-dropdown {
    width: 9px;
    height: 6px;
    background: url(/build/images/sprite.935f861a.svg) -75px -55px no-repeat;
}

.icon-arrow-post {
    width: 8px;
    height: 13px;
    background: url(/build/images/sprite.935f861a.svg) -100px -42px no-repeat;
    margin-right: 10px;
}

.icon-arrow-post-right {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    margin-right: 0;
    margin-left: 10px;
}

.icon-menu {
    width: 20px;
    height: 12px;
    background: url(/build/images/sprite.935f861a.svg) 81.96721% 22.65625% no-repeat;
}

.icon-star,
.icon-star-half {
    width: 12px;
    height: 12px;
    position: relative;
    display: inline-block;
    margin-right: 4px;
    overflow: hidden;
    background: url(/build/images/sprite.935f861a.svg) -85px -55px no-repeat;
}

.icon-star-half {
    background: url(/build/images/sprite.935f861a.svg) -45px -110px no-repeat;
}

.icon-facebook {
    position: relative;
    display: inline-block;
    width: 34px;
    height: 34px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: url(/build/images/sprite.935f861a.svg) -40px -30px no-repeat;
}

.icon-star-ios {
    width: 8px;
    height: 8px;
    background: url(/build/images/sprite.935f861a.svg) 15% 95% no-repeat;
}

.icon-star-ios-half {
    width: 8px;
    height: 8px;
    background: url(/build/images/sprite.935f861a.svg) 22.5% 95% no-repeat;
}

.icon-flag {
    position: relative;
    top: 2px;
    width: 22px;
    height: 15px;
    margin-right: 10px;
    display: inline-block;
    overflow: hidden;
}

.logo-easybrain {
    width: 120px;
    height: 28px;
    background: url(/build/images/sprite.935f861a.svg) 0 0 no-repeat;
}

.next-page,
.prev-page {
    background: url(/build/images/sprite.935f861a.svg) 1px -29px no-repeat;
}

.burger-icon {
    display: inline-block;
    position: relative;
    top: -5px;
    margin-right: 10px;
    margin-left: -10px;
    padding: 0 10px;
    cursor: pointer;
    z-index: 100;
}

@media screen and (min-width: 980px) {
    .burger-icon {
        display: none;
    }
}

.icon-close {
    display: none;
    position: relative;
    width: 16px;
    height: 16px;
    padding-left: 2px;
    background: url(/build/images/sprite.935f861a.svg) 0 -125px no-repeat;
}

.icon-clock {
    display: inline-block;
    vertical-align: middle;
    width: 16px;
    height: 21px;
    background: url(/build/images/game-icons.724a3fb6.svg) 88.65979% 69.23077% no-repeat;
}

.icon-pause,
.icon-play {
    display: inline-block;
    width: 27px;
    height: 27px;
    margin-left: 10px;
    cursor: pointer;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: url(/build/images/game-icons.724a3fb6.svg) 100% 0 no-repeat;
}

.icon-play {
    display: none;
}

.paused .icon-play {
    display: inline-block;
}

.icon-pause {
    background: url(/build/images/game-icons.724a3fb6.svg) 68.96552% 0 no-repeat;
}

.paused .icon-pause {
    display: none;
}

.icon-play-big {
    position: relative;
    top: 50%;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(/build/images/game-icons.724a3fb6.svg) 0 0 no-repeat;
}

.icon-flag {
    background: url(/build/images/sprite.935f861a.svg) no-repeat;
}

.flag-ar {
    background-position: 100% 48%;
}

.flag-br {
    background-position: 100% 0;
}

.flag-de {
    background-position: 100% 60%;
}

.flag-en {
    background-position: 55% 87%;
}

.flag-es {
    background-position: 0 87.2%;
}

.flag-fr {
    background-position: 20.833333333333332% 55.2%;
}

.flag-it {
    background-position: 39.166666666666664% 55.2%;
}

.flag-jp {
    background-position: 57.5% 55.2%;
}

.flag-ko {
    background-position: 75.83333333333333% 55.2%;
}

.flag-mx {
    background-position: 0 75.2%;
}

.flag-pl {
    background-position: 18.333333333333332% 75.2%;
}

.flag-pt {
    background-position: 36.666666666666664% 75.2%;
}

.flag-ru {
    background-position: 55% 75.2%;
}

.flag-sw {
    background-position: 73.33333333333333% 75.2%;
}

.flag-th {
    background-position: 18.333333333333332% 87.2%;
}

.flag-tr {
    background-position: 100% 12%;
}

.flag-vi {
    background-position: 100% 24%;
}

.flag-tw,
.flag-zh {
    background-position: 100% 36%;
}

.app-store-badge,
.google-play-badge,
.store-badge {
    background: url(/build/images/badges.0b8aa007.svg) no-repeat;
    width: 125px;
    height: 40px;
}

.app-store-badge {
    background-position: 0 0;
}

.google-play-badge {
    background-position: 0 100%;
}

.lang-ar .app-store-badge,
.lang-ar .google-play-badge {
    background-image: url(/build/images/badges.d259e0b5.svg);
}

.lang-br .app-store-badge,
.lang-br .google-play-badge {
    background-image: url(/build/images/badges.9164c093.svg);
}

.lang-de .app-store-badge,
.lang-de .google-play-badge {
    background-image: url(/build/images/badges.798aeecf.svg);
}

.lang-en .app-store-badge,
.lang-en .google-play-badge {
    background-image: url(/build/images/badges.0b8aa007.svg);
}

.lang-es .app-store-badge,
.lang-es .google-play-badge {
    background-image: url(/build/images/badges.01e2187c.svg);
}

.lang-fr .app-store-badge,
.lang-fr .google-play-badge {
    background-image: url(/build/images/badges.d4991ee7.svg);
}

.lang-it .app-store-badge,
.lang-it .google-play-badge {
    background-image: url(/build/images/badges.bc007bee.svg);
}

.lang-jp .app-store-badge,
.lang-jp .google-play-badge {
    background-image: url(/build/images/badges.9a4c1baf.svg);
}

.lang-ko .app-store-badge,
.lang-ko .google-play-badge {
    background-image: url(/build/images/badges.3fab24c1.svg);
}

.lang-mx .app-store-badge,
.lang-mx .google-play-badge {
    background-image: url(/build/images/badges.7bbceb65.svg);
}

.lang-pl .app-store-badge,
.lang-pl .google-play-badge {
    background-image: url(/build/images/badges.81357f18.svg);
}

.lang-pt .app-store-badge,
.lang-pt .google-play-badge {
    background-image: url(/build/images/badges.4dfcc5f2.svg);
}

.lang-ru .app-store-badge,
.lang-ru .google-play-badge {
    background-image: url(/build/images/badges.6c4af3fa.svg);
}

.lang-th .app-store-badge,
.lang-th .google-play-badge {
    background-image: url(/build/images/badges.1d2150d1.svg);
}

.lang-tr .app-store-badge,
.lang-tr .google-play-badge {
    background-image: url(/build/images/badges.385e8418.svg);
}

.lang-tw .app-store-badge,
.lang-tw .google-play-badge {
    background-image: url(/build/images/badges.bf6a66d0.svg);
}

.lang-vi .app-store-badge,
.lang-vi .google-play-badge {
    background-image: url(/build/images/badges.f1f0b735.svg);
}

.lang-zh .app-store-badge,
.lang-zh .google-play-badge {
    background-image: url(/build/images/badges.ba4a59cb.svg);
}

.cookies-banner {
    position: fixed;
    bottom: -1px;
    left: 0;
    right: 0;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.62;
    color: #6e7c8c;
    border-top: 1px solid rgba(0, 63, 123, 0.1);
    background: #f3f6fa;
    padding: 15px 10px;
    z-index: 999;
    text-align: center;
}

.cookies-banner .icon-close {
    display: block;
}

.cookies-banner .buttons {
    margin-bottom: 20px;
}

.cookies-banner .buttons div {
    display: inline-block;
    margin: 0 14px;
}

.cookies-banner a {
    text-decoration: none;
    color: #4a90e2;
}

.cookies-banner p {
    margin-bottom: 15px;
}

.banner-close {
    margin: 0 0 0 auto;
}

.banner-close,
.popup-close {
    display: block;
    cursor: pointer;
}

.cookies-btn-action,
.cookies-btn-link {
    background: 0 0;
    padding: 0;
    border: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    font: inherit;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    outline: none;
}

.cookies-btn-link {
    color: #4a90e2;
    text-decoration: none;
}

.cookies-btn-action {
    background: #4a90e2;
    color: #fff;
    padding: 10px 15px 8px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.cookies-overlay {
    display: none;
}

.cookies-popup {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 999;
    background: rgba(0, 0, 0, 0.4);
}

.cookies-popup.shown {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.cookies-popup * {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.cookies-popup .popup-content {
    background: #fff;
    max-width: 700px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #333;
    position: relative;
    height: 90%;
    width: 92%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.cookies-popup .popup-content__bottom,
.cookies-popup .popup-content__top {
    border: 0 solid #e2e7ed;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -moz-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
}

.cookies-popup .popup-content__top {
    border-bottom-width: 1px;
    padding: 18px 15px;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.78;
}

.cookies-popup .popup-content__bottom {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    border-top-width: 1px;
    padding: 10px 15px;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.cookies-popup .popup-content__bottom,
.cookies-popup .popup-content__options {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
}

.cookies-popup .popup-content__options {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -moz-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    overflow: auto;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.cookies-popup .cookies-btn-link {
    margin: 10px 0;
}

.cookies-popup .options-list {
    display: none;
    padding: 0;
    list-style-type: none;
    background: #fff;
    color: #94a3b7;
    font-size: 16px;
    font-weight: 600;
    line-height: 0.88;
}

.cookies-popup .options-list li {
    padding: 13px 15px;
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    cursor: pointer;
    color: #969696;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.cookies-popup .options-list li.active {
    background: #f3f6fa;
    color: #344861;
}

.cookies-popup .options-dropdown {
    position: relative;
    font-family: SourceSansPro-SemiBold, Source Sans Pro, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 0.88;
}

.cookies-popup .options-dropdown:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -3px;
    width: 9px;
    height: 6px;
    background: url(/build/images/sprite.935f861a.svg) 56.39098% 40.29851% no-repeat;
    pointer-events: none;
}

.cookies-popup .options-dropdown select {
    width: 100%;
    display: block;
    padding: 13px 30px 13px 15px;
    border: none;
    background: #f3f6fa;
    color: #6e7c8c;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    font-family: SourceSansPro-SemiBold, Source Sans Pro, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    white-space: normal;
}

.cookies-popup select::-ms-expand {
    display: none;
}

.cookies-popup .options-content,
.cookies-popup .options-content-wrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.cookies-popup .options-content {
    padding: 20px 15px;
    display: none;
}

.cookies-popup .options-content:first-child {
    display: block;
}

.cookies-popup .options-content>div>div {
    font-family: SourceSansPro-SemiBold, Source Sans Pro, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 20px;
    margin-right: 10px;
}

.cookies-popup .options-content a {
    text-decoration: none;
    color: #4a90e2;
}

.cookies-popup .options-content p,
.cookies-popup .options-content ul {
    word-wrap: break-word;
    font-size: 13px;
    line-height: 1.62;
}

.cookies-popup .options-content p {
    margin-bottom: 25px;
}

.cookies-popup .options-content ul {
    list-style: none;
}

.cookies-popup .options-content li {
    margin: 5px 0;
}

.cookies-popup .options-content h5 {
    margin-bottom: 15px;
}

.cookies-popup .options-content .content-head {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: -webkit-flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-family: SourceSansPro-SemiBold, Source Sans Pro, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 0.88;
}

.cookies-popup .cookies-used-link a {
    text-decoration: none;
    color: #4a90e2;
    cursor: pointer;
}

.cookies-popup h4,
.cookies-popup h5 {
    font-size: 16px;
    font-weight: 600;
}

.cookies-popup .switch {
    width: 25px;
    height: 25px;
    position: relative;
    cursor: pointer;
    top: -10px;
}

.cookies-popup .switch input {
    opacity: 0;
    display: block;
    width: 25px;
    height: 25px;
}

.cookies-popup .checkbox-icon {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 25px;
    height: 25px;
    background: url(/build/images/sprite.935f861a.svg) 0 60% no-repeat;
}

.cookies-popup .switch input:checked+.checkbox-icon {
    background: url(/build/images/sprite.935f861a.svg) 64.10256% 25.21739% no-repeat;
}

.cookies-popup .cookies-btn-action {
    padding: 10px 15px 8px;
}

@media screen and (min-width: 720px) and (min-height: 520px) {
    .cookies-banner {
        padding: 40px;
    }
    .cookies-banner .banner-container {
        max-width: 980px;
        margin: 0 auto;
    }
    .cookies-banner .banner-close {
        position: absolute;
        top: 20px;
        right: 20px;
    }
    .cookies-banner p {
        margin: 0 20px 0 0;
    }
    .cookies-popup {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .cookies-popup .popup-content {
        height: 520px;
        margin: 0;
    }
    .cookies-popup .popup-content__top {
        padding: 25px 22px;
        font-size: 24px;
        font-weight: 700;
        line-height: 1.33;
    }
    .cookies-popup .popup-content__bottom,
    .cookies-popup .popup-content__options {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .cookies-popup .popup-content__bottom {
        padding: 15px 22px;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .cookies-popup .cookies-btn-link {
        margin-left: 20px;
    }
    .cookies-popup .cookies-btn-action {
        padding-left: 15px;
        padding-right: 15px;
    }
    .cookies-popup .options-list {
        display: block;
        width: 28%;
    }
    .cookies-popup .options-list li {
        color: #94a3b7;
        padding: 14px 22px;
        font-family: SourceSansPro-SemiBold, Source Sans Pro, sans-serif;
        font-size: 16px;
        font-weight: 600;
        line-height: 1.3;
    }
    .cookies-popup .options-dropdown {
        display: none;
    }
    .cookies-popup .options-content {
        height: 100%;
        overflow: auto;
        padding: 20px;
    }
}

.calendar-wrapper {
    clear: both;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.calendar-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media screen and (min-width: 600px) {
    .calendar-header {
        margin-bottom: 40px;
    }
}

.calendar-header .calendar-btn {
    cursor: pointer;
}

.calendar-header .calendar-btn--disabled {
    opacity: 0;
    pointer-events: none;
}

.calendar-header .next-month-btn img {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.calendar-header .calendar-month-label {
    padding-top: 5px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #344861;
}

.calendar-week {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-bottom: 25px;
    text-align: center;
}

.calendar-week span {
    font-size: 16px;
    line-height: 1.25;
    color: #94a3b7;
    -webkit-flex-basis: 14.2857%;
    -ms-flex-preferred-size: 14.2857%;
    flex-basis: 14.2857%;
    max-width: 42px;
    margin: 0 auto;
}

.calendar-body:after {
    display: table;
    content: "";
    clear: both;
}

.calendar-date {
    position: relative;
    float: left;
    width: 14.2857%;
    text-align: center;
    cursor: pointer;
    font-size: 20px;
    line-height: 1.5;
    color: #344861;
}

.calendar-date:before {
    display: block;
    content: "";
    padding-top: 100%;
}

.calendar-date-content {
    position: absolute;
    top: 10%;
    left: 10%;
    width: 80%;
    height: 80%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #fff;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1.5;
    -webkit-transition: background-color 0.3s, color 0.3s;
    -o-transition: background-color 0.3s, color 0.3s;
    -moz-transition: background-color 0.3s, color 0.3s;
    transition: background-color 0.3s, color 0.3s;
}

.calendar-date--disabled {
    color: #969696;
}

.calendar-date--selected .calendar-date-content {
    color: #fff;
    background-color: #4a90e2;
}

.calendar-date--printed .calendar-date-content {
    background-image: url(/build/images/calendar-tick.f991abe1.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    color: transparent;
}

.calendar-date--printed.calendar-date--selected .calendar-date-content {
    background-image: url(/build/images/calendar-tick-white.f8d66876.svg);
}

@media print {
    .print-page .mobile-smart,
    .print-page .sf-toolbar,
    .print-page .site-content-wrapper,
    .print-page .site-footer,
    .print-page .site-header {
        display: none !important;
    }
}

.print-page .site-content {
    position: static;
    margin-right: 0;
    width: 100%;
}

.print-bg {
    display: none;
}

.print-bg:before {
    display: block;
    content: "";
    padding-top: 45%;
}

@media screen and (min-width: 600px) {
    .print-bg {
        display: block;
        position: absolute;
        left: 0;
        top: 52px;
        width: 100%;
        background: url(/build/images/BG.4b4da871.jpg) top no-repeat;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        background-size: cover;
        max-height: 700px;
    }
    .print-bg:before {
        padding-top: 60%;
    }
}

@media screen and (min-width: 700px) {
    .print-bg:before {
        padding-top: 50%;
    }
}

@media screen and (min-width: 900px) {
    .print-bg:before {
        padding-top: 45%;
    }
}

@media screen and (min-width: 980px) {
    .print-bg {
        top: 70px;
    }
}

.smart-visible .print-bg {
    top: 136px !important;
}

@media screen and (min-width: 980px) {
    .smart-visible .print-bg {
        top: 154px !important;
    }
}

.print-hero {
    position: relative;
    max-width: none;
    margin: 0 auto;
    padding: 15px 10px 40px;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .print-hero {
        padding-top: 30px;
        padding-bottom: 50px;
    }
}

.print-hero .heading {
    margin-top: 15px;
    margin-bottom: 20px;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.29;
    color: #344861;
}

.print-hero .subheading {
    font-size: 15px;
    line-height: 1.67;
    color: #6e7c8c;
}

@media screen and (min-width: 420px) {
    .print-hero .subheading {
        font-size: 16px;
        line-height: 2;
    }
}

.print-hero .subheading--strong {
    color: #344861;
    font-weight: 600;
}

.calendar-block {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 30px;
    margin-left: -10px;
    margin-right: -10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #f3f6fa;
    -webkit-box-shadow: 0 10px 20px 0 rgba(0, 50, 107, 0.15);
    -moz-box-shadow: 0 10px 20px 0 rgba(0, 50, 107, 0.15);
    box-shadow: 0 10px 20px 0 rgba(0, 50, 107, 0.15);
}

@media screen and (min-width: 420px) {
    .calendar-block {
        margin-left: 0;
        margin-right: 0;
    }
}

@media screen and (min-width: 600px) {
    .calendar-block {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        border-radius: 15px;
    }
}

.calendar-block .calendar-block-item {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: center;
    padding: 30px 10px;
}

@media screen and (min-width: 768px) {
    .calendar-block .calendar-block-item {
        padding: 30px 20px;
    }
}

@media screen and (min-width: 980px) {
    .calendar-block .calendar-block-item {
        padding: 30px 50px;
    }
}

.printables-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-left: 0;
    padding-right: 0;
}

@media screen and (min-width: 550px) {
    .printables-list {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media screen and (min-width: 980px) {
    .printables-list {
        padding-left: 0;
        padding-right: 0;
    }
}

.calendar-block .print-wrapper,
.printables-item {
    padding-top: 35px;
    padding-bottom: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: center;
}

@media screen and (min-width: 600px) {
    .calendar-block .print-wrapper,
    .printables-item {
        padding-bottom: 40px;
    }
}

@media screen and (min-width: 860px) {
    .calendar-block .print-wrapper,
    .printables-item {
        padding-bottom: 60px;
    }
}

.calendar-block .print-wrapper .print-header,
.printables-item .print-header {
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    color: #344861;
}

@media screen and (min-width: 600px) {
    .calendar-block .print-wrapper .print-header,
    .printables-item .print-header {
        margin-bottom: 0;
    }
}

.calendar-block .print-wrapper .print-subheader,
.printables-item .print-subheader {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.56;
    color: #344861;
}

.calendar-block .print-wrapper .print-description,
.printables-item .print-description {
    max-width: 450px;
    margin: 0 auto 20px;
    font-size: 14px;
    line-height: 1.57;
    color: #6e7c8c;
}

.calendar-block .print-wrapper .print-preview,
.printables-item .print-preview {
    margin-bottom: 20px;
}

.calendar-block .print-wrapper .print-preview img,
.printables-item .print-preview img {
    height: 130px;
    display: block;
    margin: 0 auto 30px;
}

@media screen and (min-width: 600px) {
    .calendar-block .print-wrapper .print-preview img,
    .printables-item .print-preview img {
        height: 150px;
        margin-bottom: 0;
    }
}

@media screen and (min-width: 860px) {
    .calendar-block .print-wrapper .print-preview img,
    .printables-item .print-preview img {
        height: auto;
    }
}

.calendar-block .print-wrapper .print-buttons,
.printables-item .print-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (min-width: 420px) {
    .calendar-block .print-wrapper .print-buttons,
    .printables-item .print-buttons {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: stretch;
        -webkit-align-items: stretch;
        -moz-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }
}

@media screen and (min-width: 600px) {
    .calendar-block .print-wrapper .print-buttons,
    .printables-item .print-buttons {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media screen and (min-width: 860px) {
    .calendar-block .print-wrapper .print-buttons,
    .printables-item .print-buttons {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: stretch;
        -webkit-align-items: stretch;
        -moz-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }
}

.calendar-block .print-wrapper .print-btn,
.printables-item .print-btn {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 185px;
    height: 50px;
    margin: 5px 0;
    padding: 0 18px;
    background: #4a90e2;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    line-height: 18px;
    text-align: center;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-decoration: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.calendar-block .print-wrapper .print-btn .print-btn-text,
.printables-item .print-btn .print-btn-text {
    -webkit-transition: opacity 0.2s ease-in-out;
    -o-transition: opacity 0.2s ease-in-out;
    -moz-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out;
}

.calendar-block .print-wrapper .print-btn .print-btn-subtext,
.printables-item .print-btn .print-btn-subtext {
    font-size: 14px;
    color: #bfddff;
}

.calendar-block .print-wrapper .print-btn:before,
.printables-item .print-btn:before {
    display: none;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: spin 1s linear infinite;
    -moz-animation: spin 1s infinite linear;
    -o-animation: spin 1s infinite linear;
    animation: spin 1s linear infinite;
    background-image: url(/build/images/spinner.8f6a16a8.svg);
    background-repeat: no-repeat;
    background-position: 50%;
    -webkit-background-size: 25px 25px;
    -moz-background-size: 25px;
    background-size: 25px;
}

.calendar-block .print-wrapper .print-btn.loading .print-btn-text,
.printables-item .print-btn.loading .print-btn-text {
    opacity: 0;
}

.calendar-block .print-wrapper .print-btn.loading:before,
.printables-item .print-btn.loading:before {
    display: block;
}

.calendar-block .print-wrapper .print-btn>img,
.printables-item .print-btn>img {
    position: absolute;
    top: 50%;
    right: 6px;
    -webkit-transform: translateY(-3px);
    -moz-transform: translateY(-3px);
    -ms-transform: translateY(-3px);
    -o-transform: translateY(-3px);
    transform: translateY(-3px);
}

@media screen and (min-width: 420px) {
    .calendar-block .print-wrapper .print-btn,
    .printables-item .print-btn {
        margin: 0 5px;
    }
}

@media screen and (min-width: 600px) {
    .calendar-block .print-wrapper .print-btn,
    .printables-item .print-btn {
        margin: 5px 0;
    }
}

@media screen and (min-width: 860px) {
    .calendar-block .print-wrapper .print-btn,
    .printables-item .print-btn {
        margin: 0 5px;
    }
}

.calendar-block .print-wrapper .print-btn img,
.printables-item .print-btn img {
    margin-left: 5px;
}

.calendar-block .print-wrapper .icon-print,
.printables-item .icon-print {
    position: relative;
    top: 2px;
    margin-right: 10px;
}

.printables-item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    background-color: #f3f6fa;
    padding: 30px 10px;
    margin-bottom: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

@media screen and (min-width: 450px) {
    .printables-item {
        -webkit-flex-basis: -webkit-calc(50% - 5px);
        -ms-flex-preferred-size: calc(50% - 5px);
        flex-basis: -moz-calc(50% - 5px);
        flex-basis: calc(50% - 5px);
        padding: 30px 10px 10px;
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 550px) {
    .printables-item {
        -webkit-flex-basis: -webkit-calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: -moz-calc(50% - 10px);
        flex-basis: calc(50% - 10px);
        padding: 30px 20px 25px;
    }
}

@media screen and (min-width: 940px) {
    .printables-item {
        padding: 50px 20px;
    }
}

@media screen and (max-width: 939px) {
    .printables-item .print-buttons {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media screen and (max-width: 939px) {
    .printables-item .print-btn {
        margin: 5px 0;
    }
}

.calendar-wrapper {
    background-color: #fff;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    border-bottom-right-radius: 5px;
}

@media screen and (min-width: 600px) {
    .calendar-wrapper {
        -webkit-border-bottom-left-radius: 0;
        -moz-border-radius-bottomleft: 0;
        border-bottom-left-radius: 0;
        -webkit-border-top-right-radius: 15px;
        -moz-border-radius-topright: 15px;
        border-top-right-radius: 15px;
        -webkit-border-bottom-right-radius: 15px;
        -moz-border-radius-bottomright: 15px;
        border-bottom-right-radius: 15px;
    }
}

.breadcrumbs {
    display: none;
}

@media screen and (min-width: 600px) {
    .breadcrumbs {
        display: block;
        margin-bottom: 30px;
        font-size: 14px;
        font-weight: 600;
        color: #4a90e2;
    }
}

@media screen and (min-width: 768px) {
    .breadcrumbs {
        margin-bottom: 55px;
    }
}

.breadcrumbs-link {
    text-decoration: none;
    color: #4a90e2;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.71;
}

.breadcrumbs-link:after {
    position: relative;
    top: -2px;
    left: 1px;
    display: inline-block;
    content: "";
    width: 4px;
    height: 4px;
    margin: 0 12px;
    background-color: #6e7c8c;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.breadcrumbs-link:last-child {
    color: #94a3b7;
}

.breadcrumbs-link:last-child:after {
    display: none;
}

@media print {
    #cookies-consent,
    .mobile-smart {
        display: none !important;
    }
    html {
        margin: 0;
        padding: 0;
    }
    body {
        position: relative;
        width: 21cm;
        height: 26.5cm;
        padding: 0;
        margin: 0 auto;
    }
}

.printable {
    display: none;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 5mm 15mm;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print {
    .printable {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -moz-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -moz-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.printable .printable-header {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -moz-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-bottom: 5mm;
}

.printable .printable-header .heading {
    font-size: 4.4mm;
    line-height: 1;
    color: #000;
}

.printable .printable-header .heading-difficulty {
    display: none;
}

.printable .printable-header .heading-date {
    font-weight: 700;
    white-space: nowrap;
}

.printable .answers-wrapper,
.printable .printable-header-teaser {
    display: none;
}

.printable .printable-logo {
    width: 60mm;
    margin-bottom: 2%;
}

.printable .sudoku-list {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -ms-flex-direction: column;
    flex-direction: column;
}

.printable .sudoku-list,
.printable .sudoku-list-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.printable .sudoku-list-row {
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding: 5mm 0;
}

.printable .sudoku-list-row:first-child {
    padding-top: 10mm;
}

.printable .sudoku-list-item {
    position: relative;
    -webkit-flex-basis: 40%;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
}

.printable .sudoku-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 5%;
    font-size: 3mm;
}

.printable .sudoku-header .sudoku-label {
    font-weight: 600;
}

.printable .printable-teaser {
    margin-top: 5%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.printable .printable-teaser-footer {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.printable .teaser-text {
    max-width: 40%;
    font-size: 3.3mm;
    font-weight: 600;
    line-height: 1.44;
    margin-bottom: 2%;
}

.printable .teaser-images img {
    margin-right: 10mm;
}

.printable .qr-code {
    position: relative;
    top: 1mm;
    width: 21mm;
}

.printable .sudoku {
    position: relative;
}

.printable .sudoku .game {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.printable .sudoku:before {
    display: block;
    content: "";
    padding-bottom: 100%;
}

.printable .sudoku .game-value svg path {
    fill: #000;
}

.printable .sudoku .answer-value svg path {
    fill: #929292;
}

.printable.printable-with-answers .printable-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.printable.printable-with-answers .printable-header .printable-header-item {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.printable.printable-with-answers .printable-header .printable-header-teaser {
    display: block;
}

.printable.printable-with-answers .printable-header .printable-teaser {
    margin-top: 0;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.printable.printable-with-answers .printable-header .teaser-text {
    max-width: none;
    text-align: right;
}

.printable.printable-with-answers .printable-header .teaser-images {
    text-align: right;
}

.printable.printable-with-answers .printable-header .teaser-images img {
    height: 4.4mm;
    margin-right: 0;
    margin-left: 7mm;
}

.printable.printable-with-answers .printable-header .qr-code {
    margin-left: 5mm;
}

.printable.printable-with-answers .answers-wrapper {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -moz-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: block;
    height: 40mm;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.printable.printable-with-answers .answers-header {
    font-size: 4mm;
    font-weight: 600;
    margin-bottom: 3mm;
}

.printable.printable-with-answers .answers {
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
}

.printable.printable-with-answers .answers,
.printable.printable-with-answers .answers-block {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    justify-content: space-between;
}

.printable.printable-with-answers .answers-block {
    -webkit-flex-basis: 40%;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
}

.printable.printable-with-answers .answers-block-item {
    -webkit-flex-basis: 38%;
    -ms-flex-preferred-size: 38%;
    flex-basis: 38%;
}

.printable.printable-with-answers .answer-block-item-header {
    font-size: 2.8mm;
    margin-bottom: 1mm;
}

.printable.printable-with-answers .printable-teaser-footer {
    display: none;
}

.site-header {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -moz-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: auto;
    padding: 15px 0 10px;
    border-bottom: 1px solid rgba(0, 63, 123, 0.1);
    background: #fff;
    z-index: 100;
}

@media screen and (min-width: 980px) {
    .site-header {
        height: 70px;
        padding: 18px 0 17px;
    }
}

.logo-sudoku {
    display: block;
    position: relative;
    top: 2px;
    width: 110px;
    height: 22px;
    background: url(/build/images/logo.8f8aa3ff.svg) no-repeat;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    background-size: contain;
}

@media screen and (min-width: 980px) {
    .logo-sudoku {
        width: 156px;
        top: 0;
    }
}

.logo-sudoku-wrapper {
    margin: 0;
    display: inline-block;
}

@media screen and (min-width: 980px) {
    .logo-sudoku-wrapper {
        margin: 7px 0 0;
    }
}

.main-navigation-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    top: 20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-width: 980px) {
    .main-navigation-wrapper {
        display: block;
        position: static;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

@media screen and (min-height: 300px) and (max-width: 979px) {
    .main-navigation-wrapper {
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

.cookie-visible .main-navigation-wrapper {
    top: 20px;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media screen and (min-height: 570px) and (max-width: 979px) {
    .cookie-visible .main-navigation-wrapper {
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

@media screen and (min-width: 980px) {
    .cookie-visible .main-navigation-wrapper {
        top: 0;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

.main-navigation {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    background-color: #fff;
    z-index: 100;
    text-align: center;
    overflow: auto;
}

@media screen and (min-width: 980px) {
    .main-navigation {
        display: block;
        position: relative;
        background-color: transparent;
        text-align: left;
        float: right;
        overflow: visible;
    }
}

.main-navigation-item {
    position: relative;
    display: block;
    vertical-align: middle;
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    color: #6e7c8c;
}

@media screen and (min-width: 980px) {
    .main-navigation-item {
        display: inline-block;
    }
}

.main-navigation-item a {
    text-decoration: none;
    color: #6e7c8c;
}

.nav-menu-item {
    display: inline-block;
    margin-left: 30px;
}

@media screen and (max-width: 979px) {
    .nav-menu-item {
        display: block;
        margin-bottom: 10px;
        margin-left: 0;
    }
}

@media screen and (max-width: 979px) and (min-height: 450px) {
    .nav-menu-item {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 979px) and (min-height: 600px) {
    .nav-menu-item {
        margin-bottom: 30px;
    }
}

.nav-menu-item-mobile {
    display: block;
}

@media screen and (min-width: 980px) {
    .nav-menu-item-mobile {
        display: none;
    }
}

@media screen and (max-width: 979px) {
    .lang-menu {
        -webkit-box-ordinal-group: 0;
        -webkit-order: -1;
        -moz-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 979px) and (min-height: 450px) {
    .lang-menu {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 979px) and (min-height: 600px) {
    .lang-menu {
        margin-bottom: 50px;
    }
}

.lang-menu-select {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.lang-menu-select option {
    font-size: 12px;
}

@media screen and (min-width: 980px) {
    .lang-menu-select {
        display: none;
    }
}

.lang-menu-label {
    margin-left: 0;
    padding: 5px 10px;
    font-size: 0;
    cursor: pointer;
}

@media screen and (min-width: 980px) {
    .lang-menu-label {
        margin-left: 20px;
    }
}

.lang-menu-label .flag {
    display: inline-block;
    margin-right: 10px;
}

.lang-menu-label .language {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
}

.lang-menu-label .dropdown-arrow {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 10px;
}

.lang-menu-label.lang-menu-open .dropdown-arrow {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.lang-menu-dropdown {
    display: none;
    position: absolute;
    top: -webkit-calc(100% + 10px);
    top: -moz-calc(100% + 10px);
    top: calc(100% + 10px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 200px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    background-color: #fff;
    -webkit-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);
    z-index: 10;
    text-align: left;
    margin-left: 0;
}

@media screen and (min-width: 980px) {
    .lang-menu-dropdown {
        margin-left: 10px;
    }
}

.lang-menu-dropdown ul {
    padding: 5px 0;
}

.lang-menu-dropdown li {
    list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}

.lang-menu-dropdown li a span {
    white-space: nowrap;
}

.lang-menu-dropdown a {
    display: block;
    padding: 10px 15px;
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    color: #6e7c8c;
}

.lang-menu-dropdown a:hover {
    background-color: #f3f6fa;
}

.social-menu {
    margin: 20px 0 0;
}

@media screen and (max-height: 450px) {
    .social-menu {
        margin-top: 10px;
    }
}

@media screen and (min-width: 980px) {
    .social-menu {
        margin-left: 20px;
        margin-top: 0;
    }
}

@media screen and (max-width: 979px) {
    .menu-open {
        overflow: hidden;
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
    }
    .menu-open .icon-menu {
        display: none;
    }
    .menu-open .icon-close {
        display: block;
    }
}

.site-footer {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -moz-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding: 40px 0 15px;
    background: #222e3e;
}

.site-footer .flex-wrapper {
    display: block;
    text-align: center;
}

@media screen and (min-width: 980px) {
    .site-footer .flex-wrapper {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        text-align: left;
    }
}

.footer-item {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.footer-logo {
    margin-bottom: 30px;
}

@media screen and (min-width: 980px) {
    .footer-logo {
        margin-bottom: 0;
    }
}

.footer-logo a {
    text-decoration: none;
}

.footer-logo .copyright {
    color: #94a3b7;
    font-size: 13px;
    line-height: 18px;
}

.logo-easybrain {
    margin: 0 auto;
}

@media screen and (min-width: 980px) {
    .logo-easybrain {
        max-width: 120px;
        margin-left: 0;
    }
}

.logo-easybrain img {
    width: 100%;
}

.footer-links {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto 30px;
    text-align: center;
    padding-top: 5px;
}

@media screen and (min-width: 980px) {
    .footer-links {
        margin-bottom: 0;
    }
}

.footer-links ul {
    list-style: none;
    cursor: default;
    padding: 0;
    margin: 0;
}

.footer-links li {
    display: block;
    padding: 0 0 12px;
    margin: 0 15px;
    font-size: 0;
}

@media screen and (min-width: 460px) {
    .footer-links li {
        display: inline-block;
    }
}

@media screen and (min-width: 980px) {
    .footer-links li {
        display: block;
    }
}

.footer-links a {
    color: #fff;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
}

.footer-social {
    text-align: center;
}

@media screen and (min-width: 980px) {
    .footer-social {
        text-align: right;
    }
}

.footer-social a {
    display: inline-block;
}

.footer-disclaimer {
    padding: 15px 10px 0;
    margin: 40px auto 0;
    border-top: 1px solid #2f3f52;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: -0.2px;
    text-align: center;
    color: #94a3b7;
}

@supports (padding: max(1px)) {
    .footer-disclaimer {
        padding-left: max(10px, env(safe-area-inset-left));
        padding-right: max(10px, env(safe-area-inset-right));
    }
}

@media screen and (min-width: 980px) {
    .footer-disclaimer {
        margin-top: 25px;
    }
}

.articles-page .site-content {
    margin-right: 0;
    width: 100%;
}

.articles-page .list-title {
    margin-top: 20px;
    margin-bottom: 40px;
    text-align: center;
    color: #344861;
}

.single-article-page .site-content {
    margin-right: 0;
    width: 100%;
}

.single-article-page .entry-header {
    margin-bottom: 60px;
}

.single-article-page .entry-content h3 {
    margin: 50px 0 20px;
    color: #344861;
}

.single-article-page .entry-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.single-article-page p {
    color: #6e7c8c;
}

.entry-header a,
.entry-header img {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.article-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 43px;
}

@media screen and (min-width: 980px) {
    .article-wrapper {
        margin-top: 60px;
    }
}

.article-list-header {
    margin-top: 50px;
}

.article-list-header .entry-title {
    font-size: 24px;
    line-height: 34px;
}

.article-wrapper+.article-list-header {
    margin-top: 10px;
}

@media screen and (min-width: 980px) {
    .article-wrapper+.article-list-header {
        margin-top: 0;
    }
}

.article-list-wrapper {
    margin: 20px auto 80px;
}

.main-page .article-list-wrapper {
    margin: 0 auto;
}

.main-page .article-list-wrapper+.button-wrapper {
    margin-bottom: 60px;
    text-align: center;
}

.post {
    width: 100%;
    margin-bottom: 25px;
}

.articles-page .post,
.articles-page .post:first-child,
.articles-page .post:nth-child(2) {
    -webkit-flex-basis: -webkit-calc(50% - 10px);
    -ms-flex-preferred-size: calc(50% - 10px);
    flex-basis: -moz-calc(50% - 10px);
    flex-basis: calc(50% - 10px);
}

@media screen and (min-width: 980px) {
    .post {
        margin-bottom: 50px;
    }
}

.post-small {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

@media screen and (min-width: 660px) {
    .post-small {
        -webkit-flex-basis: -webkit-calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: -moz-calc(50% - 10px);
        flex-basis: calc(50% - 10px);
    }
}

.article-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.article-list:after {
    content: "";
    -webkit-flex-basis: -webkit-calc(33.3333% - 10px);
    -ms-flex-preferred-size: calc(33.3333% - 10px);
    flex-basis: -moz-calc(33.3333% - 10px);
    flex-basis: calc(33.3333% - 10px);
}

.article-list .post {
    margin-bottom: 50px;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

@media screen and (min-width: 500px) {
    .article-list .post {
        -webkit-flex-basis: -webkit-calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: -moz-calc(50% - 10px);
        flex-basis: calc(50% - 10px);
        margin-bottom: 60px;
    }
}

@media screen and (min-width: 800px) {
    .article-list .post {
        -webkit-flex-basis: -webkit-calc(33.3333% - 10px);
        -ms-flex-preferred-size: calc(33.3333% - 10px);
        flex-basis: -moz-calc(33.3333% - 10px);
        flex-basis: calc(33.3333% - 10px);
    }
}

.article-list .post:first-child,
.article-list .post:nth-child(2) {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

@media screen and (min-width: 500px) {
    .article-list .post:first-child,
    .article-list .post:nth-child(2) {
        -webkit-flex-basis: -webkit-calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: -moz-calc(50% - 10px);
        flex-basis: calc(50% - 10px);
    }
}

.article-list .entry-header>a {
    position: relative;
    display: block;
    height: 250px;
    overflow: hidden;
    margin-bottom: 30px;
}

.article-list .post-header-image {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    min-height: 250px;
    width: auto;
    min-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    margin-bottom: 20px;
}

@media screen and (min-width: 500px) {
    .article-list .post-header-image {
        margin-bottom: 0;
    }
}

.print-page .list-title {
    margin-top: 60px;
    margin-bottom: 0;
    text-align: center;
    color: #344861;
    font-size: 26px;
    line-height: 34px;
    font-weight: 700;
}

.print-page .article-wrapper {
    margin-top: 30px;
}

.print-page .article-wrapper .entry-header>a {
    position: relative;
    display: block;
    height: 250px;
    overflow: hidden;
    margin-bottom: 30px;
}

.print-page .article-wrapper .post-header-image {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    min-height: 250px;
    width: auto;
    min-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    margin-bottom: 20px;
}

@media screen and (min-width: 500px) {
    .print-page .article-wrapper .post-header-image {
        margin-bottom: 0;
    }
}

.print-page .article-wrapper .post {
    margin-bottom: 50px;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

.print-page .article-wrapper .post:nth-child(3) {
    display: none;
}

@media screen and (min-width: 800px) {
    .print-page .article-wrapper .post:nth-child(3) {
        display: block;
    }
}

@media screen and (min-width: 500px) {
    .print-page .article-wrapper .post {
        -webkit-flex-basis: -webkit-calc(50% - 10px);
        -ms-flex-preferred-size: calc(50% - 10px);
        flex-basis: -moz-calc(50% - 10px);
        flex-basis: calc(50% - 10px);
        margin-bottom: 60px;
    }
}

@media screen and (min-width: 800px) {
    .print-page .article-wrapper .post {
        -webkit-flex-basis: -webkit-calc(33.3333% - 10px);
        -ms-flex-preferred-size: calc(33.3333% - 10px);
        flex-basis: -moz-calc(33.3333% - 10px);
        flex-basis: calc(33.3333% - 10px);
    }
}

.print-page .article-wrapper .entry-title {
    font-size: 20px;
    line-height: 1.5;
}

.print-page .button-wrapper {
    text-align: center;
}

.print-page .button-wrapper .button-prime {
    height: 50px;
    margin-bottom: 50px;
    line-height: 50px;
    font-size: 18px;
}

.print-page .horizontal-placeholder:last-child {
    margin-bottom: 80px;
}

.entry-title {
    margin: 0 auto 20px;
    font-weight: 700;
    font-size: 28px;
    line-height: 36px;
    vertical-align: middle;
    color: #344861;
}

.entry-title a {
    text-decoration: none;
    color: #344861;
}

.article-list .post .entry-title {
    font-size: 20px;
    line-height: 28px;
}

.single-article-page .entry-title {
    max-width: 680px;
    margin-bottom: 50px;
    text-align: center;
}

.center-text-block {
    max-width: 680px;
    margin: 60px auto 0;
    text-align: left;
}

.center-text-block .entry-title {
    font-size: 24px;
    line-height: 34px;
}

.center-text-block .entry-content {
    font-size: 15px;
    line-height: 25px;
}

.center-text-block ol,
.center-text-block ul {
    text-align: left;
}

.post-header-image {
    margin-bottom: 30px;
    overflow: hidden;
}

.post-header-image,
.post-header-image img {
    display: block;
    width: 100%;
}

.entry-content {
    font-size: 15px;
    line-height: 25px;
    color: #6e7c8c;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
    font-weight: 700;
    vertical-align: middle;
    color: #344861;
}

.entry-content h1 {
    font-size: 28px;
    line-height: 36px;
}

.entry-content h2 {
    font-size: 24px;
    line-height: 34px;
}

.entry-content h3,
.entry-content h4 {
    font-size: 20px;
    line-height: 30px;
}

.single-article-page .entry-content {
    max-width: 680px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2;
}

.entry-content a {
    color: #4a90e2;
    font-weight: 600;
}

.entry-content ul {
    display: block;
    margin: 30px 0;
    padding: 30px 30px 30px 45px;
    background-color: #f3f6fa;
    list-style: disc outside;
}

.entry-content ul.list-tips {
    list-style: none;
    padding-left: 30px;
}

.entry-content ul.list-tips li {
    margin-top: 2em;
    padding-left: 0;
}

.entry-content ul.list-tips li:first-child {
    margin-top: 0;
}

.entry-content li {
    margin-top: 10px;
    padding-left: 13px;
    font-size: 15px;
    color: #6e7c8c;
}

.entry-content li:first-child {
    margin-top: 0;
}

.entry-content li span {
    font-size: 15px;
    line-height: 2;
}

.main-page .entry-content h1,
.main-page .entry-content h2,
.main-page .entry-content h3 {
    color: #344861;
}

.main-page .entry-content h2,
.main-page .entry-content h3 {
    margin: 0.83em 0;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.31;
}

.more-link {
    text-decoration: none;
}

.pager {
    width: 100%;
    margin: 0 -5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (min-width: 320px) {
    .pager {
        margin-left: auto;
        margin-right: auto;
    }
}

.page-numbers {
    width: 30px;
    height: 30px;
    margin-left: 1px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    text-decoration: none;
    text-align: center;
    font-size: 14px;
    line-height: 30px;
    font-weight: 600;
    color: #6e7c8c;
    vertical-align: middle;
}

@media screen and (min-width: 580px) {
    .page-numbers {
        width: 40px;
        height: 40px;
        margin-left: 5px;
        line-height: 40px;
        font-size: 18px;
    }
}

.page-numbers:first-child {
    margin-left: 0;
}

.page-numbers:hover {
    background-color: #f1f4f8;
}

.page-numbers:hover circle {
    fill: #f1f4f8;
}

.page-numbers.dots:hover {
    background-color: transparent;
}

.page-numbers.next-page,
.page-numbers.prev-page {
    width: 40px;
    height: 40px;
    -webkit-transform: scale(0.75);
    -moz-transform: scale(0.75);
    -ms-transform: scale(0.75);
    -o-transform: scale(0.75);
    transform: scale(0.75);
    margin-top: -5px;
    background-color: transparent;
}

@media screen and (min-width: 580px) {
    .page-numbers.next-page,
    .page-numbers.prev-page {
        margin-top: 0;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

.page-numbers.prev-page {
    -webkit-transform: rotate(180deg) scale(0.75);
    -moz-transform: rotate(180deg) scale(0.75);
    -ms-transform: rotate(180deg) scale(0.75);
    -o-transform: rotate(180deg) scale(0.75);
    transform: rotate(180deg) scale(0.75);
}

@media screen and (min-width: 580px) {
    .page-numbers.prev-page {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        transform: rotate(180deg);
    }
}

.page-numbers.current {
    background-color: #4a90e2;
    color: #fff;
}

.post-navigation {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
    padding: 30px 10px 0;
    border-top: 1px solid #e5ebf3;
}

@media screen and (min-width: 460px) {
    .post-navigation {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
}

@media screen and (min-width: 500px) {
    .post-navigation {
        padding: 30px 0 0;
    }
}

.post-navigation a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    text-decoration: none;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #4a90e2;
    font-weight: 600;
}

.post-navigation h3 {
    display: none;
}

.post-navigation-item {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

@media screen and (min-width: 460px) {
    .post-navigation-item {
        -webkit-flex-basis: -webkit-calc(50% - 20px);
        -ms-flex-preferred-size: calc(50% - 20px);
        flex-basis: -moz-calc(50% - 20px);
        flex-basis: calc(50% - 20px);
    }
}

.post-navigation-text {
    display: inline-block;
    max-width: 300px;
    width: 80%;
}

@media screen and (min-width: 460px) {
    .post-navigation-text {
        width: 100%;
    }
}

.nav-next {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

.nav-next a {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.nav-next .post-navigation-text {
    text-align: right;
}

.nav-previous {
    margin-bottom: 30px;
}

@media screen and (min-width: 460px) {
    .nav-previous {
        margin-bottom: 0;
    }
}

@media screen and (min-width: 460px) {
    .nav-previous+.nav-next {
        -webkit-flex-basis: -webkit-calc(50% - 20px);
        -ms-flex-preferred-size: calc(50% - 20px);
        flex-basis: -moz-calc(50% - 20px);
        flex-basis: calc(50% - 20px);
    }
}

.rtl .article-list,
.rtl .article-wrapper,
.rtl .post {
    direction: rtl;
}

.rtl .post .meta-nav {
    display: inline-block;
    -webkit-transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    transform: scaleX(-1);
}

.cookies-page .entry-content a,
.cookies-page .entry-content p,
.cookies-page .entry-content td {
    word-break: break-word;
    font-size: 12px;
}

@media screen and (min-width: 580px) {
    .cookies-page .entry-content a,
    .cookies-page .entry-content p,
    .cookies-page .entry-content td {
        font-size: 16px;
    }
}

.cookies-page .entry-content li {
    font-size: 12px;
}

@media screen and (min-width: 580px) {
    .cookies-page .entry-content li {
        font-size: 16px;
        padding-left: 0;
    }
}

.cookies-page .entry-content ul {
    padding: 10px 10px 10px 30px;
}

@media screen and (min-width: 580px) {
    .cookies-page .entry-content ul {
        padding-left: 40px;
    }
}

.cookie-table,
.cookies-page .entry-content table {
    table-layout: fixed;
}

.cookie-table td,
.cookies-page .entry-content table td {
    padding: 10px;
    border: 1px solid #bec6d4;
}

.cookie-table td:first-child,
.cookies-page .entry-content table td:first-child {
    width: 25%;
    vertical-align: top;
}

.horizontal-placeholder {
    display: block;
    width: 100%;
    min-width: 320px;
    height: 100px;
    margin: 0 -10px;
    text-align: center;
    background-color: #fff;
}

@media screen and (min-width: 340px) {
    .horizontal-placeholder {
        margin: 0 auto;
    }
}

@media screen and (min-width: 770px) {
    .horizontal-placeholder {
        height: 90px;
    }
}

@media screen and (min-width: 1070px) {
    .main-page .horizontal-placeholder {
        width: 728px;
    }
}

.articles-page .horizontal-placeholder {
    max-width: 1180px;
    margin-top: -10px;
    margin-bottom: 50px;
}

.single-article-page .horizontal-placeholder {
    max-width: 680px;
    margin-top: -20px;
    margin-bottom: 40px;
}

.pager+.horizontal-placeholder,
.single-article-page nav+.horizontal-placeholder {
    margin-top: 50px;
    margin-bottom: 0;
}

.app-teaser-wrapper {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 20px;
    background-color: #f3f6fa;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

@media screen and (min-width: 520px) {
    .app-teaser-wrapper {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -moz-box-orient: horizontal;
        -moz-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 10px 15px;
    }
}

@media screen and (min-width: 1070px) {
    .app-teaser-wrapper {
        position: absolute;
        top: 0;
        margin-top: 0;
        right: -320px;
        width: 300px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -moz-box-orient: vertical;
        -moz-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.app-icon {
    display: block;
    float: left;
    margin-right: 15px;
}

@media screen and (min-width: 1070px) {
    .app-icon {
        margin-right: 10px;
    }
}

.app-teaser {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.app-teaser-buttons {
    margin-top: 12px;
    float: right;
    font-size: 0;
}

@media screen and (min-width: 1070px) {
    .app-teaser-buttons {
        margin-top: 20px;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -moz-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }
}

.app-teaser-buttons a {
    display: inline-block;
    width: 125px;
}

.app-teaser-buttons a:first-child {
    margin-right: 10px;
}

.app-info-heading {
    margin: 0 0 1px;
    padding-top: 3px;
    font-size: 16px;
    line-height: 1.13;
    font-weight: 600;
    color: #161c24;
}

.app-info-author {
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 1.43;
    color: #6e7c8c;
}

.app-info-rating {
    font-size: 0;
}

body.smart-visible {
    padding-top: 84px;
}

@media screen and (max-width: 979px) {
    body.smart-visible .main-navigation {
        top: 84px;
    }
}

.mobile-smart {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    overflow: hidden;
    background-color: #f3f6fa;
    z-index: 200;
    -webkit-transition: height 0.5s ease;
    -o-transition: height 0.5s ease;
    -moz-transition: height 0.5s ease;
    transition: height 0.5s ease;
    border-bottom: 1px solid rgba(0, 63, 123, 0.1);
}

.smart-visible .mobile-smart {
    height: 84px;
}

.mobile-smart .smart-wrapper {
    padding: 0 15px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
}

.mobile-smart .icon-close {
    display: block;
}

.mobile-smart .app-icon,
.mobile-smart .icon-close {
    margin-right: 10px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -moz-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.mobile-smart .app-icon {
    float: none;
    width: 64px;
    height: 64px;
    border: 1px solid rgba(0, 63, 123, 0.1);
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

.mobile-smart .app-info {
    width: 100%;
    position: relative;
    top: -3px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.mobile-smart .app-info-heading {
    font-size: 15px;
    line-height: normal;
}

.mobile-smart .app-info-author,
.mobile-smart .app-info-description {
    font-size: 12px;
    line-height: normal;
    color: rgba(50, 50, 50, 0.8);
}

.mobile-smart .app-button {
    justify-self: flex-end;
    padding: 10px;
    color: #fff;
    background-color: #4a90e2;
    font-size: 14px;
    font-weight: 500;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    text-transform: uppercase;
    text-decoration: none;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.android-smart .app-info-author,
.android-smart .app-info-description,
.android-smart .app-info-heading {
    letter-spacing: 0.5px;
}

.android-smart .app-button {
    letter-spacing: 0.3px;
}

.ios-smart {
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

.ios-smart .smart-wrapper {
    padding: 0 0 0 10px;
}

.ios-smart .icon-close {
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    -o-transform: scale(0.7);
    transform: scale(0.7);
    margin-right: 5px;
    padding: 0;
}

.ios-smart .app-icon {
    border: 0;
}

.ios-smart .app-info {
    top: 0;
}

.ios-smart .app-info-heading {
    padding-top: 0;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.5px;
    color: #000;
}

.ios-smart .app-info-author,
.ios-smart .app-info-description {
    font-size: 12px;
    color: rgba(50, 50, 50, 0.8);
}

.ios-smart .app-button {
    color: #3478f7;
    background: 0 0;
    font-size: 17px;
    text-transform: capitalize;
    letter-spacing: 0.4px;
    font-weight: 400;
    padding-left: 10px;
}

.ios-smart .app-info-stars {
    font-size: 0;
    line-height: 0;
    height: 8px;
    margin-bottom: 5px;
}

.ios-smart .icon-star-ios,
.ios-smart .icon-star-ios-half {
    display: inline-block;
    margin-right: 2px;
}

.content-wrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -moz-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    max-width: 1070px;
    margin: 0 auto;
    padding: 0 10px;
}

@supports (padding: max(1px)) {
    .content-wrapper {
        padding-left: max(10px, env(safe-area-inset-left));
        padding-right: max(10px, env(safe-area-inset-right));
    }
}

@media screen and (min-width: 480px) {
    .content-wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }
    @supports (padding: max(1px)) {
        .content-wrapper {
            padding-left: max(20px, env(safe-area-inset-left));
            padding-right: max(20px, env(safe-area-inset-right));
        }
    }
}

@media screen and (min-width: 980px) {
    .content-wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }
    @supports (padding: max(1px)) {
        .content-wrapper {
            padding-left: max(15px, env(safe-area-inset-left));
            padding-right: max(15px, env(safe-area-inset-right));
        }
    }
}

@media screen and (min-width: 980px) {
    .content-wrapper {
        padding-left: 10px;
        padding-right: 10px;
    }
    @supports (padding: max(1px)) {
        .content-wrapper {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right));
        }
    }
}

@media screen and (min-height: 800px) {
    .content-wrapper {
        max-width: 1200px;
    }
}

.site-content-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 10px;
}

@media screen and (min-width: 800px) {
    .site-content-wrapper {
        padding-top: 15px;
    }
}

@media screen and (min-width: 980px) {
    .site-content-wrapper {
        padding-top: 20px;
    }
}

.site-content {
    position: relative;
    width: 100%;
}

.main-page .site-content {
    margin-bottom: 20px;
}

@media screen and (min-width: 1070px) {
    .site-content {
        margin-right: 20px;
    }
}

.aside {
    display: none;
    width: 300px;
    min-width: 300px;
    padding-top: 184px;
}

@media screen and (min-width: 1070px) {
    .aside {
        display: block;
    }
}

.aside-placeholder {
    display: block;
    width: 300px;
    height: 250px;
    margin-bottom: 20px;
    background-color: #fff;
}

.has-admin-actions {
    position: relative;
    border: 1px dashed transparent;
    -webkit-transition: border-color 0.3s ease-in-out;
    -o-transition: border-color 0.3s ease-in-out;
    -moz-transition: border-color 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out;
}

.has-admin-actions .admin-actions {
    opacity: 0;
    position: absolute;
    top: 5px;
    right: 5px;
    padding: 5px 15px;
    background: hsla(0, 0%, 100%, 0.3);
    border: 1px solid rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
    z-index: 5000;
}

.has-admin-actions .admin-actions a {
    text-decoration: none;
}

.has-admin-actions:hover {
    border-color: #666;
}

.has-admin-actions:hover .admin-actions {
    opacity: 1;
}

@media print {
    .android-smart,
    .article-wrapper,
    .aside,
    .game-controls-wrapper,
    .horizontal-placeholder,
    .site-footer,
    .site-header,
    .timer-wrapper {
        display: none;
    }
    .site-content {
        width: 100%;
    }
    .game-wrapper {
        width: 80%;
        margin: 0 auto;
    }
}

.page-404 .site-content {
    width: 100%;
    margin-right: 0;
}

.page-404 .site-footer {
    display: none;
}

.page-404 .button-prime {
    display: inline-block;
    margin: 40px auto 0;
}

@media screen and (min-width: 460px) {
    .page-404 .button-prime {
        margin-top: 50px;
    }
}

.wrapper-404 {
    width: 100%;
    height: 100%;
    text-align: center;
}

.content-404 {
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.content-404,
.image-404 {
    width: 100%;
    max-width: 720px;
}

.image-404 {
    margin: 0 auto 30px;
}

@media screen and (min-width: 460px) {
    .image-404 {
        margin-bottom: 50px;
    }
}

@media screen and (max-height: 400px) {
    .image-404 {
        display: none;
    }
}

.heading-404 {
    margin: 0 auto 20px;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    color: #344861;
}

@media screen and (min-width: 460px) {
    .heading-404 {
        font-size: 28px;
        line-height: 1.29;
    }
}

@media screen and (max-height: 400px) {
    .heading-404 {
        font-size: 20px;
        line-height: 1.3;
    }
}

.text-404 {
    font-size: 16px;
    line-height: 1.56;
    color: #6e7c8c;
}

@media screen and (min-width: 460px) {
    .text-404 {
        font-size: 20px;
        line-height: 1.25;
    }
}

@media screen and (max-height: 400px) {
    .text-404 {
        font-size: 16px;
        line-height: 1.56;
    }
}

.is-block>div {
    margin: 0 auto;
}

.is-block>div>div {
    margin: 0 auto 20px;
}