:root{--wine:#6b1d2f;--wine2:#8e2b42;--cream:#faf6f1;--ink:#2a1a1f;--muted:#7a6a6e;--line:#eadfd8;--gold:#c8a165}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 Inter,system-ui,sans-serif;color:var(--ink);background:var(--cream)}
h1,h2,h3,.logo{font-family:Fraunces,Georgia,serif;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.2rem);margin:.2em 0}h2{font-size:1.4rem;margin-top:0}
a{color:var(--wine2)}.wrap{max-width:1140px;margin:0 auto;padding:0 20px}.narrow{max-width:860px;padding-top:40px;padding-bottom:40px}
.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.nav{display:flex;justify-content:space-between;align-items:center;height:64px;flex-wrap:wrap}
.logo{font-size:1.4rem;font-weight:700;color:var(--wine);text-decoration:none;display:flex;align-items:center;gap:8px}.dot{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--wine2),var(--gold))}
nav a{margin-left:20px;text-decoration:none;color:var(--ink);font-weight:500}nav a:hover{color:var(--wine2)}
.hero{background:radial-gradient(circle at 80% 0,#a8445c 0,var(--wine) 45%,#3d0f1b 100%);color:#fff;padding:72px 0 64px}.hero .muted{color:#e9cfd5}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:600;color:var(--gold)}.lede{font-size:1.15rem;max-width:720px}
.signup{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;max-width:560px}.signup input{flex:1;min-width:220px}
input,select{font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
.btn{display:inline-block;font:inherit;font-weight:600;padding:11px 20px;border:0;border-radius:10px;background:var(--gold);color:#2a1a1f;cursor:pointer;text-decoration:none}.btn:hover{filter:brightness(1.07)}
.ok-msg{width:100%;margin:0}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin:24px 0;box-shadow:0 1px 3px rgba(60,20,30,.05)}
.grid2,.grid3{display:grid;gap:0 24px}.grid2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.small{font-size:.88rem}.muted{color:var(--muted)}
.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap;margin:1px 2px 1px 0}
.ok{background:#dcf3e3;color:#17663a}.pred{background:#fdefd0;color:#8a5a00}.open{background:#dce9fb;color:#1d4f91}.tbd{background:#ececec;color:#555}
.legend{list-style:none;padding:0}.legend li{margin:8px 0}
.upcoming{list-style:none;padding:0;margin:0}.upcoming li{display:flex;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.date{background:var(--wine);color:#fff;border-radius:10px;padding:6px 10px;text-align:center;min-width:58px;font-weight:600;line-height:1.1}.date small{display:block;font-size:.7rem;font-weight:500;opacity:.8}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.filters input{flex:1;min-width:220px}
.tblwrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.93rem}.tbl th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:2px solid var(--line);padding:10px}
.tbl td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}.tbl tbody tr:hover{background:#fbf3ef}.tbl td a{font-weight:600;text-decoration:none}.tbl tr.past td{color:#b5a9ac}
.facts dt{font-weight:600;margin-top:12px;font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.facts dd{margin:2px 0 0;overflow-wrap:anywhere}
.window .big{font-family:Fraunces,serif;font-size:1.3rem;color:var(--wine);margin:0}.stack{display:grid;gap:10px}.empty{text-align:center;border-style:dashed}
.foot{background:#2a1a1f;color:#eadfd8;padding:32px 0;margin-top:40px}.foot a{color:var(--gold)}.foot .muted{color:#b9a8ac}
@media(max-width:640px){nav a{margin:0 14px 0 0}.nav{height:auto;padding:10px 20px}.hero{padding:48px 0}.tbl th:nth-child(4),.tbl td:nth-child(4),.tbl th:nth-child(5),.tbl td:nth-child(5){display:none}}
.cta{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:linear-gradient(135deg,#fff,#f7ebe6);border-color:#e3c9bf}.cta h2{margin-bottom:4px}.cta p{margin:4px 0}.insight{border-left:5px solid var(--gold);font-size:1.08rem}.teaser{font-size:.8rem;color:var(--wine2)}

.badge.live{background:var(--wine);color:#fff}.upcoming li.live{background:#fbf3ef;border-left:4px solid var(--wine);padding-left:10px;border-radius:8px}
.card.hl{border-top:4px solid var(--wine)}.wins{list-style:none;padding:0;margin:12px 0 0}.wins li{display:grid;grid-template-columns:minmax(120px,1.2fr) 2fr 48px;gap:10px;align-items:center;padding:4px 0}.w-bar{background:#f1e9e4;border-radius:6px;height:10px;overflow:hidden}.w-bar i{display:block;height:100%;background:var(--wine)}.w-n{text-align:right;font-weight:600}
.winsgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0}.card.mini{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit;margin:0}.card.mini strong{font-size:1.15rem}

.key{list-style:none;padding:0;margin:4px 0 14px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.85rem;color:var(--muted,#666)}.key li{display:flex;align-items:center;gap:6px;white-space:nowrap}
@media(max-width:600px){.key{gap:6px 12px;font-size:.8rem}.key li{white-space:normal}}
