
.project-gallery-section{padding-block:24px!important}
.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.project-photo{display:block;overflow:hidden;border:1px solid #dce8f4;border-radius:6px;background:#eef7ff;aspect-ratio:4/3}
.project-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease}
.project-photo:hover img,.project-photo:focus-visible img{transform:scale(1.04)}
.project-photo:focus-visible{outline:3px solid #0878f7;outline-offset:2px}
#project-lightbox{position:fixed;inset:0;max-width:min(96vw,1400px);max-height:96vh;padding:12px;border:0;border-radius:8px;background:#fff;box-shadow:0 20px 60px #0018}
#project-lightbox::backdrop{background:rgba(0,22,44,.88)}
#project-lightbox>img{display:block;max-width:100%;max-height:calc(96vh - 85px);width:auto;height:auto;margin:auto;object-fit:contain}
.project-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border:0;border-radius:50%;background:#fff;color:#062e55;font-size:28px;cursor:pointer}
.project-controls{display:flex;align-items:center;justify-content:center;gap:20px;padding-top:8px;color:#17399d;font:14px Arial,sans-serif}
.project-controls button{border:1px solid #b9daf3;border-radius:5px;background:#eaf5ff;color:#0878f7;font-size:20px;min-width:38px;cursor:pointer}
@media(max-width:900px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:580px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}
