/* Shared alignment layer: incomplete last rows centred, equal card widths/heights */
.experience-steps,.v21-service-grid,.scope-modules,.scope-common,.pc-grid{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:stretch;column-gap:var(--ag)!important}
.experience-steps>*,.v21-service-grid>*,.scope-modules>*,.scope-common>*,.pc-grid>*{flex:0 0 calc((100% - (var(--ac) - 1) * var(--ag)) / var(--ac));max-width:calc((100% - (var(--ac) - 1) * var(--ag)) / var(--ac));min-width:0;grid-column:auto!important;box-sizing:border-box}
.experience-steps{--ac:3;--ag:22px}.v21-service-grid{--ac:3;--ag:28px}.scope-modules{--ac:2;--ag:18px}.scope-common{--ac:3;--ag:28px}.pc-grid{--ac:2;--ag:22px}
@media(max-width:1100px){.v21-service-grid{--ac:2}}
@media(max-width:800px){.v21-service-grid{--ag:20px}}
@media(max-width:760px){.experience-steps{--ac:2}.scope-modules{--ac:1}.scope-common{--ac:2;--ag:22px}}
@media(max-width:700px){.pc-grid{--ac:1}}
@media(max-width:520px){.v21-service-grid{--ac:1}}
@media(max-width:480px){.experience-steps,.scope-common{--ac:1}}
/* Card image frames: whole image shown (contain), same frame ratio in every row, art inset from the frame edge */
.pc-art,.card-art{display:flex!important;align-items:center;justify-content:center;aspect-ratio:2/1!important;height:auto!important;padding:14px 0;box-sizing:border-box;background:#050c12;overflow:hidden}
.pc-art img,.card-art img{width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
.pc-grid,.suite-panels{align-items:stretch}
