@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--ink:#202622;--muted:#68736b;--paper:#f7f7f2;--green:#d4e3d3;--green-dark:#47634d;--orange:#d37745;--line:#d9ded6;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}.site-header{height:92px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(247,247,242,.96);position:sticky;top:0;z-index:10}.brand{display:flex;flex-direction:column;line-height:1.2}.brand-name{font-size:20px;font-weight:700;letter-spacing:-.04em}.dot{color:var(--orange)}.brand-tag{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin-top:5px}.nav{display:flex;align-items:center;gap:30px;font-size:13px}.nav>a,.nav-more>button{color:#48524b}.nav a:hover,.nav-more button:hover{color:var(--orange)}.nav a[aria-current]{color:var(--ink);font-weight:700}.nav-contact{padding:11px 16px;background:var(--ink);color:white!important;border-radius:2px}.nav-contact span,.button span{margin-left:10px}.nav-more{position:relative}.nav-more button{font:inherit;border:0;background:none;cursor:pointer}.dropdown{display:none;position:absolute;top:100%;left:-12px;background:white;box-shadow:0 10px 30px #20262218;min-width:160px;padding:8px}.dropdown a{display:block;padding:8px 12px}.nav-more:hover .dropdown,.nav-more:focus-within .dropdown{display:block}.menu-toggle{display:none;background:none;border:0;font-size:22px}.hero{min-height:650px;padding:90px 7vw 42px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;position:relative;overflow:hidden}.hero-copy{max-width:650px;padding-bottom:45px}.eyebrow,.section-label{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--green-dark)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(48px,6vw,80px);margin:22px 0}h1 em,h2 em{font-weight:500;color:var(--green-dark)}.hero-intro{max-width:490px;color:var(--muted);font-size:17px}.actions{display:flex;align-items:center;gap:28px;margin-top:35px}.button{display:inline-block;background:var(--green-dark);color:white;padding:13px 19px;font-size:13px;font-weight:600;border:0;border-radius:2px;cursor:pointer}.button:hover{background:var(--ink)}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--green-dark);padding-bottom:4px}.hero-visual{height:455px;position:relative;display:flex;align-items:center;justify-content:center}.hero-visual:before{content:'';position:absolute;width:75%;height:82%;background:var(--green);border-radius:47% 53% 52% 48%/40% 44% 56% 60%;transform:rotate(-8deg)}.hero-visual img{position:relative;max-height:100%;max-width:85%;object-fit:contain;mix-blend-mode:multiply}.hero-note{position:absolute;right:1%;bottom:3%;display:flex;align-items:center;gap:12px;background:white;padding:16px 20px;font-size:12px;line-height:1.4;box-shadow:0 8px 35px #1d291710}.note-mark{font-size:28px;color:var(--orange)}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;color:var(--muted);padding-top:26px;border-top:1px solid var(--line)}.section{padding:100px 9vw}.intro,.portfolio-copy,.cv-section,.case-columns{display:grid;grid-template-columns:.7fr 1.7fr;gap:5vw;border-top:1px solid var(--line)}.section-label{padding-top:6px}.intro h2,.section-head h2,.portfolio-copy h2,.cv-section h2,.case-columns h2{font-size:clamp(32px,4vw,52px);margin-bottom:24px}.intro-main{max-width:720px}.intro-main p,.portfolio-copy p{color:var(--muted);max-width:700px}.skill-list{grid-column:2;display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.skill-list span,.pills span{border:1px solid var(--line);padding:8px 13px;border-radius:999px;font-size:12px;color:#526057}.projects{background:#edf0e9}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-head h2{margin:15px 0 0}.project-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:22px}.project-card{display:block}.project-image{height:280px;position:relative;background:#e0e6dd;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.04)}.project-image>span{position:absolute;top:14px;left:14px;background:var(--paper);font-size:10px;padding:6px 9px}.project-meta{display:flex;justify-content:space-between;align-items:center;padding:14px 0}.project-meta h3{font-family:'Playfair Display',serif;font-size:22px;font-weight:500;margin:0}.project-meta p{font-size:11px;color:var(--muted);margin:0}.arrow{font-size:20px;color:var(--green-dark)}.statement,.case-outcome{background:var(--green-dark);color:white;text-align:center;padding:100px 20px}.statement .eyebrow,.case-outcome .eyebrow{color:#d5e3d4}.statement p,.case-outcome h2{font-family:'Playfair Display',serif;font-size:clamp(36px,5vw,64px);line-height:1.12;margin:20px auto 32px}.statement p em,.case-outcome h2 em{color:#c9dfc8}.button-light{background:white;color:var(--ink)}.page-hero{padding:105px 12vw 70px;background:#edf0e9}.page-hero h1{max-width:850px}.page-hero>p:not(.eyebrow){color:var(--muted);max-width:670px;font-size:17px}.portfolio-copy{grid-template-columns:.7fr 1.7fr}.portfolio-copy .button{margin-top:15px}.project-list{padding-top:10px}.project-list>a{display:grid;grid-template-columns:60px 1fr 30px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.project-list>a:last-child{border-bottom:1px solid var(--line)}.project-list>a>span{color:var(--muted);font-size:12px}.project-list h2{font-size:32px;margin:0}.project-list p{color:var(--muted);margin:4px 0 0}.project-list b{font-size:22px;color:var(--green-dark)}.case-hero{padding:100px 12vw 80px;background:#edf0e9;position:relative}.case-hero h1{max-width:800px}.case-hero>p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:17px}.metric{position:absolute;right:12vw;bottom:36px;display:flex;flex-direction:column;text-align:right}.metric strong{font-family:'Playfair Display',serif;font-size:48px;color:var(--green-dark);line-height:1}.metric span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.case-columns{grid-template-columns:1fr 1fr;gap:8vw}.case-columns h2{font-size:34px;margin-top:18px}.clean-list{padding:0;list-style:none}.clean-list li{padding:12px 0;border-bottom:1px solid var(--line);color:#566158}.gallery{padding-top:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.gallery-grid figure{margin:0;background:#e7ebe4;min-height:200px;overflow:hidden}.gallery-grid img{width:100%;height:100%;min-height:200px;object-fit:cover}.case-outcome{padding:75px 20px}.case-outcome h2{font-size:46px;margin:18px auto 25px}.case-outcome .text-link{color:white;border-color:#c9dfc8}.cv-section{grid-template-columns:.7fr 1.7fr;gap:5vw}.cv-section h2{font-size:36px}.timeline{padding:20px 0 24px;border-top:1px solid var(--line)}.timeline>span{font-size:10px;letter-spacing:.1em;color:var(--green-dark);font-weight:700}.timeline h3{font-size:18px;margin:8px 0}.timeline p,.timeline li{color:var(--muted);font-size:14px}.timeline ul{padding-left:18px}.pills{display:flex;flex-wrap:wrap;gap:9px}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.quote-card{background:white;padding:20px;box-shadow:0 5px 30px #2026220b}.quote-card img{display:block;width:100%;height:auto}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:10vw;border-top:1px solid var(--line)}.contact-big{display:block;font-family:'Playfair Display',serif;font-size:clamp(26px,3vw,42px);margin:25px 0;color:var(--green-dark)}.muted,.contact-form small{color:var(--muted);font-size:12px}.contact-form{display:grid;gap:17px}.contact-form label{font-size:12px;font-weight:600}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:6px;background:transparent;border:0;border-bottom:1px solid #aeb9ae;padding:10px 4px;font:inherit;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:0;border-color:var(--green-dark)}.contact-form .button{justify-self:start}.footer{background:var(--ink);color:white;padding:75px 9vw 20px}.footer h2{font-size:44px;margin:15px 0}.footer .eyebrow{color:#bfd5bc}.footer-link{display:inline-block;color:#d5e3d4;border-bottom:1px solid #d5e3d4;padding-bottom:5px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;margin-top:65px;padding-top:17px;color:#bbc3bc;font-size:11px}.footer-bottom a{color:#e1e7e1}
@media(max-width:850px){.site-header{height:76px;padding:0 6vw}.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:20px 6vw 28px;flex-direction:column;align-items:flex-start;gap:16px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.dropdown{position:static;box-shadow:none;background:transparent;padding-left:10px}.hero{padding:60px 7vw 30px;grid-template-columns:1fr}.hero-copy{padding:0}.hero-visual{height:350px;margin-top:20px}.hero-bottom{margin-top:25px}.section{padding:70px 7vw}.intro,.portfolio-copy,.cv-section{grid-template-columns:1fr;gap:20px}.skill-list{grid-column:1}.project-grid{grid-template-columns:1fr 1fr}.project-card:first-child{grid-column:1/-1}.project-card:first-child .project-image{height:300px}.case-hero{padding:75px 7vw 125px}.metric{left:7vw;right:auto;bottom:28px;text-align:left}.case-columns{grid-template-columns:1fr;gap:45px}.page-hero{padding:75px 7vw 55px}.contact-section{grid-template-columns:1fr;gap:45px}.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){h1{font-size:46px}.hero{padding-top:50px}.hero-visual{height:290px}.actions{gap:17px;flex-wrap:wrap}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:18px}.project-grid{grid-template-columns:1fr}.project-card:first-child{grid-column:auto}.project-image,.project-card:first-child .project-image{height:260px}.gallery-grid{grid-template-columns:1fr}.gallery-grid figure,.gallery-grid img{min-height:160px}.testimonial-grid{grid-template-columns:1fr}.project-list>a{grid-template-columns:38px 1fr 22px}.project-list h2{font-size:25px}.statement,.case-outcome{padding:70px 20px}.footer{padding:60px 7vw 20px}.footer h2{font-size:36px}.footer-bottom{margin-top:45px}}
