@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Regular.ttf') format('truetype'),
    font-weight: normal;
    font-style: normal;
}
.astroid-logo > .astroid-logo-default, .astroid-logo > .astroid-logo-sticky {
  margin-top: 22px;
  margin-bottom: 26px;
}
.astroid-header-sticky .astroid-nav .nav-link.active, .astroid-header-sticky .astroid-nav .nav-link:active, .astroid-nav .nav-link.active, .astroid-nav .nav-link:active {
  background: #4C799E;
  border-radius: 4px;
  color: #FFF;
}
body {
  line-height: 1.5;
  --bs-body-font-family: "Open Sans", system-ui, "Helvetica", sans-serif;
  font-family: "Open Sans", system-ui, "Helvetica", sans-serif;
}
h1, h2, h3, h4, h5, h6{
  font-family: "Open Sans", system-ui, "Helvetica", sans-serif;
}
  
.megamenu-container li.nav-item-submenu > a:active, .megamenu-container li.nav-item-submenu > a.active, .megamenu-container li.nav-item-submenu > a:active, .megamenu-container li.nav-item-submenu > a:hover {
    border-radius: 8px;
}
.megamenu-container {
  border: 2px solid #FCD27E;
  border-top: none;
  border-radius: 0 0 8px 8px;
  top: 72px!important;
}
.disabled .page-link{
  border: 2px solid #ADADAD;
  background: #ADADAD;
  color: white;
}
@media screen and (max-width: 576px){
  .overlay{
    padding: 0 0.15rem;
  }
  .overlay div:nth-child(1)::before{
    left: 0.15rem;
    right: 0.15rem;
  }
}
@media screen and (min-width: 577px) and (max-width: 640px){
  .overlay div:nth-child(1)::before{
    left: 0.75rem;
    right: 0.75rem;
  }
}
@media screen and (min-width: 641px) and (max-width: 960px){
  .overlay div:nth-child(1)::before{
    left: 1rem;
    right: 1rem;
  }
}
@media screen and (min-width: 961px){
  .overlay div:nth-child(1)::before{
    left: 1.5rem;
    right: 1.5rem;
  }
}
header {
  z-index: 99999;
}

*, html {
    margin:0;
    padding:0;
}

/****** Classes génériques ******/
.full-width-container {
  width: 100vw;
  margin-left: calc(-50vw + 50% + 10px);
  margin-right: calc(-50vw + 50%);
  max-width: calc(100vw - 20px);
  overflow: hidden;
}

.overlay, .overlay h1{
  position: relative;
}
.overlay div:nth-child(1)::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  background-color: rgba(241, 246, 249, 0.3);
}
/****** Typographie ******/
h1, h2, h3, h4, h5, h6 {
  display: block;
  margin: 0;
}

h1 	{
  font-weight: 600;
  line-height: 1.4;
}
h2 	{
  font-weight: 600;
  line-height: 1.45;
}
h3, h4, h5, h6 	{
  font-weight: 600;
}

.h1-style {
  font-weight: 600;
  font-size: 3.815em;
}
.h2-style {
  font-weight: 600;
  font-size: 3.052em;
}
.h3-style {
  font-weight: 600;
  font-size: 2.441em;
}
.h4-style {
  font-weight: 600;
  font-size: 1.953em;
}
.h5-style {
  font-weight: 600;
  font-size: 1.563em;
}
.h6-style {
  font-weight: 600;
  font-size: 1.25em;
}
.p-style {
  font-weight: 400;
  font-size: 1em;
}
.caption-style {
  font-weight: 400;
  font-size: 0.875em;
}
.regular-style{
  font-weight: 400;
}
.bold-style{
  font-weight: 600;
}

.text-primary-dark {
  color: #30526F;
}
.text-accent-dark {
  color: #5A3C02;
}
.text-success-dark {
  color: #145233;
}
/****** Bordures ******/
.border-primary-600 {
  border: 2px solid #5E92BA;
}
.border-primary-700 {
  border: 2px solid #4C799E;
}
.border-accent-200 {
  border: 2px solid #FDE7B9;
}

/****** Boutons ******/
.btn-accent-light{
  border: 2px solid #F9A806;
  background: #FEF5E1;
  color: #5A3C02!important;
  transition: 200ms;
}

.btn-accent-light:hover, .btn-accent-light:active{
  border: 2px solid #DB9406!important;
  background: #FCD27E!important;
  color: #5A3C02!important;
}

.btn-accent-dark{
  background: #BD8005;
  color: #FFF;
  transition: 200ms;
}

.btn-accent-dark:hover, .btn-accent-dark:active{
  background: #956504!important;
  color: #FFF!important;
}

.btn-primary-light{
  border: 2px solid #4C799E;
  background: #F1F6F9;
  color:#3A6388;
  transition: 200ms;
}

.btn-primary-light:hover, .btn-primary-light:active{
  border: 2px solid #3A6388!important;
  background: #DFEBF1!important;
  color: #3A6388!important;
}

.btn-primary-dark{
  background: #4C799E;
  color: #FFF;
  transition: 200ms;
  border: none;
}

.btn-primary-dark:hover, .btn-primary-dark:active{
  background: #3A6388!important;
  color: #FFF!important;
}
/****** Espacements ******/
.bloc-debut-section{
  margin: 64px 0;
}

/****** Bandeau CTA ******/
.bandeau-cta .rowck {
  margin-bottom: 0!important;
}

/****** Menu principal ******/
.astroid-header:not(.astroid-header-sticky), .astroid-header-sticky > div.container {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

/****** Hero section des pages ******/
.hero-section-pages .container div{
  padding: 64px 0;
}
.hero-section-pages h1{
  display: inline-block;
  background: #F1F6F9;
  border-radius: 0 8px 8px 0;
  padding: 16px;
  max-width: 85%;
  border: 2px solid #BFD5E3;
  border-left: none;
  margin-left: -2px;
}
.image-hero-section .cktext{
  border: 2px solid #BFD5E3;
  border-top: none;
  border-bottom: none;
}
.image-hero-section h1{
  line-height: normal!important;
}
@media screen and (min-width: 992px){
  .hero-section-pages h1, .hero-accueil h1{
    font-size: 3.052em;
  }
  .titre-section{
    font-size: 2.441em;
    line-height: 1.5;
  }
  .hero-section-pages h1 span:nth-child(1){
    font-size: 1.563rem;
    //line-height: 1.5;
  }
  .hero-section-pages h1 span:nth-child(2){
    font-size: 3.052rem;
    line-height: 1.45;
  }
  .hero-accueil h2{
    font-size: 1.563em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 992px){
  .hero-section-pages h1, .titre-section, .hero-accueil h1{
    font-size: 1.563em;
    line-height: 1.5;
  }
  .hero-section-pages h1 span:nth-child(1){
    font-size: 1rem;
    line-height: 1.5;
  }
  .hero-section-pages h1 span:nth-child(2){
    font-size: 1.563rem;
    line-height: 1.5;
  }
  .hero-accueil h2{
    font-size: 1em;
    line-height: 1.5;
    font-weight: 600;
  }
}

/****** Section présentation et corps des pages ******/
.argumentaire-1-blanc, .argumentaire-2-blanc, .argumentaire-1-primary, .argumentaire-2-primary, .bloc-videos, .section-technique, .citation, .citation-2{
  padding: 32px;
}
.section-technique a:hover{
  color: #956504;
}
.conteneur-argumentaire h3, .section-technique h4{
  padding-bottom: 16px;
}
@media screen and (min-width: 768px){
  .bloc-img-bas{
    text-align: right;
  }
  .bloc-img-haut, .bloc-img-double{
    transform: translateY(-32px);
    text-align: right;
    z-index: 99;
  }
  .logos-qualite{
    width: 75%;
    margin-bottom: 32px;
  }
  .conteneur-argumentaire {
    position: relative;
    z-index: 99;
  }
   .conteneur-argumentaire h2{
    padding-bottom: 32px;
  }
  .argumentaire-1-blanc::before, .citation-2::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 50px;
    bottom: 0;
    background: white;
    z-index: -1;
    border-radius: 0 8px 8px 0;
    max-width: 75vw;
    margin-left: calc(-50vw + 50% + 10px);
  }
  .argumentaire-1-fonctionnalites::before{
    height: 115%;
  }
   .argumentaire-1-primary::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 50px;
    bottom: 0;
    background: #F1F6F9;
    z-index: -1;
    border-radius: 0 8px 8px 0;
    max-width: 75vw;
    margin-left: calc(-50vw + 50% + 10px);
  }
  .argumentaire-2-blanc::after, .argumentaire-2-primary::after, .citation::after{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 75vw;
    height: 100%;
    z-index: -1;
    border-radius: 8px 0 0 8px;
    margin-right: calc(-50vw + 50% + 10px);
    background: white;
  }
@media screen and (min-width: 3000px){
  .argumentaire-2-blanc::after, .argumentaire-2-primary::after, .citation::after, .argumentaire-1-primary::before, .argumentaire-1-blanc::before, .citation-2::before{
    width: 60vw;
  }
}
  .argumentaire-2-primary::after{
    background: #F1F6F9;
  }
  .argumentaire-2-blanc::after{
    background: white;
  }
  .citation::after{
    background: #E7F9F0;
    border: 2px solid #279B61;
    border-right: none;
  }
  .citation-2::before{
    background: #E7F9F0;
    border: 2px solid #279B61;
    border-left: none;
  }
  .logo-accent{
    text-align: center;
  }
}
@media screen and (min-width: 1200px){
  .logos-qualite{
    width: 60%;
    margin-bottom: 32px;
  }
  .section-presentation-fonctionnalites h2 {
    padding-bottom: 32px;
  }
}
.section-argumentaires .conteneur-argumentaire:not(:first-child){
  margin-top: 64px;
}
/****** Hero section accueil ******/
.hero-accueil a{
  margin-top: 16px;
}
.hero-accueil a:last-child{
  margin-left: 32px;
}
.conteneur-hero-section-accueil{
  background: rgba(255, 255, 255, .75);
  border-radius: 8px;
}
@media screen and (max-width: 576px){
  .logo-hero-section{
    width: 213px;
    margin-bottom: 16px;
  }
  .conteneur-hero-section-accueil{
    padding: 8px;
  }
}
@media screen and (min-width: 577px) and (max-width: 992px){
  .logo-hero-section{
    width: 250px;
    margin-bottom: 32px;
  }
  .conteneur-hero-section-accueil{
    padding: 16px 32px;
  }
}
@media screen and (min-width: 993px){
  .logo-hero-section{
    width: 480px;
    margin-bottom: 32px;
  }
  .conteneur-hero-section-accueil{
    padding: 16px 32px;
  }
}
/****** Section atouts ******/
.avantage h3{
  padding: 32px 32px 16px 32px;
}
.avantage p{
  padding-left: 32px;
  padding-right: 32px;
}
.avantage p:last-child{
  padding-bottom: 32px;
}
.avantage img{
  padding-top: 32px;
}
.avantage .cadre-avantage{
  margin-top: 8px;
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .argumentaire-1-primary, .argumentaire-2-primary{
    border-radius: 0 0 8px 8px;
  }
  .argumentaire-2-blanc, .argumentaire-1-blanc, .argumentaire-texte{
    border-radius: 8px;
  } 
  .bloc-img-primary, bloc-img-double, .bloc-img-haut, .logo-temoignage-client{
    border-radius: 8px 8px 0 0;
  }
  .bloc-img-primary-bas{
    border-radius: 0 0 8px 8px;
  }
  .conteneur-argumentaire-lexique{
    margin-top: 32px;
  }
  .conteneur-argumentaire h2{
    padding-bottom: 16px;
  }
  .position-1-position h2{
    padding-bottom: 32px;
  }
  .hero-accueil, .bandeau-avantages-herakles, .bandeau-cta, .section-preuve-sociale, .section-presentation-metier, .section-presentation-fonctionnalites, .section-presentation-services, .section-argumentaires, .derniers-articles-publies, .section-referencement-croise{
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .section-presentation-metier h2, .section-presentation-services h2 {
    padding-bottom: 16px;
  }
  .conteneur-argumentaire.conteneur-argumentaire-haut{
    margin-top: 16px;
  }
  .conteneur-argumentaire:not(.conteneur-argumentaire-haut, .bloc-debut-section) {
    margin-top: 32px;
  }
  .formulaire-header-bleu h3{
    padding-top: 16px;
    padding-bottom: 32px;
  }
  .avantage .cadre-avantage{
   height: 390px;
  }
  .logos-qualite{
    width: 45%;
  }
  .bloc-img-haut, .logo-temoignage-client{
    order: -1;
    background: white;
    padding: 32px 32px 0 32px;
  }
  .bloc-img-primary, .bloc-img-primary-bas{
    background: #F1F6F9;
  }
  .conteneur-argumentaire .bloc-img-double:first-child{
    border-radius: 8px 8px 0 0;
  }
  .bloc-img-blanc{
    background: white;
  }
  .bloc-img-double{
    padding: 32px 32px 0 32px;
  }
  .bloc-img-double-bas{
    padding: 0 32px 32px 32px;
  }
}
.argumentaire-1-blanc, .argumentaire-2-blanc{
  background: white;
}
.argumentaire-1-primary, .argumentaire-2-primary{
   background: #F1F6F9;
}
.argumentaire{
  margin-bottom: 64px;
}
@media screen and (min-width: 768px) and (max-width: 1999px){
  .conteneur-argumentaire-lexique{
    margin-top: 32px;
  }
  .hero-accueil, .bandeau-avantages-herakles, .bandeau-cta, .section-preuve-sociale, .section-presentation-metier, .section-presentation-fonctionnalites, .section-presentation-services, .section-argumentaires, .derniers-articles-publies, .section-referencement-croise{
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .conteneur-argumentaire.conteneur-argumentaire-haut{
    margin-top: 32px;
  }
  .conteneur-argumentaire:not(.conteneur-argumentaire-haut, .bloc-debut-section) {
    margin-top: 32px;
  }
  .section-presentation-metier h2, .section-presentation-services h2 {
    padding-bottom: 16px;
  }
  .formulaire-header-bleu h3{
    padding-top: 16px;
    padding-bottom: 32px;
  }
  .position-1-position h2{
    padding-bottom: 32px;
  }
 .avantage .cadre-avantage{
   height: 400px;
 }
}
@media screen and (min-width: 1200px) and (max-width: 1399px){
  .conteneur-argumentaire-lexique{
    margin-top: 64px;
  }
  .hero-accueil, .bandeau-avantages-herakles, .bandeau-cta, .section-preuve-sociale, .section-presentation-metier, .section-presentation-fonctionnalites, .section-presentation-services, .section-argumentaires, .derniers-articles-publies, .section-referencement-croise{
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .conteneur-argumentaire.conteneur-argumentaire-haut{
    margin-top: 32px;
  }
  .conteneur-argumentaire:not(.conteneur-argumentaire-haut, .bloc-debut-section) {
    margin-top: 32px;
  }
  .section-presentation-metier h2, .section-presentation-services h2{
    padding-bottom: 32px;
  }
  .formulaire-header-bleu h3{
    padding-top: 48px;
    padding-bottom: 64px;
  }
  .position-1-position h2{
    padding-bottom: 64px;
  }
 .avantage .cadre-avantage{
   height: 520px;
 }
}
@media screen and (min-width: 1400px){
  .conteneur-argumentaire-lexique{
    margin-top: 64px;
  }
  .image-section-presentation-bas{
    width: 35%;
  }
  .hero-accueil, .bandeau-avantages-herakles, .bandeau-cta, .section-preuve-sociale, .section-presentation-metier, .section-presentation-fonctionnalites, .section-presentation-services, .section-argumentaires, .derniers-articles-publies, .section-referencement-croise{
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .conteneur-argumentaire.conteneur-argumentaire-haut{
    margin-top: 32px;
  }
  .conteneur-argumentaire:not(.conteneur-argumentaire-haut, .bloc-debut-section) {
    margin-top: 32px;
  }
  .section-presentation-metier h2, .section-presentation-services h2{
    padding-bottom: 32px;
  }
  .formulaire-header-bleu h3{
    padding-top: 48px;
    padding-bottom: 64px;
  }
  .position-1-position h2{
    padding-bottom: 64px;
  }
 .avantage .cadre-avantage{
   height: 450px;
 }
}
/****** Section preuve sociale ******/
.logo-accent-cliquable, .logo-primary-cliquable{
  padding: 16px;
  border-radius: 16px;
  text-align: center;
}
.logo-accent-cliquable{
  background: #FDE7B9;
}
.logo-primary-cliquable{
  background: #DFEBF1;
}
.logo-accent-cliquable a img, .logo-primary-cliquable a img{
  max-height: 112px;
}
.logo-accent img{
  max-height: 150px;
}
.section-preuve-sociale h3{
  padding-bottom: 32px;
}
.section-preuve-sociale h5{
  padding-top: 32px;
}
/****** Cadres fonctionnalités, métiers, clients ******/
.cadre {
  padding: 8px;
  position:relative;
  z-index:1;
}
.cadre > a {
  text-decoration: none;
  color: #30526F;
  display: block;
  box-sizing: border-box;
  height: 100%;
  border: 2px solid #5E92BA;
  border-radius: 8px;
  padding: 16px;
  transition:  color 250ms;
}
@media screen and (max-width: 768px) {
  .section-metiers {
    background: url(/images/fonds/arriere_plan_metiers_small.png) center top repeat scroll;
  }
  .section-metiers h2, .section-fonctionnalites h2{
    padding: 32px 0 32px 0;
  }
  .hero-accueil {
    background: url(/images/fonds/background_hero_section_small.png) center no-repeat scroll;
    background-size: cover;
  }
  .section-fonctionnalites {
    background: url(/images/fonds/arriere_plan_fonctionnalites_small.png) center top repeat scroll;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .section-metiers {
    background: url(/images/fonds/arriere_plan_metiers_medium.png) center top repeat scroll;
    padding: 32px;
  }
  .section-metiers h2, .section-fonctionnalites h2{
    padding-bottom: 32px;
  }
  .hero-accueil {
    background: url(/images/fonds/background_hero_section_medium.png) center no-repeat scroll;
  }
  .section-fonctionnalites {
    background: url(/images/fonds/arriere_plan_fonctionnalites_medium.png) center top repeat scroll;
    padding: 32px;
  }
}
@media screen and (min-width: 1025px){
  .section-metiers {
    background: url(/images/fonds/arriere_plan_metiers_large.png) center top no-repeat scroll;
    padding: 64px;
    background-size: cover;
  }
  .section-metiers h2, .section-fonctionnalites h2{
    padding-bottom: 64px;
  }
  .hero-accueil {
    background: url(/images/fonds/background_hero_section_large.png) center no-repeat scroll;
     background-size: cover;
  }
  .section-fonctionnalites {
    background: url(/images/fonds/arriere_plan_fonctionnalites_large.png) center top no-repeat scroll;
    padding: 64px;
    background-size: cover;
  }
}
.cadre > a {
  transition: 250ms;
}

.cadre > div {
  display: block;
  text-align: center;
  box-sizing: border-box;
  height: 100%;
  width: 160px;
  margin: 0;
}

.cadre.doc > a {
  background: #fff;
  padding: 32px;
}
.cadre.doc h2{
  padding-bottom: 16px;
}
.metier > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-decoration: none;
  color: #30526F;
  text-align: center;
  height: 14.5em;
  border: 2px solid #5E92BA;
  border-radius: 8px;
  margin: 8px;
  transition: 250ms;
  background: #FFF;
}

@media screen and (max-width: 960px){
  .metier > a{
    margin: 4px;
  }
}

.metier > a:hover, .cadre > a:hover{
  color: #4C799E;
  transform: scale(1.05);
}

.metier > a > h6 {
  padding: 1em;
  font-size: 1.25em;
}

@media screen and (max-width: 960px){
  .metier > a > h6{
    font-size: 0.875em;
    font-weight: 400;
    word-break: break-all;
  }
}
@media screen and (max-width: 576px){
  .cadre.doc > a{
    padding: 16px;
  }
  .cadre.doc, .cadre-lexique{
    width: 100%;
  }
  .logos-qualite{
    width: 50%
  }
}
@media screen and (min-width: 577px) and (max-width: 992px){
  .cadre.doc, .cadre-lexique{
    width: 50%;
  }
}
@media screen and (min-width: 993px) and (max-width: 1200px){
  .cadre.doc, .cadre-lexique{
    width: 33.33%;
  }
  .cadre-lexique{
    transform: translateY(-32px);
    z-index: 99;
  }
}
@media screen and (min-width: 1201px){
  .cadre.doc{
    width: 25%;
  }
  .cadre-lexique{
    width: 33.33%;
    transform: translateY(-32px);
    z-index: 99;
  }
}

.cadre.client > a {
  width: 240px;
}
.cadre.client > div {
  width: 240px;
}
.cadre.client.accueil {
  display: flex;
  justify-content: center;
}
.cadre.client.accueil > a {
  width: 240px;
}
.cadre.client.accueil > div {
  width: 240px;
  height: 128px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cadre.client > a > div {
  margin: 0;
}
.cadre.client > a:hover {
  border: 1px solid #F9A806;
  box-shadow: 3px 3px 5px #F9A806;
}

/****** Mosaique services ******/
@media screen and (min-width: 992px){
  .grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 16px;
  }
  .middle {
    transform: translateY(64px); /* Décale la colonne du milieu vers le bas */
  }
  .section-mosaique{
    padding: 64px 0 128px 0;
  }
  .section-mosaique h2, .section-livre-blanc h3 {
    padding-bottom: 64px;
  }
  .section-livre-blanc {
    padding: 64px 0;
  }
  .section-livre-blanc .btn {
    margin-top: 64px;
  }
}
@media screen and (max-width: 992px){
  .item{
    margin-bottom: 16px;
  }
  .section-mosaique{
    padding: 32px 0 32px 0;
  }
  .section-mosaique h2, .section-livre-blanc h3 {
    padding-bottom: 32px;
  }
  .section-livre-blanc {
    padding: 32px 0;
  }
  .section-livre-blanc .btn {
    margin-top: 32px;
  }
}
.item {
  padding: 32px;
  text-align: left;
  border-radius: 8px;
}
.item-white {
  background: white;
}
.item-primary-light{
  background: #F1F6F9;
  color: #30526F;
}
.item h3 {
  padding-bottom: 24px;
}
/****** Lexique ******/
.conteneur-argumentaire-lexique {
  position: relative;
  z-index: 99;
}
.conteneur-argumentaire-lexique h2{
  padding-top: 32px;
}
.background-section-lexique{
  width: 15%;
  height: 143px;
}
.background-section-lexique::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 50px;
  bottom: 0;
  background: #F1F6F9;
  z-index: -1;
  border-radius: 0 8px 8px 0;
  max-width: 75vw;
  margin-left: calc(-50vw + 50% + 10px);
}
.cadre-lexique{
  padding: 8px;
}
.cadre-lexique h3{
  margin-bottom: 16px;
}
.cadre-lexique div{
  padding: 32px;
  border-radius: 8px;
  min-height: 100%;
  background: white;
}
.lexique a{
  color: #5A3C02;
}
.lexique a:hover{
  color: #956504;
}
.lexique span{
  color: #BD8005;
}

/****** Listing derniers articles de blog publiés ******/
dd a, .page-header a, svg a, #menu-blog a {
  text-decoration: none !important;
}

.readmore {
  text-align: right;
}

.readmore-btn {
  line-height: 0;
  font-size: 0;
}

.readmore-btn::after {
  content: "Lire la suite de l'article";
  font-size: initial;
  display: block;
  line-height: initial;
}
.as-readmore{
  padding: 8px;
  border-radius: 8px;
  background: #4C799E;
  color: white;
}
.as-readmore:hover{
  background: #3A6388;
  color: white;
  text-decoration: none;
}
.item-title .page-header [itemprop="name"]{
  margin-bottom: 32px;
  font-size: 1.25em!important;
}
dd.published {
  display:block;
}
.article-info i, .article-info dd [class^="icon"]{
  display: none;
}
.article-info{
  order: -1;
  margin-left: 0;
}
.article-info a{
  background: #C1F257;
  color: #2e2e2e;
  border-radius: 16px;
  padding: 4px;
}
.article-info > dd{
  padding-left: 0;
}

.item-title .page-header [itemprop="name"] {
  font-size: 1.4rem;
}

/****** Blog ******/
.wrapper-blog main{
  display: flex;
  justify-content: center;
}
.wrapper-blog .com-content-article{
  max-width: 680px;
}
.wrapper-blog .com-content-article img{
  border: 2px solid #5E92BA;
  border-radius: 8px;
}
@media screen and (max-width: 568px){
  .wrapper-blog .astroid-article-text p, .wrapper-blog .astroid-article-text ul, .wrapper-blog .astroid-article-text a{
    font-size: 0.875rem;
  }
}
@media screen and (min-width: 1200px){
  .wrapper-blog .astroid-article-text p, .wrapper-blog .astroid-article-text ul, .wrapper-blog .astroid-article-text a{
    font-size: 1.25rem;
  }
}
.titre-blog, .titre-temoignage{
  font-size: 1.563rem !important;
}
.mod-finder .btn{
  background: #BD8005;
  border: none;
}
.derniers-articles-publies{
  margin-bottom: 64px;
}
#menu-blog {
  flex-direction: row !important;
  justify-content: center;
  text-align:center;
  column-gap: 10px;
  padding-top: 56px;
  padding-bottom: 24px;
}
#menu-blog li a {
  display:inline-block;
  color: #2e2e2e;
  border: 2px solid #C1F257;
  border-radius: 8px;
  padding: 0.2rem 1rem;
  background: white;
  margin: 0 8px;
}
#menu-blog li a:hover {
  color: #2e2e2e;
  border: 2px solid #C1F257;
  background: #C1F257;
}
#menu-blog li.current a {
  color: #2e2e2e;
  background: #C1F257;
  border: 2px solid #C1F257;
}
.astroid-article-title h1{
  color: #30526F;
  font-size: 1.953em;
  font-weight: 600;
  padding-top: 32px;
  padding-bottom: 16px;
}
.titre-recherche-blog-position h2{
  padding: 32px 0 16px 0;
}
.card {
  display: flex;
  flex-flow: column;
}
.card article,
.card article div:last-child:not(.readmore):not(.btn) {
  width:100%;
  flex: 1;
  display: flex;
  flex-flow: column;
}
.card .readmore {
  display: block;
  margin-top: auto;
}

.blog-item {
  padding: 32px;
  border: 2px solid #5E92BA;
  border-radius: 8px;
  width: 31%;
  margin: 8px;
}

.com-content-category-blog__counter{
  text-align: center;
  color: #30526F;
  font-size: 1.25em;
  font-weight: 600;
}
 .page-link{
   border: 2px solid #4C799E;
   font-weight: 600;
 }
.page-link.active, .active > .page-link {
  color: #BD8005;
  border-color: #BD8005;
  background: #FEF5E1;
}
.page-link:hover{
  background: #FDE7B9;
  color: #956504;
  border-color: #956504;
}
/****** Moteur de recherche du blog ******/
@media screen and (min-width: 800px){
  .recherche-blog-position form{
    display: flex;
    align-items: end;
  }
  .recherche-blog-position .input-group{
    width: 360px;
  }
}
.recherche-blog-position{
  display: flex;
  justify-content: center;
}
/****** Contact ******/
@media screen and (max-width: 992px){
  .bloc-coordonnees-support{
    order: -1;
  }
}
.bloc-coordonnees-support{
  z-index: 99;
}
.cadre-contact{
  background: #F1F6F9;
  margin: 8px;
  padding: 24px;
  border-radius: 8px;
}
/****** Formulaires  ******/
.titre-formulaire{
  padding-top: 64px;
  padding-bottom: 64px;
}

.formError, .formRed {
    color: #B81414;
    font-weight: 400;
}
.form-check-label{
  color: #30526F;
}
.rsform-block-envoi{
  text-align: right;
  margin-bottom: 0!important;
}
.rsform-block-captcha{
  display: flex;
  justify-content: center;
}
[id^="rsfp-counter-"] {
  width: fit-content;
  margin-left: auto;
  color: #707070;
}
.form-infos{
  color: #707070;
}
.form-label, .control-label, .col-form-label {
  color: #3A6388;
}
input:not([type=radio], [type=checkbox], .js-finder-search-query), textarea{
  border: none!important;
  background: #F1F6F9!important;
}
.form-select{
  background-color: #F1F6F9!important;
  border: none;
  color: #30526F;
}
.formulaire-encadre-blanc .formContainer:not(.formHidden){
  background: white;
  padding: 2em;
  border-radius: 8px;
}
.formulaire-multi-pages .formContainer:not(.formHidden){
  border-radius: 0 0 8px 8px;
}
.formulaire-header-bleu .full-width-container{
  position: absolute;
  top: -1em;
  left:0;
  height: 30vh;
  background: #5E92BA;
}
.formulaire-multi-pages .full-width-container{
  position: absolute;
  top: -1em;
  left:0;
  height: 20vh;
  background: #5E92BA;
}
.rsformProgress{
  background: white;
  padding: 8px;
  border-radius: 8px 8px 0 0;
  position: relative;
  z-index: 99;
}
.formulaire-header-bleu .formContainer, .formulaire-multi-pages .formContainer:not(.formHidden){
  position: relative;
  z-index: 999;
}

.formulaire-header-bleu h3{
  position: relative;
  z-index: 999;
  text-align: center;
  color: #FFF;
}

.btn-navigation-formulaires button:nth-child(1){
  background: white;
  color: #30526F;
  border: 2px solid #4C799E;
}
.btn-navigation-formulaires button:nth-child(1):hover{
  background: #3A6388;
  color: white;
  border: 2px solid #3A6388;
}
.btn-navigation-formulaires button:nth-child(2){
  background: #4C799E;
  color: white;
  border: 2px solid #4C799E;
}
.btn-navigation-formulaires button:nth-child(2):hover{
  background: #3A6388;
  color: white;
  border: 2px solid #3A6388;
}
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
   color: #3A6388!important;
   opacity: 1; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: #3A6388!important;
}
::-ms-input-placeholder { /* Microsoft Edge */
  color: #3A6388!important;
}

.card{
  border: 2px solid #5E92BA;
  border-radius: 8px;
}
/****** Témoignages client ******/
.bloc-referencement-croise{
  padding: 32px;
  background: #F1F6F9;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 768px){
  .citation, .citation-2{
    background: #E7F9F0;
    border: 2px solid #279B61;
  }
}
@media screen and (min-width: 992px){
  .logo-temoignage-client{
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 576px){
  .logo-primary-cliquable{
    width: 50%;
  }
}
.conteneur-texte-citation{
  width: 100%;
}
/****** Page parc clients  ******/
.bloc-reference{
  padding: 16px;
}
.bloc-reference div {
  background: #FEF5E1;
  border-radius: 8px;
  padding: 32px;
}
/****** Footer  ******/
footer {
  max-width: 960px;
  background: #30526F;
}
.footer-column-infos{
  justify-content: space-between;
}
.footer-bloc-3{
  align-items: end;
}
.footer-bloc-3 a img {
  padding-bottom: 32px;
}
.footer-bloc-3 a{
  text-decoration: none;
}
.section-copyright {
  line-height: 2.5;
}
@media screen and (min-width: 768px) and (max-width: 991px){
  .footer-bloc-1{
    order: 1;
    margin-bottom: 32px;
  }
  .footer-bloc-2{
    order: 3;
    margin-bottom: 32px;
  }
  .footer-bloc-3{
    order: 2;
    margin-bottom: 32px;
  }
}
@media screen and (max-width: 767px){
  .footer-bloc-1{
    order: 2;
    margin-bottom: 32px;
  }
  .footer-bloc-2{
    order: 3;
    margin-bottom: 32px;
  }
  .footer-bloc-3{
    order: 1;
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 992px){
  .section-copyright{
    text-align: center;
  }
}

/****** Tableau tarifs  ******/
@media screen and (min-width: 992px) {
    .titre-colonne {
        font-size: 1.953em;
    }
    .item, .bloc-texte {
        padding: 16px;
    }
    .item-colonne{
        padding: 8px 16px;
    }
    .bloc-texte-bas {
        padding: 0 16px 16px 16px;
    }
    .bloc-texte-haut {
        padding: 16px 0 8px 0;
    }
    .item-solutions-reversibles{
       margin-top: 32px;
    }
    .colonne-tarifs{
        margin-bottom: 16px;
    }
}
@media screen and (max-width: 991px) {
    .titre-colonne {
        font-size: 1.25em;
    }
    .item, .item-colonne, .bloc-texte {
        padding: 8px;
    }
    .item-colonne{
        padding: 4px 8px;
    }
    .bloc-texte-bas {
        padding: 0 8px 8px 8px;
    }
    .bloc-texte-haut {
        padding: 8px 0px 0;
    }
    .colonne-tarifs:nth-child(1){
        margin-bottom: 8px;
    }
    .colonne-tarifs:last-child{
        margin-top: 8px;
    }
    .item-fin-colonne{
        margin-bottom: 4px;
    }
    .texte-conditions{
        margin-bottom: 8px;
    }
}
.titre-item {
    font-size: 1.25em;
}

.bg-success-light {
    background: #E7F9F0;
}
.bg-primary-100 {
    background: #F1F6F9;
}
.bg-primary-200 {
    background: #DFEBF1;
}
.bg-accent-200 {
    background: #FDE7B9;
}
.text-success-dark {
    color: #145233;
}
.text-primary-700 {
    color: #4C799E;
}
.text-accent-800 {
    color: #956504;
}
.text-success-700 {
    color: #279B61;
}
.border-radius-sp-1{
    border-radius: 8px;
}
.item-debut-colonne {
    border-radius: 8px 8px 0 0;
}

.item-fin-colonne {
    border-radius: 0 0 8px 8px ;
}

.legende{
    padding: 16px 0 8px 0;
}

/****** Bandeau cookies ******/
#cookiesck{
  color: #2e2e2e;
  border-top: 2px solid #30526f;
}

#cookiesck_options{
  background: #fff url(/images/pictos/image_cookies.svg) center center no-repeat;
  background-size: 80% auto;
  width: 50px;
  height: 50px;
  border: 2px solid #9FC0D6;
}


#cookiesck_accept{
  background: #BD8005;
  border: 2px solid #BD8005;
  color: #FFF;
  border-radius: 8px;
}

#cookiesck_accept:hover{
  background: #956504;
  border: 2px solid #956504;
  color: #FFF;
  border-radius: 8px;
}

#cookiesck_decline, #cookiesck_settings{
  border: 2px solid #4C799E;
  background: #F1F6F9;
  color: #3A6388;
  border-radius: 8px;
}

#cookiesck_decline:hover, #cookiesck_settings:hover{
  border: 2px solid #3A6388 !important;
  background: #DFEBF1 !important;
  color: #3A6388 !important;
  border-radius: 8px;
}