.project-page{--accent:var(--project-accent);--muted:#acb0a6}
.page-language{font:11px var(--mono);border-left:1px solid var(--line);padding:15px 0 15px 25px}
.project-hero,.experience,.project-story,.next-project{max-width:1440px;margin:auto;padding:65px 5vw}
.project-index{display:flex;justify-content:space-between;gap:20px;font:10px/1.7 var(--mono);letter-spacing:1px;color:var(--muted)}
.project-hero h1{font-family:SignalDisplay,Arial,sans-serif;font-size:clamp(45px,7vw,108px);line-height:1.04;letter-spacing:-.065em;margin:50px 0 35px;font-weight:700}
.project-hero h1>span{display:block}.accent{color:var(--accent)}
.hero-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}
.hero-summary>p{font-size:21px;line-height:1.6;max-width:630px;margin:0;letter-spacing:-.3px}
.hero-summary>a{white-space:nowrap;border-bottom:1px solid var(--line);font-size:12px;padding:18px 0;color:var(--accent)}
.project-facts{margin-top:45px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;font:10px/1.8 var(--mono);color:var(--muted)}
.experience{padding-top:25px;scroll-margin-top:30px}
.experience-heading{margin-bottom:35px;display:grid;grid-template-columns:1fr 2fr;align-items:baseline;gap:40px}
.experience h2,.story-section h2{font-weight:400;font-size:clamp(27px,3.2vw,44px);letter-spacing:-1.4px;line-height:1.2;margin:0 0 15px;max-width:690px}
.workflow{background:#101310;border:1px solid var(--line);min-height:430px;position:relative;padding:25px 35px;overflow:hidden}
.workflow-top,.workflow-bottom{display:flex;justify-content:space-between;gap:20px;font:10px/1.8 var(--mono);color:var(--muted)}
.workflow-top{border-bottom:1px solid var(--line);padding-bottom:18px}.workflow-bottom{border-top:1px solid var(--line);padding-top:18px}
.workflow-diagram{min-height:310px;display:flex;align-items:center;justify-content:center;gap:55px;color:var(--accent)}
.link-device{display:flex;flex-direction:column;align-items:center;gap:25px;width:150px}
.link-device small{font:11px var(--mono);letter-spacing:3px}.link-device>span{font:150px/1 var(--mono)}
.device-frame{border:1px solid #768c66;background:#0a100c;position:relative;color:var(--accent)}
.phone-frame{width:115px;height:205px;border-radius:19px;display:grid;place-items:center}
.phone-frame>i{position:absolute;top:10px;left:50%;width:4px;height:4px;background:#768c66;border-radius:50%}
.laptop-frame{width:225px;height:157px;border-radius:7px 7px 0 0}
.laptop-frame:after{content:'';position:absolute;bottom:-9px;left:-12px;right:-12px;height:8px;border:1px solid #768c66;background:#192315}
.laptop-bar{display:flex;gap:5px;height:21px;padding:8px 10px;border-bottom:1px solid #33432c}.laptop-bar i{width:3px;height:3px;border-radius:50%;background:#718565}
.example-content{padding:18px 10px;text-align:center;font:12px/1.6 var(--mono)}.example-content>span{font-size:10px;color:#879b7d}.example-content p{font-size:10px;margin:13px 0}.example-content b{font-size:27px;font-weight:400}
.workflow[data-scene="1"] .example-content b{display:block;border:1px solid #718565;width:24px;height:32px;margin:auto;font-size:18px;line-height:26px}
.workflow[data-scene="2"] .example-content b{font-size:17px}.workflow[data-scene="2"] .laptop-frame .example-content{border-left:2px solid var(--accent);margin:18px;padding:3px 5px;display:flex;align-items:center;gap:10px}.workflow[data-scene="2"] .laptop-frame .example-content p{font-size:9px}
.connection{text-align:center;max-width:300px}.connection>span{font:25px var(--mono);letter-spacing:3px}.connection>p{font:11px/1.8 var(--mono);margin-top:25px}
.workflow[data-scene="1"] .connection>span{letter-spacing:7px}.workflow[data-scene="2"] .connection>span{display:inline-block;transform:rotate(180deg)}
.snapshot-tree{display:flex;flex-direction:column;gap:15px;font:13px var(--mono)}.snapshot-tree>span{padding:14px 22px;border:1px solid var(--line)}
.snapshot-line{font:40px var(--mono)}.snapshot-node{font-size:100px;display:flex;flex-direction:column;align-items:center}.snapshot-node small{font:11px var(--mono);margin-top:15px}
.timeline{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line)}.timeline i{display:block;width:12px;height:12px;background:#53523f;border-radius:50%;margin-top:-6px}.timeline i:first-child{background:var(--accent)}
.workflow[data-scene="1"] .snapshot-tree>span:nth-child(2){border-color:var(--accent);background:#e8b96e0d}.workflow[data-scene="1"] .timeline i:nth-child(2){background:var(--accent)}
.workflow[data-scene="2"] .snapshot-line{transform:rotate(180deg)}.workflow[data-scene="2"] .snapshot-node{color:var(--fg)}
.terminal-diagram{gap:0;align-items:stretch;padding:28px 0;min-height:330px}.deck-sidebar{width:140px;border-right:1px solid var(--line);padding:15px 20px 0 0;font:11px var(--mono);display:flex;flex-direction:column;gap:28px}.deck-sidebar>span{font-size:10px;color:var(--muted)}
.deck-panels{display:flex;flex:1;gap:12px;padding-left:22px;min-width:0}.deck-panels>div{border:1px solid #43463d;padding:20px;flex:1;min-width:0}.deck-panels small{font:10px var(--mono);color:var(--muted)}.deck-panels p,.deck-panels>div>span{font:12px var(--mono);margin:28px 0}.deck-panels>div:last-child{display:none}
.workflow[data-scene="1"] .deck-panels>div:nth-child(2){display:none}.workflow[data-scene="2"] .deck-panels>div:last-child{display:block}.workflow[data-scene="2"] .deck-panels{flex-wrap:wrap}.workflow[data-scene="2"] .deck-panels>div{flex:1 1 25%}
.scene-controls{display:flex;margin-top:20px;gap:10px;flex-wrap:wrap}.scene-controls button{font-size:13px;padding:15px 22px;border:1px solid var(--line);text-align:left;min-height:48px}.scene-controls button>span{font:10px var(--mono);margin-right:14px;color:var(--muted)}.scene-controls button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
.scene-explanation{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:28px;min-height:100px}.scene-explanation h3{font-weight:400;font-size:24px;line-height:1.4;letter-spacing:-.5px;margin:0}.scene-explanation p,.visual-caption{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.visual-caption{font-size:11px;margin-top:20px;max-width:740px}
.actual-capture{margin:0}.actual-capture img{display:block;width:100%;height:auto;border:1px solid var(--line)}.actual-capture figcaption{font:11px/1.8 var(--mono);padding:15px 0;color:var(--muted)}
.project-story{padding-top:0}.story-section{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:48px 0;border-top:1px solid var(--line)}.story-section>.eyebrow{margin-top:8px}.story-section p:not(.eyebrow){font-size:16px;line-height:1.9;max-width:700px;color:var(--muted)}.story-section .technical-lead{color:var(--fg)!important;font-size:19px!important}
.function-list{padding:0;list-style:none;margin:0}.function-list li{display:flex;gap:25px;padding:20px 0;border-bottom:1px solid var(--line);font-size:19px;line-height:1.5}.function-list li:first-child{padding-top:0}.function-list li>span{font:10px/2 var(--mono);color:var(--accent);padding-top:3px}.role-note{font-size:12px!important}
.project-scope{border-top:1px solid var(--line);padding-top:25px;color:var(--muted);font-size:13px;line-height:1.8}.project-scope summary{cursor:pointer;min-height:40px}.project-scope p{max-width:780px}
.next-project{border-top:1px solid var(--line);padding-top:40px;padding-bottom:60px}.next-project>a:not(.back-projects){display:flex;justify-content:space-between;font-family:SignalDisplay,Arial,sans-serif;font-size:clamp(40px,6vw,85px);letter-spacing:-3px;margin:15px 0 35px}.next-project>a>span{color:var(--accent)}.back-projects{color:var(--muted);font-size:12px;padding:15px 0;display:inline-block}
.project-page .context-demo{border:0;margin:0;padding:30px;background:#0e1217}.context-demo h3{font-size:24px;font-weight:400}.demo-note{font-size:14px;line-height:1.8;color:var(--muted)}.demo-version{font:11px var(--mono);color:var(--muted)}.demo-file{font:12px var(--mono);color:var(--accent)}.project-page .demo-result pre{font-size:12px;max-height:400px}.context-demo .demo-choices button{font-size:13px;padding:15px}
@media(max-width:800px){.project-hero,.experience,.project-story,.next-project{padding-left:6vw;padding-right:6vw}.hero-summary{display:block}.hero-summary>a{display:inline-block;margin-top:18px}.experience-heading{display:block}.experience-heading .eyebrow{margin-bottom:20px}.workflow{padding:20px;min-height:350px}.workflow-diagram{gap:20px;min-height:250px}.link-device{width:90px}.link-device>span{font-size:110px}.connection>span{font-size:17px;letter-spacing:0}.connection>p{font-size:10px}.snapshot-tree>span{padding:12px;font-size:11px}.snapshot-node{font-size:75px}.timeline{gap:17px}.deck-sidebar{width:100px}.deck-panels>div{padding:15px}.scene-explanation{gap:25px}.story-section{grid-template-columns:1fr 2fr}}
@media(max-width:550px){.project-hero{padding-top:30px;padding-bottom:40px}.project-index{font-size:9px;letter-spacing:0;flex-wrap:wrap;gap:8px}.project-hero h1{font-size:clamp(30px,8.7vw,48px);letter-spacing:-.06em;margin:30px 0 25px}.hero-summary>p{font-size:17px;line-height:1.7}.project-facts{font-size:9px;display:block;margin-top:25px}.project-facts>span{display:block;margin:8px 0}.experience{padding-top:10px;padding-bottom:40px}.experience h2,.story-section h2{font-size:29px;letter-spacing:-.8px}.workflow{padding:15px;min-height:280px}.workflow-top,.workflow-bottom{font-size:8px;gap:12px}.workflow-top>span:last-child{text-align:right}.workflow-bottom>span:last-child{max-width:130px;text-align:right}.workflow-diagram{min-height:210px;gap:12px}.link-device{width:60px;gap:16px}.link-device small{font-size:8px;letter-spacing:1px}.link-device>span{font-size:76px}.connection{max-width:120px}.connection>span{font-size:12px}.connection>p{font-size:8px;line-height:1.9}.workflow[data-scene="1"] .connection>span{letter-spacing:0}.snapshot-tree{gap:8px}.snapshot-tree>span{padding:10px;font-size:9px}.snapshot-node{font-size:60px}.snapshot-node small{font-size:8px}.snapshot-line{font-size:23px}.timeline{display:none}.scene-controls{gap:7px}.scene-controls button{padding:12px 10px;font-size:11px;flex:1}.scene-controls button>span{display:block;margin:0 0 5px}.scene-explanation{display:block;min-height:155px}.scene-explanation h3{font-size:23px;margin-bottom:12px}.scene-explanation p{font-size:14px}.story-section{display:block;padding:30px 0}.story-section>.eyebrow{margin:0 0 24px}.story-section p:not(.eyebrow){font-size:15px}.function-list li{font-size:17px;gap:18px}.deck-sidebar{font-size:9px;width:68px;padding-right:10px}.deck-sidebar>span{font-size:8px;max-width:100%;overflow-wrap:anywhere}.deck-panels{gap:6px;padding-left:10px}.deck-panels>div{padding:10px 7px}.deck-panels small{font-size:7px}.deck-panels p,.deck-panels>div>span{font-size:9px;overflow-wrap:anywhere}.workflow[data-scene="2"] .deck-panels>div{flex-basis:40%}.terminal-diagram{padding:20px 0}.project-page .context-demo{padding:16px}.project-page .demo-result pre{font-size:10px}.next-project>a:not(.back-projects){font-size:43px;letter-spacing:-1.8px}}
@media(prefers-reduced-motion:reduce){.project-page{scroll-behavior:auto}}
@media(max-width:800px){.phone-frame{width:95px;height:170px}.laptop-frame{width:155px;height:125px}.example-content{padding:10px}.computer-device{width:155px}}
@media(max-width:550px){.phone-frame{width:58px;height:108px;border-radius:10px}.phone-frame>i{top:6px;width:3px;height:3px}.laptop-frame{width:92px;height:82px}.laptop-bar{height:14px;padding:5px 6px;gap:4px}.laptop-bar i{width:2px;height:2px}.laptop-frame:after{left:-5px;right:-5px;bottom:-5px;height:5px}.computer-device{width:92px}.example-content{padding:8px 3px}.example-content>span{font-size:6px}.example-content p{font-size:6px;margin:7px 0}.example-content b{font-size:17px}.workflow[data-scene="1"] .example-content b{width:13px;height:19px;font-size:12px;line-height:15px}.workflow[data-scene="2"] .laptop-frame .example-content{margin:8px 5px;padding:2px;gap:4px}.workflow[data-scene="2"] .laptop-frame .example-content p{font-size:6px}.workflow[data-scene="2"] .example-content b{font-size:10px}.nothing-diagram{gap:15px}.connection{max-width:95px}}
.perigee-live{margin-top:35px;border-top:1px solid var(--line);padding-top:30px}.perigee-live h3{font-size:30px;font-weight:400;letter-spacing:-1px;margin:0 0 15px}.perigee-live p{font-size:14px;line-height:1.8;color:var(--muted);max-width:630px}.perigee-live-intro>button,.perigee-live-intro>a{display:inline-flex;align-items:center;min-height:46px;padding:13px 18px;font-size:12px;margin:10px 15px 10px 0;border:1px solid var(--line)}.perigee-live-intro>button{color:var(--accent);border-color:var(--accent)}.perigee-embed{margin-top:25px;scroll-margin-top:20px;border:1px solid var(--line)}.perigee-embed[hidden]{display:none}.perigee-embed-bar{padding:10px 15px;display:flex;justify-content:space-between;gap:15px;align-items:center;font:9px var(--mono);background:#16131d}.perigee-embed-bar>button{min-height:40px;font:11px var(--mono);padding:8px}.perigee-embed iframe{display:block;width:100%;height:750px;border:0;background:#08060e}@media(max-width:550px){.perigee-embed iframe{height:650px}.perigee-embed-bar{font-size:7px}.perigee-embed-bar>button{font-size:9px}.perigee-live-intro>button,.perigee-live-intro>a{font-size:11px}}
.project-review{margin-top:24px;border-left:2px solid var(--project-accent);padding:2px 0 2px 20px;max-width:820px}.project-review>.project-state{font:12px/1.8 var(--mono);color:var(--fg);margin:0 0 6px}.project-review>p:not(.project-state){font-size:14px;line-height:1.8;color:var(--muted);margin:0}.proof-actions{display:flex;flex-wrap:wrap;gap:5px 25px;margin-top:8px}.proof-actions>a{font-size:12px;line-height:1.8;min-height:44px;display:inline-flex;align-items:center;color:var(--accent);text-decoration:underline;text-underline-offset:5px}.recorded-proof{scroll-margin-top:25px;margin:0 0 28px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-scope{scroll-margin-top:30px}.project-page .visual-caption{font-size:12px;line-height:1.8}@media(max-width:550px){.project-review{padding-left:14px;margin-top:20px}.project-review>.project-state{font-size:12px}.project-review>p:not(.project-state){font-size:14px}.proof-actions>a{font-size:13px}}
.project-decision{margin:0}.project-decision>dt{font:11px/1.8 var(--mono);text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin:0 0 10px}.project-decision>dd{margin:0 0 30px;font-size:17px;line-height:1.85;color:var(--fg);max-width:720px}.prototype-language{font-size:12px!important;color:var(--muted)}@media(max-width:550px){.project-decision>dd{font-size:15px;line-height:1.85}}
