:root{--page-bg:#f8fafc;--surface:#ffffff;--surface-strong:#0f172a;--accent-green:#10b981;--accent-red:#ef4444;--accent-blue:#2563eb;--text-main:#1e293b;--text-muted:#64748b;--border:#e2e8f0;--card-shadow:0 4px 20px -2px rgba(15,23,42,0.06);--header-height:70px}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background-color:var(--page-bg);color:var(--text-main);overflow-x:hidden;line-height:1.6}a{text-decoration:none;transition:all 0.3s ease}.site-header{background-color:var(--surface-strong);height:var(--header-height);position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,0.1)}.navbar-brand img{max-height:45px;object-fit:contain}.nav-link{color:rgba(255,255,255,0.85) !important;font-weight:500;padding:0.5rem 1rem !important;transition:color 0.2s}.nav-link:hover,.nav-link.active{color:var(--accent-green) !important}.btn-live{background-color:var(--accent-green);color:white;border-radius:30px;font-weight:600;padding:0.5rem 1.25rem;border:none;transition:background 0.2s}.btn-live:hover{background-color:#059669;color:white}.hero-section{position:relative;background:linear-gradient(135deg,#090e1a 0%,#1e293b 100%);color:white;padding:6rem 0;overflow:hidden}.hero-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to top,var(--page-bg),transparent)}.hero-title{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem;background:linear-gradient(to right,#ffffff,#93c5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-desc{font-size:1.15rem;color:#94a3b8;margin-bottom:2rem;max-width:600px}.hero-img-wrapper{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.4)}.hero-img-wrapper img{width:100%;height:auto;display:block;transition:transform 0.5s}.hero-img-wrapper:hover img{transform:scale(1.02)}.quick-stats{background:var(--surface);border-radius:12px;padding:1.5rem;box-shadow:var(--card-shadow);margin-top:-3rem;position:relative;z-index:10}.stat-item{text-align:center;border-right:1px solid var(--border)}.stat-item:last-child{border-right:none}.stat-val{font-size:1.75rem;font-weight:700;color:var(--accent-blue)}.stat-lbl{font-size:0.875rem;color:var(--text-muted);margin-top:0.25rem}.section-padding{padding:5rem 0}.section-header{margin-bottom:3.5rem;text-align:center}.section-header h2{font-size:2.25rem;font-weight:700;color:var(--surface-strong);position:relative;display:inline-block;padding-bottom:0.75rem}.section-header h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:4px;background-color:var(--accent-green);border-radius:2px}.section-header p{color:var(--text-muted);margin-top:0.75rem;font-size:1.1rem}.match-ticker-box{background-color:var(--surface-strong);color:white;padding:1rem 0;border-bottom:4px solid var(--accent-green)}.ticker-card{background:rgba(255,255,255,0.05);border-radius:8px;padding:0.75rem 1rem;margin-right:1rem;min-width:260px;border:1px solid rgba(255,255,255,0.1)}.ticker-header{display:flex;justify-content:space-between;font-size:0.75rem;color:#94a3b8;margin-bottom:0.5rem}.ticker-team{display:flex;justify-content:space-between;align-items:center;font-weight:500;margin-bottom:0.25rem}.ticker-score{font-weight:bold;color:var(--accent-green)}.schedule-tab-content{background:var(--surface);border-radius:12px;padding:2rem;box-shadow:var(--card-shadow)}.schedule-row{display:flex;align-items:center;padding:1.25rem 0;border-bottom:1px solid var(--border)}.schedule-row:last-child{border-bottom:none}.schedule-meta{flex:0 0 200px}.schedule-teams{flex:1;display:flex;align-items:center;justify-content:center;gap:2rem}.schedule-team-unit{display:flex;align-items:center;width:150px}.schedule-team-unit.home{justify-content:flex-end}.schedule-team-unit.away{justify-content:flex-start}.team-flag-placeholder{width:28px;height:20px;background:#e2e8f0;border-radius:2px;margin:0 10px;display:inline-block}.schedule-vs-score{background:#f1f5f9;padding:0.35rem 1.25rem;border-radius:20px;font-weight:700;font-size:0.9rem;min-width:100px;text-align:center}.schedule-venue{flex:0 0 200px;text-align:right;font-size:0.85rem;color:var(--text-muted)}.group-card{background:var(--surface);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border);overflow:hidden;margin-bottom:1.5rem}.group-card-header{background:var(--surface-strong);color:white;padding:1rem;font-weight:700;text-align:center}.group-table{margin-bottom:0}.group-table th{background:#f8fafc;font-size:0.75rem;text-transform:uppercase;color:var(--text-muted);font-weight:600}.group-table td{vertical-align:middle;font-size:0.9rem}.team-card{background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:var(--card-shadow);border:1px solid var(--border);transition:transform 0.3s ease}.team-card:hover{transform:translateY(-5px)}.team-card-banner{height:80px;background:linear-gradient(135deg,var(--accent-blue),var(--surface-strong))}.team-card-banner.mexico{background:linear-gradient(135deg,var(--accent-green),#000)}.team-card-banner.canada{background:linear-gradient(135deg,var(--accent-red),#fff)}.team-card-info{padding:1.5rem;position:relative}.team-avatar{width:60px;height:60px;border-radius:50%;background:#e2e8f0;border:3px solid white;position:absolute;top:-30px;left:1.5rem}.team-name{margin-top:1rem;font-weight:700;font-size:1.15rem}.stadium-card{background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:var(--card-shadow);border:1px solid var(--border)}.stadium-img-box{position:relative;height:220px;overflow:hidden}.stadium-img-box img{width:100%;height:100%;object-fit:cover}.stadium-badge{position:absolute;top:1rem;right:1rem;background:rgba(15,23,42,0.85);color:white;padding:0.35rem 0.75rem;border-radius:20px;font-size:0.75rem;backdrop-filter:blur(4px)}.stadium-details{padding:1.5rem}.news-card{background:var(--surface);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border);height:100%;transition:all 0.3s ease}.news-card:hover{box-shadow:0 10px 25px -5px rgba(15,23,42,0.1)}.news-body{padding:1.5rem}.news-meta{font-size:0.8rem;color:var(--text-muted);margin-bottom:0.5rem}.news-title{font-size:1.15rem;font-weight:700;line-height:1.4;color:var(--surface-strong);margin-bottom:0.75rem}.news-excerpt{font-size:0.9rem;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.guide-banner-card{background-color:var(--surface-strong);color:white;border-radius:14px;overflow:hidden;box-shadow:var(--card-shadow)}.guide-text-side{padding:4rem 3rem}.guide-img-side img{width:100%;height:100%;object-fit:cover;min-height:350px}.about-box{background:white;border-radius:12px;padding:3rem;box-shadow:var(--card-shadow);border:1px solid var(--border)}.about-badge{display:inline-block;background:#eff6ff;color:var(--accent-blue);font-weight:600;padding:0.35rem 1rem;border-radius:30px;font-size:0.875rem;margin-bottom:1.5rem}.faq-accordion .accordion-item{border:1px solid var(--border);border-radius:8px !important;margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,0.02)}.faq-accordion .accordion-button{font-weight:600;color:var(--surface-strong);background:white;padding:1.25rem 1.5rem}.faq-accordion .accordion-button:not(.collapsed){color:var(--accent-blue);background-color:#f8fafc;box-shadow:none}.faq-accordion .accordion-body{color:var(--text-muted);line-height:1.6;background:white;padding:1.25rem 1.5rem}.rule-card{background:var(--surface);padding:2rem;border-radius:12px;border:1px solid var(--border);box-shadow:var(--card-shadow);height:100%}.rule-icon{font-size:2.5rem;color:var(--accent-green);margin-bottom:1.25rem}.site-footer{background-color:var(--surface-strong);color:#94a3b8;padding:4rem 0 2rem;border-top:4px solid var(--accent-green)}.site-footer h5{color:white;font-weight:700;margin-bottom:1.5rem}.footer-links li{margin-bottom:0.75rem}.footer-links a{color:#94a3b8}.footer-links a:hover{color:white}.footer-bottom{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.1);font-size:0.85rem}@media (max-width:991.98px){.hero-section{padding:4rem 0}.hero-title{font-size:2.25rem}.quick-stats{margin-top:-2rem}.stat-item{border-right:none;border-bottom:1px solid var(--border);padding:1rem 0}.stat-item:last-child{border-bottom:none}.schedule-row{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem 0}.schedule-meta,.schedule-teams,.schedule-venue{flex:none;width:100%;text-align:left}.schedule-teams{justify-content:flex-start;gap:1rem}.schedule-team-unit.home{justify-content:flex-start}.guide-text-side{padding:2.5rem 1.5rem}}