:root{--graphite:#221f26;--graphite-2:#2c2933;--surface:#342f3b;--violet:#5d4f74;--violet-2:#8577a1;--burgundy:#7c3a44;--burgundy-2:#9a4a54;--milk:#f4f1ec;--milk-2:#e6e2da;--ink:#201e24;--line-dark:rgba(244,241,236,.18);--line-light:rgba(32,30,36,.14);--maxw:1440px;--font-base:system-ui,-apple-system,"Segoe UI",Arial,Helvetica,sans-serif;--font-head:Arial,"Segoe UI",system-ui,sans-serif;}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:var(--font-base);background:var(--milk);color:var(--ink);line-height:1.55;font-size:16px;-webkit-font-smoothing:antialiased;}
img{max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{margin:0;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

*:focus-visible{outline:3px solid var(--violet-2);outline-offset:3px;}

.site-header{position:sticky;top:0;z-index:60;background:var(--graphite);border-bottom:1px solid var(--line-dark);}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:16px;}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--milk);}
.brand img{display:block;}
.brand span{font-family:var(--font-head);font-weight:800;font-size:1.25rem;letter-spacing:.03em;}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:34px;background:none;border:none;cursor:pointer;padding:0;}
.nav-toggle span{display:block;width:100%;height:2px;background:var(--milk);}
.nav-panel{display:flex;align-items:center;gap:30px;}
.main-nav ul{display:flex;gap:22px;list-style:none;padding:0;margin:0;}
.main-nav a{color:var(--milk-2);font-weight:600;font-size:.96rem;transition:color .2s;}
.main-nav a:hover{color:var(--milk);}
.auth-actions{display:flex;align-items:center;gap:12px;}

.btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 22px;border-radius:10px;font-weight:700;font-size:.95rem;font-family:var(--font-base);box-sizing:border-box;cursor:pointer;transition:transform .15s,background .2s,color .2s,border-color .2s;white-space:nowrap;}
.btn:active{transform:translateY(1px);}
.btn-outline{background:transparent;color:var(--milk);border:2px solid var(--milk);}
.btn-outline:hover{background:rgba(244,241,236,.12);}
.btn-solid{background:var(--burgundy);color:var(--milk);border:2px solid var(--burgundy);}
.btn-solid:hover{background:var(--burgundy-2);border-color:var(--burgundy-2);}
.btn-cta{background:var(--violet);color:var(--milk);border:2px solid var(--violet);height:52px;padding:0 30px;font-size:1.02rem;}
.btn-cta:hover{background:var(--violet-2);border-color:var(--violet-2);}

.hero{position:relative;min-height:100vh;background:var(--graphite);color:var(--milk);display:flex;align-items:center;overflow:hidden;padding-top:60px;}
.hero-decor{position:absolute;inset:0;pointer-events:none;}
.decor-square{position:absolute;display:block;border-radius:8px;}
.sq1{width:220px;height:220px;background:var(--violet);opacity:.7;top:12%;right:8%;}
.sq2{width:120px;height:120px;background:var(--burgundy);opacity:.55;bottom:10%;right:20%;}
.decor-line{position:absolute;left:6%;top:18%;width:2px;height:60%;background:var(--line-dark);}
.decor-suit{position:absolute;right:14%;bottom:16%;font-size:clamp(3rem,7vw,6rem);color:var(--burgundy);opacity:.35;font-family:Georgia,serif;}
.decor-seven{position:absolute;left:9%;bottom:8%;font-size:clamp(4rem,10vw,8rem);font-weight:800;color:var(--milk);opacity:.06;font-family:var(--font-head);line-height:1;}
.hero-inner{position:relative;z-index:1;padding:60px 24px 80px;}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:700;color:var(--violet-2);margin:0 0 18px;}
h1{font-family:var(--font-head);font-weight:800;font-size:clamp(2.5rem,5.5vw,4.5rem);line-height:1.06;margin:0 0 22px;letter-spacing:-.01em;max-width:1100px;}
.hero-text{max-width:640px;font-size:clamp(1.02rem,1.3vw,1.18rem);color:var(--milk-2);margin:0 0 34px;}
.hero-cta{display:flex;}

h2{font-family:var(--font-head);font-weight:800;font-size:clamp(1.75rem,3.4vw,2.75rem);line-height:1.14;margin:0 0 14px;}
h3{font-family:var(--font-head);font-weight:700;font-size:clamp(1.15rem,1.6vw,1.4rem);margin:0 0 10px;}
p{margin:0 0 1em;}

.section{padding-block:clamp(56px,7vw,88px);}
.section-catalog,.section-reviews,.section-guide,.section-seo{background:var(--milk);color:var(--ink);}
.section-advantages,.section-faq{background:var(--graphite);color:var(--milk);}
.section-steps{background:var(--graphite-2);color:var(--milk);}
.section-cta{background:var(--burgundy);color:var(--milk);}

.sec-head{display:flex;gap:26px;align-items:flex-start;margin-bottom:34px;}
.sec-index{font-family:var(--font-head);font-weight:800;font-size:clamp(2.6rem,7vw,5.4rem);line-height:1;color:var(--violet);opacity:.4;flex:0 0 auto;}
.section-advantages .sec-index,.section-steps .sec-index,.section-faq .sec-index{color:var(--milk);opacity:.22;}
.sec-head-text{max-width:760px;}
.sec-head-text p{color:inherit;opacity:.88;}
.sec-head-text a{text-decoration:underline;text-decoration-color:var(--violet-2);}

.jackpot{border:1px solid var(--line-light);border-radius:10px;padding:14px 20px;background:var(--graphite);color:var(--milk);min-width:230px;display:flex;flex-direction:column;gap:6px;margin-left:auto;flex:0 0 auto;align-self:flex-start;}
.jackpot-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--milk-2);display:flex;align-items:center;gap:8px;}
.jackpot-dot{width:7px;height:7px;border-radius:50%;background:var(--burgundy-2);display:inline-block;animation:pulse 2.2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:.4;}50%{opacity:1;}}
.jackpot-value{font-family:var(--font-head);font-weight:800;font-size:1.55rem;font-variant-numeric:tabular-nums;letter-spacing:.02em;}

.filters{display:flex;gap:10px;overflow-x:auto;margin-bottom:26px;scrollbar-width:none;-ms-overflow-style:none;}
.filters::-webkit-scrollbar{display:none;}
.filter-btn{flex:0 0 auto;padding:10px 18px;border-radius:10px;border:1px solid var(--line-light);background:#fff;font-weight:600;font-size:.9rem;cursor:pointer;white-space:nowrap;color:var(--ink);}
.filter-btn.is-active{background:var(--graphite);color:var(--milk);border-color:var(--graphite);}

.game-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;align-items:stretch;grid-auto-rows:1fr;}
.game-card{position:relative;background:#fff;border:1px solid var(--line-light);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;height:100%;}
.game-card-link{display:flex;flex-direction:column;height:100%;color:var(--ink);}
.game-cover{aspect-ratio:16/9;overflow:hidden;background:var(--milk-2);}
.game-cover img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.game-badge{position:absolute;top:10px;left:10px;background:var(--burgundy);color:#fff;font-size:.72rem;font-weight:700;padding:5px 11px;border-radius:6px;z-index:2;letter-spacing:.02em;}
.fav-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--line-light);display:inline-flex;align-items:center;justify-content:center;color:var(--milk-2);cursor:pointer;z-index:3;font-size:1.05rem;}
.fav-btn.is-fav,.fav-btn[aria-pressed="true"]{color:var(--burgundy);border-color:var(--burgundy);}
.game-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:10px;flex:1;}
.game-body h3{margin:0;font-size:1.02rem;}
.game-cta{margin-top:auto;align-self:flex-start;font-weight:700;color:var(--violet);border-bottom:2px solid var(--violet);padding-bottom:2px;font-size:.92rem;}

.advantages-grid{display:grid;grid-template-columns:1fr 340px;gap:36px;align-items:start;}
.frame-table{border:1px solid var(--line-dark);border-radius:8px;overflow:hidden;}
.frame-row{display:grid;grid-template-columns:220px 1fr;border-top:1px solid var(--line-dark);}
.frame-row:first-child{border-top:none;}
.frame-row span{padding:16px 18px;font-size:.95rem;}
.frame-row span:first-child{font-weight:700;border-right:1px solid var(--line-dark);}
.frame-head{background:rgba(244,241,236,.06);font-weight:700;}
.frame-head span{padding:14px 18px;}

.illustration{background:#fff;border-radius:18px;padding:22px;display:flex;justify-content:center;align-items:center;}
.illustration img{width:100%;height:auto;max-width:420px;display:block;}

.carousel{display:flex;align-items:center;gap:14px;}
.car-track{display:flex;gap:20px;overflow-x:auto;scroll-behavior:smooth;list-style:none;padding:4px 0;margin:0;flex:1;scrollbar-width:none;-ms-overflow-style:none;}
.car-track::-webkit-scrollbar{display:none;}
.review-card{flex:0 0 calc(25% - 15px);background:#fff;border:1px solid var(--line-light);border-radius:18px;padding:22px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between;}
.review-text{font-size:.96rem;color:var(--ink);opacity:.9;}
.review-author{margin:0;font-weight:700;color:var(--violet);}
.car-btn{width:44px;height:44px;flex:0 0 auto;border-radius:10px;border:1px solid var(--line-light);background:#fff;font-size:1.4rem;cursor:pointer;color:var(--ink);}
.car-dots{display:flex;gap:8px;justify-content:center;margin-top:18px;}
.car-dots button{width:9px;height:9px;padding:0;border-radius:50%;border:none;background:var(--line-light);cursor:pointer;transition:width .2s,border-radius .2s,background .2s;}
.car-dots button.is-active{background:var(--violet);width:24px;border-radius:5px;}

.steps-wrap{display:flex;gap:36px;align-items:center;}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative;flex:1;}
.steps-grid::before{content:'';position:absolute;top:24px;left:6%;right:6%;height:2px;background:var(--line-dark);}
.step-card{position:relative;background:var(--graphite);border:1px solid var(--line-dark);border-radius:18px;padding:24px;}
.step-num{display:inline-flex;width:44px;height:44px;border-radius:50%;background:var(--violet);color:#fff;align-items:center;justify-content:center;font-weight:800;font-family:var(--font-head);position:relative;z-index:1;margin-bottom:14px;}
.step-card p{margin:0;color:var(--milk-2);font-size:.95rem;}
.step-card a{color:var(--milk);text-decoration:underline;}
.illustration-steps{flex:0 0 260px;}
.steps-note{margin-top:30px;padding:16px 20px;border-left:4px solid var(--burgundy-2);background:rgba(244,241,236,.05);border-radius:0 8px 8px 0;font-size:.94rem;color:var(--milk-2);}

.guide-text{max-width:780px;}
.guide-text p{line-height:1.75;}
.guide-text a{text-decoration:underline;text-decoration-color:var(--violet-2);}
.guide-text h3{margin-top:1.6em;}
.guide-text ul{padding-left:1.3em;list-style:square;margin:0 0 1.2em;}
.guide-text ul li{margin-bottom:.5em;}
.section-seo .container{max-width:900px;}

.faq-list{max-width:820px;}
.faq-item{border-bottom:1px solid var(--line-dark);padding:18px 0;}
.faq-item summary{cursor:pointer;font-weight:700;font-size:1.04rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:1.4rem;font-weight:400;transition:transform .2s;flex:0 0 auto;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{margin:12px 0 0;color:var(--milk-2);font-size:.96rem;}

.cta-inner{text-align:center;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:18px;align-items:center;}
.cta-inner p{opacity:.92;margin:0;}

.site-footer{background:var(--graphite);color:var(--milk-2);padding:56px 0 0;}
.footer-inner{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;padding-bottom:40px;border-bottom:1px solid var(--line-dark);}
.footer-brand p{font-size:.9rem;opacity:.85;margin-top:14px;}
.footer-col h3{color:var(--milk);font-size:1rem;margin-bottom:12px;}
.footer-col ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px;}
.footer-col a{color:var(--milk-2);font-size:.92rem;}
.footer-col a:hover{color:var(--milk);}
.footer-bottom{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:22px 0;}
.age-badge{display:inline-flex;padding:6px 14px;border:2px solid var(--milk);border-radius:8px;font-weight:800;font-size:.92rem;flex:0 0 auto;}
.footer-bottom p{margin:0;font-size:.86rem;opacity:.85;max-width:640px;}
.footer-copy{padding:16px 0 26px;font-size:.82rem;opacity:.65;}

.to-top{position:fixed;right:20px;bottom:24px;width:46px;height:46px;border-radius:10px;background:var(--violet);color:#fff;border:none;font-size:1.2rem;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .3s,transform .3s;z-index:70;}
.to-top.is-visible{opacity:1;pointer-events:auto;transform:none;}
.to-top:hover{background:var(--violet-2);}

.cookie-banner{position:fixed;left:16px;bottom:16px;max-width:420px;background:var(--graphite);color:var(--milk);border:1px solid var(--line-dark);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;z-index:80;transform:translateY(140%);opacity:0;transition:transform .4s ease,opacity .4s ease;}
.cookie-banner.is-visible{transform:none;opacity:1;}
.cookie-banner p{margin:0;font-size:.9rem;color:var(--milk-2);}
.cookie-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;}
.cookie-close{background:transparent;border:none;color:var(--milk);font-size:1.4rem;cursor:pointer;width:32px;height:32px;line-height:1;padding:0;}

.animate .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.animate .reveal.in-view{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){
.animate .reveal{opacity:1;transform:none;transition:none;}
.jackpot-dot{animation:none;}
}

@media (max-width:1200px){
.game-grid{grid-template-columns:repeat(3,1fr);}
.advantages-grid{grid-template-columns:1fr;}
.steps-wrap{flex-direction:column;}
.illustration-steps{flex:0 0 auto;max-width:320px;}
}

@media (max-width:900px){
.nav-toggle{display:flex;}
.nav-panel{position:absolute;top:100%;left:0;right:0;background:var(--graphite);flex-direction:column;align-items:stretch;padding:20px 24px;gap:18px;border-top:1px solid var(--line-dark);display:none;}
.nav-panel.is-open{display:flex;}
.main-nav ul{flex-direction:column;gap:14px;}
.auth-actions{width:100%;}
.auth-actions .btn{flex:1;}
}

@media (max-width:768px){
.game-grid{grid-template-columns:repeat(2,1fr);}
.review-card{flex:0 0 calc(50% - 10px);}
.frame-row{grid-template-columns:1fr;}
.frame-row span:first-child{border-right:none;border-bottom:1px solid var(--line-dark);}
.sec-head{flex-direction:column;}
.jackpot{margin-left:0;width:100%;}
.steps-grid{grid-template-columns:1fr;}
.steps-grid::before{display:none;}
.footer-inner{grid-template-columns:1fr 1fr;}
}

@media (max-width:480px){
.game-grid{grid-template-columns:1fr;}
.review-card{flex:0 0 100%;}
.filters{gap:8px;}
.footer-inner{grid-template-columns:1fr;}
.cookie-banner{left:12px;right:12px;max-width:none;}
.sec-index{font-size:2.8rem;}
.decor-square,.decor-suit,.decor-seven{opacity:.12;}
}
