/* Movimento contextual apenas nas seções posteriores à abertura aprovada. */
#situacoes .situation-row,
#solucoes .solution-front { transition: background-color 180ms ease; }
#situacoes .situation-row:hover,
#situacoes .situation-row:focus-within,
#solucoes .solution-front:hover,
#solucoes .solution-front:focus-within { background-color: #56c6c606; }
#situacoes .situation-row:hover .situation-number,
#situacoes .situation-row:focus-within .situation-number { color: #a2f2e8; }
#exemplos #painel-fluxo.motion-e02-running[data-step="1"] [data-flow-step="1"],
#exemplos #painel-fluxo.motion-e02-running[data-step="2"] [data-flow-step="2"],
#exemplos #painel-fluxo.motion-e02-running[data-step="3"] [data-flow-step="3"],
#exemplos #painel-fluxo.motion-e02-running[data-step="4"] [data-flow-step="4"] { animation-name: section-node-arrival; }
@keyframes section-node-arrival {
  0%, 100% { border-color: #6b8d9f; box-shadow: inset 0 0 0 0 #56c6c600; }
  40% { border-color: #a2f2e8; box-shadow: inset 0 0 18px #56c6c61c, 0 0 0 1px #56c6c640; }
}
#exemplos .flow-route-signal { stroke-width: 2.5; }
#solucoes { position: relative; isolation: isolate; }
#solucoes::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse 24% 64% at 0% 45%, #0fa7a712, transparent 100%),
    radial-gradient(ellipse 24% 64% at 100% 45%, #56c6c60e, transparent 100%);
}
#solucoes .solutions-motion-overlay { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
#solucoes .solutions-motion-overlay path {
  fill: none; stroke: #b8fff1; stroke-width: 5; stroke-linecap: round;
  stroke-dasharray: 13 187; stroke-dashoffset: 0; opacity: 0;
}
#solucoes .solutions-scene::after {
  content: ""; position: absolute; inset: 0; opacity: 0; pointer-events: none;
  background: radial-gradient(ellipse 20% 37% at 60% 48%, #c1fff420, transparent 90%);
}
#projetos .project-image-mask { box-shadow: 0 0 0 1px transparent; transition: box-shadow 180ms ease; }
#projetos .project-case:hover .project-image-mask,
#projetos .project-case:focus-within .project-image-mask { box-shadow: 0 0 0 2px #12666b70; }
#processo .process-light { fill: none; stroke: #a2f2e8; stroke-width: 2; stroke-linecap: round; stroke-dasharray: .1 .9; opacity: 0; }
#duvidas .faq-item summary::after {
  content: ""; display: block; height: 22px;
  background: linear-gradient(#12666b, #12666b) center / 16px 2px no-repeat,
    linear-gradient(#12666b, #12666b) center / 2px 16px no-repeat;
  transition: background-size 180ms ease;
}
#duvidas .faq-item[open] summary::after {
  content: ""; background-size: 16px 2px, 2px 0;
}
@media (prefers-reduced-motion: reduce) {
  #situacoes .situation-row, #solucoes .solution-front,
  #projetos .project-image-mask, #duvidas .faq-item summary::after { transition: none; }
  #solucoes .solutions-motion-overlay, #processo .process-light { display: none; }
}
