:root,body{--pf-color-black:#080808;--pf-color-black-soft:#0d0d0c;--pf-color-graphite-950:#17191a;--pf-color-graphite-900:#202324;--pf-color-graphite-800:#303435;--pf-color-graphite-700:#484d4e;--pf-color-graphite-600:#626869;--pf-color-graphite-500:#777e7f;--pf-color-graphite-200:#d8d4ca;--pf-color-ivory:#f4f2ed;--pf-color-muted-dark:#a7a49d;--pf-color-canvas:#e9e7e1;--pf-color-paper:#f8f7f2;--pf-color-paper-raised:#fffefa;--pf-color-rule:#d1cec5;--pf-color-rule-strong:#777570;--pf-color-signal:#d5c5a1;--pf-color-copper-700:#823817;--pf-color-copper-600:#a3471d;--pf-color-copper-500:#b95a28;--pf-color-copper-300:#e28a56;--pf-color-copper-soft:#f2ded1;--pf-color-copper-border:#c88968;--pf-color-danger:#9d2d25;--pf-color-danger-soft:#f8e2df;--pf-color-focus:#146c8e;--pf-color-focus-on-dark:#65c7eb;--pf-color-success:#326347;--pf-color-line-on-dark:#f4f2ed2e;--pf-font-public:Arial, Helvetica, sans-serif;--pf-font-admin:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--pf-font-mono:ui-monospace, "Cascadia Mono", "Segoe UI Mono", monospace;--pf-space-1:.25rem;--pf-space-2:.5rem;--pf-space-3:.75rem;--pf-space-4:1rem;--pf-space-5:1.5rem;--pf-space-6:2rem;--pf-space-7:3rem;--pf-space-8:4rem;--pf-space-9:6rem;--pf-layout-gutter:clamp(1.25rem, 3.35vw, 4rem);--pf-layout-wide:90rem;--pf-layout-work:76rem;--pf-reading-measure:72ch;--pf-control-min-height:3rem;--pf-touch-min-size:2.75rem;--pf-duration-fast:.14s;--pf-duration-base:.28s;--pf-ease-out:cubic-bezier(.22, .8, .2, 1);--pf-shadow-work:0 16px 38px #17191a14;--pf-shadow-dark:0 18px 48px #00000047;--graphite-950:var(--pf-color-graphite-950);--graphite-900:var(--pf-color-graphite-900);--graphite-800:var(--pf-color-graphite-800);--graphite-700:var(--pf-color-graphite-700);--graphite-600:var(--pf-color-graphite-600);--graphite-500:var(--pf-color-graphite-500);--graphite-200:var(--pf-color-graphite-200);--canvas:var(--pf-color-canvas);--paper:var(--pf-color-paper);--paper-raised:var(--pf-color-paper-raised);--rule:var(--pf-color-rule);--rule-strong:var(--pf-color-rule-strong);--copper-700:var(--pf-color-copper-700);--copper-600:var(--pf-color-copper-600);--copper-500:var(--pf-color-copper-500);--copper-300:var(--pf-color-copper-300);--copper-soft:var(--pf-color-copper-soft);--copper-border:var(--pf-color-copper-border);--danger:var(--pf-color-danger);--danger-soft:var(--pf-color-danger-soft);--focus:var(--pf-color-focus);--success:var(--pf-color-success);--shadow:var(--pf-shadow-work)}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/onest/cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/onest/latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}body.public-site{--pf-font-public:Onest, Arial, Helvetica, sans-serif;--pf-album-paper:#f5f5f1;--pf-album-soft:#e0e6e4;--pf-album-ink:#182024;--pf-album-muted:#626b6d;--pf-color-black:#121719;--pf-color-black-soft:#1c262b;--pf-color-graphite-950:#182024;--pf-color-graphite-700:#465256;--pf-color-graphite-600:#626b6d;--pf-color-graphite-200:#c9d0ce;--pf-color-ivory:#f5f5f1;--pf-color-muted-dark:#b9c5c7;--pf-color-canvas:#f5f5f1;--pf-color-paper:#f5f5f1;--pf-color-paper-raised:#fff;--pf-color-rule:#c9d0ce;--pf-color-signal:#c9cfcd;--pf-public-action-bg:var(--pf-color-ivory);--pf-public-action-text:var(--pf-color-graphite-950);--pf-public-action-hover:#fff;--pf-public-action-radius:3rem;--pf-public-action-height:3.5rem;--pf-public-display-leading:1.06;--pf-public-display-tracking:-.035em;--pf-public-motion-feedback:.22s;--pf-public-motion-ease:cubic-bezier(.16, 1, .3, 1);--pf-public-section-space:clamp(3rem, 5.5vw, 5rem);--pf-public-group-space:clamp(1.5rem, 3vw, 2.5rem)}:where(.projects-index,.case-contact){--pf-public-action-bg:var(--pf-color-graphite-950);--pf-public-action-text:var(--pf-color-ivory);--pf-public-action-hover:var(--pf-color-graphite-800)}.home-page{background:var(--pf-color-black)}.home-section{z-index:2;padding-block:clamp(5.5rem,8vw,8rem);position:relative}.home-section__heading{margin-bottom:clamp(3rem,5vw,5rem)}.home-section__heading--split{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);align-items:end;gap:clamp(2rem,6vw,7rem);padding-top:0;display:grid}.home-section__heading h2,.home-about__heading h2,.home-contact h2{letter-spacing:-.04em;text-wrap:balance;max-width:19ch;margin:0;font-size:clamp(3.1rem,5.4vw,6rem);font-weight:400;line-height:1.08}.home-section__heading>p,.home-contact__grid>div:first-child>p{max-width:38rem;margin:0;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65}.home-approach,.home-projects,.home-faq{color:var(--pf-color-graphite-950);background:var(--pf-color-canvas)}.home-approach :focus-visible,.home-projects :focus-visible,.home-faq :focus-visible{outline-color:var(--pf-color-focus)}.home-process{border-block:1px solid #17191a47;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.home-process li{flex-direction:column;min-height:15rem;padding:1.5rem clamp(1rem,2vw,2rem) 1.75rem;display:flex}.home-process li+li{border-left:1px solid #17191a3d}.home-process span{color:var(--pf-color-graphite-600);letter-spacing:.12em;margin-bottom:auto;font-size:.72rem}.home-process strong{letter-spacing:-.025em;max-width:14ch;font-size:clamp(1.35rem,2vw,2rem);font-weight:400;line-height:1.1}.home-process p{max-width:24ch;color:var(--pf-color-graphite-700);margin:.85rem 0 0;line-height:1.5}.home-services,.home-reviews,.home-contact{color:var(--pf-color-ivory);background:var(--pf-color-black-soft)}.home-services .home-section__heading--split,.home-reviews .home-section__heading--split{border-top-color:var(--pf-color-line-on-dark)}.home-services .home-section__heading>p,.home-reviews .home-section__heading>p,.home-contact__grid>div:first-child>p{color:var(--pf-color-muted-dark)}.home-service-list{border-bottom:1px solid var(--pf-color-line-on-dark)}.home-service-row{--home-service-image-width:clamp(13rem, 28vw, 29rem);isolation:isolate;grid-template-columns:var(--home-service-image-width) minmax(0, 1fr) 2.75rem;border-top:1px solid var(--pf-color-line-on-dark);min-height:18rem;color:var(--pf-color-ivory);align-items:center;gap:clamp(1.25rem,3vw,3rem);padding:3rem clamp(1.25rem,2.5vw,3rem) 3rem 0;text-decoration:none;display:grid;position:relative}.home-service-row__number{z-index:1;color:var(--pf-color-signal);padding-top:.6rem;font-size:.78rem;position:absolute;top:3rem;left:clamp(1.25rem,2.5vw,3rem)}.home-service-row h3{letter-spacing:-.035em;max-width:25ch;margin:0;font-size:clamp(1.6rem,2.8vw,3rem);font-weight:400;line-height:1.14}.home-service-row__copy{z-index:1;grid-column:2;min-width:0}.home-service-row__copy p{color:var(--pf-color-graphite-200);max-width:52ch;margin:1rem 0 0;font-size:.95rem;line-height:1.65}.home-service-row__preview{width:var(--home-service-image-width);pointer-events:none;margin:0;position:absolute;inset:0 auto 0 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 30%,#000b 65%,#0000 100%);mask-image:linear-gradient(90deg,#000 30%,#000b 65%,#0000 100%)}.home-service-row__preview img{object-fit:cover;filter:grayscale()brightness(.48);width:100%;height:100%;transition:transform .5s var(--pf-ease-out), filter .5s ease;display:block}.home-service-row__preview--drawing img{filter:grayscale()invert()brightness(.8)}.home-service-row__arrow{z-index:1;border:1px solid #70746f;border-radius:50%;grid-column:3;place-items:center;width:2.75rem;height:2.75rem;transition:color .18s,background .18s;display:grid}.home-service-row__arrow svg{stroke-width:1.3px;width:1.1rem;height:1.1rem}.home-service-row:is(:hover,:focus-visible) .home-service-row__arrow{color:#17191a;background:var(--pf-color-ivory);border-color:var(--pf-color-ivory)}.home-service-row:focus-visible .home-service-row__preview img{filter:grayscale(0)brightness(.65)}.home-service-row:focus-visible .home-service-row__preview--drawing img{filter:grayscale(0)invert()brightness(.9)}@media (hover:hover){.home-service-row:hover .home-service-row__preview img{filter:grayscale(0)brightness(.65)}.home-service-row:hover .home-service-row__preview--drawing img{filter:grayscale(0)invert()brightness(.9)}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.home-service-row:is(:hover,:focus-visible) .home-service-row__preview img{transform:scale(1.025)}}.home-section__text-link{min-height:var(--pf-touch-min-size);color:var(--pf-color-signal);letter-spacing:.035em;white-space:nowrap;justify-content:flex-start;align-items:center;font-size:.82rem;text-decoration:none;display:inline-flex}.home-section__text-link:after{content:"";transform-origin:0;width:2.5rem;height:1px;transition:transform var(--pf-duration-base) var(--pf-ease-out);background:currentColor;margin-left:.9rem}.home-section__text-link:hover:after,.home-section__text-link:focus-visible:after{transform:scaleX(1.35)}.home-projects .home-section__heading--split{border-top-color:#17191a4d}.home-projects .home-section__text-link,.home-about .home-section__text-link,.about-responsibility .home-section__text-link{color:var(--pf-color-graphite-950)}.home-about{color:var(--pf-color-ivory);background:var(--pf-color-black)}.home-about__grid{grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(3rem,6vw,7rem);display:grid}.home-about__portrait{margin:0}.home-about__portrait img{aspect-ratio:4/5;object-fit:cover;object-position:center top;filter:grayscale();background:0 0;width:100%}.home-about__portrait figcaption{color:var(--pf-color-muted-dark);letter-spacing:.08em;text-transform:uppercase;padding-top:1rem;font-size:.76rem}.home-about__copy{padding-top:0}.home-about__heading h2{max-width:20ch}.home-about__copy>p{max-width:44rem;color:var(--pf-color-muted-dark);font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.7}.home-about__copy .home-about__lead{color:var(--pf-color-ivory);letter-spacing:-.018em;margin-top:clamp(2rem,3vw,3rem);font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.45}.home-about__scope{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding-top:clamp(2.5rem,5vw,5rem);display:grid}.home-about__scope>div{border-top:1px solid var(--pf-color-line-on-dark);padding:1.5rem 1.5rem 1.5rem 0}.home-about__scope>div+div{border-left:1px solid var(--pf-color-line-on-dark);padding-left:1.5rem}.home-about__scope dt{color:var(--pf-color-muted-dark);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.85rem;font-size:.74rem}.home-about__scope dd{margin:0;line-height:1.55}.home-review-grid{border-bottom:1px solid var(--pf-color-line-on-dark);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,5vw,6rem);display:grid}.home-review{border-top:1px solid var(--pf-color-line-on-dark);flex-direction:column;min-height:24rem;margin:0;padding-block:clamp(2rem,4vw,4rem);display:flex}.home-review>p{letter-spacing:-.025em;max-width:30ch;margin:0;font-size:clamp(1.4rem,2vw,2rem);font-weight:400;line-height:1.3}.home-review footer{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-top:auto;padding-top:2.5rem;display:flex}.home-review footer strong{font-size:.95rem;font-weight:400}.home-review footer span{max-width:18rem;color:var(--pf-color-muted-dark);text-align:right;font-size:.78rem}.home-faq .home-section__heading--split{border-top-color:#17191a4d}.home-faq__list{border-bottom:1px solid #17191a40}.home-faq details{border-top:1px solid #17191a40}.home-faq summary{cursor:pointer;letter-spacing:-.018em;justify-content:space-between;align-items:center;gap:2rem;min-height:5.5rem;padding-block:1.35rem;font-size:clamp(1.15rem,2vw,1.75rem);font-weight:400;list-style:none;display:flex}.home-faq summary::-webkit-details-marker{display:none}.home-faq summary:after{content:"";width:1.1rem;height:1.1rem;transition:transform var(--pf-duration-base) var(--pf-ease-out);border-bottom:1px solid;border-right:1px solid;flex:none;transform:rotate(45deg)translate(-.2rem,-.2rem)}.home-faq details[open] summary:after{transform:rotate(225deg)translate(-.1rem,-.1rem)}.home-faq details>p{max-width:60ch;color:var(--pf-color-graphite-700);margin:0;padding:0 4rem 2rem 0;line-height:1.7}.home-contact{border-top:1px solid var(--pf-color-line-on-dark)}.home-contact__grid{grid-template-columns:minmax(0,1fr) minmax(24rem,.8fr);align-items:start;gap:clamp(3rem,8vw,10rem);display:grid}.home-contact h2{max-width:10ch}.home-contact__grid>div:first-child>p{margin-top:clamp(2rem,4vw,4rem)}.home-contact__channels{border-bottom:1px solid var(--contact-channel-rule,var(--pf-color-line-on-dark));min-width:0}.home-contact__tools{justify-items:start;gap:.5rem;padding-bottom:1rem;display:grid}.home-contact__tools button{min-height:var(--pf-touch-min-size);color:inherit;text-underline-offset:.25em;font:inherit;cursor:pointer;background:0 0;border:0;padding:.5rem 0;font-size:.875rem;text-decoration:underline}.home-contact__tools button:disabled{opacity:.65;cursor:wait}.home-contact__tools button:focus-visible{outline-color:var(--contact-channel-focus,var(--pf-color-focus-on-dark))}.home-contact__tools p{min-height:1.5em;color:var(--contact-channel-muted,var(--pf-color-muted-dark));margin:0;font-size:.8rem;line-height:1.5}.home-contact__tools p:empty,.home-contact__tools [hidden]{display:none}.home-contact__grid:has(.lead-form){grid-template-columns:minmax(0,1fr);gap:clamp(2rem,4vw,4rem)}.home-contact__grid:has(.lead-form)>div:first-child{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:clamp(2rem,5vw,5rem);display:grid}.home-contact__grid:has(.lead-form)>div:first-child>p{max-width:50ch;margin:0}@media (width<=46rem){.home-contact__grid:has(.lead-form)>div:first-child{grid-template-columns:minmax(0,1fr)}}.home-contact__channels a{border-top:1px solid var(--contact-channel-rule,var(--pf-color-line-on-dark));justify-content:space-between;align-items:center;gap:2rem;min-height:7rem;padding-block:1.5rem;text-decoration:none;display:flex}.home-contact__channels a:hover,.home-contact__channels a:focus-visible{color:var(--contact-channel-hover,var(--pf-color-signal));outline-color:var(--contact-channel-focus,var(--pf-color-focus-on-dark))}.home-contact__channels span{color:var(--contact-channel-muted,var(--pf-color-muted-dark));letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.home-contact__channels strong{overflow-wrap:anywhere;text-align:right;font-size:clamp(1rem,1.5vw,1.35rem);font-weight:400}@media (width<=64rem){.home-section__heading--split,.home-contact__grid{grid-template-columns:1fr;align-items:start}.home-section__heading--split{gap:2rem}.home-process{grid-template-columns:repeat(2,minmax(0,1fr))}.home-process li:nth-child(3){border-left:0}.home-process li:nth-child(n+3){border-top:1px solid #17191a3d}.home-service-row{gap:1.25rem}.home-about__grid{grid-template-columns:1fr;gap:4rem}.home-about__portrait{width:min(100%,42rem)}.home-about__copy{padding-top:0}.home-contact__grid{gap:4rem}}@media (width<=46rem){.home-section{padding-block:clamp(4.5rem,16vw,7rem)}.home-section__heading h2,.home-about__heading h2,.home-contact h2{font-size:clamp(2.4rem,12vw,4rem)}.home-process,.home-review-grid,.home-about__scope{grid-template-columns:1fr}.home-process li{gap:.75rem;min-height:auto;border-left:0!important}.home-process li+li{border-top:1px solid #17191a3d}.home-service-row{grid-template-columns:minmax(0,1fr) 2.75rem;gap:1rem;padding:0 1.25rem 2rem}.home-service-row__number{display:none}.home-service-row__copy{grid-area:2/1;padding-left:0}.home-service-row__arrow{grid-area:2/2;align-self:start}.home-service-row__preview{grid-area:1/1/auto/-1;width:calc(100% + 2.5rem);max-width:none;height:11rem;margin-inline:-1.25rem;position:relative;inset:auto;-webkit-mask-image:linear-gradient(#000 45%,#0000);mask-image:linear-gradient(#000 45%,#0000)}.home-service-row__preview img{object-position:center 40%}.home-about__scope>div+div{border-left:0;padding-left:0}.home-review{min-height:auto}.home-review footer{flex-direction:column;align-items:flex-start}.home-review footer span{text-align:left}.home-contact__channels a{flex-direction:column;justify-content:center;align-items:flex-start;gap:.6rem}.home-contact__channels strong{text-align:left}}@media (width<=28rem){.home-section__heading h2,.home-about__heading h2,.home-contact h2{overflow-wrap:break-word;font-size:clamp(2.15rem,11.8vw,3.2rem)}.home-review>p{font-size:1.35rem}.home-faq details>p{padding-right:0}}@media (prefers-reduced-motion:reduce){.home-service-row__preview img,.home-service-row__arrow,.home-section__text-link:after,.home-faq summary:after{transition-duration:.01ms}}@media (forced-colors:active){.home-process,.home-process li,.home-service-list,.home-service-row,.home-about__scope>div,.home-review-grid,.home-review,.home-faq__list,.home-faq details,.home-contact,.home-contact__channels,.home-contact__channels a{border-color:canvastext}}@media print{.home-section,.home-approach,.home-services,.home-projects,.home-about,.home-reviews,.home-faq,.home-contact{color:#000;background:#fff}.home-contact__channels a{color:#000}}.home-approach .home-section__heading{border:0;margin-left:22%;display:block}.home-approach .home-section__heading h2{max-width:17ch}.home-approach .home-section__heading p{max-width:44ch;margin:2.5rem 0 0 auto}.home-process li{min-height:12rem}.home-services,.home-reviews,.home-contact,.home-evidence{background:#080808}.home-services .home-section__heading,.home-evidence .home-section__heading{border:0;grid-template-columns:minmax(0,1.3fr) minmax(16rem,.7fr);margin-left:22%}.home-section__heading h2{max-width:17ch}.home-live-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem;display:grid}.home-live-project{background:#f1efe9;border:1px solid #ccc9bf;min-width:0}.home-live-project:first-child{grid-column:1/-1}.home-live-project__link{color:inherit;text-decoration:none;display:block}.home-projects .home-live-project__media{background:0 0;border:0;margin:0}.home-live-project__media picture,.home-live-project__media img{width:100%;display:block}.home-projects .home-live-project__media img{aspect-ratio:4/3;object-fit:cover;max-height:none}.home-live-project:first-child .home-live-project__media img{aspect-ratio:16/9}.home-live-project__media figcaption{color:#484d4e;padding-block:.75rem}.home-live-project__heading{justify-content:space-between;align-items:start;gap:2rem;padding:clamp(1.25rem,2.8vw,2.75rem) clamp(1.25rem,2.8vw,2.75rem) .75rem;display:flex}.home-live-project__heading h3{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.8rem,3vw,3.5rem);font-weight:400;line-height:1.15}.home-live-project__heading p,.home-live-project__summary{color:#484d4e;max-width:65ch;margin:.75rem 0 0}.home-live-project__summary{max-width:76ch;margin:0;padding:0 clamp(1.25rem,2.8vw,2.75rem) clamp(1.5rem,3vw,3rem);line-height:1.65}.home-live-project__action{flex-shrink:0;align-items:center;gap:1rem;min-height:2.75rem;font-size:.8rem;display:inline-flex}.home-live-project__action svg{width:1.1rem;height:1.1rem}.home-live-project__link:hover h3{text-underline-offset:.15em;text-decoration:underline;text-decoration-thickness:1px}.home-projects__empty{color:#484d4e;justify-items:start;gap:.75rem;max-width:52ch;display:grid}.home-projects__empty p{margin:0;font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55}.home-projects>.public-container>.home-section__text-link{margin-top:2.5rem}.home-evidence{color:#f4f2ed}.home-evidence .home-section__heading p{color:#b6b3ad}.home-evidence__grid{grid-template-columns:1.25fr .75fr;align-items:start;gap:3rem;display:grid}.home-evidence__grid figure{min-width:0;margin:0}.home-evidence__grid img{aspect-ratio:4/3;object-fit:cover;width:100%}.home-evidence__grid .home-evidence__wide img{aspect-ratio:16/10;object-fit:cover;background:#25282a}.home-evidence__grid .home-evidence__tall{grid-row:span 2}.home-evidence__grid .home-evidence__tall img{aspect-ratio:3/4;object-fit:cover}.home-evidence__grid figure:last-child{grid-column:1/-1;width:74%;margin-left:auto}.home-evidence__grid figure:last-child img{aspect-ratio:16/9}.home-evidence__grid figcaption{gap:.65rem;padding-top:1.2rem;display:grid}.home-evidence__grid figcaption strong{letter-spacing:-.02em;font-size:clamp(1.3rem,1.8vw,2rem);font-weight:400}.home-evidence__grid figcaption span{color:#b6b3ad;font-size:.9rem}.home-about{color:#17191a;background:#dedbd3;padding-block:0}.home-about .home-about__grid{grid-template-columns:41% 59%;align-items:stretch;gap:0;width:100%;max-width:none}.home-about__portrait{height:100%}.home-about__portrait picture{height:100%;display:block}.home-about__portrait img{aspect-ratio:auto;object-fit:cover;object-position:center top;filter:none;border-radius:0;height:100%}.home-about__portrait figcaption{display:none}.home-about__copy{padding:clamp(3rem,5vw,6rem)}.home-about__heading h2{max-width:17ch;font-size:clamp(2.5rem,4.25vw,4.8rem)}.home-about__copy>p,.home-about__copy .home-about__lead{color:#484d4e;font-size:1rem}.home-about__scope{grid-template-columns:1fr;padding-top:2rem}.home-about__scope>div,.home-about__scope>div+div{border-color:#9b998e #9b998e #9b998e currentColor;border-left-style:none;border-left-width:0;padding:1.2rem 0}.home-about__scope dt{color:#56574e}.home-about :focus-visible{outline-color:var(--pf-color-focus)}@media (width<=64rem){.home-services .home-section__heading,.home-evidence .home-section__heading{grid-template-columns:1fr;margin-left:0}.home-approach .home-section__heading{margin-left:0}.home-live-project__heading{flex-direction:column;gap:.25rem}.home-about .home-about__grid{grid-template-columns:40% 60%}.home-about__copy{padding:3rem 2rem}}@media (width<=46rem){.home-section__heading h2{font-size:clamp(2.5rem,9vw,3.8rem)}.home-approach .home-section__heading p{margin:2rem 0 0}.home-evidence__grid,.home-live-projects{grid-template-columns:1fr;gap:3rem}.home-evidence__grid .home-evidence__tall{grid-row:auto}.home-evidence__grid figure:last-child{width:100%}.home-live-project:first-child .home-live-project__media img{aspect-ratio:4/3}.home-about .home-about__grid{grid-template-columns:1fr}.home-about__portrait{width:100%;max-height:36rem}.home-about__portrait picture{height:30rem}.home-about__portrait img{object-position:center 27%}.home-about__copy{padding:3rem var(--pf-layout-gutter)}.home-about__heading h2{font-size:clamp(2.5rem,9vw,3.4rem)}}@media print{.home-evidence,.home-about{color:#000;background:#fff}}.home-page section[id]{scroll-margin-top:calc(var(--public-header-height) + 1.5rem)}.residence-hero{isolation:isolate;color:#f3f3ee;background:#111a1e;min-height:min(58rem,100svh - 5rem);position:relative;overflow:clip}.residence-hero__scene,.residence-hero__scene picture,.residence-hero__scene img{width:100%;height:100%;position:absolute;inset:0}.residence-hero__scene{z-index:-2;overflow:hidden}.residence-hero__scene img{object-fit:cover;object-position:center 64%}.residence-hero__lit{transition:opacity .85s ease-in-out}.residence-hero[data-light=off] .residence-hero__lit{opacity:0}.residence-hero:before{z-index:-1;content:"";background:linear-gradient(90deg,#0a1216e3 0%,#0a12168f 40%,#0a121614 76%),linear-gradient(#0000 58%,#0a1216e8);position:absolute;inset:0}.residence-hero__inner{min-height:inherit;flex-direction:column;justify-content:flex-end;gap:3.5rem;padding-block:clamp(6rem,18vh,12rem) 2rem;display:flex}.residence-hero__copy{grid-template-columns:minmax(0,1.4fr) minmax(16rem,.7fr);align-items:end;gap:1.5rem 3rem;display:grid}.residence-hero__detail{grid-area:1/2/3;padding-bottom:.25rem}.residence-title-line{margin-bottom:-.12em;padding-bottom:.12em;display:block;overflow:clip}.residence-title-line>span{display:block}.residence-hero__copy .residence-hero__actions{margin-top:0}.residence-hero h1{letter-spacing:var(--pf-public-display-tracking);text-wrap:balance;margin:0;font-size:clamp(3.2rem,6.5vw,6.5rem);font-weight:400;line-height:1.03}.residence-hero__description{color:#d5d9d7;max-width:39ch;margin:2rem 0 0;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.6}.residence-hero__scope{color:#d5d9d7;margin:1rem 0 0;font-size:.85rem;line-height:1.6}.residence-hero__actions{flex-wrap:wrap;align-items:center;gap:2rem;margin-top:2.5rem;display:flex}.residence-hero__actions .public-button{width:auto}.residence-hero__projects{border-bottom:1px solid #8c9699;align-items:center;gap:1rem;min-height:2.75rem;text-decoration:none;display:inline-flex}.residence-hero__projects:hover{border-color:#f3f3ee}.residence-hero__projects svg{stroke-width:1.3px;width:1.1rem;height:1.1rem}.residence-hero__bottom{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.residence-light{color:#f3f3ee;background:0 0;border:0;align-items:center;gap:1rem;min-height:3rem;padding:.25rem 0;font-size:.9rem;display:inline-flex}.residence-light[hidden]{display:none}.residence-light__switch{background:#92704e;border:1px solid #d2c0a9;border-radius:2rem;width:3.5rem;height:1.9rem;transition:background .22s;display:block;position:relative}.residence-light__switch:after{content:"";background:#f3f3ee;border-radius:50%;width:1.25rem;height:1.25rem;transition:transform .22s;position:absolute;top:.25rem;left:.3rem;transform:translate(1.5rem)}.residence-light[aria-pressed=false] .residence-light__switch{background:#283238;border-color:#889295}.residence-light[aria-pressed=false] .residence-light__switch:after{transform:none}.residence-hero__note{color:#c9cfcd;text-align:right;max-width:36ch;margin:0;font-size:.75rem;line-height:1.6}.residence-hero__boundary{padding:1rem var(--pf-layout-gutter);background:#111a1e}@media (width<=64rem){.residence-hero{min-height:max(40rem,100svh - 5rem)}.residence-hero__inner{padding-top:7rem}.residence-hero__copy{grid-template-columns:minmax(0,1.3fr) minmax(14rem,.7fr);gap:1.5rem 2rem}.residence-hero__scene img{object-position:62% center}}@media (width<=46rem){.residence-hero{min-height:max(45rem,100svh - 4.5rem)}.residence-hero:before{background:linear-gradient(#0a1216bf,#0a121661 42%,#0a12162e 60%,#0a1216f5),linear-gradient(90deg,#0a121652,#0000)}.residence-hero__scene img{object-position:62% center}.residence-hero__inner{gap:2.5rem;padding-block:10rem 1.5rem}.residence-hero__copy{display:block}.residence-hero__copy .residence-hero__actions{margin-top:1.6rem}.residence-hero h1{letter-spacing:var(--pf-public-display-tracking);font-size:clamp(2.65rem,10.4vw,4.8rem)}.residence-hero__description{max-width:33ch;margin-top:1.4rem;font-size:.98rem}.residence-hero__actions{gap:.75rem 1.5rem;margin-top:1.6rem}.residence-hero__projects{font-size:.86rem}.residence-hero__bottom{flex-direction:column;align-items:start;gap:1rem}.residence-hero__note{text-align:left;font-size:.69rem}}@media (width>=46.001rem) and (height<=650px){.residence-hero{min-height:max(26rem,100svh - 5rem)}.residence-hero__inner{gap:2rem;padding-block:2rem 1.5rem}}@media (prefers-reduced-motion:reduce){.residence-hero *,.residence-hero :after{transition:none}}@media print{.home-page .public-site-header{position:static}.residence-light{display:none}}.lead-form__submit{width:100%}.lead-form{color:#f4f2ed;text-align:left;width:100%;min-width:0;container-type:inline-size}.lead-form__columns,.lead-form__identity,.lead-form__project{align-content:start;gap:1.5rem;min-width:0;display:grid}.lead-form__project textarea{min-height:8rem}.lead-form__actions{align-items:center;gap:1rem;margin-top:1.5rem;display:grid}.lead-form .lead-form__actions .lead-form__expectation{max-width:55ch;margin:0}@container (width>=46rem){.lead-form__columns,.lead-form__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5cqi,5rem)}}.lead-form [hidden]{display:none}.lead-form legend{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.lead-form fieldset{border:0;gap:1.5rem;min-width:0;margin:0;padding:0;display:grid}.lead-form__field{gap:.55rem;font-size:.875rem;display:grid}.lead-form__field>span{flex-wrap:wrap;justify-content:space-between;gap:.4rem;display:flex}.lead-form__field small{color:#aaaead;font-size:.75rem}.lead-form .lead-form__error{color:#f6bca0;margin:0;font-size:.8rem;line-height:1.45;display:block}.lead-form .lead-form__error[hidden]{display:none}.lead-form .lead-form__field .lead-form__error{min-height:1.45em}.lead-form .lead-form__field .lead-form__error[hidden]{visibility:hidden;display:block}.case-contact .lead-form .lead-form__error{color:#a43e21}.lead-form__field :is(input,select,textarea){background:var(--pf-color-black-soft);color:#f4f2ed;border:1px solid #777c78;border-radius:.2rem;width:100%;min-width:0;min-height:3.25rem;padding:.85rem 1rem;font-size:1rem;transition:border-color .16s}.lead-form__field :is(input,textarea)::placeholder{color:#aab1af;opacity:1}.lead-form__field textarea{resize:vertical}.lead-form__field :is(input,select,textarea):hover{border-color:#c0c4be}.lead-form__field [aria-invalid=true]{border-color:#eeaa87}.lead-form__contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.lead-form__contact>:last-child{grid-column:1/-1}.lead-form__contact [hidden]{display:none}.lead-form__channel-choice{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.lead-form__channel-choice label{cursor:pointer;border:1px solid #777c78;border-radius:2rem;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem .85rem;font-size:.875rem;display:inline-flex}.lead-form__channel-choice label:has(input:checked){border-color:var(--pf-color-ivory);background:#333a37}.lead-form__channel-choice input{accent-color:var(--pf-color-ivory)}.lead-form__contact{grid-template-columns:minmax(0,1fr)}.lead-form__contacts>p:first-child{margin:0 0 .4rem;font-size:.95rem}.lead-form .lead-form__help{color:#bfc4c0;margin:0;font-size:.8rem;line-height:1.65}.lead-form__contacts .lead-form__help{margin:0 0 1rem}.lead-form__files{border:1px dashed #666e68;gap:.65rem;padding:1.25rem;display:grid}.lead-form__files input[type=file]{background:0 0;border:0;min-height:2.75rem;padding:.5rem 0;font-size:0}.lead-form__files input::file-selector-button{color:#f4f2ed;cursor:pointer;background:#252c28;border:1px solid #777c78;border-radius:.2rem;margin-right:0;padding:.75rem 1rem;font-size:.8rem}.lead-form__files ul{overflow-wrap:anywhere;margin:0;padding:0;font-size:.8rem;list-style:none}.lead-form__clear-files{color:#e4c4a5;cursor:pointer;background:0 0;border:0;justify-self:start;min-height:2.75rem;padding:.5rem 0;font-size:.8rem;text-decoration:underline}.lead-form .lead-form__expectation{margin-top:1rem}.lead-form__consent{color:#c1c6c2;cursor:pointer;align-items:start;gap:.75rem;font-size:.8rem;line-height:1.6;display:flex}.lead-form__consent input{width:1.25rem;height:1.25rem;accent-color:var(--pf-color-ivory);flex:none;margin:.15rem 0 0}.lead-form__trap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.lead-form__status{color:#e4c4a5;min-height:1.5rem;margin-block:1rem;font-size:.875rem}.lead-form .lead-form__status:empty{min-height:0;margin-block:0}.lead-form[data-state=success] .lead-form__status{color:#cfe3cb;font-size:1.15rem}.lead-form__notice{color:#bec4bf;border-left:2px solid #c5a98b;margin:0 0 1.75rem;padding-left:1rem;font-size:.8rem}.lead-form__alternative{color:#aeb5b0;border-top:1px solid #59615e;flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;margin-top:clamp(1.5rem,3cqi,2.5rem);padding-top:1rem;font-size:.875rem;line-height:1.5;display:flex}.lead-form__alternative a{overflow-wrap:anywhere;color:#f4f2ed;text-underline-offset:.25em;align-items:center;max-width:100%;min-height:2.75rem;text-decoration-thickness:1px;display:inline-flex}.lead-form__alternative a:hover{text-decoration-thickness:2px}.lead-form__alternative a:focus-visible{outline:2px solid var(--pf-color-focus);outline-offset:3px}:is(.information-closing__grid:has(.lead-form),.designers-contact__grid:has(.lead-form)){grid-template-columns:minmax(0,1fr) minmax(22rem,.85fr);align-items:start}:is(.service-contact__grid:has(.lead-form),.case-contact__grid:has(.lead-form)){align-items:start}.case-contact .lead-form{color:var(--pf-color-graphite-950);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.case-contact .lead-form__field :is(input,select,textarea){color:var(--pf-color-graphite-950);background:var(--pf-color-paper-raised);border-color:#879093}.case-contact .lead-form__field :is(input,textarea)::placeholder{color:#596468}.case-contact .lead-form__field :is(input,select,textarea):hover{border-color:var(--pf-color-graphite-950)}.case-contact .lead-form__field :is(input,select,textarea):focus-visible{border-color:var(--pf-color-graphite-950);outline:2px solid var(--pf-color-focus);outline-offset:2px}.case-contact .lead-form__field [aria-invalid=true]{border-color:#a43e21}.case-contact .lead-form__channel-choice label{color:var(--pf-color-graphite-950);background:0 0;border-color:#879093}.case-contact .lead-form__channel-choice label:has(input:checked){color:var(--pf-color-ivory);background:var(--pf-color-graphite-950);border-color:var(--pf-color-graphite-950)}.case-contact .lead-form__channel-choice input,.case-contact .lead-form__consent input{accent-color:var(--pf-color-graphite-950)}.case-contact .lead-form__channel-choice label:has(input:checked) input{accent-color:var(--pf-color-ivory)}.case-contact .lead-form__channel-choice label:focus-within{outline:2px solid var(--pf-color-focus);outline-offset:2px}.case-contact .lead-form__consent,.case-contact .lead-form__field small,.case-contact .lead-form__alternative,.case-contact .lead-form__notice{color:#484d4e}.case-contact .lead-form__alternative{border-top-color:#aeb6b4}.case-contact .lead-form__alternative a{color:#17191a}.case-contact .lead-form__help{color:#484d4e}.case-contact .lead-form__clear-files{color:#7d4829}.case-contact .lead-form__status{color:#7d4829;margin-block:1rem}.case-contact .lead-form[data-state=success] .lead-form__status{color:#2c6137}@media (width<=64rem){:is(.information-closing__grid:has(.lead-form),.designers-contact__grid:has(.lead-form)){grid-template-columns:1fr}}@media (width<=28rem){.lead-form__contact{grid-template-columns:1fr}}.legal-document{max-width:56rem;padding-block:clamp(3rem,6vw,6rem)}.legal-page{color:#17191a;background:#e9e7e1}.legal-document h1{letter-spacing:-.035em;margin:2.5rem 0;font-size:clamp(2.25rem,5vw,4.5rem);font-weight:400;line-height:1.1}.legal-document h2{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(1.4rem,3vw,2rem);font-weight:500;line-height:1.25}.legal-document p{max-width:72ch;margin:1rem 0 0;line-height:1.8}.legal-document section{border-top:1px solid #bbb9af;padding-block:2.5rem}.legal-document__notice{background:#f8f7f2;margin-bottom:3rem;padding:clamp(1.25rem,3vw,2rem);font-size:.95rem}.legal-document__related{border-top:1px solid #bbb9af;flex-wrap:wrap;gap:1rem 2rem;padding-block:2rem;display:flex}.legal-document__version{color:#535c5d;margin:-1.25rem 0 2.5rem;font-size:.9rem}.legal-document :focus-visible{outline-color:#146c8e}.service-page{background:var(--pf-color-black)}.service-hero{min-height:max(42rem, calc(100svh - var(--public-header-height)));background:var(--pf-color-black);border-bottom:1px solid var(--pf-color-line-on-dark);display:flex;overflow:hidden}.service-hero__grid{align-items:center;gap:clamp(var(--pf-space-7), 6vw, var(--pf-space-9));min-width:0;padding-block:clamp(var(--pf-space-7), 5vw, 5rem);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);display:grid}.service-hero__copy{min-width:0;max-width:42rem}.service-hero h1{letter-spacing:-.04em;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-wrap:balance;max-width:100%;margin:0;font-size:clamp(3.2rem,4.4vw,4.75rem);font-weight:400;line-height:1.04}.service-hero__offer{max-width:56ch;margin:var(--pf-space-6) 0 0;color:var(--pf-color-muted-dark);font-size:clamp(1.05rem,1.55vw,1.25rem);line-height:1.55}.service-hero__actions{margin-top:var(--pf-space-6);align-items:center}.service-text-link{min-height:var(--pf-touch-min-size);color:var(--pf-color-ivory);text-underline-offset:.3em;align-items:center;font-size:.9rem;font-weight:400;text-decoration-thickness:1px;display:inline-flex}.service-text-link:hover,.service-text-link:focus-visible{color:var(--pf-color-ivory)}.service-hero__facts{gap:var(--pf-space-5);margin:clamp(var(--pf-space-6), 5vw, var(--pf-space-8)) 0 0;padding-top:var(--pf-space-5);border-top:1px solid var(--pf-color-line-on-dark);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-hero__facts div{align-content:start;gap:var(--pf-space-2);display:grid}.service-hero__facts dt{color:var(--pf-color-signal);letter-spacing:.095em;text-transform:uppercase;font-size:.62rem;font-weight:700}.service-hero__facts dd{color:var(--pf-color-ivory);margin:0;font-size:.9rem;line-height:1.45}.service-hero__proof{align-self:start;min-width:0;margin:0;position:relative}.service-hero__proof:before{z-index:1;border-top:1px solid var(--pf-color-signal);border-right:1px solid var(--pf-color-signal);content:"";pointer-events:none;width:clamp(4rem,8vw,8rem);height:clamp(4rem,8vw,8rem);position:absolute;top:-1px;right:-1px}.service-hero__proof picture,.service-hero__proof img{width:100%}.service-hero__proof img{aspect-ratio:4/3;object-fit:cover;object-position:center}.service-hero__proof--wiring img{object-position:center 44%}.service-hero__proof figcaption{margin-top:var(--pf-space-3);color:var(--pf-color-muted-dark);font-size:.78rem;line-height:1.5}@media (width>=64.001rem){.service-hero__copy h1{min-block-size:3lh}.service-hero__offer{min-block-size:4lh}.service-hero__facts{min-block-size:7rem}.service-hero__grid{align-content:center;align-items:start}}.service-wayfinding{background:var(--pf-color-black-soft);border-bottom:1px solid var(--pf-color-line-on-dark)}.service-wayfinding__inner{gap:0 clamp(var(--pf-space-4), 2.8vw, var(--pf-space-7));flex-wrap:wrap;display:flex}.service-wayfinding a{min-height:3.6rem;color:var(--pf-color-muted-dark);letter-spacing:.075em;text-transform:uppercase;align-items:center;font-size:.65rem;font-weight:700;text-decoration:none;display:inline-flex}.service-wayfinding a:hover,.service-wayfinding a:focus-visible{color:var(--pf-color-ivory)}.service-brief,.service-process,.service-faq{color:var(--pf-color-graphite-950);background:var(--pf-color-paper)}.service-brief h2,.service-scope h2,.service-section-heading h2,.service-engineering h2,.service-faq h2,.service-contact h2,.service-reviews h2{letter-spacing:-.04em;font-size:clamp(2.15rem,4vw,4.5rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.service-brief h2{min-height:2.2em;font-size:clamp(1.75rem,2.65vw,3rem)}.service-brief p,.service-section-heading p,.service-faq header p{max-width:62ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-graphite-600)}.service-brief ul,.service-engineering__notes{margin:var(--pf-space-6) 0 0;padding:0;list-style:none}.service-brief li{padding-block:var(--pf-space-3);border-top:1px solid var(--pf-color-rule)}.service-scope,.service-engineering,.service-contact,.service-related,.service-reviews{background:var(--pf-color-black)}.service-engineering__grid,.service-faq__grid,.service-contact__grid{gap:clamp(var(--pf-space-7), 8vw, 9rem);padding-block:clamp(var(--pf-space-8), 9vw, 9rem);grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);display:grid}.service-scope header p,.service-engineering header p,.service-contact p{max-width:52ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-muted-dark)}.service-engineering__notes{border-top:1px solid var(--pf-color-line-on-dark);margin-top:0}.service-engineering__notes article{gap:var(--pf-space-6);padding-block:var(--pf-space-5);border-bottom:1px solid var(--pf-color-line-on-dark);grid-template-columns:minmax(11rem,.55fr) minmax(0,1fr);display:grid}.service-engineering__notes h3,.service-related__list h3{letter-spacing:-.02em;margin:0;font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:400;line-height:1.2}.service-engineering__notes p,.service-related__list p{max-width:56ch;color:var(--pf-color-muted-dark);margin:0}.service-section-heading{align-items:end;gap:clamp(var(--pf-space-6), 7vw, 8rem);padding-bottom:clamp(var(--pf-space-7), 6vw, var(--pf-space-8));border-bottom:1px solid var(--pf-color-rule);grid-template-columns:minmax(0,.85fr) minmax(0,1fr);display:grid}.service-related,.service-reviews{padding-block:clamp(var(--pf-space-8), 9vw, 9rem);border-top:1px solid var(--pf-color-line-on-dark)}.service-related .service-section-heading{border-color:var(--pf-color-line-on-dark)}.service-related .service-section-heading p{color:var(--pf-color-muted-dark)}.service-related__list{gap:var(--pf-space-7);margin-top:var(--pf-space-7);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-related__list article{min-width:0}.service-related__project{height:100%;color:inherit;gap:1.5rem;text-decoration:none;display:grid}.service-related__photo{aspect-ratio:3/2;background:var(--pf-color-black-soft);overflow:hidden}.service-related__photo img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--pf-public-motion-ease)}.service-related__copy{align-content:start;gap:.75rem;display:grid}.service-related__copy p{max-width:65ch}.service-related__action{align-items:center;gap:1rem;min-height:2.75rem;margin-top:.25rem;font-size:.9rem;display:flex}.service-related__action svg{width:1.25rem;height:1.25rem}.service-related__project:is(:hover,:focus-visible) h3{text-underline-offset:.2em;text-decoration:underline}.service-related__project:is(:hover,:focus-visible) img{transform:scale(1.025)}.service-related__list:has(>article:only-child){grid-template-columns:1fr}.service-related__list>article:only-child .service-related__project{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,4rem)}.service-related__list>article:only-child .service-related__project:not(:has(.service-related__photo)){grid-template-columns:1fr}@media (width<=46rem){.service-related__list>article:only-child .service-related__project{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.service-related__photo img{transition:none}.service-related__project:is(:hover,:focus-visible) img{transform:none}}.service-related__list h3{overflow-wrap:anywhere;text-wrap:balance}.service-related__list h3 a{color:var(--pf-color-ivory);-webkit-text-decoration-color:var(--pf-color-signal);text-decoration-color:var(--pf-color-signal);text-underline-offset:.28em;text-decoration-thickness:1px}.service-related__list h3 a:hover,.service-related__list h3 a:focus-visible{color:var(--pf-color-signal)}.service-related__list p{overflow-wrap:anywhere;white-space:pre-line}.service-engineering{border-top:1px solid var(--pf-color-line-on-dark)}.service-faq__list{border-top:1px solid var(--pf-color-rule)}.service-faq details{border-bottom:1px solid var(--pf-color-rule)}.service-faq summary{min-height:4.75rem;padding-block:var(--pf-space-4);cursor:pointer;align-items:center;gap:1rem;font-size:clamp(1rem,1.45vw,1.2rem);font-weight:700;list-style:none;display:flex}.service-faq summary::-webkit-details-marker{display:none}.service-faq__marker{width:1.25rem;height:1.25rem;color:var(--pf-color-graphite-700);flex:0 0 1.25rem;margin-left:auto}.service-faq details[open] .service-faq__marker-vertical{display:none}.service-faq details>p{max-width:62ch;padding:0 3rem var(--pf-space-5) 0;color:var(--pf-color-graphite-600);margin:0}.service-reviews blockquote{margin:var(--pf-space-7) 0 0;padding-block:var(--pf-space-5);border-block:1px solid var(--pf-color-line-on-dark)}.service-reviews blockquote p{letter-spacing:-.03em;max-width:42ch;margin:0;font-size:clamp(1.35rem,2.8vw,2.6rem);line-height:1.15}.service-reviews blockquote footer{margin-top:var(--pf-space-5);color:var(--pf-color-muted-dark)}.service-contact{border-top:1px solid var(--pf-color-line-on-dark)}.service-contact__grid{align-items:end}.service-next-link{margin-top:var(--pf-space-5);padding-top:var(--pf-space-4);border-top:1px solid var(--pf-color-rule);color:inherit;text-underline-offset:.25em;font-size:.95rem;line-height:1.6;display:block}.service-contact .service-contact__estimate{font-size:.9rem}.service-contact__estimate+.service-text-link{margin-top:var(--pf-space-5)}.service-contact__actions{align-items:center;gap:var(--pf-space-4);flex-wrap:wrap;display:flex}.service-contact__actions>a:not(.public-button){min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);overflow-wrap:anywhere;align-items:center;display:inline-flex}.service-brief :focus-visible,.service-process :focus-visible,.service-faq :focus-visible{outline-color:var(--pf-color-focus)}@media (width<=64rem){.service-hero{min-height:0}.service-hero__grid,.service-engineering__grid,.service-faq__grid,.service-contact__grid{grid-template-columns:1fr}.service-hero__copy{max-width:52rem}.service-brief h2{min-height:0}}@media (width<=46rem){.service-hero__grid{gap:var(--pf-space-7);padding-top:var(--pf-space-7)}.service-hero h1{font-size:clamp(2.65rem,10.4vw,4.8rem)}.service-hero__facts,.service-section-heading,.service-engineering__notes article,.service-related__list{grid-template-columns:1fr}.service-wayfinding__inner{padding-block:var(--pf-space-2)}.service-wayfinding a{min-height:var(--pf-touch-min-size)}.service-faq details>p{padding-right:0}.service-contact__actions{flex-direction:column;align-items:stretch}.service-contact__actions .public-button,.service-contact__actions>a:not(.public-button){justify-content:center;width:100%}}@media (width<=28rem){.service-hero h1{font-size:clamp(2.25rem,10vw,3.75rem)}.service-hero__facts{grid-template-columns:1fr}.service-brief h2,.service-scope h2,.service-section-heading h2,.service-engineering h2,.service-faq h2,.service-contact h2,.service-reviews h2{font-size:clamp(2rem,11vw,3rem)}}@media (prefers-reduced-motion:reduce){.service-page *,.service-page :before,.service-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (forced-colors:active){.service-hero__proof:before,.service-brief article,.service-engineering__notes,.service-engineering__notes article,.service-faq details{border-color:canvastext}}@media print{.service-wayfinding,.service-hero__actions,.service-contact__actions,.service-page .public-site-footer{display:none}.service-hero,.service-scope,.service-engineering,.service-related,.service-reviews,.service-contact{color:#000!important;background:#fff!important}.service-page :is(.service-hero,.service-scope,.service-engineering,.service-related,.service-reviews,.service-contact) *,.service-page :is(.service-hero,.service-scope,.service-engineering,.service-related,.service-reviews,.service-contact) :before,.service-page :is(.service-hero,.service-scope,.service-engineering,.service-related,.service-reviews,.service-contact) :after{color:#000!important;text-shadow:none!important}.service-faq details>:not(summary){display:block!important}.service-faq summary{cursor:default;list-style:none}.service-faq__marker{content:"";display:none}.service-faq summary::marker{content:"";display:none}.service-faq summary::-webkit-details-marker{display:none}}.service-overview__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);grid-template-areas:"audience result""inputs result";gap:2.5rem clamp(2.5rem,7vw,7rem);padding-block:clamp(3rem,6vw,6rem);display:grid}.service-overview article{min-width:0}.service-overview__audience{grid-area:audience}.service-overview__inputs{grid-area:inputs}.service-overview .service-overview__inputs{border-top:1px solid var(--pf-color-rule);padding-top:2rem}.service-overview h2{text-wrap:pretty;max-width:20ch;min-height:0;font-size:clamp(1.7rem,2.6vw,2.6rem);line-height:1.1}.service-overview p{margin-top:1rem;font-size:.95rem}.service-overview ul{margin-top:1.25rem}.service-overview li{border:0;padding:.4rem 0 .4rem 1.25rem;font-size:.95rem;line-height:1.5;position:relative}.service-overview li:before{border-top:1px solid var(--pf-color-graphite-700);content:"";width:.4rem;position:absolute;top:1.03rem;left:0}.service-overview .service-overview__result{background:var(--pf-color-ivory);flex-direction:column;grid-area:result;justify-content:center;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.5rem,3.5vw,3.5rem);display:flex}.service-overview__result li{align-items:start;gap:.65rem;padding:.65rem 0;display:flex}.service-overview__result li:before{content:none}.service-overview__result li>svg{width:1.4rem;color:var(--pf-color-graphite-700);flex:0 0 1.4rem;margin-top:.1rem}.service-result-graphic{width:100%;max-height:17rem;color:var(--pf-color-graphite-950)}.service-result-graphic__sheet{fill:var(--pf-color-paper-raised)}.service-result-graphic__accent{color:var(--pf-color-graphite-700)}.service-result-graphic__fine{color:var(--pf-color-rule-strong)}.service-explorer{padding-block:clamp(3rem,7vw,7rem)}.service-explorer .service-section-heading{border-color:var(--pf-color-line-on-dark)}.service-explorer .service-section-heading p{color:var(--pf-color-muted-dark)}.service-explorer__grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:start;gap:clamp(2rem,6vw,6rem);padding-top:clamp(2rem,4vw,4rem);display:grid}.service-explorer__visual{min-width:0;margin:0}.service-scope-graphic{width:100%;color:var(--pf-color-ivory)}.service-scope-graphic__fine{opacity:.38}.service-scope-graphic__heavy{stroke-width:3px}.service-scope-graphic [data-scope-layer]{transition:color .42s var(--pf-ease-out), opacity .42s var(--pf-ease-out)}.service-explorer[data-ready] [data-scope-layer]{opacity:.38}.service-explorer[data-ready] [data-scope-layer][data-active]{color:var(--pf-color-signal);opacity:1}.service-explorer__visual figcaption{border-top:1px solid var(--pf-color-line-on-dark);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:1.5rem;padding-top:1rem;font-size:.9rem;display:flex}.service-explorer__visual figcaption>span:last-child{color:var(--pf-color-muted-dark);font-size:.75rem}.service-explorer__items{min-width:0}.service-explorer__hint{color:var(--pf-color-muted-dark);margin:0 0 1rem;font-size:.8rem}.service-explorer__items article{border-bottom:1px solid var(--pf-color-line-on-dark);padding-block:1.25rem}.service-explorer__items h3{letter-spacing:-.02em;margin:0;font-size:clamp(1.2rem,1.8vw,1.6rem);font-weight:400;line-height:1.25}.service-explorer__items button{width:100%;min-height:var(--pf-touch-min-size);color:var(--pf-color-ivory);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:0;display:flex}.service-explorer__label{min-height:var(--pf-touch-min-size);align-items:center;display:flex}.service-explorer__items [hidden]{display:none}.service-explorer__items button:disabled{cursor:default;opacity:1}.service-explorer__items button>svg{width:1.4rem;transition:transform .28s var(--pf-ease-out);flex:0 0 1.4rem}.service-explorer__items button:disabled>svg{visibility:hidden}.service-explorer__items button[aria-pressed=true]:not(:disabled){color:var(--pf-color-signal)}.service-explorer__items button:hover:not(:disabled)>svg{transform:translate(3px)}.service-explorer__items article p{max-width:56ch;color:var(--pf-color-muted-dark);margin:.4rem 2.4rem 0 0;font-size:.95rem;line-height:1.55}.service-journey{padding-block:clamp(3rem,6vw,6rem)}.service-journey .service-section-heading{border-bottom:0;padding-bottom:2.5rem}.service-journey__steps{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.service-journey__steps li{min-width:0;padding-right:clamp(1.25rem,3vw,3rem);position:relative}.service-journey__steps li:last-child{padding-right:0}.service-journey__waypoint{border-top:1px solid var(--pf-color-rule);align-items:center;gap:1rem;padding-block:1.5rem;display:flex;position:relative}.service-journey__waypoint:before{background:var(--pf-color-graphite-700);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;left:0}.service-journey__waypoint span{color:var(--pf-color-graphite-700);font-size:.8rem}.service-journey__waypoint .engineering-icon{width:6rem;height:5rem;color:var(--pf-color-graphite-700)}.service-journey__steps h3{letter-spacing:-.02em;max-width:21ch;margin:0 0 .9rem;font-size:clamp(1.2rem,1.7vw,1.6rem);font-weight:400;line-height:1.2}.service-journey__steps p{max-width:40ch;color:var(--pf-color-graphite-600);margin:0;font-size:.95rem}@media (prefers-reduced-motion:no-preference){.service-explorer[data-ready] [data-active] [data-scope-trace]{animation:service-trace .85s var(--pf-ease-out) both}.service-journey[data-entered] .service-journey__waypoint:after{background:var(--pf-color-graphite-700);content:"";height:1px;animation:service-connection .95s var(--pf-ease-out) both;position:absolute;top:-1px;left:0;right:0}.service-journey[data-entered] li:nth-child(2) .service-journey__waypoint:after{animation-delay:.14s}.service-journey[data-entered] li:nth-child(3) .service-journey__waypoint:after{animation-delay:.28s}.service-journey[data-entered] li:nth-child(4) .service-journey__waypoint:after{animation-delay:.42s}}@keyframes service-trace{0%{stroke-dasharray:1;stroke-dashoffset:1px}to{stroke-dasharray:1;stroke-dashoffset:0}}@keyframes service-connection{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (width<=64rem){.service-overview__grid,.service-explorer__grid{gap:2rem}.service-journey__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.service-journey__steps li{padding-right:0}}@media (width<=46rem){.service-overview__grid{grid-template-columns:1fr;grid-template-areas:"audience""inputs""result"}.service-overview .service-overview__result{padding:1.5rem}.service-overview h2{font-size:clamp(1.75rem,7vw,2.5rem)}.service-result-graphic{max-height:13rem}.service-explorer__grid{grid-template-columns:1fr}.service-explorer[data-ready] [data-scope-layer]{opacity:1}.service-explorer__visual [data-scope-caption],.service-explorer__items button>svg{display:none}.service-explorer__items article p{margin-right:0}.service-explorer__items article{padding-block:1rem}.service-journey__steps{grid-template-columns:1fr;gap:0}.service-journey__steps li{grid-template-columns:5rem minmax(0,1fr);gap:1.25rem;padding-block:0 2rem;display:grid}.service-journey__steps li:last-child{padding-bottom:0}.service-journey__waypoint{border:0;flex-direction:column;align-items:flex-start;gap:.5rem;padding:0}.service-journey__waypoint .engineering-icon{width:4.5rem;height:3.75rem}.service-journey__waypoint:before,.service-journey[data-entered] .service-journey__waypoint:after{display:none}.service-journey__steps li:not(:last-child):after{border-left:1px solid var(--pf-color-rule);content:"";position:absolute;top:6.1rem;bottom:.65rem;left:2.2rem}}@media (forced-colors:active){.service-result-graphic,.service-scope-graphic,.service-explorer[data-ready] [data-scope-layer][data-active]{color:canvastext}.service-result-graphic__sheet{fill:canvas}.service-explorer__items button[aria-pressed=true]{outline-offset:4px;outline:1px solid highlight}}@media print{.service-overview__grid,.service-explorer__grid{display:block}.service-overview article,.service-explorer__items article{break-inside:avoid;margin-bottom:1rem}.service-overview .service-overview__result{background:0 0;padding:0}.service-result-graphic,.service-explorer__visual,.service-explorer__hint,.service-explorer__items button>svg{display:none}.service-explorer__items button{color:#000!important}.service-journey__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}}.service-gallery{color:var(--pf-color-ivory);background:var(--pf-color-black);padding-block:clamp(3.5rem,7vw,7rem)}.service-gallery .service-section-heading{border-color:var(--pf-color-line-on-dark);padding-bottom:2.5rem}.service-gallery .service-section-heading p{color:var(--pf-color-muted-dark)}.service-gallery__grid{gap:3rem;margin-top:2.5rem;display:grid}.service-gallery__row{align-items:flex-start;gap:clamp(1rem,2.5vw,2.5rem);display:flex}.service-gallery__item{flex:1 1 0;min-width:0;margin:0}.service-gallery--photo .service-gallery__item{flex-grow:var(--media-ratio)}.service-gallery__item--narrow{--media-ratio:.665}.service-gallery__item--detail{--media-ratio:.755}.service-gallery__item--portrait{--media-ratio:.86}.service-gallery__item--landscape{--media-ratio:1.335}.service-gallery__item--wide{--media-ratio:1.778}.service-gallery__image{isolation:isolate;aspect-ratio:4/3;background:var(--pf-color-black);display:block;position:relative;overflow:hidden}.service-gallery__image img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.service-gallery--drawing .service-gallery__image img{object-fit:contain;filter:grayscale()invert()brightness(1.35);mix-blend-mode:screen}.service-gallery--photo .service-gallery__image{aspect-ratio:auto}.service-gallery--photo .service-gallery__image img{height:auto}.service-gallery__image:focus-visible{outline:2px solid var(--pf-color-focus-on-dark);outline-offset:5px}.service-gallery__image:is(:hover,:focus-visible) img{transform:scale(1.025)}.service-gallery__enlarge{min-height:2.75rem;color:var(--pf-color-ivory);background:var(--pf-color-black);pointer-events:none;align-items:center;gap:.5rem;padding:.5rem .85rem;font-size:.75rem;display:inline-flex;position:absolute;bottom:.75rem;right:.75rem}.service-gallery__enlarge svg{width:1.1rem;height:1.1rem}.service-gallery__item figcaption{padding-top:1.25rem}.service-gallery__item h3{text-wrap:balance;margin:0;font-size:clamp(1.1rem,1.4vw,1.3rem);font-weight:400;line-height:1.4}.service-gallery__item p{max-width:60ch;color:var(--pf-color-muted-dark);margin:.5rem 0 0;font-size:.9rem;line-height:1.6}@media (width<=46rem){.service-gallery__grid,.service-gallery__row{grid-template-columns:minmax(0,1fr);gap:2.5rem;display:grid}}@media (prefers-reduced-motion:reduce){.service-gallery__image img{transition:none}.service-gallery__image:is(:hover,:focus-visible) img{transform:none}}@media (forced-colors:active){.service-gallery__image:focus-visible{outline-color:highlight}.service-gallery__enlarge{color:linktext;background:canvas}}@media print{.service-gallery{color:#000;background:#fff}.service-gallery__item{break-inside:avoid}.service-gallery__image{background:#fff}.service-gallery--drawing .service-gallery__image img{filter:none;mix-blend-mode:normal}.service-gallery__enlarge{display:none}.service-gallery .service-section-heading p,.service-gallery__item p{color:#333}}.drawing-showcase{background:var(--pf-color-black);min-width:0;margin:0}.drawing-showcase__stage{aspect-ratio:4/3;isolation:isolate;background:var(--pf-color-black);position:relative;overflow:hidden}.drawing-showcase__sheet{opacity:0;mix-blend-mode:screen;pointer-events:none;transition:opacity .7s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;overflow:hidden}.drawing-showcase__sheet[data-active=true]{opacity:1}.drawing-showcase__sheet img{filter:grayscale()invert();opacity:.85;max-width:none;height:auto;display:block;position:absolute}.drawing-showcase__sheet--full-sheet img{object-fit:contain;filter:grayscale()invert()brightness(1.35);opacity:1;width:100%;height:100%;inset:0}.drawing-showcase__caption{border-top:1px solid var(--pf-color-line-on-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.drawing-showcase__description{flex:14rem;gap:.35rem;min-width:0;display:grid}.drawing-showcase__title{color:var(--pf-color-ivory);font-size:.95rem;line-height:1.4}.drawing-showcase__detail,.drawing-showcase__status{color:var(--pf-color-muted-dark);font-size:.78rem;line-height:1.5}.drawing-showcase__status{min-height:1.5em;margin:.75rem 0 0}.drawing-showcase__controls{flex-wrap:wrap;flex:0 auto;align-items:center;gap:.25rem;display:flex}.drawing-showcase__controls[hidden],.drawing-showcase__controls button[hidden]{display:none}.drawing-showcase__controls button{min-width:2.75rem;min-height:2.75rem;color:var(--pf-color-muted-dark);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;place-items:center;padding:.5rem;font-size:.8rem;transition:color .15s,border-color .15s;display:inline-grid}.drawing-showcase__controls button[aria-pressed=true]{color:var(--pf-color-signal);border-bottom-color:currentColor}.drawing-showcase__controls button:hover{color:var(--pf-color-ivory)}.drawing-showcase__controls button:focus-visible{outline:2px solid var(--pf-color-focus-on-dark);outline-offset:3px}.drawing-showcase__controls .drawing-showcase__rotation{justify-content:center;align-items:center;gap:.4rem;margin-left:auto;display:inline-flex}.drawing-showcase__rotation svg{width:1.1rem;height:1.1rem}.drawing-showcase__rotation [data-play-icon],.drawing-showcase[data-rotating=false] [data-pause-icon]{display:none}.drawing-showcase[data-rotating=false] [data-play-icon]{display:block}.drawing-showcase__gallery-link{min-height:2.75rem;color:var(--pf-color-muted-dark);text-underline-offset:.25em;align-items:center;font-size:.78rem;text-decoration-thickness:1px;display:inline-flex}.drawing-showcase__gallery-link:hover{color:var(--pf-color-ivory)}@media (width<=28rem){.drawing-showcase__caption{flex-wrap:wrap;gap:.75rem}}@media (prefers-reduced-motion:reduce){.drawing-showcase__sheet,.drawing-showcase__controls button{transition:none}}@media (forced-colors:active){.drawing-showcase__caption,.drawing-showcase__controls button[aria-pressed=true]{border-color:canvastext}.drawing-showcase__controls button:focus-visible{outline-color:highlight}}@media print{.drawing-showcase__controls,.drawing-showcase__status{display:none}.drawing-showcase__sheet img{filter:none;mix-blend-mode:normal;opacity:1}}.projects-page{background:var(--pf-color-black)}.projects-page .projects-intro{color:var(--pf-color-ivory);background:var(--pf-color-black);border-bottom:1px solid var(--pf-color-line-on-dark);padding-block:clamp(2rem,4vw,4rem)}.projects-intro__inner{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:end;gap:clamp(2rem,5vw,5rem);display:grid}.projects-intro h1{max-width:20ch;margin:0;font-size:clamp(2.75rem,5.5vw,5.5rem)}.projects-intro__lead{max-width:55ch;color:var(--pf-color-muted-dark)}.projects-intro__proof{gap:var(--pf-space-4);margin-top:clamp(var(--pf-space-7), 8vw, var(--pf-space-9));padding-top:var(--pf-space-4);color:var(--pf-color-muted-dark);border-top:1px solid var(--pf-color-line-on-dark);letter-spacing:.09em;text-transform:uppercase;grid-template-columns:repeat(4,minmax(0,1fr));font-size:.72rem;font-weight:700;line-height:1.4;display:grid}.projects-intro__proof span,.projects-intro__proof strong{min-height:var(--pf-touch-min-size)}.projects-intro__proof strong{color:var(--pf-color-signal);font-weight:700}.projects-page .projects-index{padding-top:var(--pf-space-5);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--pf-color-graphite-950);background:var(--pf-color-canvas)}.projects-index :focus-visible{outline-color:var(--pf-color-focus)}.projects-index__heading{padding-bottom:var(--pf-space-4)}.projects-index__count{max-width:none;color:var(--pf-color-graphite-700);letter-spacing:.08em;text-align:left;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700;line-height:1.4}.projects-filter{padding-block:var(--pf-space-7);border-bottom:1px solid var(--pf-color-rule)}.projects-filter-disclosure{margin-block:var(--pf-space-5);border-block:1px solid var(--pf-color-rule-strong)}.projects-filter-disclosure>summary{min-height:var(--pf-touch-min-size);padding:var(--pf-space-4);cursor:pointer}.projects-filter-disclosure .projects-filter{padding:var(--pf-space-4);border-bottom:0}.projects-filter__fields{gap:var(--pf-space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.projects-filter__field{gap:var(--pf-space-2);display:grid}.projects-filter__field>span{color:var(--pf-color-graphite-700);letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:700;line-height:1.3}.projects-filter select{width:100%;min-height:var(--pf-control-min-height);color:var(--pf-color-graphite-950);background:var(--pf-color-paper-raised);border:1px solid var(--pf-color-graphite-600);border-radius:0;padding:.7rem .8rem}.projects-filter select:hover{border-color:var(--pf-color-graphite-950)}.projects-filter select:focus-visible{outline-color:var(--pf-color-focus);border-color:var(--pf-color-focus)}.projects-filter__actions{align-items:center;gap:var(--pf-space-4);margin-top:var(--pf-space-5);flex-wrap:wrap;display:flex}.projects-filter__reset{min-height:var(--pf-touch-min-size);color:var(--pf-color-graphite-700);text-underline-offset:.25em;align-items:center;font-size:.78rem;font-weight:700;text-decoration-thickness:1px;display:inline-flex}.projects-filter__reset:hover,.projects-filter__reset:focus-visible{color:var(--pf-color-graphite-950)}.projects-grid{margin:var(--pf-space-4) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1.25rem,2.5vw,2rem);padding:0;list-style:none;display:grid}.projects-grid__item{background:var(--pf-color-paper);min-width:0;display:flex}.project-record{min-width:0;transition:background-color var(--pf-duration-base) var(--pf-ease-out);flex-direction:column;flex:1;display:flex}.project-record__body{overflow-wrap:anywhere;flex-direction:column;flex:1;min-width:0;padding:clamp(1.25rem,2vw,2rem);display:flex}.project-record__preview{color:var(--pf-color-ivory);background:var(--pf-color-black);display:block;position:relative;overflow:hidden}.project-record__preview img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:transform .4s var(--pf-ease-out)}.project-record__preview>span{background:linear-gradient(#0000,#000000d9);justify-content:space-between;align-items:end;gap:1rem;padding:3.5rem 1.5rem 1.25rem;font-size:.8rem;display:flex;position:absolute;inset:auto 0 0}.project-record__preview svg{flex:none;width:1.25rem;height:1.25rem}.project-record:is(:hover,:focus-within) .project-record__preview img{transform:scale(1.035)}.project-record:hover{background:var(--pf-color-paper-raised)}.project-record__meta{justify-content:space-between;gap:var(--pf-space-2);color:var(--pf-color-graphite-700);letter-spacing:.075em;text-transform:uppercase;flex-wrap:wrap;font-size:.68rem;font-weight:700;line-height:1.4;display:flex}.project-record h2{max-width:20ch;margin:var(--pf-space-4) 0 0;letter-spacing:-.04em;font-size:clamp(1.65rem,2.4vw,2.5rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance}.project-record h2 a{text-decoration:none}.project-record h2 a:hover,.project-record h2 a:focus-visible{text-underline-offset:.12em;text-decoration:underline;text-decoration-thickness:1px}.project-record__summary{max-width:58ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-graphite-700)}.project-record__facts{gap:var(--pf-space-3);margin:var(--pf-space-5) 0 0;padding-top:var(--pf-space-4);color:var(--pf-color-graphite-700);border-top:1px solid var(--pf-color-rule);display:grid}.project-record__facts div{gap:var(--pf-space-3);grid-template-columns:5rem minmax(0,1fr);display:grid}.project-record__facts dt{letter-spacing:.075em;text-transform:uppercase;font-size:.64rem;font-weight:700}.project-record__facts dd{margin:0}.project-record__tags{align-content:start;gap:var(--pf-space-2) var(--pf-space-4);margin-top:var(--pf-space-5);color:var(--pf-color-graphite-700);flex-wrap:wrap;font-size:.72rem;display:flex}.project-record__tags span{text-decoration:none}.project-record__link{align-self:flex-start;align-items:center;gap:var(--pf-space-3);min-height:calc(var(--pf-touch-min-size) + var(--pf-space-5));padding-top:var(--pf-space-5);color:var(--pf-color-graphite-950);letter-spacing:.08em;text-transform:uppercase;margin-top:auto;font-size:.72rem;font-weight:700;line-height:1.3;text-decoration:none;display:inline-flex}.project-record__link>.public-route-mark{flex:none;width:1.3rem;height:1rem}.project-record__link:hover,.project-record__link:focus-visible{text-underline-offset:.25em;text-decoration:underline;text-decoration-thickness:1px}@supports (grid-template-rows:subgrid){@media (width>46rem){.projects-grid__item{grid-row:span 8;grid-template-rows:subgrid;row-gap:0;display:grid}.project-record{grid-row:1/-1;grid-template-rows:subgrid;row-gap:0;display:grid}.project-record__preview{grid-row:1}.project-record__body{grid-row:2/-1;grid-template-rows:subgrid;row-gap:0;display:grid}.project-record__meta{grid-row:1}.project-record h2{grid-row:2}.project-record__summary{grid-row:3}.project-record__facts{grid-row:4/span 2;grid-template-rows:subgrid}.project-record__fact--region{grid-row:1}.project-record__fact--area{grid-row:2}.project-record__tags{grid-row:6}.project-record__link{grid-row:7;place-self:end start}}}.projects-empty{max-width:52rem;margin-top:var(--pf-space-7);padding:clamp(var(--pf-space-6), 6vw, var(--pf-space-8));background:var(--pf-color-paper);border-block:1px solid var(--pf-color-rule-strong)}.projects-empty h2{letter-spacing:-.04em;max-width:18ch;font-size:clamp(2rem,4vw,3.8rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.projects-empty p{max-width:58ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-graphite-700)}.projects-empty .public-button{margin-top:var(--pf-space-5)}@media (width<=64rem){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=46rem){.projects-intro__inner{grid-template-columns:minmax(0,1fr)}.projects-intro__proof{row-gap:var(--pf-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.projects-index__heading,.projects-filter__fields{grid-template-columns:minmax(0,1fr)}.projects-index__count{text-align:left;max-width:none}.projects-grid{grid-template-columns:minmax(0,1fr)}.project-record{min-height:0}}@media (width<=28rem){.projects-intro__proof{grid-template-columns:minmax(0,1fr)}.projects-filter__actions{flex-direction:column;align-items:stretch}.projects-filter__actions .public-button,.projects-filter__reset{justify-content:center;width:100%}.project-record__facts div{gap:var(--pf-space-1);grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.project-record .project-record__preview img{transition:none;transform:none}.project-record,.project-record__link>.public-route-mark{transition-duration:.01ms!important}}@media (forced-colors:active){.projects-intro,.projects-index,.projects-grid,.projects-grid__item,.project-record,.projects-empty,.projects-filter select{border-color:canvastext}.projects-grid{background:canvastext}}@media print{.projects-filter,.projects-page .public-site-header,.projects-page .public-site-footer{display:none}.projects-intro,.projects-index,.project-record,.projects-empty{color:#000!important;background:#fff!important}.projects-intro,.projects-index,.projects-grid,.projects-grid__item,.project-record,.projects-empty{border-color:#000!important}}@media screen and (width>=64rem){.projects-grid__item:first-child:has(.project-record__preview){grid-area:auto/1/auto/-1;grid-template-rows:none;display:block}.projects-grid__item:first-child:has(.project-record__preview) .project-record{grid-row:auto;grid-template-rows:auto;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);display:grid}.projects-grid__item:first-child:has(.project-record__preview) .project-record__preview{grid-area:1/1;min-height:clamp(30rem,41vw,39rem)}.projects-grid__item:first-child:has(.project-record__preview) .project-record__preview img{aspect-ratio:auto;height:100%;position:absolute;inset:0}.projects-grid__item:first-child:has(.project-record__preview) .project-record__body{flex-direction:column;grid-area:1/2;padding:clamp(2rem,4vw,4rem);display:flex}.projects-grid__item:first-child:has(.project-record__preview) .project-record h2{max-width:18ch;font-size:clamp(2.4rem,3.6vw,4rem)}.projects-grid__item:first-child:has(.project-record__preview) .project-record__summary{font-size:1.05rem;line-height:1.6}.projects-grid__item:first-child:has(.project-record__preview) .project-record__facts{grid-template-rows:none}}.case-page{color:var(--pf-color-graphite-950);background:var(--pf-color-canvas)}.case-page :focus-visible{outline-color:var(--pf-color-focus)}.case-page .public-site-header :focus-visible,.case-page .case-breadcrumbs :focus-visible,.case-page .case-hero :focus-visible,.case-page .public-site-footer :focus-visible{outline-color:var(--pf-color-focus-on-dark)}.case-breadcrumbs{color:var(--pf-color-muted-dark);background:var(--pf-color-black);border-bottom:1px solid var(--pf-color-line-on-dark)}.case-breadcrumbs__inner{align-items:center;gap:var(--pf-space-2);min-height:var(--pf-touch-min-size);padding-block:var(--pf-space-2);font-size:.72rem;display:flex;overflow:hidden}.case-breadcrumbs a{min-height:var(--pf-touch-min-size);white-space:nowrap;align-items:center;display:inline-flex}.case-breadcrumbs [aria-current=page]{color:var(--pf-color-ivory);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.case-hero{color:var(--pf-color-ivory);background:var(--pf-color-black)}.case-hero__grid{gap:clamp(var(--pf-space-7), 7vw, var(--pf-space-9));min-height:min(48rem, calc(100svh - var(--public-header-height)));padding-block:clamp(var(--pf-space-7), 8vw, var(--pf-space-9));grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);align-items:center;display:grid}.case-hero__copy{min-width:0}.case-hero__status{min-height:var(--pf-touch-min-size);margin:0 0 var(--pf-space-4);color:var(--pf-color-signal);letter-spacing:.08em;text-transform:uppercase;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.case-hero h1{overflow-wrap:anywhere;letter-spacing:-.04em;max-width:12ch;font-size:clamp(2rem,6.6vw,6rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.case-hero__summary{max-width:62ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-muted-dark);font-size:clamp(1rem,1.8vw,1.2rem)}.case-hero__relations{gap:var(--pf-space-2) var(--pf-space-5);margin-top:var(--pf-space-6);color:var(--pf-color-signal);flex-wrap:wrap;font-size:.76rem;font-weight:700;display:flex}.case-hero__relations a,.case-hero__relations span{min-height:var(--pf-touch-min-size);align-items:center;display:inline-flex}.case-hero__relations a:hover,.case-hero__relations a:focus-visible{color:var(--pf-color-ivory)}.case-hero__facts{margin:var(--pf-space-7) 0 0;background:var(--pf-color-line-on-dark);border-block:1px solid var(--pf-color-line-on-dark);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.case-hero__facts div{min-width:0;padding:clamp(var(--pf-space-4), 2vw, var(--pf-space-5));background:var(--pf-color-black)}.case-hero__facts dt{color:var(--pf-color-muted-dark);letter-spacing:.075em;text-transform:uppercase;font-size:.66rem;font-weight:700}.case-hero__facts dd{margin:var(--pf-space-2) 0 0;color:var(--pf-color-ivory);line-height:1.35}.case-hero__sequence{background:var(--pf-color-line-on-dark);border-block:1px solid var(--pf-color-line-on-dark);align-self:stretch;gap:1px;min-height:28rem;display:grid}.case-hero__sequence span,.case-hero__sequence strong{padding:var(--pf-space-5);color:var(--pf-color-muted-dark);background:var(--pf-color-black-soft);letter-spacing:-.025em;align-items:flex-end;font-size:clamp(1.25rem,2.5vw,2rem);font-weight:400;display:flex}.case-hero__sequence strong{color:var(--pf-color-signal)}.case-media{min-width:0;color:var(--pf-color-ivory);background:var(--pf-color-black-soft);border-block:1px solid var(--pf-color-line-on-dark);margin:0}.case-media picture{background:var(--pf-color-black-soft);display:block}.case-media img{object-fit:contain;background:var(--pf-color-black-soft);width:100%;max-height:50rem}.case-hero__media img{object-fit:cover;min-height:28rem;max-height:42rem}.case-media figcaption{gap:var(--pf-space-2);padding:var(--pf-space-4) clamp(var(--pf-space-4), 2vw, var(--pf-space-5));color:var(--pf-color-muted-dark);font-size:.76rem;display:grid}.case-media figcaption span{color:var(--pf-color-ivory)}.case-media figcaption small{font:inherit}.case-document{background:var(--pf-color-canvas)}.case-document__grid{gap:clamp(var(--pf-space-7), 8vw, var(--pf-space-9));padding-block:clamp(var(--pf-space-8), 9vw, 8rem);grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);display:grid}.case-document__index{align-self:start;position:sticky;top:7rem}.case-document__index nav{border-block:1px solid var(--pf-color-rule-strong);display:grid}.case-document__index nav a{min-height:var(--pf-touch-min-size);color:var(--pf-color-graphite-700);border-bottom:1px solid var(--pf-color-rule);align-items:center;font-size:.76rem;font-weight:700;text-decoration:none;display:flex}.case-document__index nav a:last-child{border-bottom:0}.case-document__index nav a:hover,.case-document__index nav a:focus-visible{color:var(--pf-color-graphite-950);text-underline-offset:.25em;text-decoration:underline}.case-document__work-types{margin-top:var(--pf-space-7)}.case-document__work-types h2{color:var(--pf-color-graphite-700);letter-spacing:.075em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:700}.case-document__work-types ul{gap:var(--pf-space-2);margin:var(--pf-space-3) 0 0;color:var(--pf-color-graphite-700);padding:0;font-size:.84rem;list-style:none;display:grid}.case-document__body{min-width:0}.case-story-section{padding-block:clamp(var(--pf-space-7), 6vw, var(--pf-space-9));border-top:1px solid var(--pf-color-rule-strong)}.case-story-section:first-child{border-top:0;padding-top:0}.case-story-section h2,.case-review h2{letter-spacing:-.04em;max-width:15ch;font-size:clamp(2.25rem,5.4vw,5rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.case-story-section__text{max-width:72ch;margin:var(--pf-space-6) 0 0;color:var(--pf-color-graphite-800);white-space:pre-line;font-size:clamp(1.05rem,1.7vw,1.22rem);line-height:1.68}.case-story-section--technical_note{margin-block:var(--pf-space-5);padding:clamp(var(--pf-space-5), 5vw, var(--pf-space-7));color:var(--pf-color-ivory);background:var(--pf-color-graphite-950);border-block-color:var(--pf-color-graphite-950)}.case-story-section--technical_note h2,.case-story-section--technical_note .case-rich-text{color:var(--pf-color-ivory)}.case-story-section--result{border-bottom:1px solid var(--pf-color-rule-strong)}.case-rich-text{max-width:72ch;margin-top:var(--pf-space-6);color:var(--pf-color-graphite-800)}.case-rich-text>:first-child{margin-top:0}.case-rich-text>:last-child{margin-bottom:0}.case-rich-text p,.case-rich-text li{font-size:1.05rem;line-height:1.7}.case-rich-text p{margin-block:var(--pf-space-4)}.case-rich-text h3,.case-rich-text h4{max-width:26ch;margin:var(--pf-space-7) 0 var(--pf-space-3);letter-spacing:-.025em;text-wrap:balance;font-weight:500;line-height:1.1}.case-rich-text h3{font-size:clamp(1.65rem,3vw,2.55rem)}.case-rich-text h4{font-size:clamp(1.25rem,2vw,1.65rem)}.case-rich-text ul,.case-rich-text ol{gap:var(--pf-space-3);margin-block:var(--pf-space-5);padding-left:1.35rem;display:grid}.case-rich-text a{font-weight:700}.case-key-facts{margin:var(--pf-space-6) 0 0;background:var(--pf-color-rule-strong);border-block:1px solid var(--pf-color-rule-strong);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.case-key-facts div{min-width:0;padding:var(--pf-space-5);background:var(--pf-color-paper)}.case-key-facts>div:last-child:nth-child(odd),.case-hero__facts>div:last-child:nth-child(odd){grid-column:1/-1}.case-key-facts dt{color:var(--pf-color-graphite-700);letter-spacing:.075em;text-transform:uppercase;font-size:.68rem;font-weight:700}.case-key-facts dd{margin:var(--pf-space-3) 0 0;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.3}.case-gallery{align-items:start;gap:var(--pf-space-5);margin-top:var(--pf-space-6);flex-wrap:wrap;display:flex}.case-gallery .case-media{--photo-ratio:1.333;flex:var(--photo-ratio) 1 calc(var(--photo-ratio) * 18rem);max-width:min(100%, calc(var(--photo-ratio) * 38rem))}.case-gallery .case-media--narrow{--photo-ratio:.5625}.case-gallery .case-media--portrait{--photo-ratio:.75}.case-gallery .case-media--square{--photo-ratio:1}.case-gallery .case-media--wide{--photo-ratio:1.778}.case-gallery .case-media img{width:100%;height:auto;min-height:0;max-height:none;display:block}.case-review{margin-top:clamp(var(--pf-space-7), 7vw, var(--pf-space-9));padding:clamp(var(--pf-space-6), 6vw, var(--pf-space-8));color:var(--pf-color-ivory);background:var(--pf-color-graphite-950)}.case-review h2{font-size:clamp(2rem,4vw,4rem)}.case-review blockquote{max-width:58rem;margin:var(--pf-space-7) 0 0}.case-review blockquote p{color:var(--pf-color-ivory);letter-spacing:-.025em;white-space:pre-line;margin:0;font-size:clamp(1.35rem,2.8vw,2.3rem);line-height:1.22}.case-review blockquote footer{margin-top:var(--pf-space-5);color:var(--pf-color-signal);font-size:.78rem;font-weight:700}.case-related{color:var(--pf-color-ivory);background:var(--pf-color-black);border-top:1px solid var(--pf-color-line-on-dark)}.case-related__heading{justify-content:space-between;align-items:end;gap:var(--pf-space-6);padding-bottom:var(--pf-space-6);border-bottom:1px solid var(--pf-color-line-on-dark);display:flex}.case-related__heading h2{letter-spacing:-.04em;max-width:14ch;font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:var(--pf-public-display-leading);margin:0}.case-related__heading a,.case-contact__projects-link{min-height:var(--pf-touch-min-size);align-items:center;font-size:.76rem;font-weight:700;display:inline-flex}.case-related__list{margin-top:var(--pf-space-6);background:var(--pf-color-line-on-dark);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.case-related__list article{isolation:isolate;min-width:0;padding:clamp(var(--pf-space-5), 4vw, var(--pf-space-7));background:var(--pf-color-black-soft);overflow-wrap:anywhere;position:relative}.case-related__list .case-related__card--photo{flex-direction:column;justify-content:flex-end;min-height:clamp(23rem,32vw,34rem);display:flex;overflow:hidden}.case-related__image{z-index:0;object-fit:cover;filter:grayscale()contrast(1.08)blur(1px);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.02)}.case-related__card--photo:before{z-index:1;content:"";pointer-events:none;background:linear-gradient(#121a1e47 0%,#121a1e9e 45%,#121a1ef0 100%);position:absolute;inset:0}.case-related__card--photo>:not(.case-related__image){z-index:2;position:relative}.case-related__list article:last-child:nth-child(odd){grid-column:1/-1}.case-related__list article>div{gap:var(--pf-space-2) var(--pf-space-4);color:var(--pf-color-muted-dark);letter-spacing:.07em;text-transform:uppercase;flex-wrap:wrap;font-size:.68rem;font-weight:700;display:flex}.case-related__list h3{max-width:15ch;margin:var(--pf-space-5) 0 0;letter-spacing:-.035em;font-size:clamp(1.8rem,3.4vw,3.2rem);font-weight:400;line-height:1.2}.case-related__card--photo h3{max-width:18ch;font-size:clamp(1.8rem,3vw,2.8rem)}.case-related__list h3 a{text-underline-offset:.13em;-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;text-decoration-line:none;text-decoration-thickness:1px}.case-related__list h3 a:hover,.case-related__list h3 a:focus-visible{text-decoration-line:underline}.case-related__list p{max-width:60ch;margin:var(--pf-space-4) 0 0;color:var(--pf-color-muted-dark)}.case-contact{--contact-channel-muted:var(--pf-color-graphite-700);--contact-channel-rule:var(--pf-color-rule-strong);--contact-channel-hover:var(--pf-color-graphite-700);--contact-channel-focus:var(--pf-color-focus);color:var(--pf-color-graphite-950);background:var(--pf-color-paper)}.case-contact__grid{gap:clamp(var(--pf-space-7), 6vw, var(--pf-space-9));grid-template-columns:minmax(0,.7fr) minmax(24rem,1.3fr);align-items:start;display:grid}.case-contact__intro{gap:var(--pf-space-5);align-content:start;display:grid}.case-contact h2{letter-spacing:-.04em;max-width:12ch;font-size:clamp(2.6rem,6.2vw,5.8rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.case-contact p{max-width:58ch;color:var(--pf-color-graphite-700);margin:0}.case-contact .home-contact__channels{margin-top:var(--pf-space-5)}.case-contact .public-actions{margin-top:var(--pf-space-5);align-items:center}@media (width<=64rem){.case-hero__grid,.case-document__grid,.case-contact__grid{grid-template-columns:minmax(0,1fr)}.case-hero__grid{min-height:0}.case-document__index{position:static}.case-document__index nav{grid-template-columns:repeat(4,minmax(0,1fr))}.case-document__index nav a{padding-inline:var(--pf-space-2);text-align:center;border-right:1px solid var(--pf-color-rule);border-bottom:0;justify-content:center}.case-document__work-types{margin-top:var(--pf-space-5)}.case-document__work-types ul{gap:var(--pf-space-2) var(--pf-space-5);flex-wrap:wrap;display:flex}}@media (width<=46rem){.case-hero__grid{gap:var(--pf-space-7);padding-block:var(--pf-space-8)}.case-hero__facts,.case-key-facts,.case-gallery,.case-related__list{grid-template-columns:minmax(0,1fr)}.case-gallery .case-media{flex-basis:100%;max-width:100%}.case-hero__media img{min-height:18rem}.case-document__index nav{grid-template-columns:repeat(2,minmax(0,1fr))}.case-document__index nav a{border-bottom:1px solid var(--pf-color-rule)}.case-related__heading{flex-direction:column;align-items:flex-start}}@media (width<=28rem){.case-breadcrumbs__inner{gap:var(--pf-space-1)}.case-hero h1{font-size:clamp(2rem,10.5vw,3rem)}.case-hero__facts,.case-document__index nav{grid-template-columns:minmax(0,1fr)}.case-document__index nav a{border-right:0;justify-content:flex-start}.case-story-section h2,.case-review h2{font-size:clamp(2rem,12vw,3rem)}.case-contact .public-actions{flex-direction:column;align-items:stretch}.case-contact .public-button,.case-contact__projects-link{justify-content:center;width:100%}}@media (forced-colors:active){.case-breadcrumbs,.case-hero,.case-media,.case-hero__facts,.case-hero__sequence,.case-document__index nav,.case-story-section,.case-key-facts,.case-review,.case-related,.case-related__list{border-color:canvastext}}@media print{.case-page .public-site-header,.case-page .public-site-footer,.case-breadcrumbs,.case-document__index,.case-related,.case-contact{display:none}.case-page,.case-hero,.case-document,.case-story-section,.case-story-section--technical_note,.case-media,.case-review{color:#000!important;background:#fff!important}.case-hero__grid,.case-document__grid{display:block}.case-media,.case-review,.case-story-section,.case-key-facts{break-inside:avoid;border-color:#000!important}.case-hero__media,.case-hero__sequence{margin-top:2rem}}.case-media__enlarge{cursor:zoom-in;display:block;position:relative}.case-media__enlarge:focus-visible{outline:3px solid var(--pf-color-signal);outline-offset:3px}.case-media__zoom{color:#f4f2ed;background:#080808e6;align-items:center;gap:.5rem;padding:.65rem .8rem;font-size:.75rem;display:flex;position:absolute;bottom:.85rem;right:.85rem}.case-media__zoom svg,.photo-viewer svg{stroke-width:1.5px;flex:none;width:1.2rem;height:1.2rem}.photo-viewer{color:#f4f2ed;background:#080808;border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(.75rem,2vw,2rem)}.photo-viewer[open]{grid-template-rows:auto minmax(0,1fr) auto;gap:1rem;display:grid}.photo-viewer::backdrop{background:#000000e6}.photo-viewer__toolbar{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.photo-viewer__toolbar p{font-variant-numeric:tabular-nums;flex:1;margin:0}.photo-viewer button{min-width:2.75rem;min-height:2.75rem;color:inherit;font:inherit;cursor:pointer;background:#171919;border:1px solid #63635e;justify-content:center;align-items:center;gap:.6rem;padding:.6rem .85rem;font-size:.85rem;display:inline-flex}.photo-viewer button:is(:hover,:focus-visible){color:#080808;background:#ded8c9}.photo-viewer button:disabled{opacity:.4;cursor:default}.photo-viewer__stage{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;overflow:auto}.photo-viewer__stage img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photo-viewer__loading,.photo-viewer__error{text-align:center;max-width:32rem;margin:auto;padding:1rem}.photo-viewer__loading{color:var(--pf-color-muted-dark)}.photo-viewer__error p{margin:0 0 1.25rem}.photo-viewer__error button{min-height:var(--pf-control-min-height)}.photo-viewer__stage.is-zoomed{text-align:center;display:block}.photo-viewer__stage.is-zoomed img{max-width:none;max-height:none;display:inline-block}.photo-viewer__footer{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.photo-viewer__footer p{overscroll-behavior:contain;justify-self:center;max-width:80ch;max-height:min(9em,28dvh);margin:0;padding:.15rem .25rem;font-size:.85rem;line-height:1.5;overflow:auto}.photo-viewer__footer p:focus-visible{outline:2px solid var(--pf-color-focus-on-dark);outline-offset:2px}.photo-viewer [hidden]{display:none}@media (width<=30rem){.photo-viewer__toolbar{gap:.5rem}.photo-viewer__footer{gap:.65rem}.photo-viewer__footer p{font-size:.75rem}}@media print{.case-media__zoom,.photo-viewer{display:none!important}}.review-author{gap:.7rem;display:grid}.reviews-shell{color:var(--pf-color-ivory);background:var(--pf-color-black)}.reviews-intro{padding-block:clamp(5rem,10vw,10rem)}.reviews-intro__grid{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);align-items:end;gap:clamp(2rem,7vw,9rem);display:grid}.reviews-intro h1,.reviews-contact h2{letter-spacing:-.04em;max-width:12ch;font-size:clamp(3rem,7.5vw,6rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.reviews-intro p,.reviews-contact__intro>p{max-width:38rem;color:var(--pf-color-muted-dark);margin:0;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.7}.reviews-ledger{color:var(--pf-color-graphite-950);background:var(--pf-color-ivory)}.reviews-ledger :focus-visible{outline-color:var(--pf-color-focus)}.reviews-ledger__list{border-bottom:1px solid #17191a47}.reviews-entry{border-top:1px solid #17191a47;grid-template-columns:minmax(0,1fr) minmax(14rem,.3fr);align-items:end;gap:clamp(2rem,7vw,8rem);min-height:clamp(22rem,38vw,36rem);padding-block:clamp(3rem,7vw,7rem);display:grid}.reviews-entry blockquote{margin:0}.reviews-entry__excerpt p{letter-spacing:-.035em;text-wrap:pretty;max-width:34ch;margin:0;font-size:clamp(1.85rem,4.2vw,4.5rem);font-weight:400;line-height:1.08}.reviews-entry__full{margin-top:1.5rem}.reviews-entry__full summary{width:fit-content;min-height:44px;color:var(--pf-color-graphite-700);cursor:pointer;text-underline-offset:.25em;padding-block:.65rem;font-size:.95rem;line-height:1.5;text-decoration:underline;text-decoration-thickness:1px}.reviews-entry__full summary:hover,.reviews-entry__full summary:focus-visible{color:var(--pf-color-graphite-950)}.reviews-entry__full blockquote{max-width:68ch;margin-top:1rem;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.65}.reviews-entry__full p{margin:0}.reviews-entry__full p+p{margin-top:.85em}.reviews-entry footer{border-top:1px solid #17191a59;align-self:end;gap:.55rem;padding-top:1.25rem;display:grid}.reviews-entry footer strong{font-size:1rem;font-weight:500}.reviews-entry footer span{max-width:24ch;color:var(--pf-color-graphite-700);font-size:.82rem;line-height:1.5}.reviews-contact{background:var(--pf-color-black-soft);border-top:1px solid var(--pf-color-line-on-dark);padding-block:clamp(5rem,10vw,10rem)}.reviews-contact__intro{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:end;gap:clamp(2rem,5vw,5rem);margin-bottom:clamp(2.5rem,5vw,4.5rem);display:grid}.reviews-contact h2{max-width:10ch;font-size:clamp(2.75rem,5.2vw,5.75rem)}@media (width<=64rem){.reviews-intro__grid,.reviews-contact__intro{grid-template-columns:minmax(0,1fr);align-items:start}.reviews-entry{grid-template-columns:minmax(0,1fr) minmax(12rem,.35fr)}.reviews-contact__intro{gap:1.5rem}}@media (width<=46rem){.reviews-intro{padding-block:clamp(4.5rem,16vw,7rem)}.reviews-intro h1,.reviews-contact h2{font-size:clamp(2.5rem,13vw,4.25rem)}.reviews-entry{grid-template-columns:minmax(0,1fr);align-content:space-between;gap:3rem;min-height:28rem}.reviews-entry__excerpt p{font-size:clamp(1.6rem,7.5vw,2.7rem)}.reviews-entry footer{max-width:18rem}}@media (width<=28rem){.reviews-intro h1,.reviews-contact h2{overflow-wrap:break-word;font-size:clamp(2.3rem,12vw,3.4rem)}.reviews-entry{min-height:24rem}.reviews-entry__excerpt p{font-size:1.55rem}}@media (forced-colors:active){.reviews-ledger__list,.reviews-entry,.reviews-entry footer,.reviews-contact{border-color:canvastext}}@media print{.reviews-shell,.reviews-ledger,.reviews-contact{color:#000;background:#fff}.reviews-entry{break-inside:avoid;min-height:auto}}.information-shell{color:var(--pf-color-ivory);background:var(--pf-color-black)}.information-intro{padding-block:clamp(4.75rem,9vw,9rem) clamp(4rem,7vw,7rem)}.information-intro__grid,.contacts-intro__grid{grid-template-columns:minmax(0,1.12fr) minmax(22rem,.88fr);align-items:end;gap:clamp(3rem,8vw,10rem);display:grid}.information-intro__copy h1,.not-found h1{letter-spacing:-.04em;max-width:12ch;font-size:clamp(3rem,7.5vw,6rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.contacts-intro h1{font-size:clamp(3rem,7vw,6rem)}.contacts-intro{padding-block:clamp(2.75rem,6vw,6rem)}.contacts-intro .contacts-intro__grid{align-items:start;gap:clamp(2rem,6vw,6rem)}.contacts-intro__next{min-width:0}.information-intro__lead{max-width:42rem;color:var(--pf-color-muted-dark);margin:clamp(2rem,4vw,4rem) 0 0;font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.7}.about-intro__portrait{border:1px solid var(--pf-color-line-on-dark);width:min(100%,34rem);box-shadow:var(--pf-shadow-dark);background:0 0;margin:0 0 0 auto;position:relative}.about-intro__portrait img{aspect-ratio:4/5;object-fit:cover;object-position:center 20%;filter:none;width:100%}.about-intro__portrait figcaption{right:var(--pf-space-4);bottom:var(--pf-space-4);color:var(--pf-color-ivory);letter-spacing:.08em;text-transform:uppercase;background:#080808e0;padding:.55rem .7rem;font-size:.68rem;font-weight:700;position:absolute}.about-sequence{border-block:1px solid var(--pf-color-line-on-dark);grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(4rem,8vw,8rem) 0 0;padding:0;list-style:none;display:grid}.about-sequence li{align-content:space-between;gap:1.5rem;min-height:8.5rem;padding:1.35rem;display:grid}.about-sequence li+li{border-left:1px solid var(--pf-color-line-on-dark)}.about-sequence span,.about-process__list>li>span,.contacts-brief__list span{color:var(--pf-color-signal);letter-spacing:.1em;font-size:.68rem;font-weight:700}.about-sequence strong{font-size:clamp(1rem,1.6vw,1.3rem);font-weight:400}.about-responsibility{color:var(--pf-color-graphite-950);background:var(--pf-color-ivory);padding-block:clamp(5rem,10vw,10rem)}.about-responsibility :focus-visible,.contacts-brief :focus-visible{outline-color:var(--pf-color-focus)}.about-responsibility__grid,.about-scope__grid,.contacts-geography__grid{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(3rem,8vw,10rem);display:grid}.about-responsibility h2,.information-section-heading h2,.about-scope h2,.contacts-geography h2,.information-closing h2{letter-spacing:-.04em;max-width:13ch;font-size:clamp(2.6rem,5.3vw,5.5rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.about-responsibility__copy{max-width:48rem}.about-responsibility__copy>p{max-width:67ch;color:var(--pf-color-graphite-700);margin:0;line-height:1.75}.about-responsibility__copy>p+p{margin-top:1.5rem}.about-responsibility__copy .about-responsibility__lead{color:var(--pf-color-graphite-950);letter-spacing:-.02em;font-size:clamp(1.35rem,2.5vw,2.25rem);line-height:1.25}.about-process,.contacts-brief{padding-block:clamp(5rem,10vw,10rem)}.information-section-heading{grid-template-columns:minmax(0,1.18fr) minmax(18rem,.62fr);align-items:end;gap:clamp(2rem,7vw,9rem);padding-bottom:clamp(3rem,6vw,6rem);display:grid}.information-section-heading p,.information-closing p{max-width:40rem;color:var(--pf-color-muted-dark);margin:0;line-height:1.7}.about-process__list,.contacts-brief__list{border-bottom:1px solid var(--pf-color-line-on-dark);margin:0;padding:0;list-style:none}.about-process__list>li{border-top:1px solid var(--pf-color-line-on-dark);grid-template-columns:clamp(10rem,17vw,14rem) minmax(0,.9fr) minmax(0,1fr);grid-template-areas:"drawing title copy";align-items:center;gap:clamp(2rem,4vw,4.75rem);min-height:12rem;padding-block:2.25rem;display:grid}.engineering-icon{width:6rem;height:5rem;display:block}.about-process__drawing{min-width:0;color:var(--pf-color-ivory);grid-area:drawing;gap:.65rem;display:grid}.about-process__drawing>span{color:var(--pf-color-muted-dark);font-variant-numeric:tabular-nums;letter-spacing:.14em;font-size:.72rem}.about-process__drawing .about-process__diagram{width:100%;max-width:14rem;height:auto}.about-process__diagram :is(path,circle){vector-effect:non-scaling-stroke}.about-process__diagram :is(.about-process__registration,.about-process__guide){opacity:.32}.about-process__diagram .about-process__structure{opacity:.56;stroke-width:1.6px}.about-process__diagram .about-process__fine{opacity:.42}.about-process__diagram .about-process__route{stroke:#a5b7bc;stroke-width:2.4px}.about-process__diagram .about-process__node{fill:#e6b77f;stroke:none}.about-process__diagram .about-process__check{stroke:#e6b77f;stroke-width:2px}.about-process__diagram .about-process__route-glow{opacity:0;stroke:#edaa68;stroke-width:3px;stroke-dasharray:100 100;stroke-dashoffset:100px;vector-effect:none}@media (hover:hover){.about-process__list>li:hover .about-process__route-glow{opacity:1;stroke-dashoffset:0}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.about-process__diagram .about-process__route-glow{transition:stroke-dashoffset .9s cubic-bezier(.22,.68,0,1),opacity .18s ease-out}}.about-page .information-closing__grid{grid-template-columns:minmax(0,1fr)}.about-process__list h3{letter-spacing:-.025em;grid-area:title;margin:0;font-size:clamp(1.4rem,2.5vw,2.35rem);font-weight:400;line-height:1.1}.about-process__list p{max-width:62ch;color:var(--pf-color-muted-dark);grid-area:copy;margin:0;line-height:1.7}.about-scope,.contacts-geography{background:var(--pf-color-black-soft);border-block:1px solid var(--pf-color-line-on-dark);padding-block:clamp(5rem,10vw,10rem)}.about-scope dl{border-bottom:1px solid var(--pf-color-line-on-dark);margin:0}.about-scope dl>div{border-top:1px solid var(--pf-color-line-on-dark);grid-template-columns:minmax(8rem,.32fr) minmax(0,.68fr);gap:2rem;padding-block:1.75rem;display:grid}.about-scope dt{color:var(--pf-color-signal);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700}.about-scope dd{max-width:56ch;color:var(--pf-color-muted-dark);margin:0;line-height:1.7}.information-closing{padding-block:clamp(5rem,10vw,10rem)}.information-closing__grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(3rem,8vw,10rem);display:grid}.information-closing p{margin-top:clamp(1.5rem,3vw,3rem)}.information-closing__grid:has(.lead-form){grid-template-columns:minmax(0,1fr);gap:clamp(2rem,4vw,4rem)}.information-closing__grid:has(.lead-form)>div:first-child{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:clamp(2rem,5vw,5rem);display:grid}.information-closing__grid:has(.lead-form)>div:first-child p{margin:0}@media (width<=46rem){.information-closing__grid:has(.lead-form)>div:first-child{grid-template-columns:minmax(0,1fr)}}.contacts-intro__grid{align-items:end}.contacts-intro__next .information-intro__lead{margin-top:0}.contacts-intro__next .public-button{margin-top:1.75rem}.contacts-intro h1 span{display:block}.contacts-ledger{border-bottom:1px solid var(--pf-color-line-on-dark);margin:0;font-style:normal}.contacts-ledger a{border-top:1px solid var(--pf-color-line-on-dark);align-content:space-between;gap:.65rem;min-height:10rem;padding-block:1.75rem;text-decoration:none;display:grid}.contacts-ledger a:hover,.contacts-ledger a:focus-visible{color:var(--pf-color-signal)}.contacts-ledger span,.contacts-ledger small{color:var(--pf-color-muted-dark)}.contacts-ledger span{letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700}.contacts-ledger strong{overflow-wrap:anywhere;letter-spacing:-.025em;font-size:clamp(1.35rem,2.6vw,2.5rem);font-weight:400}.contacts-ledger small{max-width:36ch;font-size:.8rem;line-height:1.5}.contacts-brief{color:var(--pf-color-graphite-950);background:var(--pf-color-ivory)}.contacts-brief .information-section-heading p{color:var(--pf-color-graphite-700)}.contacts-brief__list{border-color:#17191a47;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.contacts-brief__list span{color:var(--pf-color-graphite-700)}.contacts-brief__list li{border-top:1px solid #17191a47;align-content:start;gap:1rem;min-height:15rem;padding:1.5rem;display:grid}.contacts-brief__list .engineering-icon{color:var(--pf-color-graphite-700);margin-bottom:1rem}.contacts-brief__list h3{margin:0;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:500}.contacts-brief__list li+li{border-left:1px solid #17191a47}.contacts-brief__list p{color:var(--pf-color-graphite-700);margin:0;font-size:1rem;line-height:1.6}.contacts-geography__grid p{max-width:29ch;color:var(--pf-color-ivory);letter-spacing:-.03em;text-wrap:pretty;margin:0;font-size:clamp(1.6rem,3.5vw,3.35rem);line-height:1.15}.not-found{min-height:calc(100svh - var(--public-header-height));align-items:center;padding-block:clamp(4rem,8vw,8rem);display:flex}.not-found__grid{grid-template-columns:minmax(14rem,.62fr) minmax(0,1fr);align-items:end;gap:clamp(3rem,9vw,11rem);display:grid}.not-found__code{color:var(--pf-color-signal);letter-spacing:-.04em;margin:0;font-size:clamp(7rem,20vw,18rem);font-weight:400;line-height:.7}.not-found__copy>p{max-width:52ch;color:var(--pf-color-muted-dark);margin:2rem 0 0;line-height:1.7}.not-found__copy .public-actions{margin-top:2.5rem}@media (width<=64rem){.about-process__diagram .about-process__route-glow{stroke-width:4.5px}.information-intro__grid,.contacts-intro__grid,.about-responsibility__grid,.about-scope__grid,.contacts-geography__grid,.information-section-heading,.information-closing__grid{grid-template-columns:minmax(0,1fr);align-items:start}.about-intro__portrait{width:min(100%,38rem);margin:0}.about-process__list>li{grid-template-columns:9rem minmax(0,1fr);grid-template-areas:"drawing title""drawing copy";align-items:start;gap:.75rem 2rem}.contacts-brief__list{grid-template-columns:repeat(2,minmax(0,1fr))}.contacts-brief__list li:nth-child(3){border-left:0}}@media (width<=46rem){.about-process__diagram .about-process__route-glow{stroke-width:6px}.information-intro__copy h1,.not-found h1{overflow-wrap:normal;max-width:none;font-size:clamp(2rem,10vw,4rem);line-height:1.03}.about-sequence,.contacts-brief__list{grid-template-columns:minmax(0,1fr)}.about-sequence li{min-height:6.5rem}.about-sequence li+li,.contacts-brief__list li+li{border-left:0;border-top:1px solid var(--pf-color-line-on-dark)}.contacts-brief__list li+li{border-top-color:#17191a47}.about-responsibility h2,.information-section-heading h2,.about-scope h2,.contacts-geography h2,.information-closing h2{font-size:clamp(2.4rem,12vw,4rem)}.about-process__list>li{grid-template-columns:6.5rem minmax(0,1fr);grid-template-areas:"drawing title""copy copy";gap:1.25rem;min-height:auto}.about-process__drawing{gap:.35rem}.about-process__list h3{align-self:center}.about-scope dl>div{grid-template-columns:minmax(0,1fr);gap:1rem}.contacts-brief__list li{min-height:10rem}.not-found{min-height:auto}.not-found__grid{grid-template-columns:minmax(0,1fr)}.not-found__code{font-size:clamp(7rem,42vw,12rem)}}@media (width<=28rem){.information-intro__copy h1,.not-found h1{font-size:clamp(1.9rem,9.6vw,2.7rem)}.contacts-ledger strong{font-size:clamp(1.05rem,7.2vw,1.7rem)}.contacts-intro h1 span:last-child{letter-spacing:-.03em;font-size:.88em}.about-intro__portrait figcaption{right:var(--pf-space-3);bottom:var(--pf-space-3);left:var(--pf-space-3);width:fit-content}}@media (forced-colors:active){.about-intro__portrait,.about-sequence,.about-sequence li,.about-process__list,.about-process__list>li,.about-scope,.about-scope dl,.about-scope dl>div,.contacts-ledger,.contacts-ledger a,.contacts-brief__list,.contacts-brief__list li,.contacts-geography{border-color:canvastext}}@media print{.information-shell,.about-responsibility,.contacts-brief,.about-scope,.contacts-geography{color:#000;background:#fff}.about-process__list>li,.contacts-brief__list li{break-inside:avoid;min-height:auto}}.contact-options{border-top:1px solid;margin:0;font-style:normal;display:grid}.contact-options a{min-height:5.25rem;color:inherit;border-bottom:1px solid;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1rem 0;text-decoration:none;display:grid}.contact-options__icon{color:currentColor;width:1.75rem;height:1.75rem;transition:transform .18s}.contact-options__details{gap:.18rem;min-width:0;display:grid}.contact-options__details>span{letter-spacing:.08em;text-transform:uppercase;opacity:.72;font-size:.75rem;font-weight:600}.contact-options strong{overflow-wrap:anywhere;letter-spacing:-.02em;font-size:clamp(1rem,1.55vw,1.35rem);font-weight:450}.contact-options .public-route-mark{width:1.3rem;height:.975rem}.contact-options a:hover .contact-options__icon,.contact-options a:focus-visible .contact-options__icon{transform:translateY(-.12rem)}.contact-options a:focus-visible{outline:2px solid var(--pf-color-focus);outline-offset:3px}.contacts-intro__next>h2{letter-spacing:-.03em;margin:0 0 1.5rem;font-size:clamp(1.4rem,2.2vw,2.2rem);font-weight:450}.contacts-brief{border-top:1px solid #d7d9d3;padding-block:clamp(3rem,6vw,6rem)}.contacts-form-section{border-top:1px solid var(--pf-color-line-on-dark);padding-block:clamp(3rem,5vw,5rem)}.contacts-form-section__grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.contacts-form-section h2{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,4rem);font-weight:450;line-height:1.1}.contacts-form-section__grid>div>p{max-width:34ch;color:var(--pf-color-muted-dark);margin:1.25rem 0 0;line-height:1.6}.contact-dialog{--pf-public-action-bg:#1b2224;--pf-public-action-text:#fff;--pf-public-action-hover:#394143;color:#1b2224;background:#f6f5f0;border:1px solid #d3d0c8;border-radius:.4rem;width:min(66rem,100% - 2rem);max-height:calc(100svh - 2rem);padding:clamp(1.5rem,3vw,2.5rem);overflow:auto;box-shadow:0 2rem 6rem #0000004d}.contact-dialog[open]{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"head head""intro options""actions options";align-items:start;gap:1.25rem clamp(2rem,5vw,4rem);display:grid}.contact-dialog::backdrop{background:#070c0ea6}.contact-dialog__head{grid-area:head;justify-content:space-between;align-items:center;gap:1rem;display:flex}.contact-dialog__head span{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:650}.contact-dialog__intro{grid-area:intro}.contact-dialog h2{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.25rem);font-weight:450;line-height:1.08}.contact-dialog__intro p{color:#4d595c;max-width:34ch;margin:1.25rem 0 0;line-height:1.55}.contact-dialog__close{width:2.75rem;height:2.75rem;color:inherit;cursor:pointer;background:0 0;border:1px solid #a9b0b0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.contact-dialog__close svg{width:1.125rem;height:1.125rem;display:block}.contact-dialog__close:hover,.contact-dialog__close:focus-visible{background:#e7e8e4}.contact-dialog__close:focus-visible{outline:2px solid var(--pf-color-focus);outline-offset:3px}.contact-dialog .contact-options{border:0;grid-area:options;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:.75rem}.contact-dialog .contact-options a{background:#fff;border:1px solid #cbd0ce;border-radius:.2rem;grid-template-rows:auto 1fr;grid-template-columns:1.75rem minmax(0,1fr) 1.3rem;align-content:space-between;gap:.75rem;min-height:8rem;padding:1rem;transition:background-color .18s,border-color .18s}.contact-dialog .contact-options a:hover,.contact-dialog .contact-options a:focus-visible{background:#eef1ef;border-color:#84918e}.contact-dialog .contact-options__icon{grid-area:1/1}.contact-dialog .contact-options__details{grid-area:2/1/auto/-1;align-self:end}.contact-dialog .contact-options strong{font-size:clamp(1rem,1.3vw,1.125rem)}.contact-dialog .contact-options .public-route-mark{grid-area:1/3;justify-self:end}.contact-dialog__actions{grid-area:actions;align-self:end;gap:.75rem;display:grid}.contact-dialog .contact-dialog__form{justify-content:space-between;width:100%;margin:0;display:flex}@media (width<=64rem){.contacts-form-section__grid{grid-template-columns:1fr}}@media (width<=56rem){.contact-dialog{width:min(42rem,100% - 2rem)}.contact-dialog[open]{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""intro""options""actions";row-gap:1rem}.contact-dialog__intro p{max-width:50ch;margin-top:.75rem}.contact-dialog .contact-options a{min-height:6.5rem}}@media (width<=40rem){.contact-options a{gap:.75rem}.contact-dialog{width:calc(100% - 1rem);max-height:calc(100svh - 1.5rem);padding:1.25rem}.contact-dialog h2{font-size:2rem}.contact-dialog .contact-options{border-top:1px solid #cbd0ce;grid-template-columns:minmax(0,1fr);gap:0}.contact-dialog .contact-options a{background:0 0;border:0;border-bottom:1px solid #cbd0ce;border-radius:0;grid-template-rows:auto;grid-template-columns:1.75rem minmax(0,1fr) 1.3rem;gap:.75rem;min-height:3.75rem;padding:.65rem 0}.contact-dialog .contact-options__details{grid-area:1/2;align-self:center}.contact-dialog .contact-options .public-route-mark{grid-row:1;align-self:center}}@media (prefers-reduced-motion:reduce){.contact-options__icon,.contact-dialog .contact-options a{transition:none}}.engineer-quote{gap:var(--pf-space-4);border-block:1px solid var(--pf-color-rule);max-width:44rem;color:var(--pf-color-graphite-950);grid-template-columns:clamp(1.25rem,3vw,2.5rem) minmax(0,1fr);margin:clamp(2rem,4vw,3rem) 0 0;padding-block:clamp(1.5rem,3vw,2.5rem);display:grid}.engineer-quote__mark{color:var(--pf-color-graphite-700);font-size:clamp(3rem,5vw,4.5rem);line-height:.8}.engineer-quote blockquote{letter-spacing:-.022em;margin:0;font-size:clamp(1.35rem,2.1vw,2rem);font-weight:400;line-height:1.38}.engineer-quote blockquote p{max-width:36ch;margin:0}.engineer-quote figcaption{color:var(--pf-color-graphite-700);grid-column:2;font-size:.8rem;line-height:1.5}.engineer-quote figcaption strong{font-weight:650}@media (forced-colors:active){.engineer-quote{border-color:canvastext}}@media print{.engineer-quote{break-inside:avoid}}.service-navigation{padding-block:calc((var(--public-header-height) - var(--pf-touch-min-size)) / 2);position:relative}.service-navigation>summary{min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);letter-spacing:.015em;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding-block:.45rem;font-size:.8125rem;font-weight:500;line-height:1.2;list-style:none;display:flex}.service-navigation>summary::-webkit-details-marker{display:none}.service-navigation>summary svg{transition:transform var(--pf-duration-fast) ease;flex:none}.service-navigation[open]>summary svg{transform:rotate(180deg)}.service-navigation[open]>summary,.service-navigation[data-current=true]>summary,.service-navigation>summary:hover,.service-navigation>summary:focus-visible{color:var(--pf-color-ivory)}.service-navigation[data-current=true]>summary span{text-decoration:underline;-webkit-text-decoration-color:var(--pf-color-signal);text-decoration-color:var(--pf-color-signal);text-underline-offset:.65em;text-decoration-thickness:1px}.service-navigation__panel{background:var(--pf-color-black);border:1px solid var(--pf-color-line-on-dark);width:27rem;box-shadow:var(--pf-shadow-dark);padding:.75rem 1.5rem 1rem;position:absolute;top:100%;left:-1.5rem}.service-navigation__panel ul{margin:0;padding:0;list-style:none}.service-navigation__panel li+li{border-top:1px solid var(--pf-color-line-on-dark)}.service-navigation__panel a{min-height:3.75rem;color:var(--pf-color-ivory);justify-content:space-between;align-items:center;gap:1rem;padding-block:.75rem;font-size:1rem;font-weight:400;line-height:1.4;text-decoration:none;display:flex}.service-navigation__panel a svg{color:var(--pf-color-muted-dark);transition:transform var(--pf-duration-fast) ease;flex:none}.service-navigation__panel a:hover,.service-navigation__panel a:focus-visible,.service-navigation__panel a[aria-current=page]{color:var(--pf-color-signal)}.service-navigation__panel a:hover svg,.service-navigation__panel a:focus-visible svg{transform:translate(3px)}.service-navigation__panel .service-navigation__overview{min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);justify-content:flex-start;margin-top:.25rem;font-size:.8125rem;text-decoration:underline}.service-navigation__overview:hover,.service-navigation__overview:focus-visible{color:var(--pf-color-ivory)}@media (width<=64rem){.service-navigation{border-bottom:1px solid var(--pf-color-line-on-dark);padding:0}.service-navigation>summary{min-height:3.25rem;padding-inline:0;font-size:1.12rem}.service-navigation__panel{width:100%;box-shadow:none;background:0 0;border:0;padding:0 0 .5rem .75rem;position:static}.service-navigation__panel a{min-height:2.75rem;padding-block:.6rem;font-size:.95rem}}@media (width>=46.001rem) and (width<=64rem){body.public-site .public-site-header__mobile-panel nav{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;column-gap:3rem;display:grid}body.public-site .public-site-header__mobile-panel .service-navigation{grid-area:1/1/5}body.public-site .public-site-header__mobile-panel nav>a{grid-column:2}body.public-site .public-site-header__mobile-panel>.public-button{width:auto;min-width:15rem}}@media (prefers-reduced-motion:reduce){.service-navigation svg{transition:none!important}}@media (forced-colors:active){.service-navigation__panel,.service-navigation__panel li+li{border-color:canvastext}}@media print{.service-navigation{display:none}}.designers-shell{color:var(--pf-color-ivory);background:var(--pf-color-black)}.designers-hero{min-height:calc(100svh - var(--public-header-height));padding-block:clamp(3rem,5vw,5rem)}.designers-hero__grid{grid-template-columns:minmax(24rem,.92fr) minmax(30rem,1.08fr);align-items:center;gap:clamp(3rem,6vw,8rem);min-height:0;display:grid}.designers-hero__copy{max-width:43rem}.designers-hero h1{letter-spacing:-.04em;max-width:16ch;font-size:clamp(3rem,4.4vw,4.75rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.designers-hero__lead{max-width:56ch;color:var(--pf-color-ivory);margin:clamp(2rem,4vw,3.5rem) 0 0;font-size:clamp(1.1rem,1.65vw,1.4rem);line-height:1.62}.designers-hero__support{max-width:61ch;color:var(--pf-color-muted-dark);margin:1.25rem 0 0;line-height:1.75}.designers-hero__actions{margin-top:clamp(2rem,4vw,3.5rem)}.designers-text-link{min-height:var(--pf-touch-min-size);color:var(--pf-color-ivory);text-underline-offset:.3em;align-items:center;font-size:.9rem;font-weight:400;text-decoration-thickness:1px;display:inline-flex}.designers-text-link:hover,.designers-text-link:focus-visible{color:var(--pf-color-ivory)}.designers-hero__facts{border-block:1px solid var(--pf-color-line-on-dark);grid-template-columns:repeat(2,minmax(0,1fr));margin:clamp(2.5rem,5vw,4.5rem) 0 0;display:grid}.designers-hero__facts>div{align-content:space-between;gap:1.25rem;min-height:8.5rem;padding-block:1.25rem;display:grid}.designers-hero__facts>div+div{border-left:1px solid var(--pf-color-line-on-dark);padding-left:1.5rem}.designers-hero__facts dt,.designers-implementation dt{color:var(--pf-color-signal);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:700}.designers-hero__facts dd{max-width:27ch;color:var(--pf-color-muted-dark);margin:0;font-size:.88rem;line-height:1.55}.designers-hero__proof,.designers-implementation__proof{background:var(--pf-color-black-soft);border:1px solid var(--pf-color-line-on-dark);box-shadow:var(--pf-shadow-dark);margin:0;position:relative;overflow:hidden}.designers-hero__proof picture,.designers-implementation__proof picture{display:block}.designers-hero__proof img{aspect-ratio:16/9;object-fit:cover;filter:saturate(.72)contrast(1.05);width:100%}.designers-hero__proof figcaption,.designers-implementation__proof figcaption{right:var(--pf-space-4);bottom:var(--pf-space-4);left:var(--pf-space-4);width:fit-content;max-width:calc(100% - (var(--pf-space-4) * 2));color:var(--pf-color-ivory);letter-spacing:.065em;text-transform:uppercase;background:#080808e0;padding:.55rem .7rem;font-size:.66rem;font-weight:700;line-height:1.4;position:absolute}.designers-alignment{color:var(--pf-color-graphite-950);background:var(--pf-color-ivory);padding-block:clamp(5rem,10vw,10rem)}.designers-alignment :focus-visible,.designers-deliverables :focus-visible{outline-color:var(--pf-color-focus)}.designers-alignment__grid,.designers-deliverables__grid{grid-template-columns:minmax(18rem,.76fr) minmax(0,1.24fr);align-items:start;gap:clamp(3rem,8vw,10rem);display:grid}.designers-alignment h2,.designers-section-heading h2,.designers-implementation h2,.designers-deliverables h2,.designers-contact h2{letter-spacing:-.04em;max-width:13ch;font-size:clamp(2.7rem,5.4vw,5.65rem);font-weight:400;line-height:var(--pf-public-display-leading);text-wrap:balance;margin:0}.designers-alignment__copy{max-width:49rem}.designers-alignment__copy p{max-width:68ch;color:var(--pf-color-graphite-700);margin:0;line-height:1.78}.designers-alignment__copy p+p{margin-top:1.5rem}.designers-alignment__copy .designers-alignment__lead{color:var(--pf-color-graphite-950);letter-spacing:-.02em;font-size:clamp(1.35rem,2.5vw,2.3rem);line-height:1.26}.designers-process{padding-block:clamp(5rem,10vw,10rem)}.designers-section-heading{grid-template-columns:minmax(0,1.18fr) minmax(18rem,.62fr);align-items:end;gap:clamp(2rem,7vw,9rem);padding-bottom:clamp(3rem,6vw,6rem);display:grid}.designers-section-heading p,.designers-deliverables header>p,.designers-contact p{max-width:42rem;color:var(--pf-color-muted-dark);margin:0;line-height:1.75}.designers-process__list{border-bottom:1px solid var(--pf-color-line-on-dark);margin:0;padding:0;list-style:none}.designers-process__list li{border-top:1px solid var(--pf-color-line-on-dark);grid-template-columns:4rem minmax(15rem,.72fr) minmax(18rem,1fr);align-items:start;gap:clamp(1.5rem,4vw,5rem);min-height:10rem;padding-block:2rem;display:grid}.designers-process__list span{color:var(--pf-color-signal);letter-spacing:.1em;font-size:.68rem;font-weight:700}.designers-process__list h3{letter-spacing:-.025em;margin:0;font-size:clamp(1.4rem,2.5vw,2.35rem);font-weight:400;line-height:1.1}.designers-process__list p{max-width:62ch;color:var(--pf-color-muted-dark);margin:0;line-height:1.72}.designers-implementation{background:var(--pf-color-black-soft);border-block:1px solid var(--pf-color-line-on-dark);padding-block:clamp(5rem,10vw,10rem)}.designers-implementation__grid{grid-template-columns:minmax(22rem,.82fr) minmax(24rem,1.18fr);align-items:center;gap:clamp(3rem,8vw,10rem);display:grid}.designers-implementation__proof{width:min(100%,37rem)}.designers-implementation__proof img{aspect-ratio:3/4;object-fit:cover;filter:saturate(.76)contrast(1.03)brightness(.84);width:100%}.designers-implementation__copy>p{max-width:62ch;color:var(--pf-color-muted-dark);margin:clamp(2rem,4vw,3.5rem) 0 0;font-size:clamp(1.05rem,1.55vw,1.25rem);line-height:1.75}.designers-implementation dl{border-bottom:1px solid var(--pf-color-line-on-dark);margin:clamp(2.5rem,5vw,4.5rem) 0 0}.designers-implementation dl>div{border-top:1px solid var(--pf-color-line-on-dark);grid-template-columns:minmax(7rem,.28fr) minmax(0,.72fr);gap:2rem;padding-block:1.5rem;display:grid}.designers-implementation dd{max-width:50ch;color:var(--pf-color-muted-dark);margin:0;line-height:1.65}.designers-deliverables{color:var(--pf-color-graphite-950);background:var(--pf-color-ivory);padding-block:clamp(5rem,10vw,10rem)}.designers-deliverables header>p{color:var(--pf-color-graphite-700);margin-top:clamp(1.5rem,3vw,3rem)}.designers-deliverables ul{border-bottom:1px solid #17191a47;margin:0;padding:0;list-style:none}.designers-deliverables li{border-top:1px solid #17191a47;grid-template-columns:minmax(14rem,.7fr) minmax(16rem,1fr);gap:clamp(2rem,4vw,5rem);padding-block:1.75rem;display:grid}.designers-deliverables strong{letter-spacing:-.02em;font-size:clamp(1.2rem,2vw,1.8rem);font-weight:400;line-height:1.25}.designers-deliverables li span{max-width:52ch;color:var(--pf-color-graphite-700);line-height:1.7}.designers-contact{padding-block:clamp(5rem,10vw,10rem)}.designers-contact__grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(3rem,8vw,10rem);display:grid}.designers-contact p{margin-top:clamp(1.5rem,3vw,3rem)}@media (width<=64rem){.designers-hero{min-height:auto}.designers-hero__grid,.designers-alignment__grid,.designers-section-heading,.designers-implementation__grid,.designers-deliverables__grid,.designers-contact__grid{grid-template-columns:minmax(0,1fr);align-items:start}.designers-hero__copy{max-width:50rem}.designers-hero__proof{width:100%}.designers-process__list li{grid-template-columns:3rem minmax(14rem,.8fr) minmax(16rem,1fr)}.designers-implementation__proof{width:min(100%,36rem)}}@media (width<=46rem){.designers-hero{padding-block:clamp(4.5rem,16vw,7rem)}.designers-hero h1,.designers-alignment h2,.designers-section-heading h2,.designers-implementation h2,.designers-deliverables h2,.designers-contact h2{font-size:clamp(2.45rem,12.5vw,4.25rem)}.designers-hero__facts{grid-template-columns:minmax(0,1fr)}.designers-hero__facts>div{min-height:7rem}.designers-hero__facts>div+div{border-top:1px solid var(--pf-color-line-on-dark);border-left:0;padding-left:0}.designers-process__list li{grid-template-columns:2.5rem minmax(0,1fr);min-height:auto}.designers-process__list p{grid-column:2}.designers-implementation dl>div,.designers-deliverables li{grid-template-columns:minmax(0,1fr);gap:1rem}}@media (width<=28rem){.designers-hero h1,.designers-alignment h2,.designers-section-heading h2,.designers-implementation h2,.designers-deliverables h2,.designers-contact h2{overflow-wrap:anywhere;font-size:clamp(2.15rem,11vw,3.2rem)}.designers-hero__proof figcaption,.designers-implementation__proof figcaption{right:var(--pf-space-3);bottom:var(--pf-space-3);left:var(--pf-space-3);max-width:calc(100% - (var(--pf-space-3) * 2))}}@media (prefers-reduced-motion:reduce){.designers-shell *,.designers-shell :before,.designers-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (forced-colors:active){.designers-hero__facts,.designers-hero__facts>div,.designers-hero__proof,.designers-process__list,.designers-process__list li,.designers-implementation,.designers-implementation__proof,.designers-implementation dl,.designers-implementation dl>div,.designers-deliverables ul,.designers-deliverables li{border-color:canvastext}}@media print{.designers-shell,.designers-alignment,.designers-implementation,.designers-deliverables{color:#000;background:#fff}.designers-process__list li,.designers-deliverables li{break-inside:avoid;min-height:auto}}@media (prefers-reduced-motion:no-preference){.public-site-header__mobile-navigation[open] .public-site-header__mobile-panel{animation:navigation-unfold .22s var(--pf-public-motion-ease)}.home-live-project__media{overflow:hidden}.home-live-project__media img{transition:transform .5s var(--pf-public-motion-ease)}@media (hover:hover){.home-live-project__link:hover .home-live-project__media img,.home-live-project__link:focus-visible .home-live-project__media img{transform:scale(1.025)}}}@keyframes navigation-unfold{0%{opacity:.92;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.public-route-mark{flex:none;width:1.5rem;height:1.125rem;overflow:visible}.public-route-mark__traveller{fill:currentColor;offset-path:path("M3 20 H13 V6 H27");offset-distance:0%;offset-rotate:0deg;transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.public-route-mark__traveller{transition:offset-distance .72s cubic-bezier(.45, 0, .2, 1), transform .26s var(--pf-public-motion-ease)}}:is(a,button):is(:hover,:focus-visible):not(:disabled):not([aria-disabled=true]) .public-route-mark__traveller{offset-distance:100%;transition-delay:0s,.52s;transform:scale(1.24)}@supports not (offset-path:path("M0 0 L1 1")){.public-route-mark__traveller{transform:translate(3px,20px)}:is(a,button):is(:hover,:focus-visible):not(:disabled):not([aria-disabled=true]) .public-route-mark__traveller{transition-delay:0s;transform:translate(27px,6px)scale(1.24)}}@media (prefers-reduced-motion:reduce){.public-route-mark__traveller{transition:none!important}}body.public-site .public-surface--paper{--pf-color-black:var(--pf-album-paper);--pf-color-black-soft:var(--pf-album-soft);--pf-color-ivory:var(--pf-album-ink);--pf-color-muted-dark:var(--pf-album-muted);--pf-color-signal:#465256;--pf-color-line-on-dark:var(--pf-color-rule);--pf-public-action-bg:var(--pf-album-ink);--pf-public-action-text:var(--pf-album-paper);--pf-public-action-hover:#303e44;color:var(--pf-album-ink);background:var(--pf-album-paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body.public-site .public-surface--paper :focus-visible{outline-color:var(--pf-color-focus)}body.public-site :is(h1,h2,h3){letter-spacing:var(--pf-public-display-tracking)}body.public-site :is(.home-section__heading h2,.home-about__heading h2,.home-contact h2){font-size:clamp(2.3rem,4.3vw,4.5rem);font-weight:450;line-height:1.1}body.public-site :is(.service-hero h1,.information-intro h1,.reviews-intro h1,.projects-intro h1,.case-hero h1,.designers-hero h1){font-size:clamp(2.6rem,5.1vw,5.25rem);font-weight:450;line-height:1.08}body.public-site .residence-hero h1{font-size:clamp(3rem,6vw,6rem);font-weight:450}body.public-site .home-system{border-bottom:1px solid var(--pf-color-rule);padding-block:clamp(2.5rem,4.5vw,4.5rem)}body.public-site .home-system__intro{grid-template-columns:10rem minmax(0,1.45fr) minmax(16rem,.8fr);align-items:start;gap:clamp(1.5rem,3vw,3rem);padding-bottom:clamp(2rem,3.5vw,3.5rem);display:grid}body.public-site .home-system__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--pf-album-muted);margin:.55rem 0 0;font-size:.75rem;line-height:1.5}body.public-site .home-system h2{text-wrap:balance;max-width:17ch;margin:0;font-size:clamp(2.25rem,3.9vw,4.25rem);font-weight:450;line-height:1.08}body.public-site .home-system__explanation{max-width:38ch;color:var(--pf-color-graphite-700);margin:.35rem 0 0;font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.6}body.public-site .home-system__sequence-wrap{border-top:1px solid var(--pf-color-rule);position:relative}body.public-site .home-system__trace{transform-origin:0;pointer-events:none;background:#71858a;width:100%;height:2px;position:absolute;top:-1px;left:0}body.public-site .home-system__sequence{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}body.public-site .home-system__sequence li{grid-template-columns:2rem minmax(0,1fr);align-content:start;gap:.45rem .75rem;padding:1.4rem clamp(1rem,2.2vw,2.25rem) 0 0;display:grid}body.public-site .home-system__sequence li+li{border-left:1px solid var(--pf-color-rule);padding-left:clamp(1rem,2.2vw,2.25rem)}body.public-site .home-system__sequence span{color:var(--pf-album-muted);padding-top:.35rem;font-size:.75rem}body.public-site .home-system__sequence strong{font-size:clamp(1.2rem,1.75vw,1.6rem);font-weight:450;line-height:1.2}body.public-site .home-system__sequence p{max-width:29ch;color:var(--pf-color-graphite-700);grid-column:2;margin:0;font-size:.9rem;line-height:1.5}@media (width<=64rem){body.public-site .home-system__intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}body.public-site .home-system__eyebrow{grid-column:1/-1;margin:0}}@media (width<=46rem){body.public-site .home-system__intro{grid-template-columns:1fr;gap:1rem;padding-bottom:1.75rem}body.public-site .home-system h2{font-size:clamp(2rem,9vw,3rem)}body.public-site .home-system__explanation{margin-top:.25rem}body.public-site .home-system__sequence-wrap{border-top:0}body.public-site .home-system__trace{display:none}body.public-site .home-system__sequence{grid-template-columns:1fr}body.public-site .home-system__sequence li,body.public-site .home-system__sequence li+li{border-left:0;border-top:1px solid var(--pf-color-rule);grid-template-columns:2rem minmax(0,1fr);padding:.9rem 0}body.public-site .home-system__sequence p{max-width:none}}body.public-site :is(.home-section,.reviews-intro,.information-intro,.about-responsibility,.reviews-contact,.service-scope,.service-journey,.service-gallery,.service-related,.service-reviews,.about-process,.about-scope,.contacts-brief,.contacts-geography,.information-closing,.designers-alignment,.designers-process,.designers-implementation,.designers-deliverables,.designers-contact),body.public-site :is(.service-engineering__grid,.service-faq__grid,.service-contact__grid){padding-block:var(--pf-public-section-space)}body.public-site :is(.service-engineering__grid,.service-contact__grid,.service-related,.information-closing,.contacts-geography){padding-block:clamp(2.5rem,4vw,3.5rem)}body.public-site :is(.home-section__heading,.reviews-contact__heading,.designers-section-heading){margin-bottom:var(--pf-public-group-space)}body.public-site .home-about__copy{padding:var(--pf-public-section-space) clamp(1.25rem, 4vw, 3rem)}body.public-site :is(.home-contact__grid>div:first-child>p,.home-about__copy .home-about__lead){margin-top:1.5rem}body.public-site :is(.designers-process__list li,.contacts-brief__list li){min-height:0;padding-block:1.5rem}body.public-site .designers-hero{min-height:0;padding-block:var(--pf-public-section-space)}body.public-site .designers-hero__facts{margin-top:2rem}body.public-site .designers-hero__facts>div{min-height:0}body.public-site :is(.home-services,.service-scope){background:var(--pf-color-black-soft)}body.public-site :is(.home-services,.home-evidence) .home-section__heading{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);margin-left:0}body.public-site .home-services__spread{gap:2.5rem;display:grid}body.public-site .home-services__intro{grid-template-columns:1.25fr .75fr;align-items:end;gap:2rem;margin:0;display:grid}body.public-site .home-services__intro p{max-width:38ch;font-size:1rem}body.public-site .home-services__introduction{gap:1rem;display:grid}body.public-site .home-services__introduction p{margin:0}body.public-site .home-service-list{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;display:grid}body.public-site .home-service-row{border-top:0;border-bottom:1px solid var(--pf-color-line-on-dark);grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) 2.75rem;align-items:start;gap:1.25rem 1.5rem;min-height:0;padding:0 0 2rem}body.public-site .home-service-row h3{max-width:24ch;font-size:clamp(1.4rem,2.2vw,2rem)}body.public-site .home-service-row__copy{grid-area:2/1}body.public-site .home-service-row__copy p{color:var(--pf-color-muted-dark);margin-top:.75rem}body.public-site .home-service-row__arrow{border-top:1px solid;border-bottom:0;border-left:0;border-right:1px solid;border-radius:0;grid-area:2/2;align-self:start;width:3rem;height:3rem;margin-top:.2rem}body.public-site .home-service-row__arrow svg{width:1.75rem;height:1.35rem}body.public-site .home-service-row:is(:hover,:focus-visible) .home-service-row__arrow{color:var(--pf-color-ivory);background:0 0;border-color:currentColor}body.public-site .home-service-row__preview{--service-crop:1.12;isolation:isolate;background:var(--pf-color-black-soft);grid-area:1/1/auto/-1;width:100%;height:clamp(13rem,22vw,20rem);margin:0;position:relative;inset:auto;overflow:hidden;-webkit-mask-image:none;mask-image:none}body.public-site .home-service-row__preview:after{pointer-events:none;content:"";background:linear-gradient(#0000 45%,#1c262b80 80%,#1c262b 100%);position:absolute;inset:0}body.public-site .home-service-row__preview img{object-fit:cover;width:100%;height:100%;transform:scale(var(--service-crop));transform-origin:50%;filter:grayscale()brightness(.78)contrast(1.08);transition:transform .7s var(--pf-public-motion-ease), filter .5s var(--pf-public-motion-ease)}body.public-site .home-service-row__preview--drawing img{filter:grayscale()invert()brightness(.85);mix-blend-mode:screen}body.public-site .home-service-row__preview--panel{--service-crop:1.55}body.public-site .home-service-row__preview--panel img{object-position:75% 43%;transform-origin:75% 43%}body.public-site .home-service-row__preview--assembly{--service-crop:1.08}body.public-site .home-service-row__preview--assembly img{object-position:50% 46%}body.public-site .home-service-row__preview--installation{--service-crop:1.08}body.public-site .home-service-row:is(:hover,:focus-visible) .home-service-row__preview img{filter:grayscale()brightness(.92)contrast(1.08)}body.public-site .home-service-row:is(:hover,:focus-visible) .home-service-row__preview--drawing img{filter:grayscale()invert()brightness()}@media (prefers-reduced-motion:no-preference) and (hover:hover){body.public-site .home-service-row:is(:hover,:focus-visible) .home-service-row__preview img{transform:scale(calc(var(--service-crop) + .045))}}@media (prefers-reduced-motion:reduce){body.public-site .home-service-row__preview img{transition:none}}body.public-site .home-services__help{border-top:1px solid var(--pf-color-line-on-dark);justify-content:space-between;align-items:center;gap:1.5rem;padding-top:2rem;display:flex}body.public-site .home-services__help p{max-width:44ch;color:var(--pf-color-muted-dark);margin:0}body.public-site .home-services__help .public-button{flex-shrink:0}body.public-site .home-live-project{background:0 0;border:0}body.public-site .home-live-project__heading{padding:1.5rem 0 .75rem}body.public-site .home-live-project__summary{padding:0}body.public-site .home-live-project:first-child .home-live-project__link{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-content:start;gap:0 clamp(2rem,4vw,4rem);display:grid}body.public-site .home-live-project:first-child .home-live-project__media{grid-row:span 2}body.public-site .home-live-project:first-child .home-live-project__media img{aspect-ratio:4/3}body.public-site .home-live-project:first-child .home-live-project__heading{flex-direction:column;justify-content:start;gap:1rem;padding-top:0}body.public-site .home-live-project:first-child .home-live-project__heading h3{font-size:clamp(1.8rem,3vw,3rem)}body.public-site .home-live-project:first-child .home-live-project__summary{align-self:start}body.public-site .home-evidence{background:var(--pf-album-soft)}body.public-site .home-evidence :is(.home-section__heading p,figcaption span){color:var(--pf-color-graphite-700)}body.public-site .home-about__portrait img{filter:none}body.public-site .home-about__portrait figcaption{letter-spacing:0;text-transform:none;font-size:.875rem}body.public-site .home-review{gap:1.5rem;min-height:0}body.public-site .home-review>p{letter-spacing:-.015em;max-width:60ch;font-size:clamp(1.1rem,1.65vw,1.4rem);line-height:1.55}body.public-site .home-review footer{order:-1;align-items:start;margin:0;padding:0}body.public-site .home-review footer span{font-size:.875rem}body.public-site .home-reviews .home-section__text-link{color:var(--pf-album-ink)}body.public-site .service-hero{min-height:0}body.public-site .service-hero__grid{min-height:0;padding-block:var(--pf-public-section-space);grid-template-rows:auto 1fr;grid-template-areas:"offer proof""facts proof";align-items:start;row-gap:2rem}body.public-site .service-hero__copy{grid-area:offer}body.public-site .service-hero__grid>:is(.drawing-showcase,.service-hero__proof){grid-area:proof}body.public-site .service-hero h1{overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual;max-width:none;font-size:clamp(2rem,4vw,3.75rem)}body.public-site .about-responsibility h2{overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual;max-width:none;font-size:clamp(2rem,4vw,4rem)}body.public-site .service-hero__copy h1,body.public-site .service-hero__offer,body.public-site .service-hero__facts{min-block-size:0}body.public-site .service-hero__facts{grid-area:facts;margin:0}body.public-site .service-hero__facts dt{letter-spacing:0;text-transform:none;font-size:.8rem;font-weight:450}body.public-site .service-hero__proof:before{content:none}body.public-site .service-hero__proof figcaption{font-size:.875rem}body.public-site .drawing-showcase,body.public-site .drawing-showcase__stage{background:var(--pf-album-paper)}body.public-site .drawing-showcase__sheet img{filter:none;mix-blend-mode:normal}body.public-site .drawing-showcase__sheet{mix-blend-mode:multiply}body.public-site .drawing-showcase__stage{isolation:isolate}body.public-site .drawing-showcase{isolation:isolate;background:var(--pf-album-paper)}body.public-site .service-overview .service-overview__result{border-left:1px solid var(--pf-color-rule);background:0 0;justify-content:start;padding:0 0 0 clamp(2rem,4vw,4rem)}body.public-site .service-overview__grid{gap:var(--pf-public-group-space) clamp(2.5rem, 5vw, 5rem);padding-block:var(--pf-public-section-space);grid-template-areas:"audience result""inputs inputs"}body.public-site .service-overview .service-overview__inputs{padding-top:var(--pf-public-group-space);grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:2rem clamp(2.5rem,5vw,5rem);display:grid}body.public-site .service-overview__inputs ul{margin:0}body.public-site .service-overview__result .public-button{color:var(--pf-album-paper);background:var(--pf-album-ink);margin-top:1.5rem}body.public-site .service-overview__result .public-button:hover{background:#303e44}body.public-site .service-overview__result .service-next-link{margin-top:1.5rem;line-height:1.6;display:block}body.public-site .service-section-heading{padding-bottom:var(--pf-public-group-space);column-gap:clamp(2rem,5vw,5rem)}body.public-site .service-wayfinding a{letter-spacing:0;text-transform:none;font-size:.85rem;font-weight:400}body.public-site .service-gallery--drawing .service-gallery__image{background:var(--pf-color-black);isolation:isolate}body.public-site .service-gallery--drawing .service-gallery__image img{filter:grayscale()invert();mix-blend-mode:screen}body.public-site .service-proof-stack{background:0 0;display:grid}body.public-site .service-proof-stack:not(.service-proof-stack--photo){isolation:isolate;background:var(--pf-color-black-soft)}body.public-site .service-proof-stack:not(.service-proof-stack--photo)>div{mix-blend-mode:screen}body.public-site .service-proof-stack:not(.service-proof-stack--photo) img{filter:grayscale()invert()}body.public-site .service-proof-stack>div{visibility:hidden;opacity:0;grid-area:1/1}body.public-site .service-proof-stack>div[data-active]{visibility:visible;opacity:1}body.public-site .service-proof-stack img{aspect-ratio:4/3;object-fit:contain;width:100%}body.public-site .service-proof-stack--photo img{object-fit:cover}body.public-site .service-explorer__visual figcaption{margin-top:1rem;line-height:1.6}body.public-site .service-explorer__visual [data-scope-caption]{display:block}body.public-site .service-journey__waypoint .engineering-icon{display:none}body.public-site .service-journey__waypoint:before,body.public-site .service-journey__waypoint:after{content:none}body.public-site .reviews-ledger{background:var(--pf-album-paper)}body.public-site .reviews-entry{min-height:0;padding-block:var(--pf-public-group-space);grid-template-columns:minmax(0,.4fr) minmax(0,1fr);align-items:start}body.public-site .reviews-entry footer{border:0;grid-area:1/1;align-self:start;padding:0}body.public-site .reviews-entry footer strong{font-size:1.2rem;font-weight:450}body.public-site .reviews-entry footer span{max-width:28ch;font-size:.95rem}body.public-site .reviews-entry__text{grid-column:2}body.public-site .reviews-entry__complete{max-width:68ch;font-size:clamp(1.1rem,1.55vw,1.375rem);line-height:1.65}body.public-site .reviews-entry__complete p{margin:0}body.public-site .reviews-entry__complete p+p{margin-top:1em}body.public-site .reviews-entry:first-child .reviews-entry__complete p:first-child{text-wrap:balance;max-width:38ch;margin-bottom:1.5rem;font-size:clamp(1.8rem,2.8vw,2.75rem);font-weight:450;line-height:1.25}body.public-site .reviews-entry:first-child .reviews-entry__complete p:first-child+p{margin-top:0}body.public-site .about-intro__portrait{box-shadow:none;background:0 0;border:0}body.public-site .about-intro__portrait figcaption{color:var(--pf-album-muted);letter-spacing:0;text-transform:none;background:0 0;padding:.75rem 0 0;font-size:.875rem;font-weight:400;position:static}body.public-site .case-hero__facts div{background:0 0}body.public-site .designers-hero__proof{box-shadow:none;background:var(--pf-album-paper);isolation:isolate;border:0}body.public-site .designers-hero__proof img{aspect-ratio:auto;object-fit:contain;filter:none;mix-blend-mode:multiply;height:auto;display:block}body.public-site .designers-hero__proof figcaption{width:auto;max-width:none;color:var(--pf-color-graphite-700);letter-spacing:0;text-transform:none;background:0 0;margin-top:1rem;padding:0;font-size:.875rem;font-weight:400;line-height:1.6;position:static}body.public-site .case-hero__facts{background:0 0;gap:1.5rem}body.public-site .case-hero__facts div{padding-inline:0}body.public-site .case-hero__facts :is(dt,dd){color:var(--pf-album-ink)}body.public-site .case-hero__facts dt{text-transform:none;letter-spacing:0;font-size:.8rem;font-weight:450}body.public-site .case-hero__relations a:hover{color:var(--pf-album-ink)}body.public-site .lead-form__notice{border-left-width:1px}body.public-site :is(input,textarea){caret-color:currentColor}body.public-site ::selection{color:#f5f5f1;background:#465b63}body.public-site{scrollbar-color:#718087 #182024}body.public-site .public-site-footer__signoff>span{color:var(--pf-color-muted-dark);letter-spacing:0;text-transform:none;margin:.75rem 0 0;font-size:.875rem;font-weight:400;display:block}body.public-site .public-faq .service-faq__grid{grid-template-columns:1fr;gap:0}body.public-site .public-faq header{margin-bottom:var(--pf-public-group-space);grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:end;gap:2rem clamp(2rem,6vw,6rem);display:grid}body.public-site .public-faq header h2{max-width:19ch;margin:0;font-size:clamp(2.3rem,4.3vw,4.5rem);font-weight:450;line-height:1.1}body.public-site .public-faq header p{max-width:38ch;color:var(--pf-color-graphite-700);margin:0;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65}body.public-site .public-faq :is(.home-faq__list,.service-faq__list){border-top:0;border-bottom:1px solid var(--pf-color-rule)}body.public-site .public-faq details{border-top:1px solid var(--pf-color-rule);border-bottom:0}body.public-site .public-faq summary{letter-spacing:-.018em;justify-content:space-between;align-items:center;gap:2rem;min-height:5.5rem;padding-block:1.35rem;padding-inline-end:1rem;font-size:clamp(1.15rem,2vw,1.75rem);font-weight:400;line-height:1.4;list-style:none;display:flex}body.public-site .public-faq summary:after{content:"";width:1.1rem;height:1.1rem;transition:transform .3s var(--pf-public-motion-ease);border-bottom:1px solid;border-right:1px solid;flex:none;transform:rotate(45deg)translate(-.2rem,-.2rem)}body.public-site .public-faq details[open]:not([data-expanded=false]) summary:after{transform:rotate(225deg)translate(-.1rem,-.1rem)}body.public-site .public-faq details[data-expanded=false] summary:after{transform:rotate(45deg)translate(-.2rem,-.2rem)}body.public-site .public-faq details>p{max-width:70ch;color:var(--pf-color-graphite-700);margin:0;padding:0 4rem 2rem 0;font-size:1rem;line-height:1.7}@media (width<=64rem){body.public-site .home-service-list{gap:2.5rem}body.public-site .service-hero__grid{grid-template:"offer""proof""facts"/1fr}body.public-site .service-hero h1{font-size:clamp(2rem,5.8vw,3.5rem)}body.public-site .service-overview__grid{grid-template-columns:1fr;grid-template-areas:"audience""result""inputs"}body.public-site .service-overview .service-overview__result{border-left:0;border-top:1px solid var(--pf-color-rule);padding:2.5rem 0 0}body.public-site .service-overview .service-overview__inputs{grid-template-columns:1fr;gap:1.5rem}body.public-site .service-explorer__grid{grid-template-columns:1fr}body.public-site .service-explorer__visual{width:100%;max-width:36rem;margin-inline:auto}body.public-site .service-hero__grid>.drawing-showcase{width:100%;max-width:38rem;margin-inline:auto}body.public-site .service-explorer__items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem;display:grid}body.public-site .service-explorer__hint{grid-column:1/-1}body.public-site .home-live-project:first-child .home-live-project__link{display:block}body.public-site .home-live-project:first-child .home-live-project__heading{padding-top:1.5rem}}@media (width<=46rem){body.public-site .service-hero h1{font-size:clamp(1.75rem,9.1vw,2.5rem)}body.public-site .about-responsibility h2{font-size:clamp(2rem,8.8vw,3.5rem)}body.public-site :is(.home-services,.home-evidence) .home-section__heading,body.public-site .home-services__intro,body.public-site .home-service-list{grid-template-columns:1fr}body.public-site .home-service-row{gap:1rem;padding-block:0 1.5rem}body.public-site .home-service-row h3{font-size:1.5rem}body.public-site .home-service-row__preview{aspect-ratio:16/9;height:auto}body.public-site .home-services__help{flex-direction:column;align-items:start}body.public-site .home-services__help .public-button{width:100%}body.public-site .service-explorer__items{grid-template-columns:1fr}body.public-site .service-explorer__hint{display:none}body.public-site .service-journey__steps li{border-top:1px solid var(--pf-color-rule);grid-template-columns:1.75rem minmax(0,1fr);gap:.75rem;padding-block:1.5rem}body.public-site .service-journey__steps li:after{content:none}body.public-site .service-journey__waypoint{padding-top:.25rem}body.public-site .service-overview .service-overview__result{border-left:0;border-top:1px solid var(--pf-color-rule);padding:2rem 0 0}body.public-site .reviews-entry{grid-template-columns:1fr;gap:1.5rem}body.public-site .reviews-entry__text{grid-area:2/1}body.public-site .residence-hero h1{font-size:clamp(2.5rem,10.5vw,4rem)}body.public-site .public-faq header{grid-template-columns:1fr}body.public-site .public-faq details>p{padding-right:0}}@media print{body.public-site .service-gallery--drawing .service-gallery__image{background:#fff}body.public-site .service-gallery--drawing .service-gallery__image img{filter:none;mix-blend-mode:normal}body.public-site .public-surface--paper,body.public-site .home-evidence{color:#000;background:#fff}body.public-site .service-proof-stack:not(.service-proof-stack--photo){background:#fff}body.public-site .service-proof-stack:not(.service-proof-stack--photo) img{filter:none}body.public-site .service-proof-stack:not(.service-proof-stack--photo)>div{mix-blend-mode:normal}}body.public-site .service-scope__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,5vw,5rem);display:grid}body.public-site .service-scope__steps article{padding-block:1.5rem}body.public-site .service-reviews blockquote{max-width:65ch;margin:1.5rem 0 0}body.public-site .service-reviews blockquote>p{font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.45}body.public-site .service-reviews footer{color:var(--pf-color-muted-dark);margin-block:1.25rem .75rem}body.public-site .home-services__guidance{line-height:1.6}@media (width<=46rem){body.public-site .service-scope__steps{grid-template-columns:1fr}}body.public-site .service-contact__estimate-title{margin:1.5rem 0 .5rem;font-size:1.05rem;font-weight:500;line-height:1.4}body.public-site .home-contact__channels>.lead-form__help{margin:.75rem 0 0;font-size:.875rem;line-height:1.6}body.public-site .reviews-entry footer .service-text-link{margin-top:.75rem;font-size:.9rem;display:block}body.public-site :is(.reviews-ledger,.case-story-section--result) .service-text-link{color:var(--pf-album-ink)}body.public-site :is(.reviews-ledger,.case-story-section--result) .service-text-link:focus-visible{outline-color:var(--pf-color-focus)}body.public-site .contacts-geography h2{max-width:24ch;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.3}body.public-site .contacts-geography p{letter-spacing:normal;max-width:58ch;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.6}body.public-site .contacts-geography__grid{gap:1.5rem 3rem}body.public-site .contacts-intro__next .contacts-email-action{margin:0 0 1rem}body.public-site .case-story-section h2{max-width:26ch;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2}body.public-site .case-story-section{padding-block:clamp(1.5rem,3vw,2.5rem)}body.public-site .case-story-section:first-child{padding-top:0}body.public-site .case-gallery-context{max-width:65ch;margin:0 0 1.5rem;font-size:1rem;line-height:1.6}body.public-site .case-gallery-context a{color:inherit;text-underline-offset:.2em}body.public-site .case-gallery-more{margin-top:1.5rem}body.public-site .case-gallery-more>summary{cursor:pointer;border:1px solid;border-radius:2rem;justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;padding:.75rem 1.25rem;font-size:1rem;line-height:1.5;list-style:none;display:flex}body.public-site .case-gallery-more>summary::-webkit-details-marker{display:none}body.public-site .case-gallery-more>summary svg{flex:none;width:1.25rem;height:1.25rem}body.public-site .case-gallery-more .case-gallery{margin-top:1.5rem}body.public-site .case-gallery-more__open,body.public-site .case-gallery-more[open] .case-gallery-more__closed{display:none}body.public-site .case-gallery-more[open] .case-gallery-more__open{display:inline}body.public-site .case-gallery-more[open]>summary svg{transform:rotate(180deg)}body.public-site .home-about{padding-block:clamp(3rem,5vw,5rem)}body.public-site .home-about .home-about__grid{width:min(calc(100% - 2 * var(--pf-layout-gutter)), 80rem);grid-template-columns:clamp(16rem,22vw,20rem) minmax(0,1fr);grid-template-areas:"portrait heading""portrait copy";align-items:start;gap:1rem clamp(2.5rem,5vw,5rem);margin-inline:auto}body.public-site .home-about__heading{grid-area:heading;align-self:end}body.public-site .home-about__heading h2{max-width:16ch;margin:0}body.public-site .home-about__copy{grid-area:copy;padding:0}body.public-site .home-about__copy .home-about__lead{margin-top:0}body.public-site .home-about__scope{padding-top:1.75rem}body.public-site .home-about__portrait{aspect-ratio:4/5;clip-path:none;background:0 0;grid-area:portrait;align-self:start;width:100%;height:auto;min-height:0;max-height:none;margin:0;position:relative;overflow:hidden}body.public-site .home-about__portrait picture{height:100%;display:block}body.public-site .home-about__portrait img{aspect-ratio:auto;object-fit:contain;filter:grayscale();background:0 0;width:175%;max-width:none;height:auto;display:block;position:absolute;top:0;left:-37.5%}@media (width<=64rem){body.public-site .home-about .home-about__grid{grid-template-columns:clamp(11rem,25vw,15rem) minmax(0,1fr);gap:1rem clamp(2rem,4vw,3rem)}body.public-site .home-about__heading h2{font-size:clamp(2.35rem,4.5vw,3.25rem)}}@media (width<=40rem){body.public-site .home-about{padding-block:2.5rem}body.public-site .home-about .home-about__grid{grid-template-columns:clamp(6.5rem,25vw,8rem) minmax(0,1fr);grid-template-areas:"portrait heading""copy copy";align-items:center;gap:1.5rem 1.25rem}body.public-site .home-about__portrait{aspect-ratio:1/1.28}body.public-site .home-about__heading h2{font-size:clamp(1.65rem,6vw,2.35rem);line-height:1.08}body.public-site .home-about__copy{padding:0}}body.public-site .about-intro{padding-block:2.5rem 0;overflow:hidden}body.public-site .about-intro .information-intro__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:2rem}body.public-site .about-intro .information-intro__copy{padding-block:1rem 3rem}body.public-site .about-intro .information-intro__lead{margin-top:2rem}body.public-site .about-intro__portrait{aspect-ratio:1.6;align-self:end;width:112%;margin:0 0 0 -4%;overflow:hidden}body.public-site .about-intro__portrait img{aspect-ratio:auto;object-fit:contain;object-position:48% bottom;filter:grayscale();background:0 0;width:100%;height:auto;display:block}body.public-site .contacts-founder{align-items:center;gap:1.5rem;margin:2rem 0 0;display:flex}body.public-site .contacts-founder img{object-fit:cover;object-position:48% bottom;filter:grayscale();background:0 0;width:12rem;height:9rem}body.public-site .contacts-founder figcaption{gap:.5rem;font-size:1rem;line-height:1.5;display:grid}body.public-site .contacts-founder strong{font-size:1.5rem;font-weight:450}body.public-site .contacts-founder span{max-width:20ch;color:var(--pf-album-muted)}@media (width<=48rem){body.public-site .about-intro .information-intro__grid{grid-template-columns:1fr;gap:0}body.public-site .about-intro .information-intro__copy{padding-block:0 2rem}body.public-site .about-intro__portrait{width:calc(100% + 2 * var(--pf-layout-gutter));max-width:34rem;margin-inline:calc(-1 * var(--pf-layout-gutter));aspect-ratio:1.6}body.public-site .about-intro__portrait img{aspect-ratio:auto}body.public-site .contacts-founder{gap:1rem}body.public-site .contacts-founder img{width:10rem;height:7.5rem}}body.public-site .contacts-intro__next .home-contact__channels>a{grid-template-columns:1fr;gap:.75rem}body.public-site .about-intro__portrait{aspect-ratio:1.4}body.public-site .about-intro__portrait img{width:125%;max-width:none;margin-left:-12.5%}body.public-site .contacts-founder__avatar{background:0 0;border-radius:50%;flex:0 0 9rem;width:9rem;height:9rem;display:block;position:relative;overflow:hidden}body.public-site .contacts-founder__avatar img{object-fit:contain;width:170%;max-width:none;height:auto;position:absolute;top:0;left:-35%}@media (width<=48rem){body.public-site .contacts-founder__avatar{flex-basis:7rem;width:7rem;height:7rem}}body.public-site .about-intro{padding-bottom:3rem}body.public-site .about-intro__portrait{aspect-ratio:4/5;background:0 0;align-self:start;width:100%;max-width:36rem;margin:0 0 0 auto;position:relative}body.public-site .about-intro__portrait img{width:185%;max-width:none;height:auto;margin:0;position:absolute;top:0;left:-42.5%}@media (width<=48rem){body.public-site .about-intro__portrait{aspect-ratio:4/5;width:100%;max-width:30rem;margin-inline:auto}}body.public-site .about-intro{--portrait-extension:9rem;padding-block:0 var(--portrait-extension)}body.public-site .about-intro .information-intro__grid{grid-template:"copy portrait""quote portrait"minmax(0,1fr)/minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:0 clamp(2rem,5vw,5rem)}body.public-site .about-intro .information-intro__copy{grid-area:copy;align-self:start;padding-block:clamp(3rem,5vw,5rem) 0}body.public-site .about-intro h1{text-wrap:initial;max-width:none}body.public-site .about-name{font-size:clamp(4.5rem,8vw,8rem);line-height:1;display:block}body.public-site .about-role{max-width:17ch;margin-top:1.25rem;font-size:clamp(2rem,3.1vw,3.25rem);line-height:1.12;display:block}body.public-site .about-intro .information-intro__lead{max-width:38ch;margin-top:2rem;font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.6}body.public-site .about-intro__action{gap:1.5rem;margin-top:2rem}body.public-site .about-intro__quote{z-index:1;grid-area:quote;align-self:end;padding-block:clamp(2rem,4vw,3.5rem) 1rem;position:relative}body.public-site .about-intro__quote .engineer-quote{border-bottom:0;grid-template-columns:1.5rem minmax(0,1fr);gap:1rem;max-width:35rem;margin:0;padding-block:1.35rem 0}body.public-site .about-intro__quote .engineer-quote__mark{font-size:3rem}body.public-site .about-intro__quote blockquote{font-size:clamp(1.25rem,1.75vw,1.65rem);line-height:1.4}body.public-site .about-intro__quote figcaption{margin-top:.35rem}body.public-site .about-intro__portrait{aspect-ratio:auto;width:100%;max-width:none;min-height:35rem;height:calc(100% + var(--portrait-extension));background:0 0;grid-area:portrait;align-self:stretch;min-width:0;margin:0;overflow:visible;-webkit-mask-image:none;mask-image:none}body.public-site .about-intro__portrait img{object-fit:cover;object-position:center top;pointer-events:none;width:auto;min-width:150%;max-width:none;height:86%;top:2rem;left:50%;transform:translate(-53%);-webkit-mask-image:linear-gradient(#000 0% 55%,#000000e0 64%,#0000008f 73%,#00000052 79%,#00000024 86%,#0000000a 93%,#0000 100%);mask-image:linear-gradient(#000 0% 55%,#000000e0 64%,#0000008f 73%,#00000052 79%,#00000024 86%,#0000000a 93%,#0000 100%)}@media (width>=72.01rem){body.public-site .about-responsibility__grid{z-index:1;margin-top:calc(-1 * var(--pf-public-section-space) - 2rem);border-top:1px solid var(--pf-color-rule);grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(2rem,5vw,5rem);padding-top:clamp(1.5rem,2vw,2rem);position:relative}body.public-site .about-responsibility__grid>h2{margin-top:0}body.public-site .about-responsibility__copy{max-width:none;padding-inline:clamp(1.25rem,2.5vw,3rem)}body.public-site .about-responsibility__copy>p{max-width:none}body.public-site .about-responsibility__copy .about-responsibility__lead{color:var(--pf-color-graphite-700);text-align:left;font-size:clamp(1.5rem,1.65vw,1.625rem);line-height:1.35}}@media (width>=44.01rem) and (width<=72rem){body.public-site .about-intro{--portrait-extension:3rem}body.public-site .about-intro .information-intro__grid{grid-template:"copy portrait""quote portrait"minmax(0,1fr)/minmax(0,1fr) minmax(0,1fr);row-gap:0}body.public-site .about-intro .information-intro__copy{padding-block:clamp(2.5rem,5vw,4rem) 0}body.public-site .about-intro__portrait{width:100%;height:calc(100% + var(--portrait-extension));aspect-ratio:auto;align-self:stretch;min-height:0;margin:0;-webkit-mask-image:none;mask-image:none}body.public-site .about-intro__portrait img{object-fit:contain;width:85vw;min-width:0;height:auto;top:2rem;left:-48%;transform:none;-webkit-mask-image:linear-gradient(#000 0% 54%,#000000e0 62%,#0000008f 70%,#00000052 76%,#00000024 81%,#0000 87%);mask-image:linear-gradient(#000 0% 54%,#000000e0 62%,#0000008f 70%,#00000052 76%,#00000024 81%,#0000 87%)}body.public-site .about-intro__quote{grid-column:1/-1;width:min(100%,50% + 3rem);margin:0;padding-block:clamp(1rem,2vw,1.5rem) .5rem;padding-inline-start:0}body.public-site .about-intro__quote .engineer-quote{border-top:1px solid var(--pf-color-rule);max-width:none;padding-top:1rem}body.public-site .about-intro__quote blockquote{letter-spacing:-.015em;font-size:clamp(1.1rem,1.75vw,1.25rem)}body.public-site .about-intro__quote blockquote p{max-width:none}body.public-site .about-responsibility{padding-top:clamp(1.5rem,3vw,2rem)}body.public-site .about-responsibility__grid{border-top:1px solid var(--pf-color-rule);gap:clamp(2rem,4vw,3rem);margin-top:0;padding-top:clamp(1.5rem,2vw,2rem)}}@media (width>=56.26rem) and (width<=72rem){body.public-site .about-intro__quote{width:calc(50% - 1rem)}}@media (width>=64.01rem) and (width<=72rem){body.public-site .about-responsibility__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(2rem,5vw,5rem)}}@media (width<=44rem){body.public-site .about-intro{--portrait-extension:clamp(2rem, 5vw, 3rem)}body.public-site .about-intro .information-intro__grid{grid-template-columns:1fr;grid-template-areas:"copy""portrait""quote";gap:0}body.public-site .about-intro .information-intro__copy{padding-block:2.5rem 2rem}body.public-site .about-name{font-size:clamp(4.5rem,18vw,6rem)}body.public-site .about-role{font-size:clamp(2rem,8vw,2.7rem)}body.public-site .about-intro__portrait{aspect-ratio:1/1.16;min-height:0;-webkit-mask-image:linear-gradient(#000 0% 50%,#000000d1 60%,#00000073 70%,#00000026 80%,#0000 90%);mask-image:linear-gradient(#000 0% 50%,#000000d1 60%,#00000073 70%,#00000026 80%,#0000 90%)}body.public-site .about-intro__portrait img{height:100%;top:0;transform:translate(-50%);-webkit-mask-image:none;mask-image:none}body.public-site .about-intro__quote{margin-top:-4rem;padding-block:0 1rem;padding-inline-start:1rem}body.public-site .about-intro__quote .engineer-quote{border-top:0;padding-top:0}}body.public-site .service-album{background:var(--pf-album-paper);color:var(--pf-album-ink)}body.public-site .service-album .service-hero{padding-block:clamp(2.5rem,5vw,5rem) 2rem}body.public-site .service-album .service-hero__grid{grid-template:"offer proof"/minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,5vw,5rem);padding-block:0}body.public-site .service-album .service-hero__grid>.document-album{grid-area:proof}body.public-site .service-album .service-hero h1{max-width:13ch;font-size:clamp(2.75rem,4.8vw,5.1rem)}body.public-site .service-album .service-hero__offer{max-width:42ch;margin-block:1.75rem 1rem;font-size:clamp(1.05rem,1.5vw,1.35rem)}.service-album__format{margin:0 0 1.75rem;font-size:1rem}.service-album__first{color:var(--pf-album-muted);margin-top:1.25rem;font-size:.875rem}.service-album__situations{border-top:1px solid var(--pf-color-rule);padding-block:1.75rem}.service-album__situations>div{grid-template-columns:1fr 1.5fr;gap:3rem;display:grid}.service-album__situations p{max-width:43ch;margin:0;line-height:1.6}.service-album__situations ul{flex-wrap:wrap;gap:.75rem 2rem;margin:0;padding:0;list-style:none;display:flex}.service-album__situations li{flex:10rem;font-size:.95rem;line-height:1.5}body.public-site .service-album .service-wayfinding{position:static}.document-album{min-width:0;color:var(--pf-album-ink);margin:0}.document-album__stage{aspect-ratio:4/3;isolation:isolate;background:var(--pf-album-paper);touch-action:pan-y;position:relative;overflow:hidden}.document-album__sheet{opacity:0;pointer-events:none;background:var(--pf-album-paper);display:block;position:absolute;inset:0}.document-album__sheet[data-active=true]{opacity:1;pointer-events:auto}.document-album__sheet img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.document-album__enlarge{background:var(--pf-album-paper);border:1px solid var(--pf-color-rule);border-radius:2rem;align-items:center;gap:.5rem;padding:.65rem 1rem;font-size:.85rem;display:flex;position:absolute;bottom:.5rem;right:.5rem}.document-album svg{width:1.25rem;height:1.25rem}.document-album figcaption{border-block:1px solid var(--pf-color-rule);justify-content:space-between;gap:1rem;padding-block:1rem;font-size:.95rem;line-height:1.5;display:flex}.document-album [data-album-position]{white-space:nowrap;color:var(--pf-album-muted);font-size:.8rem}.document-album__controls{flex-wrap:wrap;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}.document-album__controls[hidden],.document-album button[hidden]{display:none}.document-album__arrows,.document-album__numbers{gap:.25rem;display:flex}.document-album button{min-width:2.75rem;min-height:2.75rem;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;font-size:.85rem;display:inline-flex}.document-album__arrows button{border-color:var(--pf-color-rule)}.document-album button[aria-pressed=true]{background:var(--pf-album-ink);color:var(--pf-album-paper)}.document-album button:disabled{opacity:.55;cursor:default}.document-album__status{color:var(--pf-album-muted);margin:.5rem 0 0;font-size:.85rem}.document-album__status:empty{display:none}.document-album :focus-visible{outline:2px solid var(--pf-color-focus);outline-offset:3px}.service-album__results{padding-block:var(--pf-public-section-space)}.service-album__results-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;display:grid}.service-album__results-grid h3{margin:1.5rem 0 1rem;font-size:clamp(1.4rem,2vw,2rem);font-weight:450;line-height:1.2}.service-album__results-grid p{font-size:1rem;line-height:1.65}.service-album__drawing{aspect-ratio:4/3;background:var(--pf-album-paper);display:block}.service-album__drawing img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.service-album__spec-list{aspect-ratio:4/3;border-block:1px solid var(--pf-color-rule);flex-direction:column;justify-content:center;display:flex}.service-album__spec-list span{border-bottom:1px solid var(--pf-color-rule);padding:1rem 0;font-size:clamp(1.1rem,1.8vw,1.5rem)}.service-album__spec-list span:last-child{border-bottom:0}.service-album__note{color:var(--pf-album-muted)}.service-album__archive{border-block:1px solid var(--pf-color-rule);margin-top:2.5rem}.service-album__archive>summary{cursor:pointer;padding:1.25rem 0;font-size:1.1rem}body.public-site .service-album__archive .service-gallery{background:var(--pf-album-paper);color:var(--pf-album-ink);padding-block:2rem}.service-album__archive .public-container{width:100%}body.public-site .service-album .service-gallery--drawing .service-gallery__image{background:var(--pf-album-paper)}body.public-site .service-album .service-gallery--drawing img{filter:none;mix-blend-mode:multiply}body.public-site .service-album .service-related{border-block:1px solid var(--pf-color-rule);padding-block:var(--pf-public-section-space)}.service-album__case-actions{flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin-top:1rem;display:flex}.service-album__similar{align-items:center;min-height:2.75rem;display:inline-flex}body.public-site .service-album .service-related__project{height:auto}body.public-site .service-album .service-related .service-section-heading p{color:var(--pf-album-muted)}.service-album__process{background:var(--pf-album-ink);color:var(--pf-album-paper);padding-block:var(--pf-public-section-space)}.service-album__process-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(3rem,7vw,7rem);display:grid}.service-album__process header{position:sticky;top:8rem}.service-album__process h2{margin:0;font-size:clamp(2.4rem,4vw,4.5rem);font-weight:450;line-height:1.08}.service-album__process header p{color:var(--pf-color-muted-dark);max-width:34ch;margin-top:1.5rem;line-height:1.6}.service-album__progress{align-items:baseline;gap:1rem;margin-top:3rem;font-size:1.25rem;display:flex}.service-album__progress>span:first-child{font-size:6rem;line-height:1}.service-album__process ol{margin:0;padding:0;list-style:none}.service-album__process li{border-top:1px solid #526066;padding:2rem 0 2.5rem 3rem;position:relative}.service-album__process li:before{background:var(--pf-album-paper);content:"";transform-origin:0;width:min(9rem,42%);height:2px;transition:transform .55s cubic-bezier(.16,1,.3,1);position:absolute;top:-1px;left:0;transform:scaleX(0)}.service-album__process li[data-current]:before{transform:scaleX(1)}.service-album__step-number{text-align:center;border-radius:50%;width:2rem;font-size:.85rem;line-height:2rem;transition:background-color .2s,color .2s;position:absolute;top:2rem;left:0}.service-album__process [data-current] .service-album__step-number{background:var(--pf-album-paper);color:var(--pf-album-ink)}.service-album__process h3{margin:0 0 1.5rem;font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:450;line-height:1.2}.service-album__process dl{gap:1rem;margin:0;display:grid}.service-album__process dl>div{grid-template-columns:2rem 1fr;gap:1rem;display:grid}.service-album__process dt{color:#b9c5c7;font-size:.85rem}.service-album__process dd{max-width:48ch;margin:0;line-height:1.6}.service-album__outcome{border-top:1px solid #526066;margin:1.5rem 0 0;padding-top:1rem;font-size:1.15rem}body.public-site .service-album .service-reviews{padding-block:var(--pf-public-section-space);background:var(--pf-album-paper);color:var(--pf-album-ink)}body.public-site .service-album .service-reviews blockquote>p{max-width:42ch;font-size:clamp(1.6rem,2.8vw,2.8rem);line-height:1.4}body.public-site .service-album .service-reviews footer{color:var(--pf-album-muted)}body.public-site .service-album .service-reviews .service-text-link{color:var(--pf-album-ink)}.service-album__inputs{margin-bottom:2rem}body.public-site .service-album .service-contact{color:var(--pf-album-paper)}.service-album__inputs h3{font-size:1.3rem;line-height:1.3}.service-album__inputs p,.service-album__inputs li{line-height:1.6}body:has(.service-album) .photo-viewer{background:var(--pf-album-paper);color:var(--pf-album-ink)}body:has(.service-album) .photo-viewer button{background:0 0;border-radius:2rem}body:has(.service-album) .photo-viewer button:is(:hover,:focus-visible){background:var(--pf-album-ink);color:var(--pf-album-paper)}body:has(.service-album) .photo-viewer__loading{color:var(--pf-album-muted)}@media (width<=64rem){body.public-site .service-album .service-hero__grid{grid-template-columns:1fr;grid-template-areas:"offer""proof"}body.public-site .service-album .service-hero h1{max-width:18ch}.document-album{justify-self:center;width:100%;max-width:48rem}.service-album__results-grid{gap:1.25rem}.service-album__process-grid{grid-template-columns:1fr;gap:2rem}.service-album__process header{display:block;position:static}.service-album__process header h2{max-width:19ch}.service-album__process header p{max-width:45ch;margin-top:1rem}.service-album__progress{display:none}.service-album__process li{min-height:0;padding-block:1.5rem}.service-album__step-number{top:1.5rem}}@media (width<=48rem){.service-album__situations>div,.service-album__results-grid,.service-album__process-grid{grid-template-columns:1fr;gap:1.5rem}.service-album__situations ul{gap:.75rem;display:grid}.service-album__results-grid>article+article{border-top:1px solid var(--pf-color-rule);padding-top:1.5rem}.service-album__spec-list{aspect-ratio:auto;padding-block:1rem}.service-album__process header{position:static}.service-album__progress{display:none}.service-album__process li{padding-left:2.75rem}.document-album figcaption{flex-direction:column;gap:.25rem}}@media (width<=46rem){body.public-site .service-album .service-hero h1{font-size:clamp(1.75rem,9.1vw,2.5rem)}}@media (prefers-reduced-motion:reduce){.service-album__step-number,.service-album__process li:before{transition:none}}.service-contact__links{border-top:1px solid var(--pf-color-rule);gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:grid}.service-contact__links>a{min-height:2.75rem;color:inherit;align-items:center;margin:0;padding-block:.5rem;font-size:.95rem;line-height:1.5;display:flex}body.public-site .designers-album .designers-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-areas:"proof copy";align-items:center;gap:clamp(2rem,5vw,5rem)}body.public-site .designers-album .designers-hero__copy{grid-area:copy}body.public-site .designers-album .document-album{grid-area:proof}body.public-site .designers-album .document-album__stage{aspect-ratio:16/10}body.public-site .designers-album .designers-hero__lead{margin-top:1.75rem;font-size:clamp(1.05rem,1.5vw,1.35rem)}body.public-site .designers-album .designers-hero__actions{margin-top:1.75rem}body.public-site .designers-album .designers-alignment{border-block:1px solid var(--pf-color-rule);padding-block:2rem}body.public-site .designers-album .designers-alignment h2{max-width:24ch;font-size:clamp(1.6rem,2.5vw,2.5rem)}body.public-site .designers-album .designers-alignment__lead{font-size:1.15rem;line-height:1.6}body.public-site .designers-album .designers-deliverables{background:var(--pf-album-paper)}body.public-site .designers-album .designers-deliverables__grid{gap:clamp(2rem,5vw,5rem)}body.public-site .designers-album .designers-deliverables li{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:1.5rem;padding-block:1.25rem}body.public-site .designers-album .designers-implementation{background:var(--pf-album-paper);color:var(--pf-album-ink)}body.public-site .designers-album .designers-implementation__grid{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,6rem)}body.public-site .designers-album .designers-implementation__proof{max-width:26rem;box-shadow:none;background:0 0;border:0}body.public-site .designers-album .designers-implementation__proof img{filter:none}body.public-site .designers-album .designers-implementation__proof figcaption{color:var(--pf-album-muted);text-transform:none;letter-spacing:0;background:0 0;padding:.75rem 0 0;font-size:.875rem;font-weight:400;position:static}body.public-site .designers-album .designers-implementation dl{margin-top:1.75rem}body.public-site .designers-album .designers-implementation dt{color:var(--pf-album-ink)}body.public-site .designers-album .designers-implementation :is(dd,.designers-implementation__copy>p){color:var(--pf-album-muted)}body.public-site .designers-album .designers-contact{background:var(--pf-album-ink);color:var(--pf-album-paper)}@media (width<=64rem){body.public-site .designers-album .designers-hero__grid{grid-template-columns:1fr;grid-template-areas:"copy""proof"}}@media (width<=48rem){body.public-site .designers-album :is(.designers-implementation__grid,.designers-deliverables li){grid-template-columns:1fr}body.public-site .designers-album .designers-deliverables li{gap:.75rem}body.public-site .designers-album .designers-implementation__proof{justify-self:center;width:min(100%,22rem)}}.service-situations{border-top:1px solid var(--pf-color-rule);padding-block:clamp(2rem,4vw,3.5rem)}.service-situations header{grid-template-columns:1fr 1.2fr;align-items:start;gap:2rem;margin-bottom:2rem;display:grid}.service-situations h2{margin:0;font-size:clamp(1.7rem,2.8vw,2.75rem);font-weight:450;line-height:1.15}.service-situations header p{max-width:60ch;color:var(--pf-album-muted);margin:0;line-height:1.65}.service-situations ul{border-top:1px solid var(--pf-color-rule);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.service-situations li{padding:1.5rem 2rem 0 0}.service-situations li+li{border-left:1px solid var(--pf-color-rule);padding-left:2rem}.service-situations h3{margin:0 0 .75rem;font-size:clamp(1.15rem,1.6vw,1.5rem);font-weight:450;line-height:1.3}.service-situations li p{max-width:38ch;color:var(--pf-album-muted);margin:0;font-size:.95rem;line-height:1.65}.document-album--photo .document-album__stage{aspect-ratio:4/3}.document-album--photo .document-album__sheet img{mix-blend-mode:normal;object-fit:contain}.service-album__deliverables{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.service-album__deliverables li{border-top:1px solid var(--pf-color-rule);padding-top:1.5rem;font-size:clamp(1.35rem,2vw,2rem);line-height:1.35}.service-album__step-copy{max-width:48ch;margin:0;font-size:1.1rem;line-height:1.7}body.public-site .service-album--extended .service-album__process li{min-height:14rem}body.public-site .service-album--extended :is(.service-scope,.service-engineering){background:var(--pf-album-paper);color:var(--pf-album-ink);padding-block:var(--pf-public-section-space);border-top:1px solid var(--pf-color-rule)}body.public-site .service-album--extended :is(.service-scope,.service-engineering) p{color:var(--pf-album-muted)}body.public-site .service-album--extended .service-scope__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 4rem;display:grid}body.public-site .service-album--extended .service-scope__steps article{border-top:1px solid var(--pf-color-rule);padding:1.5rem 0 0}@media (width<=64rem){.service-situations header{grid-template-columns:1fr;gap:1rem}body.public-site .service-album--extended .service-album__process li{min-height:0}}@media (width<=48rem){.service-situations ul,.service-album__deliverables,body.public-site .service-album--extended .service-scope__steps{grid-template-columns:1fr;gap:0}.service-situations li,.service-situations li+li{border-left:0;padding:1.25rem 0}.service-situations li+li{border-top:1px solid var(--pf-color-rule)}.service-album__deliverables li,body.public-site .service-album--extended .service-scope__steps article{padding-block:1.25rem}body.public-site .service-album--extended .service-album__process li{min-height:0}}.service-situations{scroll-margin-top:calc(var(--public-header-height,5rem) + 1rem)}.service-album__result-spread{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.service-album__result-spread .service-album__deliverables{counter-reset:deliverable;grid-template-columns:1fr;gap:0}.service-album__result-spread .service-album__deliverables li{counter-increment:deliverable;grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;padding:1.4rem 0 1.6rem;display:grid}.service-album__result-spread .service-album__deliverables li:before{content:counter(deliverable, decimal-leading-zero);color:var(--pf-album-muted);font-size:.8rem;line-height:1.6}.service-material{min-width:0;margin:0}.service-material__image{aspect-ratio:4/3;background:var(--pf-album-paper);border:1px solid var(--pf-color-rule);width:100%;color:var(--pf-album-ink);place-items:center;text-decoration:none;display:grid;position:relative;overflow:hidden}.service-material--portrait .service-material__image{aspect-ratio:3/3.3}.service-material__image img{object-fit:cover;width:100%;height:100%}.service-material--portrait .service-material__image img{object-position:center 38%}.service-material--drawing .service-material__image img{object-fit:contain;mix-blend-mode:multiply}.service-material--drawing .service-material__image{border:0}.service-material__open{background:var(--pf-album-paper);border:1px solid var(--pf-color-rule);border-radius:2rem;align-items:center;gap:.75rem;min-height:2.75rem;padding:.65rem 1rem;font-size:.875rem;display:inline-flex;position:absolute;inset:auto 1rem 1rem auto}.service-material__open svg{width:1.25rem;height:1.25rem}.service-material figcaption{grid-template-columns:minmax(7rem,.35fr) minmax(0,1fr);gap:1.5rem;padding-top:1rem;display:grid}.service-material figcaption>span{color:var(--pf-album-muted);text-transform:uppercase;letter-spacing:.08em;padding-top:.25rem;font-size:.75rem;line-height:1.5}.service-material figcaption h3{margin:0 0 .35rem;font-size:1.15rem;font-weight:500;line-height:1.3}.service-material figcaption p{color:var(--pf-album-muted);margin:0;font-size:.9rem;line-height:1.55}.service-material__image:is(:hover,:focus-visible) .service-material__open{background:var(--pf-album-ink);color:var(--pf-album-paper);border-color:var(--pf-album-ink)}.service-material__image:focus-visible{outline:3px solid var(--pf-color-focus);outline-offset:3px}.service-album .service-reviews>.public-container{grid-template-columns:minmax(0,.65fr) minmax(0,1fr);align-items:start;gap:0 clamp(2rem,6vw,6rem);display:grid}body.public-site .service-album .service-reviews{padding-block:clamp(3rem,5vw,5rem)}.service-album .service-reviews h2{grid-column:1;max-width:11ch;margin:0;font-size:clamp(2rem,3.7vw,3.6rem);font-weight:450;line-height:1.12}body.public-site .service-album .service-reviews blockquote{border-top:1px solid var(--pf-color-rule);grid-column:2;max-width:none;margin:0 0 2rem;padding-top:1.25rem}body.public-site .service-album .service-reviews blockquote>p{max-width:36ch;margin-top:0;font-size:clamp(1.5rem,2.35vw,2.4rem);line-height:1.4}.service-album__archive>summary{justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;list-style:none;display:flex}.service-album__archive>summary::-webkit-details-marker{display:none}.service-album__archive>summary:after{content:"+";border:1px solid var(--pf-color-rule);border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-size:1.5rem;font-weight:300;line-height:1;display:grid}.service-album__archive[open]>summary:after{content:"−"}.document-album__arrows{gap:.4rem}.document-album__arrows button{border-color:var(--pf-color-rule);border-radius:2rem;min-width:4.75rem;padding-inline:.75rem}.document-album__arrows button:is(:hover,:focus-visible):not(:disabled){background:var(--pf-album-ink);color:var(--pf-album-paper);border-color:var(--pf-album-ink)}@media (width<=48rem){.service-album__result-spread,.service-album .service-reviews>.public-container{grid-template-columns:1fr}body.public-site .service-album .service-reviews blockquote{grid-column:1;margin-top:1.5rem}.service-material figcaption{grid-template-columns:1fr;gap:.5rem}}.metrika-consent{z-index:80;bottom:max(1rem, env(safe-area-inset-bottom));border:1px solid var(--pf-color-rule);width:min(76rem,100% - 2rem);max-height:calc(100dvh - 2rem);color:var(--pf-color-graphite-900);background:var(--pf-color-paper-raised);box-shadow:var(--pf-shadow-dark);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;padding:1.15rem 1.4rem;display:grid;position:fixed;left:50%;overflow-y:auto;transform:translate(-50%)}.metrika-consent[hidden]{display:none}.metrika-consent__copy{max-width:60rem}.metrika-consent strong{font-size:1rem;font-weight:600;line-height:1.35}.metrika-consent p{margin:.3rem 0 0;font-size:.9rem;line-height:1.5}.metrika-consent a{color:inherit;text-underline-offset:.18em;text-decoration:underline}.metrika-consent__actions{flex-wrap:wrap;gap:.6rem;display:flex}.metrika-consent button{border:1px solid var(--pf-color-graphite-900);min-height:2.75rem;font:inherit;cursor:pointer;border-radius:999px;padding:.6rem 1.1rem;font-size:.875rem;font-weight:600;line-height:1.2}.metrika-consent [data-metrika-allow]{color:var(--pf-color-paper-raised);background:var(--pf-color-graphite-900)}.metrika-consent [data-metrika-deny]{color:var(--pf-color-graphite-900);background:0 0}.metrika-consent [data-metrika-allow]:hover{background:var(--pf-color-graphite-800)}.metrika-consent [data-metrika-deny]:hover{background:var(--pf-color-canvas)}.metrika-consent :is(button,a):focus-visible{outline:3px solid var(--pf-color-focus);outline-offset:3px}.public-site-footer__analytics{min-height:2.75rem;color:inherit;text-underline-offset:.25em;background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=760px){.metrika-consent{bottom:max(.75rem, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);gap:1rem;width:calc(100% - 1.5rem);max-height:calc(100dvh - 1.5rem);padding:1rem}.metrika-consent__actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metrika-consent button{padding-inline:.65rem}}.public-contact-links{flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1rem;font-size:.9rem;font-style:normal;display:flex}.public-contact-links a{overflow-wrap:anywhere;align-items:center;min-height:2.75rem;display:inline-flex}.public-site-footer__contacts a{overflow-wrap:anywhere}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--pf-font-public);font-synthesis:none;text-rendering:geometricprecision}*,:before,:after{box-sizing:border-box}html{background:var(--pf-color-black);scroll-behavior:auto;min-height:100%}body{min-height:100vh;color:var(--pf-color-ivory);background:var(--pf-color-black);font-size:1rem;font-family:var(--pf-font-public);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:hidden}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}img,svg{max-width:100%;height:auto;display:block}:focus-visible{outline:3px solid var(--pf-color-focus-on-dark);outline-offset:4px}::selection{color:var(--pf-color-black);background:var(--pf-color-signal)}.public-skip-link{z-index:1000;top:var(--pf-space-4);left:var(--pf-layout-gutter);min-height:var(--pf-touch-min-size);color:var(--pf-color-black);background:var(--pf-color-ivory);transition:transform var(--pf-duration-fast) var(--pf-ease-out);padding:.65rem 1rem;position:fixed;transform:translateY(calc(-100% - 2rem))}.public-skip-link:focus-visible{outline-color:var(--pf-color-focus);transform:translateY(0)}.public-shell{--public-header-height:5rem;min-height:100vh}.public-container{width:min(calc(100% - (var(--pf-layout-gutter) * 2)), var(--pf-layout-wide));margin-inline:auto}.public-reading{max-width:var(--pf-reading-measure)}.public-section{padding-block:clamp(var(--pf-space-8), 9vw, var(--pf-space-9))}.public-display,.public-title,.public-subtitle{text-wrap:balance;margin:0}.public-display{letter-spacing:-.04em;max-width:14ch;font-size:clamp(3rem,7.6vw,6rem);font-weight:400;line-height:var(--pf-public-display-leading)}.public-title{letter-spacing:-.035em;max-width:18ch;font-size:clamp(2rem,4.5vw,4.4rem);font-weight:400;line-height:var(--pf-public-display-leading)}.public-subtitle{letter-spacing:-.02em;font-size:clamp(1.35rem,2.8vw,2.25rem);font-weight:400;line-height:1.12}.public-lead{max-width:64ch;margin:var(--pf-space-5) 0 0;color:var(--pf-color-muted-dark);font-size:clamp(1rem,1.8vw,1.2rem)}.public-actions{gap:var(--pf-space-3);flex-wrap:wrap;display:flex}.public-button{min-width:10rem;min-height:var(--pf-public-action-height);border-radius:var(--pf-public-action-radius);letter-spacing:0;text-align:center;text-transform:none;transition:color var(--pf-duration-fast) ease, background-color var(--pf-duration-fast) ease, border-color var(--pf-duration-fast) ease;border:1px solid #0000;justify-content:space-between;align-items:center;gap:2rem;padding:1rem 1.5rem;font-size:1rem;font-weight:400;line-height:1.4;text-decoration:none;display:inline-flex}.public-button--primary{color:var(--pf-public-action-text);background:var(--pf-public-action-bg);border-color:var(--pf-public-action-bg)}.public-button--primary:hover:not(:disabled){background:var(--pf-public-action-hover);border-color:var(--pf-public-action-hover)}.public-button>svg{stroke-width:1.4px;flex:0 0 1.5rem;width:1.5rem;height:1.125rem}.public-button--secondary{color:var(--pf-public-action-bg);border-color:var(--pf-public-action-bg);background:0 0}.public-button--secondary:hover:not(:disabled){color:var(--pf-public-action-text);background:var(--pf-public-action-bg);border-color:var(--pf-public-action-bg)}.public-button:disabled,.public-button[aria-disabled=true]{color:var(--pf-color-graphite-500);background:var(--pf-color-graphite-800);border-color:var(--pf-color-graphite-700);cursor:not-allowed}.public-field{gap:var(--pf-space-2);display:grid}.public-field>span{color:var(--pf-color-ivory);letter-spacing:.055em;font-size:.78rem;font-weight:700}.public-field input,.public-field select,.public-field textarea{width:100%;min-height:var(--pf-control-min-height);color:var(--pf-color-ivory);background:var(--pf-color-black-soft);border:1px solid #f4f2ed8c;border-radius:0;padding:.75rem .85rem}.public-field textarea{resize:vertical;min-height:8rem}.public-field input::placeholder,.public-field textarea::placeholder{color:var(--pf-color-muted-dark);opacity:1}.public-field input:hover:not(:disabled),.public-field select:hover:not(:disabled),.public-field textarea:hover:not(:disabled){border-color:var(--pf-color-ivory)}.public-field input:focus,.public-field select:focus,.public-field textarea:focus{border-color:var(--pf-color-focus-on-dark)}.public-field [aria-invalid=true]{border-color:var(--pf-color-copper-300)}.public-surface{background:var(--pf-color-black-soft);border:1px solid var(--pf-color-line-on-dark);box-shadow:var(--pf-shadow-dark)}.foundation-page{grid-template-rows:auto 1fr auto;display:grid}.public-site-header{z-index:50;background:var(--pf-color-black);border-bottom:1px solid var(--pf-color-line-on-dark);position:sticky;top:0}.public-shell main [id]{scroll-margin-top:calc(var(--public-header-height) + 1.5rem)}.public-site-header__inner{align-items:center;gap:clamp(var(--pf-space-4), 2.5vw, var(--pf-space-7));min-height:var(--public-header-height);grid-template-columns:minmax(13rem,1fr) auto minmax(13rem,1fr);display:grid}.public-site-header__brand,.public-site-footer__brand{min-height:var(--pf-touch-min-size);align-items:center;width:clamp(12.5rem,18vw,17rem);display:flex}.public-site-header__brand img,.public-site-footer__brand img{width:100%}.public-site-header__desktop-nav{justify-content:center;align-items:center;gap:clamp(var(--pf-space-4), 1.8vw, var(--pf-space-6));display:flex}.public-site-header__desktop-nav>a,.public-site-header__cta{min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);letter-spacing:.015em;white-space:nowrap;align-items:center;padding-block:.45rem;font-size:.8125rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.public-site-header__desktop-nav>a:after{background:var(--pf-color-signal);content:"";transform-origin:100%;height:1px;transition:transform var(--pf-duration-base) var(--pf-ease-out);position:absolute;bottom:.35rem;left:0;right:0;transform:scaleX(0)}.public-site-header__desktop-nav>a:hover,.public-site-header__desktop-nav>a:focus-visible,.public-site-header__desktop-nav>a[aria-current=page],.public-site-header__cta:hover,.public-site-header__cta:focus-visible{color:var(--pf-color-ivory)}.public-site-header__desktop-nav>a:hover:after,.public-site-header__desktop-nav>a:focus-visible:after,.public-site-header__desktop-nav>a[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.public-site-header__cta{justify-self:end;gap:var(--pf-space-3);color:var(--pf-color-ivory)}.public-site-footer__to-top:after{content:"";width:.5rem;height:.5rem;transition:transform var(--pf-duration-base) var(--pf-ease-out);border-top:1px solid;border-right:1px solid}.public-site-header__cta .public-route-mark{width:1.25rem;height:.9375rem}.public-site-header__mobile-navigation{display:none}.public-site-footer{background:var(--pf-color-black-soft);border-top:1px solid var(--pf-color-line-on-dark);padding-block:2rem 1rem}.public-site-footer__head{justify-content:space-between;align-items:center;gap:var(--pf-space-5);border-bottom:1px solid var(--pf-color-line-on-dark);padding-bottom:1.25rem;display:flex}.public-site-footer__to-top{align-items:center;gap:var(--pf-space-3);min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);letter-spacing:0;text-transform:none;font-size:.8rem;font-weight:400;text-decoration:none;display:inline-flex}.public-site-footer__to-top:after{transform:translateY(.15rem)rotate(-45deg)}.public-site-footer__to-top:hover,.public-site-footer__to-top:focus-visible{color:var(--pf-color-ivory)}.public-site-footer__to-top:hover:after,.public-site-footer__to-top:focus-visible:after{transform:translateY(-.15rem)rotate(-45deg)}.public-site-footer__main{grid-template-columns:minmax(0,1.2fr) minmax(15rem,1fr) minmax(13rem,.8fr);align-items:start;gap:clamp(1.5rem,4vw,3rem);padding-block:1.75rem;display:grid}.public-site-footer__signoff{margin:0}.public-site-footer__signoff>span,.public-site-footer__navigation>span,.public-site-footer__contacts>span{color:var(--pf-color-signal);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-size:.62rem;font-weight:700;display:block}.public-site-footer__signoff strong{max-width:22ch;color:var(--pf-color-ivory);letter-spacing:var(--pf-public-display-tracking);text-wrap:balance;font-size:clamp(1.5rem,2.2vw,2rem);font-weight:400;line-height:1.2;display:block}.public-site-footer__navigation,.public-site-footer__contacts{flex-direction:column;align-items:flex-start;font-style:normal;display:flex}.public-site-footer__navigation{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem;display:grid}.public-site-footer__navigation>span{grid-column:1/-1}.public-site-footer__navigation a,.public-site-footer__contacts a{min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);align-items:center;font-size:.875rem;line-height:1.4;text-decoration:none;display:inline-flex}.public-site-footer__navigation a:hover,.public-site-footer__navigation a:focus-visible,.public-site-footer__contacts a:hover,.public-site-footer__contacts a:focus-visible,.public-site-footer__bottom a:hover,.public-site-footer__bottom a:focus-visible{color:var(--pf-color-ivory)}.public-site-footer__bottom{padding-top:var(--pf-space-5);color:var(--pf-color-muted-dark);border-top:1px solid var(--pf-color-line-on-dark);letter-spacing:0;text-transform:none;grid-template-columns:minmax(10rem,1fr) auto;align-items:center;gap:1rem 2rem;font-size:.75rem;font-weight:400;line-height:1.55;display:grid}.public-site-footer__bottom p{margin:0}.public-site-footer__bottom nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:0 1.25rem;min-width:0;display:flex}.public-site-footer__bottom a,.public-site-footer__legal-slot{min-height:var(--pf-touch-min-size);color:var(--pf-color-muted-dark);text-transform:none;align-items:center;text-decoration:none;display:inline-flex}.public-site-footer__legal-slot{cursor:default;min-height:1.75rem}.public-site-footer__analytics{font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;text-decoration:none}.public-site-footer__analytics:hover,.public-site-footer__analytics:focus-visible{color:var(--pf-color-ivory)}@media (width<=72rem){.public-site-footer__bottom{grid-template-columns:minmax(0,1fr)}.public-site-footer__bottom nav{justify-content:flex-start}}@media (width<=64rem){.public-site-header__inner{grid-template-columns:minmax(0,1fr) auto}.public-site-header__desktop-nav,.public-site-header__cta{display:none}.public-site-header__mobile-navigation{justify-self:end;display:block;position:relative}.public-site-header__mobile-navigation>summary{align-items:center;gap:var(--pf-space-3);min-height:var(--pf-touch-min-size);color:var(--pf-color-ivory);cursor:pointer;letter-spacing:.085em;text-transform:uppercase;padding:.5rem 0;font-size:.72rem;font-weight:700;list-style:none;display:inline-flex}.public-site-header__mobile-navigation>summary::-webkit-details-marker{display:none}.public-site-header__menu-mark{width:1.25rem;height:1rem;position:relative}.public-site-header__menu-mark:before,.public-site-header__menu-mark:after{content:"";width:100%;height:1px;transition:top var(--pf-duration-base) var(--pf-ease-out), transform var(--pf-duration-base) var(--pf-ease-out);background:currentColor;position:absolute;right:0}.public-site-header__menu-mark:before{top:.25rem}.public-site-header__menu-mark:after{top:.7rem}.public-site-header__mobile-navigation[open] .public-site-header__menu-mark:before,.public-site-header__mobile-navigation[open] .public-site-header__menu-mark:after{top:.48rem}.public-site-header__mobile-navigation[open] .public-site-header__menu-mark:before{transform:rotate(45deg)}.public-site-header__mobile-navigation[open] .public-site-header__menu-mark:after{transform:rotate(-45deg)}.public-site-header__mobile-panel{z-index:60;top:var(--public-header-height);width:100%;max-height:calc(100dvh - var(--public-header-height));overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--pf-color-muted-dark) transparent;scroll-padding-block:var(--pf-space-4);padding:1rem var(--pf-layout-gutter) 1.5rem;background:var(--pf-color-black);border:0;border-bottom:1px solid var(--pf-color-line-on-dark);position:fixed;left:0;right:0;overflow-y:auto;box-shadow:0 16px 24px #00000026}.public-site-header__mobile-panel nav{flex-direction:column;margin-bottom:1rem;display:flex}.public-site-header__mobile-panel nav>a{justify-content:space-between;align-items:center;gap:var(--pf-space-4);min-height:3.25rem;color:var(--pf-color-muted-dark);border-bottom:1px solid var(--pf-color-line-on-dark);padding-inline:0;font-size:1.12rem;text-decoration:none;display:flex}.public-site-header__mobile-panel nav>a:after{background:var(--pf-color-signal);content:"";flex:none;width:.75rem;height:1px}.public-site-header__mobile-panel nav>a:hover,.public-site-header__mobile-panel nav>a:focus-visible,.public-site-header__mobile-panel nav>a[aria-current=page]{color:var(--pf-color-ivory)}.public-site-header__mobile-panel .public-button{width:100%}.public-site-footer__main{grid-template-columns:minmax(0,1fr) minmax(13rem,1fr)}.public-site-footer__signoff{grid-column:1/-1}}@media (width<=46rem){.public-shell{--public-header-height:4.5rem}.public-site-header__brand{width:min(58vw,14rem)}.public-site-footer__head{flex-direction:row;align-items:center;gap:1rem}.public-site-footer__main{grid-template-columns:minmax(0,1fr);gap:1rem}.public-site-footer__signoff{grid-column:auto}.public-site-footer__signoff strong{text-wrap:wrap;font-size:1.5rem}.public-site-footer__bottom{grid-template-columns:minmax(0,1fr);align-items:start;gap:.5rem}.public-site-footer__bottom nav{justify-content:flex-start;gap:.25rem 1rem}.public-site-footer__contacts{grid-template-columns:minmax(0,1fr) auto;gap:0 1rem;width:100%;display:grid}.public-site-footer__contacts>span{grid-column:1/-1}.public-display{font-size:clamp(2.65rem,13vw,4.6rem)}.public-actions{flex-direction:column;align-items:stretch}.public-button{width:100%;min-height:3.25rem;padding:.8rem 1.2rem;font-size:.9rem}}@media (width<=28rem){:root{--pf-layout-gutter:1rem}.public-site-header__inner{gap:var(--pf-space-3)}.public-site-header__brand{width:min(52vw,10.5rem)}.public-site-footer__brand{width:min(66vw,12.5rem)}.public-site-header__mobile-panel{padding:var(--pf-space-4)}.public-site-footer__contacts a{overflow-wrap:anywhere;max-width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (forced-colors:active){.public-button,.public-field input,.public-field select,.public-field textarea,.public-surface{box-shadow:none;forced-color-adjust:auto;border:1px solid canvastext}.public-site-header,.public-site-footer,.public-site-header__mobile-panel{border-color:canvastext}}@media print{.public-skip-link,.public-site-header__mobile-navigation,.public-site-header__cta,.public-site-footer__to-top{display:none}body{color:#000;background:#fff}}
