:root{--ink:#182321;--paper:#f6f3ed;--sage:#dfe4da;--accent:#a64f2a;--muted:#5e6863;--line:rgba(24,35,33,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;line-height:1.6}.header{min-height:84px;padding:14px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(246,243,237,.95);z-index:5}.logo{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:10px;letter-spacing:.14em;line-height:1.35}.logo img{width:47px;height:47px;object-fit:contain}.logo b{font-size:11px}nav{display:flex;align-items:center;gap:28px}nav a{font-size:13px;color:inherit;text-decoration:none}.call{padding:10px 15px;border:1px solid}.hero{display:grid;grid-template-columns:1.03fr .97fr;min-height:660px}.hero>div{padding:95px clamp(25px,7vw,110px);align-self:center}.hero>img{width:100%;height:100%;min-height:590px;object-fit:cover}.eyebrow{margin:0 0 18px;font-size:11px;font-weight:700;letter-spacing:.15em;color:#68736c}h1,h2,h3{font-family:Georgia,serif;margin:0;line-height:1.08}h1{font-size:clamp(45px,5.3vw,78px);letter-spacing:-.045em}h1 em{color:#73806e;font-weight:normal}.lede{max-width:590px;margin:27px 0;color:var(--muted);font-size:17px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.button{display:inline-block;background:var(--ink);color:white;padding:15px 20px;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.06em}.link{color:inherit;font-weight:700;text-decoration:none;font-size:13px}.trust{display:grid;grid-template-columns:repeat(4,1fr);padding:21px clamp(20px,5vw,72px);background:var(--ink);color:white;font-size:11px;letter-spacing:.11em;text-align:center}.intro{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;padding:110px clamp(24px,11vw,180px)}.intro h2,.services h2,.section-title h2,.areas h2,.cta h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.035em}.intro p:not(.eyebrow){max-width:700px;color:var(--muted)}.services{padding:95px clamp(24px,7vw,110px);background:var(--sage)}.cards{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line)}.cards article{padding:26px 24px 15px 0;border-right:1px solid var(--line)}.cards article+article{padding-left:24px}.cards article:last-child{border:0}.cards h3{font-size:24px;margin:44px 0 10px}.cards p{font-size:14px;color:var(--muted)}.projects{padding:105px clamp(20px,6vw,90px)}.section-title{text-align:center;max-width:650px;margin:auto}.section-title>p:last-child{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}.grid figure{margin:0;background:white}.grid .wide{grid-column:span 2}.grid img{display:block;width:100%;height:340px;object-fit:cover}.grid .wide img{height:500px}.grid figcaption{padding:13px 15px;font-size:13px}.areas{text-align:center;background:#eee9df;padding:100px 24px}.areas>div{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:35px 0}.areas a{padding:12px 19px;border:1px solid var(--ink);color:inherit;text-decoration:none;font-weight:700}.areas>p:last-child{color:var(--muted)}.cta{text-align:center;padding:105px 24px;background:#71806f;color:white}.cta .eyebrow{color:#e9ede6}.cta>p:not(.eyebrow){max-width:570px;margin:20px auto 30px}.cta .actions{justify-content:center}.cta a{color:white}.cta .light{background:white;color:var(--ink)}footer{padding:24px clamp(20px,5vw,72px);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}footer a{color:inherit}@media(max-width:760px){.header{position:static}.logo span{display:none}nav a:not(.call){display:none}.hero{grid-template-columns:1fr}.hero>div{padding:70px 24px}.hero>img{min-height:410px}.trust{grid-template-columns:1fr 1fr;gap:14px}.intro{grid-template-columns:1fr;padding:75px 24px;gap:20px}.services{padding:70px 24px}.cards{grid-template-columns:1fr 1fr}.cards article:nth-child(2){border-right:0}.cards article:nth-child(n+3){border-top:1px solid var(--line)}.grid{grid-template-columns:1fr 1fr}.grid .wide{grid-column:span 2}.grid img,.grid .wide img{height:300px}footer{flex-direction:column;gap:8px}}
