:root{--page-bg:#f8fafc;--surface:#ffffff;--surface-strong:#0f172a;--surface-muted:#f1f5f9;--text-main:#0f172a;--text-muted:#475569;--text-light:#f8fafc;--accent:#1d4ed8;--accent-red:#dc2626;--accent-green:#047857;--accent-gold:#d97706;--border:#e2e8f0;--card-radius:12px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}body{background-color:var(--page-bg);color:var(--text-main);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;overflow-x:hidden}.navbar-custom{background-color:rgba(15,23,42,0.95);backdrop-filter:blur(10px);border-bottom:2px solid var(--accent);padding:0.75rem 1rem;position:sticky;top:0;z-index:1030;transition:var(--transition)}.navbar-custom .navbar-brand{display:flex;align-items:center;gap:10px;color:var(--text-light);font-weight:700;font-size:1.25rem}.navbar-custom .navbar-brand img{height:40px;width:auto;object-fit:contain}.navbar-custom .nav-link{color:rgba(248,250,252,0.85);font-weight:500;padding:0.5rem 1rem !important;transition:var(--transition);border-radius:6px}.navbar-custom .nav-link:hover,.navbar-custom .nav-link.active{color:var(--text-light);background-color:rgba(255,255,255,0.1)}.hero-section{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:var(--text-light);padding:5rem 0 6rem;position:relative;overflow:hidden}.hero-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 80% 20%,rgba(29,78,216,0.15) 0%,transparent 50%);pointer-events:none}.hero-content{z-index:2;position:relative}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);padding:6px 16px;border-radius:30px;font-size:0.875rem;font-weight:600;margin-bottom:1.5rem;color:#f1f5f9}.hero-badge span{width:8px;height:8px;background:var(--accent-red);border-radius:50%;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(220,38,38,0.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(220,38,38,0)}100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(220,38,38,0)}}.hero-title{font-size:2.75rem;font-weight:800;line-height:1.2;letter-spacing:-0.02em;margin-bottom:1.5rem;background:linear-gradient(to right,#ffffff,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-desc{font-size:1.125rem;color:#cbd5e1;margin-bottom:2.5rem;max-width:600px}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:2rem}.stat-item{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);padding:15px;border-radius:var(--card-radius);text-align:center}.stat-val{font-size:1.75rem;font-weight:700;color:#ffffff;display:block}.stat-label{font-size:0.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:0.05em}.hero-image-wrapper{position:relative;border-radius:var(--card-radius);overflow:hidden;box-shadow:0 25px 50px -12px rgba(0,0,0,0.5)}.hero-image-wrapper img{width:100%;height:auto;object-fit:cover;display:block}.section-padding{padding:5rem 0}.section-header{margin-bottom:3.5rem;text-align:center}.section-header h2{font-size:2.25rem;font-weight:800;color:var(--text-main);position:relative;display:inline-block;padding-bottom:12px}.section-header h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:4px;background:linear-gradient(to right,var(--accent),var(--accent-red));border-radius:2px}.section-header p{color:var(--text-muted);font-size:1.05rem;margin-top:1rem;max-width:600px;margin-left:auto;margin-right:auto}.custom-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -1px rgba(0,0,0,0.03);transition:var(--transition);height:100%;overflow:hidden}.custom-card:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04)}.live-ticker-container{background-color:var(--surface-strong);color:var(--text-light);padding:1rem 0;border-bottom:4px solid var(--accent-red)}.ticker-card{background:rgba(255,255,255,0.08);border-radius:8px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;min-width:280px;margin-right:15px;border:1px solid rgba(255,255,255,0.1)}.ticker-status{font-size:0.75rem;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--accent-red);color:#fff}.ticker-status.upcoming{background:rgba(255,255,255,0.2);color:#cbd5e1}.ticker-team{font-weight:600;font-size:0.9rem;display:flex;align-items:center;gap:8px}.ticker-score{font-weight:700;font-size:1.1rem;color:var(--accent-gold);padding:0 5px}.schedule-tabs .nav-link{color:var(--text-muted);border:1px solid var(--border);background:var(--surface);margin:0 5px 10px;border-radius:30px;padding:8px 20px;font-weight:600;transition:var(--transition)}.schedule-tabs .nav-link.active{background-color:var(--accent);color:#fff;border-color:var(--accent)}.match-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--card-radius);padding:1.25rem;margin-bottom:1rem;transition:var(--transition);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}.match-row:hover{border-color:var(--accent);box-shadow:0 4px 12px rgba(29,78,216,0.08)}.match-meta{flex:1;min-width:200px}.match-stage{font-size:0.8rem;font-weight:700;text-transform:uppercase;color:var(--accent-red);letter-spacing:0.05em}.match-time{font-size:0.95rem;font-weight:600;color:var(--text-muted)}.match-teams{flex:2;display:flex;align-items:center;justify-content:center;gap:20px;min-width:280px}.match-team-block{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.1rem;width:120px}.match-team-block.team-home{justify-content:flex-end;text-align:right}.match-team-block.team-away{justify-content:flex-start;text-align:left}.vs-badge{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-muted);font-size:0.8rem;font-weight:700;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.match-venue{flex:1;min-width:180px;text-align:right;font-size:0.875rem;color:var(--text-muted)}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.group-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--card-radius);overflow:hidden;transition:var(--transition)}.group-box:hover{border-color:var(--accent);transform:translateY(-3px)}.group-header{background:var(--surface-strong);color:var(--text-light);padding:12px 15px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.group-header span{font-size:0.8rem;background:rgba(255,255,255,0.2);padding:2px 8px;border-radius:12px}.group-table{width:100%;margin-bottom:0}.group-table th{font-size:0.75rem;color:var(--text-muted);font-weight:600;background:var(--surface-muted);border-bottom:1px solid var(--border);padding:8px 12px}.group-table td{font-size:0.875rem;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.group-table tr:last-child td{border-bottom:none}.team-flag{width:20px;height:14px;border-radius:2px;object-fit:cover;display:inline-block;margin-right:6px;border:1px solid #e2e8f0}.stadium-card{position:relative;border-radius:var(--card-radius);overflow:hidden;height:380px;box-shadow:0 4px 15px rgba(0,0,0,0.05)}.stadium-img-wrapper{width:100%;height:100%;position:relative}.stadium-img-wrapper img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.stadium-card:hover .stadium-img-wrapper img{transform:scale(1.05)}.stadium-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(15,23,42,0.95) 0%,rgba(15,23,42,0.4) 60%,transparent 100%);padding:2rem 1.5rem 1.5rem;color:var(--text-light)}.stadium-city{font-size:0.8rem;font-weight:700;color:var(--accent-gold);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:5px}.stadium-name{font-size:1.25rem;font-weight:700;margin-bottom:8px}.stadium-cap{font-size:0.875rem;color:#cbd5e1;display:flex;align-items:center;gap:6px}.info-card{padding:2rem;border-radius:var(--card-radius);background:var(--surface);border:1px solid var(--border);height:100%;position:relative;transition:var(--transition)}.info-card:hover{border-color:var(--accent-green);transform:translateY(-3px)}.info-icon{font-size:2.25rem;margin-bottom:1.25rem;display:inline-block}.info-icon.color-usa{color:var(--accent)}.info-icon.color-can{color:var(--accent-red)}.info-icon.color-mex{color:var(--accent-green)}.news-badge{font-size:0.75rem;font-weight:600;padding:4px 8px;border-radius:4px;background-color:var(--surface-muted);color:var(--text-muted)}.news-card-title{font-size:1.125rem;font-weight:700;line-height:1.4;margin:10px 0}.news-card-title:hover{color:var(--accent)}.faq-accordion .accordion-item{border:1px solid var(--border);border-radius:var(--card-radius) !important;margin-bottom:1rem;overflow:hidden;background-color:var(--surface)}.faq-accordion .accordion-button{font-weight:600;color:var(--text-main);background-color:var(--surface);padding:1.25rem;box-shadow:none}.faq-accordion .accordion-button:not(.collapsed){color:var(--accent);background-color:var(--surface-muted)}.faq-accordion .accordion-body{background-color:var(--surface);color:var(--text-muted);line-height:1.7;padding:1.25rem}.about-site-block{background:linear-gradient(135deg,#f1f5f9 0%,#e2e8f0 100%);border:1px solid var(--border);border-radius:var(--card-radius);padding:2.5rem}.footer-section{background-color:var(--surface-strong);color:#94a3b8;padding:4rem 0 2rem;font-size:0.9rem;border-top:5px solid var(--accent)}.footer-logo-title{color:var(--text-light);font-size:1.5rem;font-weight:800;margin-bottom:1rem}.footer-heading{color:var(--text-light);font-size:1.1rem;font-weight:700;margin-bottom:1.25rem;position:relative}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:0.75rem}.footer-links a{color:#94a3b8;text-decoration:none;transition:var(--transition)}.footer-links a:hover{color:var(--text-light);padding-left:4px}.footer-divider{border-top:1px solid #334155;margin:2.5rem 0 1.5rem}@media (max-width:991.98px){.hero-title{font-size:2.25rem}.hero-stats{grid-template-columns:1fr;gap:10px}.match-teams{flex-direction:column;gap:10px}.match-team-block{width:100%;justify-content:center !important;text-align:center !important}.match-row{text-align:center;flex-direction:column;padding:1.5rem}.match-venue{text-align:center;margin-top:5px}}