.hero-banner .hero-copy{position:relative;z-index:2}
.hero-banner .hero-actions{z-index:3}
.hero-banner .hero-actions .glass-learning,.header .nav-cta.glass-learning{position:relative;min-width:350px;min-height:78px;gap:30px;padding:20px 32px;border:1.5px solid #fffffff2;border-radius:25px;color:#fff;background:radial-gradient(ellipse at 15% 10%,#edfaffb8,transparent 62%),radial-gradient(ellipse at 92% 92%,#d7efffc4,transparent 55%),linear-gradient(115deg,#83b7e0ed,#547caf 58%,#8dbce1f5);box-shadow:0 0 32px #92cfff85,0 10px 28px #6898cb30,inset 0 0 21px #e5f7ff80;backdrop-filter:blur(12px);font-size:21px;font-weight:800;letter-spacing:.15px;text-shadow:0 1px 4px #234b7e80;transition:box-shadow .25s,transform .25s}
.hero-banner .hero-actions .glass-learning:hover,.header .nav-cta.glass-learning:hover{background:radial-gradient(ellipse at 15% 10%,#edfaffb8,transparent 62%),radial-gradient(ellipse at 92% 92%,#d7efffc4,transparent 55%),linear-gradient(115deg,#75a9d8,#496e9e 58%,#7bafd8);box-shadow:0 0 45px #7fc4ffc0,0 12px 30px #497fba40,inset 0 0 25px #e5f7ff90}
.hero-banner .hero-actions .glass-learning:focus-visible,.header .nav-cta.glass-learning:focus-visible{outline:3px solid #214d82;outline-offset:6px}
.hero-banner .hero-actions .glass-learning .learning-label{position:relative;z-index:1;font-size:inherit;font-weight:inherit;line-height:inherit}
.learning-button-pulse{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:#eefaff12;stroke:#eaf9ff;stroke-width:1.2;filter:drop-shadow(0 0 5px #d4efff);opacity:0}
.learning-button-pulse ellipse{transform-box:fill-box;transform-origin:center;vector-effect:non-scaling-stroke}
.hero-banner{--knowledge-cycle:8s;--knowledge-pulse:4s}
.knowledge-flow{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible;pointer-events:none;fill:none}
.knowledge-trails{stroke:url(#knowledge-tint);stroke-width:7;opacity:.22;filter:url(#knowledge-soft)}
.knowledge-threads{stroke:#81d3fb;stroke-width:1.8;stroke-linecap:round;opacity:.62;filter:drop-shadow(0 0 3px #a5dcff)}
.knowledge-threads path:nth-child(2){stroke:#90d8ff;stroke-width:1.5}
.knowledge-sparks{stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-dasharray:20 2020;filter:drop-shadow(0 0 3px #a5dcff)}
.knowledge-sparks path{opacity:0}
.knowledge-arrival{fill:#c0e9ff;opacity:.2;filter:url(#knowledge-soft)}
.aha-halo{fill:#ffe8a5;opacity:0;filter:url(#knowledge-soft)}
.aha-light{stroke:#b79a57;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:0;filter:drop-shadow(0 0 3px #fff0b9)}
.aha-twinkle{stroke:#e1c57b;stroke-width:1.4}
.flow-ready .learning-button-pulse{opacity:1}
.flow-ready .learning-button-pulse ellipse{animation:learning-launch var(--knowledge-pulse) linear infinite}
.flow-ready .knowledge-sparks path{animation:knowledge-delivery var(--knowledge-cycle) linear infinite}
.flow-ready .knowledge-sparks path:nth-child(2){animation-delay:.16s}
.flow-ready .knowledge-sparks-next path{animation-delay:4s}
.flow-ready .knowledge-sparks-next path:nth-child(2){animation-delay:4.16s}
.flow-ready .knowledge-arrival{animation:learning-arrival var(--knowledge-pulse) linear 4s infinite}
.flow-ready .aha-halo{animation:learning-halo var(--knowledge-pulse) linear 4s infinite}
.flow-ready .aha-light{animation:learning-aha var(--knowledge-pulse) linear 4s infinite}
.flow-paused .learning-button-pulse ellipse,.flow-paused .knowledge-sparks path,.flow-paused .knowledge-arrival,.flow-paused .aha-halo,.flow-paused .aha-light{animation-play-state:paused}
.hero-banner:has(.glass-learning:hover) .knowledge-trails{opacity:.35}
/* Launch every 4s, before the previous pills finish at 4.3s.
   Two staggered 8s waves preserve the original travel speed and bridge each pulse. */
@keyframes learning-launch{0%{transform:scale(.06);opacity:0}4%{transform:scale(.06);opacity:.55}24%{transform:scale(1.15);opacity:.2}28%,100%{transform:scale(1.3);opacity:0}}
@keyframes knowledge-delivery{0%,11%{stroke-dashoffset:0;opacity:0}11.5%{stroke-dashoffset:0;opacity:.85}52.5%{stroke-dashoffset:-980;opacity:.85}54%{stroke-dashoffset:-1020;opacity:0}100%{stroke-dashoffset:-1020;opacity:0}}
@keyframes learning-arrival{0%,2%,44%,100%{opacity:.2}12%{opacity:.65}24%{opacity:.3}}
@keyframes learning-halo{0%,2%,44%,100%{opacity:0}12%{opacity:.3}24%{opacity:.2}}
@keyframes learning-aha{0%,2%,44%,100%{opacity:0}12%{opacity:.8}26%{opacity:.65}}
@media(max-width:760px){.hero-banner .hero-actions{width:calc(100% - 36px)}.hero-banner .hero-actions .glass-learning{width:min(100%,330px);min-width:0;min-height:72px;font-size:19px;padding:18px 24px;border-radius:23px}.knowledge-trails{stroke-width:5}.knowledge-threads{stroke-width:1.5}}
@media(prefers-reduced-motion:reduce){.flow-ready .knowledge-sparks path,.flow-ready .learning-button-pulse ellipse,.flow-ready .knowledge-arrival,.flow-ready .aha-halo,.flow-ready .aha-light{animation:none}.learning-button-pulse{display:none}.knowledge-sparks path,.aha-halo,.aha-light{opacity:0}.knowledge-arrival{opacity:.2}.hero-banner .hero-actions .glass-learning{transition:none}.hero-banner .hero-actions .glass-learning:hover{transform:none}}

/* Match the hero's glass finish at navigation-button size. */
.header .nav-cta.glass-learning{min-width:0;min-height:43px;padding:10px 14px;border-radius:14px;font-size:11px;gap:17px;justify-content:center}
@media(prefers-reduced-motion:reduce){.header .nav-cta.glass-learning{transition:none}.header .nav-cta.glass-learning:hover{transform:none}}
