.media-gallery{--mg-white:#fff;--mg-text-primary:#2c5530;--mg-text-secondary:#334155;--mg-border:#cbd5e1;--mg-border-hover:#94a3b8;--mg-border-strong:#e2e8f0;--mg-focus:#28a745;--mg-brand-primary:#2c5530;--mg-brand-accent:#28a745;--mg-brand-accent-hover:#218838;--mg-accent-shadow:#2c55304d;--mg-overlay-page:#020617d6;--mg-overlay-dark:#0f172ad1;--mg-overlay-caption:#0f172ac2;--mg-overlay-black:#000000bf;--mg-focus-ring:#28a74547;--mg-soft-shadow:0 3px 16px #0f172a14;--mg-lift-shadow:0 12px 26px #0f172a29;--mg-button-shadow:0 8px 18px #02061752;--mg-radius-pill:9999px;--mg-radius-card:1rem;--mg-radius-empty:.75rem;--mg-radius-caption:.85rem;--mg-radius-caption-mobile:.7rem;flex-direction:column;gap:2rem;display:flex}.media-gallery-filters{flex-wrap:wrap;align-items:center;gap:.875rem;margin:0 -.1rem;padding:.1rem;display:flex}.media-gallery-filter-btn{border:1px solid var(--mg-border);border-radius:var(--mg-radius-pill);background:var(--mg-white);color:var(--mg-brand-primary);cursor:pointer;align-items:center;gap:.65rem;min-height:2.85rem;padding:.7rem 1.25rem;font-size:.95rem;font-weight:600;line-height:1.2;transition:border-color .2s,background .2s,color .2s,box-shadow .2s;display:inline-flex}.media-gallery-filter-btn:hover{border-color:var(--mg-brand-primary);box-shadow:0 6px 14px #2c553024}.media-gallery-filter-btn:focus-visible{outline:2px solid var(--mg-focus);outline-offset:2px}.media-gallery-filter-btn.is-active{border-color:var(--mg-brand-primary);background:var(--mg-brand-primary);color:var(--mg-white);box-shadow:0 8px 20px var(--mg-accent-shadow)}.media-gallery-filter-count{border-radius:var(--mg-radius-pill);justify-content:center;align-items:center;min-width:1.5rem;height:1.5rem;padding:0 .35rem;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex}.media-gallery-filter-count.is-inactive{color:var(--mg-brand-primary);background:#2c55301f}.media-gallery-filter-count.is-active{color:var(--mg-white);background:#ffffff40}.media-gallery-empty{border:1px solid var(--mg-border);border-radius:var(--mg-radius-empty);color:var(--mg-text-secondary);background:#f8fafc;margin:0;padding:.8rem 1rem;font-size:1rem;line-height:1.45}.media-gallery-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}.media-gallery-card{border:1px solid var(--mg-border-strong);border-radius:var(--mg-radius-card);background:var(--mg-white);text-align:left;cursor:pointer;box-shadow:var(--mg-soft-shadow);transition:transform .2s,box-shadow .2s;overflow:hidden}.media-gallery-card:hover{border-color:var(--mg-border);box-shadow:var(--mg-lift-shadow);transform:translateY(-2px)}.media-gallery-card:focus{outline:none}.media-gallery-card:focus-visible{border-color:var(--mg-focus);box-shadow:0 0 0 2px var(--mg-focus-ring),var(--mg-lift-shadow)}.media-gallery-preview{aspect-ratio:16/11;background:#e2e8f0;width:100%;position:relative}.media-gallery-image,.media-gallery-video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.media-gallery-video-badge{border-radius:var(--mg-radius-pill);background:var(--mg-overlay-black);width:2rem;height:2rem;color:var(--mg-white);justify-content:center;align-items:center;font-size:.85rem;display:inline-flex;position:absolute;bottom:.65rem;right:.65rem}.media-gallery-modal{z-index:1100;background:var(--mg-overlay-page);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;padding:.75rem;display:flex;position:fixed;inset:0}.media-gallery-modal-inner{justify-content:center;align-items:center;width:min(1200px,100%);height:min(88vh,920px);display:flex;position:relative}.media-gallery-modal-close,.media-gallery-modal-nav{z-index:6;border-radius:var(--mg-radius-pill);background:var(--mg-brand-primary);width:2.6rem;height:2.6rem;color:var(--mg-white);cursor:pointer;border:0;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s,box-shadow .2s;display:inline-flex;position:absolute}.media-gallery-modal-close:hover,.media-gallery-modal-nav:hover{background:var(--mg-brand-accent-hover);color:var(--mg-white);box-shadow:var(--mg-button-shadow)}.media-gallery-modal-close:focus,.media-gallery-modal-nav:focus{outline:none}.media-gallery-modal-close:focus-visible,.media-gallery-modal-nav:focus-visible{background:var(--mg-brand-accent-hover);color:var(--mg-white);box-shadow:0 0 0 3px var(--mg-focus-ring)}.media-gallery-modal-close{font-size:1.15rem;top:.35rem;right:.35rem}.media-gallery-modal-nav{top:50%;transform:translateY(-50%)}.media-gallery-modal-nav-icon{stroke:currentColor;stroke-width:2.5px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem;display:block}.media-gallery-modal-prev{left:.35rem}.media-gallery-modal-next{right:.35rem}.media-gallery-modal-media{z-index:1;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;display:flex;position:relative}.media-gallery-modal-loader{z-index:2;pointer-events:none;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.media-gallery-modal-spinner{border:3px solid #ffffff4d;border-top-color:var(--mg-white);border-radius:var(--mg-radius-pill);width:2.2rem;height:2.2rem;animation:.85s linear infinite media-gallery-spin}.media-gallery-modal-loader-text{color:#f8fafc;white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;margin:0;font-size:.85rem;font-weight:600;line-height:1.2;display:block}.media-gallery-modal-media.is-loading .media-gallery-modal-image,.media-gallery-modal-media.is-loading .media-gallery-modal-video{opacity:0}.media-gallery-modal-image,.media-gallery-modal-video{-o-object-fit:contain;object-fit:contain;width:auto;max-width:100%;max-height:100%;transition:opacity .2s;display:block}.media-gallery-modal-caption{z-index:5;border-radius:var(--mg-radius-caption);background:var(--mg-overlay-caption);color:#f8fafc;text-align:center;word-break:normal;overflow-wrap:normal;pointer-events:none;max-width:min(90vw,860px);margin:0;padding:.5rem .9rem;font-size:.82rem;line-height:1.3;position:absolute;bottom:.35rem;left:50%;transform:translate(-50%)}@media (min-width:720px){.media-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1180px){.media-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1024px){.media-gallery-modal-caption{white-space:nowrap;text-overflow:ellipsis;max-width:min(86vw,520px);padding:.45rem .8rem;font-size:.78rem;line-height:1.25;bottom:.75rem;overflow:hidden}}@media (max-width:768px){.media-gallery-filter-btn{padding:.66rem 1rem}.media-gallery-modal-inner{height:min(90vh,900px)}.media-gallery-modal-caption{border-radius:var(--mg-radius-caption-mobile);max-width:calc(100vw - 7.5rem);padding:.42rem .72rem;font-size:.74rem;line-height:1.2;bottom:3.35rem}.media-gallery-modal-nav{top:auto;bottom:.35rem;transform:none}.media-gallery-modal-prev{left:.35rem}.media-gallery-modal-next{right:.35rem}}@keyframes media-gallery-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
