*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,body{
min-height:100%;
font-family:Arial,Helvetica,sans-serif;
}

body{
background:#080808;
color:#fff;
}

.age-gate{
position:fixed;
inset:0;
display:flex;
justify-content:center;
align-items:center;
overflow:hidden;
padding:20px;
}

.bg-layer{
position:absolute;
inset:0;
background:url('Screenshot 2026-06-10 134112.png') center center/cover no-repeat;
transform:scale(1.35);
filter:saturate(1.05);
}

.overlay{
position:absolute;
inset:0;
background:
radial-gradient(circle at center,rgba(255,213,74,.12),transparent 28%),
rgba(0,0,0,.76);
backdrop-filter:blur(9px);
}

.modal{
position:relative;
z-index:2;
width:100%;
max-width:460px;
background:linear-gradient(180deg,rgba(24,24,24,.98),rgba(7,7,7,.98));
padding:34px 30px 28px;
border-radius:22px;
color:#fff;
border:1px solid rgba(255,213,74,.24);
box-shadow:0 26px 80px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.04) inset;
animation:popIn .35s ease;
}

@keyframes popIn{
from{opacity:0;transform:translateY(18px) scale(.97);}
to{opacity:1;transform:translateY(0) scale(1);}
}

.logo{
text-align:center;
margin-bottom:12px;
}

.logo img{
max-width:168px;
height:auto;
display:block;
margin:0 auto;
}

.badge{
display:inline-flex;
align-items:center;
gap:8px;
background:rgba(255,213,74,.12);
border:1px solid rgba(255,213,74,.32);
color:#ffd54a;
font-size:12px;
font-weight:800;
letter-spacing:.4px;
text-transform:uppercase;
padding:8px 12px;
border-radius:999px;
margin-bottom:15px;
}

.modal h1{
font-size:34px;
line-height:1.1;
font-weight:900;
margin-bottom:12px;
letter-spacing:-.5px;
}

.lead{
font-size:15.5px;
line-height:1.55;
color:#ddd;
margin-bottom:20px;
}

.checks{
display:grid;
gap:12px;
margin:18px 0 20px;
}

.check-card{
display:flex;
align-items:flex-start;
gap:11px;
padding:12px 13px;
border-radius:12px;
background:rgba(255,255,255,.045);
border:1px solid rgba(255,255,255,.08);
font-size:15px;
line-height:1.45;
color:#f1f1f1;
cursor:pointer;
transition:.2s ease;
}

.check-card:hover{
background:rgba(255,255,255,.075);
border-color:rgba(255,213,74,.25);
}

.check-card input{
width:18px;
height:18px;
margin-top:1px;
accent-color:#ffd54a;
flex:0 0 auto;
}

.text-link{
background:none;
border:0;
color:#ffd54a;
text-decoration:underline;
font:inherit;
cursor:pointer;
padding:0;
}

button{
font-family:inherit;
}

#enterBtn,
#exitBtn{
width:100%;
padding:15px;
border:none;
border-radius:12px;
font-size:15px;
font-weight:900;
cursor:pointer;
margin-top:10px;
text-transform:uppercase;
transition:transform .16s ease,filter .16s ease,opacity .16s ease;
}

#enterBtn{
background:linear-gradient(90deg,#f7c83e,#ffe38a);
color:#141414;
box-shadow:0 10px 25px rgba(255,213,74,.2);
}

#enterBtn:not(:disabled):hover,
#exitBtn:hover{
transform:translateY(-1px);
filter:brightness(1.05);
}

#enterBtn:disabled{
background:#686868;
color:#d5d5d5;
cursor:not-allowed;
box-shadow:none;
opacity:.78;
}

#exitBtn{
background:#dc2d45;
color:#fff;
}

.safe-note{
margin-top:18px;
font-size:12.5px;
line-height:1.5;
color:#aaa;
text-align:center;
}

.info-overlay{
position:fixed;
inset:0;
display:none;
align-items:center;
justify-content:center;
padding:20px;
background:rgba(0,0,0,.78);
backdrop-filter:blur(8px);
z-index:10000;
}

.info-overlay.active{
display:flex;
}

.info-box{
position:relative;
width:100%;
max-width:660px;
max-height:82vh;
overflow:auto;
background:linear-gradient(180deg,#161616,#090909);
border:1px solid rgba(255,213,74,.25);
border-radius:18px;
padding:30px;
box-shadow:0 24px 70px rgba(0,0,0,.72);
color:#fff;
}

.info-box h2{
font-size:28px;
line-height:1.2;
margin:0 36px 16px 0;
}

.info-box h3{
font-size:18px;
margin:22px 0 8px;
color:#ffd54a;
}

.info-box p,
.info-box li{
font-size:15px;
line-height:1.65;
color:#ddd;
margin-bottom:12px;
}

.info-box ul{
padding-left:20px;
margin-bottom:12px;
}

.close-btn{
position:absolute;
top:14px;
right:16px;
width:34px;
height:34px;
border:0;
border-radius:50%;
background:rgba(255,255,255,.08);
color:#fff;
font-size:26px;
line-height:1;
cursor:pointer;
}

.close-btn:hover{
background:rgba(255,213,74,.18);
}

/* Responsible Gaming Policy page styles */
body.policy-page{
background:#f8f8f8;
color:#333;
line-height:1.7;
}

.container{
max-width:1200px;
margin:auto;
padding:0 20px;
}

.rg-hero{
background:linear-gradient(135deg,#111,#1b1b1b);
color:#fff;
padding:100px 20px;
text-align:center;
}

.rg-badge{
display:inline-block;
background:#d62839;
padding:10px 18px;
border-radius:50px;
font-size:14px;
font-weight:bold;
margin-bottom:20px;
}

.rg-hero h1{
font-size:52px;
margin-bottom:20px;
}

.rg-hero p{
max-width:800px;
margin:auto;
font-size:18px;
opacity:.9;
}

.section{
padding:80px 0;
}

.section h2{
font-size:36px;
margin-bottom:20px;
color:#111;
}

.section p{
font-size:17px;
margin-bottom:15px;
}

.tools-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
margin-top:40px;
}

.tool-card{
background:#fff;
padding:30px;
border-radius:16px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
transition:.3s;
}

.tool-card:hover{
transform:translateY(-5px);
}

.tool-card .icon{
font-size:42px;
margin-bottom:15px;
}

.warning-section{
background:#fff;
}

.warning-list{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:20px;
margin-top:30px;
}

.warning-item{
background:#fff4f4;
border-left:5px solid #d62839;
padding:20px;
border-radius:10px;
}

.checklist{
background:#111;
color:#fff;
}

.checklist h2{
color:#fff;
}

.checklist ul{
list-style:none;
margin-top:30px;
}

.checklist li{
padding:12px 0;
border-bottom:1px solid rgba(255,255,255,.1);
}

.faq{
background:#fff;
}

.faq-item{
background:#fff;
margin-bottom:15px;
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,.05);
overflow:hidden;
}

.faq-question{
padding:20px;
font-weight:bold;
cursor:pointer;
background:#fafafa;
}

.faq-answer{
display:none;
padding:20px;
}

.faq-item.active .faq-answer{
display:block;
}

.help-section{
background:#ffd700;
text-align:center;
padding:80px 20px;
}

.help-section h2{
font-size:42px;
margin-bottom:20px;
color:#111;
}

.help-btn{
display:inline-block;
background:#111;
color:#fff;
padding:14px 30px;
border-radius:50px;
text-decoration:none;
font-weight:bold;
margin-top:20px;
}

@media(max-width:768px){
.modal{
padding:28px 22px 24px;
}
.modal h1{
font-size:30px;
}
.logo img{
max-width:145px;
}
.rg-hero h1{
font-size:36px;
}
.section h2{
font-size:28px;
}
}
