/* site.css */
@layer reset, base, layout, components, responsive;
@layer reset {
  *,*::before,*::after{box-sizing:border-box}body,h1,h2,h3,p,ul{margin:0}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}[hidden]{display:none!important}html{scroll-behavior:smooth}dialog{color:inherit}
}
@layer base {
  :root{--navy:#102b3e;--navy-dark:#0b2232;--ink:#183344;--muted:#536674;--accent:#aecbd6;--paper:#f4f6f6;--line:#d9e1e4;--white:#fff;--danger:#a12e35;--radius:12px;--space:clamp(24px,5vw,84px);--max:1440px;--cookie-space:0px;--font:Arial,Helvetica,sans-serif;--editorial:Georgia,'Times New Roman',serif;--ease:cubic-bezier(.22,.61,.36,1)}
  body{font-family:var(--font);color:var(--ink);background:var(--white);font-size:16px;line-height:1.65;overflow-wrap:break-word}body.has-cookie-banner{padding-bottom:var(--cookie-space)}h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(44px,5.3vw,82px)}h2{font-size:clamp(34px,3.4vw,52px)}h3{font-size:26px}p{color:var(--muted)}button{border:0}input,textarea,select{width:100%;border:1px solid #bac9d1;border-radius:6px;padding:12px 14px;background:white;color:var(--ink);min-height:48px}textarea{resize:vertical;line-height:1.6}label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input[type=checkbox]{width:19px;height:19px;min-height:19px;accent-color:var(--navy);flex-shrink:0}input[type=file]{font-size:14px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #3d899f;outline-offset:4px}::selection{background:var(--accent);color:var(--navy)}.wrap{width:min(calc(100% - var(--space)*2),var(--max));margin-inline:auto}.section{padding-block:clamp(64px,7vw,112px)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--muted);margin-bottom:24px}.lead{font-size:clamp(18px,1.6vw,23px);line-height:1.65}.muted,.help{color:var(--muted)}.help{font-size:12px;line-height:1.6;margin-top:6px}.block{display:block}.required{color:var(--danger)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-100px;background:white;z-index:100;padding:12px 20px;box-shadow:0 3px 20px #0002}.skip-link:focus{top:16px}.text-button{background:none;padding:0;text-align:left;text-decoration:underline;text-underline-offset:4px;font-size:inherit;line-height:inherit}.arrow-link{display:inline-flex;gap:26px;align-items:center;font-size:14px;font-weight:600;min-height:44px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;transition:text-decoration-color .2s}.arrow-link:hover{text-decoration-color:currentColor}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:50px;padding:14px 23px;border:1px solid var(--navy);background:var(--navy);color:white;font-size:13px;font-weight:600;border-radius:5px;text-align:center;line-height:1.4;transition:background .2s,transform .2s,color .2s}.button:hover{background:#234b62;transform:translateY(-2px)}.button.light{background:var(--accent);color:var(--navy);border-color:var(--accent)}.button.light:hover{background:#c4dce5}.button.secondary{background:transparent;color:var(--navy);border-color:#a9bac4}.button.secondary:hover{background:#e7eef1}.button.small{min-height:42px;padding:11px 16px;font-size:12px;gap:16px}.button.danger{background:var(--danger);border-color:var(--danger)}.notice{padding:18px 22px;border-radius:6px;margin-bottom:24px;font-size:14px}.notice.success{background:#eaf5ef;color:#24553c;border:1px solid #c3dfce}.notice.error{background:#fff0ee;color:#8d2529;border:1px solid #e8c8c4}.notice p{color:inherit}.stack-form{display:grid;gap:22px}.stack-form .button{justify-self:start}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.checkbox-row{display:flex;align-items:flex-start;gap:12px;font-size:13px;font-weight:400;line-height:1.6}.checkbox-row input{margin-top:3px}.checkbox-row a{text-decoration:underline}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.empty-state{grid-column:1/-1;border-top:1px solid var(--line);padding:64px 0;max-width:760px}.empty-state h2{font-size:30px;margin-bottom:18px}.empty-state p{margin-bottom:24px}
}
@layer layout {
  .site-header{min-height:100px;padding:20px var(--space);display:flex;align-items:center;justify-content:space-between;gap:32px;background:white;position:relative;z-index:20}.wordmark{font-size:26px;letter-spacing:.065em;line-height:1.1;text-transform:uppercase;white-space:nowrap;display:inline-block;font-weight:500}.wordmark span{display:block;font-size:8px;letter-spacing:.25em;margin-top:9px}.site-nav{display:flex;align-items:center;gap:clamp(22px,2.6vw,42px);font-size:13px}.site-nav>a{position:relative;padding-block:12px}.site-nav>a:not(.nav-contact)::after{content:'';position:absolute;bottom:5px;left:0;right:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-nav>a:hover::after,.site-nav>a[aria-current]::after{transform:scaleX(1)}.site-nav .nav-contact{padding:12px 0 12px 28px;border-left:1px solid var(--line);display:flex;align-items:center;gap:26px}.menu-toggle{display:none}.hero{min-height:min(720px,calc(100svh - 100px));position:relative;isolation:isolate;background:var(--navy-dark);color:white;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0 0 0 auto;width:72%;height:100%;object-fit:cover;object-position:center 47%;z-index:-3;animation:hero-image 1.5s var(--ease) both}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0c2639 9%,#0c2639f2 25%,#0c26398c 56%,#0c26391a 100%)}.hero-content{padding-block:80px 125px}.hero h1{font-family:var(--editorial);font-weight:400;white-space:pre-line;max-width:770px;letter-spacing:-.045em;font-size:clamp(50px,5.7vw,90px);line-height:1.04}.hero .eyebrow{color:#b6d0da}.hero-description{color:#d6e2e8;font-size:16px;line-height:1.8;max-width:380px;margin-block:28px 34px}.hero-scroll{position:absolute;bottom:30px;left:var(--space);font-size:10px;letter-spacing:.08em;display:flex;align-items:center;gap:40px;color:#d9e4e9}.hero-scroll span:last-child{font-size:22px}.hero-location{position:absolute;right:var(--space);bottom:37px;font-size:9px;letter-spacing:.17em;color:#d9e4e9}.hero-enter{animation:hero-enter .8s var(--ease) both}.hero-enter:nth-child(2){animation-delay:.12s}.hero-enter:nth-child(3){animation-delay:.24s}.hero-enter:nth-child(4){animation-delay:.36s}.firm-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.firm-heading h2{white-space:pre-line}.firm-copy{padding-top:34px}.firm-copy .arrow-link{margin-top:24px}.expertise-section{background:var(--paper)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:290px;display:flex;flex-direction:column;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}.service-card:hover{transform:translateY(-5px);border-color:#819eae;box-shadow:0 12px 32px #102b3e0b}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.card-number{font-size:11px;color:#728b9b;letter-spacing:.1em}.card-arrow{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:32px;height:32px;transition:background .2s,color .2s}.service-card:hover .card-arrow{background:var(--navy);color:white}.service-card h3,.service-card h2{font-size:25px;line-height:1.2;letter-spacing:-.03em;max-width:300px;margin-bottom:17px}.service-card p{font-size:14px;line-height:1.75;margin-bottom:28px;max-width:320px}.card-label{font-size:11px;letter-spacing:.035em;margin-top:auto;font-weight:600}.perspective-section{position:relative;background:var(--navy);min-height:530px;display:grid;grid-template-columns:1fr 1fr;color:white;overflow:hidden}.perspective-section>img{width:100%;height:100%;min-height:530px;object-fit:cover}.perspective-copy{padding:clamp(45px,6vw,95px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.perspective-copy h2{font-family:var(--editorial);font-size:clamp(34px,3.2vw,50px);font-weight:400;line-height:1.15}.perspective-copy p{color:#ccdde5;max-width:420px;margin-block:24px 30px;font-size:15px}.perspective-copy .eyebrow{margin-top:0;color:#b3cdd8;font-size:10px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.article-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,border-color .3s}.article-card:hover{transform:translateY(-4px);border-color:#819eae}.article-image{aspect-ratio:1.65;overflow:hidden}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.article-card:hover img{transform:scale(1.04)}.article-card-content{padding:25px;display:flex;flex-direction:column;flex:1}.article-meta{font-size:10px;text-transform:uppercase;letter-spacing:.08em;display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);margin-bottom:20px}.article-card h3{font-size:26px;line-height:1.25;margin-bottom:16px}.article-card p{font-size:14px;margin-bottom:24px}.article-card .arrow-link{margin-top:auto}.contact-cta>div{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-cta h2{font-family:var(--editorial);font-weight:400}.site-footer{background:var(--navy-dark);color:#d8e4e9;padding-top:70px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr .65fr;gap:70px;padding-bottom:70px}.site-footer .wordmark{font-size:23px;color:white}.footer-top p{color:#a8becb;font-size:13px;max-width:310px;margin-top:20px}.footer-contact{display:flex;flex-direction:column;gap:9px;font-size:16px}.footer-contact .eyebrow{color:#9ab4c3;margin-bottom:12px}.footer-links{display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-bottom{border-top:1px solid #2a4050;padding-block:25px;font-size:10px;color:#a8becb;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:22px}.page-intro{padding-block:80px 64px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:1000px;line-height:1.1;white-space:pre-line}.page-intro .lead{max-width:720px;margin-top:26px}.listing-section{padding-top:44px}.listing-section .service-card{background:var(--paper)}.search-form{display:flex;gap:12px;max-width:600px;margin-bottom:40px}.detail-intro{border:0;max-width:1100px}.breadcrumb{display:flex;gap:14px;font-size:11px;margin-bottom:45px;color:var(--muted)}.detail-image img{width:100%;max-height:520px;object-fit:cover;border-radius:var(--radius)}.byline{display:flex;gap:24px;font-size:12px;margin-top:28px;color:var(--muted)}.detail-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(0,300px);justify-content:space-between;gap:80px}.prose{font-size:18px;line-height:1.85}.prose p{white-space:pre-line;margin-bottom:30px}.prose h2{font-size:30px;margin:40px 0 24px}.detail-aside{border-top:2px solid var(--navy);padding-top:28px;align-self:start;position:sticky;top:32px}.detail-aside h2{font-size:30px;margin-bottom:20px}.detail-aside p{font-size:14px;margin-bottom:25px}.detail-aside .eyebrow{font-size:10px}.filter-form{display:flex;gap:20px;align-items:flex-end;margin-bottom:48px;flex-wrap:wrap}.filter-form>div{min-width:210px;flex:1;max-width:400px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.person-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);transition:transform .3s}.person-card[href]:hover{transform:translateY(-5px)}.portrait{aspect-ratio:1/.95;background:#e0e8eb;position:relative;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:top}.portrait-arrow{position:absolute;bottom:18px;right:18px;background:white;width:40px;height:40px;display:grid;place-items:center;border-radius:50%}.initials{font-family:var(--editorial);font-size:120px;color:#698796;position:absolute;inset:0;display:grid;place-items:center}.person-content{padding:26px}.person-content h2{font-size:27px;margin-bottom:10px}.person-content p{font-size:13px}.person-role{color:var(--ink);margin-bottom:16px}.person-content .card-label{display:block;margin-top:22px}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(45px,8vw,120px)}.contact-form-panel h2{font-size:34px;margin-bottom:35px}.office-list>.eyebrow{margin-bottom:24px}.office-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin-bottom:18px}.office-card h2{font-size:28px;margin-block:14px 20px}.office-card>a{display:block;font-size:14px;margin-top:5px;overflow-wrap:anywhere}.office-card p{font-size:14px;white-space:pre-line;margin-bottom:18px}.office-location{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.office-card .arrow-link{display:inline-flex;margin-top:14px}.error-page{padding-block:100px 120px;position:relative;isolation:isolate;min-height:580px}.error-number{position:absolute;right:0;top:10px;font-size:clamp(140px,28vw,420px);font-family:var(--editorial);line-height:1;color:#eef2f3;z-index:-1}.error-page h1{font-family:var(--editorial);font-weight:400;font-size:clamp(48px,6vw,80px)}.error-page>p:not(.eyebrow){max-width:490px;margin-top:26px;font-size:16px}.error-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.auth-body{background:var(--paper)}.auth-header{display:flex;justify-content:space-between;align-items:center;padding:32px var(--space);gap:20px}.auth-header .wordmark{font-size:22px}.auth-panel{max-width:480px;margin:45px auto 80px;background:white;padding:42px;border:1px solid var(--line);border-radius:var(--radius)}.auth-panel h1{font-size:32px;margin-bottom:26px}.auth-panel .eyebrow{font-size:9px;margin-bottom:12px}.auth-panel>p.help{margin-top:25px}.auth-panel .stack-form p{font-size:14px}.auth-symbol{display:flex;align-items:center;gap:5px;font-family:var(--editorial);font-size:38px;margin-bottom:30px}.auth-symbol span{font-family:var(--font);font-size:20px;color:#6b8d9c}.auth-panel .button{width:100%}.code-input{font-size:26px;letter-spacing:.4em;text-align:center}
}
@layer components {
  .cookie-banner{position:fixed;inset:auto 20px 20px;z-index:40;padding:24px 28px;box-shadow:0 8px 50px #102b3e26;background:white;border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;max-height:60svh;overflow:auto}.cookie-banner h2{font-size:20px;letter-spacing:-.02em;margin-bottom:8px}.cookie-banner p{font-size:12px;max-width:700px}.cookie-banner p a{text-decoration:underline}.cookie-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.cookie-dialog{border:1px solid var(--line);border-radius:var(--radius);padding:30px;max-width:600px;width:calc(100% - 32px);max-height:calc(100svh - 40px);box-shadow:0 25px 100px #0003}.cookie-dialog::backdrop{background:#0b2232a6;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-heading h2{font-size:27px}.icon-button{background:var(--paper);border-radius:50%;width:40px;height:40px;flex-shrink:0;font-size:25px;line-height:1}.cookie-dialog>p{font-size:13px;margin-bottom:24px}.consent-row{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line);padding-block:20px;margin:0}.consent-row strong{font-size:14px}.consent-row p,.consent-row .muted{font-size:12px;font-weight:400;margin:4px 0 0}.status{font-size:10px;white-space:nowrap;color:#326a4c;font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.will-reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.will-reveal.is-visible{opacity:1;transform:none}.service-grid>.will-reveal:nth-child(3n+2){transition-delay:.06s}.service-grid>.will-reveal:nth-child(3n){transition-delay:.12s}@keyframes hero-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes hero-image{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
}
@layer responsive {
  @media(min-width:1800px){.site-header{padding-inline:max(var(--space),calc((100vw - 1440px)/2))}.hero-content{padding-block:100px 130px}.hero h1{font-size:94px}.hero-image{width:65%}.hero{min-height:760px}}
  @media(max-width:1100px){.cookie-banner{grid-template-columns:1fr;gap:18px}.cookie-actions{justify-content:flex-start}.service-card{padding:24px}.service-card h3,.service-card h2{font-size:23px}.footer-top{gap:35px}.perspective-copy{padding:45px}.detail-layout{gap:45px}.hero-location{display:none}}
  @media(max-width:900px){.site-header{min-height:88px;padding-block:22px}.wordmark{font-size:22px}.menu-toggle{width:44px;height:44px;display:flex;flex-direction:column;gap:7px;justify-content:center;align-items:center;background:transparent}.menu-toggle span{height:1px;width:24px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:20px var(--space) 30px;box-shadow:0 15px 20px #102b3e15;align-items:stretch;gap:0}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a{padding:16px 0;border-top:1px solid var(--line);font-size:16px}.site-nav .nav-contact{border-left:0;padding:16px 0;justify-content:space-between}.site-nav>a::after{display:none}.hero{min-height:610px}.hero-content{padding-block:70px 110px}.hero-image{width:90%;object-position:65% center}.hero-shade{background:linear-gradient(90deg,#0c2639f5,#0c2639d4 45%,#0c26392e)}.hero h1{font-size:clamp(55px,7.5vw,70px)}.service-grid,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.firm-section{gap:7%}.perspective-section{min-height:480px}.perspective-section>img{min-height:480px}.perspective-copy{padding:35px}.perspective-copy h2{font-size:35px}.footer-top{grid-template-columns:1fr 1fr;gap:45px}.footer-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:25px}.footer-bottom{align-items:flex-start;flex-direction:column}.contact-layout{grid-template-columns:1fr;gap:60px}.office-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.office-list>.eyebrow{grid-column:1/-1;margin:0}.office-card{margin:0}.detail-layout{grid-template-columns:minmax(0,1fr) 240px;gap:35px}}
  @media(max-width:600px){:root{--space:24px}.site-header{min-height:82px;padding-block:16px}.wordmark{font-size:20px}.wordmark span{font-size:6px;letter-spacing:.22em}.hero{min-height:calc(100svh - 82px);max-height:780px}.hero-content{padding-block:65px 105px}.hero h1{font-size:clamp(44px,11.8vw,65px);max-width:460px}.hero-description{max-width:300px;font-size:14px;margin-block:24px 28px}.hero .eyebrow{font-size:9px;max-width:280px}.hero-image{width:100%;object-position:60% center;opacity:.7}.hero-shade{background:linear-gradient(90deg,#0c2639e8,#0c263999),linear-gradient(0deg,#0c2639b3,transparent 55%)}.hero-scroll{bottom:22px}.firm-section{grid-template-columns:1fr;gap:28px}.firm-copy{padding-top:0}.firm-copy .lead{font-size:17px}.section-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:30px}.section-heading .arrow-link{min-height:30px}.section-heading h2{font-size:36px}.service-grid,.article-grid,.team-grid{grid-template-columns:1fr;gap:16px}.service-card{min-height:260px;padding:25px}.card-top{margin-bottom:25px}.service-card h3,.service-card h2{font-size:28px;max-width:none}.service-card p{max-width:100%}.perspective-section{grid-template-columns:1fr}.perspective-section>img{height:300px;min-height:0;object-position:center}.perspective-copy{padding:45px 24px 55px}.perspective-copy h2{font-size:36px}.contact-cta>div{flex-direction:column;align-items:flex-start;gap:28px}.contact-cta h2{font-size:40px}.footer-top{grid-template-columns:1fr;gap:35px;padding-bottom:40px}.footer-links{grid-column:auto;gap:20px;font-size:11px}.footer-bottom>div{gap:16px}.site-footer{padding-top:50px}.page-intro{padding-block:52px 44px}.page-intro h1{font-size:44px}.page-intro .lead{font-size:17px;margin-top:22px}.eyebrow{font-size:10px;margin-bottom:20px}.listing-section{padding-top:32px}.search-form{gap:8px}.search-form .button{padding-inline:16px}.detail-layout{grid-template-columns:1fr;gap:35px}.prose{font-size:16px}.detail-aside{position:static;max-width:100%}.detail-image{width:100%}.detail-image img{border-radius:0;max-height:330px}.breadcrumb{margin-bottom:30px}.filter-form{gap:15px}.filter-form>div{min-width:100%;max-width:none}.portrait{aspect-ratio:1/1.05}.office-list{grid-template-columns:1fr}.office-card{padding:25px}.form-row{grid-template-columns:1fr;gap:22px}.contact-form-panel h2{font-size:30px}.error-page{padding-block:65px 80px;min-height:550px}.error-number{top:40px;right:0;font-size:180px}.error-page h1{font-size:49px}.error-actions{align-items:flex-start;flex-direction:column;gap:15px}.cookie-banner{inset:auto 10px 10px;padding:20px;gap:16px;max-height:55svh}.cookie-banner h2{font-size:18px}.cookie-banner p{font-size:11px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cookie-actions .button{padding:11px 9px;font-size:11px}.cookie-actions .button:last-child{grid-column:1/-1}.cookie-dialog{padding:24px}.dialog-heading h2{font-size:24px}.dialog-actions{flex-direction:column}.consent-row{gap:15px}.auth-header{padding:25px 20px}.auth-header .wordmark{font-size:18px}.auth-header .arrow-link{font-size:11px;gap:0}.auth-panel{margin:25px 16px 50px;padding:28px}.auth-panel h1{font-size:30px}}
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}
}

/* Compact legal footer for protected sign-in screens. */
.auth-body{min-height:100svh;display:flex;flex-direction:column}.auth-body>main{flex:1}.auth-footer{margin-top:auto;padding:24px var(--space);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px 32px;color:var(--muted);font-size:.75rem;line-height:1.8}.auth-footer p{margin:0}.auth-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px}.auth-footer a,.auth-footer button{display:inline-flex;align-items:center;min-height:44px;font:inherit}.auth-footer a:hover,.auth-footer button:hover{color:var(--ink);text-decoration:underline}@media(max-width:600px){.auth-footer{flex-direction:column;align-items:flex-start;padding:20px 24px;gap:8px}.auth-footer nav{gap:4px 20px}}

/* refined.css */
/* Brand and composition refinements share the base tokens and components. */
:root{--navy:#24212b;--navy-dark:#19161e;--ink:#28232d;--muted:#69636e;--accent:#dbc6e0;--paper:#f6f4f7;--line:#e2dce5;--brand:#670b70;--radius:4px}
.brand-logo{display:block;width:220px;flex-shrink:0}.brand-logo img{width:100%;height:auto}.site-header{min-height:102px;padding-block:16px}.site-nav{font-size:12px;gap:35px}.site-nav .nav-contact{background:var(--brand);color:white;padding:13px 20px;border:0;border-radius:2px}.button{background:var(--brand);border-color:var(--brand);border-radius:2px}.button:hover{background:#85208d}.button.light{background:white;border-color:white;color:var(--ink)}.button.light:hover{background:#efe5f1}.hero{background:var(--navy-dark);min-height:650px}.hero-shade{background:linear-gradient(90deg,#19161e 0%,#19161ef5 28%,#19161e75 62%,#19161e05)}.hero-image{width:76%;object-position:center 47%;filter:saturate(.6)}.hero h1{font-family:var(--font);font-size:clamp(60px,7.2vw,106px);line-height:.99;font-weight:500;letter-spacing:-.065em;max-width:880px}.hero .eyebrow{color:#dbc6e0}.hero-description{color:#e0dbe4;max-width:370px;font-size:15px}.hero-content{padding-block:85px 125px}.hero .button{margin-top:4px}.hero-location{color:#d9d0de}.firm-section{grid-template-columns:1fr 1fr;gap:11%;padding-block:110px}.firm-heading h2{font-size:clamp(39px,4.1vw,63px);font-weight:400;letter-spacing:-.05em}.firm-copy{padding-top:35px}.firm-copy .lead{font-size:20px}.eyebrow{color:var(--brand);font-size:10px}.expertise-section{background:#f5f2f6}.expertise-layout{display:grid;grid-template-columns:.9fr 1.25fr;gap:12%}.expertise-heading{position:sticky;top:45px;align-self:start}.expertise-heading h2{font-size:clamp(35px,3.7vw,55px);line-height:1.1;margin-bottom:25px}.expertise-heading>p:not(.eyebrow){font-size:14px;max-width:290px;line-height:1.8}.expertise-heading .arrow-link{margin-top:24px}.discipline-count{display:block;margin-top:55px;font-size:85px;line-height:1;color:#c7b9cd;letter-spacing:-.07em}.discipline-count small{font-size:10px;display:block;letter-spacing:.06em;margin-top:14px;color:var(--muted)}.expertise-rows{border-top:1px solid #bdb0c4}.expertise-row{border-bottom:1px solid #cfc4d4;padding:0;transition:background .3s}.expertise-row summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:22px;padding:27px 0;min-height:91px}.expertise-row summary::-webkit-details-marker{display:none}.row-number{font-size:10px;color:#8b7995;width:20px;flex-shrink:0}.expertise-row h3{font-size:24px;line-height:1.3;letter-spacing:-.035em;flex:1}.row-plus{font-size:25px;font-weight:300;transition:transform .25s;color:var(--brand)}.expertise-row[open] .row-plus{transform:rotate(45deg)}.expertise-row[open] h3{color:var(--brand)}.expertise-row-content{padding:0 25px 28px 42px;animation:row-in .3s ease}.expertise-row-content p{font-size:14px;max-width:380px}.expertise-row-content .arrow-link{font-size:11px;margin-top:15px}.expertise-row:hover h3{color:var(--brand)}.service-grid{grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}.listing-section .service-card{background:white;border:0;border-bottom:1px solid var(--line);border-radius:0;min-height:0;display:grid;grid-template-columns:90px 1fr 1fr 100px;gap:30px;padding:35px 0;align-items:center}.service-card:hover{box-shadow:none;transform:none}.service-card .card-top{margin:0}.service-card .card-arrow{display:none}.service-card h2{font-size:31px;margin:0;max-width:none}.service-card p{margin:0;font-size:14px}.service-card .card-label{margin:0;text-align:right;font-size:10px}.perspective-section{grid-template-columns:1.12fr 1fr;min-height:560px;background:var(--navy-dark)}.perspective-copy h2{font-family:var(--font);font-size:clamp(36px,3.9vw,58px);letter-spacing:-.05em;line-height:1.08}.perspective-copy .eyebrow{color:#dbc6e0}.perspective-copy p{color:#c8becf}.perspective-copy{padding:70px}.people-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.person-card{border:0;border-radius:0;background:white}.person-card[href]:hover{transform:none}.person-card .portrait{background:#efebf1;aspect-ratio:1/.95;transition:background .3s}.person-card:nth-of-type(3n+2) .portrait{background:#e7e4ea}.person-card:hover .portrait{background:#ded3e3}.portrait .initials{font-size:80px;font-family:var(--editorial);font-weight:400;color:#9d8ba7;letter-spacing:-.07em;z-index:1}.portrait-pattern{position:absolute;width:130%;height:65%;border:1px solid #d2c7d8;transform:rotate(-28deg);bottom:-18%;left:-15%;transition:transform .6s}.person-card:hover .portrait-pattern{transform:rotate(-18deg) translateY(-15px)}.portrait-arrow{background:var(--brand);color:white;width:34px;height:34px;font-size:16px;border-radius:0;transition:transform .25s}.person-card:hover .portrait-arrow{transform:translate(3px,-3px)}.person-content{padding:24px 0 12px}.person-content h2{font-size:23px}.person-role{font-size:11px!important;color:var(--muted);margin-bottom:14px}.person-content .card-label{font-size:10px;color:var(--brand);margin-top:14px}.people-preview-grid .person-content h2{font-size:20px}.article-card{border:0;border-radius:0}.article-card:hover{transform:none}.article-image{border-radius:2px;aspect-ratio:1.6;background:var(--paper)}.article-card-content{padding:24px 0 10px;border-bottom:1px solid var(--line)}.article-meta{font-size:9px;color:var(--brand)}.article-card h3{font-size:26px;line-height:1.2}.article-card p{font-size:13px}.article-card .arrow-link{font-size:11px}.article-card:hover h3{color:var(--brand)}.office-strip{padding-top:30px;border-top:1px solid var(--line)}.office-strip>div{display:flex;gap:50px;flex-wrap:wrap}.office-strip>div>a{font-size:32px;letter-spacing:-.035em;display:flex;align-items:center;gap:25px}.office-strip>div>a>span{font-size:20px;color:var(--brand);transition:transform .2s}.office-strip>div>a:hover>span{transform:translate(3px,-3px)}.contact-cta h2{font-family:var(--font);font-size:clamp(36px,4vw,60px);letter-spacing:-.05em}.site-footer{background:var(--navy-dark)}.footer-logo{filter:brightness(0) invert(1);width:220px}.footer-top p{color:#afa6b6}.footer-contact .eyebrow{color:#cab7d1}.footer-bottom{border-color:#39323f;color:#afa6b6}.office-list .office-card{border:0;border-radius:0;background:white;border-top:1px solid var(--line);padding:25px 0}.page-intro h1{letter-spacing:-.055em}.detail-aside{border-color:var(--brand)}.filter-form>div{min-width:150px}.cookie-banner{border-radius:8px}.profile-dialog{padding:0;border:0;border-radius:8px;width:min(850px,calc(100% - 40px));max-height:calc(100svh - 40px);color:var(--ink);overflow:auto}.profile-dialog::backdrop{background:#17121ec2;backdrop-filter:blur(5px)}.profile-close{position:absolute;right:16px;top:16px;z-index:2;background:white;border:1px solid var(--line);width:38px;height:38px}.profile-dialog-inner{display:grid;grid-template-columns:.8fr 1.2fr}.profile-dialog-portrait{position:relative;min-height:440px;background:#ebe5ee;overflow:hidden}.profile-dialog-portrait .initials{font-size:110px;color:#9f8eaa;letter-spacing:-.06em}.profile-dialog-portrait img{width:100%;height:100%;object-fit:cover;object-position:top}.profile-dialog-content{padding:55px 40px 40px}.profile-dialog-content h2{font-size:36px;margin-bottom:15px}.profile-role{font-size:14px;color:var(--brand);margin-bottom:20px}.profile-bio{font-size:14px;line-height:1.8;white-space:pre-line;margin-block:20px}.profile-contact{display:grid;gap:5px;font-size:13px;margin-block:22px;overflow-wrap:anywhere}.vcard-actions{display:flex;gap:10px;flex-wrap:wrap;margin-block:25px}.vcard-actions .button{font-size:11px;padding:12px 16px;gap:10px;min-height:44px}.profile-dialog-content>.arrow-link{font-size:11px}.profile-page-layout{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:8%;margin-top:40px;align-items:start}.profile-page-portrait{background:#ebe5ee;position:relative;min-height:460px}.profile-page-portrait img{width:100%;height:100%;object-fit:cover}.profile-page-portrait .initials{font-size:140px;color:#9f8eaa;letter-spacing:-.06em}.profile-page h1{font-size:60px}.profile-page .profile-role{margin-top:20px;font-size:18px}.profile-office{font-size:13px}.error-page h1{font-family:var(--font);letter-spacing:-.06em}.error-number{color:#f1edf3}.site-header{transition:box-shadow .25s}.site-header.is-scrolled{box-shadow:0 3px 25px #19161e10}.reading-progress{position:fixed;top:0;left:0;height:3px;background:var(--brand);width:0;z-index:80;pointer-events:none}
.button.secondary{background:transparent;color:var(--ink);border-color:#b9a9c2}.button.secondary:hover{background:#efe6f2}.button.danger{background:#a12e35;border-color:#a12e35}.button.danger:hover{background:#82252b}.expertise-heading h2{white-space:pre-line}.hero-image{mask-image:linear-gradient(90deg,transparent,black 25%)}.email-preview-page{background:var(--paper);min-height:100svh;padding:40px 20px}.email-preview-controls{max-width:620px;margin:0 auto 24px;font-size:13px}.email-preview-sheet{max-width:620px;margin:auto;background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.email-preview-sheet>header{padding:30px;border-bottom:3px solid var(--brand)}.email-preview-sheet>div{padding:35px}.email-preview-sheet h1{font-size:22px;letter-spacing:-.02em;margin-bottom:25px}.email-preview-text{white-space:pre-line;font-size:15px;line-height:1.8}.email-preview-sheet>footer{padding:22px 35px;font-size:11px;color:var(--muted);background:#faf8fb}.email-preview-sheet .button[disabled]{opacity:.7;cursor:default;margin-top:20px}.auth-header .brand-logo{width:200px}
.team-filters>summary{display:none}.team-filters .filter-form{margin-bottom:45px}.team-filters[open]>summary>span{transform:rotate(45deg)}
@media(max-width:600px){.team-intro h1{font-size:37px;max-width:330px}.team-intro{padding-bottom:32px}.team-filters{margin-bottom:28px;border-bottom:1px solid var(--line)}.team-filters>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px;font-weight:600;padding:0 0 20px}.team-filters>summary::-webkit-details-marker{display:none}.team-filters>summary>span{font-size:22px;color:var(--brand);transition:transform .2s}.team-filters .filter-form{margin-bottom:25px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.team-grid .portrait{aspect-ratio:1}.team-grid .initials{font-size:52px}.team-grid .person-content{padding-top:18px}.team-grid .person-content h2{font-size:19px;line-height:1.2}.team-grid .person-role{font-size:10px!important}.team-grid .portrait-arrow{width:28px;height:28px;right:12px;bottom:12px}}
@keyframes row-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(min-width:1800px){.hero{min-height:760px}.hero h1{font-size:116px}.hero-content{padding-block:110px 145px}}
@media(max-width:1100px){.site-nav{gap:24px}.brand-logo{width:200px}.expertise-layout{gap:7%}.perspective-copy{padding:45px}.people-preview-grid{gap:20px}.listing-section .service-card{grid-template-columns:45px 1fr 1fr;gap:25px}.service-card .card-label{display:none}.office-strip>div{gap:30px}.office-strip>div>a{font-size:28px}}
@media(max-width:900px){.site-header{min-height:88px}.site-nav.is-open{gap:0}.site-nav .nav-contact{margin-top:12px;padding-inline:20px}.hero{min-height:610px}.hero h1{font-size:clamp(65px,9.5vw,83px)}.hero-image{width:100%}.hero-shade{background:linear-gradient(90deg,#19161ef2,#19161ea6 62%,#19161e33)}.firm-section{gap:7%;padding-block:75px}.firm-copy .lead{font-size:17px}.expertise-layout{grid-template-columns:1fr 1.25fr;gap:6%}.expertise-row summary{gap:15px}.expertise-row h3{font-size:21px}.expertise-row-content{padding-left:35px}.expertise-heading h2{font-size:35px}.perspective-copy h2{font-size:37px}.perspective-copy{padding:35px}.people-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.people-preview-grid .person-content h2{font-size:24px}.listing-section .service-card{grid-template-columns:30px 1fr;gap:18px}.service-card p{grid-column:2}.service-card h2{font-size:29px}.office-strip>div{gap:30px 40px}.office-strip>div>a{font-size:30px}.profile-page-layout{grid-template-columns:.9fr 1fr;gap:6%}.profile-page h1{font-size:45px}.profile-page-portrait{min-height:380px}}
@media(max-width:600px){.brand-logo{width:185px}.site-header{min-height:82px}.hero{min-height:650px;max-height:none}.hero h1{font-size:clamp(55px,14.5vw,80px);letter-spacing:-.065em}.hero-content{padding-block:80px 125px}.hero-description{font-size:14px;max-width:290px}.hero-image{object-position:67% center;opacity:.65}.hero-shade{background:linear-gradient(90deg,#19161ef2,#19161e70)}.hero .eyebrow{font-size:8px}.firm-section{grid-template-columns:1fr;padding-block:65px;gap:25px}.firm-heading h2{font-size:42px}.firm-copy{padding:0}.expertise-layout{grid-template-columns:1fr;gap:36px}.expertise-heading{position:static}.expertise-heading h2{font-size:40px}.expertise-heading>p:not(.eyebrow){max-width:330px}.discipline-count{display:none}.expertise-heading .arrow-link{margin-top:15px}.expertise-row h3{font-size:23px}.expertise-row summary{padding-block:23px;gap:14px;min-height:85px}.expertise-row-content{padding-left:34px}.expertise-row-content p{font-size:13px}.perspective-section{grid-template-columns:1fr}.perspective-copy{padding:45px 24px 55px}.perspective-copy h2{font-size:40px}.perspective-section>img{height:300px;min-height:0}.people-preview-grid{gap:25px 16px}.people-preview-grid .person-content h2{font-size:19px;line-height:1.2}.people-preview-grid .person-content{padding-top:18px}.people-preview-grid .person-role{font-size:10px!important}.people-preview-grid .portrait .initials{font-size:52px}.people-preview-grid .portrait-arrow{width:28px;height:28px;right:12px;bottom:12px}.article-card h3{font-size:28px}.article-grid{gap:38px}.office-strip>div{gap:22px;display:grid;grid-template-columns:1fr 1fr}.office-strip>div>a{font-size:23px;gap:12px}.office-strip .eyebrow{max-width:280px;line-height:1.8}.contact-cta h2{font-size:42px}.service-card h2{font-size:27px}.listing-section .service-card{padding-block:28px;gap:15px;grid-template-columns:25px 1fr}.service-card p{font-size:13px}.footer-logo{width:205px}.filter-form>div{min-width:100%}.profile-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px)}.profile-dialog-inner{grid-template-columns:1fr}.profile-dialog-portrait{min-height:210px;height:210px}.profile-dialog-portrait img{object-position:top 20%;object-fit:cover}.profile-dialog-portrait .initials{font-size:85px}.profile-dialog-content{padding:28px}.profile-dialog-content h2{font-size:32px}.profile-dialog-content .eyebrow{margin-bottom:15px}.profile-page-layout{grid-template-columns:1fr;gap:35px}.profile-page-portrait{min-height:360px}.profile-page h1{font-size:44px}.profile-bio{font-size:14px}.cookie-actions .button:last-child{background:var(--brand);border-color:var(--brand)}.error-page h1{font-size:47px}}
@media(prefers-reduced-motion:reduce){.expertise-row-content{animation:none}.portrait-pattern{transition:none}}

/* composition.css */
/* One page grid connects every public section, including very wide screens. */
:root{--gutter:max(var(--space),calc((100vw - var(--max))/2))}
html{max-width:100%;scrollbar-gutter:stable;overflow-x:clip}body{width:100%;max-width:100%;margin:0;overflow-x:clip}main,section,article,header,footer,aside,nav,form{min-width:0}img{min-width:0}.hero,.page-banner,.perspective-section{width:100%;max-width:100%}
.wrap{width:auto;max-width:none;margin-inline:var(--gutter)}
.site-header{padding-inline:var(--gutter)}
.hero-content{width:calc(100% - var(--gutter)*2)}
.hero-scroll{left:var(--gutter)}.hero-location{right:var(--gutter)}
.hero-image{width:100%;mask-image:none}.hero-shade{background:linear-gradient(90deg,#19161ef5 0%,#19161ed4 30%,#19161e70 63%,#19161e1a)}
.firm-section,.expertise-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8%}
.perspective-copy{padding:80px var(--gutter) 80px clamp(40px,5vw,90px)}
.expertise-thumbnail{width:96px;height:70px;object-fit:cover;flex-shrink:0;filter:saturate(.7);transition:filter .3s,transform .3s}
.expertise-row summary{gap:18px;padding-block:22px}.expertise-row:hover .expertise-thumbnail,.expertise-row[open] .expertise-thumbnail{filter:saturate(1);transform:scale(1.03)}.expertise-row h3{font-size:23px}.expertise-row-content{padding-left:151px}
.listing-section .service-card{grid-template-columns:190px 26px minmax(0,1.2fr) minmax(0,1fr) 86px;gap:24px;padding-block:28px}.expertise-list-image{width:190px;height:140px;object-fit:cover;transition:filter .3s;filter:saturate(.65)}.service-card:hover .expertise-list-image{filter:saturate(1)}.listing-section .service-card h2{font-size:30px}.listing-section .service-card p{grid-column:auto}.service-card .card-label{display:block}
.page-banner{position:relative;isolation:isolate;min-height:440px;color:white;background:var(--navy-dark);overflow:hidden;display:flex;align-items:center}
.page-banner-image,.page-banner-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.page-banner-image{object-fit:cover;object-position:center 43%;filter:saturate(.65)}.page-banner-shade{z-index:-1;background:linear-gradient(90deg,#19161eee 10%,#19161ed4 42%,#19161e70 75%,#19161e40)}.page-banner-content{padding-block:75px;position:relative;z-index:1;width:calc(100% - var(--gutter)*2)}.page-banner .eyebrow{color:#d8bde1;margin-bottom:23px}.page-banner h1{font-size:clamp(44px,4.6vw,72px);max-width:1000px;white-space:pre-line;line-height:1.07;letter-spacing:-.055em}.page-banner .lead{color:#ded6e3;font-size:17px;line-height:1.75;max-width:660px;margin-top:24px}.page-banner .byline{color:#d5c7dc;margin-top:25px;font-size:11px}.page-banner-index{position:absolute;bottom:-45px;right:var(--gutter);width:85px;height:330px;background:#670b703d;transform:skewY(-14deg);pointer-events:none;z-index:0}.page-banner-index span{display:none}.service-offerings{padding:0;list-style:none;margin-top:28px}.service-offerings li{padding:19px 0 19px 28px;border-bottom:1px solid var(--line);font-size:17px;position:relative}.service-offerings li::before{content:'↗';position:absolute;left:0;color:var(--brand);font-size:15px}.service-offerings li:first-child{border-top:1px solid var(--line)}
.person-card{min-width:0;cursor:pointer;position:relative}.person-card:hover .portrait{background:#ded3e3}.person-card:hover .portrait-arrow{transform:translate(3px,-3px)}.person-card:hover .portrait-pattern{transform:rotate(-18deg) translateY(-15px)}.person-card:hover h2{color:var(--brand)}.person-card:has(.profile-trigger:focus-visible){outline:3px solid var(--brand);outline-offset:5px}.person-overview{font-size:12px!important;line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px;color:var(--muted)}.profile-trigger{padding:0;background:none;min-height:44px;text-align:left;font-size:11px;font-weight:600;color:var(--brand);display:flex;align-items:center;gap:16px}.employee-expanded{grid-column:1/-1;position:relative;background:#f3eef5;border-top:2px solid var(--brand);padding:38px 50px 38px 35px;animation:row-in .25s ease;scroll-margin-block:25px;outline:none}.employee-expanded-inner{display:grid;grid-template-columns:1fr 1.5fr;gap:45px}.employee-expanded h2{font-size:34px;margin-bottom:16px}.employee-expanded .eyebrow{font-size:9px;margin-bottom:18px}.employee-expanded .profile-bio{margin-top:0;font-size:15px}.employee-close{position:absolute;right:12px;top:12px;background:white;width:35px;height:35px}.employee-expanded .vcard-actions{margin-top:22px}.people-preview-grid>.employee-expanded{grid-column:1/-1}
.article-image{width:100%;aspect-ratio:1.6;flex-shrink:0}.article-card h3{min-height:3.6em}.article-card p{flex:1}.contact-cta{background:var(--brand);color:white}.contact-cta .eyebrow{color:#ddc2e5}.contact-cta>.wrap>div{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-cta .button{background:white;color:var(--brand);border-color:white;flex-shrink:0}.contact-cta h2{max-width:800px}.contact-cta>.wrap{display:block}
.profile-page .page-banner{margin-bottom:0}.profile-page-layout{margin-block:60px 0}
.error-page{position:relative;color:white;min-height:590px;margin:0;padding:90px var(--gutter);overflow:hidden;background:var(--navy-dark)}.error-page::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#19161ef2,#19161e75),url('/static/hero.webp') center/cover;z-index:-2}.error-page>p:not(.eyebrow){color:#ded6e3}.error-page .eyebrow{color:#d8bde1}.error-number{right:var(--gutter);color:#ffffff0a}.error-page .button{background:white;border-color:white;color:var(--brand)}
@media(min-width:1800px){.site-header{padding-inline:var(--gutter)}.page-banner{min-height:510px}}
@media(max-width:1100px){.expertise-thumbnail{width:78px;height:65px}.expertise-row summary{gap:13px}.expertise-row h3{font-size:21px}.expertise-row-content{padding-left:125px}.listing-section .service-card{grid-template-columns:160px 22px minmax(0,1fr) minmax(0,1fr);gap:20px}.expertise-list-image{width:160px;height:135px}.service-card .card-label{display:none}.listing-section .service-card h2{font-size:27px}.perspective-copy{padding:55px var(--gutter) 55px 40px}}
@media(max-width:900px){.expertise-layout{grid-template-columns:1fr;gap:40px}.expertise-heading{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.expertise-heading .eyebrow{grid-column:1/-1}.expertise-heading h2{grid-row:2/4;grid-column:1}.expertise-heading>p:not(.eyebrow){grid-column:2;grid-row:2}.expertise-heading>.arrow-link{grid-column:2;grid-row:3;justify-self:start;margin-top:10px}.discipline-count{display:none}.expertise-thumbnail{width:110px;height:74px}.expertise-row h3{font-size:26px}.expertise-row-content{padding-left:157px}.page-banner{min-height:410px}.page-banner h1{font-size:56px}.page-banner-content{padding-block:65px}.listing-section .service-card{grid-template-columns:150px 22px minmax(0,1fr);gap:18px}.listing-section .service-card h2{font-size:28px}.listing-section .service-card p{grid-column:3}.expertise-list-image{grid-row:1/3;width:150px;height:150px}.service-card .card-top{align-self:start;padding-top:7px}.contact-cta>.wrap>div{align-items:flex-start;flex-direction:column;gap:28px}.article-card h3{min-height:0}.perspective-copy{padding:45px 35px}.error-page{padding-block:75px}}
@media(max-width:600px){.firm-section{grid-template-columns:1fr;gap:26px}.expertise-layout{grid-template-columns:1fr}.expertise-heading{display:block}.expertise-heading h2{margin-bottom:20px}.expertise-heading>.arrow-link{margin-top:15px}.expertise-thumbnail{width:75px;height:63px}.expertise-row summary{gap:12px;padding-block:20px}.expertise-row h3{font-size:20px}.row-number{width:17px;font-size:9px}.row-plus{font-size:22px}.expertise-row-content{padding-left:0;padding-bottom:24px}.expertise-row-content p{max-width:100%}.page-banner{min-height:390px}.page-banner-content{padding-block:55px}.page-banner h1{font-size:41px;line-height:1.08}.page-banner .lead{font-size:14px;max-width:315px;line-height:1.8;margin-top:22px}.page-banner .eyebrow{font-size:9px;margin-bottom:22px}.page-banner-index{width:45px;height:200px;right:24px}.listing-section .service-card{grid-template-columns:24px minmax(0,1fr);gap:15px;padding-block:25px}.expertise-list-image{grid-column:1/-1;grid-row:auto;width:100%;height:195px}.listing-section .service-card h2{font-size:27px}.listing-section .service-card p{grid-column:2}.service-card .card-top{padding-top:5px}.perspective-copy{padding:45px var(--gutter) 55px}.contact-cta h2{font-size:39px}.contact-cta>.wrap>div{gap:25px}.service-offerings li{font-size:15px;padding-block:16px}.error-page{padding-block:65px;min-height:560px}.profile-page-layout{margin-top:35px}.hero-shade{background:linear-gradient(90deg,#19161ee8,#19161e70)}.hero-image{object-position:65% center}.footer-top{gap:32px}}
@media(max-width:700px){.employee-expanded{padding:30px 24px}.employee-expanded-inner{grid-template-columns:1fr;gap:15px}.employee-expanded h2{font-size:29px;max-width:90%}.employee-expanded .profile-bio{font-size:13px}.person-overview{font-size:11px!important}}
.person-card{display:flex;flex-direction:column}.person-content{display:flex;flex-direction:column;flex:1}.person-overview{min-height:5.25em}.profile-trigger{margin-top:auto}.employee-close{width:44px;height:44px}.person-card .portrait{flex-shrink:0}.team-grid,.people-preview-grid,.article-grid{min-width:0;max-width:100%}
@media(max-width:600px){.person-content h2{min-height:2.4em}.person-role{min-height:2.8em}}

/* modern.css */
/* Public editorial design: one grid, generous typography, purposeful motion. */
@font-face{font-family:Manrope;src:url('/static/fonts/manrope-latin.woff2?v=e310b55a7fd9') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--font:Manrope,Arial,sans-serif;--editorial:Manrope,Arial,sans-serif;--max:1440px;--space:clamp(22px,5vw,88px);--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:110px}body{font-size:15px}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.site-header{position:sticky;top:0;min-height:94px;background:#fffffff5;backdrop-filter:blur(16px);transition:box-shadow .3s,padding .3s}.brand-logo{width:190px}.site-nav{font-size:12px;font-weight:600;gap:30px}.site-nav .nav-contact{border-radius:30px;padding:14px 22px;gap:24px}.site-header.is-scrolled{box-shadow:0 1px 0 var(--line),0 8px 30px #19161e08}.button{border-radius:30px;min-height:52px;padding:15px 24px;gap:32px}.button-arrow{font-size:20px;line-height:1}.round-arrow{width:42px;height:42px;border-radius:50%;border:1px solid #c7bacd;display:inline-grid;place-items:center;font-size:20px;flex-shrink:0;transition:background .25s,color .25s,transform .25s}.arrow-link:hover .round-arrow{background:var(--brand);color:white;border-color:var(--brand);transform:rotate(45deg)}.section-heading h2{font-size:clamp(36px,4.2vw,64px);letter-spacing:-.055em;max-width:700px}.section-heading-aside{max-width:300px}.section-heading-aside p{font-size:13px;line-height:1.9;margin-bottom:15px}.section-heading .eyebrow{font-size:9px}.section{padding-block:clamp(70px,8vw,128px)}
.modern-hero{min-height:calc(100svh - 94px);max-height:1050px;align-items:center}.modern-hero .hero-image{width:100%;mask-image:none;filter:saturate(.7);object-position:center}.modern-hero .hero-shade{background:linear-gradient(90deg,#19161ee8,#19161e70 65%,#19161e20),linear-gradient(0deg,#19161e90,transparent 35%)}.modern-hero .hero-content{padding-block:90px 150px}.modern-hero h1{font-size:clamp(60px,7.5vw,116px);max-width:1050px;line-height:1.03;letter-spacing:-.065em}.modern-hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;margin-bottom:30px;color:#f0d9f5}.hero-dot{height:7px;width:7px;border-radius:50%;background:#d9a0e6;box-shadow:0 0 0 6px #c181ce20}.hero-bottom-content{display:flex;align-items:flex-end;gap:60px;margin-top:36px}.modern-hero .hero-description{margin:0;max-width:390px;font-size:15px;line-height:1.85;color:#eee5f1}.hero-bottom-content .button{flex-shrink:0}.hero-rail{position:absolute;bottom:30px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #ffffff30;padding-top:24px}.scroll-cue{display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:.04em}.scroll-line{height:35px;width:1px;background:#ffffff40;overflow:hidden;position:relative}.scroll-line:after{content:'';position:absolute;inset:-100% 0 100%;background:white;animation:scroll-cue 2.4s ease-in-out infinite}.hero-offices{font-size:10px;color:#e5d9e9}.hero-offices i{padding-inline:12px;font-style:normal;color:#bc9bc6}
.firm-story{display:grid;grid-template-columns:1fr 2.3fr;gap:8%;align-items:start}.firm-story-label .eyebrow{font-size:9px}.founding-year{display:block;font-size:64px;letter-spacing:-.07em;line-height:1.2;color:#bbaac4;margin-top:55px}.founding-year>span{display:block;font-size:11px;letter-spacing:0;color:var(--muted);margin-top:10px}.firm-story-main h2{font-size:clamp(37px,4.2vw,64px);letter-spacing:-.055em;white-space:pre-line}.firm-story-copy{display:grid;grid-template-columns:1.5fr 1fr;gap:55px;margin-top:35px;align-items:end}.firm-story-copy p{font-size:15px;line-height:1.9}.firm-story-copy .arrow-link{justify-self:end;font-size:12px;gap:18px}
.expertise-experience{background:#f5f2f6}.expertise-explorer{display:grid;grid-template-columns:1fr 1.25fr;gap:5%;align-items:stretch;margin-top:55px}.expertise-tabs{display:flex;flex-direction:column;justify-content:center;min-width:0}.expertise-tab{display:flex;align-items:center;gap:16px;min-height:100px;padding:18px 0;border-top:1px solid #d5cadb;background:none;text-align:left;transition:color .25s,border-color .25s}.expertise-tab:last-child{border-bottom:1px solid #d5cadb}.expertise-tab-number{font-size:9px;color:#8a7594;width:20px;flex-shrink:0}.expertise-tab img{width:66px;height:54px;object-fit:cover;border-radius:4px;filter:grayscale(1);opacity:.7;transition:filter .35s,opacity .35s}.expertise-tab-title{font-size:clamp(17px,1.65vw,25px);line-height:1.3;letter-spacing:-.035em;flex:1}.expertise-tab-arrow{font-size:22px;color:var(--brand);transition:transform .3s}.expertise-tab.is-active,.expertise-tab:hover{color:var(--brand)}.expertise-tab.is-active img,.expertise-tab:hover img{filter:none;opacity:1}.expertise-tab.is-active .expertise-tab-arrow{transform:translate(3px,-3px)}.expertise-panels{min-width:0;position:relative}.expertise-feature-panel{position:relative;min-height:630px;height:100%;color:white;overflow:hidden;border-radius:8px;isolation:isolate;animation:feature-in .45s var(--ease)}.expertise-feature-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.expertise-feature-shade{position:absolute;inset:0;background:linear-gradient(0deg,#19161ef5,#19161e25 90%);z-index:-1}.expertise-feature-content{padding:40px;display:flex;flex-direction:column;justify-content:space-between;min-height:630px;height:100%}.feature-index{font-size:11px;letter-spacing:.1em}.expertise-feature-content h3{font-size:clamp(30px,3vw,44px);letter-spacing:-.04em;margin-bottom:20px}.expertise-feature-content p{color:#e9dfed;font-size:13px;line-height:1.9;max-width:420px;margin-bottom:30px}.expertise-feature-content .button{font-size:11px}
.perspective-film{position:relative;isolation:isolate;overflow:hidden;color:white;min-height:620px;display:flex;align-items:center}.perspective-film>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.perspective-film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#19161ee6,#19161e40);z-index:-1}.perspective-film>.wrap{width:calc(100% - var(--gutter)*2);padding-block:90px;position:relative}.perspective-film .eyebrow{color:#dfc5e7;font-size:9px}.perspective-film h2{font-size:clamp(40px,5.3vw,80px);line-height:1.15;letter-spacing:-.055em;max-width:1100px}.perspective-film h2>span{color:#e3d6e9}.round-action{display:grid;place-items:center;width:95px;height:95px;border-radius:50%;border:1px solid #ffffff70;font-size:45px;transition:background .3s,transform .3s}.round-action:hover{background:#ffffff20;transform:rotate(45deg)}.perspective-film .round-action{margin-top:45px}.people-experience{background:#faf8fb}.people-experience .person-card{background:none}.person-card .portrait{border-radius:6px;overflow:hidden}.portrait .initials{font-weight:300}.portrait-arrow{border-radius:50%;width:40px;height:40px}.person-content h2,.people-preview-grid .person-content h2{font-size:21px;line-height:1.25;letter-spacing:-.035em}.person-overview{font-size:12px!important;line-height:1.8}.profile-trigger{font-size:11px;gap:10px}.person-card:focus-visible{outline:3px solid var(--brand);outline-offset:8px}.person-card:hover .profile-trigger{gap:18px}.profile-trigger{transition:gap .25s}.knowledge-editorial{display:grid;grid-template-columns:1.2fr 1fr;gap:7%}.knowledge-lead-image{position:relative;aspect-ratio:1.35;overflow:hidden;border-radius:6px;margin-bottom:25px}.knowledge-lead-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.knowledge-lead:hover img{transform:scale(1.04)}.knowledge-lead-image .round-arrow{position:absolute;bottom:20px;right:20px;background:white;border:0;width:48px;height:48px;color:var(--brand)}.knowledge-lead h3{font-size:clamp(28px,3vw,43px);letter-spacing:-.045em;margin-top:18px;line-height:1.2}.knowledge-shortlist{display:flex;flex-direction:column}.knowledge-row{display:block;border-top:1px solid var(--line);padding:25px 0}.knowledge-row .eyebrow{font-size:8px;margin-bottom:16px}.knowledge-row h3{font-size:24px;letter-spacing:-.035em;margin-bottom:15px}.knowledge-row p{font-size:12px;line-height:1.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.knowledge-row .arrow-link{font-size:10px;margin-top:8px}.knowledge-row:hover h3,.knowledge-lead:hover h3{color:var(--brand)}.knowledge-all{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;font-size:15px;margin-top:auto}.office-strip{padding-bottom:85px}.office-strip>div{justify-content:space-between;gap:24px}.office-strip>div>a{font-size:clamp(24px,2.8vw,42px);gap:30px}.modern-contact-cta{position:relative;overflow:hidden}.modern-contact-cta h2{font-size:clamp(48px,6.5vw,100px);max-width:1000px;line-height:1.08}.modern-contact-cta>.wrap>div{flex-direction:row;align-items:center}.modern-contact-cta .round-action{flex-shrink:0;width:110px;height:110px}.cta-email{margin-top:45px;font-size:15px;color:#eee0f2}.cta-email a{border-bottom:1px solid #ffffff60;padding-bottom:7px}.cta-brand-bar{position:absolute;right:-30px;bottom:-170px;width:100px;height:400px;background:#ffffff08;transform:rotate(25deg);pointer-events:none}
.page-banner{min-height:460px}.page-banner h1{font-family:var(--font);font-weight:500;max-width:1100px;font-size:clamp(44px,5vw,78px);line-height:1.1}.page-banner-content{padding-block:85px}.page-banner-index{display:none}.page-banner .lead{font-size:15px;max-width:640px}.page-banner-image{animation:hero-image 1.2s var(--ease) both}.back-link{font-size:12px;display:inline-flex;align-items:center;min-height:44px;color:var(--brand);border-bottom:1px solid var(--line);margin-bottom:10px}.profile-page-layout{grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:9%;margin-top:40px}.profile-page-portrait{border-radius:6px;min-height:380px;display:grid;place-items:center;overflow:hidden;aspect-ratio:5/6}.profile-page-portrait .initials{position:static;font-family:var(--font);font-weight:300;font-size:110px}.profile-page-portrait img{width:100%;height:100%;object-fit:cover;object-position:top}.profile-identity-details{padding-top:28px}.profile-identity-details h2{font-size:27px;line-height:1.2}.profile-page .profile-role{font-size:14px;margin-top:12px;margin-bottom:12px}.profile-full-content>h2{font-size:clamp(32px,3.5vw,50px);margin-bottom:30px}.profile-introduction{font-size:20px;line-height:1.8;margin-bottom:30px}.profile-connect{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.profile-full-content .prose{font-size:15px;line-height:1.9}.reading-progress{transform-origin:left;width:100%;transform:scaleX(0)}.page-loading{position:fixed;top:0;left:0;height:3px;background:var(--brand);width:100%;transform:scaleX(0);transform-origin:left;z-index:90;pointer-events:none}.is-loading .page-loading{animation:loading-progress 1.5s ease-out both}.will-reveal{transform:translateY(30px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.will-reveal.is-visible{transform:none}.people-preview-grid>.reveal:nth-child(2){transition-delay:.06s}.people-preview-grid>.reveal:nth-child(3){transition-delay:.12s}.people-preview-grid>.reveal:nth-child(4){transition-delay:.18s}
@keyframes feature-in{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes scroll-cue{to{transform:translateY(200%)}}@keyframes loading-progress{0%{transform:scaleX(.08)}100%{transform:scaleX(.92)}}
@media(min-width:1800px){.modern-hero{min-height:850px}.modern-hero h1{font-size:116px}}
@media(max-width:1100px){.expertise-tab{gap:10px}.expertise-tab img{width:50px;height:46px}.expertise-feature-content{padding:30px}.firm-story-copy{gap:25px;grid-template-columns:1fr}.firm-story-copy .arrow-link{justify-self:start}.knowledge-row h3{font-size:21px}.expertise-feature-panel,.expertise-feature-content{min-height:620px}}
@media(max-width:900px){.site-header{min-height:82px}.site-nav .nav-contact{border-radius:5px}.modern-hero{min-height:720px;max-height:none}.modern-hero h1{font-size:clamp(60px,8.8vw,85px)}.hero-bottom-content{gap:35px}.hero-offices{display:none}.firm-story{grid-template-columns:1fr 2.4fr;gap:7%}.founding-year{font-size:48px}.expertise-explorer{grid-template-columns:1fr 1.1fr;gap:4%}.expertise-tab img{display:none}.expertise-tab{min-height:93px}.expertise-tab-title{font-size:20px}.expertise-feature-content{padding:28px;min-height:560px}.expertise-feature-panel{min-height:560px}.expertise-feature-content h3{font-size:30px}.expertise-feature-content p{font-size:12px}.expertise-feature-content .button{gap:16px;font-size:10px}.perspective-film{min-height:530px}.knowledge-editorial{gap:6%;grid-template-columns:1.1fr 1fr}.knowledge-lead h3{font-size:30px}.modern-contact-cta .round-action{width:85px;height:85px}.profile-page-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:6%}.profile-page-portrait{min-height:300px}.profile-page-portrait .initials{font-size:85px}.page-banner{min-height:420px}.brand-logo{width:180px}}
@media(max-width:600px){html{scroll-padding-top:90px}.site-header{min-height:78px;padding-block:13px}.brand-logo{width:165px}.modern-hero{min-height:720px}.modern-hero .hero-content{padding-block:60px 140px}.modern-hero h1{font-size:clamp(47px,12.6vw,72px);letter-spacing:-.06em}.modern-hero .eyebrow{font-size:8px;line-height:1.8;margin-bottom:28px}.modern-hero .hero-image{opacity:1}.hero-bottom-content{display:block;margin-top:28px}.modern-hero .hero-description{font-size:13px;max-width:310px}.hero-bottom-content .button{margin-top:28px;font-size:11px}.hero-rail{bottom:24px;padding-top:20px}.scroll-cue{font-size:9px}.scroll-line{height:25px}.firm-story{grid-template-columns:1fr;gap:30px}.firm-story-label{display:flex;align-items:center;justify-content:space-between;gap:20px}.firm-story-label .eyebrow{max-width:130px;margin:0;line-height:1.8}.founding-year{margin:0;font-size:40px}.founding-year>span{font-size:9px;margin-top:3px}.firm-story-main h2{font-size:36px}.firm-story-copy{margin-top:25px;gap:18px}.firm-story-copy p{font-size:13px}.section-heading h2{font-size:37px}.section-heading-aside p{font-size:12px}.expertise-explorer{grid-template-columns:1fr;gap:25px;margin-top:30px}.expertise-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.expertise-tab{min-height:80px;gap:8px}.expertise-tab-title{font-size:14px;line-height:1.4}.expertise-tab-number{font-size:8px;width:15px}.expertise-tab-arrow{font-size:17px}.expertise-tab:nth-last-child(2){border-bottom:1px solid #d5cadb}.expertise-feature-panel,.expertise-feature-content{min-height:460px}.expertise-feature-content{padding:26px}.expertise-feature-content h3{font-size:32px}.expertise-feature-content p{font-size:12px}.expertise-feature-content .button{font-size:11px}.perspective-film{min-height:490px}.perspective-film>.wrap{padding-block:70px}.perspective-film h2{font-size:38px}.perspective-film .eyebrow{font-size:8px}.round-action{width:70px;height:70px;font-size:32px}.perspective-film .round-action{margin-top:35px}.person-content h2,.people-preview-grid .person-content h2{font-size:18px}.person-overview{font-size:11px!important}.profile-trigger{font-size:10px}.knowledge-editorial{grid-template-columns:1fr;gap:35px}.knowledge-lead h3{font-size:30px}.knowledge-row h3{font-size:24px}.knowledge-row{padding-block:25px}.knowledge-row p{font-size:12px}.knowledge-lead-image{aspect-ratio:1.4}.knowledge-all{padding-top:25px}.office-strip{padding-bottom:65px}.office-strip>div{gap:25px}.office-strip>div>a{font-size:23px;gap:15px}.modern-contact-cta h2{font-size:44px}.modern-contact-cta>.wrap>div{align-items:flex-start;gap:25px;flex-direction:column}.modern-contact-cta .round-action{width:70px;height:70px}.cta-email{margin-top:30px;font-size:13px}.page-banner{min-height:360px}.page-banner-content{padding-block:55px}.page-banner h1{font-size:40px;line-height:1.12}.page-banner .lead{font-size:13px}.page-banner .eyebrow{font-size:8px}.profile-page-layout{grid-template-columns:1fr;gap:40px;margin-top:30px}.profile-identity{display:grid;grid-template-columns:115px minmax(0,1fr);gap:22px;align-items:center}.profile-page-portrait{min-height:150px;aspect-ratio:4/5}.profile-page-portrait .initials{font-size:46px}.profile-identity-details{padding:0}.profile-identity-details h2{font-size:23px}.profile-page .profile-role{font-size:12px}.profile-office{font-size:11px}.profile-full-content>h2{font-size:34px;margin-bottom:22px}.profile-introduction{font-size:17px}.vcard-actions .button{border-radius:24px}.cookie-banner{border-radius:10px}.cookie-actions .button{border-radius:5px}.footer-logo{width:190px}}
@media(prefers-reduced-motion:reduce){.scroll-line:after,.page-banner-image,.expertise-feature-panel{animation:none}.will-reveal{opacity:1;transform:none}.page-loading{display:none}}

/* Editorial direction: expressive imagery, aligned surfaces, and a compact directory. */
:root{--surface:#f3f1ed;--paper:#f3f1ed;--ink:#242025;--muted:#69616a;--line:#ded9db;--max:1360px;--brand:#670b70;--radius:0px;--section-space:clamp(70px,8vw,120px);--header-height:90px;--editorial:Georgia,'Times New Roman',serif}
body{background:#fff;font-size:15px}html{scroll-padding-top:calc(var(--header-height) + 24px)}.wrap{width:min(calc(100% - 2*var(--space)),var(--max));max-width:var(--max);margin-inline:auto}.section{padding-block:var(--section-space)}h1,h2,h3{font-weight:500}em{font-family:var(--editorial);font-weight:400}a,button{touch-action:manipulation}.site-header{min-height:var(--header-height);padding-block:16px;gap:25px}.brand-logo{width:181px}.site-nav{gap:32px;font-size:11px}.site-nav .nav-contact{padding:13px 23px;background:var(--ink)}.site-nav .nav-contact:hover{background:var(--brand)}.site-header.is-scrolled{box-shadow:0 1px 0 #24202518}.eyebrow{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.14em;line-height:1.7}.section-marker{display:inline-block;width:7px;height:7px;background:var(--brand);flex-shrink:0}.button{border-radius:0;font-size:11px;letter-spacing:.015em;min-height:50px;padding:15px 23px;gap:28px}.button:hover{transform:none}.round-arrow{border-radius:50%}.section-heading{margin-bottom:50px}.section-heading h2{font-size:clamp(37px,4.5vw,67px);line-height:1.08;letter-spacing:-.055em}.section-heading .eyebrow{font-size:9px}.section-heading-aside{max-width:290px}.section-heading-aside p{font-size:12px}.arrow-link{font-size:11px}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--brand);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}.depth-scene{position:relative;overflow:hidden;isolation:isolate}.depth-image{will-change:transform;transform:translate3d(0,var(--depth-offset,0px),0) scale(1.12);transition:none!important}.signature-hero .hero-image,.header-visual .depth-image{animation:none!important}
/* The opening screen is a photographic poster, with a contrasting editorial second line. */
.signature-hero{min-height:calc(100svh - var(--header-height));max-height:1100px;color:#fff;display:flex;align-items:center;background:#25212d}.signature-hero .hero-image{width:100%;height:100%;inset:0;object-fit:cover;object-position:center;mask-image:none;filter:none;z-index:-3}.signature-hero .hero-shade{background:linear-gradient(90deg,#141321a8,transparent 80%),linear-gradient(0deg,#18131e90,transparent 50%)}.signature-hero .hero-content{padding-block:80px 145px;position:relative;width:min(calc(100% - 2*var(--space)),var(--max))}.signature-hero .eyebrow{color:#fff;font-size:9px;letter-spacing:.12em;gap:14px;display:flex;flex-wrap:wrap;margin-bottom:35px}.hero-divider{opacity:.5;padding-inline:5px}.signature-hero h1{font-family:var(--font);font-size:clamp(64px,7.8vw,126px);letter-spacing:-.065em;font-weight:500;line-height:1.05;max-width:1200px;white-space:normal}.signature-hero h1>span{display:block}.signature-hero h1 .hero-serif{font-family:var(--editorial);font-size:1.12em;font-weight:400;font-style:italic;letter-spacing:-.065em}.signature-hero .hero-bottom-content{margin-top:42px;display:flex;align-items:center;justify-content:space-between;gap:55px;max-width:1000px}.signature-hero .hero-description{margin:0;max-width:350px;font-size:13px;line-height:1.9;color:#f5eff6}.hero-explore{display:flex;align-items:center;gap:20px;flex-shrink:0;font-size:10px;line-height:1.6}.hero-explore-circle{display:grid;place-items:center;border:1px solid #ffffff90;border-radius:50%;width:80px;height:80px;font-size:32px;transition:background .35s,transform .35s}.hero-explore:hover .hero-explore-circle{background:white;color:var(--brand);transform:rotate(45deg)}.hero-rail{left:0;right:0;width:min(calc(100% - 2*var(--space)),var(--max));margin-inline:auto;bottom:26px;border-top:1px solid #ffffff50;display:flex;align-items:center;justify-content:space-between;padding-top:20px;gap:30px}.hero-offices{font-size:9px;color:#f5eff6}.hero-offices i{padding-inline:10px;font-style:normal}.hero-chapter{font-size:9px;color:#f5eff6}.scroll-cue{font-size:9px}.scroll-line{height:25px}.brand-ribbon{overflow:hidden;background:var(--brand);color:#fff;padding:24px 0}.brand-ribbon-track{display:flex;align-items:center;gap:45px;width:max-content;animation:ribbon-travel 42s linear infinite}.brand-ribbon-track span{font-family:var(--editorial);font-size:30px;font-style:italic;white-space:nowrap;letter-spacing:-.02em}.brand-ribbon-track i{font-family:var(--font);font-size:32px;font-style:normal;color:#d6b0dc}.brand-ribbon:hover .brand-ribbon-track{animation-play-state:paused}.firm-story{grid-template-columns:1fr 2.5fr;gap:8%;padding-block:130px}.firm-story-main h2{font-size:clamp(40px,4.7vw,70px);line-height:1.08}.firm-story-copy{margin-top:35px;grid-template-columns:1.6fr 1fr;gap:55px}.firm-story-copy p{font-size:13px;line-height:1.9}.firm-story-copy .arrow-link{font-size:11px}.founding-year{font-family:var(--editorial);font-style:italic;color:#86778b;font-size:72px}.founding-year>span{font-family:var(--font);font-style:normal;font-size:10px}.expertise-experience{background:var(--surface)}.expertise-explorer{gap:6%}.expertise-feature-panel{border-radius:0}.expertise-tab img{border-radius:0}.expertise-tab-title{font-size:clamp(18px,1.7vw,25px)}.expertise-tab{border-color:#d0c7d0}.expertise-tab:last-child{border-color:#d0c7d0}.expertise-feature-content{padding:38px}.expertise-feature-content h3{font-size:clamp(32px,3.5vw,48px)}.expertise-feature-content .button{border-radius:0}.expertise-feature-panel>img{transition:transform 1.2s var(--ease);transform:scale(1.04)}.expertise-feature-panel:hover>img{transform:scale(1.09)}.perspective-film{min-height:680px}.perspective-film>img{width:100%;height:100%;object-fit:cover}.perspective-film>.wrap{width:min(calc(100% - 2*var(--space)),var(--max));padding-block:100px}.perspective-film h2{font-size:clamp(42px,5.7vw,86px);line-height:1.12;max-width:1100px}.perspective-film h2>span{font-family:var(--editorial);font-style:italic;color:#f3e9f4;font-weight:400}.perspective-film-shade{background:linear-gradient(90deg,#201820ce,#20182025)}.people-experience{background:#fff}.people-experience .section-heading>div{max-width:800px}.knowledge-lead-image,.article-image{border-radius:0}.knowledge-lead h3{font-size:clamp(29px,3.2vw,44px)}.knowledge-row h3{font-size:24px}.knowledge-row .eyebrow{font-size:8px}.knowledge-shortlist{gap:0}.modern-contact-cta{background:var(--brand)}.modern-contact-cta h2{font-size:clamp(50px,7.5vw,112px);line-height:1.05}.modern-contact-cta .eyebrow{font-size:9px}.modern-contact-cta .round-action{width:110px;height:110px}.modern-contact-cta .cta-email{font-size:13px}.site-footer{background:#201b22}.footer-top{padding-bottom:65px}.footer-top p{max-width:260px;font-size:12px}.footer-signature{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px 65px;color:#e5d8e7;font-size:clamp(35px,6.3vw,96px);line-height:1.1;letter-spacing:-.055em}.footer-signature em{font-size:1.12em}.footer-signature a{font-family:var(--font);width:60px;height:60px;font-size:28px;display:grid;place-items:center;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0}.footer-bottom{font-size:10px}
/* Interior pages open with an editorial headline and an expansive image strip. */
.editorial-header{display:block;min-height:0;background:var(--surface);color:var(--ink);isolation:auto;overflow:hidden}.editorial-header .page-banner-content{width:min(calc(100% - 2*var(--space)),var(--max));padding-block:58px 55px}.editorial-header .eyebrow{color:var(--brand);margin-bottom:30px;font-size:9px}.header-edition{margin-left:auto;font-size:8px;color:var(--muted);font-weight:500;letter-spacing:.08em}.header-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.65fr);align-items:end;gap:7%}.editorial-header h1{font-size:clamp(45px,5.7vw,86px);letter-spacing:-.06em;line-height:1.06;max-width:1000px;font-weight:500;white-space:normal}.editorial-header h1>span{display:block}.editorial-header h1>span+span{font-family:var(--editorial);font-style:italic;font-weight:400;color:var(--brand);font-size:1.07em}.editorial-header .lead{max-width:320px;margin:0 0 5px;font-size:12px;line-height:1.9;color:var(--muted);border-top:1px solid #cfc6d0;padding-top:20px}.editorial-header .byline{color:var(--muted);font-size:10px}.header-visual{height:clamp(240px,29vw,440px);width:100%;background:var(--ink);overflow:hidden;position:relative;isolation:isolate}.header-visual .page-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;z-index:-2;filter:none}.header-image-shade{position:absolute;inset:0;background:linear-gradient(0deg,#18131e80,transparent 60%);z-index:-1}.header-photo-caption{position:absolute;bottom:25px;left:var(--gutter);font-size:9px;color:#fff;display:flex;align-items:center;gap:20px}.header-image-arrow{position:absolute;bottom:22px;right:var(--gutter);font-size:24px;color:#fff}.contact-page .header-visual{height:330px}.contact-page .header-visual img{object-position:center 58%}.people-page .header-visual img{object-position:center 44%}.people-page .header-visual{height:360px}.people-directory{padding-top:85px}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.directory-heading .eyebrow{margin-bottom:16px}.directory-heading h2{font-size:clamp(38px,4.7vw,66px);letter-spacing:-.06em}.directory-count{font-family:var(--editorial);font-size:48px;color:var(--brand);font-style:italic;line-height:1;display:flex;align-items:center;gap:16px}.directory-count>span{font-family:var(--font);font-size:10px;font-style:normal;color:var(--muted);letter-spacing:0}.team-filters{background:var(--surface);padding:25px 28px;margin-bottom:55px;border:0}.team-filters .filter-form{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:20px}.filter-form>div{min-width:0;max-width:none}.filter-form label{font-size:10px;margin-bottom:10px;font-weight:500}.filter-form select{min-width:0;width:100%;border:0;border-bottom:1px solid #c2b7c4;border-radius:0;background:transparent;font-size:11px;padding:10px 20px 10px 0;min-height:46px}.filter-form .button{min-height:46px;white-space:nowrap;font-size:10px;padding-inline:20px}.filter-reset{grid-column:1/-1;min-height:30px;justify-self:start}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 65px}.people-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 65px}.person-card{display:grid!important;grid-template-columns:125px minmax(0,1fr);gap:27px;align-items:center;padding:32px 0;border-top:1px solid var(--line);background:transparent!important;overflow:visible;cursor:pointer}.person-avatar{width:125px;aspect-ratio:1;position:relative;background:#f0e9f0;color:var(--brand);overflow:hidden;isolation:isolate;display:grid;place-items:center;flex-shrink:0}.person-avatar>img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .6s var(--ease);position:absolute;inset:0}.identity-monogram{font-size:44px;letter-spacing:-.09em;line-height:1;position:relative;z-index:1;font-weight:400;transition:transform .6s var(--ease)}.identity-orbit{position:absolute;border:1px solid #c8b4ce;border-radius:50%;width:150%;aspect-ratio:1;top:28%;left:-25%;transition:transform .8s var(--ease)}.identity-orbit:before{content:'';position:absolute;inset:18px;border:1px solid #d6c8d9;border-radius:50%}.identity-sign{position:absolute;bottom:10px;right:12px;letter-spacing:.12em;font-size:6px;color:#8b7191}.person-index{position:absolute;top:10px;left:12px;letter-spacing:.07em;font-size:7px;color:#8b7191}.person-content{display:flex;flex-direction:column;padding:0!important;min-width:0}.person-card .person-role{font-size:9px!important;line-height:1.5;color:var(--brand);margin:0 0 8px;min-height:0}.person-card .person-content h2,.people-preview-grid .person-content h2{font-size:25px;line-height:1.14;letter-spacing:-.04em;min-height:0;font-weight:500;margin:0 0 12px}.person-card .person-overview{font-size:11px!important;line-height:1.8;margin:0;min-height:0;-webkit-line-clamp:2;color:var(--muted)}.person-card .profile-trigger{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;margin-top:14px;color:var(--ink);min-height:32px;line-height:1.5;font-weight:500}.profile-circle{height:30px;width:30px;display:grid;place-items:center;border:1px solid #c9bace;border-radius:50%;font-size:16px;transition:background .25s,color .25s,transform .25s;flex-shrink:0}.person-card:hover .profile-circle{background:var(--brand);color:#fff;border-color:var(--brand);transform:rotate(45deg)}.person-card:hover .identity-monogram{transform:translateY(-4px)}.person-card:hover .identity-orbit{transform:translateY(-15px) rotate(30deg)}.person-card:hover .person-avatar>img{transform:scale(1.05)}.person-card:nth-child(4n+2) .person-avatar{background:#ece9e3;color:#79684f}.person-card:nth-child(4n+3) .person-avatar{background:#e5e9e6;color:#5b6a60}.person-card:nth-child(4n+4) .person-avatar{background:#e8e7ef;color:#666077}.team-grid>.person-card:first-child{grid-column:1/-1;grid-template-columns:270px minmax(0,1fr);gap:65px;padding-block:0 55px;border-top:0;margin-bottom:20px}.team-grid>.person-card:first-child .person-avatar{width:270px;background:var(--brand);color:#fff;aspect-ratio:1.1}.team-grid>.person-card:first-child .identity-monogram{font-size:100px;font-weight:300}.team-grid>.person-card:first-child .identity-orbit{border-color:#b46fbe;width:140%;top:30%;left:-20%}.team-grid>.person-card:first-child .identity-orbit:before{border-color:#94519e}.team-grid>.person-card:first-child .identity-sign,.team-grid>.person-card:first-child .person-index{color:#e9d5ec;font-size:8px}.team-grid>.person-card:first-child .person-content{max-width:620px}.team-grid>.person-card:first-child .person-content h2{font-size:clamp(32px,4.1vw,58px);margin-bottom:20px}.team-grid>.person-card:first-child .person-role{font-size:11px!important;margin-bottom:12px}.team-grid>.person-card:first-child .person-overview{font-size:14px!important}.team-grid>.person-card:first-child .profile-trigger{max-width:220px;margin-top:22px;font-size:11px}.team-grid>.person-card:first-child .profile-circle{width:42px;height:42px;font-size:20px}.people-statement{min-height:570px;display:flex;align-items:center;color:#fff}.people-statement>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.people-statement-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#241b24d9,#241b2420)}.people-statement>.wrap{padding-block:100px}.people-statement .eyebrow{color:#e2cbe6}.people-statement h2{font-size:clamp(44px,6.7vw,100px);letter-spacing:-.055em;line-height:1.05;margin-bottom:38px}.people-statement h2 em{font-size:1.12em}
/* One reusable location stage: matching geometry for every branch. */
.offices-section{background:var(--surface)}.office-introduction{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:10%;align-items:end;margin-bottom:50px}.office-introduction h2{font-size:clamp(40px,4.7vw,70px);letter-spacing:-.055em;line-height:1.08;white-space:pre-line}.office-introduction>.eyebrow{margin-bottom:22px}.office-introduction>p{font-size:13px;line-height:1.9;max-width:320px;padding-bottom:8px}.office-selector{display:flex;align-items:stretch;border-top:1px solid #cfc4d0;border-bottom:1px solid #cfc4d0;margin-bottom:30px;gap:0}.office-select{display:flex;align-items:center;gap:20px;position:relative;flex:1;min-width:0;padding:25px 20px 25px 0;min-height:105px;transition:color .25s}.office-tab-index{font-size:8px;color:#88758e;align-self:flex-start;padding-top:5px}.office-select>.office-tab-label{flex:1;min-width:0}.office-select strong{display:block;font-size:25px;font-weight:500;letter-spacing:-.04em;line-height:1.2}.office-select small{display:block;font-size:8px;line-height:1.7;color:var(--muted);margin-top:6px}.office-tab-arrow{font-size:20px;opacity:0;transform:translate(-6px,6px);transition:opacity .25s,transform .25s}.office-select:hover,.office-select[aria-selected=true]{color:var(--brand)}.office-select[aria-selected=true] .office-tab-arrow{opacity:1;transform:none}.office-select:after{content:'';height:3px;position:absolute;bottom:-1px;left:0;right:20px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.office-select[aria-selected=true]:after{transform:scaleX(1)}.office-scene{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);min-height:530px;background:#fff;scroll-margin-top:130px;animation:office-enter .5s var(--ease) both}.office-scene+.office-scene{margin-top:35px}.office-explorer.is-enhanced .office-scene{margin-top:0}.office-photograph{min-height:530px;background:#3b303d;isolation:isolate;position:relative;overflow:hidden}.office-photograph>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2}.office-photo-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#1c1722b0,transparent 60%)}.office-city-type{position:absolute;bottom:55px;left:38px;right:25px;font-family:var(--editorial);font-size:clamp(60px,6.7vw,102px);letter-spacing:-.055em;font-style:italic;color:white;line-height:1.05}.office-photo-label{position:absolute;bottom:30px;left:40px;font-size:8px;color:#f3e8f5;letter-spacing:.1em;text-transform:uppercase}.office-information{padding:35px 38px;display:flex;flex-direction:column;align-items:stretch;min-width:0}.office-information-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.office-information-top .eyebrow{margin:0;font-size:8px;color:#88758e}.office-location-dot{height:8px;width:8px;background:var(--brand);border-radius:50%;box-shadow:0 0 0 5px #670b700c}.office-information h3{font-size:31px;line-height:1.16;letter-spacing:-.04em;margin-bottom:23px;max-width:320px}.office-information address{font-size:12px;font-style:normal;line-height:1.85;color:var(--muted);white-space:pre-line;margin-bottom:24px}.office-contact-details{display:grid;gap:17px;margin-bottom:25px}.office-contact-details a{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.office-contact-details a>span,.office-hours>span{display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#857589;margin-bottom:4px}.office-contact-details a:hover{text-decoration:underline;text-underline-offset:4px}.office-hours{font-size:11px;white-space:pre-line;line-height:1.8;margin-bottom:22px}.office-actions{margin-top:auto;display:flex;align-items:flex-start;flex-direction:column;gap:8px}.office-actions .button{background:var(--ink);border-color:var(--ink);font-size:10px;min-height:46px;padding:13px 19px;gap:35px}.office-actions .button:hover{background:var(--brand);border-color:var(--brand)}.office-actions .arrow-link{font-size:9px}.enquiry-section{background:#fff;scroll-margin-top:110px}.enquiry-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12%;align-items:start}.enquiry-intro{position:sticky;top:140px}.enquiry-intro .eyebrow{font-size:9px}.enquiry-intro h2{font-size:clamp(40px,4.6vw,68px);line-height:1.08;letter-spacing:-.055em;margin-bottom:28px}.enquiry-intro h2 em{color:var(--brand)}.enquiry-intro>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:300px;margin-bottom:35px}.enquiry-intro>a{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:13px;padding-block:10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.enquiry-form{gap:26px}.enquiry-form label{font-size:11px;font-weight:500}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{border:0;border-bottom:1px solid #c6b9c9;border-radius:0;background:#f7f5f7;padding:14px;font-size:12px;min-height:50px}.enquiry-form textarea{min-height:160px}.enquiry-form .form-row{gap:24px}.enquiry-form .checkbox-row{font-size:10px;line-height:1.8}.enquiry-form .help{font-size:9px}.enquiry-form .button{min-width:180px}.profile-page{padding-top:55px}.profile-page .profile-page-portrait{border-radius:0;background:#eee6ef}.profile-page-portrait .initials{font-family:var(--font)}.profile-page-layout{margin-top:35px;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:10%}.profile-identity-details h2{font-size:26px}.profile-full-content>h2{font-size:45px;font-family:var(--editorial);font-style:italic;color:var(--brand)}.profile-full-content .profile-introduction{font-size:18px}.profile-connect{padding-top:30px}.vcard-actions .button{border-radius:0}.service-card,.article-card{transition:none}.listing-section .service-card h2{font-size:30px}.listing-section .expertise-list-image{border-radius:0}.cookie-banner{border-radius:0;border-top:3px solid var(--brand)}.cookie-dialog{border-radius:0}.cookie-actions .button{border-radius:0}
@keyframes ribbon-travel{to{transform:translateX(-50%)}}@keyframes office-enter{from{opacity:.3;transform:translateY(12px)}to{opacity:1;transform:none}}
@supports(animation-timeline:view()){.header-visual{animation:header-image-expand linear both;animation-timeline:view();animation-range:entry 0% entry 100%}@keyframes header-image-expand{from{clip-path:inset(0 3%)}to{clip-path:inset(0 0)}}}
@media(min-width:1800px){.signature-hero{min-height:820px}.signature-hero h1{font-size:126px}}
@media(max-width:1100px){.site-nav{gap:24px}.signature-hero h1{font-size:clamp(68px,8.7vw,104px)}.hero-chapter{display:none}.firm-story-copy{grid-template-columns:1fr;gap:22px}.firm-story-copy .arrow-link{justify-self:start}.team-grid,.people-preview-grid{gap:0 35px}.person-card{grid-template-columns:105px minmax(0,1fr);gap:20px}.person-avatar{width:105px}.person-card .person-content h2{font-size:22px}.office-select{gap:12px;padding-right:16px}.office-select strong{font-size:23px}.office-information{padding:30px}.office-information h3{font-size:27px}.office-scene{grid-template-columns:1.35fr 1fr}.enquiry-layout{gap:8%}.expertise-experience .section-heading-aside{max-width:270px}.firm-story{padding-block:100px}.team-grid>.person-card:first-child{gap:45px;grid-template-columns:240px minmax(0,1fr)}.team-grid>.person-card:first-child .person-avatar{width:240px}.header-layout{grid-template-columns:1.6fr .7fr;gap:6%}.editorial-header h1{font-size:clamp(46px,5.8vw,74px)}}
@media(max-width:900px){:root{--header-height:82px}.site-header{padding-block:13px}.site-nav.is-open{padding-inline:var(--space)}.site-nav .nav-contact{border-radius:0;font-size:14px;padding:15px 20px}.signature-hero{min-height:calc(100svh - var(--header-height));max-height:none}.signature-hero .hero-content{padding-block:85px 130px}.signature-hero h1{font-size:clamp(64px,8.6vw,86px)}.signature-hero .hero-bottom-content{margin-top:35px;gap:35px}.signature-hero .hero-description{font-size:12px;max-width:300px}.hero-explore-circle{width:66px;height:66px;font-size:27px}.hero-explore{gap:15px;font-size:9px}.hero-offices{display:none}.hero-chapter{display:block}.firm-story{grid-template-columns:1fr 2.4fr;gap:7%;padding-block:85px}.firm-story-main h2{font-size:43px}.founding-year{font-size:58px}.firm-story-label .eyebrow{font-size:8px}.expertise-feature-content{padding:28px}.expertise-feature-content h3{font-size:32px}.expertise-tab-title{font-size:20px}.perspective-film{min-height:570px}.perspective-film h2{font-size:55px}.team-filters{padding:22px}.team-filters .filter-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 25px}.filter-form .button{grid-column:1/-1;justify-self:start}.filter-reset{grid-column:auto}.team-grid,.people-preview-grid{gap:0 30px}.person-card{grid-template-columns:85px minmax(0,1fr);gap:18px;padding-block:28px;align-items:start}.person-avatar{width:85px;aspect-ratio:.8}.identity-monogram{font-size:34px}.person-card .person-content h2{font-size:21px}.person-card .person-role{font-size:8px!important}.person-card .person-overview{font-size:10px!important}.person-card .profile-trigger{margin-top:12px}.identity-sign{font-size:5px;right:8px;bottom:8px}.person-index{font-size:6px;left:8px;top:8px}.team-grid>.person-card:first-child{align-items:center;grid-template-columns:200px minmax(0,1fr);gap:40px}.team-grid>.person-card:first-child .person-avatar{width:200px}.team-grid>.person-card:first-child .identity-monogram{font-size:80px}.team-grid>.person-card:first-child .person-content h2{font-size:40px}.team-grid>.person-card:first-child .person-overview{font-size:12px!important}.office-introduction{gap:8%;grid-template-columns:1.5fr 1fr;margin-bottom:35px}.office-introduction h2{font-size:43px}.office-introduction>p{font-size:11px}.office-select{gap:10px;min-height:90px;padding-block:20px}.office-select strong{font-size:21px}.office-select small{font-size:7px}.office-tab-arrow{display:none}.office-tab-index{font-size:7px}.office-selector{margin-bottom:25px}.office-scene{grid-template-columns:1fr 1fr;min-height:520px}.office-photograph{min-height:520px}.office-information{padding:28px}.office-information h3{font-size:26px}.office-information address{font-size:11px}.office-contact-details a{font-size:11px}.office-city-type{font-size:62px;left:25px;bottom:50px}.office-photo-label{left:28px;font-size:7px}.office-actions .button{font-size:9px;gap:20px;padding-inline:17px}.header-layout{grid-template-columns:1.6fr 1fr;gap:7%}.editorial-header .lead{font-size:11px}.editorial-header h1{font-size:53px}.editorial-header .page-banner-content{padding-block:45px}.header-visual{height:300px}.people-page .header-visual{height:300px}.contact-page .header-visual{height:280px}.enquiry-layout{gap:8%;grid-template-columns:1fr 1.2fr}.enquiry-intro h2{font-size:42px}.enquiry-intro>p:not(.eyebrow){font-size:12px}.enquiry-intro>a{font-size:11px;gap:18px}.enquiry-form .form-row{grid-template-columns:1fr;gap:25px}.people-statement{min-height:490px}.people-statement h2{font-size:70px}.profile-page-layout{grid-template-columns:minmax(0,250px) minmax(0,1fr);gap:7%}.profile-full-content>h2{font-size:38px}.profile-full-content .profile-introduction{font-size:16px}.footer-signature{flex-wrap:wrap;font-size:50px;gap:8px}.footer-signature a{width:45px;height:45px;font-size:22px}.footer-top{gap:40px}}
@media(max-width:600px){:root{--space:22px;--header-height:76px;--section-space:65px}.site-header{padding-block:12px}.brand-logo{width:156px}.menu-toggle{width:44px;height:44px}.site-nav>a{font-size:16px}.signature-hero{min-height:calc(100svh - var(--header-height));max-height:none}.signature-hero .hero-content{padding-block:75px 125px}.signature-hero .eyebrow{font-size:7px;gap:9px;letter-spacing:.06em;margin-bottom:30px}.signature-hero .eyebrow .hero-divider{display:none}.signature-hero .eyebrow .hero-dot{width:5px;height:5px}.signature-hero .hero-image{object-position:65% center;opacity:1}.signature-hero .hero-shade{background:linear-gradient(90deg,#191624b3,#19162420),linear-gradient(0deg,#161322c0,transparent 70%)}.signature-hero h1{font-size:clamp(43px,11.2vw,67px);line-height:1.09;letter-spacing:-.065em;max-width:100%;width:100%}.signature-hero h1 .hero-serif{font-size:1.12em;letter-spacing:-.065em}.signature-hero .hero-bottom-content{display:flex;align-items:flex-start;flex-direction:column;gap:25px;margin-top:28px}.signature-hero .hero-description{font-size:11px;max-width:270px;line-height:1.85}.hero-explore{flex-direction:row;gap:14px;font-size:8px}.hero-explore-circle{width:48px;height:48px;font-size:23px}.hero-explore br{display:none}.hero-rail{bottom:20px;padding-top:17px;gap:18px}.hero-chapter{font-size:7px}.scroll-cue{font-size:8px;gap:10px}.scroll-line{height:20px}.brand-ribbon{padding-block:17px}.brand-ribbon-track{gap:28px;animation-duration:35s}.brand-ribbon-track span{font-size:24px}.brand-ribbon-track i{font-size:25px}.firm-story{grid-template-columns:1fr;gap:30px;padding-block:65px}.firm-story-label{display:flex;align-items:center;justify-content:space-between;gap:20px}.firm-story-label .eyebrow{max-width:130px;margin:0;font-size:8px}.founding-year{margin:0;font-size:48px}.founding-year>span{font-size:8px}.firm-story-main h2{font-size:37px;line-height:1.12}.firm-story-copy{margin-top:25px;grid-template-columns:1fr;gap:15px}.firm-story-copy p{font-size:12px}.firm-story-copy .arrow-link{font-size:10px}.section-heading{margin-bottom:30px;gap:20px}.section-heading h2{font-size:37px}.section-heading .eyebrow{font-size:8px;line-height:1.8}.section-heading-aside p{font-size:11px}.section-heading .arrow-link{font-size:10px;min-height:44px}.expertise-tabs{grid-template-columns:1fr}.expertise-tab{min-height:64px;padding-block:13px;gap:12px}.expertise-tab img{display:block;width:42px;height:36px}.expertise-tab-title{font-size:17px}.expertise-tab-number{font-size:7px;width:13px}.expertise-tab-arrow{font-size:18px}.expertise-tab:nth-last-child(2){border-bottom:0}.expertise-feature-content,.expertise-feature-panel{min-height:430px}.expertise-feature-content{padding:25px}.expertise-feature-content h3{font-size:32px}.expertise-feature-content p{font-size:11px}.expertise-feature-content .button{font-size:10px}.perspective-film{min-height:490px}.perspective-film>.wrap{padding-block:75px}.perspective-film h2{font-size:38px;line-height:1.14}.perspective-film .eyebrow{font-size:8px}.perspective-film .round-action{width:60px;height:60px;font-size:29px}.knowledge-editorial{grid-template-columns:1fr;gap:30px}.knowledge-lead h3{font-size:31px}.knowledge-row h3{font-size:24px}.knowledge-row p{font-size:11px}.knowledge-all{font-size:13px}.modern-contact-cta h2{font-size:49px}.modern-contact-cta>.wrap>div{flex-direction:column;gap:30px;align-items:flex-start}.modern-contact-cta .round-action{height:65px;width:65px;font-size:30px}.modern-contact-cta .cta-email{font-size:12px}.editorial-header .page-banner-content{padding-block:35px 30px}.editorial-header .eyebrow{font-size:8px;margin-bottom:24px;gap:10px}.header-edition{font-size:6px;letter-spacing:.06em}.section-marker{width:6px;height:6px}.header-layout{grid-template-columns:1fr;gap:22px}.editorial-header h1{font-size:clamp(35px,9.5vw,55px);line-height:1.09;letter-spacing:-.055em}.editorial-header h1>span+span{font-size:1.08em}.editorial-header .lead{max-width:310px;font-size:11px;line-height:1.8;border:0;padding:0;margin:0}.header-visual,.people-page .header-visual,.contact-page .header-visual{height:220px}.header-photo-caption{left:var(--space);bottom:17px;font-size:7px;gap:12px}.header-image-arrow{right:var(--space);bottom:15px;font-size:20px}.people-directory{padding-top:50px}.directory-heading{gap:20px;align-items:end;margin-bottom:27px}.directory-heading .eyebrow{font-size:7px;max-width:190px;line-height:1.8;margin-bottom:12px}.directory-heading h2{font-size:36px}.directory-count{font-size:34px;gap:8px;align-items:flex-end;flex-direction:column}.directory-count>span{font-size:8px}.team-filters{padding:18px 20px;margin-bottom:30px;background:var(--surface);border:0}.team-filters>summary{display:flex;padding:0;min-height:30px;font-size:11px;font-weight:500;align-items:center;justify-content:space-between}.team-filters[open]>summary{padding-bottom:20px}.team-filters .filter-form{display:grid;grid-template-columns:1fr;margin:0;gap:20px}.filter-form>div{min-width:0;width:100%}.filter-form select{font-size:12px;padding-block:10px;min-height:44px}.filter-form label{font-size:10px;margin-bottom:4px}.filter-form .button{width:100%;grid-column:1;font-size:11px;min-height:46px}.filter-reset{grid-column:1;font-size:10px}.team-grid,.people-preview-grid{grid-template-columns:1fr;gap:0}.person-card{grid-template-columns:95px minmax(0,1fr);gap:20px;padding-block:25px;align-items:start}.person-avatar{width:95px;aspect-ratio:.82}.identity-monogram{font-size:37px}.person-card .person-content h2,.people-preview-grid .person-content h2{font-size:23px;line-height:1.12;margin-bottom:10px;min-height:0}.person-card .person-role,.people-preview-grid .person-role{font-size:8px!important;min-height:0;margin:0 0 8px}.person-card .person-overview{font-size:10px!important;min-height:0;line-height:1.8;-webkit-line-clamp:2}.person-card .profile-trigger{font-size:9px;min-height:32px;margin-top:10px;gap:12px}.profile-circle{width:30px;height:30px}.team-grid>.person-card:first-child{grid-column:1;grid-template-columns:110px minmax(0,1fr);gap:23px;align-items:center;padding-block:0 30px;margin-bottom:0}.team-grid>.person-card:first-child .person-avatar{width:110px;aspect-ratio:.75}.team-grid>.person-card:first-child .identity-monogram{font-size:47px}.team-grid>.person-card:first-child .person-content h2{font-size:29px;margin-bottom:12px;line-height:1.08}.team-grid>.person-card:first-child .person-role{font-size:8px!important;margin-bottom:10px}.team-grid>.person-card:first-child .person-overview{font-size:10px!important}.team-grid>.person-card:first-child .profile-trigger{font-size:9px;max-width:none;margin-top:12px}.team-grid>.person-card:first-child .profile-circle{width:30px;height:30px;font-size:16px}.team-grid>.person-card:first-child .identity-sign,.team-grid>.person-card:first-child .person-index{font-size:6px}.people-statement{min-height:430px}.people-statement>.wrap{padding-block:65px}.people-statement h2{font-size:49px;margin-bottom:30px}.people-statement .eyebrow{font-size:8px}.people-statement .button{font-size:10px}.office-introduction{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.office-introduction h2{font-size:38px;line-height:1.1}.office-introduction .eyebrow{font-size:8px;margin-bottom:20px}.office-introduction>p{font-size:11px;max-width:285px;padding:0}.office-selector{display:grid;grid-template-columns:1fr 1fr;margin-bottom:23px;border-bottom:0}.office-select{gap:12px;padding:20px 12px 18px 0;min-height:86px;border-bottom:1px solid #cfc4d0}.office-select:after{right:12px;bottom:-1px}.office-tab-index{font-size:7px}.office-select strong{font-size:23px;letter-spacing:-.04em}.office-select small{font-size:7px;margin-top:5px}.office-scene{grid-template-columns:1fr;min-height:0;scroll-margin-top:100px}.office-photograph{min-height:270px;aspect-ratio:1.3}.office-city-type{font-size:65px;left:25px;bottom:45px}.office-photo-label{left:28px;bottom:23px;font-size:7px}.office-information{padding:27px 25px;min-height:390px}.office-information-top{margin-bottom:25px}.office-information h3{font-size:29px;margin-bottom:20px}.office-information address{font-size:12px;margin-bottom:24px}.office-contact-details{gap:18px;margin-bottom:24px}.office-contact-details a{font-size:12px}.office-contact-details a>span{font-size:8px;margin-bottom:5px}.office-actions{gap:7px}.office-actions .button{min-height:46px;font-size:10px;padding-inline:20px}.office-actions .arrow-link{font-size:10px;min-height:44px}.enquiry-layout{grid-template-columns:1fr;gap:40px}.enquiry-intro{position:static}.enquiry-intro h2{font-size:43px;margin-bottom:25px}.enquiry-intro .eyebrow{font-size:8px}.enquiry-intro>p:not(.eyebrow){font-size:11px;max-width:285px;margin-bottom:22px}.enquiry-intro>a{font-size:12px;gap:25px}.enquiry-form{gap:23px}.enquiry-form label{font-size:10px}.enquiry-form .form-row{gap:23px}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{font-size:12px}.enquiry-form .checkbox-row{font-size:10px}.enquiry-form .button{width:100%;font-size:11px}.profile-page{padding-top:35px}.profile-page-layout{grid-template-columns:1fr;gap:38px;margin-top:25px}.profile-identity{grid-template-columns:110px minmax(0,1fr);gap:22px}.profile-identity-details h2{font-size:23px}.profile-page-portrait{min-height:150px}.profile-page .profile-role{font-size:12px;margin-top:10px}.profile-full-content>h2{font-size:36px}.profile-full-content .profile-introduction{font-size:16px}.profile-full-content .prose{font-size:14px}.footer-top{padding-bottom:35px;gap:30px}.footer-logo{width:180px}.footer-contact>a{font-size:18px}.footer-signature{padding-block:20px 40px;justify-content:flex-start;flex-wrap:wrap;gap:8px 14px;font-size:36px}.footer-signature em{font-size:1.1em}.footer-signature a{width:36px;height:36px;font-size:18px}.footer-bottom{font-size:9px}.footer-bottom>div{gap:16px}.site-footer{padding-top:50px}.cookie-banner h2{font-size:16px}.cookie-banner p{font-size:10px}.cookie-actions .button{min-height:44px}.article-card h3{font-size:27px}.listing-section .service-card h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.depth-image{will-change:auto;transform:none!important}.brand-ribbon-track{animation:none}.header-visual{animation:none}.office-scene{animation:none}.scroll-line:after{animation:none}.person-card .identity-orbit,.person-card .identity-monogram,.person-card .profile-circle,.expertise-feature-panel>img{transition:none}.will-reveal{opacity:1;transform:none!important}.hero-enter{animation:none}}
/* Grid media must respect its track even when a minimum height is present. */
.office-photograph,.office-information,.office-panels,.office-explorer,.profile-page-portrait{min-width:0;max-width:100%}.office-photograph,.profile-page-portrait{width:100%}.office-select strong{overflow-wrap:anywhere}
@media(min-width:601px){.team-grid>.reveal:nth-child(2n+1){transition-delay:.07s}}
@media(max-width:600px){.office-photograph{height:270px;min-height:0;aspect-ratio:auto}}
/* Expertise is presented as image-led editorial features rather than small tiles. */
.listing-section .service-grid{display:block;border:0}.listing-section .service-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto 1fr auto;gap:0 7%;align-items:start;padding:45px 0;background:none;border:0;border-bottom:1px solid var(--line);min-height:0}.listing-section .expertise-list-image{grid-column:1;grid-row:1/5;width:100%;height:360px;object-fit:cover;filter:none}.listing-section .service-card .card-top{grid-column:2;grid-row:1;padding-top:15px;margin-bottom:30px}.listing-section .service-card h2{grid-column:2;grid-row:2;font-size:clamp(30px,3.2vw,47px);letter-spacing:-.05em;max-width:450px;margin:0}.listing-section .service-card p{grid-column:2;grid-row:3;max-width:390px;font-size:13px;line-height:1.9;margin-top:25px;margin-bottom:30px}.listing-section .service-card .card-label{display:flex;align-items:center;justify-content:space-between;grid-column:2;grid-row:4;text-align:left;font-size:10px;border-top:1px solid var(--line);padding-top:16px;max-width:390px}.listing-section .service-card .card-label:after{content:'↗';font-size:23px;transition:transform .3s}.listing-section .service-card:hover .card-label:after{transform:translate(4px,-4px)}.listing-section .service-card:nth-child(even) .expertise-list-image{grid-column:2}.listing-section .service-card:nth-child(even) :is(.card-top,h2,p,.card-label){grid-column:1}.listing-section .service-card:hover h2{color:var(--brand)}
@media(max-width:900px){.listing-section .expertise-list-image{height:320px}.listing-section .service-card{gap:0 6%;padding-block:35px}.listing-section .service-card .card-top{padding-top:5px;margin-bottom:20px}.listing-section .service-card p{font-size:12px;margin-block:20px 25px}}
@media(max-width:600px){.listing-section .service-card{grid-template-columns:20px minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:0 15px;padding-block:28px}.listing-section .service-card .expertise-list-image,.listing-section .service-card:nth-child(even) .expertise-list-image{grid-column:1/-1;grid-row:1;height:240px;margin-bottom:25px}.listing-section .service-card .card-top,.listing-section .service-card:nth-child(even) .card-top{grid-column:1;grid-row:2;margin:0;padding-top:9px}.listing-section .service-card h2,.listing-section .service-card:nth-child(even) h2{grid-column:2;grid-row:2;font-size:31px}.listing-section .service-card p,.listing-section .service-card:nth-child(even) p{grid-column:2;grid-row:3;font-size:11px;margin-block:18px 22px}.listing-section .service-card .card-label,.listing-section .service-card:nth-child(even) .card-label{grid-column:2;grid-row:4;font-size:9px}.listing-section .service-card .card-label:after{font-size:20px}}
@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:page-fade-out .2s ease both}::view-transition-new(root){animation:page-fade-in .45s cubic-bezier(.22,1,.36,1) both}@keyframes page-fade-out{to{opacity:0}}@keyframes page-fade-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
/* Reading sizes remain useful on touch devices and in a compact directory. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--brand);outline-offset:5px}.signature-hero a:focus-visible{outline-color:#fff}.person-card .person-role{font-size:10px!important}.person-card .person-overview{font-size:12px!important}.person-card .profile-trigger{font-size:10px}.editorial-header .lead{font-size:13px}.office-select small{font-size:9px}.signature-hero .hero-description{font-size:14px}
@media(max-width:900px){.person-card .person-role{font-size:9px!important}.person-card .person-overview{font-size:11px!important}.editorial-header .lead{font-size:12px}}
@media(max-width:600px){.signature-hero .eyebrow{font-size:8px}.signature-hero .hero-description{font-size:13px}.hero-explore{font-size:10px}.person-card .person-role,.people-preview-grid .person-role,.team-grid>.person-card:first-child .person-role{font-size:10px!important}.person-card .person-overview,.team-grid>.person-card:first-child .person-overview{font-size:12px!important;line-height:1.65}.person-card .profile-trigger,.team-grid>.person-card:first-child .profile-trigger{font-size:10px}.office-select small{font-size:9px}.office-tab-index{font-size:8px}.editorial-header .lead{font-size:12px}}

/* Current typography and page grid: Inter, consistent starts, and image-backed headings. */
@font-face{font-family:Inter;src:url('/static/fonts/inter-latin.woff2?v=c940764593d0') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--font:Inter,Arial,Helvetica,sans-serif;--editorial:Inter,Arial,Helvetica,sans-serif;--header-height:84px;--title-tracking:-.035em;--copy-size:15px}
body{font-family:var(--font);font-size:var(--copy-size)}h1,h2,h3{font-family:var(--font);letter-spacing:var(--title-tracking);font-weight:500}em,.hero-serif,.founding-year,.office-city-type,.directory-count,.brand-ribbon-track span,.footer-signature em,.profile-full-content>h2,.editorial-header h1>span+span{font-family:var(--font);font-style:normal!important;letter-spacing:var(--title-tracking)}.site-header{min-height:var(--header-height);padding-block:13px}.site-nav{font-size:12px;font-weight:500}.brand-logo{width:176px}.site-nav .nav-contact{font-size:11px}.section-heading h2,.office-introduction h2,.firm-story-main h2,.directory-heading h2{letter-spacing:var(--title-tracking);font-weight:500}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.12em}.signature-hero h1{font-family:var(--font);font-size:clamp(62px,7.2vw,112px);font-weight:500;letter-spacing:-.045em;line-height:1.09}.signature-hero h1 .hero-serif{font-family:var(--font);font-size:1em;font-weight:400;color:#f0d4f2;letter-spacing:-.045em;line-height:1.1}.signature-hero .hero-description{font-size:15px}.hero-explore{font-size:11px}.signature-hero .eyebrow{font-size:10px}.firm-story-main h2{font-size:clamp(38px,4.2vw,62px)}.firm-story-copy p{font-size:15px}.founding-year{font-size:64px;font-weight:400}.brand-ribbon-track span{font-size:24px;font-weight:400;letter-spacing:-.02em}.brand-ribbon-track i{font-size:25px}.office-city-type{font-size:clamp(50px,5vw,78px);font-weight:500;line-height:1.1}.directory-count{font-size:42px;font-weight:400}.office-introduction>p{font-size:14px}.office-select strong{font-size:25px;letter-spacing:-.025em}.office-information h3{font-size:30px;letter-spacing:-.025em}.office-information address,.office-contact-details a{font-size:13px}.office-photo-label{display:flex;align-items:center;flex-wrap:wrap;gap:10px;line-height:1.8;letter-spacing:.04em;font-size:8px}.person-card .person-content h2,.people-preview-grid .person-content h2{font-size:25px;letter-spacing:-.025em}.person-card .person-overview{font-size:13px!important}.person-card .person-role{font-size:11px!important}.team-grid>.person-card:first-child .person-content h2{font-size:48px;letter-spacing:-.035em}.profile-full-content>h2{font-size:40px;color:var(--ink)}.profile-page .profile-introduction{font-size:18px}.perspective-film h2>span{font-family:var(--font);font-style:normal;font-weight:400;letter-spacing:-.035em}.people-statement h2 em{font-family:var(--font);font-size:1em;font-weight:400;color:#efdbf2}.enquiry-intro h2 em{font-family:var(--font);font-style:normal;font-weight:400}.footer-signature{font-family:var(--font);font-size:clamp(34px,4.5vw,64px);letter-spacing:-.035em;justify-content:flex-start;gap:20px}.footer-signature em{font-size:1em;font-weight:400;color:#c9afcf}.footer-signature a{margin-left:auto}.modern-contact-cta h2{font-size:clamp(44px,6.8vw,96px);letter-spacing:-.04em}.knowledge-lead h3{letter-spacing:-.025em}.knowledge-row h3{letter-spacing:-.025em}
/* Every header shares the same content column and spacing. The intro sits under its title. */
.editorial-header{position:relative;display:flex;align-items:center;min-height:510px;overflow:hidden;isolation:isolate;background:#29222f;color:white}.editorial-header .page-banner-content{position:relative;z-index:1;width:min(calc(100% - 2*var(--space)),var(--max));margin-inline:auto;padding-block:70px 85px}.editorial-header .eyebrow{color:#ecd6f0;font-size:10px;margin:0 0 27px;letter-spacing:.12em;font-weight:500}.editorial-header .section-marker{background:#dab7e1}.header-edition{display:none}.editorial-header .header-layout{display:block}.editorial-header h1{font-family:var(--font);font-size:clamp(42px,4.6vw,68px);letter-spacing:-.035em;font-weight:500;line-height:1.12;max-width:920px;margin:0;color:#fff;white-space:normal;text-wrap:balance}.editorial-header h1>span+span{font-family:var(--font);font-size:1em;letter-spacing:-.035em;font-weight:400;font-style:normal;color:#ead3ef}.editorial-header .lead{border:0;padding:0;margin:25px 0 0;max-width:640px;font-size:15px;line-height:1.85;color:#eee6f0}.editorial-header:not(.future-header) .header-visual{position:absolute;inset:0;height:100%;width:100%;z-index:-2;overflow:hidden;animation:none;clip-path:none}.editorial-header .header-visual img{object-fit:cover;object-position:center;width:100%;height:100%;filter:none}.editorial-header .header-image-shade{background:linear-gradient(90deg,#201827ed 0%,#201827be 42%,#20182733 100%)}.header-photo-caption,.header-image-arrow{display:none}.editorial-header .byline{color:#e9dceb;margin-top:25px;font-size:11px}.people-directory{padding-top:75px}.detail-layout{padding-top:75px}.detail-layout .prose{max-width:850px;font-size:16px;line-height:1.9}.detail-layout .prose>p{margin-bottom:26px}.detail-aside{border:0;background:var(--surface);padding:30px}.detail-aside h2{font-size:29px;letter-spacing:-.025em}.detail-aside p{font-size:13px}.detail-aside .button{font-size:11px}.profile-page-layout{padding-top:0}.team-filters{border:0}.team-filters .filter-form label{font-size:11px}.team-filters .filter-form select{font-size:12px}.listing-section .service-card h2{letter-spacing:-.025em}.listing-section .service-card p{font-size:14px}.enquiry-intro>p:not(.eyebrow){font-size:14px}.enquiry-form label{font-size:12px}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{font-size:14px}.enquiry-form .checkbox-row{font-size:12px}.enquiry-form .help{font-size:11px}.page-banner:has(.header-layout h1>span:only-child) .page-banner-content{padding-block:75px}.office-information address{line-height:1.85}.office-contact-details a>span{font-size:9px}
/* The firm has a dedicated narrative layout, with all copy managed by the CMS. */
.firm-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10%;align-items:start}.firm-overview-title .eyebrow{font-size:10px;margin-bottom:25px}.firm-overview-title h2{font-size:clamp(34px,3.6vw,54px);line-height:1.14;letter-spacing:-.035em;white-space:pre-line;max-width:500px;margin-bottom:30px}.firm-overview-title .arrow-link{font-size:12px}.firm-overview-copy{padding-top:42px}.firm-overview-copy p{font-size:16px;line-height:1.95;margin:0 0 25px}.firm-overview-copy p:first-child{color:var(--ink)}.firm-approach-section{background:var(--surface)}.firm-approach-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;align-items:start}.firm-approach-image{min-width:0;width:100%;height:660px;background:var(--ink);position:sticky;top:120px;isolation:isolate}.firm-approach-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.firm-approach-image:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(0deg,#211b2390,transparent);z-index:-1}.firm-approach-image>span{position:absolute;bottom:30px;left:30px;right:30px;color:#fff;font-size:11px;line-height:1.7}.firm-approach-copy>h2{font-size:clamp(32px,3.25vw,48px);line-height:1.15;white-space:pre-line;letter-spacing:-.03em;max-width:500px;margin-bottom:32px}.firm-approach-copy>.eyebrow{font-size:10px;margin-bottom:23px}.firm-principle{display:grid;grid-template-columns:26px minmax(0,1fr);gap:20px;padding-block:28px;border-top:1px solid #d3cad6}.firm-principle>span{font-size:10px;padding-top:5px;color:var(--brand)}.firm-principle h3{font-size:23px;letter-spacing:-.02em;margin-bottom:13px}.firm-principle p{font-size:14px;line-height:1.85;max-width:380px}.firm-practice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10%}.firm-practice h2{font-size:clamp(32px,3.5vw,51px);line-height:1.16;white-space:pre-line;letter-spacing:-.035em;max-width:500px}.firm-practice .prose{padding-top:42px;font-size:15px;line-height:1.95}.firm-practice .prose p{margin-bottom:25px}.firm-practice .arrow-link{font-size:12px;margin-top:15px}.firm-invitation{background:var(--brand);color:white}.firm-invitation>.wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.firm-invitation h2{font-size:clamp(36px,4.7vw,68px);letter-spacing:-.035em;max-width:800px;line-height:1.12}.firm-invitation .eyebrow{color:#e4c8e9;font-size:10px}.firm-invitation .button{flex-shrink:0;font-size:12px}.office-information-top .eyebrow{font-size:9px}.footer-contact>a{font-size:20px}
@media(max-width:1100px){.firm-approach-layout{gap:7%}.firm-approach-image{height:640px}.firm-overview{gap:8%}.firm-overview-copy p{font-size:15px}.firm-principle h3{font-size:22px}.firm-principle p{font-size:13px}.editorial-header h1{font-size:62px;max-width:850px}.signature-hero h1{font-size:clamp(62px,7.8vw,100px)}}
@media(max-width:900px){:root{--header-height:80px}.signature-hero .hero-description{font-size:14px}.signature-hero .eyebrow{font-size:9px}.editorial-header{min-height:460px}.editorial-header .page-banner-content{padding-block:65px 75px}.editorial-header h1{font-size:51px;max-width:680px}.editorial-header .lead{font-size:14px;max-width:560px;margin-top:23px}.editorial-header .eyebrow{font-size:9px}.person-card .person-content h2{font-size:22px}.person-card .person-overview{font-size:12px!important}.office-introduction h2{font-size:42px}.office-introduction>p{font-size:13px}.office-select strong{font-size:22px}.office-information address,.office-contact-details a{font-size:12px}.firm-overview{gap:7%}.firm-overview-title h2{font-size:36px}.firm-overview-copy{padding-top:38px}.firm-overview-copy p{font-size:14px}.firm-approach-layout{gap:7%;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}.firm-approach-image{height:640px;top:110px}.firm-approach-copy>h2{font-size:34px}.firm-principle{gap:15px;grid-template-columns:20px minmax(0,1fr);padding-block:24px}.firm-principle h3{font-size:21px}.firm-principle p{font-size:13px}.firm-practice{gap:7%}.firm-practice h2{font-size:35px}.firm-practice .prose{font-size:14px}.firm-invitation>.wrap{align-items:flex-start;flex-direction:column;gap:30px}.firm-invitation h2{font-size:48px}.footer-signature{font-size:42px;gap:16px}.footer-signature em{font-size:1em}.profile-full-content>h2{font-size:34px}}
@media(max-width:600px){:root{--header-height:76px}.site-header{padding-block:12px}.brand-logo{width:156px}.signature-hero h1{font-size:clamp(39px,10.5vw,64px);line-height:1.1;letter-spacing:-.035em}.signature-hero h1 .hero-serif{letter-spacing:-.035em;font-weight:400}.signature-hero .eyebrow{font-size:8px;line-height:1.8}.signature-hero .hero-description{font-size:13px;max-width:290px;line-height:1.85}.hero-explore{font-size:10px}.brand-ribbon-track span{font-size:20px}.brand-ribbon{padding-block:18px}.firm-story-main h2{font-size:34px}.firm-story-copy p{font-size:14px}.founding-year{font-size:42px}.section-heading h2{font-size:34px}.editorial-header{min-height:370px}.editorial-header .page-banner-content,.page-banner:has(.header-layout h1>span:only-child) .page-banner-content{padding-block:48px 55px}.editorial-header .eyebrow{font-size:9px;margin-bottom:24px}.editorial-header h1{font-size:clamp(32px,8.5vw,44px);line-height:1.15;letter-spacing:-.03em;max-width:100%}.editorial-header h1>span+span{letter-spacing:-.03em}.editorial-header .lead{font-size:13px;line-height:1.8;margin-top:23px;max-width:100%}.editorial-header .header-image-shade{background:linear-gradient(90deg,#211a27ed,#211a2790)}.editorial-header .byline{font-size:10px;gap:15px}.people-directory{padding-top:50px}.directory-heading h2{font-size:33px}.directory-heading .eyebrow{font-size:8px;letter-spacing:.07em}.directory-count{font-size:31px}.person-card .person-content h2,.people-preview-grid .person-content h2{font-size:22px;letter-spacing:-.025em}.team-grid>.person-card:first-child .person-content h2{font-size:28px;letter-spacing:-.025em}.person-card .person-overview,.team-grid>.person-card:first-child .person-overview{font-size:12px!important}.person-card .person-role,.team-grid>.person-card:first-child .person-role{font-size:10px!important}.office-introduction h2{font-size:34px;letter-spacing:-.03em}.office-introduction>p{font-size:13px}.office-select strong{font-size:22px}.office-information h3{font-size:27px;letter-spacing:-.025em}.office-city-type{font-size:53px;letter-spacing:-.03em}.office-photo-label{font-size:7px;gap:8px}.office-information address,.office-contact-details a{font-size:13px}.people-statement h2{font-size:42px;letter-spacing:-.03em}.people-statement h2 em{font-size:1em;letter-spacing:-.03em}.perspective-film h2{font-size:34px;letter-spacing:-.03em}.perspective-film h2>span{font-size:1em;letter-spacing:-.03em}.enquiry-intro h2{font-size:36px;letter-spacing:-.03em}.enquiry-intro>p:not(.eyebrow){font-size:13px}.enquiry-form label{font-size:12px}.enquiry-form .checkbox-row{font-size:11px}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{font-size:14px}.modern-contact-cta h2{font-size:39px;letter-spacing:-.03em}.footer-signature{font-size:29px;gap:10px;line-height:1.25}.footer-signature em{font-size:1em}.footer-signature a{width:35px;height:35px;font-size:18px}.detail-layout{padding-top:45px}.detail-layout .prose{font-size:15px}.detail-aside{padding:25px}.firm-overview{grid-template-columns:1fr;gap:25px}.firm-overview-title .eyebrow{font-size:9px;margin-bottom:22px}.firm-overview-title h2{font-size:34px;margin-bottom:22px}.firm-overview-title .arrow-link{font-size:12px}.firm-overview-copy{padding:0}.firm-overview-copy p{font-size:14px;line-height:1.9;margin-bottom:22px}.firm-approach-layout{grid-template-columns:1fr;gap:35px}.firm-approach-image{position:relative;top:auto;height:350px;width:100%;min-width:0}.firm-approach-image>span{font-size:10px;bottom:24px;left:24px;right:24px}.firm-approach-copy>.eyebrow{font-size:9px}.firm-approach-copy>h2{font-size:31px;line-height:1.17;margin-bottom:28px}.firm-principle{padding-block:25px;grid-template-columns:22px minmax(0,1fr);gap:16px}.firm-principle h3{font-size:22px;margin-bottom:12px}.firm-principle p{font-size:13px}.firm-practice{grid-template-columns:1fr;gap:26px}.firm-practice h2{font-size:32px;line-height:1.18}.firm-practice .eyebrow{font-size:9px}.firm-practice .prose{padding:0;font-size:14px}.firm-practice .arrow-link{font-size:12px}.firm-invitation>.wrap{gap:28px}.firm-invitation h2{font-size:37px}.firm-invitation .eyebrow{font-size:9px}.firm-invitation .button{font-size:11px}.profile-full-content>h2{font-size:31px}.profile-page .profile-introduction{font-size:16px}.knowledge-lead h3{font-size:29px;letter-spacing:-.025em}.knowledge-row h3{font-size:24px;letter-spacing:-.025em}}
.enquiry-intro h2{white-space:pre-line}.people-statement h2>span+br+span{font-weight:400;color:#efdbf2}.perspective-film h2>span{font-family:var(--font);font-weight:500}.perspective-film h2>br+span{font-weight:400}

/* Geometric typography and fluid sizing, selected for the current visual direction. */
@font-face{font-family:'Plus Jakarta Sans';src:url('/static/fonts/jakarta-latin.woff2?v=cd8db90cd950') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
:root{--font:'Plus Jakarta Sans',Arial,Helvetica,sans-serif;--editorial:var(--font);--title-tracking:-.025em;--space:clamp(20px,5vw,80px);--max:1360px;--type-body:clamp(.9375rem,.9rem + .16vw,1rem);--type-title:clamp(2rem,1.45rem + 2.4vw,4rem);--type-section:clamp(1.875rem,1.35rem + 2vw,3.375rem);--section-space:clamp(48px,7vw,104px)}
body{font-family:var(--font);font-size:var(--type-body);line-height:1.75}h1,h2,h3{font-family:var(--font);font-weight:600;letter-spacing:var(--title-tracking)}.wrap{width:min(calc(100% - 2*var(--space)),var(--max));margin-inline:auto}.section{padding-block:var(--section-space)}.site-nav{gap:clamp(16px,2vw,30px);font-size:clamp(.7rem,.6rem + .2vw,.8rem)}.site-header .brand-logo{width:clamp(150px,14vw,184px)}.site-nav .nav-contact{padding-inline:20px}.header-home{display:inline-flex;align-items:center;min-height:44px;color:#f3e8f5;font-size:.75rem;line-height:1.4;margin-bottom:18px;text-decoration:underline;text-decoration-color:#ffffff50;text-underline-offset:5px}.header-home:hover{text-decoration-color:#fff}.editorial-header{min-height:clamp(350px,37vw,510px)}.editorial-header .page-banner-content,.page-banner:has(.header-layout h1>span:only-child) .page-banner-content{padding-block:clamp(36px,5vw,68px)}.editorial-header h1,.editorial-header h1>span+span{font-family:var(--font);font-size:var(--type-title);font-weight:600;line-height:1.16;letter-spacing:-.025em;max-width:100%;overflow-wrap:anywhere}.editorial-header h1{max-width:1000px}.editorial-header h1>span+span{font-weight:500}.editorial-header .eyebrow{font-size:clamp(.55rem,.45rem + .18vw,.65rem);margin-bottom:22px}.editorial-header .lead{font-size:clamp(.8125rem,.75rem + .2vw,1rem);line-height:1.85;max-width:680px;margin-top:24px}.signature-hero h1,.signature-hero h1 .hero-serif{font-family:var(--font);font-size:clamp(2.7rem,2.1rem + 4.5vw,6.5rem);font-weight:600;line-height:1.12;letter-spacing:-.035em}.signature-hero h1 .hero-serif{font-weight:400}.signature-hero .hero-content{padding-block:clamp(65px,7vw,110px) clamp(110px,10vw,145px)}.signature-hero .hero-description{font-size:clamp(.8125rem,.75rem + .2vw,1rem);max-width:390px}.hero-rail{border-top:0}.firm-story-main h2,.section-heading h2,.directory-heading h2,.office-introduction h2{font-size:var(--type-section);line-height:1.16;font-weight:600;letter-spacing:-.025em}.person-content h2,.people-preview-grid .person-content h2,.person-card .person-content h2{font-weight:600;font-size:clamp(1.25rem,1.05rem + .5vw,1.7rem);letter-spacing:-.02em}.person-card .person-location{font-size:.6875rem!important;line-height:1.6;color:var(--brand);margin:0 0 9px;min-height:0}.person-card .person-location>span{font-weight:600}.person-card .person-overview{font-size:clamp(.75rem,.7rem + .15vw,.875rem)!important;line-height:1.75}.person-card .person-role{font-size:clamp(.625rem,.58rem + .12vw,.75rem)!important}.people-statement h2,.perspective-film h2{font-size:clamp(2.1rem,1.4rem + 3.8vw,5rem);line-height:1.2;letter-spacing:-.025em}.modern-contact-cta h2{font-size:clamp(2.4rem,1.7rem + 4vw,6rem);line-height:1.13;letter-spacing:-.03em}.office-introduction>p{font-size:var(--type-body)}.office-select strong{font-size:clamp(1.2rem,1rem + .45vw,1.6rem);font-weight:500}.office-information h3{font-size:clamp(1.5rem,1.2rem + .7vw,2rem);font-weight:600;line-height:1.25}.office-information address,.office-contact-details a{font-size:clamp(.8125rem,.75rem + .15vw,.9375rem)}.office-city-type{font-size:clamp(3rem,2rem + 3.5vw,5.25rem);font-weight:600;letter-spacing:-.035em}.office-photo-label{font-size:.5625rem}.footer-signature{font-size:clamp(1.6rem,1rem + 2.8vw,3.5rem);font-weight:500}.enquiry-intro h2{font-size:var(--type-section);font-weight:600}.enquiry-intro>p:not(.eyebrow){font-size:var(--type-body)}
/* Standalone employee page: one aligned grid rather than nested profile layouts. */
.employee-navigation{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;padding-block:28px;border-bottom:1px solid var(--line)}.employee-breadcrumb{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.75rem;line-height:1.6;min-width:0}.employee-breadcrumb>a{color:var(--brand);min-height:36px;display:inline-flex;align-items:center}.employee-breadcrumb>[aria-current]{color:var(--muted)}.employee-navigation .back-link{border:0;margin:0;padding:0;font-size:.75rem;min-height:44px;flex-shrink:0}.employee-layout{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(35px,7vw,110px);align-items:start;padding-block:clamp(38px,5vw,76px) var(--section-space)}.employee-identity{position:sticky;top:110px;min-width:0;margin:0;padding:0;align-self:start}.employee-photo{width:100%;aspect-ratio:1;position:relative;overflow:hidden;background:#eee8f1;display:grid;place-items:center}.employee-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.employee-monogram{color:var(--brand);background:linear-gradient(135deg,#f3edf5,#e6dce9)}.employee-monogram>span{font-size:clamp(4.5rem,8vw,7rem);letter-spacing:-.06em;font-weight:400;line-height:1}.employee-identity-copy{padding-top:25px}.employee-identity h2{font-size:clamp(1.3rem,1rem + .6vw,1.75rem);line-height:1.25;margin:0 0 8px;overflow-wrap:anywhere}.employee-job{font-size:.8125rem;color:var(--brand);line-height:1.65;margin:0 0 24px}.employee-facts{margin:0;display:grid;gap:18px}.employee-facts>div,.employee-contact-details>div{min-width:0}.employee-facts dt,.employee-contact-details dt{font-size:.625rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.employee-facts dd,.employee-contact-details dd{margin:0;font-size:.8125rem;line-height:1.7;color:var(--ink);overflow-wrap:anywhere}.employee-facts dd>span{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}.employee-story{min-width:0;max-width:850px;padding:0;margin:0;align-self:start}.employee-story .eyebrow{font-size:.625rem;margin:0 0 16px}.employee-story h2{font-size:clamp(1.65rem,1.3rem + 1vw,2.5rem);line-height:1.25;letter-spacing:-.025em;font-weight:600;margin:0 0 24px}.employee-intro{font-size:clamp(1rem,.9rem + .3vw,1.25rem);line-height:1.9;color:var(--ink);margin-bottom:30px}.employee-biography{font-size:var(--type-body);line-height:1.95;max-width:760px}.employee-biography p{margin-bottom:25px}.employee-biography h3{font-size:clamp(1.2rem,1.05rem + .4vw,1.5rem);line-height:1.35;margin-block:32px 18px}.employee-connect{margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}.employee-connect h2{font-size:clamp(1.25rem,1rem + .6vw,1.75rem);margin-bottom:24px}.employee-contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 28px}.employee-contact-details a{display:inline-block;overflow-wrap:anywhere}.employee-contact-details a:hover{text-decoration:underline;text-underline-offset:4px}.employee-story .vcard-actions{margin-block:20px;gap:12px}.employee-story .vcard-actions .button{font-size:.75rem;line-height:1.5;padding:14px 20px;min-height:48px}.employee-connect>.arrow-link{font-size:.75rem;min-height:44px}.employee-team-link{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.8125rem;color:var(--brand);margin-top:38px;padding-block:18px;border-top:1px solid var(--line);max-width:420px;min-height:56px}.employee-team-link>span{font-size:23px}.employee-page .editorial-header{min-height:clamp(300px,30vw,420px)}
/* Expertise: consistent media geometry and useful topic previews. */
.expertise-stories{display:grid;gap:clamp(55px,7vw,105px)}.expertise-story{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(35px,6vw,90px);align-items:center;scroll-margin-top:110px}.expertise-story-image{position:relative;display:block;aspect-ratio:1.2;min-width:0;overflow:hidden;background:var(--surface);isolation:isolate}.expertise-story-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);z-index:-1}.expertise-story-image:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#21182760,transparent 55%)}.expertise-story:hover .expertise-story-image>img{transform:scale(1.035)}.expertise-image-number{position:absolute;top:24px;left:26px;font-size:.75rem;line-height:1;color:#fff;background:#21182775;min-width:36px;min-height:36px;display:grid;place-items:center;backdrop-filter:blur(8px)}.expertise-image-link{position:absolute;bottom:24px;right:24px;background:white;color:var(--brand);height:54px;width:54px;border-radius:50%;display:grid;place-items:center;font-size:26px;transition:transform .3s}.expertise-story:hover .expertise-image-link{transform:rotate(45deg)}.expertise-story-copy{min-width:0;padding:0;margin:0;align-self:center}.expertise-story-copy .eyebrow{font-size:.625rem;margin:0 0 23px;line-height:1.6}.expertise-story-copy h2{font-size:clamp(1.9rem,1.35rem + 2vw,3.1rem);font-weight:600;letter-spacing:-.025em;line-height:1.16;margin:0 0 24px;overflow-wrap:anywhere;max-width:600px}.expertise-story-copy h2>a:hover{color:var(--brand)}.expertise-summary{font-size:clamp(.875rem,.8rem + .2vw,1rem);line-height:1.9;margin:0 0 26px;max-width:520px}.expertise-topics{padding:0;list-style:none;margin:0 0 26px}.expertise-topics li{position:relative;padding:10px 0 10px 20px;font-size:clamp(.75rem,.68rem + .2vw,.875rem);line-height:1.65;color:var(--muted)}.expertise-topics li:before{content:'';position:absolute;left:0;top:19px;width:5px;height:5px;background:var(--brand)}.expertise-detail-link{border-top:1px solid var(--line);padding-top:20px;min-height:52px;font-size:.75rem;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--brand);max-width:480px;line-height:1.6}.expertise-detail-link>span{font-size:24px;flex-shrink:0}.expertise-story:nth-child(even) .expertise-story-image{grid-column:2;grid-row:1}.expertise-story:nth-child(even) .expertise-story-copy{grid-column:1;grid-row:1}.expertise-story:focus-within .expertise-image-link{background:var(--brand);color:white}
@media(min-width:1800px){.signature-hero h1,.signature-hero h1 .hero-serif{font-size:6.5rem}}
@media(max-width:900px){.employee-layout{grid-template-columns:minmax(190px,230px) minmax(0,1fr);gap:40px}.employee-identity{top:105px}.employee-identity h2{font-size:1.35rem}.employee-contact-details{grid-template-columns:1fr;gap:20px}.expertise-story{gap:32px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.expertise-story-copy{align-self:start}.expertise-story-image{aspect-ratio:.85}.expertise-story-copy h2{font-size:clamp(1.75rem,3.9vw,2.3rem)}.expertise-story-copy .eyebrow{margin-bottom:18px}.expertise-summary{font-size:.8125rem;margin-bottom:20px}.expertise-topics li{font-size:.75rem;padding-block:8px}.expertise-topics li:before{top:17px}.expertise-detail-link{font-size:.6875rem;padding-top:16px}.expertise-story-copy h2{margin-bottom:20px}.expertise-topics{margin-bottom:20px}.employee-breadcrumb{font-size:.6875rem}.employee-navigation .back-link{font-size:.6875rem}.header-home{margin-bottom:12px}.editorial-header .lead{font-size:.875rem}.person-card .person-location{font-size:.625rem!important}}
@media(max-width:600px){:root{--type-title:clamp(1.85rem,1.3rem + 3vw,2.6rem);--type-section:clamp(1.75rem,1.2rem + 2.5vw,2.25rem)}.signature-hero h1,.signature-hero h1 .hero-serif{font-size:clamp(2.4rem,1.65rem + 3.8vw,3.5rem);letter-spacing:-.03em;line-height:1.15}.signature-hero .hero-content{padding-block:62px 112px}.signature-hero .hero-description{max-width:290px;font-size:.875rem}.signature-hero .eyebrow{font-size:.5rem}.header-home{font-size:.6875rem;min-height:38px;margin-bottom:12px}.editorial-header .eyebrow{font-size:.5625rem;line-height:1.7;margin-bottom:19px}.editorial-header .page-banner-content,.page-banner:has(.header-layout h1>span:only-child) .page-banner-content{padding-block:32px 42px}.editorial-header h1,.editorial-header h1>span+span{font-size:var(--type-title);line-height:1.2;letter-spacing:-.025em}.editorial-header .lead{font-size:.8125rem;line-height:1.8;margin-top:22px}.employee-navigation{padding-block:20px;gap:8px;flex-direction:column;align-items:flex-start}.employee-breadcrumb{font-size:.6875rem;gap:9px;line-height:1.7}.employee-breadcrumb>a{min-height:32px}.employee-navigation .back-link{min-height:38px;font-size:.75rem}.employee-layout{grid-template-columns:minmax(0,1fr);gap:36px;padding-top:30px}.employee-identity{position:static;display:grid;grid-template-columns:96px minmax(0,1fr);gap:22px;align-items:start}.employee-photo{aspect-ratio:.8;width:100%;min-height:0}.employee-monogram>span{font-size:2.5rem;letter-spacing:-.05em}.employee-identity-copy{padding:0}.employee-identity h2{font-size:1.35rem;line-height:1.25;margin-bottom:7px}.employee-job{font-size:.75rem;margin-bottom:19px}.employee-facts{gap:13px}.employee-facts dt{font-size:.5625rem;margin-bottom:3px}.employee-facts dd{font-size:.75rem}.employee-facts dd>span{font-size:.6875rem}.employee-story .eyebrow{font-size:.5625rem}.employee-story h2{font-size:1.65rem;margin-bottom:20px;line-height:1.3}.employee-intro{font-size:1rem;line-height:1.9;margin-bottom:25px}.employee-biography{font-size:.9375rem}.employee-connect{margin-top:30px;padding-top:25px}.employee-connect h2{font-size:1.35rem}.employee-contact-details{gap:20px}.employee-story .vcard-actions{flex-direction:column;align-items:stretch;gap:12px}.employee-story .vcard-actions .button{width:100%;font-size:.75rem;min-height:48px}.employee-team-link{max-width:100%;font-size:.75rem;line-height:1.6;margin-top:30px}.employee-page .editorial-header{min-height:320px}.person-card .person-location{font-size:.6875rem!important}.person-card .person-overview{font-size:.75rem!important}.person-card .person-content h2,.people-preview-grid .person-content h2{font-size:1.35rem;line-height:1.25}.team-grid>.person-card:first-child .person-content h2{font-size:1.65rem;line-height:1.2}.expertise-stories{gap:55px}.expertise-story{grid-template-columns:minmax(0,1fr);gap:28px;scroll-margin-top:100px}.expertise-story-image{aspect-ratio:1.35;width:100%}.expertise-story:nth-child(even) .expertise-story-image{grid-column:1;grid-row:1}.expertise-story:nth-child(even) .expertise-story-copy{grid-column:1;grid-row:2}.expertise-story-copy h2{font-size:clamp(1.75rem,1.25rem + 2.4vw,2.2rem);line-height:1.22;margin-bottom:20px}.expertise-story-copy .eyebrow{font-size:.5625rem;margin-bottom:17px}.expertise-summary{font-size:.875rem;line-height:1.85;margin-bottom:20px}.expertise-topics li{font-size:.8125rem;padding-block:9px;line-height:1.7}.expertise-topics li:before{top:18px}.expertise-detail-link{font-size:.75rem;min-height:52px;padding-top:17px;max-width:100%}.expertise-image-number{top:18px;left:18px;min-width:32px;min-height:32px;font-size:.625rem}.expertise-image-link{width:44px;height:44px;font-size:22px;bottom:18px;right:18px}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea,.filter-form select,.search-form input{font-size:1rem!important}.firm-overview-copy p,.firm-practice .prose{font-size:.9375rem}.office-information address,.office-contact-details a{font-size:.875rem}.office-information{min-height:0;padding:28px 24px}.office-actions{margin-top:20px}.office-photograph{height:auto;aspect-ratio:1.25;width:100%}.office-city-type{font-size:clamp(2.75rem,2rem + 3vw,4rem)}.office-photo-label{font-size:.5625rem;line-height:1.7}.footer-signature{font-size:clamp(1.6rem,1rem + 2.5vw,2rem);flex-wrap:wrap}.cookie-banner{max-width:calc(100% - 20px)}.employee-story,.employee-identity,.expertise-story-copy{min-width:0}input,select,textarea{max-width:100%}}
@media(prefers-reduced-motion:reduce){.expertise-story-image>img,.expertise-image-link{transition:none}}
/* Media and copy share the same top/bottom alignment on expertise features. */
@media(min-width:901px){.expertise-story{align-items:stretch}.expertise-story-image{aspect-ratio:auto;min-height:clamp(430px,34vw,560px);height:100%}.expertise-story-copy{display:flex;flex-direction:column;align-self:stretch;padding-block:24px 0}.expertise-detail-link{margin-top:auto}}
.office-actions .office-enquiry-link{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:48px;padding:14px 18px;font-size:.75rem;line-height:1.5;background:var(--brand);color:white;border:1px solid var(--brand);text-decoration:none}.office-actions .office-enquiry-link:hover{background:#85208d;border-color:#85208d}.office-actions .office-enquiry-link>span{font-size:22px}.office-actions{width:100%}
/* Deep links retain the complete office selector above the selected location. */
.office-scene{scroll-margin-top:calc(var(--header-height) + 155px)}
@media(max-width:600px){.office-scene{scroll-margin-top:calc(var(--header-height) + 215px)}.header-home,.employee-navigation .back-link{min-height:44px}.hero-explore{font-size:.75rem}}

/* Shared practice markers retain their alignment in both reading directions. */
.service-offerings li{padding-inline:28px 0}
.service-offerings li::before{content:'';left:auto;inset-inline-start:2px;top:1.85em;width:7px;height:7px;border:1px solid var(--brand);border-radius:2px;transform:rotate(45deg)}
.expertise-topics li::before{content:'';width:6px;height:6px;border:1px solid var(--brand);border-radius:2px;transform:rotate(45deg);flex:none}
.practice-overview{margin-block-end:clamp(32px,4vw,52px)}
.practice-overview p{font-size:clamp(1rem,.95rem + .2vw,1.125rem);line-height:1.9}

/* edition.css */
/* Contemporary legal editorial system: shared geometry, subject-led media, quiet motion. */
:root{--page-gutter:clamp(22px,5vw,96px);--content-max:1440px;--plum:#630969;--paper:#faf8f5;--edition-gap:clamp(28px,4vw,64px)}
.wrap{width:min(calc(100% - var(--page-gutter)*2),var(--content-max));margin-inline:auto}
.site-header{height:auto;min-height:88px;padding:20px var(--page-gutter);gap:32px;display:flex;justify-content:space-between;align-items:center}.site-header>.brand-logo{width:clamp(158px,18vw,230px);flex:0 0 auto}.site-header .brand-logo img{width:100%;height:auto;max-height:68px;object-fit:contain;object-position:left center}.site-header .site-nav{gap:clamp(20px,2.3vw,40px);min-width:0;flex-wrap:nowrap}.site-header .site-nav>a{white-space:nowrap;font-size:.8125rem}.site-nav .nav-contact{padding:14px 20px}
.future-header.editorial-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);min-height:0;background:var(--paper);color:var(--ink);overflow:clip;isolation:isolate}.future-header.editorial-header .page-banner-content{width:auto;max-width:none;margin:0;padding:clamp(40px,5vw,80px) clamp(28px,4vw,72px) clamp(44px,5vw,80px) max(var(--page-gutter),calc((100vw - var(--content-max))/2));display:flex;flex-direction:column;justify-content:center;min-width:0}.future-header .header-home{margin-bottom:28px;font-size:.75rem}.future-header .eyebrow{color:var(--plum);font-size:.625rem;margin:0 0 24px}.future-header .header-layout{display:block;min-width:0}.future-header.editorial-header h1{font-family:var(--font);font-size:clamp(2rem,1.2rem + 2.9vw,4.2rem);font-weight:500;line-height:1.13;letter-spacing:-.045em;max-width:17ch;overflow-wrap:break-word;margin:0;color:var(--ink)}.future-header.editorial-header .lead{padding:0;border:0;font-size:clamp(.875rem,.8rem + .25vw,1.0625rem);line-height:1.8;max-width:48ch;margin:28px 0 0;color:var(--muted)}.future-header .header-visual{height:100%;min-height:380px;max-height:none;position:relative;margin:0;transform:none;clip-path:none}.future-header .page-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none;filter:none;opacity:1}.future-header:before,.future-header:after{display:none}.future-header .byline{margin-top:24px;gap:16px;font-size:.75rem;display:flex;flex-wrap:wrap}
/* A browsable practice index replaces repetitive alternating blocks. */
.practice-intro{display:grid;grid-template-columns:1fr 2fr;gap:20px 50px;align-items:start;margin-bottom:48px}.practice-intro .eyebrow{grid-row:1/3;font-size:.65rem;padding-top:12px}.practice-intro h2{font-size:clamp(2rem,3.5vw,3.75rem);font-weight:500;letter-spacing:-.04em;line-height:1.12;margin:0}.practice-intro>p:last-child{grid-column:2;font-size:.9375rem;color:var(--muted);margin:0}.practice-explorer{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--edition-gap);align-items:start}.practice-index{display:flex;flex-direction:column;border-top:1px solid var(--line);position:sticky;top:125px}.practice-index .practice-select{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:center;gap:16px;background:transparent;padding:26px 16px 26px 0;min-height:104px;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--ink);width:100%;transition:padding .3s,color .3s,background .3s;font-size:clamp(1rem,1.4vw,1.375rem);line-height:1.4;font-weight:500}.practice-index .practice-select .practice-number{font-size:.625rem;color:var(--muted)}.practice-index .practice-select.is-active{color:var(--plum);padding-left:20px;background:#63096908}.practice-index .practice-select:hover{color:var(--plum);background:#63096906}.practice-select:after{display:none}.practice-select:focus-visible{outline:2px solid var(--plum);outline-offset:4px}.practice-stage,.practice-panel{min-width:0}.practice-panel[hidden]{display:none}.practice-panel:not([hidden]){animation:practice-in .45s ease-out}.practice-picture{display:block;position:relative;aspect-ratio:1.5;overflow:hidden;background:#e6dce6}.practice-picture img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.practice-picture:hover img{transform:scale(1.04)}.practice-picture>span{position:absolute;right:24px;bottom:24px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:white;color:var(--plum)}.practice-copy{padding:28px 0 0}.practice-copy .eyebrow{font-size:.625rem;color:var(--plum);margin-bottom:16px}.practice-copy h2{font-size:clamp(1.75rem,2.6vw,2.5rem);font-weight:500;line-height:1.2;letter-spacing:-.03em;margin-bottom:20px}.practice-copy>p:not(.eyebrow){font-size:.9375rem;line-height:1.9;max-width:56ch}.practice-copy .button{font-size:.75rem;margin-top:10px;min-height:48px;gap:35px}
/* One identity block per employee, with a stable portrait and reading column. */
.talent-navigation{display:flex;justify-content:space-between;gap:24px;padding-block:28px;font-size:.75rem}.talent-navigation a{min-height:44px;display:inline-flex;align-items:center}.talent-hero{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);background:var(--paper);min-height:430px}.talent-image{aspect-ratio:1;min-width:0;max-height:560px;position:relative;overflow:hidden}.talent-image img{width:100%;height:100%;object-fit:cover;object-position:50% 24%}.talent-initials{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:48px;background:var(--plum);color:#fff}.talent-initials>span{font-size:clamp(5rem,11vw,10rem);font-weight:400;letter-spacing:-.08em;line-height:1}.talent-initials small{font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;opacity:.65}.talent-heading{padding:clamp(32px,5vw,80px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center;min-width:0}.talent-heading .eyebrow{font-size:.625rem;color:var(--plum);margin-bottom:30px}.talent-heading h1{font-size:clamp(2.1rem,4.3vw,4.5rem);font-weight:500;line-height:1.08;letter-spacing:-.05em;margin:0 0 22px;overflow-wrap:break-word}.talent-role{font-size:clamp(1rem,1.4vw,1.25rem);color:var(--plum);margin:0}.talent-facts{display:flex;gap:32px;flex-wrap:wrap;margin:30px 0}.talent-facts dt{font-size:.625rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.talent-facts dd{font-size:.875rem;margin:0}.talent-overview-link{border-top:1px solid var(--line);min-height:48px;padding-top:15px;margin-top:8px;display:flex;justify-content:space-between;gap:80px;font-size:.75rem;color:var(--plum)}.talent-body{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:0}.talent-sidebar{padding-right:70px;align-self:start;position:sticky;top:135px}.talent-sidebar .eyebrow{font-size:.625rem;margin-bottom:22px}.talent-sidebar>a{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:.8125rem;max-width:260px}.talent-body .employee-story{padding-left:clamp(32px,5vw,80px);min-width:0}.employee-story section{scroll-margin-top:130px}.employee-story .employee-intro{font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.8}.employee-biography{font-size:1rem}.employee-story h2{font-weight:500}
/* Insight covers always occupy the same editorial frame; no inherited image sizing. */
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 32px;align-items:start}.article-grid .article-card{display:flex;flex-direction:column;min-width:0;background:none;border:0;padding:0;box-shadow:none;grid-column:auto;grid-row:auto;gap:0}.article-grid .article-card .article-image{width:100%;aspect-ratio:1.5;height:auto;min-height:0;overflow:hidden;position:relative;margin:0;background:var(--paper)}.article-grid .article-image img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;filter:none;transition:transform .7s ease}.article-grid .article-card:hover img{transform:scale(1.04)}.article-grid .article-card-content{padding:24px 0 0;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.article-grid .article-meta{font-size:.625rem;line-height:1.6;display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--plum);margin-bottom:16px}.article-grid .article-card h3{font-family:var(--font);font-size:clamp(1.25rem,1.6vw,1.625rem);font-weight:500;letter-spacing:-.025em;line-height:1.35;margin:0 0 16px;max-width:100%}.article-grid .article-card p{font-size:.875rem;line-height:1.85;margin:0 0 22px;color:var(--muted)}.article-grid .arrow-link{font-size:.75rem;min-height:44px}.nav-arrow{width:22px;height:22px;display:inline-block;vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.25;transition:transform .25s ease}a:hover .nav-arrow,button:hover .nav-arrow{transform:translateX(4px)}
@keyframes practice-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.site-header .site-nav{gap:20px}.site-header>.brand-logo{width:170px}.site-header .site-nav>a{font-size:.75rem}.future-header.editorial-header h1{font-size:clamp(2rem,4vw,3.5rem)}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.site-header{min-height:80px;padding-block:14px}.site-header .site-nav{gap:0}.site-header .site-nav>a{font-size:1rem}.future-header.editorial-header{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.future-header .header-visual{height:100%;min-height:350px}.future-header.editorial-header .page-banner-content{padding-block:36px}.future-header .header-home{margin-bottom:20px}.future-header.editorial-header h1{font-size:clamp(2rem,4.3vw,3rem)}.future-header.editorial-header .lead{font-size:.875rem}.practice-explorer{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px}.practice-index{top:110px}.practice-index .practice-select{font-size:1rem;gap:10px;padding-block:22px;min-height:100px}.practice-index .practice-select.is-active{padding-left:10px}.practice-copy h2{font-size:1.75rem}.practice-copy>p:not(.eyebrow){font-size:.875rem}.talent-hero{min-height:0}.talent-image{aspect-ratio:.8;height:100%}.talent-heading{padding:32px}.talent-heading h1{font-size:2.6rem}.talent-facts{gap:20px;margin-block:22px}.talent-body .employee-story{padding-left:32px}.talent-sidebar{padding-right:32px}}
@media(max-width:600px){.site-header{min-height:76px;gap:20px}.site-header>.brand-logo{width:156px}.future-header.editorial-header{grid-template-columns:minmax(0,1fr)}.future-header.editorial-header .page-banner-content{padding:28px var(--page-gutter) 36px}.future-header .header-home{font-size:.6875rem;margin-bottom:18px}.future-header .eyebrow{font-size:.5625rem;margin-bottom:20px}.future-header.editorial-header h1{font-size:clamp(2rem,8vw,2.75rem);max-width:20ch;line-height:1.13}.future-header.editorial-header .lead{font-size:.875rem;line-height:1.8;margin-top:20px;max-width:42ch}.future-header .header-visual{height:auto;min-height:0;aspect-ratio:1.9}.future-header .byline{font-size:.6875rem}.practice-intro{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.practice-intro .eyebrow{grid-row:auto;padding:0;margin:0}.practice-intro>p:last-child{grid-column:1;font-size:.875rem}.practice-intro h2{font-size:2.15rem}.practice-explorer{grid-template-columns:minmax(0,1fr);gap:30px}.practice-index{position:static}.practice-index .practice-select{min-height:64px;padding-block:16px;grid-template-columns:22px minmax(0,1fr) 20px;font-size:.9375rem}.practice-copy{padding-top:23px}.practice-copy h2{font-size:1.8rem}.practice-copy .button{width:100%;justify-content:space-between}.practice-picture{aspect-ratio:1.4}.talent-navigation{padding-block:16px;font-size:.6875rem}.talent-hero{grid-template-columns:1fr}.talent-image{aspect-ratio:1.35;height:auto;width:100%;max-height:380px}.talent-initials{gap:25px;padding:28px}.talent-initials>span{font-size:5.5rem}.talent-initials small{font-size:.5625rem}.talent-heading{padding:30px 24px}.talent-heading .eyebrow{font-size:.5625rem;margin-bottom:22px}.talent-heading h1{font-size:clamp(2rem,8.5vw,2.75rem);margin-bottom:16px}.talent-role{font-size:1rem}.talent-facts{margin-block:22px;gap:22px}.talent-overview-link{width:100%;margin-top:0}.talent-body{grid-template-columns:1fr;gap:30px;padding-top:32px}.talent-sidebar{position:static;padding:0;display:flex;flex-wrap:wrap;gap:12px 24px;border-bottom:1px solid var(--line);padding-bottom:16px}.talent-sidebar .eyebrow{display:none}.talent-sidebar>a{font-size:.6875rem;border:0;padding:10px 0;min-height:44px}.talent-body .employee-story{padding:0}.article-grid{grid-template-columns:1fr;gap:42px}.article-grid .article-card h3{font-size:1.375rem}.article-grid .article-card-content{padding-top:22px}.article-grid .article-card p{font-size:.875rem}.article-grid .article-image{aspect-ratio:1.5}.search-form{gap:12px}.search-form input{min-width:0}.future-header .header-image-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.practice-panel:not([hidden]){animation:none}.nav-arrow,.practice-picture img,.article-grid .article-image img{transition:none}}
.future-header .header-home{color:var(--plum)}.future-header .header-home:hover{color:var(--ink)}.site-header .nav-contact .nav-arrow{stroke-width:1.2;width:24px}.talent-body .employee-story .eyebrow{color:var(--plum)}
.practice-panel{scroll-margin-top:110px}
:root{--header-height:108px}.talent-navigation>a{gap:10px}.talent-sidebar>a .nav-arrow{margin-left:auto}.signature-hero .hero-image{filter:none}
@media(max-width:900px){:root{--header-height:82px}}
@media(max-width:600px){:root{--header-height:76px}}
/* The directory uses one consistent portrait and identity rhythm for every colleague. */
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 32px}.team-grid>.person-card,.team-grid>.person-card:first-child{display:flex;flex-direction:column;grid-column:auto;gap:0;padding:0;margin:0;border:0;align-items:stretch}.team-grid>.person-card .person-avatar,.team-grid>.person-card:first-child .person-avatar{width:100%;aspect-ratio:1.25;min-height:0;background:#f0e9ef;border:0}.team-grid .identity-orbit,.team-grid .identity-sign{display:none}.team-grid>.person-card .identity-monogram,.team-grid>.person-card:first-child .identity-monogram{font-size:clamp(3.5rem,5.5vw,5rem);font-weight:400;color:var(--plum);letter-spacing:-.06em}.team-grid .person-index{font-size:.625rem;top:18px;left:20px;color:var(--plum)}.team-grid .person-content{padding-top:24px}.team-grid>.person-card .person-content h2,.team-grid>.person-card:first-child .person-content h2{font-size:clamp(1.3rem,1.8vw,1.8rem);font-weight:500;line-height:1.25;min-height:0;margin-bottom:14px}.team-grid>.person-card .person-role,.team-grid>.person-card:first-child .person-role{font-size:.625rem!important;min-height:0;margin-bottom:12px;line-height:1.6}.team-grid>.person-card .person-overview,.team-grid>.person-card:first-child .person-overview{font-size:.875rem!important;min-height:0;line-height:1.8;-webkit-line-clamp:2}.team-grid>.person-card .profile-trigger,.team-grid>.person-card:first-child .profile-trigger{font-size:.75rem;margin-top:18px;max-width:100%;min-height:44px}.team-grid .profile-circle{border:0;width:32px;height:32px}.team-grid>.person-card:hover .person-avatar{background:#e5d7e7}.team-grid .person-avatar.has-portrait img{object-position:50% 24%;filter:none}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}}
@media(max-width:600px){.team-grid{grid-template-columns:1fr;gap:28px}.team-grid>.person-card,.team-grid>.person-card:first-child{display:grid;grid-template-columns:88px minmax(0,1fr);gap:22px;padding:0 0 26px;border-bottom:1px solid var(--line);align-items:start}.team-grid>.person-card .person-avatar,.team-grid>.person-card:first-child .person-avatar{aspect-ratio:.8;width:100%}.team-grid>.person-card .identity-monogram,.team-grid>.person-card:first-child .identity-monogram{font-size:2rem}.team-grid .person-index{display:none}.team-grid .person-content{padding:0}.team-grid>.person-card .person-content h2,.team-grid>.person-card:first-child .person-content h2{font-size:1.25rem;margin-bottom:12px}.team-grid>.person-card .person-role,.team-grid>.person-card:first-child .person-role{font-size:.5625rem!important;margin-bottom:10px}.team-grid>.person-card .person-overview,.team-grid>.person-card:first-child .person-overview{font-size:.75rem!important}.team-grid>.person-card .profile-trigger,.team-grid>.person-card:first-child .profile-trigger{font-size:.6875rem;margin-top:10px}}
@media(min-width:601px){.team-grid>.person-card,.team-grid>.person-card:first-child{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}.team-grid>.person-card .person-avatar,.team-grid>.person-card:first-child .person-avatar{height:auto;aspect-ratio:1.25;grid-column:1;grid-row:1}.team-grid>.person-card .person-content,.team-grid>.person-card:first-child .person-content{grid-column:1;grid-row:2;padding-top:24px}.team-grid>.person-card .profile-trigger{margin-top:auto}}
/* Every contemporary header keeps its image in a separate grid cell. */
.future-header.editorial-header .header-visual{position:relative;inset:auto;z-index:0;width:auto;height:100%;min-width:0}.future-header.editorial-header .page-banner-content{background:var(--paper);color:var(--ink);z-index:1}.future-header.editorial-header .header-visual img{object-position:50% 45%}
.site-header .site-nav{gap:clamp(16px,1.8vw,30px)}
.cookie-banner{z-index:90;border-radius:4px;border-top:3px solid var(--plum);box-shadow:0 14px 60px #24122524}.cookie-banner[hidden]{display:none!important}.cookie-reopen{position:fixed;left:20px;bottom:18px;z-index:55;background:#fff;color:var(--plum);border:1px solid #d9cbdc;border-radius:30px;padding:10px 16px;font-size:.6875rem;min-height:44px;box-shadow:0 3px 18px #24122515;cursor:pointer}.has-cookie-banner .cookie-reopen{display:none}.cookie-banner .cookie-actions{gap:10px}.cookie-banner .button{font-size:.6875rem;min-height:44px}.cookie-banner h2{font-size:1.2rem;line-height:1.3}.cookie-banner p{line-height:1.7}.enquiry-section{scroll-margin-top:calc(var(--header-height) + 24px)}.enquiry-intro .threecx-talk{display:flex;justify-content:space-between;gap:28px;padding:16px 20px;max-width:340px;margin-top:28px;color:white;font-size:.8125rem;min-height:52px}.enquiry-intro .threecx-talk:hover{color:white}
/* Arrows move once along a clipped track; text and focus remain stable. */
.nav-arrow{stroke-width:1.4;transition:transform .28s cubic-bezier(.2,.7,.2,1);overflow:visible}a:hover .nav-arrow,button:hover .nav-arrow{transform:translateX(3px)}.practice-picture>span,.profile-circle,.round-arrow,.hero-explore-circle{overflow:hidden}.practice-picture:hover .nav-arrow,.person-card:hover .profile-circle .nav-arrow,.knowledge-lead:hover .round-arrow .nav-arrow{animation:arrow-pass .45s cubic-bezier(.2,.7,.2,1)}@keyframes arrow-pass{0%{transform:translateX(0);opacity:1}45%{transform:translateX(22px);opacity:0}46%{transform:translateX(-20px);opacity:0}100%{transform:translateX(0);opacity:1}}
.careers-story{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:var(--edition-gap);align-items:start}.careers-story>h2{font-size:clamp(1.75rem,3vw,3rem);font-weight:500;line-height:1.15;letter-spacing:-.035em}.careers-copy{max-width:760px}.careers-copy .prose{font-size:1rem;line-height:1.9}.careers-cta{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;font-size:.8125rem}
@media(max-width:1100px) and (min-width:901px){.site-header .site-nav{gap:14px}.site-header>.brand-logo{width:160px}.site-header .site-nav>a{font-size:.6875rem}.site-header .nav-contact{padding:13px 16px}}
@media(max-width:600px){.future-header.editorial-header .header-visual{height:auto;min-height:0;aspect-ratio:1.9}.cookie-banner{inset:auto 12px 12px;padding:20px;max-height:70svh;gap:16px}.cookie-banner h2{font-size:1.0625rem}.cookie-banner p{font-size:.75rem}.cookie-banner .cookie-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}.cookie-banner .cookie-actions>.button{font-size:.625rem;padding:12px 8px}.cookie-banner .cookie-actions>.button:last-child{grid-column:1/-1}.cookie-reopen{left:12px;bottom:12px;font-size:.625rem;padding:9px 13px}.careers-story{grid-template-columns:1fr;gap:28px}.careers-copy .prose{font-size:.9375rem}.careers-cta{width:100%;font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.nav-arrow{transition:none!important;animation:none!important}}
/* Subject to practice mapping: all capabilities are visible and directly linked. */
.practice-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 32px;align-items:start}.practice-tile{display:block;min-width:0}.practice-tile-image{aspect-ratio:1.15;position:relative;overflow:hidden;background:var(--paper)}.practice-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.practice-tile:nth-child(3n+2) .practice-tile-image{aspect-ratio:.95}.practice-tile-action{position:absolute;right:18px;bottom:18px;width:48px;height:48px;border-radius:50%;background:white;color:var(--plum);display:grid;place-items:center;overflow:hidden;transition:background .25s,color .25s}.practice-tile-copy{padding:26px 0 0}.practice-tile-copy .eyebrow{font-size:.625rem;color:var(--plum);display:block;margin-bottom:16px}.practice-tile-copy h2{font-weight:500;font-size:clamp(1.4rem,2vw,2rem);line-height:1.22;letter-spacing:-.025em;margin:0 0 18px}.practice-tile-copy p{font-size:.875rem;line-height:1.9;margin-bottom:20px}.practice-tile-label{display:block;min-height:44px;font-size:.75rem;color:var(--plum);border-top:1px solid var(--line);padding-top:16px}.practice-tile:hover .practice-tile-image img{transform:scale(1.035)}.practice-tile:hover .practice-tile-action{background:var(--plum);color:white}.practice-tile:hover .nav-arrow{animation:arrow-pass .45s ease}.practice-tile:focus-visible{outline:2px solid var(--plum);outline-offset:7px}
@media(max-width:900px){.practice-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}.practice-tile:nth-child(3n+2) .practice-tile-image{aspect-ratio:1.15}}
@media(max-width:600px){.practice-catalog{grid-template-columns:minmax(0,1fr);gap:38px}.practice-tile-image,.practice-tile:nth-child(3n+2) .practice-tile-image{aspect-ratio:1.35}.practice-tile-copy{padding-top:22px}.practice-tile-copy h2{font-size:1.625rem}.practice-tile-copy p{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.practice-tile-image img,.practice-tile-action{transition:none}.practice-tile:hover .nav-arrow{animation:none}}
.detail-layout:not(:has(.detail-aside)){display:block}.detail-layout:not(:has(.detail-aside))>.prose{max-width:880px;margin-inline:auto}.detail-layout:not(:has(.detail-aside)) .prose h2{scroll-margin-top:130px}
/* Homepage: a self-contained full-bleed composition, free of retired hero rules. */
.home-hero{position:relative;isolation:isolate;display:flex;align-items:center;background:#241725;color:white;min-height:min(850px,calc(100svh - var(--header-height)));overflow:clip}.home-hero-picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-3}.home-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#241225ed 0%,#241225ba 28%,#24122530 65%,#2412250a),linear-gradient(0deg,#211724a6,transparent 35%)}.home-hero-inner{padding-block:clamp(70px,7.5vw,120px) 120px}.home-hero-copy{width:min(100%,620px)}.home-hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:16px;font-size:clamp(.5625rem,.5rem + .14vw,.6875rem);letter-spacing:.08em;line-height:1.8;text-transform:uppercase;color:#fff;margin:0 0 32px}.home-hero-kicker>span{color:#ccb5d0}.home-hero h1{font-family:var(--font);font-size:clamp(3rem,1.4rem + 3.9vw,5.5rem);font-weight:500;line-height:1.12;letter-spacing:-.045em;max-width:100%;margin:0 0 28px;text-wrap:initial;overflow-wrap:normal}.home-hero h1>span{display:block}.home-hero h1>span+span{color:#edd6ee;font-weight:400}.home-hero-summary{max-width:410px;font-size:clamp(.875rem,.78rem + .22vw,1.0625rem);line-height:1.85;color:#f4eff4;margin:0 0 32px}.home-hero-cta{display:inline-flex;align-items:center;gap:24px;color:white;font-size:.8125rem;min-height:48px}.action-circle{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #ffffff65;border-radius:50%;flex:0 0 48px;overflow:hidden}.home-hero-cta:hover .action-circle{background:white;color:var(--plum);border-color:white}.home-hero-footer{position:absolute;bottom:24px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:.625rem;line-height:1.8}.home-hero-footer>a{display:inline-flex;align-items:center;gap:18px;min-height:44px}.home-hero-footer>p{margin:0;color:#eee4ef;display:flex;flex-wrap:wrap;gap:12px}.home-hero-copy>*{animation:home-enter .6s cubic-bezier(.2,.7,.2,1) both}.home-hero-copy>h1{animation-delay:.07s}.home-hero-summary{animation-delay:.12s}.home-hero-cta{animation-delay:.17s}@keyframes home-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* Circular navigation shares one size and a centered, identical SVG geometry. */
.round-action,.round-arrow,.hero-explore-circle,.profile-circle,.expertise-image-link,.practice-tile-action,.practice-picture>span,.action-circle{box-sizing:border-box;width:48px!important;height:48px!important;min-width:48px;min-height:48px;max-width:48px;max-height:48px;flex:0 0 48px;display:inline-flex!important;align-items:center;justify-content:center;padding:0;line-height:1;border-radius:50%;vertical-align:middle}.round-action .nav-arrow,.round-arrow .nav-arrow,.hero-explore-circle .nav-arrow,.profile-circle .nav-arrow,.expertise-image-link .nav-arrow,.practice-tile-action .nav-arrow,.action-circle .nav-arrow{width:22px;height:22px;display:block;margin:0}.round-action>span,.round-arrow>span{display:flex;align-items:center;justify-content:center}.profile-trigger{align-items:center}.profile-trigger .profile-circle{margin-left:auto}
/* Type and section rhythm scale within readable bounds, without fixed content heights. */
:root{--section-space:clamp(56px,7.3vw,112px)}.section{padding-block:var(--section-space)}.section-heading h2,.firm-story-main h2,.office-introduction h2{font-size:clamp(2rem,1.3rem + 2.7vw,4rem);line-height:1.14;letter-spacing:-.035em}.section-heading .arrow-link{flex-shrink:0}.section-heading,.directory-heading,.office-introduction,.firm-story-copy,.footer-top{min-width:0}.prose p,.employee-story p,.careers-copy p{overflow-wrap:break-word}.people-statement h2,.perspective-film h2{font-size:clamp(2.1rem,1.3rem + 3.4vw,4.75rem);line-height:1.16}.people-statement,.perspective-film{min-height:0}.people-statement>.wrap,.perspective-film>.wrap{padding-block:clamp(64px,9vw,140px)}
@media(max-width:1100px){.home-hero-copy{max-width:560px}.home-hero h1{font-size:clamp(3rem,5.7vw,4.6rem)}}
@media(max-width:900px){.home-hero{min-height:650px}.home-hero-inner{padding-block:70px 120px}.home-hero-copy{max-width:530px}.home-hero h1{font-size:clamp(2.75rem,6.3vw,4rem)}.home-hero-shade{background:linear-gradient(90deg,#241225e8,#241225a1 45%,#24122526),linear-gradient(0deg,#211724a6,transparent 45%)}.home-hero-kicker{max-width:440px;gap:10px;font-size:.5625rem}.home-hero-footer>p{gap:8px;font-size:.5625rem}}
@media(max-width:600px){.home-hero{min-height:calc(100svh - var(--header-height));align-items:flex-start}.home-hero-inner{padding-block:70px 190px}.home-hero-copy{width:100%;max-width:100%}.home-hero-picture{object-position:67% center}.home-hero-shade{background:linear-gradient(180deg,#241225cc,#24122588 58%,#241225b8),linear-gradient(90deg,#24122570,transparent)}.home-hero-kicker{font-size:.5rem;gap:8px;margin-bottom:26px;max-width:100%;letter-spacing:.04em}.home-hero h1{font-size:clamp(2.1rem,1rem + 5.2vw,3.1rem);line-height:1.15;letter-spacing:-.035em;margin-bottom:26px}.home-hero-summary{max-width:32ch;font-size:.875rem;margin-bottom:28px;line-height:1.85}.home-hero-cta{font-size:.75rem;gap:20px}.home-hero-footer{bottom:22px;flex-direction:column;align-items:flex-start;gap:10px;font-size:.625rem}.home-hero-footer>p{font-size:.5625rem;gap:9px}.home-hero-footer>a{min-height:36px}.round-action,.round-arrow,.hero-explore-circle,.profile-circle,.expertise-image-link,.practice-tile-action,.practice-picture>span,.action-circle{width:44px!important;height:44px!important;min-width:44px;min-height:44px;max-width:44px;max-height:44px;flex-basis:44px}.nav-arrow{width:22px;height:22px}.section-heading{flex-wrap:wrap;gap:24px}.section-heading h2,.firm-story-main h2,.office-introduction h2{font-size:clamp(1.85rem,1.2rem + 3vw,2.5rem)}.modern-contact-cta h2{font-size:clamp(2.25rem,1.5rem + 4vw,3.5rem)}.footer-signature{font-size:clamp(1.5rem,1rem + 3vw,2rem)}}
@media(prefers-reduced-motion:reduce){.home-hero-copy>*{animation:none}}
.home-hero h1{font-size:clamp(3rem,1.4rem + 3.9vw,5rem);letter-spacing:-.03em}.knowledge-lead h3{font-size:clamp(1.5rem,1.1rem + 1.7vw,2.5rem);line-height:1.25}.knowledge-row h3{font-size:clamp(1.25rem,1rem + 1vw,1.875rem);line-height:1.3}.expertise-feature-content h3{font-size:clamp(1.75rem,1.2rem + 2.3vw,3rem);line-height:1.2}.office-information h3{font-size:clamp(1.5rem,1.2rem + 1vw,2.25rem);line-height:1.25}.office-city-type{font-size:clamp(2.75rem,4.7vw,6.25rem);line-height:1.1;max-width:calc(100% - 56px)}
@media(max-width:900px){.home-hero h1{font-size:clamp(2.75rem,6.3vw,4rem)}}
@media(max-width:600px){.home-hero h1{font-size:clamp(2.1rem,1rem + 5.2vw,3.1rem)}.home-hero-footer{bottom:78px}.home-hero-inner{padding-bottom:210px}}
@media(min-width:601px){.home-hero-footer{bottom:72px}}
.people-filter-status{font-size:.75rem;line-height:1.7;min-height:1.7em;margin:0 0 20px;color:var(--muted)}.people-filter-status.is-error{color:#9b2039}.team-results[aria-busy=true]{opacity:.55;transition:opacity .15s}.filter-form .button:disabled{cursor:progress;opacity:.65}.filter-form .filter-reset[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.team-results[aria-busy=true]{transition:none}}
/* Cinematic image movement and coordinated entrances, inspired by the supplied motion references. */
@media(prefers-reduced-motion:no-preference){.home-hero-picture{animation:hero-camera 18s ease-in-out infinite alternate;will-change:transform}.home-hero-copy>*{animation:hero-rise .5s cubic-bezier(.16,1,.3,1) both}.home-hero h1>span{animation:headline-rise .6s cubic-bezier(.16,1,.3,1) both;animation-delay:.12s}.home-hero h1>span+span{animation-delay:.12s}.home-hero-summary{animation-delay:.16s}.home-hero-cta{animation-delay:.2s}.reveal.will-reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}.reveal.will-reveal.is-visible{opacity:1;transform:translateY(0)}.practice-tile-image,.knowledge-lead-image,.office-photograph{overflow:hidden}.practice-tile-image img,.knowledge-lead-image img{transition:transform .9s cubic-bezier(.16,1,.3,1)}.practice-tile:hover .practice-tile-image img,.knowledge-lead:hover .knowledge-lead-image img{transform:scale(1.055)}.expertise-feature-panel:not([hidden]){animation:panel-arrival .55s cubic-bezier(.16,1,.3,1)}.team-results.is-updated{animation:panel-arrival .35s ease-out}}
@keyframes hero-camera{from{transform:scale(1.035) translate3d(-.4%,0,0)}to{transform:scale(1.095) translate3d(.6%,-.5%,0)}}@keyframes hero-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes headline-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes panel-arrival{from{opacity:.1;transform:translateY(12px)}to{opacity:1;transform:none}}
.motion-toggle{color:inherit;background:transparent;border:1px solid #ffffff45;border-radius:24px;padding:9px 14px;min-height:40px;font:inherit;cursor:pointer;white-space:nowrap}.motion-toggle:hover{background:#ffffff14}.home-hero-footer{flex-wrap:wrap}.home-hero-footer .motion-toggle{margin-inline-start:auto}.home-hero-footer>p{margin-inline-start:20px}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .reveal.will-reveal{opacity:1;transform:none;transition:none}.motion-paused .home-hero-copy>*,.motion-paused .home-hero h1>span{opacity:1;transform:none;filter:none;animation:none!important}
@media(max-width:600px){.home-hero-footer{flex-direction:row;align-items:center;gap:8px 20px}.home-hero-footer .motion-toggle{margin:0 0 0 auto;font-size:.5625rem;padding:7px 11px;min-height:36px}.home-hero-footer>p{width:100%;margin:0}.motion-toggle[hidden]{display:none}}
@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}.home-hero-picture,.home-hero-copy>*,.home-hero h1>span,.reveal,.expertise-feature-panel{animation:none!important;transition:none!important;filter:none!important;transform:none!important;opacity:1!important}}
.future-header.editorial-header .byline{color:var(--muted)}
.future-header.editorial-header .byline :is(span,time){color:inherit}

/* languages.css */
@font-face{font-family:'Tajawal';src:url('/static/fonts/tajawal-400.ttf?v=6882892da3e0') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Tajawal';src:url('/static/fonts/tajawal-500.ttf?v=1ff8bd943a26') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:'Tajawal';src:url('/static/fonts/tajawal-700.ttf?v=0342ab6b74b6') format('truetype');font-weight:600 900;font-display:swap}
@font-face{font-family:'Noto Sans Arabic';src:url('/static/fonts/noto-arabic-400.ttf?v=146b2193f4ae') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Noto Sans Arabic';src:url('/static/fonts/noto-arabic-500.ttf?v=d7a418213a9c') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:'Noto Sans Arabic';src:url('/static/fonts/noto-arabic-600.ttf?v=f74ac4557632') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:'Noto Sans Arabic';src:url('/static/fonts/noto-arabic-700.ttf?v=195e8d8e1e72') format('truetype');font-weight:700;font-display:swap}
.language-switch{font-size:.75rem!important;border:1px solid var(--line);border-radius:3px;padding:9px 11px!important;line-height:1.5;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.language-switch[lang=ar]{font-family:'Tajawal',sans-serif}.site-header .site-nav{gap:clamp(12px,1.25vw,24px)}
html[dir=rtl]{--font:'Tajawal','Plus Jakarta Sans',sans-serif;--editorial:var(--font)}html[dir=rtl] body{font-family:var(--font)}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3{letter-spacing:0;line-height:1.5;text-wrap:pretty}html[dir=rtl] .eyebrow{letter-spacing:0}html[dir=rtl] .home-hero-picture{transform:scaleX(-1)}html[dir=rtl] .home-hero-shade{background:linear-gradient(270deg,#241225ed 0%,#241225ba 28%,#24122530 65%,#2412250a),linear-gradient(0deg,#211724a6,transparent 35%)}html[dir=rtl] .home-hero h1{font-size:clamp(2.5rem,1.5rem + 3vw,4.5rem);letter-spacing:0;line-height:1.65}html[dir=rtl] .home-hero-kicker{letter-spacing:0}html[dir=rtl] .nav-arrow{transform:scaleX(-1)}html[dir=rtl] a:hover .nav-arrow,html[dir=rtl] button:hover .nav-arrow{transform:scaleX(-1) translateX(3px);animation:none}html[dir=rtl] .future-header.editorial-header .page-banner-content{padding-inline:max(var(--page-gutter),calc((100vw - var(--content-max))/2)) clamp(28px,4vw,72px)}html[dir=rtl] .future-header.editorial-header h1{letter-spacing:0;font-size:clamp(2rem,1.2rem + 2.5vw,3.5rem);line-height:1.6}html[dir=rtl] .talent-body .employee-story{padding-inline:clamp(32px,5vw,80px) 0}html[dir=rtl] .talent-sidebar{padding-inline:0 70px}html[dir=rtl] .team-grid .person-index{left:auto;right:20px}html[dir=rtl] .profile-trigger .profile-circle{margin-left:0;margin-right:auto}html[dir=rtl] .person-card .person-role{letter-spacing:0}html[dir=rtl] .office-information h3{line-height:1.6}html[dir=rtl] .office-city-type{left:auto;right:32px}html[dir=rtl] .office-photo-label{left:auto;right:32px}html[dir=rtl] .filter-form label,html[dir=rtl] .enquiry-form label{text-align:right}html[dir=rtl] .expertise-tab{text-align:right}html[dir=rtl] .expertise-tab-number{margin-left:0;margin-right:0}html[dir=rtl] .knowledge-row h3,html[dir=rtl] .knowledge-lead h3{line-height:1.6}html[dir=rtl] .article-grid .article-card h3{line-height:1.6}html[dir=rtl] .content-table{text-align:right}html[dir=rtl] input[type=email],html[dir=rtl] a[href^="mailto:"],html[dir=rtl] a[href^="tel:"]{direction:ltr;unicode-bidi:isolate}
@media(max-width:1100px) and (min-width:901px){.site-header .site-nav{gap:10px}.site-header>.brand-logo{width:145px}.site-header .site-nav>a{font-size:.65rem}.language-switch{padding:7px 9px!important}.site-header{gap:22px}.site-header .nav-contact{padding:12px}}
@media(max-width:900px){.site-header .site-nav{gap:0}.site-nav .language-switch{margin-block:8px;max-width:150px}.site-nav.is-open{max-height:calc(100svh - var(--header-height));overflow-y:auto}html[dir=rtl] .talent-sidebar{padding-inline:0 32px}}
@media(max-width:600px){html[dir=rtl] .home-hero-shade{background:linear-gradient(180deg,#241225cc,#24122588 58%,#241225b8),linear-gradient(270deg,#24122570,transparent)}html[dir=rtl] .home-hero h1{font-size:clamp(2rem,1rem + 4vw,2.75rem);line-height:1.65}html[dir=rtl] .home-hero-summary{line-height:2}html[dir=rtl] .home-hero-inner{padding-top:50px}html[dir=rtl] .future-header.editorial-header .page-banner-content{padding-inline:var(--page-gutter)}html[dir=rtl] .future-header.editorial-header h1{font-size:clamp(1.8rem,7.3vw,2.4rem)}html[dir=rtl] .talent-body .employee-story{padding:0}html[dir=rtl] .talent-sidebar{padding:0}html[dir=rtl] .office-city-type,html[dir=rtl] .office-photo-label{right:24px}}
@media(prefers-reduced-motion:no-preference){html[dir=rtl] .home-hero-picture{animation-name:hero-camera-rtl}}@keyframes hero-camera-rtl{from{transform:scaleX(-1) scale(1.035) translate3d(-.4%,0,0)}to{transform:scaleX(-1) scale(1.095) translate3d(.6%,-.5%,0)}}
@media(prefers-reduced-motion:reduce){html[dir=rtl] .home-hero-picture{transform:scaleX(-1)!important}}

.language-menu{position:relative;flex:none;direction:ltr}.language-menu summary{list-style:none;display:flex;gap:7px;align-items:center;justify-content:center;min-width:76px;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:24px;cursor:pointer;color:var(--ink);font-size:.68rem;font-weight:600;background:transparent;transition:border-color .2s,background .2s}.language-menu summary::-webkit-details-marker{display:none}.language-menu summary:hover,.language-menu[open] summary{border-color:var(--plum,#64116e);background:#f6f1f6}.language-globe{width:19px;height:19px;stroke:currentColor;stroke-width:1.4}.language-chevron{width:10px;height:10px;stroke:currentColor;stroke-width:1.5;fill:none;transition:transform .2s}.language-menu[open] .language-chevron{transform:rotate(180deg)}.language-options{position:absolute;top:calc(100% + 12px);inset-inline-end:0;width:194px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #2117241a;z-index:100;animation:language-arrive .18s ease-out}.language-menu-caption{display:block;padding:8px 12px;font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.language-options a{display:flex!important;justify-content:space-between;gap:16px;padding:12px!important;min-height:44px;font-size:.8rem!important;line-height:1.5!important;border-radius:6px;white-space:nowrap}.language-options a[lang=ar]{font-family:'Tajawal',sans-serif}.language-options a:hover,.language-options a[aria-current]{background:#f6f1f6;color:var(--plum,#64116e)}.language-options a::after{display:none!important}.language-mark{color:var(--plum,#64116e)}.language-menu summary:focus-visible,.language-options a:focus-visible{outline:2px solid var(--plum,#64116e);outline-offset:4px}
@keyframes language-arrive{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.site-nav .language-menu{align-self:flex-start;margin-block:14px}.language-options{position:relative;top:auto;margin-top:8px;box-shadow:none}.language-menu summary{width:90px}}
@media(prefers-reduced-motion:reduce){.language-options{animation:none}.language-chevron{transition:none}}
.cms-section-layout{display:grid;gap:clamp(28px,5vw,80px);align-items:center}.cms-section-visual{margin:0;min-width:0;overflow:hidden}.cms-section-visual img{display:block;width:100%;aspect-ratio:8/5;object-fit:cover}.cms-section-copy{min-width:0;max-width:840px}.cms-section-copy h2{font-size:clamp(2rem,1rem + 3vw,4rem);text-wrap:balance;line-height:1.2;margin-block:16px 24px}.cms-section-copy .prose{margin-block:24px}.cms-section--image .cms-section-layout{grid-template-columns:1fr 1fr}.cms-section--statement{background:var(--cream,#f7f5f0)}.cms-section--statement .cms-section-copy{margin-inline:auto;text-align:center}.cms-section--statement h2{font-size:clamp(2.3rem,1rem + 4vw,5rem)}.cms-section--call-to-action{background:#501057;color:white}.cms-section--call-to-action .eyebrow,.cms-section--call-to-action .lead{color:#ead9ec}.cms-section--call-to-action .button{background:white;color:#501057}.cms-section-copy .button{margin-top:24px}html[dir=rtl] .cms-section-copy h2{line-height:1.6}@media(max-width:768px){.cms-section--image .cms-section-layout{grid-template-columns:1fr}}

.honeypot{position:absolute!important;left:auto!important;right:auto!important;inset-inline-start:0!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;pointer-events:none}

.cms-section--call-to-action .prose p{color:#f4eaf4}.cms-section--image .cms-section-layout:not(:has(.cms-section-visual)){grid-template-columns:1fr}
.career-application{background:var(--paper);scroll-margin-top:calc(var(--header-height,108px) + 20px)}.career-application-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,110px);align-items:start}.career-application-intro h2{font-size:clamp(2rem,1rem + 2.5vw,3.5rem);line-height:1.25;margin-bottom:24px}.career-application-intro>p{max-width:42ch;line-height:1.85;margin-bottom:24px}.career-application-panel{min-width:0}.cv-upload{padding:24px;border:1px solid var(--line);background:white}.cv-upload input{border:0;padding:12px 0;background:none;font:inherit}.cv-upload input::file-selector-button{padding:12px 16px;border:1px solid var(--plum);background:white;color:var(--plum);margin-inline-end:16px;cursor:pointer}.career-form .checkbox-row{line-height:1.8}.career-form .checkbox-row a{text-decoration:underline}.career-form button:disabled,.enquiry-form button:disabled{opacity:.5;cursor:not-allowed}.enquiry-context{border-inline-start:3px solid var(--plum);padding:12px 20px;background:var(--paper);margin-bottom:6px}.enquiry-context span{display:block;font-size:.7rem;color:var(--muted);margin-bottom:8px}.enquiry-context strong{font-size:1rem;font-weight:500;color:var(--ink)}.captcha-field{max-width:100%;min-width:0}.captcha-field .cf-turnstile{max-width:100%;min-height:65px}.captcha-test-note{font-size:.65rem}.career-application .notice h3{font-size:1.25rem;margin-bottom:16px}html[dir=rtl] .career-application-intro h2{line-height:1.65}html[dir=rtl] input[type=tel]{direction:ltr;text-align:right}@media(max-width:900px){.career-application-layout{grid-template-columns:1fr;gap:32px}.career-application-intro>p{max-width:100%}}@media(max-width:600px){.cv-upload{padding:18px}.career-application .form-row{grid-template-columns:1fr}.career-application input,.career-application select,.career-application textarea{font-size:1rem}.career-form .button{width:100%}.cv-upload input{font-size:.8rem}}

.cv-file-control{display:flex;align-items:center;gap:16px;min-width:0;position:relative}.cv-file-input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;clip-path:inset(50%);overflow:hidden}.cv-file-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border:1px solid var(--plum);color:var(--plum);font-size:.8rem;cursor:pointer;flex:none;margin:0;background:#fff}.cv-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:var(--muted)}.cv-file-control:focus-within .cv-file-button{outline:2px solid var(--plum);outline-offset:4px}.cv-file-button:hover{background:#f6f0f7}

html[dir=rtl] body{line-height:1.9}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3{font-weight:500;line-height:1.45}html[dir=rtl] .home-hero h1{line-height:1.35}html[dir=rtl] .home-hero-summary{font-size:clamp(1rem,.9rem + .3vw,1.2rem);line-height:1.9}html[dir=rtl] .future-header.editorial-header h1{line-height:1.4}html[dir=rtl] .prose{font-size:1.0625rem;line-height:2}html[dir=rtl] .eyebrow{font-weight:500}html[dir=rtl] .site-header .site-nav>a{font-size:.85rem}html[dir=rtl] .enquiry-form label{font-size:.9375rem}html[dir=rtl] .atlas-practice h3{line-height:1.45}html[dir=rtl] .atlas-chapter h2{line-height:1.4}html[dir=rtl] .footer-description{line-height:1.9}

/* Telephone digits retain their international reading order in either language. */
.stack-form input.international-phone,html[dir=rtl] .stack-form input.international-phone{direction:ltr;text-align:left;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.language-options{display:flex;flex-direction:column;gap:2px}
html[dir=rtl] .language-options{direction:rtl;text-align:right}
.language-options a{align-items:center;width:100%}
.language-options a>span:first-child{unicode-bidi:isolate}
@media(max-width:900px){.language-options{position:absolute;top:calc(100% + 8px);margin-top:0;box-shadow:0 12px 40px #2117241a}.language-menu{isolation:isolate}}
.international-phone+.help{font-size:.75rem;line-height:1.8;margin-block:8px 0}
@media(max-width:900px){.language-menu .language-options{inset-inline-end:auto;left:0;right:auto}html[dir=rtl] .language-menu .language-options{left:auto;right:0}}

.mobile-header-tools{display:contents}.mobile-language-slot{display:none}
@media(max-width:900px){
 .mobile-header-tools{display:flex;align-items:center;gap:8px;flex:none}
 .mobile-language-slot{display:block;min-width:0}
 .mobile-header-tools .menu-toggle{margin:0;flex:none}
 .mobile-header-tools .language-menu{margin:0;align-self:auto}
 .mobile-header-tools .language-menu summary{width:auto;min-width:70px;min-height:44px;padding:8px;gap:5px}
 .mobile-header-tools .language-chevron{display:none}
 .mobile-header-tools .language-menu .language-options{left:auto;right:0}
 html[dir=rtl] .mobile-header-tools .language-menu .language-options{left:0;right:auto}
}
@media(max-width:360px){.site-header{gap:12px}.site-header>.brand-logo{width:138px}.mobile-header-tools{gap:4px}}

/* French copy wraps as phrases; Chinese uses natural character line breaking. */
html[lang=fr] .home-hero h1{font-size:clamp(2.3rem,4.5vw,5rem);line-height:1.12;max-width:15ch}
html[lang=fr] .site-header .site-nav{gap:clamp(16px,1.5vw,28px)}
html[lang=fr] .site-header .site-nav>a{font-size:.75rem}
html[lang=fr] .future-header h1{font-size:clamp(2rem,4.2vw,4.5rem)}
html[lang=zh]{--font:'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif}
html[lang=zh] :is(h1,h2,h3,.eyebrow){letter-spacing:0;word-break:normal;overflow-wrap:anywhere}
html[lang=zh] .home-hero h1{font-size:clamp(2.2rem,4.8vw,5rem);line-height:1.3;max-width:13ch}
html[lang=zh] .home-hero-summary{line-height:1.9;max-width:32em}
html[lang=zh] .future-header h1{font-size:clamp(2rem,4.5vw,4.75rem);line-height:1.35}
html[lang=zh] .prose{line-height:2}
html[lang=zh] .eyebrow{line-height:1.8}
@media(max-width:600px){html[lang=fr] .home-hero h1{font-size:clamp(2rem,8.8vw,2.75rem)}html[lang=zh] .home-hero h1{font-size:clamp(2rem,8.5vw,2.75rem)}html[lang=fr] .future-header h1,html[lang=zh] .future-header h1{font-size:clamp(1.8rem,7.5vw,2.4rem)}html[lang=fr] .cookie-banner .cookie-actions>.button{font-size:.65rem;white-space:normal;line-height:1.5}}

/* Give CJK glyphs sufficient leading and keep complete summaries readable. */
html[lang=zh] main :is(h1,h2,h3){line-height:1.5;overflow:visible}
html[lang=zh] .person-overview{display:block;-webkit-line-clamp:unset;overflow:visible;max-height:none;line-height:1.9}
html[lang=zh] .prose :is(p,li){line-height:2;overflow:visible;max-height:none;-webkit-line-clamp:unset}

/* Sister-firm introduction: preserve the partner logo proportions. */
.cms-section--partner{background:var(--paper);border-top:1px solid var(--line)}.cms-section--partner .cms-section-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px)}.cms-section--partner .cms-section-visual{display:flex;align-items:center;justify-content:center;background:#241f25;min-height:240px;padding:clamp(24px,4vw,56px)}.cms-section--partner .cms-section-visual img{width:100%;max-width:360px;aspect-ratio:auto;height:auto;object-fit:contain}.cms-section--partner .cms-section-copy h2{font-size:clamp(1.8rem,2.8vw,3rem);overflow-wrap:anywhere}.cms-section--partner .prose{font-size:clamp(.95rem,.9rem + .2vw,1.1rem);line-height:1.9}.cms-section--partner .cms-section-copy .button{margin-top:8px}@media(max-width:768px){.cms-section--partner .cms-section-layout{grid-template-columns:minmax(0,1fr)}.cms-section--partner .cms-section-visual{min-height:180px}.cms-section--partner .cms-section-visual img{max-width:280px}}

/* Linked partner website preview. */
.cms-section--partner .cms-section-visual{display:block;min-height:0;padding:0;background:transparent;border:1px solid var(--line)}.cms-section--partner .cms-section-visual a{display:block}.cms-section--partner .cms-section-visual a:focus-visible{outline:2px solid var(--plum);outline-offset:-4px}.cms-section--partner .cms-section-visual img{display:block;max-width:none;width:100%;height:auto;aspect-ratio:1440/705;object-fit:cover}

/* Official LegalCode artwork supplied through the company vCard directory. */
.cms-section--partner .cms-section-visual{background:white;border:1px solid var(--line)}.cms-section--partner .cms-section-visual img{aspect-ratio:2/1;object-fit:cover;object-position:center}

/* footer.css */
/* Shared footer uses a constrained content grid in both reading directions. */
.site-footer{padding-block-start:clamp(40px,5vw,72px)}
.site-footer>.wrap{width:min(calc(100% - 2 * var(--page-gutter)),1120px)}
.site-footer .footer-top{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);align-items:start;gap:clamp(32px,5vw,80px);padding-block-end:40px}
.footer-identity,.footer-nav-groups,.footer-nav-group{min-width:0}
.site-footer .footer-logo{width:180px;max-width:100%;margin:0}
.site-footer .footer-description{max-width:32ch;font-size:.8125rem;line-height:1.85;margin-block:20px 24px;color:#c6bec9}
.site-footer .footer-heading{font-family:var(--font);font-size:.75rem;font-weight:600;letter-spacing:.02em;line-height:1.5;color:#bda9c4;margin:0 0 14px}
.footer-nav-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.footer-nav-group ul{list-style:none;padding:0;margin:0;display:grid;gap:2px}
.footer-nav-group a{display:inline-flex;align-items:center;min-height:38px;font-size:.8125rem;line-height:1.6;color:#eee9ef;overflow-wrap:anywhere}
.site-footer a:hover{color:#dec4e4;text-decoration:underline;text-underline-offset:4px}
.footer-offices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-block-start:1px solid #ffffff20;padding-block:28px}
.footer-office{min-width:0}
.footer-office h2{font-family:var(--font);font-size:.8125rem;line-height:1.6;font-weight:500;margin:0 0 10px;color:#eee9ef;letter-spacing:0}
.footer-office h2 span{display:block;font-size:.6875rem;font-weight:400;color:#bda9c4}
.footer-office address{font-style:normal;font-size:.75rem;line-height:1.8;color:#c6bec9;white-space:pre-line;overflow-wrap:anywhere}
.site-footer .footer-signature{padding-block:16px 24px;font-size:1rem;line-height:1.6;gap:24px;justify-content:space-between;letter-spacing:0}
.site-footer .footer-signature em{font-size:inherit;letter-spacing:0}
.site-footer .footer-signature a{margin:0;width:40px;height:40px;min-width:40px;font-size:20px;text-decoration:none}
.site-footer .footer-bottom{display:flex;align-items:start;gap:20px 32px;padding-block:20px 28px;border-color:#ffffff20;font-size:.6875rem;line-height:1.8}
.footer-bottom>span{min-width:0}
.footer-bottom>nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px;max-width:65%}
.footer-bottom a,.footer-bottom button{min-height:28px;display:inline-flex;align-items:center;font:inherit;line-height:inherit;text-align:start}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline:2px solid #e5c6ed;outline-offset:4px}
@media(max-width:1000px){.site-footer .footer-top{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px}.footer-nav-groups{gap:16px}.footer-offices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.site-footer .footer-top{grid-template-columns:1fr;gap:32px;padding-block-end:28px}.site-footer .footer-description{max-width:44ch}.footer-nav-groups{gap:24px}.site-footer .footer-bottom{flex-direction:column;gap:12px}.footer-bottom>nav{max-width:100%;justify-content:flex-start}.footer-offices{gap:24px}.footer-nav-group a{min-height:44px}.site-footer .footer-heading{margin-block-end:8px}}
@media(max-width:420px){.footer-nav-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-nav-group:last-child:nth-child(odd){grid-column:1/-1}.footer-nav-group:last-child:nth-child(odd) ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 20px}.footer-offices{grid-template-columns:1fr;gap:20px}.footer-office h2 span{display:inline;margin-inline-start:8px}.site-footer .footer-logo{width:164px}}
.footer-talk{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding-block:10px;border-block-end:1px solid #bda9c4;color:#eee9ef;font-size:.875rem;line-height:1.5;max-width:100%;text-decoration:none}
.footer-talk .nav-arrow{width:22px;height:22px;flex:none}
.site-footer .footer-talk:hover{text-decoration:none;border-color:#dec4e4}

/* Mobile groups share one reading edge and the same label/link columns. */
@media(max-width:700px){
 .site-footer .footer-top{gap:28px}
 .footer-nav-groups{grid-template-columns:minmax(0,1fr);gap:0}
 .footer-nav-group,.footer-nav-group:last-child:nth-child(odd){grid-column:auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;padding-block:18px;border-block-start:1px solid #ffffff20;align-items:start}
 .footer-nav-group .footer-heading{padding-block:12px;margin:0;font-size:.8125rem;line-height:1.6;text-align:start}
 .footer-nav-group ul,.footer-nav-group:last-child:nth-child(odd) ul{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
 .footer-nav-group a{display:flex;min-height:44px;font-size:.8125rem;line-height:1.6;text-align:start}
 .footer-offices{grid-template-columns:minmax(0,1fr);gap:0;padding-block:8px 16px}
 .footer-office{padding-block:18px}
 .footer-office+.footer-office{border-block-start:1px solid #ffffff14}
 .footer-office h2 span{display:block;margin:2px 0 0}
 .footer-office address{font-size:.8125rem;line-height:1.8}
 .site-footer .footer-signature{font-size:.875rem;gap:12px;flex-wrap:nowrap;align-items:center;padding-block:12px 24px}
 .footer-signature>span{min-width:0}
 .site-footer .footer-bottom{padding-block:24px 32px;font-size:.75rem;gap:18px}
 .footer-bottom>nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;width:100%;max-width:100%}
 .footer-bottom a,.footer-bottom button{min-height:44px;text-align:start;justify-content:flex-start}
 .footer-bottom button{grid-column:1/-1}
}
.footer-visible .cookie-reopen{visibility:hidden;pointer-events:none}

.office-registration{margin-block:20px 24px;display:grid;gap:8px;padding-block:16px;border-block:1px solid var(--line)}.office-registration>div{display:flex;justify-content:space-between;gap:20px;align-items:baseline;font-size:.8125rem;line-height:1.7}.office-registration dt{color:var(--muted)}.office-registration dd{margin:0;font-weight:500;text-align:end;overflow-wrap:anywhere}
.office-information-top .eyebrow,.office-contact-details>a>span{color:#6f5b76}

/* search.css */
.site-search-trigger{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--ink)}
.site-search-trigger svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.site-search-trigger:hover{background:var(--paper);border-color:var(--plum)}
.mobile-search-slot{display:none}
.search-is-open{overflow:hidden}
.site-search-dialog{width:min(800px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 64px);padding:0;border:0;margin:32px auto;background:var(--paper);color:var(--ink);box-shadow:0 24px 100px #180d2840}
.site-search-dialog::backdrop{background:#2117249c;backdrop-filter:blur(6px)}
.search-dialog-inner{padding:clamp(24px,4vw,48px)}
.search-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.search-dialog-heading h2{font-size:1rem;letter-spacing:0;font-weight:500;margin:0}
.search-close{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;color:inherit}
.search-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.site-search-input{display:flex;align-items:center;border-block-end:1px solid var(--ink);gap:16px;padding-block:8px}
.site-search-input>svg{width:24px;height:24px;flex:none;stroke:currentColor;stroke-width:1.5}
.site-search-input input{flex:1;min-width:0;width:100%;border:0;background:transparent;padding:12px 0;font-family:var(--font);font-size:clamp(1rem,2.6vw,1.5rem);color:var(--ink);box-shadow:none;border-radius:0}
.site-search-input input:focus-visible{outline:2px solid var(--plum);outline-offset:4px}
.site-search-input button{display:grid;place-items:center;width:44px;height:44px;flex:none;border:0;background:var(--plum);color:white;cursor:pointer}
.search-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-block:20px 8px}
.search-filters label{font-size:.75rem;color:var(--muted);margin:0}
.search-filters select{width:auto;max-width:100%;min-width:150px;min-height:44px;padding:10px 32px 10px 12px;font:inherit;font-size:.8125rem;border:1px solid var(--line);background:white;color:var(--ink)}
.search-live-status{min-height:24px;font-size:.8125rem;line-height:1.8;margin:12px 0;color:var(--muted)}
.search-empty{padding-block:24px 32px}
.search-empty h2{font-size:clamp(1.4rem,2.8vw,2rem);line-height:1.4;margin-bottom:16px}
.search-empty p{font-size:.9375rem;line-height:1.8;max-width:50ch}
.search-empty .eyebrow{font-size:.6875rem;margin-bottom:16px}
.search-suggestions{display:flex;flex-wrap:wrap;gap:8px 24px;margin-block-start:24px}
.search-suggestions a{display:flex;align-items:center;min-height:44px;font-size:.8125rem;color:var(--plum);text-decoration:underline;text-underline-offset:5px}
.search-result-summary{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted);padding-block:12px;border-bottom:1px solid var(--line)}
.search-result-list{list-style:none;margin:0;padding:0}
.search-result-list li{border-bottom:1px solid var(--line)}
.search-result{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-block:24px;color:var(--ink);text-decoration:none}
.search-result-copy{min-width:0}
.search-result-type{display:block;color:var(--plum);font-size:.6875rem;line-height:1.8;margin-bottom:8px}
.search-result h2{font-size:clamp(1.125rem,2vw,1.5rem);line-height:1.45;letter-spacing:-.02em;font-weight:500;overflow-wrap:anywhere;margin:0 0 10px}
.search-result p{font-size:.8125rem;line-height:1.9;margin:0;max-width:62ch;overflow-wrap:anywhere;color:var(--muted)}
.search-result-arrow{display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;margin-block-start:26px;transition:background .2s,color .2s}
.search-result-arrow svg{width:20px;height:20px}
.search-result:hover .search-result-arrow{background:var(--plum);color:white;border-color:var(--plum)}
.search-result:hover h2{color:var(--plum)}
.search-result:focus-visible,.site-search-trigger:focus-visible,.search-close:focus-visible{outline:2px solid var(--plum);outline-offset:4px}
.search-all{margin-block-start:24px}
.search-page{max-width:900px;min-height:60svh}
.search-page .header-home{color:var(--plum)}
.search-page-heading{margin-block:40px}
.search-page-heading h1{font-size:clamp(2.25rem,6vw,4rem);line-height:1.2;letter-spacing:-.04em;margin-bottom:20px}
.search-page-heading p:last-child{font-size:1rem;line-height:1.8;max-width:48ch}
.search-page-results{margin-block-start:32px}
.search-pagination{display:flex;justify-content:space-between;gap:24px;padding-block:32px;font-size:.875rem}
html[dir=rtl] .search-result h2{letter-spacing:0;line-height:1.6}
html[dir=rtl] .search-filters select{padding-inline:12px 32px}
@media(max-width:900px){.mobile-search-slot{display:block}.mobile-header-tools .language-menu summary{width:44px;min-width:44px;padding:8px}.mobile-header-tools .language-current{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.mobile-header-tools .language-globe{width:20px;height:20px}}
@media(max-width:600px){.site-search-dialog{width:100%;height:100dvh;max-height:100dvh;margin:0}.search-dialog-inner{padding:20px}.site-search-input{gap:12px}.site-search-input>svg{width:20px;height:20px}.search-result{gap:14px}.search-dialog-heading{margin-bottom:20px}.search-filters{margin-top:16px}.search-result h2{font-size:1.125rem}.search-result-arrow{width:36px;height:36px}.search-empty h2{font-size:1.5rem}}
@media(max-width:360px){.site-header{padding-inline:16px}.site-header>.brand-logo{width:126px}.mobile-header-tools{gap:4px}}
@media(prefers-reduced-motion:reduce){.search-result-arrow{transition:none}}
.recovery-page{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(40px,8vw,120px);align-items:center;padding-block:clamp(56px,8vw,120px)}
.recovery-intro{min-width:0;position:relative}
.recovery-intro .eyebrow{margin-bottom:28px}
.recovery-code{display:block;font-size:clamp(4rem,9vw,8rem);font-weight:500;letter-spacing:-.06em;line-height:1;color:#bfa8c4;margin-bottom:24px}
.recovery-intro h1{font-size:clamp(2rem,4.5vw,4rem);line-height:1.15;letter-spacing:-.04em;margin-bottom:24px}
.recovery-intro>p:not(.eyebrow){font-size:1rem;line-height:1.8;max-width:44ch;margin-bottom:28px}
.recovery-links{min-width:0;border-block-start:1px solid var(--line)}
.recovery-links h2{font-size:.8125rem;line-height:1.6;margin-block:24px;color:var(--muted);font-weight:500}
.recovery-links>a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px;border-block-end:1px solid var(--line);padding-block:16px}
.recovery-links>a>span{display:flex;gap:20px;align-items:center;min-width:0}
.recovery-links small{font-size:.625rem;color:var(--muted)}
.recovery-links strong{font-size:clamp(.9375rem,1.6vw,1.125rem);font-weight:500;line-height:1.6}
.recovery-links .nav-arrow{flex:none;width:24px;height:24px}
.recovery-links>a:hover{color:var(--plum)}
@media(max-width:700px){.recovery-page{grid-template-columns:minmax(0,1fr);gap:40px}.recovery-code{font-size:5rem}.recovery-intro h1{font-size:2.25rem}.recovery-links>a{min-height:76px}}

/* Header utilities are independent of the primary navigation. */
.site-header{gap:20px}.site-header .site-nav{margin-inline-start:auto}
.header-utilities.mobile-header-tools{display:flex;align-items:center;gap:10px;flex:none}
.header-utilities .language-menu{margin:0;align-self:auto}
.header-utilities .language-menu summary{width:44px;min-width:44px;min-height:44px;padding:8px}
.header-utilities .language-current,.header-utilities .language-chevron{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.header-utilities .language-options{position:absolute;top:calc(100% + 12px);left:auto;right:0;margin:0}
html[dir=rtl] .header-utilities .language-options{left:0;right:auto}
.header-utilities .menu-toggle{margin:0;flex:none}
.site-search-trigger::after{display:none!important}
.site-search-dialog{width:min(920px,calc(100% - 48px));border-block-start:4px solid var(--plum)}
.search-dialog-heading{align-items:flex-start;margin-bottom:28px}
.search-dialog-heading .eyebrow{font-size:.625rem;margin:4px 0 16px;color:var(--plum)}
.search-dialog-heading h2{font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.25;letter-spacing:-.035em}
.search-dialog-results{border-block-start:1px solid var(--line)}
.search-result-copy{flex:1}
.search-result-image{width:80px;height:96px;object-fit:cover;flex:none;background:#e7e0e8}
.search-result-summary{border:0}
.search-result{align-items:center}
.search-result-arrow{margin:0}
.search-empty .eyebrow{display:none}
.search-empty h2{font-size:1.125rem;font-weight:500}
@media(max-width:1100px){
 .site-header .site-nav{display:none;position:absolute;inset:100% 0 auto;background:white;padding:20px var(--page-gutter) 28px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - var(--header-height));overflow-y:auto;border-bottom:1px solid var(--line);margin:0}
 .site-header .site-nav.is-open{display:flex}
 .site-header .site-nav>a{font-size:1rem;padding:14px 0;min-height:48px}
 .site-header .menu-toggle{display:flex}
 .site-header{min-height:80px;padding-block:14px}
 .site-header>.brand-logo{width:156px}
 .header-utilities.mobile-header-tools{gap:6px}
}
@media(max-width:600px){.site-search-dialog{width:100%;margin:0}.search-dialog-inner{padding:24px 20px}.search-dialog-heading h2{font-size:1.75rem}.search-result-image{width:56px;height:72px}.search-result{gap:12px}.search-result h2{font-size:1rem}.search-result p{font-size:.75rem}.search-result-arrow{width:28px;height:28px;border:0}.search-result-arrow svg{width:20px;height:20px}.search-dialog-heading .eyebrow{margin-bottom:12px}}
@media(max-width:360px){.site-header>.brand-logo{width:126px}.header-utilities.mobile-header-tools{gap:4px}}
.site-search-input:focus-within{border-block-end:2px solid var(--plum)}
.site-search-input input:focus-visible{outline:none}
.site-search-input input::-webkit-search-cancel-button{display:none}
.site-search-input .search-clear{width:32px;height:40px;background:transparent;color:var(--muted)}
.site-search-input .search-clear[hidden]{display:none}
.search-clear svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
@media(min-width:700px){.site-search-form{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:end;gap:24px}.search-filters{margin:0;display:flex;flex-direction:column;align-items:stretch;gap:8px}.search-filters select{width:100%;min-width:0;min-height:56px}.site-search-input{min-height:56px;padding-block:0}.site-search-input input{font-size:1.125rem}.search-filters label{text-align:start}}
@media(max-width:699px){.site-search-input input{font-size:1rem}.site-search-input{gap:8px}.site-search-input button[type=submit]{width:40px;height:40px}.search-filters{justify-content:space-between}.search-filters select{min-width:0;width:auto}}
.search-filters select[hidden],.search-type-menu[hidden]{display:none}
.search-type-menu{position:relative;min-width:180px;max-width:100%;font-size:.8125rem}
.search-type-menu summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding:14px 16px;border:1px solid var(--line);background:white;color:var(--ink);list-style:none;cursor:pointer;text-align:start}
.search-type-menu summary::-webkit-details-marker{display:none}
.search-type-menu summary svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.search-type-menu[open] summary{border-color:var(--plum)}
.search-type-menu[open] summary>svg{transform:rotate(180deg)}
.search-type-options{position:absolute;inset-inline:0;top:calc(100% + 6px);z-index:5;background:white;border:1px solid var(--line);box-shadow:0 12px 30px #2117241a;padding:6px;max-height:min(300px,45dvh);overflow:auto}
.search-type-options button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 12px;background:white;border:0;color:var(--ink);font:inherit;font-size:.8125rem;line-height:1.6;text-align:start;cursor:pointer}
.search-type-options button>svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;visibility:hidden}
.search-type-options button[aria-pressed=true]{color:var(--plum);background:#f6eef7}
.search-type-options button[aria-pressed=true]>svg{visibility:visible}
.search-type-options button:hover{background:#f6eef7}
.search-type-menu summary:focus-visible,.search-type-options button:focus-visible{outline:2px solid var(--plum);outline-offset:-3px}
@media(max-width:699px){.search-filters{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center}.search-type-menu{min-width:0}.search-type-menu summary{min-height:48px;padding:12px 14px}}
@media(prefers-reduced-motion:reduce){.search-type-menu summary svg{transition:none}}

/* profiles.css */
/* Structured biographies: existing editorial type, colours and spacing tokens. */
.employee-page .talent-hero{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:stretch;min-height:360px}
.employee-page .talent-image{display:flex;align-items:flex-end;justify-content:center;aspect-ratio:auto;min-height:360px;max-height:480px;background:var(--paper)}
.employee-page .talent-image img{width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain;object-position:center bottom;align-self:center}
.employee-page .talent-image:not(.talent-initials){padding:clamp(24px,3vw,48px)}
.employee-page .talent-image:not(.talent-initials) img{max-height:340px}
.employee-page .talent-initials{align-items:center;justify-content:center;background:var(--plum)}
.employee-page .talent-heading{padding:clamp(28px,4vw,64px)}
.employee-page .talent-body{grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr)}
.employee-page .talent-sidebar{padding-inline:0 clamp(24px,4vw,64px);max-height:calc(100svh - 160px);overflow-y:auto;scrollbar-width:thin}
.employee-page .talent-sidebar nav{max-width:280px}
.employee-page .talent-sidebar nav>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-block:14px;font-size:.8125rem;min-height:48px;line-height:1.5}
.employee-page .talent-sidebar nav>a>span{flex:none;color:var(--plum);font-size:1rem;transition:transform .2s}
.employee-page .talent-sidebar nav>a:hover{color:var(--plum)}
.employee-page .talent-sidebar nav>a:hover>span{transform:translate(2px,-2px)}
.employee-page .employee-story{padding-inline:clamp(28px,4vw,64px) 0}
.profile-overview>h2,.profile-section-heading>h2{font-size:clamp(1.4rem,1.1rem + 1vw,2.15rem);line-height:1.25;letter-spacing:-.025em;margin:0}
.profile-overview .employee-intro{font-size:clamp(1rem,.9rem + .35vw,1.1875rem);line-height:1.9}
.profile-overview .employee-intro p{margin-block:24px 0}
.profile-detail-section{padding-block:clamp(32px,4vw,56px);border-top:1px solid var(--line)}
.profile-detail-section:first-of-type{margin-top:40px}
.profile-overview{padding-bottom:clamp(32px,4vw,56px)}
.profile-section-heading{display:grid;grid-template-columns:28px minmax(0,1fr);gap:16px;align-items:baseline;margin-bottom:24px}
.profile-section-number{color:var(--plum);font-size:.6875rem;font-variant-numeric:tabular-nums}
.profile-section-copy p,.profile-credential-list li{font-size:clamp(.9375rem,.88rem + .2vw,1.0625rem);line-height:1.95;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.profile-section-copy p+p{margin-top:24px}
.profile-credential-list{list-style:none;padding:0;margin:0;display:grid;gap:20px}
.profile-credential-list>li{position:relative;padding-inline-start:20px}
.profile-credential-list>li:before{content:"";position:absolute;inset-inline-start:0;top:.85em;width:4px;height:4px;border-radius:50%;background:var(--plum)}
.profile-language-list{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;margin:0;padding:0}
.profile-language-list li{font-size:.9375rem;border-bottom:1px solid var(--line);padding-block:8px;line-height:1.6;max-width:100%}
.employee-page .employee-connect{margin-top:0;border-top:1px solid var(--line);padding-top:36px}
html[dir=rtl] .employee-page .employee-story{padding-inline:clamp(28px,4vw,64px) 0}
html[dir=rtl] .employee-page .talent-sidebar{padding-inline:0 clamp(24px,4vw,64px)}
html[dir=rtl] .profile-section-heading>h2{letter-spacing:0;line-height:1.6}
@media(max-width:900px){.employee-page .talent-heading{padding:28px}.employee-page .talent-heading h1{font-size:clamp(2rem,4.6vw,3rem)}.employee-page .talent-image:not(.talent-initials){padding:24px}.employee-page .talent-body{grid-template-columns:190px minmax(0,1fr)}.employee-page .talent-sidebar nav>a{font-size:.75rem;gap:12px}}
@media(max-width:600px){.employee-page .talent-hero{grid-template-columns:minmax(0,1fr)}.employee-page .talent-image{min-height:0;height:300px;max-height:300px}.employee-page .talent-image:not(.talent-initials){padding:24px}.employee-page .talent-image:not(.talent-initials) img{max-height:252px}.employee-page .talent-heading{padding:28px 24px}.employee-page .talent-body{grid-template-columns:minmax(0,1fr);gap:32px}.employee-page .talent-sidebar,html[dir=rtl] .employee-page .talent-sidebar{padding:0;position:static;max-height:none;overflow:visible;display:block}.employee-page .talent-sidebar nav{max-width:none;display:flex;flex-wrap:wrap;gap:0 20px}.employee-page .talent-sidebar nav>a{font-size:.75rem;gap:12px;border:0;padding-block:10px}.employee-page .employee-story,html[dir=rtl] .employee-page .employee-story{padding:0}.profile-section-heading{gap:12px;grid-template-columns:24px minmax(0,1fr)}.profile-section-copy p,.profile-credential-list li{line-height:1.9}.employee-page .employee-connect h2{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.employee-page .talent-sidebar nav>a>span{transition:none}}
/* Text-led profiles and dynamic expertise links. */
.employee-page .talent-hero-text{display:block;min-height:0;border-block-start:2px solid var(--plum)}
.talent-hero-text .talent-heading{padding:clamp(32px,5vw,72px);max-width:980px}
.talent-hero-text .talent-heading h1{font-size:clamp(2.25rem,2rem + 2.5vw,4.75rem)}
.profile-section-heading{display:block}
.profile-expertise-list{list-style:none;padding:0;margin:0;display:grid;gap:0}
.profile-expertise-list a{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:60px;padding-block:18px;border-bottom:1px solid var(--line);font-size:clamp(1rem,.9rem + .4vw,1.25rem);color:var(--plum)}
.profile-expertise-list a:hover{text-decoration:underline;text-underline-offset:5px}
.profile-supporting-detail{margin-top:32px}
.profile-supporting-detail h3{font-size:1rem;font-weight:600;margin-block:0 16px;line-height:1.6}
.profile-supporting-detail p{font-size:clamp(.9375rem,.88rem + .2vw,1.0625rem);line-height:1.95;white-space:pre-line}
.people-name-search{max-width:620px;margin-bottom:24px}
.people-name-search>label{display:block;font-size:.875rem;font-weight:600;margin-bottom:12px}
.people-name-input{position:relative}
.people-name-input svg{position:absolute;inset-inline-start:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;stroke:var(--plum);stroke-width:1.5;pointer-events:none}
.people-name-input input{width:100%;min-height:56px;padding-inline:52px 18px;border:1px solid var(--line);background:var(--paper);border-radius:0;font:inherit;color:var(--ink)}
.people-name-input input:focus-visible{outline:2px solid var(--plum);outline-offset:3px}
@media(max-width:600px){.talent-hero-text .talent-heading{padding:28px 24px}.people-name-search{max-width:none}.profile-expertise-list a{font-size:1rem}}

/* Mobile navigation and profile sections share a consistent inset and rhythm. */
@media(max-width:900px){
 .site-header .site-nav.is-open{padding:16px var(--space) 24px;background:#fcfafc;box-shadow:0 18px 36px #20142620;border-radius:0 0 16px 16px}
 .site-header .site-nav.is-open>a:not(.nav-contact){min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px;border-bottom:1px solid #eae5eb;font-size:1rem;font-weight:500}
 .site-header .site-nav.is-open>a:not(.nav-contact)::after{content:'↗';position:static;flex:none;width:auto;height:auto;background:none;transform:none;color:var(--plum);font-size:1rem;line-height:1}
 .site-header .site-nav.is-open .nav-contact{box-sizing:border-box;width:100%;min-height:56px;margin:20px 0 0;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;border-radius:8px}
 .site-header .site-nav.is-open .nav-contact span{display:flex;align-items:center;justify-content:center;flex:none}
 body:has(.site-nav.is-open) .site-assistant{visibility:hidden}
}
@media(max-width:600px){
 .employee-page .talent-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
 .employee-page .talent-sidebar nav>.eyebrow{grid-column:1/-1;margin:0 0 12px}
 .employee-page .talent-sidebar nav>a{min-width:0;min-height:52px;padding-block:12px;border-bottom:1px solid var(--line);font-size:.8rem;line-height:1.45}
 .employee-page .talent-sidebar nav>a>span{margin-inline-start:auto}
 .employee-page .employee-story{min-width:0}
 .employee-page .profile-overview,.employee-page .profile-detail-section{padding:24px 20px;margin:0 0 12px;background:#f8f6f8;border:0;border-radius:4px;scroll-margin-top:calc(var(--header-height) + 16px)}
 .employee-page .profile-overview>h2,.employee-page .profile-section-heading>h2{font-size:1.3rem;line-height:1.35;letter-spacing:-.02em}
 .profile-section-heading{margin-bottom:16px}
 .profile-overview .employee-intro p{margin-top:16px}
 .profile-section-copy p,.profile-credential-list li,.profile-supporting-detail p{line-height:1.8;overflow-wrap:anywhere}
 .profile-expertise-list a{min-height:56px;gap:16px;padding-block:14px;line-height:1.5}
}
/* One aligned directory search surface. */
.people-search-panel{background:var(--paper);padding:clamp(20px,2vw,28px);margin-bottom:28px}
.people-search-panel .people-name-search{max-width:none;margin:0 0 24px}
.people-search-panel .people-name-search>label,.people-search-panel .filter-form label{font-size:.8125rem;font-weight:500;line-height:1.5;margin-bottom:10px}
.people-search-panel .people-name-input input{background:var(--white,#fff);min-height:56px}
.people-search-panel .team-filters{margin:0;border:0;padding:0;background:transparent}
.people-search-panel .team-filters .filter-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:20px;margin:0;padding:0;background:transparent}
.people-search-panel .filter-form>div{min-width:0}
.people-search-panel .filter-form select{min-height:56px;width:100%;background:var(--white,#fff);border:1px solid var(--line);padding-inline:14px 32px;border-radius:0;font-size:.875rem}
.people-search-panel .filter-form>.button{min-height:56px;margin:0;align-self:end}
.people-search-panel .filter-reset{grid-column:1/-1;justify-self:start;margin:0;min-height:36px}
@media(min-width:601px) and (max-width:1000px){.people-search-panel .team-filters .filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.people-search-panel .filter-form>.button{width:100%;justify-content:space-between}}
@media(max-width:600px){.people-search-panel .team-filters>summary{padding:0;min-height:44px;gap:20px;font-size:.8125rem}.people-search-panel .team-filters[open]>summary{margin-bottom:20px}.people-search-panel .team-filters .filter-form{grid-template-columns:minmax(0,1fr);gap:18px}.people-search-panel .people-name-search{margin-bottom:16px}.people-search-panel .filter-form>.button{width:100%;justify-content:space-between}}
.profile-position-label{display:block;color:var(--muted);font-size:.6875rem;letter-spacing:.06em;margin-bottom:10px}
.team-office-group+.team-office-group{margin-top:clamp(48px,6vw,80px)}
.team-office-heading{display:flex;align-items:baseline;gap:16px 28px;flex-wrap:wrap;border-top:1px solid var(--line);padding-block:24px;margin-bottom:24px}
.team-office-heading h3{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);font-weight:500;margin:0;line-height:1.4}
.team-office-heading p{font-size:.8125rem;color:var(--muted);margin:0}
/* The original homepage headline needs room for its full legal/technology message. */
.home-hero-copy{width:min(100%,760px)}
.home-hero h1{font-size:clamp(2.35rem,1.35rem + 3vw,4.5rem);text-wrap:balance}
@media(max-width:1100px){.home-hero-copy{max-width:660px}}
@media(max-width:600px){.home-hero h1{font-size:clamp(2rem,1rem + 4.8vw,2.75rem)}}
/* Homepage editorial sections: original company commitments and IP technology. */
.home-client-centric{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:clamp(36px,7vw,112px);align-items:start}
.client-commitment h2,.ip-automation-copy h2{font-size:clamp(1.8rem,1.1rem + 2vw,3.25rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 24px;text-wrap:balance}
.client-commitment>p{font-size:clamp(1.0625rem,.95rem + .4vw,1.375rem);line-height:1.75;margin:0;color:var(--muted)}
.client-endorsement{margin:0;padding-inline-start:clamp(24px,3vw,48px);border-inline-start:1px solid var(--line);min-width:0}
.client-quote-mark{display:block;color:var(--plum);font-size:5rem;line-height:.8;font-family:Georgia,serif;margin-bottom:24px}
.client-endorsement blockquote{padding:0;margin:0;font-size:clamp(1rem,.9rem + .25vw,1.125rem);line-height:1.9}
.client-endorsement blockquote p{margin:0 0 24px}
.client-endorsement figcaption{font-size:.75rem;font-weight:600;color:var(--plum);line-height:1.8;padding-top:8px}
.home-ip-automation{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.ip-automation-image{overflow:hidden;aspect-ratio:4/3;background:var(--paper)}
.ip-automation-image img{display:block;width:100%;height:100%;object-fit:cover}
.ip-automation-copy{min-width:0}
.ip-automation-copy>p{font-size:clamp(1rem,.9rem + .25vw,1.125rem);line-height:1.9;color:var(--muted);margin:0 0 28px}
@media(max-width:900px){.home-client-centric,.home-ip-automation{grid-template-columns:minmax(0,1fr);gap:36px}.ip-automation-image{aspect-ratio:16/10}.client-endorsement{padding-inline-start:24px}.ip-automation-copy{max-width:660px}}
html[dir=rtl] .client-commitment h2,html[dir=rtl] .ip-automation-copy h2{letter-spacing:0;line-height:1.5}
.expertise-team-intro{display:flex;justify-content:space-between;align-items:end;gap:24px 48px;margin-bottom:36px}
.expertise-team-intro h2{font-size:clamp(1.8rem,1.1rem + 2vw,3.25rem);line-height:1.3;letter-spacing:-.035em;margin:0;text-wrap:balance}
.expertise-team-intro>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:360px;margin:0}
@media(max-width:900px){.expertise-team-intro{display:block}.expertise-team-intro>p{margin-top:20px;max-width:100%}}
html[dir=rtl] .expertise-team-intro h2{letter-spacing:0;line-height:1.5}

/* articles.css */
/* Article reading layout: recommendations share the published CMS article records. */
.detail-layout.article-detail-layout{grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:clamp(40px,6vw,96px);align-items:start}
.article-detail-layout>.prose{min-width:0;max-width:780px}
.article-sidebar.detail-aside{min-width:0;align-self:start;position:sticky;top:calc(var(--header-height) + 24px);padding:0;border:0;background:transparent}
.article-contact{background:var(--paper);border-block-start:2px solid var(--plum);padding:28px 24px;margin-block-end:36px}
.article-sidebar .article-contact h2{font-size:clamp(1.375rem,1.15rem + .4vw,1.625rem);font-weight:500;line-height:1.4;letter-spacing:-.025em;margin:0 0 16px;text-wrap:balance}
.article-sidebar .article-contact p{font-size:.875rem;line-height:1.85;color:var(--muted);margin:0 0 24px}
.article-sidebar .article-contact-button{display:flex;align-items:center;justify-content:space-between;gap:20px;inline-size:100%;min-block-size:56px;padding:16px 20px;font-size:.875rem;line-height:1.5;white-space:normal;text-align:start}
.article-contact-button>span{min-width:0}
.article-contact-button .nav-arrow{width:28px;height:20px;flex:0 0 28px}
.article-sidebar .related-insights>h2{font-size:1.0625rem;font-weight:600;line-height:1.5;letter-spacing:-.015em;margin:0 0 16px}
.related-insights-list{list-style:none;margin:0;padding:0;border-block-start:1px solid var(--line)}
.related-insights-list>li{margin:0;padding:0;border-block-end:1px solid var(--line)}
.related-insight{display:grid;grid-template-columns:72px minmax(0,1fr) 18px;align-items:start;gap:14px;padding-block:20px;min-width:0}
.related-insight-image{aspect-ratio:1;overflow:hidden;background:var(--paper)}
.related-insight-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.related-insight-copy{min-width:0}
.related-insight time{display:block;font-size:.625rem;color:var(--muted);line-height:1.5;margin-block-end:7px;direction:ltr;unicode-bidi:isolate;text-align:start}
.related-insight h3{font-size:.8125rem;line-height:1.65;font-weight:500;letter-spacing:-.01em;margin:0;overflow-wrap:break-word;transition:color .2s}
.related-insight>.nav-arrow{width:18px;height:18px;margin-block-start:3px}
.related-insight:hover h3{color:var(--plum)}
.related-insight:hover img{transform:scale(1.04)}
.related-insight:focus-visible{outline:2px solid var(--plum);outline-offset:4px}
.related-insights-all{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;font-size:.8125rem;margin-block-start:12px}
html[dir=rtl] .related-insight time{text-align:right}
html[dir=rtl] .article-sidebar h2,html[dir=rtl] .article-sidebar h3{letter-spacing:0}
@media(max-width:1000px){.detail-layout.article-detail-layout{grid-template-columns:minmax(0,1fr)}.article-sidebar.detail-aside{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.article-contact{margin:0}}
@media(max-width:600px){.article-sidebar.detail-aside{grid-template-columns:minmax(0,1fr);gap:36px}.article-contact{padding:24px}.related-insight{grid-template-columns:80px minmax(0,1fr) 20px}.related-insight h3{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.related-insight-image img,.related-insight h3{transition:none}}

/* motion.css */
/* GSAP owns these transforms while scroll motion is active. */
.motion-ready .home-hero-picture{animation:none;will-change:auto}
.motion-ready .home-hero-copy>*,.motion-ready .home-hero h1>span{animation:none;filter:none}
.motion-ready .reveal{transition:none;transition-delay:0ms}
.ip-automation-image,.practice-tile-image,.knowledge-lead-image,.office-photograph{overflow:clip}
body[data-motion-style=off] *,body[data-motion-style=off] *:before,body[data-motion-style=off] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
body[data-motion-style=off] [data-motion-toggle]{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-motion-toggle]{display:none}.motion-ready .reveal{opacity:1!important;transform:none!important}}
@media(max-width:1100px) and (prefers-reduced-motion:no-preference){.site-nav.is-open{animation:nav-arrival .25s ease-out}@keyframes nav-arrival{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}}

/* appointments.css */
.appointment-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,7vw,104px);align-items:start}
.appointment-intro{min-width:0}
.appointment-intro h2{font-size:clamp(1.875rem,1.1rem + 2.2vw,3.5rem);line-height:1.22;letter-spacing:-.035em;text-wrap:balance;margin:0 0 24px}
.appointment-intro>p:not(.eyebrow){line-height:1.85;font-size:1rem;color:var(--muted);margin-block:0 24px}
.appointment-intro>.help{font-size:.8125rem!important;max-width:360px}
.appointment-panel{padding:clamp(24px,3vw,40px);background:var(--paper);min-width:0;border:1px solid var(--line)}
.appointment-form{gap:24px}
.appointment-form .form-row{align-items:start;min-width:0}
.appointment-form .form-row>div{min-width:0}
.appointment-form input,.appointment-form select,.appointment-form textarea{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.appointment-form input[type=date],.appointment-form input[type=time]{height:56px;min-inline-size:0;display:block;background:#fff;font:inherit;color:var(--ink)}
.appointment-form input[type=date]::-webkit-date-and-time-value,.appointment-form input[type=time]::-webkit-date-and-time-value{text-align:start}
.appointment-form .appointment-timezone-note{margin-top:-12px;font-size:.75rem;line-height:1.8;color:var(--muted)}
.appointment-form .checkbox-row{align-items:start;line-height:1.8;font-size:.8125rem}
.appointment-form .checkbox-row input{width:18px;min-width:18px;margin-top:3px}
.appointment-form .button{width:100%;justify-content:space-between;gap:16px;text-align:start;white-space:normal;line-height:1.6}
.appointment-form .nav-arrow{flex:0 0 28px}
.appointment-form .appointment-status[hidden]{display:none}
.appointment-success{outline:none;min-height:220px;display:flex;flex-direction:column;justify-content:center}
.appointment-success h3{font-size:clamp(1.4rem,1.1rem + .8vw,2rem);line-height:1.5;margin:0 0 20px}
.appointment-success>p{font-size:1rem;line-height:1.9;overflow-wrap:anywhere}
.appointment-success .submission-receipt{margin-top:24px;font-size:.8125rem;color:var(--plum)}
.appointment-detail-link{margin-top:24px;line-height:1.7}
html[dir=rtl] .appointment-intro h2{letter-spacing:0;line-height:1.5}
@media(max-width:1000px){.appointment-section{grid-template-columns:minmax(0,1fr)}.appointment-intro>p,.appointment-intro>.help{max-width:680px}.appointment-intro>.help{display:none}}
@media(max-width:600px){.appointment-form .form-row{grid-template-columns:minmax(0,1fr)}.appointment-panel{padding:24px 14px}.appointment-form input,.appointment-form select,.appointment-form textarea{font-size:16px}.appointment-section{gap:28px}.appointment-form .captcha-field{max-width:100%;overflow:hidden}}
.appointment-home{background:var(--paper);border-block:1px solid var(--line)}
.appointment-home-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px clamp(32px,7vw,112px);align-items:center}
.appointment-home h2{font-size:clamp(2rem,1.2rem + 2.5vw,3.8rem);line-height:1.2;letter-spacing:-.035em;margin:0;text-wrap:balance}
.appointment-home-action>p{font-size:clamp(1rem,.9rem + .3vw,1.125rem);line-height:1.9;color:var(--muted);margin:0 0 28px}
.appointment-home-action .appointment-home-button{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;justify-content:space-between;gap:24px;inline-size:100%;max-inline-size:360px;min-block-size:64px;padding:18px 24px;font-family:var(--font);font-size:clamp(.875rem,.84rem + .15vw,1rem);font-weight:600;line-height:1.5;letter-spacing:0;white-space:normal;text-align:start}
.appointment-home-button>span{min-inline-size:0;display:block}
.appointment-home-action .appointment-home-button .nav-arrow{display:block;inline-size:28px;block-size:20px;margin:0;justify-self:end}
@media(max-width:600px){.appointment-home-action .appointment-home-button{max-inline-size:none}}
html[dir=rtl] .appointment-home h2{letter-spacing:0;line-height:1.5}
@media(max-width:800px){.appointment-home-layout{grid-template-columns:minmax(0,1fr)}}
