:root{--forest:#173b2c;--forest-dark:#0d271d;--mountain-blue:#08a7da;--moss:#9bbf62;--moss-bright:#b9dc7e;--cream:#f4f0e5;--sand:#ddd2be;--ink:#152018;--muted:#5d685f;--white:#fffefa;--line:#1520182e;--display:"Arial Narrow", "Franklin Gothic Medium", "Aptos Display", Arial, sans-serif;--body:"Segoe UI", "Aptos", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{background:var(--cream);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--moss-bright);outline-offset:4px}.site-header{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f0e5f5;grid-template-columns:1fr auto 1fr;align-items:center;min-height:88px;padding:0 4vw;display:grid;position:sticky;top:0}.brand{justify-self:start;align-items:center;gap:12px;line-height:1;display:inline-flex}.brand-logo-mark{aspect-ratio:1;object-fit:contain;flex:none;width:52px;height:52px}.brand strong,.brand small{text-transform:uppercase;display:block}.brand strong{font-family:var(--display);letter-spacing:.04em;font-size:19px}.brand small{letter-spacing:.28em;margin-top:7px;font-size:10px;font-weight:700}.site-header nav{justify-content:center;gap:clamp(20px,3vw,44px);display:flex}.site-header nav a{letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:750;position:relative}.site-header nav a:after{background:var(--forest);content:"";transform-origin:100%;width:100%;height:2px;transition:transform .18s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.site-header nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-cta{background:var(--forest);color:var(--cream);letter-spacing:.09em;text-transform:uppercase;justify-self:end;padding:14px 20px;font-size:12px;font-weight:800}.hero{background:var(--forest);color:var(--cream);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:calc(100vh - 88px);display:grid}.hero-copy{align-content:center;padding:clamp(72px,9vw,150px) clamp(28px,6vw,96px);display:grid}.eyebrow{color:var(--forest);letter-spacing:.18em;text-transform:uppercase;margin:0 0 20px;font-size:12px;font-weight:850}.eyebrow.light{color:var(--moss-bright)}.hero h1,.section-heading h2,.work-intro h2,.about-copy h2,.contact-copy h2{font-family:var(--display);letter-spacing:-.055em;text-transform:uppercase;margin:0;font-weight:900;line-height:.92}.hero h1{font-size:clamp(60px,7.8vw,126px)}.hero h1 em{color:var(--moss-bright);font-style:normal}.hero-lede{max-width:620px;margin:34px 0 0;font-size:clamp(18px,1.5vw,23px);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:30px;margin-top:40px;display:flex}.button{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border:0;justify-content:center;align-items:center;min-height:54px;padding:0 26px;font-size:13px;font-weight:850;transition:background .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--moss-bright);color:var(--forest-dark)}.button-accent:hover{background:var(--white)}.button-cream{background:var(--cream);color:var(--forest-dark);margin-top:14px}.button-dark{background:var(--forest-dark);color:var(--cream);width:100%}.text-link{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:16px;padding-bottom:5px;font-size:13px;font-weight:800;display:inline-flex}.light-link{color:var(--cream)}.hero-points{flex-wrap:wrap;gap:12px 30px;margin:60px 0 0;padding:0;list-style:none;display:flex}.hero-points li{color:#f4f0e5c2;letter-spacing:.08em;text-transform:uppercase;padding-left:16px;font-size:12px;font-weight:700;position:relative}.hero-points li:before{background:var(--moss-bright);content:"";width:6px;height:6px;position:absolute;top:.55em;left:0}.hero-image-wrap{min-height:660px;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:42% center;width:100%;height:100%;position:absolute}.hero-image-note{background:var(--cream);color:var(--forest-dark);letter-spacing:.08em;text-transform:uppercase;min-width:255px;padding:24px 30px;font-size:13px;display:grid;position:absolute;bottom:0;left:0}.hero-image-note strong{color:var(--forest)}.proof-strip{background:var(--moss-bright);font-family:var(--display);letter-spacing:-.02em;text-align:center;text-transform:uppercase;grid-template-columns:repeat(3,1fr);font-size:clamp(20px,2vw,30px);font-weight:900;display:grid}.proof-strip span{border-right:1px solid #0d271d4d;padding:28px 20px}.proof-strip span:last-child{border:0}.section{max-width:1540px;margin:0 auto;padding:clamp(84px,10vw,160px) 5vw}.section-heading{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:end;gap:6vw;margin-bottom:72px;display:grid}.section-heading h2,.work-intro h2,.about-copy h2,.contact-copy h2{font-size:clamp(46px,6vw,92px)}.section-heading>p,.work-intro>p:last-child,.about-copy>p,.contact-copy>p{color:var(--muted);margin:0;font-size:18px}.service-grid{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:310px;padding:36px;transition:background .18s,color .18s}.service-card:hover{background:var(--forest);color:var(--cream)}.service-card>span{color:var(--forest);font-family:var(--display);font-size:13px;font-weight:900}.service-card:hover>span{color:var(--moss-bright)}.service-card h3{font-family:var(--display);letter-spacing:-.03em;text-transform:uppercase;margin:60px 0 18px;font-size:clamp(27px,2.2vw,38px);line-height:1}.service-card p{color:var(--muted);margin:0}.service-card:hover p{color:#f4f0e5c7}.ask-banner{background:var(--sand);justify-content:space-between;align-items:center;margin-top:30px;padding:28px 34px;display:flex}.ask-banner p{margin:0}.work-section{background:var(--forest-dark);color:var(--cream);padding-bottom:clamp(84px,10vw,160px)}.work-intro{grid-template-columns:minmax(0,1fr) minmax(0,2.1fr) minmax(240px,.8fr);gap:28px;display:grid}.work-intro .eyebrow{align-self:start}.work-intro>p:last-child{color:#f4f0e5ad;align-self:end}.project-list{max-width:1540px;margin:0 auto;padding:0 5vw}.project{border-top:1px solid #f4f0e538;grid-template-columns:minmax(230px,.62fr) minmax(0,1.8fr);gap:5vw;padding:72px 0;display:grid}.project-copy{align-self:center}.project-index{color:#f4f0e542;font-family:var(--display);margin-bottom:52px;font-size:58px;font-weight:900;line-height:1;display:block}.project-copy h3,.process-copy h3{font-family:var(--display);letter-spacing:-.04em;text-transform:uppercase;margin:0 0 22px;font-size:clamp(40px,4vw,68px);line-height:.98}.project-copy>p:last-child,.process-copy>p:last-child{color:#f4f0e5a6;margin:0}.before-after{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.before-after figure,.process-story figure,.field-gallery figure{margin:0;position:relative;overflow:hidden}.before-after img{aspect-ratio:4/5;object-fit:cover;width:100%;height:100%}.before-after figcaption,.process-story figcaption,.field-gallery figcaption{background:var(--cream);color:var(--forest-dark);letter-spacing:.12em;text-transform:uppercase;padding:10px 13px;font-size:11px;font-weight:850;position:absolute;bottom:14px;left:14px}.process-story{background:var(--forest);grid-template-columns:.85fr repeat(3,1fr);gap:14px;margin:30px 0 0;padding:clamp(34px,4vw,64px) 5vw;display:grid}.process-copy{align-content:center;padding-right:3vw;display:grid}.process-story img{aspect-ratio:4/5;object-fit:cover;width:100%;height:100%}.section-heading.compact{margin-bottom:52px}.field-gallery{grid-template-columns:1.15fr 1fr 1fr;gap:14px;display:grid}.field-gallery img{aspect-ratio:1;object-fit:cover;width:100%;height:100%}.field-gallery-tall img{object-position:center 72%}.about-section{background:var(--forest);color:var(--cream);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);display:grid}.about-image-wrap{min-height:760px}.about-image-wrap img{object-fit:cover;width:100%;height:100%}.about-copy{align-content:center;padding:clamp(72px,8vw,130px);display:grid}.about-copy .about-lede{color:var(--cream);margin-top:36px;font-size:clamp(21px,2vw,29px);font-weight:650;line-height:1.4}.about-copy>p:not(.eyebrow):not(.about-lede){color:#f4f0e5b3}.about-copy .button{justify-self:start}.contact-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8vw;max-width:1540px;margin:0 auto;padding:clamp(84px,10vw,160px) 5vw;display:grid}.contact-copy>p:not(.eyebrow){max-width:620px;margin-top:30px}.contact-methods{border-top:1px solid var(--line);margin-top:48px}.contact-methods a{border-bottom:1px solid var(--line);gap:4px;padding:22px 0;display:grid}.contact-methods a:hover strong{color:var(--forest)}.contact-methods span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.contact-methods strong{overflow-wrap:anywhere;font-size:clamp(18px,2vw,25px)}.service-area{letter-spacing:.04em;font-weight:700;font-size:13px!important}.quote-form{background:var(--white);border:1px solid var(--line);padding:clamp(28px,4vw,56px)}.quote-form label{letter-spacing:.08em;text-transform:uppercase;gap:9px;margin-bottom:24px;font-size:12px;font-weight:850;display:grid}.quote-form label span{color:var(--muted);text-transform:none;font-weight:600}.quote-form input,.quote-form textarea{border:0;border-bottom:1px solid var(--line);color:var(--ink);resize:vertical;text-transform:none;background:0 0;border-radius:0;outline:0;width:100%;padding:10px 0;font-size:17px}.quote-form textarea{border:1px solid var(--line);min-height:150px;padding:14px}.quote-form input:focus,.quote-form textarea:focus{border-color:var(--forest);box-shadow:0 2px 0 var(--forest)}.form-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-note{color:var(--muted);text-align:center;margin:14px 0 0;font-size:12px}footer{background:var(--forest-dark);color:var(--cream);grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;min-height:180px;padding:40px 5vw;display:grid}.footer-brand{align-items:center;gap:16px;display:flex}.footer-brand strong,.footer-brand span{display:block}.footer-brand strong{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase}.footer-brand div span{color:#f4f0e58c;font-size:12px}.footer-links{gap:28px;display:flex}.footer-links a{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:750}footer>p{color:#f4f0e57a;justify-self:end;margin:0;font-size:11px}.mobile-call{display:none}@media (width<=1050px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{min-height:720px}.hero-image-wrap{min-height:680px}.service-grid{grid-template-columns:repeat(2,1fr)}.work-intro{grid-template-columns:1fr 2fr}.work-intro>p:last-child{grid-column:2}.process-story{grid-template-columns:repeat(3,1fr)}.process-copy{grid-column:1/-1;max-width:700px;padding:18px 0 36px}.about-copy{padding:70px 6vw}footer{grid-template-columns:1fr auto}footer>p{grid-column:1/-1;justify-self:start}}@media (width<=760px){html{scroll-padding-top:72px}body{padding-bottom:58px;font-size:16px}.site-header{min-height:72px;padding:0 20px}.header-cta{display:none}.brand-logo-mark{width:44px;height:44px}.brand strong{font-size:16px}.hero{min-height:0}.hero-copy{min-height:630px;padding:88px 22px 60px}.hero h1{font-size:clamp(52px,17vw,76px)}.hero-lede{margin-top:28px;font-size:18px}.hero-actions{flex-direction:column;align-items:flex-start;margin-top:34px}.hero-points{gap:10px 20px;margin-top:44px}.hero-points li{font-size:10px}.hero-image-wrap{min-height:520px}.hero-image{object-position:38% center}.proof-strip{grid-template-columns:1fr}.proof-strip span{border-bottom:1px solid #0d271d4d;border-right:0;padding:18px}.section{padding:86px 22px}.section-heading,.work-intro,.contact-section{grid-template-columns:1fr}.section-heading{align-items:start;gap:28px;margin-bottom:48px}.section-heading h2,.work-intro h2,.about-copy h2,.contact-copy h2{font-size:clamp(42px,14vw,62px)}.service-grid{grid-template-columns:1fr}.service-card{min-height:260px;padding:28px}.service-card h3{margin-top:44px}.ask-banner{flex-direction:column;align-items:flex-start;gap:24px;padding:26px}.work-intro>p:last-child{grid-column:auto}.project-list{padding:0 22px}.project{grid-template-columns:1fr;gap:36px;padding:60px 0}.project-index{margin-bottom:32px;font-size:42px}.before-after{gap:8px}.before-after figcaption,.process-story figcaption,.field-gallery figcaption{bottom:8px;left:8px}.process-story{grid-template-columns:1fr;gap:8px;padding:56px 22px}.process-copy{grid-column:auto;padding:0 0 28px}.process-story img{aspect-ratio:4/3}.field-gallery{grid-template-columns:1fr 1fr}.field-gallery-tall{grid-column:1/-1}.field-gallery-tall img{aspect-ratio:4/3}.about-section{grid-template-columns:1fr}.about-image-wrap{min-height:460px}.about-copy{padding:74px 22px 86px}.contact-section{gap:54px;padding:86px 22px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;align-items:start;padding:52px 22px}.footer-links{flex-wrap:wrap;gap:18px 26px}footer>p{grid-column:auto}.mobile-call{background:var(--moss-bright);color:var(--forest-dark);letter-spacing:.08em;text-transform:uppercase;z-index:40;justify-content:center;align-items:center;height:58px;font-size:12px;font-weight:900;display:flex;position:fixed;bottom:0;left:0;right:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
