.project-gallery{--gallery-gap:clamp(1.5rem, 3vw, 3rem);--gallery-height:clamp(22rem, 40vw, 32rem);background:#f1f0ed;padding-block:clamp(2rem,4vw,4rem) 1.25rem}.project-gallery__viewport{padding:.4rem var(--gutter) 1rem;overscroll-behavior-x:contain;overflow-anchor:none;scrollbar-width:none;scroll-behavior:auto;overflow:auto hidden}.project-gallery__viewport::-webkit-scrollbar{display:none}.project-gallery__track{width:max-content;display:flex}.project-gallery__set{align-items:start;gap:var(--gallery-gap);padding-right:var(--gallery-gap);flex:none;display:flex}.project-gallery__item{width:min(86vw, calc(var(--gallery-height) * var(--shot-ratio)));flex:none;min-width:0;margin:0}.project-gallery__open,.project-gallery__replica{width:100%;height:var(--gallery-height);color:#171717;cursor:zoom-in;background:#f1f0ed;border:0;border-radius:2px;padding:0;display:block;position:relative;overflow:hidden}.project-gallery__open>img,.project-gallery__replica>img{object-fit:contain;width:100%;height:100%;display:block}.project-gallery__open:focus-visible{outline-offset:4px;outline:2px solid #171717}.project-gallery__expand{color:#171717;opacity:0;background:#fff;border-radius:2px;place-items:center;width:2.75rem;height:2.75rem;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(4px - 50%));box-shadow:0 2px 12px #00000008}.project-gallery__expand svg{width:1.05rem;height:1.05rem;display:block}.project-gallery__open:hover .project-gallery__expand,.project-gallery__replica:hover .project-gallery__expand,.project-gallery__open:focus-visible .project-gallery__expand{opacity:1;transform:translate(-50%,-50%)}.project-gallery__item figcaption{color:#6f6e69;font-family:var(--body);text-align:center;justify-content:center;align-items:baseline;gap:.65rem;margin-top:.75rem;padding-inline:.75rem;font-size:.66rem;font-weight:400;line-height:1.5;display:flex}.project-gallery__item figcaption>span:last-child{font-variant-numeric:tabular-nums;flex-shrink:0;order:-1}.project-gallery__toolbar{font-family:var(--body);justify-content:space-between;align-items:center;gap:1rem;padding-top:.75rem;display:flex}.project-gallery__toolbar>p{color:#73726e;margin:0;font-size:.66rem;line-height:1.6}.project-gallery__motion-hint,.project-gallery__static-hint{margin-right:.35rem}.project-gallery__static-hint{display:none}.project-gallery__controls{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.project-gallery__controls button{color:#252525;width:44px;height:44px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;font-size:1.15rem;transition:border-color .2s,background .2s;display:inline-grid}.project-gallery__controls button:hover{background:#ffffff70;border-color:#d8d7d2}.project-gallery__controls button:focus-visible{outline-offset:2px;outline:1px solid #171717}.project-gallery__controls svg{width:18px;height:18px;display:block}.project-gallery__count{color:#73726e;white-space:nowrap;font-variant-numeric:tabular-nums;padding-inline:.4rem .7rem;font-size:.63rem}.project-lightbox{color:#171717;background:#eeedea;border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0}.project-lightbox[open]{flex-direction:column;display:flex}.project-lightbox::backdrop{background:#eeedea}.project-lightbox__bar{min-height:4.5rem;font-family:var(--body);background:#fafaf8;border-bottom:1px solid #deddd8;flex-shrink:0;justify-content:space-between;align-items:center;gap:1.5rem;padding:.9rem clamp(1rem,3vw,2.5rem);font-size:.73rem;display:flex}.project-lightbox__title{flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;min-width:0;display:flex}.project-lightbox__title>span:last-child{color:#777}.project-lightbox__actions{flex-shrink:0;align-items:center;gap:clamp(.75rem,2vw,2rem);display:flex}.project-lightbox button{min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.3rem .25rem;display:inline-flex}.project-lightbox button:focus-visible{outline-offset:4px;outline:1px solid}.project-lightbox__close{gap:.75rem}.project-lightbox__close>span:last-child{font-size:1.8rem;font-weight:300;line-height:1}.project-lightbox__viewport{overscroll-behavior:contain;flex:1;min-height:0;padding:clamp(.5rem,2vw,1.5rem);overflow:auto}.project-lightbox__viewport:focus-visible{outline-offset:-3px;outline:1px solid #888}.project-lightbox__canvas{width:min(100%,75rem);margin-inline:auto}.project-lightbox__canvas--zoomed{max-width:none}.project-lightbox__canvas>img{width:100%;height:auto;display:block}.project-lightbox__foot{min-height:3.75rem;font-family:var(--body);background:#fafaf8;border-top:1px solid #deddd8;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.3rem clamp(1rem,3vw,2.5rem);font-size:.65rem;display:flex}.project-lightbox__foot>p{color:#777;margin:0;line-height:1.6}.project-lightbox__foot>p>span{margin-inline:.4rem}.project-lightbox__navigation{align-items:center;gap:.5rem;display:flex}.project-lightbox__navigation>span{text-align:center;font-variant-numeric:tabular-nums;min-width:3.2rem}.project-lightbox__navigation button{font-size:1.15rem}@media (max-width:760px){.project-gallery{--gallery-height:clamp(19rem, 75vw, 26rem);--gallery-gap:1.25rem;padding-block:1.75rem 1rem}.project-gallery__item figcaption{margin-top:.65rem;font-size:.59rem}.project-gallery__expand{opacity:1;width:2.4rem;height:2.4rem;transform:translate(-50%,-50%)}.project-gallery__toolbar{align-items:flex-end;gap:.75rem;padding-top:.25rem}.project-gallery__toolbar>p{max-width:10rem;font-size:.59rem}.project-gallery__motion-hint{display:none}.project-gallery__count{padding-inline:.1rem .2rem;font-size:.58rem}.project-gallery__controls{gap:0}.project-lightbox__bar{gap:1rem;min-height:4rem;padding-block:.55rem;font-size:.65rem}.project-lightbox__title{flex-direction:column;gap:.2rem}.project-lightbox__close>span:first-child{display:none}.project-lightbox__foot{gap:.25rem;font-size:.58rem}.project-lightbox__foot>p{max-width:9rem}.project-lightbox__foot>p>span{margin-inline:.2rem}.project-lightbox__navigation{gap:0}}@media (prefers-reduced-motion:reduce){.project-gallery__copy,.project-gallery__motion,.project-gallery__motion-hint{display:none}.project-gallery__static-hint{display:inline}.project-gallery__expand,.project-gallery__controls button{transition:none}}
:where(.project-inquiry-trigger){color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.project-inquiry-trigger:focus-visible{outline-offset:6px;outline:2px solid #0a0a0a}.project-inquiry{color:#0a0a0a;width:100%;max-width:none;height:100dvh;max-height:none;font-family:var(--body,"neue-haas-grotesk-text", sans-serif);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0}.project-inquiry *,.project-inquiry :before,.project-inquiry :after{box-sizing:border-box}.project-inquiry[open]{justify-content:flex-end;display:flex}.project-inquiry::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0a0a59}.project-inquiry__panel{overscroll-behavior:contain;background:#fff;flex-direction:column;width:min(36rem,100%);height:100%;padding:2rem;animation:.28s cubic-bezier(.2,.7,.2,1) both project-inquiry-enter;display:flex;overflow-y:auto;box-shadow:-20px 0 60px #00000014}.project-inquiry__topline{justify-content:space-between;align-items:center;gap:1.5rem;min-height:2.5rem;margin-bottom:.8rem;display:flex}.project-inquiry__topline>span{color:#74776d;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem}.project-inquiry__close{color:#0a0a0a;cursor:pointer;width:2.5rem;height:2.5rem;font:inherit;background:0 0;border:0;place-items:center;margin-right:-.6rem;padding:0;display:grid}.project-inquiry__close>span{font-size:1.8rem;font-weight:300;line-height:1}.project-inquiry__title,.project-inquiry__success h2{font-family:var(--display,"neue-haas-grotesk-display", sans-serif);letter-spacing:-.055em;margin:0;font-size:clamp(2.8rem,4.4vw,3.5rem);font-weight:400;line-height:1}.project-inquiry__intro{color:#686b63;max-width:36ch;margin:.7rem 0 1.2rem;font-size:.88rem;line-height:1.65}.project-inquiry__reference{background:#f1f3ed;border:1px solid #e7eae1;align-items:baseline;gap:.75rem;padding:.65rem 1rem;display:flex}.project-inquiry__reference>span:first-child{color:#69725a;font-size:.65rem}.project-inquiry__reference>strong{font-family:var(--display);letter-spacing:-.025em;font-size:1.1rem;font-weight:400}.project-inquiry__reference>span:last-child{color:#5d654f;margin-left:auto;font-size:1rem}.project-inquiry__form{margin-top:1.1rem}.project-inquiry__form fieldset{border:0;min-width:0;margin:0;padding:0}.project-inquiry__field{margin:0 0 1rem}.project-inquiry__field>label{margin-bottom:.4rem;font-size:.68rem;font-weight:500;display:block}.project-inquiry__field>input,.project-inquiry__field>textarea{color:#0a0a0a;width:100%;font-family:var(--body);outline-offset:4px;background:#fff;border:0;border-bottom:1px solid #c8cbc2;border-radius:0;padding:.6rem 0;font-size:1rem;line-height:1.5;display:block}.project-inquiry__field>input{min-height:44px}.project-inquiry__field>textarea{resize:vertical;min-height:80px}.project-inquiry__field>input::placeholder,.project-inquiry__field>textarea::placeholder{color:#898c83;font-size:.85rem}.project-inquiry__field>input:focus,.project-inquiry__field>textarea:focus{border-bottom-color:#0a0a0a;outline:none;box-shadow:0 1px #0a0a0a}.project-inquiry__field>[aria-invalid=true]{border-bottom-color:#a13b2b}.project-inquiry__field-error{color:#a13b2b;margin:.55rem 0 0;font-size:.74rem;line-height:1.5}.project-inquiry__message-hint{color:#71766a;justify-content:space-between;gap:1rem;margin-top:.55rem;font-size:.59rem;line-height:1.5;display:flex}.project-inquiry__message-hint>span:last-child{flex-shrink:0}.project-inquiry__trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.project-inquiry__submit{color:#fff;width:100%;min-height:52px;font-family:var(--body);cursor:pointer;background:#0a0a0a;border:1px solid #0a0a0a;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;font-size:.78rem;line-height:1.4;transition:background .18s,border-color .18s;display:flex}.project-inquiry__submit>span:last-child{font-size:1.3rem;line-height:1}.project-inquiry__submit:hover{background:#424b34;border-color:#424b34}.project-inquiry__form fieldset:disabled{cursor:wait}.project-inquiry__form fieldset:disabled .project-inquiry__submit{opacity:.7;cursor:wait}.project-inquiry__form fieldset:disabled input,.project-inquiry__form fieldset:disabled textarea{opacity:.65}.project-inquiry__error{color:#8d3427;border:1px solid #c8968c;margin:1rem 0 0;padding:.9rem;font-size:.77rem;line-height:1.6}.project-inquiry__privacy{color:#74786f;margin:.85rem 0 0;font-size:.6rem;line-height:1.7}.project-inquiry__privacy a{color:inherit;text-underline-offset:3px}.project-inquiry__direct{flex-direction:column;gap:.7rem;margin-top:auto;padding-top:2rem;display:flex}.project-inquiry__direct>span{color:#767b6f;font-size:.64rem}.project-inquiry__direct>a{color:#0a0a0a;border-top:1px solid #d7dad1;justify-content:space-between;align-items:center;gap:1rem;padding-top:.7rem;font-size:.78rem;text-decoration:none;display:flex}.project-inquiry__direct>a>span{font-size:1.1rem}.project-inquiry__success{margin-top:clamp(3rem,9vh,6rem)}.project-inquiry__success-mark{color:#525f41;background:#f1f3ed;border:1px solid #d6dec9;place-items:center;width:3.3rem;height:3.3rem;margin-bottom:1.8rem;font-size:1.7rem;display:grid}.project-inquiry__success h2:focus{outline:none}.project-inquiry__success>p{color:#656c5d;margin:1.25rem 0 0;font-size:.93rem;line-height:1.7}.project-inquiry__success>.project-inquiry__receipt{font-size:.7rem}.project-inquiry__return{color:#0a0a0a;width:100%;font-family:var(--body);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0a0a0a;justify-content:space-between;align-items:center;gap:3rem;margin-top:2.5rem;padding:.9rem 0;font-size:.82rem;display:flex}.project-inquiry__return>span{font-size:1.3rem}.project-inquiry button:focus-visible,.project-inquiry a:focus-visible{outline-offset:4px;outline:2px solid #0a0a0a}.project-inquiry__sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes project-inquiry-enter{0%{opacity:.65;transform:translate(2.5rem)}to{opacity:1;transform:translate(0)}}@media (max-width:600px){.project-inquiry__panel{padding:1.2rem 1.5rem max(1.5rem, env(safe-area-inset-bottom))}.project-inquiry__topline{margin-bottom:1rem}.project-inquiry__intro{margin-bottom:1.25rem}.project-inquiry__form{margin-top:1.4rem}.project-inquiry__title{font-size:3.25rem}}@media (prefers-reduced-motion:reduce){.project-inquiry__panel{animation:none}.project-inquiry__submit{transition:none}}
