:root{--ink:#252824;--paper:#f6f3ed;--accent:#a65232;--line:#d8d4cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,summary{font:inherit}button,a,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(56px,7vw,104px);margin-bottom:30px}h2{font-size:clamp(40px,4.4vw,65px);margin-bottom:30px}h3{font-size:23px;font-weight:400;line-height:1.25;letter-spacing:-.025em}em{color:var(--accent);font-weight:400}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);gap:35px}.brand{font-size:27px;letter-spacing:.13em;line-height:1.1;font-weight:700;display:inline-block}.brand span{display:block;font-size:11px;font-weight:400;letter-spacing:.52em;margin-top:8px}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav a:hover,nav [aria-current=page]{color:var(--accent)}.nav-contact{border-bottom:1px solid var(--ink);padding:12px 0;margin-left:20px}.menu-toggle{display:none}.eyebrow{display:block;font-size:10px;letter-spacing:.17em;font-weight:700;line-height:1.6;margin-bottom:28px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.hero-copy{padding:65px 9% 40px 10%}.hero-copy p{max-width:370px;color:#5b5e57;font-size:15px;margin-bottom:28px}.button{border:1px solid var(--ink);padding:15px 22px;display:inline-flex;gap:48px;align-items:center;font-size:12px;transition:.2s}.button:hover{background:var(--ink);color:var(--paper)}.button span{font-size:23px}.hero-note{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;display:flex;align-items:center;gap:30px;font-size:11px;line-height:1.5}.hero-note span{color:var(--accent)}.hero-photo{position:relative;min-height:640px;background:#333}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover}.hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009)}.photo-caption{position:absolute;bottom:35px;left:40px;right:40px;color:white;z-index:1;display:flex;flex-direction:column;gap:7px}.photo-caption span{font-size:10px;letter-spacing:.12em}.photo-caption strong{font-family:Georgia,serif;font-size:30px;font-weight:400}.section{padding:90px 7%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid var(--line)}.intro p{max-width:480px;color:#64665e}.intro p.large{font-size:24px;line-height:1.4;color:var(--ink)}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid;padding:9px 0;margin-top:8px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px}.section-heading h2{margin-bottom:0}.selected{background:#eae7df}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.project-image{height:245px;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project:hover img{transform:scale(1.035)}.project-image>span{position:absolute;bottom:15px;left:15px;background:var(--paper);padding:4px 11px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.project-body{padding:24px 0 0}.number{font-size:10px;letter-spacing:.12em;color:var(--accent);display:block;margin-bottom:12px}.project h3{min-height:58px;margin-bottom:18px}details{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:13px 0;font-size:11px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}summary span{font-size:18px}details p{font-size:13px;color:#595d55;line-height:1.8}details[open] summary span{transform:rotate(45deg)}.services{display:grid;grid-template-columns:1fr 1fr;gap:10%}.services>div>a:not(.text-link){display:flex;align-items:center;border-top:1px solid var(--line);padding:25px 0;font-size:22px;gap:20px}.services a span{font-size:10px;color:var(--accent)}.services a b{font-weight:400;margin-left:auto}.sectors{padding-top:0}.sectors>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px}.sectors a{font-size:17px}.sectors a span{margin-left:12px;color:var(--accent)}.cta{background:var(--ink);color:var(--paper);text-align:center;padding:85px 20px}.cta h2{font-size:clamp(40px,5vw,72px)}.cta .eyebrow{color:#c6b5a4}.light{border-color:#999c91}.light:hover{background:var(--paper);color:var(--ink)}footer{padding:60px 7% 20px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;font-size:12px}footer .brand{font-size:25px}footer a:hover{color:var(--accent)}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin-top:20px;display:flex;justify-content:space-between;font-size:10px}.page-heading{padding:70px 7% 60px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(48px,6vw,84px);max-width:900px}.page-heading p{max-width:560px;color:#64665e}.filters{display:flex;flex-wrap:wrap;gap:10px}.filters button{border:1px solid var(--line);padding:10px 18px;background:transparent;cursor:pointer;font-size:12px}.filters [aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.result-count{font-size:11px;color:#777;margin:25px 0}.portfolio .project-grid{row-gap:55px}.project[hidden]{display:none}.service-list{background:#eae7df}.service-list ul{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;gap:0 50px}.service-list li{padding:18px 0;border-bottom:1px solid #d1cdc4}.editorial{max-width:1200px;margin:auto}.editorial h2{font-size:38px;margin-top:50px;letter-spacing:-.035em}.editorial h3{margin-top:30px}.editorial p,.editorial li{color:#565b52;max-width:850px}.editorial .intro_text:first-child{display:none}.editorial img{width:min(100%,460px);height:280px;object-fit:cover;margin:30px 0}.editorial .content_wrapper{margin-bottom:45px}.editorial a{color:var(--accent);text-decoration:underline}.editorial li{margin-bottom:10px}.editorial .content{margin-bottom:45px}.archive-note{font-size:14px}.skip{position:absolute;top:-80px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.nav-contact{margin-left:0}.hero-copy{padding:55px 8%}.hero{min-height:650px}.hero h1{font-size:75px}.project-grid{gap:22px}.project-image{height:200px}.sectors a{font-size:14px}.section{padding:65px 6%}}@media(max-width:760px){.site-header{height:85px;padding:0 6%;position:relative}.brand{font-size:23px}.brand span{font-size:9px}.menu-toggle{display:flex;border:0;background:transparent;gap:20px;font-size:12px;align-items:center}.menu-toggle span{font-size:25px}nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:20px 6%;z-index:5;box-shadow:0 15px 20px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:14px 0;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7% 35px}.hero h1{font-size:75px}.hero-copy p{max-width:100%}.hero-photo{min-height:400px}.hero-note{display:none}.photo-caption{bottom:25px;left:25px}.intro,.services{grid-template-columns:1fr;gap:25px}.section{padding:55px 7%}.project-grid{grid-template-columns:1fr}.project-image{height:300px}.project h3{min-height:0;font-size:25px}.project-body{padding-bottom:20px}.section-heading{gap:25px;align-items:flex-start;flex-direction:column}.section-heading .text-link{margin-top:0}.sectors>div{flex-direction:column;gap:0}.sectors a{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:20px}.services>div>a:not(.text-link){font-size:20px}.cta{padding:65px 20px}footer{grid-template-columns:1fr;gap:25px;padding:45px 7% 20px}.footer-bottom{gap:20px;flex-wrap:wrap}.page-heading{padding:45px 7% 35px}.service-list ul{grid-template-columns:1fr}.filters{gap:7px}.filters button{padding:9px 12px}.portfolio .project-grid{row-gap:25px}.editorial img{height:auto}.eyebrow{font-size:9px}h2{font-size:42px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
