:root{--ink:#0f1b2d;--muted:#5b6b80;--bg:#f6f8fb;--card:#fff;--line:#e3e8ef;--acc:#0b5fff;--acc2:#ffb703;--ok:#0a7d4f}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--acc)}.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.nav{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{font-weight:800;color:var(--ink);text-decoration:none;display:flex;gap:8px;align-items:center}
.mark{background:var(--ink);color:#fff;border-radius:6px;padding:2px 6px;font-size:13px;letter-spacing:.5px}
nav a{margin-left:18px;color:var(--ink);text-decoration:none;font-weight:500}nav a.lang{border:1px solid var(--line);padding:3px 10px;border-radius:999px}
.hero{background:linear-gradient(135deg,#0f1b2d,#13335f);color:#fff;padding:64px 0 56px}
.hero h1{font-size:clamp(28px,4.5vw,46px);line-height:1.15;margin:.2em 0 .4em;max-width:820px}
.kicker{color:var(--acc2);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:1px}
.lead{font-size:19px;max-width:760px;color:#dbe6ff}
.btn{display:inline-block;background:var(--acc2);color:#111;padding:12px 18px;border-radius:10px;font-weight:700;text-decoration:none;margin:8px 8px 0 0}
.btn.ghost{background:transparent;color:#fff;border:1px solid #6d86b5}
.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin:36px auto}
.three div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.three h3{margin:.1em 0}
h2{margin-top:1.6em}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.item{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column}
.item h3{margin:.3em 0 .2em;font-size:18px}.item p{margin:.3em 0}
.meta{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--muted);flex-wrap:wrap}
.cat{font-weight:700;border-radius:999px;padding:1px 9px;font-size:12px}
.c-crews{background:#e6efff;color:#0b4ad1}.c-rules{background:#fff3d6;color:#8a5a00}.c-projects{background:#e3f6ee;color:var(--ok)}
.tags{margin:.4em 0}.tag{display:inline-block;background:#f0f3f8;border-radius:6px;padding:1px 7px;font-size:12px;margin:2px 4px 2px 0}
.links{font-size:14px;margin-top:auto!important}.muted{color:var(--muted)}.small{font-size:13px;color:var(--muted)}
.filters{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin:10px 0 12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer;font:inherit;font-size:14px}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.row{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.row input,.row select{flex:1;min-width:200px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit}
.disclaimer{font-size:13px;color:var(--muted);background:#fffbe9;border:1px solid #f3e3a6;padding:8px 12px;border-radius:10px}
.signup{margin:40px 0}.signup .card{background:#0f1b2d;color:#fff;border-radius:18px;padding:28px}
.signup h2{margin-top:0}.signup p{color:#cfdaf0}.signup a{color:var(--acc2)}
.nl-form{display:flex;gap:10px;flex-wrap:wrap}.nl-form input[type=email]{flex:1;min-width:220px;padding:12px 14px;border-radius:10px;border:0;font:inherit}
.nl-form button{background:var(--acc2);border:0;border-radius:10px;padding:12px 18px;font-weight:700;font:inherit;font-weight:700;cursor:pointer}
.msg{min-height:1.2em;color:#fff!important;font-weight:600}
.hp{position:absolute;left:-9999px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.prose{max-width:760px;padding-top:24px;padding-bottom:24px}
.foot{border-top:1px solid var(--line);background:#fff;margin-top:40px;padding:20px 0;font-size:14px;color:var(--muted)}
@media(max-width:600px){nav a{margin-left:10px}.hero{padding:40px 0}}
.newfeed .feed{list-style:none;padding:0;margin:0}.newfeed .feed li{padding:.4rem 0;border-bottom:1px solid #e5e7eb}.newfeed time{font-variant-numeric:tabular-nums;color:#6b7280}
