/* ============================================
   ACE MEDIA TV — 2026 SPORTS BROADCAST DESIGN
   Aesthetic: High-voltage broadcast sports HUD
   Fonts: Rajdhani (display) + Barlow Condensed (UI) + Barlow (body)
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@400;500;600;700&family=Barlow+Condensed:ital,wght@0,300;0,400;0,600;0,700;0,800;0,900;1,400;1,700&family=Barlow:wght@300;400;500;600&display=swap');

:root {
  --red:        #E8190A;
  --red2:       #C01208;
  --red-glow:   rgba(232,25,10,0.35);
  --gold:       #FFB800;
  --black:      #080A0C;
  --black2:     #0F1114;
  --black3:     #161A1E;
  --dark:       #1C2028;
  --mid:        #252B34;
  --steel:      #2E3540;
  --line:       rgba(255,255,255,0.07);
  --line2:      rgba(255,255,255,0.12);
  --white:      #FFFFFF;
  --lt:         #E8ECF0;
  --muted:      #7A8494;
  --font-display:'Rajdhani', sans-serif;
  --font-ui:    'Barlow Condensed', sans-serif;
  --font-body:  'Barlow', sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--black);color:var(--lt);font-family:var(--font-body);font-size:15px;line-height:1.6;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}

/* TICKER */
.ticker-wrap{background:var(--red);overflow:hidden;white-space:nowrap;position:relative;z-index:200;height:36px;display:flex;align-items:center;}
.ticker-label{background:var(--black);color:var(--gold);font-family:var(--font-ui);font-weight:900;font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:0 18px;height:100%;display:flex;align-items:center;flex-shrink:0;border-right:2px solid var(--gold);z-index:1;}
.ticker-track{display:inline-flex;animation:ticker 100s linear infinite;}
.ticker-track:hover{animation-play-state:paused;}
.ticker-item{font-family:var(--font-ui);font-size:13px;font-weight:600;letter-spacing:0.5px;color:#fff;padding:0 30px;display:flex;align-items:center;gap:10px;}
.ticker-item::after{content:'◆';font-size:7px;color:rgba(255,255,255,0.5);padding-left:20px;}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* HEADER */
.site-header{background:var(--black2);border-bottom:1px solid var(--line2);position:sticky;top:0;z-index:100;}
.nav-inner{max-width:1440px;margin:0 auto;padding:0 24px;display:flex;align-items:center;height:68px;}
.nav-logo{margin-right:auto;}
.nav-logo img{height:46px;width:auto;filter:brightness(1.1);}
.nav-menu{display:flex;align-items:center;list-style:none;gap:0;height:100%;}
.nav-item{position:relative;height:100%;display:flex;align-items:center;}
.nav-link{font-family:var(--font-ui);font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lt);padding:0 13px;height:100%;display:flex;align-items:center;gap:5px;transition:color .2s;border-bottom:3px solid transparent;white-space:nowrap;}
.nav-link:hover,.nav-item:hover>.nav-link{color:var(--red);border-bottom-color:var(--red);}
.nav-link .arr{font-size:9px;margin-top:1px;opacity:0.6;}
.dropdown{position:absolute;top:100%;left:0;min-width:220px;background:var(--black2);border:1px solid var(--line2);border-top:2px solid var(--red);opacity:0;pointer-events:none;transform:translateY(8px);transition:all .2s;z-index:50;}
.nav-item:hover .dropdown{opacity:1;pointer-events:all;transform:translateY(0);}
.dropdown a{display:block;font-family:var(--font-ui);font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--lt);padding:11px 18px;border-bottom:1px solid var(--line);transition:background .15s,color .15s;}
.dropdown a:hover{background:var(--dark);color:var(--red);}
.nav-cta{background:var(--red);color:#fff;font-family:var(--font-ui);font-weight:800;font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:9px 18px;margin-left:12px;white-space:nowrap;border-bottom:none !important;transition:background .2s;}
.nav-cta:hover{background:var(--red2);color:#fff;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;margin-left:auto;}
.hamburger span{display:block;width:26px;height:3px;background:#fff;border-radius:3px;transition:all .3s;}

/* HERO */
.hero{position:relative;height:600px;overflow:hidden;background:var(--black);}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;}
.hero-slide.active{opacity:1;}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(0.5);}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(8,10,12,0.8) 40%,transparent 100%),linear-gradient(to top,rgba(8,10,12,0.92) 0%,transparent 55%);}
.hero-content{position:absolute;bottom:90px;left:60px;max-width:640px;}
.hero-eyebrow{font-family:var(--font-ui);font-size:12px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.hero-eyebrow::before{content:'';display:inline-block;width:32px;height:2px;background:var(--red);}
.hero-title{font-family:var(--font-display);font-size:clamp(40px,5.5vw,72px);font-weight:700;line-height:1.05;color:#fff;letter-spacing:1px;margin-bottom:18px;text-shadow:0 2px 30px rgba(0,0,0,0.5);}
.hero-title span{color:var(--red);}
.hero-sub{font-family:var(--font-body);font-size:16px;color:rgba(255,255,255,0.75);margin-bottom:28px;line-height:1.6;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.btn-primary{background:var(--red);color:#fff;font-family:var(--font-ui);font-weight:800;font-size:13px;letter-spacing:2px;text-transform:uppercase;padding:13px 28px;border:none;cursor:pointer;transition:background .2s;display:inline-block;}
.btn-primary:hover{background:var(--red2);}
.btn-outline{background:transparent;color:#fff;font-family:var(--font-ui);font-weight:700;font-size:13px;letter-spacing:2px;text-transform:uppercase;padding:12px 28px;border:2px solid rgba(255,255,255,0.4);cursor:pointer;transition:all .2s;display:inline-block;}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,0.1);}
.hero-indicators{position:absolute;bottom:32px;left:60px;display:flex;gap:8px;}
.hero-dot{width:24px;height:3px;background:rgba(255,255,255,0.3);cursor:pointer;transition:all .3s;}
.hero-dot.active{background:var(--red);width:42px;}

/* SPORT CATEGORIES BAR */
.sport-cats{background:var(--black2);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;}
.sport-cats::-webkit-scrollbar{display:none;}
.sport-cats-inner{display:flex;max-width:1440px;margin:0 auto;padding:0 24px;}
.sport-cat{flex-shrink:0;display:flex;align-items:center;gap:9px;padding:14px 20px;font-family:var(--font-ui);font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);border-bottom:3px solid transparent;cursor:pointer;transition:all .2s;text-decoration:none;}
.sport-cat:hover,.sport-cat.active{color:#fff;border-bottom-color:var(--red);}
.sport-cat .icon{font-size:17px;}

/* SECTIONS */
.section{padding:70px 0;}.section-sm{padding:48px 0;}
.container{max-width:1280px;margin:0 auto;padding:0 28px;}
.section-head{margin-bottom:40px;}
.section-label{font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.section-label::before{content:'';display:inline-block;width:24px;height:2px;background:var(--red);}
.section-title{font-family:var(--font-display);font-size:clamp(28px,3.5vw,42px);font-weight:700;color:var(--white);letter-spacing:0.5px;}
.section-title span{color:var(--red);}
.section-sub{color:var(--muted);font-size:15px;margin-top:8px;}

/* LIVE PLAYER */
.player-section{background:var(--black2);}
.player-grid{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start;}
.player-wrap{background:#000;aspect-ratio:16/9;position:relative;overflow:hidden;}
.player-wrap iframe{width:100%;height:100%;border:none;}
.live-badge{position:absolute;top:14px;left:14px;background:var(--red);color:#fff;font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:3px;text-transform:uppercase;padding:5px 12px;display:flex;align-items:center;gap:6px;z-index:2;}
.live-badge::before{content:'';width:7px;height:7px;background:#fff;border-radius:50%;animation:blink 1s infinite;}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
.player-meta{margin-top:16px;}
.player-event-name{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--white);margin-bottom:8px;}
.player-detail{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:14px;}
.player-detail-item{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--muted);letter-spacing:0.5px;display:flex;align-items:center;gap:6px;}
.player-detail-item strong{color:var(--lt);}
.player-desc{font-size:14px;color:var(--muted);line-height:1.65;border-top:1px solid var(--line);padding-top:14px;margin-top:14px;}
/* DREAMWEAVER SWAP NOTE — easy to find and edit */
.stream-swap-note{background:var(--dark);border:1px solid var(--line2);border-left:3px solid var(--gold);padding:12px 16px;margin-top:14px;font-family:var(--font-ui);font-size:12px;color:var(--gold);letter-spacing:0.5px;}
.stream-swap-note strong{color:#fff;}
.sidebar-upcoming{background:var(--dark);border:1px solid var(--line);}
.sidebar-upcoming-head{background:var(--steel);padding:14px 18px;font-family:var(--font-ui);font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--line);}
.upcoming-event{display:flex;gap:14px;align-items:flex-start;padding:14px 18px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .15s;}
.upcoming-event:hover{background:var(--steel);}
.upcoming-date{background:var(--red);color:#fff;text-align:center;padding:6px 10px;flex-shrink:0;min-width:46px;}
.upcoming-date .month{font-family:var(--font-ui);font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;}
.upcoming-date .day{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1;}
.upcoming-info .sport-tag{font-family:var(--font-ui);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin-bottom:4px;}
.upcoming-info .ev-name{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--lt);line-height:1.3;}
.upcoming-info .ev-loc{font-size:12px;color:var(--muted);margin-top:4px;}

/* CARDS GRID */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;}
.sport-card{background:var(--black3);border:1px solid var(--line);overflow:hidden;transition:transform .25s,border-color .25s;cursor:pointer;text-decoration:none;display:block;}
.sport-card:hover{transform:translateY(-4px);border-color:var(--red);}
.sport-card-img{aspect-ratio:16/9;overflow:hidden;position:relative;}
.sport-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.sport-card:hover .sport-card-img img{transform:scale(1.05);}
.sport-tag-overlay{position:absolute;top:10px;left:10px;background:var(--red);color:#fff;font-family:var(--font-ui);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;}
.sport-card-body{padding:16px 18px;}
.sport-card-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--white);line-height:1.3;margin-bottom:8px;}
.sport-card-meta{font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--muted);letter-spacing:0.5px;display:flex;align-items:center;gap:14px;}

/* COVERAGE GRID */
.coverage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.coverage-card{background:var(--black3);border:1px solid var(--line);padding:28px 22px;text-align:center;transition:all .25s;cursor:pointer;text-decoration:none;display:block;position:relative;overflow:hidden;}
.coverage-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--red);transform:scaleX(0);transition:transform .3s;}
.coverage-card:hover{border-color:rgba(232,25,10,0.3);transform:translateY(-3px);}
.coverage-card:hover::before{transform:scaleX(1);}
.cov-icon{font-size:36px;margin-bottom:14px;}
.cov-title{font-family:var(--font-ui);font-size:16px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--white);margin-bottom:8px;}
.cov-desc{font-size:13px;color:var(--muted);line-height:1.5;}

/* STATS BAR */
.stats-bar{background:var(--red);padding:28px 0;}
.stats-inner{display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap;gap:20px;}
.stat-item{text-align:center;}
.stat-num{font-family:var(--font-display);font-size:42px;font-weight:700;color:#fff;line-height:1;}
.stat-lbl{font-family:var(--font-ui);font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.75);margin-top:4px;}

/* GALLERY */
.gallery-masonry{columns:4;column-gap:12px;}
.gallery-item{break-inside:avoid;margin-bottom:12px;overflow:hidden;position:relative;cursor:pointer;}
.gallery-item img{width:100%;display:block;transition:transform .4s;filter:brightness(0.85);}
.gallery-item:hover img{transform:scale(1.04);filter:brightness(1);}
.gallery-item-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,10,12,0.8) 0%,transparent 60%);opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;padding:14px;}
.gallery-item:hover .gallery-item-overlay{opacity:1;}
.gallery-item-label{font-family:var(--font-ui);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;}

/* SOCIAL */
.social-section{background:var(--black2);}
.social-feed{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.social-card{background:var(--dark);border:1px solid var(--line);padding:18px;transition:border-color .2s;}
.social-card:hover{border-color:var(--red);}
.social-card-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.social-avatar{width:36px;height:36px;background:var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-ui);font-weight:800;font-size:14px;color:#fff;flex-shrink:0;}
.social-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--lt);}
.social-handle{font-size:11px;color:var(--muted);}
.social-platform{margin-left:auto;font-size:18px;opacity:0.7;}
.social-text{font-size:13px;color:var(--lt);line-height:1.55;margin-bottom:12px;}
.social-text .highlight{color:var(--red);}
.social-meta{font-family:var(--font-ui);font-size:11px;color:var(--muted);letter-spacing:0.5px;display:flex;gap:14px;}

/* TRUCKS */
.truck-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
.truck-img-wrap{position:relative;}
.truck-img-wrap img{width:100%;object-fit:cover;}
.truck-badge{position:absolute;bottom:-16px;right:-16px;background:var(--red);color:#fff;font-family:var(--font-display);font-size:52px;font-weight:700;padding:20px 24px;line-height:1;}
.truck-badge span{display:block;font-family:var(--font-ui);font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;opacity:0.85;}
.truck-features{display:flex;flex-direction:column;gap:14px;margin-top:24px;}
.truck-feature{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--dark);border-left:3px solid var(--red);}
.truck-feature-icon{font-size:22px;flex-shrink:0;margin-top:2px;}
.truck-feature-title{font-family:var(--font-ui);font-size:15px;font-weight:800;letter-spacing:0.5px;color:var(--white);margin-bottom:4px;}
.truck-feature-desc{font-size:13px;color:var(--muted);}

/* CTA BAND */
.cta-band{background:linear-gradient(135deg,var(--red2) 0%,#6B0808 100%);padding:60px 0;position:relative;overflow:hidden;}
.cta-band::before{content:'ACE';position:absolute;right:-20px;top:-20px;font-family:var(--font-display);font-size:200px;font-weight:700;color:rgba(255,255,255,0.04);line-height:1;}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.cta-text h2{font-family:var(--font-display);font-size:clamp(28px,3.5vw,48px);font-weight:700;color:#fff;line-height:1.1;margin-bottom:12px;}
.cta-text p{color:rgba(255,255,255,0.8);font-size:16px;}
.cta-contact{display:flex;flex-direction:column;gap:10px;}
.cta-contact-item{display:flex;align-items:center;gap:12px;color:#fff;font-family:var(--font-ui);font-size:16px;font-weight:600;}
.cta-contact-item .icon{width:36px;height:36px;background:rgba(255,255,255,0.15);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}

/* BREAKING NEWS */
.breaking-band{background:var(--dark);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;}
.breaking-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.breaking-item{display:flex;gap:12px;align-items:flex-start;}
.breaking-num{font-family:var(--font-display);font-size:36px;font-weight:700;color:var(--red);opacity:0.4;line-height:1;flex-shrink:0;}
.breaking-title{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--lt);line-height:1.35;margin-bottom:4px;}
.breaking-cat{font-family:var(--font-ui);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--muted);}

/* FOOTER */
.site-footer{background:var(--black2);border-top:1px solid var(--line);padding:60px 0 0;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;}
.footer-brand img{height:44px;margin-bottom:16px;}
.footer-brand p{font-size:13px;color:var(--muted);line-height:1.65;}
.footer-col-title{font-family:var(--font-ui);font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line);}
.footer-links{display:flex;flex-direction:column;gap:8px;}
.footer-links a{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--muted);letter-spacing:0.5px;transition:color .15s;}
.footer-links a:hover{color:var(--red);}
.footer-bottom{border-top:1px solid var(--line);padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.footer-copy{font-family:var(--font-ui);font-size:12px;color:var(--muted);letter-spacing:0.5px;}
.footer-social{display:flex;gap:10px;}
.footer-social a{width:32px;height:32px;background:var(--dark);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s;}
.footer-social a:hover{background:var(--red);border-color:var(--red);}

/* MOBILE NAV */
.mob-menu{display:none;position:fixed;inset:0;background:var(--black2);z-index:999;overflow-y:auto;padding:24px;flex-direction:column;}
.mob-menu.open{display:flex !important;}
.mob-close{align-self:flex-end;background:none;border:none;color:var(--lt);font-size:28px;cursor:pointer;margin-bottom:24px;}
.mob-link{display:flex;align-items:center;justify-content:space-between;padding:18px 0;font-family:var(--font-ui);font-weight:700;font-size:20px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lt);border-bottom:1px solid var(--line);cursor:pointer;min-height:58px;text-decoration:none;}
.mob-link:hover{color:var(--red);}

/* RESPONSIVE */
@media(max-width:1024px){.coverage-grid{grid-template-columns:repeat(2,1fr);}.footer-grid{grid-template-columns:1fr 1fr;}.player-grid{grid-template-columns:1fr;}.sidebar-upcoming{display:none;}}
@media(max-width:768px){.nav-menu{display:none !important;}.hamburger{display:flex !important;}.hero{height:420px;}.hero-content{left:24px;bottom:60px;max-width:calc(100% - 48px);}.hero-indicators{left:24px;}.gallery-masonry{columns:2;}.social-feed{grid-template-columns:1fr 1fr;}.truck-grid{grid-template-columns:1fr;}.breaking-list{grid-template-columns:1fr;}.cta-inner{flex-direction:column;}.footer-grid{grid-template-columns:1fr;}}
@media(max-width:480px){.gallery-masonry{columns:1;}.social-feed{grid-template-columns:1fr;}.cards-grid{grid-template-columns:1fr;}.coverage-grid{grid-template-columns:1fr;}}
