/* Mesmo traço nítido das conexões, em escala de microinteração. */
.lastro-link{--link-trace-color:#356e8d}
.site-header .lastro-link,.site-footer .lastro-link,footer .lastro-link,.hero .lastro-link,.solution-row.featured{--link-trace-color:#d2e0e8}
.link-trace-label{display:inline-block;position:relative;max-width:100%;min-width:0;text-wrap:inherit}
.link-trace-label>.link-trace{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke:var(--link-trace-color);stroke-width:1.5;stroke-linecap:round}
.link-trace-line{stroke-dasharray:var(--link-trace-length,0);stroke-dashoffset:var(--link-trace-length,0);opacity:0}
.link-trace-dot{position:absolute;left:0;top:0;width:4px;height:4px;border-radius:50%;background:var(--link-trace-color);pointer-events:none;opacity:0;offset-distance:0%;offset-rotate:0deg}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .lastro-link:is(:hover,:focus-visible),.lastro-link:is(:hover,:focus-visible) .link-trace-target{text-decoration:none}
  .link-trace-line{transition:stroke-dashoffset 700ms cubic-bezier(.25,.65,.3,1),opacity 180ms ease}
  .lastro-link:is(:hover,:focus-visible) .link-trace-line{stroke-dashoffset:0;opacity:.85}
  .lastro-link:is(:hover,:focus-visible) .link-trace-dot{animation:lastro-link-light 700ms cubic-bezier(.25,.65,.3,1) both}
  .lastro-link .link-trace-label>.link-trace{transform:none}
}
@keyframes lastro-link-light{0%{offset-distance:0%;opacity:0}12%{opacity:1}85%{opacity:1}100%{offset-distance:100%;opacity:0}}
@media(prefers-reduced-motion:reduce),(hover:none),print{.link-trace,.link-trace-dot{display:none}}
