/* Five readable routes from one creative team to five client needs. */
.neural-purpose{width:100%;min-width:0;--neural-accent:#ff914a}
.neural-map{position:relative;width:100%;height:260px;isolation:isolate;margin:4px 0 12px}
.neural-map svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.neural-wire{fill:none;stroke:#7892ab;stroke-width:1.1;vector-effect:non-scaling-stroke;transition:stroke .2s,opacity .2s}
.neural-branch circle{fill:#9db0c4;transition:fill .2s}
.neural-signal{fill:none;stroke:var(--neural-accent);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:.15 .85;stroke-dashoffset:1;opacity:0}
.neural-branch.is-active .neural-wire{stroke:var(--neural-accent)}
.neural-branch.is-active circle{fill:var(--neural-accent)}
.neural-branch.is-active .neural-signal{animation:neural-fire .7s ease-out both}
.neural-map.has-selection .neural-branch:not(.is-active){opacity:.35}
.neural-map button{font:inherit;cursor:pointer;border:0;background:transparent;color:#fff;position:absolute;z-index:1;margin:0}
.neural-map button:focus-visible{outline:2px solid var(--neural-accent);outline-offset:3px}
.neural-map .neural-center{left:15%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:#ff7924;padding:17px;display:grid;place-items:center;transition:background .2s}
.neural-center img{position:static;display:block;width:100%;height:auto;filter:brightness(0);object-fit:contain}
.neural-map .neural-center:hover{background:#ffa064}
.neural-map .neural-goal{left:50%;right:0;top:calc(var(--row)*52px + 2px);height:48px;padding:0 0 0 4px;text-align:left;display:flex;align-items:center;gap:5px;line-height:1.2;white-space:nowrap;transition:color .2s}
.neural-goal span{font-size:15px;color:#bbcbdc;font-weight:400}
.neural-goal strong{font-size:20px;font-weight:500;letter-spacing:-.02em}
.neural-goal:hover,.neural-goal.is-preview,.neural-goal[aria-pressed=true]{color:var(--neural-accent)}
.neural-detail{min-height:48px;margin:0!important;padding-top:12px;border-top:1px solid #ffffff25;font-size:14px!important;line-height:1.45!important;color:#c6d3e0!important}
.work-collection-copy:has(.neural-purpose){margin-bottom:0}
.purpose-pending .neural-purpose{opacity:0}
@keyframes neural-fire{0%{stroke-dashoffset:1;opacity:0}15%{opacity:1}90%{opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@media(min-width:901px) and (max-width:1200px){.neural-map{height:240px}.neural-map .neural-goal{top:calc(var(--row)*48px);height:48px;display:block;padding-top:4px}.neural-goal span{display:block;font-size:13px;margin-bottom:2px}.neural-goal strong{font-size:18px}.neural-map .neural-center{width:58px;height:58px;padding:14px}}
@media(max-width:500px){.neural-map .neural-goal{left:48%;display:block;padding-top:4px}.neural-goal span{display:block;font-size:13px;margin-bottom:2px}.neural-goal strong{font-size:18px}.neural-map .neural-center{width:56px;height:56px;padding:14px}.neural-detail{font-size:13px!important}}
@media(prefers-reduced-motion:reduce){.neural-branch.is-active .neural-signal{animation:none}.neural-wire,.neural-goal,.neural-center{transition:none}.purpose-pending .neural-purpose{opacity:1}}

.neural-detail:empty{border-color:transparent}
