.medalla {
    position: relative;
    width: 130px;
    display: inline-block;
    overflow: hidden;
}

/* Imagen base ocupa todo el contenedor */
.medalla .base {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    object-fit: contain;
}

/* Brillo ocupa todo el contenedor y usa la máscara del PNG */
.medalla .brillo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: linear-gradient(120deg,
            rgba(255, 255, 255, 0) 40%,
            rgba(255, 255, 255, 0.6) 50%,
            rgba(255, 255, 255, 0) 60%);
    background-size: 300% 100%;
    animation: shine 4s infinite;

    mask-image: url('/public/img/page/pionero.png');
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;

    -webkit-mask-image: url('/public/img/page/pionero.png');
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;

    pointer-events: none;
    z-index: 2;
}

@keyframes shine {
    0% {
        background-position: -150% 0;
    }

    100% {
        background-position: 150% 0;
    }
}

/* 🔽 Tablet (≤ 992px) */
@media (max-width: 992px) {
    .medalla {
        width: 100px;
        margin: 20px auto;
        display: block;
        height: 100px;
    }
}

/* 🔽 Móvil (≤ 768px) */
@media (max-width: 768px) {
    .medalla {
        width: 60px;
        margin: 20px auto;
        display: block;
        height: 100px;
    }
}

#modalPionero .modal-header {
    background-color: #ffc444;
    color: black;
    font-weight: bold;
    /* border-top-left-radius: 16px; */
    /* border-top-right-radius: 16px; */
    padding: 1rem 1.5rem;
    border-bottom: none;
}