:root { color-scheme: dark; font-family: Inter, Manrope, system-ui, -apple-system, sans-serif; background: #080b13; color: #f6f8ff; }
* { box-sizing: border-box; }
html, body { min-height: 100%; margin: 0; overflow-x: clip; }
body { background: radial-gradient(circle at 78% 3%, #20233c 0, transparent 34rem), #090a0f; }
button, a { font: inherit; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.casino-topbar { position: sticky; z-index: 20; top: 0; display: flex; align-items: center; gap: 30px; width: min(1216px, calc(100% - 24px)); height: 68px; margin: 0 auto; border-bottom: 1px solid #ffffff0d; background: #090a0fdb; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.casino-brand { display: flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; }
.casino-brand__mark { display: grid; place-items: center; width: 26px; height: 30px; flex: 0 0 auto; background: transparent; }
.casino-brand__mark::before { display: none; }
.casino-brand__mark svg { width: 28px; height: 28px; overflow: visible; filter: drop-shadow(0 4px 7px #ff304c5c); }
.casino-brand__mark path { fill: #ff304c; }
.casino-brand__mark--footer { width: 36px; height: 40px; }
.casino-brand__mark--footer svg { width: 38px; height: 38px; }
.casino-brand strong { font-size: 15px; letter-spacing: -.02em; }
.casino-topbar nav { display: flex; align-items: center; gap: 24px; }
.casino-topbar nav a { color: #9fa5b8; font-size: 13px; font-weight: 700; text-decoration: none; }
.casino-topbar nav a:hover { color: #fff; }
.casino-topbar__count { margin-left: auto; padding: 10px 14px; border: 1px solid #ffffff12; border-radius: 11px; color: #fff; background: #181a23; font-size: 13px; font-weight: 800; text-decoration: none; }
.casino-topbar__random { white-space: nowrap; cursor: pointer; transition: filter .18s ease, box-shadow .18s ease; }
.casino-topbar__random:hover { filter: brightness(1.1); box-shadow: 0 11px 28px #ff304c59, 0 0 20px #ff304c33, inset 0 1px #ffd6dc80; }
.casino-topbar__random:active { filter: brightness(.96); }
.casino-topbar__random:focus-visible { outline: 2px solid #ff9cab; outline-offset: 3px; }

.catalog-shell { width: min(1180px, calc(100% - 36px)); margin: 0 auto; padding: clamp(28px, 5vw, 58px) 0 clamp(70px, 8vw, 110px); }

.casino-catalog { scroll-margin-top: 82px; }
.catalog-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 0 0 22px; }
.catalog-section-head span, .home-seo__intro > span, .home-faq > span { color: #8f7cff; font-size: 11px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.catalog-section-head h1 { margin: 8px 0 0; font-size: clamp(38px, 5vw, 64px); line-height: .95; letter-spacing: -.05em; }
.catalog-section-head > b { flex: 0 0 auto; padding: 10px 13px; border: 1px solid #ffffff1c; border-radius: 999px; color: #b8bfd7; background: #ffffff08; font-size: 13px; }
.catalog-intro { max-width: 780px; margin: 0 0 34px; color: #aeb5c8; font-size: clamp(15px, 1.7vw, 18px); font-weight: 560; line-height: 1.6; }
.game-rows { display: grid; gap: clamp(34px, 5vw, 54px); }
.game-row { min-width: 0; }
.game-row__head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.game-row__head h2 { display: flex; align-items: center; gap: 11px; margin: 0; font-size: clamp(22px, 3vw, 30px); line-height: 1; letter-spacing: -.035em; }
.game-row__head h2::before { display: grid; place-items: center; width: 28px; color: #f0f2fa; font-size: 24px; line-height: 1; content: '✦'; }
.game-row[data-category-id="new"] .game-row__head h2::before { content: '+'; }
.game-row[data-category-id="slots"] .game-row__head h2::before { content: '◆'; }
.game-row[data-category-id="fast"] .game-row__head h2::before { content: 'ϟ'; }
.game-row[data-category-id="all"] .game-row__head h2::before { content: '▦'; }
.game-row__head h2 a { display: inline-flex; align-items: center; gap: 9px; color: #f6f8ff; text-decoration: none; }
.game-row__head h2 a span { color: #8a91a5; font-size: 1.15em; font-weight: 500; transition: transform .2s ease, color .2s ease; }
.game-row__head h2 a:hover span { transform: translateX(3px); color: #fff; }
.game-row__controls { display: flex; gap: 6px; }
.game-row__controls button { display: grid; place-items: center; width: 40px; height: 40px; padding: 0 0 3px; border: 1px solid #ffffff12; border-radius: 12px; color: #fff; background: #202127; font-size: 29px; line-height: 1; cursor: pointer; transition: border-color .2s ease, background .2s ease, opacity .2s ease; }
.game-row__controls button:hover { border-color: #8066ff; background: #6f53df; }
.game-row__controls button:disabled { color: #777b88; opacity: .65; cursor: default; }
.game-row__controls button:disabled:hover { border-color: #ffffff12; background: #202127; }
.game-slider { display: grid; grid-auto-flow: column; grid-auto-columns: clamp(142px, 38vw, 180px); gap: 10px; overflow-x: auto; overflow-y: hidden; margin: -10px -18px -8px; padding: 10px 18px 18px; scroll-padding-inline: 18px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-inline: contain; }
.game-slider::-webkit-scrollbar { display: none; }
.game-card { min-width: 0; color: #fff; text-decoration: none; transition: transform .2s ease; }
.game-slider .game-card { scroll-snap-align: start; }
.game-card:hover { position: relative; z-index: 2; transform: translateY(-4px); }
.game-card__media { position: relative; display: block; aspect-ratio: .735; overflow: hidden; border: 1px solid #ffffff16; border-radius: 14px; background: color-mix(in srgb, var(--card-accent) 14%, #0c0f18); box-shadow: 0 12px 26px #0004; }
.game-card__media > img:first-child { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; transition: transform .32s ease, filter .32s ease; }
.game-card:hover .game-card__media > img:first-child { transform: scale(1.035); filter: brightness(.92) saturate(1.05); }
.game-card__media .game-card__logo { position: absolute; z-index: 1; left: 8%; top: 9%; width: 72%; height: auto; object-fit: contain; filter: drop-shadow(0 8px 12px #000a); }
.game-card__status { display: flex; align-items: center; gap: 6px; padding: 9px 3px 0; color: #aeb3c1; font-size: 12px; font-weight: 650; white-space: nowrap; }
.game-card__status i { flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: #10c973; box-shadow: 0 0 8px #10c97366; }
.game-card__status span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }

.category-catalog { min-height: calc(100vh - 160px); scroll-margin-top: 82px; }
.category-catalog__back { display: inline-flex; margin-bottom: 30px; color: #9ca3b8; font-size: 13px; font-weight: 750; text-decoration: none; }
.category-catalog__back:hover { color: #fff; }
.category-catalog__head { max-width: 900px; margin-bottom: clamp(32px, 5vw, 56px); }
.category-catalog__head > span { color: #8f7cff; font-size: 11px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.category-catalog__head h1 { margin: 10px 0 18px; font-size: clamp(40px, 6vw, 72px); line-height: .96; letter-spacing: -.05em; }
.category-catalog__head p { max-width: 760px; margin: 0; color: #aeb5ca; font-size: 16px; line-height: 1.6; }
.category-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(142px, 180px)); gap: 24px 10px; }

.seo-accordion { margin-top: clamp(68px, 9vw, 112px); padding: clamp(24px, 4vw, 48px); border: 1px solid #ffffff14; border-radius: clamp(20px, 3vw, 30px); background: linear-gradient(145deg, #121624, #0a0d15 72%); box-shadow: 0 28px 80px #0004; }
.seo-accordion__head { max-width: 860px; margin-bottom: clamp(26px, 4vw, 42px); }
.seo-accordion__head > span { color: #8f7cff; font-size: 11px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.seo-accordion__head h2 { margin: 10px 0 16px; font-size: clamp(32px, 5vw, 58px); line-height: 1; letter-spacing: -.045em; }
.seo-accordion__head p { max-width: 720px; margin: 0; color: #aeb5ca; font-size: 15px; line-height: 1.65; }
.seo-accordion__items { border-top: 1px solid #ffffff17; }
.seo-accordion details { border-bottom: 1px solid #ffffff17; }
.seo-accordion summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 78px; padding: 19px 4px; color: #eef0f8; font-size: clamp(18px, 2.2vw, 24px); font-weight: 820; line-height: 1.25; list-style: none; cursor: pointer; }
.seo-accordion summary::-webkit-details-marker { display: none; }
.seo-accordion summary i { position: relative; flex: 0 0 auto; width: 38px; height: 38px; border: 1px solid #ffffff1f; border-radius: 50%; background: #ffffff08; }
.seo-accordion summary i::before, .seo-accordion summary i::after { position: absolute; left: 50%; top: 50%; width: 14px; height: 2px; transform: translate(-50%, -50%); border-radius: 2px; background: #f4f5fb; content: ''; transition: transform .2s ease; }
.seo-accordion summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.seo-accordion details[open] summary i { border-color: #8f7cff80; background: #8f7cff20; }
.seo-accordion details[open] summary i::after { transform: translate(-50%, -50%) rotate(0); }
.seo-accordion__answer { max-width: 940px; padding: 0 56px 30px 4px; }
.seo-accordion__answer p { margin: 0 0 18px; color: #b9c0d3; font-size: 15px; line-height: 1.78; }
.seo-accordion__answer p:last-child { margin-bottom: 0; }
.seo-accordion__answer a { color: #eeeaff; text-decoration-color: #8f7cff; text-underline-offset: 3px; }

.game-fallback { min-height: 100vh; display: grid; place-content: center; justify-items: start; gap: 18px; width: min(700px, calc(100% - 36px)); margin: 0 auto; }
.game-fallback a { color: #b8c0da; }
.game-fallback__title { margin: 0; font-size: clamp(42px, 8vw, 82px); line-height: .95; }
.game-fallback p { max-width: 650px; margin: 0; color: #b8c0da; line-height: 1.65; }
.game-fallback button { padding: 15px 20px; border: 0; border-radius: 12px; background: #fff; color: #080b13; font-weight: 900; cursor: pointer; }
.game-page .game-fallback { visibility: hidden; }
.game-page.is-leaving-player .game-fallback { visibility: hidden; }

.igp-help {
  position: absolute; z-index: 5; top: calc(max(12px, env(safe-area-inset-top)) + var(--igp-control-size) + 12px); right: max(12px, env(safe-area-inset-right));
  display: grid; place-items: center; width: 58px; height: 58px; padding: 0; border: 1px solid var(--igp-control-border); border-radius: 50%; color: #fff;
  background: var(--igp-control-background); box-shadow: 0 20px 46px #000c, 0 0 0 1px var(--igp-control-outline), 0 0 24px var(--igp-control-glow), inset 0 1px 0 #ffffff52;
  font-size: 27px; font-weight: 900; cursor: pointer; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); transition: filter .2s ease, box-shadow .2s ease;
}
.igp-help:hover { filter: brightness(1.06); box-shadow: 0 24px 52px #000d, 0 0 30px var(--igp-control-glow), 0 0 0 1px var(--igp-control-border), inset 0 1px 0 #ffffff5c; }
.game-info { position: absolute; z-index: 10; inset: clamp(12px, 2.5vw, 32px); width: min(1120px, calc(100% - clamp(24px, 5vw, 64px))); max-height: calc(100% - clamp(24px, 5vw, 64px)); margin: auto; overflow: auto; padding: clamp(24px, 4vw, 58px); border: 1px solid #ffffff24; border-radius: clamp(20px, 3vw, 34px); color: #f7f8fc; background: linear-gradient(145deg, #151a29f5, #070910fa 70%); box-shadow: 0 30px 120px #000, inset 0 1px #ffffff1f; backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); overscroll-behavior: contain; }
.game-info[hidden] { display: none; }
.game-info__top { padding: 0 78px 30px 0; border-bottom: 1px solid #ffffff1c; }
.game-info__top span { color: var(--catalog-accent); font-size: 11px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.game-info h1 { max-width: 850px; margin: 12px 0 18px; font-size: clamp(36px, 6vw, 72px); line-height: .96; letter-spacing: -.05em; }
.game-info__top p { max-width: 820px; margin: 0; color: #c0c6d8; font-size: clamp(16px, 2vw, 20px); line-height: 1.6; }
.game-info__close { position: sticky; z-index: 4; top: 0; display: grid; place-items: center; width: 54px; height: 54px; margin: 0 0 -54px auto; padding: 0 0 5px; border: 1px solid #ffffff40; border-radius: 50%; color: #fff; background: #151a29ed; box-shadow: 0 12px 34px #000a, inset 0 1px #ffffff24; font-size: 35px; line-height: 1; cursor: pointer; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.game-info__close:hover { border-color: var(--catalog-accent); }
.game-categories { margin: 24px 0 28px; padding: 18px; border: 1px solid #ffffff18; border-radius: 18px; background: #ffffff08; }
.game-categories strong { display: block; margin-bottom: 12px; color: #f7f8fc; font-size: 15px; }
.game-categories div { display: flex; flex-wrap: wrap; gap: 10px; }
.game-categories a { padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--catalog-accent) 55%, transparent); border-radius: 999px; background: color-mix(in srgb, var(--catalog-accent) 16%, #111622); color: #fff; font-size: 14px; font-weight: 800; text-decoration: none; }
.game-categories a:hover, .game-categories a:focus-visible { background: color-mix(in srgb, var(--catalog-accent) 28%, #111622); border-color: var(--catalog-accent); }
.game-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 28px 0; }
.game-facts div { min-height: 90px; display: flex; flex-direction: column; justify-content: space-between; padding: 16px; border: 1px solid #ffffff18; border-radius: 15px; background: #ffffff08; }
.game-facts dt { color: #d9ddec; font-size: 13px; line-height: 1.35; }
.game-facts dd { margin: 12px 0 0; color: var(--catalog-accent); font-size: 18px; }
.game-info__sections { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.game-info__sections section { padding: clamp(20px, 3vw, 32px); border: 1px solid #ffffff14; border-radius: 20px; background: #0c101bd9; }
.game-info h2 { margin: 0 0 14px; font-size: clamp(22px, 3vw, 33px); line-height: 1.05; letter-spacing: -.025em; }
.game-info__sections p { margin: 0; color: #bac1d4; font-size: 15px; line-height: 1.72; }
.related-games { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 28px; padding-top: 26px; border-top: 1px solid #ffffff1c; }
.related-games strong { width: 100%; margin-bottom: 5px; }
.related-games a { padding: 10px 13px; border: 1px solid #ffffff20; border-radius: 999px; color: #e8ebf5; text-decoration: none; }
.related-games a:hover { border-color: var(--catalog-accent); }

.catalog-footer { position: relative; overflow: hidden; border-top: 1px solid #ffffff14; background: #070911; }
.catalog-footer::before { position: absolute; inset: 0; background: radial-gradient(circle at 16% 0, #7258ff1d, transparent 32rem), radial-gradient(circle at 88% 110%, #a25cff12, transparent 28rem); content: ''; pointer-events: none; }
.catalog-footer__inner { position: relative; display: grid; grid-template-columns: minmax(260px, 1.25fr) minmax(150px, .7fr) minmax(150px, .7fr) auto; gap: clamp(28px, 5vw, 72px); width: min(1180px, calc(100% - 36px)); margin: 0 auto; padding: clamp(48px, 7vw, 82px) 0 24px; }
.catalog-footer__brand > a { display: flex; align-items: center; gap: 12px; width: max-content; color: #fff; text-decoration: none; }
.catalog-footer__brand > a strong { font-size: 18px; letter-spacing: -.025em; }
.catalog-footer__brand p { max-width: 390px; margin: 22px 0 0; color: #8f96aa; font-size: 14px; line-height: 1.65; }
.catalog-footer__nav { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.catalog-footer__nav strong { margin-bottom: 7px; color: #f4f5fb; font-size: 12px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.catalog-footer__nav a { color: #969db0; font-size: 13px; font-weight: 700; line-height: 1.35; text-decoration: none; transition: color .18s ease, transform .18s ease; }
.catalog-footer__nav a:hover { color: #fff; transform: translateX(3px); }
.catalog-footer__age { display: grid; place-items: center; align-self: start; width: 58px; height: 58px; border: 2px solid #ffffff70; border-radius: 50%; color: #fff; background: #ffffff08; box-shadow: inset 0 1px #ffffff24; font-size: 15px; font-weight: 950; text-decoration: none; }
.catalog-footer__age:hover { border-color: #a99cff; background: #8f7cff18; }
.catalog-footer__bottom { grid-column: 1 / -1; display: flex; align-items: center; gap: 24px; margin-top: 10px; padding-top: 22px; border-top: 1px solid #ffffff10; color: #666e82; font-size: 11px; font-weight: 750; letter-spacing: .04em; }
.catalog-footer__bottom a { margin-left: auto; color: #7f879b; text-decoration: none; }
.catalog-footer__bottom a + a { margin-left: 0; }
.catalog-footer__bottom a:hover { color: #fff; }

/* Casino catalog theme: intentionally scoped away from fullscreen game pages. */
.catalog-page {
  --casino-violet: #8b5cff;
  --casino-pink: #ff4fa3;
  --casino-gold: #ffc85a;
  --casino-cyan: #32dbff;
  background:
    radial-gradient(circle at 8% 4%, #7c3cff52 0, transparent 27rem),
    radial-gradient(circle at 93% 19%, #ff3f9d32 0, transparent 29rem),
    radial-gradient(circle at 42% 76%, #126de626 0, transparent 32rem),
    linear-gradient(155deg, #09041a 0, #050817 48%, #080311 100%);
  background-attachment: fixed;
}
.catalog-page .casino-topbar {
  top: 10px; height: 70px; padding: 0 16px; border: 1px solid #c7b5ff35; border-radius: 18px;
  background: linear-gradient(115deg, #17112be8, #0a1024e8 62%, #26102ae8);
  box-shadow: 0 18px 55px #02030dcc, 0 0 40px #7c3cff22, inset 0 1px #ffffff18;
}
.catalog-page .casino-brand__mark { background: transparent; box-shadow: none; }
.catalog-page .casino-brand strong { letter-spacing: .025em; text-shadow: 0 0 22px #be92ff80; }
.catalog-page .casino-topbar nav a { color: #cbc5e2; }
.catalog-page .casino-topbar nav a:hover { color: #fff; text-shadow: 0 0 16px #d5b8ff; }
.catalog-page .casino-topbar__count {
  border-color: #ff7b8d99; color: #fff; background: linear-gradient(135deg, #861126, #ff304c);
  box-shadow: 0 8px 24px #ff304c47, inset 0 1px #ffd6dc73;
}
.catalog-page .catalog-shell { padding-top: clamp(38px, 6vw, 72px); }
.catalog-page .catalog-section-head > div > span,
.catalog-page .category-catalog__head > span,
.catalog-page .seo-accordion__head > span { color: var(--casino-gold); text-shadow: 0 0 18px #ffb63d55; }
.catalog-page .catalog-section-head h1,
.catalog-page .category-catalog__head h1 {
  color: #fff; background: linear-gradient(100deg, #fff 8%, #efe7ff 48%, #ffbfdf 100%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 9px 28px #812cff28);
}
.catalog-page .catalog-section-head > b {
  border-color: #aa8cff62; color: #f4edff; background: linear-gradient(135deg, #4f2d9a99, #271b64cc);
  box-shadow: 0 8px 30px #722eff33, inset 0 1px #ffffff24;
}
.catalog-page .catalog-intro { color: #d7d1e7; }
.catalog-page .game-row {
  --row-accent: #8b5cff;
  position: relative; padding: 0;
}
.catalog-page .game-row::before { display: none; }
.catalog-page .game-row > * { position: relative; z-index: 1; }
.catalog-page .game-slider { margin: -10px -12px -8px; padding: 10px 12px 18px; scroll-padding-inline: 12px; }
.catalog-page .game-row[data-category-id="popular"] { --row-accent: #ffc857; }
.catalog-page .game-row[data-category-id="new"] { --row-accent: #ff4fa3; }
.catalog-page .game-row[data-category-id="slots"] { --row-accent: #9b63ff; }
.catalog-page .game-row[data-category-id="fast"] { --row-accent: #26d8ff; }
.catalog-page .game-row[data-category-id="all"] { --row-accent: #62f2b0; }
.catalog-page .game-row__head h2::before { color: var(--row-accent); text-shadow: 0 0 18px var(--row-accent); }
.catalog-page .game-row__head h2 a { text-shadow: 0 5px 18px #000a; }
.catalog-page .game-row__head h2 a span { color: color-mix(in srgb, var(--row-accent) 72%, #fff); }
.catalog-page .game-row__controls button {
  border-color: color-mix(in srgb, var(--row-accent) 45%, transparent); background: #0b0d1ccc;
  box-shadow: inset 0 1px #ffffff10, 0 8px 22px #0006;
}
.catalog-page .game-row__controls button:hover { border-color: var(--row-accent); background: color-mix(in srgb, var(--row-accent) 58%, #171325); box-shadow: 0 0 24px color-mix(in srgb, var(--row-accent) 44%, transparent); }
.catalog-page .game-card__media {
  border-color: color-mix(in srgb, var(--card-accent) 48%, #ffffff20);
  box-shadow: 0 16px 34px #0008, 0 0 0 1px #ffffff08, 0 0 22px color-mix(in srgb, var(--card-accent) 18%, transparent);
}
.catalog-page .game-card:hover .game-card__media { border-color: color-mix(in srgb, var(--card-accent) 76%, #fff); box-shadow: 0 22px 45px #000b, 0 0 30px color-mix(in srgb, var(--card-accent) 32%, transparent); }
.catalog-page .game-card__status { color: #d5d2df; }
.catalog-page .game-card__status i { background: #48ef9d; box-shadow: 0 0 12px #2dffa5b8; }
.catalog-page .category-catalog { --section-accent: #9b63ff; }
.catalog-page .category-catalog[data-category-id="popular"] { --section-accent: #ffc857; }
.catalog-page .category-catalog[data-category-id="new"] { --section-accent: #ff4fa3; }
.catalog-page .category-catalog[data-category-id="slots"] { --section-accent: #9b63ff; }
.catalog-page .category-catalog[data-category-id="fast"] { --section-accent: #26d8ff; }
.catalog-page .category-catalog[data-category-id="all"] { --section-accent: #62f2b0; }
.catalog-page .category-catalog__back {
  padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--section-accent) 42%, transparent); border-radius: 999px;
  color: #f2efff; background: #0d1020bd; box-shadow: 0 8px 26px #0007;
}
.catalog-page .category-catalog__back:hover { border-color: var(--section-accent); box-shadow: 0 0 24px color-mix(in srgb, var(--section-accent) 34%, transparent); }
.catalog-page .category-catalog__head {
  position: relative; max-width: none; overflow: hidden; padding: clamp(24px, 5vw, 54px); border: 1px solid color-mix(in srgb, var(--section-accent) 42%, transparent);
  border-radius: 28px; background: linear-gradient(135deg, color-mix(in srgb, var(--section-accent) 18%, #111329e8), #080b18e8 66%, #1c0b1ee8);
  box-shadow: 0 28px 80px #0009, 0 0 44px color-mix(in srgb, var(--section-accent) 14%, transparent), inset 0 1px #ffffff18;
}
.catalog-page .category-catalog__head::after {
  position: absolute; width: 330px; height: 330px; right: -120px; top: -180px; border-radius: 50%;
  background: color-mix(in srgb, var(--section-accent) 27%, transparent); filter: blur(20px); content: ''; pointer-events: none;
}
.catalog-page .category-catalog__head > * { position: relative; z-index: 1; }
.catalog-page .category-catalog__head > span { color: var(--section-accent); }
.catalog-page .category-catalog__head p { color: #d4cfe2; }
.catalog-page .category-grid { padding: 22px; border: 1px solid #a98dff26; border-radius: 24px; background: #090d1abb; box-shadow: 0 24px 70px #0007, inset 0 1px #ffffff0b; }
.catalog-page .seo-accordion {
  border-color: #b18fff38; background: linear-gradient(145deg, #17112be8, #090d1be8 68%, #190b1de8);
  box-shadow: 0 30px 90px #0009, 0 0 44px #7c3cff16, inset 0 1px #ffffff14;
}
.catalog-page .seo-accordion summary i { border-color: #b99dff3d; background: linear-gradient(145deg, #2a1b57, #15152d); }
.catalog-page .seo-accordion details[open] summary i { border-color: #ff5caf9c; background: linear-gradient(145deg, #7b2458, #3c1b67); box-shadow: 0 0 20px #ff4fa33d; }
.catalog-page .catalog-footer { border-top-color: #a37bff35; background: linear-gradient(145deg, #0a0716, #070a16 62%, #130714); }
.catalog-page .catalog-footer::before { background: radial-gradient(circle at 16% 0, #7c3cff38, transparent 32rem), radial-gradient(circle at 88% 110%, #ff3f9d28, transparent 28rem); }

@media (max-width: 700px) {
  .casino-topbar { width: calc(100% - 24px); height: 60px; }
  .casino-topbar nav { display: none; }
  .casino-topbar__count { padding: 8px 10px; font-size: 11px; }
  .catalog-shell { width: calc(100% - 24px); padding-top: 26px; }
  .catalog-section-head { align-items: start; }
  .catalog-section-head > b { margin-top: 3px; }
  .catalog-intro { margin-bottom: 28px; }
  .game-rows { gap: 36px; }
  .game-row__head { margin-bottom: 12px; }
  .game-row__controls button { width: 38px; height: 38px; border-radius: 11px; }
  .game-slider { grid-auto-columns: clamp(142px, 38vw, 180px); margin: -10px -18px -8px; padding: 10px 18px 18px; }
  .game-card__media .game-card__logo { width: 72%; }
  .category-catalog__back { margin-bottom: 24px; }
  .category-catalog__head { margin-bottom: 32px; }
  .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 10px; }
  .game-info__sections { grid-template-columns: 1fr; }
  .game-facts { grid-template-columns: repeat(2, 1fr); }
  .igp-help { width: 50px; height: 50px; font-size: 23px; }
  .game-info { inset: 8px; width: calc(100% - 16px); max-height: calc(100% - 16px); padding: 20px; border-radius: 20px; }
  .game-info__top { padding-right: 58px; }
  .game-info__close { width: 46px; height: 46px; margin-bottom: -46px; }
  .seo-accordion { margin-top: 64px; padding: 22px 18px; }
  .seo-accordion summary { min-height: 70px; gap: 14px; padding: 17px 0; font-size: 18px; }
  .seo-accordion summary i { width: 34px; height: 34px; }
  .seo-accordion__answer { padding: 0 0 24px; }
  .catalog-footer__inner { grid-template-columns: 1fr 1fr; gap: 34px 20px; width: calc(100% - 28px); padding: 46px 0 20px; }
  .catalog-footer__brand { grid-column: 1 / -1; }
  .catalog-footer__brand p { max-width: 100%; margin-top: 17px; }
  .catalog-footer__age { grid-column: 1 / -1; width: 52px; height: 52px; }
  .catalog-footer__bottom { flex-wrap: wrap; gap: 10px 18px; margin-top: 0; }
  .catalog-footer__bottom span { width: 100%; }
  .catalog-footer__bottom a { margin-left: 0; }
}

@media (max-width: 400px) {
  .casino-brand strong { font-size: 13px; }
  .catalog-section-head { gap: 12px; }
  .catalog-section-head > b { padding: 8px 10px; font-size: 11px; }
  .igp-help { top: calc(max(12px, env(safe-area-inset-top)) + 88px); }
  .game-facts { grid-template-columns: 1fr 1fr; }
  .game-facts div { min-height: 78px; padding: 12px; }
  .catalog-footer__inner { grid-template-columns: 1fr; }
  .catalog-footer__brand, .catalog-footer__age, .catalog-footer__bottom { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

