:root{--primary: #800080;--primary-light: #a020a0;--primary-dark: #600060;--primary-gradient: linear-gradient(135deg, #800080, #b040b0);--primary-glow: 0 0 30px rgba(128, 0, 128, .35);--bg-primary: #ffffff;--bg-secondary: #f8f5ff;--bg-dark: #1a0a1a;--bg-glass: rgba(255, 255, 255, .65);--text-primary: #1a1a2e;--text-secondary: #555555;--text-muted: #888888;--text-white: #ffffff;--border-color: #e8e0f0;--card-shadow: 0 4px 24px rgba(128, 0, 128, .08);--card-hover-shadow: 0 12px 40px rgba(128, 0, 128, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--font-primary: "Poppins", sans-serif;--font-secondary: "Plus Jakarta Sans", sans-serif;--container-max: 1280px;--navbar-height: 70px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-primary);color:var(--text-primary);background:var(--bg-primary);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar{display:none}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:color var(--transition-fast)}ul,ol{list-style:none}button,input,textarea,select{font-family:inherit;font-size:inherit;border:none;outline:none;background:none}button{cursor:pointer}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease}.loading-overlay.active{opacity:1;visibility:visible}.loading-spinner{width:56px;height:56px;border:4px solid var(--border-color);border-top-color:var(--primary);border-right-color:var(--primary-light);border-radius:50%;animation:spinLoader .8s linear infinite}@keyframes spinLoader{to{transform:rotate(360deg)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-primary);font-weight:700;line-height:1.25;color:var(--text-primary);margin-bottom:.5em}h1{font-size:3.5rem;letter-spacing:-1.5px}h2{font-size:2.75rem;letter-spacing:-1px}h3{font-size:2rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:1em;color:var(--text-secondary)}.text-gradient{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-wide{background:linear-gradient(135deg,purple,#c060c0,purple);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 24px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 12px #8000800f;z-index:1000;transition:box-shadow var(--transition-normal),background var(--transition-normal)}.navbar.scrolled{box-shadow:0 4px 24px #8000801a}.navbar-inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:var(--container-max);margin:0 auto;padding:0 24px}.navbar-logo img{width:160px;height:auto;transition:transform var(--transition-fast)}.navbar-logo:hover img{transform:scale(1.03)}.nav-links{display:flex;align-items:center;gap:8px}.nav-link{position:relative;padding:8px 16px;font-size:.95rem;font-weight:500;color:var(--text-secondary);border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.nav-link:hover,.nav-link.active{color:var(--primary);background:#8000800f}.nav-link:after{content:"";position:absolute;bottom:2px;left:50%;width:0;height:2px;background:var(--primary-gradient);border-radius:2px;transform:translate(-50%);transition:width var(--transition-normal)}.nav-link:hover:after,.nav-link.active:after{width:60%}.nav-cta{margin-left:12px;padding:10px 24px;background:var(--primary-gradient);color:var(--text-white)!important;border-radius:var(--radius-xl);font-weight:600;font-size:.9rem;box-shadow:0 4px 16px #80008040;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px #80008059}.nav-cta:after{display:none}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;cursor:pointer;z-index:1001}.nav-toggle span{display:block;width:100%;height:2.5px;background:var(--text-primary);border-radius:4px;transition:transform var(--transition-normal),opacity var(--transition-fast)}.nav-toggle.active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.hero-section{position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:120px 24px 80px;background:linear-gradient(165deg,#1a0a1a,#400040 40%,purple,#b040b0);overflow:hidden}.hero-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 30%,rgba(160,32,160,.35) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(176,64,176,.25) 0%,transparent 50%);pointer-events:none}.hero-section:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:120px;background:linear-gradient(to top,var(--bg-primary),transparent);pointer-events:none}.hero-content{position:relative;z-index:2;max-width:860px}.hero-tag{display:inline-block;padding:6px 20px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);color:#ffffffe6;font-size:.85rem;font-weight:500;margin-bottom:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-title{font-size:4rem;font-weight:800;color:var(--text-white);line-height:1.15;margin-bottom:20px;letter-spacing:-2px;animation:fadeInUp .8s ease forwards}.hero-title span{background:linear-gradient(135deg,#e0b0ff,#fff,#e0b0ff);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite}.hero-subtitle{font-size:1.2rem;color:#ffffffbf;max-width:600px;margin:0 auto 40px;font-weight:400;line-height:1.7;animation:fadeInUp .8s ease .15s forwards;opacity:0}.hero-cta-group{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:56px;animation:fadeInUp .8s ease .3s forwards;opacity:0}.hero-cta-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 40px;background:var(--text-white);color:var(--primary);font-weight:700;font-size:1.05rem;border-radius:var(--radius-xl);box-shadow:0 8px 32px #0003;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hero-cta-btn:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 12px 44px #0000004d,var(--primary-glow)}.hero-cta-btn-outline{display:inline-flex;align-items:center;gap:10px;padding:16px 40px;background:transparent;color:var(--text-white);font-weight:600;font-size:1.05rem;border:2px solid rgba(255,255,255,.35);border-radius:var(--radius-xl);transition:all var(--transition-fast)}.hero-cta-btn-outline:hover{background:#ffffff1a;border-color:#fff9;transform:translateY(-2px)}.hero-stats{display:flex;align-items:center;justify-content:center;gap:48px;animation:fadeInUp .8s ease .45s forwards;opacity:0}.hero-stat{text-align:center}.hero-stat-value{display:block;font-size:2rem;font-weight:800;color:var(--text-white)}.hero-stat-label{font-size:.85rem;color:#fff9;font-weight:400}.hero-stat+.hero-stat{position:relative}.hero-stat+.hero-stat:before{content:"";position:absolute;left:-24px;top:50%;transform:translateY(-50%);width:1px;height:40px;background:#fff3}.hero-shape{position:absolute;border-radius:50%;background:#b040b026;animation:heroFloat 6s ease-in-out infinite;pointer-events:none}.hero-shape:nth-child(1){width:300px;height:300px;top:-50px;right:-80px;animation-delay:0s}.hero-shape:nth-child(2){width:200px;height:200px;bottom:60px;left:-60px;animation-delay:-2s}.hero-shape:nth-child(3){width:120px;height:120px;top:30%;right:15%;animation-delay:-4s}@keyframes heroFloat{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(5deg)}66%{transform:translateY(10px) rotate(-3deg)}}.course-card{position:relative;background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--card-shadow);border:1px solid var(--border-color);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.course-card:hover{transform:translateY(-8px);box-shadow:var(--card-hover-shadow)}.course-card-img{position:relative;aspect-ratio:16 / 9;overflow:hidden}.course-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.course-card:hover .course-card-img img{transform:scale(1.08)}.course-card-badge{position:absolute;top:12px;left:12px;padding:4px 14px;background:var(--primary-gradient);color:var(--text-white);font-size:.75rem;font-weight:600;border-radius:var(--radius-xl);z-index:2;letter-spacing:.5px;text-transform:uppercase}.course-card-badge--free{background:linear-gradient(135deg,#10b981,#059669)}.course-card-body{padding:20px}.course-card-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin-bottom:10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-card-meta{display:flex;align-items:center;gap:16px;font-size:.82rem;color:var(--text-muted);margin-bottom:14px}.course-card-meta span{display:flex;align-items:center;gap:5px}.course-card-rating{display:flex;align-items:center;gap:4px;margin-bottom:14px}.course-card-rating .stars{color:#f59e0b;font-size:.85rem}.course-card-rating .rating-count{font-size:.8rem;color:var(--text-muted)}.course-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid var(--border-color)}.course-card-price{display:flex;align-items:baseline;gap:8px}.course-card-price .price-current{font-size:1.25rem;font-weight:700;color:var(--primary)}.course-card-price .price-original{font-size:.85rem;color:var(--text-muted);text-decoration:line-through}.course-card-price .price-free{font-size:1.1rem;font-weight:700;color:#10b981}.course-card-action{padding:8px 18px;background:#80008014;color:var(--primary);font-size:.82rem;font-weight:600;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.course-card-action:hover{background:var(--primary);color:var(--text-white)}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.courses-section{padding:80px 0}.courses-filter{display:flex;align-items:center;gap:10px;margin-bottom:40px;flex-wrap:wrap}.filter-btn{padding:8px 22px;border-radius:var(--radius-xl);font-size:.88rem;font-weight:500;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid transparent;transition:all var(--transition-fast)}.filter-btn:hover{color:var(--primary);background:#80008014;border-color:#80008026}.filter-btn.active{color:var(--text-white);background:var(--primary-gradient);border-color:transparent;box-shadow:0 4px 16px #80008040}.video-container{position:relative;width:100%;padding-top:56.25%;border-radius:var(--radius-lg);overflow:hidden;background:#000;box-shadow:0 8px 40px #00000040}.video-container iframe,.video-container video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;cursor:pointer;transition:background var(--transition-fast);z-index:2}.video-overlay:hover{background:#0003}.video-play-btn{width:72px;height:72px;background:var(--primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #80008066;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.video-play-btn:after{content:"";display:block;width:0;height:0;border-style:solid;border-width:12px 0 12px 22px;border-color:transparent transparent transparent white;margin-left:4px}.video-overlay:hover .video-play-btn{transform:scale(1.1);box-shadow:0 12px 44px #8000808c}.curriculum-section{padding:80px 0}.curriculum-module{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:12px;overflow:hidden;background:var(--bg-primary);transition:box-shadow var(--transition-normal)}.curriculum-module:hover{box-shadow:var(--card-shadow)}.curriculum-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--bg-secondary);cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.curriculum-header:hover{background:#f0eaff}.curriculum-header.active{background:#ece4ff;border-bottom:1px solid var(--border-color)}.curriculum-header-left{display:flex;align-items:center;gap:14px}.curriculum-module-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--primary-gradient);color:var(--text-white);font-size:.8rem;font-weight:700;border-radius:50%;flex-shrink:0}.curriculum-module-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.curriculum-module-meta{font-size:.8rem;color:var(--text-muted)}.curriculum-chevron{width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-normal);color:var(--text-muted);flex-shrink:0}.curriculum-header.active .curriculum-chevron{transform:rotate(180deg);color:var(--primary)}.curriculum-content{max-height:0;overflow:hidden;transition:max-height .45s cubic-bezier(.4,0,.2,1)}.curriculum-content.active{max-height:2000px}.curriculum-content::-webkit-scrollbar{width:4px}.curriculum-content::-webkit-scrollbar-track{background:var(--bg-secondary)}.curriculum-content::-webkit-scrollbar-thumb{background:#8000804d;border-radius:4px}.curriculum-lecture{display:flex;align-items:center;gap:14px;padding:14px 24px 14px 70px;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast);cursor:pointer}.curriculum-lecture:last-child{border-bottom:none}.curriculum-lecture:hover{background:#80008008}.curriculum-lecture-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0;font-size:.85rem}.curriculum-lecture-title{flex:1;font-size:.9rem;color:var(--text-secondary)}.curriculum-lecture-duration{font-size:.8rem;color:var(--text-muted);flex-shrink:0}.testimonials-section{padding:80px 0;background:var(--bg-secondary);overflow:hidden}.testimonial-carousel{overflow:hidden;position:relative}.testimonial-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);gap:24px}.testimonial-card{min-width:calc(33.333% - 16px);padding:32px;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid var(--border-color);flex-shrink:0;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--card-hover-shadow)}.testimonial-header{display:flex;align-items:center;gap:14px;margin-bottom:18px}.testimonial-img{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid rgba(128,0,128,.15)}.testimonial-info{flex:1}.testimonial-name{font-size:1rem;font-weight:600;color:var(--text-primary)}.testimonial-role{font-size:.82rem;color:var(--text-muted)}.testimonial-stars{color:#f59e0b;font-size:.9rem;margin-bottom:12px}.testimonial-text{font-size:.95rem;font-style:italic;color:var(--text-secondary);line-height:1.7}.testimonial-text:before{content:'"';font-size:2rem;color:var(--primary-light);font-family:Georgia,serif;line-height:0;vertical-align:-.3em;margin-right:4px}.testimonial-nav{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:32px}.testimonial-dot{width:10px;height:10px;border-radius:50%;background:var(--border-color);border:none;cursor:pointer;transition:all var(--transition-fast)}.testimonial-dot:hover{background:var(--primary-light);transform:scale(1.2)}.testimonial-dot.active{width:32px;border-radius:6px;background:var(--primary-gradient)}.testimonial-arrows{display:flex;gap:10px}.testimonial-arrow{width:44px;height:44px;border-radius:50%;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;color:var(--text-secondary);transition:all var(--transition-fast)}.testimonial-arrow:hover{background:var(--primary);color:var(--text-white);border-color:var(--primary)}.faq-section{padding:80px 0}.faq-list{max-width:800px;margin:0 auto}.faq-item{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:12px;overflow:hidden;background:var(--bg-primary);transition:box-shadow var(--transition-normal)}.faq-item:hover{box-shadow:var(--card-shadow)}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;cursor:pointer;font-weight:600;font-size:1rem;color:var(--text-primary);transition:color var(--transition-fast);-webkit-user-select:none;user-select:none}.faq-question:hover{color:var(--primary)}.faq-question:after{content:"+";font-size:1.5rem;font-weight:300;color:var(--primary);transition:transform var(--transition-normal);flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.faq-question.active:after{content:"−";transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .3s ease;padding:0 24px}.faq-answer.active{max-height:500px;padding:0 24px 20px}.faq-answer p{font-size:.95rem;color:var(--text-secondary);line-height:1.7}.section-header{text-align:center;margin-bottom:56px}.section-tag{display:inline-block;padding:6px 18px;background:#80008014;color:var(--primary);font-size:.8rem;font-weight:600;border-radius:var(--radius-xl);margin-bottom:14px;letter-spacing:.5px;text-transform:uppercase}.section-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:14px}.section-subtitle{font-size:1.05rem;color:var(--text-muted);max-width:560px;margin:0 auto;line-height:1.7}.features-section{padding:80px 0}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.feature-card{text-align:center;padding:40px 28px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.feature-card:hover{transform:translateY(-6px);box-shadow:var(--card-hover-shadow)}.feature-icon{width:64px;height:64px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:#8000801a;border-radius:50%;font-size:1.5rem;color:var(--primary);transition:background var(--transition-fast),transform var(--transition-fast)}.feature-card:hover .feature-icon{background:var(--primary-gradient);color:var(--text-white);transform:scale(1.1)}.feature-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin-bottom:10px}.feature-desc{font-size:.9rem;color:var(--text-muted);line-height:1.6}.stats-bar{display:flex;align-items:center;justify-content:space-around;background:var(--primary-gradient);color:var(--text-white);border-radius:var(--radius-xl);padding:40px 32px;margin:0 auto;max-width:var(--container-max);box-shadow:0 12px 48px #80008040;position:relative;overflow:hidden}.stats-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 10% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 90% 50%,rgba(255,255,255,.08) 0%,transparent 50%);pointer-events:none}.stat-item{text-align:center;position:relative;z-index:1}.stat-value{display:block;font-size:2.25rem;font-weight:800;line-height:1.2}.stat-label{font-size:.85rem;opacity:.8;font-weight:400;margin-top:4px}.course-hero{display:flex;align-items:flex-start;gap:48px;padding:calc(var(--navbar-height) + 40px) 0 60px}.course-info{flex:1;padding-right:20px}.course-video-wrapper{flex:1;position:sticky;top:calc(var(--navbar-height) + 24px)}.course-detail-breadcrumb{font-size:.85rem;color:var(--text-muted);margin-bottom:16px}.course-detail-breadcrumb a{color:var(--primary)}.course-detail-breadcrumb a:hover{text-decoration:underline}.course-detail-title{font-size:2.2rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:16px}.course-detail-subtitle{font-size:1.05rem;color:var(--text-secondary);margin-bottom:20px;line-height:1.6}.course-detail-meta{display:flex;align-items:center;gap:20px;margin-bottom:24px;flex-wrap:wrap}.course-detail-meta-item{display:flex;align-items:center;gap:6px;font-size:.88rem;color:var(--text-secondary)}.course-detail-price{display:flex;align-items:baseline;gap:12px;margin-bottom:24px}.course-detail-price .price-current{font-size:2rem;font-weight:800;color:var(--primary)}.course-detail-price .price-original{font-size:1.15rem;color:var(--text-muted);text-decoration:line-through}.course-detail-price .price-discount{padding:4px 12px;background:#10b9811a;color:#059669;font-size:.82rem;font-weight:600;border-radius:var(--radius-sm)}.enroll-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:18px 32px;background:var(--primary-gradient);color:var(--text-white);font-size:1.1rem;font-weight:700;border-radius:var(--radius-md);box-shadow:0 8px 32px #8000804d;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.enroll-btn:hover{transform:translateY(-2px);box-shadow:0 12px 44px #80008066,var(--primary-glow)}.enroll-btn:active{transform:translateY(0)}.course-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}.course-feature-item{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-secondary)}.course-feature-item .icon{color:var(--primary);font-size:1.1rem;flex-shrink:0}.footer{background:var(--bg-dark);color:#ffffffb3;padding:64px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px}.footer-brand{max-width:300px}.footer-brand-logo img{width:140px;margin-bottom:16px;filter:brightness(0) invert(1)}.footer-brand-desc{font-size:.9rem;line-height:1.7;color:#ffffff80;margin-bottom:20px}.footer-social{display:flex;gap:12px}.footer-social a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff14;color:#fff9;font-size:1rem;transition:all var(--transition-fast)}.footer-social a:hover{background:var(--primary);color:var(--text-white);transform:translateY(-3px)}.footer-links-title{font-size:.82rem;font-weight:700;color:var(--text-white);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:20px}.footer-link{display:block;font-size:.9rem;color:#ffffff80;padding:6px 0;transition:color var(--transition-fast),padding-left var(--transition-fast)}.footer-link:hover{color:var(--text-white);padding-left:6px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.82rem;color:#fff6}.footer-bottom a{color:#ffffff80;transition:color var(--transition-fast)}.footer-bottom a:hover{color:var(--primary-light)}.footer-bottom-links{display:flex;gap:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;font-size:.95rem;font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;border:2px solid transparent;line-height:1}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary-gradient);color:var(--text-white);box-shadow:0 4px 16px #80008040}.btn-primary:hover{box-shadow:0 8px 28px #80008059;transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}.btn-outline:hover{background:var(--primary);color:var(--text-white);transform:translateY(-2px)}.btn-ghost{background:#80008014;color:var(--primary)}.btn-ghost:hover{background:#80008026}.btn-lg{padding:16px 40px;font-size:1.05rem;border-radius:var(--radius-lg)}.btn-sm{padding:8px 18px;font-size:.82rem;border-radius:var(--radius-sm)}.btn-icon{width:44px;height:44px;padding:0;border-radius:50%}.search-bar{display:flex;align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-xl);padding:4px 6px 4px 20px;max-width:520px;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.search-bar:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px #8000801a}.search-bar .search-icon{color:var(--text-muted);font-size:1.1rem;flex-shrink:0;margin-right:12px}.search-bar input{flex:1;padding:12px 0;font-size:.95rem;color:var(--text-primary);background:transparent}.search-bar input::placeholder{color:var(--text-muted)}.search-bar .search-btn{padding:10px 24px;background:var(--primary-gradient);color:var(--text-white);font-weight:600;font-size:.88rem;border-radius:var(--radius-xl);transition:all var(--transition-fast);flex-shrink:0}.search-bar .search-btn:hover{box-shadow:0 4px 16px #8000804d}.steps-section{padding:80px 0;background:var(--bg-secondary)}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;position:relative}.steps-grid:before{content:"";position:absolute;top:48px;left:15%;right:15%;height:2px;background:linear-gradient(90deg,var(--primary),var(--primary-light),var(--primary));opacity:.25;z-index:0}.step-card{text-align:center;position:relative;z-index:1}.step-number{width:56px;height:56px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:var(--primary-gradient);color:var(--text-white);font-size:1.25rem;font-weight:800;border-radius:50%;box-shadow:0 8px 24px #80008040;position:relative}.step-number:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px dashed rgba(128,0,128,.2)}.step-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:10px}.step-desc{font-size:.9rem;color:var(--text-muted);line-height:1.6;max-width:260px;margin:0 auto}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeInUp{animation:fadeInUp .6s ease forwards;opacity:0}.animate-fadeInDown{animation:fadeInDown .6s ease forwards;opacity:0}.animate-slideInLeft{animation:slideInLeft .6s ease forwards;opacity:0}.animate-slideInRight{animation:slideInRight .6s ease forwards;opacity:0}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-scaleIn{animation:scaleIn .5s ease forwards;opacity:0}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}@media (max-width: 1200px){h1{font-size:3rem}h2{font-size:2.4rem}.hero-title{font-size:3.5rem}.section-title{font-size:2.2rem}.stats-bar{padding:32px 24px}.stat-value{font-size:2rem}}@media (max-width: 992px){h1{font-size:2.5rem}h2{font-size:2rem}.hero-title{font-size:2.8rem}.grid-4,.course-grid,.features-grid{grid-template-columns:repeat(2,1fr)}.course-hero{flex-direction:column}.course-video-wrapper{position:static;width:100%}.footer-grid{grid-template-columns:repeat(2,1fr)}.testimonial-card{min-width:calc(50% - 12px)}}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.75rem}.hero-title{font-size:2.2rem;letter-spacing:-1px}.hero-section{min-height:80vh;padding:100px 16px 60px}.hero-subtitle{font-size:1rem}.section-title{font-size:1.8rem}.nav-toggle{display:flex}.nav-links{display:none;position:fixed;top:var(--navbar-height);left:0;right:0;bottom:0;flex-direction:column;align-items:stretch;background:var(--bg-primary);padding:20px 24px;gap:4px;overflow-y:auto;box-shadow:0 12px 40px #0000001a;animation:fadeInDown .3s ease}.nav-links.active{display:flex}.nav-link{padding:14px 16px;font-size:1.05rem;border-radius:var(--radius-sm)}.nav-link:after{display:none}.nav-cta{margin-left:0;margin-top:12px;text-align:center;padding:14px 24px}.grid-2,.grid-3,.course-grid,.features-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr;gap:24px}.steps-grid:before{display:none}.course-features-grid{grid-template-columns:1fr}.hero-stats{flex-direction:column;gap:20px}.hero-stat+.hero-stat:before{display:none}.hero-cta-group{flex-direction:column}.stats-bar{flex-direction:column;gap:28px;padding:32px 24px;border-radius:var(--radius-lg)}.testimonial-card{min-width:calc(100% + -0px)}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px;text-align:center}.courses-filter{overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px;-webkit-overflow-scrolling:touch}.filter-btn{flex-shrink:0}}@media (max-width: 576px){html{font-size:15px}.hero-title{font-size:1.8rem}.hero-section{min-height:75vh;padding:90px 12px 50px}.section-header{margin-bottom:36px}.section-title{font-size:1.5rem}.container{padding:0 16px}.course-card-body{padding:16px}.course-detail-title{font-size:1.6rem}.curriculum-header{padding:14px 16px}.curriculum-lecture{padding:12px 16px 12px 50px}.testimonial-card{padding:24px}.stat-value{font-size:1.75rem}.enroll-btn{padding:16px 24px;font-size:1rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:40px}.mt-5{margin-top:64px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:40px}.mb-5{margin-bottom:64px}.py-1{padding-top:8px;padding-bottom:8px}.py-2{padding-top:16px;padding-bottom:16px}.py-3{padding-top:24px;padding-bottom:24px}.py-4{padding-top:40px;padding-bottom:40px}.py-5{padding-top:64px;padding-bottom:64px}.px-1{padding-left:8px;padding-right:8px}.px-2{padding-left:16px;padding-right:16px}.px-3{padding-left:24px;padding-right:24px}.px-4{padding-left:40px;padding-right:40px}.px-5{padding-left:64px;padding-right:64px}.hidden{display:none!important}.block{display:block}.flex{display:flex}.inline{display:inline}.inline-flex{display:inline-flex}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.gap-4{gap:32px}.rounded{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px}.shadow{box-shadow:var(--card-shadow)}.shadow-lg{box-shadow:var(--card-hover-shadow)}.shadow-none{box-shadow:none}.w-full{width:100%}.w-auto{width:auto}.max-w-lg{max-width:640px}.max-w-xl{max-width:800px}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.pointer{cursor:pointer}::selection{background:#80008033;color:var(--text-primary)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(128,0,128,.3) transparent}.custom-scrollbar::-webkit-scrollbar{width:5px;height:5px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#8000804d;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#80008080}.marquee-container{overflow:hidden;width:100%;padding:16px 0;background:var(--bg-secondary)}.marquee-track{display:flex;align-items:center;gap:48px;animation:marqueeScroll 30s linear infinite;width:max-content}.marquee-track:hover{animation-play-state:paused}.marquee-item{display:flex;align-items:center;gap:12px;font-size:.95rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.marquee-item img{height:32px;width:auto;filter:grayscale(100%);opacity:.5;transition:all var(--transition-fast)}.marquee-item:hover img{filter:grayscale(0%);opacity:1}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.back-to-top{position:fixed;bottom:32px;right:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--primary-gradient);color:var(--text-white);border-radius:50%;font-size:1.25rem;cursor:pointer;z-index:999;opacity:0;visibility:hidden;transform:translateY(20px);transition:all var(--transition-normal);box-shadow:0 6px 24px #8000804d;border:none}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{transform:translateY(-4px) scale(1.08);box-shadow:0 10px 36px #80008066}.glass-card{background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000000f}.pricing-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:40px 32px;text-align:center;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.pricing-card:hover{transform:translateY(-8px);box-shadow:var(--card-hover-shadow)}.pricing-card.featured{background:var(--primary-gradient);color:var(--text-white);border-color:transparent;box-shadow:0 12px 48px #8000804d;transform:scale(1.05)}.pricing-card.featured:hover{transform:scale(1.05) translateY(-8px)}.pricing-card .plan-name{font-size:1.1rem;font-weight:600;margin-bottom:12px}.pricing-card .plan-price{font-size:2.5rem;font-weight:800;margin-bottom:8px}.pricing-card .plan-period{font-size:.85rem;opacity:.7;margin-bottom:28px}.pricing-card .plan-features{text-align:left;margin-bottom:32px}.pricing-card .plan-feature{padding:8px 0;font-size:.9rem;display:flex;align-items:center;gap:10px}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;font-size:.75rem;font-weight:600;border-radius:var(--radius-xl);text-transform:uppercase;letter-spacing:.5px}.badge-purple{background:#8000801a;color:var(--primary)}.badge-green{background:#10b9811a;color:#059669}.badge-orange{background:#f59e0b1a;color:#d97706}.badge-red{background:#ef44441a;color:#dc2626}.skeleton{background:linear-gradient(90deg,#f0ecf5 25%,#e8e0f0,#f0ecf5 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-text{height:14px;margin-bottom:10px;width:100%}.skeleton-text.short{width:60%}.skeleton-img{aspect-ratio:16 / 9;width:100%}.skeleton-circle{width:48px;height:48px;border-radius:50%}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);padding:6px 14px;background:var(--bg-dark);color:var(--text-white);font-size:.78rem;font-weight:500;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:all var(--transition-fast);z-index:100}[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:.88rem;font-weight:600;color:var(--text-primary);margin-bottom:6px}.form-input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:.95rem;color:var(--text-primary);background:var(--bg-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #8000801a}.form-input::placeholder{color:var(--text-muted)}textarea.form-input{resize:vertical;min-height:120px}.player-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-dark)}.player-header{padding:16px 24px;background:#000;display:flex;align-items:center;gap:24px;border-bottom:1px solid #333}.back-link{color:#fff;display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:500;transition:color .2s}.back-link:hover{color:var(--primary-light)}.player-course-title{color:#fff;font-size:1.2rem;margin:0}.player-main{display:flex;flex:1;overflow:hidden}.player-video-section{flex:1;display:flex;flex-direction:column;padding:24px;overflow-y:auto;background:var(--bg-dark)}.video-wrapper{aspect-ratio:16/9;width:100%;max-height:70vh;background:#000;border-radius:8px;overflow:hidden}.player-controls{margin-top:24px;color:#fff}.player-sidebar{width:350px;background:#111;border-left:1px solid #333;display:flex;flex-direction:column}.sidebar-header{padding:20px;border-bottom:1px solid #333;color:#fff}.sidebar-header h3{margin:0;font-size:1.1rem}.sidebar-curriculum{flex:1;overflow-y:auto}.sidebar-module{border-bottom:1px solid #222}.sidebar-module-header{padding:16px 20px;background:#1a1a1a;color:#fff}.sidebar-module-header h4{margin:0 0 4px;font-size:.95rem}.sidebar-module-header span{font-size:.8rem;color:#888}.sidebar-module-lectures{display:flex;flex-direction:column}.sidebar-lecture-btn{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;width:100%;text-align:left;background:transparent;border:none;color:#ccc;cursor:pointer;transition:all .2s;font-family:var(--font-primary);font-size:.9rem}.sidebar-lecture-btn:hover{background:#222;color:#fff}.sidebar-lecture-btn.active{background:var(--primary-dark);color:#fff;font-weight:500;border-left:4px solid var(--primary-light)}@media (max-width: 992px){.player-main{flex-direction:column;overflow-y:auto}.player-sidebar{width:100%;height:auto;border-left:none;border-top:1px solid #333}.player-video-section{overflow:visible}}
