/* GENERAL */

@charset "UTF-8";

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html,
body,
body div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
figure,
footer,
header,
hgroup,
#menuhaut,
menu,
nav,
section,
time,
mark,
audio,
video {
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
    margin: 0;
    padding: 0;
}

img,
video,
object,
embed {
    max-width: 100%
}

html {
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    font-family: HelveticaNeue, Helvetica, Arial, sans-serif;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    color: #555;
    height: 100%;
    font-size: 15px;
}

h1 {
    font-family: 'Roboto Slab';
    color: #7481aa;
    font-size: 2rem;
    text-align: left;
    margin-bottom: 10px;
}

h1 span {
    font-size: 1.9rem;
}

h2 {
    font-family: 'Roboto Slab';
    font-size: 1.6rem;
    color: #273c75;
    margin-bottom: 10px;
}

h2 span {
    font-size: 1.5rem;
}

h4 {
    font-family: 'Roboto Slab';
    color: #273c75;
    text-transform: uppercase;
    font-size: 1.4rem;
    margin-bottom: 10px;
}

p {
    margin-bottom: 10px;
}

a {
    color: #273c75;
}

@media (max-width:1440px) {
    .container {
        padding: 0 25px;
    }
}

section {
    padding: 100px 0;
}

.bg-grey {
    background-color: #f9f9f9;
}

.bg-annonce {
    background-color: #e1eff1;
}

.bg-annonce1 {
    background-color: #a0b3de;
}

.bg-blue {
    background-color: #425486;
}

.blue {
    color: #273c75;
}

.shadow {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.05);
}

.bouton {
    margin: 20px auto;
}

.bouton a {
    text-decoration: none;
    color: #273c75;
    font-size: 20px;
    display: inline-block;
    margin: 2px;
}

.bouton-plus a {
    padding: .7em 1.2em;
    background-color: white;
    transition: all .3s;
    text-transform: uppercase;
    font-size: inherit;
    font-weight: 700;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.05);
}

.bouton-plus a:hover {
    color: white;
    background-color: #273c75;
}

.bouton-general-plein a {
    margin: 2px;
    padding: .7em 1.2em;
    background-color: #425486;
    border: .5px solid #425486;
    transition: all .2s;
    color: white;
    font-size: inherit;
    font-weight: 400;
    text-transform: uppercase;
    display: inline-block;
}

.bouton-general-plein a:hover {
    border: .5px solid #273c75;
    background-color: #273c75;
}


.bouton-general a {
    transition: all .2s;
    background: none;
    box-sizing: border-box;
    margin: 1em;
    padding: 1em 1.5em;
    border: 2px solid #425486;
    color: #425486;
    font-size: inherit;
    font-weight: 700;
}

.bouton-general a:hover {
    border: 2px solid #425486;
    color: #425486;
}

.bouton-general-plein input {
    margin: 1em;
    padding: 1em 1.2em;
    background-color: #425486;
    border: .5px solid #425486;
    transition: all .2s;
    color: white;
    font-size: inherit;
    font-weight: 400;
    text-transform: uppercase;
}

.bouton-general-plein input:hover {
    border: .5px solid #273c75;
    background-color: #273c75;
}


.bouton-general input {
    transition: all .2s;
    background: none;
    box-sizing: border-box;
    margin: 1em;
    padding: 1em 1.5em;
    border: 2px solid #425486;
    color: #425486;
    font-size: inherit;
    font-weight: 700;
}

.bouton-general input:hover {
    border: 2px solid #425486;
    color: #425486;
}

@media (max-width:425px) {

    .bouton-general-plein a {
        padding: .7em 1em;
        font-size: 14px !important;
    }

}

.interligne-bouton {
    line-height: 60px;
}

@media (max-width:992px) {

    .col-lg-margin {
        margin-top: 50px;
    }

}

@media (max-width:768px) {

    .col-md-margin {
        margin-top: 50px;
    }

}

.card {
    border: none;
}

.card h2,
.card p {
    margin: 25px 0;
}

.card .bouton {
    margin-top: 40px;
}

@media (max-width:991px) {

    .card .bouton {
        padding: .1em;
    }

    .card .bouton-general-plein a {
        padding: .6em;
        white-space: nowrap !important
    }

}

@media (max-width:768px) {
    .card {
        margin-left: auto;
        margin-right: auto;
    }
}

.box-item {
    margin: 25px 10px;
    padding: 25px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.05);
}

@media (max-width:768px) {

    .box-item {
        margin: 15px 10px;
    }

}

.important {
    color: white;
    background-color: #425486;
    transition: all .2s;
    cursor: pointer;
}

.important:hover {
    background-color: #273c75;
}

.important h1,
.important h2,
.important p {
    color: white;
}

.important p {
    font-size: 18px;
    margin-bottom: 0;
}

@media (min-width:1139px) {

    .important {
        margin-top: 60px;
    }

}


/* HEADER */

.head-contact {
    width: 100%;
    margin: 0 auto;
    height: 30px;
    color: white;
    font-size: 14px;
    position: fixed;
    z-index: 3000;
}

.head-info-contact {
    width: 30%;
    height: 29px;
    position: absolute;
    right: 0;
    border-bottom-left-radius: 10px;
    z-index: -1
}

@media (max-width:1320px) {
    .head-info-contact {
        width: 40%;
    }
}

.head-contact p {
    padding: 4px 0 4px 30px;
    float: right;
    border-bottom-left-radius: 10px;
}

.head-contact i {
    margin-right: 5px;
}

.head-contact span {
    margin: 0 10px;
}

.head-contact a {
    color: white;
}

.head-shadow {
    width: 100%;
    background-color: white;
    height: 120px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.05);
    position: fixed;
    z-index: 1999;
}

.navbar {
    max-width: 1440px;
    margin: 0 auto;
    top: 30px;
    padding: .5rem 0;
}

.navbar-brand {
    margin-top: -30px;
    transition: .2s ease-in-out;

}

.logo-cep,
.logo-socotic {
    max-width: 85px;
}

.nav-item {
    margin: 0 19px;
    font-size: 16px;
    color: #333;
    transition: .2s ease-in-out;
}

.nav-item a {
    color: black !important;
}

.nav-item a:hover {
    color: #273c75 !important;
}

.nav-item-social {
    display: none;
}

.nav-item-social a {
    margin-left: 15px;
}

.head-contact-mobile {
    display: none;
}

.logo {
    margin-top: 5px;
    transition: .2s ease-in-out;
}

.nav-link {
    color: black;
}

.navbar-toggler {
    border: none;
}

.navbar-nav {
    background-color: white;
    position: absolute;
    right: 0;
    z-index: 1000;
}

.dropdown-menu {
    text-transform: none;
    font-size: 14px;
}

.nav-icons i {
    padding: 0 5px;
}

.push {
    height: 90px;
}

@media (max-width:1139px) {

    .push-2 {
        height: 90px;
    }

}

@media (min-width:1510px) and (max-width:1600px) {
    .dropdown-correction {
        margin-left: -50px;
    }
}

@media (min-width:1440px) and (max-width:1510px) {
    .dropdown-correction {
        margin-left: -75px;
    }
}

@media (min-width:1139px) and (max-width:1440px) {
    .dropdown-correction {
        margin-left: -100px;
    }
}


@media (max-width:1439px) {

    .navbar-brand {
        margin: -25px 0 0 15px;
    }

    .logo-cep,
    .logo-socotic {
        max-width: 80px;
    }

    .nav-item {
        margin: 0 12px;
    }

}

@media (max-width:1300px) {

    .nav-item {
        font-size: 14px;
        margin: 0 8px;
    }

}

@media (min-width:1139px) and (max-width:1160px) {

    .logo-cep,
    .logo-socotic {
        max-width: 70px;
    }
}

@media (max-width:1199px) {

    .head-contact {
        display: none;
    }

    .head-contact-mobile {
        display: block;
        margin-left: 5px
    }

    .head-contact-mobile a {
        color: black;
        font-size: 18px;
        margin: 0 8px;
    }

    .nav-icons {
        display: none;
    }

    .head-shadow {
        height: 94px;
        position: inherit;
    }

    .navbar {
        padding: .5rem 0;
        top: 0;
    }

    .navbar-brand {
        margin: -10px auto 0 auto;
    }

    .logo-cep,
    .logo-socotic {
        max-width: 80px;
    }

    .navbar-nav {
        width: 100%;
        text-align: right;
        float: right;
        margin-top: -5px;
        -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
        -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
        box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15);
    }

    .nav-item {
        margin: 5px 12px;
        padding: 5px;
        font-size: 15px;
    }

    .nav-item-social {
        display: block;
    }

    .dropdown-menu {
        border: none;
        text-align: right;
    }
}

@media (min-width:1200px) {

    .navbar-nav {
        top: 23px;
    }

    .dropdown-menu {
        display: block;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-20%);
        transition: all .5s;
        border: none;
        border-radius: 0px;
        margin-top: 28px;
        background-color: #f9f9f9;
    }

    .dropdown:hover .dropdown-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0%);
    }
}

@media (max-width:375px) {

    .logo {
        max-width: 60px;
        margin-top: 15px
    }

    .navbar .nav-item {
        margin: 0 12px;
        padding: 3px
    }

}

.menu-rapide {
    background-color: #f6f6f6;
    border-radius: 5px;
    padding: 30px
}

.menu-rapide ul {
    margin-top: 20px
}

.menu-rapide .nav-link {
    text-transform: none;
    background-color: #fff;
    color: #17a2b8 !important;
    font-weight: 700
}

@media (max-width:767px) {
    .menu-rapide .nav-item {
        width: 100%
    }
}

/* INDEX */

.video-index-mobile {
    display: none;
}

.video-index-desktop {
    margin: 0 auto;
    padding-top: 120px;
}

@media (max-width:1200px) {

    .video-index-desktop {
        padding-top: 95px;
        display: none;
    }

    .video-index-mobile {
        display: block;
    }

}

@media (max-width:1200px) {

    .video-index-desktop {
        padding-top: 0px;
    }

}

/*.header-video {
    height: 575px;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    transition: all .5s;
}

.header-video video {
    width: 100%;
}

@media (min-width:875px) and (max-width:1020px) {
    .header-video {
        height: 475px;
    }
}

@media (min-width:675px) and (max-width:875px) {
    .header-video {
        height: 300px;
    }
}

@media (min-width:475px) and (max-width:675px) {
    .header-video {
        height: 250px;
    }
}

@media (min-width:375px) and (max-width:475px) {
    .header-video {
        height: 200px;
    }
}

@media (min-width:300px) and (max-width:375px) {
    .header-video {
        height: 175px;
    }
}*/

/* DATE */

.date {
    font-family: 'Roboto Slab';
    background-color: #425486;
    color: white;
    padding: 5px;
    margin-bottom: 5px;
}

/* FOOTER */

.fa-angle-up {
    font-size: 35px;
    position: fixed;
    bottom: 20px;
    color: #333;
    right: 10px;
    padding: 10px;
    transition: .2s ease-in-out;
    cursor: pointer;
    text-decoration: none;
}

.fa-angle-up:hover {
    color: #333;
    text-decoration: none;
}

footer {
    height: 100%;
    min-height: 70px;
    padding: 40px;
    color: white;
    padding: 5px;
}

footer p {
    padding-top: 15px;
}

.bas-footer {
    background-color: #333;
    padding: 12px 0;
    color: white;
}

.bas-footer a {
    color: white;
}

footer p a {
    color: white;
}

footer p a:hover {
    color: white;
}

/* */

article:target,
section:target,
div:target {
    padding-top: 200px;
    margin-top: -200px;
}

@media (max-width:996px) {

    article:target,
    section:target,
    div:target {
        padding-top: 100px;
        margin-top: -100px;
    }
}

.map {
    overflow: hidden;
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075) !important;
    border: 1px solid #dee2e6 !important;
}

@media (min-width:1200px) {
    .container-actu {
        max-width: 1400px;
    }
}

/*CSS CEP*/

.bg-bleu-clair {
    background-color: #3188bf;
}

.bouton-general-plein-cep a {
    margin: 2px;
    padding: .7em 1.2em;
    background-color: #3188bf;
    border: .5px solid #3188bf;
    transition: all .2s;
    color: white;
    font-size: inherit;
    font-weight: 400;
    text-transform: uppercase;
    display: inline-block;
}

.bouton-general-plein-cep a:hover {
    border: .5px solid #2973a2;
    background-color: #2973a2;
}

.bouton-plus-cep a {
    padding: .7em 1.2em;
    background-color: white;
    transition: all .3s;
    text-transform: uppercase;
    font-size: inherit;
    font-weight: 700;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05), 0 3px 6px rgba(0, 0, 0, 0.05);
    color: #3188bf; 
}

.bouton-plus-cep a:hover {
    color: white;
    background-color: #3188bf;
}

.bouton-general-plein-cep input {
    margin: 1em;
    padding: 1em 1.2em;
    background-color: #3188bf;
    border: .5px solid #3188bf;
    transition: all .2s;
    color: white;
    font-size: inherit;
    font-weight: 400;
    text-transform: uppercase;
}

.bouton-general-plein-cep input:hover {
    border: .5px solid #2973a2;
    background-color: #2973a2;
}

/*FIN CSS CEP*/

.image-top {
    margin: 0 auto;
padding-top: 120px;
}

@media (max-width:1139px) {

    .image-top {
        padding-top: 0px;
    }

}

@media (min-width:1140px) and (max-width:1199px) {

    .image-top {
        padding-top: 95px;
    }

}