:root {
    --small-margin: 40px;
    --medium-margin: 70px;
    --large-margin: 100px;
    --dynamic-margin: 8vw;
    --Vert-Fonce: #166A51;
    --Vert-Tres-Fonce: #05332C;
    --Vert-Moyen: #00B961;
    --Creme: #F2F7F4;
}

::selection {
    background-color: var(--Vert-Tres-Fonce);
    color: white;
}

/* Firefox */
::-moz-selection {
    background-color: var(--Vert-Tres-Fonce);
    color: white;
}

/* width */
::-webkit-scrollbar {
    width: 2px;
}

/* Track */
::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--Vert-Tres-Fonce);
    border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: var(--Vert-Tres-Fonce);
    width: 2px;
}

/******
GENERAL
 ****/
body {
    background-color: white;

}

* {
    font-family: "Manrope", sans-serif;
    font-weight: 400;
}

h1, .h1 {
    color: var(--Vert-Moyen);
    font-size: 60px;
    font-weight: 600;
    line-height: 107%;
    letter-spacing: -0.24px;
}

h2, .h2 {
    font-size: 46px;
    font-style: normal;
    font-weight: 500;
    line-height: 127%;
    color: var(--Vert-Moyen);
    margin-top: 0;
    margin-bottom: 25px;
}

.pd-align {
    padding: 0px 5%;
}

.pd-align-min {
    padding: 0px 20% 0 5%;
}

.pd-top-btn {
    padding-top: 80px;
    padding-bottom: 80px;
}

#container {
    padding-top: 100px;
}

.bg-vert {
    background-color: var(--Vert-Fonce);
}

.left-h2 {
    font-size: 18px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.036px;
    text-transform: uppercase;
    margin: 0;
    position: relative;
    padding-left: 20px;
    color: var(--Vert-Tres-Fonce);
}

.left-h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    height: 10px;
    width: 10px;
    border-radius: 10px;
    background-color: var(--Vert-Tres-Fonce);
}

p {
    font-size: 20px;
    font-weight: 400;
    line-height: 33px;
    color: var(--Vert-Tres-Fonce);
    margin: 20px 0;
}

a, li {
    font-size: 20px;
    font-weight: 400;
    line-height: 33px;
    color: var(--Vert-Tres-Fonce);
}

h3, .h3 {
    font-size: 26px;
    font-style: normal;
    font-weight: 500;
    line-height: 117%;
    letter-spacing: -0.104px;
    margin-top: 0;
    margin-bottom: 20px;
    color: var(--Vert-Moyen);

}

.white {
    color: white;
}

.white::before {
    background-color: white;
}
.mt-50{
    margin-top: 50px;
}

/******
HEADER
 */
#header {
    display: grid;
    grid-template-columns: 375px 1fr 15vw;
    padding: 20px 5%;
    height: 100px;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    background-color: white;
    width: 100%;
    box-shadow: 0 0 rgba(0,0,0,0.1);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);

}
#header.header-scroll{
    box-shadow: 4px 3px 50px -25px rgba(0,0,0,0.1);
    -webkit-box-shadow: 4px 3px 50px -25px rgba(0,0,0,0.1);
    -moz-box-shadow: 4px 3px 50px -25px rgba(0,0,0,0.1);
}
.menu {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.menu-item a {
    color: var(--Vert-Fonce);
    font-size: 18px;
    font-weight: 700;
    line-height: 16px;
}

.menu-item {
    /*margin-right: 60px;*/
    padding: 25px 0px 0 0;
    /*flex: 1;*/
    /*flex-basis: 15%;*/
    /*height: fit-content;*/
    position: relative;
}

.menu-item:last-of-type {
    margin-right: 0;
}

.menu>li>.sub-menu {
    position: fixed;
    top: 100px;
    /*left: 0;*/
    /*width: 100%;*/
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    background-color: white;

    overflow: hidden;
    list-style: unset;
    z-index: -1;
    overflow-y: scroll;
    padding: 0 5%;
    /*opacity: 0;*/
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    grid-gap: 0;
    max-height: 0;

    width: calc(100% - 375px);
    left: 375px;
}

.menu li.menu-item-has-children .sub-menu.active {
    padding: 25px 5% 40px 5%;
    opacity: 1;
    max-height: calc(100vh - 100px);

}
.menu>li.menu-item-has-children{
    padding-right: 20px;
}
.menu>li.menu-item-has-children::after {
    content: '';
    pointer-events: none;
    position: absolute;
    bottom: 13px;
    right: 3px;
    width: 6px;
    height: 6px;
    border: solid var(--Vert-Fonce);
    border-width: 2px 2px 0 0;
    transform: rotate(135deg);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
#footer .menu>li.menu-item-has-children::after{
    display: none;
}
.menu>li.menu-item-has-children:hover::after{
    transform: rotate(-45deg) translate(-2px, 5px);
}
.menu>li>.sub-menu .sub-menu{
    padding: 0;
    margin-top: 20px;
}
.menu>li>.sub-menu li{
    padding: 0;
    margin-right: 0;

}
.menu>li>.sub-menu>li{
    flex: 1;
    flex-basis: 15%;
    height: fit-content;
    padding-right: 20px;
}
.menu>li>.sub-menu .sub-menu a{
    font-weight: 400;
    font-size: 16px;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    display: block;
    padding: 5px 0;
    line-height: 24px;
}
.menu>li>.sub-menu .sub-menu a:hover{
    transform: translate(10px, 0);
}
.ombre-menu {
    transition: 0.4s ease-in-out opacity, 0s 0.4s ease-in-out transform;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
    top: 0;
    height: 100vh;
    transform: scale(0);
    background-color: var(--Vert-Tres-Fonce);
    opacity: 0;
}
body.menu-active .ombre-menu{
    opacity: 0.6;
    transform: scale(1);
    transition: 0.4s 0.1s ease-in-out opacity, 0s 0s ease-in-out transform;
}
.p-relative-menu{
    background-color: white;
}
#logo-container{
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
#logo-container:hover{
    opacity: 0.8;
    transform: scale(0.98) translate(-6px, 0);
}
.menu>.menu-item>a{
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.menu>.menu-item:hover>a, .menu>.menu-item:hover::after{
    opacity: 0.6;
}

/******

FIRST PAGE
 */
.header-home {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-gap: 40px;
    align-items: center;
    height: 540px;
    padding-top: 40px;
    padding-bottom: 5px;
}

.introduction {
    color: var(--Vert-Tres-Fonce);
    font-size: 26px;
    line-height: 150%;
    letter-spacing: -0.052px;
}
.header-home h1, .header-home .introduction {
    position: relative;
    transform: translateX(-200px) scale(0.8);
    transform-origin: left;
    opacity: 0;
    animation: slideFromLeft 0.5s cubic-bezier(.25, .46, .45, .94) forwards;
    animation-delay: calc(var(--animation-order) * 0.1s);
}


@keyframes slideFromLeft {
    0% {
        opacity: 0;
        transform: translateX(-200px) scale(0.8);
    }
    100% {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

.galerie-home {
    display: grid;
    grid-template-columns: 1fr 1.2fr 1fr;
    align-items: flex-end;
    grid-gap: 20px;
}

.galerie-home a {
    width: 100%;
    height: 480px;
    display: block;
    overflow: hidden;
    position: relative;
    transform: translateY(-200px) scale(0.8);
    opacity: 0;
    /*filter: blur(5px);*/

    animation: slideFromTop 0.5s cubic-bezier(.25, .46, .45, .94) forwards;
    animation-delay: calc(var(--animation-order) * 0.15s);
}
@keyframes slideFromTop {
    0% {
        opacity: 0;
        transform: translateY(-200px) scale(0.8);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
.galerie-home img {
    width: 120%;
    height: 120%;
    margin-left: -10%;
    margin-top: -10%;
    object-fit: cover;
    transition: 0.1s linear all;
    /*transition: transform .5s cubic-bezier(.25, .46, .45, .94);*/
}

.galerie-home a:nth-of-type(2) {
    height: 380px;

}

.container-home-infos {
    padding-top: 55px;
    padding-bottom: 55px;
    position: relative;
    background-image: url("../images/pointfonce.svg");
    background-repeat: no-repeat;
    background-position: -2% -140%;
    background-size: 189px;

    opacity: 0;
    transform: translateY(400px);
    animation: slideFromBottom 0.8s cubic-bezier(0.86, 0, 0.07, 1) forwards;
    animation-delay: 0.2s;
}

@keyframes slideFromBottom {
    0% {
        opacity: 0;
        transform: translateY(400px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}



.swiper-container-actu {
    height: 190px;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 2;
}

.twocols-flex {
    display: flex;

}

.twocols-flex > div:first-of-type {
    width: 25%;
}

.twocols-flex > div:nth-of-type(2) {
    width: 75%;
    position: relative;
}

.bloc-news {
    padding-right: 60px;
    margin: 0;
}

.bloc-news h3 {
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    text-align: left;
}

.bloc-news p {
    margin: 0;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    text-align: left;
}

.see-more-post {
    margin-top: 20px;
}

.swiper-vertical > .swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets {
    right: 0 !important;
    z-index: 100;
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
    background-color: white;
    width: 2px;
    border-radius: 0;
    height: 50px;
}

.scrollto {
    position: absolute;
    bottom: 75px;
    right: 5%;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 50px;
    font-size: 16px;
    line-height: 140%;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.scrollto svg{
    transition: all .5s cubic-bezier(.25, .46, .45, .94);

}
.scrollto span {
    transform: rotate(90deg);
    display: block;
    color: white;
    height: 21px;
    width: 100px;
}
#scrollto{
    position: relative;
    top: -150px;
}
.scrollto:hover{
    opacity: 0.6;
}
.scrollto:hover svg{
    transform: translate(0, 10px) scale(0.8);
}
.date-news {
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0.56px;
    position: absolute;
    right: 60px;
    bottom: 0;
    opacity: 0.6;
}

.home-about {
    background: var(--Creme);
    backdrop-filter: blur(7px);
}

.home-about h2 {
    margin-top: -7px;
}

.links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
    margin-top: 30px;
}

.link {
    font-size: 18px;
    font-weight: 500;
    line-height: 160%;
    letter-spacing: 1.62px;
    text-transform: uppercase;
    margin: 0;
    padding: 17px 0;
    border-top: 1px solid var(--Vert-Tres-Fonce);
    border-bottom: 1px solid var(--Vert-Tres-Fonce);
    position: relative;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);

}

.link svg {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0, -50%);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);

}
.link:hover{
    padding-left: 20px;
}
.link:hover svg{
    transform: translate(-20px, -50%);
}
.home-about .video-wrapper{
    margin-top: 80px;
}
.video-wrapper{
    margin-top: 30px;
    position: relative;
}
.video-wrapper::before{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.3;
    background: var(--Vert-Tres-Fonce);
    width: 100%;
    z-index: 2;
    height: 100%;
}
.controls{
    position: relative;
    z-index: 3;
}
.playpause{
    background-color: var(--Vert-Moyen);
    border-radius: 50px;
    height: 60px;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 5px 5px 5px;
    position: absolute;
    left: 20px;
    z-index: 3;
    bottom: 20px;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.playpause:hover{
    transform: scale(1.15);
}
.playpause svg{
    height: 20px;
    width: 20px;
}
.playpause.pause svg:first-of-type, .playpause.play svg:last-of-type{
    display: block;
}
.playpause.pause svg:last-of-type, .playpause.play svg:first-of-type{
    display: none;
}

.nos-adresses{
    position: relative;
    height: 62vw;
}
.nos-adresses .twocols-flex .label-map{
    position: relative;
    z-index: 3;
}
.little-section-maps{
    position: relative;
    z-index: 3;
    padding-right: 0;
    display: inline-block;
    width: fit-content;
}

.container-pharma-place{
    width: 100%;
    height: 64vw;
    overflow: hidden;
    position: absolute;
    top: -30px;
    border-bottom: 1px solid white;
}
.container-pharma-place>img{
    width: 100%;
    height: 80vw;
    overflow: hidden;
}
.place-pharma{
    position: absolute;
    transform: translate(-27px, 18px);
    z-index: 10;
}
.point{
    background-color: var(--Vert-Moyen);
    height: 25px;
    width: 25px;
    border-radius: 50px;
    cursor: pointer;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.point.hos{
    background-color: #239CB9;
}
.point:hover{
    transform: scale(1.2);
}
.modal-point{
    position: relative;
    z-index: 100;


    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    max-height: 0;
    overflow-y: hidden;
    padding: 0 25px;

}
.modal-point.active{
    max-height: 500px;
    /*padding: 0 0 25px 0;*/
    padding: 25px;
}
.modal-point{
    position: absolute;
    bottom: -20px;
    left: 50%;
    /*background-color: white;*/
    width: 335px;

    transform: translate(-50%, -40px);
}
.modal-point>div{
    background-color: white;
    padding: 25px;
    border: 1px solid var(--Creme);
    box-shadow: 0 0 rgba(0,0,0,0.24);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    position: relative;
}
.modal-point.active>div{
    box-shadow: 2px 3px 18px 0px rgba(0,0,0,0.24);
    -webkit-box-shadow: 2px 3px 18px 0px rgba(0,0,0,0.24);
    -moz-box-shadow: 2px 3px 18px 0px rgba(0,0,0,0.24);
}
.modal-point>div::after{
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, 0);
    height: 11px;
    width: 34px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background-color: white;
}
.modal-point>div h3{
    font-size: 18px;
    margin-bottom: 10px;
    color: var(--Vert-Tres-Fonce);
    font-weight: 700;
}
.modal-point>div p{
    margin: 0;
    font-size: 18px;
    line-height: 28px;
}
.modal-point>div a{
    font-size: 18px;
    color: var(--Vert-Moyen);
}
.close-modal{
    position: absolute;
    right: 40px;
    top: 40px;
    cursor: pointer;
    z-index: 10;
}
.modal-point.hos a{
    color: #239CB9;
}
.modal-point img{
    width: 70%;
    margin-bottom: 20px;
    object-fit: contain;
}

.label-map::after{
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    height: 20px;
    width: 20px;
    border-radius: 50px;
    background-color: var(--Vert-Moyen);
}
.label-map{
    position: relative;
    padding-left: 40px;
    cursor: pointer;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.label-map:first-of-type{
    margin-top: 60px;
}
.label-map.hos::after{
    background-color: #239CB9;
}
.label-map.active{
    opacity: 0.6;
}
.label-map:hover{
    transform: translate(10px, 0);
}
.container-emplois-home .link{
    display: block;
    width: 50%;
}
.container-emplois-home .link:not(:last-of-type){
    border-bottom: 0;
}
.home-work{
    position: relative;
    overflow: hidden;
}
.work-svg{
    position: absolute;
    right: 5%;
    bottom: -25px;
}


/***********
GALERIE
 */
.flex-galerie{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.flex-galerie a{
    flex: 1;
    flex-basis: 25%;
    height: fit-content;
    line-height: 0;
}
.flex-galerie a img{
    width: 100%;
    height: 350px;
    object-fit: cover;
}
/*****
FOOTER
 */
#footer{
    border-top: 1px solid var(--Vert-Fonce);
}
#footer .custom-logo-link{
    margin-bottom: 20px;
    display: block;
}
#footer p, #footer a{
    margin: 0;
    font-size: 14px;
    font-weight: 300;
    line-height: 150%;
    letter-spacing: -0.028px;
}
.grid-ft{
    display: grid;
    grid-template-columns: 25% 1fr;
}
#footer .titre-ft{
    font-weight: 700;
}
#footer .menu>li>a{
    font-weight: 700;
}
#footer .sub-menu{
    position: static;
    max-height: unset;
    overflow: unset;
    opacity: 1;
    background-color: transparent;
    width: 100%;
    box-shadow: 0 0 black;
    padding: 0;
    display: block;
}
#footer .sub-menu>li>.sub-menu{
    display: none;
}
#footer li{
    padding: 10px 0;
    /*width: 100%;*/
    margin: 0;
    flex: 1;
    line-height: 20px;

}
#footer .sub-menu{
    margin-top: 20px;
}
#footer .sub-menu>li{
    border-bottom: 1px solid #CFDAD8;
    padding: 10px 0;
}
#footer .menu{
    align-items: flex-start;
}
#footer .menu a{
    color: var(--Vert-Tres-Fonce);
}


/******
PAGE
 */
.filariane{
    background: rgba(221, 237, 226, 0.4);
    padding-top: 2px;
    padding-bottom: 7px;
}
.filariane .breadcrumb-item a, .filariane .breadcrumb-item span{
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--Vert-Tres-Fonce);
}
.filariane .breadcrumb-item.active span{
    font-weight: 700;
}
.breadcrumb li::after{
    margin-left: 2px;
    margin-right: 3px;
    position: relative;
    bottom: -2px;
}
.grid-content-page, .grid-two-col{
    display: grid;
    /*grid-template-columns: 25% 1fr;*/
    grid-template-columns: 375px 1fr;
    min-height: 700px;
}
.grid-two-col{
    min-height: unset;
}
.icone-avant{
    margin-top: 80px;
    width: 100%;
    height: auto;
    object-fit: contain;
}
.head-page h1{
    margin-top: -10px;
    margin-bottom: 0px;
}
.head-page{
    margin-bottom: 50px;
}
.intro-page{
    margin-top: 35px;
    margin-bottom: 0;
    font-size: 26px;
    font-weight: 400;
    line-height: 160%;
    color: var(--Vert-Tres-Fonce);
}
.sub-left-menu{
    max-height: 0;
    overflow: hidden;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.menus-left{
    padding-right: 80px;
}
.menus-left{
    transform: translateX(-200px);
    transform-origin: left;
    opacity: 0;
    animation: slideFromLeftother 0.5s cubic-bezier(.25, .46, .45, .94) forwards;
    animation-delay: 0.2s;
}
@keyframes slideFromLeftother {
    0% {
        opacity: 0;
        transform: translateX(-200px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
.content-page-right{
    transform: translateY(200px);
    transform-origin: bottom;
    opacity: 0;
    animation: slideFrombottomother 0.5s cubic-bezier(.25, .46, .45, .94) forwards;
    animation-delay: 0.2s;
}
@keyframes slideFrombottomother {
    0% {
        opacity: 0;
        transform: translateY(200px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


.menus-left li{
    border-top: 1px solid var(--Vert-Fonce);
}
.menus-left a{
    padding: 10px;
    display: block;

    font-size: 16px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.016px;
    position: relative;
}
.menus-left a svg{
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0%, -50%);
}
.menus-left>ul>li:last-of-type{
    border-bottom: 1px solid var(--Vert-Fonce);
}
.menus-left .sub-left-menu a{
    font-weight: 400;
    background: rgba(221, 237, 226, 0.70);
}
.sub-left-menu a svg{
    display: none;
}
.current-parent{
    background-color: var(--Vert-Fonce);
    color: white;
}
.menus-left .sub-left-menu a.current-page{
    background-color: var(--Vert-Moyen);
    color: white;
    font-weight: 600;
}
.menus-left .sub-left-menu a.current-page path{
    stroke: white;
}
.menus-left .current-parent svg{
    transform: rotate(90deg) translate(-50%, 0);
}
.current-parent svg path{
    stroke: white;
}
.current-parent + .sub-left-menu{
    max-height: 600px;

}


.element-item,.element-header{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
}
.tab-item, .tab-header{
    flex: 1;
    flex-basis: 15%;
    height: fit-content;
    padding: 15px 0;
}
.element-header{
    border-top: 1px solid var(--Vert-Moyen);
    border-bottom: 1px solid var(--Vert-Moyen);
}
.tab-header{
    color: var(--Vert-Moyen);
    font-size: 12px;
    font-weight: 700;
    line-height: 26px;
    letter-spacing: 0.72px;
    text-transform: uppercase;
    cursor: pointer;
}
.element-item{
    border-bottom: 1px solid rgba(57, 124, 104, 0.30);
    z-index: 10;
}
.element-item::after{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    background-color: white;
    z-index: -1;
}
.tab-item, .tab-item a{
    font-size: 15px;
    font-weight: 500;
    line-height: 26px;
    color: var(--Vert-Tres-Fonce);
}
.tab-item{
    padding-right: 10px;
}
.element-item:hover::after{
    background: #f5faf7;
}
.tab-item .file-down{
    background-color: var(--Vert-Moyen);
    color: white;
    display: flex;
    align-items: center;
    padding: 7px;
    width: fit-content;
    font-size: 12px;
    font-weight: 400;
    line-height: 12px;
}
.tab-item .file-down svg{
    width: 12px;
    height: 11px;
    margin-left: 5px;
}
.tab-item.hastag::before{
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: red;
    border-radius: 8px;
    margin-right: 7px;
    position: relative;
    top: -2px;
}
.tab-item.hastag.ones::before{
    background-color: #00B961;
}
.tab-item.hastag.twos::before{
    background-color: #F2D368;
}
.tab-item.hastag.onem::before{
    background-color: #DE4D4D;
}
.search-update{
    display: grid;
    grid-template-columns: 1fr 0.5fr;
    margin-bottom: 15px;
}
.tab-rupt .tab-item:nth-of-type(1), .tab-rupt .tab-header:nth-of-type(1){
    min-width: 300px;
}
.tab-rupt .tab-item:nth-of-type(3), .tab-rupt .tab-header:nth-of-type(3){
    min-width: 175px;

}
.tab-rupt .tab-item:nth-of-type(5), .tab-rupt .tab-header:nth-of-type(5){
    min-width: 325px;
}

.last-updated{
    text-align: right;
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    margin: 0;
}
.quicksearch{
    display: flex;
    align-items: center;
}
.quicksearch>svg{
    margin-right: 10px;
}
.input-quicksearch, .input-quicksearch::placeholder{
    font-size: 20px;
    font-weight: 400;
    line-height: 36px;
    background-color: transparent;
    color: var(--Vert-Tres-Fonce);
    height: auto;
    margin: 0;
    padding: 0;
}
.input-quicksearch::placeholder{
    opacity: 0.4;
}

/****
Flexible
 */
.txt h2{
    color: var(--Vert-Fonce);
    margin-bottom: 40px;
}
.container-content:not(:first-of-type){
    margin-top: 60px;
}
.con-text p:last-of-type{
    margin-bottom: 0;
}
.txt ul{
    margin: 20px 0;
}
.txt li{
    padding-left: 20px;
    position: relative;
    margin-bottom: 5px;
}
.txt li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    height: 8px;
    width: 8px;
    border-radius: 8px;
    background-color: var(--Vert-Moyen);
}
.txt p:last-of-type{
    margin-bottom: 0;
}
.tab-pij h3{
    color: var(--Vert-Fonce);
}
.tab-pij .tab-item{
    padding: 30px 0;
}
.number-el{
    font-size: 140px;
    font-weight: 500;
    line-height: 110px;
    letter-spacing: -0.56px;
    opacity: 0.1;
    display: block;
}
.tab-pij .tab-item:first-of-type{
    max-width: 300px;
}
.tab-pij .tab-item:last-of-type{
    max-width: 200px;
}
.tab-pij .element-item:first-of-type{
    border-top: 1px solid var(--Vert-Moyen);
}
.tab-pij .element-item{
    border-bottom: 1px solid var(--Vert-Moyen);
}
.sub-menu-bulletin{
    max-width: 700px;
}
.sub-menu-bulletin>span:last-of-type span{
    display: none;
}

/*********
PIJ INFOS
 */
.go-back{
    position: relative;
    padding-left: 20px;

    font-size: 14px;
    /*font-weight: 700;*/
    line-height: 20px;
    cursor: pointer;
    margin-top: 6px;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.go-back::after{
    content: '';
    position: absolute;
    top: 50%;
    left: 0px;
    width: 7px;
    height: 7px;
    border: solid white;
    border-width: 0 0 1px 1px;
    transform: translate(0, -3px) rotate(45deg);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.go-back:hover{
    transform: translate(-10px, 0px);
}
.go-back:hover::after{
    transform: translate(5px, -3px) rotate(45deg);
}
.intro-page.white{
    color: white;
}
.date-bi{
    padding-left: 40px;
    position: relative;
    font-weight: 700;

}
.date-bi::after{
    content: "";
    position: absolute;
    left: 0;
    top: 16px;
    height: 2px;
    width: 30px;
    background-color: white;
}
.actions{

}
.pointer{
    cursor: pointer;
}
.copyurlbutton{
    position: relative;
}
.copyurlbutton svg{
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.copyurlbutton svg:hover{
    transform: scale(0.9);
}
.copied-message{
    font-size: 14px;
    position: absolute;
    top: 100%;
    left: 0;
    margin: 0;
}
.general-infos .copied-message{
    color: var(--Vert-Fonce);
}
.green-header-infos{
    position: relative;
    padding-top: 60px;
    padding-bottom: 60px;
}
.svg-pij{
    position: absolute;
    right: 5%;
    bottom: -50px;
}
.tab-flexi .tab-item p{
    font-size: 15px;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
}
.light-green{
    color: var(--Vert-Moyen);
}
.light-green::before{
    background-color: var(--Vert-Moyen);
}
.section-link{
    margin-top: 30px;
}
.section-link li{
    line-height: 26px;
}
.section-link li.active a{
    color: var(--Vert-Moyen);
}
.section-secondaire, .section-principal{
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.014px;
    margin: 7px 0;
    display: block;
}
.section-principal{
    font-weight: 800;
    margin-top: 12px;
}
.scroll-sec{
    position: relative;
    top: -120px;
}

.p-stick{
    position: sticky;
    top: 120px;
    left: 0;
}
.accordeon-titre>span, .accordeon-content{
    /*padding-right: 15vw;*/
    /*display: block;*/
}
.not-full-wd{
    padding-right: 15vw;
    display: block;
}
.accordeon-titre{
    position: relative;
    cursor: pointer;
    padding: 30px 0;
    margin: 0;
}
.accordeon-container{
    border-bottom: 1px solid var(--Vert-Fonce);

}
.titre-txt .accordeon-container:nth-of-type(2){
    border-top: 1px solid var(--Vert-Fonce);

}
.accordeon-titre::after{
    content: '';
    position: absolute;
    top: 38px;
    right: 10px;
    width: 12px;
    height: 12px;
    border: solid var(--Vert-Moyen);
    border-width: 0 0 1px 1px;
    transform: translate(50%, -3px) rotate(-45deg);
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.accordeon-titre.active::after{
    transform: translate(50%, -3px) rotate(135deg);
}
.accordeon-content p{
    margin-top: 0;
}
.accordeon-content{
    padding-bottom: 40px;
}
.img-on-page{
    display: block;
}
.img-on-page img{
    max-height: 600px;
    object-fit: contain;
    width: 100%;
    object-position: left;
}
.txt video{

}
.mt-40{
    margin-top: 40px;
}
.galerie-page{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 3px;
}
.galerie-page img{
    height: 20vw;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.general-infos{
    background: var(--Creme);
}
.flex-end-el{
    display: flex;
    align-items: flex-end;
}
.general-pij .txt p:first-of-type{
    margin-top: 0;
}
.general-pij .txt{
    padding: 40px 0;
    border-bottom: 1px solid rgba(22, 106, 81, 0.3);
}
.general-pij .txt:first-of-type{
    border-top: 1px solid rgba(22, 106, 81, 0.3);
}

.underline{
    width: fit-content;
    background-image: linear-gradient(transparent calc(100% - 1px), var(--Vert-Moyen) 10px);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transition: background-size 1s cubic-bezier(.25, .46, .45, .94);

    color: var(--Vert-Moyen);
}
.underline:hover{
    background-size: 0% 100%;
}

.search-menu{
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.search-menu svg{
    margin-bottom: 7px;
    cursor: pointer;
}

#searchform {
    position: fixed;
    right: calc(5% + 38px);
    top: 39px;
    width: 0;
    /*transform: translate(0, -100px);*/
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
    z-index: 10000;
    overflow: hidden;
}

#searchform.active {
    /*transform: translate(0, 0px);*/
    width: calc(90% - 38px - 375px);

}

#searchform input {
    margin-top: 0;
    width: 100%;
    border-top: 0;
    color: var(--Vert-Fonce);
    background-color: var(--Creme);
}

#searchform .btn-search, #searchform .btn-icon {
    display: none;
}
.search-result-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 40px;
}
.search-card{
    background-color: var(--Creme);
    padding: 40px;
    transition: all .5s cubic-bezier(.25, .46, .45, .94);
}
.search-card:hover{
    transform: scale(0.95);
}
.search-card p{
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    text-align: left;
    margin-bottom: 0;
    margin-top: 0;
}
.search-card h3{
    margin-bottom: 15px;
}
#search{
    width: 600px;
}