*{box-sizing:border-box}body{margin:0;background:#090909;color:#eee;font:15px Arial,sans-serif}a{color:inherit;text-decoration:none}header{border-bottom:1px solid #444;padding:15px 5%;display:flex;align-items:center;justify-content:space-between;gap:15px}header img{width:55px;height:55px;object-fit:contain}header a{font-weight:900;letter-spacing:.12em}main{max-width:1200px;margin:auto;padding:70px 5%}h1,h2{font-family:Impact,'Arial Narrow',sans-serif;letter-spacing:.04em}h1{font-size:clamp(54px,9vw,115px);margin:8px 0 30px;line-height:.95}h2{font-size:clamp(35px,5vw,70px);margin:12px 0}.kicker{color:#aaa;font-size:11px;letter-spacing:.3em;font-weight:900}.layout{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}.photo{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid #555}.placeholder{aspect-ratio:4/5;display:grid;place-items:center;font:220px Impact;background:radial-gradient(#333,#111);border:1px solid #555;color:#777}.details{border-top:2px solid white;padding-top:25px}.detail{border-bottom:1px solid #333;padding:18px 0;display:flex;gap:20px;justify-content:space-between}.detail span:first-child{color:#aaa;font-size:11px;letter-spacing:.18em;font-weight:900}.detail span:last-child{text-align:right;font-weight:bold}.btn{display:inline-block;background:white;color:#111;padding:17px 22px;margin:25px 10px 0 0;font-size:12px;letter-spacing:.12em;font-weight:900}.outline{background:transparent;color:white;border:1px solid #aaa}.note{color:#aaa;line-height:1.8;max-width:620px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.card{border:1px solid #555;background:#161616}.card img,.card .placeholder{height:330px;aspect-ratio:auto;width:100%;object-fit:cover}.card .placeholder{font-size:120px}.card div.body{padding:20px}.card h2{font-size:40px}.card p{color:#aaa;font-size:12px}footer{border-top:1px solid #333;padding:30px 5%;color:#aaa;font-size:12px}@media(max-width:700px){.layout,.cards{grid-template-columns:1fr}main{padding:45px 5%}header img{width:40px;height:40px}}
/* UNAFFILIATED rank insignias — exact stripe counts */
.rank-insignia{width:110px;height:46px;object-fit:contain;object-position:left center;display:block;flex:none}
.rider .rank-insignia{width:94px;height:36px;margin:10px 0 7px;filter:invert(1)}
.rider-top .rank-insignia{filter:none;width:68px;height:26px;margin:0}
.member-rank-mark{display:flex;align-items:center;gap:14px;margin:8px 0 14px}
.member-rank-mark .rank-insignia{width:100px;height:43px}

.member-photo{display:block;width:100%;max-height:650px;object-fit:cover;object-position:center;border:1px solid #333;}
