@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400&display=swap";:root{--paper:#f4f4f1;--paper-white:#fbfbf8;--paper-light:#f7f7f4;--sand-soft:#e7e7e2;--ink:#111;--muted-ink:#555;--soft-grey:#e2e2de;--line:#11111161;--accent:#1b1b1b;--accent-soft:#11111112;--page-width:1380px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background-color:#f6f7f9;background-image:linear-gradient(#0f172a09 1px,#0000 1px),linear-gradient(90deg,#0f172a09 1px,#0000 1px),radial-gradient(circle at 0 0,#fff 0%,#f7f8fa 45%,#eef1f4 100%);background-size:32px 32px,32px 32px,100% 100%;background-attachment:fixed;margin:0;font-family:Newsreader,Georgia,serif;position:relative;overflow-x:hidden}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img,svg{max-width:100%;display:block}h1,h2,h3,p,figure,blockquote{margin-top:0}.page-shell{width:min(calc(100% - 24px), var(--page-width));margin-inline:auto}main{min-height:60vh}.section{border-bottom:1px solid var(--ink);padding:78px 0;position:relative}.section-heading{grid-template-columns:.34fr 1.66fr;gap:48px;margin-bottom:44px;display:grid}.section-number,.section-label,.eyebrow,.kicker{letter-spacing:.1em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:.61rem}.section-number{color:var(--accent);margin-bottom:7px;font-weight:500}.section-label{color:var(--muted-ink);margin-bottom:7px}h1{letter-spacing:-.075em;margin-bottom:28px;font-size:clamp(4rem,6.2vw,6.7rem);font-weight:400;line-height:.83}h2{letter-spacing:-.065em;margin-bottom:0;font-size:clamp(2.8rem,4.8vw,5.2rem);font-weight:400;line-height:.9}h3{font-weight:400}.site-header{backdrop-filter:blur(6px);background:#fffdf8b8;padding-top:10px}.edition-line{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);letter-spacing:.12em;text-align:center;text-transform:uppercase;padding:6px 0;font-family:IBM Plex Mono,monospace;font-size:.58rem}.masthead-row{border-bottom:4px double var(--ink);grid-template-columns:1fr auto;align-items:end;gap:26px;padding:12px 0 10px;display:grid}.masthead-identity{justify-items:start;gap:4px;display:grid}.masthead{letter-spacing:-.07em;font-size:clamp(3rem,5.8vw,5.7rem);font-weight:500;line-height:.86}.location-line{color:var(--muted-ink);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:5px;margin:0;font-family:IBM Plex Mono,monospace;font-size:.57rem;display:inline-flex}.location-pin{font-size:.9rem;line-height:1}.masthead-note{color:#3c3c3c;letter-spacing:.08em;text-align:right;text-transform:uppercase;max-width:370px;margin:0 0 3px;font-family:IBM Plex Mono,monospace;font-size:.58rem;line-height:1.5}.site-nav{z-index:20;border-bottom:1px solid var(--ink);backdrop-filter:blur(10px);background:#f8f8f5f0;justify-content:center;gap:28px;padding:9px 0 8px;display:flex;position:sticky;top:0}.site-nav a{letter-spacing:.09em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:.62rem;position:relative}.site-nav a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .18s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a:focus-visible:after{transform:scaleX(1)}.page-hero{border-bottom:4px double var(--ink);grid-template-columns:.32fr 1.68fr;gap:48px;padding:60px 0 64px;display:grid}.page-hero .eyebrow{color:var(--accent)}.page-intro{color:#3d3d3d;max-width:780px;margin-bottom:0;font-size:clamp(1.08rem,1.7vw,1.35rem);line-height:1.62}.button{border:1px solid var(--ink);letter-spacing:.07em;text-transform:uppercase;justify-content:center;align-items:center;gap:11px;min-height:48px;padding:0 18px;font-family:IBM Plex Mono,monospace;font-size:.64rem;font-weight:500;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper)}.button-light{background:#fbf8f16b}.button-light:hover,.button-light:focus-visible{background:var(--ink);color:var(--paper)}.text-link{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;padding:10px 0;font-family:IBM Plex Mono,monospace;font-size:.61rem;display:inline-flex}.project-list{border-top:1px solid var(--ink)}.project-card{border-bottom:1px solid var(--line);grid-template-columns:.22fr 1.4fr auto;align-items:end;gap:32px;padding:32px 0;transition:padding .18s,background .18s,box-shadow .18s;display:grid}.project-card:hover{background:#8f1d1d0e;padding-left:18px;padding-right:18px;box-shadow:8px 8px #8f1d1d1c}.project-index{letter-spacing:.08em;text-transform:uppercase;flex-direction:column;justify-content:space-between;align-self:stretch;gap:28px;font-family:IBM Plex Mono,monospace;font-size:.57rem;display:flex}.project-number{border:1px solid var(--ink);background:var(--accent);width:35px;height:35px;color:var(--paper);place-items:center;display:grid;box-shadow:5px 5px #17171726}.project-status{color:var(--muted-ink)}.project-category{letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px;font-family:IBM Plex Mono,monospace;font-size:.58rem;font-weight:500}.project-card h3{letter-spacing:-.055em;margin-bottom:10px;font-size:clamp(2.3rem,4vw,4.4rem);line-height:.92}.project-description{color:#404040;max-width:690px;margin-bottom:0;font-size:1.02rem;line-height:1.6}.project-link{white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-family:IBM Plex Mono,monospace;font-size:.6rem;display:inline-flex}.software-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(2,1fr);display:grid}.software-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:linear-gradient(135deg,#0000 0 79%,#9717170f 79% 100%),#fbf8f1d1;min-height:330px;padding:28px;position:relative;overflow:hidden}.software-card:after{content:"";background:radial-gradient(var(--ink) .8px, transparent .8px);opacity:.24;background-size:7px 7px;border:1px solid #1717176b;width:62px;height:62px;position:absolute;bottom:22px;right:22px;transform:rotate(10deg)}.software-card.uploading{background:repeating-linear-gradient(-45deg,#0000 0 13px,#17171706 13px 14px),#f4eee4db}.software-card-top{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:18px;margin-bottom:58px;font-family:IBM Plex Mono,monospace;font-size:.56rem;display:flex}.software-card-number{color:var(--accent);font-weight:500}.software-card h3{letter-spacing:-.055em;margin-bottom:13px;font-size:clamp(2.1rem,3.3vw,3.6rem);line-height:.93}.software-card p{color:#404040;max-width:520px;line-height:1.58}.upload-status{border:1px dashed var(--muted-ink);color:var(--muted-ink);letter-spacing:.08em;text-transform:uppercase;padding:8px 10px;font-family:IBM Plex Mono,monospace;font-size:.57rem;display:inline-flex}.content-grid{border-bottom:1px solid var(--ink);grid-template-columns:.3fr 1.7fr;gap:48px;padding:78px 0;display:grid}.content-copy{color:#3d3d3d;max-width:790px;font-size:1.08rem;line-height:1.72}.image-frame{border:1px solid var(--ink);background:var(--sand-soft);margin:0;padding:13px;box-shadow:12px 12px #1717171a}.image-frame img{object-fit:cover;border:1px solid var(--line);width:100%;min-height:340px}.image-placeholder{border:1px dashed var(--muted-ink);background:repeating-linear-gradient(-45deg, var(--paper-light) 0, var(--paper-light) 15px, var(--sand-soft) 15px, var(--sand-soft) 16px);min-height:390px;color:var(--muted-ink);letter-spacing:.08em;text-align:center;text-transform:uppercase;place-items:center;font-family:IBM Plex Mono,monospace;font-size:.61rem;display:grid}figcaption{letter-spacing:.07em;text-transform:uppercase;padding:11px 2px 0;font-family:IBM Plex Mono,monospace;font-size:.55rem}.contact-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:70px;display:grid}.contact-form{border:1px solid var(--ink);box-shadow:12px 12px 0 #8f1d1d26, inset 0 0 0 7px var(--paper), inset 0 0 0 8px var(--ink);background:#fafaf7eb;padding:30px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form label{gap:8px;margin-bottom:18px;display:grid}.contact-form label>span{letter-spacing:.09em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:.58rem;font-weight:500}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--ink);background:var(--paper-light);width:100%;color:var(--ink);border-radius:0;outline:0;font-family:IBM Plex Mono,monospace;font-size:.78rem}.contact-form input,.contact-form select{min-height:48px;padding:0 12px}.contact-form textarea{resize:vertical;min-height:170px;padding:12px;line-height:1.55}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{box-shadow:5px 5px #17171726}.accent-word,.highlight-word{z-index:0;color:var(--ink);padding:0 .08em;font-style:italic;display:inline-block;position:relative}.accent-word:before,.highlight-word:before{z-index:-1;content:"";background:linear-gradient(90deg,#8f1d1d2e,#cdb691b8 42%,#8f1d1d1f);border-radius:2px;height:.34em;position:absolute;bottom:.08em;left:-.03em;right:-.03em;transform:rotate(-1.2deg)}.creative-note,.author-note{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:linear-gradient(135deg,#8f1d1d17,#0000 45%),#fbf8f1b8;margin-top:34px;padding:26px;position:relative;overflow:hidden}.creative-note:after,.author-note:after{content:"";pointer-events:none;border:1px solid #8f1d1d40;border-radius:50%;width:145px;height:145px;position:absolute;bottom:-45px;right:-28px;box-shadow:0 0 0 18px #cdb69126,0 0 0 36px #8f1d1d0d}.creative-note-label,.author-note-label{z-index:1;color:var(--accent);letter-spacing:.09em;text-transform:uppercase;margin-bottom:18px;font-family:IBM Plex Mono,monospace;font-size:.58rem;font-weight:500;position:relative}.creative-note p:not(.creative-note-label),.author-note p:not(.author-note-label){z-index:1;max-width:760px;line-height:1.68;position:relative}.creative-note-link,.author-note-link{z-index:1;border-bottom:1px solid var(--ink);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;margin-top:12px;padding:9px 0 5px;font-family:IBM Plex Mono,monospace;font-size:.6rem;display:inline-flex;position:relative}.creative-note-link:hover,.creative-note-link:focus-visible,.author-note-link:hover,.author-note-link:focus-visible{color:var(--accent)}.paper-panel{border:1px solid var(--line);background:linear-gradient(145deg,#ffffff7a,#e8dcc85c);box-shadow:10px 10px #17151212}.site-footer{color:var(--muted-ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:20px;padding:22px 0 34px;font-family:IBM Plex Mono,monospace;font-size:.56rem;display:flex}@media (width<=900px){.page-hero,.content-grid,.contact-grid,.software-grid{grid-template-columns:1fr}}@media (width<=760px){body{background-size:auto 100vh;background-attachment:scroll}.page-shell{width:calc(100% - 20px)}.masthead-row{grid-template-columns:1fr;gap:8px}.masthead-note{text-align:left;max-width:none}.site-nav{white-space:nowrap;scrollbar-width:none;justify-content:flex-start;gap:20px;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.page-hero,.section,.content-grid{padding-left:16px;padding-right:16px}.page-hero{padding-top:48px;padding-bottom:52px}.section{padding-top:64px;padding-bottom:64px}h1{font-size:clamp(3.6rem,13vw,5.2rem);line-height:.88}h2{font-size:clamp(2.8rem,10vw,4.4rem)}.section-heading{grid-template-columns:1fr;gap:18px}.project-card{grid-template-columns:.2fr 1fr;align-items:start;gap:20px}.project-link{grid-column:2}.form-grid{grid-template-columns:1fr}}@media (width<=520px){.page-shell{width:calc(100% - 14px)}.page-hero,.section,.content-grid{padding-left:12px;padding-right:12px}h1{font-size:clamp(3.15rem,15.5vw,4.35rem)}h2{font-size:clamp(2.5rem,12vw,3.75rem)}.project-card{grid-template-columns:1fr}.project-index{flex-direction:row}.project-link{grid-column:auto}.contact-form{padding:22px}.site-footer{flex-direction:column;gap:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
