/* --------------------------------------------------- */
/* Bloc : Icone titre text et image (override)
/* --------------------------------------------------- */
.bloc-icon-title-text-image .bloc-icon-title-text-image-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: fit-content;
    margin: 20px auto 0;
    color: var(--main-primary-color);
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.3px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link-text {
    position: relative;
    padding-bottom: 3px;
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: currentColor;
    transform: scaleX(0.3);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link svg {
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link:hover,
.bloc-icon-title-text-image .bloc-icon-title-text-image-link:focus-visible {
    color: var(--main-secondary-color);
    text-decoration: none;
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link:hover .bloc-icon-title-text-image-link-text::after,
.bloc-icon-title-text-image .bloc-icon-title-text-image-link:focus-visible .bloc-icon-title-text-image-link-text::after {
    transform: scaleX(1);
}

.bloc-icon-title-text-image .bloc-icon-title-text-image-link:hover svg,
.bloc-icon-title-text-image .bloc-icon-title-text-image-link:focus-visible svg {
    transform: translateX(5px);
}
