/* ==========================================================
   CASINO TEMPLATE
   Author: ChatGPT
   Version: 1.0
==========================================================*/

/*==============================
ROOT
==============================*/

:root{

--bg:#180b29;
--bg-dark:#12071f;
--bg-light:#200f39;

--card:#271248;
--card-light:#2a144d;

--primary:#8641ff;
--primary-hover:#9a63ff;

--text:#ffffff;
--text-light:#e7dcff;
--text-muted:#bca9dd;

--border:rgba(255,255,255,.08);

--radius:20px;

--shadow:
0 10px 30px rgba(0,0,0,.35);

--transition:.35s ease;

--container:1400px;

}


/*==============================
RESET
==============================*/

*,
*::before,
*::after{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Inter',sans-serif;

background:var(--bg);

color:var(--text);

overflow-x:hidden;

line-height:1.75;

font-size:18px;

}


/*==============================
SELECTION
==============================*/

::selection{

background:var(--primary);
color:#fff;

}


/*==============================
SCROLLBAR
==============================*/

::-webkit-scrollbar{

width:12px;
height:10px;

}

::-webkit-scrollbar-track{

background:var(--bg-dark);

}

::-webkit-scrollbar-thumb{

background:var(--primary);

border-radius:20px;

border:3px solid var(--bg-dark);

}

::-webkit-scrollbar-thumb:hover{

background:#9f67ff;

}


/*==============================
IMAGES
==============================*/

img{

display:block;

max-width:100%;

height:auto;

}


/*==============================
LINKS
==============================*/

a{

text-decoration:none;

color:inherit;

transition:var(--transition);

}


/*==============================
LIST
==============================*/

ul{

list-style:none;

}


/*==============================
CONTAINER
==============================*/

.container{

width:min(90%,var(--container));

margin:auto;

}


/*==============================
SECTION
==============================*/

section{

padding:90px 0;

}


/*==============================
HEADINGS
==============================*/

h1{

font-size:clamp(40px,6vw,60px);

line-height:1.05;

font-weight:700;

margin-bottom:20px;

}

h2{

font-size:clamp(32px,4vw,46px);

margin-bottom:40px;

position:relative;

display:inline-block;

}

h2::after{

content:"";

position:absolute;

left:0;

bottom:-12px;

width:80px;

height:4px;

background:var(--primary);

border-radius:20px;

}

h3{

font-size:28px;

margin-bottom:18px;

font-weight:700;

}

h4{

font-size:22px;

margin-bottom:15px;

font-weight:700;

}

p{

margin-bottom:24px;

color:var(--text-light);

}


/*==============================
BUTTONS
==============================*/

.button{

display:inline-flex;

align-items:center;

justify-content:center;

gap:12px;

padding:16px 34px;

border-radius:18px;

font-weight:700;

cursor:pointer;

transition:var(--transition);

border:none;

font-size:17px;

}

.button-primary{

background:var(--primary);

color:#fff;

box-shadow:

0 10px 25px rgba(134,65,255,.35);

}

.button-primary:hover{

background:var(--primary-hover);

transform:translateY(-3px);

box-shadow:

0 20px 40px rgba(134,65,255,.4);

}

.button-secondary{

background:transparent;

border:1px solid var(--primary);

color:#fff;

}

.button-secondary:hover{

background:var(--card-light);

}


/*==============================
HEADER
==============================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:9999;

background:rgba(24,11,41,.82);

backdrop-filter:blur(16px);

border-bottom:1px solid rgba(255,255,255,.05);

transition:var(--transition);

}

.header.scrolled{

padding:8px 0;

box-shadow:0 15px 40px rgba(0,0,0,.45);

}

.header__wrapper{

display:flex;

align-items:center;

justify-content:space-between;

min-height:82px;

}

.logo img{

height:48px;

}


/*==============================
NAVIGATION
==============================*/

.navigation ul{

display:flex;

align-items:center;

gap:34px;

}

.navigation a{

font-weight:600;

position:relative;

}

.navigation a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--primary);

transition:.3s;

}

.navigation a:hover::after{

width:100%;

}

.navigation a:hover{

color:#fff;

}


/*==============================
HERO
==============================*/

.hero{

position:relative;

height:78vh;

min-height:700px;

display:flex;

align-items:center;

justify-content:center;

overflow:hidden;

padding:0;

margin-top:82px;

}

.hero__image{

position:absolute;

inset:0;

overflow:hidden;

}

.hero__image img{

width:100%;

height:100%;

object-fit:cover;

transition:transform 8s ease;

}

.hero:hover .hero__image img{

transform:scale(1.08);

}

.hero__overlay{

position:absolute;

inset:0;

background:

linear-gradient(

rgba(24,11,41,.35),

rgba(24,11,41,.82)

);

}

.hero__content{

position:relative;

z-index:5;

text-align:center;

width:min(900px,90%);

}

.hero__badge{

display:inline-block;

padding:10px 18px;

background:rgba(134,65,255,.15);

border:1px solid rgba(134,65,255,.4);

border-radius:30px;

margin-bottom:24px;

font-weight:700;

letter-spacing:.08em;

}

.hero p{

font-size:22px;

margin-bottom:40px;

}

.hero__buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

/*==================================================
STICKY BAR
==================================================*/

.sticky-bar{

position:fixed;

left:50%;

bottom:24px;

transform:translateX(-50%) translateY(120px);

opacity:0;

visibility:hidden;

pointer-events:none;

transition:
transform .35s ease,
opacity .35s ease,
visibility .35s ease;

z-index:9999;

background:rgba(39,18,72,.92);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.08);

padding:12px;

border-radius:22px;

box-shadow:0 20px 60px rgba(0,0,0,.45);

}

.sticky-bar.visible{

opacity:1;

visibility:visible;

pointer-events:auto;

transform:translateX(-50%) translateY(0);

}

.sticky-bar__wrapper{

display:flex;

gap:14px;

}

.sticky-bar .button{

white-space:nowrap;

}

/*==============================
TABLET
==============================*/

@media (max-width:992px){

.sticky-bar{

left:16px;

right:16px;

bottom:16px;

width:auto;

transform:translateY(120px);

border-radius:18px;

padding:10px;

}

.sticky-bar.visible{

transform:translateY(0);

}

.sticky-bar__wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:10px;

}

.sticky-bar .button{

width:100%;

padding:15px 12px;

font-size:15px;

}

}


/*==============================
PHONE
==============================*/

@media (max-width:576px){

.sticky-bar{

left:0;

right:0;

bottom:0;

width:100%;

border-radius:18px 18px 0 0;

padding:12px;

border-left:none;

border-right:none;

border-bottom:none;

}

.sticky-bar__wrapper{

grid-template-columns:1fr 1fr;

}

}


/*==================================================
CONTENT NAVIGATION
==================================================*/

.content-navigation{

padding:35px 0;

}

.scroll-menu{

display:flex;

gap:14px;

overflow-x:auto;

padding-bottom:10px;

scrollbar-width:thin;

}

.scroll-menu::-webkit-scrollbar{

height:8px;

}

.scroll-menu::-webkit-scrollbar-thumb{

background:var(--primary);

border-radius:30px;

}

.scroll-menu a{

flex:none;

padding:14px 26px;

background:var(--card);

border:1px solid rgba(255,255,255,.05);

border-radius:999px;

font-weight:600;

transition:.3s;

white-space:nowrap;

}

.scroll-menu a:hover{

background:var(--primary);

transform:translateY(-3px);

}


/*==================================================
ARTICLE
==================================================*/

.article{

padding-top:20px;

}

.article-container{

max-width:1180px;

}

.article h2{

margin-top:30px;

}

.article h3{

margin-top:50px;

}

.article h4{

margin-top:35px;

}

.article p{

font-size:18px;

color:var(--text-light);

}

.article strong{

color:#fff;

font-weight:700;

}

.article a{

color:var(--primary);

}

.article a:hover{

text-decoration:underline;

}


/*==================================================
CHECK LIST
==================================================*/

.check-list{

display:grid;

grid-template-columns:repeat(2,minmax(0,1fr));

gap:18px;

margin:40px 0;

}

.check-list li{

display:flex;

align-items:center;

gap:14px;

background:var(--card);

padding:18px 22px;

border-radius:18px;

border:1px solid rgba(255,255,255,.05);

transition:.3s;

}

.check-list li:hover{

transform:translateY(-5px);

background:var(--card-light);

}

.check-list li::before{

content:"✓";

    width: 45px;
    height: 45px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:var(--primary);

font-weight:700;

}


/*==================================================
TABLES
==================================================*/

table{

width:100%;

margin:40px 0;

border-collapse:collapse;

overflow:hidden;

border-radius:20px;

box-shadow:var(--shadow);

}

thead{

background:linear-gradient(90deg,#8641ff,#6c32d6);

}

thead th{

padding:20px;

text-align:left;

font-size:17px;

font-weight:700;

color:#fff;

}

tbody tr{

background:var(--card);

transition:.3s;

}

tbody tr:nth-child(even){

background:var(--card-light);

}

tbody tr:hover{

background:#3a1d67;

}

tbody td{

padding:18px 20px;

border-bottom:1px solid rgba(255,255,255,.05);

}


/*==================================================
INFO GRID
==================================================*/

.info-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:28px;

margin-top:50px;

}


/*==================================================
INFO CARD
==================================================*/

.info-card{

background:linear-gradient(
180deg,
#2a144d,
#22103f
);

border-radius:24px;

padding:36px;

border:1px solid rgba(255,255,255,.05);

transition:.35s;

position:relative;

overflow:hidden;

}

.info-card::before{

content:"";

position:absolute;

right:-60px;

top:-60px;

width:180px;

height:180px;

background:rgba(134,65,255,.08);

border-radius:50%;

}

.info-card:hover{

transform:translateY(-8px);

border-color:rgba(134,65,255,.45);

box-shadow:

0 20px 60px rgba(0,0,0,.35);

}

.info-card__icon{

font-size:42px;

margin-bottom:24px;

}

.info-card h4{

margin-bottom:18px;

}

.info-card p{

margin:0;

}


/*==================================================
BONUS SECTION
==================================================*/

.bonus-section{

padding-top:100px;
width: min(90%, var(--container));
    margin: auto;

}

.bonus-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:34px;

margin-top:50px;

}


/*==================================================
BONUS CARD
==================================================*/

.bonus-card{

background:linear-gradient(
180deg,
#2d1751,
#23103f
);

border-radius:26px;

overflow:hidden;

border:1px solid rgba(255,255,255,.05);

transition:.35s;

display:flex;

flex-direction:column;

}

.bonus-card:hover{

transform:translateY(-10px);

box-shadow:

0 25px 70px rgba(0,0,0,.45);

}

.bonus-card.featured{

border:2px solid var(--primary);

transform:scale(1.03);

}

.bonus-card.featured:hover{

transform:scale(1.05);

}

.bonus-card__image{

height:230px;

overflow:hidden;

}

.bonus-card__image img{

width:100%;

height:100%;

object-fit:cover;

transition:1s;

}

.bonus-card:hover img{

transform:scale(1.08);

}

.bonus-card__body{

padding:34px;

display:flex;

flex-direction:column;

flex:1;

}

.bonus-card__label{

display:inline-block;

padding:8px 14px;

border-radius:999px;

background:rgba(134,65,255,.15);

border:1px solid rgba(134,65,255,.35);

font-size:13px;

font-weight:700;

letter-spacing:.08em;

margin-bottom:22px;

}

.bonus-card h3{

font-size:30px;

margin-bottom:16px;

}

.bonus-card p{

flex:1;

margin-bottom:28px;

}


/*==================================================
PAYMENTS
==================================================*/

.payments{

padding-top:100px;
width: min(90%, var(--container));
    margin: auto;

}

.payments-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

margin-top:45px;

}

.payment-item{

display:flex;

align-items:center;

justify-content:center;

min-height:90px;

border-radius:18px;

background:var(--card);

border:1px solid rgba(255,255,255,.05);

font-weight:700;

font-size:18px;

transition:.3s;

}

.payment-item:hover{

background:var(--primary);

transform:translateY(-5px);

}





/*==================================================
FOOTER
==================================================*/

.footer{

margin-top:120px;

padding:70px 0 40px;

background:var(--bg-dark);

border-top:1px solid rgba(255,255,255,.06);

}

.footer-top{

text-align:center;

max-width:760px;

margin:auto;

}

.footer-logo img{

height:58px;

margin:auto;

margin-bottom:30px;

}

.footer-warning{

margin-bottom:28px;

color:var(--text-muted);

}

.footer-age{

display:inline-flex;

align-items:center;

justify-content:center;

width:90px;

height:90px;

border-radius:50%;

background:var(--primary);

font-size:34px;

font-weight:800;

margin-bottom:35px;

}

.footer-bottom{

margin-top:50px;

padding-top:30px;

border-top:1px solid rgba(255,255,255,.08);

text-align:center;

}

.footer-menu{

display:flex;

justify-content:center;

gap:28px;

flex-wrap:wrap;

margin-bottom:25px;

}

.footer-menu a{

color:var(--text-light);

}

.footer-menu a:hover{

color:#fff;

}


/*==================================================
UTILITY
==================================================*/

.text-center{

text-align:center;

}

.mt-0{

margin-top:0;

}

.mb-0{

margin-bottom:0;

}

.hidden{

display:none;

}


/*==================================================
ANIMATIONS
==================================================*/

.reveal{

opacity:0;

transform:translateY(60px);

transition:all .8s ease;

}

.reveal.active{

opacity:1;

transform:none;

}

.fade{

animation:fade .7s ease;

}

@keyframes fade{

from{

opacity:0;

transform:translateY(30px);

}

to{

opacity:1;

transform:none;

}

}


/*==================================================
RESPONSIVE
==================================================*/

@media (max-width:1200px){

.bonus-grid,
.games-grid{

grid-template-columns:repeat(2,1fr);

}

.payments-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media (max-width:992px){

.navigation{

display:none;

}

.header__wrapper{

min-height:74px;

}

.hero{

min-height:620px;

}

.hero p{

font-size:20px;

}

.info-grid,
.advantages-grid,
.bonus-grid{

grid-template-columns:1fr;

}

.games-grid{

grid-template-columns:repeat(2,1fr);

}

.payments-grid{

grid-template-columns:repeat(2,1fr);

}

.check-list{

grid-template-columns:1fr;

}

.sticky-bar{



transform:none;

bottom:15px;

}

.sticky-bar__wrapper{

width:100%;

}

.sticky-bar .button{

flex:1;

}

}

@media (max-width:768px){

section{

padding:70px 0;

}

.container{

width:94%;

}

.hero{

height:auto;

padding:120px 0 90px;

min-height:auto;

}

.hero__buttons{

flex-direction:row;

}
.button{

width:60%;

}
.hero__buttons 
{

width:100%;

}



.games-grid,
.payments-grid{

grid-template-columns:1fr;

}

table{

display:block;

overflow-x:auto;

white-space:nowrap;

}

.footer-menu{

flex-direction:column;

gap:18px;

}

.footer-age{

width:72px;

height:72px;

font-size:28px;

}

}

@media (max-width:480px){

body{

font-size:16px;

}

.logo img{

height:42px;

}

.button{

width:60%;

padding:15px 20px;

}

.scroll-menu a{

padding:12px 20px;

}

.info-card,
.advantage,
.bonus-card__body{

padding:24px;

}

.hero__badge{

font-size:13px;

}

}
/*==================================================
PREMIUM EFFECTS
==================================================*/

/* Glow background */

body::before{

content:"";

position:fixed;

top:-350px;

left:-300px;

width:900px;

height:900px;

border-radius:50%;

background:radial-gradient(
circle,
rgba(134,65,255,.10),
transparent 70%
);

pointer-events:none;

z-index:-2;

}

body::after{

content:"";

position:fixed;

right:-350px;

bottom:-350px;

width:900px;

height:900px;

border-radius:50%;

background:radial-gradient(
circle,
rgba(200,170,255,.08),
transparent 70%
);

pointer-events:none;

z-index:-2;

}


/*==================================================
PAGE
==================================================*/

.page{

position:relative;

overflow:hidden;

}


/*==================================================
GLASS EFFECT
==================================================*/

.info-card,
.advantage,
.payment-item,
.game-card,
.bonus-card,
.faq-item{

backdrop-filter:blur(18px);

}


/*==================================================
ACTIVE MENU
==================================================*/

.navigation a.active{

color:#fff;

}

.navigation a.active::after{

width:100%;

}


/*==================================================
LOGO
==================================================*/

.logo{

display:flex;

align-items:center;

}

.logo img{

transition:.4s;

}

.logo:hover img{

transform:scale(1.05);

}


/*==================================================
BUTTON GLOW
==================================================*/

.button-primary{

position:relative;

overflow:hidden;

}

.button-primary::before{

content:"";

position:absolute;

left:-120%;

top:0;

width:80%;

height:100%;

background:linear-gradient(

90deg,

transparent,

rgba(255,255,255,.25),

transparent

);

transform:skewX(-25deg);

transition:.9s;

}

.button-primary:hover::before{

left:150%;

}


/*==================================================
BONUS LABEL
==================================================*/

.bonus-card__label{

text-transform:uppercase;

}


/*==================================================
CARD SHINE
==================================================*/

.info-card::after,
.advantage::after,
.game-card::after,
.bonus-card::after{

content:"";

position:absolute;

top:-140%;

left:-40%;

width:70px;

height:250%;

background:

rgba(255,255,255,.05);

transform:rotate(25deg);

transition:1s;

pointer-events:none;

}

.info-card:hover::after,
.advantage:hover::after,
.game-card:hover::after,
.bonus-card:hover::after{

left:130%;

}


/*==================================================
TABLE
==================================================*/

tbody td{

transition:.3s;

}

tbody tr:hover td{

color:#fff;

}


/*==================================================
HERO
==================================================*/

.hero{

isolation:isolate;

}

.hero::before{

content:"";

position:absolute;

inset:0;

background:

radial-gradient(

circle at center,

rgba(134,65,255,.10),

transparent 65%

);

z-index:2;

pointer-events:none;

}


/*==================================================
SECTION TITLE
==================================================*/

section h2{

letter-spacing:-1px;

}


/*==================================================
SMOOTH TRANSITIONS
==================================================*/

*{

transition-property:

background,

border,

color,

transform,

box-shadow,

opacity;

}


/*==================================================
INPUTS
==================================================*/

input,
textarea,
select{

font:inherit;

color:#fff;

background:var(--card);

border:1px solid rgba(255,255,255,.08);

border-radius:16px;

padding:16px 18px;

outline:none;

}

input:focus,
textarea:focus{

border-color:var(--primary);

box-shadow:

0 0 0 4px rgba(134,65,255,.18);

}


/*==================================================
TEXT SELECTION
==================================================*/

::selection{

background:var(--primary);

color:#fff;

}


/*==================================================
SCROLL OFFSET
==================================================*/

[id]{

scroll-margin-top:120px;

}


/*==================================================
LOADING
==================================================*/

img{

user-select:none;

-webkit-user-drag:none;

}


/*==================================================
FOOTER LINKS
==================================================*/

.footer-menu a{

position:relative;

}

.footer-menu a::after{

content:"";

position:absolute;

left:0;

bottom:-6px;

width:0;

height:2px;

background:var(--primary);

transition:.3s;

}

.footer-menu a:hover::after{

width:100%;

}


/*==================================================
BONUS CARD BUTTON
==================================================*/

.bonus-card .button{

margin-top:auto;

}


/*==================================================
MOBILE
==================================================*/

@media (max-width:992px){

.header{

padding:0 15px;

}

.header-register{

padding:12px 20px;

font-size:15px;

}

.hero h1{

font-size:48px;

}

}

@media (max-width:768px){

.hero h1{

font-size:38px;

}

.hero p{

font-size:18px;

}

.sticky-bar{

padding:10px;

border-radius:18px 18px 0 0;

}

.sticky-bar .button{

font-size:15px;

padding:15px;

}

}

@media (max-width:480px){

.hero{

padding-top:110px;

}

.hero__badge{

padding:8px 14px;

}

.hero h1{

font-size:34px;

}

h2{

font-size:30px;

}

h3{

font-size:24px;

}

p{

font-size:16px;

}

}


.button{
position:relative;
overflow:hidden;
}

.ripple{

position:absolute;

border-radius:50%;

transform:scale(0);

background:rgba(255,255,255,.35);

animation:ripple .6s linear;

pointer-events:none;

}

@keyframes ripple{

to{

transform:scale(4);

opacity:0;

}

}
/* HEADER */

.header{

transition:
transform .35s ease,
background .35s ease,
box-shadow .35s ease;

}

/* BUTTON */

.button.pressed{

transform:scale(.97);

}

/* BACK TO TOP */

.back-top{

position:fixed;

right:30px;

bottom:110px;

width:56px;

height:56px;

border:none;

border-radius:50%;

background:#8641ff;

color:#fff;

font-size:24px;

cursor:pointer;

opacity:0;

visibility:hidden;

transition:.3s;

z-index:999;

box-shadow:0 10px 30px rgba(0,0,0,.35);

}

.back-top.show{

opacity:1;

visibility:visible;

}

.back-top:hover{

transform:translateY(-4px);

}

/* PROGRESS */

.scroll-progress{

position:fixed;

top:0;

left:0;

height:4px;

width:0;

background:#8641ff;

z-index:10000;

}

/* KEYBOARD */

.keyboard-user *:focus{

outline:2px solid #8641ff;

outline-offset:4px;

}