.hyve-hacker-roster {
 --roster-height:var(--roster-height-desktop,clamp(560px,38vw,720px));
 --roster-name-size:var(--roster-name-size-desktop,clamp(96px,8.5vw,144px));
 --roster-code-size:var(--roster-code-size-desktop,clamp(28px,2.35vw,36px));
 position:relative; isolation:isolate; width:100%; background:#080b12; color:#f2f6f7; font-family:inherit;
}
.hyve-hacker-roster *, .hyve-hacker-roster *::before, .hyve-hacker-roster *::after { box-sizing:border-box; }
.hyve-hacker-roster .hyve-hacker-roster__inner { width:88%; max-width:1600px; margin-inline:auto; }
.hyve-hacker-roster .hyve-hacker-roster__stage { position:relative; height:var(--roster-height); overflow:hidden; touch-action:pan-y; }
.hyve-hacker-roster .hyve-hacker-roster__slides { position:absolute; inset:0; }
.hyve-hacker-roster .hyve-hacker-roster__slide,
.hyve-hacker-roster .hyve-hacker-roster__thumbnail {
 --roster-x:var(--roster-x-desktop,55%); --roster-y:var(--roster-y-desktop,20%); --roster-zoom:var(--roster-zoom-desktop,100);
}
.hyve-hacker-roster .hyve-hacker-roster__slide { position:absolute; inset:0; visibility:hidden; opacity:0; transition:opacity 400ms ease; pointer-events:none; }
.hyve-hacker-roster .hyve-hacker-roster__slide.is-active { visibility:visible; opacity:1; pointer-events:auto; }
.hyve-hacker-roster .hyve-hacker-roster__slide.is-leaving { visibility:visible; opacity:0; }
.hyve-hacker-roster .hyve-hacker-roster__art { position:absolute; inset:0 0 0 20%; overflow:hidden; }
.hyve-hacker-roster .hyve-hacker-roster__image { display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:var(--roster-x) var(--roster-y); }
.hyve-hacker-roster .hyve-hacker-roster__art .hyve-hacker-roster__image { transform:scale(calc(var(--roster-zoom) * .01)); transform-origin:var(--roster-x) var(--roster-y); user-select:none; }
.hyve-hacker-roster .hyve-hacker-roster__shade { position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#080b12 0%,rgba(8,11,18,.97) 20%,rgba(8,11,18,.7) 38%,rgba(8,11,18,.08) 66%,transparent 88%),linear-gradient(0deg,#080b12 0%,rgba(8,11,18,.65) 8%,transparent 35%); }
.hyve-hacker-roster .hyve-hacker-roster__heading { position:relative; padding-top:84px; z-index:2; pointer-events:none; }
.hyve-hacker-roster .hyve-hacker-roster__heading h2 { display:flex; align-items:center; gap:20px; margin:0; color:#aab5bd; font-family:inherit; font-size:14px; font-weight:500; line-height:1.4; letter-spacing:.3em; }
.hyve-hacker-roster .hyve-hacker-roster__heading h2::before { content:""; flex:0 0 32px; height:2px; background:#28ff9c; }
.hyve-hacker-roster .hyve-hacker-roster__copy { position:relative; padding-top:160px; pointer-events:none; }
.hyve-hacker-roster .hyve-hacker-roster__identifier { margin:0 0 10px; color:#28ff9c; font-size:20px; font-weight:600; font-style:italic; line-height:1.3; }
.hyve-hacker-roster .hyve-hacker-roster__identifier span { color:#dbe8ee; }
.hyve-hacker-roster .hyve-hacker-roster__name { width:max-content; max-width:100%; margin:0 0 12px; color:#f2f6f7; font-family:inherit; font-size:var(--roster-name-size); font-weight:800; font-style:italic; letter-spacing:-.045em; line-height:.98; white-space:nowrap; }
.hyve-hacker-roster .hyve-hacker-roster__code { margin:0; color:#28ff9c; font-size:var(--roster-code-size); font-weight:700; font-style:italic; line-height:1.25; }
.hyve-hacker-roster .hyve-hacker-roster__code > span { color:#89939d; }
.hyve-hacker-roster .hyve-hacker-roster__controls { position:absolute; bottom:112px; left:0; right:0; display:none; align-items:center; gap:18px; z-index:3; }
.hyve-hacker-roster.is-enhanced .hyve-hacker-roster__controls { display:flex; }
.hyve-hacker-roster .hyve-hacker-roster__arrow { display:grid; place-items:center; flex:0 0 64px; width:64px; height:64px; min-height:44px; margin:0; padding:0; border:1px solid #52606b; border-radius:50%; background:transparent; color:#f2f6f7; cursor:pointer; transition:background-color 200ms ease,color 200ms ease,border-color 200ms ease; }
.hyve-hacker-roster .hyve-hacker-roster__arrow--next { background:#28ff9c; border-color:#28ff9c; color:#080b12; }
.hyve-hacker-roster .hyve-hacker-roster__arrow:hover { background:#28ff9c; border-color:#28ff9c; color:#080b12; }
.hyve-hacker-roster .hyve-hacker-roster__arrow svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.hyve-hacker-roster .hyve-hacker-roster__counter { align-self:center; position:relative; margin:0 0 0 10px; padding-bottom:16px; color:#89939d; font-size:16px; font-variant-numeric:tabular-nums; line-height:1.3; }
.hyve-hacker-roster .hyve-hacker-roster__counter strong { color:#f2f6f7; font-weight:600; }
.hyve-hacker-roster .hyve-hacker-roster__counter::after { content:""; position:absolute; bottom:0; left:0; width:40px; height:2px; background:#28ff9c; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnails { position:relative; z-index:4; display:none; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:-24px; padding-bottom:48px; }
.hyve-hacker-roster.is-enhanced .hyve-hacker-roster__thumbnails { display:grid; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail { min-width:0; min-height:44px; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#f2f6f7; font-family:inherit; text-align:left; cursor:pointer; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail-image { display:block; aspect-ratio:2.2; overflow:hidden; border:2px solid #28323b; transition:border-color 200ms ease; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail[aria-disabled="true"] .hyve-hacker-roster__thumbnail-image,
.hyve-hacker-roster .hyve-hacker-roster__thumbnail:hover .hyve-hacker-roster__thumbnail-image { border-color:#28ff9c; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail[aria-disabled="true"] { cursor:default; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail-name { display:block; margin-top:12px; padding-inline:12px; font-size:18px; line-height:1.3; font-weight:700; }
.hyve-hacker-roster .hyve-hacker-roster__thumbnail-code { display:block; margin-top:3px; padding-inline:12px; color:#28ff9c; font-size:14px; line-height:1.3; letter-spacing:.04em; }
.hyve-hacker-roster button:focus-visible { outline:2px solid #28ff9c; outline-offset:5px; }
.hyve-hacker-roster .hyve-hacker-roster__status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
@media (768px <= width < 1200px) {
 .hyve-hacker-roster { --roster-height:var(--roster-height-tablet,clamp(520px,52vw,600px)); --roster-name-size:var(--roster-name-size-tablet,clamp(72px,9vw,104px)); --roster-code-size:var(--roster-code-size-tablet,28px); }
 .hyve-hacker-roster .hyve-hacker-roster__slide,.hyve-hacker-roster .hyve-hacker-roster__thumbnail { --roster-x:var(--roster-x-tablet,55%); --roster-y:var(--roster-y-tablet,20%); --roster-zoom:var(--roster-zoom-tablet,100); }
 .hyve-hacker-roster .hyve-hacker-roster__art { left:12%; }
 .hyve-hacker-roster .hyve-hacker-roster__heading { padding-top:56px; }
 .hyve-hacker-roster .hyve-hacker-roster__copy { padding-top:144px; }
 .hyve-hacker-roster .hyve-hacker-roster__identifier { font-size:18px; }
 .hyve-hacker-roster .hyve-hacker-roster__controls { bottom:96px; }
 .hyve-hacker-roster .hyve-hacker-roster__arrow { width:52px; height:52px; flex-basis:52px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnails { gap:12px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-name { padding-inline:4px; font-size:15px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-code { padding-inline:4px; font-size:12px; }
}
@media (width < 768px) {
 .hyve-hacker-roster { --roster-height:var(--roster-height-mobile,520px); --roster-name-size:var(--roster-name-size-mobile,clamp(52px,14vw,64px)); --roster-code-size:var(--roster-code-size-mobile,24px); }
 .hyve-hacker-roster .hyve-hacker-roster__slide,.hyve-hacker-roster .hyve-hacker-roster__thumbnail { --roster-x:var(--roster-x-mobile,54%); --roster-y:var(--roster-y-mobile,20%); --roster-zoom:var(--roster-zoom-mobile,100); }
 .hyve-hacker-roster .hyve-hacker-roster__inner { width:calc(100% - 40px); }
 .hyve-hacker-roster .hyve-hacker-roster__art { inset:0 0 auto; height:360px; }
 .hyve-hacker-roster .hyve-hacker-roster__shade { background:linear-gradient(180deg,rgba(8,11,18,.85) 0%,transparent 25%,rgba(8,11,18,.12) 40%,#080b12 72%); }
 .hyve-hacker-roster .hyve-hacker-roster__heading { padding-top:24px; }
 .hyve-hacker-roster .hyve-hacker-roster__heading h2 { gap:12px; font-size:12px; letter-spacing:.22em; }
 .hyve-hacker-roster .hyve-hacker-roster__heading h2::before { flex-basis:24px; }
 .hyve-hacker-roster .hyve-hacker-roster__copy { position:absolute; left:0; right:0; bottom:120px; padding-top:0; }
 .hyve-hacker-roster .hyve-hacker-roster__identifier { margin-bottom:12px; font-size:14px; }
 .hyve-hacker-roster .hyve-hacker-roster__name { margin-bottom:14px; }
 .hyve-hacker-roster .hyve-hacker-roster__controls { bottom:38px; gap:14px; }
 .hyve-hacker-roster .hyve-hacker-roster__arrow { width:48px; height:48px; flex-basis:48px; }
 .hyve-hacker-roster .hyve-hacker-roster__counter { font-size:14px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnails { margin-top:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; padding-bottom:32px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-image { aspect-ratio:16/9; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-name { margin-top:8px; padding-inline:2px; font-size:15px; }
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-code { padding-inline:2px; font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
 .hyve-hacker-roster .hyve-hacker-roster__slide,
 .hyve-hacker-roster .hyve-hacker-roster__arrow,
 .hyve-hacker-roster .hyve-hacker-roster__thumbnail-image { transition:none; }
}
