/* A product takes shape beside the four real project stages. */
.flow-scene{--flow-accent:#91aaff;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,7vw,100px);align-items:start;min-width:0}
.flow-visual{margin:0;min-width:0;padding-top:22px;color:var(--ink,#f1f3fb)}
.flow-caption{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--line,#2b3347);font-size:.875rem}
.flow-phase{color:var(--flow-accent);font-size:1rem;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.flow-total{color:var(--muted,#aab3c8);font-size:.7rem;margin-left:4px;letter-spacing:0}
.flow-caption>[data-flow-label]{font-size:.875rem;color:var(--ink,#f1f3fb)}
.flow-drawing{display:block;width:100%;height:auto;margin-block:20px 10px;overflow:visible}
.flow-grid{opacity:.55}
.flow-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.flow-progress>span{height:2px;background:var(--flow-accent);transform-origin:left}
.n-home .flow-scene .process-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;margin:0;padding:0;list-style:none}
.n-home .flow-scene .process-grid>li{position:relative;min-width:0;padding:28px 0 36px;border-top:1px solid var(--line,#2b3347)}
.n-home .flow-scene .process-grid>li::before{content:none}
.n-home .flow-scene .step-number{color:var(--flow-accent);font-size:.75rem;font-variant-numeric:tabular-nums}
.n-home .flow-scene .process-grid h3{color:var(--ink,#f1f3fb);font-size:clamp(1.65rem,2.7vw,2.6rem);font-weight:500;line-height:1.1;margin-top:21px;letter-spacing:-.045em}
.n-home .flow-scene .process-grid p{max-width:410px;font-size:.975rem;line-height:1.7;margin-top:19px;color:var(--muted,#aab3c8)}
@media(min-width:1000px) and (min-height:700px) and (prefers-reduced-motion:no-preference){
  .flow-scene.flow-enhanced .flow-visual{position:sticky;top:max(50px,calc((100svh - 500px)/2));padding-top:22px}
  .n-home .flow-scene.flow-enhanced .process-grid>li{min-height:330px;display:flex;flex-direction:column;justify-content:center;padding-block:48px;transition:border-color .45s ease}
  .n-home .flow-scene.flow-enhanced .process-grid>li.is-active{border-color:var(--flow-accent)}
  .n-home .flow-scene.flow-enhanced .process-grid h3{transition:color .45s ease}
  .n-home .flow-scene.flow-enhanced .process-grid>li.is-active h3{color:var(--flow-accent)}
  .flow-enhanced .flow-layer{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .75s cubic-bezier(.16,1,.3,1)}
  .flow-enhanced .flow-layer.is-built{opacity:1;transform:none}
  .flow-enhanced .flow-wire{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s cubic-bezier(.2,.6,.2,1)}
  .flow-enhanced .flow-layer.is-built .flow-wire{stroke-dashoffset:0}
  .flow-enhanced .flow-plan-lines{stroke-dasharray:4 6;stroke-dashoffset:0}
  .flow-enhanced .flow-progress>span{background:var(--line,#2b3347);transition:background .5s ease}
  .flow-enhanced .flow-progress>span.is-built{background:var(--flow-accent)}
}
@media(max-width:999px),(max-height:699px){
  .flow-scene{grid-template-columns:minmax(0,1fr);gap:38px}
  .flow-visual{width:min(100%,480px);justify-self:center;padding-top:0}
  .flow-caption{padding-bottom:15px}
  .flow-drawing{max-height:280px;margin-block:12px 4px}
  .n-home .flow-scene .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}
}
@media(max-width:600px){
  .flow-scene{gap:32px}
  .flow-drawing{max-height:240px}
  .n-home .flow-scene .process-grid{grid-template-columns:minmax(0,1fr)}
  .n-home .flow-scene .process-grid>li{padding:24px 0 30px}
  .n-home .flow-scene .process-grid h3{font-size:1.85rem;margin-top:16px}
  .n-home .flow-scene .process-grid p{font-size:.9375rem;margin-top:14px;max-width:none}
}
@media(prefers-reduced-motion:reduce){
  .flow-scene .flow-visual{position:static}
  .flow-scene .flow-layer{opacity:1;transform:none;transition:none}
  .flow-scene .flow-wire{stroke-dashoffset:0;transition:none}
  .flow-scene .flow-progress>span{background:var(--flow-accent);transition:none}
}
@media(prefers-reduced-motion:no-preference){
  .flow-compact.flow-mobile-arrived .flow-layer{animation:flow-mobile-build .65s cubic-bezier(.16,1,.3,1) both}
  .flow-compact.flow-mobile-arrived .flow-layer-build{animation-delay:.12s}
  .flow-compact.flow-mobile-arrived .flow-layer-launch{animation-delay:.24s}
  .flow-compact.flow-mobile-arrived .flow-layer-support{animation-delay:.36s}
  .flow-compact.flow-mobile-arrived .flow-progress>span{animation:flow-mobile-line .65s .2s cubic-bezier(.16,1,.3,1) both}
  .flow-compact.flow-mobile-arrived .flow-progress>span:nth-child(2){animation-delay:.32s}
  .flow-compact.flow-mobile-arrived .flow-progress>span:nth-child(3){animation-delay:.44s}
  .flow-compact.flow-mobile-arrived .flow-progress>span:nth-child(4){animation-delay:.56s}
}
@keyframes flow-mobile-build{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes flow-mobile-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
