.tc-profile { color:#383b46; font:400 17px/1.75 'Open Sans',sans-serif; }
.tc-profile * { box-sizing:border-box; }
.tc-profile .tc-wrap { max-width:1176px; padding-inline:28px; margin-inline:auto; }
.tc-profile h1,.tc-profile h2,.tc-profile h3 { color:#172376; font-family:Montserrat,sans-serif; font-weight:600; text-transform:none; letter-spacing:-.025em; }
.tc-profile h1 { font-size:44px; line-height:1.15; margin:0; text-wrap:balance; }
.tc-profile h2 { font-size:30px; line-height:1.2; margin:0 0 24px; }
.tc-profile p { margin:0 0 18px; }
.tc-profile p:last-child { margin-bottom:0; }
.tc-profile a { color:#172376; text-underline-offset:4px; }
.tc-profile a:focus-visible { outline:3px solid #172376; outline-offset:5px; }
.tc-profile .tc-eyebrow { margin:0 0 10px; color:#50535e; font-size:13px; font-weight:600; letter-spacing:1.2px; text-transform:uppercase; }
.tc-profile .tc-hero { padding:112px 0 40px; background:#172376; }
.tc-profile .tc-hero-card { display:grid; grid-template-columns:minmax(0,1.9fr) minmax(0,1fr); gap:44px; align-items:center; padding:32px; border-radius:8px; background:#fff; }
.tc-profile .tc-intro { display:flex; flex-direction:column; gap:14px; min-width:0; }
.tc-profile .tc-intro>p { margin:0; }
.tc-profile .tc-summary { font-size:18px; line-height:1.7; max-width:62ch; }
.tc-profile .tc-job { color:#172376; font:600 22px/1.5 Montserrat,sans-serif; }
.tc-profile .tc-caption { margin:9px 0 0; color:#50535e; font-size:14px; }
.tc-profile .tc-audience-box { padding:14px 18px; border-left:3px solid #172376; border-radius:0 6px 6px 0; background:#f5f4f1; }
.tc-profile .tc-audience-box .tc-eyebrow { font-size:14px; letter-spacing:.6px; margin:0 0 4px; }
.tc-profile .tc-audience { color:#172376; font-size:18px; line-height:1.6; font-weight:600; }
.tc-profile .tc-portrait { position:relative; display:grid; place-items:center; aspect-ratio:4 / 5; background:#eeeae4; border-radius:7px; overflow:hidden; }
.tc-profile .tc-portrait img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 20%; }
.tc-profile .tm-team-card__initials { color:#172376; font:600 64px/1 Montserrat,sans-serif; }
.tc-profile .tc-button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:13px 26px; color:#fff; background:#172376; border-radius:6px; font-weight:600; text-decoration:none; }
.tc-profile .tc-button:hover { background:#101b59; }
.tc-profile .tc-columns { display:grid; grid-template-columns:minmax(0,1.9fr) minmax(0,1fr); gap:48px; align-items:start; }
.tc-profile .tc-columns--single { grid-template-columns:1fr; }
.tc-profile .tc-details { padding:64px 0; background:#fff; }
.tc-profile .tc-details .tc-columns:not(.tc-columns--single) { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); }
.tc-profile .tc-bio { min-width:0; max-width:65ch; font-size:18px; line-height:1.8; overflow-wrap:break-word; }
.tc-profile .tc-bio p { margin-bottom:1.3em; }
.tc-profile .tc-bio p:last-child { margin-bottom:0; }
.tc-profile .tc-bio h3 { font-size:23px; line-height:1.4; margin:1.5em 0 .7em; }
.tc-profile .tc-bio li + li { margin-top:.55em; }
.tc-profile .tc-scope { padding:28px; border-radius:7px; background:#f5f4f1; }
.tc-profile .tc-scope h2 { font-size:25px; margin-bottom:20px; }
.tc-profile .tc-scope ul { list-style:none; margin:0; padding:0; font-size:17px; line-height:1.75; }
.tc-profile .tc-scope li { position:relative; padding:15px 0 15px 22px; border-bottom:1px solid #dcdad7; overflow-wrap:break-word; }
.tc-profile .tc-scope li:before { content:'•'; position:absolute; left:2px; color:#172376; }
.tc-profile .tc-scope li:last-child { border:0; padding-bottom:0; }
.tc-profile .tc-contact { padding:64px 0; background:#f5f4f1; }
.tc-profile .tc-credentials { padding:64px 0; background:#f5f4f1; }
.tc-profile .tc-credentials-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; align-items:start; }
.tc-profile .tc-credentials-grid--single { grid-template-columns:1fr; }
.tc-profile .tc-credential-card { min-width:0; padding:30px; border:1px solid #e7e5e0; border-radius:8px; background:#fff; }
.tc-profile .tc-credential-card h2 { font-size:25px; line-height:1.3; margin:0 0 22px; }
.tc-profile .tc-credential-card ul { list-style:none; padding:0; margin:0; font-size:17px; line-height:1.75; }
.tc-profile .tc-credential-card li { position:relative; padding:15px 0 15px 20px; margin:0; border-top:1px solid #e7e5e0; overflow-wrap:anywhere; }
.tc-profile .tc-credential-card li:before { content:'•'; position:absolute; left:0; color:#172376; }
.tc-profile .tc-credential-card li:first-child { padding-top:0; border-top:0; }
.tc-profile .tc-credential-card li:last-child { padding-bottom:0; }
.tc-profile .tc-contact--after-credentials { background:#fff; }
.tc-profile .tc-contact-card { padding:30px; border-radius:7px; background:#eeeae4; }
.tc-profile .tc-phone { display:block; margin:8px 0 16px; font:600 28px/1.3 Montserrat,sans-serif; }
.tc-profile .tc-team-link { display:flex; align-items:center; justify-content:space-between; min-height:44px; margin-top:18px; border-bottom:1px solid #d9dbe3; font-weight:600; }
@media(max-width:1024px) { .tc-profile .tc-wrap { padding-inline:24px; } .tc-profile h1 { font-size:36px; } .tc-profile .tc-hero { padding:104px 0 32px; } .tc-profile .tc-hero-card { gap:28px; padding:28px; } .tc-profile .tc-job { font-size:20px; } .tc-profile .tc-details,.tc-profile .tc-contact { padding:48px 0; } .tc-profile .tc-columns { gap:30px; } }
@media(max-width:900px) { .tc-profile .tc-details .tc-columns:not(.tc-columns--single) { grid-template-columns:1fr; } }
@media(max-width:767px) { .tc-profile .tc-wrap { padding-inline:20px; } .tc-profile .tc-hero .tc-wrap { padding-inline:16px; } .tc-profile h1 { font-size:32px; } .tc-profile h2 { font-size:26px; } .tc-profile .tc-hero-card,.tc-profile .tc-columns { grid-template-columns:1fr; gap:28px; } .tc-profile .tc-hero-card { padding:24px; } .tc-profile .tc-portrait { width:min(100%,280px); margin-inline:auto; } .tc-profile .tc-details,.tc-profile .tc-contact { padding:40px 0; } .tc-profile .tc-scope { padding:24px; } }
@media(max-width:1024px) { .tc-profile .tc-credentials { padding:48px 0; } .tc-profile .tc-credentials-grid { gap:24px; } .tc-profile .tc-credential-card { padding:26px; } }
@media(max-width:767px) { .tc-profile .tc-credentials { padding:40px 0; } .tc-profile .tc-credentials-grid { grid-template-columns:1fr; } .tc-profile .tc-credential-card { padding:24px; } .tc-profile .tc-credential-card h2 { font-size:23px; } }
