.image-gallery-module{background-color:#061a40;color:#fff;font-family:Raleway,Arial,sans-serif;padding:80px 20px}.gallery-header{margin:0 auto 60px;max-width:800px;text-align:center}.gallery-heading{color:#fff;font-weight:600;line-height:1.2;margin-bottom:20px}.gallery-description{color:#e2e8f0;line-height:1.6;margin:0}.gallery-container{margin:0 auto 80px;max-width:1200px}.gallery-grid{align-items:stretch;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.gallery-item{border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.2);cursor:pointer;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.gallery-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.3);transform:translateY(-12px)}.image-wrapper{aspect-ratio:3/2;overflow:hidden;position:relative;width:100%}.gallery-image{height:100%;object-fit:cover;transform:scale(1);transition:transform .5s cubic-bezier(.25,.46,.45,.94);width:100%}.gallery-item:hover .gallery-image{transform:scale(1.2)}.image-overlay{align-items:center;background:linear-gradient(135deg,rgba(37,110,255,.8),rgba(59,158,255,.7));bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.gallery-item:hover .image-overlay{opacity:1}.zoom-icon{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.3);border-radius:50%;padding:16px;transform:scale(.8);transition:transform .3s ease}.gallery-item:hover .zoom-icon{transform:scale(1)}.zoom-icon svg{display:block}.gallery-cta-section{border-radius:16px;margin:0 auto;max-width:800px;padding:60px 40px;text-align:center}.cta-content{margin:0 auto;max-width:600px}.cta-heading{color:#fff;font-weight:600;line-height:1.3;margin-bottom:20px}.cta-description{color:#e2e8f0;line-height:1.6;margin-bottom:30px}.cta-button-container{margin-top:20px}.cta-button{background:linear-gradient(90deg,#256eff,#3b9eff);border:none;border-radius:12px;cursor:pointer;display:inline-block;font-family:Raleway,Arial,sans-serif;font-size:16px;font-weight:600;padding:16px 32px;transition:all .3s ease}.cta-button,.cta-button:hover{color:#fff;text-decoration:none}.cta-button:hover{background:linear-gradient(90deg,#1e5ce6,#33a1ff);box-shadow:0 8px 24px rgba(37,110,255,.3);transform:translateY(-2px)}.cta-button:active{box-shadow:0 4px 12px rgba(37,110,255,.3);transform:translateY(0)}@media (max-width:992px){.image-gallery-module{padding:60px 20px}.gallery-grid{gap:20px}.gallery-header{margin-bottom:40px}.gallery-cta-section{margin-bottom:0;padding:40px 30px}}@media (max-width:768px){.image-gallery-module{padding:50px 16px}.gallery-grid{gap:24px;grid-template-columns:1fr}.gallery-header{margin-bottom:40px}.gallery-container{margin-bottom:60px}.gallery-cta-section{border-radius:12px;padding:40px 24px}.cta-button{max-width:280px;padding:14px 28px;width:100%}}@media (max-width:480px){.image-gallery-module{padding:40px 16px}.gallery-header{margin-bottom:32px}.gallery-container{margin-bottom:50px}.gallery-cta-section{padding:32px 20px}.zoom-icon{padding:12px}.zoom-icon svg{height:20px;width:20px}}.gallery-modal{bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:9999}.gallery-modal.active{opacity:1;visibility:visible}.modal-backdrop{background:rgba(0,0,0,.9);bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0}.modal-content{box-sizing:border-box;height:100%;padding:40px;position:relative;width:100%}.modal-close,.modal-content{align-items:center;display:flex;justify-content:center}.modal-close{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:none;border-radius:50%;cursor:pointer;height:50px;position:absolute;right:20px;top:20px;transition:all .3s ease;width:50px;z-index:10001}.modal-close:hover{background:hsla(0,0%,100%,.2);transform:scale(1.1)}.modal-image-container{align-items:center;display:flex;justify-content:center;max-height:90vh;max-width:90vw}.modal-image{border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);max-height:100%;max-width:100%;object-fit:contain;transform:scale(.9);transition:transform .3s ease}.gallery-modal.active .modal-image{transform:scale(1)}@media (max-width:768px){.modal-content{padding:20px}.modal-close{height:44px;right:10px;top:10px;width:44px}.modal-image-container{max-height:85vh;max-width:95vw}}