@import "sections/header.css";
@import "sections/accordion.css";
@import "sections/footer.css";
@import "sections/numbers.css";
@import "sections/text-slider.css";

@import "components/forms.css";
@import "components/buttons.css";
@import "components/icons.css";
@import "components/card-stack.css";
@import "components/tables.css";
@import "components/tabs.css";

@import "./accessibility.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;
    font-family: var(--font-base);
}

main {
    padding-top: 9rem;

    @media screen and (max-width: 1279px) {
        padding-top: 4rem;
    }
}

section {
    scroll-margin-top: 9rem;

    @media screen and (max-width: 1279px) {
        scroll-margin-top: 4rem;
    }
}

h1, .h1, .titre1 {
    --base-font-size: 45px;
    --base-line-height: 50px;

    font-weight: 800 !important;
    font-size: var(--base-font-size) !important;
    line-height: var(--base-line-height) !important;
    margin-bottom: 0.75% !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 {
    --base-font-size: 35px;
    --base-line-height: 40px;

    font-weight: 800 !important;
    scroll-margin-top: calc(var(--spacing) * 12);
    font-size: var(--base-font-size) !important;
    line-height: calc(var(--base-line-height)) !important;
}

h3, .titre3 {
    --base-font-size: 25px;
    --base-line-height: 30px;

    font-weight: 700 !important;
    font-size: var(--base-font-size) !important;
    line-height: calc(var(--base-line-height));
}

h1, h2, h3 {
    p {
        margin-bottom: 0 !important;
    }
}

p:has(+ ul) {
    margin: 0 !important;
}

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

img {
    overflow-clip-margin: unset;
}

.bg-baby-powder .breadcrumb_last strong, .bg-linen .breadcrumb_last strong {
    color: var(--color-red);
}

hr {
    border-color: var(--color-yellow);
    border-width: 3px;
    max-width: 200px;
    margin-bottom: 24px !important;
}

ul li:not(.menu-item):not(.footer-links):not(.commune-ac__option) {
    list-style: disc;
    margin-left: 25px;
    margin-bottom: 0px;

    &:last-of-type {
        margin-bottom: 1.5rem;
    }
}

ol li:not(.menu-item):not(.footer-links) {
    list-style: decimal;
    margin-left: 25px;
    margin-bottom: 0px;
}

ol:not(:last-child) li:not(.menu-item):not(.footer-links):last-of-type {
    margin-bottom: 1.5rem;
}

/* ============================= */
/* START - correctifs WP */
/* ============================= */
figure.aligncenter.size-full img {
    width: 100%;
}

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

.xl\:divide-y > .xl\:hidden + :not(.xl\:hidden),
.xl\:divide-y > .hidden + :not(.hidden),
.xl\:divide-y > [hidden] + :not([hidden]),
.divide-y > .xl\:hidden + :not(.xl\:hidden),
.divide-y > .hidden + :not(.hidden),
.divide-y > [hidden] + :not([hidden]) {
    border-top-width: 0 !important;
    border-bottom-width: 0 !important;
}

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