/* Reset & Base */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
--primary:#fbbf24;
--primary-glow:rgba(251,191,36,0.4);
--secondary:#f59e0b;
--accent:#fb923c;
--accent-glow:rgba(251,146,60,0.3);
--bg-dark:#1c1917;
--bg-mid:#292524;
--bg-darker:#0c0a09;
--card-bg:rgba(41,37,36,0.7);
--card-border:rgba(251,191,36,0.2);
--text-light:#fafaf9;
--text-muted:#a8a29e;
--transition:0.3s cubic-bezier(0.4,0,0.2,1);
--radius:14px;
}
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@800&family=Open+Sans:wght@400;600&family=Source+Code+Pro&display=swap');
body{font-family:'Open Sans',system-ui,sans-serif;background:linear-gradient(180deg,var(--bg-dark),var(--bg-mid),var(--bg-darker));color:var(--text-light);line-height:1.6;min-height:100vh;overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:'Montserrat',system-ui,sans-serif;font-weight:800;line-height:1.2}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{cursor:pointer;border:none;font-family:inherit}

/* Header */
.header{position:sticky;top:0;z-index:100;background:rgba(28,25,23,0.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--card-border);padding:1rem 0}
.header-container{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}
.logo{font-size:1.5rem;font-weight:800;color:var(--primary);display:flex;align-items:center;gap:0.5rem;text-shadow:2px 2px 0 var(--primary-glow)}
.logo:hover{transform:scale(1.02);transition:var(--transition)}
.age-badge{background:var(--primary);color:var(--bg-darker);font-weight:800;padding:0.25rem 0.75rem;border-radius:20px;font-size:0.85rem;box-shadow:0 4px 12px var(--primary-glow)}
.nav-desktop{display:none;gap:2rem;align-items:center}
.nav-desktop a{font-weight:600;transition:var(--transition);position:relative}
.nav-desktop a:hover{color:var(--primary);transform:translateY(-2px)}
.nav-desktop a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary);transition:var(--transition)}
.nav-desktop a:hover::after{width:100%}
.mobile-menu-btn{display:flex;flex-direction:column;gap:4px;background:transparent;padding:0.5rem}
.mobile-menu-btn span{width:25px;height:3px;background:var(--primary);border-radius:2px;transition:var(--transition)}
.mobile-menu{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background:var(--bg-dark);padding:2rem;transition:var(--transition);z-index:200;border-left:2px solid var(--card-border)}
.mobile-menu.active{right:0}
.mobile-menu-close{position:absolute;top:1rem;right:1rem;background:transparent;color:var(--primary);font-size:2rem;padding:0.5rem}
.mobile-menu nav{display:flex;flex-direction:column;gap:1.5rem;margin-top:3rem}
.mobile-menu a{font-size:1.1rem;font-weight:600;padding:0.75rem;border-radius:var(--radius);transition:var(--transition)}
.mobile-menu a:hover{background:var(--card-bg);color:var(--primary)}
.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.8);z-index:150;display:none}
.overlay.active{display:block}

/* Hero */
.hero{min-height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;padding:3rem 1.5rem;background:linear-gradient(rgba(12,10,9,0.7),rgba(28,25,23,0.8)),url('/images/ban.jpg') center/cover;overflow:hidden}
.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,var(--primary-glow),transparent);opacity:0.3;pointer-events:none}
.hero-content{max-width:800px;position:relative;z-index:2}
.hero-badge{display:inline-flex;align-items:center;gap:0.5rem;background:var(--primary);color:var(--bg-darker);padding:0.5rem 1.5rem;border-radius:30px;font-weight:800;margin-bottom:2rem;font-size:1.2rem;box-shadow:0 8px 24px var(--primary-glow)}
.hero h1{font-size:clamp(2.5rem,8vw,5rem);margin-bottom:1.5rem;text-shadow:4px 4px 0 var(--accent),8px 8px 0 var(--secondary);animation:heroFloat 3s ease-in-out infinite}
.hero p{font-size:1.25rem;margin-bottom:2rem;color:var(--text-muted);max-width:600px;margin-left:auto;margin-right:auto}
.cta-group{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:1rem}
.btn{padding:1rem 2.5rem;border-radius:var(--radius);font-weight:600;font-size:1.1rem;transition:var(--transition);position:relative;overflow:hidden}
.btn-primary{background:var(--primary);color:var(--bg-darker);box-shadow:0 6px 0 var(--secondary),0 10px 30px var(--primary-glow)}
.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 0 var(--secondary),0 14px 40px var(--primary-glow)}
.btn-secondary{background:transparent;color:var(--primary);border:2px solid var(--primary);box-shadow:0 6px 0 var(--card-border)}
.btn-secondary:hover{background:var(--primary);color:var(--bg-darker);transform:translateY(-2px) scale(1.02)}
.hero-disclaimer{font-size:0.9rem;color:var(--text-muted);margin-top:1rem}

/* Container */
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}

/* Section */
.section{padding:5rem 0;position:relative}
.section-header{text-align:center;margin-bottom:3rem}
.section-header h2{font-size:clamp(2rem,5vw,3rem);margin-bottom:1rem;text-shadow:3px 3px 0 var(--accent)}
.section-header .age-badge{margin-left:1rem}

/* Games Grid */
.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}
.game-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius);padding:1rem;transition:var(--transition);cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,0.4),0 4px 0 var(--secondary)}
.game-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 30px var(--primary-glow),0 6px 0 var(--secondary)}
.game-image-container{width:100%;height:200px;border-radius:var(--radius);overflow:hidden;margin-bottom:1rem;position:relative;background:linear-gradient(135deg,var(--secondary),var(--accent))}
.game-image{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
.game-card:hover .game-image{transform:scale(1.1)}
.game-image-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:800;font-size:1.2rem;text-align:center;padding:1rem;color:var(--text-light)}
.game-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem}
.game-category{background:var(--secondary);color:var(--bg-darker);padding:0.25rem 0.75rem;border-radius:20px;font-size:0.85rem;font-weight:600}
.game-title{font-size:1.3rem;margin-bottom:1rem;color:var(--primary)}
.play-demo-btn{width:100%;background:var(--primary);color:var(--bg-darker);padding:0.75rem;border-radius:var(--radius);font-weight:600;transition:var(--transition);box-shadow:0 4px 0 var(--secondary)}
.play-demo-btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--secondary),0 8px 20px var(--primary-glow)}

/* Game Modal */
.game-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:300;display:none;align-items:center;justify-content:center;padding:1rem}
.game-modal.active{display:flex}
.modal-content{width:100%;max-width:1400px;height:90vh;background:var(--bg-dark);border-radius:var(--radius);overflow:hidden;border:2px solid var(--primary);box-shadow:0 20px 60px var(--primary-glow);display:flex;flex-direction:column}
.modal-header{background:var(--card-bg);padding:1rem 1.5rem;display:flex;align-items:center;gap:1rem;border-bottom:2px solid var(--card-border)}
.modal-header h2{flex:1;font-size:1.5rem;color:var(--primary)}
.close-btn{background:var(--accent);color:var(--bg-darker);width:40px;height:40px;border-radius:50%;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.close-btn:hover{transform:rotate(90deg) scale(1.1)}
#game-iframe{width:100%;flex:1;border:none;background:var(--bg-darker)}
.demo-unavailable{flex:1;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--text-muted)}

/* Age Verification Modal */
.age-verification-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:400;display:none;align-items:center;justify-content:center;padding:1rem}
.age-verification-modal.active{display:flex}
.age-modal-content{background:var(--bg-dark);border:3px solid var(--primary);border-radius:var(--radius);padding:3rem;max-width:500px;text-align:center;box-shadow:0 20px 60px var(--primary-glow)}
.age-modal-icon{font-size:4rem;color:var(--primary);margin-bottom:1.5rem}
.age-modal-content h2{font-size:2rem;margin-bottom:1rem;color:var(--primary);text-shadow:2px 2px 0 var(--accent)}
.age-modal-content p{font-size:1.1rem;margin-bottom:2rem;color:var(--text-muted)}
.age-modal-buttons{display:flex;gap:1rem;justify-content:center}
.age-modal-buttons button{padding:1rem 2rem;border-radius:var(--radius);font-weight:600;font-size:1.1rem}
.btn-accept{background:var(--primary);color:var(--bg-darker);box-shadow:0 4px 0 var(--secondary)}
.btn-decline{background:transparent;border:2px solid var(--accent);color:var(--accent)}

/* Steps */
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}
.step-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius);padding:2rem;text-align:center;transition:var(--transition);box-shadow:0 6px 16px rgba(0,0,0,0.3),0 3px 0 var(--secondary)}
.step-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px var(--primary-glow),0 5px 0 var(--secondary)}
.step-icon{font-size:3rem;margin-bottom:1rem}
.step-card h3{font-size:1.5rem;margin-bottom:0.75rem;color:var(--primary)}

/* Features */
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.feature-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius);padding:2rem;transition:var(--transition);box-shadow:0 6px 16px rgba(0,0,0,0.3),0 3px 0 var(--accent)}
.feature-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px var(--accent-glow),0 5px 0 var(--accent)}
.feature-icon{font-size:2.5rem;margin-bottom:1rem}
.feature-card h3{font-size:1.3rem;margin-bottom:0.75rem;color:var(--primary)}

/* Responsible Gaming */
.responsible-gaming{background:var(--card-bg);border:3px solid var(--primary);border-radius:var(--radius);padding:3rem;margin:3rem 0;text-align:center;box-shadow:0 10px 40px var(--primary-glow)}
.responsible-icon{font-size:4rem;color:var(--primary);margin-bottom:1rem}
.responsible-gaming h2{color:var(--primary);margin-bottom:1.5rem}
.responsible-gaming p{max-width:700px;margin:0 auto 2rem;font-size:1.1rem}

/* FAQ */
.faq-container{max-width:800px;margin:0 auto}
.faq-item{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1rem;box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.faq-question{font-size:1.2rem;font-weight:600;color:var(--primary);margin-bottom:0.5rem}
.faq-answer{color:var(--text-muted)}

/* Disclaimer */
.disclaimer-section{background:var(--card-bg);border-top:3px solid var(--primary);padding:3rem 0;margin-top:5rem;text-align:center}
.disclaimer-section .age-badge{font-size:1.2rem;padding:0.5rem 1.5rem;margin-bottom:1rem}
.disclaimer-section p{max-width:900px;margin:0 auto;color:var(--text-muted);font-size:1.1rem}

/* Footer */
.footer{background:var(--bg-darker);border-top:2px solid var(--card-border);padding:3rem 0 2rem}
.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}
.footer-section h3{color:var(--primary);margin-bottom:1rem;font-size:1.3rem}
.footer-links{display:flex;flex-direction:column;gap:0.5rem}
.footer-links a{color:var(--text-muted);transition:var(--transition)}
.footer-links a:hover{color:var(--primary);padding-left:5px}
.footer-bottom{border-top:1px solid var(--card-border);padding-top:2rem;text-align:center}
.footer-badge-large{font-size:2rem;padding:1rem 2rem;margin-bottom:1rem;display:inline-block}
.footer-bottom p{color:var(--text-muted);margin-top:1rem}

/* Category Filter */
.category-filter{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:3rem}
.filter-btn{background:var(--card-bg);border:2px solid var(--card-border);color:var(--text-light);padding:0.75rem 1.5rem;border-radius:var(--radius);font-weight:600;transition:var(--transition)}
.filter-btn.active,.filter-btn:hover{background:var(--primary);color:var(--bg-darker);border-color:var(--primary);box-shadow:0 4px 12px var(--primary-glow)}

/* Page Banner */
.page-banner{background:linear-gradient(135deg,var(--secondary),var(--accent));padding:3rem 1.5rem;text-align:center;margin-bottom:3rem;border-bottom:3px solid var(--primary)}
.page-banner h1{font-size:clamp(2rem,5vw,3rem);text-shadow:3px 3px 0 rgba(0,0,0,0.3)}
.page-banner .age-badge{margin-top:1rem}

/* Content Page */
.content-page{max-width:900px;margin:0 auto;padding:3rem 1.5rem}
.content-page h2{color:var(--primary);margin:2rem 0 1rem;font-size:1.8rem}
.content-page h3{color:var(--secondary);margin:1.5rem 0 0.75rem;font-size:1.4rem}
.content-page p{margin-bottom:1rem;line-height:1.8;color:var(--text-muted)}
.content-page ul{margin-bottom:1rem;padding-left:2rem}
.content-page li{margin-bottom:0.5rem;color:var(--text-muted)}

/* Animations */
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Responsive */
@media(min-width:768px){
.nav-desktop{display:flex}
.mobile-menu-btn{display:none}
}
@media(max-width:767px){
.hero h1{text-shadow:2px 2px 0 var(--accent),4px 4px 0 var(--secondary)}
.cta-group{flex-direction:column}
.btn{width:100%}
}