
:root {
  --bg: #120b08;
  --bg-deep: #0b0807;
  --panel: #1b100c;
  --panel-soft: #21140f;
  --line: rgba(241, 197, 126, 0.15);
  --text: #fff6e9;
  --muted: #c5ab8e;
  --amber: #f1a629;
  --amber-light: #ffc85b;
  --foam: #fff4d7;
  --green: #8dcf62;
  --shadow: rgba(5, 3, 2, 0.5);
}

* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 16% 7%, rgba(180, 81, 22, 0.22), transparent 28rem),
    radial-gradient(circle at 86% 14%, rgba(236, 154, 33, 0.15), transparent 27rem),
    linear-gradient(145deg, #0f0907 0%, #1d100b 42%, #100b08 100%);
  font-family: Arial, sans-serif;
  min-width: 0;
  overflow-x: hidden;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.22;
  background:
    linear-gradient(115deg, transparent 0 49.7%, rgba(255,255,255,.025) 50%, transparent 50.3%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.016) 0 1px, transparent 1px 72px);
  mask-image: linear-gradient(to bottom, #000, transparent 92%);
}

a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
.container { width: min(1160px, calc(100% - 48px)); margin: 0 auto; position: relative; z-index: 1; }
.grain { position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .07; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E"); }
.orb { position: fixed; width: 480px; height: 480px; border-radius: 50%; filter: blur(90px); opacity: .13; z-index: -2; pointer-events: none; }
.orb-one { background: #ed8c24; left: -280px; top: 35%; }
.orb-two { background: #5a2811; right: -280px; top: 54%; }

.site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid rgba(255, 220, 159, .1); background: rgba(18, 11, 8, .78); backdrop-filter: blur(18px); }
.header-inner { min-height: 78px; display: flex; align-items: center; gap: 42px; }
.brand { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.brand-mark { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(145deg, #ffd768, #c86f14); box-shadow: 0 7px 22px rgba(213, 132, 21, .34); overflow: hidden; transform: rotate(-5deg); }
.brand-mark img { width: 36px; height: 36px; object-fit: cover; mix-blend-mode: multiply; }
.brand-copy { display: grid; line-height: .9; letter-spacing: .08em; }
.brand-copy strong { font: 700 18px/1 Arial, sans-serif; }
.brand-copy span { color: var(--amber-light); font-size: 9px; letter-spacing: .23em; margin-top: 5px; }
.main-nav { display: flex; align-items: center; gap: 28px; flex: 1; }
.nav-link { color: #ad9276; font-size: 14px; transition: color .2s ease; }
.nav-link:hover, .nav-link.active { color: var(--text); }
.nav-link.active::after { content: ""; display: inline-block; width: 4px; height: 4px; margin: 0 0 2px 8px; border-radius: 50%; background: var(--amber-light); }
.header-actions { display: flex; align-items: center; gap: 10px; }
.button { border: 1px solid transparent; border-radius: 9px; padding: 12px 19px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-weight: 700; font-size: 13px; letter-spacing: .01em; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; cursor: pointer; }
.button:hover { transform: translateY(-2px); }
.button-small { padding: 10px 15px; }
.button-large { padding: 15px 21px; }
.button-primary { color: #2a1305; background: linear-gradient(135deg, #ffd465, #e7931e); box-shadow: 0 10px 25px rgba(219, 139, 24, .19); }
.button-primary:hover { box-shadow: 0 13px 30px rgba(219, 139, 24, .31); }
.button-ghost { border-color: rgba(255, 218, 149, .25); color: var(--foam); background: rgba(255,255,255,.03); }
.button-dark { background: #28160f; border-color: rgba(255, 218, 149, .13); color: var(--foam); }

.hero { min-height: 575px; display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; padding-top: 46px; padding-bottom: 48px; }
.eyebrow { color: var(--amber-light); font: 700 11px/1 Arial, sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.hero-copy { padding: 25px 0 20px; }
.hero-copy h1 { max-width: 590px; margin: 22px 0 18px; font: 700 clamp(52px, 7vw, 94px)/.88 Arial, sans-serif; letter-spacing: -.07em; }
.hero-copy h1 em { color: var(--amber-light); font-style: normal; }
.hero-text { max-width: 470px; color: var(--muted); font-size: 16px; line-height: 1.65; margin: 0 0 30px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-proof { display: flex; align-items: center; gap: 10px; margin-top: 34px; color: #bca289; font-size: 12px; }
.hero-proof strong { color: var(--foam); }
.proof-separator { color: #6e4b2d; margin: 0 4px; }
.avatars { display: flex; margin-right: 5px; }
.avatars span { display: grid; place-items: center; width: 28px; height: 28px; margin-right: -6px; border: 2px solid var(--bg); border-radius: 50%; background: #2b160b; font-size: 13px; }

.hero-art { min-height: 500px; position: relative; display: grid; place-items: center; }
.hero-art > img { position: relative; width: min(340px, 61%); max-height: 425px; object-fit: contain; filter: drop-shadow(0 30px 20px rgba(0,0,0,.55)); z-index: 4; animation: float 5s ease-in-out infinite; }
.hero-art::before { content: ""; position: absolute; width: 300px; height: 300px; border-radius: 50%; background: #f4a629; opacity: .35; filter: blur(55px); }
.ring { position: absolute; border: 1px solid rgba(255, 198, 93, .23); border-radius: 50%; }
.ring-outer { width: 480px; height: 480px; border-style: dashed; opacity: .65; transform: rotate(18deg); }
.ring-inner { width: 370px; height: 370px; border-color: rgba(255, 198, 93, .12); }
.foam { position: absolute; width: 82px; height: 28px; border-radius: 50%; background: rgba(255, 243, 207, .55); filter: blur(6px); z-index: 3; }
.foam-a { top: 24%; left: 16%; transform: rotate(-15deg); }
.foam-b { bottom: 22%; right: 14%; transform: rotate(18deg) scale(.68); }
.hero-sticker { position: absolute; z-index: 7; display: grid; gap: 2px; width: 104px; padding: 13px 13px 11px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(54, 28, 13, .8); box-shadow: 0 15px 35px rgba(0,0,0,.28); transform: rotate(-8deg); }
.hero-sticker span { color: var(--amber-light); font: 700 18px/1 Arial, sans-serif; }
.hero-sticker small { color: #efd8b4; font-size: 9px; }
.sticker-top { top: 17%; right: 8%; }
.sticker-bottom { bottom: 14%; left: 11%; transform: rotate(7deg); }
.spark { position: absolute; color: var(--amber-light); font-size: 22px; opacity: .8; z-index: 5; }
.spark-a { top: 15%; left: 27%; }
.spark-b { top: 30%; right: 16%; font-size: 15px; }
.spark-c { bottom: 19%; right: 27%; }
@keyframes float { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-12px) rotate(2deg); } }

.trust-strip { border-block: 1px solid rgba(255, 224, 168, .1); background: rgba(45, 24, 12, .48); }
.trust-inner { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.trust-item { color: #c9aa83; font-size: 12px; }
.trust-item i { display: inline-grid; place-items: center; width: 18px; height: 18px; margin-right: 6px; border-radius: 50%; color: #261505; background: var(--amber); font-style: normal; font-weight: 700; }

.games-section { padding-top: 92px; padding-bottom: 90px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; }
.section-heading h2 { margin: 15px 0 9px; font: 700 clamp(34px, 5vw, 58px)/.95 Arial, sans-serif; letter-spacing: -.06em; }
.section-heading h2 span { color: var(--amber-light); }
.section-lead { margin: 0; color: var(--muted); font-size: 14px; }
.game-count { display: flex; align-items: center; gap: 11px; padding-bottom: 9px; color: #c2a484; }
.game-count strong { color: var(--amber-light); font: 700 52px/1 Arial, sans-serif; letter-spacing: -.08em; }
.game-count span { color: #a68b6d; font-size: 11px; line-height: 1.25; }
.toolbar { display: flex; align-items: center; gap: 20px; justify-content: space-between; margin: 38px 0 28px; }
.category-list { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.category { display: inline-flex; align-items: center; gap: 9px; min-height: 46px; padding: 0 15px; border: 1px solid rgba(255, 218, 149, .13); border-radius: 10px; color: #af9677; background: rgba(255,255,255,.025); font-size: 12px; font-weight: 600; cursor: pointer; transition: .2s ease; }
.category span { display: inline-grid; place-items: center; min-width: 22px; height: 22px; border-radius: 7px; color: #281504; background: #283d21; font-size: 10px; }
.category:hover, .category.active { color: var(--foam); border-color: rgba(240, 170, 45, .67); background: rgba(181, 105, 24, .12); }
.category.active span { background: var(--amber); }
.search-box { width: 260px; height: 46px; display: flex; align-items: center; gap: 9px; padding: 0 14px; border: 1px solid rgba(255, 218, 149, .13); border-radius: 10px; background: rgba(255,255,255,.025); color: #ac906d; }
.search-box span { font-size: 24px; line-height: 0; transform: rotate(-20deg); }
.search-box input { width: 100%; outline: 0; border: 0; color: var(--foam); background: transparent; font-size: 12px; }
.search-box input::placeholder { color: #8f765b; }
.results-note { min-height: 20px; color: var(--amber-light); font-size: 12px; margin-bottom: 12px; }

.slot-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.slot-card { position: relative; overflow: hidden; min-width: 0; border: 1px solid rgba(255, 218, 149, .13); border-radius: 15px; background: linear-gradient(145deg, rgba(55, 29, 14, .85), rgba(23, 15, 11, .97)); box-shadow: 0 15px 28px rgba(0,0,0,.13); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.slot-card::after { content: ""; position: absolute; inset: auto 0 0; height: 45%; pointer-events: none; background: linear-gradient(to top, rgba(13, 8, 5, .85), transparent); }
.slot-card:hover { transform: translateY(-7px); border-color: rgba(250, 185, 65, .62); box-shadow: 0 22px 38px rgba(0,0,0,.35), 0 0 0 1px rgba(250, 185, 65, .08); }
.slot-link { display: block; }
.slot-image-wrap { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: #17100e; }
.slot-image-wrap img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .3s ease; }
.slot-card:hover .slot-image-wrap img { transform: scale(1.04); }
.slot-badge { position: absolute; z-index: 2; top: 10px; left: 10px; padding: 5px 7px; border-radius: 5px; color: #2a1707; background: var(--amber-light); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.slot-badge.event { color: #fff; background: #5586e9; }
.slot-badge.hot { background: #ffbf34; }
.slot-beer { position: absolute; z-index: 2; right: 9px; bottom: 9px; display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: rgba(41, 22, 10, .76); font-size: 14px; opacity: 0; transform: translateY(6px); transition: .2s ease; }
.slot-card:hover .slot-beer { opacity: 1; transform: translateY(0); }
.slot-info { position: relative; z-index: 3; min-height: 64px; padding: 13px 13px 14px; }
.slot-title { margin: 0 0 5px; color: var(--foam); font: 600 13px/1.18 Arial, sans-serif; }
.slot-provider { color: #9b8065; font-size: 10px; }
.slot-number { position: absolute; right: 13px; bottom: 14px; color: #80634c; font-size: 9px; }

.feature-section { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 16px; padding-bottom: 72px; }
.feature-card { position: relative; min-height: 230px; overflow: hidden; padding: 27px; border: 1px solid var(--line); border-radius: 16px; background: rgba(38, 21, 12, .72); }
.feature-card-main { display: flex; align-items: flex-start; gap: 18px; background: linear-gradient(135deg, #41200e, #23140d); }
.feature-icon { display: grid; flex: 0 0 auto; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: #ed9c27; font-size: 23px; }
.feature-card h2 { margin: 18px 0 10px; font: 700 31px/.98 Arial, sans-serif; letter-spacing: -.05em; }
.feature-card h2 span { color: var(--amber-light); }
.feature-card h3 { max-width: 220px; margin: 17px 0 10px; font: 600 20px/1.05 Arial, sans-serif; letter-spacing: -.04em; }
.feature-card p { max-width: 340px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.round-arrow { position: absolute; right: 25px; bottom: 25px; display: grid; place-items: center; width: 37px; height: 37px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(0,0,0,.15); transition: .2s ease; }
.round-arrow:hover { color: #2a1305; background: var(--amber); }
.mini-label { color: var(--amber-light); font: 700 11px Arial, sans-serif; }
.feature-beer { position: absolute; right: 19px; bottom: 7px; color: rgba(241, 166, 41, .34); font-size: 84px; transform: rotate(-12deg); }
.bubbles { color: rgba(255, 220, 142, .22); font-size: 39px; letter-spacing: .2em; transform: rotate(12deg); }

.responsible { display: flex; align-items: center; gap: 17px; margin-bottom: 70px; padding: 17px 21px; border: 1px solid rgba(255, 218, 149, .13); border-radius: 12px; background: rgba(255, 255, 255, .025); }
.responsible-icon { display: grid; place-items: center; width: 49px; height: 49px; flex: 0 0 auto; border-radius: 50%; color: #2b1605; background: var(--amber); font: 700 15px Arial, sans-serif; }
.responsible strong { font: 600 15px Arial, sans-serif; }
.responsible p { margin: 5px 0 0; color: var(--muted); font-size: 11px; }
.text-link { margin-left: auto; color: var(--amber-light); font-size: 12px; white-space: nowrap; }
.text-link:hover { text-decoration: underline; }

.site-footer { border-top: 1px solid rgba(255, 224, 168, .1); background: rgba(7, 5, 4, .35); }
.footer-main { min-height: 110px; display: flex; align-items: center; gap: 25px; }
.footer-main > p { margin: 0; color: #93775c; font-size: 12px; flex: 1; }
.footer-links { display: flex; gap: 20px; color: #c2a181; font-size: 12px; }
.footer-links a:hover { color: var(--amber-light); }
.footer-bottom { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255, 224, 168, .08); color: #765d48; font-size: 10px; }

/* The catalogue is static HTML; JavaScript progressively enhances its controls. */
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: -100px; left: 12px; z-index: 100; padding: 14px; color: #201005; background: #ffd465; }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid #ffd465; outline-offset: 5px; }
section[id] { scroll-margin-top: 100px; }
.container { width: min(1320px, calc(100% - 64px)); }
.brand-mark { width: 48px; height: 52px; border: 0; border-radius: 0; box-shadow: none; background: none; overflow: visible; }
.brand-mark img { width: 42px; height: 52px; object-fit: contain; mix-blend-mode: normal; }
.brand-copy strong { font-size: 23px; font-weight: 900; letter-spacing: -.045em; }
.brand-copy span { font-size: 10px; }
.header-inner { gap: 50px; }
.main-nav { justify-content: center; }
.hero { min-height: 590px; grid-template-columns: 1.04fr .96fr; padding-top: 34px; padding-bottom: 40px; }
.hero-copy h1 { font-size: clamp(48px,5.4vw,78px); line-height: .99; letter-spacing: -.055em; margin: 23px 0; }
.hero-text { max-width: 460px; font-size: 15px; }
.hero-proof { margin-top: 26px; }
.hero-art { isolation: isolate; }
.hero-art > img { width: min(350px,65%); height: auto; max-height: 450px; object-fit: contain; transform: rotate(9deg); }
.hero-lettering { position: absolute; top: 26%; left: -4%; font-weight: 900; font-size: clamp(100px,14vw,210px); letter-spacing: -.08em; color: transparent; -webkit-text-stroke: 1px #8b4d20; opacity: .38; transform: rotate(-12deg); user-select: none; }
.hero-art::after { content: ""; position: absolute; inset: -30px; z-index: -1; background: radial-gradient(circle at 16% 23%,#d28a24 0 4px, transparent 5px), radial-gradient(circle at 88% 63%,#e8b75f 0 6px,transparent 7px),radial-gradient(circle at 64% 9%,#c58a3a 0 3px,transparent 4px),radial-gradient(circle at 32% 83%,#f4d095 0 2px,transparent 3px); }
.foam { display: none; }
.hero-sticker { backdrop-filter: blur(14px); }
.sticker-top { right: 0; top: 14%; }
.sticker-bottom { bottom: 11%; left: 4%; width: 125px; }
.ring-outer { width: min(490px,95%); height: auto; aspect-ratio: 1; transform: none; }
.ring-inner { width: 78%; height: auto; aspect-ratio: 1; }
.games-section { padding-top: 64px; }
.section-heading h2 { font-size: clamp(32px,3.4vw,46px); letter-spacing: -.045em; }
.section-lead { line-height: 1.5; }
.toolbar { margin-bottom: 18px; }
.category span { color: #c5d8b4; background: #283424; }
.category.active span { color: #291604; }
.catalog-meta { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 24px; color: #bba487; font-size: 11px; }
.results-note { min-height: 0; margin: 0; }
.slot-grid { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 28px 24px; padding-right: 9px; }
.slot-card { overflow: visible; border: none; background: none; box-shadow: none; border-radius: 18px; isolation: isolate; }
.slot-card::after { content: ""; position: absolute; z-index: -1; left: auto; bottom: auto; right: -12px; top: 28%; width: 26px; height: 37%; border: 6px solid #a76d26; border-left-width: 0; border-radius: 0 22px 22px 0; background: transparent; box-shadow: inset 0 0 0 1px #e7b454,0 1px 0 #e7b454; pointer-events: none; }
.slot-card::before { content: ""; position: absolute; left: 0; top: -5px; width: 100%; height: 17px; z-index: 3; pointer-events: none; background: radial-gradient(circle at 7% 94%,#f8eace 0 10px,transparent 11px),radial-gradient(circle at 18% 86%,#f8eace 0 12px,transparent 13px),radial-gradient(circle at 33% 72%,#f8eace 0 11px,transparent 12px),radial-gradient(circle at 49% 88%,#f8eace 0 14px,transparent 15px),radial-gradient(circle at 65% 72%,#f8eace 0 12px,transparent 13px),radial-gradient(circle at 79% 87%,#f8eace 0 13px,transparent 14px),radial-gradient(circle at 93% 94%,#f8eace 0 11px,transparent 12px),linear-gradient(#f8eace,#f8eace) bottom/100% 5px no-repeat; border-radius: 12px 12px 0 0; }
.slot-link { overflow: hidden; border: 1px solid #9e6a29; border-bottom: 5px solid #80551e; border-radius: 15px 15px 18px 18px; background: linear-gradient(150deg,#3d2512,#21150c); box-shadow: 0 12px 22px rgba(0,0,0,.18); }
.slot-card:hover { transform: translateY(-5px); box-shadow: none; }
.slot-card:hover .slot-link { border-color: #f3c36e; }
.slot-image-wrap { aspect-ratio: 3/4; background: #100e11; }
.slot-image-wrap img { object-fit: fill; }
.slot-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-30%); padding: 11px 15px; border-radius: 30px; color: #251205; background: #ffd372; box-shadow: 0 4px 20px #221204; white-space: nowrap; font-size: 12px; font-weight: 700; opacity: 0; transition: opacity .2s, transform .2s; }
.slot-link:hover .slot-play,.slot-link:focus-visible .slot-play { opacity: 1; transform: translate(-50%,-50%); }
.slot-link:hover img { filter: brightness(.7); }
.slot-info { min-height: 82px; padding: 12px 24px 12px 12px; background: repeating-linear-gradient(90deg,rgba(242,174,49,.025) 0 5px,transparent 5px 28px); }
.slot-title { font-size: 11px; line-height: 1.35; font-weight: 700; letter-spacing: .01em; }
.slot-provider { font-size: 9px; color: #c1a785; line-height: 1.4; }
.slot-number { right: 9px; bottom: 15px; font-size: 14px; color: #dfac4c; }
.slot-badge { top: 15px; left: 7px; padding: 5px; font-size: 8px; }
.favorite-button { position: absolute; z-index: 5; top: 14px; right: 7px; width: 34px; height: 34px; display: grid; place-items: center; background: rgba(25,17,10,.82); color: #fff4d6; border: 1px solid #c5a06b77; border-radius: 50%; font-size: 22px; cursor: pointer; transition: color .2s,background .2s; }
.favorite-button:hover,.favorite-button[aria-pressed="true"] { color: #ffcb67; background: #3f2c13; }
.catalog-disclosure { max-width: 900px; color: #b49a7c; font-size: 12px; line-height: 1.7; margin-top: 30px; }
.empty-state { padding: 55px 25px; text-align: center; border: 1px dashed #a9793366; border-radius: 20px; color: #c3a581; }
.empty-state > span { font-size: 40px; color: #edb64f; }
.empty-state h3 { color: #fff4dd; font-size: 23px; }
.empty-state p { line-height: 1.6; }
.feature-card { min-height: 270px; }
.feature-card p { position: relative; z-index: 1; }
.feature-card .text-link { display: inline-block; margin-top: 22px; position: relative; z-index: 2; }
.feature-beer { pointer-events: none; opacity: .35; font-size: 70px; }
.feature-card-main .round-arrow { bottom: 14px; right: 16px; }
.feature-card h2 { font-size: 28px; }
.feature-card-main p { padding-bottom: 25px; }
.feature-card h3 { line-height: 1.2; }
.faq-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 75px; padding-bottom: 80px; }
.faq-section h2 { font-size: 44px; letter-spacing: -.05em; line-height: 1.05; margin: 20px 0; }
.faq-section h2 span { color: #ffc85b; }
.faq-section > div > p { max-width: 260px; color: var(--muted); line-height: 1.7; font-size: 14px; }
.faq-section .text-link { display: inline-block; margin: 14px 0; }
.faq-list details { border-bottom: 1px solid #9a753833; }
.faq-list summary { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 22px 0; cursor: pointer; list-style: none; font-size: 15px; line-height: 1.4; font-weight: 600; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: #ffc85b; font-size: 22px; font-weight: 400; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { margin: 0 0 24px; color: #c5ab8e; font-size: 14px; line-height: 1.8; }
.responsible p { font-size: 12px; line-height: 1.6; max-width: 850px; }
.footer-main { gap: 26px; padding-block: 25px; }
.footer-main > p { font-size: 11px; line-height: 1.7; color: #b99d7c; }
.footer-links { flex-wrap: wrap; max-width: 380px; gap: 15px; }
.footer-bottom { color: #b3997b; }
.guide-main { max-width: 1000px; padding-bottom: 80px; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 12px; color: #bba184; font-size: 12px; margin: 40px 0 60px; }
.breadcrumbs a:hover { color: #ffd465; }
.guide-main h1 { max-width: 900px; font-size: clamp(38px,5.4vw,66px); line-height: 1.05; letter-spacing: -.05em; margin-block: 24px; }
.guide-intro { max-width: 770px; color: var(--muted); font-size: 19px; line-height: 1.7; margin-bottom: 48px; }
.guide-body { max-width: 800px; }
.guide-body section { margin-block: 34px; }
.guide-body h2 { font-size: 25px; letter-spacing: -.035em; line-height: 1.2; }
.guide-body p,.guide-body li { color: #ccb398; font-size: 16px; line-height: 1.85; }
.guide-body li { margin-block: 8px; padding-left: 8px; }
.guide-body li::marker { color: #ffc85b; }
.guide-actions { display: flex; flex-wrap: wrap; gap: 12px; padding-top: 18px; }
.guide-links { margin-top: 65px; padding-top: 28px; border-top: 1px solid #ba894344; display: flex; flex-wrap: wrap; gap: 15px 28px; }
.guide-links h2 { flex: 0 0 100%; font-size: 22px; }
.guide-links a { font-size: 14px; color: #edb64f; }
.guide-links a:hover { text-decoration: underline; }

@media (max-width: 1100px) {
  .slot-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .header-inner { gap: 25px; }
  .main-nav { gap: 18px; }
  .feature-section { grid-template-columns: 1fr 1fr; }
  .feature-card-main { grid-column: 1 / -1; }
  .header-inner { gap: 22px; }
  .main-nav { gap: 18px; }
  .hero-copy h1 { font-size: 60px; }
  .hero-art > img { width: 74%; }
  .slot-grid { gap: 26px 24px; }
  .toolbar { flex-wrap: wrap; }
  .search-box { flex-grow: 1; }
}
@media (max-width: 760px) {
  .container { width: min(100% - 32px, 600px); }
  .site-header { position: static; }
  .header-inner { min-height: 70px; flex-wrap: wrap; padding: 13px 0; }
  .main-nav { order: 3; flex: 0 0 100%; width: 100%; overflow: auto; padding-top: 6px; justify-content: space-between; }
  .header-actions { margin-left: auto; }
  .hero { display: flex; flex-direction: column; align-items: stretch; padding-top: 38px; }
  .hero-copy { text-align: center; }
  .hero-copy h1 { margin-inline: auto; font-size: clamp(51px, 16vw, 78px); }
  .hero-text { margin-inline: auto; }
  .hero-actions, .hero-proof { justify-content: center; }
  .hero-art { min-height: 390px; margin-top: -8px; }
  .hero-art > img { width: 270px; max-height: 350px; }
  .ring-outer { width: 390px; height: 390px; }
  .ring-inner { width: 300px; height: 300px; }
  .sticker-top { right: 2%; }
  .sticker-bottom { left: 2%; }
  .trust-inner { flex-wrap: wrap; padding-block: 17px; justify-content: center; }
  .section-heading { align-items: start; }
  .game-count { display: none; }
  .toolbar { align-items: stretch; flex-direction: column; }
  .search-box { width: 100%; }
  .slot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
  .slot-info { padding: 10px; min-height: 59px; }
  .slot-title { font-size: 11px; }
  .slot-provider, .slot-number { font-size: 9px; }
  .feature-section { grid-template-columns: 1fr; }
  .feature-card-main { grid-column: auto; }
  .responsible { align-items: flex-start; flex-wrap: wrap; }
  .text-link { margin-left: 65px; }
  .footer-main { align-items: flex-start; flex-wrap: wrap; padding-block: 23px; }
  .footer-main > p { flex-basis: 100%; order: 3; }
  .footer-bottom { flex-direction: column; justify-content: center; padding-block: 15px; }
  .hero { padding-top: 26px; }
  .hero-copy h1 { font-size: clamp(48px,10vw,70px); }
  .hero-text { font-size: 14px; }
  .hero-lettering { font-size: 120px; left: 9%; top: 30%; }
  .hero-art { min-height: 350px; margin-top: 8px; overflow: clip; }
  .hero-art > img { width: 235px; height: auto; }
  .ring-outer { width: min(350px,95%); height: auto; }
  .ring-inner { width: 270px; height: auto; }
  .hero-sticker { width: 90px; }
  .sticker-bottom { width: 112px; }
  .trust-inner { gap: 18px; }
  .trust-item { font-size: 11px; }
  .games-section { padding-top: 52px; padding-bottom: 50px; }
  .slot-grid { gap: 24px 23px; padding-right: 11px; }
  .slot-info { min-height: 86px; padding-right: 18px; }
  .slot-card::after { right: -11px; border-width: 5px; }
  .feature-section { padding-bottom: 55px; }
  .feature-card { min-height: 220px; }
  .feature-card-main { min-height: 280px; }
  .faq-section { grid-template-columns: 1fr; gap: 20px; padding-bottom: 50px; }
  .faq-section h2 { font-size: 35px; }
  .faq-section > div > p { max-width: none; }
  .catalog-meta { flex-direction: column; gap: 8px; }
  .catalog-disclosure { font-size: 11px; }
  .responsible .text-link { margin-left: 0; }
  .footer-links { max-width: none; }
  .guide-main h1 { font-size: 42px; }
  .guide-intro { font-size: 16px; }
  .breadcrumbs { margin: 28px 0 40px; }
}
@media (max-width: 520px) {
  .header-inner { gap: 12px; }
  .header-actions { gap: 7px; }
  .header-actions .button { font-size: 11px; padding: 10px; }
  .brand { gap: 7px; }
  .brand-mark { width: 32px; height: 40px; }
  .brand-mark img { width: 32px; height: 40px; }
  .brand-copy strong { font-size: 20px; }
  .brand-copy span { font-size: 8px; }
  .nav-link { font-size: 12px; }
  .hero-copy h1 { font-size: 50px; }
  .hero .eyebrow { font-size: 9px; letter-spacing: .12em; }
  .hero-proof { flex-wrap: wrap; }
  .slot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .category { flex: 1 0 calc(50% - 8px); justify-content: center; }
  .trust-item { flex-basis: 44%; }
  .trust-inner { justify-content: space-between; }
  .feature-card-main { padding: 23px; gap: 12px; }
  .feature-icon { width: 35px; height: 35px; font-size: 19px; }
  .feature-card h2 { font-size: 25px; }
  .hero-proof { font-size: 11px; gap: 7px; }
  .section-heading h2 { font-size: 33px; line-height: 1.06; }
  .section-lead { font-size: 13px; }
  .favorite-button { width: 42px; height: 42px; }
  .footer-main { gap: 20px; }
}
@media (max-width: 360px) {
  .container { width: calc(100% - 24px); }
  .header-actions .button { padding: 10px 8px; }
  .hero-copy h1 { font-size: 43px; }
  .hero-actions { flex-direction: column; }
  .hero-art > img { width: 205px; }
  .hero-sticker { transform: rotate(3deg); }
  .slot-info { min-height: 91px; }
  .favorite-button { width: 40px; height: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation: none !important; transition: none !important; }
}
