:root{--primary:#0F172A;--primary-light:#1E293B;--accent-usa:#002868;--accent-mexico:#006847;--accent-canada:#DA291C;--accent-glow:#FFD700;--bg-light:#F8FAFC;--bg-card:#FFFFFF;--text-main:#0F172A;--text-muted:#64748B;--border-color:#E2E8F0;--border-hover:#CBD5E1;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1)}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background-color:var(--bg-light);color:var(--text-main);overflow-x:hidden;line-height:1.6}.navbar-custom{background-color:rgba(15,23,42,0.95);backdrop-filter:blur(10px);border-bottom:2px solid var(--accent-usa);padding:12px 0;z-index:1050}.navbar-brand img{max-height:45px;object-fit:contain}.navbar-brand span{color:#FFFFFF;font-weight:800;font-size:1.25rem;letter-spacing:0.5px}.nav-link{color:#E2E8F0 !important;font-weight:500;font-size:0.95rem;transition:var(--transition-smooth);padding:6px 16px !important;border-radius:6px}.nav-link:hover,.nav-link.active{color:#FFFFFF !important;background-color:rgba(255,255,255,0.1)}.hero-section{background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%);color:#FFFFFF;padding:120px 0 80px 0;position:relative;overflow:hidden}.hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 80% 20%,rgba(0,40,104,0.15) 0%,transparent 50%);pointer-events:none}.hero-title{font-size:2.8rem;font-weight:800;line-height:1.2;text-transform:uppercase;background:linear-gradient(120deg,#FFFFFF 60%,var(--accent-glow) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-meta{font-size:1.1rem;color:#94A3B8;max-width:600px}.hero-badge-container{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.hero-badge{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);padding:6px 16px;border-radius:50px;font-size:0.85rem;color:#F1F5F9;font-weight:600}.hero-badge.usa{border-left:4px solid var(--accent-usa)}.hero-badge.mexico{border-left:4px solid var(--accent-mexico)}.hero-badge.canada{border-left:4px solid var(--accent-canada)}.hero-img-box{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.3);border:1px solid rgba(255,255,255,0.1)}.hero-img-box img{transition:var(--transition-smooth);width:100%;height:auto;object-fit:cover}.hero-img-box:hover img{transform:scale(1.03)}.section-title{font-size:2rem;font-weight:800;color:var(--primary);position:relative;margin-bottom:12px;text-transform:uppercase}.section-title::after{content:'';display:block;width:60px;height:4px;background:linear-gradient(90deg,var(--accent-usa),var(--accent-canada));margin-top:10px;border-radius:2px}.section-subtitle{color:var(--text-muted);font-size:1rem;margin-bottom:40px}.custom-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;transition:var(--transition-smooth);height:100%}.custom-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px rgba(15,23,42,0.08);border-color:var(--border-hover)}.timeline-container{position:relative}.schedule-card{background:#FFFFFF;border:1px solid var(--border-color);border-radius:10px;padding:16px 20px;margin-bottom:15px;transition:var(--transition-smooth)}.schedule-card:hover{border-color:var(--accent-usa)}.match-badge{font-size:0.75rem;font-weight:700;padding:4px 10px;border-radius:4px;text-transform:uppercase}.match-status-upcoming{background-color:#EFF6FF;color:#2563EB}.match-status-live{background-color:#FEF2F2;color:#EF4444;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:0.6}100%{opacity:1}}.match-team{font-weight:700;font-size:1.05rem}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.group-card{background:#FFFFFF;border:1px solid var(--border-color);border-radius:10px;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,0.02)}.group-header{background:linear-gradient(135deg,var(--accent-usa),var(--primary-light));color:#FFFFFF;padding:12px 16px;font-weight:700;font-size:1.1rem;text-align:center}.group-team-list{padding:12px 0;margin:0;list-style:none}.group-team-item{padding:8px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.group-team-item:last-child{border-bottom:none}.group-team-name{font-weight:600;font-size:0.95rem}.stadium-section{background:#FFFFFF;border-radius:16px;overflow:hidden;border:1px solid var(--border-color)}.stadium-info{padding:40px}.faq-accordion .accordion-item{border:1px solid var(--border-color);border-radius:8px !important;margin-bottom:12px;overflow:hidden}.faq-accordion .accordion-button{font-weight:700;color:var(--primary);padding:18px 20px;background-color:#FFFFFF}.faq-accordion .accordion-button:not(.collapsed){background-color:#F8FAFC;color:var(--accent-usa);box-shadow:none}.faq-accordion .accordion-body{color:var(--text-muted);padding:20px;background-color:#FFFFFF;line-height:1.7}footer{background-color:#0F172A;color:#94A3B8;padding:60px 0 30px 0;border-top:4px solid var(--accent-usa)}footer a{color:#CBD5E1;text-decoration:none;transition:var(--transition-smooth)}footer a:hover{color:#FFFFFF}footer .footer-title{color:#FFFFFF;font-weight:700;margin-bottom:20px;font-size:1.1rem}@media (max-width:991px){.hero-title{font-size:2.2rem}.stadium-info{padding:24px}}@media (max-width:767px){.hero-title{font-size:1.8rem}.section-title{font-size:1.6rem}}