/*
Theme Name: Jura Initiative
Description: Theme enfant du thème WP Made Simple de Publigo
Author: Hervé - Publigo
Author URI: https://www.publigo.fr
Template: wpexp-theme 
Version: 1.0
Text Domain: jura-initiative
*/
/*
font-family: 'Caveat', cursive;
font-family: 'Titillium Web', sans-serif;*/

@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@700&family=Titillium+Web:ital,wght@0,400;0,600;0,700;0,900;1,400&display=swap');


:root {
	--grey-medium: #71716f;
	--grey-dark: #494947;
	--pink: #e41868;
	--green: #78b62a;
}


html {
    font-size: 98.75%;
    transition: .4s all ease;
}

#page {
    overflow: hidden;
}

svg:not(:root) {
    overflow: initial;
}

body {
    font-family: 'Titillium Web', sans-serif;
    font-size: 19px;
    color: var(--grey-medium);
    font-weight: 400;
    line-height: 1.316rem;
}

p, ul {
    font-size: 1rem;
}

a {
	color: var(--pink);
	transition: .4s all ease;
}

a:hover,
a:focus {
	color: var(--green);
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
    padding-right: .789rem;
    padding-left: .789rem;
}

.menu-toggle:focus,
.dropdown-toggle:focus {
    outline: none;
}

@media screen and (min-width: 576px) {

    html {
        font-size: 103.75%;
    }
}

@media (min-width: 600px) and (max-width: 781px) {

    .wp-block-column:not(:only-child),
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
        flex-basis: inherit!important;
        flex-grow: 1;
    }

    .wp-block-column:nth-child(2n),
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
        margin-left: 0;
    }

}

@media (min-width: 782px) {

    .wp-block-column,
    .wp-block-column[style*=flex-basis] {
        flex-basis: inherit;
        flex-grow: 1;
    }

    .wp-block-columns {
        flex-wrap: wrap;
    }

    .wp-block-column:nth-child(2n) {
        margin-left: 0;
    }
}

@media screen and (min-width: 48em) {

    html {
        font-size: 108.75%;
    }
}

@media screen and (min-width: 1200px) {

    html {
        font-size: 113.75%;
    }


    .wp-block-column {
        flex-basis: 0;
        flex-grow: 1;
    }

    .wp-block-columns {
        flex-wrap: nowrap;
    }

    .wp-block-column:not(:first-child) {
        margin-left: 2em;
    }
}

@media screen and (min-width: 82em) {

    html {
        font-size: 118.75%;
    }
}

/* ############################################################################################## */
/* ################### Header  #################################################################################### */

.site-header {
    background-color: var(--pink);
}

.site-header div > .row:not(.navigation-principal) {
    align-items: center;
    background-image: url(assets/images/bkg-header.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

a#logo {
    display: block;
    text-align: center;
    padding: 1.579rem .789rem;
}

a#logo svg {
    width: 22.789rem;
    max-width: 100%;
    height: 12rem;
}

a#logo svg #reseau {
    fill: var(--green);
}

a#logo svg #initiative {
    fill: var(--pink);
}

a#logo svg #slogan {
    fill: #303030;
}

.header-infos {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.header-infos .coordonnees {
    padding: 1.579rem .789rem;
    background-color: #ecedeb;
    width: 20.421rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 100%;
}

.coordonnees p {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
}

.coordonnees p:not(.tel) {
    color: var(--grey-dark);
    font-size: 1.05rem;
    line-height: 1;
    margin: 0;
}

.coordonnees p.tel {
    font-size: 2.52rem;
    font-weight: 700;
    color: #b5b5b4;
    line-height: 1;
}

.header-infos .coordonnees p:not(.tel):before {
    display: block;
    content: '';
    position: relative;
    max-width: 100%;
    background-image: url(assets/images/picto-localisation.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 2.5rem;
    height: 3.7rem;
    margin-bottom: 0.8rem;
}

.navigation-top {
    padding: 0;
    margin-bottom: 1.25rem;
}

.top-navigation ul#top-menu {
    flex-direction: row;
}

ul#top-menu li {
    margin: 0;
    padding: 0 .526rem;
    width: 7.895rem;
    height: 10.105rem;
    max-width: 33.333333%;
}

ul#top-menu a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    padding: 1.579rem 0;
}

ul#top-menu a:hover,
ul#top-menu a:focus {
    text-decoration: none;
}

ul#top-menu li.accueil a svg {
    width: 3.158rem;
    height: 2.737rem;
}

ul#top-menu li.contact a svg {
    width: 2.632rem;
    height: 2.737rem;
}

ul#top-menu li.social_link a svg {
    width: 1.368rem;
    height: 2.737rem;
}

ul#top-menu a span {
    display: block;
    width: 100%;
    font-style: oblique;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1;
    border-top: solid 0.187rem;
    padding-top: .789rem;
    margin-top: .789rem;
}

ul#top-menu li.accueil a span {
    color: var(--green);
    border-color: rgba(113, 200, 31, 1.0);
    transition: .4s all ease;
}

ul#top-menu li.contact a span {
    color: var(--pink);
    border-color: rgba(230, 25, 103, 1.0);
    transition: .4s all ease;
}

ul#top-menu li.social_link a span {
    color: #575756;
    border-color: rgba(87, 87, 56, 1.0);
    transition: .4s all ease;
}

ul#top-menu li.accueil a:hover span,
ul#top-menu li.accueil a:focus span,
ul#top-menu li.contact a:hover span,
ul#top-menu li.contact a:focus span ,
ul#top-menu li.social_link a:hover span,
ul#top-menu li.social_link a:focus span {
    color: #FFF;
}

ul#top-menu li.accueil a:hover span,
ul#top-menu li.accueil a:focus span {
    border-color: rgba(113, 200, 31, 0);
}

ul#top-menu li.contact a:hover span,
ul#top-menu li.contact a:focus span {
    border-color: rgba(230, 25, 103, 0);
}

ul#top-menu li.social_link a:hover span,
ul#top-menu li.social_link a:focus span {
    border-color: rgba(87, 87, 56, 0);
}

ul#top-menu li.accueil a svg {
    fill: var(--green);
    transition: .4s all ease;
}

ul#top-menu li.contact a svg {
    fill: var(--pink);
    transition: .4s all ease;
}

ul#top-menu li.social_link a svg {
    fill: #575756;
    max-width: 100%;
    transition: .4s all ease;
}

ul#top-menu li.accueil a:hover svg,
ul#top-menu li.accueil a:focus svg,
ul#top-menu li.contact a:hover svg,
ul#top-menu li.contact a:focus svg,
ul#top-menu li.social_link a:hover svg,
ul#top-menu li.social_link a:focus svg {
    fill: #FFF;
}

ul#top-menu li.accueil a {
    background-color: rgba(113, 200, 31, 0);
    transition: .4s all ease;
}

ul#top-menu li.accueil a:hover,
ul#top-menu li.accueil a:focus {
    background-color: rgba(113, 200, 31, 1.0);
}

ul#top-menu li.contact a {
    background-color: rgba(230, 25, 103, 0);
    transition: .4s all ease;
}

ul#top-menu li.contact a:hover,
ul#top-menu li.contact a:focus {
    background-color: rgba(230, 25, 103, 1.0);
}

ul#top-menu li.social_link a {
    background-color: rgba(87, 87, 86, 0);
    transition: .4s all ease;
}

ul#top-menu li.social_link a:hover,
ul#top-menu li.social_link a:focus {
    background-color: rgba(87, 87, 86, 1.0);
}

nav#site-navigation-main {
    padding: 0;
}

.menu-toggle {
    color: #fff;
    font-size: 1.053rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.05em;
}

ul#main-menu {
    padding-bottom: .789rem;
}

.main-navigation a {
    position: relative;
    color: #fff;
    font-size: 1.053rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: .526rem .789rem;
    transition: .4s all ease;
}

.main-navigation a:hover,
.main-navigation a:focus,
.main-navigation li.current-menu-item > a {
    color: #84103d;
}

.dropdown-toggle {
    color: #84103d;
    right: 0;
}

.main-navigation ul ul {
    padding: 0;
}

.main-navigation ul ul a {
    letter-spacing: 0.05em;
    padding: .789rem;
    color: #505050;
    background-color: #ecedeb;
    font-style: oblique;
    transition: .4s all ease;
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a:focus,
.main-navigation ul ul li.current-menu-item a {
    color: #505050;
    background-color: #fff;
}

@media screen and (min-width: 48em) {

    .navigation-top {
        margin-bottom: 0;
    }

    .header-infos .coordonnees {
        padding: 3.158rem 0;
    }

    ul#main-menu {
        padding-bottom: 0;
    }

    .main-navigation a:after {
        display: block;
        content: '';
        width: 1.053rem;
        height: 0;
        border-radius: 100%;
        background-color: var(--green);
        position: absolute;
        bottom: -.526rem;
        left: calc(50% - .526rem);
        z-index: 100000;
        opacity: 0;
        transform-origin: 50% 50%;
        transition: .4s all ease;
    }

    .main-navigation a:hover:after,
    .main-navigation a:focus:after,
    .main-navigation li.current-menu-item a:after {
        height: 1.053rem;
        opacity: 1;
    }

    .main-navigation ul ul {
        background: transparent;
        border: none;
    }

    .main-navigation ul ul a:after {
        content: none;
    }

    .main-navigation ul ul a {
        padding: 1.579rem;
        width: 20rem;
    }

    .main-navigation a {
        font-size: 2.2vw;
        padding: 1.579rem .789rem;
    }

    .main-navigation a:hover,
    .main-navigation a:focus,
    .main-navigation li.current-menu-item > a {
        color: #fff;
    }
/*
    .main-navigation ul li:nth-child(2):hover > ul,
    .main-navigation ul li.focus:nth-child(2) > ul,
    .main-navigation ul li:first-child:hover > ul,
    .main-navigation ul li.focus:first-child > ul {
        left: calc(50% - 10rem);
    }
*/
    .main-navigation li li.focus > a,
    .main-navigation li li:focus > a,
    .main-navigation li li:hover > a,
    .main-navigation li li a:hover,
    .main-navigation li li a:focus,
    .main-navigation li li.current_page_item a:hover,
    .main-navigation li li.current-menu-item a:hover,
    .main-navigation li li.current_page_item a:focus,
    .main-navigation li li.current-menu-item a:focus {
        color: #505050;
    }

}

@media screen and (min-width: 62em) {

    a#logo {
        padding: .789rem;
    }

    .header-infos .coordonnees {
        padding: 4.737rem 0;
    }

    .site-header div > .row:not(.navigation-principal) {
        border-bottom-left-radius: 4.737rem;
        border-bottom-right-radius: 4.737rem;
    }

    .container_slick_slider-home.container {
        border-top-left-radius: 4.737rem;
        border-top-right-radius: 4.737rem;
    }

}

@media screen and (min-width: 1200px) {

    .main-navigation a {
        font-size: 1.053rem;
    }

}

/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### Slider  #################################################################################### */

.slick-slide:after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    background-color: #525251;
    opacity: 0.3;
    position: absolute;
    top: 0;
    left: 0;
}

.description_slide {
    z-index: 1;
}

.description_slide .legende {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0 .789rem;
}

.description_slide .titre {
    color: #fff;
    font-weight: 700;
    font-size: 5vw;
    line-height: 1;
    text-shadow: 4px 0px 0px #494949;
}

.description_slide a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--green);
    color: #fff;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 17.474rem;
    height: 2.895rem;
    max-width: 100%;
    margin-top: .789rem;
    transition: .4s all ease;
}

.description_slide a:hover,
.description_slide a:focus {
    background-color: var(--pink);
}

.description_slide a:before {
    display: block;
    content: '';
    background-image: url(assets/images/before-btn-slide.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.105rem;
    transform: translate(0, 0);
    transition: .4s all ease;
}

.description_slide a:hover:before,
.description_slide a:focus:before {
    transform: translate(7.684rem, 0);
}

@media screen and (min-width: 48em) {

    .description_slide {
        top: auto;
        bottom: 30%;
    }

    .description_slide .legende {
        padding: 0 16.666667%;
    }

    .description_slide .titre {
        font-size: 4vw;
    }

}

@media screen and (min-width: 82em) {

    .description_slide .titre {
        font-size: 3.158rem;
    }

    .description_slide .legende {
        padding: 0 25%;
    }
}

/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### Navigation thématique 1  #################################################################################### */

#mt_1,
#mt_1 .row > div {
    padding: 0;
}

#mt_1 a {
    padding: 3.158rem .789rem;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-image: url(assets/images/bkg-thematic-1.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#mt_1 a .titre {
    display: block;
    font-family: 'Caveat', cursive;
    font-size: 3.158rem;
    line-height: 0.6;
    color: var(--pink);
    letter-spacing: -0.025em;
    margin-bottom: 1.579rem;
}

#mt_1 a .sous-titre {
    font-size: 1.053rem;
    line-height: 1;
    color: var(--grey-dark);
    font-style: oblique;
    letter-spacing: 0.025em;
    margin-bottom: 3.158rem;
}

#mt_1 a img {
    display: block;
}

#mt_1 a .bouton {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: rgba(178, 180, 176, 0);
    color: #b2b4b0;
    border: 1px solid #b2b4b0;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 17.474rem;
    height: 2.895rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.579rem;
    transition: .4s all ease;
}

#mt_1 a:hover .bouton,
#mt_1 a:focus .bouton {
    background-color: rgba(178, 180, 176, 1.0);
    color: #fff;
}

#mt_1 a .bouton:before {
    display: block;
    content: '';
    background-image: url(assets/images/before-btn-mt-1.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.105rem;
    transform: translate(0, 0);
    transition: .4s all ease;
}

#mt_1 a:hover .bouton:before,
#mt_1 a:focus .bouton:before {
    transform: translate(6.316rem, 0);
    background-image: url(assets/images/before-btn-mt-1-hover.svg);
}

@media screen and (min-width: 82em) {

    #mt_1 a .titre {
        font-size: 5.526rem;
    }

    #mt_1 a .sous-titre {
        font-size: 1.579rem;
    }

}



/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### content  #################################################################################### */


h1 {
    font-family: 'Caveat', cursive;
    font-size: 2.316rem;
    line-height: 0.8;
    text-align: center;
    color: var(--grey-dark);
    letter-spacing: -0.025em;
}

h2 {
    font-weight: 700;
    font-size: 1.263rem;
    line-height: 1;
    color: var(--pink);
    letter-spacing: 0.025em;
}

.content-home {
    padding: 3.158rem 0;
}

.content-home p {
    letter-spacing: 0.025em;
}

body:not(.home) .entry-header,
.page-header {
    background-image: url(assets/images/bkg-header-page.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 1.579rem .789rem 3.158rem;
    margin-bottom: 3.158rem;
}

.blog article,
.archive article,
.search article,
.child-post {
    border-color: #d2d4d1;
}

.more-link a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--pink);
    color: #fff;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 15.789rem;
    height: 2.895rem;
    max-width: 100%;
    margin-bottom: 1.579rem;
    transition: .4s all ease;
}

.more-link a:hover,
.more-link a:focus {
    background-color: var(--green);
    color: #fff;
    text-decoration: none;
}

.more-link a:before {
    display: block;
    content: '';
    background-image: url(assets/images/before-btn-mt-3.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.105rem;
    transform: translate(0, 0);
    transition: .4s all ease;
}

.more-link a:hover:before,
.more-link a:focus:before {
    transform: translate(1.105rem, 0);
}

input[type="submit"] {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: var(--pink);
    color: #fff;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 15.789rem;
    height: 2.895rem;
    max-width: 100%;
    margin-bottom: 1.579rem;
    border: none;
    text-transform: initial;
    font-weight: 400;
    transition: .4s all ease;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
    background: var(--green);
    color: #fff;
    text-decoration: none;
}

.page-numbers.current {
    color: var(--grey-dark);
}

.prev.page-numbers,
.next.page-numbers {
    background-color: var(--green);
    color: #fff;
    transition: .4s all ease;
}

.prev.page-numbers:focus,
.prev.page-numbers:hover,
.next.page-numbers:focus,
.next.page-numbers:hover {
    background-color: var(--pink);
    color: #fff;
}

@media screen and (min-width: 48em) {

    article {
        padding-top: 0;
        padding-bottom: 0;
    }

}

@media screen and (min-width: 62em) {

    .blog article:nth-child(2n), .archive article:nth-child(2n), .search article:nth-child(2n), .child-post:nth-child(2n) {
        border-color: #d2d4d1;
    }

}

@media screen and (min-width: 82em) {

    .content-home {
        padding: 4.737rem 0;
    }

}


/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### Navigation thematic 2  #################################################################################### */

#mt_2,
#mt_2 .row > div {
    padding: 0;
}

#mt_2 a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 3.158rem 0;
}

#mt_2 a .titre {
    color: #fff;
    font-weight: 700;
    font-size: 3.158rem;
    line-height: 1;
}

#mt_2 a .sous-titre {
    font-size: 1.053rem;
    line-height: 1;
    color: #fff;
    font-style: oblique;
    letter-spacing: 0.025em;
    margin-bottom: 3.158rem;
}

#mt_2 a img {
    display: block;
}

#mt_2 a .bouton {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: rgba(255, 255, 255, 0);
    color: #fff;
    border: 1px solid #fff;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 17.474rem;
    height: 2.895rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.579rem;
    transition: .4s all ease;
}

#mt_2 a:hover .bouton,
#mt_2 a:focus .bouton {
    background-color: rgba(255, 255, 255, 1.0);
    color: var(--green);
}

#mt_2 a .bouton:before {
    display: block;
    content: '';
    background-image: url(assets/images/before-btn-mt-2.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.105rem;
    transform: translate(0, 0);
    transition: .4s all ease;
}

#mt_2 a:hover .bouton:before,
#mt_2 a:focus .bouton:before {
    transform: translate(6.316rem, 0);
    background-image: url(assets/images/before-btn-mt-2-hover.svg);
}

@media screen and (min-width: 1200px) {

    #mt_2 a:before,
    #mt_2 a:after {
        display: block;
        content: '';
        width: 9.105rem;
        height: 14.368rem;
        background-image: url(assets/images/thematic-2-design.svg);
        background-position: center;
        background-size: 100%;
        background-repeat: no-repeat;
        position: absolute;
        bottom: 0;
    }

    #mt_2 a:before {
        transform: scaleX(-1.0);
        left: -6.158rem;
    }

    #mt_2 a:after {
        right: -6.158rem;
    }

}

@media screen and (min-width: 82em) {

    #mt_2 a {
        padding: 4.737rem 0;
    }

    #mt_2 a .titre {
        font-size: 4.474rem;
    }

    #mt_2 a .sous-titre {
        font-size: 1.579rem;
    }

}

/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### Navigation thematic 3  #################################################################################### */

#mt_3,
#mt_3 .row > div {
    padding: 0;
}

#mt_3 a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 3.158rem .789rem 14.737rem;
}

#mt_3 a .titre {
    color: #d2d4d1;
    font-weight: 800;
    font-size: 2.118rem;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 1.579rem;
}

#mt_3 a .bouton {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--pink);
    color: #fff;
    font-size: 1.105rem;
    line-height: 1;
    font-style: oblique;
    border-radius: 3.158rem;
    padding: 0 1.579rem;
    width: 17.474rem;
    height: 2.895rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4.332rem;
    transition: .4s all ease;
}

#mt_3 a:hover .bouton,
#mt_3 a:focus .bouton {
    background-color: var(--green);
    color: #fff;
}

#mt_3 a .bouton:before {
    display: block;
    content: '';
    background-image: url(assets/images/before-btn-mt-3.svg);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.105rem;
    transform: translate(0, 0);
    transition: .4s all ease;
}

#mt_3 a:hover .bouton:before,
#mt_3 a:focus .bouton:before {
    transform: translate(6.316rem, 0);
}

@media screen and (min-width: 82em) {

    #mt_3 a .titre {
        font-size: 4.119rem;
    }

}


/* ############################################################################################## */
/* ############################################################################################## */

/* ############################################################################################## */
/* ################### Footer  #################################################################################### */

.site-footer {
    background-color: transparent;
}

.site-footer .row:not(.mentions-navigation) {
    align-items: stretch;
}

.site-footer .row > div {
    padding: 0;
}

.navigation-footer {
    background-color: var(--pink);
    padding: 1.579rem .789rem;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
}

nav#site-navigation-footer {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-tools {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background-color: #dedfdd;
    padding-top: 3.158rem;
    padding-bottom: 3.158rem;
}

ul#footer-tools-menu {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

ul#footer-tools-menu li {
    margin: 0;
    padding: 0 .526rem;
    width: 7.895rem;
    max-width: 100%;
    margin-bottom: .789rem;
}

ul#footer-tools-menu a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    padding: 1.579rem 0;
    text-align: center;
}

ul#footer-tools-menu a:hover,
ul#footer-tools-menu a:focus {
    text-decoration: none;
}

ul#footer-tools-menu li.accueil a svg {
    width: 3.158rem;
    height: 2.737rem;
}

ul#footer-tools-menu li.contact a svg {
    width: 2.632rem;
    height: 2.737rem;
}

ul#footer-tools-menu li.social_link a svg {
    width: 1.368rem;
    height: 2.737rem;
}

ul#footer-tools-menu a span {
    display: block;
    width: 100%;
    font-style: oblique;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1;
    border-top: solid 0.187rem;
    padding-top: .789rem;
    margin-top: .789rem;
}

ul#footer-tools-menu li.accueil a span {
    color: var(--green);
    border-color: rgba(113, 200, 31, 1.0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.contact a span {
    color: var(--pink);
    border-color: rgba(230, 25, 103, 1.0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.social_link a span {
    color: #575756;
    border-color: rgba(87, 87, 56, 1.0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.accueil a:hover span,
ul#footer-tools-menu li.accueil a:focus span,
ul#footer-tools-menu li.contact a:hover span,
ul#footer-tools-menu li.contact a:focus span ,
ul#footer-tools-menu li.social_link a:hover span,
ul#footer-tools-menu li.social_link a:focus span {
    color: #FFF;
}

ul#footer-tools-menu li.accueil a:hover span,
ul#footer-tools-menu li.accueil a:focus span {
    border-color: rgba(113, 200, 31, 0);
}

ul#footer-tools-menu li.contact a:hover span,
ul#footer-tools-menu li.contact a:focus span {
    border-color: rgba(230, 25, 103, 0);
}

ul#footer-tools-menu li.social_link a:hover span,
ul#footer-tools-menu li.social_link a:focus span {
    border-color: rgba(87, 87, 56, 0);
}

ul#footer-tools-menu li.accueil a svg {
    fill: var(--green);
    transition: .4s all ease;
}

ul#footer-tools-menu li.contact a svg {
    fill: var(--pink);
    transition: .4s all ease;
}

ul#footer-tools-menu li.social_link a svg {
    fill: #575756;
    max-width: 100%;
    transition: .4s all ease;
}

ul#footer-tools-menu li.accueil a:hover svg,
ul#footer-tools-menu li.accueil a:focus svg,
ul#footer-tools-menu li.contact a:hover svg,
ul#footer-tools-menu li.contact a:focus svg,
ul#footer-tools-menu li.social_link a:hover svg,
ul#footer-tools-menu li.social_link a:focus svg {
    fill: #FFF;
}

ul#footer-tools-menu li.accueil a {
    background-color: rgba(113, 200, 31, 0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.accueil a:hover,
ul#footer-tools-menu li.accueil a:focus {
    background-color: rgba(113, 200, 31, 1.0);
}

ul#footer-tools-menu li.contact a {
    background-color: rgba(230, 25, 103, 0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.contact a:hover,
ul#footer-tools-menu li.contact a:focus {
    background-color: rgba(230, 25, 103, 1.0);
}

ul#footer-tools-menu li.social_link a {
    background-color: rgba(87, 87, 86, 0);
    transition: .4s all ease;
}

ul#footer-tools-menu li.social_link a:hover,
ul#footer-tools-menu li.social_link a:focus {
    background-color: rgba(87, 87, 86, 1.0);
}

.site-info {
    padding: 1.579rem .789rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.site-info a.logo {
    display: block;
    text-align: center;
    padding: 0 .789rem;
    margin: 0;
}

.site-info a.logo svg {
    width: 22.789rem;
    max-width: 100%;
    height: 12rem;
}

.site-info a.logo svg #reseau {
    fill: var(--green);
}

.site-info a.logo svg #initiative {
    fill: var(--pink);
}

.site-info a.logo svg #slogan {
    fill: #303030;
}

#footer-menu a {
    display: block;
    padding: .526rem 0;
    font-size: 1.053rem;
    line-height: 1;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-align: center;
    transition: .4s all ease;
}

#footer-menu a:hover,
#footer-menu a:focus {
    color: #84103d;
}

nav.mentions-navigation {
    padding: 1.579rem .789rem;
    background-color: var(--grey-dark);
}

#menu-mentions-menu li a {
    display: block;
    margin-right: 0.526rem;
    font-size: .842rem;
    line-height: 1;
    color: #FFF;
    letter-spacing: 0.05em;
    transition: .4s all ease;
}

#menu-mentions-menu li a:hover,
#menu-mentions-menu li a:focus {
    color: var(--grey-medium);
}

@media screen and (min-width: 576px) {

    .site-info a.logo {
        margin-bottom: 1.579rem;
    }

}

/* ############################################################################################## */
/* ############################################################################################## */