/* <Generic> */
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 19px;
    font-weight: normal;
    font-style: normal;
    color: #404040;
    overflow-x: hidden;
}

.navbar-light .navbar-toggler {
    border-color: white !important;
}

.img-fluid {
    border-radius: 3px;
}

.container2 {
    max-width: 960px;
    margin: 0 auto;
    padding: 30px;
}

@media screen and (max-width: 640px) {
    .navbar-collapse {
        background-color: #404040;
    }
}

.text-white {
    line-height: 150%;
    color: #FAFAFA;
    text-align: center
}

.text-uppercase {
    text-transform: uppercase;
}

.fs-16 {font-size: 16px;}
.fs-17 {font-size: 17px;}
.fs-20 {font-size: 20px;}

.fw-500 {font-weight: 500;}

.text-blanc {color: #ffffff;}
.text-violet {color: #B94C97;}
.text-bleu {color: #16B3E3;}
.text-rouge {color: #E94840;}
.text-jaune {color: #FDC745;}
.text-vert {color: #47B377;}
.text-noir {color: #404040}
.text-noir-gris {color: #616161}

.text-underline-violet {
    padding-bottom: 10px;
    line-height: 48px;
    border-bottom: 3px solid #B94C97;
}

.marginTop10 {margin-top: 10px;}
.marginTop20 {margin-top: 20px;}
.marginTop30 {margin-top: 30px;}
.marginTop50 {margin-top: 50px;}

.btn-violet {
    color: #fff;
    background-color: #B94C97;
    border-color: #B94C97;
}

.btn-violet:hover {
    background-color: #d256ab;
    color: #fff;
}

.btn-bleu {
    color: #fff;
    background-color: #16B3E3;
    border-color: #16B3E3;
}

.btn-bleu2 {
    color: #16B3E3;
    background-color: transparent;
    border-color: #16B3E3;
    border-width: 2px;
    font-weight: 500;
}

.btn-bleu2:hover {
    color: #fafafa;
    background-color:  #16B3E3;
}

.pagination span.current {
    color: #fff;
    background-color: #16B3E3;
    border-color: #16B3E3;
    padding: .5rem .75rem;
}

.pagination span {
    color: #A9A9A9;
    background-color: #f7f7f7;
}

.pagination span:hover {
    z-index: 2;
    color: #fff;
    text-decoration: none !important;
    background-color: #16B3E3;
    border-color: #16B3E3;
}

.pagination span a {
    padding: .5rem .75rem;
}

.pagination span:hover a {
    color: #fff;
    text-decoration: none !important;
}

@media screen and (max-width: 640px) {
    .pagination span {
        font-size: 10px;
        padding: 10px;
    }
}

.bg-white { background-color:  #FAFAFA}
.bg-white-2 { background-color: #F5F5F5}

.bg-red {background: #E94840;}

.bg-blue {background: #16B3E3;}

.bg-purple {background: #B94C97;}

.bg-green {background: #47B377;}

.bg-yellow {background: #FDC745;}

.contact-btn:hover {
    border: 1px solid #47B377;
    color: #47B377 !important;
    background: transparent;
}

.btn-contact {
    background-color: #ffffff;
    color: #47B377;
    text-transform: uppercase;
    padding: 10px 20px;
    border-radius: 3px;
}

.circle {
    width: 90px;
    height: 90px;
    -moz-border-radius: 45px;
    -webkit-border-radius: 45px;
    border-radius: 45px;
}

.rounded-shadow{
    box-shadow: 0px 0px 13px rgba(0, 0, 0, 0.05);
    border-radius: 5px;
}

.rounded-shadow p {
    margin-bottom: 0;
}

.page-section h3 {
    font-size: 32px;
}

#page-content h3::first-letter {
    text-transform: uppercase;
}

#page-content .link-title {
    color: #404040;
}

#page-content .link-title:hover {
    text-decoration: none;
}

ul.puce-violet {
    list-style: none;
}

ul.puce-violet li::before {
    content: "\2022";
    height: 16px;
    border: 2px solid#B94C97;
    background-color: #B94C97;
    border-radius: 50%;
    color: #B94C97;
    width: 16px;
    float: left;
    margin-right: 10px;
    margin-left: -30px;
}

/* <Generic> */

/* <Header> */

#mainNav .navbar-brand {
    font-weight: 700;
    color: #FAFAFA;
}

#mainNav .navbar-nav .nav-item .nav-link {
    color: #FAFAFA;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 19px;
    padding: 10px 5px;
    margin: 0px 15px;
}

#mainNav .navbar-nav .nav-item .nav-link.active {
    border-bottom: 3px solid #B94C97;
}

#mainNav .navbar-nav .nav-item .nav-link:hover {
    color: #B94C97;
}

.nav-item .btn-contact {
    background: #B94C97;
    color: #FAFAFA;
    border-radius: 30px;
    border: none;
    margin-top: 10px;
}

header {
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}

header.masthead {
    padding-bottom: calc(10rem - 72px);
    background: linear-gradient(to bottom,rgba(92,77,66,.4) 0,rgba(92,77,66,.4) 100%),url(../images/bandeau-video.jpg);
    height: 95vh;
}

header.header-default {
    height: 301px;
    background: linear-gradient(to bottom,rgba(92,77,66,.4) 0,rgba(92,77,66,.4) 100%),url(../images/bandeau-2.jpg);
    text-shadow: 0px 0px 11px rgba(109,109,109,1)
}

header h1 {
    font-size: 32px;
    line-height: 56px;
}

header .container-head-home {
    position: relative;
    top: 10%;
}

@media screen and (max-width: 640px) {
    header .container-head-home {
        top: 5%;
    }
}

header .container-head-home p {
    margin-bottom: 5rem !important;
}

header h1.site-title {
    font-size: 48px;
    line-height: 56px;
    padding-bottom: 38px;
}

header.masthead .btn-contact {
    color: #FAFAFA;
    font-size: 16px;
    background: #16B3E3;
    border-radius: 2px;
    text-align: center;
    border: 1px solid #16B3E3;
    padding: .375rem .75rem;
    text-transform: unset;
}

header.masthead .btn-contact:hover {
    background: #15ccff;
}

header.masthead .btn-projet {
    color: #FAFAFA;
    font-size: 16px;
    background: transparent;
    border-radius: 2px;
    text-align: center;
    border: 1px solid #FAFAFA;
    margin-right: 17px;
}

header.masthead .btn-projet:hover {
    color: #4b4b4b;
    font-weight: 500;
    background: #fafafa;
}

/* </Header> */

/* <Home> */

#service {
    margin-top: -2.5rem;
    margin-bottom: 50px;
}

#service .container{
    background: #F5F5F5;
    border-radius: 20px;
    padding: 20px 0;
}

#service h2 {
    font-size: 18px;
    line-height: 21px;
    text-align: center;
    color: #404040;
    font-weight: normal;
    font-style: normal;
    margin: 1rem 0 2.5rem;
}

#service p {
    font-size: 15px;
    line-height: 19px;
    text-align: center;
    color: #616161;
}

#service .col {
    position: relative;
    height: 206px;
    width: 4%;
}

#service .service {
    width: 71.32px;
    height: 71.32px;
    border: 2px solid #FAFAFA;
    box-sizing: border-box;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
    border-radius: 25px;
    transform: rotate(45deg);
    margin: 15px auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

#service .service img {
    transform: rotate(-45deg);
    width: 36px;
}

#service .list-services > div {
    flex: 0 0 19%;
    max-width: 19%;
}

@media screen and (max-width: 780px) {
    #service .list-services > div {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

#news img {
    border-radius: 10px;
}

#news span {
    text-transform: uppercase;
}
#news h3 {
    color: #404040;
}
#news p {
    color: #616161;
}

#speak-us h3 {
    color: #404040;
}

#speak-us .content {
    background-color: #F5F5F5;
}

#call-us {
    color: #616161;
    padding: 40px 0;
    background-color: #FBFBFB;
}

#call-us ul.puce-violet li::before {
    content: "";
    height: 10px;
    width: 10px;
    margin-left: -24px;
    margin-top: 4px;
}

#call-us h3 {
    color: #404040;
}

#call-us p {
    text-align: justify;
}
#call-us ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
#call-us li {
    text-align: justify;
    margin-bottom: 10px;
    padding-left: 30px;
}

#bloc-violet {
    background-color: #B94C97;
    padding-top: 50px;
    padding-bottom: 50px;
}

#bloc-violet span {
    background-color: #ffffff;
    text-transform: uppercase;
    color: #B94C97;
    padding: 5px 10px;
    font-weight: bold;
}

#bloc-violet .vr {
    height: 8rem;
    width: 1px;
    background: white;
}

#bloc-violet p {
    margin-top: 25px;
    color: #ffffff;
    font-style: normal;
    font-size: 20px;
    line-height: 28px;
}

#bloc-offre {
    padding-top: 50px;
}

#bloc-offre .offretop {
    height: 300px;
}

#bloc-offre .offrebottom {
    background-color: #F5F5F5;
    padding-bottom: 50px;
}

#bloc-offre .offrebottom img.img-head {
    margin-top: -330px;
    margin-bottom: 50px;
}

#bloc-offre .offrebottom h3 {
    color: #404040;
}

#bloc-offre .offrebottom p {
    font-style: normal;
    font-size: 16px;
    line-height: 23px;
    text-align: justify;
    color: #616161;
    padding-left: 20px;
}

#bloc-offre .btn-bleu-ciel {
    color: #16B3E3;
    background-color: transparent;
    border: 2px solid #16B3E3;
}

#bloc-offre .list-offre {
    padding: 20px;
    border-radius: 3px;
    margin-bottom: 1rem;
    border: 1px solid #e0e0e0;
    height: 8rem;
}

#bloc-offre .list-offre span {
    float: left;
    margin-bottom: .75rem;
}

#bloc-offre .list-offre span img {
    height: 34px;
}

#bloc-offre .list-offre p {
    font-weight: 500;
    color: #616161;
    padding-left: 10px;
    margin: 0;
    float: left;
    text-align: center;
    width: 85%;
}

@media screen and (max-width: 640px) {
    #bloc-offre .list-offre {
        height: 10rem;
    }
}

#bloc-vert {
    background-color: #47B377;
    padding-top: 50px;
    padding-bottom: 50px;
}

#bloc-vert p {
    color: #ffffff;
    font-style: normal;
    font-size: 22px;
    line-height: 28px;
}

#bloc-vert a {
    background-color: #ffffff;
    text-transform: uppercase;
    color: #47B377;
    font-weight: 500;
    border: 2px solid #ffffff;
}

#bloc-vert a:hover {
    color: white;
    background-color: #47B377;
}

#bloc-contact {
    padding-top: 50px;
    padding-bottom: 50px;
}

#bloc-contact h3 {
    color: #404040;
    border-bottom: 2px solid #B94C97;
    padding-bottom: 5px;
    float: left;
    font-size: 24px;
}

#bloc-contact .nav .nav-item a {
    font-weight: 500;
}

#bloc-contact button {
    color: #ffffff;
    background-color: #47B377;
    border: 1px solid #47B377;
}

#bloc-contact button:hover {
    color: #47B377;
    background-color: transparent;
}

#bloc-contact input, #bloc-contact textarea {
    background: #EDEDED;
    border: 1px solid #EEEEEE;
    box-sizing: border-box;
    border-radius: 3px;
    height: 2.75rem;
    color: #A9A9A9;
}

textarea#contact_message {
    height: 8rem;
}

.form-group {
    margin-bottom: .5rem;
}

#bloc-contact input::placeholder, #bloc-contact textarea::placeholder {
    color: #A9A9A9;
}

#bloc-contact li a {
    font-size: 17px;
    color: #404040;
    padding: 0px 10px;
}

#bloc-contact h4 {
    color: #16B3E3;
    font-size: 17px;
    font-weight: 500;
    margin-bottom: .8rem;
}

#bloc-contact p {
    color: #616161;
    line-height: 1.4;
}

#bloc-contact a.informations {
    color: #616161;
}

#bloc-contact a.informations:hover {
    text-decoration: none;
}

#bloc-contact .copyright {
    font-weight: 500;
    line-height: 16px;
    font-size: 14px;
    color: #8A8A8A;
}

@media screen and (max-width: 640px) {
    #news button {
        float: right !important;
    }

    #bloc-offre .list-offre {
        width: 100%;
    }

    #bloc-offre .list-offre span {
        width: 10%;
    }

    #bloc-offre .list-offre p {
        width: 85%;
    }
}

/* </Home> */

/* <Societe> */
#info-societe p {
    text-align: justify;
}
#info-societe p.citation {
    font-style: italic;
    font-weight: normal;
    font-size: 16px;
    line-height: 22px;
    text-align: justify;
    letter-spacing: 0.01em;
}

.img-societe-banniere {
    height: 9rem;
    width: 100%;
    margin-bottom: .5rem;
}

.img-societe-carre {
    height: 14rem;
    width: 49%;
    margin-bottom: .5rem;
}

.image-responsive {
    height: 100%;
    width: 100%;
    display: block;
    object-fit: cover;
}

#chiffre-societe {
    background: #F5F5F5;
}

#chiffre-societe h3.chiffre {
    font-size: 72px;
    line-height: 84px;
    font-weight: normal;
    font-style: normal;
    padding: 10px;
    margin-bottom: 1.25rem;
}

#chiffre-societe p.chiffre-type{
    font-weight: normal;
    font-style: normal;
    font-size: 20px;
    line-height: 23px;
}

#nos-valeurs {
    background: url("../images/societe/schema.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto;
    min-height: 760px;
    position: relative;
}

#nos-valeurs p.bloc-title {
    font-weight: 500;
    font-size: 20px;
    line-height: 23px;
    text-transform: uppercase;
    color: #616161;
}

#nos-valeurs p {
    font-size: 16px;
    line-height: 19px;
    text-align: justify;
    color: #616161;
}

#nos-valeurs span.bloc-number {
    padding-bottom: 3px;
    padding-right: 10px;
    margin-right: -10px;
    line-height: 48px;
}

#nos-valeurs span.bloc-number-violet {
    border-bottom: 3px solid #B94C97;
}

#nos-valeurs span.bloc-number-blue {
    border-bottom: 3px solid #16B3E3;
}

#nos-valeurs span.bloc-number-rouge {
    border-bottom: 3px solid #E94840;
}

#nos-valeurs #number-1 {
    position: absolute;
    right: 200px;
}

#nos-valeurs #number-2 {
    position: absolute;
    right: 300px;
    top: 535px;
}

#nos-valeurs #number-3 {
    position: absolute;
    top: 205px;
    left: 60px;
}

#decomposition-societe {
    min-height: 181px;
    background-color: #F5F5F5;
}

#decomposition-societe ul {
    margin-top: 16px;
}

#decomposition-societe li {
    font-size: 24px;
    line-height: 28px;
    text-align: justify;
    background: #FAFAFA;
    box-shadow: 0px 0px 13px rgba(0, 0, 0, 0.05);
    border-radius: 3px;
    margin-right: 24px;
}

@media screen and (max-width: 640px) {
    #decomposition-societe li {
        width: 100%;
        text-align: center;
        margin: 0;
        margin-bottom: 5px;
    }
}

/* </Societe> */

/* <Projet> */
#projet-introduction p {
    line-height: 21px;
}

#projet-depense .circle {
    margin: 15px 75px;
}

#bloc-projet {}

#bloc-projet .card {
    border: none;
    box-shadow: 0px 1px 5px #CCC;
}

#bloc-projet .viande .card-header {
    background-image: url(../images/icon-meat.png);
    background-repeat: no-repeat;
    background-position: 10px 12px;
}
#bloc-projet .fruit .card-header {
    background-image: url(../images/icon-fruit.png);
    background-repeat: no-repeat;
    background-position: 10px 12px;
}
#bloc-projet .egg .card-header {
    background-image: url(../images/icon-eggs.png);
    background-repeat: no-repeat;
    background-position: 10px 12px;
}
#bloc-projet .fromage .card-header {
    background-image: url(../images/icon-fromage.png);
    background-repeat: no-repeat;
    background-position: 10px 12px;
}
#bloc-projet .fish .card-header {
    background-image: url(../images/icon-fish.png);
    background-repeat: no-repeat;
    background-position: 10px 12px;
}

#bloc-projet .card-header {
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 64px;
}

#bloc-projet .card-header h4 {
    margin-bottom: 0;
}

#bloc-projet .card-header h4 {
    font-size: 17px;
}

#bloc-projet .card-header p {
    margin-bottom: 0px;
    font-weight: lighter;
}

#bloc-projet .card-body {
    border: none;
    background-color: #FAFAFA;
}

#bloc-projet .card-body ul {
    padding: 0px 40px;
}

#bloc-projet .card-body li {}

#bloc-projet .card-body h5 {
    font-size: 16px;
    margin-bottom: 0px;
}

#bloc-projet .card-body span {
    font-weight: bold;
}

/* </Projet> */

/* <SERVICE> */
#service-mission ul li {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 21px;
}

#service-acsio p {
    padding-left: 60px;
}

#service-cee a {
    color: #47B377;
    font-weight: 500;
}

#service-cee a:hover {
    color: #4ec987;
}

/* </SERVICE> */

/* <SUBVENTION> */

@media screen and (min-width: 640px) {
    #subvention-exemple .first-bloc {
        padding-bottom: 27px;
    }
}

/* </SUBVENTION> */



/* <Actualités> */

.link-post {
    color: #404040;
    text-transform: uppercase;
    font-weight: bold;
}

.link-post:hover {
    color: #404040;
    text-decoration: underline;
}

/* </Actualités> */

/* </Articles> */

#sidebar h3 {
    background-color: #B94C97;
    color: #ffffff;
    text-align: center;
    border-radius: 3px;;
    font-size: 16px;
    font-weight: normal;
}

#sidebar .card {
    border: none;
}

#sidebar .card h4 {
    font-size: 16px;
}

#head-post .cat-name {
    background: #F5F5F5;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
    color: #E94840;
    font-style: normal;
    font-weight: 500;
    text-align: center;
    padding: 10px;
    text-transform: uppercase;
}

#head-post ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    color: #616161;
}

#head-post li {
    float: left;
    margin-left: 10px;
}

#head-post .share {
    background: #F5F5F5;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
    color: #616161;
    font-style: normal;
    font-size: 12px;
    text-align: center;
    padding: 10px;
    line-height: 13px;
}

#content-post p {
    text-align: justify;
    color: #404040;
}

#comments h4 {
    margin-bottom: 15px;
}

#comments .comment {
    background: #F5F5F5;
    border-radius: 5px;
    padding: 20px;
    font-size: 12px;
    text-align: justify;
    margin-bottom: 10px;
}

#comments .comment h5 {
    padding: 0px;
    margin: 0px;
    font-size: 17px;
}

#comments .comment span {
    text-transform: uppercase;
}

#comments .comment p {
    margin-top: 10px;
    margin-bottom: 0px;
}

#comments input, #comments textarea {
    background: #EDEDED;
    border: 1px solid #EEEEEE;
    box-sizing: border-box;
    border-radius: 3px;
    color: #A9A9A9;
}

#comments button {
    color: #ffffff;
    background-color: #47B377;
    float: right;
}

#comments input::placeholder, #comments textarea::placeholder {
    color: #A9A9A9;
}

/* </Articles> */
