.gallery-page-container{margin-top:8px;max-width:1320px;padding:0 1rem 3rem;margin-left:auto;margin-right:auto}.no-images-message{text-align:center;padding:2rem 1rem;font-size:1rem;color:#555}.gallery-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;align-items:stretch}.gallery-item{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:12px;border:1px solid #e0e0e0;box-shadow:0 3px 8px rgba(0,0,0,.08);overflow:hidden;cursor:pointer;transition:transform 150ms ease,box-shadow 150ms ease;box-sizing:border-box}.gallery-item:hover{transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,.12)}.gallery-item>span{flex:0 0 auto;text-align:center;padding:10px 8px 14px;font-size:1rem;font-weight:600;color:#10243a;letter-spacing:.02em;min-height:2.6em}.gallery-item:hover>span{color:#003366}.gallery-media{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background-color:#000}.gallery-media img{width:100%;height:100%;display:block;max-width:100%;object-fit:cover}.video-thumb-wrapper{position:absolute;inset:0;overflow:hidden;background-color:#000;display:flex;align-items:center;justify-content:center}.video-thumb-wrapper video{width:100%;height:100%;max-width:100%;display:block;object-fit:cover;pointer-events:none}.video-thumb-wrapper .play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.modal{display:none;position:fixed;inset:0;z-index:1050;background-color:rgba(0,0,0,.85);overflow:auto}.modal-content{position:relative;box-sizing:border-box;background-color:#fff;margin:70px auto 40px;max-width:1100px;width:90%;padding:10px;border-radius:10px;text-align:center}.modal-image-container{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;max-width:100%}.modal-image-container img,.modal-image-container video{max-width:100%;max-height:80vh;width:auto;height:auto;display:block;background-color:#000;border-radius:10px}.modal-filename{margin-top:.35rem;font-size:.95rem;font-weight:600;color:#222}.modal strong{font-variant:small-caps;margin-right:6px}.fullscreen{position:absolute;right:16px;bottom:16px;padding:6px 10px;font-size:.8rem;border:none;border-radius:4px;background:rgba(0,0,0,.65);color:#fff;cursor:pointer}.close,.prev,.next{position:fixed;top:50%;transform:translateY(-50%);color:#fff;font-size:2.2rem;font-weight:600;cursor:pointer;user-select:none;padding:0 12px;text-shadow:0 0 6px rgba(0,0,0,.7);z-index:1100}.close{top:12px;right:20px;transform:none;font-size:2.4rem}.prev{left:10px}.next{right:10px}.modal.is-fullscreen{background-color:#000}.modal.is-fullscreen .modal-content{margin:0;max-width:none;width:100%;height:100%;border-radius:0;padding:0;background-color:#000}.modal.is-fullscreen .modal-image-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.modal.is-fullscreen .modal-image-container img,.modal.is-fullscreen .modal-image-container video{max-width:100%;max-height:100vh;border-radius:0}.modal.is-fullscreen .fullscreen{right:20px;bottom:20px}@media (max-width:767px){.modal-content{margin:40px auto 20px;padding-bottom:1.5rem}.close{right:12px;top:8px}}@media (max-width:575px){.gallery-container{grid-template-columns:repeat(2,1fr);gap:.75rem}}
