.ecosystem-hero{background-color:#030014;justify-content:center;align-items:center;min-height:100vh;padding:8rem 0;display:flex;position:relative;overflow:hidden}.ecosystem-hero__bg{z-index:0;position:absolute;inset:0;overflow:hidden}.ecosystem-glow{filter:blur(120px);opacity:.5;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.glow-1{background:radial-gradient(circle,#00e5ff66 0%,#0000 70%);width:50vw;height:50vw;animation-delay:0s;top:-10%;left:-10%}.glow-2{background:radial-gradient(circle,#e040fb4d 0%,#0000 70%);width:60vw;height:60vw;animation-delay:-5s;bottom:-20%;right:-10%}.glow-3{background:radial-gradient(circle,#39ff1433 0%,#0000 70%);width:40vw;height:40vw;animation-delay:-10s;top:40%;left:50%;transform:translate(-50%)}@keyframes float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-50px)scale(1.1)}66%{transform:translate(-20px,20px)scale(.9)}}.ecosystem-hero__content{z-index:10;text-align:center;flex-direction:column;align-items:center;gap:2rem;max-width:1200px;display:flex;position:relative}.ecosystem-carousel{opacity:1;flex-direction:column;align-items:center;gap:1.5rem;min-height:280px;transition:opacity .4s,transform .4s;display:flex;transform:translateY(0)}.carousel--fading{opacity:0;transform:translateY(12px)}.carousel--visible{opacity:1;transform:translateY(0)}.ecosystem-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#a0aec0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:border-color .4s;display:inline-flex}.ecosystem-badge--teacher{border-color:#00e5ff4d}.ecosystem-badge--learner{border-color:#e040fb4d}.ecosystem-badge--developer{border-color:#39ff144d}.ecosystem-badge-dot{border-radius:50%;width:8px;height:8px;transition:background-color .4s,box-shadow .4s}.dot--teacher{background-color:#00e5ff;box-shadow:0 0 10px #00e5ff}.dot--learner{background-color:#e040fb;box-shadow:0 0 10px #e040fb}.dot--developer{background-color:#39ff14;box-shadow:0 0 10px #39ff14}.gradient-text{-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-teacher{background-image:linear-gradient(135deg,#00e5ff 0%,#07f 100%)}.gradient-learner{background-image:linear-gradient(135deg,#e040fb 0%,#7c4dff 100%)}.gradient-developer{background-image:linear-gradient(135deg,#39ff14 0%,#00c853 100%)}.ecosystem-hero__title{letter-spacing:-.02em;color:#fff;max-width:800px;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:800;line-height:1.1}.ecosystem-hero__subtitle{color:#a0aec0;max-width:700px;font-size:clamp(1.125rem,2vw,1.25rem);line-height:1.6}.ecosystem-hero__cta{color:#000;border-radius:14px;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-flex}.ecosystem-hero__cta:hover{transform:translateY(-3px);box-shadow:0 12px 28px #0000004d}.cta--teacher{background:linear-gradient(135deg,#00e5ff,#07f)}.cta--learner{color:#fff;background:linear-gradient(135deg,#e040fb,#7c4dff)}.cta--developer{background:linear-gradient(135deg,#39ff14,#00c853)}.carousel-indicators{align-items:center;gap:.75rem;display:flex}.carousel-dot{cursor:pointer;background:0 0;border:1.5px solid #fff3;border-radius:50%;width:10px;height:10px;padding:0;transition:all .3s}.carousel-dot:hover{border-color:#ffffff80}.carousel-dot--active{border-color:#0000;border-radius:100px;width:32px}.carousel-dot--active.dot--teacher{background:#00e5ff;box-shadow:0 0 12px #00e5ff66}.carousel-dot--active.dot--learner{background:#e040fb;box-shadow:0 0 12px #e040fb66}.carousel-dot--active.dot--developer{background:#39ff14;box-shadow:0 0 12px #39ff1466}.ecosystem-paths{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;width:100%;margin-top:1rem;display:grid}.ecosystem-card{text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff0d;border-radius:24px;flex-direction:column;align-items:flex-start;padding:2.5rem;text-decoration:none;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.ecosystem-card:before{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff1a 0%,#0000 100%);transition:opacity .4s;position:absolute;inset:0}.ecosystem-card:hover,.ecosystem-card--highlighted{background:#ffffff0d;border-color:#ffffff26;transform:translateY(-8px);box-shadow:0 20px 40px #0006}.ecosystem-card:hover:before,.ecosystem-card--highlighted:before{opacity:1}.ecosystem-card__icon{color:#fff;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:1.5rem;display:flex}.bg-teacher{background:linear-gradient(135deg,#00e5ff 0%,#07f 100%);box-shadow:0 10px 20px #00e5ff33}.bg-learner{background:linear-gradient(135deg,#e040fb 0%,#7c4dff 100%);box-shadow:0 10px 20px #e040fb33}.bg-developer{background:linear-gradient(135deg,#39ff14 0%,#00c853 100%);box-shadow:0 10px 20px #39ff1433}.text-teacher{color:#00e5ff}.text-learner{color:#e040fb}.text-developer{color:#39ff14}.ecosystem-card__title{color:#fff;margin-bottom:.75rem;font-size:1.5rem;font-weight:700}.ecosystem-card__desc{color:#a0aec0;flex-grow:1;margin-bottom:2rem;font-size:1rem;line-height:1.6}.ecosystem-card__link{align-items:center;gap:.5rem;font-size:1rem;font-weight:600;transition:transform .3s;display:inline-flex}.ecosystem-card:hover .ecosystem-card__link{transform:translate(5px)}.ecosystem-synergy{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff05;border:1px solid #ffffff0f;border-radius:16px;margin-top:3rem;padding:1.5rem 2rem}.ecosystem-synergy__text{color:#718096;text-align:center;margin:0;font-size:1rem;line-height:1.7}.animate-fade-in{opacity:0;animation:1s ease-out forwards fadeIn}.animate-fade-in-up{opacity:0;animation:1s ease-out forwards fadeInUp;transform:translateY(20px)}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}@keyframes fadeIn{to{opacity:1}}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}
