@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/manrope-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/manrope-latin.woff2') format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/dm-mono-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/dm-mono-latin.woff2') format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/dm-mono-medium-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/dm-mono-medium-latin.woff2') format('woff2')}
:root{color-scheme:light;--paper:#fafaf7;--ink:#18201e;--muted:#59625d;--rule:#c9cec6;--signal:#a93c20;--dark:#202825;--sans:'Manrope',Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--signal);color:white}a{color:inherit;text-underline-offset:.22em}a:focus-visible{outline:3px solid var(--signal);outline-offset:4px}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;top:-5rem;left:1rem;background:var(--ink);color:white;padding:.7rem 1rem;z-index:5}.skip-link:focus{top:1rem}.site-header{height:86px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}.wordmark{text-decoration:none;font-size:25px;font-weight:800;letter-spacing:-.04em}.wordmark span{color:var(--signal)}nav{display:flex;gap:38px;font-size:13px;font-weight:600}nav a{text-decoration:none}nav a:hover,.text-link:hover,.site-footer a:hover{color:var(--signal)}.hero{min-height:550px;padding-top:84px;position:relative;border-bottom:1px solid var(--rule);overflow:hidden}.hero-note,.section-heading>p,.project-index,.project-meta,.tags,.site-footer small{font:12px/1.5 var(--mono);letter-spacing:.04em;color:var(--muted)}.hero-note{margin:0 0 30px}.hero h1{font-size:clamp(64px,9vw,112px);letter-spacing:-.04em;line-height:.94;margin:0;font-weight:600;max-width:850px}.hero-foot{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-top:54px;position:relative;z-index:1}.hero-foot p{font-size:16px;max-width:470px;line-height:1.7;color:#3e4843;margin:0}.text-link{font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.hero-mark{position:absolute;right:4%;top:102px;width:112px;height:112px;display:grid;grid-template-columns:repeat(2,1fr);gap:5px;transform:rotate(9deg)}.hero-mark span{background:var(--signal)}.hero-mark span:nth-child(2){opacity:.62}.hero-mark span:nth-child(3){opacity:.36}.hero-mark span:nth-child(4){background:transparent;border:1px solid var(--signal)}.projects{padding-block:104px 118px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:2rem;border-bottom:1px solid var(--ink);padding-bottom:18px}.section-heading h2{font-size:32px;letter-spacing:-.06em;margin:0}.section-heading>p{margin:0;text-transform:none;letter-spacing:0}.project-row{display:grid;grid-template-columns:58px minmax(0,1fr) 190px;gap:22px;padding:28px 0 30px;border-bottom:1px solid var(--rule);align-items:start}.project-index{padding-top:7px}.project-main h3{font-size:23px;letter-spacing:-.035em;margin:0 0 7px;line-height:1.25}.project-main h3 a{text-decoration:none}.project-main h3 span{color:var(--signal);font-size:16px;vertical-align:3px}.project-main>p{margin:0;color:#45504a;max-width:620px;font-size:14px}.tags{display:flex;gap:17px;margin-top:15px;font-size:12px}.tags span+span:before{content:'·';margin-right:17px;color:var(--signal)}.project-meta{display:flex;flex-direction:column;gap:11px;align-items:flex-start;text-transform:none;letter-spacing:0}.project-meta a{text-decoration:none;color:#34413b;font-size:12px}.status{display:flex;align-items:center;gap:7px}.status:before{content:'';width:7px;height:7px;border-radius:50%;background:#65776c}.status-live:before{background:var(--signal)}.studio-strip{background:var(--dark);color:var(--paper);padding:90px 0}.studio-content{display:grid;grid-template-columns:1fr 1fr;gap:18px 9%;align-items:end}.studio-content h2{font-size:clamp(38px,5vw,62px);line-height:1.03;letter-spacing:-.04em;margin:0}.studio-content p{font-size:15px;color:#c6cec7;max-width:450px;margin:0}.button-link{grid-column:2;width:max-content;text-decoration:none;color:var(--dark);background:var(--paper);padding:13px 19px;font-size:12px;font-weight:700;margin-top:8px}.button-link:hover{background:var(--signal);color:white}.site-footer{display:grid;grid-template-columns:1fr 1fr auto auto;gap:22px;align-items:center;padding-block:27px;font-size:12px}.site-footer p{color:var(--muted);margin:0}.site-footer a{text-decoration:none}.site-footer small{font-size:12px}.page-hero{padding:80px 0 54px;border-bottom:1px solid var(--rule)}.page-hero .hero-note{margin-bottom:22px}.page-hero h1{font-size:clamp(48px,8vw,88px);line-height:.98;letter-spacing:-.04em;margin:0 0 24px}.page-hero>p:last-child{max-width:660px;color:#45504a;font-size:18px;margin:0}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:60px;padding-block:55px 100px}.detail-grid h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 13px}.detail-grid p{color:#45504a;margin:0 0 32px;max-width:670px}.detail-aside{border-top:1px solid var(--ink);padding-top:16px}.detail-aside dl{margin:0}.detail-aside dt{font:12px var(--mono);text-transform:uppercase;color:var(--muted);margin-top:20px}.detail-aside dd{margin:5px 0 0;font-size:13px}.back-link{font-size:12px;text-decoration:none;color:var(--muted)}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{height:auto;min-height:70px}nav{gap:10px;font-size:12px;max-width:190px;flex-wrap:wrap;justify-content:flex-end}.site-header nav a,.category-nav a{display:flex;align-items:center;min-height:40px;padding-block:10px}.hero{min-height:485px;padding-top:73px}.hero-mark{width:66px;height:66px;top:78px;right:0;gap:3px}.hero h1{font-size:clamp(48px,13vw,58px);max-width:100%}.hero-foot{align-items:flex-start;flex-direction:column;margin-top:38px;gap:24px}.hero-foot p{font-size:14px;max-width:100%;width:100%}.projects{padding-block:72px 78px}.section-heading{align-items:flex-start;flex-direction:column;gap:7px;padding-bottom:14px}.section-heading h2{font-size:27px}.project-row{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:23px 0}.project-index{font-size:12px}.project-main h3{font-size:20px}.project-main>p{font-size:13px}.project-meta{grid-column:2;flex-direction:row;gap:18px;flex-wrap:wrap}.tags{gap:12px}.tags span+span:before{margin-right:12px}.studio-strip{padding:65px 0}.studio-content{grid-template-columns:1fr;gap:20px}.studio-content h2{font-size:47px}.button-link{grid-column:1;margin-top:3px}.site-footer{grid-template-columns:1fr auto;gap:13px}.site-footer p{grid-column:1}.site-footer small{grid-column:2;grid-row:2}.page-hero{padding:62px 0 38px}.page-hero>p:last-child{font-size:16px}.detail-grid{grid-template-columns:1fr;gap:15px;padding-block:36px 70px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.project-category,.technology-overview{padding-top:50px}.category-nav{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:22px;border-bottom:1px solid var(--rule);font-size:13px}.category-nav a{text-decoration:none}.category-nav a:hover{color:var(--signal)}.category-nav a[aria-current="location"]{color:var(--signal);text-decoration:underline;text-underline-offset:.3em}.category-nav [hidden]{display:none}.technology-list{list-style:none;padding:0;margin:0}.technology-list li{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:24px;padding:15px 0;border-bottom:1px solid var(--rule);font:13px/1.6 var(--mono)}.technology-list li>span:first-child{color:var(--muted)}.technology-list a{text-decoration:none}.technology-list a:hover{color:var(--signal)}
.project-category .project-row{grid-template-columns:minmax(0,1fr) 190px}.project-category .project-index{display:none}
@media(max-width:700px){.project-category,.technology-overview{padding-top:38px}.project-category .project-row{grid-template-columns:minmax(0,1fr)}.project-category .project-meta{grid-column:1}.technology-list li{grid-template-columns:1fr;gap:5px}.tags{flex-wrap:wrap}.category-nav{max-width:none;justify-content:flex-start}}
.contact-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(200px,1fr);gap:60px;padding-block:54px 100px}.contact-layout h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 24px}.contact-form{max-width:680px;display:grid;gap:9px}.contact-form label{font-size:13px;font-weight:700;margin-top:8px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #859087;border-radius:0;background:transparent;color:var(--ink);font:16px/1.5 var(--sans);padding:11px 12px}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid var(--signal);outline-offset:2px;border-color:var(--signal)}.contact-submit{justify-self:start;border:0;border-radius:0;background:var(--ink);color:var(--paper);font:700 13px var(--sans);padding:14px 20px;margin-top:12px;cursor:pointer}.contact-submit:hover{background:var(--signal)}.contact-submit:focus-visible{outline:3px solid var(--signal);outline-offset:4px}.contact-submit:disabled{opacity:.65;cursor:wait}.contact-status{min-height:1.6em;margin:7px 0 0;color:var(--muted);font-size:14px}.contact-status[data-state=error]{color:#8b2916}.contact-status[data-state=success]{color:#28533d}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-aside{border-top:1px solid var(--ink);padding-top:16px;font-size:13px}.contact-aside p{margin:0 0 5px;color:var(--muted)}.contact-aside a{font-weight:700}.contact-result{padding-block:80px}.contact-result p{font-size:20px}.contact-result a{font-weight:700}@media(max-width:700px){.contact-layout{grid-template-columns:1fr;gap:35px;padding-block:36px 70px}.contact-aside{max-width:none}}
@media(max-width:700px){.hero-mark{display:none}}
.project-preview{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin:0 0 6px;border:1px solid var(--rule)}.project-screenshot{max-width:900px;margin:28px 0 0}.project-screenshot img{display:block;width:100%;height:auto;border:1px solid var(--rule)}.project-screenshot figcaption{margin-top:8px;color:var(--muted);font:12px/1.5 var(--mono)}
