@media only screen and (max-width: 1450px) {

    .menu-item img {
        width: 25px;
    }

    .main-menu {
        gap: 5px;
    }
}

@media only screen and (max-width: 1279px) {
    .info-menu a {
        min-width: auto;
    }

    .contact-wrap {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 5px;
    }

    .ref-invite-info {
        flex-direction: column;
    }

    .invite-url-box {
        flex-direction: column;
    }

    .invite-url-box input {
        padding: 10px 30px 10px 10px;
    }

    .invite-url-box .copy-btn {
        top: 30px;
    }

    .ref-invite {
        background: url('../images/referral/ref-banner.webp') no-repeat center center/cover;
        padding: 20px 20px 10px;
    }

    .ref-banner-bg {
        display: none;
    }

    .ref-invite-info {
        flex-direction: column;
    }

    .ref-invite-content {
        max-width: 100%;
        position: relative;
        top: auto;
        left: auto;
    }

    .ref-income-wrap,
    .ref-rebate {
        width: 100%;
    }

    .ref-stats {
        grid-template-columns: repeat(2, 1fr);
        z-index: 1;
    }

    .ref-income {
        padding-bottom: 1.5vw;
        flex-direction: column;
    }

    .ref-invite h2 {
        font-size: 18px;
    }

    .ref-invite h3 {
        font-size: 20px;
    }

    .ref-gift-icon {
        position: initial;
    }

    .ref-flower {
        max-width: 80px;
        top: -14%;
        left: -12%;
    }

    .ref-shells {
        max-width: 80px;
        bottom: -4%;
        right: -7%;
    }

    .ref-coral {
        max-width: 50px;
    }

    .acc-nav {
        display: none;
    }

    .acc-lvl {
        width: 100%;
        padding: 10px;
    }

    .acc-info,
    .acc-info-left {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .acc-info {
        padding: 10px;
    }

    .acc-wrap {
        display: flex;
        flex-direction: column;
        margin: 10px 0px;
    }

    .acc-link {
        display: block;
    }

    .acc-row {
        display: block;
        height: auto;
    }

    .acc-row .acc-row-wrap:first-child {
        padding-bottom: 10px;
    }

    .acc-info-right {
        flex-direction: initial;
        justify-content: center;
    }

    .token-btn {
        width: 50%;
        padding: 10px;
    }

    .wallet-link {
        display: flex;
    }

    .menu-row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: clamp(8px, 2vw, 14px);
        position: relative;
    }

    .logo-area {
        order: 1;
        flex: 1 1 100%;
        display: flex;
        justify-content: center;
        margin: 0;
    }

    .logo-area img {
        max-width: clamp(130px, 45vw, 170px);
        height: auto;
        display: block;
    }

    .lang-select {
        position: absolute;
        top: 0;
        right: 0;
    }

    .lang-select .btn {
        padding: .35rem .5rem;
        border-radius: .5rem;
        background: #1b2430;
    }

    .lang-select img {
        max-width: clamp(18px, 5vw, 24px);
        height: auto;
    }

    .right-actions {
        order: 2;
        width: 100%;
        display: flex;
        gap: 10px;
    }

    .btn-login,
    .btn-signup {
        flex: 1 1 0;
        width: auto;
        min-width: 0 !important;
        max-width: none;
        height: auto;
        padding: 10px 12px;
        border-radius: 8px;
        font-size: 12px;
        box-sizing: border-box;
    }

    .main-menu {
        order: 3;
        flex: 1 1 100%;
        margin: 0;
        overflow-x: auto;
        justify-content: center;
        gap: clamp(14px, 5vw, 24px);
        padding: .5rem;
        border-radius: .6rem;
    }

    .main-menu::-webkit-scrollbar {
        display: none;
    }

    .menu-item {
        flex: 0 0 auto;
        max-width: 50px;
        min-width: 75px;
    }

    .menu-item img {
        max-width: clamp(22px, 7vw, 32px);
        height: auto;
    }

    .menu-item span {
        font-size: clamp(8px, 2.5vw, 11px);
        white-space: nowrap;
    }

    .index-menu {
        display: none;
    }

    .top-header2{
        margin: 10px 0px 0px;
    }

    .top-header2.sticky{
        margin: 0px;
    }

    .index-wrap {
        display: grid;
        grid-template-columns: 69% 30%;
        padding: 20px 0px 30px;
        gap: 15px;
    }

    .header-wrap {
        padding: 0px;
    }

    .prod-tab .nav-pills {
        gap: 5px;
        display: grid;
        grid-template-columns: repeat(6, 1fr);
    }

    .top-header3.sticky {
        position: sticky;
        top: 0;
        left: 0;
        background: #16242700;
        /* box-shadow: 0 0 15px 0 rgb(4 144 146); */
    }


    /* side-menu */
    .mobile-side-drawer {
        display: flex;
        position: fixed;
        left: -8px;
        top: 0;
        z-index: 999;
        transform: translateX(calc(-100% + 42px));
        transition: transform .3s ease;
        max-height: 315px;
    }

    .mobile-side-drawer.active {
        transform: translateX(0);
        max-height: 420px;
    }

    .mobile-side-panel {
        max-width: 88vw;
        /* max-height: 300px; */
        padding: 15px;
        overflow: hidden;
        background: #11151c;
        border: 1px solid #00d98c;
        border-left: 0;
        border-radius: 0 12px 12px 0;
    }

    .mobile-side-scroll {
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
    }

    .mobile-side-scroll::-webkit-scrollbar {
        display: none;
    }

    .mobile-side-grid {
        display: grid;
        grid-auto-flow: column;
        /* grid-template-rows: repeat(2, 1fr); */
        gap: 10px;
    }

    .mobile-side-grid .side-menu-card {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 8px;
        /* padding: 18px 14px; */
        border-radius: 14px;
        text-align: center;
        min-width: 130px;
    }

    .mobile-side-grid .menu-icon {
        max-width: 70%;
        display: block;
        margin: 0 auto;
        width: 50px;
        height: 50px;
    }

    .mobile-side-grid .menu-content {
        margin: 0;
        width: 100%;
    }

    .mobile-side-grid .menu-content h4 {
        font-size: 13px;
        margin-bottom: 4px;
        white-space: nowrap;
    }

    .mobile-side-grid .menu-content p {
        font-size: 11px;
        margin-bottom: 12px;
        min-height: 25px;
    }

    .mobile-side-grid .menu-btn {
        min-width: 0;
        height: auto;
        padding: 7px 22px;
        font-size: 10px;
        border-radius: 8px;
        white-space: nowrap;
    }

    .mobile-side-toggle {
        align-self: center;
        padding: 13px 10px;
        border: 0;
        border-radius: 0 10px 10px 0;
        background: linear-gradient(180deg, #18e69c, #07996d);
        color: #fff;
    }

    .side-dots {
        display: flex;
        justify-content: center;
        gap: 6px;
        margin-top: 10px;
    }

    .side-dot {
        padding: 0;
        border: 0;
        border-radius: 50%;
        inline-size: .45rem;
        aspect-ratio: 1;
        background: rgba(255, 255, 255, .35);
    }

    .side-dot.active {
        background: #fff;
    }

    .width-show {
        display: block;
    }

}

@media only screen and (max-width: 991px) {
    .top-header {
        padding: 10px 0px;
    }

    .m-show {
        display: block;
    }

    .d-show {
        display: none;
    }

    ::-webkit-scrollbar {
        -webkit-appearance: none;
        width: 0px;
        display: none;
    }

    .logo {
        /* max-width: 120px; */
        height: 36px;
    }

    .reg-btn,
    .login-btn {
        padding: 10px 8px;
        font-size: 12px;
    }

    .nav-right {
        gap: 5px;
    }

    .lang-select .btn {
        padding: 7px 10px;
        font-size: 12px;
    }

    .t-body {
        padding-top: 0px;
    }

    .index-menu {
        display: none;
    }

    .index-wrap {
        display: flex;
        flex-direction: column;
        padding: 0px 0px;
        gap: 0px;
    }

    .banner-arrow-prev,
    .banner-arrow-next {
        max-width: 30px;
        font-size: 10px;
    }

    .banner-arrow {
        bottom: 4px;
    }

    .slider-claim-btn {
        bottom: 30px;
        left: 10px;
        color: var(--text-color);
        padding: 5px 10px;
        font-size: 12px;
    }

    .index-right {
        margin-left: 0px;
    }

    .game-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
    }

    .fast-wrap {
        grid-template-columns: repeat(1, 1fr);
        gap: 6px;
        justify-items: center;
    }

    .fast-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 6px;
    }

    .check-in-grid {
        gap: 6px;
    }

    .more-games {
        padding: 15px;
        font-size: 3vw;
    }

    .more-games.m-show {
        display: flex;
    }

    .check-in-claim,
    .check-in-claim span {
        font-size: 3vw;
    }

    .promo-arrow-prev,
    .promo-arrow-next {
        width: 22px;
        height: 22px;
        font-size: 10px;
    }

    .footer-grid {
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
    }

    .footer-grid .footer-col:nth-child(4),
    .footer-grid .footer-col:nth-child(5) {
        width: 100%;
    }

    .footer-col h3 {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .footer-col ul li a {
        font-size: 12px;
    }

    .footer-partners {
        gap: 15px;
        justify-content: center;
    }

    .footer-partners img {
        max-width: 100px;
    }

    .contact-item .opt,
    .contact-item .desc {
        font-size: 12px;
    }

    .contact-item .opt {
        width: 60px;
    }

    .app-btn {
        width: 160px;
    }

    .app-buttons {
        flex-wrap: wrap;
        flex-direction: row;
    }

    .footer-copyright {
        justify-content: initial;
        flex-direction: column;
        align-items: initial;
        gap: 10px;
    }

    .menu-btm {
        display: block;
        width: 100%;
        text-align: center;
        padding-bottom: 0px;
    }

    .t-footer {
        margin: 0px 6px 80px;
        border-radius: 10px;
        padding: 20px 10px;
        background-size: cover;
    }

    .t-footer .container {
        background: rgba(0, 0, 0, 0.3);
        border-radius: 10px;
        padding: 0px;
    }

    .float-action {
        top: auto;
        bottom: 10%;
    }

    .prod-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
    }

    .prod-mobile-menu {
        display: flex;
    }

    .slots-opt {
        overflow-x: scroll;
    }

    .slots-opt-item {
        white-space: nowrap;
    }

    .slots-opt-wrap {
        flex-direction: column;
    }

    .slots-search {
        width: 150px;
    }

    .prod-tab .nav-pills {
        grid-template-columns: repeat(3, 1fr);
        gap: 5px;
    }

    .prod-tab .nav-pills .nav-link {
        padding: 6px;
    }

    .prod-tab .nav-pills .nav-link img {
        max-height: 25px;
    }

    .promo-container {
        grid-template-columns: 1fr;
    }

    .filter-menu-bar {
        overflow-x: auto;
        gap: 5px;
    }

    .info-menu {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: scroll;
        padding: 10px 3px;
    }

    .info-menu a {
        min-width: auto;
        white-space: nowrap;
        align-self: center;
        border-radius: 5px;
        margin: 0px;
    }

    .info-bg {
        gap: 10px;
        padding: 10px;
        min-height: auto;
    }

    .income-title {
        padding: 0px;
    }

    .income-amount-wrap {
        justify-content: center;
    }

    .mission-bg ul {
        grid-template-columns: repeat(3, 1fr);
    }

    .daily-rewards {
        grid-template-columns: repeat(4, 1fr);
    }

    .modal-congrat h5 {
        font-size: 24px;
    }

    .play2earn-wrapper {
        grid-template-columns: repeat(1, 1fr);
    }

    .event-title span {
        font-size: 18px;
    }

    .history-play-to-earn {
        display: flex;
        justify-content: space-between;
        gap: 10px;
    }

    .top-p2e-btn {
        font-size: 12px;
    }

    .p2e-select {
        max-width: fit-content;
    }

    .p2e-table-pagi button {
        padding: 0px;
    }

    .event-title.p2e {
        flex-direction: column;
        align-items: start;
    }

    .wheel-pointer {
        width: 30px;
        height: 30px;
    }

    .redempt-title {
        margin: 0;
    }

    .redempt-title h2 {
        font-size: 28px;
    }

    .redempt-title .date {
        font-size: 2vw;
        width: 80%;
        margin: 0 auto;
    }

    .redempt-banner-wrap {
        top: 62%;
    }

    .redempt-total,
    .redempt-tnc-btn {
        font-size: 12px;
        padding: 5px;
    }

    .blog-wrap {
        padding: 0px;
    }

    .blog-item {
        padding: 15px;
    }

    .blog-ttle {
        font-size: 18px;
    }

    .blog_title {
        font-size: 28px;
    }

    .blog-wrap h4 {
        font-size: 20px;
    }

    .blog-wrap h5 {
        font-size: 16px;
    }

    .btn-more,
    .btn-back {
        padding: 6px 15px;
        font-size: 12px;
    }

    .vip-container {
        flex-direction: column;
    }

    .progress-steps {
        flex-direction: column;
        gap: 15px;
    }

    .step-divider {
        width: 2px;
        height: 20px;
        margin: 0px;
    }

    .lvl-req {
        text-align: center;
    }

    .terms-btn {
        float: none;
        display: block;
        margin: 0 auto;
    }

    .vip-lvl-req {
        flex-direction: column;
        gap: 10px;
    }

    .acc-lvl-name {
        font-size: 20px;
    }

    .acc-info-name {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .acc-bln {
        gap: 5px;
    }

    .acc-lvl-icon img {
        width: 50px;
    }

    .acc-bln-amt {
        font-size: 22px;
    }

    .acc-info-mid {
        gap: 0px;
    }

    .acc-content-wrap .nav {
        gap: 5px;
        display: flex;
        flex-wrap: nowrap;
        overflow: scroll;
        white-space: nowrap;
    }

    .chatMsg {
        padding: 0px;
    }

    .amt-qr {
        flex-direction: column;
        margin-top: 10px;
    }

    .qr-info {
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }

    .acc-wrap {
        min-height: auto;
    }

    .hot-games-section {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 14px;
    }

    .hot-title {
        min-width: unset;
        font-size: 15px;
    }

    .hot-nav {
        display: none;
    }

    .hotGameSwiper {
        width: 100%;
    }

    .hotGameSwiper .swiper-slide {
        /* height: 60px; */
    }

    .hotGameSwiper .swiper-slide img {
        height: auto;
    }

    .header-wrap {
        padding: 0px;
    }

    .jackpot-amount {
        font-size: 2rem;
    }

    .t-header {
        position: relative;
    }

    .tournament-card {
        display: none;
    }

    .footer-box {
        padding: 20px 24px 16px;
        border-radius: 10px;
    }

    .site-footer {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .footer-col {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .12);
        min-height: unset;
        padding: 18px 0;
    }

    .footer-col:first-child {
        padding-top: 0;
    }

    .footer-col:last-of-type {
        border-bottom: 1px solid rgba(255, 255, 255, .12);
    }

    .footer-title {
        margin-bottom: 12px;
        font-size: 14px;
    }

    .footer-title img {
        max-width: 18px;
        height: auto;
    }

    .footer-col a {
        display: inline-block;
        margin: 0 10px 8px 0;
        font-size: 13px;
        color: #a6a8ae;
    }

    .footer-col a:not(:last-child)::after {
        content: "|";
        margin-left: 10px;
        color: rgba(255, 255, 255, .35);
    }

    .social-list,
    .product-list,
    .license-list {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 14px;
    }

    .social-list img {
        max-width: 30px;
        height: auto;
    }

    .product-list img {
        max-width: 72px;
        height: auto;
    }

    .license-list img {
        max-width: 80px;
        height: auto;
    }

    .footer-copyright {
        padding-top: 14px;
    }

    .copyright-text {
        margin: 0;
        text-align: center;
        font-size: 12px;
        color: #aaa;
    }

    .main-menu {
        justify-content: flex-start;
        gap: 5px;
    }

    .slot-section .index-games {
        min-height: 520px;
        display: flex;
        flex-direction: column;
        margin-top: 20px;
    }

    .top-header3 {
        width: 100%;
        z-index: 9999;
    }

    .top-header3.sticky {
        position: fixed;
        top: 0;
        left: 0;
        margin: 0px;
    }
            
    .top-header3.sticky .container {
        margin: 0px;
    }

    .top-header2.sticky {
        position: relative;
        background: none;
        box-shadow: none;
    }

    .top-header2.sticky .menu-row {
        margin: 0px;
    }

}


@media only screen and (max-width: 767px) {
    .login-footer {
        flex-direction: column;
        gap: 10px;
    }

    .acc-activate {
        padding: 0px 0px 10px;
    }

    .reg-text {
        text-align: center;
    }

    .otp-field input {
        width: 100%;
    }

    .comm-info {
        display: block;
    }

    .comm-pyramid img {
        padding-top: 20px;
    }

    .p2e-amount {
        grid-template-columns: repeat(1, 1fr);
    }

    .fw-token-btn,
    .fw-spin-btn,
    .fw-info-btn {
        font-size: 12px;
        padding: 5px;
    }

    .wheel-controls {
        bottom: 5px;
    }

    .redempt-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 40px;
    }

    .redempt-item img {
        max-width: 120px;
    }

    .redempt-points {
        font-size: 24px;
    }

    .his-date {
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 0px;
    }
}

@media only screen and (max-width: 600px) {
    .ref-invite {
        justify-content: center;
    }
}

@media only screen and (max-width: 550px) {
    .mission-bg ul {
        grid-template-columns: repeat(2, 1fr);
    }

    .daily-banner h2 {
        font-size: 13px;
    }

    .daily-banner h3 {
        font-size: 12px;
        margin-bottom: 5px;
    }

    .total-coins {
        font-size: 12px;
        padding: 5px;
    }

    .daily-text {
        position: absolute;
        bottom: 12%;
        left: 10px;
    }
}

@media only screen and (max-width: 480px) {
    .footer-grid {
        gap: 10px;
    }

    .footer-col h3 {
        font-size: 12px;
    }

    .footer-col ul li a {
        font-size: 10px;
    }

    .contact-item .opt,
    .contact-item .desc {
        font-size: 10px;
    }

    .contact-wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    .ref-coin-icon {
        position: initial;
    }

    .ref-rebate {
        text-align: center;
    }

    .daily-rewards {
        grid-template-columns: repeat(3, 1fr);
    }

    .balance-amount {
        padding: 12px 5px;
        font-size: 12px;
    }
}