:root {
    --main-font: 'Inter', sans-serif;
    --main-font-tittle-weight: 400;
    --main-font-tittle-bold-weight: 600;
    --main-font-bold-weight: 800;
    --main-font-small-size: 12px;
    --main-font-normal-size: 12px;
    --main-font-body-size: 14px;
    --main-font-big-normal-size: 16px;
    --main-font-tittle-size: 18px;
    --main-font-big-tittle-size: 24px;
    --main-font-ex-tittle-size: 30px;
    --btn-linear-gradient-blue: linear-gradient(0deg, #054FBA 0%, #1979E6 32.5%, #1F87F4 61.5%, #238FFC 80.4%);
    --btn-linear-gradient-purple: linear-gradient(358.91deg, #5809A2 -23.89%, #810ABA 15.97%, #930BC7 60.42%, #C00AE2 98.75%);
    ;
}

body {
    font-family: var(--main-font);
    background-color: #000;
}

/* 如果特定元素需要这个字体 */
.main-font {
    font-family: var(--main-font);
}

img {
    max-width: 100%;
}

.main-font-small-size {
    font-size: var(--main-font-small-size) !important;
}

.main-font-normal-size {
    font-size: var(--main-font-normal-size) !important;
}

.main-font-body-size {
    font-size: var(--main-font-body-size) !important;
}

.main-font-big-normal-size {
    font-size: var(--main-font-big-normal-size) !important;
}

.main-font-tittle-size {
    font-size: var(--main-font-tittle-size) !important;
}

.main-font-big-tittle-size {
    font-size: var(--main-font-big-tittle-size) !important;
}

.main-font-ex-tittle-size {
    font-size: var(--main-font-ex-tittle-size) !important;
}

.main-linear-color {
    background: var(--btn-linear-gradient-purple) !important;
}

.main-font-tittle-weight {
    font-weight: var(--main-font-tittle-weight) !important;
}

.main-font-tittle-bold-weight {
    font-weight: var(--main-font-tittle-bold-weight) !important;
}

.main-font-bold-weight {
    font-weight: var(--main-font-bold-weight) !important;
}

img {
    vertical-align: middle;
}

span {
    vertical-align: middle;
}

.border-red-1 {
    border: 2px solid #FF0000 !important;
}

.border-light-purple-2 {
    border: 2px solid #AD07DA !important;
}

.border-top-light-purple-2 {
    border-top: 2px solid #AD07DA !important;
}

.border-0 {
    border: 0;
}

.border-25 {
    border: 25px solid;
}

.table.border-radius-all {
    border-radius: 12px;
    overflow: hidden;
}

.fit-content {
    width: fit-content;
}

.row.justify-content-center {
    display: flex;
    justify-content: center;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left !important;
}

.font-bold {
    font-weight: bold;
}

.m-0 {
    margin: 0 !important;
}

.mt-05 {
    margin-top: 0.5rem;
}

.w-5 {
    width: 5% !important;
}

.w-10 {
    width: 10% !important;
}

.w-25 {
    width: 25% !important;
}

.w-75 {
    width: 75% !important;
}

.w-80 {
    width: 80% !important;
}

.w-90 {
    width: 90% !important;
}

.h-5 {
    height: 5rem;
}

.d-none {
    display: none;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-items-center {
    align-items: center !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row {
    flex-direction: row !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.ms-auto {
    margin-inline-start: auto !important;
}

.border-radius-0 {
    border-radius: 0 !important;
}

.border-radius-15px {
    border: 3px solid;
    border-radius: 15px;
}

.border-shadow-15px {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
    border: 1px solid #000;
}

.header-ani {
    animation: header-move 0.2s alternate infinite;
}

.border-radius-top {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    overflow: hidden;
}

@keyframes header-move {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(-5px);
    }
}

.bg-home {
    position: relative;
    background-image: url(../../images/home/home-bg.webp);
    background-size: 100% auto;
    background-repeat: no-repeat repeat;
    background-position: top center;
}

.home-bg-lcp {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    display: block;
    z-index: 0;
    pointer-events: none;
    user-select: none;
}

.bg-home>*:not(.home-bg-lcp) {
    position: relative;
    z-index: 1;
}

.frontend.myPagination strong {
    padding: 5px 10px;
    /*background-color:#0279ff; */
    color: #fff;
    /*border:1px solid #0279ff;*/
    border-radius: 3px;
}

.frontend.myPagination a {
    border: 1px solid #ebedf2;
    padding: 5px 10px;
    color: #fff;
    border-radius: 3px;
}

.frontend.myPagination a:hover {
    color: #fff;
    text-decoration: none;
    /*background-color:#0279ff; */
    /*border:1px solid #0279ff;*/
}

.footer-list {
    width: 100%;
    text-align: left;
    margin-bottom: 0px;
    padding-left: 0px;
}

.footer-list li {
    margin-top: 8px;
    display: inline-flex;
}

.footer-list li a {
    padding: 0 8px;
    color: white;
    border-right: 1px solid white;
    text-transform: uppercase;
}

.footer-list li:last-child a {
    border-right: none;
}

.footer-container {
    border-bottom: 5px solid #7600EE;
}

.login-header-list {
    width: 100%;
    text-align: right;
    margin-bottom: 0px;
}

.login-header-list li {
    margin-top: 10px;
    display: inline-flex;
}

.login-header-list li a {
    font-weight: bold;
    padding: 0 10px;
}

/* 1. Modal 整体特效 */
.modern-modal .modal-content {
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 15px 50px rgba(123, 0, 238, 0.25);
    overflow: hidden;
}

/* 标题渐变色 */
.text-gradient {
    background: linear-gradient(135deg, #7B00EE 0%, #A855F7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 1.5rem;
    letter-spacing: 1px;
}

/* 2. 输入框现代化重构 */
.modern-input {
    height: 52px;
    background: #f8f9fa !important;
    border: 4px solid #00D4FF !important;
    border-radius: 12px !important;
    padding-left: 45px !important;
    /* 为图标留位置 */
    font-size: 15px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.modern-input:focus {
    background: #fff !important;
    border-color: #7B00EE !important;
    box-shadow: 0 8px 20px rgba(123, 0, 238, 0.1) !important;
}

/* 图标定位 */
.input-icon-wrapper {
    position: relative;
}

.icon-left {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #adb5bd;
    z-index: 10;
    transition: color 0.3s;
}

.modern-input:focus+.icon-left,
.modern-input:focus~.icon-left {
    color: #7B00EE;
}

/* 3. 渐变提交按钮 */
.btn-modern-gradient {
    width: 100%;
    height: 52px;
    background: linear-gradient(135deg, #7B00EE 0%, #A855F7 100%);
    border: none;
    border-radius: 12px;
    color: white;
    font-weight: 700;
    font-size: 16px;
    box-shadow: 0 4px 15px rgba(123, 0, 238, 0.3);
    transition: all 0.3s;
    cursor: pointer;
}

.btn-modern-gradient:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(123, 0, 238, 0.4);
    filter: brightness(1.1);
}

.btn-modern-gradient:active {
    transform: translateY(0);
}

/* 4. 其他小组件 */
.close-custom {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 32px;
    height: 32px;
    background: #fff;
    border-radius: 50%;
    border: none;
    opacity: 0.7;
    transition: 0.3s;
    z-index: 100;
}

.close-custom:hover {
    opacity: 1;
    background: #f1f3f5;
    transform: rotate(90deg);
}

.forgot-link {
    font-size: 13px;
    color: #6c757d;
    text-decoration: none !important;
    transition: color 0.2s;
}

.forgot-link:hover {
    color: #7B00EE;
}

#loginModal .modal-body img,
#loginModal .login-modal-logo {
    width: 50% !important;
    max-width: 160px;
    height: auto;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}

/* 1. 模拟 No-Gutters 效果 */
.row-tight {
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex;
    align-items: center;
    /* 垂直居中 */
}

.row-tight [class*="col-"] {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

/* 2. 验证码一体化容器 */
.captcha-container {
    background: #f8f9fa;
    border: 1.5px solid #ececec;
    border-radius: 12px;
    padding: 6px;
    transition: border-color 0.3s;
}

.captcha-container:focus-within {
    border-color: #7B00EE;
    background: #fff;
}

/* 3. 覆盖 BS3 默认输入框样式 */
.fgp-modern-input {
    height: 50px !important;
    border-radius: 12px !important;
    border: 1.5px solid #ececec !important;
    box-shadow: none !important;
    font-size: 15px !important;
}

.captcha-input-box {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    height: 34px !important;
    padding: 0 !important;
    font-size: 14px !important;
    text-align: left;
}

/* 4. 按钮美化 */
.btn-modern-gradient {
    height: 55px !important;
    background: linear-gradient(135deg, #8E2DE2 0%, #4A00E0 100%) !important;
    border-radius: 15px !important;
    border: none !important;
    color: #fff !important;
    font-weight: bold !important;
    font-size: 16px !important;
    box-shadow: 0 6px 20px rgba(74, 0, 224, 0.3) !important;
    transition: transform 0.2s;
}

.btn-modern-gradient:active {
    transform: scale(0.98);
}

/* 5. 辅助类 */
.rounded-8 {
    border-radius: 8px;
}

.text-purple {
    color: #7B00EE;
}

#forgotPasswordModal .modal-body img {
    width: 50% !important;
}


#language-menu {
    background: transparent;
    color: white;
}

.mobile-login-panel {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.validationScreenLoader,
.screenLoader {
    position: absolute;
    z-index: 99999;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
    padding: 20px;
    margin: 0 auto;
    /*margin:-45px 0 0 -100px;*/
    text-align: center
}

.screenLoaderContent {
    position: fixed;
    top: 50%;
    left: 25%;
    right: 25%;
}

.screenLoaderContent img {
    width: 80px;
}

button:disabled {
    opacity: 0.5;
    pointer-events: none;
}

/* #loginForm input,
#registerForm input{
    background: white;
} */

.headerDiv {
    position: relative;
    border-radius: 15px;
    margin-bottom: 20px;
    background: linear-gradient(135deg,
            #3a5aff 0%,
            #7038ff 35%,
            #9d31ff 65%,
            #c427fb 100%);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 120px;

    font-family: 'Rubik', sans-serif;
    font-weight: 700;
    font-size: 35px;
    line-height: 1.15;
    letter-spacing: 0.01em;
    color: white;

}

/* .main-font 默认 Inter；headerDiv 内统一 Rubik */
.headerDiv .main-font,
.headerDiv button,
.headerDiv .btn {
    font-family: 'Rubik', sans-serif !important;
}



.content-body {
    border: 2px solid #9F2EEA;
    border-radius: 10px;
    padding: 10px;
    background-color: white;
}

.content ul,
.content li {
    color: white;
}

.noticount {
    border-radius: 20px;
    background: red;
    width: 15px;
    height: 15px;
    position: absolute;
    padding: 2px;
    text-align: center;
    top: -5px;
    right: 213px;
}

.m-auto {
    margin: auto;
}

.bankImg img {
    width: 50px;
    margin-right: 5px;
    cursor: pointer;
}

.bankImg img:hover,
.bankImg img.active {
    transform: scale(1.2);
    border: 2px solid #AD07DA;
    border-radius: 10px;
}

.errText {
    color: red;
    font-style: italic;
}

.btn-android {
    background: linear-gradient(to bottom, #c9ffe2 0%, #3ddd85 100%);
    color: #001c3c;
    font-size: 13px;
    padding: 5px 10px;
    font-weight: 700;
    border-radius: 30px;
    display: block;
    margin: auto;
    margin-top: 4px;
    width: 50%;
}

.btn-ios {
    background: linear-gradient(to bottom, #ffffff 0%, #d4d4d4 100%);
    color: #001c3c;
    font-size: 13px;
    padding: 5px 10px;
    font-weight: 700;
    border-radius: 30px;
    display: block;
    margin: auto;
    margin-top: 4px;
    width: 50%;
}

.btn-transfer {
    color: rgba(0, 0, 0, .9);
    font-size: 15px;
    background: linear-gradient(#ffd943, #ffcc01);
}


.btn-history {
    width: 100px;
    color: #fff;
    border-radius: 25px;
    height: 39px;
    padding: 8px 0;
    background: linear-gradient(358.91deg, #5809A2 -23.89%, #810ABA 15.97%, #930BC7 60.42%, #C00AE2 98.75%);

    border: none;
}

.btn-history:hover,
.btn-history.active {
    color: #000;
    background: linear-gradient(358.91deg, #5809A2 -23.89%, #810ABA 15.97%, #930BC7 60.42%, #C00AE2 98.75%);
}

.btn-yellow {
    width: 140px;
    color: rgba(0, 0, 0, .9);
    border-radius: 5px;
    font-size: 15px;
    height: 37px;
    font-weight: 700;
    border: 1px solid #00508e;
    padding: 0px;
    margin-top: 10px;
    background: linear-gradient(#ffd943, #ffcc01);
}

.btn-join {
    border-radius: 10px;
    background: #F6002F;
    color: white;
    font-family: Inter;
    font-weight: 700;
    font-style: Bold;
    font-size: 15px;

}

.btn-light-blue {
    background: #3cc2fa;
    color: black;
}


.custom-file-upload {
    padding: 8px;
    border-radius: 20px;
    font-weight: 300;
    cursor: pointer;
    user-select: none;
}

.custom-file-upload:active {
    opacity: 0.8;
}

.btn-menu {
    background-color: transparent;
    padding-top: 0;
    padding-bottom: 0;
    border: none;
    color: white
}

.btn-menu:hover {
    color: white
}

.btn-custom1 {
    background-color: black;
    color: gold;
    border-image: linear-gradient(rgba(160, 120, 60), rgba(230, 207, 160), rgba(160, 120, 60)) 1;
    font-weight: 800;
    border-radius: 0px;
    border-width: 2px;
}

.btn-custom1:hover {
    background-color: black;
    color: gold;
    border-image: linear-gradient(rgba(160, 120, 60), rgba(230, 207, 160), rgba(160, 120, 60)) 1;
    font-weight: 800;
    border-radius: 0px;
    border-width: 2px;
}

.btn-custom2 {
    background-image: linear-gradient(#d4b254, #fff6a4, #d4b254);
    color: black;
    font-weight: 800;
    border-radius: 0px;
    border: 2px solid transparent;
}

.btn-custom2:hover {
    background-image: linear-gradient(#d4b254, #fff6a4, #d4b254);
    color: black;
    font-weight: 800;
    border-radius: 0px;
    border: 2px solid transparent;
}

.btn-gold.active {
    background: linear-gradient(#f8ba2e, #823c1c);
    color: black;
}

.btn-gold {
    background: linear-gradient(#f5d778, #68491b);
    color: black;
}

.btn-blue {
    background-color: blue;
    color: white;
}

.btn-purple {
    background-color: purple;
    color: white;
}

.btn-red {
    background-color: red;
    color: white;
}

.blink-animation {
    animation: blink 1s linear infinite alternate;
}


.msg-box {
    font-size: 12px;
    position: relative;
    background-color: #7B00EE;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
}

.msg-close {
    position: absolute;
    right: 10px;
    color: white;
    font-size: 30px;
    cursor: pointer;
    line-height: 1;
}


.dropdown .dropdown-menu {
    background-color: #181818;
}

.dropdown .dropdown-menu .dropdown-item {
    display: block;
    padding: 5px 20px;
    color: white;
}

.dropdown .dropdown-menu .dropdown-item:hover {
    background-color: #a97a0e;
}

.bg-custom1 {
    background-color: rgba(0, 0, 0, 0.5);
}

.bg-custom {
    background-image: linear-gradient(#d4b254, #fff6a4, #d4b254);
}

.bg-header-custom {
    background: linear-gradient(to bottom, #a97a0e, #f7eb82, #a97a0e);
}

.bg-modal-body {
    background: rgba(16, 34, 38, 0.8);
}

.bg-red {
    background-color: red;
}

.bg-grey {
    background-color: grey;
}

.bg-light-grey {
    background-color: #eeeeee;
}

.bg-gold {
    background-color: gold;
}

.bg-yellow {
    background-color: yellow;
}

.bg-white {
    background-color: white;
}

.bg-black {
    background-color: black;
}

.bg-theme {
    background-color: #F6002F;
}

.bg-footer {
    background: transparent;
}

.bg-black-transparent {
    background-color: rgba(0, 0, 0, 0.3) !important;
}

.bg-facebook {
    background-color: #0011ff !important;
}


.bg-whatsapp {
    background-color: #25D366 !important;
}

.bg-telegram {
    background-color: #00B2FF !important;
}

.bg-transparent {
    background: transparent !important;
}

.bg-soft-white {
    background-color: #F1F1F1 !important;
}

.bg-soft-blue {
    background-color: #F1F1F1 !important;
}

.bg-lavender {
    background-color: #FCEBFF !important;
}

.bg-brand-color {
    background-color: #4C4A8B !important;
}

.bg-deep-lavender {
    background-color: #F0E3FF !important;
}

.bg-lavender-gradient {
    background: linear-gradient(180deg, #FCFBFF 0%, #F0E3FF 100%) !important;
}

.bg-vivid-gradient {
    background: linear-gradient(180deg, #ceabf7 0%, #9F2EEA 100%) !important;
}

.bg-stage {
    background: url('../../images/project/img-stage.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    height: 400px;
}

.bg-light-grey::placeholder {
    font-weight: bold;
}

.bg-light-grey::option {
    font-weight: bold;
}

.slot-header {
    padding: 10px 0;
    background: linear-gradient(to bottom, #080808 13%, #393939 50%, #080808 87%);
    border-radius: 0;
    color: #fff;
    text-transform: capitalize;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
}

.slot-header.active {
    top: 0;
    background: linear-gradient(to bottom, #a3700f 1%, #e9c379 50%, #a3700f 99%, #a3700f 100%);
    color: #2b1c00;
}

.main-title {
    background: url('../../images/project/title-bar.png');
    background-repeat: no-repeat;
}

.main-title-past {
    margin-top: 200px;
}

.main-title p {
    color: white;
    margin-left: 30px;
    padding: 5px 0;
}

.homeGameTitle {
    padding: 10 auto;
}

.hd {
    display: none;
}

.br-20 {
    border-radius: 20px;
}

.md-bl {
    border-left: 1px solid white;
}

.text-uppercase {
    text-transform: uppercase;
}

.text-underline {
    text-decoration: underline !important;
}

.text-center {
    text-align: center !important;
}

.text-blue {
    color: #007bff !important;
}

.text-yellow {
    color: yellow !important;
}

.text-black {
    color: black !important;
}

.text-white {
    color: white !important;
}

.text-red {
    color: red !important;
}

.text-green {
    color: green !important;
}

.text-gold {
    color: #ffce66 !important;
}

.text-light-blue {
    color: #1067D3 !important;
}

.text-deep-blue {
    color: #083A81 !important;
}

.text-sky {
    color: #81c8ff !important;
}

.text-sky-blue {
    color: #238FFC !important;
}

.text-purple {
    color: #6a4dff !important
}

.text-light-purple {
    color: #9F2EEA !important
}

.text-lavender {
    color: #BE00ED !important
}

.text-deep-purple {
    color: #AD07DA !important
}

.text-vivid-purple {
    color: #A115F1 !important;
}

.text-rose {
    color: #F64074 !important;
}

.border-white {
    border-color: white;
}

.full-width {
    width: 100%;
}

.half-width {
    width: 50%;
}

.tcp {
    cursor: pointer;
}

.crd {
    color: #F6002F;
}

.refTitle {
    background: rgba(0, 0, 0, 0.5);
    padding: 10px;
    text-align: center;
}

.nav-mall-item {
    margin: auto 20px;
    border-radius: 20px;
    background-color: #cc0000;
    padding: 0px 20px;
}

.nav-mall-item img {
    padding-right: 10px;
    margin: 5px auto 10px;
    height: 22px;
}

.nav-link.nav-header {
    transform: skewX(-15deg);
    transition: all 0.2s ease-in-out;
}

.nav-link.nav-header.active,
.nav-link.nav-header:hover {
    background-color: #112225;
}

.nav-link.nav-header.active .nav-link-rotate img,
.nav-link.nav-header:hover .nav-link-rotate img {
    transform: skewX(0deg) scale(1.3);
    transition: all 0.2s ease-in-out;
}

.nav-link-rotate {
    transform: skewX(15deg);
}

.img-play-btn {
    position: absolute;
    bottom: 12%;
    left: 20%;
    width: 150px;
}

.gameImg {
    filter: grayscale(1);
}

.gameImg:hover,
.gameImg.active {
    transition: 0.3s ease-in-out;
    filter: grayscale(0);
}

.gameImg img {
    filter: grayscale(0);
    margin-top: 150px;
    width: 315px;
}

.gameIcon {
    height: 189px;
    display: flex;
    align-items: center;
    border: 1px solid gold;
    margin: 5px auto;
}

.gameTitle {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    padding: 10px;
    width: 100%;
    text-align: center;
}

.gameIcon:hover .overlay {
    opacity: 1;
}

.gameIcon img {
    width: 100%;
}

.gameIcon .overlay {
    opacity: 0;
    background: rgba(0, 0, 0, 0.5);
}

.gameIcon .play {
    margin: 50% auto;
    width: fit-content;
    background: #fbbd2e;
    color: #000;
    text-transform: uppercase;
    padding: 5px 10px;
    text-align: center;
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}

.blink {
    animation: blinker 2s linear infinite;
}

.side_qr {
    --side-qr-panel-w: 92px;
    text-align: center;
    display: inline-block;
    padding: 0;
    background: transparent;
    position: fixed;
    top: 25%;
    right: calc(-1 * var(--side-qr-panel-w));
    width: var(--side-qr-panel-w);
    z-index: 999;
    transition: right 0.25s ease-out;
    -moz-transition: right 0.25s ease-out;
    -webkit-transition: right 0.25s ease-out;
}

.side_qr:hover .qr_button {
    animation: none;
}

.side_qr .qr_button {
    animation: blinker 2s linear infinite;
    position: absolute;
    top: 0px;
    left: -41px;
    display: inline-block;
    width: 50px;
}

.side_qr table {
    margin: 0;
}

.side_qr .qr_button.side-qr-trigger {
    border: 0;
    padding: 0;
    background: transparent;
    cursor: pointer;
    touch-action: manipulation;
}

@media (max-width: 991.98px) {

    /* Classic side tab + panel slide (same unit as desktop, tap to toggle) */
    .side_qr.mobile_side {
        top: 22%;
        bottom: auto;
        right: calc(-1 * var(--side-qr-panel-w, 92px));
        width: var(--side-qr-panel-w, 92px);
        max-width: min(92px, calc(100vw - 56px));
        padding: 0;
        background: transparent;
        overflow: visible;
        box-shadow: none;
        z-index: 999;
    }

    .side_qr.mobile_side.is-open {
        right: 0;
    }

    .side_qr.mobile_side .qr_button {
        position: absolute;
        top: 0;
        left: -30px;
        min-width: 48px;
        min-height: 48px;
        animation: none;
    }

    .side_qr.mobile_side .qr_button img {
        display: block;
        height: auto;
        max-height: 120px;
    }

    .side_qr.mobile_side .side-item.row {
        margin-left: 0;
        margin-right: 0;
    }

    .side_qr.mobile_side .side-right a {
        font-size: 12px;
        line-height: 1.3;
        word-break: break-word;
        white-space: normal;
    }
}

@media (min-width: 992px) {
    .side_qr.is-open {
        right: 0;
    }
}

/* Side contact stack — icon above label, white card (drop icons in images/project/side/) */
.side-contact-stack {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #fff;
    box-shadow: 2px 3px 10px rgba(0, 0, 0, 0.18);
    border-radius: 2px;
    overflow: hidden;
}

.side-contact-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    gap: 6px;
    min-height: 72px;
    padding: 12px 8px 11px;
    border: 0;
    background: #fff;
    color: #111;
    text-decoration: none;
    cursor: pointer;
    touch-action: manipulation;
    transition: background-color 0.15s ease-out;
}

.side-contact-item:not(.side-contact-item--last)::after {
    content: '';
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 0;
    height: 1px;
    background: #111;
}

.side-contact-item:hover,
.side-contact-item:focus-visible {
    background: #f5f5f5;
    color: #111;
    text-decoration: none;
}

.side-contact-item:focus-visible {
    outline: 2px solid #111;
    outline-offset: -2px;
}

.side-contact-item img {
    display: block;
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.side-contact-label {
    font-size: 11px;
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: 0.01em;
}

.side-contact-label--stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    line-height: 1.15;
}

@media (prefers-reduced-motion: reduce) {
    .side_qr {
        transition: none;
    }

    .side-contact-item {
        transition: none;
    }
}

.side-left {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    flex-shrink: 0;
}

.side-left i {
    vertical-align: middle;
}

.side-right {
    height: 40px;
    line-height: 40px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    background: rgba(12, 34, 50, 1);
    overflow: hidden;
    padding: 0 8px;
}

.side-right a {
    vertical-align: middle;
}

.side-item {
    display: flex;
    align-items: center;
}

.side-item.row {
    flex-wrap: nowrap;
}

.side-item.row .side-left {
    width: 40px;
    min-width: 40px;
    flex: 0 0 40px;
    padding: 0;
}

.side-item.row .side-right {
    flex: 1;
    width: auto;
    padding: 0 10px;
}

.atmDepTable table.table {
    background-color: transparent
}

.atmDepTable th {
    text-align: left;
}

.atmDepTable td {
    text-align: left;
    padding: 8px;
    background: rgba(255, 255, 255, 0.1);
}


.button-spin {
    text-align: center
}

.button-spin button {
    padding: 8px 20px;
    margin: 10px;
    font: 700 22px arial;
    background: linear-gradient(180deg, #C600ED 0%, #6700EE 100%) !important;
    color: #fff;
    box-shadow: 0 1px 5px #333;
    border-radius: 25px;
    border: 1px solid #6700EE;
    outline: 0;
    cursor: pointer
}

.button-spin button:hover {
    background: #e00
}

.button-spin #countdown {
    width: 200px;
    margin: 0 auto;
    padding: 5px;
    font: 700 14px arial;
    color: #fff;
    background: #000;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px
}

.button-spin i {
    font-size: 50px;
    color: #ff0;
    text-shadow: 0 1px 5px #333
}

.winwheel {
    text-align: center;
    padding: 3px 3px 0;
    background: #666;
    background: radial-gradient(#000 3%, #000 4%, #0f0 5%, #000 6%, #000 7%, #fc0 8%, #000 9%, #000 10%, #ff0 11%, #000 12%, #000 13%, #f0c 14%, #000 15%, #000 16%, #0cf 17%, #000 18%, #000 19%, #c6f 20%, #000 21%, #000 28%, #fc0 28%, #fc0 30%);
    border-radius: 1000px;
    border: 5px solid #000;
}

.winwheel-content {
    width: 100%;
    padding: 20px;
    max-width: 500px;
    margin: auto;
}

.prize-table td.step-action div {
    padding: 3px 15px;
    margin: 0 auto;
    border: 1px solid #000;
    border-radius: 5px;
}

.youtube_iframe {
    background: url(../../images/project/tv-frame.png) no-repeat center;
    background-size: contain;
    position: relative;
    height: 500px;
}

.youtube_iframe .youtube {
    height: 400px;
    width: 98%;
    margin: auto;
    padding-top: 63px;
}

.youtube_iframe .youtube .fluid-width-video-wrapper {
    padding-top: 56% !important;
}

.vip-progress-container {
    width: 100%;
    position: relative;
}

/* 进度条 */
.progress-status {
    position: relative;
    height: 2rem;
    background-color: #F4F4F4;
    border-radius: 10px;
    overflow: hidden;
    margin: 0 auto;
    width: 90%;
    margin-bottom: 6px;
}

.progress-animation {
    height: 100%;
    background-color: #D2C5F8;
    width: 0;
    border-radius: 10px;
    transition: width 0.5s ease;
}

/* 分隔线 */
.bar-separator {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 2px;
    opacity: 0.7;
}

.bar-separator:nth-child(1) {
    left: 20%;
}

.bar-separator:nth-child(2) {
    left: 40%;
}

.bar-separator:nth-child(3) {
    left: 60%;
}

.bar-separator:nth-child(4) {
    left: 80%;
}

/* 等级名字 & 金额行 */
.vip-levels {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    text-align: center;
    margin-top: 4px;
}

.vip-level {
    text-align: center;
}

.vip-amount {
    font-size: 1rem;
    color: #555;
}

/* Active 已可领取 — 闪动 */
.treasure-box.active {
    animation: createBox 1s infinite;
}

/* 已达到但没有 reward → 灰色 */
.treasure-box.reached {
    opacity: 0.4;
    cursor: default;
}

/* 未达到 → 正常颜色，不能点 */
.treasure-box.locked {
    opacity: 1;
    cursor: not-allowed;
}

.vip-table tbody tr:nth-child(odd) {
    background-color: #F8F8F8;
}

.vip-table tbody tr:nth-child(even) {
    background-color: #ffffff;
}

.progress-deposit {
    margin-left: 4%;
}

.treasure-box {
    width: 20%;
}

.progress-deposit .treasure-box {
    margin-left: -15px;
}

.progress-deposit .treasure-box.active {
    animation: createBox 2s infinite;
}

@keyframes createBox {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.8);
    }
}

.progress-deposit:nth-child(2) {
    margin-left: 10%;
}

.progress-deposit:nth-child(3) {
    margin-left: 18%;
}

.progress-deposit:nth-child(4) {
    margin-left: 19%;
}

/*.progress-deposit:nth-child(5) {
    margin-left: 17%;
}*/
.progress-deposit:last-child {
    margin-left: 13%;
    /* margin-right: 20px; */
}

.progress-balance {
    height: 30px;
    border: 2px solid gold;
}

/* Shine */
.promoBox figure {
    position: relative;
    margin-bottom: 0px;
}

.promoBox figure::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}

.promoBox figure:hover::before {
    -webkit-animation: shine .75s;
    animation: shine .75s;
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

.image-powered-by img {
    width: 10%
}

.productmain {
    margin-top: 45px;
    position: relative;
}

.producttitle {
    position: absolute;
    top: -23px;
    left: 25%;
    right: 25%;
    font-size: 25px;
    background: url(../../images/project/body_bg.png) no-repeat center;
    color: white;
    padding: 5px;
    text-transform: uppercase;
}

.ourproduct {
    padding: 20px;
    text-align: -webkit-center;
    border: 6px solid #9fd4f8;
    margin: 10px;
}

.ourproduct img {
    width: 30%
}

#ccbx {
    border: 3px solid #f4d374;
    border-radius: 50%;
    margin: -25px auto 0;
    /*margin-top:-25px;*/
    width: 80px;
    height: 80px;
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 5px 18px 5px rgba(0, 0, 0, 0.12);
    position: relative;
    z-index: 1002;
    text-align: center;
}

#ccbx img,
#ccbx a {
    text-align: center;
    margin: 0 auto;
    vertical-align: middle;
}

#ccbx a,
#ccbx img {
    padding-top: 6px;
    margin: 0 auto;
}

.lang-dropdown img {
    width: 34px;
}

.d-flex {
    display: flex;
}

.desktopView {
    display: block;
}

.mobileView {
    display: none;
}

/* Swiper bundle sets .swiper { display:block } after custom.css on VIP/home — beat it on desktop */
.mobileView.swiper {
    display: none !important;
}

/* game image scale */
.desktop-game-image {
    position: relative;
    transition: transform 0.3s ease-in-out;
}

.desktop-game-image:hover {
    transform: scale(1.05);
}

/* game image scale end */

/* referral_page */
.downline_table {
    color: #083A81;
}

.downline_table_detail {
    width: 100%;
}

.downline_table_detail td {
    padding: 10px;
    /* 设置单元格内边距 */
    border: 3px solid #083A81;
    /* 设置单元格边框 */
}

.downline_table_menu {
    width: 100%;
    height: 100%;
    margin-bottom: 0;
}

.downline_table_menu th {
    padding: 10px;
    /* 设置单元格内边距 */
    border: 3px solid #083A81;
    /* 设置单元格边框 */
}

/* referral_page end*/

/* DMC19 home*/
.home-banner-1 {
    width: 100%;
    height: 100%;
}

.home-1 {
    position: relative;
    display: inline-block;
    /* Make sure the container fits the content */
}

.home-2 {
    background: linear-gradient(0deg, #FF0000 0%, #1C377C 56.73%, #3364E2 100%);
}

.home-banner {

    width: 100%;
    height: auto;
    display: block;
    /* Ensure the image is a block element */
}

.jackport-count {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    position: absolute;
    top: 30%;
    right: 8%;
    font-size: 60px;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    font-style: normal;
    /* 不要斜体 */
    letter-spacing: 1px;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    /* 轻微阴影增强可读性 */
}

.jackport-mobile {
    position: relative;
}

.jackport-count-mobile {
    font-family: 'Poppins', sans-serif;
    position: absolute;
    top: 50%;
    right: 11%;
    font-weight: bold;
    font-size: 5vw;
    color: #fff;
}

.jackpot-digit-mobile {
    display: inline-block;
    position: relative;
    min-width: 0.6em;
    overflow: hidden;
    transform: skew(-10deg);
}

.jackpot-digit-mobile span {
    display: block;
    transition: transform 0.4s ease-in-out;
}

.jackpot-digit-mobile .new {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
}

.btn-live {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    background: #D9D9D9;
    border: 1px solid #D9D9D9;
    border-radius: 15px;
    color: black;
}


.btn-live.active {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    background: #083A81;
    border-radius: 15px;
    color: white;
}

.tilted-column {
    display: flex;
    align-items: center;
    transform: skewX(-20deg);
    background-color: #fff;
    padding: 6px 12px;
}

.header-from-control {
    font-weight: bold;
    display: block;
    width: 100%;
    font-size: 14px;
    line-height: 1.42857143;
    background-image: none;
    border: 0px solid #cccccc;
}

.inner-container {}


.btn-header-login,
.btn-header-register {
    border-radius: 5px;
    font-weight: 700;
    font-size: 14px;
    color: white !important;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
    transition: transform 0.1s, filter 0.2s;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 15px;
    position: relative;
}

/* 登录按钮 - 紫色渐变 */
.btn-header-login {
    background: linear-gradient(180deg, #C600ED 0%, #6700EE 100%);
    /* 模拟底部的立体厚度感 */
    box-shadow: 0px 4px 0px #4a00aa;
    margin-bottom: 4px;
    /* 补偿阴影高度 */
}

/* 注册按钮 - 蓝色渐变 */
.btn-header-register {
    background: linear-gradient(179.94deg, #3CC8FE 43.83%, #6478EB 99.94%);
    /* 模拟底部的立体厚度感 */
    box-shadow: 0px 4px 0px #3c54c4;
    margin-bottom: 4px;
}

/* 点击/悬停效果：增加交互真实感 */
.btn-header-login:hover,
.btn-header-register:hover {
    filter: brightness(1.1);
}

.btn-header-login:active,
.btn-header-register:active {
    transform: translateY(2px);
    box-shadow: 0px 2px 0px #4a00aa;
    /* 按钮按下的深度变化 */
}

.home-btn-custom1 {
    background: white;
    color: #BE00ED;
    border: 2px solid #7600EE;
    font-weight: 800;
    border-radius: 50px;
}

.home-btn-custom1:hover {}

.home-btn-custom2 {
    background: linear-gradient(180deg, #C600ED 0%, #6700EE 100%);
    color: white;
    font-weight: 800;
    border-radius: 50px;
}

.home-btn-custom2:hover {
    color: white;
}

.home-btn-custom3 {
    background: linear-gradient(180deg, #C600ED 0%, #6700EE 100%);
    color: white;
    font-weight: 800;
    border-radius: 50px;
    padding: 8px 12px;
    text-align: center;
}

.home-btn-custom3:hover {
    color: white;
}

.home-btn-custom3 .btn-custom-link {
    color: white;
    text-decoration: none;
    width: 100%;
    height: 100%;
    padding: 0.1rem;
}

.home-btn-custom4 {
    background: white;
    color: #BE00ED !important;
    font-weight: 800;
    border: 2px solid #7600EE;
    border-radius: 50px;
    padding: 5px 10px;
    /* 添加一些填充以确保按钮大小 */
    text-align: center;
    /* 确保文本在按钮中居中 */
}

.home-btn-custom5 {
    background: white;
    color: #BE00ED !important;
    border: 2px solid #7B00EE;
    font-weight: 800;
    border-radius: 50px;
}

.home-btn-custom6 {
    background: transparent;
    color: #A115F1;
    font-weight: 800;
    border-radius: 5px;
    padding: 7px 20px;
    text-align: center;
    border: 2px solid #A115F1;
}

.home-btn-custom7 {
    background: linear-gradient(180deg, #D979FF 0%, #9501EE 100%);
    color: white;
    font-weight: 600;
}

/* 移除链接默认下划线 */
.promoBox,
.promoBox:hover {
    text-decoration: none;
    color: inherit;
}

/* 基础按钮重置 - 解决溢出的核心 */
.home-btn-promotion1,
.home-btn-promotion2 {
    box-sizing: border-box !important;
    padding: 7px 5px;
    border-radius: 5px;
    text-align: center;
    border: 2px solid #A115F1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    outline: none;
}

.home-btn-promotion1 {
    background: transparent;
    color: #A41BF1;
    font-weight: 800;
}

.home-btn-promotion2 {
    display: block;
    background: linear-gradient(180deg, #9012F4 0%, #280151 100%);
    font-family: 'Rubik', sans-serif;
    font-weight: 700 !important;
    color: white;
    text-decoration: none;
}

.home-btn-promotion2:hover {
    color: white !important;
}


.home-btn-custom9 {
    background: linear-gradient(358.91deg, #5809A2 -23.89%, #810ABA 15.97%, #930BC7 60.42%, #C00AE2 98.75%);
    color: white;
    font-weight: 600;
    border-radius: 50px;
    border: 0;
    padding: 8px 20px;
    text-align: center;
}

.home-btn-custom9:hover {
    color: white !important;
}

.home-btn-custom10 {
    background: linear-gradient(358.91deg, #5809A2 -23.89%, #810ABA 15.97%, #930BC7 60.42%, #C00AE2 98.75%);
    color: white;
    font-weight: 800;
    border-radius: 50px;
    padding: 10px 75px;
    text-align: center;
}

.home-btn-custom10:hover {
    color: white !important;
}

.home-btn-custom11 {
    display: block;
    width: 75%;
    margin: 0 auto;
    background: linear-gradient(180deg, #C600ED 0%, #6700EE 100%);
    color: white !important;
    border: 2px solid #7B00EE;
    border-radius: 25px;
    text-align: center;
    box-sizing: border-box;
    transition: box-shadow 0.3s ease;
}

/* ✅ hover 时出现阴影 */
.home-btn-custom11:hover {
    box-shadow: 0 4px 12px rgba(190, 0, 237, 0.5);
    /* 紫色柔光阴影 */
}

.vip-btn-custom1 {
    background: #F64074;
    color: white !important;
    border-radius: 25px;
    text-align: center;
    border: 0;
    padding: 10px 8rem;
}

.vip-btn-custom2 {
    background: #FCB230;
    color: white !important;
    border-radius: 25px;
    text-align: center;
    border: 0;
    padding: 10px 8rem;
}

.dep-btn-custom1 {
    background: linear-gradient(179.94deg, #3CC8FE 43.83%, #6478EB 99.94%);
    color: white;
    font-weight: 600;
    border-radius: 50px;
    border: 0;
    padding: 8px 20px;
    text-align: center;
    width: 25%;
    position: absolute;
    right: 10px;
    bottom: 10px;
}

.dep-btn-custom1:hover {
    color: white !important;
}


.home-panel-section {
    background-color: white;
    box-shadow: 0px 5px 10px 0px #00000040;
}

.bg-real-time {
    background-image: url(../../images/home/home-bg-realtime.webp);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

@keyframes moveUpDown {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

.register-text-bold {
    font-weight: bold;
}

.forgot-password {
    font-weight: bold;
}

.register-detail {
    padding: 0.1rem 2rem 0.1rem 2rem;
    font-size: 45px !important;
    background: #B607D7;
    color: white;
}

.register-bank {
    padding: 0.1rem 2rem 0.1rem 2rem;
    font-size: 45px !important;
    background: #BABABA;
    color: white;
}

.register-detail:hover {
    padding: 0.1rem 2rem 0.1rem 2rem;
    font-size: 45px !important;
    background: #B607D7;
    color: white;
}

.register-bank:hover {
    padding: 0.1rem 2rem 0.1rem 2rem;
    font-size: 45px !important;
    background: #BABABA;
    color: white;

}

.register-label {
    font-weight: 500;
    font-weight: bold;
}

/* dmc home end */
/* dmc promotion */

.promo-container {
    position: relative;
    display: inline-block;
}

.promo-img {
    width: 100%;
    min-height: 10rem;
    display: block;
}

.promodetail {
    min-height: 15rem;
}

.promodetail-home {
    min-height: 4rem;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    /* 靠左对齐 */
    padding: 6rem;
    /* 调整填充以使内容不紧贴边缘 */
}

.itemTitle {
    font-size: 2rem;
    /* 调整字体大小 */
    font-weight: bold;
    color: #083A81;
}

.itemTitle-home {
    font-size: 1rem;
    font-weight: bold;
}

.itemdecription {
    font-size: 1.5rem;
    /* 调整字体大小 */
}

.itemdecription p {
    color: black !important;
}

.infobtn {
    background: #FFFFFF;
    border: 0.714711px solid #FF0000;
    border-radius: 14.2942px;

    color: #083A81;
    /* 按钮文字颜色 */
    padding: 5px 20px;
    cursor: pointer;
    margin-top: 10px;
    /* 按钮与标题间距 */
}

.portfolio-menu {
    text-align: center;
    margin: 30px auto;
    /*background-color: #000;*/
    border-radius: 30px;
}

.portfolio-menu ul {
    padding: 0;
}

.portfolio-menu ul li {
    background: black;
    display: inline-block;
    margin: 0;
    list-style: none;
    padding: 15px;
    cursor: pointer;
    color: white;
    font-size: 16px;
}

/*.portfolio-menu ul li:first-child.active {
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}*/
.portfolio-menu ul li.active {
    background-image: linear-gradient(#ffff5a, #d49127);
    color: #fff;
}

.itemCustom {
    border-radius: 15px;
    position: relative;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

.itemContent {
    position: absolute;
    width: 100%;
    bottom: 0px;
    background-image: linear-gradient(#32d5fc, #0572e8);
    border-bottom-left-radius: 1px;
    border-bottom-right-radius: 1px;
    font-size: 12px;
    height: 40px;
    text-transform: uppercase;
}


.itemContent .itemImg {
    /*position: absolute;*/
    right: 0px;
    height: 40px;
    width: 100%;
    text-align: center;
    line-height: 40px;
    font-size: 14px;
    background-size: 100% 100%;
    background-image: linear-gradient(#1b4a7c, #081f47);
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
}

.promoBox:hover figure img {
    transform: scale(1.08);
    transition: transform ease 1.5s;
}

.profile-content {
    padding: 20px !important;
}


#promoTable {
    width: 500px;
}

/* dmc promotion end*/
/* dmc deposit */
.bankDetail {
    border: 1px solid #ED06C3;
    background-color: #F8F8F8;
    border-radius: 15px;
}


.or-separator {
    display: flex;
    align-items: center;
    justify-content: center;
}

.or-separator .line {
    margin: 0;
    width: 40%;
    border: 1px solid #000;
    /* 实线 */
}

.or-separator .or-text {
    padding: 0 10px;
    font-weight: bold;
    color: #000;
}

.custom-alert {
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
    background: #e74c3c;
    color: #fff;
    padding: 12px 20px 12px 40px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 9999;
}

.custom-alert::before {
    content: "✖";
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #fff;
}

.custom-alert.show {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.custom-alert-fail {
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
    background: #e74c3c;
    color: #fff;
    padding: 12px 20px 12px 40px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 9999;
}

.custom-alert-fail::before {
    content: "✖";
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #fff;
}

.custom-alert-fail.show {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.custom-alert-success {
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
    background: #2e7d32;
    color: #fff;
    padding: 12px 20px 12px 40px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 9999;
}

.custom-alert-success::before {
    content: "✔";
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #fff;
}

.custom-alert-success.show {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

@media (max-width: 576px) {

    .custom-alert-fail,
    .custom-alert-success {
        top: 10%;
        width: 90%;
        max-width: 350px;

        font-size: 14px;
        padding: 10px 15px 10px 35px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }

    /* 调整图标位置 */
    .custom-alert-fail::before,
    .custom-alert-success::before {
        left: 12px;
        font-size: 16px;
    }
}

.custom-table-ipoint {
    border-collapse: collapse;
    width: 100%;
    border: none !important;
}

.custom-table-ipoint th,
.custom-table-ipoint td {
    border: none !important;
    text-align: center;
    padding: 10px;
}

.custom-table-ipoint thead th {
    background: linear-gradient(180deg, #F100F8 0%, #BA00D8 100%) !important;
    color: white;
    border: none !important;
}

.custom-table-ipoint thead th:first-child {
    border-top-left-radius: 10px;
}

.custom-table-ipoint thead th:last-child {
    border-top-right-radius: 10px;
}

.custom-table-ipoint tbody tr:nth-child(odd) {
    background-color: #1F2944;
    color: #fff;
}

.custom-table-ipoint tbody tr:nth-child(even) {
    background-color: #0D152A;
    color: #fff;
}

.custom-table-ipoint>tbody+tbody {
    border-top: none !important;
}

/* 公告栏主容器 */
.announcement-bar {
    background: #8F8AFF;
    color: white;
    font-weight: 600;
    font-size: 15px;
    padding: 0;
    overflow: hidden;
    border-radius: 5px;
}

/* 内容容器 */
.announcement-container {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
}

.announcement-label-img {
    background-color: #8400FF;
    /* ✅ 整块背景满高 */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 25px;
    /* 上下保持一点内边距 */
}


.announcement-label-img img {
    height: 18px;
    /* ✅ 图标变小 */
    width: auto;
    display: block;
}

/* 滚动区域 */
.announcement-content {
    position: relative;
    overflow: hidden;
    flex: 1;
}

.announcement-text {
    font-size: 12px;
    display: inline-block;
    white-space: nowrap;
    animation: scrollText 60s linear infinite;
}

.announcement-text:hover {
    animation-play-state: paused;
    cursor: pointer;
}

@keyframes scrollText {
    from {
        transform: translateX(30%);
    }

    to {
        transform: translateX(-100%);
    }
}


/* 手机端适配 */
@media (max-width: 768px) {
    .announcement-bar {
        font-size: 14px;
    }
}

.home-menubar-wrapper {
    position: relative;
    width: 100%;
    margin-bottom: 15px;
    margin-top: 30px;
    /* space for overlapping icons */
}

.home-menubar {
    background: linear-gradient(179.94deg, #3CC8FE 43.83%, #6478EB 71.89%, #8A2FDD 99.94%);
    border-radius: 15px 15px 0 0;
    padding: 5px 0;
    width: 100%;
    position: relative;
    z-index: 1;
}

.menubar-icon-left {
    position: absolute;
    left: 10px;
    bottom: -15px;
    height: 105px;
    /* Adjust based on image size to allow it to stick out top */
    z-index: 2;
}

.menubar-icon-right {
    position: absolute;
    right: 10px;
    bottom: -15px;
    height: 105px;
    /* Adjust based on image size to allow it to stick out top */
    z-index: 2;
}

.home-promotion-header {
    background: linear-gradient(179.94deg, #3CC8FE 43.83%, #6478EB 71.89%, #8A2FDD 99.94%);
    border-radius: 15px 15px 0 0;
    padding: 5px 0;
    width: 100%;
    font-size: 25px;
    font-weight: 600;
    position: relative;
    z-index: 1;
}

.promotion-header-icon {
    height: 95px;
    width: auto;
    object-fit: contain;
    position: absolute;
    top: -20px;
    z-index: 2;
    animation: promoFloat 3s ease-in-out infinite;
}

@keyframes promoFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

.home-menubar-btns {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
}

.home-menubar-btn {
    background-color: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 800;
    font-size: 16px;
    padding: 8px 15px;
    transition: all 0.2s ease;
    text-transform: uppercase;
}

.home-menubar-btn-mobile {
    background-color: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 800;
    font-size: 14px;
    padding: 8px 10px;
    transition: all 0.2s ease;
    text-transform: uppercase;
}

.home-menubar-btn.active {
    color: #fff;
    text-shadow: 0px 0px 8px rgba(255, 255, 255, 0.5);
    background-color: transparent;
}

.home-menubar-btn-mobile.active {
    color: #fff;
    text-shadow: 0px 0px 8px rgba(255, 255, 255, 0.5);
    background-color: transparent;
}

.home-menubar-btn:focus {
    outline: none;
}

.home-menubar-btn-mobile:focus {
    outline: none;
}

.category-content {
    display: none;
}

.category-content-mobile {
    display: none;
}

.promo-nav-bar {
    background-color: #FCEBFF;
    border-radius: 8px;
}

.promo-nav-btn {
    background: none;
    border: none;
    color: #C002FF;
    font-weight: 600;
    font-size: 15px;
    padding: 10px 20px;
    margin: 0 10px;
    position: relative;
    cursor: pointer;
    transition: color 0.2s ease;
}

.promo-nav-btn::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: transparent;
    transition: background 0.2s ease;
}

.promo-nav-btn.active {
    color: #C002FF;
    /* 高亮文字颜色 */
}

.promo-nav-btn.active::after {
    background: #C002FF;
}

.vip-deposit-box {
    border: 1px solid #ddd;
    border-radius: 7px;
    padding: 12px 15px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    background: #fff;
    min-height: 11rem;
    padding: 12px 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.vip-label-top {
    font-weight: 600;
}

.vip-bottom-area {
    margin-top: auto;
}

.vip-label-title {
    font-size: 18px;
    font-weight: 600;
}

#vipBar {
    margin-top: 1rem;
}

.vip-priv-table {
    background: url(../../images/project/vip/vip-table-bg.png);
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.vip-priv-table th {
    color: #fff !important;
    padding: 12px;
    border: none !important;
}

.time-count {
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
}

.time-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.time-item .unit {
    line-height: 1;
    margin-top: 2px;
}

.time-laber {
    font-size: 24px;
    font-weight: 800;
}

.mobileView .swiper-slide {
    width: 250px;
    /* 每个表格宽度 */
    flex-shrink: 0;
    overflow-x: auto;
}

img.lazy {
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

img:not(.lazy) {
    opacity: 1;
}

.content-wrap {
    background: linear-gradient(90deg,
            #6a0dad 0%,
            #32004b 25%,
            #05010a 50%,
            #0a0a32 75%,
            #1e1e64 100%);
    background-size: 100% 100%;
    min-height: 520px !important;
}

.bottom-spacer {
    height: 90px;
}

/* dmc deposit end*/
@media (max-width: 991px) {
    .itemImg span {
        font-size: 10px;
    }

    .portfolio-menu {
        background: transparent;
    }

    .portfolio-menu ul li {
        border-radius: 30px;
        background: black;
    }

    .msg-box {
        font-size: 11px;
    }

    .announcement-text {
        font-size: 11px;
    }

    .itemTitle-home {
        font-size: 12px;
    }

    .mobile-nav-swiper {
        overflow: hidden;
        width: 100%;
        padding: 0;
    }

    .mobile-nav-swiper .swiper-slide {
        width: auto !important;
        flex-shrink: 0;
    }

    .mobile-nav-swiper .swiper-slide img.home-banner {
        width: auto;
        height: auto;
        max-height: 100px;
        display: block;
    }
}

@media (min-width: 992px) {
    .mobile-nav-swiper .swiper-wrapper {
        display: flex;
        flex-wrap: wrap;
        transform: none !important;
    }

    .mobile-nav-swiper .swiper-slide {
        flex: 0 0 auto;
        margin-right: 5px !important;
    }
}

/* @media (min-width: 991px) {
    .oc-item img {
        max-height: 520px;
    }
} */

@media (max-width: 1200px) {
    .progress-deposit:nth-child(2) {
        margin-left: 5%;
    }

    .progress-deposit:nth-child(3) {
        margin-left: 14%;
    }

    .progress-deposit:last-child {
        margin-left: 11%;
        margin-right: 20px;
    }

    .youtube_iframe .youtube {
        width: 97%;
        height: 380px;
    }
}

@media (max-width: 991px) {
    .md-bl {
        border-left: initial;
    }

    .desktopView {
        display: none;
    }

    .mobileView {
        display: block;
    }

    .mobileView.swiper {
        display: block !important;
    }

    .progress-deposit:nth-child(2) {
        margin-left: 9%;
    }

    .progress-deposit:nth-child(3) {
        margin-left: 16%;
    }

    .progress-deposit:nth-child(4) {
        margin-left: 19%;
    }

    .progress-deposit:last-child {
        margin-left: 12%;
        margin-right: 20px;
    }

    .main-title-past {
        margin-top: 20px;
    }

    .homeGameTitle {
        padding: 5 auto;
    }

    .side-left {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }

    .side-right {
        height: 40px;
        line-height: 40px;
    }

    .lang {
        position: absolute;
        top: 20px;
        left: auto;
        right: 30px;

    }

    #content {
        padding-top: 0rem !important;
    }

    .btn-live.active {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .btn-live {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .dropdown-menu.language {
        right: 0;
        left: initial;
    }

    .gameImg {
        filter: grayscale(0);
        position: absolute;
        width: inherit;
        bottom: 10%;
        right: 25%;
    }

    .gameImg img {
        filter: grayscale(0);
        margin-top: 0px;
    }

    .img-play-btn {
        left: 18%;
        width: 120px;
    }

    .jackport-count-mobile {
        top: 43%;
        right: 7%;
        font-size: 6vw;
    }
}

@media (max-width: 767px) {

    .h-50px {
        height: 50px !important;
    }

    .pl-5-c {
        padding-left: 0;
    }

    .withdrawal-usdt {
        font-size: 12px;
    }

    .progress-deposit {
        font-size: 12px;
    }

    .progress-status {
        width: 100%;
    }

    .progress-deposit {
        margin-left: -8px;
    }

    .progress-status .bar-separator:nth-child(2) {
        margin-left: 14%;
    }

    .progress-status .bar-separator:nth-child(3) {
        margin-left: 50%;
    }

    .progress-status .bar-separator:nth-child(4) {
        margin-left: 75%;
    }

    .progress-deposit:nth-child(2) {
        margin-left: 7%;
    }

    .progress-deposit:nth-child(3) {
        margin-left: 28%;
    }

    .progress-deposit:nth-child(4) {
        margin-left: 17%;
    }

    .progress-animation.bronzeProgress {
        width: 15%
    }

    .progress-animation.silverProgress {
        width: 15%
    }

    .progress-animation.goldProgress {
        width: 75%
    }

    .progress-animation.platinumProgress {
        width: 100%
            /* border-radius: 20px; */
    }

    /*.progress-animation.diamondProgress{
        width: 100%;
        border-radius: 20px;
    }*/
    /* .lang{
        left: 60px;
    } */

    .producttitle {
        font-size: 18px;
    }

    .promo-img {
        min-height: 10rem;
    }

    .promodetail {
        min-height: 1rem;
    }

    .itemTitle {
        font-size: 1.5rem;
    }

    .bankfont {
        font-size: smaller;
    }

    .promotion-page .content-wrap {
        background: none !important;
    }

    .jackport-count-mobile {
        top: 45%;
        right: 7%;
        font-size: 6vw;
    }


    .vip-label-title {
        font-size: 11px;
    }

    .vip-deposit-box {
        min-height: 5rem;
    }

    .vip-btn-custom1 {
        padding: 5px 4rem;
    }

    .vip-btn-custom2 {
        padding: 5px 4rem;
    }

    .vip-level-text {
        font-size: 12px;
    }

    .vip-amount {
        font-size: 0.8rem;
    }

    .treasure-box {
        width: 50%;
    }

    .time-laber {
        font-size: 16px;
        font-weight: 600;
    }

    .headerDiv {
        min-height: auto;
    }

    .dep-btn-custom1 {
        position: static !important;
        width: 80%;
        align-self: center;
    }

    #loginModal .modal-body img,
    #loginModal .login-modal-logo {
        width: 75% !important;
    }

    #forgotPasswordModal .modal-body img {
        width: 75% !important;
    }


}

/*custom width*/
@media (max-width: 541px) {
    .progress-deposit:nth-child(2) {
        margin-left: 4%;
    }

    .progress-deposit:nth-child(3) {
        margin-left: 25%;
    }

    .progress-deposit:nth-child(4) {
        margin-left: 14%;
    }

    .progress-deposit:last-child {
        margin-left: 9%;
    }
}

/*custom width*/
@media (max-width: 480px) {

    .progress-deposit:nth-child(2) {
        margin-left: 6px;
    }

    .progress-deposit:nth-child(3) {
        margin-left: 25%;
    }

    .progress-deposit:nth-child(4) {
        margin-left: 15%;
    }

    .progress-deposit:last-child {
        margin-right: -1rem;
    }

    /*.progress-animation.diamondProgress{
        width: 100%;
        border-radius: 20px;
    }*/

    .jackport-count-mobile {
        top: 50%;
        right: 7%;
        font-size: 6vw;
    }
}

@media (max-width: 320px) {
    .progress-deposit {
        font-size: 10px;
    }

    .img-play-btn {
        width: 100px;
    }
}

.seo-header {
    border-top: 5px solid #7600EE;
}

.seo-content {
    color: white !important;
}

.seo-content h1 {
    color: white !important;
    font-size: 12px;
    margin-bottom: 0.2rem;
}

.seo-content h2 {
    color: white !important;
    font-size: 10px;
    margin-bottom: 0.2rem;
}

.seo-content h3 {
    color: white !important;
    font-size: 10px;
    margin-bottom: 0.2rem;
}

.seo-content h4 {
    color: white !important;
    font-size: 10px;
    margin-bottom: 0.2rem;
}

.seo-content p {
    color: white !important;
    font-size: 9px;
    margin-bottom: 1rem;
}

.seo-content ul {
    color: white !important;
    margin-bottom: 0.3rem;
    font-size: 9px;
}

.seo-header-wrapper {
    padding: 0;
    background: black !important;
}

.seo-collapse-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 8px 0;
    background: transparent;
    border: none;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    cursor: pointer;
    outline: none;
}

.seo-toggle-label {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: white;
}

.seo-toggle-readmore {
    font-size: 12px;
    font-weight: 600;
    color: white;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.seo-collapse-toggle:hover .seo-toggle-readmore {
    color: #333;
}

.seo-collapse-toggle[aria-expanded="true"] .seo-toggle-readmore {
    font-size: 0;
}

.seo-collapse-toggle[aria-expanded="true"] .seo-toggle-readmore::after {
    content: "Close";
    font-size: 12px;
    text-decoration: underline;
}

/* 当按钮是展开状态时，隐藏里面的文字标题 */
.seo-collapse-toggle[aria-expanded="true"] .seo-toggle-label {
    display: none;
}

/* 此时按钮只剩下一个图标，如果你想让按钮在展开时显示“收起”或者别的，可以这样： */
.seo-collapse-toggle[aria-expanded="true"]::before {
    content: "";
    font-size: 14px;
    margin-right: 10px;
}

/* 旋转图标，让用户知道点击可以收起 */
.seo-collapse-toggle[aria-expanded="true"] .seo-toggle-icon {
    transform: rotate(180deg);
}

@media (max-width: 767px) {
    .seo-toggle-label {
        padding-bottom: 10px;
        font-size: 7px;
        font-weight: 600;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: white;
    }

    .seo-toggle-readmore {
        padding-bottom: 10px;
    }
}

.video-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    /* Adjust the radius as needed */
}

.video-wrapper iframe {
    top: 0;
    left: 0;
    width: 100%;
    height: 49.5rem;
    border: 0;
    border-radius: 15px;
    /* Ensure iframe itself also has rounded corners */
}

.live-winlose {
    border: 3px solid #E1E3E7;
    border-radius: 25px;
}

#oc-slide-2 .owl-dots {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    display: flex;
    justify-content: center;
    z-index: 10;
}

#oc-slide-2 .owl-dot {
    margin: 0 5px;
}

#oc-slide-2 .item {

    position: relative;
}

#oc-slide-2 .item img {
    height: 20rem;
    border-radius: 15px;
    display: block;
    width: 100%;
}

.mySwiper {
    width: 100%;
    height: 330px;
    margin: 0 auto;
    overflow: hidden;
}

.mySwiper .swiper-slide {
    background: #000;
    width: 900px;
    height: 290px;
    border-radius: 20px;
    overflow: hidden;
    transition: transform 0.5s ease, opacity 0.5s ease;
}

.mySwiper .swiper-slide img {
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

/* 中间图片放大一点 */
.mySwiper .swiper-slide-active {
    transform: scale(1.1);
    z-index: 10;
}

/* 左右的图片稍微透明一点 */
.mySwiper .swiper-slide-prev,
.mySwiper .swiper-slide-next {
    opacity: 0.8;
}


/* 统一按钮基础样式 */
.swiper-button-next,
.swiper-button-prev {
    background-color: white;
    width: 50px !important;
    height: 50px !important;
    border-radius: 50%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    top: 50%;
    transform: translateY(-50%);
    /* 抵消自身高度 */
    z-index: 10;
    /* 确保在图片上方 */
}

/* 调整箭头颜色和大小 */
.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 12px !important;
    font-weight: bold;
}

/* 按钮位置调整：让它们紧贴中间大图的两侧 */
/* 这里 25% 是一个经验值，取决于你的 slidesPerView 和中间图的宽度 */
.swiper-button-prev {
    left: 20%;
}

.swiper-button-next {
    right: 20%;
}

.winlose-table tr td {
    border-top: 0 !important;
    border-bottom: 1px solid #ddd !important;
}

#realtime-carousel .owl-nav,
#realtime-carousel .owl-dots {
    display: none !important;
}

.hot-tag {
    position: absolute;
    top: 5px;
    left: 5px;
    background-color: #ff0000;
    color: #ffffff;
    font-size: 12px;
    font-weight: bold;
    padding: 4px 10px;
    border-radius: 2px;
    z-index: 10;
    line-height: 1;
}

/* RealTime UI Beautification */
.glass-panel {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
    overflow: hidden;
}

.realtime-title {
    font-size: 2.5rem;
    font-weight: 800;
    background: linear-gradient(180deg, #FFFFFF 0%, #D28DFF 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0px 4px 15px rgba(210, 141, 255, 0.3);
    letter-spacing: 2px;
    text-transform: uppercase;
}

.realtime-subtitle {
    font-size: 1.25rem;
    font-weight: 700;
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.realtime-table {
    width: 100%;
    color: rgba(255, 255, 255, 0.8) !important;
}

.realtime-table td {
    border-top: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    vertical-align: middle;
    transition: all 0.3s ease;
}

.realtime-table tr:last-child td {
    border-bottom: none !important;
}

.realtime-table-row {
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.realtime-table-row:hover {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.realtime-table-row:hover td:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.realtime-table-row:hover td:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

.text-deposit {
    color: #00FF87 !important;
    font-weight: 800;
    text-shadow: 0 0 10px rgba(0, 255, 135, 0.4);
}

.text-withdraw {
    color: #FF0055 !important;
    font-weight: 800;
    text-shadow: 0 0 10px rgba(255, 0, 85, 0.4);
}

/* Override Bootstrap 5 Container Max Width */
@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1230px !important;
    }
}


.custom-modal-close {
    position: absolute;
    top: 0;
    right: 15px;
    color: white;
    font-size: 24px;
    font-weight: bold;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 5;
}

.custom-modal-close:hover {
    color: #f00;
    transform: scale(1.1);
}