@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--ink:#0d0e0c;--paper:#f5f5f0;--white:#fff;--acid:#b8ed52;--field:#577c34;--line:rgba(13,14,12,.18);--muted:#5c5e57;--frame:min(1360px,calc(100% - 64px));--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea{font:inherit}.site-shell{overflow:hidden}.section-frame{width:var(--frame);margin:0 auto}.section-pad{padding:clamp(95px,11vw,180px) 0}.skip-link{position:fixed;left:12px;top:-60px;z-index:1000;background:var(--acid);color:var(--ink);padding:10px 14px;font-weight:700;transition:top .2s}.skip-link:focus{top:12px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 20px;color:var(--muted);font:500 10px/1.25 'DM Mono',monospace;letter-spacing:.11em;text-transform:uppercase}.eyebrow-on-dark{color:rgba(255,255,255,.68)}.live-dot,.label-dot{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 5px rgba(184,237,82,.14)}h1,h2,h3,p{margin-top:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:13px 19px;border:1px solid transparent;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.02em;transition:transform .35s var(--ease),background .35s var(--ease),color .35s var(--ease);cursor:pointer}.button:hover{transform:translateY(-3px)}.button span{font-size:17px;line-height:1}.button-accent{background:var(--acid);color:var(--ink)}.button-light{background:var(--white);color:var(--ink)}.button-small{min-height:43px;padding:10px 14px;font-size:11px}.text-link{display:inline-flex;align-items:center;gap:9px;padding-bottom:6px;border-bottom:1px solid currentColor;text-decoration:none;font-size:12px;font-weight:800;transition:color .25s var(--ease),gap .25s var(--ease)}.text-link:hover{color:var(--field);gap:13px}.text-link-light{color:var(--white)}.text-link-light:hover{color:var(--acid)}

/* Header */
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;color:var(--white);border-bottom:1px solid rgba(255,255,255,.14);transition:background .35s var(--ease),color .35s var(--ease),border .35s var(--ease)}.site-header.scrolled{position:fixed;background:rgba(13,14,12,.94);backdrop-filter:blur(18px)}.nav-wrap{width:var(--frame);height:84px;margin:0 auto;display:flex;align-items:center;gap:42px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit;line-height:1}.brand-lockup{display:grid;gap:4px}.brand-lockup b{font-size:17px;font-weight:800;letter-spacing:.12em}.brand-lockup i{font-style:normal;font-size:7px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.brand-dot{width:8px;height:8px;border-radius:50%;background:var(--acid)}.site-nav{display:flex;gap:27px;margin-left:auto}.site-nav a{position:relative;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.03em}.site-nav a:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--acid);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.site-nav a:hover:after{transform:scaleX(1)}.nav-actions{display:flex;align-items:center;gap:21px}.nav-phone{font:700 11px 'DM Mono',monospace;text-decoration:none}.menu-toggle{display:none;color:inherit;background:none;border:0;align-items:center;gap:10px;font-size:11px;font-weight:800;cursor:pointer}.menu-toggle i,.menu-toggle i:before{display:block;width:18px;height:1px;background:currentColor;content:''}.menu-toggle i:before{transform:translateY(6px)}

/* Hero */
.hero{position:relative;isolation:isolate;min-height:780px;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:var(--ink);color:var(--white)}.hero:after{position:absolute;z-index:-1;inset:0;content:'';background:radial-gradient(circle at 77% 50%,rgba(184,237,82,.15),transparent 17%),radial-gradient(circle at 58% 85%,rgba(87,124,52,.33),transparent 28%);pointer-events:none}.hero-grid{position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:76px 76px;mask-image:linear-gradient(90deg,black 0%,transparent 77%)}.hero-inner{position:relative;width:var(--frame);margin:86px auto 55px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,8vw,150px)}.hero-copy{padding-top:35px}.hero h1{max-width:810px;margin:0;font-size:clamp(57px,8.4vw,133px);font-weight:700;line-height:.89;letter-spacing:-.085em}.hero h1 em{font-style:normal;color:var(--acid)}.hero-lede{max-width:435px;margin:34px 0 34px;color:rgba(255,255,255,.73);font-size:clamp(15px,1.3vw,18px);line-height:1.65}.hero-actions{display:flex;align-items:center;gap:27px}.hero-contours{position:absolute;z-index:-1;right:-18vw;top:1vh;width:76vw;height:97vh;opacity:.66;transform:rotate(-17deg);pointer-events:none}.contour{position:absolute;border:1px solid rgba(184,237,82,.38);border-radius:47% 53% 48% 52%/53% 43% 57% 47%;transform-origin:center}.contour-a{inset:4% 5%}.contour-b{inset:13% 13%;border-color:rgba(255,255,255,.24)}.contour-c{inset:26% 23%}.contour-d{inset:37% 34%;border-color:rgba(255,255,255,.21)}.hero-orbit{position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.14);border-radius:50%;pointer-events:none}.orbit-a{width:38vw;height:38vw;left:-25vw;bottom:-17vw}.orbit-b{width:12vw;height:12vw;left:39%;top:18%}.hero-logo-stage{position:relative;justify-self:end;width:min(100%,495px);aspect-ratio:.92;color:var(--ink);background:var(--acid);display:grid;place-items:center;transform:rotate(2.5deg);box-shadow:18px 19px 0 rgba(255,255,255,.12);transition:transform .6s var(--ease)}.hero-logo-stage:hover{transform:rotate(0)}.logo-tile{width:61%;aspect-ratio:1;display:grid;place-items:center;background:var(--white);box-shadow:10px 10px 0 var(--ink)}.logo-tile img{width:100%;height:100%;object-fit:contain}.stage-index{position:absolute;top:17px;left:19px;font:500 10px 'DM Mono',monospace;letter-spacing:.08em}.stage-caption{position:absolute;right:19px;bottom:17px;margin:0;text-align:right;font-size:12px;font-weight:800;line-height:1.35}.stage-mark{position:absolute;left:19px;bottom:15px;font:700 28px/.9 Manrope,sans-serif;letter-spacing:-.09em}.stage-corner{position:absolute;width:28px;height:28px;border-color:var(--ink);border-style:solid}.stage-corner-tl{top:43px;left:19px;border-width:1px 0 0 1px}.stage-corner-br{right:19px;bottom:51px;border-width:0 1px 1px 0}.scroll-prompt{position:absolute;z-index:2;bottom:20px;left:calc((100% - min(1360px,calc(100% - 64px)))/2);display:flex;align-items:center;gap:11px;color:rgba(255,255,255,.7);font:500 9px 'DM Mono',monospace;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.scroll-prompt i{display:block;position:relative;width:38px;height:1px;background:var(--acid)}.scroll-prompt i:after{content:'';position:absolute;right:0;top:-3px;width:7px;height:7px;border-right:1px solid var(--acid);border-bottom:1px solid var(--acid);transform:rotate(45deg)}

/* Content flow */
.signal-strip{overflow:hidden;background:var(--acid);color:var(--ink);height:48px;display:flex;align-items:center}.signal-track{display:flex;align-items:center;gap:23px;min-width:max-content;animation:marquee 24s linear infinite;font:800 11px 'DM Mono',monospace;letter-spacing:.07em;text-transform:uppercase}.signal-track i{font-style:normal;font-size:15px}@keyframes marquee{to{transform:translateX(-35%)}}.fieldwork{background:var(--paper)}.section-intro{display:grid;grid-template-columns:.82fr 1.18fr;gap:45px;margin-bottom:85px}.section-intro h2,.service-lab h2,.method h2,.about h2,.areas h2,.contact h2{margin:0;font-size:clamp(38px,5vw,76px);font-weight:700;line-height:.97;letter-spacing:-.075em}.fieldwork-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:19px}.feature-card{position:relative;min-height:575px;overflow:hidden}.feature-card-main{padding:25px;background:var(--ink);color:var(--white);display:flex;flex-direction:column;justify-content:space-between}.feature-card-top{display:flex;justify-content:space-between;color:rgba(255,255,255,.61);font:500 10px 'DM Mono',monospace;letter-spacing:.08em}.terrain-art{position:absolute;inset:5% -14% 12% 35%;overflow:hidden;transform:rotate(21deg);opacity:.96}.terrain-art i{position:absolute;display:block;border:1px solid rgba(184,237,82,.62);border-radius:44% 56% 55% 45%/51% 46% 54% 49%}.terrain-art i:nth-child(1){inset:0}.terrain-art i:nth-child(2){inset:12%}.terrain-art i:nth-child(3){inset:25%;border-color:rgba(255,255,255,.35)}.terrain-art b{position:absolute;width:56%;aspect-ratio:1;top:21%;left:21%;border-radius:50%;background:var(--acid);box-shadow:0 0 0 30px rgba(184,237,82,.1)}.feature-card-copy{position:relative;z-index:1;max-width:470px}.feature-card-copy h3{margin:0 0 19px;font-size:clamp(31px,3.3vw,49px);font-weight:700;line-height:.97;letter-spacing:-.065em}.feature-card-copy p:not(.eyebrow){max-width:385px;margin:0;color:rgba(255,255,255,.68);font-size:14px;line-height:1.65}.feature-card-side{padding:31px;background:var(--field);color:var(--white);display:flex;flex-direction:column;justify-content:space-between}.field-label{display:flex;align-items:center;gap:10px;font:500 10px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.label-dot{background:var(--acid);box-shadow:none}.type-block{display:flex;flex-direction:column;line-height:.76;letter-spacing:-.11em}.type-block span{font-size:clamp(68px,10vw,144px);font-weight:800}.type-block b{font-size:clamp(68px,10vw,144px);font-weight:800;color:var(--acid)}.type-block i{padding:15px 0 0 13px;color:rgba(255,255,255,.82);font:500 11px 'DM Mono',monospace;letter-spacing:.14em;text-transform:uppercase}.feature-card-side>p{max-width:300px;margin:0;color:rgba(255,255,255,.75);font-size:14px;line-height:1.6}.feature-card-side .text-link{align-self:flex-start;color:var(--white)}.corner-measure{position:absolute;right:29px;bottom:25px;display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.55);font:500 9px 'DM Mono',monospace}.corner-measure i{width:29px;height:1px;background:rgba(255,255,255,.55)}

.service-lab{padding:clamp(95px,10vw,160px) 0;background:var(--ink);color:var(--white)}.service-lab-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:82px}.service-lab-head>p{max-width:350px;margin:0;color:rgba(255,255,255,.62);font-size:15px;line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.26)}.service-card{position:relative;min-height:305px;padding:23px 28px 20px 0;margin-right:27px;border-right:1px solid rgba(255,255,255,.26);display:flex;flex-direction:column}.service-card:last-child{border-right:0}.service-number{color:var(--acid);font:500 10px 'DM Mono',monospace}.service-card h3{max-width:230px;margin:55px 0 13px;font-size:clamp(22px,2vw,31px);font-weight:700;line-height:1;letter-spacing:-.055em}.service-card p{max-width:235px;margin:0;color:rgba(255,255,255,.66);font-size:13px;line-height:1.62}.service-arrow{position:absolute;right:25px;bottom:22px;color:var(--acid);font-size:24px}.method{background:var(--white)}.method-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,10vw,170px)}.method-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.method-list li{display:grid;grid-template-columns:53px 1fr;gap:19px;padding:25px 0 30px;border-bottom:1px solid var(--line)}.method-list li>span{font:500 10px 'DM Mono',monospace;color:var(--field)}.method-list h3{margin:0 0 10px;font-size:20px;line-height:1.12;letter-spacing:-.045em}.method-list p{max-width:415px;margin:0;color:var(--muted);font-size:13px;line-height:1.6}.manifesto{position:relative;min-height:670px;padding:65px clamp(32px,7vw,130px);display:flex;align-items:flex-end;overflow:hidden;background:var(--acid);color:var(--ink)}.manifesto-graphic{position:absolute;inset:0;overflow:hidden}.manifesto-graphic span{position:absolute;display:block;width:80vw;height:80vw;border:1px solid rgba(13,14,12,.42);border-radius:49% 51% 44% 56%/52% 49% 51% 48%;transform:rotate(-17deg)}.manifesto-graphic span:nth-child(1){right:-38vw;top:-37vw}.manifesto-graphic span:nth-child(2){right:-31vw;top:-29vw}.manifesto-graphic span:nth-child(3){right:-23vw;top:-21vw}.manifesto-copy{position:relative;max-width:1000px}.manifesto-copy .eyebrow{color:rgba(13,14,12,.67)}.manifesto-line{margin:0 0 36px;font-size:clamp(50px,7vw,105px);font-weight:700;line-height:.92;letter-spacing:-.085em}.manifesto-line em{font-style:normal;color:var(--white);text-shadow:3px 3px 0 var(--ink)}

.about{background:var(--paper)}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,10vw,175px);align-items:center}.about-image{position:relative;min-height:470px;display:grid;place-items:center;background:var(--ink);overflow:hidden}.about-image:before,.about-image:after{position:absolute;content:'';border-radius:50%;border:1px solid rgba(184,237,82,.55)}.about-image:before{width:670px;height:670px;right:-360px;top:-270px}.about-image:after{width:440px;height:440px;left:-280px;bottom:-280px}.about-image-line{position:absolute;top:30px;right:30px;bottom:30px;left:30px;border:1px solid rgba(255,255,255,.27)}.about-image img{position:relative;z-index:1;width:min(270px,64%);background:var(--white);box-shadow:14px 14px 0 var(--acid)}.about-image>span{position:absolute;z-index:1;left:32px;bottom:29px;color:var(--white);font:500 10px/1.45 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.about-copy{max-width:610px}.about-copy>p:not(.eyebrow){margin:27px 0 29px;color:var(--muted);font-size:15px;line-height:1.7}.areas{padding:clamp(80px,10vw,140px) 0;background:var(--field);color:var(--white)}.areas .eyebrow{color:rgba(255,255,255,.65)}.areas-heading{display:flex;justify-content:space-between;align-items:end;gap:35px}.areas-heading h2{font-size:clamp(47px,6.4vw,94px)}.areas-heading p{max-width:295px;margin:0;color:rgba(255,255,255,.7);font-size:14px;line-height:1.6}.area-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:63px}.area-chips span{padding:13px 18px;border:1px solid rgba(255,255,255,.42);border-radius:100px;font-size:13px;font-weight:700}.contact{background:var(--white)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(55px,10vw,160px)}.contact-copy>p:not(.eyebrow){max-width:440px;margin:29px 0 34px;color:var(--muted);font-size:15px;line-height:1.7}.contact-direct{display:grid;gap:8px}.contact-direct a{font-size:clamp(16px,1.65vw,22px);font-weight:700;letter-spacing:-.04em;text-decoration:none}.contact-form{display:grid;gap:23px}.contact-form label{display:grid;gap:10px;font:700 10px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:none;background:transparent;padding:0 0 12px;color:var(--ink);font:500 15px Manrope,sans-serif;letter-spacing:0;text-transform:none;transition:border .25s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--field)}.contact-form textarea{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:27px}.form-submit{display:flex;align-items:center;gap:18px;margin-top:5px}.form-submit p{max-width:220px;margin:0;color:var(--muted);font-size:10px;line-height:1.5}

.site-footer{padding:63px 0 35px;background:var(--ink);color:var(--white)}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:58px;border-bottom:1px solid rgba(255,255,255,.25)}.footer-brand{display:grid;gap:7px;color:var(--white);text-decoration:none}.footer-brand b{font-size:clamp(39px,5vw,68px);line-height:.8;letter-spacing:-.1em}.footer-brand span{font-size:9px;font-weight:700;letter-spacing:.25em}.footer-top-link{padding-bottom:6px;border-bottom:1px solid var(--acid);color:var(--acid);text-decoration:none;font-size:11px;font-weight:800}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px;padding-top:40px}.footer-statement{margin:0;font-size:15px;font-weight:700}.footer-links,.footer-meta{display:grid;align-content:start;gap:8px}.footer-links a,.footer-meta span{color:rgba(255,255,255,.75);font-size:12px;text-decoration:none}.footer-links a:hover{color:var(--acid)}.footer-meta{justify-items:end;text-align:right}.footer-meta span{font:500 10px 'DM Mono',monospace;letter-spacing:.05em}

/* Motion */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in-view{opacity:1;transform:none}.service-card.reveal:nth-child(2){transition-delay:.08s}.service-card.reveal:nth-child(3){transition-delay:.16s}.service-card.reveal:nth-child(4){transition-delay:.24s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.signal-track{animation:none}.button{transition:none}}

@media(max-width:900px){:root{--frame:min(100% - 40px,1360px)}.nav-wrap{height:72px;gap:18px}.site-nav{position:absolute;top:72px;left:0;width:100%;display:none;padding:24px 20px 28px;background:var(--ink);border-top:1px solid rgba(255,255,255,.15);flex-direction:column;gap:19px}.site-nav.open{display:flex}.nav-phone,.nav-actions>.button{display:none}.menu-toggle{display:flex;margin-left:auto}.hero{min-height:760px}.hero-inner{margin-top:72px;grid-template-columns:1fr;gap:35px;align-items:end}.hero-copy{padding-top:62px}.hero-logo-stage{width:min(365px,74vw);justify-self:end;margin-right:5vw}.scroll-prompt{left:20px}.section-intro,.method-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:46px}.section-intro{margin-bottom:53px}.fieldwork-grid{grid-template-columns:1fr}.feature-card{min-height:500px}.feature-card-side{min-height:410px}.service-lab-head{display:block;margin-bottom:54px}.service-lab-head>p{margin-top:22px}.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:255px;padding-right:18px;margin-right:18px;border-bottom:1px solid rgba(255,255,255,.26)}.service-card:nth-child(2){border-right:0}.service-card h3{margin-top:37px}.manifesto{min-height:540px}.about-image{min-height:370px}.areas-heading{display:block}.areas-heading p{margin-top:24px}.area-chips{margin-top:39px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-meta{justify-items:start;text-align:left}.contact-copy{max-width:600px}}
@media(max-width:560px){:root{--frame:min(100% - 32px,1360px)}.brand-lockup b{font-size:15px}.site-header{border-color:rgba(255,255,255,.18)}.hero{min-height:735px}.hero-grid{background-size:46px 46px}.hero-inner{margin:61px auto 40px}.hero-copy{padding-top:38px}.hero h1{font-size:clamp(50px,16vw,76px)}.hero-lede{margin:25px 0 27px;font-size:14px}.hero-actions{gap:17px;flex-wrap:wrap}.hero-logo-stage{width:min(302px,80vw);box-shadow:11px 12px 0 rgba(255,255,255,.12)}.stage-caption{font-size:9px}.stage-mark{font-size:21px}.stage-corner-tl{top:38px}.stage-corner-br{bottom:45px}.scroll-prompt{bottom:15px}.signal-strip{height:43px}.section-pad{padding:88px 0}.section-intro h2,.service-lab h2,.method h2,.about h2,.areas h2,.contact h2{font-size:clamp(39px,12vw,58px)}.feature-card-main{min-height:520px}.feature-card-side{min-height:365px;padding:23px}.type-block span,.type-block b{font-size:84px}.service-grid{grid-template-columns:1fr}.service-card{min-height:198px;margin:0;padding:21px 0;border-right:0}.service-card h3{margin:27px 0 8px;font-size:25px}.service-card p{max-width:300px}.method-list li{grid-template-columns:43px 1fr;gap:10px}.manifesto{min-height:470px;padding:42px 16px}.manifesto-line{font-size:clamp(45px,14vw,67px)}.about-image{min-height:325px}.about-image img{box-shadow:10px 10px 0 var(--acid)}.contact-form{gap:20px}.form-row{grid-template-columns:1fr;gap:20px}.form-submit{align-items:flex-start;flex-direction:column}.footer-top{padding-bottom:41px}.footer-brand b{font-size:49px}.footer-grid{grid-template-columns:1fr;gap:29px}.footer-grid>div:first-child{grid-column:auto}.footer-meta{gap:5px}.feature-card-copy h3{font-size:37px}}

/* Project photography */
.hero-photo{background:#263b18}.hero-photo:after{display:none}.hero-photo-backdrop,.hero-photo-wash{position:absolute;inset:0;z-index:-2}.hero-photo-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center 58%;filter:none}.hero-photo-wash{display:none}.hero-photo .hero-inner{grid-template-columns:1.22fr .78fr;gap:clamp(28px,8vw,140px)}.hero-photo .hero-copy{padding-top:50px}.hero-photo .hero-lede{max-width:475px}.hero-proof{position:relative;justify-self:end;width:min(100%,400px);padding:11px;background:var(--white);color:var(--ink);box-shadow:13px 15px 0 rgba(8,16,8,.42);transform:rotate(2deg)}.hero-proof-image{aspect-ratio:1.15;overflow:hidden;background:#d6d5ca}.hero-proof-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.hero-proof:hover .hero-proof-image img{transform:scale(1.04)}.hero-proof-copy{display:grid;grid-template-columns:1fr auto;gap:6px 15px;align-items:end;padding:14px 7px 5px}.hero-proof-copy span{grid-column:1/-1;color:var(--muted);font:500 8px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.hero-proof-copy b{font-size:18px;line-height:1.03;letter-spacing:-.06em}.hero-proof-copy a{display:grid;place-items:center;width:38px;height:38px;background:var(--acid);color:var(--ink);font-size:19px;text-decoration:none}.section-intro-copy{max-width:470px;margin:26px 0 0;color:var(--muted);font-size:15px;line-height:1.65}.project-mosaic{display:grid;grid-template-columns:1.45fr 1fr .92fr;grid-template-rows:265px 265px;gap:16px}.project-tile{position:relative;display:block;min-height:0;overflow:hidden;background:#d8d7ce;color:var(--white);isolation:isolate;text-decoration:none}.project-tile:after{position:absolute;z-index:1;inset:0;content:'';background:linear-gradient(0deg,rgba(8,15,8,.75),transparent 53%);transition:opacity .35s var(--ease)}.project-tile img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease),filter .75s var(--ease)}.project-tile:hover img{transform:scale(1.06);filter:saturate(1.12)}.project-tile span{position:absolute;z-index:2;right:18px;bottom:16px;left:18px;display:flex;align-items:end;justify-content:space-between;gap:15px}.project-tile b{font-size:clamp(16px,1.8vw,23px);line-height:1;letter-spacing:-.055em}.project-tile i{font:500 9px 'DM Mono',monospace;letter-spacing:.08em;font-style:normal}.tile-large{grid-row:1/3}.tile-tall{grid-row:1/3}.tile-small{grid-column:3}.tile-wide{grid-column:1/2}.tile-accent{grid-column:2/4}.work-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:26px;padding-top:25px;border-top:1px solid var(--line)}.work-cta p{max-width:380px;margin:0;color:var(--muted);font-size:14px;line-height:1.6}.manifesto-photo{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.05)}.manifesto-photo+.manifesto-graphic{z-index:1}.manifesto-photo+.manifesto-graphic span{border-color:rgba(255,255,255,.34)}.manifesto-photo~.manifesto-copy{z-index:2;color:var(--white)}.manifesto-photo~.manifesto-copy .eyebrow{color:rgba(255,255,255,.72)}.manifesto-photo~.manifesto-copy .manifesto-line em{color:var(--acid);text-shadow:3px 3px 0 rgba(13,14,12,.78)}.about-photo{background:#d4d5ca}.about-photo:before,.about-photo:after{display:none}.about-photo img{width:100%;height:100%;object-fit:cover;background:transparent;box-shadow:none}.about-photo .about-image-line{z-index:1;border-color:rgba(255,255,255,.58)}.about-photo>span{z-index:2;text-shadow:0 1px 12px rgba(0,0,0,.75)}

/* Gallery page */
.gallery-main{padding-top:84px;background:var(--paper)}.gallery-hero{position:relative;min-height:410px;padding:clamp(105px,13vw,190px) 0 70px;overflow:hidden;background:var(--ink);color:var(--white)}.gallery-hero:before{position:absolute;inset:0;content:'';background:linear-gradient(90deg,rgba(8,14,8,.92),rgba(8,14,8,.55)),url('/assets/projects/mature-tree-lawn.jpg') center/cover;opacity:.92}.gallery-hero .section-frame{position:relative}.gallery-hero h1{max-width:920px;margin:0;font-size:clamp(57px,9.3vw,145px);font-weight:700;line-height:.87;letter-spacing:-.09em}.gallery-hero h1 em{font-style:normal;color:var(--acid)}.gallery-hero p:not(.eyebrow){max-width:470px;margin:26px 0 0;color:rgba(255,255,255,.74);font-size:16px;line-height:1.6}.gallery-intro{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:47px}.gallery-intro h2{max-width:720px;margin:0;font-size:clamp(37px,5vw,69px);line-height:.96;letter-spacing:-.075em}.gallery-count{padding:12px 16px;background:var(--acid);font:700 11px 'DM Mono',monospace;white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(86px,10vw,145px);gap:16px}.gallery-item{position:relative;display:block;grid-column:span 4;grid-row:span 3;overflow:hidden;background:#d7d6cb;text-decoration:none}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease),filter .65s var(--ease)}.gallery-item:after{position:absolute;inset:0;content:'';background:linear-gradient(0deg,rgba(5,12,5,.67),transparent 52%);opacity:.8;transition:opacity .35s}.gallery-item:hover img{transform:scale(1.055);filter:saturate(1.1)}.gallery-item:hover:after{opacity:1}.gallery-item span{position:absolute;z-index:1;right:17px;bottom:15px;left:17px;display:flex;justify-content:space-between;align-items:end;color:var(--white)}.gallery-item b{max-width:80%;font-size:17px;line-height:1.03;letter-spacing:-.045em}.gallery-item i{font:500 9px 'DM Mono',monospace;font-style:normal;letter-spacing:.06em}.gallery-item:nth-child(1){grid-column:span 7;grid-row:span 4}.gallery-item:nth-child(2){grid-column:span 5;grid-row:span 4}.gallery-item:nth-child(6){grid-column:span 5}.gallery-item:nth-child(9){grid-column:span 5;grid-row:span 4}.gallery-item:nth-child(12){grid-column:span 7}.gallery-item:nth-child(15){grid-column:span 5}.gallery-item:nth-child(18){grid-column:span 7;grid-row:span 4}.gallery-cta{margin-top:clamp(65px,9vw,120px);padding:clamp(38px,6vw,76px);background:var(--field);color:var(--white);display:flex;align-items:end;justify-content:space-between;gap:35px}.gallery-cta h2{max-width:780px;margin:0;font-size:clamp(38px,5vw,75px);line-height:.95;letter-spacing:-.075em}.gallery-cta .button{flex:none}

@media(max-width:900px){.hero-photo .hero-inner{grid-template-columns:1fr;gap:38px}.hero-proof{width:min(360px,70vw);margin:0 7vw 0 0}.project-mosaic{grid-template-columns:1.2fr 1fr;grid-template-rows:300px 220px 220px}.tile-large{grid-row:1/3}.tile-tall{grid-row:1}.tile-small{grid-column:2;grid-row:2}.tile-wide{grid-column:1;grid-row:3}.tile-accent{grid-column:2;grid-row:3}.gallery-grid{grid-auto-rows:118px}.gallery-item{grid-column:span 6;grid-row:span 3}.gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(6),.gallery-item:nth-child(9),.gallery-item:nth-child(12),.gallery-item:nth-child(15),.gallery-item:nth-child(18){grid-column:span 6;grid-row:span 3}.gallery-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.hero-photo{min-height:780px}.hero-photo .hero-inner{margin-top:65px;gap:27px}.hero-photo .hero-copy{padding-top:38px}.hero-photo-backdrop img{object-position:62% 50%}.hero-photo-wash{background:linear-gradient(90deg,rgba(7,15,8,.85),rgba(8,20,10,.34)),linear-gradient(0deg,rgba(5,10,5,.7),transparent 45%)}.hero-proof{width:min(285px,78vw);padding:8px;margin-right:0}.hero-proof-copy{padding:10px 3px 2px}.hero-proof-copy b{font-size:15px}.hero-proof-copy a{width:32px;height:32px}.section-intro-copy{font-size:14px}.project-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:270px 165px 165px;gap:9px}.tile-large{grid-column:1/-1;grid-row:1}.tile-tall{grid-column:1;grid-row:2}.tile-small{grid-column:2;grid-row:2}.tile-wide{grid-column:1;grid-row:3}.tile-accent{grid-column:2;grid-row:3}.project-tile span{right:11px;bottom:10px;left:11px}.project-tile b{font-size:14px}.project-tile i{font-size:7px}.work-cta{display:grid;gap:18px;margin-top:18px;padding-top:20px}.gallery-main{padding-top:72px}.gallery-hero{min-height:390px;padding:120px 0 57px}.gallery-hero h1{font-size:clamp(53px,15.2vw,76px)}.gallery-hero p:not(.eyebrow){font-size:14px}.gallery-intro{display:grid;gap:22px;margin-bottom:32px}.gallery-count{justify-self:start}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:145px;gap:9px}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(6),.gallery-item:nth-child(9),.gallery-item:nth-child(12),.gallery-item:nth-child(15),.gallery-item:nth-child(18){grid-column:span 1;grid-row:span 2}.gallery-item:nth-child(1),.gallery-item:nth-child(5),.gallery-item:nth-child(9),.gallery-item:nth-child(14),.gallery-item:nth-child(18){grid-column:span 2;grid-row:span 3}.gallery-item span{right:11px;bottom:10px;left:11px}.gallery-item b{font-size:14px}.gallery-item i{font-size:7px}.gallery-cta{margin-top:65px;padding:31px 22px}.gallery-cta h2{font-size:39px}}

.lightbox{width:min(930px,calc(100% - 34px));max-height:calc(100% - 34px);padding:10px;border:0;background:transparent}.lightbox::backdrop{background:rgba(6,10,6,.9);backdrop-filter:blur(9px)}.lightbox img{display:block;max-width:100%;max-height:calc(100vh - 55px);margin:auto;box-shadow:0 20px 70px rgba(0,0,0,.55)}.lightbox-close{position:fixed;z-index:2;top:22px;right:22px;width:43px;height:43px;border:0;border-radius:50%;background:var(--acid);color:var(--ink);font-size:30px;line-height:1;cursor:pointer}

/* Use the supplied Peake mark, not a substitute wordmark. */
.brand-logo{position:relative;display:block;flex:0 0 auto;width:66px;height:66px;line-height:0}.brand-logo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:transparent;transition:opacity .22s var(--ease)}.brand-logo-dark{opacity:0}.site-header.scrolled{background:rgba(255,255,255,.97);color:var(--ink);border-color:rgba(13,14,12,.15)}.site-header.scrolled .brand-logo-light{opacity:0}.site-header.scrolled .brand-logo-dark{opacity:1}.site-header.scrolled .button-light{background:var(--ink);color:var(--white)}.site-header.scrolled .site-nav a:after{background:var(--field)}
@media(max-width:900px){.brand-logo{width:58px;height:58px}.site-header.scrolled .site-nav.open{background:var(--white);border-color:rgba(13,14,12,.15)}}

.areas{background:linear-gradient(rgba(12,29,8,.47),rgba(12,29,8,.47)),url('/assets/generated/mowed-grass-stripes.png') center/cover no-repeat}.areas .eyebrow{color:rgba(255,255,255,.77)}.areas-heading p{color:rgba(255,255,255,.82)}.area-chips span{border-color:rgba(255,255,255,.52)}

.area-chips a{padding:13px 18px;border:1px solid rgba(255,255,255,.52);border-radius:100px;color:inherit;font-size:13px;font-weight:700;text-decoration:none}.area-chips a:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.service-card h3 a{color:inherit;text-decoration:none}.service-card h3 a:hover{color:var(--acid)}
