@import "sections/header.css";
@import "sections/footer.css";
/* TODO : import components CSS */

@import "./animations.css";
@import "./fonts.css";

:root {
    --swiper-theme-color: var(--color-blue);
    --swiper-pagination-color: var(--color-blue);
    --swiper-navigation-color: var(--color-blue);
}


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: 40px;

    font-weight: 500 !important;
    font-size: var(--base-font-size) !important;
    line-height: var(--base-font-size) !important;

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

h2, .titre2 {
    --base-font-size: 36px;
    font-weight: 500 !important;
    scroll-margin-top: calc(var(--spacing) * 12);
    font-size: var(--base-font-size) !important;
    line-height: calc(var(--base-font-size) * 1.25) !important;
}

h3, .titre3 {
    --base-font-size: 25px;
    font-size: var(--base-font-size) !important;
    line-height: calc(var(--base-font-size) * 1.25);
    font-weight: 500 !important;
}

.subtitle {
    --base-font-size: 20px;
    text-transform: uppercase;
    font-weight: normal;
    letter-spacing: 30%;
    font-size: var(--base-font-size);
    line-height: calc(var(--base-font-size) * 1.25);
}

p {
    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: var(--container-padding);
    margin: 0 auto;

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

.container-large {
    max-width: var(--container-lg-width) !important;
    padding: var(--container-padding);
    margin: 0 auto;

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

.container-small {
    max-width: var(--container-sm-width) !important;
    padding: var(--container-padding);
    margin: 0 auto;

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

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

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

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

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

/* 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;
    }
}
