/* Equal-size document cards and a separate, readable qualification overview. */
#credential-templates,#qualification-details{scroll-margin-top:110px}
.credential-section{margin-top:54px}
.credential-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}
.credential-eyebrow{margin:0 0 8px;color:#3157b5;font-size:11px;font-weight:800;letter-spacing:.1em}
.credential-section-header h3{font-size:25px;line-height:1.45;letter-spacing:-.02em;word-break:keep-all}
.credential-intro{margin:8px 0 0;color:#526780;font-size:14px;line-height:1.8;word-break:keep-all}
.credential-section-header .availability-tag{flex-shrink:0;margin-bottom:4px}
.credential-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.credential-grid .credential-card{min-width:0;display:flex;flex-direction:column;padding:22px;border:1px solid #d9e3f1;border-radius:12px;background:#fff;box-shadow:0 6px 20px #182e5010}
.credential-card header{min-height:106px}
.credential-kicker{display:inline-block;margin-bottom:7px;color:#2a58b2;font-size:11px;font-weight:800;letter-spacing:.03em}
.credential-grid .credential-card h4{margin:0 0 5px;color:#162b48;font-size:19px;line-height:1.45}
.credential-grid .credential-card header p{margin:0;color:#526780;font-size:13px;line-height:1.6;word-break:keep-all}
.credential-grid .credential-card figure{width:100%;max-width:none;margin:0 0 13px}
.credential-visual{position:relative;display:flex;height:224px;align-items:center;justify-content:center;padding:12px 12px 34px;background:linear-gradient(145deg,#eef3fa,#e6edf8);border:1px solid #dae4f2;border-radius:8px;text-decoration:none;transition:background .2s,border-color .2s}
.credential-visual:hover{background:#e5edf9;border-color:#809ad4}
.credential-visual:focus-visible,.credential-card-action:focus-visible,.qualification-official:focus-visible,.qualification-details summary:focus-visible{outline:3px solid #2046d8;outline-offset:4px}
.credential-visual img{display:block;height:100%;width:auto;max-width:90%;aspect-ratio:210/297;object-fit:contain;background:#fff;box-shadow:0 4px 14px #192d4822}
.credential-enlarge{position:absolute;bottom:9px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;color:#244999;font-size:12px;font-weight:700}
.credential-grid .credential-card figcaption{margin-top:7px;color:#65778e;font-size:11px;line-height:1.5}
.credential-grid .credential-card-copy{min-height:50px;margin:0 0 14px;color:#405a76;font-size:13px;line-height:1.8;word-break:keep-all;overflow-wrap:anywhere}
.credential-card-action{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;margin-top:auto;padding:12px 0 0;border-top:1px solid #e3eaf4;color:#2149a8;font-size:13px;font-weight:800;line-height:1.5;text-decoration:none;word-break:keep-all}
.credential-card-action:hover{text-decoration:underline;text-underline-offset:4px}
.qualification-details{margin-top:22px;padding:24px 26px;background:#f3f6fc;border:1px solid #d9e4f4;border-radius:12px;color:#172b45}
.qualification-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.qualification-type{color:#326c62;font-size:11px;font-weight:800;letter-spacing:.02em}
.qualification-heading h4{margin:6px 0 5px;color:#142b47;font-size:20px;line-height:1.45;word-break:keep-all}
.qualification-heading p{margin:0;color:#536b85;font-size:12px;line-height:1.7;word-break:keep-all}
.qualification-official{flex-shrink:0;padding:10px 13px;background:white;border:1px solid #ccd9ed;border-radius:6px;color:#2449b4;font-size:12px;font-weight:800;line-height:1.5;text-decoration:none}
.qualification-official:hover{border-color:#7691c9;text-decoration:underline;text-underline-offset:3px}
.qualification-subtitle{margin:22px 0 10px;color:#1c3454;font-size:12px;font-weight:800}
.qualification-grades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none}
.qualification-grades li{display:flex;align-items:flex-start;gap:10px;padding:13px;background:#fff;border:1px solid #e0e8f3;border-radius:7px;color:#405a76;font-size:12px;line-height:1.7;word-break:keep-all}
.qualification-grades strong{flex-shrink:0;color:#2048b8;font-size:13px}
.qualification-conditions{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:16px;padding-top:15px;border-top:1px solid #d9e4f3}
.qualification-conditions>p{max-width:76%;margin:0;color:#4d6077;font-size:12px;line-height:1.8;word-break:keep-all}
.qualification-conditions details{min-width:150px;border:0;color:#4d6077;font-size:12px;line-height:1.7}
.qualification-conditions summary{padding:0;cursor:pointer;color:#2449b4;font-weight:700;white-space:nowrap}
.qualification-conditions details p{max-width:330px;margin:8px 0 0;padding:0;font-size:12px;line-height:1.7;word-break:keep-all}
.credential-footnote{margin-top:14px}
.credential-viewer{width:min(880px,calc(100% - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:hidden;background:#fff}
.credential-viewer[open]{display:flex;flex-direction:column}
.credential-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #d6dfec;flex-shrink:0}
.credential-viewer-header p{font-size:11px;letter-spacing:.05em;font-weight:700;color:#526780;margin:0 0 5px}
.credential-viewer-header h2{font-size:19px;line-height:1.5;margin:0;color:#14253c}
.credential-viewer button,.credential-viewer a{font:700 13px/1.5 NanumSquareNeo,sans-serif}
.credential-viewer button{padding:10px 14px;min-height:44px;border:1px solid #c8d5ea;border-radius:6px;background:white;color:#244999;cursor:pointer;white-space:nowrap}
.credential-viewer button:focus-visible,.credential-viewer a:focus-visible{outline:3px solid #2046d8;outline-offset:3px}
.credential-viewer-body{padding:24px;background:#edf1f7;overflow:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable}
.credential-viewer-body img{display:block;width:100%;height:auto;max-width:100%;margin:auto;background:white;box-shadow:0 4px 18px #192d481a}
.credential-viewer-body.is-zoomed img{width:1100px;max-width:none;margin:0}
.credential-viewer-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 22px;border-top:1px solid #d6dfec;flex-shrink:0}
.credential-viewer-footer p{font-size:12px;line-height:1.7;color:#526780;margin:0}
.credential-viewer-actions{display:flex;align-items:center;gap:18px;flex-shrink:0}
.credential-viewer-actions a{color:#244999;text-underline-offset:4px}
html.credential-viewer-open,html.credential-viewer-open body{overflow:hidden}
@media(max-width:900px){
 .credential-grid{gap:12px}.credential-grid .credential-card{padding:17px}
 .qualification-grades{gap:8px}.qualification-grades li{padding:11px}
}
@media(max-width:780px){
 .credential-section-header{align-items:flex-start;flex-direction:column;gap:12px}.credential-section-header h3{font-size:22px}
 .credential-grid{grid-template-columns:1fr;gap:12px}
 .credential-grid .credential-card{display:grid;grid-template-columns:minmax(100px,135px) minmax(0,1fr);grid-template-areas:'head head' 'figure copy' 'figure action';column-gap:16px;row-gap:10px;padding:18px}
 .credential-card header{grid-area:head;min-height:0}.credential-grid .credential-card header p{font-size:13px}
 .credential-grid .credential-card figure{grid-area:figure;margin:0}.credential-visual{height:164px;padding:8px 8px 29px}
 .credential-enlarge{bottom:7px;left:8px;right:8px;font-size:11px}.credential-grid .credential-card figcaption{font-size:10px}
 .credential-grid .credential-card-copy{grid-area:copy;min-height:0;margin:0}.credential-card-action{grid-area:action;align-self:end;margin:0}
 .qualification-heading{align-items:flex-start;flex-direction:column;gap:12px}.qualification-grades{grid-template-columns:1fr}
 .qualification-conditions{flex-direction:column;gap:10px}.qualification-conditions>p{max-width:none}
 .credential-viewer-header{padding:14px;gap:10px}.credential-viewer-header h2{font-size:16px}.credential-viewer-body{padding:14px}
 .credential-viewer-footer{padding:12px 14px;align-items:flex-start;flex-direction:column;gap:10px}.credential-viewer-actions{width:100%;justify-content:space-between}.credential-viewer-footer p{font-size:11px}
}
@media(max-width:380px){.credential-grid .credential-card{grid-template-columns:100px minmax(0,1fr);column-gap:12px;padding:15px}.qualification-details{padding:20px 18px}.credential-card-action{font-size:12px}}
@media(prefers-reduced-motion:reduce){.credential-visual{transition:none}}
