/* Programas Prisma y Bienestar */
/* Solo mostrar en computador: ocultar completamente en tablet y celular */
@media (max-width: 1100px) {
    #ppb-programas-cabecera { display: none !important; }
}

#ppb-programas-cabecera.ppb-wrap {
    position: fixed;
    z-index: 99990;
    top: calc(18px + var(--ppb-offset-y));
    right: calc(28px - var(--ppb-offset-x));
    display: flex;
    align-items: center;
    gap: var(--ppb-gap);
    pointer-events: none;
    font-family: inherit;
}

#ppb-programas-cabecera .ppb-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: var(--ppb-height);
    min-width: 142px;
    padding: 0 18px;
    box-sizing: border-box;
    color: var(--ppb-text);
    text-decoration: none !important;
    font-size: var(--ppb-font-size);
    font-weight: var(--ppb-font-weight);
    line-height: 1;
    letter-spacing: .1px;
    border-radius: var(--ppb-radius);
    pointer-events: auto;
    overflow: hidden;
    isolation: isolate;
    clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 100%, 0 100%);
    box-shadow: 0 5px 16px rgba(0,0,0,.18);
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

#ppb-programas-cabecera .ppb-button::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: currentColor;
    opacity: .06;
}

#ppb-programas-cabecera .ppb-button::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 70%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
    transform: skewX(-18deg);
    transition: left .55s ease;
}

#ppb-programas-cabecera .ppb-button:hover {
    transform: translateY(-1px) scale(1.035);
    box-shadow: 0 8px 22px rgba(0,0,0,.23);
    filter: brightness(1.06);
}

#ppb-programas-cabecera .ppb-button:hover::after {
    left: 145%;
}

#ppb-programas-cabecera .ppb-prisma { background: var(--ppb-prisma); }
#ppb-programas-cabecera .ppb-bienestar { background: var(--ppb-bienestar); }

#ppb-programas-cabecera.ppb-animation-zoom .ppb-button {
    animation: ppbZoomIn .65s ease both;
}
#ppb-programas-cabecera.ppb-animation-float .ppb-button {
    animation: ppbFloat 3.2s ease-in-out infinite;
}
#ppb-programas-cabecera.ppb-animation-pulse .ppb-button {
    animation: ppbPulse 2.6s ease-in-out infinite;
}
#ppb-programas-cabecera.ppb-animation-none .ppb-button {
    animation: none;
}

#ppb-programas-cabecera.ppb-animation-float .ppb-button:nth-child(2),
#ppb-programas-cabecera.ppb-animation-pulse .ppb-button:nth-child(2) {
    animation-delay: .35s;
}

@keyframes ppbZoomIn {
    from { opacity: 0; transform: scale(.86); }
    to { opacity: 1; transform: scale(1); }
}
@keyframes ppbFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-3px); }
}
@keyframes ppbPulse {
    0%, 72%, 100% { transform: scale(1); }
    78% { transform: scale(1.035); }
    84% { transform: scale(1); }
}

@media (max-width: 1100px) {
    #ppb-programas-cabecera.ppb-wrap {
        top: calc(12px + var(--ppb-offset-y));
        right: calc(15px - var(--ppb-offset-x));
    }
    #ppb-programas-cabecera .ppb-button {
        min-width: 125px;
        padding: 0 14px;
        font-size: max(11px, calc(var(--ppb-font-size) - 1px));
    }
}

@media (max-width: 700px) {
    #ppb-programas-cabecera.ppb-wrap {
        top: auto;
        right: calc(10px - var(--ppb-offset-x));
        bottom: calc(12px - var(--ppb-offset-y));
        gap: 5px;
    }
    #ppb-programas-cabecera .ppb-button {
        min-width: 0;
        width: auto;
        height: 34px;
        padding: 0 11px;
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #ppb-programas-cabecera .ppb-button {
        animation: none !important;
        transition: none !important;
    }
}

/* Menú móvil / lienzo de Blocksy */
#ppb-programas-cabecera.ppb-in-mobile-canvas {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: var(--ppb-mobile-width) !important;
    max-width: 100% !important;
    margin: 18px 0 0 0 !important;
    transform: translate(var(--ppb-mobile-x), var(--ppb-mobile-y)) !important;
    justify-content: var(--ppb-mobile-align) !important;
    align-items: center !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
    z-index: 999999 !important;
}
#ppb-programas-cabecera.ppb-in-mobile-canvas .ppb-button {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
@media (max-width:700px){
 #ppb-programas-cabecera.ppb-in-mobile-canvas .ppb-button{height:34px;padding:0 10px;font-size:11px}
}
@media (max-width:1100px){
 #ppb-programas-cabecera.ppb-mobile-disabled{position:fixed !important;}
}
