
:root{--blue:#2d4a8a;--navy:#263045;--ink:#28364f;--muted:#687386;--light:#f5f7fb;--line:#e2e7f0;--white:#fff}
body{font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff}
.inner-hero{position:relative;min-height:310px;display:flex;align-items:flex-end;padding:84px 0 58px;background:
linear-gradient(90deg,rgba(30,47,88,.93),rgba(45,74,138,.68)),
url('../images/ttm-pagetitle-bg.jpg') center/cover no-repeat;color:#fff}
.inner-hero:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:linear-gradient(90deg,var(--blue),#8099ca,transparent)}
.inner-hero .container{position:relative;z-index:1}
.inner-kicker{font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:800;opacity:.85;margin-bottom:12px}
.inner-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:48px;line-height:1.08;margin:0 0 12px;font-weight:400}
.inner-hero p{max-width:760px;font-size:17px;line-height:1.65;margin:0;color:rgba(255,255,255,.9)}
.breadcrumbs{margin-top:22px;font-size:11px;text-transform:uppercase;letter-spacing:.7px}
.breadcrumbs a{color:#fff;text-decoration:none}.breadcrumbs span{opacity:.65;margin:0 7px}
.page-section{padding:78px 0}
.page-section.alt{background:var(--light)}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;font-weight:800;color:var(--blue);margin-bottom:12px}
.display-title{font-family:Georgia,"Times New Roman",serif;font-size:38px;line-height:1.18;color:var(--navy);margin:0 0 20px;font-weight:400}
.lead{font-size:18px;line-height:1.75;color:#42506a;margin-bottom:22px}
.body-copy{font-size:15px;line-height:1.85;color:#536078}
.body-copy p{margin-bottom:18px}
.rule{height:2px;width:58px;background:var(--blue);margin:18px 0 25px}
.split-image{border-radius:3px;overflow:hidden;box-shadow:0 18px 45px rgba(20,38,75,.13);position:relative}
.split-image img{width:100%;display:block;min-height:360px;object-fit:cover}
.heritage-card{background:var(--navy);color:#fff;padding:36px;margin-top:-55px;margin-left:42px;position:relative;z-index:2;box-shadow:0 16px 35px rgba(20,38,75,.22)}
.heritage-card strong{display:block;font-family:Georgia,serif;font-size:34px;font-weight:400}.heritage-card span{font-size:12px;letter-spacing:1px;text-transform:uppercase;opacity:.75}
.grid{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);padding:28px;height:100%;transition:.22s;box-shadow:0 8px 24px rgba(20,38,75,.04)}
.card:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(20,38,75,.10);border-color:#cbd6ea}
.card .num{display:block;color:#91a5cc;font-size:12px;font-weight:800;letter-spacing:1px;margin-bottom:18px}
.card h3{font-family:Georgia,serif;font-size:21px;color:var(--navy);margin:0 0 12px;font-weight:400}
.card p{color:#687386;font-size:13.5px;line-height:1.7;margin:0}
.card a{color:var(--blue);font-size:12px;font-weight:750;text-decoration:none}
.dark-section{background:linear-gradient(120deg,#1f2d4d,#2d4a8a);color:#fff}
.dark-section .display-title,.dark-section .eyebrow{color:#fff}.dark-section .body-copy,.dark-section .lead{color:rgba(255,255,255,.82)}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.2);margin-top:34px}
.stat{padding:25px;border-right:1px solid rgba(255,255,255,.18)}.stat:last-child{border-right:0}.stat strong{display:block;font-family:Georgia,serif;font-size:29px;font-weight:400}.stat span{font-size:11px;text-transform:uppercase;letter-spacing:.9px;opacity:.7}
.quote-card{border-left:4px solid var(--blue);background:#fff;padding:32px 34px;box-shadow:0 12px 30px rgba(20,38,75,.08)}
.quote-card blockquote{font-family:Georgia,serif;font-size:23px;line-height:1.5;color:var(--navy);margin:0 0 16px}.quote-card cite{font-style:normal;color:var(--blue);font-weight:700;font-size:13px}
.tag-list{display:flex;flex-wrap:wrap;gap:9px}.tag{background:#eef3fb;color:#36518b;padding:8px 11px;font-size:12px;font-weight:650;border-radius:2px}
.practice-list{columns:2;column-gap:32px;padding:0;margin:18px 0;list-style:none}.practice-list li{break-inside:avoid;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.practice-list li:before{content:"›";color:var(--blue);font-weight:900;margin-right:9px}
.client-columns{columns:3;column-gap:35px}.client-columns ul{break-inside:avoid;list-style:none;padding:0;margin:0 0 30px}.client-columns h3{font-family:Georgia,serif;color:var(--navy);font-size:21px}.client-columns li{padding:6px 0;color:#59667b;font-size:13.5px}
.person-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.person-card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:.2s;height:100%}.person-card:hover{box-shadow:0 15px 32px rgba(20,38,75,.11);transform:translateY(-2px)}
.person-photo{height:260px;background:#e9edf4;overflow:hidden}.person-photo img{width:100%;height:100%;object-fit:cover;object-position:top}
.person-info{padding:22px}.person-info .role{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:8px}.person-info h3{font-family:Georgia,serif;font-size:22px;color:var(--navy);margin:0 0 9px}.person-info p{font-size:13px;line-height:1.6;color:#6a7485;margin:0 0 12px}.person-info a{font-size:12px;font-weight:750;color:var(--blue);text-decoration:none}
.profile-wrap{display:grid;grid-template-columns:350px 1fr;gap:55px;align-items:start}.profile-photo{position:sticky;top:95px}.profile-photo img{width:100%;max-height:450px;object-fit:cover;object-position:top;background:#eef1f6}.profile-role{font-size:12px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:1.2px}.profile-meta{margin-top:18px;border-top:1px solid var(--line)}.profile-meta div{padding:14px 0;border-bottom:1px solid var(--line)}.profile-meta strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#7a8495;margin-bottom:4px}.profile-meta span{font-size:13px;color:#41506a}
.profile-content h2{font-family:Georgia,serif;color:var(--navy);font-size:29px;margin:8px 0 17px}.profile-content p{line-height:1.82;color:#59667b;font-size:14.5px}.profile-content ul{line-height:1.75;color:#59667b}
.project{border-left:3px solid var(--blue);padding:18px 0 18px 24px;margin:0 0 15px}.project h3{font-family:Georgia,serif;font-size:20px;color:var(--navy);margin:0 0 7px}.project p{font-size:13.5px;line-height:1.65;color:#657084;margin:0}
.office-card{background:#fff;border:1px solid var(--line);padding:26px}.office-card h3{font-family:Georgia,serif;font-size:22px;color:var(--navy)}.office-card p{font-size:13.5px;line-height:1.65;color:#657084}
.contact-panel{background:var(--navy);color:#fff;padding:36px;height:100%}.contact-panel h3{font-family:Georgia,serif;font-size:28px;font-weight:400}.contact-panel a{color:#fff}.contact-form{border:1px solid var(--line);padding:34px;background:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#667085}.contact-form input,.contact-form textarea{width:100%;border:1px solid #d9e0eb;padding:12px 13px;margin:7px 0 16px;font:14px "Segoe UI",Arial}.contact-form textarea{min-height:125px}.btn-acla{display:inline-block;background:var(--blue);color:#fff!important;text-decoration:none!important;padding:12px 20px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;border:0}
.notice{padding:17px 20px;background:#f0f4fb;border-left:3px solid var(--blue);font-size:13px;line-height:1.6;color:#59667b}
@media(max-width:991px){.grid-4,.grid-3,.person-grid{grid-template-columns:repeat(2,1fr)}.profile-wrap{grid-template-columns:270px 1fr;gap:30px}.client-columns{columns:2}}
@media(max-width:767px){.inner-hero{min-height:250px;padding:55px 0 42px}.inner-hero h1{font-size:37px}.page-section{padding:56px 0}.grid-4,.grid-3,.grid-2,.person-grid,.stat-row,.profile-wrap,.form-row{grid-template-columns:1fr}.practice-list,.client-columns{columns:1}.profile-photo{position:static}.heritage-card{margin:0}.stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}}

/* === People page corporate enhancement === */
.people-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}
.people-intro-panel{background:linear-gradient(135deg,#eef3fb,#f9fbfe);border:1px solid var(--line);padding:34px}
.people-intro-panel h3{font-family:Georgia,serif;font-size:24px;color:var(--navy);margin:0 0 14px}
.people-intro-panel p{font-size:14px;line-height:1.75;color:#657084;margin:0}
.people-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dce3ef;border:1px solid #dce3ef;margin-top:25px}
.people-stat{background:#fff;padding:22px}
.people-stat strong{display:block;font-family:Georgia,serif;font-size:27px;color:var(--blue);font-weight:400}
.people-stat span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#7a8495;font-weight:700}
.people-group{margin-top:45px}
.people-group-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.people-group-head h2{font-family:Georgia,serif;color:var(--navy);font-size:29px;margin:0;font-weight:400}
.people-group-head p{margin:0;color:#7a8495;font-size:12px}
.person-grid.founder-grid{grid-template-columns:1fr}
.person-card.featured{display:grid;grid-template-columns:360px 1fr;min-height:360px}
.person-card.featured .person-photo{height:100%;min-height:360px}
.person-card.featured .person-info{padding:38px 40px;display:flex;flex-direction:column;justify-content:center}
.person-card.featured .person-info h3{font-size:31px}
.person-card.featured .person-info p{font-size:14px;line-height:1.75;max-width:760px}
.person-card.featured .role{font-size:11px}
.person-card.partner .person-photo{height:300px}
.person-card.associate .person-photo{height:235px}
.person-card .profile-link{display:inline-flex;align-items:center;gap:7px}
.person-card .profile-link:after{content:"→";transition:.2s}
.person-card:hover .profile-link:after{transform:translateX(3px)}
.person-card.placeholder-photo .person-photo{display:flex;align-items:center;justify-content:center;background:
linear-gradient(145deg,#e8edf5,#f5f7fb)}
.person-card.placeholder-photo .person-photo img{width:95px;height:95px;object-fit:contain;opacity:.55;filter:grayscale(1)}
.people-note{margin-top:24px;font-size:12px;line-height:1.65;color:#7a8495}
.people-cta{margin-top:55px;background:linear-gradient(120deg,#263045,#2d4a8a);color:#fff;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.people-cta h3{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:0 0 7px}
.people-cta p{margin:0;color:rgba(255,255,255,.78);font-size:13px}
.people-cta .btn-acla{background:#fff;color:#2d4a8a!important}
@media(max-width:991px){
  .people-intro-grid{grid-template-columns:1fr}
  .person-card.featured{grid-template-columns:280px 1fr}
}
@media(max-width:767px){
  .people-stat-grid{grid-template-columns:1fr}
  .person-card.featured{grid-template-columns:1fr}
  .person-card.featured .person-photo{min-height:300px}
  .people-cta{display:block}.people-cta .btn-acla{margin-top:18px}
}
