/* GemilangPlay — Social Casino Entertainment | style.css
   Distinct design language: festive bento-grid layout, red/gold palette, pill nav, centered hero with rounded stat badges */
:root{
  --red:#e6293c;
  --red-dark:#b81a2b;
  --gold:#ffc93c;
  --gold-2:#ffe27a;
  --cream:#fff6e6;
  --dark:#2a0d12;
  --dark-2:#3a1319;
  --panel:#421820;
  --text:#fff3e0;
  --text-muted:#e8c3ae;
  --radius:28px;
  --shadow:0 20px 44px rgba(0,0,0,.4);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Nunito','Poppins',sans-serif;background:var(--dark);color:var(--text);overflow-x:hidden;}
h1,h2,h3,h4{font-family:'Fredoka','Nunito',sans-serif;margin:0 0 .5em;}
p{line-height:1.75;color:var(--text-muted);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:1180px;margin:0 auto;padding:0 20px;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 32px;border-radius:50px;font-weight:800;border:none;cursor:pointer;font-size:15px;transition:.25s;font-family:inherit;}
.btn-primary{background:linear-gradient(135deg,var(--gold),var(--red));color:#2a0d12;box-shadow:0 10px 24px rgba(230,41,60,.4);}
.btn-primary:hover{transform:translateY(-3px) scale(1.03);}
.btn-outline{background:transparent;border:2px solid var(--gold);color:var(--gold-2);}
.btn-outline:hover{background:var(--gold);color:#2a0d12;}
.section{padding:80px 0;}
.section-title{font-size:36px;text-align:center;color:#fff;}
.section-title span{color:var(--gold-2);}
.pill-tag{display:inline-block;background:rgba(255,201,60,.15);border:1px solid var(--gold);color:var(--gold-2);padding:7px 18px;border-radius:50px;font-size:13px;font-weight:700;margin-bottom:16px;}

/* Header — pill nav centered */
.site-header{position:sticky;top:0;z-index:500;background:rgba(42,13,18,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,201,60,.15);}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;max-width:1180px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:800;color:#fff;}
.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 6px 16px rgba(255,201,60,.5);}
.brand b{color:var(--gold-2);}
.nav-links{display:flex;gap:6px;align-items:center;background:rgba(255,255,255,.06);padding:6px;border-radius:50px;}
.nav-links a{font-weight:700;color:var(--text-muted);font-size:14px;padding:9px 16px;border-radius:50px;transition:.2s;}
.nav-links a:hover,.nav-links a.active{color:#2a0d12;background:var(--gold-2);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;}
.burger span{width:26px;height:3px;background:#fff;border-radius:2px;}

/* Hero — centered, circular stat badges below */
.hero{position:relative;padding:90px 0 40px;text-align:center;background:linear-gradient(180deg,rgba(42,13,18,.4),rgba(42,13,18,.96)),url('../images/hero-bg.png') center/cover no-repeat;}
.hero h1{font-size:48px;color:#fff;line-height:1.18;max-width:780px;margin:0 auto 18px;}
.hero h1 span{color:var(--gold-2);}
.hero p.lead{font-size:18px;max-width:600px;margin:0 auto 30px;}
.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:44px;}
.hero-badges{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.hb{width:130px;height:130px;border-radius:50%;background:var(--panel);border:3px solid var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--shadow);}
.hb b{font-size:26px;color:var(--gold-2);}
.hb span{font-size:11px;color:var(--text-muted);text-align:center;padding:0 10px;}
.hero-image-strip{margin-top:50px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.hero-image-strip img{width:100%;height:340px;object-fit:cover;}

/* Games — bento grid: one big card + two stacked */
.bento{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;}
.bento-stack{display:flex;flex-direction:column;gap:24px;}
.game-card{background:var(--panel);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,201,60,.15);transition:.3s;}
.game-card:hover{transform:translateY(-6px);}
.game-card .thumb{position:relative;height:260px;overflow:hidden;}
.game-card.small .thumb{height:170px;}
.game-card .thumb img{width:100%;height:100%;object-fit:cover;}
.game-card .tag{position:absolute;top:16px;left:16px;background:var(--red);color:#fff;font-size:12px;font-weight:800;padding:7px 16px;border-radius:50px;}
.game-card .body{padding:24px;}
.game-card .body h3{color:#fff;font-size:22px;}
.game-card .body .btn{margin-top:10px;}

/* Feature bento circles */
.feat-circles{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;}
.fc{width:200px;text-align:center;}
.fc .ic{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--red));display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:28px;color:#2a0d12;}
.fc h4{color:#fff;font-size:16px;}
.fc p{font-size:13px;margin:0;}

/* About split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.split img{border-radius:var(--radius);box-shadow:var(--shadow);}
.split.reverse{direction:rtl;}
.split.reverse > *{direction:ltr;}

/* Band */
.band{position:relative;padding:75px 0;background:linear-gradient(180deg,rgba(42,13,18,.55),rgba(42,13,18,.92)),url('../images/lounge.png') center/cover;text-align:center;border-radius:var(--radius);margin:0 20px;overflow:hidden;}
.band h2{color:#fff;font-size:32px;}

/* Regulators */
.reg-strip{display:flex;flex-wrap:wrap;gap:22px;justify-content:center;align-items:center;padding:30px 0;}
.reg-strip a{background:#fff;border-radius:50px;padding:10px 20px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 20px rgba(0,0,0,.2);}
.reg-strip img{height:34px;width:auto;object-fit:contain;}
.reg-strip span{color:#2a0d12;font-weight:700;font-size:13px;}

/* Footer */
.site-footer{background:#1c080b;padding:60px 0 20px;border-top:1px solid rgba(255,201,60,.1);}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;margin-bottom:30px;}
.foot-grid h4{color:var(--gold-2);font-size:15px;}
.foot-grid a{display:block;color:var(--text-muted);font-size:14px;margin-bottom:10px;}
.foot-grid a:hover{color:#fff;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:20px;text-align:center;font-size:13px;color:var(--text-muted);}
.foot-disclaimer{max-width:900px;margin:0 auto 20px;font-size:12px;text-align:center;color:#b98f7c;line-height:1.7;}

/* Age gate */
.age-overlay{position:fixed;inset:0;background:rgba(20,5,7,.94);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px);}
.age-modal{background:var(--panel);border-radius:32px;max-width:460px;width:100%;padding:42px 32px;text-align:center;border:1px solid rgba(255,201,60,.35);box-shadow:0 30px 60px rgba(0,0,0,.5);}
.age-modal .icon18{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--red));display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;color:#2a0d12;margin:0 auto 18px;}
.age-modal h3{color:#fff;font-size:22px;}
.age-actions{display:flex;gap:14px;margin-top:24px;}
.age-actions .btn{flex:1;justify-content:center;font-size:13px;padding:14px 8px;}

/* Page hero */
.page-hero{padding:70px 0 50px;text-align:center;background:linear-gradient(180deg,rgba(42,13,18,.5),rgba(42,13,18,.97)),url('../images/pattern-banner.png') center/cover;}
.page-hero h1{font-size:38px;color:#fff;}
.page-hero p{max-width:600px;margin:10px auto 0;}

/* Legal */
.legal{max-width:840px;margin:0 auto;}
.legal h2{color:var(--gold-2);font-size:24px;margin-top:34px;}
.legal h3{color:#fff;font-size:18px;margin-top:22px;}
.legal ul{color:var(--text-muted);line-height:1.85;}
.updated-tag{display:inline-block;background:rgba(255,201,60,.14);color:var(--gold-2);padding:6px 16px;border-radius:50px;font-size:13px;margin-bottom:18px;}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.contact-card{background:var(--panel);border-radius:var(--radius);padding:30px;border:1px solid rgba(255,201,60,.15);}
.contact-card .row{display:flex;gap:14px;margin-bottom:22px;align-items:flex-start;}
.contact-card .row .ic{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--red));display:flex;align-items:center;justify-content:center;font-size:18px;color:#2a0d12;flex-shrink:0;}
.contact-card .row b{color:#fff;display:block;font-size:15px;}
.contact-form input,.contact-form textarea{width:100%;padding:13px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.15);background:var(--dark-2);color:#fff;margin-bottom:16px;font-family:inherit;font-size:14px;}
.contact-form label{font-size:13px;color:var(--text-muted);display:block;margin-bottom:6px;}

/* ===== SLOT GAME ===== */
.game-stage{padding:60px 0 90px;background:linear-gradient(180deg,rgba(42,13,18,.55),rgba(42,13,18,.96)),url('../images/slot-bg.png') center/cover;}
.slot-panel{max-width:640px;margin:0 auto;background:var(--panel);border-radius:32px;padding:34px;box-shadow:var(--shadow);border:2px solid var(--gold);}
.balance-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;flex-wrap:wrap;gap:10px;}
.balance-box{background:var(--dark-2);border-radius:20px;padding:12px 20px;text-align:center;min-width:130px;}
.balance-box span{font-size:12px;color:var(--text-muted);display:block;}
.balance-box b{font-size:22px;color:var(--gold-2);}
.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#1c080b;border-radius:24px;padding:18px;margin-bottom:22px;border:1px solid rgba(255,201,60,.25);}
.reel{background:linear-gradient(180deg,#421820,#2a0d12);border-radius:16px;height:130px;overflow:hidden;position:relative;box-shadow:inset 0 0 14px rgba(0,0,0,.5);}
.reel .strip{display:flex;flex-direction:column;transition:transform 0.1s linear;}
.reel .sym{height:130px;display:flex;align-items:center;justify-content:center;font-size:58px;}
.controls-row{display:flex;align-items:center;gap:14px;justify-content:center;flex-wrap:wrap;}
.bet-box{display:flex;align-items:center;gap:10px;background:var(--dark-2);border-radius:50px;padding:8px 14px;}
.bet-box button{width:32px;height:32px;border-radius:50%;border:none;background:var(--gold);color:#2a0d12;font-weight:800;cursor:pointer;font-size:16px;}
.spin-btn{width:96px;height:96px;border-radius:50%;border:none;cursor:pointer;background:radial-gradient(circle at 35% 30%,var(--gold-2),var(--red));color:#2a0d12;font-weight:800;font-size:16px;box-shadow:0 12px 30px rgba(230,41,60,.5);transition:.2s;}
.spin-btn:hover{transform:scale(1.05);}
.spin-btn:disabled{opacity:.6;cursor:not-allowed;}
.result-msg{text-align:center;margin-top:18px;font-size:18px;font-weight:800;color:var(--gold-2);min-height:28px;}
.win-flash{animation:flashWin .6s ease-in-out 2;}
@keyframes flashWin{0%,100%{box-shadow:0 0 0 rgba(255,201,60,0);}50%{box-shadow:0 0 40px rgba(255,201,60,.8);}}
.paytable{display:flex;justify-content:center;gap:16px;margin-top:26px;flex-wrap:wrap;}
.paytable .p{background:var(--dark-2);border-radius:16px;padding:10px 14px;text-align:center;font-size:13px;}
.paytable .p .em{font-size:26px;}

/* ===== HI-LO GAME ===== */
.hilo-stage{padding:60px 0 90px;background:linear-gradient(180deg,rgba(42,13,18,.55),rgba(42,13,18,.96)),url('../images/hilo-bg.png') center/cover;}
.hilo-panel{max-width:600px;margin:0 auto;background:var(--panel);border-radius:32px;padding:34px;box-shadow:var(--shadow);border:2px solid var(--red);text-align:center;}
.card-display{width:150px;height:210px;margin:0 auto 26px;border-radius:20px;background:linear-gradient(160deg,#fff,var(--cream));color:#2a0d12;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:60px;font-weight:800;box-shadow:0 16px 30px rgba(0,0,0,.4);border:3px solid var(--gold);}
.card-display .suit{font-size:26px;margin-top:6px;}
.hilo-actions{display:flex;gap:16px;justify-content:center;margin:20px 0;}
.hilo-actions button{flex:1;padding:18px;border-radius:20px;font-size:17px;font-weight:800;border:none;cursor:pointer;transition:.2s;}
.btn-higher{background:linear-gradient(135deg,#ffe27a,var(--gold));color:#2a0d12;}
.btn-lower{background:linear-gradient(135deg,#ff7a8c,var(--red));color:#fff;}
.hilo-actions button:hover{transform:translateY(-3px);}
.streak-row{display:flex;justify-content:space-around;margin-top:20px;}
.streak-row .s{text-align:center;}
.streak-row .s b{display:block;font-size:22px;color:var(--gold-2);}
.streak-row .s span{font-size:12px;color:var(--text-muted);}

@media(max-width:900px){
  .split,.bento,.contact-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .burger{display:flex;}
  .hero h1{font-size:34px;}
  .hero-image-strip img{height:220px;}
}
@media(max-width:600px){
  .foot-grid{grid-template-columns:1fr;}
  .reels{grid-template-columns:repeat(3,1fr);}
  .reel .sym{font-size:42px;}
  .reel{height:100px;}
  .reel .sym{height:100px;}
  .hb{width:105px;height:105px;}
}
.nav-links.show{display:flex;position:absolute;top:70px;left:0;right:0;background:var(--dark-2);flex-direction:column;padding:20px;gap:10px;border-bottom:1px solid rgba(255,201,60,.2);border-radius:0;}
