/* On Seven Club — public athlete roster */
body[data-page="athletes"] .athletes-hero{background:radial-gradient(circle at 78% 42%,rgba(251,191,36,.24),transparent 27%),linear-gradient(112deg,#111827 0%,#2a2230 48%,#9a3f0c 100%)!important}
.athletes-page{background:#FEFBE8}.athletes-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px;margin-bottom:42px}.athletes-heading h2{margin:22px 0 14px;font:clamp(42px,5vw,68px)/.98 var(--font-heading);letter-spacing:-.05em}.athletes-heading h2 em{color:#F97316;font-weight:400}.athletes-heading>div:first-child>p:last-child{max-width:560px;margin:0;color:rgba(17,24,39,.58);font-size:12px;line-height:1.8}.athletes-tools{display:flex;align-items:flex-end;gap:18px}.athlete-count{min-width:108px;display:grid;gap:3px;padding:13px 15px;border-left:4px solid #F97316;background:#fff6dc}.athlete-count b{font:800 28px/1 var(--font-heading);color:#111827}.athlete-count small{font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:rgba(17,24,39,.5)}.athlete-search{width:min(300px,36vw);display:grid;gap:8px}.athlete-search>span{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#111827}.athlete-search input{width:100%;height:48px;padding:0 14px;border:1px solid rgba(17,24,39,.16);outline:0;background:#fffdf8;color:#111827;font:11px var(--font-body);transition:border-color .2s ease,box-shadow .2s ease}.athlete-search input:focus{border-color:#F97316;box-shadow:0 0 0 3px rgba(249,115,22,.12)}
.athlete-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.athlete-card{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:0 15px 38px rgba(17,24,39,.07);transition:transform .24s ease,box-shadow .24s ease}.athlete-card:hover{transform:translateY(-5px);box-shadow:0 22px 54px rgba(249,115,22,.15)}.athlete-photo{position:relative;aspect-ratio:3/4;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#FDE68A,#FB923C)}.athlete-photo:before{content:"";position:absolute;width:72%;aspect-ratio:1;border:1px solid rgba(17,24,39,.12);border-radius:50%}.athlete-photo:after{content:"";position:absolute;left:-30%;right:-30%;bottom:-27%;height:50%;border-radius:50%;background:rgba(17,24,39,.09)}.athlete-photo img{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.athlete-photo b{position:relative;z-index:1;color:rgba(17,24,39,.46);font:800 clamp(44px,5vw,76px)/1 var(--font-heading)}.athlete-number{position:absolute;z-index:3;top:13px;right:13px;min-width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#111827;color:#FBBF24;font-size:7px;font-weight:800;letter-spacing:.08em}.athlete-copy{padding:18px 18px 20px}.athlete-copy p{margin:0 0 7px;color:#F97316;font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.athlete-copy h3{margin:0;font:700 18px/1.35 var(--font-heading);color:#111827}.athlete-copy small{display:flex;align-items:center;gap:7px;margin-top:10px;color:rgba(17,24,39,.52);font-size:8px}.athlete-copy small:before{content:"";width:7px;height:7px;border-radius:50%;background:#FBBF24;box-shadow:0 0 0 3px rgba(251,191,36,.16)}.athlete-grid .empty{grid-column:1/-1;padding:56px 20px;border:1px dashed rgba(17,24,39,.18);background:#fff8e5;color:rgba(17,24,39,.6)}
@media(max-width:1050px){.athlete-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.athletes-heading{grid-template-columns:1fr;align-items:start;gap:26px}.athletes-tools{width:100%}.athlete-search{width:100%;flex:1}.athlete-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.athletes-page{padding:70px 20px}.athletes-heading{margin-bottom:28px}.athletes-heading h2{font-size:42px}.athletes-tools{align-items:stretch;flex-direction:column}.athlete-count{width:100%;grid-template-columns:auto 1fr;align-items:end;gap:10px}.athlete-search{width:100%}.athlete-grid{grid-template-columns:1fr 1fr;gap:10px}.athlete-copy{padding:13px 12px 15px}.athlete-copy h3{font-size:14px}.athlete-copy small{font-size:7px}.athlete-number{top:9px;right:9px;min-width:27px;height:27px}.athlete-photo b{font-size:42px}}
@media(max-width:390px){.athlete-grid{grid-template-columns:1fr}}

/* Keep the expanded 8-item desktop navigation tidy. */
@media(min-width:821px){.site-header nav{gap:18px}.site-header nav>a,.nav-group>button{font-size:8px}.site-header{gap:2.8vw}}
