:root{--ivory:#F2F0EA;--paper:#F8F7F3;--charcoal:#252A27;--forest:#183A32;--moss:#62766A;--lichen:#8A988C;--mineral:#718487;--sand:#C9C0AF;--line:#D7D5CD;--muted:#646B66;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:Inter,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.container{max-width:var(--max);margin:auto;padding:0 34px}
.header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{font-family:Georgia,serif;font-size:28px;letter-spacing:.12em}.nav{display:flex;align-items:center;gap:29px;font-size:13px}.nav a{color:#363B38}.nav .cta{background:var(--forest);color:#F7F6F1;padding:11px 17px}
.hero{min-height:680px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:60px;padding:90px 0 95px}.kicker,.eyebrow{ text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--moss);margin-bottom:25px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08}h1{font-size:clamp(54px,6vw,88px);margin:0 0 30px;letter-spacing:-.035em}.lead{font-size:19px;max-width:760px;color:#4B514D;line-height:1.65}.button{display:inline-block;margin-top:32px;background:var(--forest);color:#F7F6F1;padding:14px 21px;font-size:13px}
.visual{height:520px;position:relative;overflow:hidden;background:var(--forest)}.visual svg{position:absolute;inset:0;width:100%;height:100%}.visual .label{position:absolute;left:30px;bottom:28px;color:#E8ECE8;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.intro,.section{padding:95px 0;border-top:1px solid var(--line)}.intro-grid,.content-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.intro h2{font-size:46px;margin:0 0 25px}.intro p{font-size:20px;max-width:780px;color:#505650}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px;gap:40px}.section-head h2{font-size:48px;margin:0}.section-head p{max-width:480px;color:var(--muted);margin:0}
.capabilities{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.cap{padding:38px 34px 45px 0;border-bottom:1px solid var(--line)}.cap:nth-child(odd){padding-right:55px;border-right:1px solid var(--line)}.cap:nth-child(even){padding-left:55px}.cap .num{font-size:11px;letter-spacing:.15em;color:var(--moss)}.cap h3{font-size:35px;margin:13px 0 7px}.cap .sub{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mineral)}.cap p{color:#555B57;max-width:490px}.text-link{font-size:13px;color:var(--forest);font-weight:600}
.process{background:var(--forest);color:#F7F6F1;border-top:0}.process .eyebrow{color:#AEBEB5}.process h2{font-size:48px;margin:0 0 50px}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22)}.step{padding:30px 28px 10px 0;border-right:1px solid rgba(255,255,255,.18)}.step:not(:first-child){padding-left:28px}.step:last-child{border-right:0}.step .num{font-size:11px;letter-spacing:.15em;color:#AEBEB5}.step h3{font-size:25px;margin:12px 0}.step p{color:#D4DDD8;font-size:14px}
.sectors{display:flex;flex-wrap:wrap;gap:9px}.sectors span{border:1px solid var(--line);padding:13px 16px;font-size:13px;background:var(--paper)}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.project{background:var(--ivory);padding:30px;min-height:220px}.project h3{font-size:29px;margin:20px 0 12px}.project p{color:var(--muted);font-size:14px}.project .tag,.article .tag{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--moss)}
.perspectives{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.article{border-top:1px solid var(--charcoal);padding-top:18px}.article h3{font-size:27px;margin:17px 0 13px}.article p{font-size:14px;color:var(--muted)}
.contact{background:var(--paper);padding:100px 0;border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:end}.contact h2{font-size:64px;margin:0 0 25px}.contact p{font-size:19px;color:#555B57;max-width:650px}.email{font-family:Georgia,serif;font-size:28px;border-bottom:1px solid var(--charcoal);display:inline-block;padding-bottom:5px}
.footer{background:#17231F;color:#DCE4DF;padding:45px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer .brand{color:white}.footer small{color:#9EAAA3}
.page-hero{padding:110px 0 80px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:72px;max-width:900px}.practice-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.practice-item{padding:32px 30px 32px 0;border-bottom:1px solid var(--line)}.practice-item:nth-child(even){padding-left:30px;border-left:1px solid var(--line)}.practice-item h3{font-size:32px;margin:0 0 8px}.rich h2{font-size:40px;margin:0 0 20px}.rich h3{font-size:28px;margin-top:42px}.rich p,.rich li{color:#555B57}.form{display:grid;gap:18px}.form label{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.form input,.form textarea{width:100%;padding:14px;border:1px solid var(--line);background:white;font:inherit}.form textarea{min-height:150px}
@media(max-width:850px){.container{padding:0 22px}.nav a:not(.cta){display:none}.hero,.intro-grid,.contact-grid,.content-grid{grid-template-columns:1fr}.hero{padding:65px 0;min-height:auto}.visual{height:360px}h1{font-size:55px}.capabilities,.practice-list,.projects,.perspectives{grid-template-columns:1fr}.cap:nth-child(odd){border-right:0;padding-right:0}.cap:nth-child(even){padding-left:0}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2n){border-right:0}.contact h2{font-size:52px}.footer-grid{flex-direction:column}}

.intro{position:relative;overflow:hidden}
.intro:after{content:"";position:absolute;right:-80px;top:30px;width:420px;height:250px;opacity:.18;background:repeating-radial-gradient(ellipse at 60% 50%, transparent 0 28px, var(--moss) 29px 30px, transparent 31px 56px);transform:rotate(-12deg);pointer-events:none}
