.hero-banner{width:100%;padding:var(--space-xl)0;position:relative;overflow:hidden}@media (min-width:48rem){.hero-banner{padding:var(--space-2xl)0}}.hero-banner-bg{background:linear-gradient(#0c0c0c,#0a0a0a,#000);position:absolute;inset:0}.hero-banner-glow{opacity:.3;background-image:radial-gradient(80% 50% at 50% 40%,#0ea5e90f 0%,#0000 60%);position:absolute;inset:0}.hero-banner-content{z-index:10;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(50vh - 5rem);display:flex;position:relative}.hero-banner-inner{width:100%;max-width:48rem;margin:0 auto}.hero-badge{align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--accent-cyan);font-family:var(--font-dm-sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--space-lg);background:#06b6d41a;border:1px solid #06b6d44d;border-radius:9999px;padding:.375rem .75rem;display:inline-flex}.hero-badge-dot{width:.5rem;height:.5rem;position:relative}.hero-badge-dot:before,.hero-badge-dot:after{content:"";background:var(--accent-cyan);border-radius:50%;position:absolute;inset:0}.hero-badge-dot:before{opacity:.75;animation:1.5s cubic-bezier(0,0,.2,1) infinite ping}.hero-badge-dot:after{position:relative}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.hero-title{font-family:var(--font-syne);letter-spacing:-.03em;color:var(--text-primary);margin-bottom:var(--space-lg);text-shadow:0 2px 20px #000c,0 0 40px #00000080;font-size:clamp(2.5rem,8vw,4.5rem);font-weight:800;line-height:.95}.hero-title-gradient{color:#0000;background:linear-gradient(to right,var(--accent-sky),var(--accent-cyan),var(--accent-sky));-webkit-background-clip:text;background-clip:text}.hero-subtitle{font-family:var(--font-dm-sans);font-size:var(--text-lg);color:var(--text-secondary);max-width:36rem;margin:0 auto var(--space-2xl);line-height:1.6}@media (min-width:48rem){.hero-subtitle{font-size:var(--text-xl)}}.hero-actions{justify-content:center;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.btn-primary{align-items:center;gap:var(--space-md);padding:var(--space-md)var(--space-xl);background:var(--accent);color:#fff;font-family:var(--font-syne);font-weight:600;font-size:var(--text-base);border-radius:.75rem;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 10px 15px -3px #06b6d440}.btn-primary:hover{background:var(--accent-cyan);box-shadow:0 10px 15px -3px #22d3ee4d}.btn-secondary{align-items:center;gap:var(--space-md);padding:var(--space-md)var(--space-xl);color:#fff;font-family:var(--font-syne);font-weight:600;font-size:var(--text-base);background:0 0;border:2px solid #22d3ee66;border-radius:.75rem;text-decoration:none;transition:all .3s;display:inline-flex}.btn-secondary:hover{background:#ffffff26}.hero-banner-fade{z-index:10;pointer-events:none;background:linear-gradient(#0000,#000);height:6rem;position:absolute;bottom:0;left:0;right:0}
.discover-section{z-index:10;padding-bottom:6rem;position:relative}.discover-divider{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);height:1px;position:absolute;top:0;left:0;right:0}.discover-search-wrap{max-width:48rem;padding:0 var(--space-lg)var(--space-4xl);padding-top:var(--space-md);margin:0 auto}@media (min-width:48rem){.discover-search-wrap{padding-left:var(--space-xl);padding-right:var(--space-xl)}}.discover-search-header{text-align:center;margin-bottom:var(--space-xl)}.discover-search-title{font-family:var(--font-syne);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-md);font-weight:700}@media (min-width:48rem){.discover-search-title{font-size:var(--text-3xl)}}.discover-search-desc{color:var(--text-muted);font-family:var(--font-dm-sans);font-size:var(--text-sm)}.carousels-wrap{gap:var(--space-2xl);flex-direction:column;display:flex}
.search-bar-wrap{width:100%;position:relative}.search-bar-glow{filter:blur(.5rem);opacity:0;background:#06b6d44d;border-radius:1rem;transition:opacity .3s;position:absolute;inset:-2px}.search-bar-wrap:focus-within .search-bar-glow{opacity:1}.search-bar-inner{align-items:center;gap:var(--space-md);padding:var(--space-md)var(--space-xl);background:var(--bg-card);border:1px solid var(--border-light);border-radius:1rem;width:100%;transition:all .3s;display:flex;position:relative;box-shadow:0 10px 15px -3px #0003}.search-bar-wrap:focus-within .search-bar-inner{border-color:#22d3ee99;box-shadow:0 0 0 2px #22d3ee4d}.search-bar-input{min-width:0;color:var(--text-primary);font-size:var(--text-lg);font-family:var(--font-dm-sans);background:0 0;border:none;outline:none;flex:1}.search-bar-input::placeholder{color:#ffffff40}.search-bar-icon{color:#ffffff4d;flex-shrink:0;transition:color .2s}.search-bar-wrap:focus-within .search-bar-icon{color:#22d3eecc}.search-bar-spinner{color:#22d3eeb3;animation:1s linear infinite spin}
.search-results{margin-top:var(--space-sm);background:var(--bg-card);border:1px solid var(--border-light);border-radius:1rem;overflow:hidden;box-shadow:0 20px 25px -5px #0000004d}.search-results-item{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md)var(--space-xl);color:inherit;cursor:pointer;text-align:left;font:inherit;background:0 0;border:none;border-top:1px solid #ffffff0d;transition:background .2s;display:flex}.search-results-item:first-child{border-top:none}.search-results-item:hover{background:#ffffff0f}.search-results-avatar{border:1px solid var(--border-subtle);background:#ffffff0d;border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:flex;overflow:hidden}.search-results-avatar img{object-fit:cover;width:100%;height:100%}.search-results-avatar-placeholder{font-family:var(--font-syne);color:#fff3;font-weight:700}.search-results-body{flex:1;min-width:0}.search-results-name{font-family:var(--font-syne);color:var(--text-primary);font-weight:600;font-size:var(--text-sm)}.search-results-meta{color:var(--text-dim);font-size:var(--text-xs);font-family:var(--font-dm-sans);margin-top:var(--space-xs)}.search-results-arrow{color:#fff3;flex-shrink:0;transition:color .2s}.search-results-item:hover .search-results-arrow{color:#ffffff80}.search-results-empty{padding:var(--space-xl);text-align:center}.search-results-empty p{color:var(--text-dim);font-size:var(--text-sm);font-family:var(--font-dm-sans);margin-bottom:var(--space-md)}.search-results-empty span.query{color:var(--text-secondary)}.btn-create-athlete{align-items:center;gap:var(--space-sm);padding:var(--space-sm)var(--space-md);color:var(--accent-cyan);font-size:var(--text-sm);font-family:var(--font-dm-sans);cursor:pointer;background:#0ea5e91a;border:1px solid #0ea5e933;border-radius:.75rem;transition:background .2s;display:inline-flex}.btn-create-athlete:hover{background:#0ea5e933}.link-signin{color:var(--accent-cyan);font-size:var(--text-sm);font-family:var(--font-dm-sans);cursor:pointer;text-decoration:none}.link-signin:hover{text-decoration:underline}
.carousel-section{position:relative}.carousel-header{margin-bottom:var(--space-md);padding:0 var(--space-lg);justify-content:space-between;align-items:center;max-width:80rem;margin-left:auto;margin-right:auto;display:flex}.carousel-title-wrap{align-items:center;gap:var(--space-md);display:flex;overflow:visible}.carousel-title-wrap .icon{color:var(--accent-sky)}.carousel-title{font-family:var(--font-dm-sans);font-size:var(--text-xl);color:var(--text-primary);font-weight:700;line-height:1.3}@media (min-width:48rem){.carousel-title{font-size:var(--text-2xl)}}.carousel-nav{align-items:center;gap:var(--space-xs);display:none}@media (min-width:48rem){.carousel-nav{display:flex}}.carousel-btn{width:2.25rem;height:2.25rem;color:var(--text-primary);cursor:pointer;background:#ffffff14;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.carousel-btn:hover:not(:disabled){background:#ffffff26}.carousel-btn:disabled{color:#ffffff1a;cursor:default}.carousel-fade{z-index:10;pointer-events:none;width:4rem;position:absolute;top:0;bottom:0}.carousel-fade--left{background:linear-gradient(to right,var(--bg-page),transparent);left:0}.carousel-fade--right{background:linear-gradient(to left,var(--bg-page),transparent);right:0}.carousel-track{gap:var(--space-md);scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0 var(--space-lg);scroll-padding-left:1.5rem;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-track>*{scroll-snap-align:start}
.athlete-card{background:var(--bg-card);border:1px solid var(--border-subtle);width:12.5rem;color:inherit;border-radius:.75rem;flex-shrink:0;text-decoration:none;transition:all .3s;display:block;overflow:hidden}.athlete-card:hover{border-color:#ffffff1f;transform:scale(1.03);box-shadow:0 0 30px #0ea5e926,0 0 60px #0ea5e90d}@media (min-width:40rem){.athlete-card{width:13.75rem}}@media (min-width:48rem){.athlete-card{width:15rem}}.athlete-card-image-wrap{aspect-ratio:3/4;background:#1a1a1a;position:relative;overflow:hidden}.athlete-card-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.athlete-card:hover .athlete-card-image-wrap img{transform:scale(1.1)}.athlete-card-placeholder{background:linear-gradient(to bottom right,#0ea5e94d,var(--bg-card));width:100%;height:100%;font-family:var(--font-syne);color:#ffffff1a;justify-content:center;align-items:center;font-size:3rem;font-weight:700;display:flex}.athlete-card-overlay{background:linear-gradient(to top,var(--bg-card),transparent);opacity:.8;position:absolute;inset:0}.athlete-card-overlay-hover{background:linear-gradient(to top,var(--bg-card),transparent);opacity:0;transition:opacity .3s;position:absolute;inset:0}.athlete-card:hover .athlete-card-overlay-hover{opacity:.6}.athlete-card-sport{top:var(--space-md);left:var(--space-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#67e8f9;font-size:.625rem;font-family:var(--font-dm-sans);text-transform:uppercase;letter-spacing:.05em;background:#0ea5e933;border:1px solid #0ea5e94d;border-radius:.375rem;padding:.125rem .5rem;font-weight:500;position:absolute}.athlete-card-like-wrap{top:var(--space-md);right:var(--space-md);opacity:0;transition:opacity .3s;position:absolute}.athlete-card:hover .athlete-card-like-wrap{opacity:1}.athlete-card-info{padding:var(--space-md);padding-bottom:var(--space-md)}.athlete-card-name{font-family:var(--font-syne);color:var(--text-primary);font-weight:700;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.375rem;line-height:1.25;overflow:hidden}.athlete-card-meta{align-items:center;gap:var(--space-sm);display:flex}.athlete-card-country{color:var(--text-dim);font-size:var(--text-xs);font-family:var(--font-dm-sans);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.athlete-card-skeleton{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:.75rem;flex-shrink:0;width:12.5rem;overflow:hidden}@media (min-width:40rem){.athlete-card-skeleton{width:13.75rem}}@media (min-width:48rem){.athlete-card-skeleton{width:15rem}}.athlete-card-skeleton-image{aspect-ratio:3/4;background:linear-gradient(90deg,#0000 0%,#ffffff0a 50%,#0000 100%) 0 0/200% 100%;animation:1.5s infinite shimmer}.athlete-card-skeleton-body{padding:var(--space-md);padding-bottom:var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.athlete-card-skeleton-line{background:linear-gradient(90deg,#0000 0%,#ffffff0f 50%,#0000 100%) 0 0/200% 100%;border-radius:4px;width:75%;height:1rem;animation:1.5s infinite shimmer}.athlete-card-skeleton-line--short{width:50%;height:.75rem}
