@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,summary{font:inherit}img{max-width:100%;display:block}}@layer base{:root{color-scheme:dark;--ink:#141717;--graphite:#202525;--paper:#f1ede3;--silver:#c6cecb;--muted:#a6b2ad;--accent:#a7c4e2;--accent-strong:#35638f;--navy:#102844;--line:#f1ede333;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Manrope", Arial, sans-serif;--gutter:clamp(24px, 4vw, 80px);--page:min(1360px, calc(100% - var(--gutter) * 2));--header-min-h:100px;--header-h:var(--header-min-h)}html,body{background:var(--ink)}body{isolation:isolate;min-width:320px;color:var(--paper);font:400 1rem/1.7 var(--sans);text-rendering:optimizelegibility}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:2px solid var(--paper);outline-offset:4px}[id]{scroll-margin-top:calc(var(--header-h) + 24px)}h1,h2,h3{font-family:var(--serif);text-wrap:balance;font-weight:400}h1{letter-spacing:-.045em;font-size:clamp(4rem,7.3vw,7.8rem);line-height:.98}h2{letter-spacing:-.035em;max-width:20ch;font-size:clamp(2.8rem,4.3vw,4.8rem);line-height:1.04}h3{letter-spacing:-.02em;font-size:clamp(1.8rem,2.5vw,2.6rem);line-height:1.12}p{max-width:58ch}.eyebrow{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:.68rem;font-weight:500;line-height:1.5}.section-intro{color:var(--silver);font-size:1rem}:root{--accent:#d5b384;--accent-strong:#8f7150}}@layer layout{main>section>:not(.hero__ambient),.contact-footer__inner{z-index:1;position:relative}.narrative-shell,.editorial-section{width:var(--page);border-bottom:1px solid var(--line);margin-inline:auto;padding-block:clamp(80px,8vw,128px)}.narrative-copy{min-width:0}.audience .narrative-copy,.philosophy .narrative-copy{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:clamp(48px,8vw,128px);display:grid}.narrative-copy>.eyebrow{grid-column:1/-1;margin-bottom:28px}.narrative-copy>h2{grid-area:2/1}.narrative-copy>.section-intro{grid-area:3/1;margin-top:28px}.area-grid,.principles-list{grid-area:2/2/4}#areas{background:var(--graphite)}.editorial-section__inner{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:24px 80px;display:grid}.editorial-section__inner>.eyebrow{grid-column:1;padding-top:12px}.editorial-section__inner>h2,.editorial-section__inner>.section-intro{grid-column:2}}@layer components{.skip-link{z-index:100;background:var(--paper);color:var(--ink);padding:10px 14px;font-size:.8rem;position:fixed;top:12px;left:12px;transform:translateY(calc(-100% - 24px))}.skip-link:focus-visible{outline-color:var(--paper);transform:translateY(0)}.site-header{z-index:20;min-height:var(--header-min-h);padding:14px max(var(--gutter), calc((100% - 1360px) / 2));background:var(--ink);border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:28px;display:grid;position:sticky;top:0}.brand{align-items:center;gap:20px;min-height:48px;display:flex}.brand__symbol{object-fit:contain;width:58px;height:58px}.brand__name{font-family:var(--serif);letter-spacing:-.04em;font-size:3.5rem;line-height:1}.brand__descriptor{max-width:130px;color:var(--silver);letter-spacing:.15em;text-transform:uppercase;font-size:.6rem;line-height:1.7}.desktop-navigation ul{justify-content:center;gap:clamp(16px,2vw,32px);display:flex}.desktop-navigation a,.header-cta{min-height:48px;color:var(--silver);align-items:center;font-size:.75rem;transition:color .18s;display:inline-flex}.desktop-navigation a:hover{color:var(--accent)}.header-cta,.button-link{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:22px;min-height:52px;display:inline-flex}.header-cta{padding-inline:16px;font-size:.7rem}.header-cta svg,.button-link svg{flex-shrink:0;width:19px;transition:transform .18s}.header-cta:hover svg,.button-link:hover svg{transform:translate(4px)}.mobile-navigation{display:none}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,3fr) minmax(0,2fr);max-width:1600px;margin-inline:auto;display:grid}.hero__copy{align-self:center;padding:clamp(56px,5vw,88px) clamp(32px,4vw,72px)}.hero__copy>.eyebrow{margin-bottom:34px}.hero h1{max-width:12ch}.hero__body{color:var(--silver);margin-top:28px;font-size:clamp(1rem,1.3vw,1.2rem)}.hero__actions{flex-wrap:wrap;gap:16px;margin-top:30px;display:flex}.button-link{color:var(--paper);padding:16px 20px;font-size:.8rem;line-height:1.4;transition:border-color .18s,background-color .18s}.button-link:first-child{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:500}.button-link:hover{border-color:var(--paper);background:#f1ede30f}.hero{background:var(--ink);position:relative;overflow:hidden}.hero__ambient{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero__ambient span{aspect-ratio:1;filter:blur(52px);opacity:.42;background:radial-gradient(circle,#366facb8 0%,#18407052 36%,#0000 70%);border-radius:50%;width:clamp(340px,42vw,760px);position:absolute}.hero__ambient span:first-child{top:-32%;left:12%}.hero__ambient span:nth-child(2){opacity:.3;background:radial-gradient(circle,#4f82b59e,#0000 68%);width:clamp(440px,56vw,900px);bottom:-60%;right:-20%}.hero__ambient span:nth-child(3){opacity:.18;background:radial-gradient(circle,#b5d2ef8c,#0000 70%);width:clamp(180px,25vw,390px);top:13%;right:9%}.hero__copy,.hero__visual{z-index:1;position:relative}.hero__image{object-fit:cover;object-position:58% bottom;mix-blend-mode:luminosity;opacity:.92;width:100%;height:100%;min-height:0}.area-grid{border-top:1px solid var(--line)}.area-card{border-bottom:1px solid var(--line);font-family:var(--serif);grid-template-columns:32px 1fr;align-items:baseline;gap:18px;padding:22px 0;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.2;display:grid}.area-card>span,.principles-list span{color:var(--accent);font:.65rem/1.5 var(--sans);letter-spacing:.08em}.philosophy{border-bottom:0}.principles-list{border-top:1px solid var(--line)}.principles-list li{border-bottom:1px solid var(--line);color:var(--silver);grid-template-columns:32px 1fr;gap:18px;padding-block:23px;font-size:.95rem;display:grid}.principles-list span{padding-top:5px}.office{padding-block:clamp(96px,10vw,150px)}.insights{border-bottom:0}.insights__grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:64px;display:grid}.insight-card{padding:32px 32px 0}.insight-card:first-child{padding-left:0}.insight-card:last-child{padding-right:0}.insight-card+.insight-card{border-left:1px solid var(--line)}.insight-card h3{max-width:17ch}.insight-card p{color:var(--muted);margin-top:32px;font-size:.9rem}.contact-footer{border-top:1px solid var(--line);background:var(--graphite)}.contact-footer__inner{width:var(--page);margin-inline:auto;padding-block:clamp(80px,8vw,128px) 32px}.contact-footer .eyebrow{margin-bottom:32px}.contact-footer h2{max-width:22ch;font-size:clamp(3rem,5.5vw,6rem)}.contact-footer address{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--silver);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 48px;margin-top:56px;padding-block:26px;font-style:normal;display:flex}.contact-footer address a{font-family:var(--serif);overflow-wrap:anywhere;font-size:clamp(1.6rem,3vw,2.8rem);transition:color .18s}.contact-footer address a:hover{color:var(--accent)}.contact-footer address p{font-size:.8rem}.contact-footer address+p{color:var(--muted);margin-top:24px;font-size:.7rem}.brand{flex-direction:row;align-items:center;gap:14px}.brand__wordmark{gap:7px;display:grid}.brand__name{letter-spacing:-.025em;max-width:none;font-size:1.65rem}.brand__descriptor{max-width:none;color:var(--accent);letter-spacing:.19em;font-size:.49rem}.brand__symbol{object-fit:contain}.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.hero h1{max-width:15ch;font-size:clamp(3.5rem,5.6vw,5.7rem);line-height:1.02}.hero__copy{padding-block:clamp(54px,5.5vw,90px)}.hero__body{max-width:43ch;font-size:1rem}.hero__ambient span{opacity:.17;background:radial-gradient(circle,#a7c4e24d,#0000 70%)}.button-link:first-child:hover{background:#ead0ab;border-color:#ead0ab}.firm-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,7vw,112px);display:grid}.firm-intro__copy>p+p{color:var(--muted);margin-top:24px;font-size:.92rem}.firm-intro__copy .firm-intro__signature{border-top:1px solid var(--line);color:var(--paper);font:1.5rem/1.2 var(--serif);flex-wrap:wrap;align-items:center;gap:18px;margin-top:32px;padding-top:24px;display:flex}.firm-intro__signature span{color:var(--accent);font-size:1rem}.practice-entrances{--silver:#515b55;background:var(--paper);color:var(--ink)}.practice-entrances .eyebrow,.practice-entrances .section-index{color:#715a3e}.practice-entrances .section-intro{color:#515b55}.practice-entrances__grid{border-top:1px solid #14171740;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:54px;display:grid}.practice-door{min-width:0;padding:38px 48px 0 0}.practice-door+.practice-door{border-left:1px solid #14171740;padding:38px 0 0 48px}.practice-door__heading{color:#715a3e;justify-content:space-between;align-items:center;gap:16px;display:flex}.practice-door__heading svg{width:28px;height:28px}.practice-door h3{margin-top:25px;font-size:clamp(2.7rem,4vw,4rem)}.practice-door>p{color:#515b55;margin-top:22px;font-size:.92rem}.practice-door__professionals{margin-top:30px}.practice-door__professionals a{border-top:1px solid #14171733;justify-content:space-between;align-items:center;gap:22px;padding:22px 0;display:flex}.practice-door__professionals a:last-child{border-bottom:1px solid #14171733}.practice-door__professionals strong{font:1.6rem/1.2 var(--serif)}.practice-door__professionals small{color:#515b55;margin-top:9px;font-size:.73rem;line-height:1.6;display:block}.practice-door__professionals svg{flex-shrink:0;width:22px}.practice-door__professionals a:hover strong{text-underline-offset:5px;text-decoration:underline}.practice-door>.practice-door__note{max-width:50ch;margin-top:22px;font-size:.74rem}.practice-entrances :focus-visible{outline-color:var(--ink)}.technology{background:#172329}.technology__owner{color:var(--muted);margin-top:24px;font-size:.8rem}.technology .button-link{margin-top:28px}.technology__method{border-color:var(--line);background:linear-gradient(135deg,#a7c4e20d,#0000)}.technology__method li:not(:last-child):before{background:var(--line)}.team__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:54px;display:grid}.team-card{flex-direction:column;min-width:0;display:flex}.team-card>img{aspect-ratio:4/5;object-fit:cover;object-position:center 35%;width:100%;height:auto}.team-card--leonardo>img{object-position:50% 40%}.team-card__registration{color:var(--accent);letter-spacing:.07em;margin-top:25px;font-size:.65rem}.team-card h3{margin-top:10px;font-size:clamp(1.8rem,2.6vw,2.65rem)}.team-card__areas{color:var(--muted);margin-top:14px;margin-bottom:25px;font-size:.8rem}.team-card>a{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:52px;margin-top:auto;font-size:.78rem;display:flex}.team-card>a svg{width:20px}.team-card>a:hover{color:var(--accent)}.contact-footer{background:#111515}.contact-footer__inner>div>.section-intro{margin-top:26px}.contact-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:52px;display:grid}.contact-choice{border-top:1px solid var(--line);flex-direction:column;min-width:0;padding-top:24px;display:flex}.contact-choice h3{font-size:1.85rem}.contact-choice p{color:var(--muted);margin-top:14px;margin-bottom:24px;font-size:.78rem}.contact-choice .contact-button{gap:16px;margin-top:auto;padding-inline:18px;font-size:.75rem}.contact-button:hover{color:var(--ink);background:#ead0ab}.contact-choice>small{color:var(--muted);margin-top:16px;font-size:.65rem}.firm-footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:24px;padding-top:24px;font-size:.7rem;display:flex}.firm-footer-bottom a{flex-shrink:0;align-items:center;min-height:44px;display:inline-flex}.contact-footer .office-map{border-top:0}}@layer responsive{@media (width<=1100px){.desktop-navigation,.header-cta{display:none}.site-header{grid-template-columns:1fr auto}.mobile-navigation{display:block;position:relative}.mobile-navigation summary{min-height:48px;color:var(--silver);cursor:pointer;align-items:center;gap:10px;font-size:.75rem;list-style:none;display:flex}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation summary svg{width:18px}.mobile-navigation__panel{width:min(82vw,320px);max-height:calc(100svh - var(--header-h) - 24px);border:1px solid var(--line);background:var(--graphite);padding:24px;position:absolute;top:calc(100% + 12px);right:0;overflow-y:auto;box-shadow:0 24px 60px #0000004d}.mobile-navigation__panel a{border-bottom:1px solid var(--line);align-items:center;min-height:48px;font-size:.85rem;display:flex}.mobile-navigation__panel>a{background:var(--accent);color:var(--ink);justify-content:center;margin-top:18px;padding-inline:12px}}@media (width<=900px){.hero{grid-template-columns:minmax(0,1fr)}.hero__copy{padding:56px var(--gutter)}.hero h1{max-width:17ch;font-size:clamp(3.5rem,9vw,5.5rem)}.hero__image{object-position:center bottom;height:clamp(240px,50vw,420px)}.audience .narrative-copy,.philosophy .narrative-copy{column-gap:40px}.editorial-section__inner{grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr);gap:24px 40px}.insight-card{padding-inline:20px}}@media (width<=600px){:root{--header-min-h:80px}.brand{gap:14px}.brand__name{font-size:2.7rem}.brand__descriptor{max-width:110px;font-size:.5rem}.hero__copy{padding-block:48px}.hero__copy>.eyebrow{margin-bottom:26px}.hero h1{max-width:13ch;font-size:clamp(3.25rem,13.5vw,4.5rem)}.hero__actions{flex-direction:column;gap:12px}.button-link{width:100%}.audience .narrative-copy,.philosophy .narrative-copy,.editorial-section__inner{display:block}.narrative-copy>.eyebrow,.editorial-section__inner>.eyebrow{margin-bottom:26px;padding-top:0}.editorial-section__inner>.section-intro{margin-top:28px}.area-grid,.principles-list{margin-top:36px}.insights__grid{grid-template-columns:1fr;margin-top:40px}.insight-card,.insight-card:first-child,.insight-card:last-child{padding:28px 0}.insight-card+.insight-card{border-left:0;border-top:1px solid var(--line)}.insight-card p{margin-top:20px}.contact-footer address{gap:16px;margin-top:40px;display:grid}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}@media (width<=1100px){.brand__name{font-size:1.65rem}.practice-door{padding-right:30px}.practice-door+.practice-door{padding-left:30px}.contact-choices{gap:22px}}@media (width<=900px){.hero{grid-template-columns:1fr}.hero h1{max-width:18ch;font-size:clamp(3.3rem,8vw,4.9rem)}.hero__image{height:clamp(260px,50vw,420px)}.firm-intro{gap:36px}.firm-intro h2{font-size:2.8rem}.contact-choices{grid-template-columns:1fr;gap:28px}.contact-choice{grid-template-columns:1fr 1fr;align-items:start;column-gap:30px;display:grid}.contact-choice h3,.contact-choice p{grid-column:1}.contact-choice .contact-button{grid-area:1/2/3;align-self:center;margin-block:0}.contact-choice>small{margin-top:0}.team-card h3{font-size:1.8rem}}@media (width<=600px){.brand{flex-direction:row;gap:10px}.brand__symbol{width:42px;height:46px}.brand__wordmark{gap:5px}.brand__name{font-size:1.28rem}.brand__descriptor{letter-spacing:.12em;font-size:.4rem}.site-header{gap:12px}.hero h1{max-width:15ch;font-size:clamp(3.05rem,12.5vw,4.2rem)}.hero__copy{padding:44px 24px}.hero__body{font-size:.92rem}.hero__actions{gap:12px}.hero__image{height:310px}.firm-intro{grid-template-columns:1fr;gap:30px}.practice-entrances__grid{grid-template-columns:1fr;margin-top:36px}.practice-door{padding:30px 0}.practice-door+.practice-door{border-top:1px solid #14171740;border-left:0;padding:30px 0 0}.practice-door h3{margin-top:20px}.team__grid{grid-template-columns:1fr;gap:44px;margin-top:36px}.team-card h3{font-size:2.5rem}.team-card__registration{margin-top:21px}.team-card__areas{margin-bottom:18px}.contact-choice{display:flex}.contact-choice .contact-button{align-self:stretch;margin-top:0}.contact-choice>small{margin-top:16px}.firm-footer-bottom{display:block}.firm-footer-bottom a{margin-top:12px}}}
