@font-face{font-family:Switzer;src:url('/assets/portfolder/switzer-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Switzer;src:url('/assets/portfolder/switzer-600.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:'JetBrains Mono';src:url('/assets/portfolder/jetbrains-mono-500.woff2') format('woff2');font-weight:400 700;font-display:swap}@font-face{font-family:'Pinyon Script';src:url('/assets/portfolder/pinyon-script-400.woff2') format('woff2');font-weight:400;font-display:swap}
:root{font-family:Switzer,Arial,sans-serif;color:#1c1c1c;background:#000;font-size:14px;--mono:'JetBrains Mono',monospace;--paper:#d5dde6;--muted:#53565b}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none;padding:0}img{max-width:100%;display:block}h1,h2,h3,p,figure,dl,dd{margin:0}h1{font-weight:600;letter-spacing:-.06em}h2,h3{font-weight:400}mark{background:#333b3c;color:#f1f3f1;padding:1px 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #343d4a;outline-offset:4px}.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:10px;z-index:100}.skip-link:focus{top:10px}.folder-stage{height:100dvh;display:flex;justify-content:center;align-items:center;padding:20px 0}.folder-paper{position:relative;isolation:isolate;width:52vw;height:calc(100dvh - 40px);background:var(--paper);box-shadow:1px 0 0 #ffffff44}.page-about{--paper:#e6ebed}.page-projects,.page-resume{--paper:#d5dde6}.page-youtube{--paper:#c8cbbc}.page-contact{--paper:#b6a9b5}.folder-paper:before{position:absolute;inset:0;content:'';background:url('/assets/portfolder/paper.png') center/100% 100%;opacity:.14;pointer-events:none;z-index:-1}.paper-scroll{position:relative;z-index:2;overflow:auto;overscroll-behavior:contain;height:100%;scroll-behavior:smooth;scrollbar-width:none;padding:10px 10px 20px}.paper-scroll::-webkit-scrollbar{display:none}.folder-tabs{position:absolute;left:100%;top:4px;z-index:5}.folder-tab{position:absolute;left:0;top:0;width:30px;height:120px;display:flex;align-items:center;justify-content:center;font:12px/1.3 var(--mono);text-transform:uppercase;transition:width .25s ease}.folder-tab.tab-1{top:100px}.folder-tab.tab-2{top:200px}.folder-tab.tab-3{top:300px}.folder-tab.active,.folder-tab:hover{width:38px}.tab-shape{position:absolute;inset:0;width:100%;height:100%;max-width:none}.folder-tab span{position:relative;z-index:1;writing-mode:vertical-rl;text-align:center}.mobile-tab{display:none}.paper-dots{position:absolute;inset:9.5px;z-index:0;pointer-events:none}.paper-dots i{position:absolute;left:calc(var(--col)*100%/6);top:calc(var(--row)*100%/6);width:3px;height:3px;transform:translate(-50%,-50%);background:#5f5f5f;border-radius:50%}.paper-emboss{position:absolute;bottom:12px;left:14px;right:14px;z-index:0;height:175px;pointer-events:none;font:229px/.6 'Pinyon Script',cursive;text-align:center;letter-spacing:0;white-space:nowrap;overflow:visible;display:flex;align-items:center;justify-content:center}.paper-emboss span{position:absolute;color:#000;font-weight:400}.paper-emboss span:first-child{filter:url('#sh-Rrb9lalp');mix-blend-mode:multiply;opacity:.2}.paper-emboss span:last-child{filter:url('#hl-Rrb9lalp');mix-blend-mode:screen;opacity:.7}.folder-heading{height:64px;position:relative;z-index:2}.folder-heading h1{font-size:64px;line-height:1}.view-switch{display:flex;justify-content:center;gap:10px;margin:6px 0 24px;font:12px/1.3 var(--mono);text-transform:uppercase}.view-switch button{text-transform:uppercase;font:inherit}.view-switch button.active{background:#333b3c;color:#f1f3f1;padding:0 1px}.work-body{padding:0 4px}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:400px;gap:40px 8px}.project-card{display:block;min-width:0;width:202px;max-width:100%;align-self:start;transition:transform .3s ease}.project-card:nth-child(even){margin-top:140px}.project-number{display:block;font:12px/1.3 var(--mono);margin-bottom:5px}.project-image{width:100%;aspect-ratio:4/3;overflow:hidden;background:#ebedef;position:relative}.project-image img{height:100%;width:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-image img{transform:scale(1.04)}.project-meta{padding-top:7px;font:12px/1.3 var(--mono);text-transform:uppercase}.project-meta h3{font:inherit;margin-bottom:5px}.project-meta p{font:inherit;max-width:100%;font-size:10px;line-height:1.4}.projects-grid.list-view{display:block;padding-bottom:30px}.list-view .project-card{display:grid;grid-template-columns:16% 1fr;width:100%;max-width:none;margin:0;border-bottom:1px solid #5f5f5f88;padding:8px 0}.list-view .project-image{display:none}.list-view .project-number{margin:0}.list-view .project-meta{padding:0;display:flex;gap:12px;justify-content:space-between;align-items:baseline}.list-view .project-meta mark{background:none;color:inherit;padding:0}.list-view .project-meta h3{margin:0;white-space:nowrap}.list-view .project-meta p{font-size:10px;text-align:right;max-width:55%}.list-view .project-card:hover{background:#ffffff30}.mono-link{font:12px/1.3 var(--mono);text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}.about-page{position:relative;min-height:100%;height:100%}.page-about .paper-scroll{overflow:visible}.about-heading{position:absolute;left:33.62%;top:4px;width:65.76%}.about-heading h1{font-size:80px;line-height:1}.about-heading>p{font:14px/1.2 Switzer,sans-serif;max-width:75%;margin-top:28px;text-align:justify}.about-heading>.mono-link{display:inline-block;margin-top:20px}.stamp-portrait{position:absolute;left:33.62%;top:34.5%;width:33%;height:33%;filter:drop-shadow(12px 8px 12px #0002)}.stamp-portrait img{height:100%;width:100%;object-fit:cover;object-position:center 28%;mask:url('/assets/portfolder/stamp-mask.svg') center/100% 100% no-repeat;-webkit-mask:url('/assets/portfolder/stamp-mask.svg') center/100% 100% no-repeat;filter:grayscale(1)}.about-disciplines{position:absolute;bottom:18px;left:0;right:0;display:grid;gap:20px;font:12px/1.3 var(--mono);text-transform:uppercase}.about-disciplines>div{display:grid;grid-template-columns:106px 1fr}.about-disciplines>div:nth-child(2){margin-left:16.5%}.about-disciplines>div:nth-child(3){margin-left:32.4%}.about-disciplines h2{font:inherit}.about-disciplines mark{background:#aabdce70;color:inherit;padding:0 4px}.about-disciplines>div:first-child mark{background:#dce2e480}.about-disciplines>div:nth-child(2) mark{background:#bac0a66b}.about-year{position:absolute;right:0;top:0}.about-location{position:absolute;bottom:-9px;left:0;right:0;display:flex;justify-content:space-between;font:11px/1.4 var(--mono);text-transform:uppercase;gap:10px;white-space:nowrap}.about-note{position:absolute;left:-6px;top:-14px;width:110px;z-index:12;transform:rotate(2deg);transition:transform .25s ease;background:#f0efedee;box-shadow:1px 1px 0 #0001;background-image:url('/assets/portfolder/paper.png');background-size:100% 100%}.about-note summary{height:60px;list-style:none;position:relative;font:12px/1.3 var(--mono);text-transform:uppercase;padding:27px 10px 15px 40px;cursor:pointer}.about-note summary::-webkit-details-marker{display:none}.about-note summary img{position:absolute;top:-5px;left:5px;width:32px;height:60px}.about-note:hover{transform:rotate(0)}.about-note[open]{transform:none;width:calc(100% - 40px);height:calc(100% - 14px);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.note-content{padding:18px 40px 35px;max-height:calc(100% - 60px);overflow:auto}.note-content>p{font-size:24px;line-height:1.2;max-width:450px}.note-columns{display:grid;gap:35px;margin:120px 0 0 50%;font:12px/1.3 var(--mono);text-transform:uppercase}.note-columns h2{font:inherit;margin-bottom:20px}.note-columns a{display:block;margin-top:10px;text-decoration:underline;text-underline-offset:3px}.youtube-page{padding:40px 4px}.youtube-intro{font-size:20px;line-height:1.2;max-width:430px;margin-bottom:50px}.video-card{display:block;width:68%;margin-left:16.5%}.video-card>img{aspect-ratio:16/10;width:100%;object-fit:cover}.video-card h2{font:12px/1.3 var(--mono);text-transform:uppercase;margin:10px 0 12px}.contact-page{padding:50px 4px 0}.contact-page>h2{font-size:24px;line-height:1.2;max-width:440px;margin-bottom:24px}.contact-body{margin-left:32.9%}.contact-links{font:12px/1.3 var(--mono);text-transform:uppercase;margin-bottom:36px}.contact-links>div{display:flex;border-top:1px solid #5f5f5f88;align-items:baseline}.contact-links h3{font:inherit;width:25%;flex-shrink:0;padding:8px 0}.contact-links a{padding:8px;flex:1;min-width:0}.contact-links a+a{border-left:1px solid #5f5f5f88}.contact-email{border-bottom:1px solid #5f5f5f88;flex-wrap:wrap}.contact-email>a{font-size:10px;overflow-wrap:anywhere}.contact-email button{font:inherit;padding:8px 0;font-size:10px}.copy-state:not(:empty){display:block;font-size:10px}.contact-body form{position:relative}.contact-body label{display:grid;grid-template-columns:25% minmax(0,1fr);border-top:1px solid #5f5f5f88;align-items:baseline;min-height:35px}.contact-body label>span{font:12px/1.3 var(--mono);text-transform:uppercase;padding-top:10px}.contact-body input,.contact-body textarea,.contact-body select{width:100%;min-width:0;border:0;border-radius:0;background:transparent;padding:9px 0;font:14px/1.2 Switzer,sans-serif;outline-offset:-1px}.contact-body input::placeholder,.contact-body textarea::placeholder{color:#5f5f5f99}.contact-body textarea{resize:vertical;min-height:80px}.message-row{border-bottom:1px solid #5f5f5f88}.contact-body select option{background:#e6e1e6}.submit-button{display:block;background:#333b3c;color:#f1f3f1;padding:4px;margin:12px auto;font:12px/1.3 var(--mono);text-transform:uppercase}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0}.form-status,#form-status{font-size:12px;line-height:1.5}.folder-case-top{padding:10px 4px 0}.folder-case-top>.mono-link{display:block;text-align:right}.folder-case-top h1{font-size:40px;line-height:1;margin:20px 0 24px}.folder-case-body{padding:0 4px}.folder-case-intro{display:grid;grid-template-columns:1fr 2fr;gap:0;margin-bottom:45px}.folder-case-intro>h2{font:12px/1.3 var(--mono);text-transform:uppercase}.case-lead{font-size:20px;line-height:1.2;max-width:75%;text-align:justify}.case-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px 0;margin-top:80px;font:12px/1.3 var(--mono);text-transform:uppercase}.case-facts dt{border-bottom:1px solid #5f5f5f88;margin-bottom:3px}.case-facts dd{padding-right:10px;font-size:11px;overflow-wrap:anywhere}.case-hero{margin:0 0 28px}.case-hero img{width:100%;height:auto}.case-hero.screen{padding:16px;background:#e9edf280}.case-section{padding:28px 0;display:grid;grid-template-columns:1fr 2fr;gap:18px 0;scroll-margin-top:20px}.case-kicker{grid-column:1;font:12px/1.3 var(--mono);text-transform:uppercase}.case-section>h2{grid-column:2;font-size:24px;line-height:1.2;letter-spacing:-.02em}.case-section>p:not(.case-kicker),.case-section>blockquote,.case-section>.case-links{grid-column:2;font-size:14px;line-height:1.4}.case-section a{text-decoration:underline;text-underline-offset:3px}.case-section>.design-decision,.case-section>.process-grid,.case-section>.extra-grid,.case-section>.compare,.case-section>.case-prototype,.case-section>.case-extras{grid-column:1/-1}.case-links{display:flex;flex-wrap:wrap;gap:12px;font:12px/1.4 var(--mono);text-transform:uppercase}.icon{display:inline-block;width:12px;height:12px;vertical-align:middle}.process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:10px}.process-card{padding-top:12px;border-top:1px solid #5f5f5f88}.process-card .step{font:12px/1.3 var(--mono);margin-bottom:10px}.process-card h3{font-size:18px;margin-bottom:12px}.process-card p{font-size:14px;line-height:1.4}.design-decision{margin-top:20px}.design-decision h3{font-size:20px;line-height:1.2;margin-bottom:15px;max-width:65%;margin-left:33.333%}.design-decision>p{font-size:14px;line-height:1.4;margin-left:33.333%;margin-bottom:24px}.case-screen{margin:0}.case-screen img{width:100%;height:auto}.case-screen.padded{padding:15px;background:#e9edf280}.case-screen.phone{padding:30px;display:flex;justify-content:center;background:#e9edf280}.case-screen.phone img{width:auto;max-height:600px;max-width:100%}.case-caption{font:11px/1.4 var(--mono);text-transform:uppercase;margin-top:10px}.case-principle{margin:0;font-size:20px!important;line-height:1.3!important;border-left:1px solid #5f5f5f;padding-left:15px}.extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px;margin-top:12px}.extra-grid h3{font-size:18px;margin-bottom:10px}.extra-grid img{width:100%}.case-extras{margin:20px 0}.case-extras summary{font:12px/1.4 var(--mono);cursor:pointer;text-transform:uppercase}.case-next{border-top:1px solid #5f5f5f88;padding:30px 0}.case-next>h3{font:12px/1.3 var(--mono);text-transform:uppercase;margin-bottom:25px}.next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.next-grid .project-card{margin:0!important;width:auto}.next-grid .project-meta p{font-size:9px}.compare{margin-top:30px}.compare h3{font-size:20px;line-height:1.2;margin-bottom:15px}.compare>p{font-size:14px;line-height:1.4;margin-bottom:24px}.compare-stage{position:relative;aspect-ratio:4/3;overflow:hidden;background:#eee}.compare-stage>img,.compare-overlay{position:absolute;inset:0;height:100%;width:100%;object-fit:contain}.compare-overlay{clip-path:inset(0 calc(100% - var(--compare)) 0 0)}.compare-overlay>img{width:100%;height:100%;object-fit:contain}.compare-line{position:absolute;left:var(--compare);top:0;bottom:0;width:2px;background:white;pointer-events:none}.compare-line span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:11px/1.3 var(--mono);text-transform:uppercase;background:#333b3c;color:white;padding:8px}.compare-stage input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}.compare-stage:focus-within{outline:2px solid #333b3c;outline-offset:4px}.compare-labels{display:flex;justify-content:space-between;font:10px/1.4 var(--mono);text-transform:uppercase;margin-top:10px}.case-prototype{margin:30px 0}.case-prototype h3{font-size:20px;margin-bottom:12px}.case-prototype p{margin-bottom:15px}.case-prototype iframe{border:0;width:100%;height:800px;display:block;background:#eee}.case-prototype>a{display:block;margin-top:15px;font:12px/1.3 var(--mono);text-transform:uppercase}.resume-page{padding:50px 4px}.resume-page section{margin-bottom:40px}.resume-page h2{font:12px/1.3 var(--mono);text-transform:uppercase;margin-bottom:24px}.resume-page article{padding:16px 0;border-bottom:1px solid #5f5f5f88}.resume-page h3{font-size:20px;margin-bottom:12px}.resume-page p{line-height:1.4;margin-bottom:12px}.grain-layer{position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.08;overflow:hidden;contain:strict}.grain-layer canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.source-filter-art{position:absolute;pointer-events:none;width:0;height:0;overflow:hidden}
@media(min-width:1600px){.folder-paper{width:52vw}.project-card{width:calc(100% - 110px)}.project-image{aspect-ratio:4/3}.projects-grid{grid-auto-rows:minmax(400px,auto)}}
@media(max-width:810px){.folder-stage{padding:34px 0 10px;align-items:flex-start}.folder-paper{width:calc(100vw - 20px);height:calc(100dvh - 44px)}.folder-tabs{left:0;right:0;top:-24px;height:24px}.folder-tab,.folder-tab.active,.folder-tab:hover{left:auto;top:0!important;right:calc(var(--tab-index,0)*(100% - 30px)/4);height:24px;width:calc((100% - 30px)/4 + 20px)}.folder-tab.tab-0{--tab-index:0;z-index:4}.folder-tab.tab-1{--tab-index:1;z-index:3}.folder-tab.tab-2{--tab-index:2;z-index:2}.folder-tab.tab-3{--tab-index:3;z-index:1}.folder-tab.active{z-index:6}.folder-tab span{writing-mode:horizontal-tb;line-height:1;font-size:12px;padding-top:1px}.desktop-tab{display:none}.mobile-tab{display:block}.paper-scroll{padding:10px 10px 20px}.paper-dots i:nth-child(7n+6),.paper-dots i:nth-child(7n+7),.paper-dots i:nth-child(n+43){display:none}.paper-dots i{left:calc(var(--col)*100%/4);top:calc(var(--row)*100%/6)}.paper-emboss{font-size:140px;height:140px;bottom:16px}.folder-heading{height:100px}.folder-heading h1{font-size:56px;line-height:1}.view-switch{margin:0 0 24px;height:0;visibility:hidden}.work-body{padding:0 4px}.projects-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:auto;gap:40px}.project-card{width:100%;max-width:none}.project-card:nth-child(even){margin-top:0}.project-image{aspect-ratio:4/3}.project-meta p{font-size:11px}.project-number{margin-bottom:6px}.list-view .project-meta{display:block}.list-view .project-meta p{max-width:none;text-align:left;margin-top:5px}.about-page{min-height:100%}.about-heading{left:34%;top:18px;width:66%}.about-heading h1{font-size:56px;line-height:1}.about-heading>p{max-width:100%;margin-top:76px;text-align:justify;font-size:14px;line-height:1.2}.about-heading>.mono-link{margin-top:20px}.stamp-portrait{left:25%;top:40%;width:51%;height:32%}.about-disciplines{bottom:64px;gap:24px}.about-disciplines>div{grid-template-columns:60px 1fr}.about-disciplines>div:nth-child(2){margin-left:16%}.about-disciplines>div:nth-child(3){margin-left:32%}.about-year{right:0}.about-disciplines mark{font-size:11px}.about-location{bottom:-9px;font-size:10px}.about-location time{font-size:9px}.about-note{top:-7px;left:-15px;transform:none}.about-note summary{height:45px;padding-top:20px}.about-note summary img{height:49px;width:25px;left:6px;top:-4px}.about-note[open]{left:-5px;top:-7px;width:calc(100% + 10px);height:calc(100% + 5px)}.note-content{padding:18px 20px;max-height:calc(100% - 45px)}.note-content>p{font-size:22px}.note-columns{margin-top:80px;margin-left:20%;gap:32px}.contact-page{padding:35px 0 0}.contact-page>h2{font-size:24px;line-height:1.25;margin-bottom:40px}.contact-body{margin-left:0}.contact-links{font-size:11px}.contact-email>a{font-size:10px}.contact-body label{grid-template-columns:26% minmax(0,1fr)}.contact-body textarea{min-height:100px}.youtube-page{padding:35px 4px}.youtube-intro{font-size:22px;margin-bottom:45px}.video-card{width:100%;margin:0}.video-card>img{aspect-ratio:4/3}.video-card h2{font-size:12px}.folder-case-top{padding-top:10px}.folder-case-top h1{font-size:40px;line-height:1;margin-top:22px;margin-bottom:48px}.folder-case-intro{grid-template-columns:26% 74%;margin-bottom:45px}.case-lead{max-width:100%;font-size:20px;line-height:1.2}.case-facts{margin-top:80px;font-size:11px;gap:24px 0}.case-facts dd{font-size:10px}.case-section{grid-template-columns:26% 74%;padding-top:28px;padding-bottom:28px;gap:18px 0}.case-section>h2{font-size:22px;line-height:1.2}.case-section>p:not(.case-kicker){font-size:14px;line-height:1.4}.case-kicker{font-size:11px;overflow-wrap:anywhere;padding-right:10px}.case-section>blockquote{grid-column:1/-1}.process-grid{grid-template-columns:1fr}.design-decision h3,.design-decision>p{margin-left:26%;max-width:74%}.case-screen.phone{padding:20px}.case-screen.padded,.case-hero.screen{padding:10px}.extra-grid{grid-template-columns:1fr}.extra-grid h3{font-size:20px}.next-grid{grid-template-columns:1fr}.next-grid .project-card{width:100%}.next-grid .project-meta p{font-size:11px}.case-prototype iframe{height:750px}.resume-page{padding:35px 4px}.page-contact .paper-emboss{font-size:135px}}
@media(max-height:700px) and (min-width:811px){.about-heading h1{font-size:64px}.stamp-portrait{top:35%;height:30%}.about-disciplines{gap:12px}.note-columns{margin-top:45px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body{overflow:visible;background:white}.folder-stage{display:block;height:auto;padding:0}.folder-paper{width:100%;height:auto;box-shadow:none;background:white}.folder-tabs,.paper-dots,.paper-emboss,.grain-layer,[data-print],.skip-link{display:none!important}.paper-scroll{height:auto;overflow:visible}.resume-page{padding:20px}}
.hand-note{position:absolute;z-index:3;pointer-events:none}.portrait-note{left:52%;top:60%;width:198px;height:121.38px}.work-note{left:calc(100% + 60px);top:110px;width:100px;height:61.3px}@media(max-width:810px){.portrait-note{left:49%;top:67%;width:178px;height:109px}.work-note{display:none}}

.project-image img{object-fit:contain}.project-card[data-project="kindle"] .project-image{background:#f7f1eb}.project-card[data-project="raura"] .project-image{background:#15170e}.project-card[data-project="lokma"] .project-image{background:#edf0e9}.project-card[data-project="solari"] .project-image{background:#f3f0e9}.view-switch{margin-bottom:30px}@media(max-width:810px){.view-switch{margin-bottom:34px}}
.paper-emboss{clip-path:inset(-100px 0 -100px 0)}.paper-scroll{animation:paper-arrive .35s cubic-bezier(.2,.7,.2,1)}@keyframes paper-arrive{from{opacity:.8;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:811px) and (max-width:1599px){.project-image{aspect-ratio:auto;height:248px}.next-grid .project-image{aspect-ratio:4/3;height:auto}}
.page-projects .paper-scroll,.is-case .paper-scroll{display:flex;flex-direction:column;overflow:hidden}.folder-heading,.view-switch,.folder-case-top{flex-shrink:0}.work-body,.folder-case-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;padding-bottom:25px}.work-body::-webkit-scrollbar,.folder-case-body::-webkit-scrollbar{display:none}.folder-case-top h1{margin-bottom:30px}@media(max-width:810px){.folder-case-top h1{margin-bottom:48px}}
.project-card[data-project="raura"] .project-image img{object-position:top}
/* Readymag Editorial Stack motion: soft fade, slight rock and 3% breathing. */
.paper-scroll{animation:editorial-page-in .65s cubic-bezier(.22,.65,.3,1) both;transform-origin:35% 75%}
@keyframes editorial-page-in{from{opacity:0;transform:translate3d(22px,6px,0) rotate(.4deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
.editorial-ready .editorial-reveal{opacity:0;translate:var(--entry-x,16px) 12px;rotate:var(--entry-angle,1.5deg);scale:.97;transition:opacity .65s ease-in-out var(--entry-delay,0ms),translate .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms),rotate .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms),scale .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms)}
.editorial-ready .editorial-reveal.editorial-seen{opacity:1;translate:0 0;rotate:0deg;scale:1}
.editorial-ready .project-card{translate:0 var(--scroll-drift,0px);transition:translate .45s cubic-bezier(.2,.7,.2,1)}
.editorial-ready .project-image,.editorial-ready .video-card>img{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotate(var(--tilt-r,0deg)) translateY(var(--lift,0px));transform-origin:50% 75%;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s ease,opacity .65s ease-in-out var(--entry-delay,0ms),translate .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms),rotate .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms),scale .9s cubic-bezier(.22,.65,.3,1) var(--entry-delay,0ms)}
@media(hover:hover) and (pointer:fine){.editorial-ready .project-card:hover .project-image,.editorial-ready .video-card:hover>img{--lift:-6px;box-shadow:5px 12px 18px #0002}.editorial-ready .project-card:hover .project-image img{animation:editorial-breathe 1.2s ease-in-out infinite alternate}}
.editorial-ready .project-card:focus-visible .project-image,.editorial-ready .video-card:focus-visible>img{--lift:-6px;--tilt-r:-2deg;box-shadow:5px 12px 18px #0002}
.editorial-ready .stamp-portrait{animation:editorial-breathe 1.2s ease-in-out infinite alternate;transform-origin:50% 65%}
.editorial-ready .portrait-note{animation:editorial-rock 1.1s ease-in-out infinite alternate;transform-origin:35% 65%}
.editorial-ready .work-note{animation:editorial-float .9s ease-in-out infinite alternate}
.editorial-ready .about-note[open]{animation:editorial-unfold .55s cubic-bezier(.22,.65,.3,1) both;transform-origin:0 0}
@keyframes editorial-breathe{from{scale:1}to{scale:.97}}
@keyframes editorial-rock{from{rotate:0deg}to{rotate:-2deg}}
@keyframes editorial-float{from{translate:0 0}to{translate:-1px -8px}}
@keyframes editorial-unfold{from{opacity:.25;transform:translateY(5px) rotate(2deg) scale(.985)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@media(max-width:810px){.paper-scroll{animation-duration:.5s}.editorial-ready .editorial-reveal{--entry-x:0px!important;--entry-angle:0deg!important;translate:0 10px}.editorial-ready .editorial-reveal.editorial-seen{translate:0 0}.editorial-ready .project-card{translate:0 0}.editorial-ready .stamp-portrait{animation-duration:1.8s}.editorial-ready .portrait-note{animation-duration:1.65s}}
@media(prefers-reduced-motion:reduce){.paper-scroll,.editorial-ready *{animation:none!important;transition:none!important}.editorial-reveal{opacity:1!important;translate:0 0!important;rotate:0deg!important;scale:1!important}.project-image,.video-card>img,.project-card{transform:none!important;translate:0 0!important}.stamp-portrait,.hand-note{scale:1!important;rotate:0deg!important;translate:0 0!important}}
.editorial-ready .list-view>.project-card{translate:0 0}
/* Product screens use opaque, unfiltered presentation surfaces. */
.case-view .grain-layer{display:none}
.is-case .case-hero,.is-case .case-screen,.is-case .compare-stage{background:#f5f5f5;background-image:none;opacity:1;filter:none;mask-image:none;-webkit-mask-image:none;box-shadow:none}
.is-case .case-hero img,.is-case .case-screen img,.is-case .compare-stage img{opacity:1;filter:none;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none}
.is-case .case-hero,.is-case .case-screen{animation:none!important;transition:none!important;translate:0 0!important;rotate:0deg!important;scale:1!important}
.is-case .paper-scroll{animation:solid-case-arrive .45s cubic-bezier(.22,.65,.3,1) both}
@keyframes solid-case-arrive{from{transform:translateX(14px)}to{transform:translateX(0)}}
/* Crop the legacy export to the actual UI, excluding its baked-in gradient. */
.compare-source-screen{position:absolute;left:0;right:0;top:50%;aspect-ratio:744/502;transform:translateY(-50%);overflow:hidden;background:#fff}
.compare-source-screen img{position:absolute!important;width:134.408602%!important;max-width:none!important;height:112.151394%!important;left:-17.204301%;top:-5.976096%;object-fit:fill!important}
@media(prefers-reduced-motion:reduce){.is-case .paper-scroll{animation:none!important}}
/* Give the folder and project covers more room on desktop. */
@media(min-width:811px){.folder-paper{width:84vw;max-width:1480px}.projects-grid{column-gap:32px}.project-card{width:calc(100% - 32px);max-width:520px}.project-image{height:auto;aspect-ratio:4/3}.next-grid .project-card{width:100%;max-width:none}.about-heading>p{max-width:440px}.stamp-portrait{max-width:300px}.about-note[open]{max-width:780px}.note-content>p{max-width:550px}.contact-page>h2{max-width:520px}.case-lead{max-width:640px}.paper-emboss{font-size:clamp(229px,24vw,360px)}}
@media(min-width:811px){.projects-grid{grid-auto-rows:auto;row-gap:40px}}
@media(min-width:811px) and (max-width:1799px){.work-note{display:none}}

/* About and selected work share the landing folder's scroll surface. */
.page-about .paper-scroll{overflow:auto;overscroll-behavior:contain}
.page-about .about-page{height:calc(100dvh - 70px);min-height:650px}
.see-work{display:block!important;width:max-content;margin-top:20px!important}
.landing-work{position:relative;padding:42px 4px 30px;border-top:1px solid #5f5f5f55;scroll-margin-top:15px}
.landing-work .folder-heading{display:flex;align-items:baseline;justify-content:space-between;height:auto;gap:20px}
.landing-work .folder-heading h2{font-size:64px;font-weight:600;letter-spacing:-.06em;line-height:1}
.landing-work .view-switch{margin:20px 0 30px}
.landing-work .projects-grid{padding-bottom:30px}
@media(max-width:810px){.page-about .about-page{height:calc(100dvh - 74px);min-height:750px}.landing-work{padding-top:30px}.landing-work .folder-heading h2{font-size:56px}.landing-work .folder-heading>.mono-link{font-size:10px}.landing-work .view-switch{height:auto;visibility:visible;margin:20px 0 30px}}

.about-page>.see-work{position:absolute;top:145px;left:14px;margin:0!important;z-index:4}
@media(max-width:810px){.about-page>.see-work{top:auto;bottom:26px;left:0}}

/* Personal note is real, accessible text, replacing the original traced artwork. */
.human-note{font:28px/1.05 'Pinyon Script',cursive;width:270px;height:auto;transform:rotate(-9deg);text-align:left}
@media(max-width:810px){.human-note{font-size:22px;width:205px;left:40%;top:68%}}

.cursor-sparkle{position:fixed;z-index:95;pointer-events:none;user-select:none;object-fit:contain;will-change:transform,opacity}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.cursor-sparkle{display:none!important}}
@media print{.cursor-sparkle{display:none!important}}

@media(min-width:811px){.human-note{left:64%;top:64%;width:330px;font-size:26px}}
@media(min-width:811px){.human-note{width:34%;font-size:clamp(20px,2vw,26px)}}
@media(max-width:810px){.human-note{left:24%;top:74%;width:74%;font-size:18px;transform:rotate(-6deg)}}
.page-about .about-location{bottom:0}

@font-face{font-family:'Caveat';src:url('/assets/portfolder/caveat-variable.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
.human-note{font-family:'Caveat',cursive;font-weight:400;text-transform:uppercase;letter-spacing:.025em;line-height:1.05;font-size:22px}
.editorial-ready .stamp-portrait{animation:none!important;scale:1!important;rotate:none!important;translate:none!important;transform:none!important;transition:none!important}
@media(max-width:810px){.human-note{font-size:17px;top:73%;line-height:1.05}}
@media(max-width:810px){.human-note{font-size:15px;width:85%;left:10%;top:74%}}

/* Supplied spotted fabric, rotated horizontally behind the paper folder. */
:root{background:#e8e4d5}
body{position:relative;isolation:isolate}
body::before{content:'';position:fixed;left:50%;top:50%;width:100lvh;height:100lvw;transform:translate(-50%,-50%) rotate(90deg);background:#e8e4d5 url('/assets/background/spotted-texture.webp') center/cover no-repeat;pointer-events:none;z-index:-1}
@media print{body::before{display:none}}

/* Stationary handwriting and a single real cursor, with no particle trail. */
.editorial-ready .human-note{animation:none!important;rotate:none!important;translate:none!important;scale:1!important}
@media(max-width:810px){.human-note{top:calc(72% + 4px);transform:none}}
@media(hover:hover) and (pointer:fine){html,body,body *{cursor:url('/assets/cursor/silver-star.png') 24 24,auto}input,textarea,[contenteditable="true"]{cursor:text}}

.human-note{height:auto;line-height:0;transform:rotate(-7deg)}
.human-note>img{display:block;width:100%;height:auto}
@media(max-width:810px){.page-about .about-page{min-height:850px}.stamp-portrait{top:300px;height:240px}.human-note{top:552px;left:10%;width:85%;transform:none}}
@media(min-width:500px) and (max-width:810px){.human-note{width:min(52%,360px);left:24%}}
