/* ─── CERTIFICADOS ─── */
.section-certs { padding: 100px 0; }
.certs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.cert-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 32px 28px; position: relative; overflow: hidden; transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition); display: flex; flex-direction: column; gap: 12px; }
.cert-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--purple-dark),var(--purple)); transform:scaleX(0); transform-origin:left; transition:transform .4s ease; }
.cert-card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(124,58,237,.25); border-color: rgba(187,111,255,.38); }
.cert-card:hover::before { transform: scaleX(1); }
.cert-card[data-cert] { cursor: pointer; }
.cert-icon-wrap { width:52px; height:52px; border-radius:var(--radius); background:rgba(187,111,255,.1); border:1px solid rgba(187,111,255,.22); display:flex; align-items:center; justify-content:center; color:var(--purple); transition:background .3s,box-shadow .3s; flex-shrink:0; }
.cert-card:hover .cert-icon-wrap { background:rgba(187,111,255,.2); box-shadow:0 0 18px rgba(187,111,255,.35); }
.cert-issuer { font-family:'JetBrains Mono',monospace; font-size:.68rem; color:var(--purple); letter-spacing:.12em; text-transform:uppercase; font-weight:600; }
.cert-inst { font-family:'JetBrains Mono',monospace; font-size:.68rem; color:var(--purple); letter-spacing:.12em; text-transform:uppercase; font-weight:600; }
.cert-title { font-family:'Syne',sans-serif; font-size:1rem; font-weight:700; line-height:1.35; }
.cert-titulo { font-family:'Syne',sans-serif; font-size:1rem; font-weight:700; line-height:1.35; }
.cert-desc { font-size:.85rem; color:var(--gray); line-height:1.65; flex:1; }
.cert-meta { display:flex; align-items:center; justify-content:space-between; margin-top:4px; padding-top:14px; border-top:1px solid rgba(255,255,255,.06); }
.cert-date { font-size:.75rem; color:var(--muted); font-family:'JetBrains Mono',monospace; }
.cert-badge { display:inline-flex; align-items:center; gap:5px; background:rgba(0,245,160,.08); border:1px solid rgba(0,245,160,.25); color:var(--accent); font-size:.7rem; font-weight:700; padding:3px 10px; border-radius:999px; font-family:'JetBrains Mono',monospace; }
.cert-badge-red {display: inline-flex; align-items: center; gap: 5px; background: rgba(255,59,59,.08); border: 1px solid rgba(255,59,59,.25); color: #ff3b3b; font-size: .7rem; font-weight: 700; padding: 3px 10px; border-radius: 999px; font-family: 'JetBrains Mono', monospace; }
/* ─── BUTTON - PÁGINA CERTIFICADO ─── */
.cssbuttons-io-button { background: #BB6FFF; color: #fff; font-family: inherit; padding: .35em; padding-left: 1.2em; font-size: 17px; font-weight: 500; border-radius: .9em; border: none; letter-spacing: .05em; display: flex; align-items: left; text-decoration: none; box-shadow: inset 0 0 1.6em -.6em #714da6; overflow: hidden; position: relative; height: 2.8em; padding-right: 3.3em; cursor: pointer; width: fit-content; margin: 0 auto;  margin-top: 55px;}
.cssbuttons-io-button .icon { background: #fff; margin-left: 1em; position: absolute; display: flex; align-items: center; justify-content: center; height: 2.2em; width: 2.2em; border-radius: .7em; box-shadow: .1em .1em .6em .2em #7b52b9; right: .3em; transition: all .3s; }
.cssbuttons-io-button:hover .icon { width: calc(100% - .6em); }
.cssbuttons-io-button .icon svg { width: 1.1em; transition: transform .3s; color: #7b52b9; transform: scaleX(-1); }
.cssbuttons-io-button:hover .icon svg { transform: translateX(-.1em) scaleX(-1); }
.cssbuttons-io-button:active .icon { transform: scale(.95); }

@media (max-width: 768px) {
    .certs-grid {grid-template-columns: 1fr;gap: 16px;}
    .section-certs { padding: 60px 0; }
    .cert-card {padding: 24px 20px;}
  }