/* Brands v2 mockup: calm index + brand pages. Night tokens from night.css. */
#brandsHub.bv-index,#brandsHub.bv-page{max-width:1180px;margin:0 auto}
.bv-top h1{font:400 clamp(56px,8vw,112px)/.9 var(--disp,'Anton'),sans-serif;text-transform:uppercase;margin:24px 0 8px;color:var(--ink)}
.bv-group{margin:44px 0 0}
.bv-group h2,.bv-eyebrow{display:flex;align-items:center;gap:10px;font:600 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.bv-group h2 i,.bv-eyebrow i{width:18px;height:2px;background:var(--fc)}
.bv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line2)}
.bv-tile{display:flex;flex-direction:column;gap:6px;padding:18px 18px 18px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;min-height:104px}
.bv-tile:hover .bv-name,.bv-tile:focus-visible .bv-name{color:var(--blue-hi)}
.bv-tile:focus-visible{outline:3px solid var(--blue-hi);outline-offset:3px}
.bv-name{font:400 21px/1.05 'Anton',sans-serif;text-transform:uppercase;letter-spacing:.01em}
.bv-desc{color:var(--muted);font-size:13px;line-height:1.35}
.bv-stat{margin-top:auto;font-size:12px;color:var(--dim,#6c6e78);display:flex;align-items:center;gap:7px}
.bv-stat.on{color:var(--blue-hi)}
.bv-stat i{width:6px;height:6px;border-radius:50%;background:var(--blue-hi)}
/* Brand page */
.bv-hero{padding:8px 0 30px;border-bottom:1px solid var(--line2)}
.bv-back{display:inline-block;color:var(--muted);text-decoration:none;font:600 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:6px 0 26px}
.bv-back:hover{color:var(--blue-hi)}
.bv-hero h1{font:400 clamp(56px,8.5vw,124px)/.9 var(--disp,'Anton'),sans-serif;text-transform:uppercase;margin:14px 0 18px;color:var(--ink);overflow-wrap:normal;word-break:normal;hyphens:none}
.bv-hero h1 span{color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.bv-hero p{color:var(--muted);max-width:560px;margin:0 0 22px;font-size:15px;line-height:1.5}
.bv-act{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.bv-act .primary{text-decoration:none}
.bv-alert{background:transparent;border:1px solid var(--line2);color:var(--ink);border-radius:999px;padding:11px 16px;font:600 13px var(--sans);cursor:pointer}
.bv-alert[aria-pressed=true]{border-color:var(--blue-hi);color:var(--blue-hi)}
.bv-filter{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 0}
.bv-filter button{background:transparent;border:1px solid var(--line2);color:var(--muted);border-radius:999px;padding:7px 13px;font:600 12px var(--sans);cursor:pointer}
.bv-filter button[aria-pressed=true]{border-color:var(--blue-hi);color:var(--blue-hi)}
.bv-sec{margin:40px 0 0}
.bv-h{font:400 28px/1 'Anton',sans-serif;text-transform:uppercase;margin:0 0 6px;display:flex;align-items:baseline;gap:10px;color:var(--ink)}
.bv-h em{font:600 12px var(--sans);color:var(--muted);font-style:normal;letter-spacing:.06em}
.bv-rows{list-style:none;margin:0;padding:0}
.bv-yr{font:600 11px/1 var(--sans);letter-spacing:.18em;color:var(--dim,#6c6e78);padding:22px 0 10px;border-bottom:1px solid var(--line2)}
.bv-row a{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.bv-row a:hover strong{color:var(--blue-hi)}
.bv-d{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.bv-d b{font:400 20px/1 'Anton',sans-serif}
.bv-d b,.bv-d i{text-transform:uppercase}
.bv-d i{font-style:normal;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.bv-n{display:flex;flex-direction:column;gap:3px;min-width:0}
.bv-n strong{font-size:15px;font-weight:600}
.bv-n small{color:var(--muted);font-size:13px}
.bv-n small em{font-style:normal;color:var(--dim,#6c6e78);margin-left:8px;padding-left:8px;border-left:1px solid var(--line2)}
.bv-s .status{white-space:nowrap}
.bv-na{font-size:12px;color:var(--dim,#6c6e78)}
.bv-more{margin-top:14px;background:transparent;border:0;color:var(--blue-hi);font:600 13px var(--sans);cursor:pointer;padding:6px 0}
.bv-empty{color:var(--muted);margin-top:30px}
@media (max-width:1000px){.bv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){
 .bv-grid{grid-template-columns:1fr}
 .bv-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:4px;min-height:0;padding:14px 0}
 .bv-name{font-size:19px;grid-column:1}.bv-desc{grid-column:1;font-size:12.5px}.bv-stat{grid-column:2;grid-row:1;margin:0;white-space:nowrap}
 .bv-hero h1{font-size:clamp(44px,13vw,64px)}
 .bv-row a{grid-template-columns:62px minmax(0,1fr);gap:4px 14px;align-items:start}
 .bv-d{flex-direction:column;gap:3px}.bv-d b{font-size:18px}
 .bv-s{grid-column:2}
 .bv-filter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.bv-filter button{flex:none}
}
/* Round 22: Race series grouped like the Find a race panels (.grp/.gh + .group-run/tri/other tints from night/photos.css) */
.bv-index .bv-top{margin-bottom:26px}
.bv-jump{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 0}
.bv-jump button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--line2);color:var(--ink);border-radius:999px;padding:8px 14px;font:600 12px var(--sans);letter-spacing:.04em;cursor:pointer}
.bv-jump button i{width:8px;height:8px;border-radius:50%;background:var(--fc)}
.bv-jump button em{font-style:normal;color:var(--muted);font-weight:500}
.bv-jump button:hover{border-color:var(--fc)}
.bv-grp{scroll-margin-top:84px}
.bv-grp .gh .bars i{background:var(--fc)}
.bv-grp .bv-grid{grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;column-gap:22px}
.bv-grp .bv-tile{padding-right:0}
.bv-cell{display:flex;flex-direction:column;border-bottom:1px solid var(--line)}
.bv-cell .bv-tile{border-bottom:0;flex:1;padding-bottom:8px}
.bv-six{color:var(--blue-hi);font:600 12px/1.35 var(--sans);text-decoration:none;padding:0 0 16px}
.bv-six:hover{color:var(--ink)}
@media (max-width:1000px){.bv-grp .bv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){
 .bv-grp .bv-grid{grid-template-columns:1fr}
 .bv-jump{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.bv-jump button{flex:none}
 .bv-cell .bv-tile{padding-bottom:4px}.bv-six{padding:0 0 14px}
}
/* Round 24: IRONMAN type chips (IRONMAN / 70.3 / 5150) */
.bv-types{margin-top:22px}
.bv-types button em{font-style:normal;color:var(--ink);margin-left:4px;opacity:.7}
.bv-types+.bv-filter{margin-top:10px}
