.photo-viewer-modal-overlay,div[data-viewer-type=centered-modal].photo-viewer-modal-overlay{animation:.2s ease-in-out fadeIn;z-index:var(--z-notification)!important;flex-direction:initial!important;background:#000000d9!important;width:100vw!important;height:100vh!important;display:block!important;position:fixed!important;inset:0!important}.photo-viewer-modal,div[data-viewer-type=centered-modal].photo-viewer-modal{animation:.3s ease-out slideIn;width:95vw!important;max-width:1400px!important;height:90vh!important;z-index:var(--z-notification)!important;box-shadow:none!important;flex-direction:initial!important;background:0 0!important;border:none!important;display:block!important;position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.photo-viewer-modal .modal-content{background:#000000f2;border:none;border-radius:0}.photo-viewer-modal .modal-dialog{max-width:95vw;margin:0 auto}.photo-viewer-body{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex;position:relative}.photo-viewer-close{z-index:var(--z-popover);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:2rem;font-weight:300;line-height:1;transition:all .2s;display:flex;position:absolute;top:20px;right:20px;box-shadow:0 2px 10px #0000004d}.photo-viewer-close:hover{background:#fff6;border-color:#fffc;transform:scale(1.05)}.photo-viewer-container{-webkit-user-select:none;user-select:none;flex:1;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.photo-viewer-image{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;max-height:70vh}.photo-viewer-caption{color:#fff;z-index:var(--z-modal-backdrop);text-align:center;background:#000000b3;border-radius:4px;max-width:80%;padding:8px 16px;font-size:1rem;position:absolute;top:20px;left:50%;transform:translate(-50%)}.photo-viewer-nav{color:#fff;cursor:pointer;width:55px;height:55px;z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;font-size:3rem;font-weight:300;line-height:1;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #0000004d}.photo-viewer-nav:hover{background:#fff6;border-color:#fffc;transform:translateY(-50%)scale(1.05)}.photo-viewer-prev{left:20px}.photo-viewer-next{right:20px}.photo-viewer-controls{z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:30px;gap:12px;margin-bottom:-60px;padding:12px 16px;display:flex;position:absolute;bottom:50%;left:50%;transform:translate(-50%,50%);box-shadow:0 4px 15px #0006}.photo-viewer-controls button{color:#fff;cursor:pointer;background:#ffffff40;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.5rem;font-weight:400;line-height:1;transition:all .2s;display:flex;box-shadow:0 2px 8px #0003}.photo-viewer-controls button:hover:not(:disabled){background:#fff6;border-color:#fff9;transform:scale(1.05)}.photo-viewer-controls button:disabled{opacity:.3;cursor:not-allowed;border-color:#fff3}.photo-viewer-footer{z-index:var(--z-modal-backdrop);position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.btn-view-details{border-radius:25px;padding:10px 24px;font-size:1rem;box-shadow:0 2px 8px #0000004d}.photo-viewer-counter{color:#fff;z-index:var(--z-modal-backdrop);background:#000000b3;border-radius:15px;padding:6px 12px;font-size:.9rem;position:absolute;bottom:20px;right:20px}@media (max-width:768px){.photo-viewer-nav{width:40px;height:40px;font-size:1.5rem}.photo-viewer-prev{left:10px}.photo-viewer-next{right:10px}.photo-viewer-controls{margin-bottom:-50px;bottom:50%}.photo-viewer-controls button{width:35px;height:35px;font-size:1rem}.photo-viewer-close{width:35px;height:35px;top:10px;right:10px}.photo-viewer-caption{font-size:.9rem;top:10px}}
.gl-carousel{box-sizing:border-box;width:100%;max-width:980px;margin:0 auto 1rem;position:relative}.gl-carousel:focus{outline:2px solid #0000001f}.gl-viewport{align-items:center;display:flex;overflow:hidden}.gl-slide{flex:0 0 100%;justify-content:center;align-items:center;min-width:100%;display:none}.gl-slide.active{display:block}.gl-slide img,.gl-slide .gl-slide-img{border-radius:6px;width:100%;height:auto;transition:transform .3s,box-shadow .3s;display:block}.gl-slide .gl-slide-img:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.gl-caption{color:var(--color-text-secondary,#868686);padding:.5rem 0;font-size:.95rem}.gl-prev,.gl-next{color:var(--color-active-text,var(--color-card-bg));cursor:pointer;background:#000000a6;border:none;border-radius:4px;padding:.5rem .75rem;position:absolute;top:50%;transform:translateY(-50%)}.gl-prev{left:8px}.gl-next{right:8px}.gl-prev:focus,.gl-next:focus{box-shadow:0 0 0 3px #007bff40}.gl-dots{justify-content:center;gap:6px;margin-top:8px;display:flex}.gl-dot{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.gl-dot:before{content:"";background:#00000040;border-radius:50%;width:10px;height:10px}.gl-dot.active:before{background:#000000b3}.gl-loading{padding:1rem}.gl-skeleton{background:linear-gradient(90deg, var(--color-skeleton-base,#e9e9e9) 25%, var(--color-skeleton-highlight,#f5f5f5) 50%, var(--color-skeleton-base,#e9e9e9) 75%);background-size:200% 100%;border-radius:6px;height:220px;animation:1.2s linear infinite gl-shimmer}@keyframes gl-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (min-width:720px){.gl-slide img,.gl-slide .gl-slide-img{object-fit:cover;max-height:420px}}
