/* Veio Elements — shared styles (identical look to the static build) */

.veio-scope { -webkit-font-smoothing: antialiased; }

.veio-wash {
  background:
    radial-gradient(55% 75% at 15% 6%,  rgba(168,158,255,0.28), transparent 62%),
    radial-gradient(45% 65% at 92% 12%, rgba(255,176,214,0.24), transparent 60%),
    radial-gradient(60% 85% at 82% 98%, rgba(150,224,214,0.24), transparent 62%),
    radial-gradient(50% 65% at 4% 96%,  rgba(160,196,255,0.22), transparent 60%);
}

.veio-link-underline { background-image: linear-gradient(currentColor,currentColor); background-size:0% 1px; background-repeat:no-repeat; background-position:left bottom; }
.veio-link-underline:hover { background-size:100% 1px; }

/* Partners — responsive full boxes */
.veio-partners span {
  display:flex; align-items:center; justify-content:center;
  width:100%; min-height:60px; padding:14px 18px;
  background:#ebebeb; border-radius:8px; text-align:center;
}

/* ---- Subtle SVG animations (draw once) ---- */
@keyframes veio-draw   { to { stroke-dashoffset: 0; } }
@keyframes veio-fadeIn { to { opacity: 1; } }
@keyframes veio-pop    { to { opacity: 1; transform: scale(1); } }
@keyframes veio-pulse  { 0%,100% { transform: scale(1); opacity:1 } 50% { transform: scale(1.35); opacity:.55 } }

.an-curve { stroke-dasharray:900; stroke-dashoffset:900; animation: veio-draw 2.2s cubic-bezier(.22,.61,.36,1) .2s forwards; }
.an-area  { opacity:0; animation: veio-fadeIn 1.2s ease 1s forwards; }
.an-grid  { opacity:0; animation: veio-fadeIn 1s ease forwards; }
.an-node  { opacity:0; transform:scale(0); transform-box:fill-box; transform-origin:center; animation: veio-pop .5s ease forwards; }
.an-node.n1 { animation-delay:.7s } .an-node.n2 { animation-delay:1.2s }
.an-node.n3 { animation-delay:1.7s } .an-node.n4 { animation-delay:2.15s }
.an-lead  { transform-box:fill-box; transform-origin:center; animation: veio-pulse 2.6s ease-in-out 2.4s infinite; }
.an-underline { stroke-dasharray:260; stroke-dashoffset:260; animation: veio-draw 1s ease 1.1s forwards; }
.an-sketch { stroke-dasharray:1400; stroke-dashoffset:1400; animation: veio-draw 3s ease .3s forwards; }

@media (prefers-reduced-motion: reduce) {
  .an-curve,.an-area,.an-grid,.an-node,.an-lead,.an-underline,.an-sketch {
    animation:none !important; stroke-dashoffset:0 !important; opacity:1 !important; transform:none !important;
  }
}
