/* CTI member profiles. The shared member registries remain the content source. */
.cti-member-more {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 48px;
    margin: 18px 0 10px;
    padding: 12px 16px;
    border: 1px solid #827046;
    border-radius: 9px;
    background: linear-gradient(110deg, #1b3338, #10252e);
    color: #f0d397 !important;
    font: 600 13px/1.5 Arial, Helvetica, sans-serif;
    text-decoration: none !important;
    box-shadow: inset 0 1px #ffffff08;
    transition: background .2s, border-color .2s, box-shadow .2s;
}
.cti-member-more svg { width: 20px; height: 20px; flex: none; transition: transform .2s; }
.cti-member-more:hover { border-color: #e3bd76; background: #213b42; box-shadow: 0 5px 16px #0002; }
.cti-member-more:hover svg { transform: translateX(3px); }
.cti-member-more:focus-visible { outline: 2px solid #f2d59e !important; outline-offset: 4px; }

.cti-member-profile {
    --mp-ink: #f1f0e7;
    --mp-muted: #bdcdd1;
    --mp-gold: #e4bd75;
    --mp-line: #35505a;
    color: var(--mp-ink);
    font: 400 15px/1.85 Arial, Helvetica, sans-serif;
    padding-bottom: 32px;
}
.cti-member-profile *, .cti-member-profile *::before, .cti-member-profile *::after { box-sizing: border-box; }
.cti-member-profile .mp-shell { width: min(1240px, calc(100% - 64px)); margin: 0 auto; padding-top: 28px; }
.cti-member-profile :is(.mp-hero, .mp-details, .mp-contact) { min-width: 0; }
.cti-signature .cti-member-profile :is(.mp-hero, .mp-details, .mp-contact) :is(h1, h2, h3) {
    color: var(--mp-ink);
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: 1.18;
    overflow-wrap: anywhere;
    text-wrap: balance;
}
.cti-member-profile :is(.mp-hero, .mp-details, .mp-contact) p { color: var(--mp-muted); font-size: 15px; line-height: 1.85; overflow-wrap: anywhere; }
.cti-member-profile :is(.mp-hero, .mp-details, .mp-contact) .mp-eyebrow {
    margin: 0 0 18px;
    color: var(--mp-gold);
    font: 600 10px/1.8 Arial, Helvetica, sans-serif;
    letter-spacing: .17em;
    text-transform: uppercase;
}
.cti-member-profile .mp-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .9fr); align-items: center; gap: clamp(32px, 6vw, 90px); padding: 34px 0 58px; }
.cti-member-profile .mp-hero--text { grid-template-columns: minmax(0, 900px); }
.cti-member-profile .mp-hero-copy { min-width: 0; }
.cti-signature .cti-member-profile .mp-hero h1 { margin: 0 0 23px; font-size: clamp(46px, 5.7vw, 78px); line-height: 1.04; }
.cti-member-profile .mp-hero .mp-role { color: var(--mp-gold); font: 400 clamp(22px, 2.4vw, 31px)/1.35 Georgia, 'Times New Roman', serif; margin: 0 0 13px; overflow-wrap: anywhere; }
.cti-member-profile .mp-hero .mp-affiliation { margin: 0 0 24px; font-size: 11px; line-height: 1.8; letter-spacing: .025em; }
.cti-member-profile .mp-hero .mp-lead { max-width: 62ch; margin: 24px 0 29px; }
.cti-member-profile .mp-button { display: inline-flex; align-items: center; justify-content: center; gap: 13px; min-height: 48px; padding: 14px 20px; border: 1px solid #e4be79; border-radius: 8px; font: 600 13px/1.5 Arial, Helvetica, sans-serif; text-align: center; text-decoration: none; transition: background .2s, box-shadow .2s; }
.cti-member-profile .mp-button--primary { color: #0b2027; background: linear-gradient(110deg, #f4d89b, #d4ab64); }
.cti-member-profile .mp-button--primary:hover { color: #0b2027; background: #f2d496; box-shadow: 0 6px 19px #0003; }
.cti-member-profile .mp-button svg { width: 19px; height: 19px; flex: none; }
.cti-member-profile .mp-portrait { margin: 0; width: 100%; max-width: 410px; justify-self: end; align-self: start; border: 1px solid #616251; border-radius: 18px; overflow: hidden; background: linear-gradient(140deg, #18323b, #0c2129); box-shadow: 0 24px 70px #0004; }
.cti-member-profile .mp-portrait-image { aspect-ratio: 4 / 5; background: #0b171b; }
.cti-member-profile .mp-portrait.sales-fit-cover { --mp-photo-fit: cover; }
.cti-member-profile .mp-portrait.sales-fx-0 { --mp-photo-x: 0%; }
.cti-member-profile .mp-portrait.sales-fx-5 { --mp-photo-x: 5%; }
.cti-member-profile .mp-portrait.sales-fx-10 { --mp-photo-x: 10%; }
.cti-member-profile .mp-portrait.sales-fx-15 { --mp-photo-x: 15%; }
.cti-member-profile .mp-portrait.sales-fx-20 { --mp-photo-x: 20%; }
.cti-member-profile .mp-portrait.sales-fx-25 { --mp-photo-x: 25%; }
.cti-member-profile .mp-portrait.sales-fx-30 { --mp-photo-x: 30%; }
.cti-member-profile .mp-portrait.sales-fx-35 { --mp-photo-x: 35%; }
.cti-member-profile .mp-portrait.sales-fx-40 { --mp-photo-x: 40%; }
.cti-member-profile .mp-portrait.sales-fx-45 { --mp-photo-x: 45%; }
.cti-member-profile .mp-portrait.sales-fx-50 { --mp-photo-x: 50%; }
.cti-member-profile .mp-portrait.sales-fx-55 { --mp-photo-x: 55%; }
.cti-member-profile .mp-portrait.sales-fx-60 { --mp-photo-x: 60%; }
.cti-member-profile .mp-portrait.sales-fx-65 { --mp-photo-x: 65%; }
.cti-member-profile .mp-portrait.sales-fx-70 { --mp-photo-x: 70%; }
.cti-member-profile .mp-portrait.sales-fx-75 { --mp-photo-x: 75%; }
.cti-member-profile .mp-portrait.sales-fx-80 { --mp-photo-x: 80%; }
.cti-member-profile .mp-portrait.sales-fx-85 { --mp-photo-x: 85%; }
.cti-member-profile .mp-portrait.sales-fx-90 { --mp-photo-x: 90%; }
.cti-member-profile .mp-portrait.sales-fx-95 { --mp-photo-x: 95%; }
.cti-member-profile .mp-portrait.sales-fx-100 { --mp-photo-x: 100%; }
.cti-member-profile .mp-portrait.sales-fy-0 { --mp-photo-y: 0%; }
.cti-member-profile .mp-portrait.sales-fy-5 { --mp-photo-y: 5%; }
.cti-member-profile .mp-portrait.sales-fy-10 { --mp-photo-y: 10%; }
.cti-member-profile .mp-portrait.sales-fy-15 { --mp-photo-y: 15%; }
.cti-member-profile .mp-portrait.sales-fy-20 { --mp-photo-y: 20%; }
.cti-member-profile .mp-portrait.sales-fy-25 { --mp-photo-y: 25%; }
.cti-member-profile .mp-portrait.sales-fy-30 { --mp-photo-y: 30%; }
.cti-member-profile .mp-portrait.sales-fy-35 { --mp-photo-y: 35%; }
.cti-member-profile .mp-portrait.sales-fy-40 { --mp-photo-y: 40%; }
.cti-member-profile .mp-portrait.sales-fy-45 { --mp-photo-y: 45%; }
.cti-member-profile .mp-portrait.sales-fy-50 { --mp-photo-y: 50%; }
.cti-member-profile .mp-portrait.sales-fy-55 { --mp-photo-y: 55%; }
.cti-member-profile .mp-portrait.sales-fy-60 { --mp-photo-y: 60%; }
.cti-member-profile .mp-portrait.sales-fy-65 { --mp-photo-y: 65%; }
.cti-member-profile .mp-portrait.sales-fy-70 { --mp-photo-y: 70%; }
.cti-member-profile .mp-portrait.sales-fy-75 { --mp-photo-y: 75%; }
.cti-member-profile .mp-portrait.sales-fy-80 { --mp-photo-y: 80%; }
.cti-member-profile .mp-portrait.sales-fy-85 { --mp-photo-y: 85%; }
.cti-member-profile .mp-portrait.sales-fy-90 { --mp-photo-y: 90%; }
.cti-member-profile .mp-portrait.sales-fy-95 { --mp-photo-y: 95%; }
.cti-member-profile .mp-portrait.sales-fy-100 { --mp-photo-y: 100%; }
.cti-member-profile .mp-portrait-image :is(picture, a) { display: block; width: 100%; height: 100%; }
.cti-member-profile .mp-portrait-image img { display: block; width: 100%; height: 100%; object-fit: var(--mp-photo-fit, contain); object-position: var(--mp-photo-x, 50%) var(--mp-photo-y, 50%); transform: none; filter: none; margin: 0; border: 0; border-radius: 0; }
.cti-member-profile .mp-portrait figcaption { padding: 23px 27px; }
.cti-member-profile .mp-portrait figcaption > span { display: block; color: #d5bc87; font: 600 9px/1.7 Arial, Helvetica, sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.cti-member-profile .mp-portrait figcaption strong { display: block; color: var(--mp-ink); font: 400 25px/1.3 Georgia, 'Times New Roman', serif; margin-top: 8px; overflow-wrap: anywhere; }
.cti-member-profile .mp-portrait figcaption p { margin: 8px 0 0; font-size: 12px; line-height: 1.65; }
.cti-member-profile .mp-details { padding: 48px 0 14px; border-top: 1px solid var(--mp-line); }
.cti-member-profile .mp-details--columns { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, .85fr); align-items: start; gap: clamp(30px, 5vw, 75px); }
.cti-signature .cti-member-profile .mp-about > h2 { font-size: clamp(28px, 3.1vw, 41px); margin: 0 0 25px; }
.cti-member-profile .mp-biography p { margin: 0; }
.cti-member-profile .mp-experience { margin-top: 27px; padding-top: 24px; border-top: 1px solid #36515a; }
.cti-signature .cti-member-profile .mp-experience h3 { color: #e0c58e; font-size: 23px; margin: 0 0 12px; }
.cti-member-profile .mp-experience p { margin: 0; }
.cti-member-profile .mp-facts { padding: 28px; border: 1px solid #435951; border-radius: 14px; background: linear-gradient(140deg, #142e37, #0c222b); }
.cti-signature .cti-member-profile .mp-facts h2 { font-size: 28px; margin: 0 0 24px; }
.cti-member-profile .mp-facts dl { margin: 0; }
.cti-member-profile .mp-facts dl > div + div { border-top: 1px solid #344e54; padding-top: 20px; margin-top: 20px; }
.cti-member-profile .mp-facts dt { color: #ddc28b; font-size: 10px; font-weight: 600; line-height: 1.6; text-transform: uppercase; letter-spacing: .12em; margin-bottom: 10px; }
.cti-member-profile .mp-facts dd { display: flex; flex-wrap: wrap; gap: 7px 9px; margin: 0; color: #d0dbdc; font-size: 12px; line-height: 1.65; }
.cti-member-profile .mp-facts dd span { border: 1px solid #526657; padding: 5px 9px; border-radius: 4px; overflow-wrap: anywhere; max-width: 100%; }
.cti-member-profile .mp-contact { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .9fr); gap: 40px; align-items: start; margin-top: 46px; padding: 36px; border: 1px solid #59675e; border-radius: 18px; background: linear-gradient(120deg, #183239, #0d252e); }
.cti-signature .cti-member-profile .mp-contact h2 { font-size: clamp(28px, 3vw, 38px); margin: 0 0 17px; }
.cti-member-profile .mp-contact-copy > p:last-child { font-size: 14px; margin: 0; }
.cti-member-profile .mp-contact-options { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; }
.cti-member-profile .mp-contact-link { display: flex; align-items: center; gap: 12px; min-height: 44px; max-width: 100%; padding: 4px 0; color: #e0d2b1; font-size: 13px; line-height: 1.5; text-decoration: none; }
.cti-member-profile .mp-contact-link > span { min-width: 0; overflow-wrap: anywhere; }
.cti-member-profile .mp-contact-link svg { flex: none; width: 20px; height: 20px; }
.cti-member-profile .mp-contact-link small { display: block; color: #a8c0c7; font-size: 9px; letter-spacing: .08em; margin-bottom: 3px; text-transform: uppercase; }
.cti-member-profile .mp-contact-link:hover { color: #ffdda0; text-decoration: underline; text-underline-offset: 4px; }
.cti-member-profile .mp-linkedin-mark { display: grid; place-items: center; flex: none; width: 24px; height: 24px; border-radius: 5px; background: #0a66c2; color: #fff; font: 700 16px Arial, Helvetica, sans-serif; }
.cti-member-profile .mp-end { padding-top: 20px; }
.cti-member-profile .mp-end > a { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: #e1c995; font-size: 12px; text-decoration: none; }
.cti-member-profile .mp-end > a:hover { text-decoration: underline; text-underline-offset: 5px; }
.cti-member-profile :is(a, button):focus-visible { outline: 2px solid #f2d59e !important; outline-offset: 4px; }

@media (max-width: 950px) {
    .cti-member-profile .mp-hero { grid-template-columns: minmax(0, 1.1fr) minmax(0, .85fr); gap: 35px; }
    .cti-member-profile .mp-hero--text { grid-template-columns: minmax(0, 1fr); }
    .cti-member-profile .mp-details--columns { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 28px; }
    .cti-member-profile .mp-facts { padding: 22px; }
    .cti-member-profile .mp-contact { gap: 28px; padding: 28px; }
}
@media (max-width: 680px) {
    .cti-member-profile .mp-shell { width: calc(100% - 36px); padding-top: 20px; }
    .cti-member-profile .mp-hero { grid-template-columns: minmax(0, 1fr); gap: 32px; padding: 20px 0 37px; }
    .cti-signature .cti-member-profile .mp-hero h1 { font-size: clamp(42px, 10.5vw, 61px); }
    .cti-member-profile .mp-portrait { justify-self: start; max-width: 380px; }
    .cti-member-profile .mp-details { padding-top: 32px; }
    .cti-member-profile .mp-details--columns { grid-template-columns: minmax(0, 1fr); gap: 30px; }
    .cti-member-profile .mp-contact { grid-template-columns: minmax(0, 1fr); margin-top: 32px; }
    .cti-member-profile .mp-contact-options { align-items: stretch; }
}
@media (max-width: 380px) {
    .cti-member-profile .mp-contact { padding: 23px; }
    .cti-member-profile .mp-button { font-size: 12px; padding-inline: 16px; }
    .cti-member-profile .mp-portrait figcaption { padding: 20px 22px; }
    .cti-member-profile .mp-facts { padding: 23px; }
}
@media (prefers-reduced-motion: reduce) {
    .cti-member-more, .cti-member-more svg, .cti-member-profile .mp-button { transition: none; }
    .cti-member-more:hover svg { transform: none; }
}
@media print {
    .cti-member-profile .mp-shell { width: 100%; }
    .cti-member-profile .mp-hero { gap: 24px; padding-bottom: 24px; }
    .cti-member-profile .mp-portrait { max-width: 240px; }
    .cti-member-profile .mp-details { padding-top: 24px; }
    .cti-member-profile :is(.mp-button, .mp-end) { display: none; }
    .cti-member-profile :is(.mp-portrait, .mp-contact, .mp-facts) { break-inside: avoid; box-shadow: none; }
}
