.certificates-section { padding: 64px 0 88px; }
.certificates-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.certificate-card { border: 1px solid #eee6dc; border-radius: 20px; overflow: hidden; display: flex; flex-direction: column; }
.certificate-preview { display: flex; align-items: center; justify-content: center; height: 340px; padding: 30px; background: var(--sun-cream, #fbf4ec); }
.certificate-preview img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 5px 9px #00000012); transition: transform .2s; }
.certificate-preview:hover img { transform: scale(1.025); }
.certificate-caption { padding: 24px; display: flex; flex-direction: column; flex: 1; align-items: flex-start; }
.certificate-caption h2 { font-size: 21px; line-height: 1.4; margin: 0 0 14px; }
.certificate-caption p { font-size: 14px; line-height: 1.5; color: #777; margin: 0 0 18px; }
.certificate-open { margin-top: auto; padding: 11px 17px; background: var(--sun-yellow, #ffe033); color: #171717; border-radius: 10px; text-decoration: none; }
.certificate-open:hover { background: #f4d42b; color: #171717; }
.certificate-card a:focus-visible { outline: 3px solid #171717; outline-offset: -3px; }
@media (max-width: 991px) { .certificates-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 575px) { .certificates-grid { grid-template-columns: 1fr; } .certificates-section { padding: 36px 0 48px; } .certificate-preview { height: 320px; } .certificate-caption { padding: 22px; } }
