.certificates-page{background:#fff;color:#141414}
.certificates-page .cert-hero{padding:55px 6vw 64px;background:#111;color:#fff;border-bottom:5px solid var(--orange)}
.cert-back{display:inline-block;margin-bottom:32px;font-size:12px;color:#bdbdbd}
.cert-hero h1{font-size:clamp(38px,5.2vw,72px);line-height:1.05;letter-spacing:-.045em;margin:0 0 24px;text-transform:uppercase;max-width:1050px}
.cert-hero .cert-lead{max-width:790px;font-size:clamp(16px,1.6vw,22px);line-height:1.6;color:#fff}
.cert-hero>p:last-child{font-size:14px;color:#c4c4c4;margin-bottom:0}
.cert-content{padding:40px 6vw 80px}
.cert-groups-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:40px}
.cert-groups-nav a{position:relative;padding:26px 40px 26px 22px;border:1px solid #ddd;min-height:145px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;transition:border-color .2s,background .2s,transform .2s}
.cert-groups-nav a:hover{border-color:var(--orange);background:#fff6ee;transform:translateY(-3px)}
.cert-groups-nav span{font-family:Montserrat,Arial,sans-serif;font-size:18px;font-weight:800;line-height:1.3}
.cert-groups-nav small{font-size:12px;color:#666}
.cert-groups-nav b{position:absolute;right:18px;bottom:22px;color:var(--orange);font-size:24px}
.cert-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,300px) auto;gap:18px;align-items:end;padding:24px;background:#f4f4f4}
.cert-controls label{font-size:12px;font-weight:700;display:grid;gap:10px;min-width:0}
.cert-controls input,.cert-controls select{width:100%;min-width:0;height:48px;border:1px solid #ccc;background:white;color:#111;border-radius:0;padding:0 12px;font:inherit;font-size:14px}
.cert-reset{height:48px;border:1px solid #111;background:#111;color:white;padding:0 20px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.cert-reset:hover{background:var(--orange);border-color:var(--orange);color:#000}
.cert-status{font-size:12px;color:#666;min-height:18px;margin:16px 0 30px}
.cert-group{padding:0;margin:0 0 50px;scroll-margin-top:110px}
.cert-group-heading{display:flex;align-items:center;gap:18px;border-bottom:2px solid #111;padding-bottom:18px;margin-bottom:22px}
.cert-group h2{font-size:clamp(24px,2.4vw,36px);line-height:1.2;margin:0;letter-spacing:-.03em}
.cert-count{background:var(--orange);font-size:12px;font-weight:800;padding:6px 10px}
.cert-documents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cert-document{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #ddd;transition:border-color .2s,box-shadow .2s}
.cert-document:hover{border-color:var(--orange);box-shadow:0 8px 24px #0000000a}
.cert-document-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#666;margin-bottom:20px}
.cert-type{background:#fff1e6;color:#9c3c00;padding:7px 9px;font-weight:700}
.cert-document h3{font-size:17px;line-height:1.4;margin:0 0 12px;overflow-wrap:anywhere;letter-spacing:-.02em}
.cert-document p{font-size:13px;color:#666;line-height:1.6;margin:0 0 18px}
.cert-document .cert-validity{font-size:11px;color:#444}
.cert-download{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--orange);color:#000;padding:14px 16px;margin-top:auto;font-size:12px;font-weight:800;transition:background .2s,color .2s}
.cert-download:hover{background:#111;color:white}
.certificates-page :focus-visible{outline:3px solid var(--orange);outline-offset:4px}
.certificates-page [hidden]{display:none!important}
.cert-empty{padding:32px;border:1px solid #ddd}
.certificates-page .catalog-footer{gap:20px;flex-wrap:wrap}
@media(max-width:1000px){.cert-groups-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.cert-documents{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.certificates-page .cert-hero{padding:32px 6vw 40px}.cert-content{padding-top:24px}.cert-groups-nav{gap:10px;margin-bottom:24px}.cert-groups-nav a{padding:18px 24px 18px 14px;min-height:145px}.cert-groups-nav span{font-size:14px}.cert-groups-nav small{font-size:10px}.cert-controls{grid-template-columns:1fr;padding:18px;gap:14px}.cert-documents{grid-template-columns:1fr}.cert-document{padding:20px}.cert-group-heading{gap:10px}.cert-count{flex-shrink:0}.cert-reset{width:100%}}
@media(prefers-reduced-motion:reduce){.certificates-page *{transition:none!important}}@media(max-width:600px){.cert-hero h1{font-size:clamp(30px,8vw,38px)}}
