/* Elements with any of these child classes */

.elementor {
    background-image: linear-gradient(to bottom, #edf4ff 71%, #8cb1f4 128%);
}

.lbv .elementor {
    background-image: unset;
}

#smart-banner {
    z-index: 99998 !important;
}

#cmplz-cookiebanner-container {
    position: relative;
    z-index: 99999;
}

.e-con.e-flex {
    --flex-wrap: nowrap;
}

.elementor-element:has(.top-nav),
.elementor-element:has(.main-footer),
.elementor-element:has(.classic-main-footer) {
    padding: unset !important;
}

.e-con-inner:has(.top-nav),
.e-con-inner:has(.main-footer),
.e-con-inner:has(.classic-main-footer) {
    margin: unset !important;
    max-width: 100% !important;
    padding-block-start: unset !important;
    padding-block-end: unset !important;
}

.e-con-inner:has(.top-nav) {
    max-width: unset;
}

.larger-register-btn {
    height: 2.25rem;
    border-radius: 2rem;
}

.smaller-login-btn {
    height: 1.5rem;
    width: 4.5rem;
    margin: 0 1rem 0 1rem;
}

.login-no-bg-btn {
    background-color: unset;
    text-decoration: underline;
    width: unset;
    margin: 0 1rem 0 1rem !important;
}

.nav-btns:has(.login-no-bg-btn),
.nav-btns:has(.smaller-login-btn) {
    width: unset;
}

.jackpots-widget {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.jackpot-amounts-img {
    background-image: url('../images/jackpots/jackpot-amounts.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    aspect-ratio: 20.75 / 10.625;
    display: grid;
    grid-column-gap: 1rem;
    grid-template-rows: 25% 25% 25%;
    grid-template-columns: 5% 1fr 1fr 5%;
    position: relative;
    white-space: nowrap;
}

.jackpots-wide .jackpot-amounts-img {
    background-image: url('../images/jackpots/jackpot-amounts-wide.png');
    grid-template-rows: unset;
}

.jackpot-slot {
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-shadow: 0 0.125rem 0.25rem #160e44;
    font-weight: 700;
}

.jackpot-slot.grand {
    position: relative;
    bottom: 20%;
    grid-column: 2 / span 2;
    grid-row: 2;
    font-size: clamp(2rem, 2.75vw, 3.75rem);
}

.jackpots-wide .jackpot-slot.grand {
    height: 0;
    bottom: 0;
    top: 6%;
}

.jackpot-slot.major,
.jackpot-slot.minor {
    font-size: clamp(1.25rem, 1.75vw, 2.75rem);
    position: relative;
    bottom: 35%;
}

.jackpots-wide .jackpot-slot.major,
.jackpots-wide .jackpot-slot.minor {
    bottom: 30%;
}

.jackpot-slot.major {
    grid-column: 2;
    grid-row: 4;
}

.jackpots-wide .jackpot-slot.major {
    grid-row: 2;
    right: 25%;
    height: 0;
    bottom: 0;
    top: 6%;
}

.jackpot-slot.minor {
    grid-column: 3;
    grid-row: 4;
}

.jackpots-wide .jackpot-slot.minor {
    grid-row: 2;
    left: 25%;
    height: 0;
    bottom: 0;
    top: 6%;
}

@media all and (max-width: 64rem) {
    .elementor-widget-container:has(#main-footer) {
        padding: 0;
    }
    .nav-btns.with-menu:has(.play-free-now-btn),
    .nav-btns.with-menu:has(.get-free-coins-btn) {
        width: 14rem;
    }

    .play-free-now-btn,
    .get-free-coins-btn {
        width: 6.5rem;
    }

    .larger-register-btn {
        min-width: 6rem;
    }

    .smaller-login-btn {
        margin: 0 0.6rem;
    }
}

@media all and (max-width: 32rem) {
    .jackpot-slot.grand {
        font-size: clamp(1.35rem, 4.5vw, 2.5rem);
        bottom: 0.25rem;
        height: unset;
        top: unset;
    }

    .jackpots-wide .jackpot-slot.grand {
        font-size: clamp(1.35rem, 4.5vw, 2.5rem);
        bottom: 0.25rem;
    }

    .jackpot-slot.major,
    .jackpot-slot.minor,
    .jackpots-wide .jackpot-slot.minor {
        font-size: clamp(1rem, 3.5vw, 2rem);
        bottom: 0.75rem;
    }
}
