
body{margin:0}
a{color:#40379F}a:hover{color:#2A2370}
.nav{color:#FFFFFF;text-decoration:none;padding:12px 2px;font:inherit;background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.nav:hover{color:#19CEDB}
.mm a{color:#120D2F;text-decoration:none;display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:10px}
.mm a:hover{background:#F6F5FC}
.row{color:#120D2F;text-decoration:none}
.row:hover .arr{transform:translateX(6px);color:#40379F}
.row:hover .rt{color:#40379F}
.arr{transition:transform .2s ease}
.ul{color:#120D2F;text-decoration:none;border-bottom:1.5px solid #120D2F;padding-bottom:4px;font-weight:600}
.ul:hover{color:#40379F;border-color:#40379F}
@keyframes flow{to{stroke-dashoffset:-16}}
.flow{animation:flow 1.1s linear infinite}
@keyframes pin{0%{box-shadow:0 0 0 0 rgba(25,206,219,0.55)}100%{box-shadow:0 0 0 18px rgba(25,206,219,0)}}
.pin{animation:pin 1.8s ease-out infinite}
@keyframes dest{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.5)}}
.dest{animation:dest 2.2s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.flow,.pin,.dest{animation:none}}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.07) translateY(-4px)}}
.kb{animation:kb 9s ease-in-out infinite alternate;transform-origin:50% 60%}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.float{animation:float 4.5s ease-in-out infinite}
@keyframes glow{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.75}}
.glow{animation:glow 4.5s ease-in-out infinite}
@keyframes tw{0%,100%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}
.tw{animation:tw 2.4s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.kb,.float,.glow,.tw{animation:none}.tw{opacity:.8}}
@keyframes lt{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
.lt{animation:lt 2.6s ease-in-out infinite}
@keyframes st{0%,100%{opacity:0}50%{opacity:1}}
.st{animation:st 3s ease-in-out infinite}
@keyframes rp{0%{transform:scale(.3);opacity:.9}100%{transform:scale(2.4);opacity:0}}
.rp{animation:rp 3s ease-out infinite}
@keyframes sh{0%{transform:translateX(-14px);opacity:0}30%,70%{opacity:1}100%{transform:translateX(18px);opacity:0}}
.sh{animation:sh 4s ease-in-out infinite}
@keyframes jet{0%,100%{opacity:.35;transform:scaleY(.96)}50%{opacity:.9;transform:scaleY(1.04)}}
.jet{animation:jet 2.2s ease-in-out infinite;transform-origin:50% 100%}
@media (max-width: 860px){.trace{display:none}}
@media (prefers-reduced-motion: reduce){.lt,.st,.rp,.sh,.jet,.flow2{animation:none}}
@keyframes grow{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}
.grow{transform-origin:50% 100%;animation:grow .9s cubic-bezier(.2,.8,.2,1) both}
.step:hover .grow{transform:translateY(-6px);transition:transform .3s ease}
@keyframes runner{0%{left:0;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:calc(100% - 10px);opacity:0}}
.runner{animation:runner 5s ease-in-out infinite}
@media (max-width: 860px){.rail{display:none}}
@media (prefers-reduced-motion: reduce){.grow,.runner{animation:none}}
.ft a{color:#C9C4EE;text-decoration:none}.ft a:hover{color:#FFFFFF}
.tile{color:#120D2F;text-decoration:none;transition:background .2s ease}
.tile:hover{background:#F8F7FD}
.tile:hover .arr{transform:translateX(6px)}
.burger{display:none}
@media (max-width: 900px){
.burger{display:inline-flex}
.navwrap{display:none!important;width:100%;flex-direction:column;align-items:stretch!important;gap:0!important;padding:8px 0 16px}
.navwrap.open{display:flex!important}
.navwrap > a,.navwrap > div > .nav{padding:14px 0!important;border-bottom:1px solid rgba(255,255,255,0.1);width:100%;justify-content:space-between}
.navwrap > a:last-child{margin-top:14px;text-align:center;border-bottom:0;padding:14px 20px!important}
.mm{position:static!important;width:auto!important;box-shadow:none!important;margin:8px 0 12px}
}
@media (max-width: 600px){
header > div,section > div,footer > div{padding-left:20px!important;padding-right:20px!important}
.doc dl > div{grid-template-columns:1fr!important}
}
.ftg{grid-template-columns:1fr 1fr 1.3fr .8fr!important}
.hrs{display:grid;grid-template-columns:1fr auto auto;column-gap:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.hrs>*{padding:9px 0;border-top:1px solid rgba(255,255,255,0.08)}
.hrs b{color:#FFFFFF;font-weight:600;text-align:right;padding-left:16px}
.hrs b.off{grid-column:span 2;color:#9F98D6}
@media (max-width: 1100px){.ftg{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width: 600px){.ftg{grid-template-columns:1fr!important}}
