.fh-page{padding-bottom:60px}.fh-crumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0;color:#8fa6bb;font-size:12px;font-weight:850}.fh-crumb a{color:#d5e8f5;text-decoration:none}.fh-crumb a:hover{color:#39ff64}.fh-hero{position:relative;overflow:hidden;min-height:350px;border:1px solid #253a50;border-radius:25px;background:radial-gradient(circle at 80% 10%,#215c4a,transparent 45%),linear-gradient(125deg,#0c1a2b,#152e46);isolation:isolate}.fh-hero:before{content:"";position:absolute;inset:0;background-image:var(--fh-image);background-size:cover;background-position:center;opacity:.52;z-index:-2}.fh-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,14,26,.97),rgba(5,14,26,.72) 57%,rgba(5,14,26,.18));z-index:-1}.fh-hero-content{padding:clamp(25px,5vw,60px);max-width:780px}.fh-eyebrow{color:#39ff64;font-size:11px;letter-spacing:.15em;font-weight:950;text-transform:uppercase}.fh-hero h1{font-size:clamp(36px,5vw,70px);line-height:1.02;margin:16px 0;color:#fff;letter-spacing:-.045em}.fh-hero p{font-size:16px;color:#c1d3e3;max-width:560px;line-height:1.6}.fh-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.fh-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 26px}.fh-stats>div{background:#0e1b2c;border:1px solid #233449;border-radius:17px;padding:22px}.fh-stats strong{display:block;color:#fff;font-size:30px;font-weight:950;letter-spacing:-.04em}.fh-stats span{font-size:12px;color:#9bb1c6;font-weight:750}.fh-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:18px}.fh-panel{background:#0d1a2b;border:1px solid #233449;border-radius:22px;padding:clamp(20px,3vw,28px);min-width:0}.fh-panel h2,.fh-cta h2{font-size:clamp(22px,2.6vw,31px);color:#fff;letter-spacing:-.025em;margin:10px 0}.fh-panel p,.fh-cta p{color:#9db4c8;font-size:14px;line-height:1.6}.fh-deadline{background:radial-gradient(circle at top right,rgba(57,255,100,.13),transparent 65%),#0d1a2b}.fh-timer{color:#39ff64;font-size:clamp(26px,3vw,42px);font-weight:950;letter-spacing:.02em;margin:22px 0}.fh-popular{display:grid;gap:8px;margin-top:20px}.fh-pop-row{display:flex;align-items:center;gap:12px;background:#142439;padding:12px;border-radius:13px}.fh-pop-row>div{flex:1;min-width:0}.fh-pop-row b,.fh-pop-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fh-pop-row b{color:#e7f3ff;font-size:13px}.fh-pop-row small{color:#8fa8bf;font-size:11px;margin-top:3px}.fh-pop-row>strong{color:#39ff64;font-size:12px;white-space:nowrap}.fh-rank{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#213a4e;color:#c7e4fa;font-weight:950}.fh-stage-panel{margin-top:18px}.fh-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.fh-heading>a{color:#39ff64;font-size:13px;text-decoration:none;font-weight:800}.fh-stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.fh-stage{background:#142439;border-radius:13px;padding:15px}.fh-stage>div:first-child{display:flex;justify-content:space-between;gap:8px;color:#fff;font-size:12px}.fh-stage span{color:#9ab0c5}.fh-track{height:5px;border-radius:8px;background:#293b4e;margin-top:15px;overflow:hidden}.fh-track span{display:block;height:100%;background:#39ff64;border-radius:8px}.fh-empty{padding:25px;border:1px dashed #38516b;border-radius:12px;color:#9cb4c8;margin-top:18px}.fh-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(110deg,#123a34,#0d1a2b);border:1px solid #235b49;border-radius:23px;padding:28px;margin-top:18px}.fh-cta>div:first-child{max-width:580px}@media(max-width:850px){.fh-grid{grid-template-columns:1fr}.fh-stats{grid-template-columns:repeat(2,1fr)}.fh-stage-grid{grid-template-columns:repeat(2,1fr)}.fh-cta{display:block}}@media(max-width:520px){.fh-hero{min-height:0}.fh-hero-content{padding:26px 20px}.fh-stats>div{padding:16px}.fh-stats strong{font-size:24px}.fh-stage-grid{grid-template-columns:1fr}.fh-heading{display:block}.fh-actions .ff-btn{flex:1;text-align:center}.fh-cta{padding:22px}}

/* Event artwork stays visible at its natural proportions rather than being cropped. */
.fh-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,37%);align-items:center;min-height:410px}
.fh-hero:before{opacity:.18;filter:blur(10px);transform:scale(1.05)}
.fh-hero-content{grid-column:1;grid-row:1;z-index:2}
.fh-hero-poster{grid-column:2;grid-row:1;z-index:2;display:grid;place-items:center;padding:24px 30px 24px 0;min-width:0}
.fh-hero-poster img{max-width:100%;width:auto;max-height:350px;height:auto;object-fit:contain;border-radius:13px;box-shadow:0 18px 55px #0008}
.fh-club{display:inline-flex;align-items:center;gap:11px;margin:6px 0 12px;padding:9px 13px;background:#ffffff13;border:1px solid #ffffff2a;border-radius:12px;color:#e9f6ff;text-decoration:none;font-size:13px}
.fh-club:hover{border-color:#39ff64;color:#39ff64}.fh-club img{width:43px;height:43px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}
.fh-organiser{font-weight:800}.fh-stage>div:first-child{align-items:flex-start}.fh-stage strong{max-width:65%;line-height:1.4}
@media(max-width:800px){.fh-hero{grid-template-columns:1fr}.fh-hero-poster{grid-column:1;grid-row:1;justify-self:end;opacity:.28;padding:12px;max-width:75%;pointer-events:none}.fh-hero-poster img{max-height:290px}.fh-hero-content{grid-column:1;grid-row:1}.fh-hero-shade{background:linear-gradient(90deg,#05101af5,#05101ab0)}}

/* V3 - Event centre */
.fh-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:22px 0}.fh-feature{display:flex;flex-direction:column;align-items:flex-start;min-height:245px;background:linear-gradient(150deg,#10273b,#0d1929);border:1px solid #284158;border-radius:19px;padding:23px;text-decoration:none!important;transition:transform .2s,border-color .2s;min-width:0}.fh-feature:hover{transform:translateY(-4px);border-color:#39ff64}.fh-feature-green{background:linear-gradient(140deg,#10422f,#0d2730)}.fh-feature-icon{font-size:28px;color:#39ff64}.fh-feature small{margin-top:15px;font-size:10px;letter-spacing:.12em;font-weight:900;color:#8edbaa}.fh-feature h2{font-size:22px;color:#fff;letter-spacing:-.035em;margin:8px 0}.fh-feature p{font-size:12px;color:#a9bfd1;line-height:1.6;margin:0 0 16px}.fh-feature b{margin-top:auto;color:#39ff64;font-size:12px}.fh-lower-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);gap:18px;margin-top:20px}.fh-side-stack{display:grid;gap:18px;align-content:start}.fh-count-badge{border:1px solid #36566a;background:#173247;color:#d9f0ff;padding:8px 12px;border-radius:20px;font-size:12px;white-space:nowrap}.fh-search-wrap{position:relative;margin:20px 0 12px}.fh-search-wrap input{width:100%;box-sizing:border-box;padding:14px 42px 14px 15px;background:#14263a;border:1px solid #355066;border-radius:12px;color:white;font:inherit;outline:none}.fh-search-wrap input:focus{border-color:#39ff64}.fh-search-wrap span{position:absolute;right:15px;top:10px;font-size:24px;color:#9fb8cc}.fh-class-filters{display:flex;gap:7px;overflow-x:auto;padding:0 0 12px}.fh-class-filters button{background:#162b3f;color:#c5d7e6;border:1px solid #2c465b;border-radius:20px;padding:8px 12px;white-space:nowrap;cursor:pointer;font-size:11px;font-weight:800}.fh-class-filters button.is-active{background:#39ff64;color:#061c10;border-color:#39ff64}.fh-class-filters span{opacity:.7}.fh-crew-list{max-height:520px;overflow:auto;border-top:1px solid #2b3e51}.fh-crew-row{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid #233649}.fh-crew-row[hidden]{display:none}.fh-car-number{flex:0 0 49px;background:#183a46;color:#baf8cf;border-radius:10px;padding:10px 0;text-align:center;font-weight:950;font-size:14px}.fh-crew-identity{flex:1;min-width:0}.fh-crew-identity strong{display:block;color:#f0f7ff;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fh-crew-identity small{display:block;color:#91aac0;font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fh-crew-identity em{font-size:9px;font-style:normal;color:#39ff64;border:1px solid #32854b;border-radius:5px;padding:3px 5px;margin-left:4px}.fh-crew-class{color:#b8c9db;font-size:10px;background:#172c40;border-radius:7px;padding:7px 9px;white-space:nowrap}.fh-list-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:#93aabe;font-size:12px}.fh-list-bottom a,.fh-text-link{color:#39ff64;text-decoration:none;font-size:12px;font-weight:800}.fh-leaders,.fh-activity{display:grid;gap:7px;margin:17px 0}.fh-leaders>div,.fh-activity>div{display:flex;align-items:center;gap:11px;padding:11px;background:#152b40;border-radius:11px}.fh-leaders strong,.fh-activity strong{flex:1;min-width:0;color:#f0f7ff;font-size:12px}.fh-leaders b,.fh-activity b{color:#39ff64;font-size:13px;white-space:nowrap}.fh-activity>div>div{flex:1;min-width:0}.fh-activity strong,.fh-activity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-activity small{color:#91a9bc;font-size:10px;margin-top:3px}.fh-activity-mark{color:#39ff64;font-size:20px}.fh-test-center,.fh-rounds{margin-top:18px}.fh-test-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.fh-test-card{background:#14283c;border:1px solid #284259;border-radius:15px;padding:18px;min-width:0}.fh-test-head,.fh-test-foot{display:flex;justify-content:space-between;gap:10px;color:#94aec4;font-size:11px}.fh-test-head span{color:#39ff64;font-weight:900}.fh-test-head strong{color:#fff}.fh-test-card h3{font-size:19px;color:#fff;margin:15px 0 23px;line-height:1.25}.fh-test-foot{margin-top:11px}.fh-footnote{font-size:11px!important;margin-top:15px}.fh-round-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.fh-round-list>a{display:flex;gap:10px;align-items:center;background:#14273b;border:1px solid #2b4054;border-radius:13px;padding:13px;text-decoration:none;min-width:0}.fh-round-list>a.current{border-color:#39ff64}.fh-round-list>a>span{color:#39ff64;font-weight:900}.fh-round-list>a>div{flex:1;min-width:0}.fh-round-list b,.fh-round-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-round-list b{font-size:12px;color:#fff}.fh-round-list small{font-size:10px;color:#9bb3c7;margin-top:4px}.fh-round-list em{font-size:10px;color:#a4c3d5;font-style:normal}@media(max-width:1100px){.fh-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fh-lower-grid{grid-template-columns:1fr}.fh-side-stack{grid-template-columns:1fr 1fr}.fh-test-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.fh-feature-grid,.fh-side-stack,.fh-test-cards,.fh-round-list{grid-template-columns:1fr}.fh-feature{min-height:190px}.fh-crew-class{display:none}.fh-heading{align-items:flex-start}.fh-list-bottom{flex-wrap:wrap}}

/* v4: polished native scrolling, consistent with the FANtasy palette */
.fh-page{--fh-scroll-thumb:#355d66;--fh-scroll-thumb-hover:#39ff64;--fh-scroll-track:#0a1726}
.fh-crew-list,.fh-class-filters{scrollbar-width:thin;scrollbar-color:var(--fh-scroll-thumb) var(--fh-scroll-track);scrollbar-gutter:stable}
.fh-crew-list::-webkit-scrollbar{width:9px;height:9px}
.fh-class-filters::-webkit-scrollbar{height:6px}
.fh-crew-list::-webkit-scrollbar-track,.fh-class-filters::-webkit-scrollbar-track{background:var(--fh-scroll-track);border-radius:100px}
.fh-crew-list::-webkit-scrollbar-thumb,.fh-class-filters::-webkit-scrollbar-thumb{background:var(--fh-scroll-thumb);border:2px solid var(--fh-scroll-track);border-radius:100px}
.fh-crew-list::-webkit-scrollbar-thumb:hover,.fh-class-filters::-webkit-scrollbar-thumb:hover{background:var(--fh-scroll-thumb-hover)}
.fh-crew-list{overflow-x:hidden;overscroll-behavior:contain;border-radius:0 0 12px 12px}
.fh-class-filters{overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity}
.fh-class-filters button{scroll-snap-align:start;flex-shrink:0}
.fh-crew-row{transition:background .16s ease,padding .16s ease}
.fh-crew-row:hover{background:rgba(57,255,100,.045);padding-left:9px}
.fh-crew-row:has(.fh-crew-identity em){background:rgba(57,255,100,.045)}
.fh-crew-row:has(.fh-crew-identity em):hover{background:rgba(57,255,100,.09)}
.fh-test-cards:empty{display:none}
.fh-test-center .fh-empty{margin-top:18px}
@media(max-width:650px){.fh-crew-list{max-height:440px}.fh-crew-row{padding:12px 3px}.fh-crew-identity strong{font-size:12px}.fh-class-filters{padding-bottom:10px}}
