/* 3 Street Sevens – 3-street-sevens-pl.com
   Theme: light street poster – paper, ink, the three 7s as accents */
:root{
  --paper:#f4f2ed;
  --card:#ffffff;
  --ink:#121212;
  --ink-2:#2f2f33;
  --muted:#6b6b72;
  --line:rgba(18,18,18,.1);
  --line-2:rgba(18,18,18,.18);
  --green:#16a34a;
  --red:#e11d48;
  --blue:#2563eb;
  --yellow:#ffd23f;
  --dark:#141416;
  --r:18px;
  --hh:66px;
  --f-head:"Bricolage Grotesque","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --f-body:"Public Sans","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 20px);-webkit-text-size-adjust:100%}
body{margin:0;color:var(--ink);background:var(--paper);font:400 1.04rem/1.75 var(--f-body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:var(--paper) url("../images/bg.svg?v=1") center/cover no-repeat}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-underline-offset:3px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:10px;top:10px;z-index:99;background:var(--ink);color:#fff;padding:8px 12px;border-radius:8px}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 20px}

/* ---------- motion helpers ---------- */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}
mark.hl{color:inherit;background:linear-gradient(transparent 58%,var(--yellow) 58%) no-repeat 0 0/0% 100%;padding:0 .1em;transition:background-size 1s cubic-bezier(.2,.7,.2,1) .25s}
.in mark.hl,.no-js mark.hl{background-size:100% 100%}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none;transition:none}
  mark.hl{background-size:100% 100%;transition:none}
  *{animation:none!important}
}

/* ---------- Header ---------- */
.hd{position:sticky;top:0;z-index:60;height:var(--hh);background:rgba(244,242,237,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hd .wrap{height:100%;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}
.brand svg{width:34px;height:34px}
.brand b{font:800 1.08rem/1 var(--f-head);letter-spacing:-.02em}
.progress{position:absolute;left:0;bottom:-1px;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,var(--green),var(--red) 50%,var(--blue))}
.menu-btn{width:44px;height:44px;border-radius:50%;border:0;background:var(--ink);color:#fff;display:grid;place-items:center;cursor:pointer}
.menu-btn svg{width:20px;height:20px}
.menu-btn .x{display:none}
.menu-btn[aria-expanded="true"] .x{display:block}
.menu-btn[aria-expanded="true"] .o{display:none}
.nav{position:absolute;left:0;right:0;top:var(--hh);background:var(--paper);border-bottom:1px solid var(--line);display:none}
.nav.open{display:block}
.nav ul{list-style:none;margin:0;padding:6px 20px 16px}
.nav a{display:block;padding:12px 0;color:var(--ink);text-decoration:none;font-weight:600;border-bottom:1px solid var(--line)}
.btn.hd-cta{display:none}
@media (min-width:920px){
  .menu-btn{display:none}
  .nav{position:static;display:block;border:0;background:none}
  .nav ul{display:flex;gap:2px;padding:4px;background:rgba(18,18,18,.05);border-radius:999px}
  .nav a{border:0;padding:7px 14px;border-radius:999px;font-size:.92rem;font-weight:600}
  .nav a:hover{background:var(--card)}
  .btn.hd-cta{display:inline-flex;min-height:40px;padding:8px 18px;font-size:.9rem}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 24px;border:0;border-radius:999px;font:700 .98rem/1.1 var(--f-body);text-decoration:none;cursor:pointer;color:#fff;background:var(--ink);transition:transform .15s,box-shadow .15s,background .15s}
.btn:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,18,18,.18)}
.btn .arr{transition:transform .2s}
.btn:hover .arr{transform:translateX(4px)}
.btn.yellow{background:var(--yellow);color:var(--ink)}
.btn.yellow:hover{color:var(--ink)}
.btn.red{background:var(--red)}
.btn.line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.btn.line:hover{background:var(--ink);color:#fff}
.btn.full{width:100%}

/* ---------- Hero ---------- */
.hero{padding:40px 0 30px}
.hero .wrap{display:grid;gap:34px;align-items:center}
.hero-txt{text-align:left}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none}
.chips li{padding:5px 12px;border-radius:999px;font:700 .8rem/1.2 var(--f-body);background:var(--card);border:1px solid var(--line-2)}
.chips li::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:var(--c);vertical-align:1px}
.chips li:nth-child(1){--c:var(--green)}.chips li:nth-child(2){--c:var(--red)}.chips li:nth-child(3){--c:var(--blue)}
.hero h1{font:800 clamp(2.2rem,5.6vw,4.3rem)/1 var(--f-head);letter-spacing:-.045em;margin:0 0 22px}
.hero h1 .c1{color:var(--green)}.hero h1 .c2{color:var(--red)}.hero h1 .c3{color:var(--blue)}
.hero-txt .lead{margin:0 0 26px;max-width:60ch;font-size:1.1rem;color:var(--ink-2)}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
@media (min-width:1000px){.hero{padding:70px 0 50px}.hero .wrap{grid-template-columns:minmax(0,1fr) 400px;gap:70px}}
.slot-card{position:relative;background:var(--dark);color:#f2f2f2;border-radius:28px;padding:20px;box-shadow:0 30px 60px rgba(18,18,18,.25);transform:rotate(1.5deg);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.slot-card:hover{transform:rotate(0) translateY(-4px)}
.slot-card::after{content:"";position:absolute;inset:-10px;z-index:-1;border-radius:34px;background:linear-gradient(135deg,var(--green),var(--red) 50%,var(--blue));opacity:.28;filter:blur(18px)}
.slot-card figure{margin:0 0 14px;border-radius:18px;overflow:hidden}
.slot-card dl{margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.08);border-radius:14px;overflow:hidden}
.slot-card dl div{padding:10px 12px;background:#1c1c20}
.slot-card dl div.w{grid-column:1/-1}
.slot-card dt{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#a0a0a8}
.slot-card dd{margin:3px 0 0;font:700 1rem/1.25 var(--f-head)}
.slot-card dd.y{color:var(--yellow)}

/* ---------- Page layout ---------- */
.layout{display:grid;gap:26px;padding:10px 0 60px}
@media (min-width:1100px){.layout{grid-template-columns:230px minmax(0,1fr);gap:60px;align-items:start}}
.toc details{background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.toc summary{list-style:none;cursor:pointer;padding:13px 18px;font:700 .95rem/1.2 var(--f-head);display:flex;justify-content:space-between;align-items:center}
.toc summary::-webkit-details-marker{display:none}
.toc summary::after{content:"+";font-size:1.3rem;line-height:1}
.toc details[open] summary::after{content:"–"}
.toc ol{list-style:none;margin:0;padding:0 10px 12px;counter-reset:t}
.toc li{counter-increment:t}
.toc a{display:flex;gap:10px;padding:7px 8px;border-radius:10px;color:var(--muted);text-decoration:none;font-size:.9rem;line-height:1.35;transition:background .15s,color .15s}
.toc a::before{content:counter(t,decimal-leading-zero);font:700 .74rem/1.9 var(--f-head);color:var(--line-2);min-width:20px}
.toc a:hover{color:var(--ink);background:rgba(18,18,18,.04)}
.toc a.on{color:var(--ink);background:var(--yellow);font-weight:700}
.toc a.on::before{color:var(--ink)}
@media (min-width:1100px){.toc{position:sticky;top:calc(var(--hh) + 24px)}.toc summary{pointer-events:none}.toc summary::after{display:none}}

.content{min-width:0;max-width:820px}
.content>section{margin:0 0 70px}
.content h2{font:800 clamp(1.7rem,3.4vw,2.5rem)/1.08 var(--f-head);letter-spacing:-.035em;margin:0 0 20px}
.content{counter-reset:ch}
.content>section>h2{counter-increment:ch}
.content>section>h2::before{content:counter(ch,decimal-leading-zero);display:block;margin-bottom:8px;font:800 .9rem/1 var(--f-head);letter-spacing:.04em;color:var(--red)}
.content h3{font:700 1.3rem/1.3 var(--f-head);letter-spacing:-.02em;margin:32px 0 10px}
.content p{margin:0 0 16px;color:var(--ink-2)}
.content ul,.content ol{margin:0 0 16px;padding-left:1.2em}
.content li{margin:0 0 8px;color:var(--ink-2)}

/* figures */
.shot{margin:28px 0}
.shot img{border-radius:20px;box-shadow:0 18px 40px rgba(18,18,18,.18)}
.shot figcaption{margin-top:10px;font-size:.85rem;color:var(--muted)}
.shot.mid{max-width:560px}
.shot.small{max-width:230px}
@media (min-width:760px){
  .shot.side{float:right;width:42%;max-width:340px;margin:6px 0 18px 32px}
  .shot.small.side{width:180px}
  .content>section::after{content:"";display:block;clear:both}
}

/* ---------- Summary: bento + verdict ---------- */
.summary{padding:30px 0 50px}
.summary h2{font:800 clamp(1.8rem,3.6vw,2.6rem)/1.08 var(--f-head);letter-spacing:-.035em;margin:0 0 22px}
.bento table,.bento tbody{display:block}
.bento thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.bento tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bento tr{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:18px;background:var(--card);border-radius:var(--r);border:1px solid var(--line);transition:transform .2s,box-shadow .2s}
.bento tr:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,18,18,.08)}
.bento th{text-align:left;font:600 .76rem/1.3 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.bento td{font:700 1.08rem/1.35 var(--f-head)}
.bento tr.big td{font-size:clamp(1.8rem,3.4vw,2.6rem);letter-spacing:-.03em;line-height:1}
.bento tr.k-green{background:var(--green);color:#fff;border:0}.bento tr.k-green th{color:rgba(255,255,255,.8)}
.bento tr.k-red{background:var(--red);color:#fff;border:0}.bento tr.k-red th{color:rgba(255,255,255,.8)}
.bento tr.k-blue{background:var(--blue);color:#fff;border:0}.bento tr.k-blue th{color:rgba(255,255,255,.8)}
.bento tr.k-dark{background:var(--dark);color:#fff;border:0}.bento tr.k-dark th{color:#a0a0a8}
.bento tr.w2{grid-column:span 2}
@media (min-width:760px){.bento tbody{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:759px){.bento tr.w2{grid-column:1/-1}}
.summary .after{margin:20px 0 26px;max-width:70ch;font-size:1.08rem;color:var(--ink-2)}
.fit{border-radius:22px;overflow:hidden;border:1px solid var(--line);background:var(--card)}
.fit table{width:100%;border-collapse:collapse}
.fit thead th{padding:14px 20px;text-align:left;font:800 1.1rem/1.2 var(--f-head);color:#fff}
.fit thead th:first-child{background:var(--green)}
.fit thead th:last-child{background:var(--red)}
.fit td{width:50%;padding:13px 20px;border-top:1px solid var(--line);vertical-align:top;color:var(--ink-2)}
.fit td:first-child{border-right:1px solid var(--line)}
.fit td::before{display:inline-block;width:22px;font-weight:800}
.fit td:first-child::before{content:"✓";color:var(--green)}
.fit td:last-child::before{content:"✕";color:var(--red)}
@media (max-width:640px){
  .fit thead{display:none}
  .fit table,.fit tbody,.fit tr,.fit td{display:block;width:100%}
  .fit td:first-child{border-right:0}
  .fit td::after{content:attr(data-label);display:block;margin-top:2px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
}

/* ---------- Casino leaderboard ---------- */
.board{padding:10px 0 60px}
.board h2{font:800 clamp(1.8rem,3.6vw,2.6rem)/1.08 var(--f-head);letter-spacing:-.035em;margin:0 0 22px}
.board table{width:100%;border-collapse:separate;border-spacing:0 10px}
.board thead th{padding:0 16px;text-align:left;font:600 .76rem/1.2 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.board tbody td{padding:16px;background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle;transition:background .15s}
.board tbody td:first-child{border-left:1px solid var(--line);border-radius:18px 0 0 18px;width:70px;text-align:center}
.board tbody td:last-child{border-right:1px solid var(--line);border-radius:0 18px 18px 0;width:230px;text-align:center}
.board tbody tr:hover td{background:#fbfaf7}
.rank{font:800 1.6rem/1 var(--f-head);color:var(--line-2)}
.cname{display:block;font:800 1.15rem/1.2 var(--f-head)}
.cbonus{display:block;margin-top:3px;font-weight:600;color:var(--ink-2)}
.tags{display:flex;gap:6px;flex-wrap:wrap}
.tags span{padding:3px 10px;border-radius:999px;font-size:.76rem;font-weight:700;background:rgba(18,18,18,.06)}
.terms{display:block;margin-top:6px;font-size:.74rem;color:var(--muted)}
.board tr.top td{background:var(--yellow);border-color:transparent}
.board tr.top .rank{color:var(--ink)}
.board tr.top .tags span{background:rgba(18,18,18,.1)}
.board tr.top .terms{color:var(--ink-2)}
.badge{display:inline-block;margin-bottom:6px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--ink)}
@media (max-width:820px){
  .board thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .board table,.board tbody,.board tr,.board td{display:block;width:100%!important}
  .board table{border-spacing:0}
  .board tr{display:grid;grid-template-columns:56px 1fr;margin:0 0 12px;background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}
  .board tbody td,.board tbody td:first-child,.board tbody td:last-child{border:0;border-radius:0;text-align:left;padding:10px 14px}
  .board tbody td:first-child{grid-row:span 2;text-align:center;padding-top:16px}
  .board tbody td:last-child{grid-column:1/-1;text-align:center;padding-bottom:16px}
  .board tr.top{background:var(--yellow)}
}

/* ---------- Poradnik timeline ---------- */
.path{position:relative;margin:26px 0 0;padding-left:30px}
.path::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:var(--line-2)}
.path::after{content:"";position:absolute;left:11px;top:6px;width:2px;height:var(--fill,0%);background:linear-gradient(var(--green),var(--red),var(--blue));transition:height .2s linear}
.path .step{position:relative;margin:0 0 30px}
.path .step::before{content:"";position:absolute;left:-30px;top:10px;width:16px;height:16px;border-radius:50%;background:var(--paper);border:3px solid var(--line-2);transition:border-color .3s,background .3s}
.path .step.in::before{border-color:var(--ink);background:var(--yellow)}
.path h3{margin-top:0}

/* ---------- Paytable ---------- */
.pay{margin:0 0 20px;background:var(--card);border-radius:22px;border:1px solid var(--line);overflow:hidden}
.pay table{width:100%;border-collapse:collapse}
.pay thead th{padding:13px 16px;text-align:left;font:600 .76rem/1.2 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.pay td{padding:10px 16px;border-top:1px solid var(--line);font-weight:600}
.pay tbody tr:first-child td{border-top:0}
.pay tbody tr:hover td{background:#fbfaf7}
.pay .sym{display:flex;align-items:center;gap:12px;font-family:var(--f-head);font-weight:700}
.pay .sym img{width:40px;height:40px;border-radius:10px;flex:none}
.pay .five{position:relative}
.pay .five span{position:relative;z-index:1}
.pay .five i{position:absolute;left:10px;top:50%;height:26px;margin-top:-13px;border-radius:8px;background:rgba(255,210,63,.55);width:0;transition:width 1s cubic-bezier(.2,.7,.2,1)}
.in .pay .five i,.no-js .pay .five i{width:calc((100% - 20px) * var(--w) / 100)}
@media (max-width:640px){
  .pay{border:0;background:none;overflow:visible}
  .pay thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pay table,.pay tbody{display:block}
  .pay tr{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 10px;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
  .pay td{border:0;text-align:center;padding:8px 6px}
  .pay td:first-child{grid-column:1/-1;text-align:left;border-bottom:1px solid var(--line);padding:10px 14px}
  .pay td:not(:first-child)::before{content:attr(data-label);display:block;font-size:.7rem;color:var(--muted)}
  .pay .five i{display:none}
}

/* ---------- Collector calculation ---------- */
.calc{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px;padding:18px;border-radius:22px;background:var(--dark);color:#fff}
.calc span{padding:6px 12px;border-radius:999px;font:700 .95rem/1.2 var(--f-head);background:#26262b;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s}
.calc b{opacity:0;color:#8a8a92;transition:opacity .4s}
.in .calc span,.in .calc b,.no-js .calc span,.no-js .calc b{opacity:1;transform:none}
.calc .x{background:var(--blue)}
.calc .c{background:var(--green)}
.calc .res{background:var(--yellow);color:var(--ink)}
@media (prefers-reduced-motion:reduce){.calc span,.calc b{opacity:1;transform:none}}

/* callouts */
.callout{overflow:hidden;margin:0 0 18px;padding:18px 20px;border-radius:18px;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--c,var(--blue))}
.callout p{margin:0}
.callout.warn{--c:var(--red)}

/* ---------- Buy comparison ---------- */
.buy{margin:0 0 20px;border-radius:22px;overflow:hidden;background:var(--card);border:1px solid var(--line)}
.buy table{width:100%;border-collapse:collapse}
.buy thead th{padding:14px 16px;text-align:left;font:700 .95rem/1.3 var(--f-head)}
.buy thead th:nth-child(2){background:rgba(37,99,235,.1);color:var(--blue)}
.buy thead th:nth-child(3){background:rgba(225,29,72,.1);color:var(--red)}
.buy td{padding:13px 16px;border-top:1px solid var(--line);font:700 1.1rem/1.2 var(--f-head)}
.buy td:first-child{font:600 .95rem/1.2 var(--f-body);color:var(--muted)}
.buy tbody tr:nth-child(2){background:rgba(255,210,63,.18)}
@media (max-width:560px){
  .buy thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .buy table,.buy tbody,.buy tr,.buy td{display:block;width:100%}
  .buy tr{padding:6px 0;border-top:1px solid var(--line)}
  .buy td{border:0;display:flex;justify-content:space-between;gap:12px;padding:6px 16px}
  .buy td::before{content:attr(data-label);font:600 .82rem/1.3 var(--f-body);color:var(--muted);text-align:left}
  .buy td:first-child{font:800 1rem/1.2 var(--f-head);color:var(--ink)}
}

/* ---------- Math counters ---------- */
.counters{display:grid;gap:12px;margin:0 0 20px}
@media (min-width:640px){.counters{grid-template-columns:repeat(3,1fr)}}
.counter{padding:20px;border-radius:22px;color:#fff;background:var(--c)}
.counter:nth-child(1){--c:var(--green)}.counter:nth-child(2){--c:var(--red)}.counter:nth-child(3){--c:var(--blue)}
.counter b{display:block;font:800 clamp(2rem,4vw,2.7rem)/1 var(--f-head);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.counter span{display:block;margin-top:8px;font-size:.88rem;opacity:.85}

/* ---------- Verdict ---------- */
.pc{display:grid;gap:14px;margin:0 0 20px}
@media (min-width:780px){.pc{grid-template-columns:1fr 1fr}}
.pc>div{padding:20px 22px;border-radius:22px;background:var(--card);border:1px solid var(--line)}
.pc p{margin:0 0 12px;font:800 1.05rem/1.2 var(--f-head)}
.pc .plus p{color:var(--green)}.pc .minus p{color:var(--red)}
.pc ul{list-style:none;padding:0;margin:0}
.pc li{position:relative;padding-left:28px;margin:0 0 12px}
.pc li::before{position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;font:800 .75rem/1 var(--f-body);color:#fff}
.pc .plus li::before{content:"+";background:var(--green)}
.pc .minus li::before{content:"–";background:var(--red)}
.pc li strong{color:var(--ink)}
.rating{display:flex;align-items:center;gap:20px;margin:0 0 18px;padding:18px 22px;border-radius:22px;background:var(--dark);color:#fff}
.rating svg{width:96px;height:96px;flex:none;transform:rotate(-90deg)}
.rating .trk{fill:none;stroke:#2a2a30;stroke-width:10}
.rating .val{fill:none;stroke:var(--yellow);stroke-width:10;stroke-linecap:round;stroke-dasharray:264;stroke-dashoffset:264;transition:stroke-dashoffset 1.4s cubic-bezier(.2,.7,.2,1) .2s}
.in .rating .val,.no-js .rating .val{stroke-dashoffset:calc(264 - 264 * .7)}
.rating .ring{position:relative}
.rating .ring b{position:absolute;inset:0;display:grid;place-items:center;font:800 1.5rem/1 var(--f-head)}
.rating p{margin:0;color:#dcdce0}

/* responsible block in content */
.rg-box{padding:24px;border-radius:22px;background:rgba(225,29,72,.07);border:1px solid rgba(225,29,72,.25)}

/* ---------- Demo ---------- */
.demo{margin:20px 0 18px;border-radius:26px;overflow:hidden;background:var(--dark);box-shadow:0 26px 50px rgba(18,18,18,.25)}
.demo-scr{position:relative;aspect-ratio:16/10}
.demo-scr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.35)}
.demo-scr iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.demo-go{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:18px;text-align:center;color:#fff}
.demo-go .row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.demo-go small{opacity:.85}
.play-dot{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);box-shadow:0 0 0 0 rgba(255,210,63,.6);animation:pulse 2.4s ease-out 3}
.play-dot svg{width:26px;height:26px;margin-left:4px}
@keyframes pulse{to{box-shadow:0 0 0 22px rgba(255,210,63,0)}}
.demo-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;color:#c9c9cf;background:#1c1c20}
.demo-bar small{max-width:52ch}
.demo-bar .btn{min-height:42px;padding:10px 18px}
@media (max-width:699px){.demo-scr{aspect-ratio:3/4}}

/* ---------- FAQ ---------- */
.faq{display:grid;gap:10px}
@media (min-width:980px){.faq{grid-template-columns:1fr 1fr;align-items:start}}
.faq details{border-radius:18px;background:var(--card);border:1px solid var(--line);transition:box-shadow .2s}
.faq details[open]{box-shadow:0 14px 30px rgba(18,18,18,.08)}
.faq summary{list-style:none;cursor:pointer;position:relative;padding:16px 54px 16px 18px;font:700 1rem/1.4 var(--f-head)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:16px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v12M6 12h12' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg);background-color:var(--red)}
.faq .a{padding:0 18px 6px}

/* ---------- Footer ---------- */
.ft{background:var(--dark);color:#b9b9c0;padding:46px 0 36px;font-size:.92rem}
.ft .wrap{display:grid;gap:24px}
.rg{display:grid;gap:18px;padding:24px;border-radius:24px;background:#1c1c20}
@media (min-width:820px){.rg{grid-template-columns:auto 1fr 1fr;gap:34px;padding:28px 32px}}
.age{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;border:3px solid var(--red);font:800 1.1rem/1 var(--f-head);color:#fff}
.rg h2{margin:0 0 8px;font:800 1.25rem/1.2 var(--f-head);color:#fff}
.rg h3{margin:0 0 8px;font:700 1rem/1.25 var(--f-head);color:var(--yellow)}
.rg p{margin:0 0 10px;color:#e4e4e8}
.rg ul{margin:0;padding-left:1.1em}
.rg li{margin:0 0 6px}
.ft a{color:var(--yellow)}
.legal{display:grid;gap:6px;font-size:.86rem}
.legal p{margin:0;max-width:95ch}

/* ---------- Bottom bar ---------- */
.bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;border-radius:20px;background:var(--dark);color:#fff;box-shadow:0 18px 40px rgba(18,18,18,.3);padding:10px 10px 10px 18px;transform:translateY(140%);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.bar.show{transform:none}
.bar .in-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:1200px;margin:0 auto}
.bar .t{min-width:0}
.bar strong{display:block;font:800 .95rem/1.25 var(--f-head)}
.bar small{display:block;font-size:.78rem;color:#b9b9c0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bar .btn{flex:none;min-height:44px;padding:8px 20px}
@media (min-width:900px){.bar{left:50%;right:auto;width:min(760px,calc(100% - 40px));transform:translate(-50%,140%)}.bar.show{transform:translate(-50%,0)}.bar strong{font-size:1.05rem}}
body.has-bar .ft{padding-bottom:120px}
