@font-face {
    font-family: 'lipschmackin';
    src: url('fonts/lipschmackin-regular.woff') format('woff'), url('fonts/lipschmackin-regular.woff2') format('woff2');
}

/*
    font-family: gotham-condensed, sans-serif; 
    font-family: 'lipschmackin';
*/

:root {
    --zinc-light: #fff;
    --zinc-light-rgb: 255, 255, 255;
    --zinc-dark: #000;
    --zinc-dark-rgb: 0, 0, 0;
    --schmackos-red: #E03A3B;
    --schmackos-yellow: #FFDF4F;
    --schmackos-maroon: #843039;
    --schmackos-maroon-rgb: 132, 48, 57;
    --schmackos-blond: #FDF1BF;
    /**/
    --zinc-error: #AE0000;
    --zinc-error-rgb: 174, 0, 0;
    --zinc-good: #00B402;
    /**/
    --zinc-max-width: 650px;
    --zinc-content-background: var(--schmackos-yellow);
    --zinc-input-file-background-color: var(--schmackos-red);
    --zinc-input-file-color: var(--zinc-light);
    --zinc-input-color: var(--schmackos-maroon);
    --zinc-input-background-color: transparent;
    --zinc-input-border: 2px solid var(--schmackos-red);
    --zinc-input-border-radius: 12px;
    --zinc-upload-background: var(--schmackos-red);
    --zinc-button-border-radius: 8px;
    --zinc-button-background-color: var(--schmackos-maroon);
    --zinc-button-color: var(--schmackos-blond);
    --zinc-mandatory-color: var(--schmackos-maroon, #000);
    --zinc-mandatory-color-alt: var(--schmackos-maroon, #fff);
    --zinc-field-background: #fff;
    --zinc-title-font-family-alt: 'lipschmackin', serif;
    --zinc-title-font-weight-alt: 400;
    --zinc-title-font-style-alt: normal;
    --zinc-nav-background: var(--schmackos-blond);
    --zinc-nav-color: var(--zinc-dark);
    --zinc-nav-active-background: var(--schmackos-maroon);
    --zinc-nav-active-color: var(--schmackos-blond);
    --zinc-link-color: var(--schmackos-maroon);
    --zinc-color-alt: var(--zinc-dark);
    --zinc-footer-color: var(--schmackos-maroon);
    --zinc-footer-color-links: var(--schmackos-maroon);
    --zinc-footer-background: var(--schmackos-yellow);
    --zinc-footer-offset-width: 0px;
    --zinc-navbar-height-offset: 70px;
    --zinc-animation-max-height-offset: 250px;
    --zinc-animation-extra-wide-percentage: 15%;
    /**/
}


:root {
    --bs-body-color: var(--schmackos-maroon);
    --bs-body-color-rgb: var(--zinc-light-rgb);
    --bs-dark-rgb: 0, 0, 0;
    --bs-dark-color: #000000;
    --bs-danger: var(--zinc-error, #00417c);
    --bs-link-color: inherit;
    --bs-link-hover-color: inherit;
    --bs-danger-rgb: var(--zinc-error-rgb);
    --bs-body-font-family: 'gotham-condensed', sans-serif;
    --bs-title-font-family: 'gotham-condensed', sans-serif;
    --bs-title-font-weight: 700;
    --bs-title-font-style: normal;
    --bs-nav-link-hover-color: #fff;
    --bs-nav-link-font-size: 1.23rem;
    --bs-light-rgb: var(--zinc-light-rgb);
}

.form-control::file-selector-button {
    --zinc-file-button-background-color: var(--zinc-light);
    --zinc-file-button-color: var(--schmackos-maroon);
    font-weight: bold;
}

.form-check-input:checked[type="checkbox"] {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23843039' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}

body {
    background: var(--schmackos-red);
    font-size: 1.214rem;
}

a {
    font-weight: bold;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--zinc-title-font-family-alt);
    font-weight: var(--zinc-title-font-weight-alt);
    font-style: var(--zinc-title-font-style-alt);
}

h1 {
    font-size: 4.5rem;
    line-height: 0.85em;
}

    h1.larger {
    }

h2 {
    font-size: 3.43rem;
}

h3 {
    font-size: 2.29rem;
    text-transform: uppercase;
    line-height: 1.1;
}

h4 {
    font-size: 1.71rem;
    color: var(--schmackos-red);
    text-align: center;
    text-transform: uppercase;
}

h5 {
}

.header-logo {
}

header .navbar-toggler-icon {
    height: 26px;
}

header .navbar-collapse {
}

header .nav-link {
    font-family: var(--zinc-title-font-family-alt);
    font-weight: var(--zinc-title-font-weight-alt);
}

.footer {
    --bs-border-color: var(--zinc-light);
    font-size: 1.071rem;
}

    .footer a {
    }

    .footer .copyright-with-links {
        font-size: 1.073rem;
    }

        .footer .copyright-with-links a {
        }

.footer-nav {
    padding: 1rem 0;
    border: 0;
    border-right: 0;
    border-left: 0;
}

    .footer-nav a.nav-link {
        color: var(--schmackos-red);
        font-family: var(--zinc-title-font-family-alt);
        font-weight: var(--zinc-title-font-weight-alt);
        font-size: 2rem;
    }

        .footer-nav a.nav-link:hover {
        }

    .footer-nav .nav-item + .nav-item:after {
        z-index: 1;
        content: " ";
        position: absolute;
        font-size: 2em;
        top: 9.4%;
        left: -2px;
        height: 80%;
        width: 0%;
        background-color: inherit;
        /* bullet */
        /*
        content: "\2022"; 
        */
        /* slash */
        /*
        -webkit-transform: skewX(-25deg);
        -moz-transform: skewX(-25deg);
        -ms-transform: skewX(-25deg);
        transform: skewX(-25deg);
        /**/
        /* | or / */
        border-left: 2px solid var(--schmackos-red);
    }

.hero-page {
}

.form-control, .form-select,
.form-control:focus, .form-select:focus {
    color: var(--zinc-dark);
}

    .form-control:focus, .form-select:focus {
    }

    .form-control[type='file'] {
        border: solid 2px var(--zinc-light);
        font-size: 1.214rem;
        font-weight: bold;
    }

.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
    height: calc(3rem + calc(var(--bs-border-width) * 2));
    min-height: calc(3rem + calc(var(--bs-border-width) * 2));
}

.form-upload label {
    line-height: 1.6em;
    color: var(--zinc-light);
}

.form-floating > label,
.form-floating > .form-control:focus ~ label {
    line-height: 1.1rem;
    font-size: 1.143rem;
    font-family: var(--zinc-title-font-family-alt);
    font-weight: var(--zinc-title-font-weight-alt);
}

.form-check {
    padding-left: 2.8rem;
}

    .form-check label {
        font-size: 1.214rem;
    }

    .form-check input.form-check-input {
        margin-left: -2.8rem;
    }

.form-upload {
    font-size: 1.214rem;
}

.btn {
    --bs-btn-padding-x: 3rem;
    font-size: 2.29rem;
    min-height: 45px;
    line-height: 45px;
}

    .btn.btn-outline-primary {
        border: solid 2px var(--schmackos-blond);
        color: var(--schmackos-blond);
        background: transparent;
    }

        .btn.btn-outline-primary:first-child:active {
            background: transparent;
            border-color: inherit;
        }

    .btn .larger {
    }

    .btn:hover {
    }

    .btn.btn-secondary {
    }


        .btn.btn-secondary:focus,
        .btn.btn-secondary:hover,
        .btn.btn-secondary:active {
        }

.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown),
.form-floating > .form-control:focus,
.form-floating > .form-control:not(:placeholder-shown) {
    padding-top: 1rem;
    padding-bottom: 0.3rem;
    font-size: 1.1em;
    color: var(--schmackos-maroon);
}

.form-floating.active > select.form-select {
}

.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating.active > .form-select ~ label {
}

.field-validation-error {
    font-size: 1.214rem
}

    .field-validation-error.text-danger {
        border: solid 2px var(--zinc-error);
        background: var(--zinc-light);
        color: var(--zinc-error);
        --bs-danger-rgb: var(--zinc-error-rgb);
    }

.form-upload label.required:after {
    display: none;
}

.narrow {
    max-width: 340px;
    margin: 0 auto;
}

.page-hero-default main .container {
    padding: 40px 30px;
    margin-bottom: 75px;
}

.mandatory {
    font-size: 1.214rem;
}

.exp,
.exp-box-title {
}

.exp-box {
}

.exp-box-title {
    font-size: 1.43rem;
}

.modal-close img {
    min-height: 30px;
}

.thanks-message-container {
    transition: transform ease-in-out 0.5s;
}

    .thanks-message-container.message-1 {
        margin-top: 20%;
    }

        .thanks-message-container.message-1.slideOut {
            transform: translateX(200vw);
        }

    .thanks-message-container.message-2 {
        transform: translateX(-200vw);
    }

        .thanks-message-container.message-2.slideIn {
            transform: translateX(0);
        }

.thanks-ticket {
    transform: rotate(0deg) scale(0);
}

.thanks-message-container.message-2.slideIn .thanks-ticket {
    animation: spinUp ease-in-out 1s;
    animation-delay: 0.5s;
    animation-fill-mode: forwards;
}

.roger-home-animation {
    width: 718px;
    aspect-ratio: 718 / 750;
    max-width: 100%;
    margin-bottom: -3rem;
}

    .roger-home-animation a {
        text-decoration: none;
    }

    .roger-home-animation .circle {
        width: calc(100% * (658 / 718));
        max-width: none;
        transform: scale(0);
        animation: scaleUp ease-in-out 1s, wiggle ease-in-out 3s;
        animation-iteration-count: 1, infinite;
        animation-fill-mode: forwards;
        animation-delay: 0.9s, 2s;
        margin-bottom: -7%;
    }

    .roger-home-animation .lower {
        align-self: end;
        width: 100%;
        max-width: none;
        margin-bottom: 1%;
        transform: scale(0);
        animation: scaleUp ease-in-out 1s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        animation-delay: 0.9s
    }

    .roger-home-animation .plates {
        width: calc(100% * 715 / 718);
        margin-top: 30%;
        transform: translate(min(100vw, 700px)), scale(1);
        animation: rogerSlideIn ease-in-out 1s, pulse ease-in-out 3s;
        animation-iteration-count: 1, infinite;
        animation-fill-mode: forwards;
        animation-delay: 0, 0.5s;
        opacity: 0;
        margin-bottom: -1%;
    }

    .roger-home-animation .roger {
        width: calc(100% * 400 / 718);
        margin-left: 17%;
        transform: translate(min(100vw, 700px));
        animation: rogerSlideIn ease-in-out 1s;
        animation-iteration-count: 1;
        animation-fill-mode: forwards;
        opacity: 0;
    }


    .roger-home-animation .copyright-1 {
        align-self: end;
        justify-self: start;
        margin-bottom: 0.5%;
        margin-left: 1%;
        color: var(--schmackos-yellow);
        font-size: 1.071rem;
        text-decoration: none;
    }

    .roger-home-animation .copyright-2 {
        align-self: end;
        margin-right: -29%;
        margin-bottom: 0.5%;
    }

@keyframes rogerSlideIn {
    0% {
        transform: translate(min(100vw, 700px));
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform: translate(0);
        opacity: 1;
    }
}

@keyframes scaleUp {
    0% {
        transform: scale(0);
    }

    100% {
        transform: scale(1);
    }
}

@keyframes wiggle {
    75% {
        transform: rotate(0);
    }

    80% {
        transform: rotate(-3deg);
    }

    85% {
        transform: rotate(3deg);
    }

    90% {
        transform: rotate(-3deg);
    }

    95% {
        transform: rotate(0);
    }
}

@keyframes pulse {
    75% {
        transform: scale(1);
    }

    80% {
        transform: scale(1.05);
    }

    85% {
        transform: scale(0.95);
    }

    90% {
        transform: scale(1.05);
    }

    95% {
        transform: scale(1);
    }
}

.game-custom {
    touch-action: pan-y;
    aspect-ratio: 772 / 778;
    max-width: 772px;
    width: 120%;
    margin-left: -10%;
}

    .game-custom .top-text {
        align-self: start;
        z-index: 2;
        width: 100%;
    }

    .game-custom .title {
        margin-top: 7%;
        width: calc(100% * (423 / 772));
        align-self: start;
        z-index: 2;
        opacity: 1;
        transition: opacity 2s linear;
    }

    .game-custom .selector {
        transition: transform 0.25s ease-in-out;
        z-index: 0;
        width: 100%;
    }

        .game-custom .selector .text {
            transition: opacity 0.25s ease-in-out;
            opacity: 0.3;
        }

    .game-custom .roger {
        z-index: 1;
        opacity: 0;
        margin-bottom: -25.5%;
        margin-left: 9%;
        transition: transform 0.25s ease-in-out;
        width: calc(100% * (413 / 772));
    }

    .game-custom[data-selection="0"] .selector {
        /*transform: rotate(0);*/
    }

    .game-custom[data-selection="0"] .text-parma {
        opacity: 1;
    }

    .game-custom[data-selection="0"] .roger-parma {
        transform: translateX(0);
        opacity: 1;
    }

    .game-custom[data-selection="1"] .selector {
        /*transform: rotate(120deg);*/
    }

    .game-custom[data-selection="1"] .text-roast {
        opacity: 1;
    }

    .game-custom[data-selection="1"] .roger-roast {
        transform: translateX(0);
        opacity: 1;
    }

    .game-custom[data-selection="2"] .selector {
        /*transform: rotate(240deg);*/
    }

    .game-custom[data-selection="2"] .text-sanga {
        opacity: 1;
    }

    .game-custom[data-selection="2"] .roger-sanga {
        transform: translateX(0);
        opacity: 1;
    }

    .game-custom .roger-cloche {
        z-index: 3;
        margin-bottom: -25.5%;
        margin-left: 6%;
        transform: translateX(100%);
        opacity: 0;
        transition: transform 0.75s ease-in-out, opacity 0.25s ease-in-out;
        width: calc(100% * (413 / 772));
    }


        .game-custom .roger-cloche .plate {
            align-self: end;
            margin-bottom: 10%;
            margin-left: -26%;
            width: calc(100% * 273 / 413);
        }

        .game-custom .roger-cloche .cash {
            transition: transform 0.5s;
            transition-delay: 3.6s;
            align-self: end;
            margin-bottom: 19%;
            margin-left: -26%;
            transform: scale(0);
            opacity: 0;
            width: calc(100% * 246 / 413);
        }

        .game-custom .roger-cloche .cloche {
            align-self: end;
            margin-bottom: 10%;
            margin-left: -26%;
            transform: rotate(30.5deg);
            width: calc(100% * 250 / 413);
        }

        .game-custom .roger-cloche .roger-arm {
            margin-left: -53%;
            margin-top: 38%;
            opacity: 0;
        }

    .game-custom.reveal .roger-cloche .cloche {
        transition: transform 0.7s ease-in-out;
        transform: rotate(-46.7deg) translate(10%, -106%);
        transition-delay: 3.5s
    }

    .game-custom.reveal .roger-cloche .roger-arm {
        transition: opacity 0.25s;
        transition-delay: 3.7s;
        opacity: 1;
    }


    .game-custom.reveal.win .roger-cloche .cash {
        transform: scale(1);
        opacity: 1;
        display: inline;
    }

    .game-custom .spin-wheel {
        opacity: 0;
    }

    .game-custom.reveal .spin-wheel {
        animation: spinWheel none 4s;
    }

    .game-custom.reveal .selector-wheel {
        opacity: 0;
        transition: opacity 0.25s none;
    }

    .game-custom .reveal-bg {
        opacity: 0;
    }

    .game-custom.reveal .reveal-bg {
        transition: opacity 0.25s none;
        opacity: 1;
        transition-delay: 3.5s;
    }

    .game-custom.reveal .title {
        opacity: 0;
    }

    .game-custom .touch-instructions {
        align-self: start;
        z-index: 10;
        transform: rotate(80deg) translateY(400%) translateX(240%);
        animation: demonstrateTouch ease-in-out 3s infinite;
    }

    .game-custom .mouse-instructions {
        width: 50px;
        align-self: start;
        z-index: 10;
        transform: translateY(120%) translateX(0%);
        animation: demonstrateMouse ease-in-out 5s infinite;
    }
        /*
        translateY(200%) translateX(-410%)
        translateY(200%) translateX(420%)
    */

        .game-custom .mouse-instructions .click {
            opacity: 0;
            animation: demonstrateMouseClick ease-in-out 5s infinite;
        }

    .game-custom .copyright-1 {
        align-self: end;
        margin-left: -45%;
        margin-bottom: 1%;
        color: var(--schmackos-yellow);
        font-size: 1.071rem;
    }

    .game-custom .copyright-2 {
        align-self: end;
        margin-right: -23%;
        margin-bottom: 1%;
    }

    .game-custom h1 {
        margin-top: -0.75rem;
    }

        .game-custom h1.extra-large {
            font-size: 7.5rem;
        }

    .game-custom sup.cash {
        font-size: 0.572em;
    }


    .game-custom sup.disclaimer {
        font-size: 0.4em;
        top: -1em;
    }

.yellow-box {
    background: var(--schmackos-yellow);
    position: relative;
    z-index: 5;
    border-radius: 20px;
    padding: 30px;
    max-width: 480px;
    margin: 0 auto;
}

    .yellow-box a.btn-outline-primary {
        border-color: var(--schmackos-maroon);
        color: var(--schmackos-maroon);
    }

    .yellow-box h3 {
        color: var(--schmackos-red);
    }

.text-yellow {
    color: var(--schmackos-yellow);
}

.text-blond {
    color: var(--schmackos-blond);
}

.packs {
    margin-bottom: -10px;
    margin-top: 50px;
}

    .packs img {
        max-width: 325px;
        width: 100%;
    }

.background-additional {
    background: transparent url(/images/packs-bg.webp) no-repeat center 200px;
    background-attachment: fixed;
}

@keyframes demonstrateTouch {
    0% {
        transform: rotate(80deg) translateY(400%) translateX(240%);
    }

    30% {
        transform: rotate(80deg) translateY(-200%) translateX(280%);
    }

    50% {
        transform: rotate(80deg) translateY(-200%) translateX(280%);
    }

    70% {
        transform: rotate(80deg) translateY(400%) translateX(240%);
    }
}

@keyframes demonstrateMouse {
    0% {
        transform: translateY(120%) translateX(0%);
    }

    20% {
        transform: translateY(180%) translateX(-410%);
    }

    40% {
        transform: translateY(180%) translateX(-410%);
    }

    60% {
        transform: translateY(180%) translateX(420%);
    }

    80% {
        transform: translateY(180%) translateX(420%);
    }

    100% {
        transform: translateY(120%) translateX(0%);
    }
}

@keyframes demonstrateMouseClick {
    0% {
        opacity: 0;
    }

    19% {
        opacity: 0;
    }

    20% {
        opacity: 1;
    }

    25% {
        opacity: 0.5;
    }

    30% {
        opacity: 1;
    }

    35% {
        opacity: 0.5;
    }

    39% {
        opacity: 1;
    }

    40% {
        opacity: 0;
    }

    59% {
        opacity: 0;
    }

    60% {
        opacity: 1;
    }

    65% {
        opacity: 0.5;
    }

    70% {
        opacity: 1;
    }

    75% {
        opacity: 0.5;
    }

    79% {
        opacity: 1;
    }

    80% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes spinWheel {
    0% {
        opacity: 0;
    }

    5% {
        opacity: 1;
    }

    95% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes waveitlikeyoudontcare {
    0% {
        transform: rotate(-30deg);
    }

    50% {
        transform: rotate(30deg);
    }

    100% {
        transform: rotate(-30deg);
    }
}

@keyframes swoopRight {
    0% {
        opacity: 0;
    }

    22% {
        opacity: 0;
    }

    28% {
        opacity: 1;
    }


    72% {
        opacity: 1;
    }

    78% {
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}

@keyframes swoopLeft {
    0% {
        opacity: 1;
    }

    22% {
        opacity: 1;
    }

    28% {
        opacity: 0;
    }

    72% {
        opacity: 0;
    }

    78% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}

@media (max-width: 700px) {
    body {
    }
}

@media (max-width: 670px) {
}

@media (max-width: 650px) {
    body {
    }

    .hero-page {
        max-width: 95%;
    }

    .home-title img {
        max-width: 65%;
    }
}

@media (max-width: 600px) {

    .page-hero-default main .container {
        padding: 25px;
    }


    .packs {
        margin-bottom: -25px;
    }


    .game-custom {
        margin-top: 13%;
    }

        .game-custom .top-text {
            margin-top: -13%;
        }
}


@media (max-width: 500px) {
    :root {
    }

    .footer-nav a.nav-link {
        font-size: 1.2rem;
    }
}



@media (max-width: 450px) {
    .game-custom h1.extra-large {
        font-size: calc(105 * 100svw / 450);
    }

    .game-custom h2 {
        font-size: calc(50 * 100svw / 450);
    }
}

@media (max-height: 1100px) {
}
