:root { --bg:#1c1224; --card:#2a1b34; --ink:#f8f1f6; --muted:#c7b3c4; --acc:#ff6b8a; }
* { box-sizing:border-box; }
body { margin:0; font-family:ui-sans-serif,system-ui,sans-serif; background:
  radial-gradient(900px 420px at 100% -10%, #4a2348, transparent 60%), var(--bg); color:var(--ink); }
a { color:inherit; }
header, footer, main { width:min(880px,calc(100% - 32px)); margin:0 auto; }
header { display:flex; justify-content:space-between; align-items:center; min-height:72px; }
.logo { color:var(--acc); text-decoration:none; font-weight:800; font-size:22px; letter-spacing:.18em; }
header span, footer { color:var(--muted); font-size:13px; }
.eye { margin:0; color:var(--acc); font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
h1 { font-size:clamp(30px,4.6vw,48px); line-height:1.02; letter-spacing:-.04em; margin:8px 0 18px; max-width:16ch; }
.must { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.must article { background:rgba(255,255,255,.04); border:1px solid #4a3554; border-radius:22px; padding:16px; }
.must span { display:block; font-size:12px; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); }
.must strong { display:block; font-size:clamp(26px,3vw,34px); margin:6px 0; }
.must p { margin:0; font-size:14px; color:#eadfe8; }
.must .rate { background:var(--acc); color:#2a1020; border-color:var(--acc); }
.must .rate span, .must .rate p { color:#4a1830; }
.list { display:grid; gap:8px; padding:20px 0 36px; }
.card { display:grid; grid-template-columns:108px 1fr auto; gap:14px; align-items:center; background:var(--card); border-radius:18px; padding:12px 14px; }
.card img { width:108px; height:46px; object-fit:contain; background:#fff; border-radius:12px; padding:4px; }
.card h2 { margin:0; font-size:18px; }
.card ul { display:flex; flex-wrap:wrap; gap:6px; list-style:none; margin:8px 0 0; padding:0; }
.card li { color:#ffd0dc; font-size:12px; }
.go { background:#fff; color:#2a1020; text-decoration:none; font-weight:700; border-radius:999px; padding:11px 16px; }
footer { padding-bottom:28px; }
@media (max-width:760px) {
  .must, .card { grid-template-columns:1fr; }
  .go { text-align:center; }
}
