/* Preserve the established Soria colors and typefaces. */
.hero-scene>img{animation:scene-light 2.4s ease both,legal-drift 28s ease-in-out infinite alternate}
@keyframes scene-light{from{filter:brightness(.65)}to{filter:brightness(1)}}@keyframes legal-drift{from{scale:1;translate:0 0}to{scale:1.035;translate:-.4% .3%}}
.profile{padding:110px 0 125px}.profile-heading{padding-bottom:66px}.section-marker{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:24px;gap:24px;font-size:12px;letter-spacing:.13em;color:#53758a}.section-marker span:last-child{letter-spacing:0;font-size:14px}.profile-heading .section-title{font-size:clamp(56px,6.7vw,104px);max-width:1000px;margin:40px 0 0;line-height:1.03}.profile-grid{grid-template-columns:.68fr 1.32fr;gap:15%;align-items:center}.portrait{margin-top:0;max-width:350px}.portrait img{display:block;width:100%;border:0}.portrait-label{padding:22px 0;display:block;font-size:15px;font-family:'Cormorant Garamond',Georgia}.portrait-label span{display:block;font:500 10px/1.6 Manrope,Arial;letter-spacing:.12em;text-transform:uppercase;margin-top:7px}.profile-copy .intro{font-size:25px;line-height:1.6;margin:0 0 30px;font-weight:400}.profile-copy p{max-width:680px;font-size:16px;line-height:1.95;margin-bottom:23px}.affiliations{padding-top:26px;margin-top:42px;gap:35px;font-size:13px;font-weight:500;letter-spacing:.06em}
.expertise{position:relative;overflow:hidden;padding:105px 0 80px}.expertise:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy),#063759e8),url('assets/legal-hero.jpg') 80% 50%/cover;opacity:.38;pointer-events:none}.expertise>.wrap{position:relative;display:block}.expertise .eyebrow{margin-bottom:26px}.expertise .section-title{font-size:clamp(58px,5.7vw,90px);max-width:850px;margin-bottom:65px}.practice-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0}.practice{display:flex;flex-direction:column;border:0;border-top:1px solid #ffffff40;padding:30px 36px 12px;gap:0;position:relative;min-height:290px}.practice:first-child{padding-left:0}.practice:last-child{padding-right:0;border-bottom:0}.practice+.practice{border-left:1px solid #ffffff25}.practice:before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.22,1,.36,1)}.practice:hover{padding-left:36px}.practice:first-child:hover{padding-left:0}.practice:hover:before{transform:scaleX(1)}.practice small{align-self:flex-start;font-size:13px;letter-spacing:.13em;color:#86c6d6;margin-bottom:25px}.practice h3{font-size:35px;margin:0 0 20px;max-width:310px}.practice p{font-size:15px;line-height:1.85;max-width:350px}.experience-band{padding:55px 0 70px;border-top:0;position:relative}.experience-band .wrap{border-top:1px solid #ffffff30;padding-top:45px;gap:55px}.big-number{font-size:150px;line-height:.8}.experience-band h2{font-size:12px;letter-spacing:.1em;font-weight:500}.experience-band .fine{font-size:14px;max-width:250px;line-height:1.7}
.trajectory{padding:120px 0;background:var(--paper)}.trajectory>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:start}.trajectory .section-head{display:block;position:sticky;top:130px;margin:0}.trajectory .section-head .section-title{font-size:clamp(52px,4.7vw,73px);margin:25px 0}.trajectory .section-head p{padding:0;margin-top:28px;max-width:300px;font-size:15px;line-height:1.8}.trajectory-layout>div:last-child{display:block}.trajectory details,.trajectory details:last-child{border:0;border-top:1px solid #bcd1dc;background:transparent;border-radius:0}.trajectory details:last-child{border-bottom:1px solid #bcd1dc}.trajectory details[open]{background:#ffffff70}.trajectory summary{min-height:105px;padding:27px 22px 27px 12px;font-size:20px;gap:25px;transition:color .4s}.trajectory summary .num{font-size:12px;letter-spacing:.04em;width:22px}.trajectory summary:hover{color:var(--blue)}.trajectory .detail-body{padding:0 30px 30px 58px;font-size:15px;line-height:1.9}.trajectory .detail-body ul{margin-top:0}.trajectory .detail-body li{padding:8px 0}.trajectory summary:after{font-size:25px}
.publications{padding:120px 0 130px}.publications>.wrap{grid-template-columns:.8fr 1.2fr;gap:9%}.publications .section-title{font-size:clamp(54px,4.9vw,78px)}.publications .section-head p{font-size:15px;line-height:1.8;margin:25px 0 40px}.book-photo{border:0;display:block;padding:0;margin:0;max-width:260px}.book-photo img{width:190px;max-height:290px;height:auto;margin-bottom:24px;transition:transform .65s}.book-photo:hover img{transform:translateY(-5px)}.book-photo p{font-size:13px;line-height:1.8;max-width:230px;margin:0 0 22px}.book-photo .text-link{display:inline-block;font-size:13px;margin:0;padding-bottom:6px}.library-label{display:flex;justify-content:space-between;gap:18px;font-size:11px;letter-spacing:.12em;color:#4d748b;padding:0 0 27px;border-bottom:1px solid var(--line)}.article-tabs{margin:25px 0 27px;gap:5px}.article-tabs button{border:0;border-bottom:1px solid #d2e1e8;border-radius:0;padding:10px 12px;font-size:12px;background:transparent;color:var(--navy)}.article-tabs button[aria-pressed=true]{background:transparent;color:var(--blue);border-bottom:2px solid var(--blue)}.article-item{grid-template-columns:28px 1fr;gap:21px;padding:28px 0;border-color:#d5e2e9;position:relative}.article-item small{font-size:12px;color:#6890a6;letter-spacing:.1em;padding-top:5px}.article-item p{font-size:15px;line-height:1.9;color:#426176;margin:0}.article-item a{display:inline-block;font-size:12px;margin-top:13px;letter-spacing:.07em;text-transform:uppercase;color:var(--blue)}.article-item:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .65s}.article-item:hover:before{transform:scaleX(1)}.article-item:hover{padding-left:0}
.contact{padding:100px 0;background:var(--paper)}.contact>.contact-heading{display:block;border-top:1px solid #bcd0dc;padding-top:25px;margin-bottom:50px}.contact-heading .section-title{font-size:clamp(80px,10vw,155px);margin:23px 0 0;line-height:1}.contact>.wrap:not(.contact-heading){grid-template-columns:.8fr 1.2fr;gap:9%}.contact-links{margin-top:12px}.contact-links a{font-size:23px;line-height:1.7;margin-bottom:26px}.contact-links small{font-size:11px;letter-spacing:.12em}.contact form{padding-top:0}.contact label{font-size:13px}.contact input,.contact textarea{margin-bottom:30px}.contact .button{width:auto;min-width:220px;padding:17px 33px}.contact .form-note{max-width:420px;line-height:1.8;font-size:12px}.contact .form-status{font-size:13px}footer{padding:35px 0 40px}footer .wrap{align-items:center}.footer-logo{font-size:30px}
@media(max-width:1000px){.profile-grid{gap:9%}.profile-copy .intro{font-size:22px}.practice{padding-left:24px;padding-right:24px}.practice:hover{padding-left:24px}.practice h3{font-size:31px}.practice p{font-size:14px}.trajectory>.wrap,.publications>.wrap{gap:6%}.trajectory summary{font-size:18px;gap:18px}.trajectory .detail-body{padding-left:45px;padding-right:15px}.contact-links a{font-size:20px}}@media(max-width:760px){.profile{padding:70px 0 80px}.profile-heading{padding-bottom:40px}.section-marker{font-size:10px;letter-spacing:.09em}.section-marker span:last-child{font-size:12px}.profile-heading .section-title{font-size:clamp(48px,9vw,68px);margin-top:28px}.profile-grid{display:flex;flex-direction:column-reverse;gap:32px}.profile-copy .intro{font-size:21px;line-height:1.65}.profile-copy p{font-size:15px;line-height:1.9}.portrait{max-width:310px}.affiliations{margin-top:30px;gap:24px;font-size:12px}.expertise{padding:70px 0 50px}.expertise .section-title{font-size:58px;margin-bottom:40px}.practice-list{display:block}.practice,.practice:first-child,.practice:last-child{padding:25px 0;min-height:0;border-left:0}.practice small{margin-bottom:15px;font-size:12px}.practice h3{font-size:33px;max-width:none;margin-bottom:15px}.practice p{font-size:15px;max-width:none}.practice:hover,.practice:first-child:hover{padding-left:0}.experience-band{padding:25px 0 45px}.experience-band .wrap{padding-top:32px;gap:25px}.big-number{font-size:100px}.experience-band .fine{max-width:none;font-size:13px}.trajectory{padding:75px 0}.trajectory>.wrap{display:block}.trajectory .section-head{position:static;margin-bottom:35px}.trajectory .section-head .section-title{font-size:54px}.trajectory .section-head p{max-width:none}.trajectory summary{min-height:85px;padding:23px 12px;font-size:18px}.trajectory .detail-body{font-size:15px;padding:0 18px 24px 49px}.publications{padding:75px 0}.publications>.wrap{display:block}.publications .section-head{position:static;margin-bottom:42px}.publications .section-title{font-size:57px}.publications .section-head p{margin-bottom:30px}.book-photo{display:grid;grid-template-columns:110px 1fr;column-gap:22px;max-width:none;align-items:center}.book-photo img{width:110px;max-height:175px;grid-column:1;grid-row:1/span 2;margin:0}.book-photo p{grid-column:2;margin:0 0 10px;max-width:none;align-self:end}.book-photo .text-link{grid-column:2;align-self:start;justify-self:start;font-size:12px}.library-label{font-size:10px;padding-bottom:22px}.article-tabs{gap:4px}.article-tabs button{font-size:11px;padding:9px}.article-item{gap:15px;padding:25px 0}.article-item p{font-size:14px}.contact{padding:70px 0}.contact>.contact-heading{padding-top:23px;margin-bottom:35px}.contact-heading .section-title{font-size:clamp(66px,13vw,95px)}.contact>.wrap:not(.contact-heading){grid-template-columns:1fr;gap:30px}.contact-links{margin-top:0}.contact-links a{font-size:20px;margin-bottom:20px}.contact .button{width:100%}footer .wrap{gap:20px}.footer-logo{font-size:26px}}@media(prefers-reduced-motion:reduce){.hero-scene>img{animation:none!important;scale:1;translate:0 0}}
