:root{--paper:#f4f1ea;--paper-2:#e8e2d8;--ink:#171815;--muted:#6f7069;--line:rgba(23,24,21,.16);--sage:#697064;--wood:#a5734f;--white:#fff;--shell:min(1320px, calc(100vw - 64px) );--serif:"Manrope",sans-serif;--sans:"DM Sans",sans-serif;--ease:cubic-bezier(.22,1,.36,1);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:var(--shell);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--ink);color:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}.eyebrow{display:flex;align-items:center;gap:.65rem;margin:0 0 1.6rem;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600}.eyebrow:before{content:"";width:34px;height:1px;background:currentColor}.eyebrow.light{color:#d7d5cf}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.045em;margin:0}h1{font-size:clamp(3.7rem,8vw,8.5rem)}h2{font-size:clamp(2.8rem,5.2vw,5.8rem)}h3{font-size:clamp(1.35rem,2vw,2rem)}p{margin-top:0}.lead{font-size:clamp(1.05rem,1.45vw,1.35rem);line-height:1.55;color:var(--muted);max-width:680px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 1.5rem;border:1px solid var(--ink);background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.11em;font-size:.73rem;font-weight:600;transition:.35s var(--ease)}.button:hover{background:var(--wood);border-color:var(--wood);transform:translateY(-2px)}.button-outline{background:transparent;color:var(--ink)}.button-outline:hover{color:#fff}.button-light{background:#f4f1ea;color:var(--ink);border-color:#f4f1ea}.text-link{display:inline-flex;gap:.8rem;align-items:center;border-bottom:1px solid;padding-bottom:.25rem;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;font-weight:600}.text-link span{font-size:1rem}.text-link.light{color:#fff}.section{padding:clamp(5rem,10vw,10rem) 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3.5rem}.section-head p{max-width:450px;color:var(--muted);margin:0}.section-head h2{max-width:850px}.kicker{color:var(--wood);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600}.site-header{position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid transparent;transition:.35s;background:linear-gradient(to bottom,rgba(15,15,13,.45),transparent);color:#fff}.site-header.scrolled,.site-header.light-page{background:#f4f1eaed;backdrop-filter:blur(16px);border-color:var(--line);color:var(--ink)}.header-inner{height:92px;display:grid;grid-template-columns:260px 1fr 180px;align-items:center}.brand{display:inline-flex;align-items:center;width:max-content;line-height:1}.brand-mark{font:500 1.55rem/1 var(--serif);letter-spacing:-.07em}.brand-rule{width:1px;height:32px;background:currentColor;opacity:.5;margin:0 .75rem}.brand-name{font-size:.65rem;line-height:1.15;text-transform:uppercase;letter-spacing:.13em}.desktop-nav{display:flex;justify-content:center;gap:clamp(1rem,2vw,2.3rem)}.desktop-nav a{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-.4rem;height:1px;background:currentColor;transition:.3s}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}.header-call{text-align:right;line-height:1.25}.header-call span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.63rem;opacity:.7}.header-call strong{font-weight:500;font-size:.86rem}.menu-toggle{display:none;background:none;border:0;color:inherit;width:44px;height:44px;padding:10px}.menu-toggle span:not(.sr-only){display:block;height:1px;background:currentColor;margin:6px 0}.mobile-menu{position:fixed;inset:0;background:var(--ink);color:#fff;padding:130px 32px 40px}.mobile-menu a{display:flex;gap:1rem;align-items:center;font:400 clamp(2rem,10vw,4rem)/1.2 var(--serif);padding:.45rem 0;border-bottom:1px solid rgba(255,255,255,.13)}.mobile-menu a span{font:500 .65rem var(--sans);opacity:.55}.mobile-menu-contact{margin-top:2rem}.mobile-menu-contact a{font:400 .9rem var(--sans);border:0}.mobile-call{display:none}.hero{min-height:100svh;color:#fff;position:relative;display:flex;align-items:end;overflow:hidden;background:#252620}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media img{height:100%;object-fit:cover;animation:heroScale 1.7s var(--ease) both}.hero-overlay{background:linear-gradient(90deg,#0b0c0abf,#0b0c0a2b 65%),linear-gradient(0deg,rgba(11,12,10,.44),transparent 45%)}.hero-content{position:relative;padding:190px 0 76px;display:grid;grid-template-columns:1fr 340px;align-items:end;gap:3rem}.hero h1{max-width:960px;font-size:clamp(4rem,8.5vw,9rem)}.hero h1 em{display:block;font-style:normal;color:#d8c5aa}.hero-side p{font-size:1.05rem;color:#ffffffd4;margin-bottom:2rem}.hero-scroll{position:absolute;right:32px;bottom:85px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.17em;font-size:.62rem}.hero-scroll:after{content:"";display:inline-block;height:70px;width:1px;background:#ffffff80;margin-top:1rem}@keyframes heroScale{0%{transform:scale(1.08)}to{transform:scale(1)}}.intro-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.intro-grid h2{font-size:clamp(2.7rem,5vw,5.5rem)}.intro-copy{padding-top:1rem}.intro-copy .lead{margin-bottom:2rem}.intro-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:4rem;border-top:1px solid var(--line)}.intro-stats div{padding:1.5rem 1.5rem 0 0}.intro-stats strong{display:block;font:400 1.1rem var(--serif)}.intro-stats span{color:var(--muted);font-size:.78rem}.featured-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,5rem)}.featured-grid .project-card:nth-child(2){margin-top:22vh}.project-card{min-width:0}.project-image{display:block;overflow:hidden;background:var(--paper-2);aspect-ratio:4/3}.project-image img{height:100%;object-fit:cover;transition:transform .8s var(--ease)}.project-card:hover img{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.25rem 0}.project-meta p{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 .35rem}.project-meta h3{font-size:1.7rem}.circle-link{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;transition:.3s}.circle-link:hover,.services-preview{background:var(--ink);color:#fff}.services-list{border-top:1px solid rgba(255,255,255,.18)}.service-row{display:grid;grid-template-columns:70px 1fr 1fr 40px;align-items:center;gap:2rem;padding:1.6rem 0;border-bottom:1px solid rgba(255,255,255,.18);transition:.3s}.service-row:hover{padding-left:1rem;color:#d9c2a4}.service-row span{font-size:.7rem;opacity:.55}.service-row h3{font-size:clamp(1.5rem,3vw,3rem)}.service-row p{margin:0;color:#ffffff94;max-width:520px}.service-row b{font-weight:400;font-size:1.2rem}.services-collage{margin-top:5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:end}.services-collage img:first-child{aspect-ratio:16/10;object-fit:cover}.services-collage img:last-child{aspect-ratio:4/5;object-fit:cover;max-width:390px;justify-self:end}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-card{padding:2rem 2rem 2rem 0;border-right:1px solid var(--line);min-height:270px;display:flex;flex-direction:column}.process-card+.process-card{padding-left:2rem}.process-card:last-child{border:0}.process-card span{font-size:.7rem;color:var(--wood)}.process-card h3{margin-top:auto;margin-bottom:1rem}.process-card p{font-size:.9rem;color:var(--muted);margin:0}.areas-band{background:var(--paper-2);overflow:hidden;padding:3rem 0}.areas-track{display:flex;width:max-content;animation:marquee 30s linear infinite}.areas-track span{font:400 clamp(2rem,4vw,4.5rem)/1 var(--serif);white-space:nowrap}.areas-track span:after{content:"✦";font-size:.35em;margin:0 1.2em;color:var(--wood)}@keyframes marquee{to{transform:translate(-50%)}}.faq-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;display:flex;justify-content:space-between;gap:1rem;padding:1.5rem 0;background:none;border:0;text-align:left;color:inherit;font:500 1.08rem var(--sans)}.faq-question span:last-child{transition:.3s}.faq-item.open .faq-question span:last-child{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.faq-answer>div{overflow:hidden}.faq-answer p{color:var(--muted);padding:0 2.5rem 1.5rem 0}.faq-item.open .faq-answer{grid-template-rows:1fr}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.insight-card{border-top:1px solid var(--line);padding-top:1rem}.insight-card img{aspect-ratio:16/10;object-fit:cover;margin-bottom:1.2rem}.insight-card .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.insight-card h3{margin:.8rem 0;font-size:1.5rem}.insight-card p{color:var(--muted);font-size:.9rem}.page-hero{padding-top:180px}.page-hero-copy{padding-bottom:clamp(4rem,8vw,8rem)}.page-hero h1{max-width:1100px}.page-hero .lead{margin:2rem 0 0 auto}.page-hero-media{height:min(72vh,820px);overflow:hidden}.page-hero-media img{height:100%;object-fit:cover}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.story-grid img{aspect-ratio:4/5;object-fit:cover}.story-copy{align-self:center}.story-copy h2{margin-bottom:2rem}.story-copy p{color:var(--muted)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.value-card{background:var(--paper);padding:3rem 2rem;min-height:320px}.value-card span{color:var(--wood)}.value-card h3{margin:5rem 0 1rem}.value-card p{color:var(--muted)}.service-detail{display:grid;grid-template-columns:100px 1fr 1fr;gap:4vw;padding:6rem 0;border-top:1px solid var(--line);scroll-margin-top:100px}.service-detail>span{color:var(--wood)}.service-detail h2{font-size:clamp(2.3rem,4vw,4.6rem)}.service-body img{aspect-ratio:16/10;object-fit:cover;margin-bottom:2rem}.service-body>p{color:var(--muted);font-size:1.05rem}.service-scope{display:flex;flex-wrap:wrap;gap:.5rem}.service-scope span{border:1px solid var(--line);padding:.55rem .8rem;font-size:.74rem;text-transform:uppercase;letter-spacing:.07em}.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem}.filter-button{border:1px solid var(--line);background:transparent;padding:.7rem 1rem;cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--ink);color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4rem 2rem}.projects-grid .project-card:nth-child(2n){margin-top:8rem}.projects-grid .project-card.hidden{display:none}.case-hero{padding:180px 0 4rem}.case-head{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end}.case-head h1{font-size:clamp(3.5rem,7vw,7.5rem)}.case-summary{color:var(--muted);font-size:1.15rem}.case-meta{display:flex;gap:3rem;margin-top:2rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.case-cover{height:min(75vh,900px);object-fit:cover}.case-story{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.case-story article{background:var(--paper);padding:3rem}.case-story h2{font-size:1.7rem;margin-bottom:1.5rem}.case-story p{color:var(--muted)}.case-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.case-gallery img{height:clamp(320px,50vw,720px);object-fit:cover}.case-gallery img:nth-child(3n){grid-column:1/-1}.before-after{position:relative;overflow:hidden;aspect-ratio:16/9;--position:50%}.before-after img{position:absolute;inset:0;height:100%;object-fit:cover}.before-after .after{clip-path:inset(0 calc(100% - var(--position)) 0 0)}.before-after input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3}.before-after-line{position:absolute;left:var(--position);top:0;bottom:0;width:2px;background:#fff;z-index:2}.before-after-line:after{content:"↔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink)}.article-shell{width:min(820px,calc(100vw - 48px));margin:auto}.article-hero{padding:190px 0 4rem}.article-hero h1{font-size:clamp(3rem,6vw,6rem)}.article-hero .article-meta{display:flex;gap:1rem;margin:1.5rem 0;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.article-cover{width:min(1180px,calc(100vw - 48px));height:min(65vh,720px);object-fit:cover;margin:auto}.prose{padding:5rem 0}.prose h2{font-size:2.3rem;margin:3.5rem 0 1rem}.prose h3{margin:2.5rem 0 1rem}.prose p,.prose li{color:#53544f;font-size:1.08rem}.prose li{margin:.6rem 0}.prose a{text-decoration:underline}.prose blockquote{margin:3rem 0;padding:1.5rem 0 1.5rem 2rem;border-left:2px solid var(--wood);font:400 1.6rem/1.4 var(--serif)}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.contact-details h2{font-size:clamp(2.5rem,4vw,4.6rem);margin-bottom:3rem}.detail-block{padding:1.2rem 0;border-top:1px solid var(--line)}.detail-block small{display:block;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:.5rem}.contact-form{background:#fff;padding:clamp(2rem,5vw,4.5rem)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.field{display:flex;flex-direction:column;gap:.45rem}.field.full{grid-column:1/-1}.field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #bebcb5;background:transparent;padding:.8rem 0;border-radius:0}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--wood);outline-offset:4px}.form-note{font-size:.75rem;color:var(--muted);margin:1.5rem 0}.hp{position:absolute;left:-10000px}.form-status{margin-top:1rem}.area-list{display:flex;flex-wrap:wrap;gap:.7rem}.area-list span{background:var(--paper-2);padding:.7rem 1rem}.site-footer{background:#171815;color:#f4f1ea;padding-top:clamp(5rem,10vw,10rem)}.footer-cta{padding-bottom:clamp(5rem,9vw,9rem);border-bottom:1px solid rgba(255,255,255,.16)}.footer-cta h2{font-size:clamp(3.3rem,7vw,8rem);max-width:1100px}.footer-actions{display:flex;gap:2rem;align-items:center;margin-top:3rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .7fr;gap:4rem;padding:5rem 0}.footer-grid p,.footer-grid address{color:#ffffff8c;font-style:normal}.footer-grid a:not(.brand){display:block;margin:.45rem 0}.footer-label{color:#fff!important;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.brand-light{margin-bottom:1.5rem}.footer-bottom{display:flex;gap:2rem;border-top:1px solid rgba(255,255,255,.16);padding:1.4rem 0;color:#ffffff73;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.footer-bottom a:last-child{margin-left:auto}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--delay,0ms)}[data-reveal].visible{opacity:1;transform:none}.image-reveal{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s var(--ease)}.image-reveal.visible,.visible .image-reveal{clip-path:inset(0)}@media(max-width:900px){:root{--shell:min(100% - 36px,1320px)}.header-inner{grid-template-columns:1fr auto;height:74px}.desktop-nav,.header-call{display:none}.menu-toggle{display:block}.site-header{background:#f4f1eaed;color:var(--ink);border-color:var(--line)}.hero-content{grid-template-columns:1fr;padding:150px 0 50px}.hero-side{max-width:480px}.hero-scroll{display:none}.intro-grid,.story-grid,.contact-grid,.faq-wrap{grid-template-columns:1fr}.intro-copy{padding:0}.featured-grid{gap:1rem}.process-grid{grid-template-columns:1fr 1fr}.process-card:nth-child(2){border-right:0}.process-card{border-bottom:1px solid var(--line)}.service-detail{grid-template-columns:60px 1fr}.service-body{grid-column:2}.case-head,.case-story{grid-template-columns:1fr}.case-story article{padding:2rem}.footer-grid{grid-template-columns:1.3fr 1fr;gap:2.5rem}.mobile-call{display:block;position:fixed;z-index:45;bottom:12px;left:12px;right:12px;background:var(--wood);color:#fff;padding:12px 20px;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;box-shadow:0 12px 40px #00000040}.mobile-call span{opacity:.65;margin-right:.5rem}.site-footer{padding-bottom:70px}.page-hero{padding-top:135px}}@media(max-width:620px){h1{font-size:3.25rem}.section{padding:4.5rem 0}.section-head{display:block}.section-head p{margin-top:1.2rem}.hero h1{font-size:3.55rem}.hero-content{min-height:100svh;align-content:end}.intro-grid{gap:2rem}.intro-stats{grid-template-columns:1fr}.intro-stats div{border-bottom:1px solid var(--line);padding:1rem 0}.featured-grid,.projects-grid,.insight-grid,.services-collage,.values-grid,.case-gallery{grid-template-columns:1fr}.featured-grid .project-card:nth-child(2),.projects-grid .project-card:nth-child(2n){margin-top:2rem}.service-row{grid-template-columns:40px 1fr 30px}.service-row p{display:none}.services-collage img:last-child{max-width:75%;margin-top:-4rem}.process-grid{grid-template-columns:1fr}.process-card,.process-card+.process-card{padding:1.5rem 0;border-right:0;min-height:210px}.service-detail{grid-template-columns:1fr;gap:1rem;padding:4rem 0}.service-body{grid-column:1}.case-meta{gap:1rem;flex-wrap:wrap}.case-gallery img,.case-gallery img:nth-child(3n){grid-column:auto;height:420px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-actions{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-wrap:wrap}.footer-bottom a:last-child{margin-left:0}.page-hero .lead{margin-left:0}}.hero-placeholder{background:linear-gradient(125deg,#6b6d63,#272925)}.hero-placeholder span{position:absolute;left:7vw;top:18vh;font:400 clamp(8rem,25vw,28rem)/1 var(--serif);letter-spacing:-.09em;color:#ffffff0e}.hero-placeholder i{position:absolute;width:45vw;height:45vw;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-8vw;top:8vh}.hero-placeholder b{position:absolute;right:5vw;bottom:4rem;text-transform:uppercase;letter-spacing:.18em;font-size:.62rem;color:#ffffff80}.media-slot{display:flex;align-items:flex-end;justify-content:flex-start;padding:1.5rem;background:linear-gradient(135deg,#ded8cf,#aaa99f);color:#1718158c;text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;overflow:hidden}.media-slot.portrait{aspect-ratio:4/5}.media-slot.panoramic{aspect-ratio:16/7}.media-slot.service{aspect-ratio:16/10;margin-bottom:2rem}.media-slot.case-cover{height:min(75vh,900px)}.media-composition{margin-top:5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:end}.media-composition .large{aspect-ratio:16/10}.media-composition .portrait{max-width:390px;justify-self:end}.article-placeholder{aspect-ratio:16/10;display:flex;align-items:end;padding:1.2rem;margin-bottom:1.2rem;background:linear-gradient(145deg,#d8d1c5,#b3b1a8);font:400 1.3rem/1.2 var(--serif)}.service-jump{display:flex;gap:.5rem;flex-wrap:wrap;padding-bottom:2rem}.service-jump a{padding:.6rem .8rem;border:1px solid var(--line);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.image-placeholder{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem;background:linear-gradient(135deg,#ddd6cb,#aaa99f);color:#171815b8}.image-placeholder small{text-transform:uppercase;letter-spacing:.12em;font-size:.65rem}.image-placeholder b{font:400 clamp(1.5rem,3vw,3.5rem)/1 var(--serif);max-width:80%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.areas-track{animation:none}[data-reveal]{opacity:1;transform:none}.image-reveal{clip-path:none}}.header-inner{position:relative;z-index:2}.menu-open .header-inner{color:#fff}.menu-toggle span{transition:transform .3s ease}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.brand img{width:170px;height:auto}.site-header.scrolled .brand img{filter:brightness(0)}.brand-light img{filter:none}@media(max-width:900px){.site-header .brand img{filter:brightness(0);width:150px}.menu-open .site-header{height:100dvh;background:#171815;border-color:transparent;backdrop-filter:none}.menu-open .site-header .brand img{filter:brightness(0) invert(1)}.menu-open .mobile-menu{position:absolute;inset:0;z-index:1;width:100%;height:100dvh;overflow-y:auto;background:#171815}.menu-open .mobile-call{visibility:hidden}}.image-motion{position:relative;overflow:hidden;background:#d7d1c7}.image-motion img{height:112%;object-fit:cover;transform:translate3d(0,var(--parallax-y,0),0) scale(1.02);transition:transform 1s var(--ease)}.image-motion:hover img{transform:translate3d(0,var(--parallax-y,0),0) scale(1.055)}.project-reel{padding:clamp(4.5rem,8vw,8rem) 0;background:var(--ink);color:#fff;overflow:hidden}.reel-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:2.5rem}.reel-head p:last-child{color:#fff9;max-width:380px}.visual-reel{display:flex;gap:clamp(1rem,2vw,2rem);overflow-x:auto;scroll-snap-type:x mandatory;padding:0 max(32px,calc((100vw - 1320px)/2)) 2rem;scrollbar-width:none;cursor:grab}.visual-reel::-webkit-scrollbar,.service-gallery::-webkit-scrollbar{display:none}.visual-reel:active{cursor:grabbing}.reel-card{flex:0 0 min(37vw,520px);margin:0;scroll-snap-align:start}.reel-card-tall{flex-basis:min(29vw,410px)}.reel-card .image-motion{aspect-ratio:4/3}.reel-card-tall .image-motion{aspect-ratio:4/5}.reel-card figcaption{display:flex;gap:1rem;padding-top:1rem;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}.reel-card figcaption span{color:#b88a65}.build-story{background:#5f665c;color:#fff}.build-story-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;align-items:center}.build-copy h2{font-size:clamp(3rem,5vw,5.8rem);margin-bottom:1.5rem}.build-copy>p:not(.eyebrow){color:#ffffffb8;max-width:520px;margin-bottom:2rem}.build-images{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:1.25rem}.build-main{aspect-ratio:4/5}.build-detail{aspect-ratio:4/5;margin-bottom:-5rem}.transformation .before-after{box-shadow:0 30px 80px #17181524}.before-after-label{position:absolute;top:1rem;z-index:4;background:#171815bf;color:#fff;padding:.45rem .7rem;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.label-before{left:1rem}.label-after{right:1rem}.about-mosaic{display:grid;grid-template-columns:1.3fr .7fr;grid-template-rows:1fr .7fr;gap:1rem}.about-wide{grid-row:1/-1;aspect-ratio:4/5}.about-tall,.about-small{aspect-ratio:4/5}.about-small{aspect-ratio:1/1}.services-page{padding-top:3rem}.service-detail{grid-template-columns:70px .72fr 1.28fr;gap:3vw}.service-heading>p:not(.kicker){color:var(--muted);max-width:500px;margin:1.5rem 0}.service-heading .service-scope{margin:1.75rem 0}.service-gallery{display:grid;grid-template-columns:1.3fr .7fr;grid-template-rows:1fr 1fr;gap:.75rem;min-width:0}.service-gallery .image-motion{aspect-ratio:4/3}.service-gallery-main{grid-row:1/-1}.service-gallery-main.image-motion{aspect-ratio:auto;min-height:560px}.contact-visual{min-height:min(78vh,780px);position:relative;display:flex;align-items:end;color:#fff;overflow:hidden}.contact-visual>.image-motion{position:absolute;inset:0}.contact-visual>.image-motion:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a0b09b8,#0a0b091f)}.contact-visual-copy{position:relative;padding-bottom:clamp(3rem,7vw,6rem)}.contact-visual h2{max-width:800px;margin-bottom:2rem}@media(max-width:900px){.build-story-grid{grid-template-columns:1fr;gap:3rem}.build-copy{max-width:650px}.service-detail{grid-template-columns:48px 1fr}.service-gallery{grid-column:2}.reel-card{flex-basis:min(64vw,480px)}.reel-card-tall{flex-basis:min(50vw,380px)}}@media(max-width:620px){:root{--shell: calc(100% - 32px) }.section{padding:3.75rem 0}.section-head{margin-bottom:2rem}.section-head h2{font-size:clamp(2.45rem,12vw,3.4rem)}.page-hero{padding-top:112px}.page-hero-copy{padding-bottom:3.25rem}.page-hero h1{font-size:clamp(3rem,15vw,4.25rem)}.page-hero-media{height:48svh}.hero-content{padding:118px 0 78px}.hero h1{font-size:clamp(3.25rem,16vw,4.55rem)}.hero-side p{font-size:.98rem}.reel-head{display:block;margin-bottom:1.5rem}.reel-head p:last-child{margin-top:1rem}.visual-reel{padding-left:16px;padding-right:16px;gap:.8rem}.reel-card,.reel-card-tall{flex-basis:82vw}.reel-card .image-motion,.reel-card-tall .image-motion{aspect-ratio:4/5}.build-images{gap:.65rem}.build-detail{margin-bottom:-2rem}.transformation .before-after{aspect-ratio:4/5}.before-after img{object-position:center}.about-mosaic{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem;margin-right:-16px;padding-right:16px}.about-mosaic .image-motion{flex:0 0 82vw;aspect-ratio:4/5;scroll-snap-align:start}.service-jump{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px 1.5rem;scrollbar-width:none}.service-jump a{white-space:nowrap}.service-detail{grid-template-columns:1fr;padding:3.5rem 0;gap:1.25rem}.service-detail>span{font-size:.72rem}.service-heading h2{font-size:2.65rem}.service-gallery{grid-column:1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.7rem;margin-right:-16px;padding-right:16px;scrollbar-width:none}.service-gallery .image-motion,.service-gallery-main.image-motion{flex:0 0 82vw;min-height:0;aspect-ratio:4/5;scroll-snap-align:start}.contact-form{padding:1.5rem}.contact-visual{min-height:70svh}.contact-visual h2{font-size:3rem}.process-card,.process-card+.process-card{min-height:170px}.story-grid{gap:2.5rem}.story-grid img{aspect-ratio:4/4.5}.values-grid{gap:1px}.value-card{min-height:250px;padding:2rem 1.4rem}.value-card h3{margin-top:3rem}}@media(prefers-reduced-motion:reduce){.image-motion img{height:100%;transform:none!important}}.transformation{scroll-margin-top:80px}.transformation .before-after{touch-action:pan-y}.transformation .before-after .after{clip-path:inset(0 0 0 var(--position))}.before-after-label{pointer-events:none}.page-hero.has-image .page-hero-copy{padding-bottom:clamp(3rem,5vw,5.5rem)}.page-hero-media img{animation:pageHeroIn 1s var(--ease) both}@keyframes pageHeroIn{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.service-jump{padding-top:clamp(2rem,3vw,3rem)}@media(max-width:620px){.service-jump{padding-top:1.5rem}}.project-browser{padding-top:2rem}.project-tabs{position:sticky;top:92px;z-index:8;padding:1rem 0;background:#f4f1eaf0;backdrop-filter:blur(14px)}.project-panel[hidden]{display:none}.project-panel-head{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;padding:clamp(3rem,6vw,6rem) 0 3rem}.project-panel-head h2{font-size:clamp(3rem,5.5vw,6rem)}.project-panel-head .lead{margin:0}.portfolio-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.portfolio-image{margin:0;overflow:hidden;background:var(--paper-2);aspect-ratio:4/3}.portfolio-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.portfolio-image:hover img{transform:scale(1.025)}.portfolio-image-lead{grid-column:1/-1;aspect-ratio:16/8}.portfolio-image:nth-child(4){grid-column:1/-1;aspect-ratio:16/8}@media(max-width:900px){.project-tabs{top:74px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.project-tabs .filter-button{white-space:nowrap}.project-panel-head{grid-template-columns:1fr;gap:1.5rem}}@media(max-width:620px){.project-browser{padding-top:0}.project-tabs{margin:0 -16px;padding:1rem 16px}.project-panel-head{padding:3rem 0 2rem}.project-panel-head h2{font-size:2.8rem}.portfolio-gallery{grid-template-columns:1fr;gap:.75rem}.portfolio-image,.portfolio-image-lead,.portfolio-image:nth-child(4){grid-column:auto;aspect-ratio:4/5}}
