
:root{--bg:#0b0a09;--bg-2:#100e0c;--surface:#161310;--line:#2a241d;--gold:#e6b95c;--gold-soft:#c9a24b;--live:#ffb347;--text:#f4efe6;--text-dim:#a39b8d;--text-mute:#6f685c;--radius:18px}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.55}
a{color:var(--gold)}
.ev-hdr{padding:16px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(11,10,9,.85);backdrop-filter:blur(10px)}
.ev-home{font-family:Archivo,sans-serif;font-weight:900;font-size:20px;letter-spacing:.1em;text-decoration:none;color:var(--text)}
.ev-home b{color:var(--gold)}
.ev-main{max-width:640px;margin:0 auto;padding:24px 20px 60px}
.ev-crumb{font-family:'Space Mono',monospace;font-size:11px;color:var(--text-mute);margin-bottom:14px}
.ev-crumb a{color:var(--text-mute);text-decoration:none}
.ev-status{display:inline-block;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.08em;padding:4px 10px;border-radius:6px;margin-bottom:12px}
.ev-status--upcoming{background:var(--gold);color:#1a1409}
.ev-status--past{background:var(--surface);color:var(--text-mute);border:1px solid var(--line)}
.ev-status--recurring{background:var(--live);color:#1a1409}
.ev-status--tba{background:var(--surface);color:var(--text-dim);border:1px solid var(--line)}
.ev-title{font-family:Archivo,sans-serif;font-weight:900;font-size:clamp(28px,7vw,42px);line-height:1.05;letter-spacing:-.01em;margin-bottom:18px}
.ev-flyer{border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line);margin-bottom:20px}
.ev-flyer img{width:100%;height:auto;display:block}
.ev-rows{border-top:1px solid var(--line)}
.ev-row{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
.ev-k{flex:0 0 110px;color:var(--text-mute);font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding-top:2px}
.ev-v{color:var(--text)}
.ev-v a{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold-soft)}
.ev-blurb{color:var(--text-dim);font-size:15px;line-height:1.65;margin-top:20px}
.ev-back{display:inline-block;margin-top:28px;font-family:'Space Mono',monospace;font-size:13px;text-decoration:none;color:var(--gold-soft)}
.ev-ftr{max-width:640px;margin:0 auto;padding:24px 20px 50px;border-top:1px solid var(--line);text-align:center;font-family:'Space Mono',monospace;font-size:12px;color:var(--text-mute);line-height:2}
.ev-ftr a{color:var(--text-mute);text-decoration:none}

/* directory (city/venue/promoter/artist hub + detail) pages */
.dir-main{max-width:760px;margin:0 auto;padding:24px 20px 60px}
.dir-kicker{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.14em;color:var(--gold-soft);text-transform:uppercase;margin-bottom:8px}
.dir-title{font-family:Archivo,sans-serif;font-weight:900;font-size:clamp(30px,7vw,46px);line-height:1.05;letter-spacing:-.01em;margin-bottom:10px}
.dir-title span{color:var(--gold)}
.dir-sub{color:var(--text-dim);font-size:15px;line-height:1.6;max-width:560px;margin-bottom:24px}
.dir-section-title{font-family:Archivo,sans-serif;font-weight:800;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin:30px 0 14px}
.dir-list{display:grid;gap:12px}
.dir-card{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-decoration:none;color:inherit;transition:border-color .2s ease}
.dir-card:hover{border-color:var(--gold-soft)}
.dir-card img{width:56px;height:70px;object-fit:cover;border-radius:8px;flex:none;background:var(--bg-2)}
.dir-card .dc-b{min-width:0}
.dir-card .dc-name{font-family:Archivo,sans-serif;font-weight:800;font-size:15px;color:var(--text)}
.dir-card .dc-meta{font-family:'Space Mono',monospace;font-size:11.5px;color:var(--text-mute);margin-top:4px}
.dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.dir-tile{display:block;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-decoration:none;color:inherit;transition:border-color .2s ease}
.dir-tile:hover{border-color:var(--gold-soft)}
.dir-tile .dt-name{font-family:Archivo,sans-serif;font-weight:800;font-size:16px;color:var(--text)}
.dir-tile .dt-meta{font-family:'Space Mono',monospace;font-size:11px;color:var(--text-mute);margin-top:5px}
.dir-empty{color:var(--text-mute);padding:30px 0;font-size:14px}
.sponsored-inline{display:inline-block;font-family:'Space Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.06em;background:var(--gold);color:#1a1409;padding:2px 6px;border-radius:5px;vertical-align:middle;margin-left:6px}
.sponsor-cta{margin-top:36px;padding:24px;border:1px solid var(--gold-soft);background:rgba(230,185,92,.06);border-radius:16px;text-align:center}
.sponsor-cta h2{font-family:Archivo,sans-serif;font-weight:800;font-size:20px;margin-bottom:10px}
.sponsor-cta p{color:var(--text-dim);font-size:14px;line-height:1.6;max-width:440px;margin:0 auto 18px}
.bigcta{font-family:Archivo,sans-serif;font-weight:800;font-size:15px;letter-spacing:.03em;text-transform:uppercase;background:var(--gold);color:#15120d;text-decoration:none;border-radius:12px}
