/* Project portfolio only. Keep the original news/article templates outside this scope. */
body.mpg-projects-page { background: #f5f5f1; color: #293b46; }
.mpg-projects-page .breadCrumbs { background: #f5f5f1; border-bottom: 1px solid #dfe5dc; }
.mpg-projects-page .breadCrumbs .maxwidth { width: calc(100% - 40px); max-width: 1200px; padding: 15px 0; }
.mpg-projects-page .breadcrumb { margin: 0; font-size: 11px; line-height: 1.8; }
.mpg-projects-main { padding: 0; }
.mpg-projects-container { width: calc(100% - 40px); max-width: 1200px; margin-inline: auto; }
.mpg-projects-intro { background: #25343e; color: #fff; }
.mpg-projects-intro-grid { display: grid; grid-template-columns: 1.5fr .8fr; gap: 90px; align-items: center; padding-block: 48px 49px; }
.mpg-projects-eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 22px; color: #bac9d2; font-family: svnsb,sans-serif; font-size: 9px; line-height: 1.7; letter-spacing: 1.6px; }
.mpg-projects-eyebrow > span { width: 24px; height: 2px; background: #f08b94; }
.mpg-projects-intro h1 { margin: 0 0 19px; color: #fff; font-family: svnsb,sans-serif; font-weight: 600; font-size: clamp(36px,3.7vw,50px); line-height: 1.2; letter-spacing: -1.1px; overflow-wrap: anywhere; }
.mpg-projects-intro h1 > span { color: #f0828c; }
.mpg-projects-intro-description { max-width: 570px; margin: 0; color: #bacbd4; font-size: 13px; line-height: 1.95; }
.mpg-projects-intro-aside { padding: 8px 0 8px 35px; border-left: 1px solid #5f7583; }
.mpg-projects-intro-aside > span { color: #b3c4ce; font-family: svnsb,sans-serif; font-size: 8px; letter-spacing: 1.4px; }
.mpg-projects-intro-aside p { margin: 17px 0 23px; color: #f5f7f7; font-family: svnr,sans-serif; font-size: 22px; line-height: 1.5; }
.mpg-projects-intro-aside a { display: inline-flex; align-items: center; gap: 35px; padding-bottom: 9px; border-bottom: 1px solid #7f949e; color: #fff; font-family: svnsb,sans-serif; font-size: 11px; text-decoration: none; }
.mpg-projects-intro-aside b { color: #ee939b; font: 19px sans-serif; }
.mpg-projects-collection { padding-block: 30px 57px; }
.mpg-projects-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 25px; border-bottom: 1px solid #d6e0d2; margin-bottom: 32px; }
.mpg-projects-filters { display: flex; align-items: stretch; gap: 32px; overflow-x: auto; min-width: 0; }
.mpg-projects-filters a { display: flex; align-items: center; flex-shrink: 0; min-height: 49px; padding: 11px 0 16px; border-bottom: 2px solid transparent; color: #788d97; font-family: svnsb,sans-serif; font-size: 11px; line-height: 1.7; text-decoration: none; }
.mpg-projects-filters a.is-current { color: #ac2332; border-bottom-color: #c83240; }
.mpg-projects-count { flex-shrink: 0; margin: 0 0 6px; color: #85969b; font-size: 10px; line-height: 1.8; }
.mpg-projects-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 36px 30px; }
.mpg-project-card { min-width: 0; }
.mpg-project-card-link { display: block; color: #2b414c; text-decoration: none !important; }
.mpg-project-photo { position: relative; overflow: hidden; background: #e3e9df; }
.mpg-project-photo img { display: block; width: 100%; height: auto; aspect-ratio: 1.55; object-fit: cover; transition: transform .4s; }
.mpg-project-photo-arrow { display: flex; position: absolute; bottom: 20px; right: 20px; align-items: center; justify-content: center; width: 39px; height: 39px; border: 1px solid #ffffffa8; border-radius: 50%; background: #243a46d9; color: #fff; font: 22px sans-serif; }
.mpg-project-copy { padding: 22px 24px 19px; background: #fff; }
.mpg-project-sequence { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 14px; color: #83989e; font-family: svnsb,sans-serif; font-size: 8px; line-height: 1.7; letter-spacing: 1.4px; }
.mpg-project-sequence > span { color: #93a5a9; font-family: svnr,sans-serif; font-size: 12px; letter-spacing: .5px; }
.mpg-project-copy h2 { min-height: 30px; margin: 0 0 13px; color: #2c424e; font-family: svnsb,sans-serif; font-weight: 600; font-size: 23px; line-height: 1.4; letter-spacing: -.4px; overflow-wrap: anywhere; }
.mpg-project-description { min-height: 45px; margin: 0 0 21px; color: #7d9099; font-size: 12px; line-height: 1.9; }
.mpg-project-more { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #e1e8dc; padding-top: 13px; color: #7f969e; font-size: 10px; line-height: 1.8; }
.mpg-project-more b { color: #b62636; font: 19px sans-serif; }
.mpg-project-card-link:hover img { transform: scale(1.025); }
.mpg-project-card-link:hover h2 { color: #ae2635; }
.mpg-projects-pagination { margin-top: 36px; }
.mpg-projects-pagination .pagination { gap: 6px; }
.mpg-projects-pagination .pagination .page-link { display: flex; align-items: center; justify-content: center; min-width: 39px; min-height: 39px; margin: 0; border: 1px solid #c8d7c4; border-radius: 0; background: transparent; color: #617c8a; font-family: svnsb,sans-serif; font-size: 11px; box-shadow: none; }
.mpg-projects-pagination .pagination .active .page-link { background: #2c4654; border-color: #2c4654; color: #fff; }
.mpg-projects-empty { padding: 40px 30px; background: #eaf0e5; }
.mpg-projects-empty h2 { font-family: svnsb,sans-serif; font-size: 23px; }
.mpg-projects-empty p { color: #6c8590; font-size: 13px; line-height: 1.9; }
.mpg-projects-empty a { color: #a62435; font-family: svnsb,sans-serif; font-size: 13px; }
.mpg-projects-invitation { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 65px; padding: 36px 40px; margin-top: 42px; background: #e8eee2; }
.mpg-projects-invitation > div > p { margin: 0 0 14px; color: #78909a; font-size: 12px; line-height: 1.9; }
.mpg-projects-invitation > div:first-child > p { color: #81959c; font-family: svnsb,sans-serif; font-size: 8px; letter-spacing: 1.4px; }
.mpg-projects-invitation h2 { margin: 0; color: #2d4856; font-family: svnsb,sans-serif; font-size: 28px; font-weight: 600; line-height: 1.4; letter-spacing: -.5px; }
.mpg-projects-invitation a { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-top: 13px; border-top: 1px solid #b7cdb0; color: #375666; font-family: svnsb,sans-serif; font-size: 11px; text-decoration: none; }
.mpg-projects-main a:focus-visible { outline: 2px solid #c33646; outline-offset: 4px; }
@media(max-width:1100px) {
    .mpg-projects-intro-grid { gap: 40px; }
    .mpg-project-copy h2 { font-size: 21px; }
    .mpg-projects-grid { gap: 28px 22px; }
    .mpg-projects-invitation { gap: 35px; padding: 32px; }
}
@media(max-width:767px) {
    .mpg-projects-page .breadCrumbs .maxwidth { padding-block: 12px; }
    .mpg-projects-page .breadcrumb { font-size: 10px; }
    .mpg-projects-intro-grid { grid-template-columns: 1fr; padding-block: 31px 30px; gap: 22px; }
    .mpg-projects-eyebrow { font-size: 8px; margin-bottom: 18px; letter-spacing: 1.2px; }
    .mpg-projects-intro h1 { font-size: 34px; letter-spacing: -.8px; }
    .mpg-projects-intro-description { font-size: 12px; }
    .mpg-projects-intro-aside { border: 0; padding: 0; }
    .mpg-projects-intro-aside > span, .mpg-projects-intro-aside > p { display: none; }
    .mpg-projects-intro-aside a { font-size: 10px; }
    .mpg-projects-collection { padding-block: 19px 35px; }
    .mpg-projects-toolbar { flex-direction: column; align-items: stretch; gap: 14px; padding-bottom: 16px; margin-bottom: 22px; }
    .mpg-projects-filters { gap: 26px; }
    .mpg-projects-filters a { min-height: 43px; padding-bottom: 10px; font-size: 10px; }
    .mpg-projects-count { margin: 0; font-size: 10px; }
    .mpg-projects-grid { grid-template-columns: 1fr; gap: 25px; }
    .mpg-project-photo img { aspect-ratio: 1.4; }
    .mpg-project-photo-arrow { width: 34px; height: 34px; bottom: 15px; right: 15px; font-size: 20px; }
    .mpg-project-copy { padding: 19px 18px 17px; }
    .mpg-project-copy h2 { font-size: 21px; min-height: 0; margin-bottom: 12px; }
    .mpg-project-sequence { font-size: 7px; margin-bottom: 12px; }
    .mpg-project-description { min-height: 0; margin-bottom: 17px; font-size: 12px; }
    .mpg-project-more { padding-top: 12px; font-size: 9px; }
    .mpg-projects-pagination .pagination .page-link { min-width: 35px; min-height: 37px; font-size: 10px; padding: 7px 10px; }
    .mpg-projects-invitation { grid-template-columns: 1fr; gap: 23px; padding: 27px 24px; margin-top: 31px; }
    .mpg-projects-invitation h2 { font-size: 25px; }
    .mpg-projects-invitation > div > p { font-size: 11px; }
}
@media(prefers-reduced-motion:reduce) { .mpg-project-photo img { transition: none; } }
