/* Shared responsive media treatment for portfolio cards and project pages. */
.nnobae-page img,.yensom-page img,.edu-gh-page img,.ubms-page img{max-width:100%;height:auto}
.project-screenshot{position:relative;width:100%;max-width:100%;aspect-ratio:16/9;overflow:hidden;background:#eef1f5}.project-screenshot picture,.project-screenshot img{display:block;width:100%;max-width:100%;height:100%}.project-screenshot img{object-fit:cover}.project-screenshot--contain img{object-fit:contain}.project-screenshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,2rem)}
.nnobae-page .nnobae-hero-image-wrapper{aspect-ratio:437/900}.nnobae-page .nnobae-showcase-placeholder{aspect-ratio:16/9}.yensom-page .yensom-app-frame{aspect-ratio:426/923}.nnobae-page .nnobae-hero-image-wrapper img,.nnobae-page .nnobae-showcase-placeholder img,.yensom-page .yensom-app-frame img{display:block;width:100%;max-width:100%;height:100%;object-fit:contain}
@media(max-width:1024px){.project-screenshot-grid{grid-template-columns:1fr;gap:1.25rem}}
@media(max-width:767px){.project-screenshot-grid{display:flex;flex-direction:column;gap:1rem}}
