/*
 Theme Name:   PSPM
 Theme URI:    https://novelar.fr
 Description:  Thème PSPM
 Author:       Jérôme
 Author URI:   https://novelar.fr
 Template:     hello-elementor
 Version:      1.0.1
*/


html, body {
    font-size: 14px;
    font-family:"Montserra",Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;
    color:#666;
    overflow-x:hidden;
}

/*--------------------------------------------------------------
# ELEMENTOR 
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6,.elementor-slides .slick-slide-inner .elementor-slide-heading {
    line-height: 1.5em;
}
.elementor-widget-heading .elementor-heading-title {
    margin: 0;
    line-height: 150%;
}

h1,.elementor-widget-heading h1.elementor-heading-title {
    font-size: 4em;
    line-height:0.9em;
    font-weight:600 !important;
        line-height: 120%;
}
.page-title h1 {
    position:relative;
    padding-bottom: 10px;
    display: inline-block;
}
.page-title h1:before {
  content:"";
  width:50px;
  height:4px;
  background:#E3006C;
  position:absolute;
  left:0;
  bottom:-4px;
}

h2,.elementor-widget-heading h2.elementor-heading-title  {
    font-size: 3.5em;
    font-weight:700;
    line-height: 1em;
    display: inline-block;
    position: relative;
    line-height: 120%;
}
h3,body .elementor-widget-heading h3.elementor-heading-title {
    font-size: 2em;
    font-weight: 300;
    position: relative;
    padding-top: 10px;
    display: inline-block;
}
h3:before {
  content:"";
  width:50px;
  height:4px;
  background:#E3006C;
  position:absolute;
  left:0;
  top:-4px;
}

a {
  color:#395ba1;
}

.flex-center {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.box-shadow {
    box-shadow: 0px 10px 30px 0px rgba(22,29,63,0.1);
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    padding: 50px;
    border-radius: 0 30px 0 30px;
    background: #fff;
    position: relative;
}
p, li, body .elementor-slides .slick-slide-inner .elementor-slide-description,.elementor-widget-call-to-action .elementor-cta__description, li.elementor-icon-list-item, .elementor-widget-image-box .elementor-image-box-content .elementor-image-box-description {
    font-size: 1em;
    line-height: 1.8em;
    font-weight:300;

}
p.breadcrumbs {

}

blockquote {
    padding: 50px;
    position: relative;
    border: 0;
    font-size:1.5em;
    color:#e3006c;
    line-height:2;
}

blockquote:before {
    background-image: url(./images/blockquote-left.png);
    left: 0;
    top: 0;
}
blockquote:after {
    background-image: url(./images/blockquote-right.png);
    right: 0;
    bottom: 0;
}
blockquote:before, blockquote:after {
    content: "";
    width: 4em;
    height: 4em;
    background-repeat: no-repeat;
    background-size:contain;
    position: absolute;
}
@media only screen and (max-width:1300px ) {
  html, body {font-size:16px;}
} 
@media only screen and (max-width:1024px ) {
  html, body {font-size:14px;}
    h1 {font-size: 3em;}
    h2 {font-size: 2em;}
} 
@media only screen and (max-width:720px ) {
  html, body {font-size:12px;}
    blockquote {
      padding: 2em 1em;
      position: relative;
      border: 0;
  }
  blockquote:before, blockquote:after {
      width: 20px;
      height: 20px;
  }
      h1 {font-size: 2.5em;}
    h2 {font-size: 1.8em;}
}

.extrabold,.extrabold a{    font-weight: 700 !important;}

/*SLIDER SURCHARGE*/
body .elementor-slide-content{
  background:#e3006c;
  padding:40px 40px;
  border-radius:25px;
  box-shadow: 0px 10px 30px 0px rgba(13,36,51,0.85);
}
.overflow-hidden {overflow:hidden;}
/*--------------------------------------------------------------
# ELEMENTOR
--------------------------------------------------------------*/
.elementor-section {
  background-size:100% 100%;
}
.elementor-text-editor  ul {
  margin-bottom: 0.7em;
}
.elementor-text-editor  ul > li {
    margin-left: 1em;
    list-style-type: none;
    margin-top: 0.7em;
}
.elementor-text-editor ul > li:before {
    content: "\f054";
        -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #395ba1;
    font-size: 0.7em;
    top: .125em;
    right: .75em;
    margin-right: 10px;
}

.elementor-text-editor b {
  color:#395ba1;
}
.elementor-widget-call-to-action .elementor-cta__description {
    text-align: justify;
}
.elementor-button.elementor-size-xl {font-size:1.5em;}
.elementor-button.elementor-size-md {font-size:1em;}
.elementor-button.elementor-size-sm {font-size:0.8em;}
/*--------------------------------------------------------------
# Boutons
--------------------------------------------------------------*/
.btn,
.elementor-widget-form .elementor-button,
.elementor-widget-button a.elementor-button, 
.elementor-widget-button .elementor-button,
.elementor-cta__button.elementor-button, 
a.elementor-button, 
button.btn, 
.btn.checkout, 
.woocommerce #respond input#submit, 
.woocommerce button.button, 
.woocommerce input.button, 
.woocommerce div.product form.cart .button, 
.woocommerce #respond input#submit.alt, 
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt, 
.woocommerce.widget_shopping_cart .btns a.checkout, 
.elementor-slides .slick-slide-inner .elementor-slide-button, 
#nav-desktop > .menu-item.button-header > a,
.diapo-home-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button {
    border: none;
    color: inherit;
    background: none;
    outline: none;
    display: inline-block;
    position: relative;
    min-width: 120px;
    text-align: center;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    -webkit-tap-highlight-color: transparent;
    -webkit-border-radius: 25px 25px !important;
    border-radius:  25px 25px !important;
    /* padding: 15px 30px; */
    font-size: 1em;
    text-transform: initial;
    color: #FFFFFF;
    background: transparent;
    z-index:1;

}
.btn:before,
.elementor-widget-form .elementor-button:before,
.elementor-cta__button.elementor-button:before, 
a.elementor-button:before, 
button.btn:before, 
.btn.checkout:before, 
.woocommerce #respond input#submit:before, 
.woocommerce button.button:before, 
.woocommerce input.button:before, 
.woocommerce div.product form.cart .button:before, 
.woocommerce #respond input#submit.alt:before, 
.woocommerce a.button.alt:before, 
.woocommerce button.button.alt:before, 
.woocommerce input.button.alt:before, 
.woocommerce.widget_shopping_cart .btns a.checkout:before, 
.elementor-slides .slick-slide-inner .elementor-slide-button:before, 
#nav-desktop > .menu-item.button-header > a:before,
.diapo-home-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button:before {
  content:"";
 transform: skew(-20deg);
 -webkit-transform: skew(-20deg);
 -ms-transform: skew(-20deg);
 -moz-transform: skew(-20deg);
     background: #e3006c;
    z-index:-1;
    position:absolute;
    width:100%;
    height:100%;
    opacity:1;
    left:0;
    top:0;
    border-radius: 15px 0;
        -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.elementor-button-content-wrapper {position:relative;}
.elementor-button.elementor-size-lg {
        -webkit-border-radius: 1px 7px 1px 7px;
    border-radius:  1px 7px 1px 7px;
}
.elementor-cta__button.elementor-button {
    color:#fff;
}


.btn:hover::before,
.elementor-widget-form .elementor-button:hover::before,
.elementor-cta__button.elementor-button:hover::before, 
a.elementor-button:hover::before, 
button.btn:hover::before, 
.btn.checkout:hover::before, 
.woocommerce #respond input#submit:hover::before, 
.woocommerce button.button:hover::before, 
.woocommerce input.button:hover::before, 
.woocommerce div.product form.cart .button:hover::before, 
.woocommerce #respond input#submit.alt:hover::before, 
.woocommerce a.button.alt:hover::before, 
.woocommerce button.button.alt:hover::before, 
.woocommerce input.button.alt:hover::before, 
.woocommerce.widget_shopping_cart .btns a.checkout:hover::before, 
.elementor-slides .slick-slide-inner .elementor-slide-button:hover::before, 
#nav-desktop > .menu-item.button-header > a:hover::before,
.diapo-home-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button:hover::before  {
  box-shadow: 0px 10px 25px 0px rgba(0,0,0,0.10);
  background:#f32587;
  color: #FFFFFF;
  border-radius: 0 0;
}


.elementor-cta__button.elementor-button {
    color: #fff;
}
.elementor-cta__button.elementor-button:hover {
    color: #fff;
     background:#f32587;
}

button.btn {
    line-height: 3em;
    padding: 0 20px !important;
    min-height: 3.5em;
    font-size: 1em;
    min-width: 150px;
    border:none;
}

.btn-large {
  line-height: 4em;
}
.btn-large, .btn-large i {
  font-size:1.5em;
}
.btn.disable {
  background:#ccc !important;
  color:#fff !important;
}
.btn.disable:after {
  display:none;
}




/* BOUTON OUTLINED */
.elementor-element.elementor-button-info .elementor-button:after {display:none;}
.elementor-element.elementor-button-info .elementor-button,
#nav-desktop > .menu-item.button-header-outlined > a {
    background-color: transparent;
    box-shadow: none;
    color:#e3006c !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    font-weight:500;
    /* border: 4px solid #3d4459; */
    -webkit-box-shadow: inset 0px 0px 0px 3px #e3006c;
    -moz-box-shadow: inset 0px 0px 0px 3px #e3006c;
    box-shadow: inset 0px 0px 0px 3px #e3006c;
}
.elementor-element.elementor-button-info .elementor-button:hover,
#nav-desktop > .menu-item.button-header-outlined > a:hover {
    -webkit-box-shadow: inset 0px 0px 0px 4px #e3006c;
    -moz-box-shadow: inset 0px 0px 0px 4px #e3006c;
    box-shadow: inset 0px 0px 0px 4px #e3006c;
    background-color: transparent;
    color:#e3006c;
}
/* BOUTON FLAT */
a.btn-flat, body .elementor-element.elementor-button-success .elementor-button, a.btn-flat:focus, a.btn-flat:visited {
    color: #e3006c;
    background: transparent;
    display: inline-block;
    min-width: inherit;
    box-shadow: none;
    background-color: transparent;
    /* color: #343434; */
    cursor: pointer;
    -webkit-transition: background-color .2s;
    transition: background-color .2s;
    padding-left: 0;
    border-radius: 0 !important;
}
a.btn-flat:hover, body .elementor-element.elementor-button-success .elementor-button:hover {
    color:#f32587;
    background: transparent;
    box-shadow:none;
}

a.btn-flat:before, body .elementor-element.elementor-button-success .elementor-button:before {display:none;}
.elementor-button .elementor-align-icon-right,
.elementor-button .elementor-align-icon-left {
      -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
.elementor-button:hover .elementor-align-icon-right,
.elementor-button:hover .elementor-align-icon-left {
  transform:translateX(5px);
  -moz-transform:translateX(5px);
  -webkit-transform:translateX(5px);
}
/*-----------------------------------------------------------
# LOGO
-------------------------------------------------------------- */


.custom-logo-link img.logo {display:none;}
.custom-logo-link img.logo-blanc {display:block;}
.sticky  .custom-logo-link img.logo-blanc {display:none;}
.sticky .custom-logo-link img.logo {display:block;}


.custom-logo-link, .custom-logo-link img {
           -o-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    display:block;
    position:relative;
}

/*-----------------------------------------------------------
# HEADER
-------------------------------------------------------------- */
.elementor-editor-active #header {display:none;}
#header {
  position:fixed;
  z-index:999;
  width:100%;
  top:0;
  left:0;

}
#nav-desktop > .menu-item.button-header > a {
    height: 44px;
    line-height: 44px;
    margin-left: 15px;
    vertical-align: middle;
    margin-top: -2px;
    display: inline-block;
    padding: 0 20px;
    /* font-weight: 700; */
    font-size: 0.9em;
    white-space: nowrap;
    color: #fff !important;
    min-width: 100px;
}

.custom-logo-link, .custom-logo-link img {
  -o-transition: all .3s ease-in-out;
     -ms-transition: all .3s ease-in-out;
     -moz-transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    display:block;
    position:relative;
}

header nav {
    background: transparent; /* Old browsers */
  box-shadow:none;
    height: 80px;
    line-height: 80px;
}
header .nav-wrapper {
    padding: 0 2em;
    margin: auto;
}

header nav:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    /* top: -100px; */
    height: 100%;
    z-index: -1;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
#nav-desktop {
  display:inline-block;
      padding-left: 0;
    list-style-type: none;
    float: right !important;
}
#nav-desktop > .menu-item  {
    position:relative;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
    float: left;
    line-height: 80px;
}
#nav-desktop > .menu-item > a {
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
    display: block;
    padding: 0 15px;
    cursor: pointer;
    font-weight: 500;
    letter-spacing: 0.03em;
    text-decoration: none;
    /* text-transform: uppercase; */
    font-family: "Montserra", sans-serif;
}
#nav-desktop .menu-item > a:before {
    content: "";
    width: 0;
    height: 3px;
    background: #e3006c;
    position: absolute;
    bottom: 15px;
    left: 15px;
    margin: auto;
    z-index: 1;
    opacity: 0;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -ms-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
}

#nav-desktop .menu-item.current-menu-item > a::before,
#nav-desktop .menu-item > a:hover::before,
#nav-desktop .current-page-ancestor > a:before {
    opacity:1;
    width: 40px;
}
#nav-desktop > .menu-item.button-header > a:before {
    bottom:0;
    width:100%;
}
#nav-desktop .menu-item.current-menu-item > a {font-weight:bold;}
.sub-menu .menu-item > a:before {
  display:none !important;
}
#nav-desktop a, .cart-menu a {
    font-weight: 600;
    white-space: nowrap;
       color:#fff;
}

#nav-desktop .sub-menu, .cart-menu .sub-menu {
    max-width: 300px;
    overflow: hidden;
    transition: transform 250ms ease, opacity 250ms ease;
    transform: scale(0.9) translateY(20px);
    pointer-events: none;
    opacity: 0;
    background: #fff;
    border-radius: 6px;
    padding: 0;
    position: absolute;
    top: 90%;
      left: auto;
    right: -15px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.07);
}


#nav-desktop > li:hover .sub-menu,
.cart-menu > li:hover .sub-menu {
  
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
    transform: none;
    display:block;
}
#nav-desktop .sub-menu > li > a, .cart-menu .sub-menu > li > a {
    padding: 10px;
    display: block;
    color: #000000;
    text-align: left;
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -ms-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
        font-family: "Lato", Sans-serif;
    font-weight: 400;
}
#nav-desktop .sub-menu > li > a:hover,
.cart-menu .sub-menu > li > a:hover {
  background:#e3006c;
  color:#FFF;
}



.sticky #nav-desktop .custom-logo-link {
    transform: translateY(0);
}
.sticky  #nav-desktop .menu-item > a:before {
    bottom:0;
}
header.sticky #nav-desktop > .menu-item > a {color:#000000;}
header.sticky nav:before {
    opacity: 1;
    top: 0;
    background: #ffffff;
    -webkit-box-shadow: 0 6px 10px 0 rgba(0,0,0,0.14), 0 1px 18px 0 rgba(0,0,0,0.12), 0 3px 5px -1px rgba(0,0,0,0.3);
    box-shadow: 0 6px 10px 0 rgba(0,0,0,0.14), 0 1px 18px 0 rgba(0,0,0,0.12), 0 3px 5px -1px rgba(0,0,0,0.3);
}

header.sticky nav, header.sticky #nav-desktop > .menu-item {
  line-height: 64px;
  height: 64px;
}
.sticky .custom-logo-link {
    max-width: 180px;
    -o-transform: translateY(10px);
    -moz-transform: translateY(10px);
    -ms-transform: translateY(10px);
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
}

.admin-bar #header {top:32px;}

/*BOUTON MENU */ 
#bouton_menu {
    height: 60px;
    width: 60px;
    position: relative;
    /* right: 0px; */
    display: block;
    float: right;
    /* top: 0px; */
    color: #fff;
    margin: 0;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.3s ease 0s;
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
}
#bouton_menu:before {
transform: translateY(-8px);
-webkit-transform: translateY(-8px);
-moz-transform: translateY(-8px);
-ms-transform: translateY(-8px);
-o-transform: translateY(-8px);
}
#bouton_menu:after {
  transform: translateY(8px);
  -webkit-transform:translateY(8px);
  -moz-transform:translateY(8px);
  -ms-transform:translateY(8px);
  -o-transform:translateY(8px);
}
#bouton_menu span {
display:block;
}
#bouton_menu.active span {
opacity:0;
}




#bouton_menu:before,#bouton_menu span, #bouton_menu:after {
 background:#ffffff;
  content: "";
  height: 1.5px;
  left: 25%;
  margin-top: -1px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
-ms-transition: all 0.3s ease 0s;
-o-transition: all 0.3s ease 0s;
  width: 50%;
}
.sticky #bouton_menu:before,
.sticky #bouton_menu span, 
.sticky #bouton_menu:after {
  background:#395BA1;
}

#bouton_menu.active:before {
    transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  
}
#bouton_menu.active:after {
    transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

.custom-logo-link {
    max-width: 200px;
    display: block;
    float: left;
    -o-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
}


@media only screen and (max-width:1300px ) {

    header .nav-wrapper {
        padding: 0 1.5em;
    }
}
@media only screen and (max-width:990px ) {

 header .nav-wrapper{
    padding: 0 1em;
  }
  .custom-logo-link, .sticky .custom-logo-link {
    max-width: 120px;
    -o-transform: translateY(12px);
    -moz-transform: translateY(12px);
    -ms-transform: translateY(12px);
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
  }
  #header nav,
    .sticky nav:before, 
    .cart-menu > li,
    .cart-menu > li > a > i,
    #bouton_menu {
      height: 50px ;
      line-height: 50px ;
    }
   
}
@media only screen and (max-width:601px ) {
  .admin-bar #header {top:46px;}
  .admin-bar #header.sticky  {top:0px;}
}


/*-----------------------------------------------------------
# NAV MOBILE 
-------------------------------------------------------------- */
.animated {
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -o-animation-duration: 1s;
    animation-duration: 1s;
}
#nav-mobile {
background: #395BA1; /* Old browsers */
background: -moz-linear-gradient(-45deg, #395BA1 0%, #32C4FF 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg, #395BA1 0%,#32C4FF 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg, #395BA1 0%,#32C4FF 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
#nav-mobile li.current_page_item a {position:relative;}
#nav-mobile li.current_page_item a:before {
   content:"";
   height:100%;
   width:5px;
   position:absolute;
   left:0;
   top:0;
   background:#E3006C;

}
#nav-mobile li:nth-child(2n) {
  -webkit-animation-delay : .1s;
    animation-name : .1s;
}
#nav-mobile li:nth-child(3n) {
  -webkit-animation-delay : .2s;
    animation-name : .2s;
}
#nav-mobile li:nth-child(4n) {
  -webkit-animation-delay : .3s;
    animation-name : .3s;
}
#nav-mobile li:nth-child(5n) {
  -webkit-animation-delay : .4s;
    animation-name : .4s;
}
#nav-mobile li.animated {
   -webkit-animation-name : fadeInRight;
    animation-name : fadeInRight;
}
.sidenav > li > a {
    border-top: 1px solid rgba(255,255,255,0.2);
    color: #fff; 
}
.sidenav > li.button-header-outlined > a {color:#000;}
.sidenav li .sub-menu li a {
    color: rgba(255,255,255,0.57);
    line-height: 22px;
    padding:5px 20px 5px 40px;
    height:auto;
}
.sidenav li .sub-menu li a:before {
  content:">";
  padding-right:5px;
}
.sidenav li.first-element > a{
  float:none;
  height:auto;
  line-height: auto;
  border-top:1px solid #f2f6fc;
}


/* HOME */
#home-rounded {
      border-radius: 0 0 900px 900px;
      overflow:hidden;
}
#home-rounded .elementor-background-overlay {
  opacity:0.5;
  background: #1e5799; /* Old browsers */
  background: -moz-linear-gradient(-45deg, #1e5799 0%, #000000 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #1e5799 0%,#000000 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #1e5799 0%,#000000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#000000',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
/*
#home-rounded:after {
  content:"";
  position:absolute;
  width:100%;
  height:100%;
  background:url(./images/bg-home.png);
  background-size:cover;
  background-position: center bottom;
  z-index:2;
}
*/
.greyscale-img .elementor-carousel-image,
.greyscale-img .elementor-gallery-item__image{
  filter: gray; /* IE6-9 */
  -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
  filter: grayscale(1); /* Microsoft Edge and Firefox 35+ */
  opacity:0.5;
    transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
-ms-transition: all 0.3s ease 0s;
-o-transition: all 0.3s ease 0s;
}

/* Disable grayscale on hover */
.greyscale-img .elementor-carousel-image:hover,
.greyscale-img .elementor-gallery-item__image:hover {
  -webkit-filter: grayscale(0);
  filter: none;
  opacity:1;
}
/* DIAPO */


.diapo-pspm .swiper-slide-contents{
  width: 50%;
  padding: 10%;
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button {
  border:none;
  padding:10px 0;
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button:before{display:none;}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button:after {
  content: "\f061";
  display:inline-block;
  -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding:0 10px;
        transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
-ms-transition: all 0.3s ease 0s;
-o-transition: all 0.3s ease 0s;
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-button:hover::after {
        -o-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-heading {
    font-size: 1.5em;
    font-weight: 300;
    line-height: 1;
    position:relative;
    padding-top:10px;
    display:inline-block;
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-heading:before {
  content:"";
  width:40px;
  height:3px;
  background:#E3006C;
  position:absolute;
  left:0;
  top:0;
}
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-description:not(:last-child), 
.diapo-pspm .elementor-slides .swiper-slide-inner .elementor-slide-heading:not(:last-child) {
  margin-bottom:0;
}

@media only screen and (max-width:1024px ) {
  .diapo-pspm .swiper-slide-contents {
      width: 100%;
      max-width: 100% !important;
      text-align: center;
  }

}


/*--------------------------------------------------------------
# FORMULAIRES
--------------------------------------------------------------*/
*:focus {
    outline: none;
}
form {
  margin:10px auto;
}
form > .row > .col {
  padding-top:20px;
}

label {
  text-align: left;
  font-weight: 300;
  line-height: 150%;
  position: relative;
  padding-bottom:5px;
  font-size:1em;
  display: block;
}
p.label {
    text-align: left;
    font-weight: 400;
    line-height: 150%;
    position: relative;
    font-size: 0.8em;
    display: block;
    color: #000;
    margin-bottom: 5px;
    text-transform: uppercase;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 5.1px;
}
input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], select, textarea {
    background: rgba(84,89,95,0.08);
    border-width: 0px 0px 0px 0px;
    border-radius: 2px 2px 2px 2px;
    font-size: 1em;
    min-height: 4em;
    position: relative;
    border: none;
    display: block;
    width: 100%;
    /* margin: 4px 0; */
    padding: 10px;
    border-radius: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
}
[type="checkbox"]:checked+span:not(.lever):before {
    border-right: 2px solid #004E92;
    border-bottom: 2px solid #004E92;
}


.file-field {position:relative;}
input.wpcf7-file{
  padding-top:15px;
}
span.wpcf7-not-valid-tip {
    color: #f00;
    font-size: 0.8em;
    font-weight: normal;
    display: block;
    text-align: left;
}
span.wpcf7-list-item-label {line-height:1.2;}

.select-wrapper input.select-dropdown, .select-wrapper span.caret {
    color: #666;
    font-size: 1em;
}

    .dropdown-content li>a, .dropdown-content li>span {
  color:#666;
}
.dropdown-content li > a, .dropdown-content li > span {
    font-size: 1em;
}
.dropdown-content li > span > label {
    top: 1px;
    left: 0;
    height: auto;
}
[type="checkbox"]+span:not(.lever) {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    display: inline-block;
    height: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.dropdown-content {
  max-height:300px;
}
.dropdown-content li {
    min-height: 30px;
}
.chosen-container {
  display:none !important;
}


[type="checkbox"]:checked+span:not(.lever):before {
    border-right: 2px solid #0091dc;
    border-bottom: 2px solid #0091dc;
    }


/*--------------------------------------------------------------
# RESPONSIVE
--------------------------------------------------------------*/
@media only screen and (max-width:1230px ) {

}
@media only screen and (max-width:1080px ) {
   html {
     
      font-size: 12px;
  }

} 

@media only screen and (max-width:720px ) {


  blockquote:before, blockquote:after {
      width: 20px;
      height: 20px;
      background-size: 20px;
  }
  blockquote p {
      font-size: 1em;
      line-height: 1.5em;
      font-weight: 300;
      display:inline;
      text-align:center;
  }
  blockquote {
      padding: 20px 5px;
      position: relative;
      border: 0;
  }
  #top-footer .valign-wrapper,

  .logo-blanc-footer {
    display: block;
    margin: 0 10px;
    margin: 10px auto;
    max-width: 50px;
  }
   .footer-menu {
      display:none;
   }
   #footer .social-list {
    padding:0;
    text-align: center;
   }
  .footer-menu > li {
       width: 33%; 
  }
  body .btn,body a.elementor-button {
    font-size: 1.2em !important;
  }
}
