.tag{padding:.22rem .7rem;font-size:11px;border:1px solid rgba(255,255,255,.15);color:#9a9a9a;border-radius:999px;transition:border-color .35s,color .35s,transform .35s}
.tag:hover{border-color:rgba(255,255,255,.45);color:#fff;transform:translateY(-3px)}

/* Numbered step blocks */
.step-block{position:relative;border-top:1px solid rgba(255,255,255,.1)}
.step-ghost{position:absolute;top:1.5rem;right:0;font-family:'Space Grotesk';font-weight:700;font-size:clamp(5rem,16vw,12rem);line-height:.8;color:rgba(255,255,255,.035);pointer-events:none;user-select:none}
.step-icon{width:64px;height:64px;border-radius:1.1rem;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;transition:all .55s cubic-bezier(.16,1,.3,1)}
.step-icon .ic{width:30px;height:30px}
.step-block:hover .step-icon{background:#fff;color:#000;transform:rotate(-8deg) scale(1.08)}

/* Journey chain (vertical) */
.path-line{position:absolute;left:10px;top:0;bottom:0;width:1px;background:rgba(255,255,255,.12)}
@media(min-width:768px){.path-line{left:50%;transform:translateX(-50%)}}
.path-progress{position:absolute;left:0;top:0;width:100%;background:#fff;height:0%}
.path-node{width:14px;height:14px;border-radius:50%;background:#000;border:1px solid rgba(255,255,255,.4);transition:all .55s cubic-bezier(.16,1,.3,1);flex-shrink:0;position:relative;z-index:2}
.path-node.lit{background:#fff;box-shadow:0 0 22px rgba(255,255,255,.65);transform:scale(1.3)}
.path-stage{opacity:.2;transform:translateX(-22px);transition:opacity .7s,transform .7s cubic-bezier(.16,1,.3,1)}
.path-stage.lit{opacity:1;transform:none}

/* Pillars (one system) */
.pillar-card{position:relative;border:1px solid rgba(255,255,255,.12);border-radius:1.4rem;padding:2rem;background:linear-gradient(150deg,rgba(255,255,255,.055),rgba(255,255,255,.012));
transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .5s,box-shadow .55s}
.pillar-card:hover{transform:translateY(-10px);border-color:rgba(255,255,255,.34);box-shadow:0 30px 70px rgba(0,0,0,.6)}
.pillar-icon{width:60px;height:60px;border-radius:1rem;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;transition:all .55s cubic-bezier(.16,1,.3,1)}
.pillar-icon .ic{width:28px;height:28px}
.pillar-card:hover .pillar-icon{background:#fff;color:#000;transform:rotate(-8deg) scale(1.08)}
.plus-badge{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#000}
