@font-face{font-family:Barlow;src:url('/assets/display.woff2') format('woff2');font-weight:600 900;font-display:swap}@font-face{font-family:DM;src:url('/assets/body.woff2?v=2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f6f3eb;--ink:#252a26;--orange:#dc633c;--line:#d7d7ca;--muted:#61675e;--cream:#ecebdc;--display:Barlow,'Arial Narrow',Impact,sans-serif;--body:DM,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--body)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}button{color:inherit}::selection{background:#e5a48c;color:#202820}:focus-visible{outline:3px solid #c8522a;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);line-height:.98;font-weight:700;letter-spacing:-.025em}h2{font-size:clamp(44px,4.5vw,68px)}h3{font-size:32px}em{font-style:normal;color:var(--orange)}p{max-width:62ch}.skip{position:fixed;left:15px;top:-80px;background:var(--ink);color:#fff;padding:12px;z-index:99}.skip:focus{top:10px}.topline{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;padding:10px 4.5%;font-size:10px;letter-spacing:.13em;font-weight:700}.topline i{width:6px;height:6px;background:#e59066;display:inline-block;border-radius:50%;margin-right:7px}.topline a span{margin-left:18px}.site-header{height:101px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:27px;font-weight:800;line-height:.85;letter-spacing:-.02em}.brand small{display:block;font-family:var(--body);font-size:10px;letter-spacing:.25em;margin-top:9px}.site-header nav{display:flex;gap:31px;font-size:13px;font-weight:600}.site-header nav a{position:relative;padding:10px 0}.site-header nav a:after{content:'';display:block;position:absolute;bottom:4px;left:0;width:0;height:2px;background:var(--orange);transition:width .2s}.site-header nav a:hover:after{width:100%}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:50px;background:var(--orange);color:#17241b;font-size:14px;font-weight:800;padding:18px 25px;border:1px solid var(--orange);transition:background .2s,transform .2s;min-height:56px}.button span{font-size:24px;line-height:1}.button:hover{background:#e67b55;transform:translateY(-2px)}.button.small{font-size:12px;padding:13px 20px;min-height:48px;gap:28px}.button.outline{background:none;border-color:var(--ink)}.button.outline:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;padding:56px 4.5% 49px;gap:0;max-width:1800px;margin:auto}.hero-copy{padding:20px 25px 0 0}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;display:flex;gap:12px;align-items:center;line-height:1.5}.line{display:inline-block;width:26px;height:2px;background:var(--orange)}h1{font-size:clamp(62px,6.8vw,111px);margin:27px 0 24px;letter-spacing:-.035em;line-height:.92}h1 em{display:block}.hero-description{max-width:350px;font-size:15px;line-height:1.85;margin-bottom:28px;color:#4e564c}.hero-foot{display:flex;align-items:center;gap:15px;margin-top:38px}.hero-foot p{font-size:11px;color:#676c62;line-height:1.5}.stamp{border:1px solid #929788;border-radius:50%;width:51px;height:51px;display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:1;font:700 17px var(--display);transform:rotate(-12deg)}.stamp b{font-size:10px}.hero-visual{min-width:0;padding-left:24px}.image-shell{position:relative;height:500px;overflow:hidden;background:#737a70}.image-shell>img{height:100%;width:100%;object-fit:cover;transition:opacity .22s,transform .7s}.image-shell:hover>img{transform:scale(1.025)}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.24),transparent 45%,rgba(0,0,0,.7))}.photo-top{display:flex;justify-content:space-between;position:absolute;top:24px;left:25px;right:25px;color:#fff;font-size:9px;font-weight:700;letter-spacing:.12em}.photo-bottom{position:absolute;bottom:29px;left:29px;right:25px;color:#fff}.photo-bottom>span{font-size:9px;letter-spacing:.12em;font-weight:700}.photo-bottom h2{font-size:50px;margin:13px 0 10px}.photo-bottom p{font-size:12px;line-height:1.5}.photo-cross{position:absolute;bottom:36px;right:28px;color:#fff;font-size:24px}.project-control{display:flex;background:var(--cream);border:1px solid #d7d7c9;align-items:stretch}.control-hint{font-size:8px;font-weight:800;letter-spacing:.08em;padding:18px;width:31%;line-height:1.5;display:flex;flex-direction:column;justify-content:center}.control-hint small{font-weight:500;letter-spacing:0;margin-top:5px;font-size:9px}.project-buttons{display:grid;grid-template-columns:repeat(3,1fr);flex:1}.project-buttons button{border:0;border-left:1px solid #d7d7c9;border-top:3px solid transparent;background:none;font-size:9px;text-align:left;padding:15px 12px;line-height:1.7;transition:background .2s}.project-buttons button span{display:block;font-size:12px;font-weight:700}.project-buttons button[aria-pressed=true]{background:var(--paper);border-top-color:var(--orange)}.project-buttons button:hover{background:#e0e1d1}.service-ribbon{display:flex;justify-content:space-around;align-items:center;padding:23px 4.5%;border-block:1px solid var(--line);font:700 clamp(21px,3vw,40px)/1 var(--display);letter-spacing:.025em}.service-ribbon b{font-size:25px;color:var(--orange)}.section{padding:100px 7%;scroll-margin-top:15px}.services{display:grid;grid-template-columns:42% 58%;gap:0}.section-intro{padding-right:75px}.section-intro h2{margin:24px 0}.section-intro>p:last-child{font-size:14px;line-height:1.8;color:var(--muted)}.service-list details{border-top:1px solid #b9bdb0}.service-list details:last-child{border-bottom:1px solid #b9bdb0}.service-list summary{display:flex;list-style:none;align-items:center;padding:26px 0;cursor:pointer;gap:22px}.service-list summary::-webkit-details-marker{display:none}.service-number{font-size:10px;color:#686e62;font-weight:700}.service-list h3{font-size:clamp(25px,2.6vw,37px)}.plus{margin-left:auto;font-size:24px;font-weight:300;transition:transform .2s}.service-list details[open] .plus{transform:rotate(45deg)}.service-detail{padding:0 18px 30px 39px;animation:fade .3s}.service-detail>p{font-size:14px;color:var(--muted);line-height:1.8}.service-tags{display:flex;flex-wrap:wrap;gap:7px;margin:19px 0 22px}.service-tags span{font-size:9px;border:1px solid #c7cbbd;padding:5px 9px}.text-link{font-size:12px;font-weight:800;border-bottom:1px solid #888e7e;padding-bottom:5px;display:inline-flex;gap:30px}.text-link:hover{color:#b84624}.work{background:var(--ink);color:var(--paper);padding-bottom:72px}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:43px}.work-heading h2{margin-top:22px}.work-heading>p{font-size:14px;color:#bfc5b9;max-width:330px;line-height:1.8}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #50574b;padding-top:24px;margin-bottom:28px;gap:20px}.filters{display:flex;flex-wrap:wrap;gap:6px}.filters button{background:none;color:#c9cebf;border:1px solid #586050;padding:10px 16px;font-size:11px;min-height:42px}.filters button.active,.filters button:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.filters span{font-size:8px;margin-left:8px}.album-note{font-size:8px;letter-spacing:.08em;color:#b4bcac;white-space:nowrap}.album-note>span{padding-left:14px;font-size:17px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.work-photo{background:none;border:0;color:var(--paper);padding:0;text-align:left;min-width:0}.work-photo .work-image{height:255px;position:relative;overflow:hidden;background:#41483d}.work-photo img{height:100%;width:100%;object-fit:cover;transition:transform .6s,filter .3s;filter:saturate(.85)}.work-photo:hover img{transform:scale(1.04);filter:saturate(1)}.work-photo .expand{position:absolute;right:13px;bottom:13px;background:var(--paper);color:var(--ink);width:33px;height:33px;text-align:center;line-height:30px;font-size:22px;opacity:0;transform:translateY(5px);transition:.2s}.work-photo:hover .expand,.work-photo:focus-visible .expand{opacity:1;transform:none}.work-photo .work-label{padding-top:12px;display:flex;justify-content:space-between;gap:10px;font-size:11px;font-weight:600}.work-photo small{font-size:9px;color:#a8b39e;font-weight:400}.gallery-footer{display:flex;justify-content:space-between;align-items:center;margin-top:35px}.gallery-footer p{font-size:11px;color:#b7c0ac}.gallery-footer .button{color:var(--paper);border-color:#78826d;font-size:11px;min-height:45px;padding:10px 18px}.gallery-footer .button:hover{background:var(--paper);color:var(--ink)}.approach{display:grid;grid-template-columns:50% 50%;gap:0;align-items:center}.approach-image{padding-right:70px}.approach-image>img{width:100%;height:505px;object-fit:cover}.image-caption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.05em;margin-top:14px}.approach-copy h2{margin:23px 0}.approach-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:22px;line-height:1.8}.approach-copy p.large-copy{font-size:19px;color:var(--ink);line-height:1.65}.location-block{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.location-block>span{font-size:38px;line-height:1;color:#7a826c}.location-block p{font-size:9px;font-weight:800;letter-spacing:.08em}.location-block small{font-size:11px;letter-spacing:0;font-weight:400;display:block;color:var(--muted);margin-top:5px}.process{background:var(--cream);padding-top:57px;padding-bottom:65px}.process-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:43px}.process-top h2{font-size:49px}.process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:0}.process li{border-top:1px solid #bbc2ae;padding-top:20px}.process li>span{display:block;font:700 34px var(--display);color:#858f77;margin-bottom:20px}.process h3{font-size:28px;margin-bottom:14px}.process p{font-size:12px;line-height:1.8;color:var(--muted);max-width:265px}.quote{display:grid;grid-template-columns:44% 56%;gap:0}.quote-copy{padding-right:70px}.quote-copy h2{margin:23px 0 27px;font-size:clamp(55px,5.5vw,82px)}.quote-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.8}.call-link{font-family:var(--display);font-size:36px;display:block;margin:32px 0;white-space:nowrap}.call-link>span{display:block;font:800 9px var(--body);letter-spacing:.13em;margin-bottom:8px}.call-link b{font-size:25px;margin-left:12px;color:var(--orange)}.preview-note{display:flex;gap:12px;padding-top:24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);line-height:1.8}.preview-note>span{font-size:18px}.preview-note strong{display:block;color:var(--ink);font-size:11px}form{background:#eeeee3;padding:30px 32px;min-width:0}.form-top{display:flex;justify-content:space-between;margin-bottom:27px;font-size:9px;font-weight:800;letter-spacing:.1em}.form-top>span:last-child{font-size:28px;line-height:.5;color:var(--orange)}label{display:block;font-size:10px;font-weight:700;line-height:1.4;min-width:0;margin-bottom:20px}.optional{font-weight:400;color:var(--muted)}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #b9c0ad;background:transparent;border-radius:0;font-size:12px;padding:12px 0;color:var(--ink);min-height:44px;outline-offset:2px}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:23px}form .button{width:100%;font-size:12px}.privacy-copy{font-size:9px;margin-top:12px;color:#5f6758}.form-feedback{background:#d9e0cb;padding:15px;margin-top:18px;font-size:13px;border-left:3px solid #63744c}.form-feedback[hidden]{display:none}footer{padding:50px 7% 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:30px;align-items:start}footer>p{font-size:12px;color:var(--muted)}footer>div:not(.footer-bottom){display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:10px;padding:20px 0;font-size:9px;color:var(--muted)}.lightbox{border:0;padding:20px;background:var(--ink);color:var(--paper);width:min(1100px,95vw);max-width:95vw;max-height:95dvh}.lightbox::backdrop{background:#101810e8}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:15px}.lightbox button{background:none;border:1px solid #798070;color:var(--paper);padding:8px 13px;min-width:44px;min-height:44px}.lightbox-image{display:flex;align-items:center;gap:15px;justify-content:space-between}.lightbox-image img{max-height:75dvh;min-width:0;width:auto;object-fit:contain;margin:auto}.lightbox-image>button{font-size:21px;flex-shrink:0}.lightbox>p{font-size:11px;margin:12px auto 0;text-align:center}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.js .reveal.visible{opacity:1;transform:none}@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1500px)/2));padding-right:max(7%,calc((100vw - 1500px)/2))}.hero-visual .image-shell{height:600px}}
@media(max-width:1050px){.site-header nav{gap:19px}.hero{padding-top:35px}.hero-copy{padding-top:10px}h1{font-size:76px}.image-shell{height:480px}.hero .eyebrow{font-size:8px}.hero-visual{padding-left:12px}.section{padding:75px 5%}.section-intro{padding-right:35px}.service-list h3{font-size:28px}.approach-image{padding-right:35px}.quote-copy{padding-right:35px}.album-note{display:none}.work-photo .work-image{height:220px}.photo-cross{display:none}.project-buttons button{padding:13px 9px}.control-hint{padding:13px}.brand{font-size:24px}.header-cta.button{gap:18px}.process-top h2{font-size:40px}}
@media(max-width:760px){html{scroll-padding-top:85px}.topline{padding:10px 5%;font-size:8px;letter-spacing:.07em}.topline a span{margin-left:4px}.site-header{height:82px;padding:0 5%;gap:15px}.brand{font-size:22px;gap:9px}.brand img{width:35px;height:38px}.brand small{font-size:8px;margin-top:7px}.header-cta{margin-left:auto}.header-cta.button.small{font-size:10px;gap:14px;padding:10px 13px;min-height:42px}.header-cta span{font-size:18px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;padding:10px;width:34px;height:44px;flex-shrink:0}.menu-toggle span{height:1px;background:var(--ink);width:19px}.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:20px 6%;border-bottom:1px solid var(--line);font-size:15px}.site-header nav.open{display:flex;flex-direction:column;gap:9px}.hero{display:flex;flex-direction:column;padding:33px 5% 32px}.hero-copy{padding:0}.hero .eyebrow{font-size:8px}.line{width:18px}h1{font-size:clamp(64px,13.3vw,93px);margin:24px 0 21px;line-height:.94}h1 em{display:inline}.hero-description{font-size:14px;max-width:36ch;margin-bottom:22px}.hero .button{min-height:53px;gap:48px;padding:14px 21px;font-size:12px}.hero-foot{display:none}.hero-visual{padding:0;margin-top:32px}.image-shell{height:420px}.photo-top{left:20px;right:20px;top:20px;font-size:8px}.photo-bottom{left:21px;bottom:24px}.photo-bottom h2{font-size:44px}.photo-bottom p{font-size:11px}.photo-bottom>span{font-size:8px}.project-control{min-height:78px}.control-hint{font-size:7px;width:29%;padding:12px}.control-hint small{font-size:8px}.project-buttons button{font-size:8px;padding:11px}.project-buttons button span{font-size:11px}.service-ribbon{padding:22px 5%;font-size:24px;gap:10px}.service-ribbon b{font-size:16px}.service-ribbon span:last-child,.service-ribbon b:last-of-type{display:none}.section{padding:65px 5%}h2{font-size:50px}.services{display:block}.section-intro{padding:0}.section-intro h2{margin:20px 0}.section-intro>p:last-child{max-width:35ch}.service-list{margin-top:34px}.service-list summary{padding:23px 0;gap:20px}.service-list h3{font-size:28px}.service-detail{padding-left:33px}.work-heading{display:block}.work-heading>p{margin-top:23px;font-size:13px}.work-heading h2{margin-top:20px}.gallery-toolbar{padding-top:19px}.filters{gap:6px}.filters button{font-size:10px;padding:9px 12px;min-height:42px}.gallery{grid-template-columns:1fr 1fr;gap:24px 13px}.work-photo .work-image{height:190px}.work-photo .work-label{font-size:10px;gap:4px;display:block;line-height:1.5}.work-photo small{display:block;margin-top:4px;font-size:8px}.work-photo .expand{opacity:1;width:28px;height:28px;line-height:26px;font-size:17px;right:8px;bottom:8px}.gallery-footer{gap:16px;align-items:center}.gallery-footer p{font-size:10px}.gallery-footer .button{font-size:10px;padding:10px 12px;gap:16px}.approach{display:flex;flex-direction:column;gap:38px}.approach-image{padding:0;width:100%}.approach-image>img{height:360px;object-position:center}.approach-copy>p:not(.eyebrow){font-size:13px}.approach-copy p.large-copy{font-size:18px}.process-top{display:block;margin-bottom:32px}.process-top h2{font-size:46px;margin-top:20px}.process ol{grid-template-columns:1fr;gap:25px}.process li{display:grid;grid-template-columns:45px 1fr;column-gap:15px;padding-top:20px}.process li>span{grid-row:1/3;font-size:29px;margin:0}.process h3{font-size:27px;margin-bottom:10px}.process p{grid-column:2;max-width:100%;font-size:12px}.quote{display:block}.quote-copy{padding:0}.quote-copy h2{font-size:62px}.quote-copy>p:not(.eyebrow){font-size:13px}.call-link{font-size:36px;margin:26px 0}.preview-note{padding-top:20px;margin-bottom:33px;max-width:38ch}form{padding:25px 21px}.field-row{gap:20px}.form-top{font-size:8px}input,textarea,select{font-size:12px}footer{padding:35px 5% 0;grid-template-columns:1fr 1fr;gap:24px}.footer-brand{grid-column:1/-1}footer>p{font-size:11px}footer>div:not(.footer-bottom){font-size:11px}.footer-bottom{font-size:8px;gap:10px;padding:18px 0}.lightbox{padding:13px}.lightbox-bar{font-size:10px;gap:12px}.lightbox-bar button{font-size:11px}.lightbox-image{position:relative;gap:5px}.lightbox-image>button{position:absolute;bottom:8px;background:#252a26da;z-index:2;padding:5px 10px}.lightbox-image>button:first-child{left:8px}.lightbox-image>button:last-child{right:8px}.lightbox-image img{width:100%;max-height:72dvh}.lightbox>p{font-size:10px}.lightbox button{min-height:44px;min-width:44px}}
@media(max-width:370px){.brand{font-size:19px}.brand small{font-size:7px}.brand img{width:31px}.site-header{gap:8px}.header-cta.button.small{padding:10px;font-size:9px;gap:9px}h1{font-size:58px}.image-shell{height:370px}.field-row{grid-template-columns:1fr;gap:0}.service-list h3{font-size:25px}.filters button{padding:8px 10px}.work-photo .work-image{height:160px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.image-shell:hover>img,.work-photo:hover img,.button:hover{transform:none}}
[hidden]{display:none!important}

