*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f6f2;color:#222520;font:14px Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid #66785e;outline-offset:4px}.skip{position:fixed;top:-60px;z-index:10;background:white;padding:12px}.skip:focus{top:0}.sidebar{position:fixed;inset:0 auto 0 0;width:25%;padding:32px;display:flex;flex-direction:column;align-items:flex-start}.wordmark{font-size:29px;font-weight:600;letter-spacing:-1.5px;white-space:nowrap}.mark{color:#77866e;font-size:38px;vertical-align:middle;margin-left:5px}.sidebar-intro{margin-top:74px}.sidebar .intro-title{font-size:clamp(20px,2vw,30px);font-weight:400;line-height:1.17;letter-spacing:-.8px;margin:0;color:#222520}.sidebar-intro p{color:#75796f;font-size:14px;line-height:1.5;margin:24px 0 0}.sidebar nav{display:flex;flex-direction:column;gap:15px;margin-top:45px;font-size:14px}.sidebar nav .active:before{content:'';display:inline-block;width:6px;height:6px;background:#75886a;border-radius:50%;margin:0 8px 2px 0}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;gap:11px;font-size:13px}.sidebar-bottom span{font-size:11px;line-height:1.5;color:#85887e;margin-top:26px}main{margin-left:25%;padding:12px 12px 0 0;min-height:100dvh}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1px;column-gap:8px;align-items:start}.project{position:relative;break-inside:avoid;overflow:hidden;isolation:isolate;margin:0;align-self:start;grid-row-end:span 500;border-radius:4px}.media{display:block;width:100%;position:relative;overflow:hidden}.media img,.media video{display:block;width:100%;height:auto;aspect-ratio:auto var(--ratio);object-fit:contain}.project-info{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:linear-gradient(#12181240,#141914f2);color:white;opacity:0;transition:opacity .2s;pointer-events:none}.project-info h2{font-size:clamp(19px,2vw,30px);font-weight:400;letter-spacing:-.7px;line-height:1.05;margin:0;display:flex;justify-content:space-between;gap:12px}.project-info p{font-size:13px;line-height:1.4;margin:12px 0 16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-info dl{font-size:11px;line-height:1.6}.project-info dt{color:#bdc3b8}.project-info dd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-toggle{position:absolute;top:12px;right:12px;z-index:2;background:#20261cbf;color:white;border:1px solid #ffffff50;border-radius:2px;padding:12px;display:flex;gap:20px;align-items:center;font-size:11px}.info-toggle span{font-size:18px;line-height:12px}.project.info-open .project-info,.project:focus-within .project-info{opacity:1}.project.info-open .project-info{padding-top:58px}.archive-link{display:flex;justify-content:space-between;padding:25px 4px;font-size:12px;color:#73786c}.kicker{font-size:11px;line-height:1.6;letter-spacing:.06em;text-transform:uppercase}dl{margin:0;font-size:13px;line-height:1.7}dl div{display:flex;gap:12px}dt{width:45px;flex-shrink:0;color:#777e70}dd{margin:0}sup{font-size:12px;font-weight:400;vertical-align:super}.archive-head{padding:18px 14px 30px}.archive-head h1{font-size:32px;letter-spacing:-1px;font-weight:400;margin:0 0 26px}.filters{display:flex;gap:22px;flex-wrap:wrap}.filters button{font-size:12px;color:#73796e;padding:6px 0}.filters .active{color:#222520;border-bottom:1px solid}.preview{position:fixed;inset:0 0 0 auto;margin:0;width:min(850px,90vw);height:100dvh;max-height:none;max-width:none;border:0;padding:0;background:#f6f6f2;color:#252824;overflow-y:auto}dialog::backdrop{background:#12161288;backdrop-filter:blur(3px)}.drawer-bar{position:sticky;top:0;z-index:2;background:#f6f6f2;display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid #d5d8d0;font-size:11px}.close{font-size:14px}.preview-hero{width:100%;height:auto;display:block}.preview-info{padding:32px}.preview-info h2{font-size:clamp(32px,4vw,53px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:18px 0}.summary{font-size:17px;line-height:1.5;color:#62665f}.preview-info dl{margin:25px 0}.full-link{background:#303a2d;color:white;display:flex;justify-content:space-between;padding:18px 20px;font-size:14px;margin-top:28px}.case-page{padding:18px 22px 0}.back-link{font-size:12px;color:#6f7768;display:inline-block;margin-bottom:45px}.case-header{padding-bottom:40px}.case-header h1,.about-page h1{font-size:clamp(35px,4.7vw,70px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:18px 0 28px;max-width:850px}.case-header dl{margin-top:30px}.case-content{font-size:16px;line-height:1.65;overflow-wrap:anywhere}.case-content img,.case-content video{display:block;width:100%;height:auto}.case-content img{cursor:zoom-in}.case-content iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.project-module{margin:0 0 16px}.project-module-text{padding:18px 4px;max-width:850px}.module-text>div{margin-bottom:12px}.module-text div>div{margin-bottom:12px}.module-text a{text-decoration:underline;text-underline-offset:3px}.grid--main{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.grid__item-container{flex:1 1 40%;min-width:0}.grid__item-container:only-child{flex-basis:100%}.grid__item-filler,.js-grid-spacer{display:none}.tree-wrapper{display:flex;gap:12px;align-items:flex-start}.tree-child-wrapper{min-width:0}.project-module-button a{display:inline-block;border-bottom:1px solid;padding:10px 0}.next-project{border-top:1px solid #d8dcd1;margin-top:60px;padding:35px 0 55px;display:flex;flex-direction:column;gap:15px}.next-project span{font-size:12px;color:#73796e}.next-project strong{font-size:26px;font-weight:400}.about-page{padding:48px 5% 90px}.about-page h1{max-width:650px;margin-bottom:50px}.about-content{max-width:700px;font-size:18px;line-height:1.65}.about-content .project-module-social_icons{display:none}.about-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:35px}.about-links a{border-bottom:1px solid;padding-bottom:6px}.lightbox{inset:0;margin:0;border:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:65px 25px 25px;background:#111;color:white}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox-close{position:absolute;top:22px;right:25px}.loading{padding:40px 20px}
@media(hover:hover) and (pointer:fine){.project:hover .project-info{opacity:1}.info-toggle{opacity:0}.info-toggle:focus-visible{opacity:1}}
@media(max-width:1000px) and (min-width:701px){.sidebar{padding:24px 18px;width:27%}main{margin-left:27%}.wordmark{font-size:23px}.project-info{padding:16px}.project-info p{-webkit-line-clamp:2;font-size:11px;margin:8px 0}.project-info dl{font-size:10px}.sidebar-intro{margin-top:60px}}
@media(max-width:700px){.sidebar{position:relative;width:100%;padding:20px 16px 22px;display:grid;grid-template-columns:1fr auto;gap:20px}.wordmark{font-size:25px}.sidebar-intro{margin:0;grid-column:1}.sidebar .intro-title{font-size:18px;line-height:1.2;letter-spacing:-.4px}.sidebar .intro-title br:after{content:' '}.sidebar-intro p:not(.intro-title){display:none}.sidebar nav{margin:0;grid-column:1 / -1;grid-row:3;flex-direction:row;gap:27px;font-size:13px}.sidebar-bottom{grid-column:2;grid-row:2;justify-content:end;align-items:end;font-size:12px}.sidebar-bottom a:not(:first-child),.sidebar-bottom span{display:none}main{margin:0;padding:0 8px;min-height:60vh}.projects{display:block}.project{margin-bottom:8px}.project-info{padding:22px}.project-info h2{font-size:25px}.project-info p{-webkit-line-clamp:2;font-size:13px;margin:12px 0}.project-info dl{font-size:11px}.project:focus-within:not(.info-open) .project-info{opacity:0}.info-toggle{opacity:1}.archive-link{padding:25px 8px}.preview{width:100%}.drawer-bar{padding:18px 20px}.preview-info{padding:24px 20px}.summary{font-size:15px}.case-page{padding:24px 10px 0}.case-header h1{font-size:39px}.case-header{padding-bottom:25px}.back-link{margin-bottom:25px}.case-content{font-size:14px;line-height:1.65}.project-module-text{padding:13px 3px}.grid--main,.tree-wrapper{gap:8px}.about-page{padding:30px 12px 60px}.about-page h1{font-size:45px}.about-content{font-size:16px}.archive-head{padding:20px 8px 25px}.filters{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
