.coteaux-tabs {
    display: grid !important;
    grid-template-columns: repeat(var(--coteaux-tabs-cols, 3), 1fr) !important;
    grid-auto-flow: row dense !important;
    gap: 12px !important;
    width: 100% !important;
}

.coteaux-tabs__tab {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 25px 16px 25px 16px !important;
    background: var(--tab-bg, #5e1a3e) !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-align: left !important;
    cursor: pointer !important;
    width: 100% !important;
    min-height: 80px !important;
    transition: filter .25s ease, transform .25s ease !important;
}

.coteaux-tabs__tab:hover {
    filter: brightness(1.08) !important;
}

.coteaux-tabs__icon {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.coteaux-tabs__icon img {
    display: block !important;
    height: 65px !important;
    width: auto !important;
    object-fit: contain !important;
}

.coteaux-tabs__label {
    display: flex !important;
    flex-direction: column !important;
    line-height: 1 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding-right: 0 !important;
}

.coteaux-tabs__title {
    font-family: var(--tab-title-font, 'Syne'), sans-serif !important;
    font-weight: 700 !important;
    font-size: var(--tab-title-size, 37px) !important;
    color: var(--tab-title-color, #FFF2E0) !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
}

.coteaux-tabs__subtitle {
    font-family: var(--tab-subtitle-font, 'Ephesis'), cursive !important;
    font-weight: 400 !important;
    font-size: var(--tab-subtitle-size, 50px) !important;
    color: var(--tab-subtitle-color, #D5A137) !important;
    line-height: 1 !important;
    margin-top: -15px !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    padding-right: 20px !important;
    line-height: 45px !important;
}

.coteaux-tabs__plus {
    position: absolute !important;
    right: 14px !important;
    bottom: 12px !important;
    top: auto !important;
    transform: none !important;
    width: 22px !important;
    height: 22px !important;
    border: 1px solid var(--tab-title-color, #FFF2E0) !important;
    border-radius: 50% !important;
    color: var(--tab-title-color, #FFF2E0) !important;
    flex: 0 0 auto !important;
    transition: transform .35s ease !important;
}

.coteaux-tabs__plus::before,
.coteaux-tabs__plus::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    background: currentColor !important;
    transition: transform .35s ease, opacity .25s ease !important;
}

.coteaux-tabs__plus::before {
    width: 10px !important;
    height: 1.5px !important;
    transform: translate(-50%, -50%) !important;
}

.coteaux-tabs__plus::after {
    width: 1.5px !important;
    height: 10px !important;
    transform: translate(-50%, -50%) !important;
}

.coteaux-tabs__tab.is-open .coteaux-tabs__plus {
    transform: rotate(180deg) !important;
}

.coteaux-tabs__tab.is-open .coteaux-tabs__plus::after {
    opacity: 0 !important;
}

/* Onglet verrouillé : pas de "+", pas de hover, curseur par défaut. */
.coteaux-tabs__tab.is-locked .coteaux-tabs__plus {
    display: none !important;
}

.coteaux-tabs__tab.is-locked {
    cursor: default !important;
}

.coteaux-tabs__tab.is-locked:hover {
    filter: none !important;
}

.coteaux-tabs__content {
    grid-column: 1 / -1 !important;
    color: #ffffff !important;
    border-radius: 0 !important;
    display: none !important;
    opacity: 0 !important;
    transform: translateY(-14px) !important;
    transition: opacity .4s ease, transform .4s ease !important;
    will-change: opacity, transform !important;
}

.coteaux-tabs__content.is-mounted {
    display: block !important;
}

.coteaux-tabs__content.is-open {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Tablette / petit PC : 2 colonnes */
@media (max-width: 1199px) {
    .coteaux-tabs {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Mobile : 1 colonne + tailles mobiles */
@media (max-width: 767px) {
    .coteaux-tabs {
        grid-template-columns: 1fr !important;
        gap: 1px !important;
    }
    .coteaux-tabs__content {
        padding: 0 !important;
        margin-top: -3px !important;
    }
    .coteaux-tabs__title {
        font-size: var(--tab-title-size-mobile, 35px) !important;
    }
    .coteaux-tabs__subtitle {
        font-size: var(--tab-subtitle-size-mobile, 40px) !important;
    }
}
