:root{--green:#1f4d3a;--green-d:#163a2b;--purple:#5b3f8c;--snow:#f6f8f7;--ink:#1d2321;--muted:#5d6763;--line:#dfe5e2;--max:1080px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6;font-size:17px}
a{color:var(--purple)}
a:hover{color:var(--green)}
img{max-width:100%;height:auto}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
header.site{background:var(--green);color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 1px 0 rgba(0,0,0,.15)}
header.site .wrap{display:flex;align-items:center;gap:20px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:700;font-size:1.15rem;letter-spacing:.2px}
.brand img{width:44px;height:44px;border-radius:50%;background:#fff}
nav.main{margin-left:auto}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px}
nav.main a{display:block;color:#e8f0ec;text-decoration:none;padding:8px 12px;border-radius:6px;font-size:.95rem}
nav.main a:hover,nav.main a[aria-current]{background:rgba(255,255,255,.14);color:#fff}
#navtoggle{display:none}
.navbtn{display:none;margin-left:auto;cursor:pointer;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:6px 10px;font-size:.95rem}
@media (max-width:860px){
 .navbtn{display:block}
 nav.main{display:none;width:100%;margin:0 0 10px}
 nav.main ul{flex-direction:column}
 #navtoggle:checked ~ nav.main{display:block}
}
.hero{position:relative;color:#fff;background:#244 url(images/phoenix_xc_header_powder.jpg) center/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,30,22,.35),rgba(10,30,22,.65))}
.hero .wrap{position:relative;padding:110px 20px 90px}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin:0 0 10px;line-height:1.1}
.hero p{font-size:1.15rem;max-width:640px;margin:0 0 22px}
.pagehead{background:var(--green-d) url(images/phoenix_xc_bg_green_trees.png) center/cover;color:#fff;position:relative}
.pagehead::before{content:"";position:absolute;inset:0;background:rgba(15,40,30,.55)}
.pagehead .wrap{position:relative;padding:54px 20px 44px}
.pagehead h1{margin:0;font-size:clamp(1.7rem,4vw,2.4rem)}
.subnav{background:var(--snow);border-bottom:1px solid var(--line)}
.subnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.subnav a{display:block;padding:12px 14px;text-decoration:none;color:var(--muted);font-size:.95rem;border-bottom:3px solid transparent}
.subnav a[aria-current]{color:var(--green);border-color:var(--green);font-weight:600}
main{padding:40px 0 60px}
main h2{color:var(--green);margin:2.2em 0 .5em;font-size:1.5rem;line-height:1.25}
main h2:first-child{margin-top:0}
main h3{margin:1.6em 0 .4em;font-size:1.15rem}
.prose{max-width:760px}
.btn{display:inline-block;background:var(--purple);color:#fff;text-decoration:none;padding:11px 20px;border-radius:8px;font-weight:600;margin:4px 8px 4px 0}
.btn:hover{background:#4a3274;color:#fff}
.btn.alt{background:transparent;border:2px solid currentColor;color:inherit}
.hero .btn.alt{color:#fff}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{border:1px solid var(--line);border-radius:12px;padding:22px;background:#fff}
.card h3{margin-top:0;color:var(--green)}
.band{background:var(--snow);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:44px 0}
.note{background:#fff8e1;border:1px solid #f0d98a;border-radius:10px;padding:14px 18px;margin:18px 0}
.missing{background:var(--snow);border:2px dashed #c3ccc8;border-radius:10px;padding:26px;text-align:center;color:var(--muted);margin:18px 0}
table{border-collapse:collapse;width:100%;font-size:.93rem}
th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line)}
th{background:var(--snow)}
.tablewrap{overflow-x:auto}
.sponsors{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin:18px 0}
.sponsors img{max-height:70px;width:auto;max-width:170px;object-fit:contain}
.post{border-bottom:1px solid var(--line);padding:0 0 22px;margin:0 0 26px}
.post h3{margin:0 0 2px;color:var(--green);font-size:1.2rem}
.meta{color:var(--muted);font-size:.9rem;margin:0 0 10px}
details{border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:14px 0}
details summary{cursor:pointer;font-weight:600}
footer.site{background:var(--green-d);color:#cfdcd6;padding:36px 0;font-size:.93rem}
footer.site a{color:#fff}
footer.site .grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
footer.site h4{color:#fff;margin:0 0 8px}
