.certs-page{display:flex;flex-direction:column;gap:var(--space-6);text-align:center}.certs-page,.certs-page .workspace-header{align-items:center}.certs-page .ui-filter-pills,.certs-page .workspace-header__context{justify-content:center}.certs-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-self:stretch;width:100%;max-width:100%}.certs-card{padding:var(--space-3);overflow:hidden;background:color-mix(in srgb,var(--color-surface) 48%,transparent);box-shadow:none;transition:border-color .3s var(--ease-out)}.certs-card,.certs-card__open{display:flex;flex-direction:column}.certs-card__open{align-items:center;gap:var(--space-3);width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:center;cursor:pointer}.certs-card__open:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:var(--radius-md)}.certs-card:hover{border-color:var(--border-active)}.certs-card__image{width:100%;height:132px;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-sm);transition:opacity .2s ease}.certs-card.is-expanded,.certs-card.is-expanded .certs-card__image,.certs-card.is-expanded:hover,.certs-card.is-expanded:hover .certs-card__image,.certs-card:hover .certs-card__image{transform:none}.certs-card.is-expanded .certs-card__image{opacity:0}.certs-card h3{margin:0;text-wrap:pretty}.certs-card .ui-badge{margin-inline:auto}.certs-lightbox{position:fixed;inset:0;z-index:var(--z-modal);isolation:isolate}.certs-lightbox__backdrop{position:absolute;inset:0;z-index:0;padding:0;border:0;background:color-mix(in srgb,var(--color-canvas-deep) 72%,transparent);-webkit-backdrop-filter:blur(var(--glass-blur,5px));backdrop-filter:blur(var(--glass-blur,5px));cursor:zoom-out;opacity:0;transition:opacity .42s var(--ease-out)}.certs-lightbox.is-ready .certs-lightbox__backdrop{opacity:1}.certs-lightbox.is-closing .certs-lightbox__backdrop{opacity:0;transition-duration:.38s}.certs-lightbox__stage{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:clamp(52px,6vw,72px) clamp(64px,8vw,88px) clamp(64px,8vw,80px);pointer-events:none}.certs-lightbox__frame{position:relative;pointer-events:auto;touch-action:pan-y;transform-origin:center center;will-change:transform;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 28px 80px color-mix(in srgb,#000 42%,transparent)}.certs-lightbox.is-closing .certs-lightbox__frame{opacity:0}.certs-lightbox__image{object-fit:contain}.certs-lightbox__close{position:absolute;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));z-index:2;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--color-border);border-radius:50%;background:color-mix(in srgb,var(--color-surface-glass) 88%,transparent);-webkit-backdrop-filter:blur(var(--glass-blur,5px));backdrop-filter:blur(var(--glass-blur,5px));color:var(--color-text);font-size:1.75rem;line-height:1;cursor:pointer;opacity:0;transform:scale(.92);transition:opacity .28s var(--ease-out) .22s,transform .28s var(--ease-out) .22s,border-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out)}.certs-lightbox.is-ready .certs-lightbox__close{opacity:1;transform:scale(1)}.certs-lightbox.is-closing .certs-lightbox__close{opacity:0;transform:scale(.92);transition-delay:0s}.certs-lightbox__close:hover{border-color:var(--color-teal);color:var(--color-teal)}.certs-lightbox__close:focus-visible,.certs-lightbox__nav:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.certs-lightbox__nav{position:absolute;top:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--color-border);border-radius:50%;background:color-mix(in srgb,var(--color-surface-glass) 88%,transparent);-webkit-backdrop-filter:blur(var(--glass-blur,5px));backdrop-filter:blur(var(--glass-blur,5px));color:var(--color-text);cursor:pointer;opacity:0;transform:translateY(-50%) scale(.92);transition:opacity .28s var(--ease-out) .22s,transform .28s var(--ease-out) .22s,border-color var(--duration) var(--ease-out),color var(--duration) var(--ease-out)}.certs-lightbox__nav--prev{left:max(16px,env(safe-area-inset-left))}.certs-lightbox__nav--next{right:max(16px,env(safe-area-inset-right))}.certs-lightbox.is-ready .certs-lightbox__nav{opacity:1;transform:translateY(-50%) scale(1)}.certs-lightbox.is-closing .certs-lightbox__nav{opacity:0;transform:translateY(-50%) scale(.92);transition-delay:0s}.certs-lightbox__nav:hover:not(:disabled){border-color:var(--color-teal);color:var(--color-teal)}.certs-lightbox__nav:disabled{pointer-events:none}.certs-lightbox__nav--prev:hover:not(:disabled){transform:translateY(-50%) translateX(-2px) scale(1)}.certs-lightbox__nav--next:hover:not(:disabled){transform:translateY(-50%) translateX(2px) scale(1)}.certs-lightbox__meta{position:absolute;bottom:max(16px,env(safe-area-inset-bottom));left:50%;z-index:2;display:flex;flex-direction:column;align-items:center;gap:4px;max-width:min(92vw,720px);padding:0 16px;color:var(--color-text);text-align:center;pointer-events:none;opacity:0;transform:translateX(-50%) translateY(8px);transition:opacity .28s var(--ease-out) .22s,transform .28s var(--ease-out) .22s}.certs-lightbox.is-ready .certs-lightbox__meta{opacity:1;transform:translateX(-50%) translateY(0)}.certs-lightbox.is-closing .certs-lightbox__meta{opacity:0;transform:translateX(-50%) translateY(8px);transition-delay:0s}.certs-lightbox__title{margin:0;overflow:hidden;max-width:100%;font-size:var(--text-caption);font-weight:500;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap}.certs-lightbox__counter{margin:0;color:var(--color-text-dim);font-size:var(--text-caption);letter-spacing:.04em}@media(max-width:1023px){.certs-grid{grid-template-columns:1fr 1fr}}@media(max-width:767px){.certs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.certs-card{padding:var(--space-3)}.certs-card__image{height:96px}.certs-card h3{font-size:.8125rem;line-height:1.3}.certs-lightbox__stage{padding:clamp(52px,10vh,72px) 12px 72px}.certs-lightbox__nav{width:40px;height:40px}}@keyframes certZoom{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.certs-card{animation:none}.certs-card:hover,.certs-card:hover .certs-card__image{transform:none}.certs-lightbox__backdrop,.certs-lightbox__close,.certs-lightbox__meta,.certs-lightbox__nav{transition-duration:.16s;transition-delay:0s}.certs-lightbox__nav--next:hover,.certs-lightbox__nav--prev:hover{transform:translateY(-50%) scale(1)}}