@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#192521;--paper:#f7f8f5;--accent:#d9eb63;--line:#d4dad5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #638912;outline-offset:6px}img{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.07;letter-spacing:-.045em}.header{min-height:112px;padding:16px 5%;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line)}.brand{width:113px;height:76px;overflow:hidden;display:flex;align-items:center}.brand img{width:113px;transform:scale(1.2)}nav{display:flex;gap:34px}nav a,.header-contact{font-size:.95rem}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.header-contact{border-bottom:1px solid var(--ink);padding:10px 0;display:flex;gap:35px}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.14em;margin-bottom:26px}.hero-copy{padding:60px 5% 48px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:8%}.hero-copy>.eyebrow{grid-column:1/-1}h1{font-size:clamp(3.5rem,6.6vw,7rem);line-height:1.01}.hero-bottom{align-self:end;max-width:435px}.hero-bottom p{font-size:1.15rem;line-height:1.65;margin-bottom:28px}.button{display:inline-flex;gap:38px;align-items:center;justify-content:space-between;padding:17px 23px;background:var(--ink);color:white;font-size:.94rem;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:#36483e;transform:translateY(-2px)}.hero-image{margin:0 3%;position:relative}.hero-image img{width:100%;height:auto;max-height:640px;object-fit:cover}.hero-image figcaption{position:absolute;bottom:0;right:0;padding:9px 15px;background:rgba(25,37,33,.9);color:white;font-size:.78rem}.hero-strip{margin:0 3%;padding:22px 4%;background:var(--accent);display:flex;justify-content:space-between;font-size:.8rem;font-weight:600;letter-spacing:.16em}.section{padding:100px 7%}.services{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}h2{font-size:clamp(2.4rem,4vw,4.2rem)}.section-heading>p:last-child{margin-top:30px;max-width:360px;color:#4d5b54}.service-list article{display:flex;gap:28px;padding:26px 0;border-top:1px solid var(--line)}.service-list article:last-child{border-bottom:1px solid var(--line)}.number{font-size:.8rem;padding-top:8px;color:#627068}h3{font-size:1.7rem;letter-spacing:-.025em}.service-list p{margin-top:14px;color:#4d5b54;max-width:420px}.project{background:var(--ink);color:#f7f8f5}.project-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;margin-bottom:45px}.project-intro>p{max-width:480px}.role{margin-top:27px;font-size:.88rem;color:#c5d1c9}.role strong{color:var(--accent);font-weight:500}.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:28px}.project-grid figure:nth-child(2){padding-top:70px}.project-grid img{width:100%;height:410px;object-fit:cover}.project-grid figcaption{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #5c6861;font-size:.9rem}.text-link{display:inline-flex;gap:45px;margin-top:40px;color:var(--accent)}.about{display:grid;grid-template-columns:1fr 1.5fr;gap:8%}.about>div>p{margin-top:22px;max-width:670px}.about-lead{font-size:1.35rem}.contact{background:var(--accent);display:grid;grid-template-columns:1.6fr 1fr;gap:12%;padding-top:75px;padding-bottom:75px}.contact h2{font-size:clamp(3rem,5.5vw,5.5rem)}.contact p:not(.eyebrow){max-width:540px;margin-top:25px}.contact .button{margin-top:28px}.contact .handle{font-size:.88rem;margin-top:10px}.contact-note{align-self:end;border-top:1px solid #778440;padding-top:22px}.contact-note>span{font-size:.75rem;letter-spacing:.14em}.contact-note p{font-size:1.65rem;line-height:1.4}footer{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding:32px 5%;font-size:.83rem}.footer-name{font-weight:700;letter-spacing:.06em}.skip{position:absolute;top:-80px;left:20px;background:white;padding:12px;z-index:9}.skip:focus{top:10px}
@media(min-width:1700px){body{max-width:1800px;margin:auto}}@media(max-width:760px){.header{padding:12px 6%;min-height:94px;gap:10px}.brand{width:90px;height:64px}.brand img{width:90px}.header-contact{font-size:.8rem;gap:10px}nav{display:none}.hero-copy{display:block;padding:40px 6% 32px}.hero-copy>.eyebrow{font-size:.69rem;letter-spacing:.1em}h1{font-size:3.7rem}.hero-bottom{margin-top:28px}.hero-bottom p{font-size:1rem}.button{gap:22px;padding:16px 18px}.hero-image{margin:0}.hero-image img{min-height:280px;object-fit:cover}.hero-image figcaption{position:static;font-size:.75rem;padding:8px 6%}.hero-strip{margin:0;padding:17px 6%;font-size:.66rem;letter-spacing:.06em}.section{padding:60px 6%}.services,.project-heading,.about,.contact{grid-template-columns:1fr;gap:35px}h2{font-size:2.7rem}.project-grid{grid-template-columns:1fr;gap:26px}.project-grid figure:nth-child(2){padding-top:0}.project-grid img{height:auto;aspect-ratio:4/3}.text-link{gap:18px;font-size:.9rem}.contact h2{font-size:3.5rem}.contact-note{display:none}footer{padding:28px 6%;gap:14px}footer>*{flex-basis:45%}.eyebrow{font-size:.72rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
