.certificates-page{width:min(100%,1400px);margin:auto;padding-inline:var(--page-gutter)}
.certificates-intro{padding:34px 0 64px}.back-link{font-size:.82rem;color:var(--muted)}.back-link:hover{color:#fff}
.intro-layout{display:grid;grid-template-columns:1fr 220px;gap:50px;align-items:end;margin-top:53px}
.certificates-intro h1{font-size:clamp(2.7rem,5.5vw,4.8rem);line-height:1.08;letter-spacing:-.06em;margin:20px 0 24px}.certificates-intro h1 span,.certificate-contact h2 span{color:#a8a8a8}.certificates-intro p{max-width:620px;color:var(--muted);margin:0}
.certificate-total{padding:18px 0 8px 30px;border-left:1px solid var(--border);display:flex;flex-direction:column}.certificate-total strong{font-size:5.5rem;font-weight:600;line-height:1.15;letter-spacing:-.07em}.certificate-total strong span{font-size:2rem;vertical-align:top;margin-left:20px;color:#888}.certificate-total>span{font-size:1.1rem}.certificate-total small{font-size:.77rem;color:var(--muted);margin-top:8px}
.certificate-library{border-top:1px solid var(--border);padding:43px 0 72px}.library-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.library-top h2{font-size:1.6rem;letter-spacing:-.04em;margin:0}.library-top h2 span{color:#777}.search-box{position:relative;width:min(100%,340px)}.search-box input{width:100%;min-height:46px;border:1px solid var(--border);border-radius:8px;background:#121212;color:#fff;padding:10px 40px 10px 15px;font:inherit;font-size:.86rem}.search-box>span{position:absolute;right:15px;top:4px;font-size:1.5rem;color:#bbb;pointer-events:none}.search-box input::placeholder{color:#aaa}
.certificate-controls .project-filters{gap:8px;margin-top:25px}.certificate-controls .filter-btn{font-size:.78rem;padding:8px 15px;border-color:#414141}
#certificate-count{font-size:.78rem;color:var(--muted);margin:22px 0 18px}.certificates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.certificate-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);transition:border-color .2s,transform .2s}.certificate-card:hover{border-color:#777;transform:translateY(-3px)}
.certificate-preview{position:relative;aspect-ratio:1.414;display:block;background:#1a1a1a;padding:12px;border-bottom:1px solid var(--border);overflow:hidden}.certificate-preview img{width:100%;height:100%;display:block;object-fit:contain}.preview-action{position:absolute;bottom:20px;right:20px;padding:4px 9px;border:1px solid #777;border-radius:5px;background:#080808e8;color:#fff;font-size:.7rem;opacity:0;transition:opacity .2s}.certificate-preview:hover .preview-action,.certificate-preview:focus-visible .preview-action{opacity:1}
.certificate-content{display:flex;flex-direction:column;flex:1;padding:20px}.certificate-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:.69rem;color:var(--muted)}.certificate-card h2{font-size:1rem;line-height:1.45;letter-spacing:-.02em;margin:13px 0 20px;overflow-wrap:break-word}.certificate-bottom{display:flex;align-items:flex-start;flex-direction:column;gap:14px;margin-top:auto}.certificate-category{font-size:.65rem;color:#c9c9c9;background:#252525;border-radius:4px;padding:4px 8px}.certificate-bottom a{font-size:.8rem;font-weight:600}.certificate-bottom a:hover{text-decoration:underline;text-underline-offset:4px}
#certificate-empty{text-align:center;padding:70px 15px;border:1px dashed var(--border);border-radius:14px}#certificate-empty h3{font-size:1.3rem}#certificate-empty p{color:var(--muted)}
.certificate-contact{padding:64px 0 84px;border-top:1px solid var(--border);text-align:center}.certificate-contact h2{font-size:clamp(1.8rem,3.8vw,3rem);line-height:1.2;letter-spacing:-.04em;margin:18px 0 28px}
#certificate-dialog{padding:0;width:min(1100px,94vw);max-height:94vh;border:1px solid #555;border-radius:14px;background:#121212;color:#fff;box-shadow:0 30px 100px #0008}#certificate-dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}.dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-bottom:1px solid var(--border)}.dialog-bar h2{font-size:.9rem;line-height:1.4;margin:0}.dialog-bar button{flex:none;background:#282828;color:#fff;border:1px solid #555;border-radius:8px;width:44px;height:44px;cursor:pointer}.dialog-image{padding:16px;text-align:center;background:#080808}.dialog-image img{max-width:100%;max-height:70vh;width:auto;height:auto;object-fit:contain}.dialog-footer{display:flex;justify-content:space-between;gap:16px;padding:13px 20px;font-size:.75rem}.dialog-footer span{color:var(--muted)}.dialog-footer a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:768px){.certificates-page~footer{margin-top:0}#navbar .nav-links{gap:clamp(12px,2vw,26px)}}
@media(max-width:1000px){.certificates-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-layout{grid-template-columns:1fr 160px;gap:25px}.certificate-total{padding-left:20px}.certificate-total strong{font-size:4.4rem}}
@media(max-width:600px){.intro-layout{grid-template-columns:1fr;margin-top:34px;gap:28px}.certificate-total{border-left:0;border-top:1px solid var(--border);padding:22px 0 0;display:grid;grid-template-columns:auto 1fr;gap:0 16px;align-items:center}.certificate-total strong{grid-row:span 2;font-size:3.8rem}.certificate-total strong span{display:none}.certificate-total small{margin:0}.certificates-intro{padding-bottom:36px}.library-top{align-items:stretch;flex-direction:column}.search-box{width:100%}.certificates-grid{grid-template-columns:1fr;gap:20px}.certificate-library{padding-top:30px}.dialog-footer{flex-direction:column}.dialog-image{padding:8px}.certificate-controls .project-filters{gap:7px}.certificate-controls .filter-btn{padding:7px 11px;font-size:.75rem}.certificate-preview{padding:12px}.preview-action{opacity:1}}
