/* Money-view pillar pages (/connect /attribute /ads /respond /report /security). Final state is the default; animation runs only after the reveal adds .in, and is off under prefers-reduced-motion. */
@property --n{syntax:'<integer>';inherits:false;initial-value:0}
@property --nk{syntax:'<integer>';inherits:false;initial-value:0}
@property --nr{syntax:'<integer>';inherits:false;initial-value:0}
@counter-style pp3{system:extends decimal;pad:3 "0"}
.pp-ex{font:500 .75rem/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--fg3);padding:.25rem .5rem;border-radius:99px;box-shadow:inset 0 0 0 1px var(--hair2);white-space:nowrap}
.hv-pan .cap .pp-ex{flex:none}
/* count-up numbers: an empty <b> whose ::after draws the integer, so the width is fixed by tabular figures */
.cu,.cu2{display:inline-block;font-variant-numeric:tabular-nums;font-weight:510}
.cu{--n:var(--to,0);counter-reset:cu var(--n)}.cu:after{content:"$" counter(cu)}
.cu2{--nk:var(--tk,0);--nr:var(--tr,0);counter-reset:ck var(--nk) cr var(--nr)}.cu2:after{content:"$" counter(ck) "," counter(cr,pp3)}
@keyframes pp-cu{from{--n:0}}@keyframes pp-cuf{from{--n:var(--from)}}@keyframes pp-cu2{from{--nk:0;--nr:0}}
html.js .in .cu{animation:pp-cu 1.4s var(--ease-out,ease-out) var(--dl,0s) backwards}html.js .in .cu.cuf{animation-name:pp-cuf}html.js .in .cu2{animation:pp-cu2 1.4s var(--ease-out,ease-out) var(--dl,0s) backwards}
@keyframes pp-pop{from{opacity:0;transform:translateY(6px)}}@keyframes pp-grow{from{transform:scaleX(0)}}@keyframes pp-growy{from{transform:scaleY(0)}}@keyframes pp-flow{to{stroke-dashoffset:-16}}
@keyframes pp-pk{0%{opacity:0;transform:translate(0,0)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy))}}
@keyframes pp-hl{0%,20%{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}24%,100%{background:var(--card);box-shadow:inset 0 0 0 1px var(--card-ring)}}
@keyframes pp-shrink{from{transform:scaleX(var(--fs,1))}}
@keyframes pp-line{from{transform:scaleX(0)}}
/* shared layouts */
.pp-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}@media(min-width:48rem){.pp-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:64rem){.pp-grid.c3{grid-template-columns:repeat(3,1fr)}.pp-grid.c4{grid-template-columns:repeat(4,1fr)}}
.pp-grid .card{min-height:9rem;gap:.75rem}.pp-grid h3{margin:0}
.pp-hfig{width:100%;min-width:0}
.pp-tabs{display:flex;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pp-tabs::-webkit-scrollbar{display:none}.pp-tabs button{white-space:nowrap;flex:none}
.pp-pan .inc{margin-top:0}.pp-pan p.cap{align-items:center}
/* connect */
.cn{display:block;width:100%;height:auto;overflow:visible}
.cn .ln{fill:none;stroke:var(--hair2);stroke-width:1.5;stroke-dasharray:3 5}.cn .tl{fill:var(--page-bg);stroke:var(--hair2)}.cn .td{fill:var(--fg3)}.cn .tt{font:500 11px var(--sans);fill:var(--fg)}.cn .tt.s{fill:var(--fg2);font-size:10.5px}.cn .tt.b{font-weight:600}.cn .tt.a{fill:var(--accent-ink);font-weight:600}.cn .tt.m{font:500 9px var(--mono);fill:var(--fg3);letter-spacing:.06em}
.cn .cd{fill:var(--page-bg);stroke:var(--accent);stroke-width:1.5}.cn .av{fill:var(--accent-soft);stroke:var(--accent)}.cn .hr{stroke:var(--hair2)}.cn .pk{fill:var(--accent);opacity:0}
html.js .in .cn .ln{animation:pp-flow 1s linear infinite}html.js .in .cn .pk{animation:pp-pk 2.4s var(--t) ease-in-out infinite}
.pp-q{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:48rem){.pp-q{grid-template-columns:repeat(2,1fr)}}@media(min-width:64rem){.pp-q{grid-template-columns:repeat(3,1fr)}}
.pp-q .card{gap:.5rem;min-height:9rem}.pp-q b{font:500 .8125rem var(--mono);color:var(--accent-ink)}.pp-q h3{margin:0}
.pp-rec{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem;align-items:center}@media(min-width:48rem){.pp-rec{grid-template-columns:1fr 3rem 1fr}}
.pp-src{display:flex;flex-direction:column;gap:.5rem}.pp-src div{display:flex;flex-direction:column;padding:.75rem 1rem;border-radius:.375rem;background:var(--card);box-shadow:inset 0 0 0 1px var(--card-ring);font-size:15px;min-width:0}.pp-src small{font:500 .75rem var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--fg3)}.pp-src span{color:var(--fg2);overflow-wrap:anywhere}
.pp-mg{display:none;width:3rem;height:7.5rem}@media(min-width:48rem){.pp-mg{display:block}}.pp-mg .ln2,.pp-mg .hd{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pp-one dl{margin:0;display:flex;flex-direction:column;gap:.5rem}.pp-one dl div{display:flex;justify-content:space-between;gap:1rem;font-size:15px;padding-top:.5rem;border-top:1px solid var(--card-ring)}.pp-one dt{color:var(--fg3)}.pp-one dd{margin:0;text-align:right}.pp-one h3{margin:0}
/* attribute */
.pp-path{gap:1rem}.pp-path ol{list-style:none;margin:0;padding:0;position:relative;display:flex;flex-direction:column;gap:1rem}
.pp-path ol:before{content:"";position:absolute;left:.4375rem;top:.5rem;bottom:.5rem;width:1px;background:var(--hair2);transform-origin:top}
.pp-path li{display:grid;grid-template-columns:.875rem 1fr 4rem 4.75rem;gap:.625rem;align-items:center;position:relative;min-width:0}
.pp-path .d{width:.875rem;height:.875rem;border-radius:50%;background:var(--page-bg);box-shadow:inset 0 0 0 2px var(--accent)}
.pp-path .t{font-size:14px;font-weight:510;line-height:1.25;min-width:0}.pp-path .t small,.pp-path .n small{display:block;font:500 .75rem/1.2 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--fg3);font-weight:500}.pp-path .t small{text-transform:none;letter-spacing:0;font:400 12px/1.3 var(--sans)}
.pp-path .n{text-align:right;font-size:14px}.pp-path .n.v b{color:var(--accent-ink)}
@media(max-width:23rem){.pp-path li{grid-template-columns:.875rem 1fr 3.5rem 4.25rem}}
html.js .in .pp-path li{animation:pp-pop .5s var(--ease-out,ease-out) calc(var(--i)*.45s) backwards}html.js .in .pp-path ol:before{animation:pp-growy 2s linear backwards}
.pp-prof{margin-top:1rem;gap:1rem}.pp-prof .hd{display:flex;justify-content:space-between;align-items:center;gap:1rem}.pp-prof h3{margin:0}
.pp-bars{display:flex;flex-direction:column;gap:.625rem}.pp-bars .r{display:grid;grid-template-columns:4rem 1fr 3.25rem;gap:.75rem;align-items:center;font-size:14px}.pp-bars .r span{color:var(--fg2)}.pp-bars .r b{text-align:right;font-weight:510;font-variant-numeric:tabular-nums}
.pp-bars .tr{height:.875rem;background:transparent}.pp-bars .tr i{display:block;height:100%;width:var(--w);background:var(--hair2);border-radius:2px;transform-origin:left}.pp-bars .r.hi .tr i{background:var(--accent)}
.pp-bars.big{gap:1rem}.pp-bars.big .tr{height:1.5rem}.pp-bars.big .r{grid-template-columns:3.5rem 1fr 3.5rem;font-size:15px}
html.js .in .pp-bars .tr i{animation:pp-grow .9s var(--ease-out,ease-out) var(--dl,0s) backwards}
.pp-mini{width:100%;border-collapse:collapse;font-size:14px}.pp-mini th{font:500 .6875rem var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--fg3);text-align:left;padding:0 .5rem .5rem 0}.pp-mini td{padding:.5rem .5rem .5rem 0;border-top:1px solid var(--card-ring);font-variant-numeric:tabular-nums}.pp-mini td.g{color:#1f7a3f;font-weight:510}.pp-mini td.r{color:#b3261e;font-weight:510}
.pp-tbl{width:100%;border-collapse:collapse;margin-top:2rem;font-size:15px}.pp-tbl th{font:500 .75rem var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--fg3);text-align:left;padding:.75rem 1rem .75rem 0;border-bottom:1px solid var(--card-ring)}.pp-tbl td{padding:1rem 1rem 1rem 0;border-bottom:1px solid var(--card-ring);vertical-align:top;color:var(--fg2)}.pp-tbl td:first-child{color:var(--fg);font-weight:510;width:20%}
@media(max-width:47.99rem){.pp-tbl thead{display:none}.pp-tbl,.pp-tbl tbody,.pp-tbl tr,.pp-tbl td{display:block;width:100%}.pp-tbl tr{padding:1rem 0;border-bottom:1px solid var(--card-ring)}.pp-tbl td{border:0;padding:.25rem 0}.pp-tbl td:first-child{width:100%}.pp-tbl td:before{content:attr(data-l);display:block;font:500 .6875rem var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--fg3)}.pp-tbl td:first-child:before{display:none}}
/* ads */
.pp-steps{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:.75rem;counter-reset:s}@media(min-width:48rem){.pp-steps{grid-template-columns:repeat(5,1fr)}}
.pp-steps li{background:var(--card);border-radius:.375rem;box-shadow:inset 0 0 0 1px var(--card-ring);padding:1rem;display:flex;flex-direction:column;gap:.5rem;min-width:0}.pp-steps b{font:500 .8125rem var(--mono);color:var(--accent-ink)}.pp-steps h3{margin:0;font-size:1.0625rem}
html.js .in.pp-steps li,html.js .in .pp-steps li{animation:pp-hl 10s linear infinite calc(var(--i)*2s)}
.pp-ex-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}@media(min-width:48rem){.pp-ex-grid{grid-template-columns:1fr 1fr}}.pp-chart{gap:1rem}.pp-chart .pp-ex{align-self:flex-start}.pp-chart p{margin:0}
.pp-ba{display:flex;flex-direction:column;gap:1rem}.pp-ba .key{display:flex;gap:1rem;font-size:13px;color:var(--fg2)}.pp-ba .key i{display:inline-block;width:.75rem;height:.75rem;border-radius:2px;margin-right:.375rem;vertical-align:-1px}.k0{background:var(--hair2)}.k1{background:var(--accent)}
.pp-ba .g{display:grid;grid-template-columns:3.5rem 1fr;gap:.25rem .75rem;align-items:center;font-size:14px}.pp-ba .l{color:var(--fg2);grid-row:1/3}.pp-ba .tr{display:flex;flex-direction:column;gap:.25rem}.pp-ba .tr i{display:block;height:.875rem;border-radius:2px}.pp-ba .b0{background:var(--hair2)}.pp-ba .b1{background:var(--accent);width:var(--w);transform-origin:left}
.pp-ba .v{grid-column:2;font-size:13px;color:var(--fg2)}.pp-ba .v em{font-style:normal;text-decoration:line-through;margin-right:.5rem;color:var(--fg3)}.pp-ba .v b{color:var(--fg)}
html.js .in .pp-ba .b1{animation:pp-shrink 1.2s var(--ease-out,ease-out) .6s backwards}
.pp-move{max-width:44rem;gap:.75rem;box-shadow:inset 0 0 0 1px var(--accent)}.pp-move .hd{display:flex;justify-content:space-between;gap:1rem;align-items:center}.pp-move h3{margin:0}.pp-move p{margin:0}
.btns{display:flex;gap:.5rem}.btns span{height:2.25rem;padding:0 1rem;display:inline-flex;align-items:center;border-radius:9px;font-size:.875rem;font-weight:470;color:var(--fg2);box-shadow:inset 0 0 0 1px var(--hair2)}.btns .go{background:var(--fg);color:#fff;box-shadow:none}
/* respond */
.pp-tl{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:1.25rem;position:relative}
.pp-tl li{position:relative;display:flex;flex-direction:column;gap:.5rem;padding-left:1.75rem;min-width:0}.pp-tl .d{position:absolute;left:0;top:.25rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--page-bg);box-shadow:inset 0 0 0 2px var(--accent)}
.pp-tl li:before{content:"";position:absolute;left:.4375rem;top:1.25rem;bottom:-1.25rem;width:1px;background:var(--hair2)}.pp-tl li:last-child:before{display:none}
.pp-tl b{font:500 .8125rem var(--mono);letter-spacing:.04em;text-transform:uppercase}.pp-tl .bub{margin:0;background:var(--page-bg);padding:.75rem 1rem;border-radius:.75rem .75rem .75rem .125rem;font-size:15px;line-height:1.45;color:var(--fg);box-shadow:inset 0 0 0 1px var(--hair)}
@media(min-width:48rem){.pp-tl{grid-template-columns:repeat(3,1fr);gap:1.5rem}.pp-tl:before{content:"";position:absolute;left:0;right:0;top:.4375rem;height:1px;background:var(--hair2);transform-origin:left}.pp-tl li{padding:2rem 0 0}.pp-tl .d{top:0}.pp-tl li:before{display:none}}
html.js .in.pp-tl li,html.js .in .pp-tl li{animation:pp-pop .6s var(--ease-out,ease-out) calc(var(--i)*.7s + .2s) backwards}html.js .in.pp-tl:before,html.js .in .pp-tl:before{animation:pp-line 2.2s linear backwards}
/* report */
.pp-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem;font-family:var(--mono);font-size:13px;line-height:1.5;color:var(--fg)}
.pp-lines li{display:flex;gap:.75rem;padding-bottom:.625rem;border-bottom:1px solid var(--card-ring)}.pp-lines li:last-child{border-bottom:0;padding-bottom:0}.pp-lines b{color:var(--fg3);font-weight:500;width:1.25rem;flex:none}.pp-lines .need span{color:var(--accent-ink);font-weight:500}
html.js .in .pp-lines li{animation:pp-pop .5s var(--ease-out,ease-out) calc(var(--i)*.25s) backwards}
.pp-appr{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:.375rem;box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.pp-appr p{margin:0;font-size:15px}.pp-appr .caption{color:var(--accent-ink)}
.pp-claim{max-width:44rem;gap:.75rem}.pp-claim h3,.pp-claim p{margin:0}
@media(prefers-reduced-motion:reduce){html.js .in *,html.js .in{animation:none!important}.cn .pk{display:none}}

@media(max-width:63.99rem){.cn .tt{font-size:13.5px}.cn .tt.s{font-size:13px}.cn .tt.m{font-size:12.5px}}
