/* McSorleyRaces.com public landing site */
:root {
    --blue: #0094FF;
    --black: #05070B;
    --panel: #0D121C;
    --silver: #D7DEE8;
    --text: #F7FAFF;
    --muted: #AEB9C9;
    --line: rgba(255,255,255,.14);
}
* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background:
        radial-gradient(circle at 18% 0%, rgba(0,148,255,.28), transparent 34rem),
        radial-gradient(circle at 90% 12%, rgba(255,255,255,.10), transparent 28rem),
        linear-gradient(135deg, #05070B 0%, #0A0F18 44%, #020308 100%);
    color: var(--text);
    min-height: 100vh;
}
a { color: inherit; }
.site-shell { width: min(1120px, calc(100% - 36px)); margin: 0 auto; }
.msr-header { padding: 28px 0 20px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.msr-logo { display:block; max-width: 430px; width: 46vw; min-width: 260px; height:auto; filter: drop-shadow(0 10px 24px rgba(0,0,0,.45)); }
.msr-nav { display:flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.msr-nav a { text-decoration:none; border:1px solid var(--line); padding:10px 13px; border-radius:999px; background:rgba(255,255,255,.05); color:var(--silver); font-weight:700; font-size:14px; }
.msr-nav a:hover { border-color: rgba(0,148,255,.8); color:#fff; }
.hero { padding: 58px 0 36px; display:grid; grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr); gap:36px; align-items:center; }
.kicker { color: var(--blue); font-weight: 900; letter-spacing:.18em; text-transform: uppercase; font-size: 13px; }
h1 { font-size: clamp(42px, 7vw, 82px); line-height:.92; margin: 14px 0 18px; letter-spacing:-.055em; }
.lead { color: var(--silver); font-size: clamp(18px, 2vw, 22px); line-height:1.55; margin:0 0 26px; max-width: 720px; }
.hero-card { border:1px solid var(--line); border-radius: 26px; background: linear-gradient(160deg, rgba(255,255,255,.10), rgba(255,255,255,.035)); padding: 26px; box-shadow: 0 24px 70px rgba(0,0,0,.35); }
.stat-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; }
.stat { border:1px solid var(--line); border-radius:18px; background:rgba(0,0,0,.28); padding:18px; }
.stat strong { display:block; color:#fff; font-size:28px; letter-spacing:-.03em; }
.stat span { color:var(--muted); font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.actions { display:flex; gap:12px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; font-weight:900; border-radius:14px; padding:13px 17px; border:1px solid transparent; }
.button-primary { background:var(--blue); color:#00101d; box-shadow:0 12px 30px rgba(0,148,255,.27); }
.button-secondary { border-color:var(--line); color:#fff; background:rgba(255,255,255,.06); }
.section { padding: 26px 0 46px; }
.cards { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:16px; }
.card { border:1px solid var(--line); border-radius:22px; background:rgba(255,255,255,.055); padding:22px; min-height:170px; }
.card h2 { margin:0 0 10px; font-size:22px; }
.card p { color:var(--muted); line-height:1.55; margin:0 0 18px; }
.card a { color:var(--blue); font-weight:900; text-decoration:none; }
.footer { color:var(--muted); border-top:1px solid var(--line); padding:24px 0 40px; font-size:14px; }
@media (max-width: 820px) { .msr-header { display:block; } .msr-nav { justify-content:flex-start; margin-top:18px; } .hero { grid-template-columns:1fr; padding-top:34px; } .cards { grid-template-columns:1fr; } .msr-logo { width:100%; max-width:420px; } }
