.principal-motion-surface .flow-node.principal-node{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:17px;padding:18px;text-align:left;border-color:rgba(168,216,255,.32);background:linear-gradient(120deg,rgba(168,216,255,.095),rgba(7,15,28,.44));animation:principal-node-breathe 5.6s ease-in-out infinite}
.principal-motion-surface .principal-node:nth-child(3){animation-delay:-1.8s}
.principal-motion-surface .principal-node:nth-child(5),.principal-motion-surface .topology-branches>.principal-node:nth-child(2){animation-delay:-3.6s}
.principal-node-copy{min-width:0;flex:1}.principal-motion-surface .principal-node-copy h3{font-size:23px;line-height:1.3;margin:4px 0 6px;color:var(--white)}
.principal-motion-surface .principal-node-copy p{font-size:17px;line-height:1.5;margin:0}.principal-motion-surface .principal-node-copy .node-kicker{font-size:13px;line-height:1.4;color:var(--blue)}
.principal-icon{display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;width:58px;height:58px;border:1px solid rgba(168,216,255,.27);border-radius:18px;background:radial-gradient(circle at 30% 20%,rgba(168,216,255,.16),rgba(168,216,255,.035) 75%);color:var(--blue);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.principal-icon>svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.principal-icon-reinvest,.principal-icon-maturity{color:var(--gold);border-color:rgba(244,217,175,.3);background:radial-gradient(circle at 30% 20%,rgba(244,217,175,.15),rgba(244,217,175,.035) 75%)}
.principal-motion-surface .principal-arrow{--principal-travel:31px;position:relative;flex:0 0 38px;width:38px;height:22px;font-size:0;color:transparent;overflow:visible}
.principal-arrow::before{content:'';position:absolute;left:0;right:1px;top:50%;height:1px;background:linear-gradient(90deg,rgba(168,216,255,.25),rgba(168,216,255,.8))}
.principal-arrow::after{content:'';position:absolute;right:0;top:calc(50% - 3px);width:6px;height:6px;border-top:1px solid var(--blue);border-right:1px solid var(--blue);transform:rotate(45deg)}
.principal-arrow>i{position:absolute;width:6px;height:6px;left:0;top:calc(50% - 2.5px);border-radius:50%;background:var(--blue);box-shadow:0 0 9px rgba(168,216,255,.8);animation:principal-flow-dot 2.8s ease-in-out infinite}
.principal-arrow:nth-child(4)>i{animation-delay:1.4s}
.principal-motion-surface .principal-root{display:flex;align-items:center;justify-content:center;gap:13px;padding:10px 20px;font-size:22px;line-height:1.4}
.principal-root>.principal-icon{width:38px;height:38px;border-radius:12px}.principal-root>.principal-icon>svg{width:25px;height:25px}
.principal-root::before{content:'';position:absolute;left:calc(50% - 2.5px);top:100%;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(244,217,175,.7);z-index:1;animation:principal-root-dot 2.8s ease-in-out infinite}
.principal-branch-stream{position:absolute;left:calc(50% - 2.5px);bottom:100%;width:6px;height:16px;pointer-events:none;z-index:1}
.principal-branch-stream::after{content:'';position:absolute;width:5px;height:5px;top:0;left:0;border-radius:50%;background:var(--blue);box-shadow:0 0 8px rgba(168,216,255,.8);animation:principal-branch-dot 2.8s ease-in-out infinite;animation-delay:.8s}
.principal-motion-surface .topology-branches>.principal-node:last-child .principal-branch-stream::after{animation-delay:1.25s}
@keyframes principal-node-breathe{0%,100%{border-color:rgba(168,216,255,.25);box-shadow:0 0 0 rgba(168,216,255,0)}50%{border-color:rgba(168,216,255,.48);box-shadow:0 0 21px rgba(168,216,255,.09),inset 0 0 17px rgba(168,216,255,.025)}}
@keyframes principal-flow-dot{0%{transform:translateX(0);opacity:0}15%{opacity:.9}80%{opacity:.9}100%{transform:translateX(var(--principal-travel));opacity:0}}
@keyframes principal-root-dot{0%{transform:translateY(0);opacity:0}15%{opacity:.9}75%{opacity:.9}100%{transform:translateY(13px);opacity:0}}
@keyframes principal-branch-dot{0%{transform:translateY(0);opacity:0}15%{opacity:.9}75%{opacity:.9}100%{transform:translateY(13px);opacity:0}}
@keyframes principal-branch-dot-mobile{0%{transform:translateX(0);opacity:0}15%{opacity:.9}75%{opacity:.9}100%{transform:translateX(11px);opacity:0}}
@media(min-width:901px) and (max-width:1150px){.principal-motion-surface .flow-node.principal-node{gap:12px;padding:14px}.principal-icon{width:46px;height:46px;border-radius:15px}.principal-icon>svg{width:29px;height:29px}.principal-motion-surface .principal-node-copy h3{font-size:21px}.principal-motion-surface .principal-node-copy p{font-size:16px}.principal-motion-surface .principal-arrow{--principal-travel:21px;flex-basis:28px;width:28px}}
@media(max-width:900px){
 .principal-motion-surface .flow-node.principal-node{gap:15px;padding:15px 16px;min-height:88px}.principal-icon{width:48px;height:48px;border-radius:15px}.principal-icon>svg{width:29px;height:29px}
 .principal-motion-surface .principal-node-copy h3{font-size:21px;margin:3px 0 5px}.principal-motion-surface .principal-node-copy p{font-size:15px;line-height:1.5}.principal-motion-surface .principal-node-copy .node-kicker{font-size:12px}
 .principal-motion-surface .principal-arrow{--principal-travel:25px;flex-basis:auto;width:32px;height:18px}
 .principal-motion-surface .principal-root{padding:12px 16px;font-size:20px;gap:12px}.principal-root>.principal-icon{width:36px;height:36px}.principal-root>.principal-icon>svg{width:24px;height:24px}
 .principal-branch-stream{left:-15px;top:calc(50% - 2.5px);bottom:auto;width:14px;height:6px}.principal-branch-stream::after{animation-name:principal-branch-dot-mobile}
}
.motion-off .principal-motion-surface .principal-node,.motion-off .principal-motion-surface .principal-arrow>i,.motion-off .principal-motion-surface .principal-root::before,.motion-off .principal-motion-surface .principal-branch-stream::after{animation:none}
.motion-off .principal-motion-surface .principal-arrow>i,.motion-off .principal-motion-surface .principal-root::before,.motion-off .principal-motion-surface .principal-branch-stream::after{opacity:0}
@media(prefers-reduced-motion:reduce){
 .principal-motion-surface .flow-node.principal-node,.principal-motion-surface .principal-arrow>i,.principal-motion-surface .principal-root::before,.principal-motion-surface .principal-branch-stream::after{animation:none}
 .principal-motion-surface .principal-arrow>i,.principal-motion-surface .principal-root::before,.principal-motion-surface .principal-branch-stream::after{opacity:0}
}
