.lang-hero{background:linear-gradient(160deg,#ecfdf5 0%,#fff 50%,#f8fafc 100%);position:relative;overflow:hidden}.lang-hero:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 12% 15%,rgba(16,185,129,.14),transparent 36%),radial-gradient(circle at 85% 12%,rgba(15,23,42,.06),transparent 34%);pointer-events:none}.lang-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.lang-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px -30px rgba(15,23,42,.34);border-color:rgba(16,185,129,.36)}.lang-pill{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#047857}.lang-wave span{display:block;width:4px;border-radius:999px;background:linear-gradient(180deg,#10b981,#047857);transform-origin:center}@keyframes langWave{0%,100%{transform:scaleY(.42)}50%{transform:scaleY(1)}}@keyframes langFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes langDash{to{stroke-dashoffset:-220}}.lang-bar{animation:langWave 1.5s ease-in-out infinite}.lang-bar:nth-child(2){animation-delay:.12s}.lang-bar:nth-child(3){animation-delay:.24s}.lang-bar:nth-child(4){animation-delay:.36s}.lang-bar:nth-child(5){animation-delay:.48s}.lang-float{animation:langFloat 4s ease-in-out infinite}.lang-dash{stroke-dasharray:6 8;animation:langDash 7s linear infinite}.workflow-panel{display:none}.workflow-panel.is-active{display:block}.workflow-step.is-active{border-color:#10b981;background:#ecfdf5;color:#065f46}@media(prefers-reduced-motion:reduce){.lang-card:hover{transform:none}.lang-bar,.lang-float,.lang-dash{animation:none!important}}
/* ── Languages hub: animated SVG infographics (#languages-hub-infographics) ── */
#languages-hub-infographics .lang-ig-svg-wrap {position:relative;width:100%;max-height:240px;aspect-ratio:5/3;margin-left:auto;margin-right:auto}
#languages-hub-infographics .lang-ig-svg {display:block;width:100%;height:100%}
#languages-hub-infographics circle.lang-ig-ring {transform-box:fill-box;transform-origin:center}
#languages-hub-infographics .lang-ig-ring {animation:langIgRingPulse 3.2s ease-in-out infinite}
#languages-hub-infographics .lang-ig-ring-d {animation-delay:.55s}
#languages-hub-infographics .lang-ig-ring-d2 {animation-delay:1.1s}
#languages-hub-infographics .lang-ig-core {animation:langIgCoreGlow 2.8s ease-in-out infinite}
#languages-hub-infographics .lang-ig-node {animation:langIgNodeLift 2.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
#languages-hub-infographics .lang-ig-n2 {animation-delay:.18s}
#languages-hub-infographics .lang-ig-n3 {animation-delay:.36s}
#languages-hub-infographics .lang-ig-n4 {animation-delay:.54s}
#languages-hub-infographics .lang-ig-n5 {animation-delay:.72s}
#languages-hub-infographics .lang-ig-n6 {animation-delay:.9s}
#languages-hub-infographics .lang-ig-n7 {animation-delay:1.08s}
#languages-hub-infographics .lang-ig-n8 {animation-delay:1.26s}
#languages-hub-infographics .lang-ig-n9 {animation-delay:1.44s}
#languages-hub-infographics .lang-ig-flow {stroke-dasharray:8 10;animation:langIgDashFlow 6s linear infinite}
#languages-hub-infographics .lang-ig-bar {transform-origin:center bottom;animation:langIgBarBreathe 1.35s ease-in-out infinite}
#languages-hub-infographics .lang-ig-bar-b {animation-delay:.12s}
#languages-hub-infographics .lang-ig-bar-c {animation-delay:.24s}
#languages-hub-infographics .lang-ig-bar-d {animation-delay:.36s}
#languages-hub-infographics .lang-ig-bar-e {animation-delay:.48s}
#languages-hub-infographics .lang-ig-bar-f {animation-delay:.6s}
#languages-hub-infographics .lang-ig-clean-bar {animation:langIgBarSmooth 2s ease-in-out infinite;transform-origin:center bottom}
#languages-hub-infographics .lang-ig-clean-bar-b {animation-delay:.25s}
#languages-hub-infographics .lang-ig-clean-bar-c {animation-delay:.5s}
#languages-hub-infographics .lang-ig-clean-bar-d {animation-delay:.75s}
#languages-hub-infographics .lang-ig-clean-bar-e {animation-delay:1s}
#languages-hub-infographics .lang-ig-clean-bar-f {animation-delay:1.25s}
#languages-hub-infographics .lang-ig-speck {animation:langIgSpeckle 1.8s ease-in-out infinite}
#languages-hub-infographics .lang-ig-speck-b {animation-delay:.35s}
#languages-hub-infographics .lang-ig-speck-c {animation-delay:.7s}
#languages-hub-infographics .lang-ig-band-lang {animation:langIgBandShift 5s ease-in-out infinite}
#languages-hub-infographics .lang-ig-band-audio {animation:langIgBandShift 5s ease-in-out infinite reverse}
#languages-hub-infographics .lang-ig-scan {animation:langIgScan 3.6s ease-in-out infinite;transform-box:fill-box}
#languages-hub-infographics .lang-ig-vs-arrow {animation:langIgVsArrow 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}

@keyframes langIgRingPulse{
  0%,100%{opacity:.34;stroke-width:2;transform:scale(.98)}
  50%{opacity:.62;stroke-width:3.2;transform:scale(1.05)}
}
@keyframes langIgCoreGlow{
  0%,100%{opacity:.92}
  50%{opacity:1}
}
@keyframes langIgNodeLift{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}
@keyframes langIgDashFlow{
  to{stroke-dashoffset:-360}
}
@keyframes langIgBarBreathe{
  0%,100%{transform:scaleY(.55)}
  50%{transform:scaleY(1)}
}
@keyframes langIgBarSmooth{
  0%,100%{transform:scaleY(.72)}
  50%{transform:scaleY(.95)}
}
@keyframes langIgSpeckle{
  0%,100%{opacity:.85}
  50%{opacity:.2}
}
@keyframes langIgBandShift{
  0%,100%{transform:translateX(0)}
  50%{transform:translateX(6px)}
}
@keyframes langIgScan{
  0%,100%{opacity:.28;transform:translate3d(0,0,0)}
  50%{opacity:.58}
  100%{opacity:.28;transform:translate3d(210px,0,0)}
}
@keyframes langIgVsArrow{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(5px)}
}

@media (prefers-reduced-motion:reduce){
  #languages-hub-infographics .lang-ig-ring,
  #languages-hub-infographics .lang-ig-core,
  #languages-hub-infographics .lang-ig-node,
  #languages-hub-infographics .lang-ig-flow,
  #languages-hub-infographics .lang-ig-bar,
  #languages-hub-infographics .lang-ig-clean-bar,
  #languages-hub-infographics .lang-ig-speck,
  #languages-hub-infographics .lang-ig-band-lang,
  #languages-hub-infographics .lang-ig-band-audio,
  #languages-hub-infographics rect.lang-ig-scan,
  #languages-hub-infographics .lang-ig-vs-arrow{
    animation:none!important;
  }
}
