@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Croissant+One&display=swap');

body {
    scroll-behavior: smooth;
    background-color: #FFA115;
    font-family: 'Open Sans', sans-serif;
    transition: 0.3s;    
}

p, h1, h2, h3 {
    color: rgb(17, 17, 17);
    letter-spacing: -0.08em;
}
p {
    font-size: 32px;
}

h1 {
    font-weight: bolder;
    font-size: 64px;
}
.cards_display img {
    width: 12vw;
}
.post_video>img {
    max-width: 40vw;
}
.main_buttons, 
.main_buttons:not(:hover) {
    width: 20vw;
    height: 10vh;
    border: none;
    box-shadow: 0px 1vh 1vw rgba(0, 0, 0, 0.25), 5px 10px 4px rgba(0, 0, 0, 0.25), 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
    font-size: 24px;
    font-weight: 600;
    transition: 0.1s;
}

.main_buttons:hover {
    border: 0.8px rgba(17, 17, 17, 0.7) solid;
    box-shadow: none;
    transition: 0.09s;
    font-size: 20px;
}
.ingenium {
    font-family: 'Croissant One', cursive;
}
/* RESPONSIVE ELEMENTS */
@media screen and (max-width: 992px) {
    p {
        font-size: 16px;
    }
    h1 {
        padding: 1vh 15vw 5vh;
    }
    .page2 {
        flex-flow: column;
    }
    .page3 {
        flex-flow: column;
    }
    .page4 {
        flex-flow: column;
    }
    .post_flex {
        flex-direction: column;
        align-items: center;
        margin: 2%;
        width: 100vw;
    }
    .post {
        width: 100%;
    }
    #post_separator {
        display: none;
    }
    .calltoaction2>img {
        display: none;
    }
}

/* ____________________________________MENU________________________________ */

.header {
    position: fixed;
    overflow: hidden;
    z-index: 2;
    background:#ffa115;
    width: 100%;
    height: 9vh;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 25px;
}

.logo a {
    display: block;
}
.logo a img {
    display: block;
    max-width: 80%;
}

.navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.menu {
    display: flex;
    color: #3D7A6F;
    justify-content: center;
    flex-direction: row;
    align-items: center;
    z-index: 1;
    transition: 0.5s;
    
}
.menu li {
    list-style-type: none;
    color: #111;
}
.menu li a {
    color: #111;
    text-decoration: none;
    display: block;
    padding: 40px 25px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    transition: 0.3s;
}
.menu li a:hover {
    box-shadow: 0 -5px 0px #3D7A6F inset,
    500px 0 0 rgba(255, 255, 255, 0.03) inset;
    padding: 35px 25px 45px 25px;
}

.hamburger {
    position: relative;
    display: none;
    width: 30px;
    height: 4px;
    background: #3D7A6F;
    border-radius: 10px;
    cursor: pointer;
    transition: 0.3s;
}
.hamburger:before,
.hamburger:after {
    content: "";
    position: absolute;
    height: 4px;
    right: 0;
    background: #3D7A6F;
    border-radius: 10px;
    transition: 0.3s;
}
.hamburger:before {
    top: -10px;
    width: 20px;
}
.hamburger:after {
    top: 10px;
    width: 25px;
}
/* RESPONSIVE MENU */
@media screen and (max-width: 992px) {
    .header {
        padding: 10px 20px;

    }
    #main_header {
        font-size: 5em;
    }
    .hamburger {
        display: block;
    }
    #hamburger_button {
        content: " ";
        height: 100%;
        width: 100%;
        padding-bottom: 2vh;
        border: none;
        background: #ffa115;
        opacity: 0;
    }
    .menu {
        justify-content: flex-start;
        flex-direction: column;
        align-items: center;
        background: #ffa115;
    }
    .menu li {
        width: 100%;

    }
    .menu li a {
        padding: 30px;
        font-size: 20px;
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.24) inset;
    }
    #offcanvasResponsive {
        background: #ffa115;
    }
}

/* ________________________________________________________________________ */


/* _________________________________PAGE 1_________________________________ */

.page1 {
    background: #fff;
    padding: 16vh 0 11.5vh;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column wrap;
}
#main_header {
    margin-bottom: 5vh;
}
.below_numbers {
    padding: 0px 30vw 0px;
}

#separator_up,
#separator_down {
    max-width: 16vw;
    margin: auto;
}



/* COUNTER */
.counter {
    display: flex;
    flex-flow: column wrap;
    align-content: flex-start;
}

/* ANIMATED IMG */

#wojak1 img {
    height: 30vh;
    width: auto;
    border-radius: 50%;
    animation: fadeout 350ms forwards;
    animation-delay: 1.9s;
}

@keyframes fadeout {
    from {
        opacity:1;
    }
    20% {
      opacity: 80%;
    }
    40% {
        opacity: 60%;
    }
    60% {
        opacity: 40%;
    }
    80% {
        opacity: 20%;
    }
    90% {
        opacity: 10%;
    }
    100% {
        opacity: 0%;
    }
  }

#wojak1 {
    background-image: url(/Ressources/Images/bloomengineer.png);
    background-color: #3D7A6F;
    align-self: center;
    border-radius: 55%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 27.5vh;
    
}
/* ___________ */



/* NUMÉROS DÉROULANTS */
.numbers {
    padding-top: 2vh;
    font-size: 130px;
    line-height: 1em;
    text-align: center;
    margin: 10px auto;
    overflow: hidden;
    transition: 0.3s;
}

.numbers h2 {
    padding: 3vh;
    font-size: 0.3em;
}

.numbers__window {
    font-family: 'Open Sans', sans-serif;
    display: inline-block;
    overflow: hidden;
    width: 0.75em;
    height: 1em;
}

.numbers__window__digit {
    font: inherit;
    word-break: break-all;
    display: block;
    padding: 0 0.52em 0 0;
    margin: 0 auto;
    overflow: inherit;
    animation: counting 0.15s steps(10) forwards infinite;
  }

.numbers__window__digit::before {
content: attr(data-fake);
display: inline-block;
width: 100%;
height: auto;
}

@keyframes counting {
100% {
    transform: translate3d(0, -10em, 0);
}
}

.numbers__window__digit--1 {
animation-iteration-count: 3;
}
.numbers__window__digit--2 {
animation-iteration-count: 6;
}
.numbers__window__digit--3 {
animation-iteration-count: 9;
}
.numbers__window__digit--4 {
animation-iteration-count: 12;
}
.numbers__window__digit--5 {
animation-iteration-count: 15;
}



/* ______________________________RESPONSIVE PAGE1 __________________________*/
@media screen and (max-width : 992px) {
    .counter {
        padding-top: 4vh;
    }
    #separator_up,
    #separator_down {
    max-width: 40vw;
    margin: auto;
    padding: 0 0 2vh;
    }
    .below_numbers {
        padding: 0 0 12vh;
    }
}
@media(max-width:1550px) {
    .numbers {
        font-size: 120px;
    }
    #main_header {
        font-size: 60px;
        padding: 0 10vw 8vh;
    }
    .value {
        padding: 20px 200px 0px 250px;
    }
    .value #quote {
        font-size: 35px;
    }
}
@media (max-width: 1024px){
	#main_header {
        font-size: 50px;
        padding: 0 8vh 8vh;
    }
    .numbers {
        font-size: 110px;
    }
    .value #quote {
        font-size: 30px;
    }
}

@media (max-width: 700px){
	.numbers {
        font-size: 100px;
    }
    #main_header {
        font-size: 55px;
        padding: 0 7vw 8vh;
    }
    #wojak1 img {
        width: 35vw;
        height: 30vh;
    }
}
@media (max-width: 699px){
    #main_header {
        font-size: 60px;
        padding: 0 6vw 8vh;
    }
    #wojak1 img {
        width: 40vw;
        height: 30vh;
    }
}
@media (max-width: 576px){
    #main_header {
        font-size: 60px;
        padding: 0 6vw 8vh;
    }
	.numbers {
        font-size: 80px;
    }
    #wojak1 img {
        background-size: 50%;
        width: 52vw;
        height: 29vh;
    }
}
/* _______________________________PAGE1 END________________________________ */



/* _________________________________PAGE 2_________________________________ */
@media screen and (min-width : 992px) {
    .page2 {
        padding: 12vh 2vw 0;
        margin-bottom: 10vh;
        display: flex;
        flex-flow: row wrap;
    }

    .page2_text {
        display: flex;
        margin-top: 8vh;
    }
    .context,
    .calltoaction1 {
        margin-left: 5vw;
        margin-right: 5vw;
    }
    #heading_area{
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        margin-bottom: 2vh;
    }

    #goal {
        justify-content: flex-start;
        margin-left: 3vw;
    }
    #goal_separator {
        height: 18vh;
        width: 0.1vw;
        opacity: 20%;
        margin-left: 5vw;
        background: #111;
    }
    #goal_text {
        padding-right: 10vw;
        padding-left: 5vw;
    }
    #goal_text h2 {
        font-size: 48px;
        font-weight: 600;
    }
    
    #conclusion {
        font-weight: 600;
        padding-right: 5vw;
    }
    
    .call_to_action1 {
        display: flex;
        flex-flow: column;
        justify-content: center;
        align-items: center;
    }
    .asterisk h6 {
        margin-top: 1vh;
        font-size: 10px;
    }

    .call_to_action1 button {
        justify-content: flex-end;
    }
}

/* _____________________________FIN PAGE2__________________________________ */

/* _________________________________PAGE 3_________________________________ */

.page3 {
    display: flex;
    flex-flow: column;
    margin-top: 23vh;
}
.card_intro {
    display: flex;
    text-align: left;
    flex-flow: row nowrap;
    width: 85%;
    margin-left: 5%;
}
#separator2 {
    height: 25vh;
    width: 0.1vw;
    opacity: 20%;
    margin: -0.1% 5% 0;
    background: #111;
}
.card_intro>h1 {
    padding: 0 2vw 0;
}
.page3>p {
    margin: 0 7.4vw 5vh;
    font-size: 25px;
}
.emphasize {
    font-size: 1.3em;
    font-weight: 600;
}
#before_cards {
    padding-top: 3%;
    margin-left: -40%;
    text-decoration: underline;
}
.cards_display {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    align-items: flex-start;
    height: auto;
}
.pf_card {
    display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-items: flex-start;
    background: #D9D9D9;
    height: 57vh;
    width: 23vw;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25), 5px 10px 4px rgba(0, 0, 0, 0.25), 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 45px;
}
.pf_cardheader {
    display: flex;
    margin: 0 auto;
}
.pf_cardheader img {
    width: 8vw;
    border-radius: 50%;
}
.pf_cardtitle {
    align-self: center;
}
.pf_cardtitle>h3 {
    font-weight: 800;
    text-transform: uppercase;
    padding-top: 1vh;
}
.underline {
    padding: auto;
    height: 5px;
    background: #3D7A6F;
    margin-bottom: 2vh;
    width: 100%;
}
.card_desc {
    display: flex;
    align-self: center;
    justify-content: center;
    align-items: flex-start;
    background: #111;
    padding: 5%;
    border-radius: 8%;
    width: 80%;
    height: 50%;
}
.desc_text>p {
    color: #fff;
    font-weight: 400;
    font-size: 18px;
}
/* ______________________________RESPONSIVE PAGE3 __________________________*/

@media screen and (max-width : 1700px) {
    #before_cards {
        margin: 0 auto 2%;
        padding: 0 1vw 0;
    }
    .desc_text>p {
        color: #fff;
        font-weight: 400;
        font-size: 16px;
    }
}
@media screen and (max-width : 1420px) {
    .card_intro>p {
        font-size: 24px;
    }
    .pf_cardheader img {
        width: 8vw;
    }
    .desc_text>p {
        color: #fff;
        font-weight: 400;
        font-size: 14px;
    }
}
@media screen and (max-width : 1000px) {
    .card_intro {
        display: flex;
        text-align: left;
        flex-flow: column wrap;
    }
    #separator2 {
        transform: rotate(90deg);
        margin: 0 0 0;
    }
    .cards_display {
        padding: 5% 0 5%;
    }
    .pf_card {
        display: flex;
        width: 310px;
        height: 120%;
        background: #D9D9D9;
        box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25), 5px 10px 4px rgba(0, 0, 0, 0.25), 0px 4px 4px rgba(0, 0, 0, 0.25);
    }
    .pf_cardheader img {
        width: 15vw;
    }
    .card_desc {
        display: flex;
        align-self: center;
        justify-content: center;
        align-items: flex-start;
        background: #111;
        padding: 5%;
        border-radius: 8%;
        width: 80%;
        height: 50%;
    }
}
@media screen and (max-width : 620px) {
    .pf_cardheader img {
        width: 30vw;
    }
    .pf_card {
        margin: 5px 0 5px;
    }
}
/* _________________________________________________________________________*/

/* ____________________________________PAGE4 _______________________________*/

.page4 {
    display: flex;
    flex-direction: column;
    margin: 15vh 4vw 0vh;

}
.post_flex {
    display: flex;
    justify-content: space-between;
    margin-top: 8vh;
}
.post {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 45%;
    background: #fff;
    filter: drop-shadow(-14px 18px 4px rgba(0, 0, 0, 0.25));
}
#post_title h3{
    font-weight: 600;
    margin: -2vh 0 2vh;
}
.post h3 {
    font-size: 32px;
    padding: 5% 5% 0;
}
.post p {
    font-size: 20px;
    font-weight: 600;
    padding: 0% 10% 0;

}
.post li {
    font-size: 20px;
    font-weight: 600;
    margin: 0% 10% 0;
}
.post a {
    color: #111;
    font-weight: 800;
}
.post_calltoaction {
    margin-left: 70%;
}
#author {
    display: flex;
    height: 15vh;
    flex-direction: row wrap;
    background: #3D7A6F;
    padding-left: 5px;
}
#author>h3 {
    color: #fff;
    margin-bottom: 3vh;
}
.checked {
    color: orange;
  }
#post_separator {
    height: 80vh;
    width: 0.1vw;
    opacity: 20%;
    margin: -0.1% 5% 0;
    background: #111;
}
.post_video {
    filter: drop-shadow(-14px 18px 4px rgba(0, 0, 0, 0.25));
}
.post_video>img {
    border-radius: 5%;
}
.calltoaction2 {
    display: flex;
    flex-direction: row;
}
.calltoaction2>img {
    width: 50vw;
    margin-bottom: 0px;
}
#final_cta_page4 {
    display: flex;
    flex-direction: column;
    margin-top: 2%;
    padding-right: 15%;
}
#final_cta_page4>button {
    align-self: center;
}
@media screen and (min-width : 992px) {
    .post_flex {
        flex-direction: row;
    }
}

/* _________________________________________________________________________*/

/* ____________________________________FOOTER_______________________________*/


.flex_footer {
    display: flex;
    flex-direction: row wrap;
    padding: 1%;
    background: #3D7A6F;
    justify-content: space-between;
}
.flex_footer>img {
    height: 50%;
    width: 10%;
}
.flex_footer li {
    color: #fff;
    cursor: pointer;
    text-decoration: underline;
    font-size: 18px;
    list-style-type: none;
    line-height: 3em;
}
.footer_left {
    display: flex;
}

.footer_right {
    display: flex;
}
/* _________________________________________________________________________*/
