/* CSS Reset & Root Variables */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:400;line-height:1.6;color:#f8fafc;background:linear-gradient(135deg,#1e1b4b 0%,#312e81 50%,#0f0a1a 100%);background-attachment:fixed;overflow-x:hidden;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;border:none;}
a{text-decoration:none;color:inherit;}

:root{
  --primary:#a855f7;
  --primary-glow:rgba(168,85,247,0.4);
  --secondary:#6366f1;
  --accent:#f472b6;
  --accent-glow:rgba(244,114,182,0.3);
  --bg-gradient-start:#1e1b4b;
  --bg-gradient-mid:#312e81;
  --bg-gradient-end:#0f0a1a;
  --card-bg:rgba(30,27,75,0.6);
  --card-border:rgba(168,85,247,0.2);
  --heading-font:'Space Grotesk',system-ui,sans-serif;
  --body-font:'IBM Plex Sans',system-ui,sans-serif;
  --mono-font:'IBM Plex Mono',monospace;
  --hover-scale:1.01;
  --transition-speed:0.2s;
  --easing:ease-in-out;
  --radius-lg:20px;
  --radius-md:16px;
  --spacing-section:100px;
}

/* Top Accent Bar Decoration */
.kb17-top-accent-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent),var(--secondary));z-index:9999;}

/* Grid Overlay Decoration */
.kb17-grid-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(168,85,247,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(168,85,247,0.03) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;z-index:1;}

/* Age Modal */
.kb17-age-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:opacity 0.3s,visibility 0.3s;}
.kb17-age-modal.kb17-active{opacity:1;visibility:visible;}
.kb17-age-modal-content{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-lg);padding:48px 32px;max-width:500px;text-align:center;position:relative;backdrop-filter:blur(10px);}
.kb17-age-icon{font-size:72px;margin-bottom:24px;filter:drop-shadow(0 0 20px var(--primary-glow));}
.kb17-age-modal h2{font-family:var(--heading-font);font-size:32px;font-weight:700;margin-bottom:16px;color:var(--primary);}
.kb17-age-modal p{font-size:18px;margin-bottom:32px;color:#cbd5e1;}
.kb17-age-modal-buttons{display:flex;gap:16px;justify-content:center;}
.kb17-age-modal-btn{padding:16px 32px;border-radius:12px;font-weight:600;font-size:16px;transition:all var(--transition-speed) var(--easing);}
.kb17-age-modal-btn.kb17-accept{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;}
.kb17-age-modal-btn.kb17-accept:hover{transform:scale(var(--hover-scale));box-shadow:0 0 30px var(--primary-glow);}
.kb17-age-modal-btn.kb17-exit{background:rgba(255,255,255,0.1);color:#fff;}
.kb17-age-modal-btn.kb17-exit:hover{background:rgba(255,255,255,0.2);}

/* Header Navigation */
.kb17-header{position:sticky;top:0;z-index:1000;background:rgba(30,27,75,0.8);backdrop-filter:blur(20px);border-bottom:1px solid var(--card-border);}
.kb17-nav-container{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;}
.kb17-logo-link{display:flex;align-items:center;gap:12px;font-family:var(--heading-font);font-size:24px;font-weight:700;color:var(--primary);}
.kb17-logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;}
.kb17-nav-links{display:flex;align-items:center;gap:32px;}
.kb17-nav-link{font-weight:500;transition:color var(--transition-speed);position:relative;}
.kb17-nav-link:hover{color:var(--primary);}
.kb17-age-badge{background:linear-gradient(135deg,var(--accent),#dc2626);color:#fff;padding:6px 12px;border-radius:8px;font-weight:700;font-size:14px;box-shadow:0 0 15px var(--accent-glow);}
.kb17-mobile-menu-btn{display:none;background:none;font-size:28px;color:var(--primary);}

/* Hero Section */
.kb17-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,var(--bg-gradient-start),var(--bg-gradient-mid),var(--bg-gradient-end));padding:80px 24px;}
.kb17-hero-bg-animated{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,var(--primary),var(--secondary),var(--accent));opacity:0.15;animation:kb17-gradient-shift 8s ease infinite;z-index:0;}
@keyframes kb17-gradient-shift{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(5%,5%) scale(1.1);}}
.kb17-hero-content{position:relative;z-index:2;max-width:1200px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.kb17-hero-text{text-align:left;}
.kb17-corner-badge{position:absolute;top:24px;right:24px;background:linear-gradient(135deg,#dc2626,var(--accent));color:#fff;padding:12px 20px;border-radius:12px;font-weight:700;font-size:20px;box-shadow:0 0 30px rgba(220,38,38,0.5);z-index:3;}
.kb17-hero h1{font-family:var(--heading-font);font-size:56px;font-weight:700;line-height:1.2;margin-bottom:24px;background:linear-gradient(135deg,#fff,var(--primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.kb17-hero-subtitle{font-size:20px;color:#cbd5e1;margin-bottom:32px;line-height:1.6;}
.kb17-hero-ctas{display:flex;gap:16px;margin-bottom:16px;}
.kb17-btn{padding:16px 32px;border-radius:12px;font-weight:600;font-size:16px;transition:all var(--transition-speed) var(--easing);position:relative;overflow:hidden;}
.kb17-btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;}
.kb17-btn-primary:hover{transform:scale(var(--hover-scale));box-shadow:0 0 30px var(--primary-glow);}
.kb17-btn-secondary{background:rgba(255,255,255,0.1);color:#fff;border:1px solid var(--card-border);}
.kb17-btn-secondary:hover{background:rgba(255,255,255,0.2);}
.kb17-hero-disclaimer{font-size:14px;color:#94a3b8;font-style:italic;}
.kb17-hero-visual{position:relative;display:flex;align-items:center;justify-content:center;}
.kb17-hero-visual-box{width:100%;aspect-ratio:1;background:linear-gradient(135deg,rgba(168,85,247,0.2),rgba(99,102,241,0.2));border-radius:var(--radius-lg);border:2px solid var(--card-border);display:flex;align-items:center;justify-content:center;font-size:80px;}

/* Container */
.kb17-container{max-width:1200px;margin:0 auto;padding:var(--spacing-section) 24px;}

/* Section Headers */
.kb17-section-header{text-align:center;margin-bottom:64px;position:relative;}
.kb17-section-header h2{font-family:var(--heading-font);font-size:48px;font-weight:700;margin-bottom:16px;color:var(--primary);}
.kb17-section-header p{font-size:18px;color:#cbd5e1;}
.kb17-section-badge{display:inline-block;background:linear-gradient(135deg,var(--accent),#dc2626);color:#fff;padding:8px 16px;border-radius:8px;font-weight:700;margin-bottom:16px;}

/* Featured Games Grid */
.kb17-games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;}
.kb17-game-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-speed) var(--easing);backdrop-filter:blur(10px);position:relative;}
.kb17-game-card:hover{transform:translateY(-8px);border-color:var(--primary);box-shadow:0 8px 40px var(--primary-glow);}
.kb17-game-image-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--bg-gradient-start),var(--bg-gradient-mid));}
.kb17-game-image-wrap img{width:100%;height:100%;object-fit:cover;}
.kb17-game-image-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-family:var(--heading-font);font-weight:700;font-size:24px;padding:20px;text-align:center;}
.kb17-game-meta{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 8px;}
.kb17-game-category{background:rgba(168,85,247,0.2);color:var(--primary);padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;}
.kb17-game-title{font-family:var(--heading-font);font-size:24px;font-weight:700;padding:0 20px 16px;color:#fff;}
.kb17-game-play-btn{margin:16px 20px 20px;padding:12px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-radius:10px;font-weight:600;width:calc(100% - 40px);transition:all var(--transition-speed) var(--easing);}
.kb17-game-play-btn:hover{transform:scale(var(--hover-scale));box-shadow:0 0 20px var(--primary-glow);}

/* Game Modal */
.kb17-game-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.95);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s,visibility 0.3s;padding:20px;}
.kb17-game-modal.active{opacity:1;visibility:visible;}
.kb17-modal-content{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-lg);width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;backdrop-filter:blur(20px);}
.kb17-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--card-border);}
.kb17-modal-header h2{font-family:var(--heading-font);font-size:24px;font-weight:700;color:var(--primary);flex:1;}
.kb17-modal-close{background:rgba(255,255,255,0.1);color:#fff;width:40px;height:40px;border-radius:50%;font-size:24px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-speed);}
.kb17-modal-close:hover{background:rgba(255,255,255,0.2);transform:rotate(90deg);}
.kb17-modal-body{flex:1;position:relative;min-height:500px;}
.kb17-game-iframe{width:100%;height:100%;border:none;display:block;}
.kb17-demo-unavailable{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-gradient-start),var(--bg-gradient-mid));color:#cbd5e1;font-size:20px;text-align:center;padding:40px;}

/* How It Works */
.kb17-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;}
.kb17-step-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-md);padding:32px;text-align:center;transition:all var(--transition-speed);backdrop-filter:blur(10px);}
.kb17-step-card:hover{transform:translateY(-4px);border-color:var(--primary);}
.kb17-step-icon{font-size:48px;margin-bottom:16px;}
.kb17-step-card h3{font-family:var(--heading-font);font-size:22px;font-weight:700;margin-bottom:12px;color:var(--primary);}
.kb17-step-card p{color:#cbd5e1;line-height:1.6;}

/* Trust Block */
.kb17-trust-block{background:linear-gradient(135deg,rgba(168,85,247,0.1),rgba(99,102,241,0.1));border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:48px;text-align:center;}
.kb17-trust-block h3{font-family:var(--heading-font);font-size:32px;font-weight:700;margin-bottom:24px;color:var(--primary);}
.kb17-trust-list{display:flex;flex-direction:column;gap:16px;max-width:600px;margin:0 auto;}
.kb17-trust-item{display:flex;align-items:center;gap:12px;color:#cbd5e1;font-size:16px;}
.kb17-trust-item::before{content:'✓';color:var(--accent);font-weight:700;font-size:20px;}
.kb17-trust-note{margin-top:24px;font-size:14px;color:#94a3b8;font-style:italic;}

/* CTA Band */
.kb17-cta-band{background:linear-gradient(135deg,var(--primary),var(--secondary));padding:64px 24px;text-align:center;border-radius:var(--radius-lg);position:relative;overflow:hidden;}
.kb17-cta-band::before{content:'';position:absolute;inset:0;background:linear-gradient(45deg,transparent,rgba(255,255,255,0.1),transparent);animation:kb17-shimmer 3s infinite;}
@keyframes kb17-shimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}
.kb17-cta-band h2{font-family:var(--heading-font);font-size:40px;font-weight:700;margin-bottom:16px;color:#fff;}
.kb17-cta-band p{font-size:18px;color:#e0e7ff;margin-bottom:32px;}

/* Why Choose Us */
.kb17-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;}
.kb17-feature-card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-md);padding:32px;transition:all var(--transition-speed);backdrop-filter:blur(10px);}
.kb17-feature-card:hover{transform:translateY(-4px);border-color:var(--accent);}
.kb17-feature-icon{font-size:40px;margin-bottom:16px;}
.kb17-feature-card h3{font-family:var(--heading-font);font-size:20px;font-weight:700;margin-bottom:12px;color:var(--accent);}
.kb17-feature-card p{color:#cbd5e1;line-height:1.6;}

/* Responsible Gaming */
.kb17-responsible{background:linear-gradient(135deg,rgba(220,38,38,0.1),rgba(168,85,247,0.1));border:2px solid var(--accent);border-radius:var(--radius-lg);padding:64px 24px;text-align:center;}
.kb17-responsible-icon{font-size:80px;margin-bottom:24px;filter:drop-shadow(0 0 20px var(--accent-glow));}
.kb17-responsible h2{font-family:var(--heading-font);font-size:40px;font-weight:700;margin-bottom:24px;color:var(--accent);}
.kb17-responsible p{font-size:18px;color:#cbd5e1;max-width:800px;margin:0 auto 32px;line-height:1.8;}
.kb17-responsible-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.kb17-responsible-link{background:rgba(255,255,255,0.1);border:1px solid var(--card-border);color:#fff;padding:12px 24px;border-radius:10px;transition:all var(--transition-speed);}
.kb17-responsible-link:hover{background:rgba(255,255,255,0.2);transform:scale(var(--hover-scale));}

/* FAQ */
.kb17-faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.kb17-faq-item{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;backdrop-filter:blur(10px);}
.kb17-faq-question{display:flex;justify-content:space-between;align-items:center;padding:24px;cursor:pointer;font-family:var(--heading-font);font-weight:700;font-size:18px;color:var(--primary);transition:background var(--transition-speed);}
.kb17-faq-question:hover{background:rgba(168,85,247,0.05);}
.kb17-faq-toggle{font-size:24px;transition:transform var(--transition-speed);}
.kb17-faq-item.active .kb17-faq-toggle{transform:rotate(45deg);}
.kb17-faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s var(--easing);padding:0 24px;}
.kb17-faq-item.active .kb17-faq-answer{max-height:500px;padding:0 24px 24px;}
.kb17-faq-answer p{color:#cbd5e1;line-height:1.8;}

/* Footer */
.kb17-footer{background:rgba(15,10,26,0.9);border-top:1px solid var(--card-border);padding:64px 24px 32px;text-align:center;}
.kb17-footer-logo{font-family:var(--heading-font);font-size:28px;font-weight:700;color:var(--primary);margin-bottom:24px;}
.kb17-footer-age-badge{display:inline-block;background:linear-gradient(135deg,#dc2626,var(--accent));color:#fff;padding:16px 32px;border-radius:12px;font-weight:700;font-size:32px;margin-bottom:24px;box-shadow:0 0 30px rgba(220,38,38,0.5);}
.kb17-footer-disclaimer{max-width:800px;margin:0 auto 32px;color:#94a3b8;line-height:1.8;font-size:16px;}
.kb17-footer-links{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;}
.kb17-footer-link{color:#cbd5e1;transition:color var(--transition-speed);}
.kb17-footer-link:hover{color:var(--primary);}
.kb17-footer-copyright{color:#64748b;font-size:14px;}

/* Line Glow Divider */
.kb17-line-glow{height:2px;background:linear-gradient(90deg,transparent,var(--primary),transparent);margin:var(--spacing-section) 0;box-shadow:0 0 20px var(--primary-glow);}

/* Category Filter */
.kb17-filter-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:48px;}
.kb17-filter-btn{background:rgba(255,255,255,0.1);border:1px solid var(--card-border);color:#cbd5e1;padding:10px 20px;border-radius:8px;font-weight:600;transition:all var(--transition-speed);}
.kb17-filter-btn.active,.kb17-filter-btn:hover{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-color:var(--primary);}

/* Policy Pages */
.kb17-policy-page{max-width:800px;margin:80px auto;padding:40px 24px;}
.kb17-policy-page h1{font-family:var(--heading-font);font-size:42px;font-weight:700;margin-bottom:32px;color:var(--primary);}
.kb17-policy-page h2{font-family:var(--heading-font);font-size:28px;font-weight:700;margin-top:32px;margin-bottom:16px;color:var(--accent);}
.kb17-policy-page p{color:#cbd5e1;line-height:1.8;margin-bottom:16px;}
.kb17-policy-page ul{margin-left:24px;margin-bottom:16px;}
.kb17-policy-page li{color:#cbd5e1;line-height:1.8;margin-bottom:8px;}

/* Responsive */
@media(max-width:1024px){
  .kb17-hero-content{grid-template-columns:1fr;text-align:center;}
  .kb17-hero-text{text-align:center;}
  .kb17-hero-ctas{justify-content:center;}
  .kb17-hero-visual{display:none;}
  .kb17-corner-badge{top:80px;}
}

@media(max-width:768px){
  .kb17-nav-links{position:fixed;top:73px;left:0;width:100%;background:rgba(30,27,75,0.98);backdrop-filter:blur(20px);flex-direction:column;padding:24px;gap:16px;transform:translateX(-100%);transition:transform 0.3s;}
  .kb17-nav-links.active{transform:translateX(0);}
  .kb17-mobile-menu-btn{display:block;}
  .kb17-hero h1{font-size:36px;}
  .kb17-hero-subtitle{font-size:16px;}
  .kb17-section-header h2{font-size:32px;}
  .kb17-games-grid{grid-template-columns:1fr;}
  .kb17-steps{grid-template-columns:1fr;}
  .kb17-features-grid{grid-template-columns:1fr;}
  .kb17-hero-ctas{flex-direction:column;}
  .kb17-corner-badge{font-size:16px;padding:8px 16px;}
}

@media(max-width:640px){
  :root{--spacing-section:60px;}
  .kb17-container{padding:60px 16px;}
  .kb17-hero{padding:60px 16px;min-height:80vh;}
  .kb17-age-modal-content{padding:32px 20px;}
  .kb17-age-modal h2{font-size:24px;}
  .kb17-modal-content{max-height:95vh;}
}