:root{font-family:'Creato Display',Arial,sans-serif;background:#fff;color:#141414;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}header{height:100px;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:4}.brand img{display:block;width:44px;height:40px;object-fit:contain}.contact-link{font-size:13px}.skip{position:fixed;top:-100px}.skip:focus{top:10px;left:90px;z-index:10}.loading{margin:50px 32px;font-size:12px}.intro{height:calc(100svh - 100px);min-height:550px;max-height:1000px;position:relative;isolation:isolate;margin:0 32px 70px}.intro h1{position:absolute;inset:33% 5% auto;margin:0;z-index:1;pointer-events:none}.intro h1 img{width:100%;height:auto;display:block}.fragment{position:absolute;display:block;width:11%;z-index:2;overflow:hidden}.fragment img,.fragment video{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.fragment:hover img,.fragment:hover video{transform:scale(1.05)}.fragment:nth-of-type(1){left:4%;top:2%;height:20%}.fragment:nth-of-type(2){left:51%;top:1%;height:20%;width:12%}.fragment:nth-of-type(3){right:2%;bottom:6%;height:22%}.fragment:nth-of-type(4){left:5%;bottom:2%;height:20%}.fragment:nth-of-type(5){left:57%;bottom:1%;height:20%}.fragment.featured{left:23%;top:48%;width:23%;height:auto;aspect-ratio:4/3;z-index:3}.archive{padding:0 24px 32px;columns:4;column-gap:8px}.project-cover{display:block;break-inside:avoid;margin-bottom:8px;overflow:hidden}.project-cover img,.project-cover video{display:block;width:100%;height:auto;transition:transform .6s cubic-bezier(.22,.68,0,1)}.project-cover:hover img,.project-cover:hover video,.project-cover:focus-visible img{transform:scale(1.045)}.project-page{padding:35px 24px 40px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:start}.project-info{padding:4px 24px 35px 8px;font-size:13px;line-height:1.5}.back{font-size:11px;display:inline-block;margin-bottom:38px}.project-info h1{font-size:15px;font-weight:500;margin:0 0 16px}.project-info p{white-space:pre-line;margin:0;max-width:260px}.project-media{margin:0;min-width:0}.project-media img,.project-media video{width:100%;height:auto;display:block;background:transparent}.project-media video{aspect-ratio:4/3;object-fit:contain}.project-media img{cursor:zoom-in}.project-media:first-of-type:nth-last-child(1){grid-column:span 3}.contact-page{padding:95px 4vw 80px;min-height:calc(100svh - 100px)}.contact-page h1{font-size:clamp(56px,9.2vw,150px);font-weight:400;line-height:1;margin:20px 0 38px;letter-spacing:-.055em}.email{font-size:clamp(22px,4.4vw,74px);letter-spacing:-.04em;text-decoration:underline;text-underline-offset:8px;overflow-wrap:anywhere}.social{margin-top:85px;font-size:15px}.social p{margin-bottom:26px}.social a{font-size:13px}.contact-page .back{margin-top:70px}#owner-tools{padding:16px 32px;font-size:10px;opacity:.55}#owner-tools:empty{display:none}.preview-bar{padding:10px 24px;background:#eee;font-size:12px}.lightbox{border:0;position:fixed;inset:0;padding:35px;width:100%;height:100%;max-width:none;max-height:none;background:var(--page-bg,#fff);color:inherit}.lightbox::backdrop{background:var(--page-bg,#fff)}.lightbox img{width:100%;height:calc(100% - 45px);object-fit:contain}.lightbox button{display:block;margin:0 0 20px auto;background:none;border:0;cursor:pointer}.error{padding:60px 32px}body:has(dialog[open]){overflow:hidden}@media(max-width:800px){header{padding:22px;height:84px}.intro{margin:0 22px 50px;height:calc(88svh - 84px);min-height:460px}.intro h1{inset:36% 0 auto}.fragment{width:16%}.fragment:nth-of-type(2){width:17%}.fragment.featured{left:24%;top:49%;width:30%}.archive{columns:2;padding:0 14px 24px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-info{grid-column:1/-1;padding-bottom:35px}.project-info p{max-width:400px}.project-media:first-of-type:nth-last-child(1){grid-column:1/-1}.project-page{padding:20px 14px}.contact-page{padding-top:65px}}@media(max-width:480px){header{height:80px;padding:20px}.brand img{width:36px;height:33px}.contact-link{font-size:11px}.intro{height:650px;max-height:calc(100svh - 80px);min-height:510px;margin:0 16px 45px}.intro h1{inset:36% 0 auto}.fragment{width:21%}.fragment:nth-of-type(1){height:18%;left:3%;top:4%}.fragment:nth-of-type(2){width:24%;height:17%;left:65%;top:9%}.fragment:nth-of-type(3){height:18%;bottom:9%;right:0}.fragment:nth-of-type(4){height:17%;bottom:5%;left:1%}.fragment:nth-of-type(5){display:none}.fragment.featured{width:40%;left:29%;top:47%}.contact-page h1{font-size:15vw}.contact-page{padding:60px 22px}.email{font-size:7vw}.project-info .back{margin-bottom:24px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.fragment img,.fragment video,.project-cover img,.project-cover video{transition:none!important;transform:none!important}}

.intro h1{container-type:inline-size}.reframe-wordmark{display:block;font-family:"Creato Display Black","Creato Display",sans-serif;font-weight:900;font-size:21cqw;line-height:1.08;letter-spacing:-.025em;white-space:nowrap}

.project-grid{gap:12px}.project-main{grid-column:2 / -1}.project-secondary{grid-column:span 2}.project-media video{cursor:pointer}.project-media video:focus-visible{outline:2px solid currentColor;outline-offset:4px}@media(max-width:800px){.project-main{grid-column:1 / -1}.project-secondary{grid-column:span 1}}@media(max-width:520px){.project-secondary{grid-column:1 / -1}.project-grid{gap:10px}.project-info{padding:0 6px 20px}}
.social .external-arrow{display:inline-block;width:12px;height:12px;vertical-align:-1px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.intro.custom-home{height:auto;min-height:0;max-height:none;aspect-ratio:1280/680}.custom-home .custom-fragment{left:var(--desktop-x);top:var(--desktop-y);width:var(--desktop-w);height:var(--desktop-h);display:var(--desktop-show);right:auto;bottom:auto;aspect-ratio:auto}.custom-home .custom-fragment img,.custom-home .custom-fragment video{width:100%;height:100%}@media(max-width:800px){.intro.custom-home{aspect-ratio:744/700}.custom-home .custom-fragment{left:var(--tablet-x);top:var(--tablet-y);width:var(--tablet-w);height:var(--tablet-h);display:var(--tablet-show)}}@media(max-width:480px){.intro.custom-home{aspect-ratio:390/650}.custom-home .custom-fragment{left:var(--phone-x);top:var(--phone-y);width:var(--phone-w);height:var(--phone-h);display:var(--phone-show)}}

header nav{display:flex;gap:28px;align-items:center}header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.about-page{position:relative;padding-top:25px}.about-description{margin-left:var(--description-left);width:var(--description-width);font-size:11px;line-height:1.35;white-space:pre-line;overflow-wrap:anywhere;min-height:70px}.about-description p{margin:0}.about-page h1{margin-top:20px;margin-bottom:0}.about-portrait{margin:var(--photo-gap) 0 0 var(--photo-left);width:var(--photo-width)}.about-portrait img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center}
@media(max-width:800px){.about-description{min-height:40px;min-width:130px}.about-portrait{width:max(30%,var(--photo-width));margin-left:min(60%,var(--photo-left))}}
@media(max-width:480px){header nav{gap:20px}.about-page{padding-top:20px;padding-bottom:50px}.about-description{margin-left:40%;width:60%;min-width:0}.about-portrait{width:55%;margin-left:35%;margin-top:var(--photo-gap)}}
