*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f6f7f2;color:#20251e;font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #708b29;outline-offset:6px}img{display:block;width:100%;object-fit:cover}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:550}em{font-family:"Instrument Serif",Georgia,serif;font-weight:400}h2{font-size:clamp(40px,4.7vw,70px);line-height:1.02;letter-spacing:-2px}.wrap{width:calc(100% - 112px);max-width:1450px;margin:auto}.header{height:112px;padding:0 56px;max-width:1562px;margin:auto;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:38px;font-weight:800;line-height:.88;letter-spacing:-2px;display:inline-flex;flex-direction:column}.wordmark span{font-size:9px;letter-spacing:2.7px;margin-top:7px;margin-left:2px}.header nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:550}.header nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.button{background:#20251e;color:#fff;display:inline-flex;gap:32px;align-items:center;justify-content:space-between;border-radius:40px;padding:12px 13px 12px 25px;min-height:58px;font-size:15px;transition:background .2s}.button:hover{background:#3d4834}.button span{background:#d7ee88;color:#20251e;border-radius:50%;height:34px;width:34px;display:grid;place-items:center;font-size:23px}.button.small{font-size:14px;min-height:46px;padding:7px 8px 7px 20px;gap:24px}.button.small span{width:30px;height:30px}.menu-toggle{display:none}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.7px;display:flex;align-items:center;gap:12px}.cross{font-size:27px;font-weight:400;line-height:1}.hero{display:grid;grid-template-columns:1fr 1.03fr;gap:45px;padding-top:12px;padding-bottom:52px;align-items:stretch}.hero-copy{padding-top:27px;padding-bottom:18px}.hero h1{font-size:clamp(68px,7.5vw,116px);letter-spacing:-5px;line-height:.94;margin-top:34px;margin-bottom:28px}.hero h1 em{letter-spacing:-3px}.intro{font-size:16px;color:#62675e;margin-bottom:30px;line-height:1.7}.hero-note{font-size:12px;color:#666e61;margin-top:40px;display:flex;gap:10px;align-items:center}.line{height:1px;width:28px;background:#868c7b}.hero-visual{position:relative;min-height:620px;overflow:hidden;border-radius:5px}.hero-visual img{height:100%;position:absolute;object-position:52% center}.hero-caption{position:absolute;bottom:0;left:0;right:0;padding:65px 26px 26px;background:linear-gradient(transparent,#0008);color:white;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px}.clients{border-top:1px solid #d7dacf;border-bottom:1px solid #d7dacf;padding:31px 0;display:flex;align-items:center;gap:75px}.clients>p{font-size:12px;color:#666e61;min-width:130px}.clients>div{flex:1;display:flex;align-items:center;justify-content:space-between;gap:32px}.clients span{font-size:15px;line-height:1.05;font-weight:600;letter-spacing:-.5px}.clients span b{font-size:17px}.clients .client-bold{font-weight:800;font-size:26px;letter-spacing:-1px}.clients .client-wide{font-size:17px}.work-section{padding-top:103px;padding-bottom:103px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:38px}.section-heading h2{margin-top:18px}.text-link{font-size:14px;display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid #b7bfac;padding-bottom:8px;font-weight:550}.text-link:hover{border-color:#20251e}.text-link span{font-size:22px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.photo{margin:0;min-width:0}.photo-open{display:block;position:relative;border:0;padding:0;background:#e5e8dd;width:100%;overflow:hidden;border-radius:3px}.photo img{aspect-ratio:4/5;height:auto;transition:transform .5s}.photo-open:hover img{transform:scale(1.035)}.image-open{position:absolute;right:16px;bottom:16px;background:#f6f7f2e8;border-radius:50%;height:38px;width:38px;display:grid;place-items:center;font-size:23px}.photo figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:15px;font-size:14px}.muted{color:#71786b}.services{background:#e9eddf}.services-inner{display:grid;grid-template-columns:.85fr 1.2fr;gap:100px;padding:85px 0}.services-heading h2{margin:22px 0}.services-heading>p:not(.eyebrow){max-width:330px;color:#5c6555;font-size:16px;margin-bottom:28px}.service-row{display:flex;gap:23px;padding:25px 0;border-bottom:1px solid #c7ceba;align-items:center}.service-row:first-child{padding-top:0}.service-number{font-size:12px;color:#69735d;align-self:flex-start;margin-top:9px}.service-row h3{font-size:23px;letter-spacing:-.6px}.service-row p{color:#626b59;font-size:14px;margin-top:6px;max-width:330px}.service-arrow{margin-left:auto;font-size:25px;transition:transform .2s}.service-row:hover .service-arrow{transform:translate(3px,-3px)}.about{padding-top:112px;padding-bottom:112px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-image{position:relative}.about-image img{height:590px;object-position:50% 30%;border-radius:3px}.about-image>span{position:absolute;bottom:20px;left:20px;background:#f6f7f2;padding:11px 15px;letter-spacing:1.2px;font-size:10px}.about-copy h2{margin:22px 0 30px;font-size:clamp(40px,4.3vw,64px)}.about-copy>p:not(.eyebrow){color:#62675e;max-width:450px;margin-bottom:20px}.about-copy .text-link{margin-top:12px}.contact{background:#d7ee88;border-radius:5px;padding:62px;display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.contact h2{margin-top:22px}.contact-info>p{max-width:380px}.email{font-size:clamp(18px,2.1vw,29px);letter-spacing:-.5px;border-bottom:1px solid #829151;padding-bottom:13px;margin:26px 0 18px;display:flex;justify-content:space-between;gap:12px;overflow-wrap:anywhere}.contact-info .muted{font-size:13px;color:#536033}.footer{display:flex;align-items:center;justify-content:space-between;padding-top:44px;padding-bottom:44px;gap:20px;font-size:12px}.footer p{margin-left:auto;margin-right:40px;color:#71786b}.footer .wordmark{font-size:29px}.footer .wordmark span{font-size:7px;letter-spacing:2px}.footer>a:last-child{margin-left:35px}.skip{position:fixed;left:10px;top:-70px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.lightbox{background:#11150ff5;color:white;border:0;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;padding:65px 85px 80px}.lightbox::backdrop{background:#111}.lightbox[open]{display:grid;place-items:center}.lightbox>img{width:100%;height:100%;min-height:0;object-fit:contain}.lightbox button{position:absolute;border:1px solid #ffffff45;background:#282d25;color:white;border-radius:50%;width:44px;height:44px;font-size:23px;display:grid;place-items:center}.close-lightbox{right:20px;top:20px}.prev-image{left:18px;top:48%}.next-image{right:18px;top:48%}.image-caption{position:absolute;bottom:26px;left:70px;right:70px;text-align:center;font-size:14px}.page-intro{padding-top:55px;padding-bottom:40px}.page-intro h1{font-size:clamp(58px,6.5vw,96px);line-height:1.02;letter-spacing:-3px;margin:22px 0}.page-intro>p:last-child{color:#62675e;max-width:580px;font-size:17px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 32px}.filters button{padding:10px 20px;border-radius:30px;border:1px solid #cdd3c1;background:transparent;font-size:14px;min-height:44px}.filters button[aria-pressed=true]{background:#20251e;color:white;border-color:#20251e}.gallery-page{padding-bottom:90px}.gallery-page .photo-grid{row-gap:35px}.gallery-status{margin-bottom:20px;color:#71786b;font-size:13px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:12px auto 70px}.price-card{border:1px solid #cfd5c5;border-radius:5px;padding:28px;display:flex;flex-direction:column}.price-card h2{font-size:25px;letter-spacing:-.7px;line-height:1.2}.price-card .price{font-size:35px;margin:24px 0}.price-card p{color:#62675e;font-size:14px}.price-card ul{padding-left:20px;color:#62675e;font-size:14px;line-height:1.8;margin:22px 0 30px}.price-card a{margin-top:auto}.calculator{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:#e9eddf;padding:45px;border-radius:5px;margin-bottom:70px}.calculator h2{font-size:38px;letter-spacing:-1px;margin:14px 0}.calculator p{color:#62675e;font-size:14px}.fields{display:grid;gap:16px}.fields label{display:grid;gap:5px;font-size:14px}.fields input,.fields select{width:100%;background:#f6f7f2;border:1px solid #b9c2a9;border-radius:4px;padding:10px;min-height:44px}.fields .check{display:flex;gap:10px;align-items:center}.check input{width:20px;min-height:20px;height:20px}.estimate{border-top:1px solid #bcc7ad;margin-top:20px;padding-top:20px}.estimate output{display:block;font-size:35px;letter-spacing:-1px;font-weight:550}.faq{max-width:850px;padding-bottom:90px}.faq h2{font-size:45px;margin-bottom:32px}.faq details{border-bottom:1px solid #cfd5c5;padding:20px 0}.faq summary{cursor:pointer;font-size:17px}.faq details p{padding-top:15px;color:#62675e}.tail-note{margin:-40px auto 65px;color:#62675e;font-size:14px}body.modal-open{overflow:hidden}[hidden]{display:none!important}@media(min-width:1500px){.hero-visual{min-height:750px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header{padding:0 32px;height:95px}.header nav{gap:22px}.hero{gap:28px}.hero h1{font-size:83px}.hero-visual{min-height:585px}.hero-note{font-size:10px}.clients{gap:30px}.clients>div{gap:20px}.clients span{font-size:12px}.clients .client-bold{font-size:21px}.services-inner{gap:40px}.service-row h3{font-size:20px}.about{gap:50px}.about-image img{height:520px}.contact{padding:40px;gap:35px}.price-card{padding:22px}.price-card .price{font-size:29px}}@media(max-width:700px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 40px)}.header{padding:0 20px;height:86px;position:relative;z-index:10}.wordmark{font-size:32px}.wordmark span{font-size:8px;letter-spacing:2px}.menu-toggle{display:flex;gap:13px;align-items:center;border:1px solid #ced4c4;border-radius:24px;background:transparent;padding:10px 16px;font-size:14px}.header nav{display:none;position:absolute;top:78px;left:20px;right:20px;background:#f6f7f2;border:1px solid #ced4c4;padding:20px;border-radius:6px;box-shadow:0 18px 30px #20251e15}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a{padding:14px}.header nav .button{margin-top:8px}.hero{display:flex;flex-direction:column;gap:32px;padding-top:7px;padding-bottom:32px}.hero-copy{padding-top:15px;padding-bottom:0}.eyebrow{font-size:10px;letter-spacing:1.4px}.hero h1{font-size:clamp(67px,16.5vw,110px);line-height:.94;letter-spacing:-3px;margin:26px 0}.hero h1 em{letter-spacing:-2px}.intro{font-size:15px;max-width:330px}.intro br{display:none}.hero-note{font-size:11px;margin-top:26px}.hero-visual{min-height:0;aspect-ratio:4/4.4}.hero-caption{font-size:9px;padding:50px 18px 18px}.clients{display:block;padding:24px 0}.clients>p{margin-bottom:25px;font-size:12px}.clients>p br{display:none}.clients>div{flex-wrap:wrap;justify-content:flex-start;gap:26px 30px}.clients .client-wide{font-size:14px}.clients span b{font-size:14px}.work-section{padding:66px 0}.section-heading{display:block;margin-bottom:27px}.section-heading .text-link{margin-top:23px}.photo-grid{grid-template-columns:1fr;gap:30px}.photo img{aspect-ratio:4/4.5}.photo figcaption{font-size:14px}.services-inner{grid-template-columns:1fr;gap:38px;padding:60px 0}.services-heading>p:not(.eyebrow){max-width:100%}.service-row{gap:16px;padding:23px 0}.service-row h3{font-size:21px}.service-row p{font-size:14px}.service-number{font-size:11px}.service-arrow{padding-left:5px}.about{grid-template-columns:1fr;padding:66px 0;gap:36px}.about-image img{height:auto;aspect-ratio:4/4.5}.about-copy h2{font-size:46px}.about-copy>p:not(.eyebrow){font-size:15px}.contact{padding:34px 24px;grid-template-columns:1fr;gap:28px}.contact h2{font-size:45px}.contact-info>p{font-size:15px}.email{font-size:20px}.footer{flex-wrap:wrap;padding:30px 0;gap:27px}.footer p{margin:0 0 0 auto;font-size:11px}.footer>a:last-child{margin-left:auto}.page-intro{padding-top:30px}.page-intro h1{font-size:57px;letter-spacing:-2px}.page-intro>p:last-child{font-size:16px}.filters{gap:8px}.filters button{font-size:13px;padding:9px 14px}.price-grid{grid-template-columns:1fr;gap:16px;margin-bottom:60px}.price-card{padding:25px}.price-card .price{font-size:38px}.calculator{grid-template-columns:1fr;padding:26px;gap:25px}.estimate output{font-size:30px}.faq h2{font-size:37px}.lightbox{padding:65px 15px 115px}.lightbox .prev-image,.lightbox .next-image{top:auto;bottom:20px}.image-caption{bottom:26px;font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}