/* Purposeful product diagrams and motion. The white / graphite / gold palette stays intact. */
:root{--motion-ease:cubic-bezier(.16,1,.3,1);--diagram-ink:#151a23;--diagram-muted:#647080;--diagram-line:#dce0e6;--diagram-panel:#fff}
.reading-progress{height:2px;position:fixed;inset:0 0 auto;z-index:100;pointer-events:none}.reading-progress>span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}
.motion-toggle{display:flex;align-items:center;gap:var(--space-2);min-height:44px;background:none;border:0;padding:var(--space-2);font-size:var(--text-xs);color:var(--muted)}
.motion-icon{width:15px;height:15px;display:flex;gap:4px;align-items:center;justify-content:center}.motion-icon i{height:11px;width:2px;background:currentColor;display:block}.motion-toggle[aria-pressed=true] .motion-icon{border-left:8px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent;width:0;height:0;margin-inline:4px}.motion-toggle[aria-pressed=true] .motion-icon i{display:none}
.site-header nav{gap:var(--space-5)}
.expertise-engine{background:var(--paper);border:1px solid var(--line);min-width:0;position:relative;box-shadow:0 24px 60px #1520300a}
.expertise-engine::before,.expertise-engine::after{position:absolute;content:'';width:12px;height:12px;pointer-events:none;z-index:2}.expertise-engine::before{top:-1px;left:-1px;border-left:2px solid var(--gold);border-top:2px solid var(--gold)}.expertise-engine::after{bottom:-1px;right:-1px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold)}
.engine-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);font-size:var(--text-xs);letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--line)}.engine-topline>span:first-child{display:flex;align-items:center;gap:var(--space-2)}.engine-sequence{font-variant-numeric:tabular-nums;color:var(--gold-text);white-space:nowrap}
.engine-stage{height:302px;position:relative;isolation:isolate}.engine-stage canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.engine-sources{position:absolute;top:var(--space-5);left:var(--space-5);right:var(--space-5);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.engine-sources>span{font-size:var(--text-xs);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--muted);background:var(--paper);padding:var(--space-2) 0;border:1px solid var(--line);white-space:nowrap}.source-icon{display:block;width:16px;height:18px;position:relative;color:var(--gold-text)}.source-book{border:1px solid currentColor;border-left:3px solid currentColor}.source-play{border:1px solid currentColor}.source-play::after{content:'';position:absolute;left:5px;top:4px;border-left:5px solid currentColor;border-block:4px solid transparent}.source-lines{border-block:1px solid currentColor}.source-lines::before,.source-lines::after{content:'';position:absolute;width:100%;height:1px;left:0;top:5px;background:currentColor}.source-lines::after{top:10px}
.engine-core-label{position:absolute;left:50%;top:193px;transform:translateX(-50%);text-align:center;background:var(--paper);padding:var(--space-1) var(--space-3);min-width:150px}.engine-core-label>span{font-size:var(--text-xs);letter-spacing:.13em;color:var(--gold-text);display:block}.engine-core-label small{font-size:var(--text-xs);color:var(--muted)}.engine-port-labels{position:absolute;bottom:var(--space-3);left:var(--space-5);right:var(--space-5);display:grid;grid-template-columns:repeat(3,1fr);text-align:center;font-size:var(--text-xs);letter-spacing:.12em;color:var(--muted)}.engine-choices{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.engine-choices button{padding:var(--space-3);min-height:52px;background:var(--paper);border:0;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);text-align:left;transition:color .18s,background .18s}.engine-choices button:last-child{border-right:0}.engine-choices button[aria-selected=true]{background:var(--ink);color:var(--bg)}.engine-choices button>span{color:var(--gold)}.engine-choices button:hover:not([aria-selected=true]){background:var(--surface)}
#engine-output{margin:var(--space-5);border:1px solid var(--line);background:var(--paper)}.output-window-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-xs);letter-spacing:.08em;color:var(--screen-label);background:var(--screen-bar);padding:var(--space-3) var(--space-4)}.window-dots{display:flex;gap:4px}.window-dots i{display:block;width:4px;height:4px;border-radius:50%;background:#8c98a8}.window-mark{color:#d5bd7c}.output-window-body{padding:var(--space-5)}.output-title-row{display:flex;gap:var(--space-4);align-items:start}.output-symbol{font:400 2.25rem/1 var(--font-display);color:var(--gold-text);letter-spacing:-.06em}.output-title-row h2{font-size:1.45rem;letter-spacing:-.025em;line-height:1.3}.output-window-body>p{font-size:var(--text-xs);color:var(--muted);line-height:1.65;margin-top:var(--space-4);margin-bottom:var(--space-4);min-height:40px}.output-preview{padding:var(--space-4);background:var(--surface);border:1px solid var(--line)}.output-preview-label{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);letter-spacing:.06em;color:var(--muted);margin-bottom:var(--space-2)}.pulse-square{width:5px;height:5px;background:var(--gold)}.output-preview>strong{font-size:var(--text-sm);font-weight:500;line-height:1.5;display:block}.preview-line{height:3px;background:var(--line);margin-top:var(--space-3);transform-origin:left}.preview-line.long{width:84%}.preview-line.short{width:56%;margin-top:var(--space-2)}.output-action{display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:var(--text-xs);margin-top:var(--space-4);padding-top:var(--space-3);color:var(--gold-text)}.engine-caption{font-size:var(--text-xs);color:var(--muted);padding:0 var(--space-5) var(--space-5);line-height:1.6}
.hero-copy{padding-top:var(--space-8)}.hero{gap:var(--space-12)}.expertise-engine{margin-top:0}
.repetition-diagram{margin-top:var(--space-12);position:relative;padding:var(--space-5);border:1px solid var(--line);max-width:320px}.loop-label{font-size:var(--text-xs);letter-spacing:.08em;color:var(--muted);margin-bottom:var(--space-5)}.loop-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);margin-bottom:var(--space-4)}.loop-item i{display:block;flex:1;height:1px;background:var(--line)}.loop-path{position:absolute;right:var(--space-5);top:67px;height:125px;width:20px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold)}.loop-path>span{position:absolute;width:5px;height:5px;background:var(--gold);right:-3px;top:0}.loop-destination{display:flex;align-items:center;gap:var(--space-3);border-top:1px solid var(--line);padding-top:var(--space-5);margin-top:var(--space-6);font-size:var(--text-base)}.loop-destination strong{font-weight:500}.loop-person{width:21px;height:20px;border:1px solid var(--gold);border-radius:8px 8px 0 0;position:relative;margin-top:var(--space-2)}.loop-person::before{content:'';display:block;width:8px;height:8px;border:1px solid var(--gold);border-radius:50%;position:absolute;top:-12px;left:5px;background:var(--paper)}.repetition-diagram>p{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-4)}
.definition{display:block;padding:var(--space-12);overflow:hidden}.architecture-intro{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:var(--space-10)}.architecture-intro h2{font-size:var(--text-xl);margin-bottom:var(--space-4)}.architecture-intro>p:last-child{margin-bottom:0}.architecture-board{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);align-items:center;min-height:430px}
.layer-stack{position:relative;height:430px;perspective:900px;min-width:0}.architecture-layer{position:absolute;display:block;width:88%;height:180px;left:4%;text-align:left;padding:var(--space-6);background:var(--paper);border:1px solid var(--line);transform:rotateX(32deg) rotateZ(-14deg);transform-origin:center;box-shadow:10px 20px 40px #15203012;transition:transform .5s var(--motion-ease),border-color .2s,box-shadow .3s;overflow:hidden}.layer-interface{top:12px;z-index:3}.layer-method{top:120px;z-index:2}.layer-knowledge{top:228px;z-index:1}.architecture-layer[aria-selected=true]{border-color:var(--gold);box-shadow:10px 22px 50px #1520301c;transform:rotateX(32deg) rotateZ(-14deg) translateY(-8px)}.architecture-layer:focus-visible{outline:3px solid var(--gold-text);outline-offset:5px}.layer-code{display:block;color:var(--gold-text);font-size:var(--text-xs);letter-spacing:.1em}.layer-name{display:block;font:400 1.6rem/1.3 var(--font-display);letter-spacing:-.025em;margin-top:var(--space-2)}.layer-corner{position:absolute;right:var(--space-6);top:var(--space-6);color:var(--gold-text)}.layer-linework{display:flex;gap:var(--space-2);position:absolute;bottom:var(--space-5);left:var(--space-6);right:var(--space-6);height:26px}.layer-linework i{display:block;flex:1;border:1px solid var(--line);background:var(--surface)}.layer-method .layer-linework i:nth-child(2){border-color:var(--gold)}.layer-knowledge .layer-linework i{border-block:0;border-left:3px solid var(--line)}
.layer-copy{position:relative;border-top:1px solid var(--line);padding-top:var(--space-8);padding-bottom:var(--space-6)}.layer-detail-number{position:absolute;right:0;top:-40px;font:400 4rem/1 var(--font-display);letter-spacing:-.07em;color:var(--line);pointer-events:none}.layer-copy h3{font:400 1.7rem/1.3 var(--font-display);margin-bottom:var(--space-5);max-width:300px}.layer-copy>p:last-of-type{min-height:92px;max-width:340px}.review-boundary{display:flex;align-items:start;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--line);margin-top:var(--space-6)}.boundary-icon{color:var(--gold-text);font-size:1.6rem;line-height:1}.review-boundary p{color:var(--ink);font-size:var(--text-sm)}.review-boundary small{display:block;color:var(--muted);font-size:var(--text-xs);margin-top:var(--space-2)}.definition .definition-footer{padding-top:var(--space-6)}
.workflow{position:relative;overflow:hidden}.workflow::before{content:'';height:35px;width:2px;position:absolute;left:0;top:-35px;background:var(--gold);animation:workflow-trace 4s linear infinite}.workflow span:nth-child(even){transition:color .3s}.path-panel:not([hidden]) .workflow strong{border-bottom:1px solid var(--gold);padding-bottom:var(--space-1)}
.client-screen,.review-screen{transition:transform .4s var(--motion-ease),box-shadow .4s}.example-visual:hover .client-screen,.example-visual:hover .review-screen{transform:translateY(-4px);box-shadow:0 24px 50px #1520301c}.question-card{position:relative;overflow:hidden}.question-card::after{content:'';position:absolute;left:0;top:0;height:1px;width:45%;background:var(--gold);animation:question-scan 6s linear infinite}.review-check{position:relative}.review-check::after{content:'';position:absolute;inset:-3px;border:1px solid var(--gold);opacity:0;animation:review-pulse 6s ease-out infinite}.review-row:nth-of-type(2) .review-check::after{animation-delay:.4s}.review-row:nth-of-type(3) .review-check::after{animation-delay:.8s}
.source-icon,.output-symbol{transition:color .3s}.loop-path>span{animation:loop-route 4.5s linear infinite}.pulse-square{animation:status-pulse 3s ease-in-out infinite}.button{position:relative;overflow:hidden}.button>span{transition:transform .25s var(--motion-ease)}.button:hover>span{transform:translate(3px,-2px)}
@keyframes workflow-trace{to{top:110%}}@keyframes loop-route{0%{top:0;opacity:0}10%{opacity:1}85%{opacity:1}100%{top:100%;opacity:0}}@keyframes status-pulse{0%,100%{opacity:.45}50%{opacity:1}}@keyframes question-scan{0%{left:-45%}50%,100%{left:100%}}@keyframes review-pulse{0%,12%{opacity:0;transform:scale(.8)}18%{opacity:.6}35%,100%{opacity:0;transform:scale(1.5)}}
[data-motion=paused] *,[data-motion=paused] *::before,[data-motion=paused] *::after{animation-play-state:paused!important}
@media(max-width:1000px){.hero{gap:var(--space-8)}.engine-topline{letter-spacing:.03em;padding-inline:var(--space-4)}.engine-sources{left:var(--space-3);right:var(--space-3);gap:var(--space-1)}.engine-sources>span{font-size:var(--text-xs);letter-spacing:-.04em}.output-window-body{padding:var(--space-4)}#engine-output{margin:var(--space-4)}.output-title-row{gap:var(--space-3)}.output-title-row h2{font-size:1.25rem}.architecture-board{gap:var(--space-10)}.definition{padding:var(--space-8)}.architecture-layer{width:94%;left:0}.layer-name{font-size:1.4rem}.site-header nav{gap:var(--space-3)}}
@media(max-width:760px){.site-header .motion-label{display:none}.motion-toggle{width:44px;justify-content:center;padding:var(--space-2)}.site-header nav{gap:var(--space-2)}.hero-copy{padding-top:0}.expertise-engine{max-width:480px;width:100%;margin-inline:auto}.hero{gap:var(--space-10)}.engine-stage{height:302px}.engine-sources{left:var(--space-3);right:var(--space-3)}.engine-sources>span{font-size:var(--text-xs)}.engine-topline{font-size:var(--text-xs)}.output-title-row h2{font-size:1.4rem}.output-window-body>p{min-height:0}.engine-choices button{padding:var(--space-3) var(--space-2);font-size:var(--text-xs);gap:var(--space-1)}.engine-caption{padding-inline:var(--space-4)}.repetition-diagram{margin-top:var(--space-6);max-width:none;display:grid;grid-template-columns:1fr 1fr;column-gap:var(--space-6)}.loop-label{grid-column:1/-1}.loop-item{font-size:var(--text-xs);grid-column:1;margin-bottom:var(--space-3)}.loop-path{left:calc(50% - 8px);right:auto;top:60px;height:84px}.loop-destination{grid-column:2;grid-row:2/5;align-self:center;margin:0;padding:0;border:0;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding-left:var(--space-3)}.repetition-diagram>p{grid-column:1/-1;border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:var(--space-3)}.recognition .section-side{order:2}.recognition .prose{order:1}.definition{padding:var(--space-6)}.architecture-board{grid-template-columns:1fr;gap:var(--space-8)}.architecture-intro{margin-bottom:var(--space-6)}.layer-stack{height:360px;max-width:380px;width:100%;margin:auto;perspective:800px}.architecture-layer{height:146px;width:90%;left:5%;padding:var(--space-4);transform:rotateX(25deg) rotateZ(-10deg)}.architecture-layer[aria-selected=true]{transform:rotateX(25deg) rotateZ(-10deg) translateY(-5px)}.layer-interface{top:0}.layer-method{top:99px}.layer-knowledge{top:198px}.layer-code{font-size:var(--text-xs);letter-spacing:.06em}.layer-name{font-size:1.4rem}.layer-linework{left:var(--space-4);right:var(--space-4);bottom:var(--space-4);height:22px}.layer-corner{top:var(--space-4);right:var(--space-4)}.layer-copy{padding-top:var(--space-6)}.layer-copy>p:last-of-type{min-height:0;max-width:none}.layer-detail-number{top:-30px;font-size:3rem}.review-boundary{margin-top:var(--space-4);padding-top:var(--space-5)}}
@media(max-width:360px){.engine-topline{gap:var(--space-2);font-size:var(--text-xs);letter-spacing:0}.engine-sources>span{letter-spacing:-.07em}.engine-port-labels{letter-spacing:.04em}.output-symbol{font-size:1.8rem}.output-title-row h2{font-size:1.3rem}.output-window-body{padding:var(--space-3)}.output-preview{padding:var(--space-3)}.architecture-layer{width:92%;left:4%}}
@media(max-width:760px){.recognition .section-side,.recognition .prose{order:0}}
.hero .expertise-engine{align-self:center}
.expertise-engine .engine-stage{height:386px}
.engine-port-labels{top:302px;bottom:auto;gap:var(--space-2);letter-spacing:.08em}
.engine-port-labels>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:64px;border:1px solid var(--line);background:var(--paper);padding:var(--space-2) var(--space-1)}
.outcome-icon{display:block;position:relative;width:24px;height:22px;color:var(--gold-text);font-style:normal;flex-shrink:0}
.cash-icon{height:18px;width:26px;border:1px solid currentColor;line-height:16px;text-align:center;font-size:var(--text-xs);letter-spacing:0}
.cash-icon::before,.cash-icon::after{content:'';position:absolute;top:6px;width:3px;height:3px;background:currentColor;border-radius:50%}
.cash-icon::before{left:3px}.cash-icon::after{right:3px}
.person-icon::before{content:'';position:absolute;top:0;left:8px;width:8px;height:8px;border:1px solid currentColor;border-radius:50%}
.person-icon::after{content:'';position:absolute;bottom:0;left:4px;width:16px;height:10px;border:1px solid currentColor;border-radius:8px 8px 0 0}
.team-icon{width:32px}.team-icon b{position:absolute;bottom:0;width:12px;height:9px;border:1px solid currentColor;border-radius:6px 6px 0 0;background:var(--paper)}
.team-icon b::before{content:'';position:absolute;top:-9px;left:2px;width:6px;height:6px;border:1px solid currentColor;border-radius:50%;background:var(--paper)}
.team-icon b:first-child{left:0;bottom:2px}.team-icon b:nth-child(2){left:10px;z-index:1}.team-icon b:last-child{right:0;bottom:2px}
@media(max-width:760px){.engine-port-labels{left:var(--space-3);right:var(--space-3);gap:var(--space-2);letter-spacing:.05em}}
.engine-port-labels>span>span{white-space:nowrap;line-height:1.4}
@media(max-width:360px){.engine-port-labels{letter-spacing:.02em}}
.expertise-engine .engine-stage{height:422px}
.engine-sources>span{height:64px}
.engine-core-label{top:229px}
.engine-port-labels{top:338px}
@media(prefers-reduced-motion:reduce){.expertise-engine *, .repetition-diagram *, .workflow::before,.question-card::after,.review-check::after{animation:none!important}.architecture-layer,.client-screen,.review-screen{transition:none}.example-visual:hover .client-screen,.example-visual:hover .review-screen{transform:none}}
