:root{--page-bg:#f4f6f9;--surface:#ffffff;--surface-strong:#0f172a;--text-main:#1e293b;--text-muted:#64748b;--accent-blue:#0284c7;--accent-red:#ef4444;--accent-green:#10b981;--border:#e2e8f0;--card-radius:12px;--font-family:'Segoe UI',Roboto,Helvetica,Arial,sans-serif}body{background-color:var(--page-bg);color:var(--text-main);font-family:var(--font-family);line-height:1.6}.custom-card{background: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:transform 0.2s ease,box-shadow 0.2s ease}.custom-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,0.1)}.btn-primary-custom{background-color:var(--accent-blue);color:#ffffff;border:none;padding:10px 24px;font-weight:600;border-radius:8px;transition:background 0.2s}.btn-primary-custom:hover{background-color:#0369a1;color:#ffffff}.btn-outline-custom{border:2px solid var(--accent-blue);color:var(--accent-blue);background:transparent;padding:8px 20px;font-weight:600;border-radius:8px;transition:all 0.2s}.btn-outline-custom:hover{background:var(--accent-blue);color:#ffffff}.navbar-custom{background-color:var(--surface-strong);padding:15px 0;position:sticky;top:0;z-index:1000}.navbar-custom .navbar-brand{color:#ffffff;font-weight:800;font-size:1.4rem;display:flex;align-items:center;gap:10px}.navbar-custom .navbar-brand img{height:40px;width:auto}.navbar-custom .nav-link{color:rgba(255,255,255,0.85);font-weight:500;margin:0 10px;transition:color 0.2s}.navbar-custom .nav-link:hover,.navbar-custom .nav-link.active{color:#38bdf8}.hero-section{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:#ffffff;padding: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(2,132,199,0.15) 0%,transparent 50%);pointer-events:none}.hero-title{font-size:2.8rem;font-weight:800;line-height:1.2;margin-bottom:20px}.hero-badge-container{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.hero-badge{font-size:0.85rem;padding:6px 14px;border-radius:50px;font-weight:600}.badge-usa{background-color:var(--accent-blue);color:#fff}.badge-can{background-color:var(--accent-red);color:#fff}.badge-mex{background-color:var(--accent-green);color:#fff}.schedule-badge{font-size:0.75rem;font-weight:bold;padding:4px 8px;border-radius:4px}.table-responsive-container{background:var(--surface);border-radius:var(--card-radius);border:1px solid var(--border);overflow:hidden}.table-custom th{background-color:#f1f5f9;color:var(--text-main);font-weight:600;border-bottom:2px solid var(--border)}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.group-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--card-radius);padding:20px}.group-header{font-size:1.25rem;font-weight:700;border-bottom:2px solid var(--border);padding-bottom:10px;margin-bottom:12px;color:var(--accent-blue)}.team-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px dashed #f1f5f9}.team-row:last-child{border-bottom:none}.faq-item{border-bottom:1px solid var(--border);padding:20px 0}.faq-item:last-child{border-bottom:none}.faq-question{font-size:1.1rem;font-weight:600;color:var(--text-main);cursor:pointer;display:flex;justify-content:space-between;align-items:center}.faq-answer{margin-top:10px;color:var(--text-muted);display:none}.faq-answer.show{display:block}.guide-box{display:flex;gap:20px;align-items:flex-start;margin-bottom:24px}.guide-icon{font-size:2rem;color:var(--accent-blue);background:rgba(2,132,199,0.1);padding:15px;border-radius:10px;line-height:1}.footer-custom{background-color:var(--surface-strong);color:#94a3b8;padding:60px 0 30px}.footer-title{color:#ffffff;font-weight:700;margin-bottom:20px}.footer-links a{color:#94a3b8;text-decoration:none;transition:color 0.2s}.footer-links a:hover{color:#ffffff}@media (max-width:991.98px){.hero-title{font-size:2.2rem}.hero-section{padding:50px 0}}