.gl-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px}.gl-filter{border:1.5px solid rgba(0,0,128,.22);background:var(--cream);color:var(--navy);font-family:inherit;font-size:14px;font-weight:700;padding:8px 18px;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.gl-filter:hover{border-color:var(--teal);background:#fff;color:var(--navy)}.gl-filter--active{background:var(--navy);border-color:var(--navy);color:#fff}.gl-grid{column-count:3;column-gap:18px}.gl-item{position:relative;display:block;width:100%;margin:0 0 18px;border-radius:16px;overflow:hidden;page-break-inside:avoid;break-inside:avoid;box-shadow:var(--shadow-sm);background:var(--bg-alt);-webkit-tap-highlight-color:transparent;padding:0;border:0;cursor:pointer}[data-js] .gl-item{opacity:0;transform:translateY(20px) scale(.98)}[data-js] .gl-item.is-in{opacity:1;transform:none;transition:opacity .55s cubic-bezier(.22,1,.36,1) var(--d,0s),transform .55s cubic-bezier(.22,1,.36,1) var(--d,0s)}@media (prefers-reduced-motion:reduce){[data-js] .gl-item,[data-js] .gl-item.is-in{opacity:1;transform:none;transition:none}}.gl-item img{width:100%;height:auto;display:block;transition:transform .5s var(--ease)}.gl-item:hover img{transform:scale(1.05)}.gl-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:16px;text-align:left;background:linear-gradient(0deg,rgba(0,0,64,.78),transparent 55%);opacity:0;transition:opacity .3s}.gl-item:hover .gl-overlay{opacity:1}.gl-cat{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--teal)}.gl-label{font-family:var(--font-display);font-size:17px;font-weight:700;color:#fff}.gl-modal{position:fixed;inset:0;height:100vh;height:100dvh;z-index:200;--gl-chrome:116px;background:rgba(5,5,40,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:8px;gap:8px;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));overflow:hidden;overscroll-behavior:contain;animation:gl-fade .25s ease}@keyframes gl-fade{0%{opacity:0}to{opacity:1}}.gl-figure{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:1000px;max-height:100%;min-height:0;min-width:0;margin:0 auto;text-align:center}.gl-figure img{width:auto;height:auto;max-width:100%;max-height:calc(100vh - var(--gl-chrome));max-height:calc(100dvh - var(--gl-chrome));object-fit:contain;border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.5);margin:0 auto}.gl-figure figcaption{flex-shrink:0;color:rgba(255,255,255,.85);font-size:14px;margin-top:14px}.gl-figure figcaption strong{color:var(--teal)}.gl-close{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(22px,env(safe-area-inset-right));width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:18px;z-index:2}.gl-close:hover{background:var(--teal);color:#00343a}.gl-arrow{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:30px;line-height:1;display:grid;place-items:center;flex-shrink:0}.gl-arrow:hover{background:var(--teal);color:#00343a}@media (max-width:860px){.gl-grid{columns:unset;grid-column-gap:normal;column-gap:normal;display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.gl-item{margin:0;display:flex;flex-direction:column}.gl-item img{aspect-ratio:4/3;object-fit:cover}.gl-overlay{position:static;opacity:1;background:none;justify-content:flex-start;padding:11px 13px 14px;gap:3px}.gl-label{color:var(--navy);font-size:15px;line-height:1.25}}@media (max-width:520px){.gl-modal{grid-template-columns:1fr;--gl-chrome:190px}.gl-arrow{position:absolute;bottom:max(24px,env(safe-area-inset-bottom))}.gl-arrow--prev{left:max(24px,env(safe-area-inset-left))}.gl-arrow--next{right:max(24px,env(safe-area-inset-right))}}@media (max-width:380px){.gl-grid{grid-template-columns:1fr}}