:root{--primary-blue:#0A369D;--mexico-green:#006847;--canada-red:#DA291C;--neutral-dark:#1E293B;--neutral-light:#F8FAFC;--accent-gold:#F59E0B;--card-shadow:0 10px 30px rgba(0,0,0,0.05);--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1)}body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--neutral-dark);background-color:#FFFFFF;overflow-x:hidden;line-height:1.6}.top-bar{background:linear-gradient(90deg,var(--primary-blue) 0%,var(--mexico-green) 50%,var(--canada-red) 100%);height:6px;width:100%}.navbar{box-shadow:0 2px 15px rgba(0,0,0,0.06);background-color:rgba(255,255,255,0.96);backdrop-filter:blur(10px)}.navbar-brand img{max-height:45px;object-fit:contain}.nav-link{font-weight:600;color:var(--neutral-dark) !important;transition:var(--transition-smooth);padding:0.5rem 1rem !important}.nav-link:hover{color:var(--primary-blue) !important;transform:translateY(-1px)}.hero-section{padding:100px 0 80px;background:radial-gradient(circle at 80% 20%,rgba(10,54,157,0.05) 0%,rgba(255,255,255,1) 70%)}.hero-badge{display:inline-flex;align-items:center;gap:8px;background-color:rgba(10,54,157,0.08);color:var(--primary-blue);padding:8px 16px;border-radius:50px;font-weight:700;font-size:0.875rem;margin-bottom:24px}.hero-title{font-size:3.25rem;font-weight:850;line-height:1.2;color:var(--neutral-dark)}.hero-title span{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--canada-red) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-img-wrapper{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.12)}.tracker-section{background-color:var(--neutral-light);border-top:1px solid #E2E8F0;border-bottom:1px solid #E2E8F0;padding:20px 0}.match-ticker-card{background:#FFFFFF;border-radius:12px;padding:16px;border:1px solid #E2E8F0;min-width:280px;transition:var(--transition-smooth)}.match-ticker-card:hover{transform:translateY(-3px);box-shadow:var(--card-shadow)}.section-title{font-size:2.25rem;font-weight:800;position:relative;padding-bottom:15px;margin-bottom:40px;color:var(--neutral-dark)}.section-title::after{content:'';position:absolute;left:0;bottom:0;width:60px;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--primary-blue),var(--canada-red))}.schedule-table-wrapper{background:#FFFFFF;border-radius:14px;box-shadow:var(--card-shadow);border:1px solid #E2E8F0;overflow-x:auto}.table-custom{margin-bottom:0;vertical-align:middle}.table-custom th{background-color:#F1F5F9;color:var(--neutral-dark);font-weight:700;padding:16px;border-bottom:2px solid #E2E8F0}.table-custom td{padding:16px;border-bottom:1px solid #F1F5F9}.group-card{background:#FFFFFF;border-radius:14px;border:1px solid #E2E8F0;box-shadow:var(--card-shadow);transition:var(--transition-smooth);overflow:hidden}.group-card:hover{transform:translateY(-5px);border-color:var(--primary-blue)}.group-header{background:linear-gradient(135deg,var(--primary-blue) 0%,#1E3A8A 100%);color:#FFFFFF;padding:15px;font-weight:700;text-align:center}.group-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #F1F5F9}.group-list-item:last-child{border-bottom:none}.team-badge-card{background:#FFFFFF;border-radius:14px;padding:24px;text-align:center;border:1px solid #E2E8F0;transition:var(--transition-smooth)}.team-badge-card:hover{transform:scale(1.03);box-shadow:var(--card-shadow)}.team-flag-placeholder{width:70px;height:70px;border-radius:50%;margin:0 auto 15px;background-color:#F1F5F9;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:inset 0 2px 4px rgba(0,0,0,0.06)}.stadium-card{background:#FFFFFF;border-radius:14px;overflow:hidden;border:1px solid #E2E8F0;box-shadow:var(--card-shadow)}.stadium-info-pane{padding:30px}.accordion-button:not(.collapsed){background-color:rgba(10,54,157,0.05);color:var(--primary-blue)}footer{background-color:#0F172A;color:#94A3B8;padding:80px 0 30px;font-size:0.9375rem}footer h5{color:#FFFFFF;font-weight:700;margin-bottom:24px}footer a{color:#94A3B8;text-decoration:none;transition:var(--transition-smooth)}footer a:hover{color:#FFFFFF;padding-left:5px}.footer-bottom{border-top:1px solid #334155;padding-top:30px;margin-top:60px}.badge-live{background-color:#EF4444;color:white;animation:pulse-live 2s infinite}@keyframes pulse-live{0%{opacity:1}50%{opacity:0.6}100%{opacity:1}}