/* Lucky Win Casino mobile-first design */
:root {
  font-size: 62.5%;
  --g4d7-primary: #ffb347;
  --g4d7-primary-soft: #ffd08a;
  --g4d7-cream: #ffebcd;
  --g4d7-bg: #2d2d2d;
  --g4d7-bg-2: #1d1d20;
  --g4d7-card: #36312d;
  --g4d7-card-2: #44392f;
  --g4d7-text: #ffebcd;
  --g4d7-muted: #d8c9ad;
  --g4d7-line: rgba(255, 179, 71, .24);
  --g4d7-danger: #ff6b6b;
  --g4d7-green: #74e6a7;
  --g4d7-shadow: 0 1.8rem 4rem rgba(0, 0, 0, .35);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: radial-gradient(circle at top left, rgba(255, 179, 71, .15), transparent 36rem), linear-gradient(135deg, var(--g4d7-bg), var(--g4d7-bg-2));
  color: var(--g4d7-text);
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: 1.6rem;
  line-height: 1.5rem;
  overflow-x: hidden;
}
a { color: var(--g4d7-primary); text-decoration: none; font-weight: 800; }
a:hover { color: var(--g4d7-cream); }
img { max-width: 100%; display: block; }
button, a { -webkit-tap-highlight-color: transparent; }

.g4d7-page { width: 100%; max-width: 43rem; margin: 0 auto; min-height: 100vh; background: rgba(29, 29, 32, .72); }
.g4d7-container { width: min(100%, 43rem); margin: 0 auto; padding: 0 1.4rem; }
.g4d7-wrapper { padding-top: 7.4rem; }
.g4d7-section { padding: 2rem 0; }
.g4d7-kicker { color: var(--g4d7-primary); font-weight: 900; letter-spacing: .08em; text-transform: uppercase; font-size: 1.15rem; }
.g4d7-title { margin: .6rem 0 1.1rem; font-size: 2.45rem; line-height: 1.15; color: #fff6e4; }
.g4d7-subtitle { color: var(--g4d7-muted); line-height: 1.65; margin: .4rem 0 1.4rem; }
.g4d7-small { font-size: 1.25rem; color: var(--g4d7-muted); line-height: 1.45; }
.g4d7-highlight { color: var(--g4d7-primary); font-weight: 900; }
.g4d7-linkline { display: inline; color: var(--g4d7-primary-soft); font-weight: 900; border-bottom: .1rem solid var(--g4d7-primary); cursor: pointer; }

.g4d7-header { position: fixed; top: 0; left: 50%; transform: translateX(-50%); width: min(100%, 43rem); z-index: 1000; background: rgba(29, 29, 32, .96); border-bottom: .1rem solid var(--g4d7-line); backdrop-filter: blur(1.4rem); }
.g4d7-headrow { min-height: 6.4rem; display: flex; align-items: center; gap: .8rem; padding: .8rem 1rem; }
.g4d7-brand { display: flex; align-items: center; gap: .7rem; min-width: 0; flex: 1; color: var(--g4d7-cream); }
.g4d7-logo { width: 3.2rem; height: 3.2rem; border-radius: .9rem; box-shadow: 0 0 0 .2rem rgba(255, 179, 71, .25); }
.g4d7-brand-text { display: flex; flex-direction: column; min-width: 0; }
.g4d7-brand-name { font-weight: 950; font-size: 1.45rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.g4d7-brand-note { font-size: 1.05rem; color: var(--g4d7-muted); }
.g4d7-head-actions { display: flex; align-items: center; gap: .5rem; }
.g4d7-btn { border: 0; min-height: 4.4rem; min-width: 4.4rem; border-radius: 999rem; padding: 0 1.2rem; font-weight: 900; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.g4d7-btn:active { transform: scale(.94); }
.g4d7-btn-primary { background: linear-gradient(135deg, var(--g4d7-primary), #ff8f3b); color: #1f160f; box-shadow: 0 .8rem 2rem rgba(255, 143, 59, .28); }
.g4d7-btn-ghost { background: rgba(255, 235, 205, .1); color: var(--g4d7-cream); border: .1rem solid rgba(255, 235, 205, .18); }
.g4d7-menu-btn { background: #4c3525; color: var(--g4d7-primary); padding: 0; font-size: 2rem; }
.g4d7-mobile-menu { position: fixed; top: 6.4rem; right: 1rem; width: min(31rem, calc(100vw - 2rem)); max-height: calc(100vh - 8rem); overflow-y: auto; transform: translateY(-1rem) scale(.97); opacity: 0; pointer-events: none; z-index: 9999; border: .1rem solid var(--g4d7-line); border-radius: 1.8rem; background: #231f1e; box-shadow: var(--g4d7-shadow); padding: 1rem; transition: .2s ease; }
.g4d7-mobile-menu.g4d7-menu-open { transform: translateY(0) scale(1); opacity: 1; pointer-events: auto; }
.g4d7-nav { display: grid; gap: .7rem; }
.g4d7-nav a { min-height: 4.4rem; display: flex; align-items: center; gap: .8rem; padding: 1rem 1.2rem; border-radius: 1.2rem; background: rgba(255, 235, 205, .06); color: var(--g4d7-text); font-size: 1.35rem; }
.g4d7-desktop-nav { display: none; }

.g4d7-hero { padding: 1.4rem 0 2rem; }
.g4d7-hero-panel { border-radius: 2.4rem; padding: 1.6rem; background: linear-gradient(145deg, rgba(255, 179, 71, .16), rgba(68, 57, 47, .88)); border: .1rem solid var(--g4d7-line); box-shadow: var(--g4d7-shadow); }
.g4d7-hero h1 { margin: .8rem 0 1rem; font-size: 2.75rem; line-height: 1.12; color: #fff7e9; }
.g4d7-hero p { color: var(--g4d7-muted); line-height: 1.65; }
.g4d7-cta-row { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.2rem; }
.g4d7-cta-row .g4d7-btn { flex: 1 1 13rem; }
.g4d7-trust-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; margin-top: 1.2rem; }
.g4d7-trust-item { background: rgba(0, 0, 0, .2); border: .1rem solid rgba(255, 235, 205, .08); border-radius: 1.4rem; padding: 1rem .7rem; text-align: center; }
.g4d7-trust-item strong { color: var(--g4d7-primary); display: block; font-size: 1.55rem; }
.g4d7-trust-item span { font-size: 1.1rem; color: var(--g4d7-muted); }

.g4d7-slider { position: relative; overflow: hidden; border-radius: 2rem; border: .1rem solid var(--g4d7-line); background: #171717; min-height: 17rem; }
.g4d7-slide { display: none; cursor: pointer; }
.g4d7-slide.g4d7-active { display: block; animation: g4d7Fade .45s ease; }
.g4d7-slide img { width: 100%; height: 18rem; object-fit: cover; }
.g4d7-dots { display: flex; gap: .5rem; position: absolute; left: 1.2rem; bottom: 1rem; }
.g4d7-dot { width: .9rem; height: .9rem; border-radius: 999rem; border: 0; background: rgba(255, 235, 205, .45); padding: 0; }
.g4d7-dot.g4d7-active { width: 2.2rem; background: var(--g4d7-primary); }
@keyframes g4d7Fade { from { opacity: .35; transform: scale(1.02); } to { opacity: 1; transform: scale(1); } }

.g4d7-card { background: linear-gradient(160deg, rgba(54, 49, 45, .96), rgba(31, 28, 27, .96)); border: .1rem solid var(--g4d7-line); border-radius: 2rem; padding: 1.5rem; box-shadow: 0 1rem 2.4rem rgba(0,0,0,.2); }
.g4d7-card h2, .g4d7-card h3 { margin-top: 0; color: #fff5df; line-height: 1.2; }
.g4d7-card p, .g4d7-card li { color: var(--g4d7-muted); line-height: 1.65; }
.g4d7-grid { display: grid; gap: 1rem; }
.g4d7-grid-2 { grid-template-columns: repeat(2, 1fr); }
.g4d7-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: .9rem; }
.g4d7-stat { border-radius: 1.5rem; padding: 1.2rem; background: rgba(255, 179, 71, .1); border: .1rem solid var(--g4d7-line); }
.g4d7-stat strong { display: block; color: var(--g4d7-primary); font-size: 2rem; line-height: 1.2; }
.g4d7-stat span { color: var(--g4d7-muted); font-size: 1.18rem; }
.g4d7-pill-list { display: flex; flex-wrap: wrap; gap: .7rem; padding: 0; list-style: none; }
.g4d7-pill-list li { border: .1rem solid var(--g4d7-line); border-radius: 999rem; padding: .8rem 1rem; background: rgba(255,235,205,.06); font-size: 1.25rem; }
.g4d7-steps { counter-reset: g4d7Step; display: grid; gap: 1rem; }
.g4d7-step { position: relative; padding-left: 4.2rem; }
.g4d7-step::before { counter-increment: g4d7Step; content: counter(g4d7Step); position: absolute; left: 0; top: .2rem; width: 3rem; height: 3rem; border-radius: 50%; background: var(--g4d7-primary); color: #23170d; display: grid; place-items: center; font-weight: 950; }

.g4d7-game-section { margin-top: 1.2rem; }
.g4d7-category-title { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: 1.5rem 0 .8rem; }
.g4d7-category-title h3 { margin: 0; font-size: 1.7rem; color: #fff5df; text-transform: capitalize; }
.g4d7-game-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .8rem; }
.g4d7-game { min-height: 9.7rem; border-radius: 1.3rem; background: rgba(255, 235, 205, .055); border: .1rem solid rgba(255, 179, 71, .16); padding: .6rem; text-align: center; display: flex; flex-direction: column; justify-content: flex-start; gap: .5rem; transition: transform .18s ease, border .18s ease; }
.g4d7-game:active { transform: scale(.96); }
.g4d7-game img { width: 5.2rem; height: 5.2rem; object-fit: cover; border-radius: 1.1rem; margin: 0 auto; background: #1b1b1b; }
.g4d7-game span { font-size: 1.05rem; line-height: 1.2; color: var(--g4d7-cream); font-weight: 750; overflow-wrap: anywhere; }
.g4d7-badge { display: inline-flex; align-items: center; gap: .4rem; padding: .4rem .7rem; border-radius: 999rem; background: rgba(116,230,167,.14); color: var(--g4d7-green); font-size: 1.05rem; font-weight: 900; }

.g4d7-review { display: flex; gap: 1rem; align-items: flex-start; }
.g4d7-avatar { width: 4.6rem; height: 4.6rem; border-radius: 50%; background: linear-gradient(135deg, var(--g4d7-primary), #ff7043); display: grid; place-items: center; color: #21150d; font-weight: 950; flex: 0 0 auto; }
.g4d7-payments { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; }
.g4d7-payment { min-height: 5.2rem; border-radius: 1.2rem; background: rgba(255,255,255,.08); border: .1rem solid rgba(255,255,255,.1); display: grid; place-items: center; font-weight: 900; color: #fff5df; }
.g4d7-table { width: 100%; border-collapse: collapse; overflow: hidden; border-radius: 1.4rem; font-size: 1.25rem; }
.g4d7-table th, .g4d7-table td { padding: .9rem; border-bottom: .1rem solid rgba(255,235,205,.1); text-align: left; color: var(--g4d7-muted); }
.g4d7-table th { color: var(--g4d7-primary); background: rgba(255,179,71,.1); }
.g4d7-alert { border-left: .4rem solid var(--g4d7-primary); padding: 1rem 1.2rem; background: rgba(255, 179, 71, .08); border-radius: 1.2rem; color: var(--g4d7-muted); line-height: 1.6; }

.g4d7-footer { padding: 2.2rem 1.4rem 8.8rem; border-top: .1rem solid var(--g4d7-line); background: #201d1b; }
.g4d7-footer-logo { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
.g4d7-footer-links, .g4d7-footer-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1rem 0; }
.g4d7-footer-links a { font-size: 1.22rem; color: var(--g4d7-muted); border-bottom: .1rem solid rgba(255,179,71,.35); }
.g4d7-partners { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; margin: 1.2rem 0; }
.g4d7-partner { border-radius: 1rem; background: rgba(255,235,205,.06); border: .1rem solid rgba(255,235,205,.09); padding: .8rem; text-align: center; color: var(--g4d7-muted); font-size: 1.1rem; }
.g4d7-copy { font-size: 1.15rem; color: #a99880; line-height: 1.5; }

.g4d7-bottom-nav { position: fixed; left: 50%; bottom: 0; transform: translateX(-50%); z-index: 1000; width: min(100%, 43rem); height: 6.2rem; background: #2a211c; border-top: .1rem solid rgba(255,179,71,.35); display: flex; justify-content: space-around; box-shadow: 0 -1rem 2.2rem rgba(0,0,0,.32); }
.g4d7-bottom-item { min-width: 6rem; min-height: 6rem; flex: 1; border: 0; background: transparent; color: var(--g4d7-muted); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .3rem; font-size: 1.05rem; font-weight: 800; cursor: pointer; position: relative; transition: .18s ease; }
.g4d7-bottom-item i, .g4d7-bottom-item .material-icons, .g4d7-bottom-item ion-icon { font-size: 2.4rem; line-height: 1; }
.g4d7-bottom-item:active { transform: scale(.92); color: var(--g4d7-primary); }
.g4d7-bottom-item.g4d7-active { color: var(--g4d7-primary); }
.g4d7-bottom-item.g4d7-active::before { content: ''; position: absolute; top: .45rem; width: 3rem; height: .3rem; border-radius: 999rem; background: var(--g4d7-primary); }
.g4d7-nav-badge { position: absolute; top: .6rem; right: 1.8rem; min-width: 1.6rem; height: 1.6rem; border-radius: 999rem; background: var(--g4d7-danger); color: #fff; font-size: .9rem; display: grid; place-items: center; }

@media (min-width: 769px) {
  body { background: #171717; }
  .g4d7-page, .g4d7-header, .g4d7-bottom-nav { max-width: 43rem; }
  .g4d7-bottom-nav { display: none; }
  .g4d7-footer { padding-bottom: 2.4rem; }
  .g4d7-desktop-nav { display: flex; gap: .7rem; padding: .7rem 1rem 1rem; overflow-x: auto; }
  .g4d7-desktop-nav a { flex: 0 0 auto; padding: .8rem 1rem; border-radius: 999rem; background: rgba(255,235,205,.06); color: var(--g4d7-muted); font-size: 1.2rem; }
}
@media (max-width: 768px) {
  main { padding-bottom: 8rem; }
}
@media (max-width: 360px) {
  .g4d7-headrow { gap: .45rem; padding-left: .7rem; padding-right: .7rem; }
  .g4d7-btn { padding: 0 .9rem; font-size: 1.2rem; }
  .g4d7-game-grid { gap: .55rem; }
  .g4d7-game img { width: 4.8rem; height: 4.8rem; }
  .g4d7-title { font-size: 2.2rem; }
}
