section,
header {
    margin-bottom: 8rem;
}
.bandeau {
    position: relative;
    background: var(--url) no-repeat center;
    background-size: cover;
}
.bandeau::after {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--color-pink);
    opacity: 0.7;
    z-index: 1;
    position: absolute;
}
/* .bandeau__text {
    position: absolute;
    z-index: 2;
    text-align: center;
    right: 50%;
    top: 50%;
    transform: translate(50%, -50%);
    width: 100%;
} */
.bandeau__text {
    text-align: center;
    position: relative;
    z-index: 2;
    padding: 5rem 2rem;
}
.bandeau__img {
    position: absolute;
    z-index: -1;
    text-align: center;
    right: 50%;
    top: 50%;
    transform: translate(50%, -50%);
    width: 100%;
}
.bandeau__text h2 {
    text-transform: uppercase;
}
h2.p {
    letter-spacing: 0;
    font-weight: 400 !important;
}
.text__counter {
    margin-top: 1rem;
}
.text__counter--counter {
    font-size: var(--fs-400);
}
h1 {
    text-transform: uppercase;
    margin-bottom: 2rem;
}
h1 .firstLine {
    font-size: 4rem;
}
h1 .secondLine {
    font-size: var(--fs-600);
    line-height: 1.4em;
    display: block;
}
h2.block,
h2.block--appel .firstLine,
h2.block--appel .secondLine {
    padding: 0.8rem 1.6rem;
    width: fit-content;
    text-transform: uppercase;
}
h2.block.block--h2{
    color: var(--color-pink);
    background-color: #000000;
    rotate: -3deg;
    margin-bottom: 4rem;
}
h2.block--appel {
    margin-bottom: 2rem;
}
h2.block--appel,
h2.block--appel div {
    margin-inline: auto;
    text-align: center;
}
h2.block--appel .firstLine {
    font-size: 4rem;
    color: #000000;
    background-color: var(--color-pink);
    rotate: -3deg;
    width: fit-content;
}
h2.block--appel .secondLine {
    color: var(--color-pink);
    background-color: #000000;
    rotate: 4deg;
    width: fit-content;
}
h2.block--appel .secondLine .outline {
  -webkit-text-stroke-color: var(--color-pink);
}
.outline {
    color: var(--color-pink);
   text-shadow:
        2px 2px 0 #000,
        -2px -2px 0 #000,  
        2px -2px 0 #000,
        -2px 2px 0 #000,
        2px 2px 0 #000;
}
.appel {
    display: flex;
    gap: 4rem
}
.appel__text {
    flex: 1.5 1 0;
    width: 0;
}
.appel__conclusion {
    font-size: var(--fs-500);
    margin-block: 1rem 2rem;
}
.appel__text p.appel__btn {
    margin-inline: auto;
    text-align: center;
}
.appel__signature {
    flex: 1 1 0;
    width: 0;
    position: sticky;
    align-self: flex-start;
    top: 2rem;
    padding: 3rem 2.3rem;
    background-color: var(--color-pink);
    box-shadow: 1px 10px 10px #00000026;
}
.appel__signature>p {
    text-align: center;
    font-size: var(--fs-500);
    margin-bottom: 2rem;
}
.appel__signature.valid {
    background: #edfbd8;
    padding: 2rem 1rem;
    border: 2px solid #84d65a;
    text-align: center;
}
.valid__hr {
  border: 1px solid #84d65a;
  margin-block: 0.5rem;
}
.valid__titre {
    font-size: var(--fs-400);
}
span.required {
    color: #e74c3c;
}
@media (max-width: 1080px) {
    .appel {
        flex-direction: column;
    }
    .appel__text,
    .appel__signature {
        width: unset;
    }
}
.form-element {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem
}
.form-element input[type="text"],
.form-element input[type="email"],
.form-element select {
    width: 100%;
    box-sizing: border-box;
    padding: 7px;
}
.form-element select {
    color: var(--color-black);
}
.form-element .email,
.form-element .qualite,
.form-element .orga,
.form-element .rgpd1,
.form-element .rgpd2 {
    grid-column: span 2;
}
.form-element .rgpd1 label,
.form-element .rgpd2 label {
    font-size: 0.9rem;
}
.form-element .rgpd2 {
    margin-bottom: 2rem;
}
.form__btn {
    margin-inline: auto;
    text-align: center;
}
.form-element .alert {
    padding: 0.2rem 0.5rem;
    background-color: #ef665b;
    color: var(--color-white);
    width: fit-content;
    border-radius: 5px;
    margin-top: 0.5rem;
}
.list__perso,
.list__header {
    display: grid;
    grid-template-columns: 1fr 2fr 2fr;
}
/* Blocs */
.testi__citation {
    padding-inline: 4rem;
}
.citation__svg {
    text-align: center;
}
.big__text {
    font-size: var(--fs-400);
}
.citation__block {
    padding: 1rem 2rem;
    background-color: var(--color-white);
    box-shadow: 1px 10px 10px #00000026;
    height: fit-content;
}
.citation__block blockquote {
    margin-bottom: 2rem;
}
.citation__block figcaption {
    display: flex;
    justify-content: space-between;
}
.author__poste {
    color: #999;
}
.author__img {
    max-width: 5rem;
}
.video__hr {
    color: var(--color-red);
    margin-block: 0.5rem;
}
.video__text {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    max-width: 65ch;
}
.video__video video {
    width: 100%;
}
.text__video {
    font-size: var(--fs-400);
}.testi__images {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
}.images__image {
    max-width: 25rem;
}
.images__image figcaption {
    margin-top: 0.5rem;
    text-align: center;
}
@media (max-width: 1440px) {
    .testi__video {
        flex-direction: column;
        align-items: center;
    }
}
@media (max-width: 990px) {
    .testi__citation {
        flex-direction: column;
    }
    .citation__svg,
    .citation__block {
        width: unset;
    }
}
/* Fin blocs */
.signataires h2 {
    margin-bottom: 5rem;
}
/* .list__perso {
    overflow-y: scroll;
    height: 20rem;
} */
.list__perso .item {
    border-bottom: 2px solid #0000000D;
}
.list__header .header,
.list__perso .perso__nom.item,
.list__perso .perso__qualite.item,
.list__perso .perso__commune.item
 {
    padding: 1rem 1rem 0.5rem 1rem;
}
.list__perso .perso__nom.item:nth-child(1),
.list__perso .perso__qualite.item:nth-child(2),
.list__perso .perso__commune.item:nth-child(3)
 {
    padding-top: 2rem;
}
.list__header {
    border-bottom: 2px solid var(--color-red);
    box-shadow: 5px 10px 20px #0000001c;
    top: 0;
    position: sticky;
    background-color: var(--color-background);
}
@media (max-width: 972px) {
    .list__perso {
        grid-template-columns: 1fr 1fr 1fr;
    }
}
@media (max-width: 500px) {
    .list__perso {
        grid-template-columns: 1fr;
    }
    .list__perso .header {
        display: none;
    }
    .list__perso .perso__nom.item,
    .list__perso .perso__qualite.item {
        border: unset;
    }
}
.list__pagination {
    margin-top: 2rem;
    display: flex;
    gap: 1rem;
    justify-content: center;
}
.pagination__disable {
    color: #999;
}