@layer prototype{:root{--prototype-gutter:clamp(1rem, 2.2vw, 2rem);--prototype-ease:cubic-bezier(.22, 1, .36, 1)}body{overflow-x:hidden}body.prototype-project-open{overflow:hidden}body.prototype-project-open:has([data-variant=C]){overflow:visible}.prototype-app{background:#f7f7f4;min-height:100svh}html[data-project-loading=true] .prototype-app{visibility:hidden}.prototype-masthead{z-index:30;top:var(--jeremy-logo-aligned-top);justify-content:center;padding:0;display:none;position:fixed;left:0;right:0}.prototype-masthead.is-negative .project-logo{filter:invert()}.project-menu{z-index:32;top:var(--site-menu-top);color:#fff;mix-blend-mode:difference;display:none;position:fixed;right:16px}[data-view=project] .project-menu{display:block}.menu-trigger{padding:var(--menu-trigger-line-offset) 0 var(--menu-trigger-line-offset) 8px;color:inherit;cursor:pointer;background:0 0;border:0;display:block}.menu-trigger__lines{flex-direction:column;gap:4px;width:22px;display:flex}.menu-trigger__lines i{background:currentColor;width:100%;height:1px;transition:transform .28s,width .28s;display:block}.project-menu.is-open .menu-trigger__lines i:first-child{transform:translateY(5px)rotate(45deg)}.project-menu.is-open .menu-trigger__lines i:nth-child(2){width:0}.project-menu.is-open .menu-trigger__lines i:last-child{transform:translateY(-5px)rotate(-45deg)}.menu-panel{min-width:74px;margin-top:14px}.menu-panel nav{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.menu-panel a{color:inherit;text-transform:uppercase;font:11px/1.45 SFMono-Regular,Consolas,Liberation Mono,monospace;text-decoration:none}.menu-panel a:hover,.menu-panel a:focus-visible{opacity:.55}.menu-trigger:focus-visible,.menu-panel a:focus-visible{outline-offset:5px;outline:1px solid}.prototype-index{padding:5vh var(--prototype-gutter) 8rem}.index-intro{justify-content:space-between;margin:0 0 10vh;font-size:.7rem;display:flex}.index-intro p{margin:0}.project-grid{grid-template-columns:repeat(12,1fr);align-items:start;gap:clamp(3rem,9vw,9rem) 1rem;display:grid}.project-card{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:.7rem;padding:0;display:grid}.project-card img{object-fit:cover;filter:saturate(.92);width:100%;height:100%;min-height:12rem;transition:transform .6s var(--prototype-ease), filter .4s ease}.project-card:hover img{filter:saturate(1.05);transform:scale(.985)}.project-card span{justify-content:space-between;gap:1rem;font-size:.7rem;display:flex}.project-card strong{overflow-wrap:anywhere;min-width:0;font-weight:500}.project-card small{color:#666;overflow-wrap:anywhere;min-width:0}.project-card--1{grid-column:2/span 4}.project-card--1 img{aspect-ratio:3/4}.project-card--2{grid-column:8/span 5;margin-top:18vh}.project-card--2 img{aspect-ratio:3/2}.project-card--3{grid-column:1/span 6}.project-card--3 img{aspect-ratio:4/5}.project-card--4{grid-column:8/span 4;margin-top:24vh}.project-card--4 img{aspect-ratio:4/5}.project-card--5{grid-column:3/span 4}.project-card--5 img{aspect-ratio:3/4}.project-card--6{grid-column:8/span 5;margin-top:10vh}.project-card--6 img{aspect-ratio:3/2}.prototype-project,.variant{min-height:100svh}.prototype-project img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.variant{display:none}[data-variant=A] [data-variant-panel=A],[data-variant=B] [data-variant-panel=B],[data-variant=C] [data-variant-panel=C]{display:block}.prototype-state{z-index:20;color:#fff;background:#111;border-radius:999px;gap:.25rem;padding:.45rem .65rem;font-size:.65rem;line-height:1.35;display:grid;position:fixed;bottom:1rem;right:1rem}.prototype-switcher{z-index:100;color:#fff;background:#111;border:1px solid #ffffff40;border-radius:999px;grid-template-columns:2.25rem minmax(10rem,auto) 2.25rem;align-items:center;display:grid;position:fixed;bottom:1rem;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 .5rem 2rem #0003}.prototype-switcher button{height:2.25rem;color:inherit;cursor:pointer;background:0 0;border:0}.prototype-switcher button:hover{background:#333}.prototype-switcher output{text-align:center;font-size:.65rem}[data-view=project] .prototype-masthead{display:flex}.faithful-stage,.guided-stage{touch-action:none;min-height:100svh;position:relative}.faithful-stage{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:url(/prototype/cursor.png?v=2) 32 13,pointer}.faithful-stage .deck-card{cursor:url(/prototype/cursor.png?v=2) 32 13,pointer}.faithful-footer{z-index:25;grid-template-columns:minmax(0,1fr) minmax(0,42vw) minmax(0,1fr);align-items:end;padding:0 3.75vw 1.25rem;display:grid;position:fixed;bottom:0;left:0;right:0}.faithful-progress-track{display:none}.faithful-footer.is-lightbox-active{z-index:1001;pointer-events:none}.faithful-footer.is-lightbox-active .faithful-progress-track{background:#1111111f;height:3px;display:block;position:absolute;bottom:0;left:0;right:0}.faithful-footer.is-lightbox-active .faithful-progress-track span{transform-origin:0;width:100%;height:100%;transition:transform .42s var(--prototype-ease);background:#111;display:block;transform:scaleX(.1)}.faithful-lightbox{z-index:1000;cursor:url(/prototype/cursor.png?v=2) 32 13,auto;background:#f2f2f0;display:block;position:fixed;inset:0;overflow:hidden}.faithful-lightbox[hidden]{display:none}.faithful-lightbox-backdrop{cursor:url(/prototype/cursor.png?v=2) 32 13,pointer;background:#f2f2f0;border:0;position:absolute;inset:0}.faithful-lightbox-media{z-index:1;animation:faithful-lightbox-in .45s var(--prototype-ease) both;place-items:center;padding:3.5rem 7rem 4.5rem;display:grid;position:fixed;inset:0}.faithful-lightbox-content{place-items:center;gap:.75rem;max-width:min(72vw,72rem);display:grid}.faithful-lightbox-media img{object-fit:contain;width:auto;max-width:min(72vw,72rem);height:auto;max-height:calc(100svh - 10rem);box-shadow:none;display:block}.faithful-lightbox-negative-cursor{z-index:4;opacity:0;pointer-events:none;filter:invert();background:url(/prototype/cursor.png?v=2) 50%/contain no-repeat;width:64px;height:26px;transition:opacity .12s;position:fixed;top:0;left:0;transform:translate(-100px,-100px)translate(-50%,-50%)}.faithful-lightbox-negative-cursor.is-visible{opacity:1}.faithful-lightbox-close{z-index:3;margin-top:25px;position:fixed;top:0;right:3.75vw}.faithful-lightbox-close,.faithful-lightbox-navigation{color:#111;cursor:url(/prototype/cursor.png?v=2) 32 13,pointer;background:0 0;border:0;padding:0}.faithful-lightbox-close{cursor:pointer;width:1.5rem;height:1.5rem;font-size:1.4rem;font-weight:200;line-height:1}.faithful-lightbox-navigation{z-index:3;cursor:pointer;width:3rem;height:3rem;font:2.2rem/1 Georgia,Times New Roman,serif;position:fixed;top:50%;transform:translateY(-50%)}.faithful-lightbox-navigation--previous{left:1rem}.faithful-lightbox-navigation--next{right:1rem}.faithful-lightbox-navigation-cursor{z-index:4;color:#111;letter-spacing:.08em;opacity:0;pointer-events:none;text-transform:uppercase;font:10px/1 SFMono-Regular,Consolas,Liberation Mono,monospace;transition:opacity .12s;position:fixed;top:0;left:0;transform:translate(-100px,-100px)translate(-50%,-50%)}.faithful-lightbox-navigation-cursor.is-visible{opacity:1}.faithful-lightbox-navigation-cursor.is-negative{color:#fff;mix-blend-mode:difference}.faithful-lightbox-caption{color:#111;text-align:center;text-transform:uppercase;margin:0;font:11px/1.45 SFMono-Regular,Consolas,Liberation Mono,monospace}@keyframes faithful-lightbox-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.faithful-progress,.faithful-project-title,.faithful-previous-project,.faithful-next-project{color:#111}.faithful-progress{z-index:26;color:#111;text-align:center;text-transform:uppercase;width:max-content;margin:0;font:11px/1.45 SFMono-Regular,Consolas,Liberation Mono,monospace;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}.faithful-progress.is-negative{color:#fff}.faithful-previous-project,.faithful-project-title,.faithful-next-project{letter-spacing:normal;min-width:0;max-width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:0 0;border:0;border-radius:0;padding:0;font:11px/1.45 SFMono-Regular,Consolas,Liberation Mono,monospace;overflow:hidden}.faithful-next-project[hidden],.faithful-previous-project[hidden]{display:none}.faithful-previous-project{justify-self:start}.faithful-project-title{text-transform:uppercase;justify-self:center;margin:0}.faithful-project-title[hidden]{display:none}.faithful-next-project{justify-self:end}[data-view=project][data-variant=A] .prototype-switcher,[data-view=project][data-variant=A] .prototype-state{display:none}.faithful-stage[data-layout=stack]{cursor:url(/prototype/cursor.png?v=2) 32 13,auto}.deck-card,.guided-card{top:var(--card-y,50%);left:var(--card-x,50%);width:fit-content;height:fit-content;transition:opacity .24s ease, transform .7s var(--prototype-ease);background:0 0;border:0;place-items:center;margin:0;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.deck-card img,.guided-card img{object-fit:contain;width:auto;max-width:min(78vw,64rem);height:auto;max-height:72svh;box-shadow:0 1.5rem 4rem #00000014}.deck-card[data-position=current],.deck-card[data-position=revealed]{visibility:visible;opacity:1;transform:translate(-50%,-50%)scale(1)}.deck-card,.deck-card img{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.deck-card img{pointer-events:none;transition:max-width .8s var(--prototype-ease), max-height .8s var(--prototype-ease)}.faithful-stage[data-layout=gallery] .deck-card{top:var(--grid-y);left:var(--grid-x);width:var(--grid-width);height:var(--grid-height);pointer-events:auto;cursor:none;transition:top .8s var(--prototype-ease), left .8s var(--prototype-ease), opacity .24s ease, transform .8s var(--prototype-ease);overflow:hidden;z-index:1!important}.faithful-stage[data-layout=gallery][data-skip-gallery-transition=true] .deck-card{transition:none}.faithful-stage[data-layout=gallery] .deck-card img{max-width:none;max-height:none;box-shadow:none;object-fit:cover;display:block;width:var(--grid-width)!important;height:var(--grid-height)!important}.faithful-stage[data-layout=gallery]{cursor:url(/prototype/cursor.png?v=2) 32 13,auto;overflow:hidden}.faithful-gallery-preview{z-index:20;top:var(--preview-y,50%);left:var(--preview-x,76%);opacity:0;pointer-events:none;width:min(26vw,360px);transform:translate(-50%, -50%) translate(var(--preview-shift-x,0), var(--preview-shift-y,0)) scale(.92);margin:0;transition:opacity .12s,transform 70ms ease-out;position:fixed}.faithful-gallery-preview.is-landscape{width:min(40vw,520px)}.faithful-gallery-preview.is-visible{opacity:1;transform:translate(-50%, -50%) translate(var(--preview-shift-x,0), var(--preview-shift-y,0)) scale(1)}.faithful-gallery-preview img{object-fit:contain;width:100%;height:auto;display:block}.faithful-gallery-preview p{color:#111;text-align:center;text-transform:uppercase;margin:8px 0 0;font:10px/1.3 SFMono-Regular,Consolas,Liberation Mono,monospace}.faithful-crew{z-index:3;overscroll-behavior:contain;text-align:left;text-transform:uppercase;cursor:url(/prototype/cursor.png?v=2) 32 13,auto;width:min(300px,50vw - clamp(170px,15.625vw,220px) - 15px);max-height:calc(100svh - 10rem);font:11px/1.45 SFMono-Regular,Consolas,Liberation Mono,monospace;position:fixed;top:50%;left:max(24px,50vw - clamp(170px,15.625vw,220px) - 291px);overflow:auto;transform:translateY(-50%)}.faithful-crew h2{color:#aaa;font:inherit;white-space:nowrap;min-height:1.45em;margin:0 0 13px}.faithful-crew__client{margin-bottom:22px}.faithful-crew__client h2{margin-bottom:5px}.faithful-crew__client p,.faithful-crew ul{margin:0}.faithful-crew__client p{overflow-wrap:anywhere;min-height:1.45em}.faithful-crew ul{padding:0;list-style:none}.faithful-crew li{white-space:nowrap;min-height:1.45em}.faithful-crew [data-faithful-crew-type].is-typing:after{color:#aaa;content:"▌";margin-left:.15em;animation:.65s step-end infinite faithful-navigation-caret;position:absolute}.faithful-footer.is-variant-d .faithful-project-title{display:none}.faithful-footer.is-variant-d{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.faithful-footer.is-variant-d .faithful-previous-project{grid-column:1;justify-self:start}.faithful-footer.is-variant-d .faithful-next-project{grid-column:2;justify-self:end}.faithful-open-cursor{color:#fff;letter-spacing:.08em;opacity:0;pointer-events:none;text-transform:uppercase;z-index:31;justify-content:center;align-items:center;font:10px/1 SFMono-Regular,Consolas,Liberation Mono,monospace;transition:opacity .16s;display:flex;position:fixed;top:0;left:0;transform:translate(-100px,-100px)translate(-50%,-50%)}.faithful-open-cursor.is-visible{opacity:1}.faithful-negative-cursor{color:#111;z-index:31;letter-spacing:.08em;opacity:0;pointer-events:none;text-transform:uppercase;justify-content:center;align-items:center;font:10px/1 SFMono-Regular,Consolas,Liberation Mono,monospace;transition:opacity .16s;display:flex;position:fixed;top:0;left:0;transform:translate(-100px,-100px)translate(-50%,-50%)}.faithful-negative-cursor.is-visible{opacity:1}.faithful-negative-cursor.is-negative{color:#fff;mix-blend-mode:difference}.faithful-previous-project.is-typing:after,.faithful-next-project.is-typing:after{color:#aaa;content:"▌";margin-left:.15em;animation:.65s step-end infinite faithful-navigation-caret}@keyframes faithful-navigation-caret{50%{opacity:0}}@media (hover:hover) and (pointer:fine){body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .prototype-app,body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .prototype-app *{cursor:none}body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .project-logo,body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .project-logo *,body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .project-menu,body.prototype-project-open:has(.faithful-stage[data-layout=stack]) .project-menu *{cursor:pointer}.faithful-lightbox-media img:hover,.faithful-stage[data-layout=stack] .deck-card:hover{cursor:none}}@media (width>=701px) and (hover:hover) and (pointer:fine){.faithful-lightbox-navigation{z-index:2;cursor:none;width:0;height:auto;font-size:0;position:fixed;top:0;bottom:0;transform:none}.faithful-lightbox-navigation-arrow{color:#111;cursor:pointer;pointer-events:auto;font:2.2rem/1 Georgia,Times New Roman,serif;position:fixed;top:50%;transform:translateY(-50%)}.faithful-lightbox-navigation--previous{width:37.5vw;left:0}.faithful-lightbox-navigation--previous .faithful-lightbox-navigation-arrow{left:1rem}.faithful-lightbox-navigation--next{width:37.5vw;right:0}.faithful-lightbox-navigation--next .faithful-lightbox-navigation-arrow{right:1rem}}.deck-card[data-position=hidden],.guided-card[data-position=hidden]{z-index:0;visibility:hidden;opacity:0;pointer-events:none}.guided-header,.editorial-header{z-index:25;padding:1rem var(--prototype-gutter);justify-content:space-between;align-items:flex-start;display:flex;position:fixed;top:0;left:0;right:0}.guided-header h1,.editorial-header h1{margin:0;font-size:1rem;font-weight:500}.eyebrow{color:#666;text-transform:uppercase;margin:0 0 .15rem;font-size:.6rem}.guided-stage{grid-template-columns:16vw 1fr 16vw;display:grid}.guided-zone{z-index:10;color:#111;cursor:pointer;background:0 0;border:0;position:relative}.guided-zone span{font-size:1.2rem;position:absolute;top:50%}.guided-zone--previous span{left:var(--prototype-gutter)}.guided-zone--next span{right:var(--prototype-gutter)}.guided-deck{position:relative}.guided-card[data-position=current]{z-index:3;opacity:1;transform:translate(-50%,-50%)scale(1)}.guided-card[data-position=previous]{z-index:2;opacity:.2;transform:translate(-50%,-50%)scale(.94)}.guided-end{text-align:center;width:min(48rem,66vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.guided-end p,.guided-end h2{margin:0}.guided-end h2{margin-bottom:1rem;font-size:clamp(2rem,5vw,5rem);font-weight:400}.guided-end img{object-fit:cover;width:100%;max-height:52svh}.guided-end button{cursor:pointer;background:0 0;border:0;border-bottom:1px solid;margin-top:1rem;padding:0}.guided-footer{z-index:25;right:var(--prototype-gutter);bottom:1.2rem;left:var(--prototype-gutter);grid-template-columns:1fr auto;align-items:center;gap:.5rem 1rem;font-size:.6rem;display:grid;position:fixed}.guided-footer p{margin:0}.progress-track{background:#ccc;grid-column:1/-1;height:1px;overflow:hidden}.progress-track span{transform-origin:0;width:100%;height:100%;transition:transform .5s var(--prototype-ease);background:#111;display:block;transform:scaleX(.11)}.variant-c{background:#fff;padding-top:10rem}.variant-c .editorial-header{-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);background:#ffffffeb}.editorial-sequence{gap:clamp(7rem,18vw,18rem);padding-bottom:20vh;display:grid}.editorial-sequence figure,.editorial-next{margin:0}.editorial-sequence img{width:100%;height:auto}.editorial-contained{width:min(48vw,38rem);margin-inline:auto!important}.editorial-first img{view-transition-name:project-cover}.editorial-wide{width:min(88vw,90rem);margin-inline:auto!important}.editorial-diptych{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1rem,4vw,4rem);width:min(80vw,78rem);margin-inline:auto;display:grid}.editorial-diptych--staggered figure:last-child{margin-top:18vh}.editorial-offset{width:min(38vw,32rem);margin-left:12vw!important}.editorial-full img{object-fit:contain;max-height:94svh}.editorial-next{min-height:90svh;padding:8vh var(--prototype-gutter) 7rem;color:#fff;background:#111;align-content:end;display:grid;position:relative}.editorial-next p,.editorial-next h2{z-index:2;margin:0;position:relative}.editorial-next h2{font-size:clamp(3rem,10vw,10rem);font-weight:400}.editorial-next img{object-fit:cover;opacity:.42;width:100%;height:100%;position:absolute;inset:0}::view-transition-group(project-cover){animation-duration:.85s;animation-timing-function:var(--prototype-ease)}@media (width<=700px),(width<=900px) and (hover:none) and (pointer:coarse){.index-intro{gap:.5rem;margin-bottom:12vh;display:grid}.project-grid{grid-template-columns:1fr 1fr;gap:6rem .75rem;display:grid}.project-card,.project-card--1,.project-card--2,.project-card--3,.project-card--4,.project-card--5,.project-card--6{grid-column:auto;margin-top:0}.project-card:nth-child(2n){margin-top:5rem}.project-card span{display:grid}.prototype-state{display:none}.prototype-switcher{bottom:.75rem}.deck-card img,.guided-card img{max-width:calc(100vw - 2rem);max-height:calc(100svh - 7rem)}.faithful-stage,.guided-stage{width:100vw;min-height:100svh}.faithful-lightbox-media{padding:3.5rem 1rem 4.5rem}.faithful-lightbox-content{width:100%;max-width:none}.faithful-lightbox-media img{max-width:calc(100vw - 2rem);max-height:calc(100svh - 7rem)}.project-menu{top:var(--site-menu-top);right:14px}.faithful-lightbox-close{z-index:4;margin-top:24px;right:20px}.faithful-lightbox-navigation{z-index:2;appearance:none;-webkit-tap-highlight-color:transparent;width:50vw;height:auto;box-shadow:none;touch-action:manipulation;outline:none;top:0;bottom:0;transform:none}.faithful-lightbox-navigation:active,.faithful-lightbox-navigation:focus{box-shadow:none;background:0 0;outline:none}.faithful-lightbox-navigation--previous{left:0}.faithful-lightbox-navigation--next{right:0}.faithful-lightbox-navigation-arrow{display:none}.faithful-lightbox-caption{z-index:4;width:max-content;max-width:calc(100vw - 6rem);margin:0;font-size:11px;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.faithful-footer{height:3.75rem;padding:0 14px 1rem}.faithful-previous-project,.faithful-next-project{position:static}.faithful-progress{bottom:1rem}.faithful-project-title{white-space:nowrap;font-size:.58rem;display:block;position:static}.faithful-progress-track{background:#1111111f;height:1px;display:block;position:absolute;bottom:0;left:0;right:0}.faithful-progress-track span{transform-origin:0;width:100%;height:100%;transition:transform .35s var(--prototype-ease);background:#111;display:block;transform:scaleX(.1)}.faithful-stage[data-layout=gallery] .deck-card{cursor:pointer;transition:top .62s var(--prototype-ease), left .62s var(--prototype-ease), opacity .2s ease, transform .62s var(--prototype-ease)}.faithful-stage[data-layout=gallery] .deck-card img{object-fit:cover}.faithful-gallery-preview,.faithful-open-cursor,.faithful-negative-cursor{display:none}.faithful-crew{width:min(34vw,132px);font-size:10px;top:50%;left:clamp(12px,4vw,18px);transform:translateY(-50%)}.faithful-crew h2{margin-bottom:10px}.faithful-crew__client{margin-bottom:20px}.faithful-footer.is-variant-d{height:4rem;padding-inline:14px}.faithful-footer.is-variant-d .faithful-previous-project,.faithful-footer.is-variant-d .faithful-next-project{white-space:normal;max-width:42vw;font-size:9px}.faithful-footer.is-variant-d .faithful-next-project{text-align:right}.guided-header,.editorial-header{padding:.75rem 1rem}.guided-stage{grid-template-columns:12vw 1fr 12vw}.guided-zone span{display:none}.guided-footer{bottom:3.75rem}.guided-footer p{visibility:hidden}.editorial-sequence{gap:7rem}.editorial-contained,.editorial-wide,.editorial-offset{width:auto;margin-inline:1rem!important}.editorial-offset{margin-right:18vw!important}.editorial-diptych{align-items:start;gap:.5rem;width:auto;margin-inline:1rem}.editorial-diptych--staggered figure:last-child{margin-top:5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}}
