.watsonmj-profile-links { display:flex; align-items:center; gap:12px; }
.watsonmj-profile-links a { display:inline-flex; align-items:center; justify-content:center; min-width:32px; min-height:32px; color:var(--ast-global-color-2); }
.watsonmj-profile-links svg { width:22px; height:22px; fill:currentColor; }
.watsonmj-profile-links a:hover { color:var(--ast-global-color-0); }
.watsonmj-profile-links a:focus-visible { outline:2px solid currentColor; outline-offset:4px; border-radius:3px; }
.watsonmj-profile-links--vertical { flex-direction:column; }
.watsonmj-project-list { width:100%; max-width:860px; margin:20px auto 36px; text-align:left; }
.watsonmj-project-list .watsonmj-project { padding:22px 0; border-bottom:1px solid #dce7e0; }
.watsonmj-project-list h3 { font-size:clamp(20px,2vw,24px); line-height:1.35; margin:0 0 10px; }
.watsonmj-project-list p { margin:0; line-height:1.75; }
.page-id-1205 .uagb-block-8391cc31 .uagb-ifb-desc { max-width:780px; margin-left:auto; margin-right:auto; }
.watsonmj-photo-credit { font-size:13px; line-height:1.5; padding:10px 0 0; color:var(--ast-global-color-3); }
.page-id-1203 .uagb-block-49c8c1d8 .watsonmj-photo-credit { color:#fff; padding:12px 10px; }
.page-id-1203 .uagb-block-49c8c1d8 .watsonmj-photo-credit a { color:inherit; text-decoration:underline; }
.page-id-1203 .uagb-block-49c8c1d8 img { width:100%; height:auto; object-fit:contain; }
.page-id-1201 .uagb-block-521031d2 .spectra-image-gallery__media-thumbnail-caption--bar-outside { font-size:13px; line-height:1.5; }
@media(max-width:767px) { .watsonmj-project-list { margin-top:8px; } .watsonmj-profile-links--vertical { gap:8px; } }
@media(min-width:1025px) {
  .page-id-1201 :is(.uagb-block-6c68adf5,.uagb-block-a864cd78,.uagb-block-aa2388aa) > .wp-block-uagb-info-box { flex:1 1 auto; width:100%; }
  .page-id-1201 :is(.uagb-block-5cf24feb,.uagb-block-4873e338,.uagb-block-5d216653) .uagb-ifb-title { min-height:2.5em; }
  .page-id-1201 :is(.uagb-block-295ea2eb,.uagb-block-0b696f45,.uagb-block-3cc6e56d) .uagb-ifb-title-prefix { min-height:6.6em; }
}
.watsonmj-speaking-list { width:100%; max-width:860px; margin:48px auto; text-align:left; }
.watsonmj-speaking-list h2 { margin:0 0 16px; }
.watsonmj-speaking-list ul { list-style:none; margin:24px 0; padding:0; }
.watsonmj-speaking-list li { padding:18px 0; border-bottom:1px solid #dce7e0; line-height:1.7; }
.watsonmj-speaking-list li p { margin:0 0 6px; line-height:1.65; }
.watsonmj-speaking-list .watsonmj-speaking-meta { font-size:14px; color:var(--ast-global-color-3); }
