@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;500;600;700;800&display=swap');

:root {
  font-size: 62.5%;
  --gb8b-primary: #4DB6AC;
  --gb8b-secondary: #008B8B;
  --gb8b-bg: #1E1E1E;
  --gb8b-surface: #252525;
  --gb8b-panel: #2f3434;
  --gb8b-muted: #5D5D5D;
  --gb8b-text: #D3D3D3;
  --gb8b-white: #f8fffe;
  --gb8b-gold: #ffd166;
  --gb8b-danger: #ff6b6b;
  --gb8b-shadow: 0 1.4rem 3.5rem rgba(0, 0, 0, .38);
  --gb8b-radius: 1.8rem;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Noto Sans Bengali', Arial, sans-serif;
  background: radial-gradient(circle at top left, rgba(77, 182, 172, .18), transparent 34rem), linear-gradient(180deg, #171818 0%, var(--gb8b-bg) 100%);
  color: var(--gb8b-text);
  font-size: 1.6rem;
  line-height: 1.5rem;
  overflow-x: hidden;
}
body.gb8b-lock { overflow: hidden; }
a { color: var(--gb8b-primary); text-decoration: none; font-weight: 700; }
img { max-width: 100%; display: block; }
button { font-family: inherit; }

.gb8b-page-shell { max-width: 430px; margin: 0 auto; background: rgba(30,30,30,.96); min-height: 100vh; position: relative; box-shadow: 0 0 0 1px rgba(77,182,172,.13); }
.gb8b-container { width: 100%; padding: 0 1.4rem; }
.gb8b-wrapper { padding-top: 7.2rem; }
.gb8b-section { padding: 2.2rem 0; }
.gb8b-section-title { color: var(--gb8b-white); font-size: 2.2rem; line-height: 2.8rem; margin: 0 0 1rem; }
.gb8b-section-kicker { color: var(--gb8b-primary); font-size: 1.2rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; }
.gb8b-text { font-size: 1.52rem; line-height: 2.5rem; color: #d7e4e2; }
.gb8b-highlight { color: var(--gb8b-gold); font-weight: 800; }

.gb8b-header { position: fixed; top: 0; left: 50%; transform: translateX(-50%); width: min(100%, 430px); z-index: 1000; background: rgba(21, 24, 24, .94); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(77,182,172,.25); }
.gb8b-header-row { min-height: 6.2rem; display: flex; align-items: center; gap: .8rem; padding: .8rem 1.2rem; }
.gb8b-brand { display: flex; align-items: center; gap: .75rem; min-width: 0; color: var(--gb8b-white); }
.gb8b-logo { width: 3.2rem; height: 3.2rem; border-radius: .9rem; box-shadow: 0 0 0 .2rem rgba(77,182,172,.25); }
.gb8b-brand-name { font-size: 1.8rem; font-weight: 900; white-space: nowrap; color: var(--gb8b-white); }
.gb8b-header-actions { margin-left: auto; display: flex; align-items: center; gap: .55rem; }
.gb8b-btn { border: 0; min-height: 4.4rem; border-radius: 999px; padding: 0 1.35rem; font-size: 1.35rem; font-weight: 900; cursor: pointer; transition: transform .2s ease, filter .2s ease, background .2s ease; }
.gb8b-btn:active { transform: scale(.96); }
.gb8b-btn-primary { background: linear-gradient(135deg, var(--gb8b-primary), var(--gb8b-secondary)); color: #062424; box-shadow: 0 .8rem 1.8rem rgba(77,182,172,.28); }
.gb8b-btn-ghost { color: var(--gb8b-white); background: rgba(255,255,255,.08); border: 1px solid rgba(211,211,211,.22); }
.gb8b-menu-toggle { width: 4.4rem; min-width: 4.4rem; padding: 0; border-radius: 1.3rem; background: rgba(77,182,172,.12); color: var(--gb8b-primary); border: 1px solid rgba(77,182,172,.28); font-size: 2rem; }
.gb8b-mobile-menu { position: fixed; top: 6.2rem; right: max(calc((100vw - 430px)/2), 0px); width: min(92vw, 34rem); max-height: calc(100vh - 7rem); overflow: auto; padding: 1.2rem; background: #111717; border: 1px solid rgba(77,182,172,.35); border-radius: 0 0 0 2rem; box-shadow: var(--gb8b-shadow); z-index: 9999; transform: translateY(-1.2rem); opacity: 0; pointer-events: none; transition: all .24s ease; }
.gb8b-mobile-menu.gb8b-menu-open { transform: translateY(0); opacity: 1; pointer-events: auto; }
.gb8b-menu-grid { display: grid; gap: .8rem; }
.gb8b-menu-link { min-height: 4.8rem; display: flex; align-items: center; gap: 1rem; padding: 0 1.2rem; border-radius: 1.4rem; background: rgba(255,255,255,.06); color: var(--gb8b-white); border: 1px solid rgba(255,255,255,.08); }
.gb8b-menu-link i, .gb8b-menu-link span.material-icons, .gb8b-menu-link ion-icon { font-size: 2.2rem; color: var(--gb8b-primary); }

.gb8b-hero { padding: 1.4rem 0 2rem; }
.gb8b-slider { position: relative; border-radius: 2.2rem; overflow: hidden; box-shadow: var(--gb8b-shadow); border: 1px solid rgba(77,182,172,.28); min-height: 20rem; }
.gb8b-slide { display: none; position: relative; cursor: pointer; background: #101414; }
.gb8b-slide.gb8b-active { display: block; animation: gb8bFade .45s ease; }
.gb8b-slide img { width: 100%; height: 20.6rem; object-fit: cover; opacity: .82; }
.gb8b-slide-caption { position: absolute; inset: auto 1.2rem 1.2rem; padding: 1rem; border-radius: 1.5rem; background: rgba(0,0,0,.6); border: 1px solid rgba(77,182,172,.25); }
.gb8b-slide-caption strong { display: block; color: var(--gb8b-white); font-size: 1.8rem; line-height: 2.2rem; }
.gb8b-slide-caption span { color: #d7e4e2; font-size: 1.25rem; }
.gb8b-dots { position: absolute; right: 1.2rem; top: 1.2rem; display: flex; gap: .5rem; }
.gb8b-dot { width: .9rem; height: .9rem; border-radius: 50%; background: rgba(255,255,255,.45); border: 0; padding: 0; }
.gb8b-dot.gb8b-active { background: var(--gb8b-primary); transform: scale(1.22); }

.gb8b-hero-card, .gb8b-card { border-radius: var(--gb8b-radius); background: linear-gradient(145deg, rgba(47,52,52,.92), rgba(27,30,30,.96)); border: 1px solid rgba(77,182,172,.2); box-shadow: 0 .8rem 2rem rgba(0,0,0,.25); }
.gb8b-hero-card { margin-top: 1.2rem; padding: 1.5rem; }
.gb8b-title { color: var(--gb8b-white); font-size: 2.55rem; line-height: 3.3rem; margin: 0 0 1rem; }
.gb8b-cta-row { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.2rem; }
.gb8b-promo-link { color: var(--gb8b-gold); font-weight: 900; text-decoration: underline; cursor: pointer; }
.gb8b-chip-row { display: flex; gap: .7rem; overflow-x: auto; padding: .2rem 0 1rem; scrollbar-width: none; }
.gb8b-chip { flex: 0 0 auto; padding: .8rem 1.1rem; border-radius: 999px; background: rgba(77,182,172,.11); color: var(--gb8b-primary); font-size: 1.25rem; font-weight: 800; border: 1px solid rgba(77,182,172,.2); }

.gb8b-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .9rem; }
.gb8b-game-card { min-height: 10.8rem; padding: .65rem; border-radius: 1.3rem; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.08); text-align: center; transition: transform .2s ease, border .2s ease; }
.gb8b-game-card:active { transform: scale(.96); border-color: var(--gb8b-primary); }
.gb8b-game-card img { width: 5.8rem; height: 5.8rem; margin: 0 auto .55rem; border-radius: 1.25rem; object-fit: cover; box-shadow: 0 .5rem 1.3rem rgba(0,0,0,.25); }
.gb8b-game-card span { display: block; color: var(--gb8b-white); font-size: 1.1rem; line-height: 1.45rem; font-weight: 700; }
.gb8b-category { margin: 1.4rem 0 2rem; }
.gb8b-category-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.gb8b-category-head h2 { margin: 0; font-size: 1.95rem; color: var(--gb8b-white); line-height: 2.5rem; }
.gb8b-count { color: var(--gb8b-primary); font-size: 1.2rem; font-weight: 800; }

.gb8b-info-grid { display: grid; gap: 1rem; }
.gb8b-info-card { padding: 1.35rem; }
.gb8b-info-card h3 { color: var(--gb8b-white); margin: 0 0 .8rem; font-size: 1.75rem; line-height: 2.35rem; }
.gb8b-stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; }
.gb8b-stat { padding: 1rem .6rem; border-radius: 1.4rem; background: rgba(77,182,172,.1); text-align: center; border: 1px solid rgba(77,182,172,.18); }
.gb8b-stat strong { display: block; color: var(--gb8b-gold); font-size: 1.75rem; line-height: 2rem; }
.gb8b-stat span { font-size: 1.1rem; color: #cad9d7; }
.gb8b-steps { counter-reset: gb8bStep; display: grid; gap: .9rem; }
.gb8b-step { position: relative; padding: 1.1rem 1.1rem 1.1rem 4.4rem; }
.gb8b-step::before { counter-increment: gb8bStep; content: counter(gb8bStep); position: absolute; left: 1rem; top: 1.1rem; width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--gb8b-primary); color: #062424; display: grid; place-items: center; font-weight: 900; }
.gb8b-review-list { display: grid; gap: .9rem; }
.gb8b-review { padding: 1.2rem; border-left: .35rem solid var(--gb8b-primary); }
.gb8b-payment-row { display: flex; flex-wrap: wrap; gap: .7rem; }
.gb8b-payment { padding: .85rem 1rem; border-radius: 1rem; background: rgba(255,255,255,.07); color: var(--gb8b-white); font-weight: 800; }

.gb8b-footer { padding: 2.4rem 1.4rem 8.8rem; background: #151717; border-top: 1px solid rgba(77,182,172,.2); }
.gb8b-footer-logo { display: flex; align-items: center; gap: .8rem; color: var(--gb8b-white); font-size: 2rem; font-weight: 900; margin-bottom: 1rem; }
.gb8b-footer-logo img { width: 3.4rem; height: 3.4rem; border-radius: 1rem; }
.gb8b-footer-links { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; margin: 1.2rem 0; }
.gb8b-footer-links a { padding: .9rem; border-radius: 1rem; background: rgba(255,255,255,.055); color: #d8e5e4; font-size: 1.25rem; }
.gb8b-partners { display: flex; gap: .7rem; flex-wrap: wrap; margin: 1.2rem 0; }
.gb8b-partner { width: 4.4rem; height: 4.4rem; border-radius: 1.2rem; display: grid; place-items: center; background: rgba(77,182,172,.12); color: var(--gb8b-primary); font-size: 2.2rem; }
.gb8b-copy { font-size: 1.2rem; color: #aebdbb; }

.gb8b-bottom-nav { position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); width: min(100%, 430px); height: 6.2rem; z-index: 1000; display: flex; justify-content: space-around; align-items: center; background: #0f1616; border-top: 1px solid rgba(77,182,172,.35); box-shadow: 0 -1rem 2rem rgba(0,0,0,.34); }
.gb8b-bottom-item { min-width: 6rem; min-height: 6rem; border: 0; background: transparent; color: #c6d1d0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .25rem; font-size: 1.05rem; font-weight: 800; cursor: pointer; position: relative; transition: transform .2s ease, color .2s ease; }
.gb8b-bottom-item i, .gb8b-bottom-item span.material-icons, .gb8b-bottom-item ion-icon { font-size: 2.35rem; line-height: 2.4rem; }
.gb8b-bottom-item:active { transform: scale(.92); color: var(--gb8b-gold); }
.gb8b-bottom-item.gb8b-active { color: var(--gb8b-primary); }
.gb8b-bottom-item.gb8b-active::before { content: ''; position: absolute; top: .35rem; width: 2.8rem; height: .32rem; border-radius: 999px; background: var(--gb8b-primary); }
.gb8b-badge { position: absolute; top: .5rem; right: 1rem; min-width: 1.55rem; height: 1.55rem; padding: 0 .35rem; display: grid; place-items: center; border-radius: 999px; background: var(--gb8b-danger); color: #fff; font-size: .9rem; }

.gb8b-faq details { margin-bottom: .9rem; padding: 1.1rem; border-radius: 1.3rem; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.08); }
.gb8b-faq summary { cursor: pointer; color: var(--gb8b-white); font-weight: 800; line-height: 2.2rem; }
.gb8b-faq p { margin-bottom: 0; }
.gb8b-two-col { display: grid; gap: 1rem; }
.gb8b-mini-list { margin: 0; padding-left: 1.8rem; color: #d7e4e2; line-height: 2.6rem; }
.gb8b-anchor-list { display: flex; flex-wrap: wrap; gap: .8rem; }
.gb8b-anchor-list a { padding: .8rem 1rem; border-radius: 999px; background: rgba(77,182,172,.1); }

@keyframes gb8bFade { from { opacity: .4; transform: scale(1.02); } to { opacity: 1; transform: scale(1); } }
@media (min-width: 769px) {
  .gb8b-bottom-nav { display: none; }
  .gb8b-page-shell { max-width: 1000px; }
  .gb8b-header { width: min(100%, 1000px); }
  .gb8b-wrapper { padding-top: 7.4rem; }
  .gb8b-container { padding: 0 2.4rem; }
  .gb8b-grid { grid-template-columns: repeat(8, 1fr); }
  .gb8b-info-grid, .gb8b-two-col { grid-template-columns: repeat(2, 1fr); }
  .gb8b-slide img { height: 32rem; }
  .gb8b-footer { padding-bottom: 3rem; }
}
@media (max-width: 768px) { main { padding-bottom: 8rem; } }
@media (max-width: 360px) {
  .gb8b-brand-name { font-size: 1.55rem; }
  .gb8b-btn { padding: 0 .95rem; font-size: 1.2rem; }
  .gb8b-grid { gap: .65rem; }
  .gb8b-game-card img { width: 5rem; height: 5rem; }
}
