.pr-timeline{margin-top:8px;position:relative}.pr-phase{grid-template-columns:78px 1fr;gap:clamp(20px,3vw,42px);padding-bottom:clamp(44px,7vh,84px);display:grid;position:relative}.pr-phase:last-child{padding-bottom:0}.pr-rail{justify-content:center;display:flex;position:relative}.pr-rail:before{content:"";background:var(--hair);width:1px;position:absolute;top:6px;bottom:-6px}.pr-phase:last-child .pr-rail:before{display:none}.pr-node{z-index:1;font-family:var(--display);color:#0000;-webkit-text-stroke:1px #14141342;background:var(--bg);padding:2px 0 10px;font-size:clamp(26px,3vw,40px);font-style:italic;line-height:1;position:relative}.pr-dot{background:var(--brand-grad);z-index:2;border-radius:50%;width:9px;height:9px;margin-left:-4.5px;position:absolute;top:4px;left:50%}.pr-body h2{font-family:var(--display);letter-spacing:-.015em;color:var(--cream);margin:0 0 14px;font-size:clamp(22px,2.8vw,32px);font-weight:500;line-height:1.1}.pr-tag{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--cream-dimmer);margin-bottom:12px;font-size:9px;display:block}.pr-body>p{color:var(--cream-dim);max-width:56ch;margin:0 0 20px;font-size:15px;line-height:1.8}.pr-points{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pr-points li{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--cream-dim);border:1px solid var(--hair);border-radius:999px;padding:8px 14px;font-size:8.5px}.pr-tools{background:var(--hair);border:1px solid var(--hair);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1px;display:grid}.pr-tool{background:var(--bg);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);transition:color .4s var(--ease), background .4s var(--ease);padding:22px 20px;font-size:10px}.pr-tool:hover{color:var(--cream);background:var(--bg-1)}.pr-tool span{font-family:var(--mono);letter-spacing:.2em;color:var(--cream-dimmer);margin-top:6px;font-size:8px;display:block}.pr-rv{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}.pr-rv.in{opacity:1;transform:none}@media (max-width:640px){.pr-phase{grid-template-columns:54px 1fr;gap:18px}}@media (prefers-reduced-motion:reduce){.pr-rv{opacity:1;transition:none;transform:none}}
