/* 04 / Signal: two matching edges, each with its own repeating arrow. */
.pp-signal{--signal-gold:#a17c37;--signal-green:#55755f;--signal-label-height:30px;--signal-gap:14px;--signal-value-height:72px;--signal-clearance:clamp(52px,4.2vw,66px);position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-height:190px;box-sizing:border-box;text-align:center;padding:10px 0 12px;gap:0}
.pp-signal .pp-signal-edge{position:absolute;top:calc(10px + var(--signal-label-height) + var(--signal-gap) + var(--signal-value-height)/2);width:calc(33.333333% - 2 * var(--signal-clearance));height:1px;background:#111}
.pp-signal .pp-signal-edge-first{left:calc(16.666667% + var(--signal-clearance))}
.pp-signal .pp-signal-edge-second{left:calc(50% + var(--signal-clearance))}
.pp-signal .pp-signal-edge i{position:absolute;top:-3px;left:0;width:100%;height:7px;animation:pp-signal-forward 7.5s linear infinite;will-change:transform,opacity;pointer-events:none}
.pp-signal .pp-signal-edge i::before{content:"";position:absolute;top:0;left:-3.5px;width:7px;height:7px;box-sizing:border-box;border-right:1.2px solid #111;border-top:1.2px solid #111;transform:rotate(45deg)}
.pp-signal .pp-signal-stage{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center}
.pp-signal .pp-signal-label{display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--signal-label-height);font:500 .78rem/1.35 var(--mono);color:#111;letter-spacing:.045em;margin-bottom:var(--signal-gap)}
.pp-signal .pp-signal-value{display:flex;align-items:center;justify-content:center;height:var(--signal-value-height);min-width:0}
.pp-signal .pp-signal-value strong{display:block;padding:0 .55rem;background:#fffdf5;font:300 clamp(2.5rem,3.8vw,3.4rem)/1.15 var(--sans);letter-spacing:-.05em;color:var(--signal-gold);white-space:nowrap}
.pp-signal .pp-signal-score .pp-signal-value strong{color:var(--signal-green)}
.pp-signal .pp-signal-value strong>span{font-size:.52em;letter-spacing:-.04em;margin-left:.05em}
.pp-signal .pp-signal-stage h3{font:400 1rem/1.3 var(--sans);letter-spacing:-.02em;margin:8px 0 0;color:#292a25}
.pp-signal .pp-signal-token{display:flex;align-items:center;justify-content:center;width:80px;height:var(--signal-value-height);background:#fffdf5}
.pp-signal .pp-signal-value img{display:block;object-fit:contain;width:53px;height:53px}
@keyframes pp-signal-forward{0%{transform:translate3d(0,0,0);opacity:0}10%,90%{opacity:1}100%{transform:translate3d(100%,0,0);opacity:0}}
@media(min-width:821px) and (max-width:1150px){.pp-signal .pp-signal-label{font-size:.68rem;letter-spacing:.02em}.pp-signal .pp-signal-value strong{font-size:2.5rem;padding:0 .4rem}.pp-signal .pp-signal-stage h3{font-size:.88rem}.pp-signal .pp-signal-token{width:67px}}
@media(max-width:460px){.pp-signal{--signal-label-height:32px;--signal-gap:12px;--signal-value-height:60px;--signal-clearance:42px;min-height:172px}.pp-signal .pp-signal-label{font-size:.7rem;letter-spacing:0}.pp-signal .pp-signal-value strong{font-size:2.25rem;padding:0 .3rem}.pp-signal .pp-signal-stage h3{font-size:.83rem}.pp-signal .pp-signal-value img{width:45px;height:45px}.pp-signal .pp-signal-token{width:59px}.pp-signal .pp-signal-edge i{height:6px;top:-2.5px}.pp-signal .pp-signal-edge i::before{width:6px;height:6px;left:-3px}}
@media(max-width:360px){.pp-signal{--signal-clearance:36px}.pp-signal .pp-signal-value strong{font-size:1.95rem;padding:0 .2rem}.pp-signal .pp-signal-token{width:51px}.pp-signal .pp-signal-value img{width:41px;height:41px}}
@media(min-width:821px) and (max-width:1000px){.pp-signal{--signal-clearance:42px}.pp-signal .pp-signal-value strong{font-size:2.25rem;padding:0 .3rem}.pp-signal .pp-signal-token{width:59px}.pp-signal .pp-signal-value img{width:45px;height:45px}}
@media(prefers-reduced-motion:reduce){.pp-signal .pp-signal-edge i{animation:none;transform:translate3d(50%,0,0);opacity:1;will-change:auto}}
