.gallery-page .section-header{margin-bottom:50px}.gallery-group{margin-bottom:50px}.gallery-title{font-size:24px;font-weight:700;color:var(--dark);margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--primary);display:inline-block}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.gallery-item .gallery-link{display:block;overflow:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition);border:1px solid var(--border);cursor:pointer}.gallery-item .gallery-link:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.gallery-item img{width:100%;height:220px;object-fit:cover;transition:transform .4s ease;display:block}.gallery-item .gallery-link:hover img{transform:scale(1.1)}.lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.lightbox-overlay.active{opacity:1;visibility:visible}.lightbox-content{position:relative;padding:10px}.lightbox-image{max-width:90vw;max-height:90vh;object-fit:contain;display:block;border-radius:var(--radius-sm)}.lightbox-close{position:absolute;top:20px;right:20px;background:0 0;border:none;color:#fff;font-size:40px;line-height:1;cursor:pointer;opacity:.8;transition:var(--transition);z-index:10000}.lightbox-close:hover{opacity:1;transform:scale(1.1)}@media (max-width:768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.gallery-title{font-size:20px}}@media (max-width:480px){.gallery-grid{grid-template-columns:1fr}}