:root{
    --acc-duration: 700ms;
    --acc-ease: cubic-bezier(.22,.61,.36,1); /* ease-out douce */
  }
  
/* Lisse l’anim de hauteur (la lib anime height/inline) */
/* Remplace ta règle précédente : pas de !important pour ne pas gêner l’inline du plugin */
.accordeon .accordeon-liste > li .ac-panel{
    overflow: hidden;
    will-change: height;
    transition: height var(--acc-duration,700ms) var(--acc-ease,cubic-bezier(.22,.61,.36,1));
}

.accordeon .accordeon-liste > li.is-active > .ac-trigger > .arrow {
    transform: rotate(180deg);
    transition: 0.3s all ease;
}
  

/* Prépare les entrées de contenu (optimise les 1res frames) */
.accordeon .ac-content-part,
.accordeon .ac-image-part .imgcropCtn,
.accordeon .ac-image-part .imgcrop{
will-change: transform, opacity;
transform: translateZ(0);
}

/* Respecte la préférence d’accessibilité */
@media (prefers-reduced-motion: reduce){
.accordeon .accordeon-liste > li .ac-panel{ transition: none !important; }
}
  

.accordeon {
    background-color: #2A311C;
    padding: 120px 0px;
}

.accordeon-titre h2 {
    text-align: center;
    color: var(--BEIGE, #E4DDC0);
}

.accordeon-titre h2 strong {
    text-align: center;
    color: var(--BEIGE, #888E63);
}

.accordeon .accordeon-liste, .accordeon-titre {
    display: flex;
    flex-direction: column;
    width: 90%;
    max-width: 1070px;
    gap: 0;
    margin: 0 auto;
    padding: 0;
}

.accordeon .accordeon-liste > li {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 24px 16px;
    align-items: center;
    align-self: stretch;
    border-radius: 0;
    border: unset;
    border-top: 1px solid #888E63;
    background: transparent;
    overflow: hidden;
    margin: 0;
}

.accordeon .accordeon-liste > li:last-child {
    border-top: 1px solid #888E63;
    border-bottom: 1px solid #888E63;
}

.accordeon .accordeon-liste > li .ac-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    width: 100%;
    padding: 8px 0 0 0;
}

.accordeon .accordeon-liste > li .ac-panel {
    display: flex;
    align-items: center;
}

.accordeon .accordeon-liste > li .ac-header .cross {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    aspect-ratio: 1/1;
}

.accordeon .accordeon-liste > li .ac-header .cross span {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 100px;
    background-color: #0AACB1;
    transform: translateX(-50%) translateY(-50%);
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li .ac-header .cross span:last-child {
    transform: translateX(-50%) translateY(-50%) rotate(90deg);
    transform-origin: 50% 50%;
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li.is-active .cross span:last-child {
    opacity: 0;
    transform: translateX(-50%) translateY(-50%) rotate(0);
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li .ac-header .separator {
    display: block;
    width: 1px;
    height: 25px;
    background: #C8C8C8;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part {
    flex: 1 1 59%;
    margin: 48px 0 0 0;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part h2 strong {
    color: var(--VERT-GRIS, #888E63);
    font-family: "Relation";
    font-style: normal;
    font-weight: 400;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part h3 {
    color: var(--BEIGE, #E4DDC0);
    /* Headlines/headline-3-desktop */
    font-family: "Gotham";
    font-style: normal;
    font-weight: 200;
    margin: 0 0 24px 0;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part h2 {
    color: var(--BEIGE, #E4DDC0);

    /* Headlines/headline-2-desktop */
    font-family: "Relation Script";
    font-style: normal;
    font-weight: 400;
    line-height: 1.25; /* 125% */
    padding: 0 0 0 4px;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part .btn-liste {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
}

.accordeon .accordeon-liste > li .ac-panel .ac-content-part .btn-liste a {
    
}

.accordeon .accordeon-liste > li .ac-panel .ac-image-part {
    flex: 1 1 39%;
    padding: 0 0 0 8.33%;
    margin: 48px 0 0 0;
}

.accordeon .accordeon-liste > li .ac-panel .ac-image-part .imgcropCtn {
    width: 100%;
    height: 100%;
    aspect-ratio: 300/444;
}

.accordeon .accordeon-liste > li .ac-panel ul {
    list-style: none;
    padding: 0 0 0 32px;
}

.accordeon .accordeon-liste > li .ac-panel ul li {
    position: relative;
    color: black;
    font-weight: 200;
}

.accordeon .accordeon-liste > li .ac-panel ul li::before {
    content: "";
    position: absolute;
    top: 3px;
    left: -32px;
    display: flex;
    width: 20px;
    height: 20px;
    padding: 9px 8px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    aspect-ratio: 1/1;
    border-radius: 25px;
    background: #0AACB1;
    background-image: url("http://localhost:8888/Comet/wp-content/uploads/2025/05/ListItem.svg");
    background-size: 10px;
    background-position: center;
    background-repeat: no-repeat;
}

.accordeon .accordeon-liste > li .ac-trigger::after {
    content: unset;
}

.accordeon .accordeon-liste > li h3 {
    font-size: 3.2rem;
    line-height: 1;
    margin: 0;
}

.accordeon .accordeon-liste > li .ac-header > .arrow {
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li .ac-header > .arrow::before {
    content: "";
    position: absolute;
    width: 50px;
    height: 50px;
    left: 0;
    bottom: 0;
    background-image: url(https://www.cucina-e-piacere.fr/wp-content/uploads/2025/10/ArrowCucina.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    transform: translate(0, 0) scale(.7);
    transform-origin: 50% 50%;
    opacity: 0;
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li .ac-header > .arrow::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1);
    transform-origin: 50% 50%;
    opacity: 1;
    width: 50px;
    height: 50px;
    background-image: url(https://www.cucina-e-piacere.fr/wp-content/uploads/2025/10/ArrowCucina.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li:hover .ac-header > .arrow::before {
    left: 50%;
    bottom: 50%;
    transform: translate(-50%, 50%) scale(1);
    transform-origin: 50% 50%;
    opacity: 1;
    transition: 0.3s all ease;
}

.accordeon .accordeon-liste > li:hover .ac-header > .arrow::after {
    top: -50%;
    left: 80%;
    opacity: 0;
    transform: translate(0, 0) scale(.7);
    transform-origin: 50% 50%;
    transition: 0.3s all ease;
}

@media (max-width: 992px) {
    .accordeon .accordeon-liste > li .ac-panel .ac-content-part {
        flex: 1 1 0;
        width: 100%;
    }

    .accordeon .accordeon-liste > li .ac-panel .ac-image-part {
        display: none;
    }

    .accordeon .accordeon-liste > li .ac-header > .arrow::after, .accordeon .accordeon-liste > li .ac-header > .arrow::before {
        width: 35px;
        height: 35px;
    }

    .accordeon .accordeon-liste > li .ac-header > .arrow {
        width: 35px;
        height: 35px;
    }

    .accordeon .accordeon-liste > li .ac-header {
        padding: 0;
    }

    .accordeon .accordeon-liste > li h3 {
        font-size: 2.8rem;
        padding: 8px 0 0 0;
    }

    .accordeon .accordeon-liste > li .ac-panel .ac-content-part .btn-liste {
        flex-wrap: wrap;
        gap: 8px;
    }
}