@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f5f4ef;--ink:#202923;--green:#1e4938;--muted:#697169;--line:#d4d7ce;--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif;--gutter:clamp(20px,4.5vw,110px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px;width:100%;overflow-x:clip}body{margin:0;width:100%;min-width:280px;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:18px;line-height:1.65}main,section,article,figure,div,header,footer{min-width:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;cursor:pointer}img{display:block;max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,video:focus-visible{outline:3px solid #719841;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.14;letter-spacing:-.045em}p+p{margin-top:18px}.section-wrap{padding:clamp(50px,6vw,95px) var(--gutter)}.eyebrow{font-size:14px;line-height:1.5;letter-spacing:.13em;font-weight:600}.site-header{width:100%;padding:0 var(--gutter);height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:baseline;gap:5px;white-space:nowrap;font-family:var(--display);font-size:23px;font-weight:800;letter-spacing:-1px}.brand-dot{height:6px;width:6px;background:var(--green);border-radius:50%}.site-header nav{display:flex;gap:32px;font-size:14px;align-items:center}.site-header nav a{padding:5px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current=page]{border-color:var(--ink)}.nav-contact{margin-left:20px}.skip{position:absolute;left:15px;top:-100px;padding:10px;background:var(--ink);color:#fff;z-index:100}.skip:focus{top:10px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid currentColor;padding:8px 0;font-size:14px}.text-link span{font-size:19px}.hero{width:100%;padding:45px var(--gutter) 0}.hero-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:8vw;margin-bottom:42px}.hero h1{font-size:clamp(55px,7.2vw,130px);line-height:1.05;margin-top:20px;letter-spacing:-.06em}.hero-description{padding-top:3px}.hero-description h2{font-size:clamp(24px,2.8vw,46px);line-height:1.22;letter-spacing:-.035em}.hero-description>p{font-size:17px;max-width:550px;margin-top:22px}.hero-description .text-link{margin-top:15px}.hero-image{display:block;position:relative;background:#e4e5df;overflow:hidden;width:100%}.hero-image>img{width:100%;height:auto;max-width:1700px;margin-inline:auto;object-fit:contain}.hero-image-label{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;background:#173a2deb;color:white;padding:18px 24px;font-size:14px;letter-spacing:.04em}.clients{padding:35px 0;border-bottom:1px solid var(--line);overflow:hidden;width:100%}.client-heading{margin:0 var(--gutter) 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.client-heading h2{font-family:var(--font);font-size:14px;letter-spacing:0;font-weight:600}.client-heading p{font-size:14px;color:var(--muted);margin-top:4px}#marquee-toggle{background:none;font-size:14px;padding:8px}#marquee-toggle span{margin-left:10px}.marquee{width:100%;overflow:hidden}.marquee-track{display:flex;width:max-content;animation:marquee 70s linear infinite}.marquee-group{display:flex;gap:32px;align-items:center;padding-right:32px;flex-shrink:0}.client-logo{width:200px;height:100px;background:#fff;display:grid;place-items:center;padding:22px 25px;flex:0 0 auto}.client-logo img{width:100%;height:100%;object-fit:contain}.client-logo.logo-dark{background:#263b32}.marquee:hover .marquee-track,.marquee.paused .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:35px}.section-heading h2{font-size:clamp(32px,3.7vw,58px);margin-top:10px}.section-heading>p{font-size:14px;color:var(--muted)}.sup{font-size:14px;letter-spacing:0;vertical-align:top;margin-left:12px;position:relative;top:6px}.filters{display:flex;flex-wrap:wrap;gap:9px;padding-bottom:22px;margin-bottom:35px;border-bottom:1px solid var(--line)}.filters button{background:none;border:1px solid var(--line);border-radius:30px;padding:8px 16px;font-size:14px}.filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filters button:hover{border-color:var(--ink)}.filters button span{margin-left:8px;opacity:.6}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px;align-items:start;width:100%}.project-card[hidden]{display:none}.project-image{position:relative;width:100%;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;background:#e2e4dd;overflow:hidden}.project-image>img{width:100%;height:100%;object-fit:contain}.image-arrow{position:absolute;right:15px;bottom:15px;width:36px;height:36px;background:var(--paper);border-radius:50%;display:grid;place-items:center;font-size:20px}.project-card:hover .image-arrow{background:var(--green);color:white}.card-meta{display:flex;justify-content:space-between;gap:15px;font-size:14px;color:var(--muted);margin:14px 0 7px}.project-card h3{font-size:clamp(24px,2.2vw,36px);line-height:1.2;letter-spacing:-.035em}.project-card p{font-size:14px;color:var(--muted);margin-top:5px}.approach{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw;background:#e6e9e0;align-items:start}.approach h2{font-size:clamp(30px,3.7vw,58px);margin-top:20px}.approach>div:last-child>p{font-size:18px}.approach .text-link{margin-top:20px}.photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:start}.photo-strip img{width:100%;height:auto}.photo-strip a:nth-child(2){padding-top:50px}.photo-strip a:nth-child(3){padding-top:100px}footer{width:100%;background:#173a2d;color:#edf1e9;padding:55px var(--gutter) 25px}.footer-top .eyebrow{color:#bccdc0}.contact-big{font-family:var(--display);font-size:clamp(24px,4.3vw,72px);letter-spacing:-.04em;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:17px;overflow-wrap:anywhere}.contact-big span{flex-shrink:0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff30;margin-top:45px;padding-top:20px;color:#b0c0b3;font-size:14px}.case-intro{padding-top:30px;padding-bottom:40px}.back-link{font-size:14px}.case-kicker{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:40px}.case-kicker>span{font-size:14px;color:var(--muted)}.case-intro h1{font-size:clamp(44px,6vw,96px);letter-spacing:-.05em;margin:20px 0;overflow-wrap:break-word}.case-deck{font-size:clamp(17px,1.65vw,24px);max-width:900px;line-height:1.5}.case-hero{width:100%;padding-inline:var(--gutter);background:#e2e4dd}.zoom-image{display:block;width:100%;padding:0;background:none;cursor:zoom-in}.case-hero .zoom-image{max-width:2000px;margin-inline:auto}.case-hero img{width:100%;height:auto;object-fit:contain}.case-hero.portrait-hero .zoom-image{max-width:760px}.case-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw}.case-story h2{font-size:clamp(28px,3vw,46px);margin-top:20px}.case-story p{font-size:18px}.project-details{margin:30px 0}.project-details>div{display:grid;grid-template-columns:135px minmax(0,1fr);gap:20px;border-top:1px solid var(--line);padding:16px 0}dt{font-size:14px;color:var(--muted)}dd{margin:0;font-size:14px}.case-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 25px;padding-top:0;align-items:start}.case-gallery figure{margin:0}.case-gallery figure:only-child{grid-column:1/-1}.case-gallery figure:only-child .zoom-image{max-width:1920px;margin-inline:auto}.case-gallery img{width:100%;height:auto;object-fit:contain}.case-gallery figcaption{font-size:14px;color:var(--muted);margin-top:10px}.project-video{padding-top:35px}.project-video .section-heading h2,.product-animation .section-heading h2{font-size:clamp(26px,3vw,40px)}.video-load,.project-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#111}.video-load{position:relative;padding:0;overflow:hidden;color:white}.video-load>img{width:100%;height:100%;object-fit:contain;filter:brightness(.6)}.video-load .play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:70px;width:70px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;padding-left:4px;font-size:20px}.video-load>span:last-child{position:absolute;bottom:25px;left:25px;font-size:14px}.image-credit{font-size:14px;color:var(--muted);margin-top:12px}.image-credit a{text-decoration:underline;text-underline-offset:3px}.animation-frame{width:100%;aspect-ratio:16/9;background:#ddd;position:relative}.animation-frame iframe{width:100%;height:100%;border:0;position:absolute;inset:0}.product-animation{padding-top:0}.restoration-videos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.restoration-videos video{width:100%;aspect-ratio:9/16;background:#111;object-fit:contain;display:block}.restoration-videos h3{font-size:17px;letter-spacing:-.02em;line-height:1.35;margin-top:16px}.restoration-videos p{font-size:14px;color:var(--muted);margin-top:8px}.next-project{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;border-top:1px solid var(--line);padding-top:35px;padding-bottom:45px}.next-project .eyebrow{grid-column:1/-1}.next-project>span:not(.eyebrow){font-family:var(--display);font-size:clamp(27px,4vw,65px);letter-spacing:-.04em;line-height:1.2}.photo-intro h1,.about-intro h1{font-size:clamp(48px,6.5vw,104px);margin-top:18px}.photo-intro>p:last-child{margin-top:22px;font-size:17px}.photo-grid{columns:3;column-gap:25px;padding-top:0;padding-bottom:0}.photo-grid figure{margin:0 0 25px;break-inside:avoid}.photo-grid img{width:100%;height:auto}.photo-note{display:flex;justify-content:space-between;gap:30px;font-size:14px;color:var(--muted);padding-top:20px;padding-bottom:50px}.photo-note p+p{margin:0}.about-intro{padding-bottom:40px}.about-body{padding-top:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw}.about-body h2{font-size:clamp(27px,3vw,45px);margin-bottom:25px}.about-body>div>p{font-size:18px}.about-body .text-link{margin-top:20px}.capability-row{border-top:1px solid var(--line);padding:22px 0}.capability-row h3{font-size:20px;letter-spacing:-.02em;margin-bottom:12px}.capability-row p{font-size:17px}.capability-row>span,.capability-row>a{display:block;font-size:14px;color:var(--muted);margin-top:10px}.error-page{min-height:50vh}.error-page h1{font-size:clamp(38px,6vw,80px);margin-bottom:20px}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
dialog{border:0;padding:65px 65px 35px;background:#151b17fa;color:#fff;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;overflow:hidden}dialog::backdrop{background:#151b17fa}dialog>img{height:calc(100% - 35px);max-width:100%;width:100%;object-fit:contain}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:none;color:#fff;padding:15px;font-size:14px}.lightbox-close{right:15px;top:10px}.lightbox-prev{left:5px;top:47%;font-size:28px}.lightbox-next{right:5px;top:47%;font-size:28px}.lightbox-caption{text-align:center;font-size:14px;margin-top:13px}.lightbox-open{overflow:hidden}
@media(min-width:1900px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-intro{grid-template-columns:1.1fr 1fr}.hero-description>p{max-width:850px;font-size:17px}.hero-description h2 br{display:none}.case-story{grid-template-columns:1fr 1.25fr}.case-story p{max-width:1000px}}
@media(max-width:950px){.site-header nav{gap:22px}.nav-contact{margin-left:0}.hero-intro{gap:5vw}.hero-description>p{font-size:14px}.project-grid{gap:38px 20px}.case-story,.about-body,.approach{gap:6vw}.project-details>div{grid-template-columns:105px minmax(0,1fr);gap:15px}.photo-grid{columns:2}.restoration-videos{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 22px}.photo-strip{gap:18px}.photo-strip a:nth-child(2){padding-top:25px}.photo-strip a:nth-child(3){padding-top:50px}}
@media(max-width:650px){.site-header{height:72px;padding-inline:20px}.wordmark{font-size:18px}.site-header nav{gap:16px;font-size:14px}.nav-contact{display:none}.hero{padding:30px 20px 0}.hero-intro{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.hero h1{font-size:62px;margin-top:10px}.hero-description h2{font-size:26px;max-width:440px}.hero-description h2 br{display:none}.hero-description>p{font-size:14px;margin-top:16px;max-width:100%}.hero-description .text-link{margin-top:10px}.hero-image{margin-inline:-20px;width:calc(100% + 40px)}.hero-image-label{padding:12px 20px;font-size:14px;position:static;letter-spacing:.02em}.client-heading{margin-bottom:20px}.client-heading h2{font-size:14px}.client-heading p{font-size:14px}.clients{padding:25px 0}.client-logo{width:160px;height:84px;padding:20px}.marquee-group{gap:20px;padding-right:20px}.section-heading{align-items:start;margin-bottom:25px;flex-wrap:wrap}.section-heading h2{font-size:34px}.section-heading>p{font-size:14px}.filters{gap:7px;margin-bottom:25px}.filters button{padding:7px 12px;font-size:14px}.project-grid{grid-template-columns:1fr;gap:34px}.project-card h3{font-size:26px}.card-meta{font-size:14px}.approach,.case-story,.about-body{grid-template-columns:1fr;gap:30px}.approach h2{font-size:33px;margin-top:15px}.approach>div:last-child>p,.case-story p,.about-body>div>p{font-size:17px}.photo-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.photo-strip a:nth-child(2),.photo-strip a:nth-child(3){padding-top:0}.photo-preview .section-heading{align-items:center}.photo-preview .section-heading h2{font-size:29px}.photo-preview .text-link{font-size:14px;gap:18px}.contact-big{font-size:clamp(21px,6vw,36px);gap:15px}.footer-bottom{margin-top:30px;gap:20px;font-size:14px}.case-kicker{margin-top:30px}.case-kicker .eyebrow{font-size:14px}.case-intro h1{font-size:43px;line-height:1.1}.case-deck{font-size:18px}.case-hero{padding-inline:0}.case-hero.portrait-hero .zoom-image{max-width:100%}.case-story h2{font-size:30px}.project-details>div{grid-template-columns:110px minmax(0,1fr);gap:15px}.case-gallery{grid-template-columns:1fr;gap:28px;padding-top:0}.case-gallery figcaption{font-size:14px}.product-animation{padding-top:0}.product-animation .section-heading{align-items:center}.product-animation .eyebrow{font-size:14px}.product-animation .section-heading h2,.project-video .section-heading h2{font-size:26px}.video-load .play-icon{width:52px;height:52px;font-size:17px}.video-load>span:last-child{font-size:14px;bottom:15px;left:15px}.restoration-videos{gap:28px 14px}.restoration-videos h3{font-size:17px}.restoration-videos p{font-size:14px}.next-project>span:not(.eyebrow){font-size:32px}.photo-grid{column-gap:12px}.photo-grid figure{margin-bottom:12px}.photo-note{font-size:14px;gap:20px}.photo-intro h1,.about-intro h1{font-size:47px}.photo-intro>p:last-child{font-size:14px}.about-body h2{font-size:31px}.capability-row p{font-size:14px}dialog{padding:65px 32px 35px}.lightbox-prev{left:0;padding:7px}.lightbox-next{right:0;padding:7px}.lightbox-caption{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.marquee{overflow-x:auto}.marquee-group[aria-hidden]{display:none}}

@media(min-width:651px) and (max-width:1199px){.project-card:last-child:nth-child(odd){grid-column:1/-1}.project-card:last-child:nth-child(odd)>a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:25px;align-content:center}.project-card:last-child:nth-child(odd) .project-image{grid-column:1;grid-row:1/4}.project-card:last-child:nth-child(odd) .card-meta{grid-column:2;margin-top:0;align-self:end}.project-card:last-child:nth-child(odd) h3,.project-card:last-child:nth-child(odd) p{grid-column:2}.project-card:last-child:nth-child(odd) h3{align-self:center}.project-card:last-child:nth-child(odd) p{align-self:start}}
/* Readable type, consistent logo treatment, and aligned product galleries. */
.client-logo,.client-logo.logo-dark{background:transparent;padding:18px 10px;width:195px;height:95px}
.client-logo img{filter:grayscale(1) brightness(0);opacity:.4;transition:opacity .2s}
.client-logo:hover img{opacity:.65}.marquee-group{gap:55px;padding-right:55px}
.case-video-hero{padding:0 var(--gutter);width:100%}.case-video-hero .animation-frame{background:#111;max-width:2200px;margin-inline:auto}
.racks-gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.racks-gallery figure:first-child{grid-column:1/-1}.racks-gallery figure:first-child .zoom-image{max-width:none}.racks-gallery figure:not(:first-child) img{aspect-ratio:1;object-fit:contain}
.photos-coming-soon{padding-top:0;padding-bottom:45px;color:var(--muted);font-size:17px;border-bottom:0}
.card-meta{font-size:14px;flex-wrap:wrap;gap:6px 18px}.project-card p{font-size:16px}.filters button{font-size:15px;padding:10px 17px}.site-header nav{font-size:16px}.hero-description>p,.approach>div:last-child>p,.case-story p,.about-body>div>p{font-size:18px}.case-gallery figcaption,.image-credit,.client-heading p,.footer-bottom,.photo-note{font-size:14px}.eyebrow{font-size:14px}.project-details dd{font-size:16px}.project-details dt{font-size:14px}.client-heading h2{font-size:17px}.text-link{font-size:16px}.section-heading>p{font-size:16px}.hero-image-label{font-size:14px;flex-wrap:wrap}
@media(max-width:950px){.hero-description>p{font-size:17px}.client-logo,.client-logo.logo-dark{width:165px;height:85px}.marquee-group{gap:35px;padding-right:35px}}
@media(max-width:650px){.site-header{height:auto;min-height:78px;padding-block:16px;flex-wrap:wrap;gap:12px 18px}.site-header nav{font-size:14px;gap:18px}.hero-description>p,.approach>div:last-child>p,.case-story p,.about-body>div>p{font-size:17px}.hero-image-label{font-size:14px;gap:6px 18px}.case-kicker .eyebrow{font-size:14px}.case-kicker{align-items:start}.case-kicker>span{white-space:nowrap}.filters button{font-size:14px;padding:9px 13px}.section-heading>p,.photo-preview .text-link{font-size:15px}.project-card p{font-size:16px}.case-gallery figcaption,.image-credit,.photo-note,.footer-bottom,.client-heading p{font-size:14px}.client-heading{gap:15px;align-items:flex-start}.client-heading h2{font-size:17px}.client-heading p{max-width:260px;line-height:1.5}#marquee-toggle{white-space:nowrap;font-size:14px}.case-video-hero{padding-inline:0}.racks-gallery{grid-template-columns:1fr}.project-details>div{grid-template-columns:105px minmax(0,1fr)}.photos-coming-soon{font-size:17px}.restoration-videos p{font-size:15px}.restoration-videos h3{font-size:17px}.lightbox-caption{font-size:14px}.video-load>span:last-child{font-size:15px}.product-animation .eyebrow{font-size:14px}.photo-note{flex-wrap:wrap}}
.standard-gallery .zoom-image{aspect-ratio:3/2;display:grid;place-items:center}.standard-gallery .zoom-image img{width:100%;height:100%;object-fit:contain}.feature-first figure:first-child{grid-column:1/-1}.compact-gallery{max-width:1300px;margin-inline:auto}.brain-gallery figure:nth-child(n+3) .zoom-image{aspect-ratio:3/4}.gallery-credit{padding-top:0;padding-bottom:40px;color:var(--muted);font-size:14px}
@media(max-width:650px){.standard-gallery .zoom-image{aspect-ratio:auto}.standard-gallery .zoom-image img{height:auto}.brain-gallery figure:nth-child(n+3) .zoom-image{aspect-ratio:auto}}
@media(min-width:1200px){.project-grid[data-count="9"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
.local-product-animation{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#000;object-fit:contain}.render-still img{filter:brightness(1.04) contrast(1.015)}.related-product{border-top:1px solid var(--line)}.related-product h2{font-size:clamp(30px,3vw,46px)}.related-product .related-copy{max-width:900px;margin:20px 0 35px;font-size:18px}.related-product-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.related-product-gallery figure{margin:0}.related-product-gallery img{width:100%;height:auto}.related-product-gallery figcaption{font-size:14px;color:var(--muted);margin-top:12px}@media(max-width:650px){.related-product-gallery{grid-template-columns:1fr}.related-product .related-copy{font-size:17px}}
.brochure-views{padding-top:0}.brochure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:28px}.brochure-grid figure{margin:0}.brochure-render{height:432px;position:relative;overflow:hidden;background:#e8e9e3}.brochure-render img{position:absolute;inset:0;width:100%;height:432px;max-width:none;object-fit:none;object-position:center}.brochure-grid figcaption{font-size:14px;color:var(--muted);margin-top:12px}.brochure-views>.section-heading{align-items:center}.brochure-views>.section-heading .text-link{flex-shrink:0}@media(max-width:800px){.brochure-grid{grid-template-columns:1fr}.brochure-render{max-width:420px;margin-inline:auto}.brochure-grid figcaption{max-width:420px;margin-inline:auto}.brochure-views>.section-heading{align-items:flex-start}}
dialog.native-brochure>img{max-width:768px;max-height:432px;margin-inline:auto;margin-block-start:max(0px,calc((100dvh - 560px)/2));object-fit:contain}

@media(min-width:360px) and (min-height:600px){dialog.native-brochure>img{object-fit:none}}
