:root{--ink:#1d1a16;--paper:#f6f1e7;--card:#fffdf8;--rule:#d9cfbd;--accent:#8a2b1f;--muted:#6b6256;--ok:#2f5d3a;--sim:#2b4a7a}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Georgia,"Iowan Old Style",serif}
a{color:var(--accent)}.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--rule);background:var(--card)}header.top .wrap{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;flex-wrap:wrap;gap:10px}
.brand{font-weight:bold;letter-spacing:.04em;text-transform:uppercase;font-size:15px;color:var(--ink);text-decoration:none}nav a{margin-left:18px;text-decoration:none;color:var(--ink);font-family:system-ui,sans-serif;font-size:15px}
.hero{padding:70px 0 50px;border-bottom:1px solid var(--rule)}.hero h1{font-size:clamp(34px,6vw,58px);line-height:1.1;margin:0 0 18px;max-width:800px}.hero p{font-size:20px;max-width:640px;color:var(--muted)}
.btn{display:inline-block;padding:11px 20px;border-radius:4px;background:var(--accent);color:#fff;text-decoration:none;font:600 15px system-ui,sans-serif;border:0;cursor:pointer}.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
section{padding:50px 0}h2{font-size:30px;margin:0 0 20px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.steps div{border-top:3px solid var(--accent);padding-top:12px}.steps b{font-family:system-ui,sans-serif}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.card{background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:18px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink)}.card:hover{border-color:var(--accent)}
.card h3{margin:0;font-size:21px}.meta{font:13px system-ui,sans-serif;color:var(--muted)}.tag{font:600 11px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:3px;align-self:flex-start}
.tag.live{background:#e3efe5;color:var(--ok)}.tag.sim{background:#e3eaf5;color:var(--sim)}.tag.request{background:#efe9dd;color:var(--muted)}
.swing{font:600 15px system-ui,sans-serif}.swing span{color:var(--accent)}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.filters input,.filters select{padding:10px;border:1px solid var(--rule);border-radius:4px;font:15px system-ui,sans-serif;background:#fff}.filters input{flex:1;min-width:200px}
.signup{background:var(--ink);color:var(--paper);border-radius:6px;padding:32px}.signup form{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.signup input{flex:1;min-width:200px;padding:11px;border-radius:4px;border:0;font-size:16px}
.todo{font:12px monospace;background:#fff3cd;color:#664d03;padding:2px 6px;border-radius:3px}
.bars{margin:18px 0}.bar{display:flex;align-items:center;gap:10px;font:14px system-ui,sans-serif;margin:6px 0}.bar i{display:block;height:18px;background:var(--accent);border-radius:2px}.bar.base i{background:#a99f8f}.bar label{width:110px}
footer{border-top:1px solid var(--rule);padding:30px 0;color:var(--muted);font:14px system-ui,sans-serif}
@media(max-width:600px){nav a{margin-left:12px}.hero{padding:44px 0 34px}}
.fi{padding:11px;border:1px solid var(--rule);border-radius:4px;font:15px system-ui,sans-serif;background:#fff;width:100%}
