/* Sezione Certificazioni — accordion a categorie (<details>/<summary>) */
.ds-cert { margin-top: 24px; display: flex; flex-direction: column; gap: 12px; }

.ds-cert__group {
    border: 1px solid #e2e2da;
    border-radius: 8px;
    background: var(--ds-white, #fff);
    overflow: hidden;
}
.ds-cert__summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    font-weight: 600;
    user-select: none;
}
.ds-cert__summary::-webkit-details-marker { display: none; }
.ds-cert__summary::after {
    content: "";
    width: 10px; height: 10px;
    border-right: 2px solid #555;
    border-bottom: 2px solid #555;
    transform: rotate(-45deg);
    transition: transform .2s ease;
    margin-left: auto;
}
.ds-cert__group[open] .ds-cert__summary::after { transform: rotate(45deg); }
.ds-cert__title { flex: 0 1 auto; }
.ds-cert__count {
    flex: 0 0 auto;
    min-width: 24px; height: 24px;
    display: inline-flex; align-items: center; justify-content: center;
    padding: 0 8px;
    background: var(--ds-orange); color: #fff;
    border-radius: 12px; font-size: .8rem;
}
.ds-cert__summary:hover { background: #faf8f3; }
.ds-cert__summary:focus-visible { outline: 2px solid var(--ds-orange); outline-offset: -2px; }

.ds-cert__panel {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 10px;
    padding: 0 20px 18px;
}
@media (max-width: 767px) {
    .ds-cert__panel { grid-template-columns: 1fr; }
}
