:root{--brand-50: #EEF4FC;--brand-100: #D6E3F5;--brand-200: #A8C4E8;--brand-300: #7AA5DB;--brand-400: #5B8DD9;--brand-500: #2E5BA8;--brand-600: #1B3A6B;--brand-700: #152E56;--brand-800: #0F2240;--brand-900: #09162A;--brand-950: #050D1A;--kente: #E63B2E;--kente-light: #F5A5A0;--kente-dark: #B82D23;--savanna: #F0A500;--savanna-light: #F5C866;--savanna-dark: #C48400;--forest: #2E9B5F;--forest-light: #6BC194;--forest-dark: #237A4A;--ghost: #F4F6FA;--mist: #E8EDF5;--slate: #6B7A99;--navy: #1B3A6B;--academic-blue: #2E5BA8;--sky-blue: #5B8DD9;--success: #2E9B5F;--warning: #F0A500;--danger: #E63B2E;--info: #5B8DD9;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.2, .8, .2, 1)}.glass{background:#fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.dark .glass{background:#ffffff0d;border-color:#ffffff1a}.glass-strong{background:#fffffff2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid #e2e8f0}.dark .glass-strong{background:#0f0f10f2;border-color:#ffffff1a}.glass-card{background:#fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(226,232,240,.5);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.dark .glass-card{background:#ffffff0d;border-color:#ffffff1a}.glass-card-premium{background:#ffffffbf;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%)}.dark .glass-card-premium{background:#0f0f10cc}.marquee-wrapper{overflow:hidden}.marquee-track{display:flex;width:-moz-max-content;width:max-content;animation:marquee-scroll 40s linear infinite}.marquee-wrapper:hover .marquee-track{animation-play-state:paused}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.bento-card{position:relative;overflow:hidden;border-radius:1.5rem;background:#fff;border:1px solid #e2e8f0;padding:1.5rem;transition:all .5s}.dark .bento-card{background:#141414;border-color:#ffffff1a}.bento-card:hover{border-color:var(--brand-300);box-shadow:0 20px 25px -5px #2e5ba81a}.dark .bento-card:hover{border-color:#5b8dd94d}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--brand-600);color:#fff;font-weight:600;border-radius:.75rem;transition:all .2s;box-shadow:0 10px 15px -3px #1b3a6b33}.btn-primary:hover{background:var(--brand-700);box-shadow:0 20px 25px -5px #1b3a6b4d;transform:translateY(-2px)}.btn-primary:active{transform:scale(.95)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;color:#0f172a;font-weight:600;border-radius:.75rem;border:1px solid #e2e8f0;transition:all .2s}.dark .btn-secondary{background:#ffffff0d;color:#fff;border-color:#ffffff1a}.btn-secondary:hover{background:#eef4fc;border-color:var(--brand-300);transform:translateY(-2px)}.dark .btn-secondary:hover{background:#5b8dd91a;border-color:#5b8dd94d}.btn-secondary:active{transform:scale(.95)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;color:#475569;font-weight:500;border-radius:.5rem;transition:all .2s}.dark .btn-ghost{color:#94a3b8}.btn-ghost:hover{color:var(--brand-600);background:var(--brand-50)}.dark .btn-ghost:hover{color:var(--brand-400);background:#5b8dd91a}.feature-card{position:relative;padding:1.5rem;border-radius:1rem;background:#f8fafc;border:1px solid #e2e8f0;transition:all .3s}.dark .feature-card{background:#ffffff0d;border-color:#ffffff0d}.feature-card:hover{background:#fff;border-color:var(--brand-200);box-shadow:0 20px 25px -5px #2e5ba80d}.dark .feature-card:hover{background:#ffffff1a;border-color:#5b8dd933}.course-card{position:relative;background:#fff;border-radius:1rem;overflow:hidden;border:1px solid #e2e8f0;transition:all .3s;box-shadow:0 1px 3px #0000001a}.dark .course-card{background:#141414;border-color:#ffffff1a}.course-card:hover{border-color:var(--brand-300);box-shadow:0 20px 25px -5px #2e5ba81a;transform:translateY(-4px)}.dark .course-card:hover{border-color:#5b8dd94d}.course-card .course-image{width:100%;height:12rem;-o-object-fit:cover;object-fit:cover;transition:transform .5s}.course-card:hover .course-image{transform:scale(1.05)}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-brand{background:var(--brand-100);color:var(--brand-700)}.dark .badge-brand{background:#5b8dd91a;color:var(--brand-300)}.badge-success{background:#d1fae5;color:#047857}.dark .badge-success{background:#10b9811a;color:#6ee7b7}.badge-warning{background:#fef3c7;color:#b45309}.dark .badge-warning{background:#f59e0b1a;color:#fcd34d}.nav-link{position:relative;font-size:.875rem;font-weight:500;color:#475569;transition:color .2s}.dark .nav-link{color:#94a3b8}.nav-link:after{content:"";position:absolute;bottom:-.25rem;left:0;width:0;height:.125rem;background:var(--brand-600);border-radius:9999px;transition:width .3s}.nav-link:hover{color:var(--brand-600)}.dark .nav-link:hover{color:var(--brand-400)}.nav-link:hover:after,.nav-link.active:after{width:100%}.backdrop-blur-nav{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(2deg)}}@keyframes float-slow{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(1deg)}}@keyframes pulse-soft{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}@keyframes drift-slow{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(100px,-50px) rotate(90deg)}50%{transform:-50px,100px rotate(180deg)}75%{transform:-100px,-50px rotate(270deg)}}@keyframes drift-medium{0%,to{transform:translate(0) rotate(0)}25%{transform:-80px,60px rotate(-120deg)}50%{transform:60px,-80px rotate(-240deg)}75%{transform:-60px,-60px rotate(-360deg)}}@keyframes drift-fast{0%,to{transform:translate(0) rotate(0)}33%{transform:120px,40px rotate(120deg)}66%{transform:-40px,-120px rotate(240deg)}}@keyframes fade-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.rotating-text-wrapper{display:inline-block;position:relative;height:1em;overflow:hidden;vertical-align:bottom}.rotating-text{display:flex;flex-direction:column;animation:rotate-text 9s ease-in-out infinite}.rotating-text span{display:block;height:1em;line-height:1}@keyframes rotate-text{0%,20%{transform:translateY(0)}25%,45%{transform:translateY(-1em)}50%,70%{transform:translateY(-2em)}75%,95%{transform:translateY(-3em)}to{transform:translateY(0)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:float-slow 8s ease-in-out infinite}.animate-pulse-soft{animation:pulse-soft 4s ease-in-out infinite}.animate-drift-slow{animation:drift-slow 30s ease-in-out infinite}.animate-drift-medium{animation:drift-medium 25s ease-in-out infinite}.animate-drift-fast{animation:drift-fast 20s ease-in-out infinite}.animate-fade-up{animation:fade-up .8s var(--ease-out-expo) forwards}.animate-fade-down{animation:fade-down .8s var(--ease-out-expo) forwards}.animate-scale-in{animation:scale-in .5s var(--ease-out-back) forwards}[data-entrance]{opacity:1}[data-entrance].entrance-pending{opacity:0;will-change:transform,opacity}[data-entrance=rise].entrance-pending{transform:translateY(24px) scale(.98)}[data-entrance=scale].entrance-pending{transform:scale(.95)}[data-entrance=fade].entrance-pending{transform:none}[data-entrance].is-visible{animation:fade-up .8s var(--ease-out-expo) forwards}[data-entrance=scale].is-visible{animation:scale-in .6s var(--ease-out-back) forwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-entrance]{opacity:1!important;transform:none!important}}
