.celtiis-assistance {
    --celtiis-support-title-color: var(--bs-secondary);
    --celtiis-support-item-color: var(--bs-secondary);
    --celtiis-support-subtitle-color: #65758B;
    --celtiis-support-icon-color: #8CBA33;
    --celtiis-support-divider-color: var(--bs-secondary);
    --celtiis-support-gap: 32px;

    width: 100%;
    padding: 24px 0;
    text-align: center;
}

.celtiis-assistance__title {
    font-size: 32px;
    font-weight: 500;
    line-height: 1.25;
    font-family: 'Gotham', sans-serif;
    color: var(--celtiis-support-title-color);
    margin-bottom: 36px;
    letter-spacing: -0.3px;
}

.celtiis-assistance__grid {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--celtiis-support-gap);
    width: 100%;
}

.celtiis-assistance__item {
    display: flex;
    align-items: center;
    gap: 14px;
    font-family: 'Gotham';
    padding-right: var(--celtiis-support-gap);
    border-right: 3px solid var(--bs-secondary);
    text-decoration: none;
    outline: none;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.celtiis-assistance__item:last-child {
    border-right: none;
    padding-right: 0;
}

.celtiis-assistance__item:hover {
    transform: scale(1.05) translateY(-3px);
}

.celtiis-assistance__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    font-size: 42px;
    color: var(--celtiis-support-icon-color);
    transition: transform var(--celtiis-transition-fast, 0.25s) ease;
}

.celtiis-assistance__icon::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--celtiis-support-icon-color, #8CBA33);
    -webkit-mask: var(--celtiis-assistance-icon, none) center / contain no-repeat;
    mask: var(--celtiis-assistance-icon, none) center / contain no-repeat;
}

/* Content block next to icon */
.celtiis-assistance__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.celtiis-assistance__item-title {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
    color: var(--celtiis-support-item-color);
    margin-bottom: 2px;
    transition: color var(--celtiis-transition-fast, 0.25s) ease;
}

.celtiis-assistance__item-subtitle {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.25;
    color: var(--celtiis-support-subtitle-color);
}

.celtiis-assistance__item:hover .celtiis-assistance__item-title {
    color: var(--celtiis-color-primary, #2E4787);
}

.celtiis-assistance__item:hover .celtiis-assistance__item-title,
.celtiis-assistance__item:hover .celtiis-assistance__item-subtitle,
.celtiis-assistance__item:focus-visible .celtiis-assistance__item-title,
.celtiis-assistance__item:focus-visible .celtiis-assistance__item-subtitle {
    color: var(--celtiis-support-icon-color, #8CBA33) !important;
}

/* Ordinateur : 4 items par ligne, en colonnes de largeur égale ; les items
   suivants passent sur une ligne centrée en dessous. */
@media (min-width: 992px) {
    .celtiis-assistance__grid {
        flex-wrap: wrap;
        justify-content: center;
        gap: 32px 0;
    }

    .celtiis-assistance__item,
    .celtiis-assistance__item:last-child {
        /* 25 % par item ; sur une ligne incomplète, les items se partagent la
           place restante (une adresse e-mail n'y est plus coupée). */
        flex: 1 0 25%;
        min-width: 0;
        justify-content: center;
        padding: 0 clamp(12px, 1.6vw, 28px);
    }

    /* Pas de séparateur après le dernier item d'une ligne. */
    .celtiis-assistance__item:nth-child(4n) {
        border-right: none;
    }

    .celtiis-assistance__content {
        min-width: 0;
        overflow-wrap: break-word;
    }

    .celtiis-assistance__content > * {
        max-width: 100%;
    }

    .celtiis-assistance__icon {
        flex-shrink: 0;
    }
}

/* Petits écrans d'ordinateur : version compacte pour garder 4 items lisibles. */
@media (min-width: 992px) and (max-width: 1279px) {
    .celtiis-assistance__item {
        gap: 10px;
    }

    .celtiis-assistance__icon {
        width: 32px;
        height: 32px;
    }

    .celtiis-assistance__item-title {
        font-size: 16px;
    }

    .celtiis-assistance__item-subtitle {
        font-size: 13px;
    }
}

@media (max-width: 991px) {
    .celtiis-assistance__grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 32px 24px;
        max-width: 650px;
        margin: 0 auto;
    }

    .celtiis-assistance__item {
        border-right: none !important;
        padding-right: 0 !important;
        justify-content: flex-start;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    /* Nombre impair d'items : le dernier occupe la largeur et reste centré. */
    .celtiis-assistance__item:nth-child(odd):last-child {
        grid-column: 1 / -1;
        justify-content: center;
    }

    .celtiis-assistance__title {
        font-size: 26px;
        margin-bottom: 30px;
    }
}

@media (max-width: 640px) {
    .celtiis-assistance__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px 16px;
        max-width: 100%;
    }

    .celtiis-assistance__title {
        font-size: 20px;
        margin-bottom: 24px;
    }

    .celtiis-assistance__item-title {
        font-size: 16px;
    }

    .celtiis-assistance__item-subtitle {
        font-size: 14px;
    }

    .celtiis-assistance__icon {
        width: 28px;
        height: 28px;
        font-size: 26px;
    }
}