:root{--bg:#120f12;--card:#1e1a1e;--text:#f5f0f5;--muted:#c9bdc9;--magenta:#d63384;--gold:#e8b84b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,sans-serif;line-height:1.5}
a{color:var(--gold)}a[target="_blank"]{text-decoration:underline}
.top{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #333}
.logo{font-weight:800;text-decoration:none;color:var(--text)}.logo span{color:var(--magenta)}
.top nav a{margin-left:18px;color:var(--text);text-decoration:none}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;padding:40px 24px;align-items:center}
.eyebrow{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}
.hero h1{font-size:2.4rem;line-height:1.15;margin:.2em 0}
.hero-img{width:100%;border-radius:16px;border-top:4px solid var(--magenta)}
.btn{display:inline-block;background:var(--magenta);color:#fff;padding:10px 18px;border-radius:999px;text-decoration:none;margin:6px 8px 6px 0}
.btn.ghost{background:transparent;border:1px solid var(--gold);color:var(--gold)}
.layout{display:grid;grid-template-columns:260px 1fr;gap:24px;padding:0 24px 32px}
.filters{background:var(--card);border-top:4px solid var(--magenta);border-radius:12px;padding:18px;height:fit-content}
.filters fieldset{border:0;padding:0;margin:16px 0}.filters legend{font-weight:700;margin-bottom:6px}
.filters label{display:block;margin:6px 0}.filters input[type=search]{width:100%;padding:8px;border-radius:8px;border:1px solid #444;background:#120f12;color:var(--text)}
.note{color:var(--muted);font-size:.9rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.card{background:var(--card);border-top:4px solid var(--magenta);border-radius:12px;overflow:hidden}
.card.featured{border-top-color:var(--gold)}
.card img{width:100%;height:280px;object-fit:cover;display:block}
.card-body{padding:16px}.pill{display:inline-block;background:var(--gold);color:#1a1a1a;font-weight:700;font-size:.8rem;padding:4px 10px;border-radius:999px}
.tags{color:var(--gold);font-weight:600}.meta{color:var(--muted)}
.how{padding:0 24px 32px}.how ol{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0;list-style:none}
.how li{background:var(--card);border-radius:12px;padding:16px}
footer{border-top:1px solid #333;padding:18px 24px;color:var(--muted)}
@media(max-width:800px){.hero,.layout{grid-template-columns:1fr}.how ol{grid-template-columns:1fr}.top nav a{margin-left:10px}}
