/* Paper, ink and deliberate movement. Scoped to the public home page. */
#home{--desk-blue:#2852d6;--desk-yellow:#edf28f;--desk-paper:#fffdf3;--desk-rule:#d5d1c4;--desk-ease:cubic-bezier(.22,1,.36,1)}
.motion-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#home .fd-hero{grid-template-columns:1.08fr 1fr;gap:54px;padding-top:58px;padding-bottom:64px}
#home .fd-hero h1{font-size:clamp(44px,4.8vw,67px);letter-spacing:-2.7px}
#home .fd-hero .fd-lede{font-size:19px}
#home .motion-desk{min-width:0;background:#dfe6fb;box-shadow:6px 6px 0 #d6d1c4;position:relative;align-self:center}
.motion-desk .fd-window{padding:13px 16px;font-size:10px;color:var(--ink)}
.demo-edition{font-size:9px;letter-spacing:.04em}
.demo-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px 0}
.demo-toolbar>span{font:9px 'Courier New',monospace;letter-spacing:.04em;color:#37466c}
.demo-switch{display:flex;padding:3px;background:#cdd7f3;border:1px solid #a2b2df;border-radius:3px}
.demo-switch button{background:transparent;padding:8px 14px;min-height:36px;font-size:12px;color:#31436b;border-radius:1px;transition:background-color .2s,box-shadow .2s}
.demo-switch button[aria-pressed=true]{background:var(--desk-paper);color:var(--ink);box-shadow:1px 2px 0 #a2b2df}
.demo-stage{padding:24px 26px 22px;position:relative;isolation:isolate;display:grid}
.demo-deck{position:relative;display:grid;grid-area:1/1;min-width:0}
.demo-paper{grid-area:1/1;min-width:0}
/* Hidden panels reserve intrinsic space so controls do not move between steps.
   Visibility also keeps these panels out of the accessibility tree. */
.demo-deck[hidden]{display:grid!important;visibility:hidden;pointer-events:none}
.demo-paper[hidden],.walk-panel[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.demo-deck[hidden] .demo-paper{visibility:hidden!important}
.demo-deck:before,.demo-deck:after{content:'';position:absolute;inset:5px 0 -5px;border:1px solid #8494bf;background:#f6f2e7;z-index:-1;transform:rotate(-2deg)}
.demo-deck:after{inset:3px 0 -3px;transform:rotate(1.3deg);background:#edf0fb}
.demo-paper{padding:24px;background:var(--desk-paper);border:1px solid var(--ink);min-height:330px;position:relative;box-shadow:3px 3px 0 #a9b9e2;transform-origin:50% 85%}
.demo-eyebrow{font:10px/1.5 'Courier New',monospace!important;letter-spacing:.09em;color:#55564f;margin:0 0 15px!important}
#home .demo-paper h2{font-size:34px;line-height:1.06;letter-spacing:-1.3px;margin:0 0 24px;color:var(--ink)}
#home mark{background:linear-gradient(var(--desk-yellow),var(--desk-yellow)) no-repeat 0 90%/100% 45%;color:inherit;padding:0 .04em}
.demo-document{display:flex;gap:12px;align-items:center;background:#f4f1e8;border:1px solid var(--desk-rule);padding:17px 12px;flex-wrap:wrap}
.demo-document svg,.demo-evidence svg{width:31px;height:38px;flex-shrink:0;stroke:var(--desk-blue);stroke-width:1.5}
.demo-document>div{flex:1;min-width:100px}.demo-document strong{display:block;font-size:13px;line-height:1.4}.demo-document div>span{display:block;font-size:10px;line-height:1.5;margin-top:4px;color:#55564f}
.paper-badge{display:inline-block;font:9px/1.4 'Courier New',monospace;letter-spacing:.055em;padding:5px 7px;background:var(--desk-yellow);border:1px solid #77794e;color:var(--ink);white-space:nowrap;transform:rotate(-3deg)}
#home .demo-note{font-size:12px;line-height:1.65;margin:17px 0 0}
.demo-chart>div{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:16px}.demo-chart>div>span,.demo-chart b{font-size:12px;line-height:1.4}.demo-chart b{color:var(--desk-blue)}
.demo-chart i,.walk-bars i{display:block;width:var(--bar);height:12px;background:var(--desk-blue);grid-column:1/-1;transform-origin:left}
.demo-chart i:nth-of-type(1){background:#bdc9eb}.demo-chart p{font:10px/1.5 'Courier New',monospace!important;margin:12px 0 0;text-align:right}
.chart-key{display:inline-block;width:10px;height:10px;background:var(--desk-blue);vertical-align:middle}.chart-key.previous{background:#bdc9eb}
.demo-finding{border-top:1px solid var(--desk-rule);border-bottom:1px solid var(--desk-rule);padding:14px 0}.demo-finding>span{font:9px 'Courier New',monospace;letter-spacing:.07em}.demo-finding strong{display:block;font-size:26px;line-height:1.2;letter-spacing:-.7px;margin:9px 0;color:var(--desk-blue)}.demo-finding strong>span{font-weight:400;font-size:20px}
#home .demo-finding p{font-size:12px;line-height:1.55;margin:0}.demo-evidence{display:flex;gap:9px;align-items:center;margin-top:13px;font-size:10px;line-height:1.5;color:#55564f}.demo-evidence svg{width:23px;height:27px}
.demo-action{padding:15px 16px 12px;border:1px solid #b8b69b;box-shadow:3px 3px 0 #e2dece;background:#f7f5e9;position:relative}.demo-action>div{display:flex;align-items:center;justify-content:space-between}.demo-check svg{height:28px;width:28px;stroke:var(--desk-blue);stroke-width:1.8}
#home .demo-action h3{font-size:20px;line-height:1.16;letter-spacing:-.5px;margin:9px 0}.demo-action p{font-size:11px!important;line-height:1.6!important;margin:0 0 13px}.demo-status{font:9px 'Courier New',monospace;letter-spacing:.07em;border-top:1px solid var(--desk-rule);display:block;padding-top:9px}
.demo-research{border-top:1px solid var(--desk-rule)}.demo-research>span{font:9px 'Courier New',monospace;display:block;margin:12px 0}.demo-research>div{font-size:12px;padding:12px 0;border-bottom:1px solid var(--desk-rule);display:flex;gap:8px;justify-content:space-between}.demo-research b{font:10px 'Courier New',monospace;color:var(--desk-blue)}
.demo-footer{padding:0 18px 12px}.demo-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.demo-steps button{background:none;border-top:2px solid #a6b4da;color:#4a587a;text-align:left;font-size:10px;padding:8px 0;min-height:43px;line-height:1.4}.demo-steps button>span{display:block;font:9px 'Courier New',monospace;margin-bottom:3px}.demo-steps button[aria-pressed=true]{border-color:var(--desk-blue);color:#18378e;font-weight:700}
.demo-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #afbcdd;padding-top:10px;margin-top:3px}.demo-bottom>a{font-size:12px;font-weight:600;display:flex;align-items:center;gap:8px;line-height:1.5}.demo-play{min-height:36px;background:var(--desk-paper);border:1px solid #9aa9cd;border-radius:2px;color:var(--ink);font-size:11px;padding:7px 9px;white-space:nowrap}.demo-play span{display:inline-block;margin-left:6px;font-size:14px}
#home .demo-disclaimer{font:9px/1.6 'Courier New',monospace;margin:9px 0 0;text-align:center;color:#4a587a}
.desk-mini{height:64px;display:flex;align-items:center;gap:16px;margin-bottom:28px;position:relative;max-width:300px}.desk-mini-icon{background:var(--desk-paper);border:1px solid var(--ink);box-shadow:3px 3px 0 #d6d1c4;transform:rotate(-5deg);width:55px;height:60px;padding:7px}.desk-mini svg{width:100%;height:100%;stroke:var(--desk-blue);stroke-width:1.5}.desk-mini-lines{display:grid;gap:7px;width:54px}.desk-mini-lines i{height:2px;background:#a7b6e0;transform-origin:left}.desk-mini-lines i:nth-child(2){width:75%}.desk-mini-lines i:last-child{width:55%;background:var(--desk-blue)}.desk-mini-stamp{padding:9px 11px;font:9px 'Courier New',monospace;letter-spacing:.04em;border:1px solid var(--ink);background:var(--desk-yellow);transform:rotate(4deg)}
/* One pinned product window, three chapters. Native scrolling stays intact. */
.desk-walk{background:#2448c5;color:var(--desk-paper);padding:64px 0 68px}.walk-heading{position:relative;border-bottom:1px solid #7891e0;padding-bottom:32px}.walk-heading .margin-label{color:#d7dff8}.walk-heading h2{font-size:clamp(36px,4.3vw,57px);line-height:1.07;letter-spacing:-1.8px;margin:20px 0 0}.walk-heading h2 em{color:var(--desk-yellow);font-family:inherit;font-style:normal}.walk-heading>p:last-child{position:absolute;right:0;bottom:25px;font-size:14px;line-height:1.7;color:#e4e9fa;margin:0}
.walk-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.walk-copy{padding-top:25px}.walk-chapter{padding:50px 0 60px;border-bottom:1px solid #6c86d9;min-height:330px;opacity:.75;transition:opacity .35s}.walk-chapter:last-child{border-bottom:0}.walk-chapter.is-current{opacity:1}.walk-number{font:12px 'Courier New',monospace;display:inline-block;border:1px solid #9eb0eb;width:40px;height:34px;display:grid;place-items:center;transition:background .3s,color .3s}.walk-chapter.is-current .walk-number{background:var(--desk-yellow);border-color:var(--desk-yellow);color:var(--ink)}.walk-chapter h3{font-size:32px;line-height:1.12;letter-spacing:-.9px;margin:20px 0 18px}.walk-chapter p{color:#e5eafa;font-size:15px;line-height:1.8;max-width:370px}.walk-chapter button{background:none;color:var(--desk-paper);border-bottom:1px solid #a9b8ec;padding:7px 0;font-size:12px;min-height:36px}.walk-chapter button>span{margin-left:18px}
.walk-preview{position:sticky;top:38px;padding-top:52px;padding-bottom:25px;min-width:0}.walk-window{background:var(--desk-paper);color:var(--ink);border:1px solid #172d76;box-shadow:8px 8px 0 #18399e}.walk-window .fd-window{background:#e1e7f8;color:#394662;border-bottom:1px solid #a4b2d6;padding:14px 18px}.walk-panel-wrap{padding:30px;min-height:416px}.walk-panel h3{font-size:36px;line-height:1.06;letter-spacing:-1.1px;margin:0 0 24px}.walk-files{display:grid;gap:11px}.walk-file{display:flex;align-items:center;gap:12px;border:1px solid #c7c4b8;padding:13px;background:#f6f2e7;box-shadow:3px 3px 0 #e4dfd0}.walk-file svg{stroke:var(--desk-blue);stroke-width:1.5;width:30px;height:34px;flex-shrink:0}.walk-file>span{flex:1}.walk-file strong{display:block;font-size:13px}.walk-file small{display:block;font-size:10px;color:#55564f;line-height:1.5;margin-top:4px}.walk-file>b{font:10px 'Courier New',monospace;color:#777}.walk-file:nth-child(2){transform:rotate(-1deg)}.walk-file:nth-child(3){transform:rotate(1deg)}
.walk-research{border:1px solid #c7c4b8;padding:18px;background:#f6f2e7}.walk-panel h4{font-family:var(--display);font-size:23px;letter-spacing:-.4px;line-height:1.2;margin:18px 0}.walk-bars{display:grid;gap:7px}.walk-bars>span{display:flex;justify-content:space-between;font-size:11px;margin-top:4px}.walk-bars i{height:8px}.walk-research p,.walk-evidence{font-size:10px;line-height:1.6;color:#55564f;margin:15px 0 0}.walk-task{background:#f5f3e6;border:1px solid #b8b69b;box-shadow:4px 4px 0 #d7d1bd;padding:20px;transform:rotate(-1deg)}.walk-task p{color:#55564f;font-size:12px;line-height:1.7;margin-bottom:15px}.walk-task>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ccc6b3;padding-top:12px}.walk-task>div>span{font:10px 'Courier New',monospace}.walk-task svg{width:28px;height:28px;stroke:var(--desk-blue);stroke-width:1.8}.walk-task-secondary{display:flex;gap:12px;padding:15px;border:1px solid #d5d1c4;font-size:11px;line-height:1.5;background:#faf8ef;transform:rotate(1deg);margin-top:14px}.walk-task-secondary>span{font:10px 'Courier New',monospace;color:var(--desk-blue)}
.walk-disclaimer{color:#55564f;font:10px/1.6 'Courier New',monospace;text-align:center;border-top:1px solid #d5d1c4;padding:13px 16px;margin:0}.walk-demo-link{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #9cafed;padding:16px 0 9px;margin-top:15px;font-size:13px;line-height:1.5}.walk-mobile-nav{display:none}
.walk-panel-wrap{display:grid}.walk-panel{grid-area:1/1;min-width:0}
/* Tactile controls follow the existing printed shadows. */
@media(prefers-reduced-motion:no-preference){
 #home .btn{transition:transform 160ms var(--desk-ease),box-shadow 160ms var(--desk-ease);box-shadow:3px 4px 0 var(--ink)}
 #home .btn:active{transform:translate(3px,4px);box-shadow:0 0 0 var(--ink)}
 #home .fd-example{transition:transform .3s var(--desk-ease),box-shadow .3s var(--desk-ease)}
 .demo-paper.is-entering{animation:desk-paper-in .55s var(--desk-ease) both}.is-entering .demo-piece{animation:desk-piece-in .55s var(--desk-ease) both}.is-entering .demo-piece:nth-child(n+4){animation-delay:.1s}
 .is-entering .demo-chart i,.is-entering .walk-bars i{animation:desk-bar-in .65s var(--desk-ease) .1s both}.is-entering mark{animation:desk-mark-in .65s var(--desk-ease) .12s both}.is-entering .paper-badge{animation:desk-stamp-in .45s var(--desk-ease) .2s both}
 .desk-mini.is-entering .desk-mini-icon{animation:desk-icon-in .65s var(--desk-ease)}.desk-mini.is-entering .desk-mini-lines i{animation:desk-bar-in .6s var(--desk-ease) .2s both}.desk-mini.is-entering .ink-line{stroke-dasharray:65;stroke-dashoffset:0;animation:desk-draw-in .9s var(--desk-ease) .1s both}
 #home .faq-list summary::after{content:'+';transition:transform .25s var(--desk-ease);transform-origin:center}#home .faq-list details[open] summary::after{transform:rotate(45deg)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 #home .btn:hover{transform:translate(-1px,-2px);box-shadow:4px 6px 0 var(--ink)}#home .btn:active{transform:translate(3px,4px);box-shadow:none}
 #home .fd-example:hover,#home .fd-example:focus-visible{transform:translateY(-4px);box-shadow:5px 8px 0 #d6d1c4}
 .demo-switch button:hover{background:#f4f1e8}.demo-steps button:hover{border-color:var(--desk-blue);color:#18378e}
}
@keyframes desk-paper-in{from{transform:translateY(12px) rotate(1.2deg);opacity:.4}to{transform:none;opacity:1}}
@keyframes desk-piece-in{from{translate:0 10px;opacity:.3}to{translate:0 0;opacity:1}}
@keyframes desk-bar-in{from{transform:scaleX(.05)}to{transform:scaleX(1)}}
@keyframes desk-mark-in{from{background-size:0 45%}to{background-size:100% 45%}}
@keyframes desk-stamp-in{from{transform:rotate(-8deg) scale(1.12);opacity:0}to{transform:rotate(-3deg) scale(1);opacity:1}}
@keyframes desk-icon-in{from{transform:rotate(-10deg) translateY(8px)}to{transform:rotate(-5deg) translateY(0)}}
@keyframes desk-draw-in{from{stroke-dashoffset:65}to{stroke-dashoffset:0}}
@media(max-width:1100px){#home .fd-hero{gap:30px;grid-template-columns:1fr 1fr}#home .fd-hero h1{font-size:52px}.demo-stage{padding:22px 18px}.demo-paper{padding:20px;min-height:338px}#home .demo-paper h2{font-size:30px}.demo-toolbar{padding:13px 14px 0}.demo-switch button{padding:7px 11px}.walk-layout{gap:50px}.walk-panel-wrap{padding:24px;min-height:425px}.walk-panel h3{font-size:32px}.walk-chapter h3{font-size:29px}}
@media(max-width:800px){#home .fd-hero{grid-template-columns:1fr;gap:35px}#home .fd-hero h1{font-size:54px}#home .motion-desk{max-width:520px;width:100%;margin:0 auto}.demo-paper{min-height:324px}.walk-layout{gap:30px;grid-template-columns:1fr 1.12fr}.walk-panel-wrap{padding:20px;min-height:430px}.walk-panel h3{font-size:29px}.walk-heading>p:last-child{position:static;margin-top:20px}.walk-chapter{min-height:370px}.walk-chapter h3{font-size:27px}.walk-chapter p{font-size:14px}.walk-preview{top:20px}.walk-file{padding:10px;gap:7px}.walk-file>b{display:none}}
@media(max-width:640px){#home .fd-hero{padding-top:32px;padding-bottom:42px}#home .fd-hero h1{font-size:43px;letter-spacing:-1.8px}#home .fd-hero .fd-lede{font-size:18px}.demo-toolbar{gap:7px}.demo-toolbar>span{font-size:8px}.demo-paper{padding:20px;min-height:338px}#home .demo-paper h2{font-size:30px}.demo-stage{padding:22px 17px}.demo-document{padding:12px 10px}.demo-document>.paper-badge{font-size:8px}.demo-switch button{padding:7px 12px}.demo-bottom{gap:8px}.demo-bottom>a{font-size:11px}.demo-steps button{font-size:9px}.demo-footer{padding:0 14px 12px}.demo-edition{font-size:8px}.desk-mini{margin-bottom:20px;gap:12px}
 .desk-walk{padding:38px 0 42px}.walk-heading{padding-bottom:25px}.walk-heading h2{font-size:37px;letter-spacing:-1.2px}.walk-heading>p:last-child{font-size:13px}.walk-layout{display:flex;flex-direction:column;gap:0}.walk-copy{width:100%;padding:0}.walk-chapter{padding:26px 0;min-height:0;opacity:1}.walk-chapter h3{font-size:26px;margin:14px 0 12px}.walk-chapter p{max-width:none;font-size:14px;margin-bottom:0}.walk-chapter button{display:none}.walk-number{float:right}.walk-chapter h3{padding-right:48px}.walk-copy[data-enhanced] .walk-chapter{display:none;border:0}.walk-copy[data-enhanced] .walk-chapter.is-current{display:block}
 .walk-preview{position:static;padding-top:0;padding-bottom:0;width:100%}.walk-mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:15px}.walk-mobile-nav button{background:#2448c5;color:#fffdf3;border:1px solid #9dafec;padding:10px 5px;min-height:48px;font-size:11px;line-height:1.4}.walk-mobile-nav button>span{display:block;font:9px 'Courier New',monospace;margin-bottom:4px}.walk-mobile-nav button[aria-pressed=true]{background:var(--desk-yellow);color:var(--ink);border-color:var(--desk-yellow)}.walk-panel-wrap{padding:24px;min-height:410px}.walk-panel h3{font-size:33px}.walk-file{padding:13px;gap:12px}.walk-file>b{display:block}.walk-disclaimer{font-size:9px}.walk-demo-link{font-size:12px}
}
@media(min-width:641px) and (max-height:720px){.walk-preview{position:static}}
@media(prefers-reduced-motion:reduce){.walk-preview{position:static}.walk-chapter{opacity:1}#home .btn:hover,#home .fd-example:hover{transform:none}.is-entering,.is-entering *{animation:none!important;transition:none!important}}
@media print{.demo-toolbar,.demo-steps,.demo-play,.walk-mobile-nav,.walk-chapter button{display:none!important}.walk-preview{position:static}.desk-walk{background:white;color:black}.walk-chapter p,.walk-heading p{color:black}.walk-layout{display:block}}
