@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;600;700;800&display=swap";:root{--background: 248 246 242;--foreground: 29 27 25;--card: 255 255 255;--card-foreground: 29 27 25;--popover: 255 255 255;--popover-foreground: 29 27 25;--primary: 243 119 55;--primary-foreground: 255 255 255;--secondary: 242 238 232;--secondary-foreground: 29 27 25;--muted: 244 240 235;--muted-foreground: 113 111 109;--accent: 236 232 226;--accent-foreground: 29 27 25;--destructive: 220 62 62;--destructive-foreground: 255 255 255;--border: 225 220 211;--input: 225 220 211;--ring: 243 119 55;--font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;--font-display: "Bebas Neue", Impact, sans-serif;--shadow-sm: 0 10px 24px rgb(24 24 27 / .06);--shadow-md: 0 18px 36px rgb(24 24 27 / .09);--shadow-lg: 0 28px 52px rgb(24 24 27 / .13);--shadow-xl: 0 40px 72px rgb(24 24 27 / .16);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .5rem;--radius-full: .5rem;--transition-fast: .16s cubic-bezier(.22, 1, .36, 1);--transition-normal: .28s cubic-bezier(.22, 1, .36, 1);--transition-slow: .52s cubic-bezier(.16, 1, .3, 1)}:root[data-theme=dark]{--background: 19 18 18;--foreground: 245 244 241;--card: 30 29 29;--card-foreground: 245 244 241;--popover: 30 29 29;--popover-foreground: 245 244 241;--secondary: 39 37 37;--secondary-foreground: 245 244 241;--muted: 35 34 34;--muted-foreground: 157 155 152;--accent: 46 44 44;--accent-foreground: 245 244 241;--border: 63 61 61;--input: 63 61 61;--shadow-sm: 0 14px 28px rgb(0 0 0 / .18);--shadow-md: 0 24px 48px rgb(0 0 0 / .24);--shadow-lg: 0 36px 70px rgb(0 0 0 / .32);--shadow-xl: 0 48px 92px rgb(0 0 0 / .4)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{color:rgb(var(--foreground));background-color:rgb(var(--background));font-family:var(--font-sans);line-height:1.5;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,color-mix(in srgb,rgb(var(--background)) 84%,white),rgb(var(--background)) 18rem),rgb(var(--background));color:rgb(var(--foreground))}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at top left,rgb(var(--primary) / .08),transparent 26rem),linear-gradient(180deg,rgb(255 255 255 / .5),transparent 24rem)}:root[data-theme=dark] body{background:linear-gradient(180deg,rgb(var(--background)),color-mix(in srgb,rgb(var(--background)) 90%,black)),rgb(var(--background))}:root[data-theme=dark] body:before{background:radial-gradient(circle at top left,rgb(var(--primary) / .14),transparent 24rem),linear-gradient(180deg,transparent,rgb(0 0 0 / .24))}h1,h2,h3,h4,h5,h6{color:rgb(var(--foreground));font-family:var(--font-sans);font-weight:800;letter-spacing:0;line-height:.94}h1{font-size:clamp(3rem,7vw,5.25rem)}h2{font-size:clamp(2rem,4vw,3.35rem)}h3{font-size:clamp(1.35rem,2vw,1.8rem)}p{color:rgb(var(--foreground))}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgb(var(--ring) / .48);outline-offset:3px}button{cursor:pointer;border:0;background:none}ul,ol{list-style:none}img,video{display:block;max-width:100%;height:auto}::selection{color:rgb(var(--primary-foreground));background:rgb(var(--primary))}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:rgb(var(--background))}::-webkit-scrollbar-thumb{background:rgb(var(--accent));border-radius:999px}::-webkit-scrollbar-thumb:hover{background:rgb(var(--muted-foreground) / .45)}.container{width:min(100% - 2rem,1320px);margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.distance-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:var(--radius-md);padding:.22rem .46rem;font-size:.68rem;font-weight:800;letter-spacing:.08em;line-height:1}.distance-badge.md{padding:.34rem .58rem;font-size:.75rem}.distance-short{color:#4ade80;background:#4ade801f;border-color:#4ade8040}.distance-mid{color:#60a5fa;background:#60a5fa1f;border-color:#60a5fa40}.distance-long{color:#c084fc;background:#c084fc1f;border-color:#c084fc40}.distance-marathon{color:#fb7185;background:#fb71851f;border-color:#fb718540}.distance-ultra{color:#fbbf24;background:#fbbf241f;border-color:#fbbf2440}.status-pill{display:inline-flex;align-items:center;border-radius:var(--radius-md);padding:.38rem .58rem;font-size:.66rem;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase}.status-open{color:rgb(var(--primary-foreground));background:rgb(var(--primary))}.status-soon{color:#fde68a;background:#78350f}.status-closed{color:rgb(var(--destructive-foreground));background:rgb(var(--destructive))}.status-tba{color:rgb(var(--muted-foreground));background:rgb(var(--muted))}.masonry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem}.masonry-item{min-width:0}[hidden],.is-hidden{display:none!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:fadeUp .55s var(--transition-slow) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.navbar{position:sticky;top:0;z-index:100;border-bottom:1px solid rgb(var(--border) / .82);background:rgb(var(--background) / .94);backdrop-filter:blur(18px)}.nav-content{display:flex;align-items:center;justify-content:space-between;gap:.85rem;min-height:4.4rem}.brand{display:inline-flex;align-items:center;gap:.72rem;min-width:0}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:1.95rem;height:1.95rem;color:rgb(var(--primary-foreground));background:rgb(var(--primary));border-radius:var(--radius-md);font-family:var(--font-display);font-size:1.42rem;line-height:1}.brand-copy{display:grid;gap:.02rem}.brand-word{font-family:var(--font-display);font-size:1.62rem;line-height:.92;letter-spacing:.02em}.brand-tag{color:rgb(var(--muted-foreground));font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-left:auto}.nav-links{display:none}.browse-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:0 1rem;white-space:nowrap;color:rgb(var(--primary-foreground));background:rgb(var(--primary));border-radius:var(--radius-lg);font-size:.82rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;transition:transform var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.browse-link:hover,.browse-link:focus-visible{transform:translateY(-1px);background:color-mix(in srgb,rgb(var(--primary)) 88%,white);box-shadow:var(--shadow-md)}.main-content{flex:1;display:flex;flex-direction:column}.footer{margin-top:auto;padding:clamp(2.5rem,6vw,4rem) 0 1.5rem;border-top:1px solid rgb(var(--border))}.footer-bottom{padding:.5rem 0;color:rgb(var(--muted-foreground));font-size:.82rem;font-weight:700}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;border-radius:var(--radius-lg);border:1px solid rgb(var(--border));color:rgb(var(--muted-foreground));background:rgb(var(--card));cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.theme-toggle:hover,.theme-toggle:focus-visible{color:rgb(var(--foreground));border-color:rgb(var(--primary) / .42);background:rgb(var(--card));box-shadow:var(--shadow-md);transform:translateY(-1px)}.icon-moon{display:none}.icon-sun{display:block}:root[data-theme=light] .icon-sun{display:none}:root[data-theme=light] .icon-moon{display:block}@media(max-width:960px){.browse-link{display:none}}@media(max-width:560px){.nav-content{min-height:4rem}.brand-word{font-size:1.42rem}.brand-tag{display:none}.theme-toggle{width:2.5rem;height:2.5rem}.nav-actions{gap:.55rem}}
