/* professional-services (prefix ps-) */
.ps-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---------- HERO: document vault ---------- */
.ps-vault{max-width:620px;margin-left:auto;border:1px solid #22263A;background:rgba(10,12,18,.82);padding:16px;display:grid;gap:14px;color:#F4F5F8;box-shadow:0 40px 80px -40px rgba(255,91,26,.35);position:relative}
.ps-v-cap{display:block;font:500 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#7E8396;margin-bottom:10px}
.ps-v-top{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}
.ps-v-tray{border:1px solid #1C2030;background:#0D0F16;padding:14px;display:grid;gap:8px;align-content:start}
.ps-v-file{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid #262A36;background:#12151F;color:#F4F5F8;text-align:left;cursor:pointer;transition:border-color .3s,opacity .4s,background .3s}
.ps-v-file svg{width:20px;height:20px;fill:none;stroke:#FFA77F;stroke-width:1.5;flex:none}
.ps-v-file span{display:grid;min-width:0;flex:1}.ps-v-file b{font:500 13px var(--f-sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-v-file small{font-size:11.5px;color:#7E8396}
.ps-v-file i{font-style:normal;color:#FF5B1A;font-size:14px;width:22px;height:22px;display:grid;place-items:center;border:1px solid #3A2A22;border-radius:50%;transition:background .3s,color .3s}
.ps-v-file:hover,.ps-v-file:focus-visible{border-color:#FF5B1A;outline:none}
.ps-v-file.ps-sent{opacity:.42;background:#0D0F16}.ps-v-file.ps-sent i{background:#FF5B1A;color:#fff;border-color:#FF5B1A}
.ps-v-safe{border:1px solid #1C2030;background:radial-gradient(circle at 50% 42%,#1A1D29 0,#0D0F16 70%);display:grid;justify-items:center;align-content:center;padding:14px 10px;gap:6px}
.ps-v-doorw{position:relative;width:min(100%,176px);aspect-ratio:1}
.ps-v-door{width:100%;height:100%;display:block}
.ps-v-o{fill:#0A0C12;stroke:#3A3F52;stroke-width:3}.ps-v-r1{fill:#10131B;stroke:#262A36;stroke-width:2}
.ps-v-bolts circle{fill:#2A2F40;transition:fill .4s}.ps-vault.ps-locked .ps-v-bolts circle{fill:#FF5B1A}
.ps-v-ring{fill:none;stroke:#FF5B1A;stroke-width:1.5;stroke-dasharray:4 7;opacity:.7;transform-box:view-box;transform-origin:100px 100px;animation:ps-spin 18s linear infinite}
.ps-v-wheel{fill:none;stroke:#C9CBD3;stroke-width:3.2;stroke-linecap:round;transform-box:view-box;transform-origin:100px 100px;transition:transform 1s cubic-bezier(.6,.05,.3,1)}
.ps-v-rim{stroke-width:2.4}.ps-v-hub{fill:#FF5B1A;stroke:#FF5B1A}
.ps-vault.ps-locked .ps-v-wheel{transform:rotate(135deg)}
.ps-v-lock{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);width:34px;height:34px;border-radius:50%;background:#FF5B1A;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(255,91,26,.18);transition:transform .4s}
.ps-v-lk{width:18px;height:18px;color:#fff}
.ps-vault.ps-busy .ps-v-lock{transform:translateX(-50%) scale(1.15);box-shadow:0 0 0 10px rgba(255,91,26,.15)}
.ps-v-st{display:flex;align-items:center;gap:8px;font:500 12.5px var(--f-sans);color:#C9CBD3;margin-top:10px;text-align:center}
.ps-v-st i{width:7px;height:7px;border-radius:50%;background:#FF5B1A;flex:none}
.ps-vault.ps-busy .ps-v-st i{animation:ps-blink .5s steps(2) infinite}
.ps-v-ct{font-size:12px;color:#7E8396}.ps-v-ct b{color:#FFA77F;font-weight:600}
.ps-v-bot{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ps-v-letter{background:#F5F2EE;color:#0B0C10;padding:14px 16px;position:relative}
.ps-v-letter .ps-v-cap{color:#8F8A80}
.ps-v-ltt{font:600 14px var(--f-sans);margin-bottom:10px}
.ps-v-ln{display:block;height:6px;background:#DDD6CC;margin:6px 0;width:92%}.ps-v-ln.s{width:64%}
.ps-v-sig{width:100%;height:46px;margin-top:4px;fill:none;stroke:#C2410C;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ps-v-sig path:first-child{stroke-dasharray:640;stroke-dashoffset:var(--ps-sig,0);transition:stroke-dashoffset 1.6s ease}
.ps-v-u{stroke:#B8B0A4;stroke-width:1}
.ps-v-acc{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:#4B4E58;border-top:1px solid #DDD6CC;padding-top:8px;transition:opacity .5s}
.ps-v-acc b{color:#C2410C;font-weight:600}
.ps-vault.ps-unsigned .ps-v-acc{opacity:0}
.ps-v-log{border:1px solid #1C2030;background:#0D0F16;padding:14px}
.ps-v-log ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ps-v-log li{display:flex;align-items:center;gap:9px;font-size:12px;opacity:.28;transform:translateX(6px);transition:opacity .45s,transform .45s}
.ps-v-log li.on{opacity:1;transform:none}
.ps-v-log li i{width:16px;height:16px;border-radius:50%;border:1px solid #FF5B1A;flex:none;position:relative}
.ps-v-log li.on i{background:#FF5B1A}.ps-v-log li.on i::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.ps-v-log span{display:grid;flex:1;min-width:0}.ps-v-log b{font-weight:500;color:#F4F5F8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-v-log small{color:#7E8396;font-size:11px}
.ps-v-log em{font-style:normal;color:#7E8396;font-size:11px}
.ps-fly{position:fixed;z-index:60;pointer-events:none;padding:8px 10px;background:#FF5B1A;color:#fff;font:500 12px var(--f-sans);white-space:nowrap;box-shadow:0 10px 30px rgba(255,91,26,.4)}
@keyframes ps-spin{to{transform:rotate(360deg)}}
@keyframes ps-blink{50%{opacity:.2}}

/* ---------- answers: case-file docket ---------- */
.ps-dk{background:var(--night);padding:0 0 clamp(56px,7vw,96px)}
.ps-dk-in{max-width:1080px}
.ps-dk-tabs{display:flex;gap:6px;padding-left:24px;flex-wrap:wrap}
.ps-dk-tab{border:0;cursor:pointer;background:#D9CDBE;color:#4B4E58;font:500 13px var(--f-sans);padding:10px 18px 9px;border-radius:10px 10px 0 0;display:flex;gap:8px;align-items:baseline;transition:background .3s,color .3s,transform .3s;transform:translateY(4px)}
.ps-dk-tab small{font-size:11px;color:#C2410C;font-weight:600}
.ps-dk-tab.on,.ps-dk-tab:hover,.ps-dk-tab:focus-visible{background:#F5F2EE;color:#0B0C10;transform:none;outline:none}
.ps-dk-body{background:#F5F2EE;color:#0B0C10;padding:26px clamp(18px,3vw,36px) 24px;position:relative;box-shadow:0 30px 60px -30px rgba(0,0,0,.8),inset 0 -6px 0 #E3D9CC}
.ps-dk-lbl{display:block;font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#C2410C;margin-bottom:14px}
.ps-dk-body dl{display:grid;grid-template-columns:1fr 1fr;gap:4px 40px;margin:0}
.ps-dk-row{display:flex;align-items:baseline;gap:10px;padding:12px 10px;border-left:3px solid transparent;transition:background .35s,border-color .35s}
.ps-dk-row dt{font-size:13px;color:#6B6E78;white-space:nowrap;flex:none}
.ps-dk-row dt::after{content:"";display:inline-block;width:0}
.ps-dk-row dd{margin:0;font:500 15.5px var(--f-sans);color:#0B0C10;flex:1;border-top:1px dotted transparent}
.ps-dk-row.on{background:#EDE6DC;border-left-color:#FF5B1A}
.ps-dk-clip{position:absolute;right:28px;top:-18px;width:18px;height:52px;border:2.5px solid #9AA0AE;border-radius:9px;border-bottom-color:transparent}
.ps-dk-clip::after{content:"";position:absolute;left:3px;top:6px;width:7px;height:30px;border:2.5px solid #9AA0AE;border-top:0;border-radius:0 0 6px 6px}
@keyframes ps-draw{to{stroke-dashoffset:0}}
.ps-au-mk{background:#12151F;border:1px solid #262A36;padding:18px;color:#F4F5F8;display:grid;gap:10px;box-shadow:0 30px 60px -30px rgba(255,91,26,.35)}
.ps-au-mk>*{opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s}
.ps-au-hd{display:flex;justify-content:space-between;gap:10px;align-items:baseline;border-bottom:1px solid #22263A;padding-bottom:10px}
.ps-au-hd b{font-weight:500;font-size:15px}.ps-au-hd span{font-size:12px;color:#7E8396}
.ps-au-row{display:flex;align-items:center;gap:10px;font-size:13px;padding:9px 10px;background:#0D0F16;border:1px solid #1C2030}
.ps-au-row i{font-style:normal;width:22px;height:22px;display:grid;place-items:center;background:#1C2030;color:#FFA77F;font-size:12px;flex:none}
.ps-au-row em{margin-left:auto;font-style:normal;font-size:11px;color:#FFA77F;text-transform:uppercase;letter-spacing:.08em}
.ps-au-row.dn i{background:#FF5B1A;color:#fff}
.ps-au-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ps-au-grid span{font-size:13px;padding:10px;border:1px solid #262A36}
.ps-au-art{border-left:2px solid #FF5B1A;padding:4px 0 4px 12px;display:grid;gap:5px}.ps-au-art small{font-size:11px;color:#7E8396}.ps-au-art b{font-weight:500;font-size:14px}
.ps-au-bar{height:5px;background:#22263A;width:90%}.ps-au-bar.s{width:60%}
.ps-au-disc{font-size:11.5px;color:#A3A8B8;border:1px dashed #3A3F52;padding:8px 10px}
.ps-au-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ps-au-slots span{font-size:12px;text-align:center;padding:9px 2px;border:1px solid #262A36}
.ps-au-slots .on{background:#FF5B1A;border-color:#FF5B1A;color:#fff}
.ps-au-prop{display:grid;gap:2px;padding:10px 12px;background:#F5F2EE;color:#0B0C10}.ps-au-prop b{font-weight:500;font-size:13.5px}.ps-au-prop span{font-size:12px;color:#4B4E58}.ps-au-prop em{font-style:normal;font-size:11px;color:#C2410C;font-weight:600}
.ps-au-dw{width:100%;height:auto;fill:none;stroke:#A3A8B8;stroke-width:1.2;background:#0D0F16;border:1px solid #1C2030}
.ps-au-dw .d{stroke-dasharray:3 3}.ps-au-dw .p{fill:#FF5B1A;stroke:none}
.ps-au-appr{display:flex;gap:8px;align-items:center;justify-content:space-between}.ps-au-appr span{font-size:12.5px;padding:8px 12px;border:1px solid #FF5B1A;color:#FFA77F}.ps-au-appr b{font-size:12px;font-weight:500;color:#FFA77F}
@keyframes ps-prog{to{width:100%}}

/* ---------- pains: case folders ---------- */
.ps-pf-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:-1px;position:relative;z-index:2}
.ps-pf-tab{position:relative;text-align:left;cursor:pointer;background:#10131B;border:1px solid #262A36;color:#C9CBD3;padding:22px 16px 16px;display:grid;gap:6px;min-height:118px;transition:background .3s,border-color .3s,transform .4s,color .3s}
.ps-pf-tab::before{content:"";position:absolute;left:-1px;top:-14px;width:44%;height:14px;background:inherit;border:1px solid #262A36;border-bottom:0;border-radius:8px 8px 0 0;transition:background .3s,border-color .3s}
.ps-pf-tab small{font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#7E8396}
.ps-pf-tab b{font:500 15.5px/1.3 var(--f-sans);color:#F4F5F8}
.ps-pf-fl{position:absolute;right:14px;top:14px;width:22px;height:14px;border:1.5px solid #3A3F52;border-radius:2px}
.ps-pf-tab:hover,.ps-pf-tab:focus-visible{border-color:#FF5B1A;outline:none}
.ps-pf-tab[aria-expanded=true]{background:#C2410C;border-color:#C2410C;transform:translateY(-6px)}
.ps-pf-tab[aria-expanded=true]::before{border-color:#C2410C}
.ps-pf-tab[aria-expanded=true] small{color:#FFD7C2}.ps-pf-tab[aria-expanded=true] .ps-pf-fl{border-color:#fff}
.ps-pf-desk{position:relative;border:1px solid #262A36;background:linear-gradient(#0D0F16,#0A0C12);padding:clamp(18px,3vw,36px);display:grid;perspective:1400px}
.ps-pf-open{grid-area:1/1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,36px);visibility:hidden}
.ps-pf-open.on{visibility:visible}
.ps-pf-sheet{padding:22px;display:grid;gap:10px;align-content:start;transform-origin:50% 0;opacity:0}
.ps-pf-open.on .ps-pf-sheet{animation:ps-unfold .7s cubic-bezier(.2,.8,.2,1) forwards}
.ps-pf-open.on .ps-pf-sheet.good{animation-delay:.18s}
@keyframes ps-unfold{from{opacity:0;transform:rotateX(-75deg) translateY(-20px)}to{opacity:1;transform:none}}
.ps-pf-sheet.bad{background:#141722;border:1px dashed #3A3F52;color:#C9CBD3;rotate:-.6deg}
.ps-pf-sheet.good{background:#F5F2EE;color:#0B0C10;rotate:.5deg;box-shadow:0 30px 60px -30px rgba(255,91,26,.45)}
.ps-pf-k{font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#7E8396}.good .ps-pf-k{color:#C2410C}
.ps-pf-sheet h3{font:500 19px/1.25 var(--f-sans);color:inherit}.bad h3{color:#F4F5F8}
.ps-pf-sheet>p{font-size:15px;line-height:1.55}.bad>p{color:#A3A8B8}.good>p{color:#4B4E58}
.ps-pf-chaos{position:relative;height:170px;margin-top:6px}
.ps-pf-chaos span{position:absolute;left:var(--x);top:var(--y);rotate:var(--r);font-size:12px;background:#1C2030;border:1px solid #2E3346;padding:7px 10px;display:grid;color:#C9CBD3;animation:ps-jit 3s ease-in-out infinite alternate}
.ps-pf-chaos span:nth-child(2n){animation-delay:-1.5s}
.ps-pf-chaos small{font-size:10.5px;color:#FF8A5B}
@keyframes ps-jit{to{translate:4px -3px}}
.ps-pf-tree{display:grid;gap:6px;font-size:13px;margin-top:6px}
.ps-pf-tree p{font-size:13px;color:#4B4E58}.ps-pf-tree p b{color:#0B0C10}
.ps-pf-tree span{display:flex;justify-content:space-between;padding:9px 12px;background:#fff;border:1px solid #E3DCD2;border-left:3px solid #FF5B1A}
.ps-pf-tree em,.ps-pf-acc em{font-style:normal;font-size:11.5px;color:#8F8A80}
.ps-pf-ok{color:#C2410C!important;font-weight:600}
.ps-pf-blank{border:1px solid #2E3346;background:#0D0F16;margin-top:6px}
.ps-pf-nav{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #22263A;font-size:12.5px}.ps-pf-nav span{color:#7E8396}
.ps-pf-q{display:flex;flex-wrap:wrap;gap:6px;padding:14px 12px}.ps-pf-q span{font-size:12px;color:#FF8A5B;border:1px dashed #5A3A2C;padding:5px 8px}
.ps-pf-form{display:flex;gap:6px;padding:0 12px 14px}.ps-pf-form i{flex:1;height:26px;border:1px solid #262A36}.ps-pf-form b{font-size:11.5px;font-weight:500;padding:6px 10px;background:#262A36}
.ps-pf-page{display:grid;gap:8px;background:#fff;border:1px solid #E3DCD2;padding:14px;margin-top:6px}
.ps-pf-page small{font-size:11px;color:#C2410C;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.ps-pf-page>b{font-weight:500;font-size:15px}
.ps-pf-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ps-pf-cols span{font-size:12px;padding:8px;background:#F5F2EE;text-align:center}
.ps-pf-who{display:flex;gap:10px;align-items:center}.ps-pf-who i,.ps-ms-pp i{font-style:normal;width:32px;height:32px;display:grid;place-items:center;background:#0B0C10;color:#FFA77F;font-size:11.5px;font-weight:600;flex:none}
.ps-pf-who span{display:grid;font-size:12.5px}.ps-pf-who small{color:#8F8A80}
.ps-pf-word{background:#0D0F16;border:1px solid #2E3346;padding:14px;display:grid;gap:7px;margin-top:6px}
.ps-pf-word small{font-size:11px;color:#7E8396}.ps-pf-word p{font-size:13.5px;color:#C9CBD3}
.ps-pf-word mark{background:rgba(255,91,26,.25);color:#FFA77F;padding:0 3px;box-shadow:0 0 0 1px #FF5B1A}
.ps-pf-word>span{height:6px;background:#22263A;width:94%}.ps-pf-word>span.s{width:56%}
.ps-pf-flag{font-size:12px!important;color:#FF8A5B!important}
.ps-pf-prop{background:#fff;border:1px solid #E3DCD2;padding:14px;display:grid;gap:8px;margin-top:6px}.ps-pf-prop small{font-size:11.5px;color:#8F8A80}
.ps-pf-fee{display:flex;justify-content:space-between;font-size:13px;border-bottom:1px solid #EFE8DE;padding-bottom:6px}.ps-pf-fee b{font-weight:500}
.ps-pf-acc{display:flex;justify-content:space-between;align-items:center}.ps-pf-acc span{background:#FF5B1A;color:#fff;font-size:12.5px;padding:8px 14px}
.ps-pf-calls{display:grid;gap:6px;margin-top:6px}.ps-pf-calls span{font-size:12.5px;padding:8px 12px;border:1px solid #262A36;color:#A3A8B8}
.ps-pf-calls .m{color:#FF8A5B;border-color:#5A3A2C}
.ps-pf-book{display:grid;gap:8px;margin-top:6px}
.ps-pf-sl{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ps-pf-sl span{font-size:12.5px;text-align:center;padding:9px;border:1px solid #E3DCD2;background:#fff}.ps-pf-sl .on{background:#0B0C10;color:#fff;border-color:#0B0C10}
.ps-pf-paid,.ps-pf-rem{font-size:12.5px;padding:9px 12px;background:#fff;border:1px solid #E3DCD2;border-left:3px solid #FF5B1A}

/* ---------- cost: balance ---------- */
.ps-bl-in{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center}
.ps-bl-in>*{min-width:0}
.ps-bl-stage{position:relative;border:1px solid #22263A;background:radial-gradient(circle at 50% 30%,#141824,#0A0C12 70%);padding:10px 10px 18px}
.ps-bl-svg{width:100%;height:auto;display:block;fill:none;stroke:#7E8396;stroke-width:2;stroke-linecap:round;overflow:visible}
.ps-bl-post{stroke:#3A3F52;stroke-width:3}.ps-bl-piv{fill:#FF5B1A;stroke:none}
.ps-bl-beam path:first-child{stroke:#C9CBD3;stroke-width:4}
.ps-bl-needle{stroke:#FF5B1A!important;stroke-width:2!important}
.ps-bl-beam{transition:transform 1s cubic-bezier(.3,1.4,.4,1);transform-box:view-box;transform-origin:300px 70px}
.ps-bl-pan{transition:transform 1s cubic-bezier(.3,1.4,.4,1)}
.ps-bl-str{stroke:#4B5064;stroke-width:1.2}
.ps-bl-dish{fill:#161A26;stroke:#7E8396}
.ps-bl-pan text{fill:#7E8396;stroke:none;font:500 13px var(--f-sans);text-anchor:middle;letter-spacing:.1em;text-transform:uppercase}
.ps-bl-pan[data-s="1"] text{fill:#FFA77F}
.ps-bl-arc{stroke:#2A2F40;stroke-dasharray:2 4}
.ps-bl-toks{position:absolute;inset:0}
.ps-bl-tok{position:absolute;left:0;top:0;width:24%;transform:translate(-50%,-100%);border:1px solid #3A3F52;background:#1C2030;color:#F4F5F8;font:500 clamp(10px,1vw,12.5px)/1.2 var(--f-sans);padding:5px 4px;cursor:pointer;clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);transition:left .9s cubic-bezier(.3,1.2,.4,1),top .9s cubic-bezier(.3,1.2,.4,1),background .3s}
.ps-bl-tok b{font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ps-bl-tok[aria-pressed=true]{background:#FF5B1A;border-color:#FF5B1A}
.ps-bl-tok:hover,.ps-bl-tok:focus-visible{outline:none;background:#2A2F40}.ps-bl-tok[aria-pressed=true]:hover{background:#E84A0C}
.ps-bl-plate{position:relative;margin:4px auto 0;width:max-content;text-align:center;display:grid;padding:8px 18px;background:#0B0C10;border:1px solid #3A3F52;min-width:180px}
.ps-bl-plate>span,.ps-bl-plate small{font-size:11.5px;color:#7E8396}.ps-bl-plate b{font:600 22px var(--f-flex);color:#fff}.ps-bl-plate .ps-bl-n{color:#FF5B1A;font-size:inherit}
.ps-bl-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ps-bl-list li{display:grid;grid-template-columns:1fr auto;gap:2px 14px;padding:14px 16px;border-left:2px solid #22263A;transition:border-color .4s,background .4s}
.ps-bl-list b{font:500 15.5px var(--f-sans);color:#fff}
.ps-bl-list span{grid-column:1;font-size:14px;color:#A3A8B8;line-height:1.5;background:none;padding:0;border:0}
.ps-bl-list .ps-bl-a{display:none}.ps-bl-list li.adv .ps-bl-a{display:block;color:#FFA77F}.ps-bl-list li.adv .ps-bl-s{display:none}
.ps-bl-list em{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font:600 13px var(--f-sans);color:#7E8396}
.ps-bl-list li.adv{border-left-color:#FF5B1A;background:#0F121A}.ps-bl-list li.adv em{color:#FF5B1A}
.ps-bl-list li.hit{background:#141824}

/* ---------- musts: annotated site + disclaimer ---------- */
.ps-ms-in{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,64px);align-items:start}
.ps-ms-in>*{min-width:0}
.ps-ms-mock{position:relative;background:#0B0C10;padding:18px;box-shadow:0 40px 80px -40px rgba(11,12,16,.5)}
.ps-ms-site{background:#F5F2EE;color:#0B0C10;display:grid}
.ps-ms-nav{display:flex;gap:16px;align-items:center;padding:12px 16px;border-bottom:1px solid #E3DCD2;font-size:12.5px;color:#4B4E58;flex-wrap:wrap}
.ps-ms-nav b{color:#0B0C10;font-size:14px;margin-right:auto}
.ps-ms-login{border:1px solid #0B0C10;padding:5px 10px;color:#0B0C10}
.ps-ms-hero{padding:22px 16px;display:grid;gap:8px;background:#fff}
.ps-ms-hero small{font-size:11px;color:#C2410C;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.ps-ms-hero b{font:500 21px var(--f-sans)}
.ps-ms-ln{height:6px;background:#E6E0D6;width:80%}.ps-ms-ln.s{width:55%}
.ps-ms-chips{display:flex;gap:6px;margin-top:4px}.ps-ms-chips span{font-size:11.5px;padding:5px 9px;border:1px solid #D6D0C6}
.ps-ms-row{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px;padding:16px}
.ps-ms-pp{display:flex;gap:8px;align-items:center;padding:10px;background:#fff;border:1px solid #E3DCD2}.ps-ms-pp span{display:grid;font-size:12px}.ps-ms-pp small{color:#8F8A80;font-size:11px}
.ps-ms-bk{background:#FF5B1A;color:#fff;padding:10px;display:grid;gap:2px}.ps-ms-bk b{font-weight:500;font-size:13px}.ps-ms-bk small{font-size:10.5px;opacity:.85}
.ps-ms-ft{display:flex;justify-content:space-between;gap:10px;padding:12px 16px;background:#0B0C10;color:#A3A8B8;font-size:11.5px;flex-wrap:wrap}
.ps-ms-pins{position:absolute;inset:18px}
.ps-ms-pin{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;border:2px solid #fff;background:#0B0C10;color:#fff;font:600 12.5px var(--f-sans);cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s;box-shadow:0 4px 14px rgba(0,0,0,.35)}
.ps-ms-pin::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid #FF5B1A;opacity:0}
.ps-ms-pin.on{background:#FF5B1A;transform:scale(1.15)}.ps-ms-pin.on::after{animation:ps-ping 1.4s ease-out infinite}
.ps-ms-pin:focus-visible{outline:2px solid #FF5B1A;outline-offset:3px}
@keyframes ps-ping{from{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.6)}}
.ps-ms-gate{position:absolute;inset:18px;background:rgba(11,12,16,.82);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;transition:opacity .5s,visibility .5s;z-index:3}
.ps-ms-gate>div{background:#F5F2EE;color:#0B0C10;max-width:400px;padding:22px;display:grid;gap:10px;border-top:4px solid #FF5B1A}
.ps-ms-gate small{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#C2410C}.ps-ms-gate p{font-size:14.5px;line-height:1.55;color:#2A2D35}
.ps-ms-ok{justify-self:start;border:0;background:#0B0C10;color:#fff;font:500 14px var(--f-sans);padding:11px 18px;cursor:pointer}.ps-ms-ok:hover{background:#FF5B1A}
.ps-ms.ps-entered .ps-ms-gate{opacity:0;visibility:hidden}
.ps-ms-list{list-style:none;margin:0;padding:0;display:grid;gap:4px;counter-reset:x}
.ps-ms-co button{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:0;background:transparent;padding:12px 0;cursor:pointer;color:#4B4E58;border-bottom:1px solid #DDD6CC}
.ps-ms-co small{width:26px;height:26px;border-radius:50%;border:1px solid #B8B0A4;display:grid;place-items:center;font:600 12px var(--f-sans);flex:none;transition:background .3s,color .3s,border-color .3s}
.ps-ms-co b{font:500 16px var(--f-sans);color:#0B0C10}
.ps-ms-co p{font-size:15px;line-height:1.55;color:#4B4E58;max-height:0;overflow:hidden;opacity:0;padding-left:38px;transition:max-height .5s,opacity .4s,padding .4s}
.ps-ms-co.on small{background:#FF5B1A;border-color:#FF5B1A;color:#fff}
.ps-ms-co.on p{max-height:140px;opacity:1;padding-top:8px;padding-bottom:8px}
.ps-ms-lead{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:none}
.ps-ms-lead path{stroke:#FF5B1A;stroke-width:1.5;stroke-dasharray:5 5;animation:ps-dash 1s linear infinite}
.ps-ms-lead circle{fill:#FF5B1A}
@keyframes ps-dash{to{stroke-dashoffset:-10}}
.ps-ms-rules{margin-top:clamp(28px,4vw,48px);display:grid;grid-template-columns:200px 1fr;gap:20px;padding:22px 24px;border:1px solid #D6D0C6;background:#fff}
.ps-ms-rk{font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#C2410C}
.ps-ms-rules p{font-size:15.5px;line-height:1.65;color:#2A2D35}

/* ---------- need + commitments ---------- */
.ps-nc-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:end}
.ps-nc-in>*{min-width:0}
.ps-lk-cap{font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#FFA77F;margin-bottom:14px}
.ps-lk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;background:#10131B;border:1px solid #262A36}
.ps-lk-box{position:relative;min-height:220px;perspective:1000px;background:#07080C;border:1px solid #1C2030}
.ps-lk-in{padding:16px;display:grid;gap:8px;align-content:start;height:100%}
.ps-lk-in b{font:500 15px/1.3 var(--f-sans);color:#FFA77F}.ps-lk-in p{font-size:13.5px;line-height:1.5;color:#C9CBD3}
.ps-lk-door{position:absolute;inset:0;border:1px solid #2E3346;background:linear-gradient(145deg,#1C2030,#12151F);color:#F4F5F8;cursor:pointer;text-align:left;padding:14px;display:grid;align-content:space-between;transform-origin:left center;transition:transform .8s cubic-bezier(.5,0,.2,1),box-shadow .8s;backface-visibility:hidden}
.ps-lk-door small{font:600 12px var(--f-sans);color:#FF5B1A}
.ps-lk-door span{font:500 14.5px/1.3 var(--f-sans)}
.ps-lk-door i{position:absolute;right:14px;top:50%;width:10px;height:28px;margin-top:-14px;border-radius:5px;background:#3A3F52;box-shadow:inset 0 0 0 2px #2A2F40}
.ps-lk-door:hover,.ps-lk-door:focus-visible{outline:none;border-color:#FF5B1A}
.ps-lk-box.on .ps-lk-door{transform:rotateY(-108deg);box-shadow:-10px 0 30px rgba(0,0,0,.5);pointer-events:none}

/* ---------- responsive ---------- */
@media (min-width:901px) and (max-width:1100px){
  .ps-v-top{grid-template-columns:1.4fr .6fr;gap:10px}
  .ps-v-tray{padding:10px;gap:7px}
  .ps-v-file{padding:8px;gap:8px}
  .ps-v-file b{font-size:12.5px}
  .ps-v-safe{padding:12px 6px}
  .ps-v-st{font-size:12px}
  .ps-v-bot{gap:10px}
  .ps-v-letter{padding:12px}
  .ps-v-log{padding:12px 10px}
  .ps-v-log li{gap:7px}
}

@media (max-width:900px){
  .ps-v-top,.ps-v-bot{grid-template-columns:1fr}
  .ps-v-top{grid-template-columns:1.2fr .8fr}
  .ps-bl-in,.ps-ms-in,.ps-nc-in{grid-template-columns:minmax(0,1fr)}
  .ps-ms-lead{display:none}
  .ps-ms-rules{grid-template-columns:1fr}
  .ps-pf-tabs{grid-template-columns:1fr 1fr;gap:24px 10px}
}
@media (max-width:600px){
  .ps-vault{padding:12px}
  .ps-v-top{grid-template-columns:1fr}
  .ps-v-safe{grid-template-columns:110px 1fr;justify-items:start;align-items:center;text-align:left}
  .ps-v-safe .ps-v-doorw{grid-row:1/3}
  .ps-v-st{margin-top:0}
  .ps-v-bot{grid-template-columns:1fr}
  .ps-dk-body dl{grid-template-columns:1fr}
  .ps-dk-row{flex-direction:column;gap:2px}
  .ps-dk-tab{padding:8px 10px;font-size:12px}
  .ps-dk-tabs{padding-left:8px;gap:4px}
  .ps-pf-open{grid-template-columns:1fr}
  .ps-pf-tab{min-height:96px;padding:18px 12px 12px}.ps-pf-tab b{font-size:14px}
  .ps-bl-tok{width:30%}
  .ps-bl-plate{position:static;transform:none;margin:8px auto 0;width:max-content}
  .ps-ms-row{grid-template-columns:1fr 1fr}.ps-ms-bk{grid-column:1/-1}
  .ps-ms-nav span:not(.ps-ms-login){display:none}
  .ps-ms-mock{padding:10px}.ps-ms-pins,.ps-ms-gate{inset:10px}
  .ps-lk-grid{grid-template-columns:1fr 1fr;padding:8px;gap:8px}
  .ps-lk-box{min-height:230px}
}
@media (prefers-reduced-motion:reduce){
  .ps-vault *{animation:none!important;stroke-dashoffset:0!important}
  .ps-v-ring,.ps-pf-chaos span,.ps-ms-pin::after,.ps-ms-lead path{animation:none!important}
  .ps-pf-open.on .ps-pf-sheet{animation:none;opacity:1}
}

/* ---------- audience: clipboard sheet swap ---------- */
.ps-cb-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,4vw,56px);align-items:center}
.ps-cb-in>*{min-width:0}
.ps-cb-tabs{display:grid;gap:10px}
.ps-cb-tab{text-align:left;border:1px solid #D6D6D2;background:transparent;padding:16px 18px;cursor:pointer;display:grid;gap:4px;color:#0B0C10;position:relative;transition:background .3s,border-color .3s,transform .3s}
.ps-cb-tab small{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#C2410C}
.ps-cb-tab b{font:500 17px/1.3 var(--f-sans)}
.ps-cb-tab::after{content:"→";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#FF5B1A;opacity:0;transition:opacity .3s,right .3s}
.ps-cb-tab:hover{border-color:#B8B0A4}.ps-cb-tab:focus-visible{outline:2px solid #FF5B1A}
.ps-cb-tab[aria-pressed=true]{background:#0B0C10;border-color:#0B0C10;color:#fff;transform:translateX(8px)}.ps-cb-tab[aria-pressed=true] small{color:#FFA77F}.ps-cb-tab[aria-pressed=true]::after{opacity:1;right:12px}
.ps-cb-board{position:relative;background:#2A1F18;border-radius:14px;padding:46px 22px 22px;box-shadow:0 40px 70px -40px rgba(11,12,16,.6),inset 0 0 0 2px #3A2A22;perspective:1200px}
.ps-cb-clip{position:absolute;left:50%;top:-14px;width:150px;height:56px;margin-left:-75px;z-index:5;transform-origin:50% 0;transition:transform .35s cubic-bezier(.5,0,.3,1)}
.ps-cb-clip::before{content:"";position:absolute;inset:14px 0 0;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#C9CBD3,#7E8396);box-shadow:0 6px 14px rgba(0,0,0,.4)}
.ps-cb-clip i{position:absolute;left:50%;top:0;width:56px;height:30px;margin-left:-28px;border:5px solid #A3A8B8;border-bottom:0;border-radius:28px 28px 0 0}
.ps-cb-board.ps-lift .ps-cb-clip{transform:rotateX(55deg) translateY(-6px)}
.ps-cb-sheets{display:grid}
.ps-cb-sh{grid-area:1/1;background:#F5F2EE;padding:24px 22px 22px;display:grid;gap:10px;align-content:start;box-shadow:0 2px 0 #E3DCD2,0 4px 0 #D6D0C6,0 18px 30px -18px rgba(0,0,0,.6);opacity:0;transform:translateX(70px) rotate(2deg);transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .4s;pointer-events:none}
.ps-cb-sh.on{opacity:1;transform:none;pointer-events:auto;transition-delay:.25s}
.ps-cb-sh.out{opacity:0;transform:translate(-80px,40px) rotate(-8deg);transition-delay:0s}
.ps-cb-hd{display:flex;justify-content:space-between;gap:8px;font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#8F8A80;border-bottom:1px solid #DDD6CC;padding-bottom:10px}
.ps-cb-hd em{font-style:normal;color:#C2410C}
.ps-cb-sh h3{font:500 20px/1.25 var(--f-sans);color:#0B0C10}
.ps-cb-sh>p{font-size:15.5px;line-height:1.55;color:#4B4E58}
.ps-cb-sh .ps-au-mk{margin-top:6px}
.ps-cb-sh .ps-au-mk>*{opacity:1;transform:none}

/* ---------- journey: pneumatic tube ---------- */
.ps-pt-net{background:#0B0C10;padding:clamp(12px,2vw,24px);box-shadow:0 40px 80px -40px rgba(11,12,16,.5)}
.ps-pt-svg{width:100%;height:auto;display:block;overflow:visible}
.ps-pt-tube{fill:none;stroke:#262A36;stroke-width:26;stroke-linecap:round}
.ps-pt-tube.in{stroke:#10131B;stroke-width:18}
.ps-pt-done{fill:none;stroke:#FF5B1A;stroke-width:4;stroke-linecap:round;stroke-dasharray:var(--ps-len,3000);stroke-dashoffset:var(--ps-off,3000);opacity:.85}
.ps-pt-st rect{fill:#141722;stroke:#3A3F52;stroke-width:2;transition:fill .4s,stroke .4s}
.ps-pt-st text{text-anchor:middle;font-family:var(--f-sans)}
.ps-pt-st .n{fill:#A3A8B8;font-size:20px;font-weight:600}
.ps-pt-st .l{fill:#7E8396;font-size:17px;font-weight:500}
.ps-pt-st.done rect{stroke:#C2410C}.ps-pt-st.done .n{fill:#FFA77F}
.ps-pt-st.on rect{fill:#FF5B1A;stroke:#FFA77F}.ps-pt-st.on .n{fill:#fff}.ps-pt-st.on .l{fill:#fff}
.ps-pt-cap rect{fill:#FFA77F;stroke:#fff;stroke-width:2}.ps-pt-cap path{stroke:#C2410C;stroke-width:2}
.ps-pt-btns{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:14px}
.ps-pt-b{border:1px solid #D6D6D2;background:transparent;padding:10px 8px;cursor:pointer;font:500 14px var(--f-sans);color:#4B4E58;display:flex;gap:8px;align-items:baseline;justify-content:center;transition:background .3s,color .3s,border-color .3s}
.ps-pt-b small{font-size:11.5px;color:#C2410C}
.ps-pt-b[aria-pressed=true]{background:#0B0C10;border-color:#0B0C10;color:#fff}.ps-pt-b[aria-pressed=true] small{color:#FFA77F}
.ps-pt-b:focus-visible{outline:2px solid #FF5B1A}
.ps-pt-slips{display:grid;margin-top:16px}
.ps-pt-slip{grid-area:1/1;display:grid;grid-template-columns:110px 1fr;gap:6px 18px;align-items:baseline;background:#fff;border:1px solid #E3DCD2;border-left:4px solid #FF5B1A;padding:18px 22px;opacity:0;transform:scaleY(.6);transform-origin:top;transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.2,1.1);visibility:hidden}
.ps-pt-slip.on{opacity:1;transform:none;visibility:visible}
.ps-pt-k{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#8F8A80}.ps-pt-k.o{color:#C2410C}
.ps-pt-slip b{font:500 17px/1.35 var(--f-sans);color:#0B0C10}
.ps-pt-slip p{font-size:15.5px;line-height:1.55;color:#2A2D35}

/* ---------- included: piano keys ---------- */
.ps-pk-in{display:grid;gap:22px}
.ps-pk-panels{display:grid}
.ps-pk-pan{grid-area:1/1;display:grid;grid-template-columns:1.1fr .9fr;gap:14px 36px;padding:26px 28px;border:1px solid #262A36;background:#0D0F16;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .4s,transform .4s,visibility .4s}
.ps-pk-pan.on{opacity:1;visibility:visible;transform:none}
.ps-pk-ph{display:flex;gap:16px;align-items:center;grid-column:1/-1}
.ps-pk-bic{width:52px;height:52px;padding:12px;border:1px solid #FF5B1A;color:#FF5B1A;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ps-pk-ph small{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#FFA77F}
.ps-pk-ph h3{font:500 24px var(--f-sans);color:#fff;margin-top:4px}
.ps-pk-what{color:#C9CBD3;font-size:16px;line-height:1.6;grid-row:2/4}
.ps-pk-get,.ps-pk-ex{display:grid;gap:6px;align-content:start}
.ps-pk-get span,.ps-pk-ex span{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#7E8396}
.ps-pk-get b{font:500 16px/1.45 var(--f-sans);color:#fff;border-left:2px solid #FF5B1A;padding-left:12px}
.ps-pk-ex{background:#F5F2EE;color:#0B0C10;padding:14px 16px}.ps-pk-ex span{color:#C2410C}.ps-pk-ex p{font-size:14.5px;color:#2A2D35}
.ps-pk-kb{background:linear-gradient(180deg,#1C2030,#0D0F16);padding:18px 18px 22px;border:1px solid #262A36;border-top:6px solid #FF5B1A}
.ps-pk-keys{position:relative;display:grid;grid-template-columns:repeat(8,1fr);gap:4px;height:230px}
.ps-pk-key{position:relative;border:0;border-radius:0 0 8px 8px;background:linear-gradient(180deg,#F5F2EE 80%,#E3DCD2);color:#0B0C10;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;padding:0 6px 16px;text-align:center;font:500 13px/1.25 var(--f-sans);box-shadow:inset 0 -6px 0 #D6D0C6;transform-origin:top;transition:transform .12s,background .3s,box-shadow .12s}
.ps-pk-key .ps-ic{color:#C2410C}
.ps-pk-key[aria-pressed=true]{background:linear-gradient(180deg,#FFD7C2 70%,#FFA77F);transform:perspective(500px) rotateX(-4deg);box-shadow:inset 0 -2px 0 #FF5B1A}
.ps-pk-key:hover{background:linear-gradient(180deg,#fff 80%,#EDE6DC)}
.ps-pk-key:focus-visible{outline:2px solid #FF5B1A;outline-offset:2px}
.ps-pk-note{position:absolute;left:50%;top:30%;font-style:normal;font-size:22px;color:#FF5B1A;opacity:0;pointer-events:none}
.ps-pk-key.ps-hit .ps-pk-note{animation:ps-note 1.2s ease-out}
@keyframes ps-note{0%{opacity:0;transform:translate(-50%,0)}20%{opacity:1}100%{opacity:0;transform:translate(-20%,-120px) rotate(15deg)}}
.ps-pk-blk{position:absolute;top:0;width:calc(100%/8*.55);height:56%;margin-left:calc(100%/8*-.275);background:linear-gradient(180deg,#0B0C10,#22263A);border-radius:0 0 5px 5px;pointer-events:none;box-shadow:0 4px 8px rgba(0,0,0,.5)}

/* ---------- process: dominoes ---------- */
.ps-dm-row{position:relative;padding:20px 0 0}
.ps-dm-line{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(10px,3vw,48px);padding:0 clamp(0px,4vw,60px);align-items:end}
.ps-dm-d{position:relative;justify-self:center;width:min(100%,120px);aspect-ratio:1/2;border:0;border-radius:10px;background:#0B0C10;color:#fff;cursor:pointer;display:grid;grid-template-rows:1fr 1fr;padding:0;transform-origin:100% 100%;transition:transform .55s cubic-bezier(.6,0,.9,.6),box-shadow .3s;box-shadow:0 18px 26px -16px rgba(11,12,16,.7)}
.ps-dm-top{position:relative;border-bottom:2px solid #3A3F52;margin:0 12px}
.ps-dm-top i{position:absolute;width:13%;aspect-ratio:1;border-radius:50%;background:#FFA77F;transform:translate(-50%,-50%)}
.ps-dm-bot{display:grid;align-content:center;justify-items:center;gap:4px;padding:6px;text-align:center}
.ps-dm-bot b{font:600 13px var(--f-sans);color:#FFA77F}
.ps-dm-bot small{font-size:11.5px;line-height:1.25;color:#C9CBD3}
.ps-dm-d.fell{transform:rotate(68deg)}
.ps-dm-d.on{box-shadow:0 0 0 3px #FF5B1A,0 18px 26px -16px rgba(11,12,16,.7);animation:ps-wob .6s ease}
@keyframes ps-wob{30%{transform:rotate(8deg)}60%{transform:rotate(-3deg)}}
.ps-dm-d:focus-visible{outline:2px solid #FF5B1A;outline-offset:4px}
.ps-dm-floor{display:block;height:2px;background:#0B0C10;margin-top:0}
.ps-dm-cards{display:grid;margin-top:clamp(24px,3vw,40px)}
.ps-dm-c{grid-area:1/1;background:#fff;border:1px solid #E3DCD2;padding:clamp(20px,3vw,34px);display:grid;gap:12px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .4s,transform .4s,visibility .4s}
.ps-dm-c.on{opacity:1;visibility:visible;transform:none}
.ps-dm-k{font:600 11px var(--f-sans);letter-spacing:.14em;text-transform:uppercase;color:#C2410C}
.ps-dm-c h3{font:500 clamp(22px,2.2vw,30px)/1.15 var(--f-flex);letter-spacing:-.02em}
.ps-dm-c>p{font-size:16.5px;line-height:1.6;color:#4B4E58;max-width:52em}
.ps-dm-two{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid #E6E0D6;padding-top:14px}
.ps-dm-two span{font:600 11px var(--f-sans);letter-spacing:.12em;text-transform:uppercase;color:#8F8A80;display:block;margin-bottom:6px}
.ps-dm-two p,.ps-dm-two li{font-size:15px;line-height:1.55;color:#2A2D35}
.ps-dm-two ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.ps-dm-two li{padding-left:18px;position:relative}.ps-dm-two li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;background:#FF5B1A}

/* ---------- need: peg line ---------- */
.ps-pg{display:grid;gap:22px}
.ps-pg-line{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:46px 14px;padding-top:18px}
.ps-pg-rope{display:none}
.ps-pg-cell{position:relative;display:grid}.ps-pg-cell::before{content:"";position:absolute;left:-8px;right:-8px;top:-1px;height:2px;background:#7E8396}
.ps-pg-s{position:relative;text-align:left;border:0;background:#F5F2EE;color:#0B0C10;font:500 13.5px/1.4 var(--f-sans);padding:22px 14px 14px;cursor:pointer;display:grid;gap:6px;min-height:120px;transform-origin:50% -8px;box-shadow:0 14px 20px -12px rgba(0,0,0,.7);animation:ps-sway 4s ease-in-out infinite;animation-delay:calc(var(--i)*-.6s);transition:transform .7s cubic-bezier(.5,0,.8,.4),opacity .5s}
.ps-pg-s small{font:600 11px var(--f-sans);color:#C2410C}
.ps-pg-peg{position:absolute;left:50%;top:-12px;width:10px;height:26px;margin-left:-5px;background:#C9A27A;border-radius:2px;box-shadow:inset 0 0 0 1px #8A6A4A}
.ps-pg-s:hover,.ps-pg-s:focus-visible{outline:2px solid #FF5B1A;outline-offset:2px}
.ps-pg-s.off{animation:none;transform:translateY(var(--ps-drop,260px)) rotate(14deg) scale(.6);opacity:0;pointer-events:none}
.ps-pg-s.wait{animation:none;transform:translateX(-120%);opacity:0;transition:none}
@keyframes ps-sway{50%{transform:rotate(1.6deg)}}
.ps-pg-folder{position:relative;background:#C2410C;color:#fff;padding:22px 20px 18px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:10px}
.ps-pg-tab{position:absolute;left:0;top:-14px;width:120px;height:14px;background:#C2410C;border-radius:8px 8px 0 0}
.ps-pg-folder b{font:500 16px var(--f-sans)}
.ps-pg-ct{font-size:13.5px;color:#FFD7C2}.ps-pg-ct i{font-style:normal;font:600 20px var(--f-flex);color:#fff}
.ps-pg-folder.bump{animation:ps-bump .4s ease}
@keyframes ps-bump{40%{transform:scaleY(.94) translateY(3px)}}

@media (max-width:900px){.ps-cb-in{grid-template-columns:minmax(0,1fr)}.ps-pk-pan{grid-template-columns:1fr}.ps-pk-what{grid-row:auto}.ps-pt-btns{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){
  .ps-cb-board{padding:40px 12px 12px}.ps-cb-sh{padding:18px 14px}
  .ps-cb-tab[aria-pressed=true]{transform:none}
  .ps-pt-st .l{display:none}.ps-pt-st .n{font-size:26px}
  .ps-pt-slip{grid-template-columns:1fr;padding:16px}
  .ps-pk-keys{height:260px;gap:3px}
  .ps-pk-key{padding:0 2px 12px;font-size:11px}
  .ps-pk-key span{writing-mode:vertical-rl;transform:rotate(180deg);max-height:170px;font-size:10.5px;line-height:1.15}.ps-pk-key .ps-ic{display:none}.ps-pk-blk{height:30%}.ps-pk-keys{height:290px}
  .ps-pk-pan{padding:18px}
  .ps-dm-line{gap:8px}
  .ps-dm-bot small{display:none}.ps-dm-bot b{font-size:10.5px}
  .ps-dm-two{grid-template-columns:1fr}
  .ps-pg-line{grid-template-columns:1fr 1fr;gap:40px 10px}
  .ps-pg-s{font-size:12.5px;min-height:110px}
}
@media (prefers-reduced-motion:reduce){.ps-pg-s,.ps-pk-note,.ps-dm-d.on{animation:none!important}}
.ps-dm,.ps-pk,.ps-nc,.ps-pt,.ps-cb{overflow:hidden}
/* QA: on phones the fallen dominoes slid under the standing ones and hid their week; stage labels broke mid-range */
@media (max-width:600px){
 .ps-dm-d.fell{transform:rotate(24deg)}
 .ps-dm-bot b{white-space:nowrap;font-size:10px;letter-spacing:-.01em}
}
/* QA widths: at 901–1100 the clothesline slips and lockers were squeezed into two narrow columns; stack them like tablets */
@media (min-width:901px) and (max-width:1100px){
 .ps-nc-in{grid-template-columns:minmax(0,1fr)}
}

/* phones, larger small text: domino weeks wrap at the space only ("Week" / "2–4"; word joiners keep the range together) so the fifth domino stays on screen; the file pile gets room to spread */
@media (max-width:600px){
 .ps-dm-line{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:0}
 .ps-dm-bot{padding:4px 2px}.ps-dm-bot b{white-space:normal;line-height:1.15;letter-spacing:0}
 .ps-pf-chaos{height:230px}
 .ps-pf-chaos span:nth-child(1){--x:2%!important;--y:0%!important}.ps-pf-chaos span:nth-child(2){--x:42%!important;--y:7%!important}.ps-pf-chaos span:nth-child(3){--x:4%!important;--y:37%!important}.ps-pf-chaos span:nth-child(4){--x:46%!important;--y:45%!important}.ps-pf-chaos span:nth-child(5){--x:16%!important;--y:72%!important}
 .ps-pk-ph small{display:block;line-height:1.4;margin-bottom:4px}
 .ps-cb-hd,.ps-au-hd{flex-wrap:wrap;row-gap:4px}
}
