/* Certification presented as native web content, with the original pages intact. */
.assurance.certification { padding:56px 0; background:#cb1822; }
.assurance.certification .wrap { grid-template-columns:1.1fr 1fr; gap:56px; padding-top:0; padding-bottom:0; }
.certification .certification-intro .eyebrow { margin-bottom:18px; color:#ffe0db; font-size:.75rem; }
.certification .certification-intro h2 { font-size:clamp(2rem,3.3vw,2.8rem); line-height:1.16; letter-spacing:-.035em; }
.certification .certification-intro > p:last-child { margin-top:22px; font-size:1rem; line-height:1.7; max-width:490px; }
.certificate-card { display:grid; grid-template-columns:140px 1fr; align-items:center; gap:26px; width:100%; padding:24px; border:1px solid #ffffff80; border-radius:16px; background:#fff; color:#171c23; text-align:left; font:inherit; cursor:pointer; box-shadow:0 18px 38px #71091240; transition:transform .2s,box-shadow .2s; }
.certificate-card:hover { transform:translateY(-3px); box-shadow:0 24px 42px #71091255; }
.certificate-preview { padding:8px; background:#f2f4f6; border:1px solid #e2e6eb; border-radius:7px; }
.certificate-preview img { display:block; width:100%; height:auto; box-shadow:0 2px 7px #0002; }
.certificate-card-copy { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.certificate-year { display:inline-block; padding:5px 9px; margin-bottom:14px; border-radius:5px; background:#fff0ed; color:#a72726; font-size:.75rem; font-weight:800; }
.certificate-card strong { font-size:1.3rem; line-height:1.35; letter-spacing:-.025em; }
.certificate-number { margin-top:10px; color:#66717c; font-size:.8125rem; overflow-wrap:anywhere; }
.certificate-action { display:block; width:100%; margin-top:22px; padding-top:16px; border-top:1px solid #e5e8ec; color:#b51d27; font-size:.875rem; font-weight:800; }
.certificate-dialog { width:min(960px,calc(100% - 32px)); max-height:90vh; max-height:90dvh; padding:0; border:0; border-radius:20px; background:#fff; color:#171c23; box-shadow:0 28px 100px #0006; }
.certificate-dialog::backdrop { background:#050a10c4; backdrop-filter:blur(5px); }
.certificate-content { padding:24px 44px 44px; }
.certificate-content > .eyebrow { color:#a8242c; line-height:1.6; margin-bottom:14px; }
.certificate-content h2 { font-size:clamp(1.8rem,3.4vw,2.8rem); line-height:1.15; letter-spacing:-.035em; margin:0 0 18px; }
.certificate-lead { color:#63707d; line-height:1.7; max-width:660px; }
.certificate-facts { margin:28px 0; }
.certificate-facts > div { display:grid; grid-template-columns:190px 1fr; gap:24px; padding:16px 0; border-bottom:1px solid #e6eaef; font-size:.9375rem; }
.certificate-facts dt { color:#63707d; }
.certificate-facts dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.certificate-original { border:1px solid #dce2e8; border-radius:10px; overflow:hidden; }
.certificate-original summary { padding:18px 20px; cursor:pointer; color:#a8242c; font-weight:800; font-size:.9375rem; }
.certificate-original summary span { color:#66717c; font-size:.8125rem; font-weight:500; margin-left:12px; }
.certificate-original[open] summary { border-bottom:1px solid #dce2e8; }
.certificate-pages { padding:20px; background:#f3f5f7; }
.certificate-pages figure { margin:0 0 26px; }
.certificate-pages figure:last-child { margin-bottom:0; }
.certificate-pages figcaption { color:#596572; font-size:.8125rem; margin-bottom:12px; }
.certificate-pages img { display:block; width:100%; height:auto; background:white; box-shadow:0 2px 10px #19233112; }
body.certificate-open { overflow:hidden; }
.certificate-card:focus-visible,.certificate-dialog button:focus-visible,.certificate-original summary:focus-visible { outline:3px solid #181c23; outline-offset:4px; }
@media(max-width:820px) {
  .assurance.certification .wrap { grid-template-columns:1fr; gap:30px; }
  .certificate-card { max-width:570px; }
}
@media(max-width:520px) {
  .assurance.certification { padding:42px 0; }
  .certificate-card { grid-template-columns:95px 1fr; gap:18px; padding:18px; }
  .certificate-card strong { font-size:1.125rem; }
  .certificate-dialog { width:calc(100% - 20px); border-radius:14px; }
  .certificate-content { padding:20px 22px 28px; }
  .certificate-facts > div { grid-template-columns:1fr; gap:5px; }
  .certificate-pages { padding:12px; }
  .certificate-original summary { padding:16px 14px; }
  .certificate-original summary span { display:block; margin:6px 0 0 18px; }
}
@media(prefers-reduced-motion:reduce) { .certificate-card { transition:none; } }
