/**
 * Vandeto Image Render — front styles
 * Blur-fill premium : image jamais upscalée, fond ambiant flouté.
 */

:root {
    --vir-blur: 28px;
    --vir-brightness: 0.82;
    --vir-radius: 8px;
}

/* Conteneur traité */
.vir-fill {
    position: relative !important;
    overflow: hidden !important;
    background-color: #11151c;
    border-radius: var(--vir-radius) !important;
}

/* L'arrondi est porté par le conteneur et hérité par tout l'intérieur */
.vir-fill .vir-backdrop,
.vir-fill a.lightbox,
.vir-fill a[data-fancybox],
.vir-fill img {
    border-radius: inherit;
}

/* Backdrop ambiant : même image, floutée, qui remplit le cadre */
.vir-fill .vir-backdrop {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(var(--vir-blur)) saturate(1.15) brightness(var(--vir-brightness));
    transform: scale(1.12);
    pointer-events: none;
}

/* Image principale : contain, jamais déformée ni upscalée au-delà du cadre */
.vir-fill img {
    position: relative;
    z-index: 1;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    background-color: transparent !important;
}

/* Le lien lightbox du slider détail doit occuper tout le cadre */
.vir-fill a.lightbox,
.vir-fill a[data-fancybox] {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
}

/* Transition douce à l'apparition du backdrop */
.vir-backdrop {
    opacity: 0;
    transition: opacity 0.35s ease;
}

.vir-backdrop.vir-ready {
    opacity: 1;
}
