/* Accueil : le carrousel occupe seul le premier écran, le contenu vit dans des sections séparées. */
:root {
    --acc-fond: #0E0E10;
    --acc-fond-2: #191A1E;
    --acc-rouge: #F00000;
    --acc-marge: 20px;
    --acc-section: 64px;
}

/* Le thème fixe le carrousel à l'écran : ici il part avec la page, rien ne passe par-dessus. */
.anita-gl-carousel-gallery-wrap {
    position: relative;
    height: 100vh;
    height: 100svh;
    touch-action: pan-y;
}
.anita-gl-carousel-gallery-wrap::before,
.anita-gl-carousel-canvas {
    position: absolute;
}
.acc-descendre {
    position: absolute;
    top: calc(100vh - 68px);
    top: calc(100svh - 68px);
    left: calc(50% - 22px);
    z-index: 6;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 2px solid var(--anita-s-heading);
    border-radius: 50%;
    background: #00000040;
    opacity: 0.7;
    transition: opacity 0.3s;
}
.acc-descendre:hover {
    opacity: 1;
}
.acc-descendre::before {
    content: '\f347';
    font-family: 'dashicons';
    font-size: 22px;
    line-height: 1;
    color: var(--anita-s-heading);
}

/* En-tête : transparent sur le carrousel, plein dès qu'il passe sur le contenu. */
#anita-header .anita-header-inner {
    transition: background 0.3s, padding 0.3s;
}
.anita-logo img {
    transition: width 0.3s;
}
body.acc-defile #anita-header .anita-header-inner {
    padding-top: 10px;
    padding-bottom: 10px;
    background: var(--acc-fond);
}
body.acc-defile .anita-logo img {
    width: 110px;
    height: auto;
}

.acc-preloader-nom {
    margin-bottom: 20px;
    font-family: var(--anita-t-heading-ff);
    font-size: 2em;
    font-weight: 700;
    color: #fff;
}

.acc {
    position: relative;
    z-index: 5;
    padding: var(--acc-section) var(--acc-marge);
    background: var(--acc-fond);
    scroll-margin-top: 70px;
}
.acc--alt {
    background: var(--acc-fond-2);
}
.acc-largeur {
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}
.acc img {
    display: block;
    width: 100%;
    height: auto;
}
.acc a img {
    transition: opacity 0.3s;
}
.acc a:hover img {
    opacity: 0.85;
}
.acc h1 {
    margin: 0 0 20px;
    font-size: 36px;
    line-height: 1.08;
}
.acc h2 {
    margin: 0 0 16px;
    font-size: 30px;
    line-height: 1.12;
}
.acc h3 {
    margin: 18px 0 10px;
    font-size: 24px;
    line-height: 1.15;
}
.acc p {
    margin: 0 0 16px;
}
.acc-lien {
    display: inline-block;
    margin-top: 4px;
    color: var(--anita-s-heading);
    text-decoration: underline;
    text-decoration-color: var(--acc-rouge);
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
}

.acc-index {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    margin-top: 28px;
    font-family: var(--anita-t-heading-ff);
    font-size: 22px;
    font-weight: 700;
}
.acc-index a {
    color: var(--anita-s-heading);
}

.acc-duo {
    display: grid;
    gap: 24px;
}
.acc-image {
    display: block;
}
.acc-image img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}
.acc-formules {
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}
.acc-formules li {
    display: flex;
    flex-direction: column;
    margin: 0 0 12px;
    padding: 0;
}
.acc-formules span {
    font-family: var(--anita-t-heading-ff);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--anita-s-heading);
}

.acc-trio {
    display: grid;
    gap: 44px;
    margin-top: 28px;
}
.acc-trio img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.acc-questions details {
    margin-bottom: 20px;
}
.acc-questions summary {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    font-family: var(--anita-t-heading-ff);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--anita-s-heading);
    cursor: pointer;
    list-style: none;
}
.acc-questions summary::-webkit-details-marker {
    display: none;
}
.acc-questions summary::after {
    content: '+';
    color: var(--acc-rouge);
}
.acc-questions details[open] summary::after {
    content: '–';
}
.acc-questions details p {
    margin: 10px 0 0;
}

.acc-contact {
    text-align: center;
}
.acc-tel {
    display: block;
    margin-bottom: 16px;
    font-family: var(--anita-t-heading-ff);
    font-size: 46px;
    font-weight: 700;
    line-height: 1;
    color: var(--acc-rouge);
}
.acc-contact p a {
    color: var(--anita-s-heading);
}

@media (max-width: 999px) {
    .anita-back2top-wrap {
        display: none;
    }
}

@media (min-width: 1000px) {
    :root {
        --acc-marge: 50px;
        --acc-section: 120px;
    }
    .acc h1 {
        margin: 0;
        font-size: clamp(44px, 3.5vw, 66px);
    }
    .acc h2 {
        margin-bottom: 20px;
        font-size: clamp(34px, 2.5vw, 46px);
    }
    .acc p {
        font-size: 17px;
    }
    .acc-presentation {
        display: grid;
        grid-template-columns: 1.25fr 1fr;
        gap: 80px;
        align-items: start;
    }
    .acc-index {
        margin-top: 64px;
        font-size: 28px;
    }
    .acc-index {
        gap: 0;
    }
    .acc-index a:not(:last-child)::after {
        content: '·';
        margin: 0 18px;
        color: var(--acc-rouge);
    }
    .acc-duo {
        grid-template-columns: 1.3fr 1fr;
        gap: 72px;
        align-items: center;
    }
    .acc-duo--inverse {
        grid-template-columns: 1fr 1.3fr;
    }
    .acc-duo--inverse .acc-image {
        order: 2;
    }
    .acc-formules li {
        flex-direction: row;
        justify-content: space-between;
        gap: 24px;
        align-items: baseline;
    }
    .acc-trio {
        grid-template-columns: repeat(3, 1fr);
        gap: 36px;
        margin-top: 44px;
    }
    .acc-questions {
        display: grid;
        grid-template-columns: 1fr 2fr;
        gap: 72px;
    }
    .acc-tel {
        font-size: 72px;
    }
}
