.research{color:var(--ink);max-width:1160px;margin:auto}.research [hidden]{display:none!important}.research-nav{display:flex;flex-wrap:wrap;gap:25px;padding:0 0 17px;border-bottom:1px solid var(--line);margin-bottom:35px}.research-nav a{font-size:14px;text-decoration:none;color:var(--muted);padding:8px 0}.research-nav a[aria-current]{color:var(--teal);box-shadow:0 2px var(--teal)}.research-heading{max-width:830px;margin:25px 0 40px}.research-heading h1{font-size:clamp(32px,4vw,50px);letter-spacing:-1.7px;line-height:1.15;margin:14px 0 20px}.research-heading>p{font-size:21px;line-height:1.65;color:var(--muted)}.research .research-kicker{font:700 11px Manrope,sans-serif;letter-spacing:1.2px;color:var(--teal);margin-bottom:10px}.research .research-meta{font-size:14px;color:var(--muted);line-height:1.5}.research-tools{display:flex;flex-wrap:wrap;align-items:end;gap:20px;padding:22px 0;border-block:1px solid var(--line);margin:25px 0 0}.research-tools label{flex:1;min-width:160px;max-width:400px;font-size:14px;color:var(--muted);font-weight:600}.research-tools input,.research-tools select,.firm-compare-controls select{display:block;width:100%;margin-top:8px;font-size:17px}.research-tools>p{font-size:14px;margin:0 0 10px auto;color:var(--muted)}.firm-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:45px;padding:30px 0;border-bottom:1px solid var(--line)}.firm-row h2{font-size:26px;margin:8px 0 12px}.firm-row h2 a{text-decoration:none;color:var(--ink)}.firm-row h2 a:hover{text-decoration:underline}.firm-row p{font-size:18px;line-height:1.65;margin:0 0 14px;max-width:68ch}.firm-focus{font-size:14px;color:var(--muted)}.firm-row-roles{border-left:1px solid var(--line);padding-left:28px;display:flex;flex-direction:column;align-items:start;gap:9px}.research-small-label{font-size:13px;color:var(--muted);display:block;margin-bottom:9px}.firm-row-roles strong{font:600 14px Manrope,sans-serif;line-height:1.55}.firm-read{margin-top:auto;padding-top:15px;font-size:16px}.research-note{font-size:16px!important;color:var(--muted);line-height:1.7;padding:18px 22px;border-left:2px solid #ba8e75;background:#f4f5f6;margin:28px 0}.firm-profile-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:55px;align-items:start}.firm-profile-layout>aside{position:sticky;top:24px}.firm-profile-layout aside nav{display:flex;flex-direction:column;gap:15px;border-top:1px solid var(--line);padding:22px 0 28px}.firm-profile-layout aside nav a{font-size:14px;text-decoration:none;color:var(--muted)}.firm-profile-layout aside nav a:hover{color:var(--teal)}.firm-profile-layout aside .btn{font-size:12px}.firm-profile-body section{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--line);scroll-margin-top:24px}.firm-profile-body h2{font-size:28px;margin-top:0;margin-bottom:20px}.firm-profile-body h3{font-size:19px;margin-top:24px}.firm-profile-body p,.firm-profile-body li,.firm-profile-body dd{font-size:19px;line-height:1.75}.firm-profile-body li{margin-bottom:12px}.firm-profile-body ul{padding-left:24px}.firm-role-list{margin:25px 0}.firm-role-list>div{padding:20px 0;border-top:1px solid var(--line)}.firm-role-list dt{font:700 19px Manrope,sans-serif}.firm-role-list dt span{font:400 14px 'Source Sans 3',sans-serif;display:block;color:var(--muted);margin-bottom:8px}.firm-role-list dd{margin:12px 0 0}.research .research-inline-source{font-size:13px;line-height:1.65;color:var(--muted);margin:10px 0 0}.research-inline-source a{color:var(--muted)}.firm-sources li{padding-bottom:12px}.firm-sources span{display:block;font-size:14px;color:var(--muted)}.salary-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:26px 0;border-top:1px solid var(--line)}.salary-explainer h2{font-size:20px;margin:0 0 10px}.salary-explainer p{font-size:17px;line-height:1.65;color:var(--muted);margin:0}.salary-record{padding:28px 30px;background:#fff;border:1px solid var(--line);margin:22px 0}.salary-record-top{display:flex;justify-content:space-between;gap:25px}.salary-record-top h3{font-size:21px;margin:0 0 8px;max-width:33ch}.salary-record-top p{font-size:15px!important;color:var(--muted);margin:0}.salary-amount{text-align:right;flex-shrink:0}.salary-amount strong{font:700 25px Manrope,sans-serif;letter-spacing:-.6px;white-space:nowrap}.salary-amount span{display:block;font-size:13px;color:var(--muted);margin-top:8px}.salary-record>p{font-size:17px;line-height:1.65}.salary-record .salary-cohort{font-size:15px;color:var(--muted);margin:20px 0 12px}.salary-source{border-top:1px solid var(--line);padding-top:16px;font-size:14px;line-height:1.65}.salary-source>span{display:block;color:var(--muted);margin:6px 0}.salary-source .correction-link{font-size:13px}.firm-profile-body .salary-record-top{display:block}.firm-profile-body .salary-amount{text-align:left;margin-top:20px}.research-editorial{max-width:780px;padding:30px 0}.research-editorial h2{font-size:26px;margin:35px 0 14px}.research-editorial p{font-size:19px;line-height:1.8}.firm-compare-controls,.firm-comparison{display:grid;grid-template-columns:1fr 1fr;gap:30px}.firm-compare-controls label{font-size:14px;color:var(--muted)}.firm-comparison{margin-top:25px}.firm-comparison>article{background:#fff;border-top:3px solid #ba8e75;padding:28px;min-width:0}.firm-comparison p,.firm-comparison dd{font-size:18px;line-height:1.7}.firm-comparison h2{font-size:25px}.firm-comparison h2 a{color:var(--ink);text-decoration:none}.firm-comparison>article>a{font-size:15px}.research-public{background:#ffffff}.research-public-header{background:#fff;border-bottom:1px solid var(--line)}.research-public-header>div{max-width:1240px;margin:auto;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.research-public-header .brand{font-size:22px;color:var(--ink);text-decoration:none;white-space:nowrap}.research-public-header nav{display:flex;gap:24px;align-items:center}.research-public-header nav a{font-size:14px;text-decoration:none;color:var(--ink)}.research-public-main{max-width:1240px;margin:auto;padding:36px 30px 60px}.research-public-footer{max-width:1180px;margin:auto;border-top:1px solid var(--line);padding:25px 0 40px;display:flex;flex-wrap:wrap;gap:20px;font-size:14px;color:var(--muted)}.home-research-links{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:32px}.home-research-links a{display:block;text-decoration:none;color:var(--ink);border-top:2px solid #ba8e75;padding-top:22px}.home-research-links h3{font-size:22px}.home-research-links p{font-size:18px;color:var(--muted)}.home-research-links span{color:var(--teal);font-size:16px}
@media(max-width:1000px){.salary-record-top{display:block}.salary-amount{text-align:left;margin-top:20px}.firm-profile-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.firm-row{gap:25px}.firm-row-roles{padding-left:20px}}
@media(max-width:700px){.research-heading h1{letter-spacing:-1px}.research-heading>p{font-size:19px}.firm-row{grid-template-columns:1fr;gap:18px}.firm-row-roles{border:0;padding:0;display:block}.firm-row-roles strong{display:inline-block;margin-right:15px}.firm-read{display:block}.salary-explainer{grid-template-columns:1fr;gap:22px}.firm-profile-layout{display:block}.firm-profile-layout>aside{position:static;margin-bottom:35px}.firm-profile-layout aside nav{flex-direction:row;flex-wrap:wrap;gap:15px}.firm-profile-layout aside nav .research-small-label{width:100%;margin:0}.firm-profile-body h2{font-size:25px}.salary-record{padding:23px}.salary-amount strong{font-size:23px}.firm-comparison{gap:16px}.firm-comparison>article{padding:20px}.research-public-header>div{padding:18px}.research-public-header nav{gap:15px}.research-public-header nav a{font-size:12px}.research-public-header nav a:first-child{display:none}.research-public-main{padding:28px 20px 45px}.research-public-footer{margin:0 20px}.home-research-links{grid-template-columns:1fr}.research-nav{gap:22px}.research-nav a{font-size:13px}.research-tools>p{width:100%;margin:0}.firm-compare-controls{gap:16px}}
@media(max-width:480px){.firm-comparison{grid-template-columns:1fr}.research-public-header>div{flex-wrap:wrap;gap:10px}.research-public-header nav{width:100%;justify-content:space-between}.research-public-header nav .btn{padding:9px 12px}.research-public-header .brand{font-size:20px}.firm-compare-controls select{font-size:15px}.salary-amount strong{font-size:21px}.salary-record{padding:20px}.research-tools label{min-width:130px}.research-nav{gap:18px}}
@media print{.research-public-header,.research-public-footer,.firm-profile-layout>aside,.research-nav,.research-tools,.correction-link,.button-row{display:none}.firm-profile-layout{display:block}.research-public-main{padding:0}.salary-record{break-inside:avoid}body{background:#fff}}
.research-tools input,.research-tools select,.firm-compare-controls select{border:1px solid #d9dde2;border-radius:5px;background:#fff;color:var(--ink);min-height:46px;padding:10px 12px;font-family:inherit;line-height:1.4}.research-public-header nav a.btn-primary{color:#fff}.research-nav a{border-radius:0;background:none}.research-public-header .brand{letter-spacing:-.7px}

.research-public { background: var(--paper); }
.research-public-header { background: var(--paper); }
.research .firm-logo{display:block;object-fit:contain;object-position:left center;width:160px;height:56px;max-width:100%;padding:5px 0;margin:0 0 16px;background:#fff}
.research p.research-meta,.research span.research-meta,.research p.research-inline-source,.research .research-heading .firm-affiliation-note,.research span.firm-focus,.research .firm-row .research-small-label,.research .firm-role-list dt span,.research .firm-sources span{font-size:16px;line-height:1.6}
.research .salary-record .salary-source,.research .salary-record .salary-cohort,.research .salary-source .correction-link,.research .salary-amount span,.research .research-tools>p{font-size:16px;line-height:1.6}
.research .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.research .firm-selection{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:18px 0 22px}
.research .firm-selection p{flex:1 1 260px;margin:0;font-size:17px;line-height:1.6}
.research .firm-compare-choice{display:flex;align-items:center;gap:10px;font-size:16px;min-height:44px;margin-top:12px;cursor:pointer}
.research .firm-compare-choice input{width:20px;height:20px;min-height:0;margin:0;accent-color:var(--suite-blue,var(--teal))}
.research .firm-compare-choice:has(input:disabled){color:var(--muted)}
.research .firm-comparison h3{font-size:20px;margin:28px 0 12px}
.research .firm-comparison li{font-size:17px;line-height:1.7;margin:10px 0}
.research .offer-worksheet{margin:38px 0;padding:30px;border:1px solid var(--suite-line,var(--line));border-top:3px solid var(--suite-blue,var(--teal));border-radius:8px;background:#fff;scroll-margin-top:110px}
.research .offer-worksheet h2{font-size:28px;margin:0 0 16px}
.research .offer-worksheet p{font-size:18px;line-height:1.7;max-width:80ch}
.research .offer-period{display:block;font-size:17px;font-weight:600;max-width:360px;margin:24px 0}
.research .offer-period select,.research .offer-inputs input{display:block;width:100%;border:1px solid #bacbd9;border-radius:6px;background:#fff;color:var(--ink);font:inherit;min-height:46px;padding:10px 12px;margin-top:8px}
.research .offer-inputs{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:26px 0}
.research .offer-inputs fieldset{min-width:0;border:1px solid var(--suite-line,var(--line));border-radius:6px;padding:22px}
.research .offer-inputs legend{font-size:21px;font-weight:650;padding:0 8px}
.research .offer-inputs label{display:block;font-size:17px;line-height:1.6;margin-bottom:18px}
.research .offer-inputs label:last-child{margin-bottom:0}
.research .offer-error{display:block;color:#9b2424;font-size:16px;line-height:1.5;margin-top:6px}
.research .offer-error:empty{display:none}
.research .offer-inputs input[aria-invalid=true]{border-color:#9b2424}
.research #offer-status{font-size:16px;line-height:1.6;align-self:center}
.research .offer-results{border-collapse:collapse;width:100%;table-layout:fixed;margin:28px 0;color:var(--ink)}
.research .offer-results caption{text-align:left;font-size:19px;font-weight:600;margin-bottom:16px}
.research .offer-results th,.research .offer-results td{padding:15px 12px;border-bottom:1px solid var(--suite-line,var(--line));font-size:17px;line-height:1.5;overflow-wrap:anywhere;vertical-align:top}
.research .offer-results th{text-align:left;font-weight:600}
.research .offer-results th:first-child{width:46%}
.research .offer-results td{font-variant-numeric:tabular-nums}
.research .offer-results .offer-total{background:var(--suite-blue-soft,var(--accent-soft))}
.research .offer-footnote{font-size:16px!important;color:var(--muted)}
.research .salary-status{font-size:16px;line-height:1.6;font-weight:600;margin-bottom:18px;color:var(--suite-blue,var(--teal))}
.research .salary-reported{border-left:4px solid var(--suite-orange,#ed4d14)}
.research .salary-reported .salary-status{color:#8a3d17}
.research .salary-update{padding:28px;margin:28px 0;background:#fff;border:1px solid var(--line);border-top:3px solid var(--suite-blue,var(--teal));border-radius:8px}
.research .salary-update h2{font-size:28px;margin-top:0}
.research .salary-update p{font-size:18px;line-height:1.7}
.research .salary-update-table{width:100%;border-collapse:collapse;table-layout:fixed}
.research .salary-update-table th,.research .salary-update-table td{font-size:17px;line-height:1.6;text-align:left;padding:16px 12px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.research .salary-update-table th:first-child{width:39%}
.research .salary-history{margin:24px 0;border-block:1px solid var(--line);padding:18px 0}
.research .salary-history summary{font-size:18px;line-height:1.6;cursor:pointer}
@media(max-width:700px){.research .salary-update{padding:22px}.research .salary-update-table th,.research .salary-update-table td{padding:13px 6px;font-size:16px}.research .salary-update-table th:first-child{width:36%}}
@media(max-width:700px){
 .research .salary-update-table,.research .salary-update-table tbody{display:block}
 .research .salary-update-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .research .salary-update-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;padding:18px 0;border-bottom:1px solid var(--line)}
 .research .salary-update-table th,.research .salary-update-table td{border:0;padding:0;overflow-wrap:normal}
 .research .salary-update-table th:first-child{width:auto}
 .research .salary-update-table td:nth-child(2){white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right}
 .research .salary-update-table td:last-child{grid-column:1/-1;color:var(--muted)}
}
@media(max-width:700px){.research .offer-worksheet{padding:22px}.research .offer-inputs{grid-template-columns:1fr;gap:20px}.research .offer-inputs fieldset{padding:18px}.research .offer-results th,.research .offer-results td{padding:13px 7px;font-size:16px}.research .offer-results th:first-child{width:42%}}
@media print{.research .firm-selection,.research .firm-compare-choice,.research .offer-worksheet form,.research .offer-period{display:none}.research .offer-results{break-inside:avoid}}
.research-heading h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.035em; }
.firm-profile-body h2, .research-editorial h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: 32px; letter-spacing: -.025em; }
.research-note { background: var(--accent-soft); border-left-color: var(--accent); }
.firm-comparison > article, .home-research-links a { border-top-color: #ba8e75; }
.research-public-header nav a.btn-primary { color: #fff; }
.research-public-header nav a.btn-primary:hover { color: #fff; }
.home-research-links h3 { font-family: Manrope, 'Segoe UI', sans-serif; font-size: 21px; }
@media(max-width:700px) { .firm-profile-body h2, .research-editorial h2 { font-size: 28px; } }
