:root {
    --swiper-theme-color: var(--color-primary);
    --swiper-pagination-color: var(--color-primary);
    --swiper-navigation-color: var(--color-primary);
    --swiper-pagination-bullet-inactive-color: var(--gray);
}

html,
body {
    color: var(--color-black);
    font-family: "Poppins", sans-serif;
}

html {
    font-size: var(--text-base);

    @media screen and (max-width: 768px) {
        font-size: calc(var(--text-base) / 1.2);
    }
}

body {
    font-variant: no-contextual;
}

h1, .h1, .titre1 {
    --base-font-size: 4rem;
    --base-line-height: calc(var(--base-font-size) * 1.25);

    font-weight: 600 !important;
    font-family: "Livvic", sans-serif !important;
    font-size: var(--base-font-size) !important;
    line-height: var(--base-line-height) !important;

    @media screen and (max-width: 991px) {
        font-size: calc(var(--base-font-size) / 1.5) !important;
        line-height: calc(var(--base-line-height) / 1.5) !important;
    }
}

h2, .titre2 {
    color: var(--color-primary-dark) !important;
    font-weight: 600 !important;
    font-family: "Livvic", sans-serif !important;
    scroll-margin-top: calc(var(--spacing) * 12);
    font-size: 2.25rem !important;
    line-height: calc(2.25rem * 1.25) !important;
}

h3 {
    color: var(--color-primary-dark) !important;
    font-weight: 500 !important;
    font-family: "Livvic", sans-serif !important;
    font-size: 1.75rem !important;
    line-height: calc(1.75rem * 1.25) !important;
}

h4 {
    font-family: "Livvic" !important;
    font-size: 30px !important;
    font-weight: 500 !important;
    line-height: 48px !important;
}

p {
    font-family: "Poppins", sans-serif !important;
    margin: 0;
}

small {
    font-size: 16px;
    line-height: 24px;
}

img {
    overflow-clip-margin: unset;
}

.breadcrumb_last strong {
    font-weight: 400;
}

/* ============================= */
/* START - Helpers */
/* ============================= */
.container {
    max-width: var(--container-width) !important;
    padding-inline: var(--container-padding);
    margin: 0 auto;

    @media screen and (max-width: 80rem) {
        max-width: 100%;
    }
}

.-z-1 {
    z-index: -1;
}

.font-livvic {
    font-family: "Livvic", sans-serif !important;
}

.font-poppins {
    font-family: "Poppins", sans-serif !important;
}

.drop-shadow-container {
    box-shadow: 0 4px 26px 5px var(--color-primary-dark-30);
}

.gradient-primary {
    background: linear-gradient(
            to bottom,
            var(--color-primary-light),
            var(--color-primary-lighter)
    );
}

.bg-blur {
    mask: linear-gradient(to top, white, rgba(255, 255, 255, 60), transparent);
    backdrop-filter: blur(1px);
    z-index: 0;
}

.z-1 {
    z-index: 1;
}

.support-research-section {
    background: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0) 0.15%,
            rgba(0, 0, 0, 0.24) 99.85%
    ),
    #035d72;
}

.footer-section {
    position: relative;
    background: linear-gradient(
            to right,
            var(--color-primary-light),
            var(--color-primary)
    );
    border-radius: var(--radius-semilarge);
    padding: calc(var(--spacing) * 16);

    @media screen and (max-width: 991px) {
        padding: calc(var(--spacing) * 8);
    }
}

.footer-section.footer-section__large h2 {
    margin-bottom: calc(var(--spacing) * 2);
}

.footer-section:not(.footer-section__large) {
    padding: calc(var(--spacing) * 8);
    background: var(--color-primary-light);
}

.footer-section .footer-section__image {
    z-index: -1;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.footer-section .footer-section__image.footer-section__image-bottom {
    top: unset;
    bottom: -8px;
}

.max-width-container {
    max-width: var(--max-width);
    margin: auto;
    padding-inline: calc(var(--spacing) * 4);
}

.container-small {
    max-width: 1280px;
    margin: 0 auto;
}

.je-fais-un-don {
    position: fixed;
    bottom: 1rem;
    right: -85px;
    z-index: 99999;
    transition: right 0.3s allow-discrete;

    &:hover {
        right: 8px;
    }

    @media screen and (min-width: 991px) {
        top: 50%;
        bottom: unset;
        transform: translateY(-50%);
        right: -95px;
    }
}

/* ============================= */
/* END - Helpers */
/* ============================= */

/* ============================= */
/* END - Carousels */
/* ============================= */

/*recaptcha*/
.grecaptcha-badge {
    visibility: hidden;
}

/* Buttons */
.btn:not(.not-prose) {
    text-align: center;
    padding: 0.5rem 1.25rem;
    border-radius: 22px;
    cursor: pointer;
    text-wrap: nowrap;

    @media screen and (max-width: 768px) {
        padding: 0.375rem 3rem;
    }
}

.desc-hero p {
    margin: 0 0 1rem 0 !important;
}

.desc-hero hr {
    margin: 0 !important;
}

.active:after {
    transform: rotate(45deg);
}

.panel {
    color: var(--color-gray);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}

.panel > div {
    padding: 1rem;
}

/* Cards grid */
.card-grid {
    grid-auto-rows: 1fr;
}

.card p {
    margin-bottom: 0;
}

/* Carousel Temoignages */
/*.carousel_container {*/
/*    display: flex;*/
/*    overflow-x: auto;*/
/*    scroll-snap-type: x proximity;*/
/*    scroll-padding-inline: 0.5rem;*/
/*    scrollbar-width: none;*/
/*}*/
/*.swiper-button-next, .swiper-button-prev {*/
/*    top: 0 !important;*/
/*    bottom: 0 !important;*/
/*    width: var(--swiper-navigation-size) !important;*/
/*}*/

/*.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {*/
/*    content: 'prev' !important;*/
/*}*/

/*.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {*/
/*    content: 'next' !important;*/
/*}*/

.item {
    min-width: 100%;
    scroll-snap-align: start;
}

@media (min-width: 768px) and (pointer: fine) {
    .carousel_container {
        overflow: hidden;
    }
}

.item {
    padding: 1rem;
}

.navigations_btn {
    display: flex;
    justify-content: end;
}

.navigations_btn .items_nav {
    cursor: pointer;
    width: 36px;
    height: 36px;
}

.navigations_btn .items_nav::before {
    content: "";
    position: absolute;
    padding: 0.25rem;
    top: 0;
    left: 0;
    background-image: url(../img/arrow.svg);
    width: 2rem;
    height: 2rem;
}

/* START HEADER  */
header.header-nav.scrolled {
    transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateY(-130%) scale(0.9);
}

header.header-nav.unscrolled {
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateY(0%) scale(1);
}

/* END HEADER  */

