/* OKS: shared HR/EN design, responsive rules and reduced-motion support. */
@font-face{font-family:"DM Sans";src:url("/assets/fonts/dm-sans-latin.woff") format("woff");font-style:normal;font-weight:100 1000;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("/assets/fonts/libre-baskerville-latin.woff") format("woff");font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("/assets/fonts/libre-baskerville-italic-latin.woff") format("woff");font-style:italic;font-weight:400 700;font-display:swap}
:root{--black:#141414;--white:#fff;--red:#ed1c24;--muted:#626262;--line:#dedede;--pale:#f6f6f6;--serif:'Libre Baskerville',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:160px}
body{margin:0;background:var(--white);color:var(--black);font:400 16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:400}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{display:block;max-width:100%}
a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:6px}
a:hover{color:var(--red)}
::selection{background:#ed1c24;color:#fff}
.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}
.skip{position:fixed;top:-100px;left:12px;z-index:100;background:#fff;border:1px solid #111;padding:10px}
.skip:focus{top:12px}
.header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{height:142px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.brand{width:112px;height:112px;flex-shrink:0}
.original-logo{width:100%;height:100%;object-fit:contain}
.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:25px}
.utility{display:flex;align-items:center;gap:32px;color:var(--muted);font-size:12px;line-height:1.5;letter-spacing:.015em}
.language{display:flex;gap:9px;align-items:center}
.language [aria-current]{color:#111;font-weight:700}
.language span{color:#b5b5b5}
.language a{padding:5px 2px}
#primary-nav{display:flex;gap:34px;align-items:center}
#primary-nav a{font-size:14px;font-weight:500;letter-spacing:.01em;position:relative;padding-bottom:6px}
#primary-nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width .18s}
#primary-nav a:hover:after,#primary-nav a[aria-current]:after{width:100%}
.menu-button{display:none}
.eyebrow{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.2em;font-weight:600;color:var(--muted);margin-bottom:24px}
.eyebrow:before{content:'';display:inline-block;width:24px;height:1px;background:var(--red);vertical-align:middle;margin-right:14px}
.home-hero{padding-top:58px}
.home-title{display:grid;grid-template-columns:1.65fr 1fr;gap:65px;align-items:center;padding:6px 0 57px}
.home-title h1{font:400 clamp(2.8rem,4.35vw,4.7rem)/1.22 var(--serif);letter-spacing:-.05em}
.hero-aside{max-width:345px;justify-self:end}
.red-rule{display:block;background:var(--red);width:38px;height:2px;margin-bottom:23px}
.hero-aside h2{font-size:18px;line-height:1.45;font-weight:500;margin-bottom:13px}
.hero-aside p{font-size:15px;color:var(--muted);line-height:1.65;margin-bottom:20px}
.text-link{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:26px;border-bottom:1px solid #b8b8b8;padding:8px 0;line-height:1.5}
.text-link span{color:var(--red);font-size:20px;line-height:1}
.text-link:hover{border-bottom-color:var(--red)}
.photo{width:100%;height:100%;object-fit:cover;filter:grayscale(1);background:#eee}
.hero-image{height:420px;position:relative;overflow:hidden}
.hero-image>.photo{object-position:center 52%}
.image-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:17px 23px;background:linear-gradient(transparent,#0009);color:#fff;font-size:10px;letter-spacing:.17em;line-height:1.4;padding-top:48px}
.section{padding-top:108px;padding-bottom:108px}
.section h2,.contact-band h2{font:400 clamp(1.9rem,2.75vw,2.8rem)/1.35 var(--serif);letter-spacing:-.04em}
.intro-section{display:grid;grid-template-columns:1fr 1.15fr;gap:110px}
.prose{color:#4d4d4d;max-width:780px}
.prose p{margin-bottom:24px}
.prose .lead,.prose.large>p:first-child{font-size:20px;line-height:1.75;color:#222}
.prose h2{font:400 1.5rem/1.4 var(--serif);letter-spacing:-.02em;color:#151515;margin:50px 0 24px}
.prose h2:first-child{margin-top:0}
.prose .text-link{margin-top:9px;color:#111}
.pale{background:var(--pale)}
.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:54px}
.section-top>div{max-width:700px}
.section-top>.text-link{flex-shrink:0;margin-bottom:5px}
.section-description{color:var(--muted);max-width:510px;margin-top:24px}
.section-top>.section-description{max-width:410px;margin:0}
.practice-list{border-top:1px solid #c8c8c8}
.practice-row{display:grid;grid-template-columns:60px 1fr;gap:16px;padding:29px 0;border-bottom:1px solid #d5d5d5;transition:background .2s}
.row-number{font-size:12px;line-height:1.7;color:var(--red);font-weight:500;letter-spacing:.05em;padding-top:4px}
.practice-row>div{position:relative;padding-right:65px}
.practice-row h3{font:400 1.6rem/1.4 var(--serif);letter-spacing:-.025em}
.practice-row p{max-width:900px;margin-top:15px;font-size:16px;line-height:1.8;color:var(--muted)}
.practice-row>div>span{position:absolute;right:6px;top:4px;color:var(--red);font-size:24px;line-height:1}
.practice-row:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.compact{display:grid;grid-template-columns:1fr 1fr;column-gap:62px;border-top:0}
.compact .practice-row{border-top:1px solid #c8c8c8;border-bottom:0;grid-template-columns:32px 1fr;min-height:106px;align-items:center}
.compact .practice-row h3{font-size:1.2rem;line-height:1.5}
.compact .practice-row>div{padding-right:32px}
.compact .practice-row>div>span{font-size:20px}
.team-preview{display:grid;grid-template-columns:0.8fr 1.25fr;gap:105px;align-items:start}
.team-photo{height:660px}
.team-photo img{object-position:center 45%}
.team-preview .people-list{margin:34px 0 25px}
.people-list{border-top:1px solid #c6c6c6}
.person-row{display:grid;grid-template-columns:1.2fr .75fr 24px;gap:25px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line)}
.person-row h3{font:400 1.35rem/1.4 var(--serif);letter-spacing:-.02em}
.person-row>span{font-size:14px;color:var(--muted)}
.person-row>span:last-child{color:var(--red);font-size:23px}
.team-preview .person-row{grid-template-columns:1.3fr .85fr 18px;gap:12px;padding:17px 0}
.team-preview .person-row h3{font-size:1rem}
.team-preview .person-row>span{font-size:12px}
.team-preview .person-row>span:last-child{font-size:20px}
.contact-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:53px 0}
.contact-band>.wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}
.contact-band h2{font-size:1.65rem}
.footer{background:#fafafa;padding-top:64px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:45px;padding-bottom:58px}
.footer-name{font:400 1.25rem/1.25 Georgia,serif;letter-spacing:.015em;margin-bottom:12px}
.footer p,.footer a{font-size:13px;color:#666;line-height:1.8}
.footer p.footer-name{font:400 1.25rem/1.25 Georgia,serif;color:#222}
.footer h3{font-size:11px;letter-spacing:.1em;font-weight:600;text-transform:uppercase;margin-bottom:18px;color:#444}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;padding-bottom:25px;display:flex;justify-content:space-between;gap:24px;color:#777;font-size:11px}
.page-intro{padding-top:28px;padding-bottom:75px}
.breadcrumb{display:flex;gap:14px;align-items:center;font-size:11px;color:#777;margin-bottom:62px}
.breadcrumb span{color:#bbb}
.intro-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end}
.intro-grid h1{font:400 clamp(2.4rem,4.4vw,4.3rem)/1.25 var(--serif);letter-spacing:-.045em;max-width:850px}
.intro-note{max-width:450px;color:#666;font-size:16px;line-height:1.8;padding-bottom:4px}
.panorama{height:420px}
.panorama>.photo{object-position:center 52%}
.article-grid{display:grid;grid-template-columns:0.8fr 1.6fr;gap:115px}
.side-heading{font:400 1.6rem/1.5 var(--serif);max-width:300px}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 65px}
.values-grid article{border-top:1px solid #ccc;padding-top:25px}
.values-grid h3{font:400 1.4rem/1.4 var(--serif);margin:19px 0 15px;letter-spacing:-.02em}
.values-grid p{color:#666;line-height:1.85;font-size:15px}
.company-section{padding-top:0}
.company-data{margin:30px 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:0 80px}
.company-data>div{border-top:1px solid var(--line);padding:22px 0}
.company-data dt{font-size:12px;color:#777;margin-bottom:9px}
.company-data dd{margin:0;font-size:15px}
.top-zero{padding-top:0}
.detail-layout{display:grid;grid-template-columns:265px minmax(0,760px);justify-content:space-between;gap:70px;padding-bottom:110px}
.detail-sidebar{border-top:1px solid #222;padding-top:24px;align-self:start;position:sticky;top:176px}
.detail-sidebar .eyebrow{font-size:10px}
.detail-sidebar nav{display:flex;flex-direction:column;gap:0}
.detail-sidebar nav a{font-size:13px;line-height:1.6;padding:9px 0;color:#666;border-bottom:1px solid #eee}
.detail-sidebar nav a[aria-current]{color:#111;font-weight:600;border-bottom-color:var(--red)}
.detail-sidebar nav a:hover{color:var(--red)}
.practice-copy>p:first-child,.profile-copy>p:not(.eyebrow):first-of-type{font-size:20px;line-height:1.8;color:#222}
.service-bullets{list-style:none;margin:0;padding:0}
.service-bullets li{border-top:1px solid #e4e4e4;padding:14px 0 14px 22px;position:relative;font-size:16px;line-height:1.75}
.service-bullets li:before{content:'';position:absolute;width:5px;height:5px;background:var(--red);left:0;top:25px}
.detail-end{margin-top:45px;padding-top:20px;border-top:1px solid var(--line)}
.people-heading{margin:45px 0 20px}
.people-heading:first-child{margin-top:0}
.people-heading h2{font:400 1.3rem var(--serif)}
.profile-layout{display:grid;grid-template-columns:300px minmax(0,760px);justify-content:space-between;gap:70px;padding-bottom:110px}
.profile-info{border-top:1px solid #222;padding-top:25px;font-size:14px;color:#666}
.profile-info>a{display:block;overflow-wrap:anywhere;margin-bottom:8px;color:#333}
.profile-info h2{font-size:12px;font-weight:600;color:#222;margin:35px 0 14px;text-transform:uppercase;letter-spacing:.05em}
.profile-info ul{list-style:none;padding:0;margin:0}
.profile-info li{margin-bottom:9px}
.careers-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;padding-bottom:110px;align-items:start}
.careers-layout>div:first-child{height:650px}
.careers-layout .prose{padding-top:0}
.application{border-top:1px solid #aaa;margin-top:45px;padding-top:30px}
.application>a{font:400 1.8rem var(--serif);border-bottom:1px solid var(--red);padding-bottom:5px;color:#222}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;padding-bottom:110px}
.contact-image{height:610px}
.contact-information{padding-top:0}
.contact-information h2{font:400 1.5rem/1.4 var(--serif);max-width:400px}
.contact-information>p{color:#666;margin-top:6px}
.contact-information dl{margin-top:32px}
.contact-information dl>div{display:grid;grid-template-columns:100px 1fr;gap:25px;padding:21px 0;border-top:1px solid var(--line)}
.contact-information dt{font-size:12px;color:#666;padding-top:2px}
.contact-information dd{margin:0;font-size:16px}
.map-link{display:inline-block;font-size:12px;border-bottom:1px solid #999;margin-top:15px}
.contact-information .contact-note{font-size:12px;color:#777;margin-top:30px}
.legal-prose section{border-top:1px solid var(--line);padding-top:26px;margin-bottom:40px;scroll-margin-top:170px}
.legal-prose section h2{font-size:1.35rem}
.legal-prose section p{font-size:15px;line-height:1.9}
@media(min-width:1500px){
.home-hero{padding-top:72px}
.home-title{padding-bottom:68px}
.hero-image{height:465px}
}
@media(max-width:1120px){
.wrap{width:calc(100% - 64px)}
.home-title{gap:45px;grid-template-columns:1.5fr 1fr}
.hero-aside{max-width:310px}
.header-inner{height:130px}
.brand{width:102px;height:102px}
#primary-nav{gap:23px}
.intro-section,.team-preview{gap:55px}
.section{padding-top:80px;padding-bottom:80px}
.team-photo{height:640px}
.compact{column-gap:35px}
.detail-layout{grid-template-columns:225px 1fr;gap:45px}
.profile-layout{grid-template-columns:250px 1fr;gap:45px}
.careers-layout,.contact-layout{gap:55px}
.intro-grid{gap:55px}
.footer-grid{gap:28px}
.article-grid{gap:65px}
}
@media(max-width:820px){
html{scroll-padding-top:125px}
.header-inner{height:108px}
.header-right{flex-direction:row;align-items:center;gap:22px}
.utility>span,.utility>a{display:none}
.menu-button{display:flex;flex-direction:column;justify-content:center;gap:7px;width:36px;height:36px;background:transparent;border:0;cursor:pointer;padding:4px}
.menu-button span{height:1px;width:26px;background:#111}
.menu-button[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
#primary-nav{display:none;position:absolute;left:0;right:0;top:108px;background:#fff;border-bottom:1px solid #ccc;padding:18px 32px 28px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 15px #0001}
#primary-nav.open{display:flex}
#primary-nav a{padding:13px 0;font-size:17px}
.home-title{display:block}
.hero-aside{max-width:610px;margin-top:36px}
.hero-aside .red-rule{display:none}
.hero-aside h2{font-size:18px}
.hero-aside p{max-width:520px}
.hero-image{height:350px}
.home-title h1{font-size:clamp(2.75rem,6.7vw,4rem)}
.intro-section,.team-preview{grid-template-columns:1fr;gap:35px}
.intro-section .prose{max-width:640px}
.team-photo{height:320px}
.team-photo img{object-position:center 45%}
.team-preview .person-row{grid-template-columns:1.2fr .8fr 20px;padding:20px 0}
.team-preview .person-row h3{font-size:1.2rem}
.team-preview .person-row>span{font-size:14px}
.section-top{align-items:flex-start;flex-direction:column;gap:22px}
.section-top>.section-description{max-width:620px}
.intro-grid{grid-template-columns:1fr;gap:25px}
.intro-note{max-width:650px}
.detail-layout,.profile-layout{grid-template-columns:1fr;gap:45px}
.detail-sidebar{position:static;order:2}
.detail-sidebar nav{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}
.profile-info{order:2}
.profile-info h2{margin-top:28px}
.values-grid{grid-template-columns:repeat(2,1fr);gap:38px}
.article-grid{grid-template-columns:1fr;gap:35px}
.careers-layout,.contact-layout{gap:38px}
.careers-layout{grid-template-columns:1fr}
.careers-layout>div:first-child{height:380px}
.contact-layout{grid-template-columns:1fr}
.contact-image{height:400px}
.company-data{gap:0 40px}
.legal-layout .detail-sidebar{order:0}
.legal-prose section{scroll-margin-top:135px}
.footer-grid{grid-template-columns:1fr 1fr;gap:32px}
.footer-bottom{flex-direction:column;gap:10px}
.contact-band h2{font-size:1.45rem}
.page-intro{padding-bottom:55px}
.breadcrumb{margin-bottom:45px}
.panorama{height:330px}
}
@media(max-width:520px){
.header-inner{height:95px}
.brand{width:75px;height:75px}
#primary-nav{top:95px;padding-inline:20px}
.header-right{gap:17px}
.home-hero{padding-top:37px}
.eyebrow{font-size:10px;letter-spacing:.17em;margin-bottom:20px}
.home-title{padding-bottom:30px}
.home-title h1{font-size:clamp(2.1rem,8.4vw,2.8rem);line-height:1.3;letter-spacing:-.045em}
.hero-aside{margin-top:28px}
.hero-aside h2{font-size:16px}
.hero-aside p{font-size:14px}
.hero-image{height:250px}
.image-caption{font-size:8px;padding:35px 12px 12px;gap:12px}
.section{padding-block:60px}
.section h2{font-size:1.8rem}
.intro-section{gap:26px}
.prose .lead,.prose.large>p:first-child{font-size:18px;line-height:1.8}
.prose p{font-size:15px}
.compact{grid-template-columns:1fr}
.compact .practice-row{min-height:89px}
.compact .practice-row h3{font-size:1.15rem}
.section-top{margin-bottom:30px}
.team-photo{height:270px}
.team-preview .person-row{grid-template-columns:1fr 22px;gap:5px 10px}
.team-preview .person-row h3{grid-column:1;font-size:1.1rem}
.team-preview .person-row>span:not(:last-child){grid-column:1;font-size:12px}
.team-preview .person-row>span:last-child{grid-column:2;grid-row:1/3}
.contact-band{padding:35px 0}
.contact-band>.wrap{display:block}
.contact-band h2{font-size:1.4rem;margin-bottom:20px}
.footer{padding-top:45px}
.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:40px}
.footer h3{font-size:10px;margin-bottom:12px}
.footer p,.footer a{font-size:12px;overflow-wrap:anywhere}
.footer .footer-name{font-size:1.05rem}
.footer-bottom span,.footer-bottom a{font-size:10px}
.page-intro{padding-top:20px;padding-bottom:43px}
.breadcrumb{margin-bottom:34px;font-size:10px;flex-wrap:wrap}
.intro-grid h1{font-size:clamp(2rem,8vw,2.8rem);line-height:1.3}
.intro-note{font-size:15px}
.practice-row{grid-template-columns:27px 1fr;gap:8px;padding:24px 0}
.practice-row>div{padding-right:28px}
.practice-row h3{font-size:1.3rem}
.practice-row p{font-size:14px;line-height:1.8}
.practice-row>div>span{font-size:20px;right:0}
.practice-copy>p:first-child,.profile-copy>p:not(.eyebrow):first-of-type{font-size:18px}
.detail-layout,.profile-layout,.contact-layout,.careers-layout{padding-bottom:65px}
.detail-sidebar nav{grid-template-columns:1fr}
.service-bullets li{font-size:15px}
.values-grid{grid-template-columns:1fr;gap:27px}
.values-grid h3{font-size:1.25rem;margin-top:14px}
.panorama{height:250px}
.company-data{grid-template-columns:1fr}
.person-row{grid-template-columns:1fr 24px;gap:8px;padding:22px 0}
.person-row h3{font-size:1.25rem;grid-column:1}
.person-row>span:not(:last-child){font-size:13px;grid-column:1}
.person-row>span:last-child{grid-row:1/3;grid-column:2}
.people-heading h2{font-size:1.25rem}
.contact-information h2{font-size:1.25rem}
.contact-information dl>div{grid-template-columns:80px 1fr;gap:12px}
.contact-information dd{font-size:14px}
.contact-image{height:320px}
.legal-prose section h2{font-size:1.25rem}
.legal-prose section p{font-size:14px}
.careers-layout>div:first-child{height:300px}
.top-zero{padding-top:0}
.company-section{padding-top:0}
}
.language{font-size:14px}
.hero-aside p,.values-grid p,.prose p,.practice-row p,.legal-prose section p{font-size:16px}
.detail-sidebar nav a{font-size:14px}
.team-preview .person-row>span:not(:last-child){font-size:14px}
.detail-sidebar{max-height:calc(100vh - 195px);overflow-y:auto}
@media(max-width:820px){
.detail-sidebar{max-height:none;overflow:visible}
}
:root{--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--red:#cf1720;--black:#151515;--line:#c9c9c9}
.wrap{width:min(1280px,calc(100% - 112px))}
.header{position:relative;border-bottom:1px solid #151515}
.header-inner{height:128px}
.brand{width:106px;height:106px}
.header-right{flex-direction:row;gap:48px}
.utility{order:2}
.utility>span,.utility>a{display:none}
#primary-nav{gap:30px}
#primary-nav a{font:400 13px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.025em;padding:12px 0}
.language{font-size:12px}
.eyebrow{font:400 11px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#555;margin-bottom:24px}
.eyebrow:before{display:none}
.photo{filter:grayscale(1);width:100%;height:100%;object-fit:cover}
.text-link{display:inline-flex;align-items:center;gap:38px;font:400 14px/1.5 var(--sans);border:0;border-bottom:1px solid #151515;padding:0 0 8px}
.text-link span{color:var(--red);font-size:23px;line-height:1}
.text-link:hover{border-color:var(--red)}
.editorial-hero{padding-top:44px}
.editorial-title{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:end;padding-bottom:46px}
.editorial-title h1{font:400 clamp(50px,5.8vw,86px)/1.02 var(--sans);letter-spacing:-.055em}
.editorial-title h1 em{font:400 1.04em/1.08 var(--serif);letter-spacing:-.055em}
.editorial-title>div{padding-bottom:4px;max-width:360px}
.editorial-title p{font:400 17px/1.65 var(--sans);color:#505050;margin-bottom:24px}
.editorial-photo{height:405px;position:relative;overflow:hidden}
.editorial-photo img{object-position:center 57%}
.editorial-photo figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;padding:35px 24px 18px;background:linear-gradient(transparent,#0009);color:#fff;font:400 10px/1.5 var(--sans);letter-spacing:.09em}
.section{padding-block:100px}
.section h2{font:400 clamp(32px,3.3vw,48px)/1.17 var(--serif);letter-spacing:-.035em}
.editorial-about{display:grid;grid-template-columns:1fr 2fr;gap:70px}
.editorial-about h2{margin-bottom:30px}
.editorial-about .prose{max-width:660px;margin-bottom:27px}
.editorial-about .prose p{font:400 21px/1.65 var(--serif);color:#333}
.editorial-expertise{border-top:1px solid #151515}
.editorial-section-head{display:grid;grid-template-columns:1fr 2fr;gap:70px;margin-bottom:50px}
.editorial-section-head h2{max-width:600px}
.editorial-expertise .compact{display:grid;grid-template-columns:1fr 1fr;gap:0 70px}
.editorial-expertise .practice-row{display:block;min-height:99px;padding:26px 0;border-top:1px solid var(--line)}
.editorial-expertise .row-number{display:none}
.editorial-expertise .practice-row h3{font:400 21px/1.45 var(--sans);letter-spacing:-.02em}
.editorial-expertise .practice-row>div{padding-right:42px}
.editorial-expertise .practice-row>div>span{color:var(--red);font-size:24px}
.editorial-more{display:flex;justify-content:flex-end;margin-top:28px}
.editorial-team{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;border-top:1px solid #151515}
.editorial-team-photo{height:460px;overflow:hidden}
.editorial-team-photo img{object-position:50% 55%}
.editorial-team h2{margin-bottom:30px}
.editorial-team>div>p:not(.eyebrow){max-width:420px;color:#555;font-size:17px;line-height:1.7;margin-bottom:32px}
.editorial-contact{background:#141414;color:#fff;padding:80px 0}
.editorial-contact .eyebrow{color:#bcbcbc}
.editorial-contact-title{display:flex;align-items:center;justify-content:space-between;gap:30px}
.editorial-contact h2{font:400 clamp(40px,4.8vw,68px)/1.1 var(--serif);letter-spacing:-.04em}
.contact-circle{border:1px solid #777;border-radius:50%;display:grid;place-items:center;flex-shrink:0;width:94px;height:94px;font:400 46px/1 var(--sans);color:#fff;transition:background .2s,border-color .2s}
.contact-circle:hover{background:var(--red);border-color:var(--red);color:#fff}
.editorial-contact-details{margin-top:54px;padding-top:28px;border-top:1px solid #555;display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;font-size:16px;line-height:1.6}
.editorial-contact-details>a:first-child{font-size:23px;letter-spacing:-.02em}
.footer{background:#fff;padding:0}
.footer-grid{display:none}
.footer-bottom{border:0;padding-block:28px;font-size:11px}
.footer-bottom a{font-size:11px}
.intro-grid h1{font-family:var(--serif);letter-spacing:-.04em}
.page-intro{padding-top:36px}
.page-intro .eyebrow{color:var(--red)}
.scroll-section{scroll-margin-top:28px}
.contact-band{background:#f4f4f4}
.contact-band h2{font-family:var(--serif)}
@media(min-width:1500px){
.editorial-title h1{font-size:90px}
.editorial-photo{height:470px}
}
@media(max-width:1100px){
.wrap{width:calc(100% - 72px)}
.header-right{gap:26px}
#primary-nav{gap:20px}
#primary-nav a{font-size:12px}
.editorial-title{gap:42px}
.editorial-title h1{font-size:65px}
.editorial-photo{height:360px}
.editorial-team{gap:55px}
.editorial-about,.editorial-section-head{gap:40px}
.editorial-expertise .compact{column-gap:40px}
}
@media(max-width:820px){
.wrap{width:calc(100% - 48px)}
.header-right{gap:22px}
.utility{order:0}
.menu-button{width:44px;height:44px}
#primary-nav{top:104px;padding:20px 24px;background:#fff;box-shadow:none}
#primary-nav a{font-size:16px;padding:17px 0}
.editorial-hero{padding-top:32px}
.editorial-title{grid-template-columns:1fr;gap:28px;padding-bottom:34px}
.editorial-title h1{font-size:clamp(48px,8.5vw,72px)}
.editorial-title>div{max-width:540px}
.editorial-title p{font-size:16px;margin-bottom:22px}
.editorial-photo{height:330px}
.section{padding-block:65px}
.editorial-about,.editorial-section-head{grid-template-columns:1fr;gap:12px}
.editorial-about>.eyebrow,.editorial-section-head>.eyebrow{margin-bottom:12px}
.editorial-about .prose p{font-size:20px}
.editorial-expertise .practice-row h3{font-size:18px}
.editorial-team{gap:36px;grid-template-columns:1fr 1fr}
.editorial-team-photo{height:370px}
.editorial-team h2{font-size:32px}
.editorial-team h2 br{display:none}
.editorial-team>div>p:not(.eyebrow){font-size:16px}
.editorial-contact{padding-block:60px}
.editorial-contact-details{grid-template-columns:1fr 1fr}
.editorial-contact-details>p{grid-column:2;grid-row:1/3}
.footer-bottom{gap:12px}
.detail-sidebar{max-height:none}
}
@media(max-width:520px){
.wrap{width:calc(100% - 40px)}
#primary-nav{top:96px;padding-inline:20px}
.editorial-hero>.eyebrow{font-size:10px}
.editorial-title{gap:24px}
.editorial-photo figcaption{font-size:8px;padding:28px 12px 12px}
.section{padding-block:52px}
.section h2{font-size:32px}
.editorial-about h2{margin-bottom:24px}
.editorial-about .prose p{font-size:19px}
.editorial-section-head{margin-bottom:30px}
.editorial-expertise .compact{grid-template-columns:1fr}
.editorial-expertise .practice-row{min-height:0;padding:22px 0}
.editorial-expertise .practice-row h3{font-size:19px}
.editorial-more{justify-content:flex-start;margin-top:20px}
.editorial-team{grid-template-columns:1fr;gap:34px}
.editorial-team-photo{height:310px}
.editorial-team h2{font-size:34px}
.editorial-team .eyebrow{margin-bottom:18px}
.editorial-contact-title{gap:18px;align-items:flex-end}
.editorial-contact h2{font-size:clamp(32px,8.5vw,42px)}
.contact-circle{width:56px;height:56px;font-size:30px}
.editorial-contact-details{grid-template-columns:1fr;margin-top:36px;gap:14px}
.editorial-contact-details>p{grid-column:auto;grid-row:auto;margin-top:10px;font-size:15px}
.editorial-contact-details>a:first-child{font-size:23px}
.footer-bottom{padding-block:24px}
.eyebrow{font-size:11px}
.text-link{min-height:38px}
.contact-information dd{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
*{transition:none!important}
}
.header{position:sticky;top:0;border-bottom:2px solid #111}
.header-inner{height:108px}
.brand{width:90px;height:90px}
#primary-nav a{font-weight:500}
.editorial-hero{padding-top:48px}
.editorial-photo{height:480px}
.editorial-title h1{font-size:clamp(50px,6.1vw,88px);line-height:1.02}
.section{padding-block:110px}
.section h2,.contact-band h2{font-family:var(--sans);font-weight:600;letter-spacing:-.035em}
.editorial-about h2{font-size:36px}
.editorial-about .prose p{font-size:23px;line-height:1.65}
.editorial-section-head h2,.editorial-team h2{font-size:38px}
.text-link{border:0;padding:0;text-decoration:underline;text-underline-offset:5px;font-size:16px;min-height:36px}
.practice-row>div,.editorial-expertise .practice-row>div{padding-right:0}
.person-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.person-row>span.person-role-label{grid-column:2;grid-row:1;font:400 15px/1.5 var(--sans);color:var(--muted)}
.editorial-contact{background:#fff;color:#111;border-top:2px solid #111}
.editorial-contact .eyebrow{color:#555}
.editorial-contact h2{font-family:var(--sans);font-weight:600}
.editorial-contact-details{border-color:#ccc}
.editorial-contact-details a{text-decoration:underline;text-underline-offset:5px}
.footer{border-top:1px solid #ddd}
.testimonials{border-top:0;padding-top:90px;padding-bottom:105px}
.testimonials h2{font:600 29px/1.3 var(--sans);text-align:center;letter-spacing:-.025em;margin-bottom:10px}
.quote-mark{font:700 150px/.85 var(--serif);height:105px;margin-bottom:0;color:#000}
.quote-panel{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-bottom:38px}
.quote-panel-single{grid-template-columns:1fr}
.quote-panel-single .testimonial{max-width:600px}
.testimonials.is-carousel .quote-panel{min-height:180px;margin-bottom:0}
.quote-panel[hidden],.quote-dots[hidden]{display:none}
.testimonial{margin:0}
.testimonial blockquote{margin:0;font:italic 24px/1.55 var(--serif);letter-spacing:-.025em;color:#111}
.testimonial figcaption{margin-top:28px;font:600 19px/1.5 var(--sans)}
.testimonial figcaption a:hover{text-decoration:underline;text-underline-offset:4px}
.quote-dots{display:flex;justify-content:center;gap:0;margin-top:20px}
.quote-dots button{display:grid;place-items:center;width:32px;height:40px;border:0;background:transparent;padding:0;cursor:pointer}
.quote-dots button:before{content:'';width:10px;height:10px;border-radius:50%;background:#c1c1c1}
.quote-dots button[aria-pressed=true]:before{background:#111}
.quote-note{text-align:center;font:400 11px/1.6 var(--sans);color:#666;margin-top:18px}
@media(max-width:1100px){
.editorial-photo{height:400px}
.quote-panel{gap:38px}
}
@media(max-width:820px){
.header-inner{height:104px}
.brand{width:86px;height:86px}
.editorial-photo{height:350px}
.section{padding-block:70px}
.editorial-about h2,.editorial-section-head h2,.editorial-team h2{font-size:32px}
.editorial-about .prose p{font-size:21px}
.testimonial blockquote{font-size:21px}
.testimonials.is-carousel .quote-panel{min-height:210px}
.testimonials h2{font-size:26px}
.quote-mark{font-size:125px;height:90px}
.testimonial figcaption{font-size:17px}
.scroll-section{scroll-margin-top:125px}
}
@media(max-width:520px){
.header-inner{height:96px}
.brand{width:78px;height:78px}
.editorial-title h1{font-size:clamp(39px,10.7vw,55px);line-height:1.08}
.editorial-photo{height:255px}
.section{padding-block:55px}
.editorial-about h2,.editorial-section-head h2,.editorial-team h2{font-size:30px}
.quote-panel{grid-template-columns:1fr;gap:36px}
.testimonials.is-carousel .quote-panel{min-height:340px}
.testimonial blockquote{font-size:22px}
.testimonial figcaption{margin-top:18px}
.quote-mark{font-size:110px;height:72px;margin-top:25px}
.testimonials h2{font-size:25px}
.quote-note{font-size:11px;max-width:280px;margin-inline:auto}
.person-row{grid-template-columns:1fr;gap:8px}
.person-row>span.person-role-label{grid-column:1;grid-row:2;font-size:13px}
.editorial-contact{padding-block:55px}
}
:root{--sans:Arial,Helvetica,sans-serif;--serif:Arial,Helvetica,sans-serif}
body,button,input,select,textarea{font-family:var(--sans)}
.editorial-title h1{font:500 clamp(34px,4.5vw,64px)/1.12 var(--sans);letter-spacing:-.035em}
.editorial-title{grid-template-columns:1.4fr 1fr}
.editorial-about .prose p{font-size:19px;line-height:1.75}
.section h2,.editorial-about h2,.editorial-section-head h2,.editorial-team h2,.editorial-contact h2{font-weight:500}
.testimonial blockquote{font:400 21px/1.65 var(--sans);letter-spacing:-.015em}
.quote-mark{font-family:var(--sans);font-weight:700}
.legal-review{border-top:1px solid #ccc}
.review-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:42px}
.review-heading>p{font-size:13px;color:#666}
.review-columns{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.review-columns h3{font-size:21px;font-weight:500;line-height:1.4;margin-bottom:20px}
.review-columns p{font-size:17px;line-height:1.8;color:#454545;margin-bottom:22px}
.review-columns a{font-size:13px;text-decoration:underline;text-underline-offset:4px}
.office-stage{height:480px;overflow:hidden;background:#eee;position:relative}
.office-slide{display:grid;grid-template-columns:1fr;height:100%;width:100%;animation:officeFade .9s ease}
.office-slide[hidden]{display:none}
.office-slide img{height:100%;width:100%;min-height:0;min-width:0;object-fit:cover;object-position:center 55%}
.office-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:12px}
.office-controls[hidden]{display:none}
.office-dots{display:flex;gap:0}
.office-dots button{display:grid;place-items:center;width:34px;height:36px;border:0;background:transparent;cursor:pointer;padding:0}
.office-dots button:before{content:'';width:7px;height:7px;border-radius:50%;background:#c4c4c4}
.office-dots button[aria-pressed=true]:before{background:#222}
.office-pause{background:none;border:0;padding:8px 0;font-size:12px;color:#555;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.office-pause:hover{color:#111}
@keyframes officeFade{from{opacity:.5}to{opacity:1}}
@media(max-width:1100px){
.office-stage{height:400px}
}
@media(max-width:820px){
.editorial-title{grid-template-columns:1fr}
.editorial-title h1{font-size:50px}
.office-stage{height:350px}
.review-columns{gap:34px}
.review-heading{align-items:flex-start;flex-direction:column;gap:12px}
.testimonial blockquote{font-size:20px}
}
@media(max-width:520px){
.editorial-title h1{font-size:clamp(29px,8vw,41px)}
.office-stage{height:300px}
.review-columns{grid-template-columns:1fr;gap:38px}
.review-columns h3{font-size:20px}
.review-columns p{font-size:16px}
.editorial-about .prose p{font-size:17px}
.editorial-contact h2{font-size:34px}
.testimonial blockquote{font-size:20px}
.office-pause{min-height:40px}
}
.editorial-title h1{font-size:clamp(32px,3.5vw,48px);line-height:1.2;letter-spacing:-.03em}
@media(max-width:520px){
.editorial-title h1{font-size:clamp(28px,7.3vw,36px);line-height:1.23}
}
.profile-portrait{width:100%;max-width:340px;aspect-ratio:2/3;overflow:hidden;margin:0 0 32px;background:#eee}
.profile-portrait img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
@media(max-width:820px){
.profile-info{order:0}
.profile-portrait{max-width:340px}
}
.testimonials .quote-panel{grid-template-columns:1fr;max-width:850px;margin-inline:auto}
.testimonials.is-carousel .quote-panel{min-height:160px}
.testimonial figcaption span{display:block;font-size:12px;font-weight:400;color:#666;margin-top:8px}
.quote-controls{display:flex;flex-direction:column;align-items:center;gap:6px}
.quote-controls[hidden]{display:none}
.quote-controls .quote-dots{flex-wrap:wrap;margin-top:10px}
.legal-badge{display:block;width:135px;margin:0 0 32px}
.legal-badge img{width:100%;height:auto;filter:grayscale(1)}
.testimonials .quote-note{max-width:600px;margin-inline:auto}
.testimonials .quote-mark{height:85px;font-size:120px}
.testimonials .testimonial blockquote{font-size:26px}
@media(max-width:520px){
.testimonials .testimonial blockquote{font-size:23px}
.testimonials.is-carousel .quote-panel{min-height:185px}
.legal-badge{width:115px}
.quote-controls .quote-dots button{width:28px}
}
.testimonials .quote-panels{display:grid}
.testimonials .quote-panel{grid-area:1/1;width:100%;align-content:start;box-sizing:border-box;margin-bottom:0}
.testimonials .quote-panel[hidden]{display:grid;visibility:hidden;pointer-events:none}
.testimonials .testimonial blockquote{font-size:22px;line-height:1.65}
.legal500-summary{display:grid;grid-template-columns:1fr 2fr;gap:70px;border-top:1px solid #ccc;padding-bottom:30px}
.legal500-summary>.prose{grid-column:2}
.legal500-summary .prose p{font-size:18px;line-height:1.8}
.profile-testimonials{padding:48px 0 12px;margin-top:40px;border-top:1px solid #ccc}
.profile-testimonials h2{text-align:left;font-size:24px}
.profile-testimonials .testimonial blockquote{font-size:20px}
.profile-testimonials .testimonial figcaption{font-size:16px}
.profile-testimonials .quote-dots button{min-width:32px}
@media(max-width:820px){
.legal500-summary>.prose{grid-column:1}
.legal500-summary{grid-template-columns:1fr;gap:24px}
.legal500-summary .eyebrow{margin-bottom:12px}
}
@media(max-width:520px){
.testimonials .testimonial blockquote{font-size:19px}
.profile-testimonials h2{font-size:22px}
.legal500-summary .prose p{font-size:17px}
}
.testimonials .testimonial blockquote,.legal500-summary .legal500-quotation{font-style:italic}
.testimonials .quote-mark{display:none}
.testimonials h2{margin-bottom:32px}
.legal500-firm-badge{display:block;width:160px;margin-top:28px}
.legal500-firm-badge img{display:block;width:100%;height:auto;filter:grayscale(1)}
.legal500-firm-badge{width:135px}
.legal500-firm-badge span{display:block;margin-top:10px;font:400 12px/1.5 var(--sans);text-align:center;color:#444}
.header-inner{height:126px}
.brand{width:108px;height:108px;flex-shrink:0}
.office-pause{width:32px;min-height:32px;height:32px;display:grid;place-items:center;padding:0;text-decoration:none;font-size:0}
.office-pause:before{content:'';display:block;width:9px;height:12px;border-left:3px solid currentColor;border-right:3px solid currentColor;box-sizing:border-box}
.office-pause[data-paused=true]:before{width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;border-right:0}
@media(max-width:820px){
.header-inner{height:120px}
.brand{width:102px;height:102px}
#primary-nav{top:120px}
.scroll-section{scroll-margin-top:140px}
}
@media(max-width:520px){
.header-inner{height:112px}
.brand{width:94px;height:94px}
#primary-nav{top:112px}
}
.header-inner{height:140px}
.brand{width:122px;height:122px}
.editorial-title>*,.editorial-about>*,.editorial-team>*,.detail-layout>*,.profile-layout>*,.intro-grid>*{min-width:0}
.profile-info a,.contact-information a{overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:821px){
.header-right{gap:18px}
#primary-nav{gap:16px}
#primary-nav a{font-size:11px}
}
@media(max-width:820px){
.header-inner{height:132px}
.brand{width:114px;height:114px}
#primary-nav{top:132px;max-height:calc(100dvh - 132px);overflow-y:auto}
.scroll-section{scroll-margin-top:152px}
}
@media(max-width:520px){
.header-inner{height:122px}
.brand{width:104px;height:104px}
#primary-nav{top:122px;max-height:calc(100dvh - 122px)}
.editorial-title h1{font-size:clamp(26px,7.3vw,36px)}
.editorial-expertise .practice-row h3{overflow-wrap:anywhere}
.profile-layout,.detail-layout{column-gap:0}
}
#primary-nav a{display:inline-block;transform-origin:center;transition:color .18s ease,transform .18s ease}
#primary-nav a:hover,#primary-nav a:focus-visible{color:var(--red);transform:scale(1.06)}
@media(max-width:820px){
#primary-nav a{display:block;transform-origin:left center}
}
@media(prefers-reduced-motion:reduce){
#primary-nav a{transition:none}
.office-slide{animation:none}
}
.text-link,.language a,.breadcrumb a,.footer-bottom a,.map-link{display:inline-block;transform-origin:left center;transition:color .18s ease,transform .18s ease}
.detail-sidebar nav a{transform-origin:left center;transition:color .18s ease,transform .18s ease}
.practice-row h3,.person-row h3{transform-origin:left center;transition:color .18s ease,transform .18s ease}
.text-link:hover,.text-link:focus-visible,.language a:hover,.language a:focus-visible,.breadcrumb a:hover,.breadcrumb a:focus-visible,.footer-bottom a:hover,.footer-bottom a:focus-visible,.map-link:hover,.map-link:focus-visible,.detail-sidebar nav a:hover,.detail-sidebar nav a:focus-visible{color:var(--red);transform:scale(1.06)}
.practice-row:hover h3,.practice-row:focus-visible h3,.person-row:hover h3,.person-row:focus-visible h3{color:var(--red);transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.text-link,.language a,.breadcrumb a,.footer-bottom a,.map-link,.detail-sidebar nav a,.practice-row h3,.person-row h3{transition:none}
}
.address-link{display:inline-block;transform-origin:left center;transition:color .18s ease,transform .18s ease}
.address-link:hover,.address-link:focus-visible,.address-link:active{color:var(--red);transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.address-link{transition:none}
}
:root{--header-height:140px;--brand-size:122px}
.header-inner{height:var(--header-height)}
.brand{width:var(--brand-size);height:var(--brand-size)}
html{scroll-padding-top:calc(var(--header-height) + 16px)}
.scroll-section,.legal-prose section{scroll-margin-top:0}
.practice-row>div,.editorial-contact-details>*,.contact-information dl>*,.company-data>*,.legal500-summary>*{min-width:0}
.practice-row h3,.person-row h3{max-width:92.5%;overflow-wrap:anywhere}
.quote-panels{min-width:0}
.testimonial blockquote{overflow-wrap:anywhere}
.office-pause{width:44px;height:44px;min-height:44px}
@media(max-width:820px){
:root{--header-height:132px;--brand-size:114px}
#primary-nav{top:var(--header-height);max-height:calc(100vh - var(--header-height));max-height:calc(100dvh - var(--header-height));overscroll-behavior:contain}
.detail-sidebar nav a{overflow-wrap:anywhere}
}
@media(max-width:520px){
:root{--header-height:122px;--brand-size:104px}
.contact-information dl>div{grid-template-columns:70px minmax(0,1fr);gap:12px}
.header-inner{gap:18px}
.header-right{gap:16px}
.language a{min-height:44px;display:inline-flex;align-items:center}
.address-link{max-width:92.5%}
}
@media(max-width:820px) and (max-height:480px){
:root{--header-height:92px;--brand-size:76px}
.office-stage{height:240px}
}
@media(pointer:coarse){
.office-dots button,.quote-controls .quote-dots button{width:44px;min-width:44px;height:44px}
.text-link{min-height:44px}
}
.legal-badge,.legal500-firm-badge{width:108px}
@media(max-width:520px){
.legal-badge,.legal500-firm-badge{width:92px}
}
.recognition-layout{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:32px;align-items:start}
.recognition-quotes{min-width:0}
.recognition-badge{align-self:start}
.recognition-badge .legal-badge,.recognition-badge .legal500-firm-badge{margin:0}
.profile-recognition{margin-top:40px}
@media(max-width:520px){
.recognition-layout{grid-template-columns:minmax(0,1fr);gap:24px}
.recognition-badge{grid-row:1}
.recognition-quotes{grid-row:2}
}
.profile-intro .intro-grid{grid-template-columns:minmax(0,1fr);gap:14px}
.profile-intro .intro-grid h1{font-size:clamp(2rem,3.7vw,3.6rem);line-height:1.2}
.profile-intro .intro-note{max-width:none;padding-bottom:0}
@media(max-width:520px){
.profile-intro .intro-grid h1{font-size:clamp(1.8rem,6.5vw,2.35rem)}
.profile-intro .intro-grid{gap:12px}
}
.photo,.profile-portrait img{filter:none}
.sector-intro{padding-bottom:40px}
.sector-photo{margin-top:0;margin-bottom:64px;margin-inline:auto}
.sector-photo-frame{overflow:hidden;aspect-ratio:3/1;background:#eee}
.sector-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.sector-photo--utilities .sector-photo-frame{aspect-ratio:2/1}
.sector-photo--utilities img{object-position:center top}
.photo-credit{font-size:11px;line-height:1.6;color:#686868;margin-top:10px}
.photo-credit span{display:block}
.photo-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:820px){
.sector-photo-frame{aspect-ratio:5/2}
.sector-photo{margin-bottom:44px}
}
@media(max-width:520px){
.sector-intro{padding-bottom:28px}
.sector-photo{margin-bottom:32px}
.sector-photo-frame,.sector-photo--utilities .sector-photo-frame{aspect-ratio:3/2}
}
@media(min-width:1101px){
.office-stage{height:540px}
}
@media(min-width:821px) and (max-width:1100px){
.office-stage{height:420px}
}
.detail-sidebar{position:static;max-height:none;overflow:visible}
.detail-sidebar nav a,.detail-sidebar nav a:hover,.detail-sidebar nav a:focus-visible{transform:none}
.detail-sidebar nav a>span{display:inline-block;max-width:94%;overflow-wrap:anywhere;transform-origin:left center;transition:transform .18s ease}
.detail-sidebar nav a:hover>span,.detail-sidebar nav a:focus-visible>span{transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.detail-sidebar nav a>span{transition:none}
}
.footer-affiliations{display:grid;grid-template-columns:repeat(4,78px);align-items:center;justify-content:center;gap:36px;padding-block:24px 18px}
.footer-affiliations a{display:flex;align-items:center;justify-content:center;min-height:72px;text-decoration:none;transition:opacity .18s ease}
.footer-affiliations a:hover{opacity:.7}
.footer-affiliations a:focus-visible{outline:2px solid var(--red);outline-offset:7px}
.footer-affiliations img{display:block;object-fit:contain;filter:grayscale(1);height:auto;max-width:100%}
.footer-hok-mark{display:block;width:100%;max-width:78px;aspect-ratio:146/103;overflow:hidden;flex-shrink:0}
.footer-affiliations .footer-hok img{width:520.55%;height:auto;max-width:none}
.footer-affiliations .footer-iba img{width:65px;filter:grayscale(1) invert(1)}
.footer-affiliations .footer-legal500 img{width:61px;transform:translateY(-1.5px)}
@media(max-width:600px){
.footer-affiliations{width:min(316px,calc(100% - 40px));grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-block:22px 16px}
.footer-affiliations a{min-height:68px}
}
@media(prefers-reduced-motion:reduce){
.footer-affiliations a{transition:none}
}
.home-page .editorial-hero{padding-top:38px}
.home-page .editorial-title{padding-bottom:36px}
.home-page .editorial-about{padding-top:70px;padding-bottom:90px}
.home-page .editorial-expertise{padding-block:90px}
.home-page .editorial-section-head{margin-bottom:40px}
.home-page .editorial-expertise .practice-row{min-height:84px;padding-block:22px}
.home-page .testimonials{border-top:0;padding-block:72px}
@media(max-width:820px){
.home-page .editorial-hero{padding-top:30px}
.home-page .editorial-title{gap:24px;padding-bottom:28px}
.home-page .editorial-about{padding-block:48px 60px}
.home-page .editorial-expertise{padding-block:60px}
.home-page .editorial-section-head{margin-bottom:32px}
.home-page .testimonials{padding-block:56px}
}
@media(max-width:520px){
.home-page .editorial-title{gap:20px;padding-bottom:26px}
.home-page .editorial-title p{margin-bottom:16px}
.home-page .editorial-about{padding-block:40px 48px}
.home-page .editorial-expertise{padding-block:48px}
.home-page .editorial-section-head{margin-bottom:24px}
.home-page .editorial-expertise .practice-row{min-height:64px;padding-block:18px}
.home-page .testimonials{padding-block:48px}
}
.home-page .testimonials .testimonial blockquote{font-size:20px;line-height:1.65}
@media(max-width:520px){
.home-page .testimonials .testimonial blockquote{font-size:18px}
}
@media(max-width:820px){
.home-page .office-stage,.firm-panorama{height:min(270px,calc((100vw - 48px)*.6))}
.home-page .office-slide img,.firm-panorama>.photo{object-fit:cover;object-position:center}
}
@media(max-width:520px){
.home-page .office-stage,.firm-panorama{height:min(252px,calc((100vw - 40px)*.6))}
}
@media(max-width:820px){
.home-page #office-slide-3 img{object-position:center 65%}
.home-page #office-slide-0 img{object-position:center calc(100% + (100vw - 48px)*.4)}
}
@media(max-width:520px){
.home-page #office-slide-0 img{object-position:center calc(100% + (100vw - 40px)*.4)}
}
.firm-panorama>.photo{object-fit:cover;object-position:center bottom}
@media(min-width:821px){
.firm-panorama>.photo{object-position:center 50%}
}
@media(max-width:820px){
.home-page #office-slide-2{position:relative;overflow:hidden}
.home-page #office-slide-2 img{position:absolute;left:0;bottom:0;width:100%;max-width:none;height:auto;min-height:100%;object-fit:cover;object-position:center bottom}
}
.practice-lead{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;align-items:start;border-top:1px solid var(--line);margin-top:44px;padding-top:28px}
.practice-lead-photo{display:block;aspect-ratio:2/3;overflow:hidden;background:#eee}
.practice-lead-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:none}
.practice-lead .practice-lead-label{font-size:11px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.practice-lead h2{font:500 22px/1.3 var(--sans);letter-spacing:-.015em;margin:0 0 10px}
.practice-lead-email{display:block;font-size:13px;line-height:1.6;overflow-wrap:anywhere;margin-bottom:10px}
.practice-lead .text-link{font-size:12px}
@media(max-width:520px){
.practice-lead{grid-template-columns:88px minmax(0,1fr);gap:18px;margin-top:32px;padding-top:24px}
.practice-lead h2{font-size:18px}
.practice-lead .practice-lead-label{font-size:10px;letter-spacing:.08em}
.practice-lead-email{font-size:12px}
}
.legal500-summary.has-leads{grid-template-columns:300px minmax(0,1fr);gap:48px;padding-top:40px;padding-bottom:40px;align-items:start}
.editorial-leads{display:grid;gap:28px;min-width:0}
.editorial-leads>.practice-lead{grid-template-columns:88px minmax(0,1fr);gap:18px;margin:0;padding:0;border:0;align-items:start}
.editorial-leads .practice-lead h2{font-size:19px}
.editorial-leads .practice-lead-label{font-size:10px;letter-spacing:.06em}
.editorial-leads .practice-lead-email{font-size:12px}
.editorial-leads .practice-lead .text-link{font-size:11px}
@media(max-width:1100px){
.legal500-summary.has-leads{grid-template-columns:270px minmax(0,1fr);gap:32px}
.editorial-leads>.practice-lead{grid-template-columns:76px minmax(0,1fr);gap:16px}
}
@media(max-width:820px){
.legal500-summary.has-leads{grid-template-columns:1fr;gap:32px;padding-top:32px}
.legal500-summary.has-leads>.prose{grid-column:1}
.editorial-leads{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.editorial-leads>.practice-lead{grid-template-columns:76px minmax(0,1fr)}
}
@media(max-width:600px){
.editorial-leads{grid-template-columns:1fr;gap:24px}
.editorial-leads>.practice-lead{grid-template-columns:88px minmax(0,1fr);gap:18px}
}
.practice-lead-info{min-width:0;text-align:left;align-self:start}
.practice-lead .practice-lead-info>.practice-lead-label{margin-top:0;margin-bottom:8px}
.practice-lead .practice-lead-info>h2{margin-top:0;margin-bottom:10px;color:var(--black)}
.practice-lead .practice-lead-info>.practice-lead-email{margin-top:0;margin-bottom:10px}
.practice-lead .practice-lead-info>.text-link{margin-top:0}
.editorial-lead-group{min-width:0}
.practice-leads-heading{font:400 10px/1.5 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 18px;text-align:left}
.editorial-lead-group .practice-lead-info{align-self:start}
.editorial-lead-group .practice-lead-info>h2{margin-top:0}
.sub-page main>section:last-child{padding-bottom:72px}
.practice-page .detail-layout:not(:last-child){padding-bottom:56px}
.practice-page .legal500-summary.has-leads{padding-bottom:24px}
.practice-page .legal500-summary+.testimonials{padding-top:24px}
.practice-lead-info h2{word-break:normal;overflow-wrap:normal}
@media(max-width:820px){
.sub-page main>section:last-child{padding-bottom:48px}
.practice-page .detail-layout:not(:last-child){padding-bottom:40px}
.practice-page .legal500-summary.has-leads{padding-bottom:20px}
.practice-page .legal500-summary+.testimonials{padding-top:20px}
}
@media(max-width:700px){
.editorial-leads{grid-template-columns:1fr;gap:24px}
.editorial-leads>.practice-lead{grid-template-columns:88px minmax(0,1fr);gap:18px}
.editorial-leads .practice-lead h2{font-size:18px}
}
.recognition-layout{grid-template-columns:minmax(0,1fr);gap:0}
.recognition-layout>.recognition-quotes{grid-row:auto;width:100%;text-align:center}
.recognition-layout .testimonial{width:100%;text-align:center}
.recognition-quotes>.recognition-badge{display:flex;justify-content:center;grid-row:auto;margin-top:22px;margin-bottom:8px}
.recognition-quotes>.recognition-badge .legal-badge,.recognition-quotes>.recognition-badge .legal500-firm-badge{display:block;width:76px;margin:0}
.recognition-quotes>.recognition-badge img{display:block;width:100%;height:auto}
@media(max-width:520px){
.recognition-quotes>.recognition-badge{margin-top:18px}
.recognition-quotes>.recognition-badge .legal-badge,.recognition-quotes>.recognition-badge .legal500-firm-badge{width:68px}
}
.recognition-quotes .quote-panel{grid-template-columns:1fr;max-width:850px;margin-inline:auto}
.testimonial .quote-attribution{margin-top:18px;text-align:center;font:400 12px/1.6 var(--sans);color:var(--muted)}
.quote-attribution>a{display:inline;font:inherit;color:inherit}
.quote-attribution>a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:520px){
.testimonial .quote-attribution{margin-top:14px;font-size:11px}
}
.legal500-summary .prose .legal500-editorial-source{font:400 12px/1.6 var(--sans);letter-spacing:.015em;color:var(--muted);margin:0 0 14px}
.legal500-editorial-source a:hover{color:var(--red);text-decoration:underline;text-underline-offset:4px}
@media(max-width:520px){
.legal500-summary .prose .legal500-editorial-source{font-size:11px;margin-bottom:12px}
}
.home-page .testimonials .testimonial{text-align:center}
.home-page .editorial-expertise .practice-row{min-height:74px;padding-block:19px}
@media(max-width:520px){
.home-page .editorial-expertise .practice-row{min-height:56px;padding-block:14px}
}
.editorial-leads>.practice-lead{grid-template-columns:100px minmax(0,1fr);gap:18px}
@media(min-width:701px) and (max-width:1100px){
.editorial-leads>.practice-lead{grid-template-columns:92px minmax(0,1fr);gap:16px}
}
@media(max-width:520px){
.editorial-leads>.practice-lead{grid-template-columns:88px minmax(0,1fr);gap:18px}
}
.practice-copy .service-bullets>li{padding-top:12px;padding-bottom:12px}
.practice-copy .service-bullets>li::before{top:23px}
.testimonials .testimonial blockquote,.profile-testimonials .testimonial blockquote{font-size:20px;font-style:italic}
@media(max-width:520px){
.testimonials .testimonial blockquote,.profile-testimonials .testimonial blockquote{font-size:18px}
}
@media(min-width:821px){
.header-right{align-items:baseline;gap:28px}
.header-right>.utility{padding-left:24px;border-left:1px solid var(--line)}
.header-right .language{align-items:baseline;line-height:1.4}
.header-right .language a{padding:12px 2px;line-height:1.4}
}
@media(min-width:821px) and (max-width:1100px){
.header-right{gap:16px}
.header-right>.utility{padding-left:16px}
}
.contact-band{padding-block:32px}
.contact-band>.contact-band-grid{display:grid;grid-template-columns:140px minmax(0,1fr) auto;align-items:start;gap:40px}
.contact-band-grid>*{min-width:0}
.contact-band-grid>.text-link{justify-self:start}
.contact-band-name{font:500 14px/1.5 var(--sans);letter-spacing:.01em}
.contact-band-company{font:400 13px/1.6 var(--sans);color:var(--muted);margin-top:2px}
.contact-band-address{font:400 13px/1.65 var(--sans);color:#444;margin-top:10px}
.contact-band-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font:400 14px/1.6 var(--sans)}
.contact-band-links a{overflow-wrap:anywhere}
@media(max-width:1100px) and (min-width:821px){
.contact-band>.contact-band-grid{grid-template-columns:110px minmax(0,1fr) auto;gap:28px}
}
@media(max-width:820px){
.contact-band>.contact-band-grid{grid-template-columns:1fr;align-items:start;gap:22px}
.contact-band{padding-block:28px}
}
.home-page .editorial-section-head{display:block;margin:0}
.home-page .editorial-section-head h2{max-width:100%;line-height:1.2}
.home-page .editorial-expertise .compact{column-gap:36px}
.home-page .editorial-expertise .practice-row h3{font-size:19px;line-height:1.45}
.home-page .testimonials{border-top:1px solid var(--line)}
@media(min-width:821px){
.home-page .editorial-about,.home-page .editorial-expertise,.home-page .editorial-contact>.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:64px;align-items:start}
.home-page .editorial-about>h2{margin:0}
.home-page .editorial-about>.prose,.home-page .editorial-expertise .compact{min-width:0}
.home-page .editorial-section-head h2{font-size:34px}
.home-page .editorial-contact h2{font-size:38px;line-height:1.2}
.home-page .editorial-contact-details{grid-template-columns:1fr 1fr;gap:18px 32px;margin:0;padding:0;border:0}
.home-page .editorial-contact-details>p{grid-column:1/-1;grid-row:auto}
.home-page .editorial-contact-details>a:first-child{font-size:20px}
}
@media(min-width:821px) and (max-width:1100px){
.home-page .editorial-about,.home-page .editorial-expertise,.home-page .editorial-contact>.wrap{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,2.6fr)}
.home-page .editorial-section-head h2{font-size:30px}
.home-page .editorial-expertise .compact{column-gap:26px}
.home-page .editorial-expertise .practice-row h3{font-size:18px}
}
@media(max-width:820px){
.home-page .editorial-expertise{display:block}
.home-page .editorial-section-head{margin-bottom:28px}
.home-page .editorial-about{gap:24px}
.home-page .editorial-about>h2{margin:0}
}
@media(max-width:520px){
.home-page .editorial-section-head{margin-bottom:22px}
.home-page .editorial-about{gap:20px}
.home-page .editorial-expertise .practice-row h3{font-size:19px}
}
.home-page .editorial-about{padding-block:56px 68px}
.home-page .editorial-about .prose{margin-bottom:20px}
.home-page .editorial-expertise{padding-block:68px}
.home-page .editorial-team{padding-block:72px}
.home-page .editorial-team h2{margin-bottom:22px}
.home-page .editorial-team>div>p:not(.eyebrow){margin-bottom:24px}
.home-page .testimonials{padding-block:56px}
.home-page .editorial-contact{padding-block:64px}
@media(max-width:820px){
.home-page .editorial-about{padding-block:44px 50px}
.home-page .editorial-expertise{padding-block:50px}
.home-page .editorial-team{padding-block:54px}
.home-page .testimonials{padding-block:46px}
.home-page .editorial-contact{padding-block:50px}
.home-page .editorial-section-head{margin-bottom:24px}
}
@media(max-width:520px){
.home-page .editorial-about{padding-block:36px 42px}
.home-page .editorial-expertise{padding-block:42px}
.home-page .editorial-team{padding-block:44px}
.home-page .testimonials{padding-block:40px}
.home-page .editorial-contact{padding-block:44px}
.home-page .editorial-section-head{margin-bottom:20px}
.home-page .editorial-contact-details{margin-top:28px;padding-top:22px}
}
.people-page .person-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:baseline;gap:24px;padding-block:18px;min-height:64px}
.people-page .person-row h3{max-width:100%;transform:none;transition:color .18s ease}
.people-page .person-row>span.person-role-label{grid-column:2;grid-row:1;line-height:1.4;min-width:0}
.people-page .person-row:hover h3,.people-page .person-row:focus-visible h3{transform:none;color:var(--red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.people-page .people-heading{margin-block:36px 16px}
.people-page .people-heading:first-child{margin-top:0}
@media(max-width:520px){
.people-page .person-row{grid-template-columns:minmax(0,1fr);gap:5px;padding-block:16px;min-height:72px}
.people-page .person-row>span.person-role-label{grid-column:1;grid-row:2}
.people-page .people-heading{margin-block:30px 14px}
}
.office-dots button,.quote-dots button,.quote-controls .quote-dots button,.profile-testimonials .quote-dots button{width:34px;min-width:34px;height:40px}
.office-dots button::before,.quote-dots button::before{width:7px;height:7px;border-radius:50%;background:#c4c4c4}
.office-dots button[aria-pressed="true"]::before,.quote-dots button[aria-pressed="true"]::before{background:#222}
@media(pointer:coarse){
.office-dots button,.quote-dots button,.quote-controls .quote-dots button,.profile-testimonials .quote-dots button{width:44px;min-width:44px;height:44px}
}
@media(min-width:821px){
.home-page #expertise,.home-page #sectors{padding-bottom:48px}
}
.people-portraits .person-row{grid-template-columns:64px minmax(0,1.5fr) minmax(0,1fr);align-items:center;column-gap:24px;padding-block:16px;min-height:128px}
.people-portraits .person-row>.person-row-portrait{grid-column:1;grid-row:1;display:block;width:64px;height:96px;overflow:hidden}
.people-portraits .person-row-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.people-portraits .person-row h3{grid-column:2;grid-row:1}
.people-portraits .person-row>span.person-role-label{grid-column:3;grid-row:1}
@media(max-width:700px){
.people-portraits .person-row{grid-template-columns:68px minmax(0,1fr);grid-template-rows:auto auto;column-gap:18px;row-gap:5px;align-items:center;min-height:119px;padding-block:14px}
.people-portraits .person-row>.person-row-portrait{width:68px;height:91px;grid-row:1/3}
.people-portraits .person-row h3{grid-column:2;grid-row:1;align-self:end}
.people-portraits .person-row>span.person-role-label{grid-column:2;grid-row:2;align-self:start}
}
@media(min-width:701px){
.people-portraits .person-row{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;column-gap:24px;row-gap:5px}
.people-portraits .person-row>.person-row-portrait{grid-column:1;grid-row:1/3}
.people-portraits .person-row h3{grid-column:2;grid-row:1;align-self:end}
.people-portraits .person-row>span.person-role-label{grid-column:2;grid-row:2;align-self:start}
}
@media(min-width:1000px){
.people-portraits .people-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.people-portraits .person-row{min-width:0}
}
@media(min-width:1000px){
.people-portraits .person-row{grid-template-columns:132px minmax(0,1fr);min-height:208px}
.people-portraits .person-row>.person-row-portrait{width:132px;height:176px}
.people-portraits .person-row-portrait img{height:198px}
}
@media(min-width:1000px){
.people-portraits .person-row-portrait .team-portrait-ksenija-grejic-dolenec{height:188.1px;transform:translateY(-6.526px)}
.people-portraits .person-row-portrait .team-portrait-tomislav-orehovec{transform:translateY(.77px) scale(1.10)!important;transform-origin:50% 9.77%!important}
.people-portraits .person-row-portrait .team-portrait-pavla-antekolovic{transform:translateY(-8px) scale(1.06);transform-origin:50% 14.26%}
}
@media(max-width:700px){
.people-portraits .person-row-portrait img{height:102px}
}
.people-page .page-intro{padding-bottom:26px}
@media(max-width:820px){
.people-page .page-intro{padding-bottom:20px}
}
@media(max-width:520px){
.people-page .page-intro{padding-bottom:13px}
}
@media(max-width:700px){
.people-portraits .person-row-portrait .team-portrait-ksenija-grejic-dolenec,.people-portraits .person-row-portrait .team-portrait-pavla-antekolovic{transform:translateY(-4px)}
}
.people-portraits .person-row{grid-template-rows:min-content 1fr;align-items:start}
.people-portraits .person-row h3{align-self:start}
.people-portraits .person-row>.person-row-portrait{align-self:start}
.people-portraits .person-row>span.person-role-label{align-self:start}
@media(min-width:821px){
.home-page .editorial-team{align-items:start}
.home-page .editorial-team>div:last-child{position:relative}
}
@media(min-width:1000px){
.practice-lead-photo{aspect-ratio:3/4}
.practice-lead-photo img{height:112.5%}
.practice-lead-photo .team-portrait-ksenija-grejic-dolenec{height:106.875%;transform:translateY(-3.46943%)}
.practice-lead-photo .team-portrait-tomislav-orehovec{transform:translateY(.388889%) scale(1.10)!important;transform-origin:50% 9.77%!important}
}
@media(max-width:700px){
.practice-lead-photo{aspect-ratio:68/91}
.practice-lead-photo img{height:112.087912%}
.practice-lead-photo .team-portrait-ksenija-grejic-dolenec{transform:translateY(-3.921569%)}
}
@keyframes oks-page-enter{from{opacity:0}to{opacity:1}}
@media(max-width:700px){
.people-portraits .person-row{grid-template-columns:84px minmax(0,1fr);min-height:140px}
.people-portraits .person-row>.person-row-portrait{width:84px;height:112px}
.people-portraits .person-row-portrait img{height:125.538462px}
.people-portraits .person-row-portrait .team-portrait-ksenija-grejic-dolenec,.people-portraits .person-row-portrait .team-portrait-pavla-antekolovic{transform:translateY(-4.923077px)}
}
@media(max-width:360px){
.people-portraits .person-row{grid-template-columns:76px minmax(0,1fr);column-gap:14px;min-height:129px}
.people-portraits .person-row>.person-row-portrait{width:76px;height:101px}
.people-portraits .person-row-portrait img{height:113.208791px}
.people-portraits .person-row-portrait .team-portrait-ksenija-grejic-dolenec,.people-portraits .person-row-portrait .team-portrait-pavla-antekolovic{transform:translateY(-4.439560px)}
}
.overview-page .page-intro{padding-top:36px}
.overview-page .page-intro .breadcrumb{margin-bottom:62px}
.overview-page .intro-grid{align-items:start}
.overview-page .intro-grid h1{margin-top:0}
@media(max-width:820px){
.overview-page .page-intro{padding-top:28px}
.overview-page .page-intro .breadcrumb{margin-bottom:45px}
}
@media(max-width:520px){
.overview-page .page-intro{padding-top:20px}
.overview-page .page-intro .breadcrumb{margin-bottom:34px}
}
.careers-layout .prose>p:first-child{margin-top:0}
.contact-information>h2:first-child{margin-top:0}
.people-page .person-row h3{transform-origin:left center;transition:color .18s ease,transform .18s ease}
@media(hover:hover) and (pointer:fine){
.people-page .person-row:hover h3{transform:scale(1.06)}
}
.people-page .person-row:focus-visible h3{transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.people-page .person-row:hover h3,.people-page .person-row:focus-visible h3{transform:none}
}
.people-page .person-row.team-reveal-pending{opacity:0;transform:translateY(12px)}
.people-page .person-row.team-reveal-visible{opacity:1;transform:translateY(0);transition:opacity 600ms ease var(--team-reveal-delay,0ms),transform 600ms ease var(--team-reveal-delay,0ms)}
@media(prefers-reduced-motion:reduce){
.people-page .person-row.team-reveal-pending,.people-page .person-row.team-reveal-visible{opacity:1;transform:none;transition:none}
}
:root{--title-size:clamp(2rem,3.5vw,3.375rem);--intro-gap:48px;--copy-measure:74ch;--motion-duration:180ms}
.header{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
.sub-page .page-intro{padding-top:36px}
.sub-page .page-intro .breadcrumb{margin-bottom:54px;line-height:1.6}
.sub-page .intro-grid{align-items:start;column-gap:var(--intro-gap)}
.sub-page .intro-grid h1{font-size:var(--title-size);font-weight:400;line-height:1.2;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word}
.sub-page .profile-intro .intro-grid h1{font-size:clamp(2rem,3.2vw,3rem);line-height:1.22}
.sub-page .intro-note{font-size:16px;line-height:1.75;padding-bottom:0;max-width:46ch}
.sub-page .intro-note p{margin:0}
.sub-page .page-intro.intro-without-note .intro-grid{grid-template-columns:minmax(0,1fr)}
.sub-page .page-intro.intro-without-note .intro-note{display:none}
.sub-page .page-intro.intro-without-note h1{max-width:24ch}
.sub-page .prose{max-width:var(--copy-measure);line-height:1.75}
.sub-page .prose p{margin-bottom:24px}
.sub-page .practice-copy>p:first-child,.sub-page .profile-copy>p:not(.eyebrow):first-of-type{font-size:19px;line-height:1.7}
.sub-page .prose h2{font-size:24px;line-height:1.35;letter-spacing:-.02em;margin:40px 0 20px}
.sub-page .careers-layout,.sub-page .contact-layout{align-items:start}
.sub-page .careers-layout .prose{padding-top:0}
.sub-page .contact-information{padding-top:0}
.sub-page .contact-information h2{line-height:1.35;max-width:100%;text-wrap:balance}
.people-page .people-heading h2{font-size:20px;line-height:1.4;font-weight:400}
.people-page .person-row h3{max-width:94%;font-size:20px;line-height:1.4;overflow-wrap:normal;word-break:normal}
.people-page .person-row>.person-role-label{font-size:14px;line-height:1.5;color:var(--muted)}
.profile-portrait img,.practice-lead-photo img,.person-row-portrait img{filter:grayscale(1)}
.practice-lead h2{line-height:1.35}
.footer-bottom{align-items:baseline;line-height:1.6}
@media(max-width:1100px) and (min-width:821px){
:root{--intro-gap:36px}
.sub-page .intro-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
}
@media(max-width:820px){
.sub-page .page-intro{padding-top:28px}
.sub-page .page-intro .breadcrumb{margin-bottom:40px}
.sub-page .intro-grid{grid-template-columns:minmax(0,1fr);row-gap:20px}
.sub-page .intro-grid h1{font-size:clamp(2rem,5vw,2.75rem)}
.sub-page .profile-intro .intro-grid h1{font-size:clamp(1.875rem,4.5vw,2.5rem)}
.sub-page .intro-note{max-width:60ch}
.menu-button{width:44px;height:44px;flex-shrink:0;align-items:center}
.sub-page .careers-layout,.sub-page .contact-layout{row-gap:28px}
.people-page .person-row h3{font-size:19px}
}
@media(max-width:520px){
.sub-page .page-intro{padding-top:24px}
.sub-page .page-intro .breadcrumb{margin-bottom:28px;font-size:11px;column-gap:10px}
.sub-page .intro-grid{row-gap:18px}
.sub-page .intro-grid h1{font-size:clamp(1.875rem,7vw,2.25rem);line-height:1.23}
.sub-page .profile-intro .intro-grid h1{font-size:clamp(1.75rem,6.5vw,2.125rem)}
.sub-page .intro-note{font-size:15px;line-height:1.75}
.sub-page .prose{font-size:16px;line-height:1.75}
.sub-page .prose p{font-size:16px;margin-bottom:22px}
.sub-page .practice-copy>p:first-child,.sub-page .profile-copy>p:not(.eyebrow):first-of-type,.sub-page .prose.large>p:first-child{font-size:17px;line-height:1.7}
.sub-page .prose h2{font-size:21px;margin:32px 0 16px}
.people-page .person-row h3{font-size:18px}
.people-page .person-row>.person-role-label{font-size:13px}
.people-page .people-heading{margin-top:28px;margin-bottom:12px}
.people-page .people-heading:first-child{margin-top:0}
.people-page .people-heading h2{font-size:19px}
.practice-lead .practice-lead-label,.practice-leads-heading{font-size:11px;line-height:1.55}
.footer-bottom{gap:12px}
}
@media(max-width:360px){
.people-portraits .person-row{column-gap:12px}
.people-page .person-row h3{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
.people-page .person-row h3{transition:none}
}
.review-bar{background:#171717;color:white;font-size:12px;padding:12px 0;line-height:1.55}
.review-bar>.wrap{display:flex;gap:20px;align-items:center;justify-content:space-between}
.review-bar span{color:#d5d5d5}
.review-bar nav{display:flex;gap:22px;flex-wrap:wrap}
.review-bar a{color:white;text-decoration:none}
.review-bar a:hover{color:#ff7878}
.market-intro{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;padding-bottom:70px}
.market-intro img{width:100%;height:430px;object-fit:cover;filter:grayscale(1)}
.market-intro h2{font-size:27px;line-height:1.3;margin:0 0 24px}
.market-services{display:grid;grid-template-columns:1fr 1fr;column-gap:72px}
.market-services article{border-top:1px solid #d8d8d8;padding:27px 0 30px}
.market-services h3{font-size:24px;line-height:1.35;font-weight:500;margin:14px 0}
.market-services p{max-width:53ch;font-size:16px;line-height:1.8;color:#555}
.market-services a{text-decoration:none}
.market-services p a{text-decoration:underline;text-underline-offset:3px}
.market-services h3 a:hover{color:#bc1623}
.market-process,.market-questions,.market-contact{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}
.market-process h2,.market-questions h2,.market-contact h2{font-size:30px;line-height:1.3}
.market-process h3{font-size:22px;font-weight:500}
.market-questions details{border-top:1px solid #d8d8d8;padding:20px 0}
.market-questions summary{font-size:19px;font-weight:500;cursor:pointer;line-height:1.45}
.market-questions details p{margin:18px 0 0}
.market-contact{border-top:1px solid #222;padding-top:46px}
.market-contact a{overflow-wrap:anywhere}
.market-page .intro-grid{grid-template-columns:1.3fr 1fr}
.market-page .intro-grid h1{font-size:clamp(38px,5vw,68px)}
@media(max-width:1000px){
.review-bar>.wrap{display:block}
.review-bar nav{margin-top:7px;gap:8px 20px}
.market-intro{gap:36px}
.market-process,.market-questions,.market-contact{gap:36px}
.market-services{column-gap:36px}
}
@media(max-width:700px){
.market-intro,.market-services,.market-process,.market-questions,.market-contact,.market-page .intro-grid{grid-template-columns:1fr;gap:24px}
.market-intro{padding-bottom:32px}
.market-intro img{height:280px}
.market-services{gap:0}
.market-services h3{font-size:22px}
.review-bar nav{gap:7px 16px}
.market-process h2,.market-questions h2,.market-contact h2{font-size:26px}
}
.firm-links{display:flex;flex-wrap:wrap;gap:14px 32px;align-items:center}
.footer-text-links{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
.footer-text-links a{text-decoration:none}
.footer-text-links a:hover{color:#b81724}
@media(max-width:700px){
.firm-links{align-items:flex-start;flex-direction:column;gap:14px}
.footer-text-links{align-items:flex-start;flex-direction:column;gap:10px}
}
.market-intro img.dbic-city-photo{height:auto;aspect-ratio:1128/697;object-fit:contain;filter:grayscale(1)}
.careers-layout img.careers-staircase-photo{object-position:center center}
.related-navigation[hidden]{display:none}
@media(max-width:820px){
.related-navigation{padding-top:12px;padding-bottom:48px}
.related-navigation .detail-sidebar{order:initial}
.related-navigation .detail-sidebar nav{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}
}
@media(max-width:520px){
.related-navigation .detail-sidebar nav{grid-template-columns:1fr}
}
.practice-copy .dbic-return{margin-top:32px;padding-top:16px;border-top:1px solid #e5e5e5}
.practice-copy .dbic-return .text-link{font-size:13px;font-weight:600}
.dbic-return[hidden]{display:none!important}
.dbic-direct-contact[hidden]{display:none!important}
.market-intro img.dbic-city-photo{aspect-ratio:1092/718;height:auto;object-fit:contain}
.market-services > article > .eyebrow{color:var(--red)}
.market-questions summary{display:flex;align-items:flex-start;gap:16px;list-style:none}
.market-questions summary::-webkit-details-marker{display:none}
.market-questions summary::marker{content:""}
.market-questions .faq-logo-frame{flex:0 0 20px;margin-top:4px;color:var(--red)}
.market-questions .faq-logo-frame{transform:rotate(90deg);transform-origin:center;transition:transform .2s ease}
.market-questions details[open] .faq-logo-frame{background:none;transform:rotate(0deg)}
.market-questions summary:focus-visible{outline:1px solid var(--red);outline-offset:6px}
.market-questions details p{margin-left:36px}
.market-questions .faq-title{display:inline-block;min-width:0;margin-right:6%;transform-origin:left center;transition:color .18s ease,transform .18s ease}
.market-questions summary:hover .faq-title,.market-questions summary:focus-visible .faq-title{color:var(--red);transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.market-questions .faq-title{transition:none}
}
[data-dbic-only][hidden]{display:none!important}
.menu-logo-frame{display:block;flex-shrink:0;color:var(--red);transform-origin:center;transition:transform .2s ease}
.menu-button[aria-expanded="true"] .menu-logo-frame{transform:rotate(90deg)}
.menu-button:focus-visible{outline:1px solid var(--red);outline-offset:4px}
@media(prefers-reduced-motion:reduce){
.menu-logo-frame{transition:none}
}
.market-questions .faq-answer{display:flow-root}
.market-questions .faq-logo-frame{transition:transform .25s ease}
.market-questions details[data-expanded="false"] .faq-logo-frame{transform:rotate(90deg)}
.market-questions details[data-expanded="true"] .faq-logo-frame{transform:rotate(0deg)}
@media(prefers-reduced-motion:reduce){
.market-questions .faq-logo-frame{transition:none}
}
.market-services h3 a,.market-contact-title{display:inline-block;max-width:94%;transform-origin:left center;transition:color .18s ease,transform .18s ease;text-decoration:none}
.market-services h3 a:hover,.market-services h3 a:focus-visible,.market-contact-title:hover,.market-contact-title:focus-visible{color:var(--red);transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){
.market-services h3 a,.market-contact-title{transition:none}
}
.market-services h3 a{display:flex;align-items:flex-start;gap:16px;max-width:100%}
.market-services h3 a:hover,.market-services h3 a:focus-visible{transform:none}
.service-logo-frame{transform:rotate(90deg);flex:0 0 22px;color:var(--red);margin-top:5px;transform-origin:center;transition:transform .25s ease}
.service-link-title{display:inline-block;min-width:0;margin-right:6%;transform-origin:left center;transition:color .18s ease,transform .18s ease}
.market-services h3 a:hover .service-link-title,.market-services h3 a:focus-visible .service-link-title{color:var(--red);transform:scale(1.06)}

@media(prefers-reduced-motion:reduce){
.service-logo-frame,.service-link-title{transition:none}
}
.home-page #expertise .practice-row,.home-page #sectors .practice-row{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:16px;align-items:start}
.home-logo-frame{transform:rotate(90deg);display:block;flex-shrink:0;color:var(--red);margin-top:4px;transform-origin:center;transition:transform .25s ease}

@media(prefers-reduced-motion:reduce){
.home-logo-frame{transition:none}
}
.home-page #expertise .practice-row h3,.home-page #sectors .practice-row h3,.market-services .service-link-title,.market-questions .faq-title{text-decoration:none}
.menu-logo-lines{opacity:1;transition:opacity .2s ease}
.menu-button[aria-expanded="true"] .menu-logo-lines{opacity:0}
@media(prefers-reduced-motion:reduce){
.menu-logo-lines{transition:none}
}
.practice-copy .dbic-expanded-copy{padding-top:40px}
@media(max-width:700px){
.practice-copy .dbic-expanded-copy{padding-top:32px}
}
.practice-lead .practice-lead-label,.practice-leads-heading{color:var(--red)}
:root{--space-copy:24px;--space-heading:48px;--polish-duration:250ms;--polish-ease:cubic-bezier(.25,.1,.25,1)}
.sub-page .prose p{margin-bottom:var(--space-copy)}
.sub-page .prose p:last-child{margin-bottom:0}
.sub-page .prose h2{margin:var(--space-heading) 0 20px;line-height:1.35;letter-spacing:-.02em;text-wrap:balance}
.sub-page .prose h2:first-child{margin-top:0}
.practice-copy .service-bullets{margin-top:32px}
.practice-copy .dbic-expanded-copy{padding-top:var(--space-heading)}
.practice-copy .dbic-expanded-copy>h2:first-child{margin-top:0}
.sub-page .detail-layout,.sub-page .profile-layout,.sub-page .careers-layout{padding-bottom:88px}
.legal500-summary.has-leads{padding-top:48px;row-gap:40px}
.practice-page .legal500-summary.has-leads{padding-bottom:32px}
.practice-page .legal500-summary+.testimonials{padding-top:32px}
.practice-lead{margin-top:48px;padding-top:0;border-top:0}
.editorial-leads>.practice-lead{margin:0;padding:0}
.application{border-top:0;margin-top:40px;padding-top:0}
.practice-lead .practice-lead-label,.practice-leads-heading{color:var(--red);font-weight:400;font-size:11px;line-height:1.55;letter-spacing:.1em}
.practice-leads-heading{margin-bottom:20px}
.practice-lead .practice-lead-label{margin-bottom:10px}
.practice-lead .practice-lead-info>h2{color:var(--black);line-height:1.35;letter-spacing:-.015em}
.market-services h3,.market-process h3{line-height:1.4;letter-spacing:-.015em;text-wrap:balance}
img.photo,.sector-photo img,.profile-portrait img,.practice-lead-photo img,.person-row-portrait img,.market-intro img.dbic-city-photo{filter:grayscale(1) contrast(1.025) brightness(1.01)}
.profile-portrait img[src*="lorena-panezic"],.practice-lead-photo img[src*="lorena-panezic"],.person-row-portrait img[src*="lorena-panezic"]{filter:grayscale(1) contrast(1.045) brightness(.99)}
.practice-lead-photo,.person-row-portrait,.profile-portrait{background:#f3f3f3}
.detail-sidebar nav a{border-bottom:0;padding-block:10px}
.detail-sidebar nav a[aria-current]{border-bottom:0;color:var(--red)}
.detail-sidebar{border-top-color:var(--line)}
.practice-row,.person-row,.market-services article,.market-questions details{border-color:#e4e4e4}
.home-page .testimonials{border-top:0}
.profile-testimonials{border-top:0;padding-top:24px;margin-top:48px}
.practice-copy .dbic-return{border-top:0;margin-top:40px;padding-top:0}
#primary-nav a,.text-link,.language a,.breadcrumb a,.footer-bottom a,.map-link,.practice-row h3,.person-row h3,.people-page .person-row h3,.detail-sidebar nav a,.detail-sidebar nav a>span,.service-link-title,.market-contact-title,.faq-title,.market-questions .faq-title,.market-questions .faq-logo-frame,.home-logo-frame,.service-logo-frame,.faq-logo-frame,.menu-logo-frame,.menu-logo-lines,.footer-affiliations a{transition-duration:var(--polish-duration);transition-timing-function:var(--polish-ease)}
#primary-nav a,.text-link,.language a,.breadcrumb a,.footer-bottom a,.map-link,.practice-row h3,.person-row h3,.people-page .person-row h3,.service-link-title,.market-contact-title,.faq-title,.market-questions .faq-title{transition-property:color,transform}
.detail-sidebar nav a{transition-property:color}
.detail-sidebar nav a>span,.home-logo-frame,.service-logo-frame,.faq-logo-frame,.market-questions .faq-logo-frame,.menu-logo-frame{transition-property:transform}
.menu-logo-lines,.footer-affiliations a{transition-property:opacity}
.contact-band{background:#f7f7f7;border-top:0;border-bottom:0;padding-block:44px}
.contact-band>.contact-band-grid{column-gap:48px;row-gap:28px}
.contact-band-name{font-weight:500;letter-spacing:.025em;line-height:1.6}
.contact-band-company{font-size:12px;line-height:1.65;margin-top:4px}
.contact-band-address{margin-top:14px;line-height:1.75}
.contact-band-links{gap:8px;line-height:1.75}
.footer{border-top:0}
.footer-affiliations{grid-template-columns:repeat(4,78px);gap:48px;padding-block:40px 32px}
.footer-affiliations a{min-height:80px}
.footer-affiliations .footer-iba img{width:62px}
.footer-affiliations .footer-legal500 img{width:58px}
.footer-affiliations .footer-iflr img{width:74px}
.footer-bottom{border-top:1px solid #ececec;padding-block:24px 28px;gap:24px;color:#707070}
.footer-text-links{gap:16px 28px}
@media(max-width:820px){
:root{--space-heading:36px}
.sub-page .detail-layout,.sub-page .profile-layout,.sub-page .careers-layout{padding-bottom:64px}
.legal500-summary.has-leads{padding-top:36px;row-gap:32px}
.practice-lead{margin-top:36px}
.editorial-leads>.practice-lead{margin:0}
.contact-band>.contact-band-grid{column-gap:28px}
}
@media(max-width:700px){
.contact-band{padding-block:36px}
.contact-band>.contact-band-grid{row-gap:24px}
.footer-affiliations{width:min(360px,calc(100% - 40px));grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding-block:32px 24px}
.footer-affiliations a{min-height:72px}
.footer-bottom{gap:16px;padding-block:22px 26px}
.footer-text-links{gap:12px}
}
@media(max-width:520px){
:root{--space-copy:22px;--space-heading:32px}
.sub-page .prose h2{margin-bottom:16px}
.sub-page .detail-layout,.sub-page .profile-layout,.sub-page .careers-layout{padding-bottom:52px}
.practice-lead .practice-lead-label,.practice-leads-heading{letter-spacing:.08em}
.practice-copy .dbic-return{margin-top:32px}
}
@media(prefers-reduced-motion:reduce){
#primary-nav a,.text-link,.language a,.breadcrumb a,.footer-bottom a,.map-link,.practice-row h3,.person-row h3,.people-page .person-row h3,.detail-sidebar nav a,.detail-sidebar nav a>span,.service-link-title,.market-contact-title,.faq-title,.market-questions .faq-title,.market-questions .faq-logo-frame,.home-logo-frame,.service-logo-frame,.faq-logo-frame,.menu-logo-frame,.menu-logo-lines,.footer-affiliations a{transition:none}
}
.sub-page .careers-layout>.careers-image{height:auto;aspect-ratio:858/500}
.careers-image .careers-architecture-photo{display:block;width:100%;height:auto;aspect-ratio:858/500;object-fit:contain}
:root{--red-text:#c9161d}
body{font-optical-sizing:auto}
.sub-page .intro-grid h1{max-width:25ch}
.sub-page .prose:not(.practice-lead-info){max-width:70ch}
.sub-page .prose p,.market-services p{line-height:1.8}
.eyebrow,.practice-lead .practice-lead-label,.practice-leads-heading{font-size:11px;line-height:1.6}
.page-intro .eyebrow,.practice-lead .practice-lead-label,.practice-leads-heading{color:var(--red-text)}
.editorial-title h1{font-weight:500}
.testimonials .testimonial blockquote,.profile-testimonials .testimonial blockquote{font-family:var(--serif);font-size:19px;line-height:1.75;font-style:italic;letter-spacing:-.015em}
.home-page .testimonials .testimonial blockquote{font-size:19px}
.testimonial .quote-attribution,.legal500-summary .prose .legal500-editorial-source{font-size:12px;line-height:1.7}
.practice-next-step{padding-top:24px;padding-bottom:64px}
.practice-next-step .text-link{font-size:15px}
.home-page .practice-row:hover h3,.home-page .practice-row:focus-visible h3,.people-page .person-row:hover h3,.people-page .person-row:focus-visible h3,.market-services h3 a:hover .service-link-title,.market-services h3 a:focus-visible .service-link-title,.market-questions summary:hover .faq-title,.market-questions summary:focus-visible .faq-title{color:var(--red-text);transform:scale(1.06);text-decoration:none}
.text-link:hover,.text-link:focus-visible,.detail-sidebar nav a:hover,.detail-sidebar nav a:focus-visible,.detail-sidebar nav a[aria-current],#primary-nav a:hover,#primary-nav a:focus-visible{color:var(--red-text)}
#primary-nav a:focus-visible{outline-offset:3px}
.practice-lead-photo,.people-portraits .person-row>.person-row-portrait{aspect-ratio:3/4}
.people-portraits .person-row-portrait,.practice-lead-photo{overflow:hidden}
.people-portraits .person-row>span.person-role-label{font-size:13px;line-height:1.65;max-width:30ch}
.footer-affiliations{padding-block:40px 32px}
.footer-affiliations a{opacity:.88}
.footer-affiliations a:hover,.footer-affiliations a:focus-visible{opacity:1}
.dbic-topic-page .intro-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}
.dbic-topic-page .breadcrumb{flex-wrap:wrap}
.dbic-topic-page .intro-note{max-width:45ch}
.dbic-topic-page .dbic-return{margin-top:40px}
@media(max-width:820px){
.dbic-topic-page .intro-grid{grid-template-columns:minmax(0,1fr);gap:24px}
.dbic-topic-page .intro-note{max-width:65ch}
.practice-next-step{padding-bottom:48px}
}
@media(max-width:520px){
.testimonials .testimonial blockquote,.profile-testimonials .testimonial blockquote,.home-page .testimonials .testimonial blockquote{font-size:17px;line-height:1.75}
.people-portraits .person-row>span.person-role-label{font-size:12px}
.practice-next-step{padding-top:16px;padding-bottom:40px}
.footer-text-links a{font-size:12px;line-height:1.65}
}
/* Sans-serif page titles establish the same hierarchy as the homepage. */
.sub-page .intro-grid h1{font-family:var(--sans);font-weight:500;line-height:1.2}
.application>a{font-family:var(--sans);font-size:24px;font-weight:400;letter-spacing:-.015em}
@media(max-width:520px){.application>a{font-size:22px}}

/* Team groups use the same red label hierarchy as practice and sector leads. */
.people-page .people-heading h2{font:400 11px/1.6 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--red-text)}
@media(max-width:520px){.people-page .people-heading h2{letter-spacing:.08em}}

/* Firm editorial sections share the red label style used for team groups. */
.firm-page .article-grid>aside>.firm-section-label{font:400 11px/1.6 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--red-text);margin:0 0 18px}
@media(max-width:520px){.firm-page .article-grid>aside>.firm-section-label{letter-spacing:.08em}}

/* Shared red labels identify content sections without competing with names. */
.sub-page .section-label{font:400 11px/1.6 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--red-text)}
@media(max-width:520px){.sub-page .section-label{letter-spacing:.08em}}

/* Match Careers photograph width to the Contact photograph; retain its natural ratio. */
@media(min-width:821px){.sub-page .careers-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* Email links share the site's 6% interaction without changing document flow. */
a[href^="mailto:"]{display:inline-block;max-width:100%;transform-origin:left center;transition:color var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}
.practice-lead-email,.profile-info>a[href^="mailto:"]{display:block;width:fit-content;max-width:100%}
a[href^="mailto:"]:hover,a[href^="mailto:"]:focus-visible{color:var(--red-text);transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){a[href^="mailto:"]{transition:none}}

/* Align visible capital-letter tops with neighbouring photographs.
   DM Sans: ascent 0.992em, descent 0.310em, cap height 0.700em.
   Native trimming is preferred; the fallback compensates for the same metrics. */
.practice-lead .practice-lead-info>.image-aligned-text:first-child,
.people-portraits .person-row>.image-aligned-text,
.careers-layout .prose>.image-aligned-text:first-child,
.contact-information>.image-aligned-text:first-child,
.market-intro>div>.image-aligned-text:first-child,
.home-page .editorial-team>div>.image-aligned-text:first-child,
.profile-layout .profile-copy>.image-aligned-text:first-child{margin-block-start:calc(.359em - .5lh)}
@supports(text-box-trim:trim-start){
.practice-lead .practice-lead-info>.image-aligned-text:first-child,
.people-portraits .person-row>.image-aligned-text,
.careers-layout .prose>.image-aligned-text:first-child,
.contact-information>.image-aligned-text:first-child,
.market-intro>div>.image-aligned-text:first-child,
.home-page .editorial-team>div>.image-aligned-text:first-child,
.profile-layout .profile-copy>.image-aligned-text:first-child{margin-block-start:0;text-box-trim:trim-start;text-box-edge:cap alphabetic}
}
/* Portrait captions and details follow the portrait's left edge. */
.profile-info{border-top:0;padding-top:0;max-width:340px;text-align:left}
.profile-info>.profile-portrait{margin-inline:0}
.profile-info>.section-label,.profile-info>h2,.profile-info>ul,.profile-info>a{margin-inline-start:0;padding-inline-start:0}
.careers-layout .prose,.contact-information,.market-intro>.prose,.home-page .editorial-team>div:last-child{text-align:left}
.people-portraits .person-row,.practice-lead,.editorial-leads>.practice-lead{align-items:start}
/* Text paired with portraits uses the same measured sans-serif metrics. */
.people-page .person-row h3{font-family:var(--sans);font-weight:500;transform-origin:left top}
.contact-information>h2{font-family:var(--sans)}

/* Interactive brand frames: clockwise resting position, original logo on interaction. */
.brand-frame-square{fill:#696969;opacity:0;transition:opacity var(--polish-duration) var(--polish-ease)}


@media(prefers-reduced-motion:reduce){.brand-frame-square{transition:none}}

/* Practice and sector contacts navigate through their names. */
.practice-lead .practice-lead-info h2>a{display:inline-block;max-width:100%;transform-origin:left top;text-decoration:none;transition:color var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}
.practice-lead .practice-lead-info h2>a:hover,.practice-lead .practice-lead-info h2>a:focus-visible{color:var(--red-text);transform:scale(1.06);text-decoration:none}
.practice-lead .practice-lead-info>.practice-lead-email:last-child{margin-bottom:0}
@media(prefers-reduced-motion:reduce){.practice-lead .practice-lead-info h2>a{transition:none}}

/* Keep the current navigation section visible without changing link dimensions. */
#primary-nav a[aria-current]{box-shadow:inset 0 -1px 0 var(--red)}
#primary-nav a[aria-current]::after{content:none}

/* Pale resting frames activate with their linked title. */
.home-page .practice-row .home-logo-frame,.market-services h3 a .service-logo-frame,.market-questions summary .faq-logo-frame{color:#bdbdbd;transform:rotate(90deg) scale(1);transition-property:color,transform}
.home-page .practice-row h3,.home-page .practice-row:hover h3,.home-page .practice-row:focus-visible h3,
.market-services h3 a .service-link-title,.market-services h3 a:hover .service-link-title,.market-services h3 a:focus-visible .service-link-title,
.market-questions summary .faq-title,.market-questions summary:hover .faq-title,.market-questions summary:focus-visible .faq-title{color:var(--black)}
.home-page .practice-row .brand-frame-square,.market-services h3 a .brand-frame-square,.market-questions summary .brand-frame-square{opacity:0}
.home-page .practice-row:hover .home-logo-frame,.home-page .practice-row:focus-visible .home-logo-frame,
.market-services h3 a:hover .service-logo-frame,.market-services h3 a:focus-visible .service-logo-frame,
.market-questions summary:hover .faq-logo-frame,.market-questions summary:focus-visible .faq-logo-frame,
.market-questions details[open]:not([data-expanded="false"]) summary .faq-logo-frame{color:var(--red);transform:rotate(0deg) scale(1.15)}
.home-page .practice-row:hover .brand-frame-square,.home-page .practice-row:focus-visible .brand-frame-square,
.market-services h3 a:hover .brand-frame-square,.market-services h3 a:focus-visible .brand-frame-square,
.market-questions summary:hover .brand-frame-square,.market-questions summary:focus-visible .brand-frame-square,
.market-questions details[open]:not([data-expanded="false"]) summary .brand-frame-square{opacity:1}

/* Text navigation and contact calls to action share the brand-frame interaction. */
a.brand-cta,a.brand-cta:hover,a.brand-cta:focus-visible{display:inline-flex;align-items:center;gap:16px;border:0;text-decoration:none;color:var(--black);transform:none}
.brand-cta .brand-cta-title{display:inline-block;min-width:0;font:inherit;line-height:inherit;color:var(--black);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease)}
.brand-cta .cta-logo-frame{display:block;flex:0 0 20px;color:#bdbdbd;transform:rotate(90deg);transform-origin:center;transition:color var(--polish-duration) var(--polish-ease),transform var(--polish-duration) var(--polish-ease)}
.brand-cta:hover .brand-cta-title,.brand-cta:focus-visible .brand-cta-title{transform:scale(1.06);color:var(--black);text-decoration:none}
.brand-cta:hover .cta-logo-frame,.brand-cta:focus-visible .cta-logo-frame{color:var(--red);transform:rotate(0deg) scale(1.15)}
.brand-cta:hover .brand-frame-square,.brand-cta:focus-visible .brand-frame-square{opacity:1}
@media(prefers-reduced-motion:reduce){.brand-cta .brand-cta-title,.brand-cta .cta-logo-frame{transition:none}}

/* Restore clear current-page marking in practice/sector side navigation. */
.detail-sidebar{border-top-color:#222}
.detail-sidebar nav a{border-bottom:1px solid #eee;padding-block:9px}
.detail-sidebar nav a[aria-current],.detail-sidebar nav a[aria-current]:hover,.detail-sidebar nav a[aria-current]:focus-visible{color:#111;font-weight:600;border-bottom-color:var(--red)}

/* Full-width current-item rule, independent of text and hover transforms. */
.detail-sidebar nav a{display:block;position:relative;width:100%;box-sizing:border-box}
.detail-sidebar nav a[aria-current],.detail-sidebar nav a[aria-current]:hover,.detail-sidebar nav a[aria-current]:focus-visible{color:#111;font-weight:600;border-bottom-color:transparent}
.detail-sidebar nav a[aria-current]::after{content:"";display:block;position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#ed1c24;pointer-events:none}

/* Keep linked, wrapping lead names aligned with the portrait, including Safari. */
.practice-lead .practice-lead-info{display:flow-root;align-self:start;min-width:0}
.practice-lead .practice-lead-info>h2.image-aligned-text:first-child{font-family:var(--sans);line-height:1.3;margin-block-start:-.291em;margin-block-end:10px;text-box-trim:none}
.practice-lead .practice-lead-info>h2.image-aligned-text>a{display:block;width:fit-content;max-width:100%;line-height:inherit}

/* Contact links and header navigation keep their colour and reveal a red rule. */
a[href^="mailto:"],a[href^="tel:"]{display:inline-block;position:relative;max-width:100%;transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease)}
.profile-info>a[href^="mailto:"],.profile-info>a[href^="tel:"],.practice-lead-email{display:block;width:fit-content;max-width:100%}
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a){position:relative;text-decoration:none;border-bottom:0;box-shadow:none}
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a):hover,
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a):focus-visible{color:inherit;text-decoration:none;transform:scale(1.06)}
#main .profile-info>:is(a[href^="mailto:"],a[href^="tel:"]):hover,
#main .profile-info>:is(a[href^="mailto:"],a[href^="tel:"]):focus-visible{color:#333}
:is(#primary-nav,.header) .language a[aria-current]:hover,:is(#primary-nav,.header) .language a[aria-current]:focus-visible{color:#111}
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a)::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease);pointer-events:none}
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a):hover::after,
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a):focus-visible::after,
#primary-nav a[aria-current]::after{content:"";width:100%;transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a),
:is(a[href^="mailto:"],a[href^="tel:"],a.address-link,a.map-link,a.quiet-link,#primary-nav a,.header .language a)::after{transition:none}
}

#primary-nav a[aria-current]{box-shadow:none}
.utility>a[href^="tel:"],.utility>a[href^="mailto:"]{display:none}

.address-link,.map-link{transition:transform var(--polish-duration) var(--polish-ease)}
.address-link:active{color:inherit}
@media(prefers-reduced-motion:reduce){.address-link,.map-link{transition:none}}

/* Team names use the same restrained interaction as contact links. */
#main a.person-row:hover,#main a.person-row:focus-visible{color:inherit}
#main .person-row h3,#main .practice-lead .practice-lead-info h2>a{position:relative;width:fit-content;text-decoration:none;transform-origin:left top;transition:transform var(--polish-duration) var(--polish-ease)}
#main .person-row:hover h3,#main .person-row:focus-visible h3,
#main .practice-lead .practice-lead-info h2>a:hover,#main .practice-lead .practice-lead-info h2>a:focus-visible{color:inherit;transform:scale(1.06);text-decoration:none}
#main .person-row h3::after,#main .practice-lead .practice-lead-info h2>a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease);pointer-events:none}
#main .person-row:hover h3::after,#main .person-row:focus-visible h3::after,
#main .practice-lead .practice-lead-info h2>a:hover::after,#main .practice-lead .practice-lead-info h2>a:focus-visible::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){
#main .person-row h3,#main .practice-lead .practice-lead-info h2>a,
#main .person-row h3::after,#main .practice-lead .practice-lead-info h2>a::after{transition:none}
}

/* Sidebar links reveal the same red rule while their labels keep their colour. */
#main .detail-sidebar nav a:hover,#main .detail-sidebar nav a:focus-visible{color:#666;transform:none}
#main .detail-sidebar nav a[aria-current],#main .detail-sidebar nav a[aria-current]:hover,#main .detail-sidebar nav a[aria-current]:focus-visible{color:#111;font-weight:600;border-bottom-color:transparent}
#main .detail-sidebar nav a>span{transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease)}
#main .detail-sidebar nav a:hover>span,#main .detail-sidebar nav a:focus-visible>span{transform:scale(1.06)}
#main .detail-sidebar nav a::after{content:"";display:block;position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease);pointer-events:none}
#main .detail-sidebar nav a:hover::after,#main .detail-sidebar nav a:focus-visible::after,#main .detail-sidebar nav a[aria-current]::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){#main .detail-sidebar nav a>span,#main .detail-sidebar nav a::after{transition:none}}


/* Homepage practice and sector rows animate their lower separator. */
.home-page :is(#expertise,#sectors) .practice-row{position:relative}
.home-page :is(#expertise,#sectors) .practice-row::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease);pointer-events:none;z-index:1}
.home-page :is(#expertise,#sectors) .practice-row:hover::after,.home-page :is(#expertise,#sectors) .practice-row:focus-visible::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.home-page :is(#expertise,#sectors) .practice-row::after{transition:none}}

/* DBIC topic separators mirror the homepage practice and sector rows. */
.market-page .market-services>article{position:relative}
.market-page .market-services>article::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform var(--polish-duration) var(--polish-ease);pointer-events:none;z-index:1}
.market-page .market-services>article:has(h3 a:hover)::after,.market-page .market-services>article:has(h3 a:focus-visible)::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.market-page .market-services>article::after{transition:none}}

/* Give the square archival photograph a little more space around it. */
.market-page .market-intro img.dbic-city-photo{width:88%;justify-self:start}
@media(max-width:700px){.market-page .market-intro img.dbic-city-photo{width:100%}}

/* The DBIC photo follows the same column start as the introduction above it. */
@media(min-width:701px){.market-page .market-intro{grid-template-columns:1.3fr 1fr;column-gap:var(--intro-gap)}}

/* The low pumping station supports a shallower Public Utilities photograph. */
.sector-photo--utilities .sector-photo-frame{aspect-ratio:5/2}
.sector-photo--utilities img{object-position:center center}
@media(max-width:520px){.sector-photo--utilities .sector-photo-frame{aspect-ratio:2/1}}

/* Single lead: shared heading, then portrait and aligned contact details. */
.practice-lead--single{row-gap:20px}
.practice-lead--single>.practice-lead-label{grid-column:1/-1;margin:0;position:relative;top:10px}
.practice-lead--single>.practice-lead-photo{grid-column:1;grid-row:2}
.practice-lead--single>.practice-lead-info{grid-column:2;grid-row:2}
.practice-lead--single .practice-lead-info>h2.image-aligned-text:first-child{margin-block-end:12px}
@media(max-width:520px){.practice-lead--single{row-gap:16px}}
