.projects{padding-top:96px;padding-bottom:100px}
.projects .section-title{margin-bottom:38px}
.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.project-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce7f2;border-radius:16px;background:#fff;box-shadow:0 8px 26px #092c5610;transition:transform .2s,border-color .2s,box-shadow .2s}
.project-card:hover{transform:translateY(-4px);border-color:#8bc8ef;box-shadow:0 16px 36px #092c561b}
.project-media{aspect-ratio:1.32/1;display:grid;place-items:center;overflow:hidden;background:#f4f8fc;border-bottom:1px solid #e5edf5;padding:10px}
.project-media.project-media-poster{aspect-ratio:2/3}
.project-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.project-media-pair{grid-template-columns:1fr 1fr;gap:8px}
.project-media-pair img{min-width:0}
.project-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px 22px 24px}
.project-category{margin:0 0 8px;color:#0877bc;font-size:11px;font-weight:900;letter-spacing:.1em}
.project-copy h3{margin:0 0 9px;font-size:22px;line-height:1.22;letter-spacing:-.02em}
.project-copy>p:not(.project-category){margin:0 0 20px;color:#53667c;font-size:15px;line-height:1.6}
.project-link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:#0757b8;font-size:14px;font-weight:850}
.project-link span{transition:transform .18s}
.project-link:hover span{transform:translateX(4px)}
.project-link:focus-visible{outline:3px solid #ffbf47;outline-offset:4px;border-radius:3px}
@media(max-width:980px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.projects{padding-top:76px;padding-bottom:78px}.projects-grid{grid-template-columns:1fr;gap:18px}.project-media{aspect-ratio:1.4/1}.project-copy{padding:20px}.project-copy h3{font-size:21px}}
