.page-header{justify-content:center;align-items:center;width:100%;min-height:40vh;display:flex;position:relative;overflow:hidden;background:0 0!important}.page-header>.header-bg-img{object-fit:cover;z-index:0;will-change:transform;width:100%;min-width:100%;height:120%;min-height:100%;position:absolute;top:0;left:0}.page-header>.header-overlay{z-index:1;background:linear-gradient(135deg,#0a0a0ab3 0%,#1a1a1a66 50%,#ff6b351a 100%);position:absolute;inset:0}.page-header-content{z-index:2;text-align:center;width:100%;max-width:1200px;margin:0 auto;position:relative}.courses-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1400px;margin-top:3rem;margin-left:auto;margin-right:auto;display:grid}.course-card{background:linear-gradient(135deg, var(--bg-dark-card) 0%, var(--bg-dark-elevated) 100%);box-shadow:var(--shadow-md);text-align:left;transition:all var(--transition-normal);border:1px solid #ffffff0d;border-radius:20px;flex-direction:column;align-items:center;padding:2rem;display:flex;position:relative;overflow:hidden}.course-card:before{content:"";background:var(--primary-gradient);opacity:0;width:100%;height:100%;transition:opacity var(--transition-normal);z-index:0;position:absolute;top:0;left:0}.course-card:hover:before{opacity:.05}.course-card:hover{box-shadow:var(--shadow-lg), 0 0 30px color-mix(in srgb, var(--primary-solid), transparent 80%);border-color:color-mix(in srgb, var(--primary-solid), transparent 70%);transform:translateY(-8px)scale(1.02)}.course-card>h2,.course-card>p{z-index:1;width:100%;position:relative}.course-card h2{color:var(--text-primary);margin-bottom:1rem;font-size:1.6rem;font-weight:700}.course-card p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.7}.course-tag{background:var(--primary-gradient);color:var(--text-primary);box-shadow:var(--shadow-sm);letter-spacing:.5px;cursor:pointer;transition:all var(--transition-normal);text-align:center;z-index:1;border:none;border-radius:25px;align-self:center;width:auto;min-width:140px;margin-top:auto;padding:.6rem 1.5rem;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:700;display:inline-block;position:relative}.course-tag:hover{box-shadow:0 6px 20px color-mix(in srgb, var(--primary-solid), transparent 60%), 0 0 15px color-mix(in srgb, var(--primary-solid), transparent 70%);transform:translateY(-3px)}.course-tag:active{box-shadow:0 2px 8px color-mix(in srgb, var(--primary-solid), transparent 70%);transition:all .1s;transform:translateY(-1px)}.schedule-table{border-collapse:separate;border-spacing:0;background-color:var(--bg-dark-card);width:100%;max-width:1200px;box-shadow:var(--shadow-lg);border-radius:20px;margin:3rem auto;overflow:hidden}.schedule-table th,.schedule-table td{text-align:left;padding:1.2rem 1.5rem}.schedule-table thead th{background:var(--primary-gradient);color:#fff;text-transform:uppercase;letter-spacing:1px;font-size:.9rem;font-weight:700}.schedule-table tbody th{color:var(--text-primary);text-align:left;background:0 0;border-bottom:1px solid #ffffff0d;font-size:1rem;font-weight:700}.schedule-table td{color:var(--text-primary);border-bottom:1px solid #ffffff0d;font-size:1rem}.schedule-table tbody tr{transition:all var(--transition-fast)}.schedule-table tbody tr:nth-child(odd){background-color:#ffffff03}.schedule-table tbody tr:nth-child(2n){background-color:#00000026}.schedule-table tbody tr:hover{background-color:color-mix(in srgb, var(--primary-solid), transparent 90%)}.schedule-table tbody tr:last-child td{border-bottom:none}@media (width<=480px){.courses-grid{grid-template-columns:1fr}}@media (width<=768px){.schedule-table thead{display:none}.schedule-table tr{background-color:var(--bg-dark-card);box-shadow:var(--shadow-md);border-radius:20px;margin-bottom:1.5rem;display:block;overflow:hidden}html.light-mode .schedule-table tbody tr:nth-child(odd),html.light-mode .schedule-table tbody tr:nth-child(2n){background-color:var(--bg-dark-card)}.schedule-table th,.schedule-table td{text-align:right;box-sizing:border-box;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;width:100%;padding:1rem 1.2rem;display:flex}.schedule-table th[scope=row]{background:var(--primary-gradient);color:#fff;text-align:center;letter-spacing:1px;width:calc(100% - 20px);box-shadow:var(--shadow-sm);border-radius:20px;justify-content:center;margin:10px;font-size:1.1rem;font-weight:900}.schedule-table td:before{content:attr(data-label);color:var(--primary-solid);text-transform:uppercase;margin-right:1rem;font-size:.9rem;font-weight:700}.schedule-table td:last-child{border-bottom:none}}html.light-mode .modal-content{color:var(--text-primary);background-color:#fff;border:1px solid #0000001a;box-shadow:0 4px 20px #00000026}html.light-mode .close-btn{color:var(--text-secondary)}html.light-mode .close-btn:hover{color:var(--primary-solid)}html.light-mode .modal-content h2,html.light-mode .modal-content h3{text-shadow:none;color:var(--text-primary)}html.light-mode .modal-content p,html.light-mode .modal-content li{color:var(--text-secondary)}html.light-mode .detail-item strong{color:var(--text-primary)}html.light-mode .modal-dev-note{background-color:#f9fafb;border:1px solid #0000001a}html.light-mode .dev-note-title{color:var(--text-primary)}html.light-mode .dev-note-text{color:var(--text-secondary)}html.light-mode .dev-note-text code{color:var(--primary-solid);background-color:#0000000d;border:1px solid #0000001a}
