h2.nav-title {
    font-family: "anton";
    font-size: 30px;
}

h2 .title1 {
    color: var(--color-1);
}

h2 .title2 {
    color: var(--color-3);
}

p .p1 {
    font-size: 24px;
    font-family: "edf_bold";
    color: var(--color-1);
}

svg {
    max-width: 100%
}

.module-card__body {
    padding: 0 !important;
}

.btn-2 {
    border: 1px solid white !important;
}

.header {
    background: var(--color-4);
    height: 306px;
}

.header h1 {
    font-family: "anton";
    font-size: 64px;
}

.header p {
    font-size: 20px;
}

h1.title-header {
    display: flex;
    flex-direction: column;
    font-family: "anton";
}

h1 .header-1 {
    color: var(--color-3);
    font-size: 71px;
}

h1 .header-2 {
    color: var(--color-1);
    font-size: 64px;
}

h1 .header-3 {
    color: var(--color-3);
    font-size: 94px;
}

h2 {
    font-size: 45px;
    font-family: "anton";
    text-transform: uppercase;
}

h3 {
    font-size: 27px;
    font-family: "anton";
    text-transform: uppercase;
}

h3.light {
    font-size: 25px;
    font-family: "edf_light";
    text-transform: uppercase;
}

h4 {
    font-size: 18px;
    font-family: "edf_regular";
}

.bg-1 {
    color: white;
}

.declic {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.feuille {
    position: absolute;
    left: 0;
    bottom: 10px;
}

.bloc-container {
    width: 500px;
    margin: 0 auto;
    padding-left: 2rem
}

h1 .header-4 {
    color: var(--color-1);
    font-size: 72px;
}

p .p2 {
    font-size: 24px;
    font-family: "edf_regular";
    color: var(--color-1);
}

.nav-button {
    background: var(--color-1);
    font-size: 23px;
    text-transform: uppercase;
    color: white !important;
    font-family: "edf_extralight";
    line-height: 1.2;
    height: 100%;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    padding: 0 15px;
}

.menu-right {
    height: 100%
}

#main-menu {
    padding-right: 0
}

.menu-level-0 a,
.menu-level-0 .menu-item-container>a {
    height: 100%;
}

.menu-level-0>li.is-current-section>a {
    background: none;
}

.menu-level-0 li {
    border-bottom: 4px solid transparent;
}

.menu-level-0 li:hover,
.menu-level-0>li.is-current-section>a:hover {
    border-bottom: none;
}

.menu-logo img {
    max-width: unset
}

.menu-level-0>li.btn>a {
    background: none;
}

.footer-col-title {
    font-size: 45px;
    font-family: "anton";
    text-transform: uppercase;
    font-weight: 400 !important;
}

.footer1 {
    font-size: 35px;
    font-family: "edf_extrabold";
}

.menu-level-0>li>a:hover {
    border-bottom: 4px solid var(--color-4)
}

.footer2 {
    font-size: 29px;
    font-family: "edf_regular";
}

.footer3 {
    font-size: 20px;
    font-family: "edf_italic";
    margin-top: 10px
}

.footer-composed .footer-logo img,
.footer-composed .footer-logo svg {
    height: 294px;
}

#burger {
    margin-right: 0.5rem;
}

.timeline-programme {
    --timeline-blue: #75b9ff;
    --timeline-orange: #ff641e;
    color: #fff;
}

/* Chaque étape */
.timeline-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
    min-height: 85px;
    padding-left: 22px;
}

/* Trait vertical */
.timeline-item::before {
    content: "";
    position: absolute;

    left: 0;
    top: -50%;
    bottom: -50%;

    width: 1px;
    background: var(--timeline-blue);
}
.menu-level-0>li.btn >a:hover {border-bottom:none}
/* On coupe le trait avant le premier point */
.timeline-item:first-child::before {
    top: 50%;
}

/* On coupe le trait après le dernier point */
.timeline-item:last-child::before {
    bottom: 50%;
}

.img-bg {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0
}

.zi-1 {
    z-index: 2
}

/* Pastille orange */
.timeline-dot {
    position: absolute;
    left: 0;
    top: 50%;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--timeline-orange);
    transform: translate(-50%, -50%);
    z-index: 2;
}

/* Icône */
.timeline-icon {
    flex: 0 0 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.timeline-icon i {
    font-size: 40px;
}

/* Texte */
.timeline-content {
    min-width: 0;
}

.timeline-content h3 {
    margin: 0 0 4px;
    color: #fff;
    font-size: 15px;
    line-height: 1.1;
    font-weight: 700;
    text-transform: uppercase;
}

.module-card__media {

    background: white;
}

.timeline-content p {
    margin: 0;
    color: #fff;
    line-height: 1.25;
    font-weight: 400;
}

.shape-1,
.shape-2 {
    position: absolute;
    left: 0;
    width: 100%;
    line-height: 0;
    pointer-events: none;
}

.shape-1 svg,
.shape-2 svg {
    display: block;
    width: 100%;
    height: auto;
}

.shape-1 {
    top: 0;
}

/* bas */
.shape-2 {
    bottom: 21px;
}

.sun,
.courbe {
    position: absolute;
}

.sun {
    top: -56px;
    right: 5%;
}

.courbe {
    top: 0;
    left: 5%
}

.footer-grid .footer-col:last-child {
    position: absolute;
    right: 0;
    bottom: 0;
}

.footer-grid .footer-col:nth-child(2) {
    z-index: 2;
    position: relative;
}

.site-footer {
    position: relative;
}

.branche {
    position: absolute;
    left: 0;
    top: 5%;
}

p {
    line-height: 1.2
}

.head-img {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media (max-width: 1599px) {
    .branche {

        bottom: -43%;
        height: auto;
        top: unset;
    }
}

@media (max-width: 1499px) {
    .img-bg {
        opacity: 0.4;
    }

    .feuille {
        width: 99px;
    }
}

@media (max-width: 1499px) {
    .sun svg {
        width: 155px !important;
    }

    .head-img img {
        width: 799px;
    }
}

@media (max-width: 1299px) {
    .branche {
        display: none;
    }

    h2 {
        font-size: 36px;
    }


}


@media (max-width: 1199px) {
    .nav-button {
        font-size: 20px
    }

    .head-img img {
        width: 650px;
    }

    .declic {
        display: none;
    }

    .courbe svg {
        width: 567px !important
    }

    .feuille {
        display: none
    }

    .img-bg {
        opacity: 0.2;
    }



    h2.nav-title {
        font-size: 25px;
    }

    p .p1,
    p .p2 {
        font-size: 20px;
    }

    .ventoux {
        opacity: 0.4;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .footer-composed .footer-grid {

        grid-template-columns: 30% 70%;
    }

    .footer1 {
        font-size: 30px;
    }
}

@media (max-width: 768px) {
    .footer-composed .footer-grid {

        gap: 0 15px;
        grid-template-columns: 30% 70%;
    }

    .footer-composed .footer-logo img,
    .footer-composed .footer-logo svg {
        height: 200px;
    }

    .footer-composed .footer-col-title {
        font-size: 35px
    }

    .footer1 {
        font-size: 22px;
    }

    .footer2 {
        font-size: 20px;
    }

    .footer3 {
        font-size: 17px;
    }

}

@media (max-width: 991.98px) {
    .head-img img {
        width: 650px;
    }

    .menu-level-0>li>a,
    .menu-level-0>li.sub-menu>.menu-item-container {

        border-radius: 0;
    }

    .declic svg {
        width: 140px !important;
    }

    h1 .header-3 {

        font-size: 94px !important
    }

    h1 .header-4 {

        font-size: 60px;
    }

    .criteres i {
        font-size: 50px !important;
    }

    h1 .header-1 {

        font-size: 48px;
    }

    h1 .header-2 {

        font-size: 44px;
    }

    h1 .header-3 {
        font-size: 84px !important;
    }

    .bloc-container {
        width: 100%;
    }
}

@media(max-width:768px) {
    .declic {

        right: 20px;
        top: -14px;
        transform: unset
    }

    .sun {
        top: -185px;
    }


}

.header p {
    text-align: left;
}

@media(max-width:575px) {
    .footer-composed .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    h2 {
        font-size: 32px;
    }

    .header h1 {
        text-align: center !important;
    }

    .header p {
        text-align: center;
    }

    .header h1 {

        font-size: 55px;
    }

    .sun {
        display: none;
    }

    .shape-2 {
        bottom: -3px;
    }

    .courbe {

        left: 0;
    }

    .footer-col.footer-col--titled {
        text-align: center
    }
}

.form-check-input[type=checkbox] {
  
    border: 1px solid var(--color-3);
}