Koperization commited on
Commit
ab0ddfe
·
verified ·
1 Parent(s): 39fa907

🐳 12/04 - 06:27 - CREATE THE HOMEPAGE FOR NAGAS ATHLETICS WEBSITE WITH THE FOLLOWING BRUTALIST SPECIFICATIONS: DESIGN SYSTEM: Background: Pure black (#121212) with subtle noise texture and 1px dotte

Browse files
Files changed (1) hide show
  1. index.html +218 -165
index.html CHANGED
@@ -82,10 +82,12 @@
82
 
83
  /* Carousel Styles */
84
  .carousel-container {
85
- scroll-snap-type: x mandatory;
86
  overflow-x: auto;
87
  scrollbar-width: thin;
88
  scrollbar-color: #5ec0cc #333333;
 
 
 
89
  }
90
 
91
  .carousel-container::-webkit-scrollbar {
@@ -94,7 +96,8 @@
94
 
95
  .carousel-container::-webkit-scrollbar-track {
96
  background: #121212;
97
- border: 1px solid #333333;
 
98
  }
99
 
100
  .carousel-container::-webkit-scrollbar-thumb {
@@ -102,13 +105,13 @@
102
  }
103
 
104
  .carousel-slide {
105
- scroll-snap-align: center;
106
- flex-shrink: 0;
107
  }
108
 
109
  .carousel-slide.active {
110
  opacity: 1;
111
  transform: scale(1.05);
 
112
  }
113
 
114
  .carousel-slide:not(.active) {
@@ -116,6 +119,26 @@
116
  transform: scale(0.9);
117
  }
118
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
  /* Table Styles */
120
  .brutalist-table {
121
  width: 100%;
@@ -199,17 +222,17 @@
199
  <body class="min-h-screen">
200
 
201
  <!-- Ticker Board -->
202
- <div class="w-full bg-[#121212] border-b border-[#333333] overflow-hidden py-2">
203
- <div class="ticker-content whitespace-nowrap flex">
204
- <span class="text-[#5ec0cc] font-mono text-sm mx-8">2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON • 2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON •</span>
205
- <span class="text-[#5ec0cc] font-mono text-sm mx-8">2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON • 2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON •</span>
206
  </div>
207
  </div>
208
 
209
  <!-- Header -->
210
- <header class="w-full border-b border-[#333333] relative">
211
  <div class="max-w-full px-4 sm:px-8 py-4 flex justify-between items-center">
212
- <a href="index.html" class="text-[#5ec0cc] font-bold text-2xl tracking-wider uppercase" style="font-family: 'Montserrat', sans-serif;">NAGAS</a>
213
 
214
  <!-- Desktop Menu Button -->
215
  <button id="menuBtn" class="hidden md:block border border-[#5ec0cc] px-6 py-2 text-[#5ec0cc] font-mono text-sm uppercase hover:bg-[#5ec0cc] hover:text-[#121212] transition-colors">
@@ -289,190 +312,189 @@
289
  </header>
290
 
291
  <!-- Hero Section -->
292
- <section class="w-full min-h-[90vh] flex flex-col justify-center items-center px-4 py-20 border-b border-[#333333] relative">
293
- <h1 class="text-[#5ec0cc] font-bold text-[10vw] md:text-[8vw] uppercase tracking-[0.2em] text-center leading-none mb-6" style="font-family: 'Montserrat', sans-serif;">
294
  NAGAS ATHLETICS
295
  </h1>
296
- <h2 class="text-white text-[3vw] md:text-[2vw] uppercase text-center tracking-wider mb-12" style="font-family: 'Montserrat', sans-serif; font-weight: 400;">
297
  NORTHBRIDGE INTERNATIONAL SCHOOL OF CAMBODIA
298
  </h2>
299
 
300
  <!-- Season Selector -->
301
  <div class="flex gap-4 flex-wrap justify-center">
302
- <button class="bg-[#5ec0cc] text-[#121212] px-8 py-3 font-mono uppercase text-sm font-bold border border-[#5ec0cc]">
303
  [2025-26]
304
  </button>
305
- <button onclick="openModal('comingSoonModal')" class="border border-[#333333] text-[#CCCCCC] px-8 py-3 font-mono uppercase text-sm hover:border-[#5ec0cc] transition-colors">
306
  [2026-27]
307
  </button>
308
  </div>
309
  </section>
310
 
311
  <!-- Leadership Messages -->
312
- <section class="w-full border-b border-[#333333] py-16 px-4 md:px-8">
313
- <div class="grid grid-cols-1 md:grid-cols-2 gap-0">
 
314
  <!-- Card 1 -->
315
- <div class="border border-[#333333] hover-border-teal transition-colors group">
316
- <div class="bg-gradient-to-b from-[#5ec0cc] to-[#4ab3c6] p-6 flex items-center gap-4">
317
- <img src="http://static.photos/people/200x200/1" alt="Andrew Dean" class="w-[60px] h-[60px] rounded-full border-2 border-white object-cover">
318
- <div>
319
- <h3 class="text-white font-bold uppercase text-lg">Andrew Dean</h3>
320
- <p class="text-white font-mono text-sm">Athletic Director</p>
321
- </div>
322
  </div>
323
- <div class="p-6 bg-[#121212]">
324
- <p class="text-[#121212] bg-[#5ec0cc] bg-opacity-20 p-4 font-mono text-sm leading-[1.6] mb-4">
 
 
 
325
  Welcome to another exciting season of Nagas Athletics. Our commitment to excellence both on and off the field remains unwavering. This year, we continue to build upon our legacy of sportsmanship, dedication, and competitive spirit.
326
  </p>
327
- <p class="text-[#121212] bg-[#5ec0cc] bg-opacity-20 p-4 font-mono text-sm leading-[1.6] mb-4">
328
  We have expanded our training facilities and welcomed new coaching talent to ensure our athletes receive the best possible support. I look forward to seeing our community come together to support the Nagas!
329
  </p>
330
- <a href="council.html" class="text-[#5ec0cc] font-mono text-sm uppercase hover:underline">Read Full Message →</a>
331
  </div>
332
  </div>
333
 
334
  <!-- Card 2 -->
335
- <div class="border border-[#333333] hover-border-teal transition-colors group md:border-l-0">
336
- <div class="bg-gradient-to-b from-[#5ec0cc] to-[#4ab3c6] p-6 flex items-center gap-4">
337
- <img src="http://static.photos/people/200x200/2" alt="Leang Chinh Dom" class="w-[60px] h-[60px] rounded-full border-2 border-white object-cover">
338
- <div>
339
- <h3 class="text-white font-bold uppercase text-lg">Leang Chinh Dom</h3>
340
- <p class="text-white font-mono text-sm">Athletic Council President</p>
341
- </div>
342
  </div>
343
- <div class="p-6 bg-[#121212]">
344
- <p class="text-[#121212] bg-[#5ec0cc] bg-opacity-20 p-4 font-mono text-sm leading-[1.6] mb-4">
 
 
 
345
  As Athletic Council President, I am proud to represent the student voice in our athletic programs. This year, we are focusing on inclusivity and student engagement across all sports.
346
  </p>
347
- <p class="text-[#121212] bg-[#5ec0cc] bg-opacity-20 p-4 font-mono text-sm leading-[1.6] mb-4">
348
  We have launched new initiatives to support mental health and academic balance for our athletes. Together, we will make this season memorable for every Naga.
349
  </p>
350
- <a href="council.html" class="text-[#5ec0cc] font-mono text-sm uppercase hover:underline">Read Full Message →</a>
351
  </div>
352
  </div>
353
  </div>
354
  </section>
355
 
356
  <!-- Sports Carousel -->
357
- <section class="w-full border-b border-[#333333] py-16">
358
- <h2 class="text-[#5ec0cc] font-bold uppercase text-2xl text-center mb-10 tracking-wider px-4">OUR SPORTS</h2>
359
 
360
- <div class="carousel-container flex gap-6 px-4 md:px-12 pb-4" id="sportsCarousel">
361
  <!-- Volleyball -->
362
- <div class="carousel-slide w-[300px] border border-[#333333] hover-border-teal transition-all duration-300">
363
- <img src="http://static.photos/sport/320x240/1" alt="Volleyball" class="w-[300px] h-[200px] object-cover">
364
  <div class="p-4 text-center">
365
- <h3 class="text-[#121212] text-2xl uppercase font-bold mb-4">VOLLEYBALL</h3>
366
- <a href="volleyball.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-6 py-2 font-mono text-sm uppercase font-bold">Explore Teams</a>
367
  </div>
368
  </div>
369
 
370
  <!-- Basketball -->
371
- <div class="carousel-slide w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 active">
372
- <img src="http://static.photos/sport/320x240/2" alt="Basketball" class="w-[300px] h-[200px] object-cover">
373
  <div class="p-4 text-center">
374
- <h3 class="text-[#121212] text-2xl uppercase font-bold mb-4">BASKETBALL</h3>
375
- <a href="basketball.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-6 py-2 font-mono text-sm uppercase font-bold">Explore Teams</a>
376
  </div>
377
  </div>
378
 
379
  <!-- Football -->
380
- <div class="carousel-slide w-[300px] border border-[#333333] hover-border-teal transition-all duration-300">
381
- <img src="http://static.photos/sport/320x240/3" alt="Football" class="w-[300px] h-[200px] object-cover">
382
  <div class="p-4 text-center">
383
- <h3 class="text-[#121212] text-2xl uppercase font-bold mb-4">FOOTBALL</h3>
384
- <a href="football.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-6 py-2 font-mono text-sm uppercase font-bold">Explore Teams</a>
385
  </div>
386
  </div>
387
 
388
  <!-- Track & Field -->
389
- <div class="carousel-slide w-[300px] border border-[#333333] hover-border-teal transition-all duration-300">
390
- <img src="http://static.photos/sport/320x240/4" alt="Track & Field" class="w-[300px] h-[200px] object-cover">
391
  <div class="p-4 text-center">
392
- <h3 class="text-[#121212] text-2xl uppercase font-bold mb-4">TRACK & FIELD</h3>
393
- <a href="track.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-6 py-2 font-mono text-sm uppercase font-bold">Explore Teams</a>
394
  </div>
395
  </div>
396
 
397
  <!-- Swimming -->
398
- <div class="carousel-slide w-[300px] border border-[#333333] hover-border-teal transition-all duration-300">
399
- <img src="http://static.photos/sport/320x240/5" alt="Swimming" class="w-[300px] h-[200px] object-cover">
400
  <div class="p-4 text-center">
401
- <h3 class="text-[#121212] text-2xl uppercase font-bold mb-4">SWIMMING</h3>
402
- <a href="swimming.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-6 py-2 font-mono text-sm uppercase font-bold">Explore Teams</a>
403
  </div>
404
  </div>
405
  </div>
406
  </section>
407
 
408
  <!-- Next Matches & Recent Results -->
409
- <section class="w-full border-b border-[#333333] py-16 px-4 md:px-8">
410
  <div class="grid grid-cols-1 lg:grid-cols-2 gap-8">
411
  <!-- Next Matches -->
412
- <div>
413
- <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-6 tracking-wider">NEXT MATCHES</h3>
414
- <table class="brutalist-table">
415
  <thead>
416
- <tr>
417
- <th>DATE</th>
418
- <th>SPORT</th>
419
- <th>OPPONENT</th>
420
- <th>LOCATION</th>
421
  </tr>
422
  </thead>
423
- <tbody class="text-[#CCCCCC]">
424
- <tr>
425
- <td>2025-11-15</td>
426
- <td>BASKETBALL</td>
427
- <td>ISPP</td>
428
- <td>HOME</td>
429
  </tr>
430
- <tr>
431
- <td>2025-11-18</td>
432
- <td>VOLLEYBALL</td>
433
- <td>ISPP</td>
434
- <td>AWAY</td>
435
  </tr>
436
- <tr>
437
- <td>2025-11-22</td>
438
- <td>FOOTBALL</td>
439
- <td>CFL</td>
440
- <td>HOME</td>
441
  </tr>
442
  </tbody>
443
  </table>
444
  </div>
445
 
446
  <!-- Recent Results -->
447
- <div>
448
- <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-6 tracking-wider">RECENT RESULTS</h3>
449
- <table class="brutalist-table">
450
  <thead>
451
- <tr>
452
- <th>DATE</th>
453
- <th>SPORT</th>
454
- <th>SCORE</th>
455
- <th>OPPONENT</th>
456
  </tr>
457
  </thead>
458
- <tbody class="text-[#CCCCCC]">
459
- <tr>
460
- <td>2025-11-08</td>
461
- <td>BASKETBALL</td>
462
- <td class="text-[#5ec0cc]">68-54 (W)</td>
463
- <td>ISPP</td>
464
  </tr>
465
- <tr>
466
- <td>2025-11-05</td>
467
- <td>VOLLEYBALL</td>
468
- <td class="text-[#ff9900]">2-3 (L)</td>
469
- <td>ISPP</td>
470
  </tr>
471
- <tr>
472
- <td>2025-11-01</td>
473
- <td>FOOTBALL</td>
474
- <td class="text-[#5ec0cc]">3-1 (W)</td>
475
- <td>CFL</td>
476
  </tr>
477
  </tbody>
478
  </table>
@@ -481,76 +503,77 @@
481
  </section>
482
 
483
  <!-- Athlete Spotlight -->
484
- <section class="w-full border-b border-[#333333] py-16 px-4 md:px-8">
485
- <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-8 tracking-wider">ATHLETE SPOTLIGHT</h3>
486
- <div id="spotlightContainer" class="border border-[#333333] p-6 flex flex-col md:flex-row gap-6 items-center md:items-start">
487
  <!-- Content loaded by JS -->
488
  </div>
489
  </section>
490
 
491
  <!-- Quick Links -->
492
- <section class="w-full py-16 px-4 md:px-8">
493
- <div class="grid grid-cols-2 gap-0 max-w-4xl mx-auto">
494
- <a href="teams.html" class="border border-[#333333] p-8 text-center hover-border-teal transition-colors group">
495
- <span class="text-white font-mono uppercase text-lg group-hover:text-[#5ec0cc]">TEAMS</span>
 
496
  </a>
497
- <a href="schedule.html" class="border border-[#333333] p-8 text-center hover-border-teal transition-colors group border-l-0">
498
- <span class="text-white font-mono uppercase text-lg group-hover:text-[#5ec0cc]">SCHEDULE</span>
499
  </a>
500
- <a href="about.html" class="border border-[#333333] p-8 text-center hover-border-teal transition-colors group border-t-0">
501
- <span class="text-white font-mono uppercase text-lg group-hover:text-[#5ec0cc]">ABOUT</span>
502
  </a>
503
- <a href="news.html" class="border border-[#333333] p-8 text-center hover-border-teal transition-colors group border-l-0 border-t-0">
504
- <span class="text-white font-mono uppercase text-lg group-hover:text-[#5ec0cc]">NEWS & MEDIA</span>
505
  </a>
506
  </div>
507
  </section>
508
 
509
  <!-- Footer -->
510
- <footer class="w-full border-t border-[#333333] py-12 px-4 md:px-8">
511
- <div class="grid grid-cols-1 md:grid-cols-3 gap-0">
512
  <div class="border border-[#333333] p-6 md:border-r-0">
513
- <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider">CONTACT</h4>
514
- <p class="text-[#CCCCCC] font-mono text-sm">nagas@nisc.edu.kh</p>
515
  </div>
516
  <div class="border border-[#333333] p-6 md:border-r-0">
517
- <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider">QUICK LINKS</h4>
518
  <ul class="space-y-2">
519
- <li><a href="index.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">Home</a></li>
520
- <li><a href="teams.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">Teams</a></li>
521
- <li><a href="about.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">About</a></li>
522
- <li><a href="schedule.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">Schedule</a></li>
523
- <li><a href="news.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">News & Media</a></li>
524
- <li><a href="council.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">Athletic Council</a></li>
525
- <li><a href="involved.html" class="text-[#CCCCCC] font-mono text-sm uppercase hover:text-[#5ec0cc]">Get Involved</a></li>
526
  </ul>
527
  </div>
528
  <div class="border border-[#333333] p-6">
529
- <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider">SOCIAL</h4>
530
- <p class="text-[#CCCCCC] font-mono text-sm">@NAGAS</p>
531
  <div class="flex gap-4 mt-4">
532
- <a href="#" class="text-[#CCCCCC] hover:text-[#5ec0cc]"><i data-lucide="instagram" class="w-5 h-5"></i></a>
533
- <a href="#" class="text-[#CCCCCC] hover:text-[#5ec0cc]"><i data-lucide="facebook" class="w-5 h-5"></i></a>
534
- <a href="#" class="text-[#CCCCCC] hover:text-[#5ec0cc]"><i data-lucide="twitter" class="w-5 h-5"></i></a>
535
  </div>
536
  </div>
537
  </div>
538
- <div class="text-center mt-8 pt-8 border-t border-[#333333]">
539
- <p class="text-[#333333] font-mono text-xs uppercase">© 2025 NAGAS ATHLETICS. ALL RIGHTS RESERVED.</p>
540
  </div>
541
  </footer>
542
 
543
  <!-- Coming Soon Modal -->
544
  <div id="comingSoonModal" class="modal">
545
- <div class="border border-[#5ec0cc] bg-[#121212] p-8 max-w-md mx-4 relative">
546
- <button onclick="closeModal('comingSoonModal')" class="absolute top-4 right-4 text-[#5ec0cc] hover:text-white">
547
  <i data-lucide="x" class="w-6 h-6"></i>
548
  </button>
549
- <h3 class="text-[#5ec0cc] font-bold uppercase text-2xl mb-4 tracking-wider">COMING SOON</h3>
550
- <p class="text-[#CCCCCC] font-mono text-sm leading-relaxed">
551
- The 2026-27 season information will be available soon. Stay tuned for updates on team rosters, schedules, and registration dates.
552
  </p>
553
- <button onclick="closeModal('comingSoonModal')" class="mt-6 border border-[#5ec0cc] text-[#5ec0cc] px-6 py-2 font-mono uppercase text-sm hover:bg-[#5ec0cc] hover:text-[#121212] transition-colors w-full">
554
  CLOSE
555
  </button>
556
  </div>
@@ -583,12 +606,13 @@
583
  document.getElementById(modalId).classList.remove('active');
584
  }
585
 
586
- // Carousel Auto-rotation
587
  const slides = document.querySelectorAll('.carousel-slide');
588
  let currentSlide = 1;
589
  let carouselInterval;
 
590
 
591
- function updateCarousel() {
592
  slides.forEach((slide, index) => {
593
  slide.classList.remove('active');
594
  if (index === currentSlide) {
@@ -599,14 +623,22 @@
599
 
600
  function nextSlide() {
601
  currentSlide = (currentSlide + 1) % slides.length;
602
- updateCarousel();
 
 
 
 
 
 
603
  }
604
 
 
 
 
605
  // Auto-rotate every 5 seconds
606
  carouselInterval = setInterval(nextSlide, 5000);
607
 
608
  // Pause on hover
609
- const carousel = document.getElementById('sportsCarousel');
610
  carousel.addEventListener('mouseenter', () => clearInterval(carouselInterval));
611
  carousel.addEventListener('mouseleave', () => {
612
  carouselInterval = setInterval(nextSlide, 5000);
@@ -618,42 +650,63 @@
618
 
619
  carousel.addEventListener('touchstart', (e) => {
620
  touchStartX = e.changedTouches[0].screenX;
621
- });
622
 
623
  carousel.addEventListener('touchend', (e) => {
624
  touchEndX = e.changedTouches[0].screenX;
625
  handleSwipe();
626
- });
627
 
628
  function handleSwipe() {
629
  if (touchEndX < touchStartX - 50) {
630
  currentSlide = Math.min(currentSlide + 1, slides.length - 1);
631
- updateCarousel();
 
 
 
 
 
632
  }
633
  if (touchEndX > touchStartX + 50) {
634
  currentSlide = Math.max(currentSlide - 1, 0);
635
- updateCarousel();
 
 
 
 
 
636
  }
637
  }
638
 
 
 
 
 
 
 
 
 
 
 
 
639
  // Athlete Spotlight Rotation
640
  const athletes = [
641
  {
642
  name: "SOKHA CHAN",
643
  position: "POINT GUARD",
644
- achievement: "2024 MVP AWARD",
645
  image: "http://static.photos/people/200x200/10"
646
  },
647
  {
648
  name: "DAVID SMITH",
649
  position: "CENTER",
650
- achievement: "ALL-TOURNAMENT TEAM 2024",
651
  image: "http://static.photos/people/200x200/11"
652
  },
653
  {
654
  name: "MARIA GARCIA",
655
  position: "SWIMMER",
656
- achievement: "50M FREE RECORD HOLDER",
657
  image: "http://static.photos/people/200x200/12"
658
  }
659
  ];
@@ -665,11 +718,11 @@
665
  const athlete = athletes[currentAthlete];
666
 
667
  container.innerHTML = `
668
- <img src="${athlete.image}" alt="${athlete.name}" class="w-[200px] h-[200px] object-cover border border-[#333333] fade-in">
669
- <div class="flex-1 text-center md:text-left fade-in">
670
- <h4 class="text-[#5ec0cc] font-bold uppercase text-2xl mb-2 tracking-wider">${athlete.name}</h4>
671
- <p class="text-[#CCCCCC] font-mono uppercase text-lg mb-4">${athlete.position}</p>
672
- <p class="text-[#5ec0cc] font-mono text-sm">${athlete.achievement}</p>
673
  </div>
674
  `;
675
  }
 
82
 
83
  /* Carousel Styles */
84
  .carousel-container {
 
85
  overflow-x: auto;
86
  scrollbar-width: thin;
87
  scrollbar-color: #5ec0cc #333333;
88
+ display: flex;
89
+ align-items: center;
90
+ padding: 20px 0;
91
  }
92
 
93
  .carousel-container::-webkit-scrollbar {
 
96
 
97
  .carousel-container::-webkit-scrollbar-track {
98
  background: #121212;
99
+ border-top: 1px solid #333333;
100
+ border-bottom: 1px solid #333333;
101
  }
102
 
103
  .carousel-container::-webkit-scrollbar-thumb {
 
105
  }
106
 
107
  .carousel-slide {
108
+ transition: all 0.3s ease;
 
109
  }
110
 
111
  .carousel-slide.active {
112
  opacity: 1;
113
  transform: scale(1.05);
114
+ z-index: 10;
115
  }
116
 
117
  .carousel-slide:not(.active) {
 
119
  transform: scale(0.9);
120
  }
121
 
122
+ /* Ticker Animation */
123
+ @keyframes ticker {
124
+ 0% { transform: translateX(0); }
125
+ 100% { transform: translateX(-50%); }
126
+ }
127
+
128
+ .ticker-content {
129
+ animation: ticker 20s linear infinite;
130
+ }
131
+
132
+ /* Athlete Spotlight Transition */
133
+ .spotlight-fade {
134
+ animation: fadeIn 0.5s ease-in;
135
+ }
136
+
137
+ @keyframes fadeIn {
138
+ from { opacity: 0; }
139
+ to { opacity: 1; }
140
+ }
141
+
142
  /* Table Styles */
143
  .brutalist-table {
144
  width: 100%;
 
222
  <body class="min-h-screen">
223
 
224
  <!-- Ticker Board -->
225
+ <div class="w-full bg-[#121212] border-b border-[#333333] overflow-hidden py-2" style="height: 40px;">
226
+ <div class="ticker-content whitespace-nowrap flex items-center h-full">
227
+ <span class="text-[#5ec0cc] font-mono text-base mx-8 leading-none">2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON • 2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON •</span>
228
+ <span class="text-[#5ec0cc] font-mono text-base mx-8 leading-none">2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON • 2025-26 SEASON HIGHLIGHTS • NEXT MATCH: BASKETBALL VS. ISPP • 2026-27 SEASON: COMING SOON •</span>
229
  </div>
230
  </div>
231
 
232
  <!-- Header -->
233
+ <header class="w-full border-b border-[#333333] relative bg-[#121212]">
234
  <div class="max-w-full px-4 sm:px-8 py-4 flex justify-between items-center">
235
+ <a href="index.html" class="text-[#5ec0cc] font-bold uppercase" style="font-family: 'Montserrat', sans-serif; font-size: 2.5rem; letter-spacing: 0.1em;">NAGAS</a>
236
 
237
  <!-- Desktop Menu Button -->
238
  <button id="menuBtn" class="hidden md:block border border-[#5ec0cc] px-6 py-2 text-[#5ec0cc] font-mono text-sm uppercase hover:bg-[#5ec0cc] hover:text-[#121212] transition-colors">
 
312
  </header>
313
 
314
  <!-- Hero Section -->
315
+ <section class="w-full min-h-screen flex flex-col justify-center items-center px-4 py-20 border-b border-[#333333] relative">
316
+ <h1 class="text-[#5ec0cc] font-bold uppercase text-center leading-none mb-6" style="font-family: 'Montserrat', sans-serif; font-size: clamp(3rem, 10vw, 8rem); letter-spacing: 0.2em;">
317
  NAGAS ATHLETICS
318
  </h1>
319
+ <h2 class="text-white uppercase text-center tracking-wider mb-12" style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: clamp(1.5rem, 3vw, 3rem); letter-spacing: 0.1em;">
320
  NORTHBRIDGE INTERNATIONAL SCHOOL OF CAMBODIA
321
  </h2>
322
 
323
  <!-- Season Selector -->
324
  <div class="flex gap-4 flex-wrap justify-center">
325
+ <button class="bg-[#5ec0cc] text-[#121212] px-8 py-4 font-bold uppercase border-0 tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 1.2rem; letter-spacing: 0.1em;">
326
  [2025-26]
327
  </button>
328
+ <button onclick="openModal('comingSoonModal')" class="bg-transparent text-[#CCCCCC] border border-[#333333] px-8 py-4 font-bold uppercase tracking-wider hover:border-[#5ec0cc] transition-colors" style="font-family: 'Montserrat', sans-serif; font-size: 1.2rem; letter-spacing: 0.1em;">
329
  [2026-27]
330
  </button>
331
  </div>
332
  </section>
333
 
334
  <!-- Leadership Messages -->
335
+ <section class="w-full border-t border-b border-[#333333] py-16 px-4 md:px-8">
336
+ <h2 class="text-[#5ec0cc] font-bold uppercase text-center mb-12 tracking-wider" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">LEADERSHIP MESSAGES</h2>
337
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-8 max-w-6xl mx-auto">
338
  <!-- Card 1 -->
339
+ <div class="border border-[#333333] hover-border-teal transition-colors bg-[#121212]">
340
+ <div class="bg-gradient-to-b from-[#5ec0cc] to-[#4ab3c6] h-[60px] relative flex justify-center">
341
+ <img src="http://static.photos/people/200x200/1" alt="Andrew Dean" class="w-[60px] h-[60px] rounded-full border-2 border-white object-cover absolute -bottom-[30px]">
 
 
 
 
342
  </div>
343
+ <div class="pt-[40px] pb-6 px-6 text-center">
344
+ <h3 class="text-white font-bold uppercase text-lg tracking-wide" style="font-family: 'Montserrat', sans-serif;">ANDREW DEAN</h3>
345
+ <p class="text-white text-sm mb-6" style="font-family: 'Montserrat', sans-serif;">Athletic Director</p>
346
+
347
+ <p class="text-[#CCCCCC] leading-[1.6] text-base mb-4 text-left">
348
  Welcome to another exciting season of Nagas Athletics. Our commitment to excellence both on and off the field remains unwavering. This year, we continue to build upon our legacy of sportsmanship, dedication, and competitive spirit.
349
  </p>
350
+ <p class="text-[#CCCCCC] leading-[1.6] text-base mb-6 text-left">
351
  We have expanded our training facilities and welcomed new coaching talent to ensure our athletes receive the best possible support. I look forward to seeing our community come together to support the Nagas!
352
  </p>
353
+ <a href="council.html" class="text-[#5ec0cc] uppercase text-sm tracking-wide hover:underline" style="text-decoration: none; font-size: 0.9rem;">Read Full Message →</a>
354
  </div>
355
  </div>
356
 
357
  <!-- Card 2 -->
358
+ <div class="border border-[#333333] hover-border-teal transition-colors bg-[#121212]">
359
+ <div class="bg-gradient-to-b from-[#5ec0cc] to-[#4ab3c6] h-[60px] relative flex justify-center">
360
+ <img src="http://static.photos/people/200x200/2" alt="Leang Chinh Dom" class="w-[60px] h-[60px] rounded-full border-2 border-white object-cover absolute -bottom-[30px]">
 
 
 
 
361
  </div>
362
+ <div class="pt-[40px] pb-6 px-6 text-center">
363
+ <h3 class="text-white font-bold uppercase text-lg tracking-wide" style="font-family: 'Montserrat', sans-serif;">LEANG CHINH DOM</h3>
364
+ <p class="text-white text-sm mb-6" style="font-family: 'Montserrat', sans-serif;">Athletic Council President</p>
365
+
366
+ <p class="text-[#CCCCCC] leading-[1.6] text-base mb-4 text-left">
367
  As Athletic Council President, I am proud to represent the student voice in our athletic programs. This year, we are focusing on inclusivity and student engagement across all sports.
368
  </p>
369
+ <p class="text-[#CCCCCC] leading-[1.6] text-base mb-6 text-left">
370
  We have launched new initiatives to support mental health and academic balance for our athletes. Together, we will make this season memorable for every Naga.
371
  </p>
372
+ <a href="council.html" class="text-[#5ec0cc] uppercase text-sm tracking-wide hover:underline" style="text-decoration: none; font-size: 0.9rem;">Read Full Message →</a>
373
  </div>
374
  </div>
375
  </div>
376
  </section>
377
 
378
  <!-- Sports Carousel -->
379
+ <section class="w-full border-t border-b border-[#333333] py-16">
380
+ <h2 class="text-[#5ec0cc] font-bold uppercase text-center mb-10 tracking-wider px-4" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">OUR SPORTS</h2>
381
 
382
+ <div class="carousel-container flex gap-4 px-4 md:px-12 pb-4 scroll-smooth" id="sportsCarousel" style="scroll-snap-type: x mandatory;">
383
  <!-- Volleyball -->
384
+ <div class="carousel-slide flex-shrink-0 w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 bg-[#121212]" style="min-width: 300px; scroll-snap-align: center;">
385
+ <img src="http://static.photos/sport/320x240/1" alt="Volleyball" class="w-full h-[150px] object-cover border-b border-[#333333]">
386
  <div class="p-4 text-center">
387
+ <h3 class="text-white uppercase font-bold mb-3 text-xl" style="font-family: 'Montserrat', sans-serif;">VOLLEYBALL</h3>
388
+ <a href="volleyball.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-4 py-2 uppercase font-bold text-sm tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 0.9rem; letter-spacing: 0.1em;">Explore Teams</a>
389
  </div>
390
  </div>
391
 
392
  <!-- Basketball -->
393
+ <div class="carousel-slide flex-shrink-0 w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 bg-[#121212] active" style="min-width: 300px; scroll-snap-align: center;">
394
+ <img src="http://static.photos/sport/320x240/2" alt="Basketball" class="w-full h-[150px] object-cover border-b border-[#333333]">
395
  <div class="p-4 text-center">
396
+ <h3 class="text-white uppercase font-bold mb-3 text-xl" style="font-family: 'Montserrat', sans-serif;">BASKETBALL</h3>
397
+ <a href="basketball.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-4 py-2 uppercase font-bold text-sm tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 0.9rem; letter-spacing: 0.1em;">Explore Teams</a>
398
  </div>
399
  </div>
400
 
401
  <!-- Football -->
402
+ <div class="carousel-slide flex-shrink-0 w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 bg-[#121212]" style="min-width: 300px; scroll-snap-align: center;">
403
+ <img src="http://static.photos/sport/320x240/3" alt="Football" class="w-full h-[150px] object-cover border-b border-[#333333]">
404
  <div class="p-4 text-center">
405
+ <h3 class="text-white uppercase font-bold mb-3 text-xl" style="font-family: 'Montserrat', sans-serif;">FOOTBALL</h3>
406
+ <a href="football.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-4 py-2 uppercase font-bold text-sm tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 0.9rem; letter-spacing: 0.1em;">Explore Teams</a>
407
  </div>
408
  </div>
409
 
410
  <!-- Track & Field -->
411
+ <div class="carousel-slide flex-shrink-0 w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 bg-[#121212]" style="min-width: 300px; scroll-snap-align: center;">
412
+ <img src="http://static.photos/sport/320x240/4" alt="Track & Field" class="w-full h-[150px] object-cover border-b border-[#333333]">
413
  <div class="p-4 text-center">
414
+ <h3 class="text-white uppercase font-bold mb-3 text-xl" style="font-family: 'Montserrat', sans-serif;">TRACK & FIELD</h3>
415
+ <a href="track.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-4 py-2 uppercase font-bold text-sm tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 0.9rem; letter-spacing: 0.1em;">Explore Teams</a>
416
  </div>
417
  </div>
418
 
419
  <!-- Swimming -->
420
+ <div class="carousel-slide flex-shrink-0 w-[300px] border border-[#333333] hover-border-teal transition-all duration-300 bg-[#121212]" style="min-width: 300px; scroll-snap-align: center;">
421
+ <img src="http://static.photos/sport/320x240/5" alt="Swimming" class="w-full h-[150px] object-cover border-b border-[#333333]">
422
  <div class="p-4 text-center">
423
+ <h3 class="text-white uppercase font-bold mb-3 text-xl" style="font-family: 'Montserrat', sans-serif;">SWIMMING</h3>
424
+ <a href="swimming.html" class="inline-block bg-[#5ec0cc] text-[#121212] px-4 py-2 uppercase font-bold text-sm tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 0.9rem; letter-spacing: 0.1em;">Explore Teams</a>
425
  </div>
426
  </div>
427
  </div>
428
  </section>
429
 
430
  <!-- Next Matches & Recent Results -->
431
+ <section class="w-full border-t border-b border-[#333333] py-16 px-4 md:px-8">
432
  <div class="grid grid-cols-1 lg:grid-cols-2 gap-8">
433
  <!-- Next Matches -->
434
+ <div class="overflow-x-auto">
435
+ <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-6 tracking-wider" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">NEXT MATCHES</h3>
436
+ <table class="brutalist-table min-w-full">
437
  <thead>
438
+ <tr style="border-bottom: 2px solid #333333;">
439
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">DATE</th>
440
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">SPORT</th>
441
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">OPPONENT</th>
442
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">LOCATION</th>
443
  </tr>
444
  </thead>
445
+ <tbody class="text-white font-mono">
446
+ <tr style="border-bottom: 1px solid #333333;">
447
+ <td class="p-3 whitespace-nowrap">2025-11-15</td>
448
+ <td class="p-3 whitespace-nowrap">BASKETBALL</td>
449
+ <td class="p-3 whitespace-nowrap">ISPP</td>
450
+ <td class="p-3 whitespace-nowrap">HOME</td>
451
  </tr>
452
+ <tr class="bg-[#1e1e1e]" style="border-bottom: 1px solid #333333;">
453
+ <td class="p-3 whitespace-nowrap">2025-11-18</td>
454
+ <td class="p-3 whitespace-nowrap">VOLLEYBALL</td>
455
+ <td class="p-3 whitespace-nowrap">ISPP</td>
456
+ <td class="p-3 whitespace-nowrap">AWAY</td>
457
  </tr>
458
+ <tr style="border-bottom: 1px solid #333333;">
459
+ <td class="p-3 whitespace-nowrap">2025-11-22</td>
460
+ <td class="p-3 whitespace-nowrap">FOOTBALL</td>
461
+ <td class="p-3 whitespace-nowrap">CFL</td>
462
+ <td class="p-3 whitespace-nowrap">HOME</td>
463
  </tr>
464
  </tbody>
465
  </table>
466
  </div>
467
 
468
  <!-- Recent Results -->
469
+ <div class="overflow-x-auto">
470
+ <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-6 tracking-wider" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">RECENT RESULTS</h3>
471
+ <table class="brutalist-table min-w-full">
472
  <thead>
473
+ <tr style="border-bottom: 2px solid #333333;">
474
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">DATE</th>
475
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">SPORT</th>
476
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">SCORE</th>
477
+ <th class="text-[#5ec0cc] font-bold uppercase text-left p-3 font-mono" style="font-family: 'Montserrat', sans-serif;">OPPONENT</th>
478
  </tr>
479
  </thead>
480
+ <tbody class="font-mono">
481
+ <tr style="border-bottom: 1px solid #333333;">
482
+ <td class="p-3 text-white whitespace-nowrap">2025-11-08</td>
483
+ <td class="p-3 text-white whitespace-nowrap">BASKETBALL</td>
484
+ <td class="p-3 text-[#5ec0cc] whitespace-nowrap">68-54 (W)</td>
485
+ <td class="p-3 text-white whitespace-nowrap">ISPP</td>
486
  </tr>
487
+ <tr class="bg-[#1e1e1e]" style="border-bottom: 1px solid #333333;">
488
+ <td class="p-3 text-white whitespace-nowrap">2025-11-05</td>
489
+ <td class="p-3 text-white whitespace-nowrap">VOLLEYBALL</td>
490
+ <td class="p-3 text-[#ff9900] whitespace-nowrap">2-3 (L)</td>
491
+ <td class="p-3 text-white whitespace-nowrap">ISPP</td>
492
  </tr>
493
+ <tr style="border-bottom: 1px solid #333333;">
494
+ <td class="p-3 text-white whitespace-nowrap">2025-11-01</td>
495
+ <td class="p-3 text-white whitespace-nowrap">FOOTBALL</td>
496
+ <td class="p-3 text-[#5ec0cc] whitespace-nowrap">3-1 (W)</td>
497
+ <td class="p-3 text-white whitespace-nowrap">CFL</td>
498
  </tr>
499
  </tbody>
500
  </table>
 
503
  </section>
504
 
505
  <!-- Athlete Spotlight -->
506
+ <section class="w-full border-t border-b border-[#333333] py-16 px-4 md:px-8">
507
+ <h3 class="text-[#5ec0cc] font-bold uppercase text-xl mb-8 tracking-wider" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">ATHLETE SPOTLIGHT</h3>
508
+ <div id="spotlightContainer" class="border border-[#333333] p-6 flex flex-col md:flex-row gap-6 items-center md:items-start bg-[#121212]">
509
  <!-- Content loaded by JS -->
510
  </div>
511
  </section>
512
 
513
  <!-- Quick Links -->
514
+ <section class="w-full border-t border-b border-[#333333] py-16 px-4 md:px-8">
515
+ <h2 class="text-[#5ec0cc] font-bold uppercase text-center mb-12 tracking-wider" style="font-size: 1.8rem; letter-spacing: 0.1em; font-family: 'Montserrat', sans-serif;">QUICK LINKS</h2>
516
+ <div class="grid grid-cols-2 gap-4 max-w-4xl mx-auto">
517
+ <a href="teams.html" class="border border-[#333333] p-6 text-center hover-border-teal transition-colors group block bg-[#121212]">
518
+ <span class="text-white uppercase font-bold text-lg group-hover:text-[#5ec0cc] tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 1.1rem; letter-spacing: 0.1em;">TEAMS</span>
519
  </a>
520
+ <a href="schedule.html" class="border border-[#333333] p-6 text-center hover-border-teal transition-colors group block bg-[#121212]">
521
+ <span class="text-white uppercase font-bold text-lg group-hover:text-[#5ec0cc] tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 1.1rem; letter-spacing: 0.1em;">SCHEDULE</span>
522
  </a>
523
+ <a href="about.html" class="border border-[#333333] p-6 text-center hover-border-teal transition-colors group block bg-[#121212]">
524
+ <span class="text-white uppercase font-bold text-lg group-hover:text-[#5ec0cc] tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 1.1rem; letter-spacing: 0.1em;">ABOUT</span>
525
  </a>
526
+ <a href="news.html" class="border border-[#333333] p-6 text-center hover-border-teal transition-colors group block bg-[#121212]">
527
+ <span class="text-white uppercase font-bold text-lg group-hover:text-[#5ec0cc] tracking-wider" style="font-family: 'Montserrat', sans-serif; font-size: 1.1rem; letter-spacing: 0.1em;">NEWS & MEDIA</span>
528
  </a>
529
  </div>
530
  </section>
531
 
532
  <!-- Footer -->
533
+ <footer class="w-full border-t border-[#333333] py-12 px-4 md:px-8 bg-[#121212]">
534
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-0 max-w-6xl mx-auto">
535
  <div class="border border-[#333333] p-6 md:border-r-0">
536
+ <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider" style="font-family: 'Montserrat', sans-serif;">CONTACT</h4>
537
+ <p class="text-white font-mono text-sm">nagas@nisc.edu.kh</p>
538
  </div>
539
  <div class="border border-[#333333] p-6 md:border-r-0">
540
+ <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider" style="font-family: 'Montserrat', sans-serif;">QUICK LINKS</h4>
541
  <ul class="space-y-2">
542
+ <li><a href="index.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">Home</a></li>
543
+ <li><a href="teams.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">Teams</a></li>
544
+ <li><a href="about.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">About</a></li>
545
+ <li><a href="schedule.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">Schedule</a></li>
546
+ <li><a href="news.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">News & Media</a></li>
547
+ <li><a href="council.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">Athletic Council</a></li>
548
+ <li><a href="involved.html" class="text-white font-mono text-sm uppercase hover:text-[#5ec0cc]">Get Involved</a></li>
549
  </ul>
550
  </div>
551
  <div class="border border-[#333333] p-6">
552
+ <h4 class="text-[#5ec0cc] font-bold uppercase mb-4 tracking-wider" style="font-family: 'Montserrat', sans-serif;">SOCIAL</h4>
553
+ <p class="text-white font-mono text-sm">@NAGAS</p>
554
  <div class="flex gap-4 mt-4">
555
+ <a href="#" class="text-white hover:text-[#5ec0cc] transition-colors"><i data-lucide="instagram" class="w-5 h-5"></i></a>
556
+ <a href="#" class="text-white hover:text-[#5ec0cc] transition-colors"><i data-lucide="facebook" class="w-5 h-5"></i></a>
557
+ <a href="#" class="text-white hover:text-[#5ec0cc] transition-colors"><i data-lucide="twitter" class="w-5 h-5"></i></a>
558
  </div>
559
  </div>
560
  </div>
561
+ <div class="text-center mt-8 pt-8 border-t border-[#333333] max-w-6xl mx-auto">
562
+ <p class="text-[#333333] font-mono text-xs uppercase" style="color: #666666;">© 2025 NAGAS ATHLETICS. ALL RIGHTS RESERVED.</p>
563
  </div>
564
  </footer>
565
 
566
  <!-- Coming Soon Modal -->
567
  <div id="comingSoonModal" class="modal">
568
+ <div class="border border-[#5ec0cc] bg-[#121212] p-8 max-w-md mx-4 relative" style="min-width: 300px;">
569
+ <button onclick="closeModal('comingSoonModal')" class="absolute top-4 right-4 text-white hover:text-[#5ec0cc] transition-colors w-10 h-10 flex items-center justify-center">
570
  <i data-lucide="x" class="w-6 h-6"></i>
571
  </button>
572
+ <h3 class="text-[#5ec0cc] font-bold uppercase text-2xl mb-6 tracking-wider pr-8" style="font-family: 'Montserrat', sans-serif; letter-spacing: 0.1em;">COMING SOON</h3>
573
+ <p class="text-white font-mono text-sm leading-relaxed mb-6">
574
+ The 2026-27 season will be available soon. Stay tuned!
575
  </p>
576
+ <button onclick="closeModal('comingSoonModal')" class="border border-[#5ec0cc] text-[#5ec0cc] px-6 py-3 font-mono uppercase text-sm hover:bg-[#5ec0cc] hover:text-[#121212] transition-colors w-full font-bold tracking-wider" style="font-family: 'Montserrat', sans-serif; letter-spacing: 0.1em;">
577
  CLOSE
578
  </button>
579
  </div>
 
606
  document.getElementById(modalId).classList.remove('active');
607
  }
608
 
609
+ // Carousel Auto-rotation and Scroll Tracking
610
  const slides = document.querySelectorAll('.carousel-slide');
611
  let currentSlide = 1;
612
  let carouselInterval;
613
+ const carousel = document.getElementById('sportsCarousel');
614
 
615
+ function updateCarouselActive() {
616
  slides.forEach((slide, index) => {
617
  slide.classList.remove('active');
618
  if (index === currentSlide) {
 
623
 
624
  function nextSlide() {
625
  currentSlide = (currentSlide + 1) % slides.length;
626
+ // Scroll to the active slide
627
+ const slideWidth = slides[0].offsetWidth + 16; // width + gap
628
+ carousel.scrollTo({
629
+ left: currentSlide * slideWidth - (carousel.offsetWidth / 2) + (slideWidth / 2),
630
+ behavior: 'smooth'
631
+ });
632
+ updateCarouselActive();
633
  }
634
 
635
+ // Initialize
636
+ updateCarouselActive();
637
+
638
  // Auto-rotate every 5 seconds
639
  carouselInterval = setInterval(nextSlide, 5000);
640
 
641
  // Pause on hover
 
642
  carousel.addEventListener('mouseenter', () => clearInterval(carouselInterval));
643
  carousel.addEventListener('mouseleave', () => {
644
  carouselInterval = setInterval(nextSlide, 5000);
 
650
 
651
  carousel.addEventListener('touchstart', (e) => {
652
  touchStartX = e.changedTouches[0].screenX;
653
+ }, {passive: true});
654
 
655
  carousel.addEventListener('touchend', (e) => {
656
  touchEndX = e.changedTouches[0].screenX;
657
  handleSwipe();
658
+ }, {passive: true});
659
 
660
  function handleSwipe() {
661
  if (touchEndX < touchStartX - 50) {
662
  currentSlide = Math.min(currentSlide + 1, slides.length - 1);
663
+ const slideWidth = slides[0].offsetWidth + 16;
664
+ carousel.scrollTo({
665
+ left: currentSlide * slideWidth - (carousel.offsetWidth / 2) + (slideWidth / 2),
666
+ behavior: 'smooth'
667
+ });
668
+ updateCarouselActive();
669
  }
670
  if (touchEndX > touchStartX + 50) {
671
  currentSlide = Math.max(currentSlide - 1, 0);
672
+ const slideWidth = slides[0].offsetWidth + 16;
673
+ carousel.scrollTo({
674
+ left: currentSlide * slideWidth - (carousel.offsetWidth / 2) + (slideWidth / 2),
675
+ behavior: 'smooth'
676
+ });
677
+ updateCarouselActive();
678
  }
679
  }
680
 
681
+ // Update active slide based on scroll position
682
+ carousel.addEventListener('scroll', () => {
683
+ const scrollLeft = carousel.scrollLeft;
684
+ const slideWidth = slides[0].offsetWidth + 16;
685
+ const centerSlide = Math.round((scrollLeft + carousel.offsetWidth / 2 - slideWidth / 2) / slideWidth);
686
+ if (centerSlide >= 0 && centerSlide < slides.length && centerSlide !== currentSlide) {
687
+ currentSlide = centerSlide;
688
+ updateCarouselActive();
689
+ }
690
+ });
691
+
692
  // Athlete Spotlight Rotation
693
  const athletes = [
694
  {
695
  name: "SOKHA CHAN",
696
  position: "POINT GUARD",
697
+ achievement: "2024 MVP AWARD - LED TEAM IN SCORING",
698
  image: "http://static.photos/people/200x200/10"
699
  },
700
  {
701
  name: "DAVID SMITH",
702
  position: "CENTER",
703
+ achievement: "ALL-TOURNAMENT TEAM 2024 - DEFENSIVE PLAYER OF THE YEAR",
704
  image: "http://static.photos/people/200x200/11"
705
  },
706
  {
707
  name: "MARIA GARCIA",
708
  position: "SWIMMER",
709
+ achievement: "50M FREE RECORD HOLDER - NATIONAL QUALIFIER",
710
  image: "http://static.photos/people/200x200/12"
711
  }
712
  ];
 
718
  const athlete = athletes[currentAthlete];
719
 
720
  container.innerHTML = `
721
+ <img src="${athlete.image}" alt="${athlete.name}" class="w-[200px] h-[200px] object-cover border border-[#333333] spotlight-fade flex-shrink-0">
722
+ <div class="flex-1 text-center md:text-left spotlight-fade">
723
+ <h4 class="text-[#5ec0cc] font-bold uppercase text-2xl mb-3 tracking-wider" style="font-family: 'Montserrat', sans-serif; letter-spacing: 0.1em; font-size: 1.5rem;">${athlete.name}</h4>
724
+ <p class="text-white font-mono uppercase text-lg mb-3" style="font-size: 1.1rem; letter-spacing: 0.05em;">${athlete.position}</p>
725
+ <p class="text-[#CCCCCC] font-mono text-sm leading-relaxed">${athlete.achievement}</p>
726
  </div>
727
  `;
728
  }