/* Visual review only. Content, navigation, disclosures and consent remain intact.
   Loaded last to keep this reversible and leave the deployed styles untouched. */
:root { --umons-red: #ae153a; --umons-red-dark: #88102e; --umons-text: #292b30; --umons-text-soft: #50545b; --umons-text-muted: #62666d; }
.smpc-header__main .smpc-header__inner { min-height: 82px; }
.smpc-header__logo img { max-width: 176px; }
.smpc-header__main { border-bottom-width: 1px; }
.smpc-header__small-text { font-size: 12px; font-weight: 400; }
.smpc-page-hero { background: #fafafa; padding: 28px 28px 30px; margin-bottom: 36px; border-bottom: 1px solid #e5e6e8; }
.smpc-page-hero__breadcrumb { font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; line-height: 1.6; margin-bottom: 14px; }
.smpc-page-hero__breadcrumb span:last-child { color: #62666d; }
.smpc-page-hero__title { font-size: clamp(25px,2.7vw,34px) !important; line-height: 1.3 !important; max-width: 34ch; padding-bottom: 0; }
.smpc-page-hero__title::after, .smpc-section__title::after, .smpc-researcher-card__title::after { display: none; }
.smpc-section { margin-bottom: 48px; }
.smpc-section__header { margin-bottom: 22px; }
.smpc-section__title { font-size: 25px !important; line-height: 1.35 !important; padding-bottom: 0; }
.smpc-section__subtitle { margin-top: 8px; color: #62666d; line-height: 1.65; }
.smpc-section__body { max-width: 76ch; }
.smpc-section__body p, .smpc-post__body p, .smpc-researcher-card__body { font-size: 16px; line-height: 1.8; }
.smpc-section__body .smpc-lead { font-size: 18px !important; line-height: 1.7 !important; font-weight: 500 !important; }
#main-content .smpc-quicklink { border: 1px solid #e2e4e7; background: #fafafa; padding: 22px; box-shadow: none; }
#main-content .smpc-quicklink__title { color: #292b30; text-decoration: none; font-size: 18px; }
#main-content .smpc-quicklink__desc { color: #50545b; line-height: 1.65; }
.smpc-posts-grid { gap: 24px; }
.smpc-post-card { padding: 22px 0; border: 0; border-top: 1px solid #dfe2e6; }
#main-content .smpc-post-card__title a { color: #292b30 !important; text-decoration: none !important; }
#main-content .smpc-post-card__title a:hover { text-decoration: underline !important; }
.smpc-post-card__title { font-size: 18px !important; line-height: 1.5 !important; }
.smpc-post-card__excerpt { font-size: 15px; line-height: 1.7; }
#main-content .smpc-post-card__cta { font-size: 14px; text-transform: none; letter-spacing: 0; font-weight: 500; display: inline-flex; align-items: center; }
.smpc-post-card:hover, .smpc-team-card:hover, .smpc-quicklink:hover { transform: none; box-shadow: none; }
/* Compact portraits preserve the source image ratio instead of filling a card. */
.smpc-team-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px 28px; }
.smpc-team-card { flex-direction: row; align-items: center; border: 0; border-bottom: 1px solid #e2e4e7; padding: 16px 0; gap: 16px; }
.smpc-team-card__photo { width: 84px; background: #f5f5f5; }
.smpc-team-card__photo img { width: 84px; height: 112px; aspect-ratio: 3/4; object-fit: cover; filter: none; }
.smpc-team-card__body { min-width: 0; border: 0; padding: 0; }
.smpc-team-card__name { font-size: 15px !important; line-height: 1.5 !important; }
.smpc-team-card__role { font-size: 14px; margin-top: 5px; }
.smpc-team-card--linked .smpc-team-card__name { text-decoration: underline; text-decoration-color: #c7c9ce; text-underline-offset: 4px; }
.smpc-researcher__portrait { max-width: 180px; margin-inline: 0; }
.smpc-researcher__portrait img { max-width: 180px; height: auto; }
.smpc-researcher-card { margin-bottom: 36px; }
.smpc-researcher-card__title { font-size: 23px !important; padding-bottom: 0; }
.smpc-researcher-card__body { max-width: 74ch; }
/* Funding navigation and simple directory rows: content stays fully available. */
#main-content.pvp h1 { font-size: clamp(25px,2.7vw,34px); line-height: 1.3; }
#main-content.pvp .pvp-intro { padding-block: 28px 36px; }
#main-content.pvp .pvp-breadcrumb { font-size: 12px; margin-bottom: 14px; }
#main-content.pvp .pvp-index__nav { border-top: 1px solid #dfe2e6; }
#main-content.pvp .pvp-index a { text-decoration: none; border-bottom: 1px solid #e5e6e8; font-size: 14px; }
#main-content.pvp .pvp-index a:hover { text-decoration: underline; }
#main-content.pvp .pvp-category { margin-bottom: 56px; }
#main-content.pvp .pvp-category__header { border: 0; padding: 0; margin-bottom: 20px; }
#main-content.pvp .pvp-category__title { font-size: 25px; }
#main-content.pvp .pvp-category__subtitle { margin-top: 8px; }
#main-content.pvp .pvp-directory { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; }
#main-content.pvp .pvp-directory__item { border: 0; border-bottom: 1px solid #e2e4e7; border-radius: 0; }
#main-content.pvp .pvp-directory__item a, #main-content.pvp .pvp-directory__item--static { min-height: 72px; padding: 16px 4px; flex-direction: row; align-items: center; gap: 16px; }
#main-content.pvp .pvp-directory__name { font-size: 15px; }
#main-content.pvp .pvp-directory__link, #main-content.pvp .pvp-directory__muted { font-size: 13px; flex-shrink: 0; }
#main-content.pvp .pvp-directory__muted { color: #62666d; }
#main-content.pvp .pvp-card { margin-top: 24px; border-radius: 3px; }
#main-content.pvp .pvp-card__heading { padding: 26px; }
#main-content.pvp .pvp-card__title { font-size: 22px; }
#main-content.pvp .pvp-details > summary { font-weight: 500; }
.smpc-footer { border-top-color: #e2e4e7; }
@media(max-width:1024px) {
 .smpc-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .smpc-header__main .smpc-header__inner { min-height: 70px; }
 .smpc-header__logo img { max-width: 132px; }
}
@media(max-width:600px) {
 .smpc-page-hero { margin-bottom: 28px; padding: 24px 16px; }
 .smpc-page-hero__title { font-size: 25px !important; }
 .smpc-section__title { font-size: 22px !important; }
 .smpc-section { margin-bottom: 36px; }
 .smpc-section__body .smpc-lead { font-size: 17px !important; }
 .smpc-team-grid { grid-template-columns: minmax(0,1fr); gap: 4px; }
 .smpc-team-card__photo, .smpc-team-card__photo img { width: 72px; }
 .smpc-team-card__photo img { height: 96px; }
 .smpc-team-card { gap: 20px; }
 .smpc-researcher__portrait, .smpc-researcher__portrait img { max-width: 136px; }
 #main-content.pvp .pvp-directory { grid-template-columns: minmax(0,1fr); }
 #main-content.pvp .pvp-index ul { gap: 8px 16px; }
 #main-content.pvp .pvp-category__title { font-size: 22px; }
 #main-content.pvp .pvp-card__heading { padding: 20px; }
}
