:root{--ink:#171816;--paper:#f6f3ed;--warm:#e9e1d4;--line:#c9c0b4;--gold:#b39365;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;line-height:1.55}.wrap{max-width:1280px;margin:0 auto;padding-left:64px;padding-right:64px}.hero{background:var(--ink);min-height:760px;color:var(--paper);position:relative;overflow:hidden}.nav{z-index:2;border-bottom:1px solid #f6f3ed33;justify-content:space-between;align-items:center;height:100px;display:flex;position:relative}.brand{color:inherit;letter-spacing:-.11em;flex-direction:column;gap:5px;line-height:.75;text-decoration:none;display:inline-flex}.brand span{font-family:var(--serif);font-size:39px;font-weight:500}.brand small{font-family:var(--sans);letter-spacing:.28em;margin-left:3px;font-size:9px;font-weight:600}.nav-links{gap:28px;display:flex}.nav-links a,.footer-nav a{color:inherit;font-size:13px;text-decoration:none}.nav-links a:hover,.footer-nav a:hover{color:var(--gold)}.menu-button{display:none}.hero-content{z-index:1;padding-top:118px;position:relative}.eyebrow{font:500 10px/1.2 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#6b645a;margin:0 0 28px}.eyebrow.light{color:#c9bdac}.hero h1,h2,h3{letter-spacing:-.045em;margin:0;font-weight:500}.hero h1{max-width:940px;font-size:clamp(48px,6.7vw,94px);line-height:1.02}.hero em,h2 em{font-family:var(--serif);font-weight:500}.hero-bottom{justify-content:space-between;align-items:center;max-width:725px;margin-top:68px;display:flex}.hero-bottom p{color:#d8d1c6;margin:0;font-size:15px}.button{font:500 12px var(--sans);cursor:pointer;border:0;justify-content:center;align-items:center;gap:28px;padding:16px 20px;text-decoration:none;transition:transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-light{background:var(--paper);color:var(--ink)}.button-dark{background:var(--ink);color:var(--paper);width:100%;margin-top:8px}.arrow{font-size:22px;font-weight:400;line-height:.5}.hero-mark{font:500 clamp(210px,30vw,470px)/.75 var(--serif);color:#f6f3ed0e;letter-spacing:-.15em;position:absolute;bottom:-.26em;right:-.02em}.about{grid-template-columns:1fr 1fr;gap:100px;padding-top:160px;padding-bottom:160px;display:grid}.section-heading h2,.about h2,.contact h2{font-size:clamp(42px,5.2vw,70px);line-height:1.07}.about-copy{max-width:550px;font-size:16px}.about-copy p{text-align:justify;text-align-last:left;-webkit-hyphens:auto;hyphens:auto;margin:0 0 24px}.team{background:var(--warm);padding:130px 0 0}.team .section-heading{margin-bottom:82px}.team-card{grid-template-columns:1fr 1fr;padding:0;display:grid}.portrait{background:#d9d1c6;height:720px;overflow:hidden}.portrait img{object-fit:cover;object-position:center;width:100%;height:100%}.bio{background:#dcd3c6;flex-direction:column;align-items:flex-start;padding:74px 68px;display:flex}.bio h3,.practice-card h3,.story h3,.success h3{margin-bottom:35px;font-size:clamp(32px,3.6vw,50px);line-height:1.05}.bio>p:not(.eyebrow){max-width:475px;margin:0 0 18px;font-size:14px}.bio-footer{border-top:1px solid #17181640;justify-content:space-between;align-items:center;width:100%;margin-top:auto;padding-top:24px;font-size:12px;display:flex}.bio-footer a,.footer-contact{color:inherit;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.team-card-reverse .bio{background:#ede8df}.placeholder{color:var(--paper);background:#807a72;justify-content:space-between;align-items:flex-end;padding:52px;display:flex}.placeholder div{flex-direction:column;gap:6px;line-height:.75;display:flex}.placeholder span{font:500 74px var(--serif);letter-spacing:-.12em}.placeholder small{font:500 11px var(--sans);letter-spacing:.3em}.placeholder p{font:14px var(--mono);margin:0}.practice{padding:155px 0}.practice .section-heading{margin-bottom:75px}.practice-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.practice-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:340px;padding:30px;transition:background .2s}.practice-card:hover{background:#eee9e0}.practice-card>div{color:#756c60;font:10px var(--mono);justify-content:space-between;display:flex}.practice-card h3{text-transform:uppercase;margin:72px 0 19px;font-size:29px}.practice-card p{max-width:520px;margin:0;font-size:13px;line-height:1.6}.insights{padding-top:150px;padding-bottom:150px}.insights .section-heading{margin-bottom:68px}.story-list{border-top:1px solid var(--line)}.story{border-bottom:1px solid var(--line);justify-content:space-between;gap:50px;padding:30px 0;display:flex}.story .eyebrow{margin:0 0 15px}.story h3{margin-bottom:10px;font-size:30px}.story p:last-child{color:#625d55;margin:0;font-size:14px}.story>a{color:var(--ink);align-self:center;font-size:40px;text-decoration:none}.testimonials{background:var(--gold);color:#fff;padding:136px 0}.testimonials blockquote{font:500 clamp(38px,5.4vw,72px)/1.12 var(--serif);letter-spacing:-.045em;max-width:1000px;margin:0}.quote-note{margin:42px 0 0;font-size:14px}.contact{grid-template-columns:1fr 1fr;gap:100px;padding-top:150px;padding-bottom:150px;display:grid}.contact-intro{max-width:370px;margin-top:36px;font-size:16px}.contact form{border-top:1px solid var(--ink)}label{border-bottom:1px solid var(--line);font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:18px 0 11px;display:block}input,textarea{width:100%;font:16px var(--sans);resize:vertical;background:0 0;border:0;outline:0;padding:10px 0 0;display:block}.success{border-top:1px solid var(--ink);padding-top:35px}.success>span{font-size:30px}.success h3{margin-top:16px;margin-bottom:14px}.success p{font-size:15px}.success button{border:0;border-bottom:1px solid var(--ink);font:600 12px var(--sans);cursor:pointer;background:0 0;padding:10px 0}footer{background:var(--ink);color:var(--paper);padding-top:62px}.footer-grid{grid-template-columns:1.1fr 1.5fr 1fr .7fr;align-items:start;gap:30px;display:grid}.footer-grid>div>p{color:#d9d1c7;margin:0;font-size:14px}.footer-nav{gap:6px;display:grid}.footer-contact{justify-self:end;font-size:15px}.copyright{font:10px var(--mono);color:#a69f95;border-top:1px solid #f6f3ed2e;margin-top:85px;padding-top:18px;padding-bottom:25px}@media (max-width:760px){.wrap{padding-left:28px;padding-right:28px}.hero{min-height:690px}.nav{height:78px}.nav-links{background:var(--ink);border-bottom:1px solid #f6f3ed33;flex-direction:column;gap:15px;padding:16px 20px 24px;display:none;position:absolute;top:78px;left:0;right:0}.nav-links.is-open{display:flex}.menu-button{color:var(--paper);font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.1em;background:0 0;border:0;align-items:center;gap:10px;display:flex}.menu-button i{background:currentColor;width:17px;height:1px;display:block}.hero-content{padding-top:92px}.hero-bottom{margin-top:44px;display:block}.hero-bottom .button{margin-top:28px}.about,.contact{grid-template-columns:1fr;gap:55px;padding-top:94px;padding-bottom:94px}.team{padding-top:90px}.team .section-heading{margin-bottom:48px}.team-card,.team-card-reverse{grid-template-columns:1fr}.team-card-reverse .bio{order:2}.portrait{height:520px}.bio{min-height:620px;padding:48px 22px}.practice{padding:95px 0}.practice .section-heading{margin-bottom:48px}.practice-grid{grid-template-columns:1fr}.practice-card{min-height:300px}.insights{padding-top:94px;padding-bottom:94px}.insights .section-heading{margin-bottom:46px}.story{gap:20px}.story h3{font-size:26px}.testimonials{padding:86px 0}.contact{gap:45px}.footer-grid{grid-template-columns:1fr 1fr;gap:42px}.footer-grid>div:nth-child(2){grid-column:span 1}.footer-contact{justify-self:start}.copyright{margin-top:58px}.placeholder{height:360px}.placeholder span{font-size:60px}}:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}@media (prefers-reduced-motion:no-preference){.hero .eyebrow{animation:hero-enter .45s var(--ease-out)80ms both}.hero h1{animation:hero-enter .7s var(--ease-out).16s both}.hero-bottom{animation:hero-enter .65s var(--ease-out).3s both}.hero-mark{animation:hero-mark-in .9s var(--ease-out).15s both}.reveal-on-scroll{opacity:0;transition:opacity .6s var(--ease-out)var(--reveal-delay,0s),transform .6s var(--ease-out)var(--reveal-delay,0s);will-change:transform,opacity;transform:translateY(26px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}@keyframes hero-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-mark-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}@media (hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.practice-card:hover{transition:background .2s ease,transform .2s var(--ease-out);transform:translateY(-4px)}}.button:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-on-scroll{opacity:1!important;transform:none!important}}.hero-bottom p,.about-copy p,.bio>p:not(.eyebrow),.practice-card p,.story p:last-child,.quote-note,.contact-intro,.success p,.footer-grid>div>p{text-align:justify;text-align-last:left;-webkit-hyphens:auto;hyphens:auto}.footer-social,.contact-social{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.footer-social{margin-top:26px}.contact-social{margin-top:34px}.footer-social a,.contact-social a{width:38px;height:38px;color:inherit;transition:background .2s var(--ease-out),color .2s var(--ease-out),border-color .2s var(--ease-out),transform .2s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.footer-social a{border:1px solid #f6f3ed4d}.contact-social a{border:1px solid var(--line)}.footer-social svg,.contact-social svg{width:17px;height:17px;display:block}.social-handle{font:10px var(--mono);letter-spacing:.12em;text-transform:lowercase}.footer-social .social-handle{color:#a69f95}.contact-social .social-handle{color:#756c60}@media (hover:hover) and (pointer:fine){.footer-social a:hover{background:var(--paper);color:var(--ink);border-color:var(--paper);transform:translateY(-2px)}.contact-social a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-2px)}}
