:root{--black:#0b0b0a;--cream:#f4f0e8;--white:#fff;--ink:#151513;--muted:#6c6861;--line:#d8d2c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif}.nav{height:86px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;padding:0 5.5vw;color:#fff;gap:38px}.brand{display:flex;align-items:center;color:inherit;text-decoration:none;margin-right:auto}.brandLogo{display:block;width:185px;height:auto;object-fit:contain}.footerLogo{filter:invert(1);width:185px}.monogram{font:600 32px/1 'Playfair Display',serif;letter-spacing:-8px;padding-right:8px}.brandwords{display:flex;flex-direction:column}.brandwords strong{font:600 24px/1 'Playfair Display',serif;letter-spacing:2px}.brandwords small{font:600 10px/1.5 'DM Sans';letter-spacing:2.2px}.nav nav{display:flex;gap:28px}.nav nav a,.navcta{color:#fff;text-decoration:none;font-size:13px}.navcta{border:1px solid #aaa;border-radius:999px;padding:13px 19px}.menu{display:none;background:none;border:0;color:#fff;font-size:22px}.hero{min-height:700px;position:relative;display:flex;align-items:center;background:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90') center/cover no-repeat;color:#fff;overflow:hidden}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.98) 0%,rgba(7,7,7,.92) 38%,rgba(7,7,7,.2) 72%,rgba(7,7,7,.05))}.heroCopy{position:relative;z-index:2;width:58%;padding:135px 5.5vw 70px}.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:2.1px;margin-bottom:24px}.eyebrow.dark{color:#4d4943}.hero h1,.intro h2,.practice h2,.approach h2,.industries h2,.growth h2,.contact h2{font-family:'Playfair Display',serif;font-weight:500}.hero h1{font-size:clamp(52px,6vw,88px);line-height:.98;letter-spacing:-2px;margin:0 0 28px}.heroCopy p{font-size:17px;line-height:1.65;max-width:610px;margin:0 0 32px}.btn{display:inline-block;text-decoration:none;padding:16px 22px;border-radius:2px;font-weight:600}.btn.light{background:#fff;color:#111}.heroWords{position:absolute;right:5.5vw;bottom:70px;display:flex;flex-direction:column;border-left:1px solid #eee;padding-left:25px;gap:10px;font-size:11px;letter-spacing:1.8px}.intro{background:var(--cream);display:grid;grid-template-columns:1.2fr 1px 2fr auto;gap:40px;align-items:center;padding:58px 5.5vw}.intro h2{font-size:37px;line-height:1.08;margin:0}.rule{height:70px;background:#777}.intro p{line-height:1.7;margin:0;max-width:700px}.intro a,.practice a,.growth a{color:#111;text-decoration:none;font-size:13px}.practice{padding:70px 5.5vw;display:grid;grid-template-columns:1.2fr 3fr;gap:50px}.practiceTitle h2,.industries h2,.growth h2{font-size:44px;line-height:1.08;margin:0}.practiceGrid{display:grid;grid-template-columns:repeat(4,1fr)}.practiceGrid article{padding:8px 28px;border-left:1px solid var(--line)}.practiceGrid b{font-size:11px}.practiceGrid h3{font-size:20px;margin:24px 0 14px}.practiceGrid p{color:#4c4944;line-height:1.5;min-height:92px}.approach{display:grid;grid-template-columns:1.2fr .85fr .3fr;background:var(--cream);min-height:500px}.photo{margin:0;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}.photo:hover img{transform:scale(1.025)}.approachCopy{padding:70px 50px}.approachCopy h2{font-size:52px;line-height:1.03;margin:0 0 24px}.approachCopy p{line-height:1.7;margin-bottom:28px}.darkBtn{background:#111;color:#fff}.steps{border-left:1px solid #aaa;margin:70px 0;display:flex;flex-direction:column;justify-content:space-around;padding-left:28px}.steps span{display:flex;flex-direction:column;gap:6px}.steps b{font-size:11px}.industries{padding:65px 5.5vw;display:grid;grid-template-columns:1.2fr 3fr;align-items:center;gap:40px}.industryList{display:grid;grid-template-columns:repeat(6,1fr);text-align:center}.industryList span{padding:22px 12px;border-left:1px solid var(--line);line-height:1.5}.growth{position:relative;overflow:hidden;background:linear-gradient(90deg,#f5f0e7 0%,#f5f0e7 70%,#e7dfd2 100%);padding:70px 5.5vw;display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:45px;align-items:center}.growthCopy p{line-height:1.7}.bookStack{display:flex;flex-direction:column;transform:rotate(-1deg)}.bookStack span{background:#f7f2e9;border:1px solid #bdb5a9;padding:10px 20px;box-shadow:0 3px 8px #0001}.contact{background:#0b0b0a;color:#fff;padding:80px 5.5vw;display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.contactInfo h2{font-size:62px;line-height:1.02;margin:0 0 42px}.contactInfo p{line-height:1.6}.contactInfo small{margin-left:26px}.contactInfo a{color:#fff;text-decoration:none}.leadForm{display:flex;flex-direction:column;gap:12px}.help{font-family:'Playfair Display';font-size:21px;margin-bottom:16px}.leadForm select,.leadForm input,.leadForm textarea{width:100%;padding:15px;border:0;border-radius:2px;font:inherit;background:#fff}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:10px}.leadForm button{border:0;padding:17px;font:600 14px 'DM Sans';cursor:pointer}.response,.status{font-size:13px;color:#ddd}.status{margin:0}footer{background:var(--cream);padding:45px 5.5vw;display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center}.footerBrand{color:#111}.footerNav{display:flex;justify-content:flex-end;gap:34px}.footerNav a,.legal a{color:#111;text-decoration:none}.legal{grid-column:1/-1;font-size:12px;display:flex;justify-content:space-between}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}@media(max-width:850px){.nav{height:72px;padding:0 20px}.nav nav,.navcta{display:none}.menu{display:block}.hero{min-height:720px}.heroCopy{width:100%;padding:120px 24px 60px}.hero h1{font-size:54px}.heroWords{display:none}.intro,.practice,.approach,.industries,.growth,.contact{grid-template-columns:1fr}.intro{gap:24px}.intro .rule{display:none}.practiceGrid{grid-template-columns:1fr 1fr}.approach .photo{height:360px}.steps{margin:0 30px 50px;padding:20px 0 20px 24px;gap:22px}.industryList{grid-template-columns:1fr 1fr}.growth{gap:30px}.bookStack{display:none}.contact{gap:45px}.contactInfo h2{font-size:50px}.footerNav{display:none}.legal{display:block;line-height:2}.twocol{grid-template-columns:1fr}}

/* Approach: constrain the photo independently of its intrinsic dimensions. */
.approach{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(150px,.45fr);min-height:600px;align-items:center}
.approach .photo{position:relative;align-self:stretch;min-width:0;min-height:0}
.approach .photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.approachCopy{padding:48px clamp(24px,3.5vw,50px);min-width:0}
.approachCopy h2{font-size:clamp(40px,3.65vw,52px)}
.steps{align-self:center;justify-content:flex-start;gap:30px;margin:48px 24px 48px 0;padding:4px 0 4px 24px}
.steps span{gap:7px}
@media(max-width:850px){
 .approach{grid-template-columns:1fr;min-height:0}
 .approach .photo{height:360px}
 .approachCopy{padding:40px 30px}
 .steps{margin:0 30px 44px;padding:4px 0 4px 24px;gap:24px}
}
