.project-wall-section{--project-wall-top-fade-height: clamp(170px, 22vh, 320px);--project-wall-bottom-fade-height: var(--project-wall-top-fade-height);--project-wall-bottom-space: clamp(420px, 48vh, 580px);--project-wall-bottom-fade-offset: 0px;position:relative;z-index:9;margin-top:0;padding:0;background:var(--dark-section-bg);color:#fff;overflow:clip;isolation:isolate}.project-wall-section:before,.project-wall-section:after{position:sticky;left:0;right:0;z-index:32;display:block;height:var(--project-wall-top-fade-height);margin-inline:calc(50% - 50vw);content:"";pointer-events:none}.project-wall-section:before{top:-1px;margin-bottom:calc(var(--project-wall-top-fade-height) * -1);background:linear-gradient(180deg,var(--dark-section-bg) 0%,rgba(var(--dark-section-rgb),.96) 12%,rgba(var(--dark-section-rgb),.68) 42%,rgba(var(--dark-section-rgb),.24) 72%,rgba(var(--dark-section-rgb),.04) 92%,rgba(var(--dark-section-rgb),0) 100%);transition:opacity .18s var(--ease-out)}.project-wall-section:after{display:none}.project-wall-inner{position:relative;z-index:10;width:calc(100vw - clamp(28px,3vw,64px));margin-inline:auto;padding-bottom:var(--project-wall-bottom-space)}.project-wall-inner:after{position:absolute;right:calc(50% - 50vw);bottom:var(--project-wall-bottom-fade-offset);left:calc(50% - 50vw);z-index:32;height:var(--project-wall-bottom-fade-height);content:"";pointer-events:none;background:linear-gradient(180deg,rgba(var(--dark-section-rgb),0) 0%,rgba(var(--dark-section-rgb),.04) 8%,rgba(var(--dark-section-rgb),.24) 28%,rgba(var(--dark-section-rgb),.68) 58%,rgba(var(--dark-section-rgb),.96) 88%,var(--dark-section-bg) 100%);transition:opacity .18s var(--ease-out)}.project-wall-inner:has(.project-wall-item:hover):after,.project-wall-inner:has(.project-wall-item:active):after,.project-wall-inner:has(.project-wall-item:focus-within):after{opacity:0}.project-wall-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:clamp(14px,1.45vw,24px);transition:z-index 0ms linear .18s}.project-wall-grid[data-columns="1"]{grid-template-columns:minmax(0,1fr)}.project-wall-grid[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.project-wall-grid[data-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.project-wall-inner:has(.project-wall-item:hover) .project-wall-grid,.project-wall-inner:has(.project-wall-item:active) .project-wall-grid,.project-wall-inner:has(.project-wall-item:focus-within) .project-wall-grid{z-index:10;transition-delay:0ms}.project-wall-column{display:grid;gap:clamp(14px,1.45vw,24px);min-width:0;will-change:transform}.project-wall-column:nth-child(2){margin-top:clamp(176px,20vh,286px)}.project-wall-column:nth-child(3){margin-top:clamp(78px,10vh,168px)}.project-wall-column:nth-child(4){margin-top:clamp(286px,30vh,440px)}.project-wall-item{position:relative;display:block;aspect-ratio:3 / 4;margin:0;overflow:hidden;background:#05060c;isolation:isolate}.project-wall-slot-placeholder{visibility:hidden;pointer-events:none}.project-wall-item img{display:block;width:100%;height:100%;object-fit:cover;opacity:.54;filter:saturate(.58) contrast(1.05) brightness(.38);transform:scale(1.02);transition:transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),opacity .9s cubic-bezier(.16,1,.3,1)}.project-wall-item figcaption{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:clamp(8px,.9vw,13px);padding:clamp(18px,2vw,30px);background:linear-gradient(180deg,#0000,#0000003d 28%,#000000d1,#000000fa),linear-gradient(0deg,#000000f5,#000000d1 32%,#0000003d 68%,#0000);opacity:0;transition:opacity .36s var(--ease-out);pointer-events:none}.project-wall-item p{margin:0;color:#ffffffdb;font-family:var(--font-sans);font-size:clamp(15px,1.06vw,20px);line-height:1.12;font-weight:400;letter-spacing:-.04em;transform:translateY(10px);transition:transform .36s var(--ease-out)}.project-wall-item h3{margin:0;transform:translateY(10px);transition:transform .36s var(--ease-out)}.project-wall-item .project-wall-title{max-width:18ch;color:#fff;font-family:var(--title-font);font-size:var(--title-card-size);font-weight:var(--title-card-weight);line-height:var(--title-card-line);letter-spacing:var(--title-card-tracking)}.project-wall-tags{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}.project-wall-tag{display:inline-flex;align-items:center;max-width:100%;padding:5px 9px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#000;color:#ffffffc7;font-family:var(--font-mono);font-size:clamp(8.6px,.52vw,10px);font-weight:650;line-height:1.1;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.project-wall-item .project-wall-tags{transform:translateY(10px);transition:transform .36s var(--ease-out)}.project-wall-item .project-wall-description{color:#ffffffc2;font-size:clamp(12px,.78vw,15px);font-weight:400;line-height:1.34;letter-spacing:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden}.project-wall-item:hover img{opacity:1;filter:saturate(1) contrast(1.08) brightness(1);transform:scale(1.08)}.project-wall-item:hover,.project-wall-item:active,.project-wall-item:focus-within{z-index:12}.project-wall-item:focus{outline:none}.project-wall-item:focus-visible{outline:1px solid rgba(255,255,255,.42);outline-offset:3px}.project-wall-item.is-lit img{opacity:1;filter:saturate(1) contrast(1.08) brightness(1)}.project-wall-item.is-lit{z-index:3}.project-wall-item:hover,.project-wall-item:active,.project-wall-item:focus-within,.project-wall-item.is-lit:hover,.project-wall-item.is-lit:active,.project-wall-item.is-lit:focus-within{z-index:12}.project-wall-item:hover figcaption,.project-wall-item:active figcaption,.project-wall-item:focus-within figcaption,.project-wall-item:focus-visible figcaption{opacity:1}.project-wall-item:hover p,.project-wall-item:active p,.project-wall-item:focus-within p,.project-wall-item:focus-visible p,.project-wall-item:hover h3,.project-wall-item:active h3,.project-wall-item:focus-within h3,.project-wall-item:focus-visible h3,.project-wall-item:hover .project-wall-tags,.project-wall-item:active .project-wall-tags,.project-wall-item:focus-within .project-wall-tags,.project-wall-item:focus-visible .project-wall-tags{transform:translateY(0)}html.project-wall-viewer-open,html.project-wall-viewer-open body{overflow:hidden}.project-wall-viewer{position:fixed;inset:0;z-index:5000;width:100vw;max-width:none;height:100vh;height:100svh;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:#000;color:#fff}.project-wall-viewer::backdrop{background:#000;backdrop-filter:none;-webkit-backdrop-filter:none}.project-wall-viewer-panel{position:relative;display:block;width:100%;height:100%;max-height:none;overflow:hidden;border:0;border-radius:0;background:#000;box-shadow:none;transform-origin:center bottom}.project-wall-viewer[open] .project-wall-viewer-panel,.project-wall-viewer.is-open .project-wall-viewer-panel{animation:projectWallViewerIn .26s var(--ease-out) both}.project-wall-viewer-close{position:absolute;top:10px;right:10px;z-index:4;display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#000000b3;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.project-wall-viewer-close:before,.project-wall-viewer-close:after{position:absolute;width:18px;height:2px;border-radius:999px;background:#fff;content:""}.project-wall-viewer-close:before{transform:rotate(45deg)}.project-wall-viewer-close:after{transform:rotate(-45deg)}.project-wall-viewer-close:focus-visible{outline:1px solid rgba(255,255,255,.72);outline-offset:3px}.project-wall-viewer-figure{display:grid;width:100%;height:100%;max-height:none;grid-template-rows:minmax(0,1fr) auto;margin:0;overflow:hidden;background:#000}.project-wall-viewer-media{display:grid;width:100%;min-width:0;min-height:0;height:auto;max-height:none;place-items:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.12);background:#000}.project-wall-viewer-media img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center center;opacity:1;filter:none;transform:none;transition:none}.project-wall-viewer-figure>figcaption{position:static;inset:auto;z-index:auto;display:flex;max-height:none;flex:0 0 auto;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:14px;padding-top:clamp(20px,5.6vw,30px);padding-right:max(clamp(22px,6vw,34px),env(safe-area-inset-right));padding-bottom:max(clamp(24px,6.6vw,36px),env(safe-area-inset-bottom));padding-left:max(clamp(22px,6vw,34px),env(safe-area-inset-left));overflow:visible;background:#000;opacity:1;pointer-events:auto}.project-wall-viewer .project-wall-title{max-width:none;margin:0;color:#fff;font-family:var(--title-font);font-size:var(--title-card-viewer-size);font-weight:var(--title-card-weight);line-height:1.04;letter-spacing:var(--title-card-tracking);transform:none}.project-wall-viewer .project-wall-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;transform:none}.project-wall-viewer .project-wall-tag{display:inline-flex;align-items:center;max-width:100%;padding:6px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#000;color:#fffc;font-family:var(--font-mono);font-size:.68rem;font-weight:650;line-height:1.1;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.project-wall-viewer .project-wall-description{display:block;margin:0;overflow:visible;color:#fffc;font-family:var(--font-sans);font-size:clamp(1rem,4.05vw,1.1rem);font-weight:400;line-height:1.5;letter-spacing:0;-webkit-line-clamp:unset;-webkit-box-orient:initial;transform:none}.project-wall-viewer .project-wall-title,.project-wall-viewer .project-wall-tags,.project-wall-viewer .project-wall-description{transition:none}.project-wall-item.has-mobile-viewer{cursor:zoom-in}.project-wall-item.is-viewer-open{cursor:zoom-out}@keyframes projectWallViewerIn{0%{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.project-wall-viewer[open] .project-wall-viewer-panel,.project-wall-viewer.is-open .project-wall-viewer-panel{animation:none}}@media(max-width:1920px){.project-wall-inner{width:calc(100vw - clamp(28px,3vw,64px))}}@media(max-width:991px){.project-wall-section{--project-wall-top-fade-height: 84px;--project-wall-bottom-fade-height: 96px;--project-wall-bottom-space: clamp(118px, 30vw, 132px);--project-wall-bottom-fade-offset: clamp(56px, 14vw, 64px);margin-top:clamp(56px,14vw,64px);padding:0}.project-wall-section:before{height:var(--project-wall-top-fade-height);margin-bottom:calc(var(--project-wall-top-fade-height) * -1)}.project-wall-inner:after{bottom:var(--project-wall-bottom-fade-offset);height:var(--project-wall-bottom-fade-height)}.project-wall-inner{width:calc(100vw - 44px);margin-inline:auto}.project-wall-inner:has(.project-wall-item:hover):after,.project-wall-inner:has(.project-wall-item:active):after,.project-wall-inner:has(.project-wall-item:focus-within):after{opacity:1}.project-wall-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}.project-wall-column{display:contents;gap:12px;margin-top:0}.project-wall-item{aspect-ratio:3 / 4;min-width:0;will-change:transform}.project-wall-item img,.project-wall-item:hover img,.project-wall-item:active img,.project-wall-item:focus-within img,.project-wall-item.is-lit img{transform:none}.project-wall-item figcaption{padding:14px;gap:7px;opacity:0}.project-wall-item p{font-size:13px;line-height:1.08}.project-wall-item .project-wall-title{max-width:16ch;font-size:var(--title-card-compact-size);line-height:1}.project-wall-item .project-wall-tags{gap:4px}.project-wall-item .project-wall-tag{padding:4px 7px;font-size:7.1px;letter-spacing:.055em}.project-wall-item .project-wall-description{font-size:10px;line-height:1.22;-webkit-line-clamp:4}.project-wall-item:active figcaption{opacity:1}.project-wall-item:active p,.project-wall-item:active h3,.project-wall-item:active .project-wall-tags{transform:translateY(0)}}.selected-work-section{--project-stack-top: clamp(48px, 6vh, 72px);position:relative;z-index:8;isolation:isolate;scroll-margin-top:82px;padding:clamp(52px,7vh,96px) 0 clamp(54px,6vh,92px);overflow:visible;background:var(--dark-section-bg);color:#fff}.selected-work-inner{width:min(2320px,calc(100vw - clamp(24px,2vw,48px)));margin:0 auto}.project-feature{position:relative;width:100%;margin:0 auto;padding-bottom:clamp(24px,3.4vh,44px);background:var(--dark-section-bg);background-color:var(--dark-section-bg);color:#fff}.project-stack{position:relative;display:grid;gap:clamp(62px,8vh,112px);margin-top:0;padding-bottom:0}.project-stack .project-feature{position:relative;top:auto}.project-stack .project-feature:nth-child(1){z-index:1}.project-stack .project-feature:nth-child(2){z-index:2}.project-stack .project-feature:nth-child(3){z-index:3}.project-stack .project-feature+.project-feature{margin-top:0}.project-stack .project-feature:last-child{padding-bottom:clamp(8px,1vh,12px)}@media(min-width:992px){.selected-work-section.is-stack-enhanced{--project-stack-top: clamp(56px, 7vh, 84px)}.selected-work-section.is-stack-enhanced .project-stack{gap:0;padding-bottom:clamp(96px,14vh,168px)}.selected-work-section.is-stack-enhanced .project-feature{--project-scale: 1;--project-stack-offset: 0px;position:sticky;top:calc(var(--project-stack-top) + var(--project-stack-offset));transform:translateZ(0) scale(var(--project-scale));transform-origin:center top;will-change:transform}.selected-work-section.is-stack-enhanced .project-feature:nth-child(1){--project-stack-offset: 0px}.selected-work-section.is-stack-enhanced .project-feature:nth-child(2){--project-stack-offset: clamp(22px, 2vh, 34px);margin-top:clamp(500px,58vh,680px)}.selected-work-section.is-stack-enhanced .project-feature:nth-child(3){--project-stack-offset: clamp(44px, 4vh, 68px);margin-top:clamp(280px,34vh,400px)}}.project-media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;border:0;background:var(--dark-section-bg);background-color:var(--dark-section-bg);color:inherit;text-decoration:none}.project-media:after{position:absolute;inset:0;z-index:2;content:"";pointer-events:none;background:transparent;box-shadow:none}.project-media video,.project-media img{display:block;width:100%;height:100%;border:0;background:var(--dark-section-bg);background-color:var(--dark-section-bg);object-fit:cover;opacity:1;transform:scale(1);transform-origin:center;filter:saturate(.94) contrast(1.05);transition:transform .7s cubic-bezier(.22,1,.36,1),filter .7s cubic-bezier(.22,1,.36,1)}.project-media .project-poster-pic{display:block;width:100%;height:100%}.project-media video{position:absolute;inset:0;background:transparent}.project-media:hover video,.project-media:hover img{filter:saturate(1.03) contrast(1.08)}.project-feature-main{margin-top:0}.project-media-large{width:100%;margin:0 auto}.project-meta{display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);align-items:start;column-gap:clamp(16px,2vw,32px);row-gap:clamp(8px,1vh,12px);padding-top:18px;color:#ffffff85;font-family:var(--font-sans);font-size:clamp(17px,1.28vw,22px);line-height:1.22;background:var(--dark-section-bg);background-color:var(--dark-section-bg);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.project-meta h2,.project-meta h3{max-width:none;margin:0;color:#fff;font-family:inherit;font-size:clamp(20px,1.55vw,28px);line-height:1.08;font-weight:400;letter-spacing:-.045em;white-space:nowrap;grid-column:1;grid-row:1}.project-feature-tags{grid-column:2;grid-row:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0;padding:0;list-style:none}.project-feature-tags .project-wall-tag{display:inline-flex;align-items:center;min-height:28px;max-width:100%;padding:6px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#000;color:#ffffffdb;font-family:var(--font-mono);font-size:clamp(10px,.64vw,12px);font-weight:650;line-height:1;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.project-meta p{margin:0;color:#ffffff85;font:inherit;font-weight:400;letter-spacing:-.04em;text-align:right;white-space:nowrap}.project-meta .project-summary{grid-column:1 / -1;grid-row:2;max-width:min(920px,66ch);padding-top:2px;color:#ffffff94;font-size:clamp(15px,1.02vw,18px);line-height:1.38;letter-spacing:0;text-align:left;white-space:normal}.project-feature-small{width:100%;margin:0 auto}.project-wall-impact{position:relative;z-index:9;min-height:clamp(720px,96svh,1060px);padding:clamp(210px,24vh,310px) 0 clamp(130px,14vh,180px);background:var(--dark-section-bg);color:#fff;isolation:isolate;overflow:clip}.project-impact-inner{width:min(1640px,calc(100vw - clamp(44px,8vw,144px)));min-height:calc(clamp(720px,96svh,1060px) - clamp(144px,20vh,230px));margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:clamp(86px,13vh,160px);text-align:center}.project-impact-title{position:relative;max-width:1260px;margin:0 auto -.18em;color:#585a61;font-family:var(--title-font);font-size:var(--title-impact-size);font-weight:var(--title-impact-weight);line-height:var(--title-impact-line);letter-spacing:var(--title-impact-tracking);text-wrap:balance;overflow:visible;padding-bottom:.28em}.project-impact-title:before{display:block;content:attr(data-reflection-line-1) "\a" attr(data-reflection-line-2);white-space:pre-line;color:currentColor}.project-impact-title:after{display:none;content:none}.project-impact-copy{width:min(100%,1060px);margin-inline:auto;color:#fff}.project-impact-kicker{width:100%;max-width:none;margin:0 auto 22px;color:#ffffffdb;font-size:clamp(15px,1vw,18px);font-weight:600;line-height:1.2;letter-spacing:-.02em;text-align:center}.project-impact-text.lead{max-width:1060px;margin-inline:auto;color:#ffffffe6;font-size:clamp(26px,1.85vw,36px);line-height:1.18;letter-spacing:-.055em}.project-impact-copy a{display:inline-flex;margin-top:28px;color:#ffffff8a;font-size:17px;font-weight:400;line-height:1.2;text-decoration:underline;text-underline-offset:3px;transition:color .16s var(--ease-out),text-underline-offset .16s var(--ease-out)}.project-impact-copy a:hover{color:#fff;text-underline-offset:5px}@media(max-width:1920px){.project-meta{grid-template-columns:minmax(0,1fr);row-gap:5px}.project-meta h2,.project-meta h3{grid-column:1;grid-row:1;white-space:nowrap}.project-feature-tags{grid-column:1;grid-row:2;justify-content:flex-start}.project-meta .project-summary{grid-column:1;grid-row:3}}@media(max-width:991px){.selected-work-section{--project-stack-top: 48px;scroll-margin-top:96px;padding:48px 0 0}.selected-work-inner{width:calc(100vw - 44px)}.project-media-large,.project-feature-small{width:100%}.project-stack{gap:clamp(42px,7vh,68px);margin-top:0;padding-bottom:clamp(36px,8vh,76px)}.project-stack .project-feature:last-child{padding-bottom:8px}.project-stack .project-feature{top:auto;min-height:0}.project-stack .project-feature+.project-feature{margin-top:0}.project-stack .project-feature:nth-child(2){top:auto;margin-top:0}.project-stack .project-feature:nth-child(3){top:auto;min-height:0;margin-top:0}.project-meta{grid-template-columns:1fr;gap:8px;padding-top:14px;font-size:18px}.project-meta h2,.project-meta h3{white-space:normal;grid-column:auto;grid-row:auto}.project-meta p{grid-column:auto;grid-row:auto;text-align:left;white-space:normal}.project-meta .project-summary{max-width:none;padding-top:2px;font-size:16px;line-height:1.42}.project-wall-impact{min-height:min(620px,82svh);padding:56px 0 84px}.project-impact-inner{width:calc(100vw - 44px);min-height:calc(min(620px,82svh) - 56px);gap:42px;align-items:stretch}.project-impact-title{max-width:100%;width:100%;font-size:var(--title-impact-size-mobile);line-height:var(--title-section-line);letter-spacing:var(--title-impact-tracking);text-align:left;padding-bottom:.18em;margin-bottom:-.18em;margin-left:0;margin-right:0}.project-impact-copy{text-align:left}.project-impact-kicker{margin-bottom:16px;font-size:clamp(1.25rem,2.65vw,1.68rem);line-height:1.12;letter-spacing:-.028em;text-align:left}.project-impact-copy .lead{font-size:clamp(25px,7.2vw,32px);line-height:1.12}.project-impact-copy a{margin-top:22px;font-size:16px}}@media(min-width:992px)and (max-width:1920px){.selected-work-inner{width:min(1480px,calc(100vw - clamp(96px,10vw,220px)))}}@media(min-width:1921px){.selected-work-inner{width:min(1920px,calc(100vw - 72px))}.selected-work-inner{width:min(2320px,calc(100vw - 24px))}.project-feature,.project-feature-small{width:min(2280px,calc(100vw - clamp(24px,2vw,48px)),100%)}}
