:root{--paper:#f2eee6;--paper-2:#e7e0d2;--ink:#1a1c1e;--ink-body:#4a4e52;--ink-soft:#3a3d40;--steel:#46617a;--steel-hover:#3d566c;--steel-shadow:#33485a;--brown:#8a5a2b;--moss:#4e5533;--yellow:#f2b705;--mono-grey:#9a938a;--footer-link:#b9b2a5;--border-card:#00000017;--border-outline:#00000029;--border-divider:#0000001f;--maxw:1240px;--pad-x:28px}*{box-sizing:border-box}html,body{margin:0;padding:0}img{max-width:100%}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-family:Barlow,system-ui,sans-serif}a{color:var(--steel);text-decoration:none}a:hover{color:var(--steel-hover)}h1,h2,h3,h4{margin:0;font-family:Archivo,sans-serif}h1:focus,h1:focus-visible{outline:none}.mono{font-family:Space Mono,monospace}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.fade-in{animation:.4s fade}.rise-in{animation:.5s both rise}.hov-lift{transition:transform .18s,box-shadow .18s}.hov-lift:hover{transform:translateY(-4px)}.container{max-width:var(--maxw);padding:0 var(--pad-x);margin:0 auto}.section{padding-top:56px;padding-bottom:56px}.section-last{padding-bottom:76px}.page-header{padding:44px 0 30px}.eyebrow{color:var(--steel);letter-spacing:2px;margin-bottom:8px;font-family:Space Mono,monospace;font-size:12px}.h-hero{letter-spacing:-1.5px;font-size:60px;font-weight:900;line-height:.98}.h-section{letter-spacing:-.5px;font-size:34px;font-weight:800}.h-page{letter-spacing:-1px;font-size:48px;font-weight:900}.lead{color:var(--ink-soft);font-size:18px;font-weight:500;line-height:1.55}.muted{color:var(--ink-body)}.btn{cursor:pointer;text-align:center;border:0;border-radius:8px;align-items:center;gap:8px;padding:13px 24px;font-family:inherit;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.btn-steel{background:var(--steel);color:#fff;box-shadow:0 6px 16px #46617a52}.btn-steel:hover{color:#fff;background:var(--steel-hover)}.btn-outline{border:1px solid var(--border-outline);color:var(--ink);background:#fff}.btn-outline:hover{color:var(--ink)}.btn-sm{padding:9px 16px;font-size:13.5px}.btn-block{justify-content:center;width:100%}.btn:disabled{opacity:.6;cursor:not-allowed}.chip{letter-spacing:.5px;color:var(--ink-body);background:#0000000f;border-radius:6px;align-items:center;padding:4px 10px;font-family:Space Mono,monospace;font-size:11px;display:inline-flex}.card{border:1px solid var(--border-card);background:#fff;border-radius:12px}.card-pad{padding:18px 18px 20px}.grid{gap:20px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-5{grid-template-columns:repeat(5,1fr);gap:14px}@media (width<=900px){.grid-3,.grid-5{grid-template-columns:repeat(2,1fr)}.h-hero{font-size:44px}.h-page{font-size:36px}}@media (width<=720px){.grid-2{grid-template-columns:1fr}}@media (width<=560px){:root{--pad-x:18px}.grid-2,.grid-3,.grid-5{grid-template-columns:1fr}.section{padding-top:40px;padding-bottom:40px}.h-hero{font-size:38px}.hero .body{padding:48px 18px 52px}.hero h1{letter-spacing:-.5px;font-size:30px}.next-event .text{padding:28px 24px}.next-event h3{font-size:30px}.success-panel{padding:28px 22px}.btn{padding:12px 20px}}.field{margin-bottom:16px;display:block}.field label{letter-spacing:1px;color:var(--mono-grey);text-transform:uppercase;margin-bottom:6px;font-family:Space Mono,monospace;font-size:11px;display:block}.field input,.field textarea,.field select{border:1px solid var(--border-outline);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:11px 13px;font-family:inherit;font-size:14px}.field textarea{resize:vertical;min-height:110px}.validation-message{color:#b23b3b;margin-top:4px;font-size:12.5px}.type-competition{background:var(--steel);color:#fff}.type-clubmeet{background:var(--moss);color:#fff}.type-trailrun{background:var(--brown);color:#fff}.type-scaletrail{color:#fff;background:#2e3a42}.type-joinfriends{color:#fff;background:#5b6236}.type-nationalevent{color:#fff;background:#8e2a2a}.parts-list{border-top:1px solid var(--border-card);margin:10px 0 0}.parts-row{border-bottom:1px solid var(--border-card);gap:16px;padding:9px 0;font-size:14.5px;display:flex}.parts-row dt{color:var(--ink);flex:0 0 34%;margin:0;font-weight:700}.parts-row dd{color:var(--ink-soft);flex:1;margin:0}@media (width<=560px){.parts-row{flex-direction:column;gap:2px}.parts-row dt{flex:none}}.kind-build{background:var(--steel)}.kind-event{background:var(--moss)}.kind-venue{background:var(--brown)}.kind-club{background:#6b4f6b}.shell{background:var(--paper);flex-direction:column;min-height:100vh;display:flex}.shell main{flex:1}.site-header{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-card);background:#fffffff5;position:sticky;top:0}.site-header .bar{max-width:var(--maxw);padding:0 var(--pad-x);flex-wrap:wrap;align-items:center;gap:28px;min-height:66px;margin:0 auto;display:flex}.logo{flex:none;align-items:center;display:flex}.logo-img{width:auto;height:52px;display:block}.nav{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.nav-link{color:var(--ink-body);border-radius:6px;padding:8px 12px;font-size:14px;font-weight:600;transition:color .15s}.nav-link:hover,.nav-link.active{color:var(--ink)}.header-right{flex-wrap:wrap;flex:none;align-items:center;gap:12px;margin-left:auto;display:flex}.header-cta{background:var(--steel);color:#fff;box-shadow:0 2px 0 var(--steel-shadow);border-radius:7px;padding:9px 16px;font-size:13.5px;font-weight:700}.header-cta:hover{color:#fff}.divider{background:var(--border-divider);width:1px;height:26px}.admin-gear{color:var(--ink-body);letter-spacing:.3px;border:1px solid #00000024;border-radius:7px;align-items:center;gap:7px;padding:7px 11px;font-size:12.5px;font-weight:600;display:flex;position:relative}.admin-gear:hover{color:var(--ink)}.admin-badge{background:var(--steel);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-7px;right:-7px}.account{color:var(--ink-body);align-items:center;gap:10px;font-size:13px;display:flex}.account form{margin:0}.linkbtn{font:inherit;color:var(--steel);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.linkbtn:hover{color:var(--steel-hover)}.nav-toggle,.nav-burger{display:none}@media (width<=960px){.site-header .bar{flex-wrap:wrap;gap:0 14px;min-height:0;padding-top:10px;padding-bottom:10px}.logo{margin-right:auto}.nav-burger{cursor:pointer;border:1px solid var(--border-outline);background:#fff;border-radius:8px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:40px;padding:0 11px;display:inline-flex}.nav-burger span{background:var(--ink);border-radius:2px;height:2px;display:block}.nav,.header-right{width:100%;display:none}.nav-toggle:checked~.nav,.nav-toggle:checked~.header-right{flex-direction:column;align-items:stretch;gap:6px;width:100%;margin:8px 0 0;display:flex}.nav-toggle:checked~.nav{border-top:1px solid var(--border-card);padding-top:12px}.nav-link{padding:11px 6px;font-size:15px}.header-right .divider{display:none}.header-cta{justify-content:center}.account{justify-content:space-between;padding:4px 2px}}.site-footer{background:var(--ink);color:var(--footer-link)}.footer-stripe{background:repeating-linear-gradient(-45deg, var(--yellow) 0 16px, var(--ink) 16px 32px);height:5px}.footer-inner{max-width:var(--maxw);flex-wrap:wrap;justify-content:space-between;gap:20px;margin:0 auto;padding:40px 28px 26px;display:flex}.footer-blurb{max-width:280px}.footer-blurb .name{color:#fff;margin-bottom:10px;font-family:Archivo;font-size:15px;font-weight:800}.footer-blurb p{margin:0;font-size:13px;line-height:1.6}.footer-cols{flex-wrap:wrap;gap:48px;display:flex}.footer-col{flex-direction:column;gap:9px;font-size:13.5px;display:flex}.footer-eyebrow{color:var(--yellow);letter-spacing:1.5px;margin-bottom:4px;font-size:10px}.footer-col a{color:var(--footer-link)}.footer-legal{max-width:var(--maxw);color:#75706a;border-top:1px solid #ffffff14;margin:0 auto;padding:18px 28px 26px;font-size:12px}.page-hero{background:linear-gradient(180deg, #ede7db, var(--paper));border-bottom:1px solid #0000000f}.page-hero .inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding:44px 0 40px;display:flex}.page-hero .intro{max-width:560px}.page-hero h1{letter-spacing:-1px;margin:0 0 14px;font-size:48px;font-weight:900}.page-hero p{color:var(--ink-body);margin:0;font-size:16px;line-height:1.55}@media (width<=900px){.page-hero h1{font-size:36px}}.hero{background:#ede7db;border-bottom:1px solid #00000014;position:relative;overflow:hidden}.hero-media{background-position:50%;background-size:cover;position:absolute;inset:0}.hero-fade-x{pointer-events:none;background:linear-gradient(90deg,#ede7db 26%,#ede7dbd1 44%,#ede7db59 66%,#ede7db00 100%);position:absolute;inset:0}.hero-fade-y{pointer-events:none;background:linear-gradient(#ede7db8c,#ede7db00 34% 62%,#ede7dbe6);position:absolute;inset:0}.hero .body{max-width:var(--maxw);margin:0 auto;padding:74px 28px 80px;position:relative}.hero-stats{position:relative}.hero .col{max-width:600px}.hero-pill{background:#46617a1a;border:1px solid #46617a4d;border-radius:100px;align-items:center;gap:9px;margin-bottom:22px;padding:6px 14px;display:inline-flex}.hero-pill .dot{background:var(--steel);border-radius:50%;width:7px;height:7px}.hero-pill .mono{color:var(--steel);letter-spacing:1.5px;font-size:11px}.hero h1{color:var(--ink);letter-spacing:-1.5px;margin:0 0 20px;font-size:60px;font-weight:900;line-height:.98}.hero h1 .accent{color:var(--steel)}.hero p{color:var(--ink-soft);max-width:500px;margin:0 0 30px;font-size:18px;font-weight:500;line-height:1.55}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.hero-stats{border-top:1px solid var(--border-card);background:#ffffffb8}.hero-stats .row{max-width:var(--maxw);grid-template-columns:repeat(4,1fr);margin:0 auto;padding:0 28px;display:grid}.hero-stat{border-right:1px solid #00000014;padding:20px 4px;display:block}.hero-stat:last-child{border-right:0}.hero-stat .num{color:var(--steel);font-family:Archivo;font-size:30px;font-weight:800;line-height:1}.hero-stat .lbl{color:#8a857b;letter-spacing:1px;margin-top:5px;font-size:11px}@media (width<=760px){.hero h1{font-size:44px}.hero-stats .row{grid-template-columns:repeat(2,1fr)}.hero-media,.hero-fade-x,.hero-fade-y{display:none}}.quicklink{color:#fff;border-radius:12px;padding:24px 20px;display:block}.quicklink .emoji{margin-bottom:36px;font-size:26px}.quicklink h3{color:#fff;margin-bottom:6px;font-size:19px;font-weight:800}.quicklink p{color:#fff;opacity:.9;margin:0;font-size:12.5px;line-height:1.5}.quicklink:hover{color:#fff}.quicklink.light{border:1px solid var(--border-card);color:var(--ink);background:#fff}.quicklink.light:hover,.quicklink.light h3{color:var(--ink)}.quicklink.light p{color:var(--ink-body);opacity:1}.band{background:var(--paper-2);border-top:1px solid #0000000f;border-bottom:1px solid #0000000f}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px;display:flex}.build-card{border:1px solid var(--border-card);background:#fff;border-radius:12px;display:block;overflow:hidden}.build-card .img{background-position:50%;background-size:cover;height:158px;position:relative;overflow:hidden}.build-card .tag{color:#fff;letter-spacing:1px;background:#00000080;border-radius:5px;padding:4px 9px;font-size:10px;position:absolute;top:12px;left:14px}.build-card .likes{color:#fff;background:#00000080;border-radius:5px;padding:3px 8px;font-size:11px;position:absolute;bottom:12px;right:14px}.build-card h3{margin-bottom:6px;font-size:20px;font-weight:800}.build-card .truck{color:#8a857b;margin-bottom:10px;font-size:11px}.build-card .blurb{color:var(--ink-body);margin:0 0 12px;font-size:13.5px;line-height:1.55}.build-card .owner{color:var(--ink-body);font-size:12.5px;font-weight:600}.img-fallback{background:repeating-linear-gradient(-45deg,#33414d 0 12px,#2b3740 12px 24px)}.next-event{background:var(--ink);border-radius:16px;grid-template-columns:1.1fr 1fr;display:grid;overflow:hidden;box-shadow:0 14px 40px #0000002e}.next-event .text{color:#fff;flex-direction:column;justify-content:center;padding:44px;display:flex}.next-event h3{letter-spacing:-1px;color:#fff;margin-bottom:14px;font-family:Archivo;font-size:38px;font-weight:900;line-height:1.02}.next-event .loc{color:#cfc8bb;margin-bottom:6px;font-size:15px}.next-event .date{color:#8f897d;margin-bottom:26px;font-size:12px}.next-event .media{background:repeating-linear-gradient(-45deg,#23262a 0 14px,#1f2226 14px 28px) 50%/cover;min-height:220px;position:relative}@media (width<=760px){.next-event{grid-template-columns:1fr}}.event-row{border:1px solid var(--border-card);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:14px;padding:18px 20px;display:flex}.event-date{text-align:center;flex:none;width:64px}.event-date .d{color:var(--ink);font-family:Archivo;font-size:26px;font-weight:900;line-height:1}.event-date .m{letter-spacing:1px;color:#8a857b;font-size:11px}.event-main{flex:1;min-width:200px}.event-main h3{margin-right:10px;font-size:20px;font-weight:800;display:inline}.event-loc{color:var(--ink-body);margin-top:4px;font-size:14px}.event-meta{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:8px;display:flex}@media (width<=560px){.event-row{grid-template-columns:auto 1fr;align-items:start;gap:10px 18px;display:grid}.event-date{grid-area:1/1}.event-main{grid-area:1/2;min-width:0}.event-meta{text-align:left;grid-area:2/2;align-items:flex-start}.event-main h3{margin-right:0;display:block}}.chip-away{color:var(--steel);background:#46617a1f}.chip-type{color:#fff}.venue-card{cursor:pointer;overflow:hidden}.venue-card .img{height:150px;position:relative}.venue-card .body{padding:16px 18px 18px}.venue-card h3{margin-bottom:6px;font-size:20px;font-weight:800}.venue-card .region{color:var(--ink-body);margin-bottom:8px;font-size:13.5px}.venue-card .blurb{color:var(--ink-body);margin:0;font-size:13.5px;line-height:1.5}.chip-abs{position:absolute;top:12px;left:12px}.ruleset-card{border:1px solid var(--border-card);background:#fff;border-radius:12px;gap:16px;padding:22px;display:flex}.pdf-tile{border:1px solid var(--border-outline);color:#8a857b;border-radius:8px;flex:none;justify-content:center;align-items:center;width:52px;height:60px;font-size:10px;font-weight:700;display:flex}.ruleset-tile{flex:none;justify-content:center;align-items:center;width:60px;height:68px;display:flex}.ruleset-logo{object-fit:contain;border-radius:8px;max-width:60px;max-height:68px}.pdf-icon{display:block}.ruleset-card h3{margin-right:10px;font-size:20px;font-weight:800;display:inline}.ruleset-card .desc{color:var(--ink-body);margin:10px 0 12px;font-size:13.5px;line-height:1.5}.county-col{padding:22px}.county-head{border-bottom:1px solid var(--border-card);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:12px;font-size:19px;font-weight:800;display:flex}.county-head .dot{background:var(--steel);border-radius:50%;width:8px;height:8px}.club-item{color:var(--ink);border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:11px 2px;font-size:14px;display:flex}.bh-layout{grid-template-columns:220px minmax(0,1fr);gap:40px;display:grid}.bh-nav{position:sticky;top:82px}.bh-nav a{color:var(--ink-body);border-left:2px solid var(--border-card);padding:7px 0 7px 12px;font-size:13.5px;display:block}.bh-nav a:hover{border-left-color:var(--steel);color:var(--ink)}@media (width<=820px){.bh-layout{grid-template-columns:minmax(0,1fr);gap:22px}.bh-layout>aside{display:none}}.bh-sections{flex-direction:column;gap:16px;display:flex}.bh-section{border:1px solid var(--border-card);background:#fff;border-radius:14px;padding:22px 24px;scroll-margin-top:82px;transition:transform .18s,box-shadow .18s}.bh-section:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000014}.bh-section h2{margin-bottom:10px;font-size:22px;font-weight:800}.bh-section .body{white-space:pre-line;color:var(--ink-soft);font-size:15px;line-height:1.7}.bh-section.has-media{align-items:center;gap:26px;display:flex}.bh-section.has-media .bh-text{flex:auto;min-width:0}.bh-section.has-media .bh-media{flex:0 0 40%;max-width:340px}.bh-section.has-media .bh-media img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.bh-section.has-media:nth-of-type(2n){flex-direction:row-reverse}@media (width<=720px){.bh-section.has-media,.bh-section.has-media:nth-of-type(2n){flex-direction:column;align-items:stretch;gap:16px}.bh-section.has-media .bh-media,.bh-section.has-media .bh-text{flex:none}.bh-section.has-media .bh-media{max-width:none}.bh-section.has-media .bh-media img{aspect-ratio:16/9}}.type-picker{grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0 26px;display:grid}.type-opt{text-align:left;border:1px solid var(--border-card);cursor:pointer;background:#fff;border-radius:12px;padding:16px;font-family:inherit}.type-opt.selected{border-color:var(--steel);box-shadow:0 0 0 1px var(--steel)}.type-opt .emoji{font-size:22px}.type-opt h4{margin:8px 0 4px;font-size:15px;font-weight:800}.type-opt p{color:var(--ink-body);margin:0;font-size:12.5px}@media (width<=700px){.type-picker{grid-template-columns:repeat(2,1fr)}}.tabs{border-bottom:1px solid var(--border-card);flex-wrap:wrap;gap:6px;margin-bottom:26px;display:flex}.tab{color:var(--ink-body);cursor:pointer;background:0 0;border:0;border-radius:8px 8px 0 0;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:700}.tab.active{background:var(--ink);color:#fff}.stat-cards{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:26px;display:grid}.stat-card{border:1px solid var(--border-card);text-align:left;background:#fff;border-radius:12px;padding:22px;font-family:inherit}.stat-card.clickable{cursor:pointer;transition:box-shadow .15s,border-color .15s}.stat-card.clickable:hover{border-color:var(--steel)}.stat-card.active{border-color:var(--steel);box-shadow:0 0 0 1px var(--steel)}.stat-card .n{font-family:Archivo;font-size:34px;font-weight:900}.stat-card .l{letter-spacing:1px;color:#8a857b;margin-top:4px;font-size:11px}.queue-card{border:1px solid var(--border-card);background:#fff;border-radius:12px;grid-template-columns:150px 1fr auto;margin-bottom:16px;display:grid;overflow:hidden}.queue-kind{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.queue-kind .icon{font-size:28px}.queue-kind .label{letter-spacing:1px;font-family:Space Mono,monospace;font-size:12px}.queue-body{padding:20px}.queue-body h3{margin-bottom:4px;font-size:20px;font-weight:800}.queue-body .meta{color:#8a857b;margin-bottom:10px;font-family:Space Mono,monospace;font-size:12px}.queue-actions{flex-direction:column;justify-content:center;gap:10px;padding:20px;display:flex}.toast{background:var(--ink);color:#fff;z-index:100;border-radius:10px;padding:14px 20px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #00000040}.table-scroll{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:520px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-card);padding:12px 14px;font-size:14px}.admin-table th{letter-spacing:1px;color:#8a857b;text-transform:uppercase;font-family:Space Mono,monospace;font-size:11px}.btn-danger{border:1px solid var(--border-outline);color:#b23b3b;background:#fff}.btn-approve{background:var(--moss);color:#fff}@media (width<=700px){.queue-card,.stat-cards{grid-template-columns:1fr}}.modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s fade;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:85vh;overflow:auto}.modal .head{border-bottom:1px solid var(--border-card);padding:24px 26px}.modal .content{padding:24px 26px}.modal .close{cursor:pointer;color:var(--ink-body);float:right;background:0 0;border:0;font-size:22px;line-height:1}.success-panel{border:1px solid var(--border-card);text-align:center;background:#fff;border-radius:16px;padding:40px}.success-panel .check{background:var(--moss);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 18px;font-size:28px;display:flex}
