.ab-certificates{margin-top:clamp(48px,5vw,80px);scroll-margin-top:var(--about-anchor-offset, 80px)}.ab-cert-preview{display:block;position:relative;width:100%;overflow:hidden;border-radius:var(--r-inner);background:#fff;padding:0;border:1px solid var(--hair-soft);cursor:zoom-in}.ab-cert-preview img{display:block;width:100%;height:auto;aspect-ratio:842/595;-o-object-fit:contain;object-fit:contain}.ab-cert-preview>.btn{position:absolute;bottom:10px;right:10px;pointer-events:none}.ab-cert-preview:focus-visible{outline:3px solid hsl(var(--ring));outline-offset:4px}.ab-cert-dates{display:grid;gap:12px;width:100%;margin:0}.ab-cert-dates div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px}.ab-cert-dates dt{font:500 13.5px/20px var(--font-body);color:var(--fg-2)}.ab-cert-dates dd{margin:0;font:600 15px/20px var(--font-numeric);color:hsl(var(--foreground));font-variant-numeric:tabular-nums}.ab-cert-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}.ab-cert-count{margin:18px 0;color:hsl(var(--foreground) / var(--text-muted));font:450 13px/1.5 var(--font-body)}.ab-cert-show-more{display:flex;justify-content:center;margin-top:24px}.ab-cert-filters{scroll-margin-top:var(--about-anchor-offset, 80px)}.ab-cert-preview img,.ab-cert-full-image img{-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.ab-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ab-cert-card{padding:var(--pad-media);display:flex;flex-direction:column;gap:var(--gap-compact);min-width:0}.ab-cert-card .ab-cert-preview{border:0;border-radius:var(--r-inner);box-shadow:inset 0 0 0 .5px var(--g-hair)}.ab-cert-card .ab-cert-preview img{aspect-ratio:640 / 452;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top}.ab-cert-card-copy{display:flex;flex:1;flex-direction:column;gap:8px;padding:4px 8px 8px}.ab-cert-card-meta{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:8px;font:var(--fw-label, 650) 12px/16px var(--font-body);letter-spacing:.02em;text-transform:uppercase;color:var(--fg-2)}.ab-cert-card h4{margin:0;font:700 16px/22px var(--font-display);letter-spacing:-.01em;color:var(--fg);overflow-wrap:anywhere}.ab-cert-card .ab-cert-dates{margin-top:auto;padding-top:4px;gap:0}.ab-cert-card .ab-cert-dates div{padding:12px 0 0;border-top:1px solid var(--g-hair)}.ab-cert-card .ab-cert-dates dt{font:500 13.5px/20px var(--font-body);color:var(--fg-2)}.ab-cert-card .ab-cert-dates dd{font:600 15px/20px var(--font-numeric);font-variant-numeric:tabular-nums;color:var(--fg)}.ab-cert-dialog{width:min(1280px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 32px);padding:0;border:1px solid var(--hair);border-radius:24px;background:hsl(var(--background));color:hsl(var(--foreground));box-shadow:0 32px 100px #0006}.ab-cert-dialog::backdrop{background:#000b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ab-cert-viewer{display:flex;flex-direction:column;max-height:calc(100svh - 34px)}.ab-cert-viewer header,.ab-cert-viewer footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px}.ab-cert-viewer header h4{margin:4px 0 0;font:750 clamp(17px,1.5vw,24px)/1.4 var(--font-display)}.ab-cert-viewer header p,.ab-cert-viewer footer p{margin:0;font:450 13px/1.6 var(--font-body);color:hsl(var(--foreground) / var(--text-muted))}.ab-cert-full-image{min-height:0;overflow:auto;background:#fff}.ab-cert-full-image img{display:block;width:100%;height:auto;-o-object-fit:contain;object-fit:contain}.ab-cert-viewer-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.ab-cert-viewer-controls>span{min-width:44px;text-align:center;font-size:13px}@media (max-width: 700px){.ab-cert-dialog{width:calc(100vw - 16px);border-radius:var(--r-card);max-height:calc(100svh - 24px)}.ab-cert-viewer{max-height:calc(100svh - 26px)}.ab-cert-viewer header,.ab-cert-viewer footer{padding:16px;align-items:flex-start}.ab-cert-viewer footer{flex-direction:column;align-items:stretch}.ab-cert-viewer-controls{justify-content:space-between}}.ab-certificates .ab-cert-card{min-width:0}@media (max-width: 1100px){.ab-cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.ab-cert-grid{grid-template-columns:minmax(0,1fr)}.ab-cert-filters{gap:6px}}
