/* BWAG SYSTEMS - System Visualizations (Motion) */
.diagram{background:var(--bwag-surface);border:1px solid var(--bwag-border);border-radius:var(--radius);overflow:hidden;}
.flow-node{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;border-radius:var(--radius-sm);background:var(--bwag-surface);border:1px solid var(--bwag-border-s);font-size:0.85rem;font-weight:600;color:var(--bwag-navy);}
.flow-node .dot{width:8px;height:8px;border-radius:50%;background:var(--bwag-muted-2);}
.flow-node.is-active{background:var(--bwag-blue);border-color:var(--bwag-blue-light);color:var(--bwag-white);}
.flow-node.is-active .dot{background:var(--bwag-white);}
.flow-node.is-dim{opacity:0.5;}
.flow-arrow{width:1px;height:34px;margin:0 auto;position:relative;background:var(--bwag-border-s);flex:none;}
.viz-head{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:baseline;gap:8px;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border:1px solid var(--bwag-border);border-radius:999px;padding:6px 14px;white-space:nowrap;box-shadow:0 8px 20px -12px rgba(7,27,58,.4);max-width:calc(100% - 24px);}
.viz-kicker{font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--bwag-blue);}
.viz-title{font-size:.8rem;font-weight:700;color:var(--bwag-navy);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;}
.viz-head.is-swap{animation:vizfade .45s ease;}
@keyframes vizfade{from{opacity:.2;}to{opacity:1;}}
.phase-tick .pt[aria-selected="true"] span{width:34px;background:var(--bwag-navy);}
.founder-stage[data-phase="3"] .pt span{background:var(--bwag-blue);}
.viz-play[aria-pressed="true"] .pp-icon{clip-path:polygon(0 0,35% 0,35% 100%,0 100%,65% 0,100% 0,100% 100%,65% 100%);background:var(--bwag-navy);}
/* ---------- FOUNDER â†’ GROWTH â†’ CHAOS â†’ CLARITY (hero) ---------- */
.founder-stage{position:relative;width:100%;max-width:520px;margin-inline:auto;aspect-ratio:1/1;background:linear-gradient(180deg,#F8FAFF 0%,#fff 60%);border:1px solid var(--bwag-border);border-radius:16px;box-shadow:0 24px 50px -30px rgba(7,27,58,.35);overflow:hidden;}
.founder-edges{position:absolute;inset:0;width:100%;height:100%;z-index:1;}
.founder-stage::before{content:"";position:absolute;inset:0;background:linear-gradient(var(--bwag-border) 1px,transparent 1px),linear-gradient(90deg,var(--bwag-border) 1px,transparent 1px);background-size:34px 34px;opacity:.5;}
.edges-tangle .e{stroke:var(--bwag-border-s);stroke-width:1.6;opacity:0;transition:opacity .8s ease;fill:none;stroke-linecap:round;}
.founder-stage[data-phase="1"] .edges-tangle .e1,.founder-stage[data-phase="1"] .edges-tangle .e2,.founder-stage[data-phase="1"] .edges-tangle .e3,.founder-stage[data-phase="1"] .edges-tangle .e4,.founder-stage[data-phase="1"] .edges-tangle .e5,.founder-stage[data-phase="1"] .edges-tangle .e6{opacity:.85;}
.founder-stage[data-phase="2"] .edges-tangle .e{opacity:.95;stroke-dasharray:5 4;animation:tangle-move 1s linear infinite;}
.founder-stage[data-phase="3"] .edges-tangle .e{opacity:0;}
@keyframes tangle-move{to{stroke-dashoffset:-18;}}
.edges-clear .c{stroke:var(--bwag-blue);stroke-width:2;fill:none;stroke-linecap:round;opacity:0;transition:opacity .9s ease;}
.founder-stage[data-phase="3"] .edges-clear .c{opacity:.9;}
.edge-flow .flow{fill:var(--bwag-blue);opacity:0;}
.founder-stage[data-phase="3"] .flow{opacity:1;}
.founder-node{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);z-index:3;transition:top 1.1s cubic-bezier(.22,1,.36,1);}
.founder-stage[data-phase="3"] .founder-node{top:21%;}
.founder-core{width:58px;height:58px;border-radius:50%;background:var(--bwag-navy);color:#fff;display:flex;align-items:center;justify-content:center;border:3px solid #fff;box-shadow:0 10px 26px -8px rgba(7,27,58,.5);}
.founder-stage[data-phase="2"] .founder-core{background:#8A6D1B;}
.founder-stage[data-phase="3"] .founder-core{background:var(--bwag-blue);}
.founder-ring{position:absolute;inset:-11px;border:2px solid var(--bwag-border-s);border-radius:50%;}
.founder-stage[data-phase="2"] .founder-ring{border-color:var(--bwag-warn);animation:ringp 1.2s ease-out infinite;}
.founder-stage[data-phase="3"] .founder-ring{border-color:var(--bwag-blue-light);box-shadow:0 0 0 6px rgba(37,99,235,.12);}
@keyframes ringp{to{transform:scale(1.2);opacity:0;}}
.op-node{position:absolute;z-index:2;display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--bwag-border);border-radius:999px;padding:5px 10px 5px 5px;font-size:.68rem;font-weight:600;color:var(--bwag-navy);box-shadow:0 6px 16px -10px rgba(7,27,58,.4);transform:translate(-50%,-50%) scale(var(--s,1));left:var(--lx);top:var(--ly);transition:left 1.1s cubic-bezier(.22,1,.36,1),top 1.1s cubic-bezier(.22,1,.36,1),opacity .6s,border-color .6s;white-space:nowrap;}
.op-node i{width:24px;height:24px;flex:none;border-radius:50%;background:var(--bwag-tint);display:flex;align-items:center;justify-content:center;}
.op-node i svg{width:15px;height:15px;fill:none;stroke:var(--bwag-navy);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.op-node.o1{--lx:24%;--ly:34%;}.op-node.o2{--lx:76%;--ly:34%;}.op-node.o3{--lx:24%;--ly:76%;}.op-node.o4{--lx:76%;--ly:76%;}
.op-node.o5{--lx:10%;--ly:55%;opacity:0;--s:.6;}.op-node.o6{--lx:90%;--ly:55%;opacity:0;--s:.6;}
.op-node.o7{--lx:30%;--ly:12%;opacity:0;--s:.6;}.op-node.o8{--lx:70%;--ly:12%;opacity:0;--s:.6;}
.op-node.o9{--lx:30%;--ly:90%;opacity:0;--s:.6;}.op-node.o10{--lx:70%;--ly:90%;opacity:0;--s:.6;}
.founder-stage[data-phase="1"] .o5,.founder-stage[data-phase="1"] .o6,.founder-stage[data-phase="1"] .o7,.founder-stage[data-phase="1"] .o8{opacity:1;--s:1;}
.founder-stage[data-phase="2"] .op-node{border-color:var(--bwag-warn);}
.founder-stage[data-phase="2"] .o9,.founder-stage[data-phase="2"] .o10{opacity:1;--s:1;}
.founder-stage[data-phase="3"] .op-node{border-color:var(--bwag-blue-light);font-size:.6rem;}
.founder-stage[data-phase="3"] .o1{--lx:19%;--ly:60%;--s:.92;}.founder-stage[data-phase="3"] .o3{--lx:37%;--ly:60%;--s:.92;}
.founder-stage[data-phase="3"] .o4{--lx:19%;--ly:80%;--s:.92;}.founder-stage[data-phase="3"] .o5{--lx:37%;--ly:80%;opacity:1;--s:.92;}
.founder-stage[data-phase="3"] .o2{--lx:63%;--ly:60%;--s:.92;}.founder-stage[data-phase="3"] .o6{--lx:81%;--ly:60%;opacity:1;--s:.92;}
.founder-stage[data-phase="3"] .o8{--lx:63%;--ly:80%;opacity:1;--s:.92;}.founder-stage[data-phase="3"] .o10{--lx:81%;--ly:80%;opacity:1;--s:.92;}
.founder-stage[data-phase="3"] .o7,.founder-stage[data-phase="3"] .o9{opacity:0;--s:.5;}
/* ---------- SCROLL REVEAL (only hidden when JS is active) ---------- */
.js .reveal{opacity:0;transform:translateY(26px) scale(0.99);transition:opacity 0.8s var(--ease-out),transform 0.8s var(--ease-out);}
.js .reveal.is-in{opacity:1;transform:none;}
.reveal--1{transition-delay:0.06s;}
.reveal--2{transition-delay:0.12s;}
.reveal--3{transition-delay:0.18s;}
.reveal--4{transition-delay:0.24s;}

.sys-frame{position:absolute;left:8%;right:8%;top:38%;display:flex;gap:8px;opacity:0;transform:translateY(10px);transition:opacity .9s ease,transform .9s ease;z-index:1;}
.founder-stage[data-phase="3"] .sys-frame{opacity:1;transform:none;}
.lane{flex:1;border:1.5px dashed var(--bwag-blue-light);background:rgba(37,99,235,.06);border-radius:10px;min-height:150px;position:relative;}
.lane--info{border-color:var(--bwag-border-s);background:rgba(100,116,139,.08);}
.lane span{position:absolute;top:8px;left:0;right:0;text-align:center;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--bwag-blue);}
.lane--info span{color:var(--bwag-muted);}
.phase-tick{position:absolute;bottom:10px;left:0;right:0;display:flex;gap:6px;justify-content:center;z-index:4;}
.phase-tick .pt{width:26px;height:14px;background:none;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;}
.phase-tick .pt span{display:block;width:26px;height:3px;border-radius:99px;background:var(--bwag-border);transition:background .4s,width .4s;}
.viz-play{width:26px;height:22px;border-radius:6px;border:1px solid var(--bwag-border);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.pp-icon{width:8px;height:8px;background:var(--bwag-blue);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);}
.founder-stage[data-phase="0"] .pt1 span,.founder-stage[data-phase="1"] .pt1 span,.founder-stage[data-phase="1"] .pt2 span,.founder-stage[data-phase="2"] .pt1 span,.founder-stage[data-phase="2"] .pt2 span,.founder-stage[data-phase="2"] .pt3 span,.founder-stage[data-phase="3"] .pt span{background:var(--bwag-blue);}
@media (max-width:768px){.founder-stage{max-width:380px;}.op-node{font-size:.6rem;}.lane{min-height:130px;}.viz-title{font-size:.72rem;}.viz-kicker{font-size:.58rem;}}
.stat b{font-size:clamp(1.9rem,4vw,2.7rem);font-weight:800;color:var(--bwag-navy);letter-spacing:-0.02em;display:block;}
.stat span{color:var(--bwag-muted);font-size:0.92rem;}

@media (max-width: 560px){
  .fp-cards{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;}
  html{scroll-behavior:auto;}
  .js .reveal{opacity:1;transform:none;}
}
