/* base.css --- 2025-02-21 07:55:15 */
body,
html {
    height: 100%;
    padding: 0;
    margin: 0;
    background: #fff;
    font-size: 100%;
}

body {
    font-weight: normal;
    color: #111;
    font-family: lato, sans-serif;
    /* overflow-x: hidden; */
}

img {
    max-width: 100%;
    height: auto !important;
}

.form-control:focus,
button:focus {
    border-color: inherit !important;
}

button,
.btn,
.form-control {
    outline: none !important;
    box-shadow: none !important;
}

.relative {
    position: relative;
}

.pointer {
    cursor: pointer
}

a {
    cursor: pointer;
    color: black
}

a:hover {
    color: black;
}

video,
iframe {
    max-width: 100%;
}

.display-table {
    display: table
}

.display-table-cell {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
}

.inline-block {
    display: inline-block;
}

.height-100 {
    height: 100%;
}

.w-33 {
    width: 33%;

}



.w-66 {
    width: 66%;

}


.clearfix {
    clear: both;
    width: 100%;
    height: 1px;
}

.flex-box {
    display: flex;
    flex-wrap: wrap
}

.bold {
    font-weight: bold;
}

.margin-bottom-0 {
    margin-bottom: 0 !important
}

.padding-bottom-0 {
    padding-bottom: 0 !important;
}


#over-all {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1001;
    height: 100vh;
    width: 100vw;
    background-color: rgba(1, 1, 1, 0.4);
}

body.waiting #over-all {
    display: block;
    overflow-y: hidden;
    cursor: wait;
}


@media (max-width: 1400px) {
    .container {
        width: 96%;
    }
}

.flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.cover {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.container {
    padding-right: 0px;
    padding-left: 0px;
    max-width: 1200px;
    /* width: calc(100% - 120px); */
}

.big {
    font-size: 120%;
    font-weight: 700;
}

/* color.css --- 1970-01-01 01:00:00 */


/* article-hp-know-how.css --- 2025-02-20 16:57:21 */
.hp-know-how-group {
  padding: 0 0 90px 0;
  background-color: #fff;
  margin-bottom: 0px;
  min-height: 275px;
}

.hp-know-how-group .articles-group-inner {
  max-width: 1200px;
  width: 96%;
  margin: 0 auto;
  min-height: 100px;
  height: 0;
  overflow-y: hidden;
  transition: height 700ms;
  position: relative;
  background: #fff;
}

.hp-know-how-group article {
  top: -500px;
  transition: top 700ms;
  position: absolute;
}

.hp-know-how-group .article-inner {
  top: 0;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 25px 0 25px;
}

.hp-know-how-group .attachment {
  padding: 0 25px;
  aspect-ratio: calc(600 / 450);
  width: 300px;
}

.hp-know-how-group .attachment img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}

.hp-know-how-group .wordings {
  flex: 1;
  color: #7e8082;
  font-size: 1rem;
  line-height: 1.5;

}

.hp-know-how-group .wordings h2 {
  color: #4b4e53;
  font-size: 1.3rem;
  margin-bottom: 1rem;

}


.hp-know-how-group .more {
  padding: 0 55px 0 55px;

}

.hp-know-how-group .more a {
  text-decoration: none;
  font-size: 0.9rem;
  color: white;
  background-color: #4b4e53;
  display: inline-block;
  padding: 5px 15px;
  line-height: 1;
  border-radius: 7px;
}

.hp-know-how-group .more a span {
  display: inline-block;
  margin: 0 0 0 5px;
}

.hp-know-how-group .more img {
  position: relative;
  transition: all 300ms;
  top: -2px;
  left: 0;
  height: 20px !important;
}

.hp-know-how-group .more a:hover img {
  left: 5px;
}


.hp-know-how-group article.selected {
  top: 0;
}

/* section-hp-row-1.css --- 2025-09-06 08:55:29 */
#hp-row-1 {
  margin-left: 0px;

  margin-right: 0px;
  overflow: hidden;
  position: relative;
}


#hp-row-1 .filter {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--red);
  z-index: 2;
  mix-blend-mode: soft-light;


}

#hp-row-1 .mask {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 3;

}


#hp-row-1 a {
  color: #B47203 !important;
}


#hp-row-1 .slider {
  position: relative;
  width: 100%;

  height: 60vh;
  margin: 0 auto;
  padding-top: 0%;
  transition: height 1000ms;
  filter: grayscale(0.1);
}

#hp-row-1 .swiper-slide {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}



#hp-row-1 .above {
  position: absolute;
  left: 50%;
  max-width: 96%;
  width: 1200px;
  top: 0%;
  height: 100%;
  z-index: 100;
  transform: translateX(-50%);
  background-color: rgba(0, 0, 0, 0.0);

  padding: 25px 0;
  display: flex;
  align-items: center;
  justify-content: center;

}




#hp-row-1 h1 {
  padding: 0;
  margin: 0;
  text-transform: uppercase;
  font-size: 3rem;
  text-shadow: 1px 1px 2px black, -1px -1px 2px black;
  color: white;
  /* color: var(--red); */


}

#hp-row-1 h1 span {
  display: block;
  padding: 10px 10px;
}

#hp-row-10 h1 span:after {
  content: '•';
  padding: 10px 10px;
}

#hp-row-1 h1 span:last-child:after {

  display: none;
}


@media screen and (max-width: 991px) {}

@media screen and (max-width: 767px) {
  /*
  #hp-row-1 {
    padding-top: 100px;
  }

  #hp-row-1 .slider {
    padding-top: 100%;
    height: 0;
  }

  #hp-row-1 .over {
    padding: 7px 10px 20px 10px;
    width: 100%;
    max-width: 100%;
  }

  #hp-row-1 h2 {
    line-height: 1;
    font-size: 1.1rem;
    margin-bottom: 7px;
  }

  #hp-row-1 .over-inner div p {
    font-size: 0.9rem;
    line-height: 1.1;
    margin-bottom: 5px !important;
  }

  #hp-row-1 h2 {}
  */
}

/* info-column.css --- 2025-02-07 16:12:48 */
.info-columns-group {
    margin: 0 auto 50px;
}

.info-columns-group .group-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 1200px;
    width: 96%;
    margin: 0 auto
}

.info-columns-group article {
    flex: 1;
}

.info-columns-group article:nth-child(even) {
    padding-left: 25px;
}

.info-columns-group article:nth-child(odd) {
    padding-right: 25px;
}

.info-columns-group article .col-6 {
    width: 50%;
    flex: 0;
}

.info-columns-group article .col-4 {
    width: 33.333333%;
    flex: 0;
}

.info-columns-group article .col-3 {
    width: 25%;
    flex: 0;
}

.info-columns-group .col-auto {
    flex: 0;
}

.info-columns-group {}

article.columns-title {
    margin-bottom: 0 !important;
}

article.columns-title h2 {
    text-align: center !important;
}

article.columns-title h2::after {
    margin: 7px auto !important;
}

@media screen and (max-width: 767px) {
    .info-columns-group .group-inner {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        justify-content: stretch;
    }

    .info-columns-group article:nth-child(odd),
    .info-columns-group article:nth-child(even) {
        padding: 0px 15px
    }
}

/* menu.css --- 2025-02-21 07:03:12 */
#menu {}

#menu li.level0>a,
#menu li.level1>a,
#menu li.level2>a {
  font-weight: 300;
  font-family: var(--titles-font);
  font-style: normal;
  text-decoration: none;
}

/* footer-menu.css --- 2025-02-21 07:51:02 */
#footer .menu {}

#footer .menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}



#footer .menu>ul.level0 {
  border-left: 1px white solid;
}

#footer .menu>ul ul {
  padding-top: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 500ms;
}

#footer .menu li {

  max-width: 200px;
}


#footer .menu li.hidden-desktop {

  display: none;
}

#footer .menu li.level0 {
  padding-left: 0px;
  margin-left: 0px;
  max-width: 200px;
}


#footer .menu li.hiiden-footer {
  display: none;
}

#footer .menu li a {
  display: inline-block;
  position: relative;
  padding-right: 25px;
  cursor: pointer;
}

/* Updated CSS for FA6 */
#footer .menu li.haschild>a:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f107";
  position: absolute;
  top: 0;
  right: 0;
}

#footer .menu li.opened span:after {
  content: "\f106";
}

#footer .menu>ul li.opened ul {
  padding-top: 5px;
  max-height: 200px;
  padding-bottom: 10px;
}

#footer .menu li {
  padding: 3px 0 3px 10px;
  margin: 0;
}

#footer .menu li.hidden-footer {
  display: none;
}

#footer .menu li a {
  text-decoration: none;
}

#footer .menu li a:hover {
  text-decoration: underline;
}

#footer .menu li:first-child {
  padding-top: 0;
}

#footer .menu li:last-child {
  padding-bottom: 0;
}

#footer .menu>ul.level0 {
  border: none !important;

}

#footer .menu li {
  /* text-align: center !important; 
  margin-left: auto !important;
  margin-right: auto !important;
  */
}

/* article-wide.css --- 2025-08-21 16:47:17 */
article.wide .container {
  max-width: 100vw;
  width: 100%;
}

article.wide.has-attachments {}

article.wide.att-position-left .attachments {
  margin-right: 80px;
}


article.wide.att-position-right .attachments {
  margin-left: 80px;
}





article.wide .article-content {
  align-items: center;
}




article.wide .article-text {
  max-width: 650px;

}

article.wide.att-position-left .article-text {
  padding-right: 35px;
}


@media screen and (max-width: 991px) {

  article.wide .article-content {
    flex-direction: column;

  }

  article.wide .attachments {
    width: 100%;
    margin: 0 !important;
  }

  article.wide .article-text {
    max-width: 90%;
    margin: 0 auto !important;
    padding: 0 0 25px 0 !important;
    text-align: left;


  }
}

/* colors.css --- 2025-03-21 12:14:16 */
:root {
    /* --light-red #f01216  */
    --light-red: --red: rgba(240, 18, 22, 1);

    /* -- red : #d31016 */
    --red: rgba(211, 16, 22, 1);
    --red-filter: brightness(0) saturate(100%) invert(20%) sepia(85%) saturate(2622%) hue-rotate(343deg) brightness(86%) contrast(116%);
    --red-9: rgba(211, 16, 22, .9);
    --red-8: rgba(211, 16, 22, .8);
    --red-7: rgba(211, 16, 22, .7);
    --red-6: rgba(211, 16, 22, .6);
    --red-5: rgba(211, 16, 22, .5);
    --red-4: rgba(211, 16, 22, .4);
    --red-3: rgba(211, 16, 22, .3);

    --red-bg: rgba(187, 18, 23, 1);


    /* --dark-red #ac1816 */
    --dark-red: rgba(172, 24, 22, 1);
    /* --white */
    --white-filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(735%) hue-rotate(287deg) brightness(104%) contrast(100%);

}

.white-filter {
    filter: var(--white-filter);
}

.text-white {
    color: #fff !important;
}


.text-red {
    color: var(--red) !important;
}

.bg-light-gray {
    background-color: #eee;
}

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

.btn-black:hover {
    color: black !important;
    background-color: var(--red);
    border-color: var(--red);
}

/* megamenus.css --- 2025-09-08 11:01:27 */
@media screen and (min-width: 992px) {
  .megamenu {}

  #menu li.megamenu {
    position: static !important;
  }

  #menu li.megamenu ul.level1 {
    display: none !important;
  }

  #menu li.level0>div {
    height: 0;
    right: 0;
    width: 1160px;
    max-width: 100vw;
    transition: all 500ms;
    overflow: hidden;
    position: absolute;
    top: 100%;
    background-color: #fafafa;
    border-top: 0px var(--red) solid;
    border-bottom: 0px var(--red) solid;
    text-align: left;
  }

  div.megamenu div.megamenu-item {
    background-color: #e0e0e0;
    transition: all 500ms;
    height: 280px;
  }

  div.megamenu div.megamenu-item:hover {
    background-color: #fafafa;
  }

  #menu li.megamenu:hover>div,
  #megamenu-moyens_ {
    height: 300px !important;
    border-width: 10px !important;
  }

  div.megamenu {
    z-index: 1002;
  }

  div.megamenu img.cover {
    height: 100% !important;
    width: 100%;
    object-fit: cover;
  }

  div.megamenu {
    font-size: 0.85rem;
    line-height: 1.2;
  }

  div.megamenu h3 {
    font-size: 1.2rem;
    font-weight: bold;
    text-transform: uppercase;
  }

  div.megamenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  div.megamenu li {
    margin: 0 0 4px;
    padding: 0 0 0 12px;
    position: relative;
    border: 0px solid red;
    /* Nécessaire pour l'effet de déplacement */
  }

  div.megamenu li::before {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    left: 0;
    top: 3px;
    transition: transform 0.3s ease;
    position: absolute;
    font-size: 0.6rem;
  }

  body.megamenu-on #over-all {
    display: block;
  }


  #megamenu-moyens {}

  #megamenu-moyens .item-moyen,
  #megamenu-moyens .item-bde {}

  #megamenu-moyens .cover-wrapper {
    height: 150px;
  }


  #leaflet-map-MainMenu {
    height: 400px;
    width: 100%;
    z-index: 9999;
  }
}

@media screen and (max-width: 991px) {

  li.megamenu>div {
    display: none !important;
  }

}

/* content.css --- 2025-02-07 16:12:48 */
#content {}

.menu-over #content {
  background-color: black;
}

.menu-over #content>div {
  opacity: 0.6;
}

/* article-historique.css --- 2025-08-21 17:10:59 */
article.historique {
  background-color: #fafafa;
}

article.historique svg {
  width: 100%;
  height: auto;
}

article.historique svg image {
  opacity: 0.0;
  transition: all 1000ms;
  transition-delay: 700ms;

}

article.historique svg text {
  opacity: 0.0;
  transition: all 1000ms;
  transition-delay: 200ms;
}

article.historique svg line {
  opacity: 0.0;
  transition: all 1000ms;
}

article.historique svg circle {
  opacity: 0.0;
  transition: all 2000ms;

}


article.historique svg path {
  opacity: 0.0;
  transition: all 2000ms;
}


article.historique svg #main-line {
  opacity: 1;
}

article.historique.in-viewport {}

article.historique.in-viewport svg line {
  opacity: 1;

}

article.historique.in-viewport svg circle {
  opacity: 1;


}


article.historique.in-viewport svg path {
  opacity: 1;

}


article.historique.in-viewport svg image {
  opacity: 1;
}

article.historique.in-viewport svg text {
  opacity: 1;
}

/* articles-habilitations.css --- 2025-02-20 15:21:05 */
article.habilitations {}

article.habilitations .d-flex {
  gap: 30px
}

article.habilitations .col {
  flex: (0, 0, calc(20% - 30px));
  background-color: #eee;
  padding: 25px 15px 15px;
  border-radius: 10px;
  border: 1px solid #aaa;
  box-shadow: 2px 2px 4px #eee;
  transition: all 500ms;
}

article.habilitations .col img {
  width: 60px !important;
  filter: var(--red-filter);
}

article.habilitations .col ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

article.habilitations .col li {
  padding: 0;
  margin: 0;
  font-size: 0.9rem;
}


article.habilitations .col h5 {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9rem;
  color: #333;
  padding: 0;
  margin: 0 auto 7px;
  max-width: 75%;

}

article.habilitations .col:hover {
  background-color: #fafafa;
}

/* article-full-width.css --- 2025-03-20 11:16:08 */
article.full-width {}

article.full-width.has-attachments {}

article.full-width.has-attachments.att-position-left {}

article.full-width.has-attachments .article-text {
  max-width: 40%;

}

article.full-width.has-attachments.att-position-right .article-text {
  /* text-align: right; */

}


article.full-width.has-attachments.att-position-left .attachments {}

article.full-width.has-attachments.att-position-right .attachments {}

/* article-hp-about-us.css --- 2025-08-21 15:04:49 */
.hp-about-us {

  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: inherit;
  background-position: center center;
  position: relative;
}

.hp-about-us:before {
  background: var(--red-5);
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: none;
}


.hp-about-us .article-inner {

  padding: 0px 0;

}

/*
.hp-about-us.att-position-right .article-inn {
  flex-direction: row-reverse;

}
*/


.hp-about-us .attachments {
  display: flex;
  margin-bottom: 0 !important;
  text-align: center;
  overflow: hidden;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
}



.hp-about-us.att-width-66pc .attachments {
  width: 66%;
  height: 100%;

}


.hp-about-us .first-att {
  height: 100%;
  /*
  -webkit-mask-image: url(https://tsi.sys8.animanet.eu/msmedias/homepage/abous-us-mask.png);
  mask-image: url(https://tsi.sys8.animanet.eu/msmedias/homepage/abous-us-mask.png);
  mask-repeat: no-repeat;
  */
  flex: 1;

}

.hp-about-us .attachments img {
  transition: all 1000ms;
  width: 100%;
  height: 100%;
  object-fit: cover;


}



.hp-about-us .attachments.right img {
  transform: translateX(110%);
}


.hp-about-us .attachments.left img {
  transform: translateX(-110%);
}


.hp-about-us.in-viewport .attachments img {
  transform: translateX(0%);

}

/*
.hp-about-us .first-att {
  margin-left: 1500px;
  transition: margin-left 1000ms;
  height: 100%;
  width: inherit;

}

.hp-about-us.in-viewport .first-att {
  margin-left: 0px;
}
*/

.hp-about-us .wordings {
  flex: 1;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  color: white;
  color: black;
  position: relative;
}






.hp-about-us .wordings>div {
  width: 400px;
  max-width: 100%;
  margin: 0 auto;
  background-color: var(--red);
  background-color: white;
  padding-left: 45px;
  padding-right: 45px;
  border-top: 10px solid var(--red);
}

.hp-about-us .wordings div:first-child {
  padding-top: 25px;
}

.hp-about-us .wordings div:last-child {
  padding-bottom: 15px;
}

.hp-about-us .article-title {
  padding-bottom: 15px;
}

.hp-about-us .article-text {
  padding-bottom: 30px;
}


.hp-about-us.att .article-text {
  padding-bottom: 30px;
}


/*
.hp-about-us .article-title h2 {
  font-size: 1.4rem;
  color: var(--red);
}
*/
.hp-about-us a {

  color: white;
  font-weight: bold;

}

@media screen and (max-width: 991px) {
  article.hp-about-us .article-content {
    flex-direction: column !important;

  }

  article.hp-about-us .article-content .attachments {
    width: 100% !important;
    margin: 0 0 30px 0 !important;

  }


  article.hp-about-us .article-content .article-text {
    max-width: 90%;
    margin: 0 auto;
  }
}

/* article-default.css --- 2025-08-21 16:52:14 */
.article-inner h2.article-title {
    font-size: 2rem;
    margin-bottom: 25px;
}

.article-default {
    /* margin-bottom: 50px; */
    padding-top: 2rem;
    padding-bottom: 2rem;
    color: #555;
    font-size: 1.1rem;
    line-height: 1.7;

}







.article-default .article-title {
    padding-bottom: 2rem;
    text-align: center;
    color: #111;
}

.article-default .article-title h2 {
    font-size: 1.5rem;
    color: var(--medium-orange);
    max-width: 1200px;
    width: 96%;
    margin: 0 auto;
}



.article-default .article-title h2>span {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;


}

.article-default .article-title h2>span:after {
    content: ' ';
    height: 3px;
    width: 0px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--red);
    transition: all 700ms;
}

.article-default.in-viewport .article-title h2>span:after {
    width: 80px;
}












.article-default .article-text {
    text-align: justify;
}

.article-default .article-text>* {
    margin-top: 0 !important;
}


.article-default .article-content {
    display: flex;
    gap: 2rem;
    flex-direction: row;
    align-items: center;
}

.article-default .article-text {
    flex: 1;
    text-align: justify;
}

.article-default.att-position-right .article-content {
    flex-direction: row-reverse;
}

.article-default .article-text strong {
    color: #505050;
}

.article-default h3 {
    font-size: 1.2rem;
    color: var(--medium-orange);
    margin: 2rem 0 1rem;
    text-transform: uppercase;
    line-height: 1;
    text-align: left;
    line-height: 1.5;
    font-weight: bold;
}

.article-default p {
    padding-bottom: 0;
    margin-bottom: 1rem;

}

.article-default ul {
    padding-bottom: 0;
    margin-bottom: 0
}

.article-default li {
    padding-bottom: 0;
    margin-bottom: 0.7rem;
    font-size: 1.1rem;
    line-height: 1.4;
}

.article-default a {
    color: var(--medium-orange);
    text-decoration: underline;
}

.article-default a:hover {
    color: var(--dark-orange);
}

article.start-middle .article-inner {
    padding-top: 15%
}

@media (max-width: 767px) {
    .article-default .article-content {
        flex-direction: column;
    }

    .article-default.att-position-right .article-content {
        flex-direction: column;
    }

    .article-inner h2.article-title {
        margin-bottom: 0px;
    }

    .article-default .article-title-wrp {
        padding-bottom: 20px;
    }

    .article-default .article-text {
        flex: unset;
        text-align: left;
        max-width: 90%;
        margin: 0 auto;
    }
}

/* contacts-bloc.css --- 2025-02-12 04:41:18 */
.contacts-bloc ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.contacts-bloc li {
  margin: 0;
  padding: 0.7rem 0 0.7rem 3rem;
  position: relative;

}

.contacts-bloc li:before {

  font-family: ElegantIcons;
  font-size: 2rem;
  position: absolute;
  top: 0;
  left: 0;

}

.contacts-bloc li.address:before {
  content: "\e01d";
}

.contacts-bloc .gg-map {
  height: 100%;
}

.contacts-bloc li.phone:before {
  content: "\e090";
  font-size: 1.7rem;
}

.contacts-bloc li.email:before {
  top: 0px;
  content: "\e010";
  font-size: 1.7rem;
}

article.contacts-bloc {}

article.contacts-bloc ul {
  background-color: rgba(127, 127, 127, 0.2);
  /*
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  */

}

article.contacts-bloc li {
  position: relative;
  background-color: var(--red);

  max-width: 30%;
  flex: 0 0 30%;
  display: flex;
  flex-direction: column;
  justify-content: center;

}

article.contacts-bloc li:last-child {
  border-bottom: none;


}

article.contacts-bloc li:before {

  left: 10px;

}

/* article-column.css --- 2025-08-21 17:20:00 */
.column-group {
  padding: 2rem 0;
}

.column-group .article-group-inner {

  width: 96% !important;
  max-width: 1160px !important;
  margin-left: auto;
  margin-right: auto;
  padding: 0 !important;
}

.column-group .article-group-content {
  display: flex;
  gap: 80px;
  align-items: start;
}

.column-group article {
  margin: 0 !important;
  padding: 0 !important;

}


@media screen and (min-width: 992px) {


  .column-group .article-group-content {

    gap: 50px;
  }

  .column-group article.w-25 {
    flex: 0 0 calc(25% - 80px) !important;
  }

  .column-group article.w-33 {
    flex: 0 0 calc(33.3333333333333% - 80px) !important;
  }

  .column-group article.w-50 {
    flex: 0 0 calc(50% - 80px) !important;
  }

  .column-group article.w-66 {
    flex: 0 0 calc(66.666666666666666% - 80px) !important;
  }

  .column-group article.w-75 {
    flex: 0 0 calc(75% - 80px) !important;
  }

}







@media screen and (max-width: 991px) {
  .column-group .article-group-content {
    gap: 40px;
  }

  .column-group article.w-25 {
    flex: 0 0 calc(25% - 40px) !important;
  }

  .column-group article.w-33 {
    flex: 0 0 calc(33.3333333333333% - 40px) !important;
  }

  .column-group article.w-50 {
    flex: 0 0 calc(50% - 40px) !important;
  }

  .column-group article.w-66 {
    flex: 0 0 calc(66.666666666666666% - 40px) !important;
  }

  .column-group article.w-75 {
    flex: 0 0 calc(75% - 40px) !important;
  }

}





.column-group article {}

@media screen and (max-width: 767px) {
  .column-group .article-group-content {
    flex-direction: column;

  }

  .column-group .article-text {
    max-width: 90%;
    margin: 0 auto;
  }

  .column-group article {
    flex: 1;
    width: 100% !important;
  }
}

/* menu-mobile.css --- 2025-08-21 14:54:42 */
@media screen and (max-width: 992px) {
  #menu .hidden-mobile {
    display: none !important;
  }

  #menu-burger {
    display: block;
    position: fixed;
    top: 5px;
    right: 1%;
    z-index: 1001;
    cursor: pointer;

  }

  #menu-burger:after,
  #menu-burger:before {
    position: absolute;
    top: 5px;
    right: 5px;
    font-family: "FontAwesome";
    font-size: 2.5rem;
    color: black;
    padding: 5px 8px;
    line-height: 1;
    transition: color 400ms;
  }

  #menu-burger:before {
    content: "\f0c9";
  }

  #menu-burger:after {
    content: "\f00d";
    opacity: 0;
  }

  body.scrolled #menu-burger:after,
  body.scrolled #menu-burger:before {
    color: black;
  }

  .menu-on #menu-burger:before {
    opacity: 0;
  }

  .menu-on #menu-burger:after {
    opacity: 1;
    right: 0px;
    color: white;
  }




  #menu a {
    display: block;
    text-transform: uppercase;
    font-size: 0.80rem;
    position: relative;
  }

  #menu ul {
    list-style: none;
    z-index: 1000
  }

  #menu ul,
  #menu li {
    padding: 0;
    margin: 0
  }

  #menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    text-align: left;
    background: #ccc;
    min-height: 100vh;
    height: 100%;
    border-right: 5px #eee solid;
    width: 0px;
    transition: all 1000ms;
    overflow: hidden;
    background-image: url('/msmedias/logo/tuyauterie-soudure-industrielle-noir.png?w=180');
    background-position: 30px 30px;
    background-repeat: no-repeat;
  }

  #menu a {
    color: #333;
  }

  #menu .close {
    position: absolute;
    top: 36px;
    right: 80px;
    font-size: 3rem;
    border: none !important;
    border-color: transparent;
    color: white !important;
    opacity: 0;
    transition: opacity 700ms;
  }

  #menu ul {
    padding: 0 15px;
    margin-bottom: 15px;
  }

  #menu>ul {
    width: 90vw;
    max-width: 400px;
    margin: 120px 0 15px 15px;
  }


  #menu li>ul {
    max-height: 0;
    overflow: hidden;
    margin: 0;
  }


  #menu>ul>li>a {
    font-size: 1rem
  }

  #menu li {
    position: relative;
  }

  #menu li.haschild>a:after {
    content: url(/img/caret.png?w=14);
    width: 14px;
    height: 14px;
    position: absolute;
    top: 0px;
    right: 10px;
    margin-right: 6px;
    display: block;
    transform-origin: center;
    transform: rotate(0deg);
    transition: all 700ms;
    filter: var(--red-filter);
  }

  #menu li a.deployed:after {
    transform: rotate(180deg) translateY(50%);
  }

  #menu li.level0 {
    border-bottom: white 1px solid;
    padding-bottom: 10px;
    margin-bottom: 10px;
    padding-right: 0px;
  }

  #menu li.opened>ul {
    max-height: 400px;
    margin-bottom: 15px;

  }


  #menu li.level1 {
    padding-top: 10px;
  }

  #menu li.mobile-only {
    background: #222;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    margin-bottom: 0;
    border: none !important;
    margin-left: -10px
  }

  #menu li.mobile-only a {
    color: white;
  }

  .menu-on #menu {
    width: 450px;
    max-width: 100vw;
    overflow-y: auto;
  }

  .menu-on body {
    max-height: 100vh;
    overflow: hidden;
  }

  .menu-on #over-all {
    display: block;

  }


}

@media (min-width: 768px) {
  .menu-on {
    overflow: hidden;
    height: 100%;
    margin-right: 17px;
  }

  .menu-on #header {
    padding-right: 17px;
  }

  #menu .close {
    right: 115px;
  }
}

@media (max-width: 767px) {
  #menu .close {
    right: 26px;
  }

  #header .row {
    margin: 0 0px !important;
  }
}

/* article-narrow.css --- 2025-02-20 09:22:17 */
article.narrow .article-content {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;

}

/* elegantIcons.css --- 2025-02-07 16:12:48 */
@font-face {
  font-family: 'ElegantIcons';
  src: url('fonts/ElegantIcons.eot');
  src: url('fonts/ElegantIcons.eot?#iefix') format('embedded-opentype'),
    url('fonts/ElegantIcons.woff') format('woff'),
    url('fonts/ElegantIcons.ttf') format('truetype'),
    url('fonts/ElegantIcons.svg#ElegantIcons') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* Use the following CSS code if you want to use data attributes for inserting your icons */
[data-icon]:before {
  font-family: 'ElegantIcons';
  content: attr(data-icon);
  speak: none;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Use the following CSS code if you want to have a class per icon */
/*
Instead of a list of all class selectors,
you can use the generic selector below, but it's slower:
[class*="your-class-prefix"] {
*/
.arrow_up,
.arrow_down,
.arrow_left,
.arrow_right,
.arrow_left-up,
.arrow_right-up,
.arrow_right-down,
.arrow_left-down,
.arrow-up-down,
.arrow_up-down_alt,
.arrow_left-right_alt,
.arrow_left-right,
.arrow_expand_alt2,
.arrow_expand_alt,
.arrow_condense,
.arrow_expand,
.arrow_move,
.arrow_carrot-up,
.arrow_carrot-down,
.arrow_carrot-left,
.arrow_carrot-right,
.arrow_carrot-2up,
.arrow_carrot-2down,
.arrow_carrot-2left,
.arrow_carrot-2right,
.arrow_carrot-up_alt2,
.arrow_carrot-down_alt2,
.arrow_carrot-left_alt2,
.arrow_carrot-right_alt2,
.arrow_carrot-2up_alt2,
.arrow_carrot-2down_alt2,
.arrow_carrot-2left_alt2,
.arrow_carrot-2right_alt2,
.arrow_triangle-up,
.arrow_triangle-down,
.arrow_triangle-left,
.arrow_triangle-right,
.arrow_triangle-up_alt2,
.arrow_triangle-down_alt2,
.arrow_triangle-left_alt2,
.arrow_triangle-right_alt2,
.arrow_back,
.icon_minus-06,
.icon_plus,
.icon_close,
.icon_check,
.icon_minus_alt2,
.icon_plus_alt2,
.icon_close_alt2,
.icon_check_alt2,
.icon_zoom-out_alt,
.icon_zoom-in_alt,
.icon_search,
.icon_box-empty,
.icon_box-selected,
.icon_minus-box,
.icon_plus-box,
.icon_box-checked,
.icon_circle-empty,
.icon_circle-slelected,
.icon_stop_alt2,
.icon_stop,
.icon_pause_alt2,
.icon_pause,
.icon_menu,
.icon_menu-square_alt2,
.icon_menu-circle_alt2,
.icon_ul,
.icon_ol,
.icon_adjust-horiz,
.icon_adjust-vert,
.icon_document_alt,
.icon_documents_alt,
.icon_pencil,
.icon_pencil-edit_alt,
.icon_pencil-edit,
.icon_folder-alt,
.icon_folder-open_alt,
.icon_folder-add_alt,
.icon_info_alt,
.icon_error-oct_alt,
.icon_error-circle_alt,
.icon_error-triangle_alt,
.icon_question_alt2,
.icon_question,
.icon_comment_alt,
.icon_chat_alt,
.icon_vol-mute_alt,
.icon_volume-low_alt,
.icon_volume-high_alt,
.icon_quotations,
.icon_quotations_alt2,
.icon_clock_alt,
.icon_lock_alt,
.icon_lock-open_alt,
.icon_key_alt,
.icon_cloud_alt,
.icon_cloud-upload_alt,
.icon_cloud-download_alt,
.icon_image,
.icon_images,
.icon_lightbulb_alt,
.icon_gift_alt,
.icon_house_alt,
.icon_genius,
.icon_mobile,
.icon_tablet,
.icon_laptop,
.icon_desktop,
.icon_camera_alt,
.icon_mail_alt,
.icon_cone_alt,
.icon_ribbon_alt,
.icon_bag_alt,
.icon_creditcard,
.icon_cart_alt,
.icon_paperclip,
.icon_tag_alt,
.icon_tags_alt,
.icon_trash_alt,
.icon_cursor_alt,
.icon_mic_alt,
.icon_compass_alt,
.icon_pin_alt,
.icon_pushpin_alt,
.icon_map_alt,
.icon_drawer_alt,
.icon_toolbox_alt,
.icon_book_alt,
.icon_calendar,
.icon_film,
.icon_table,
.icon_contacts_alt,
.icon_headphones,
.icon_lifesaver,
.icon_piechart,
.icon_refresh,
.icon_link_alt,
.icon_link,
.icon_loading,
.icon_blocked,
.icon_archive_alt,
.icon_heart_alt,
.icon_star_alt,
.icon_star-half_alt,
.icon_star,
.icon_star-half,
.icon_tools,
.icon_tool,
.icon_cog,
.icon_cogs,
.arrow_up_alt,
.arrow_down_alt,
.arrow_left_alt,
.arrow_right_alt,
.arrow_left-up_alt,
.arrow_right-up_alt,
.arrow_right-down_alt,
.arrow_left-down_alt,
.arrow_condense_alt,
.arrow_expand_alt3,
.arrow_carrot_up_alt,
.arrow_carrot-down_alt,
.arrow_carrot-left_alt,
.arrow_carrot-right_alt,
.arrow_carrot-2up_alt,
.arrow_carrot-2dwnn_alt,
.arrow_carrot-2left_alt,
.arrow_carrot-2right_alt,
.arrow_triangle-up_alt,
.arrow_triangle-down_alt,
.arrow_triangle-left_alt,
.arrow_triangle-right_alt,
.icon_minus_alt,
.icon_plus_alt,
.icon_close_alt,
.icon_check_alt,
.icon_zoom-out,
.icon_zoom-in,
.icon_stop_alt,
.icon_menu-square_alt,
.icon_menu-circle_alt,
.icon_document,
.icon_documents,
.icon_pencil_alt,
.icon_folder,
.icon_folder-open,
.icon_folder-add,
.icon_folder_upload,
.icon_folder_download,
.icon_info,
.icon_error-circle,
.icon_error-oct,
.icon_error-triangle,
.icon_question_alt,
.icon_comment,
.icon_chat,
.icon_vol-mute,
.icon_volume-low,
.icon_volume-high,
.icon_quotations_alt,
.icon_clock,
.icon_lock,
.icon_lock-open,
.icon_key,
.icon_cloud,
.icon_cloud-upload,
.icon_cloud-download,
.icon_lightbulb,
.icon_gift,
.icon_house,
.icon_camera,
.icon_mail,
.icon_cone,
.icon_ribbon,
.icon_bag,
.icon_cart,
.icon_tag,
.icon_tags,
.icon_trash,
.icon_cursor,
.icon_mic,
.icon_compass,
.icon_pin,
.icon_pushpin,
.icon_map,
.icon_drawer,
.icon_toolbox,
.icon_book,
.icon_contacts,
.icon_archive,
.icon_heart,
.icon_profile,
.icon_group,
.icon_grid-2x2,
.icon_grid-3x3,
.icon_music,
.icon_pause_alt,
.icon_phone,
.icon_upload,
.icon_download,
.social_facebook,
.social_twitter,
.social_pinterest,
.social_googleplus,
.social_tumblr,
.social_tumbleupon,
.social_wordpress,
.social_instagram,
.social_dribbble,
.social_vimeo,
.social_linkedin,
.social_rss,
.social_deviantart,
.social_share,
.social_myspace,
.social_skype,
.social_youtube,
.social_picassa,
.social_googledrive,
.social_flickr,
.social_blogger,
.social_spotify,
.social_delicious,
.social_facebook_circle,
.social_twitter_circle,
.social_pinterest_circle,
.social_googleplus_circle,
.social_tumblr_circle,
.social_stumbleupon_circle,
.social_wordpress_circle,
.social_instagram_circle,
.social_dribbble_circle,
.social_vimeo_circle,
.social_linkedin_circle,
.social_rss_circle,
.social_deviantart_circle,
.social_share_circle,
.social_myspace_circle,
.social_skype_circle,
.social_youtube_circle,
.social_picassa_circle,
.social_googledrive_alt2,
.social_flickr_circle,
.social_blogger_circle,
.social_spotify_circle,
.social_delicious_circle,
.social_facebook_square,
.social_twitter_square,
.social_pinterest_square,
.social_googleplus_square,
.social_tumblr_square,
.social_stumbleupon_square,
.social_wordpress_square,
.social_instagram_square,
.social_dribbble_square,
.social_vimeo_square,
.social_linkedin_square,
.social_rss_square,
.social_deviantart_square,
.social_share_square,
.social_myspace_square,
.social_skype_square,
.social_youtube_square,
.social_picassa_square,
.social_googledrive_square,
.social_flickr_square,
.social_blogger_square,
.social_spotify_square,
.social_delicious_square,
.icon_printer,
.icon_calulator,
.icon_building,
.icon_floppy,
.icon_drive,
.icon_search-2,
.icon_id,
.icon_id-2,
.icon_puzzle,
.icon_like,
.icon_dislike,
.icon_mug,
.icon_currency,
.icon_wallet,
.icon_pens,
.icon_easel,
.icon_flowchart,
.icon_datareport,
.icon_briefcase,
.icon_shield,
.icon_percent,
.icon_globe,
.icon_globe-2,
.icon_target,
.icon_hourglass,
.icon_balance,
.icon_rook,
.icon_printer-alt,
.icon_calculator_alt,
.icon_building_alt,
.icon_floppy_alt,
.icon_drive_alt,
.icon_search_alt,
.icon_id_alt,
.icon_id-2_alt,
.icon_puzzle_alt,
.icon_like_alt,
.icon_dislike_alt,
.icon_mug_alt,
.icon_currency_alt,
.icon_wallet_alt,
.icon_pens_alt,
.icon_easel_alt,
.icon_flowchart_alt,
.icon_datareport_alt,
.icon_briefcase_alt,
.icon_shield_alt,
.icon_percent_alt,
.icon_globe_alt,
.icon_clipboard {
  font-family: 'ElegantIcons';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}

.arrow_up:before {
  content: "\21";
}

.arrow_down:before {
  content: "\22";
}

.arrow_left:before {
  content: "\23";
}

.arrow_right:before {
  content: "\24";
}

.arrow_left-up:before {
  content: "\25";
}

.arrow_right-up:before {
  content: "\26";
}

.arrow_right-down:before {
  content: "\27";
}

.arrow_left-down:before {
  content: "\28";
}

.arrow-up-down:before {
  content: "\29";
}

.arrow_up-down_alt:before {
  content: "\2a";
}

.arrow_left-right_alt:before {
  content: "\2b";
}

.arrow_left-right:before {
  content: "\2c";
}

.arrow_expand_alt2:before {
  content: "\2d";
}

.arrow_expand_alt:before {
  content: "\2e";
}

.arrow_condense:before {
  content: "\2f";
}

.arrow_expand:before {
  content: "\30";
}

.arrow_move:before {
  content: "\31";
}

.arrow_carrot-up:before {
  content: "\32";
}

.arrow_carrot-down:before {
  content: "\33";
}

.arrow_carrot-left:before {
  content: "\34";
}

.arrow_carrot-right:before {
  content: "\35";
}

.arrow_carrot-2up:before {
  content: "\36";
}

.arrow_carrot-2down:before {
  content: "\37";
}

.arrow_carrot-2left:before {
  content: "\38";
}

.arrow_carrot-2right:before {
  content: "\39";
}

.arrow_carrot-up_alt2:before {
  content: "\3a";
}

.arrow_carrot-down_alt2:before {
  content: "\3b";
}

.arrow_carrot-left_alt2:before {
  content: "\3c";
}

.arrow_carrot-right_alt2:before {
  content: "\3d";
}

.arrow_carrot-2up_alt2:before {
  content: "\3e";
}

.arrow_carrot-2down_alt2:before {
  content: "\3f";
}

.arrow_carrot-2left_alt2:before {
  content: "\40";
}

.arrow_carrot-2right_alt2:before {
  content: "\41";
}

.arrow_triangle-up:before {
  content: "\42";
}

.arrow_triangle-down:before {
  content: "\43";
}

.arrow_triangle-left:before {
  content: "\44";
}

.arrow_triangle-right:before {
  content: "\45";
}

.arrow_triangle-up_alt2:before {
  content: "\46";
}

.arrow_triangle-down_alt2:before {
  content: "\47";
}

.arrow_triangle-left_alt2:before {
  content: "\48";
}

.arrow_triangle-right_alt2:before {
  content: "\49";
}

.arrow_back:before {
  content: "\4a";
}

.icon_minus-06:before {
  content: "\4b";
}

.icon_plus:before {
  content: "\4c";
}

.icon_close:before {
  content: "\4d";
}

.icon_check:before {
  content: "\4e";
}

.icon_minus_alt2:before {
  content: "\4f";
}

.icon_plus_alt2:before {
  content: "\50";
}

.icon_close_alt2:before {
  content: "\51";
}

.icon_check_alt2:before {
  content: "\52";
}

.icon_zoom-out_alt:before {
  content: "\53";
}

.icon_zoom-in_alt:before {
  content: "\54";
}

.icon_search:before {
  content: "\55";
}

.icon_box-empty:before {
  content: "\56";
}

.icon_box-selected:before {
  content: "\57";
}

.icon_minus-box:before {
  content: "\58";
}

.icon_plus-box:before {
  content: "\59";
}

.icon_box-checked:before {
  content: "\5a";
}

.icon_circle-empty:before {
  content: "\5b";
}

.icon_circle-slelected:before {
  content: "\5c";
}

.icon_stop_alt2:before {
  content: "\5d";
}

.icon_stop:before {
  content: "\5e";
}

.icon_pause_alt2:before {
  content: "\5f";
}

.icon_pause:before {
  content: "\60";
}

.icon_menu:before {
  content: "\61";
}

.icon_menu-square_alt2:before {
  content: "\62";
}

.icon_menu-circle_alt2:before {
  content: "\63";
}

.icon_ul:before {
  content: "\64";
}

.icon_ol:before {
  content: "\65";
}

.icon_adjust-horiz:before {
  content: "\66";
}

.icon_adjust-vert:before {
  content: "\67";
}

.icon_document_alt:before {
  content: "\68";
}

.icon_documents_alt:before {
  content: "\69";
}

.icon_pencil:before {
  content: "\6a";
}

.icon_pencil-edit_alt:before {
  content: "\6b";
}

.icon_pencil-edit:before {
  content: "\6c";
}

.icon_folder-alt:before {
  content: "\6d";
}

.icon_folder-open_alt:before {
  content: "\6e";
}

.icon_folder-add_alt:before {
  content: "\6f";
}

.icon_info_alt:before {
  content: "\70";
}

.icon_error-oct_alt:before {
  content: "\71";
}

.icon_error-circle_alt:before {
  content: "\72";
}

.icon_error-triangle_alt:before {
  content: "\73";
}

.icon_question_alt2:before {
  content: "\74";
}

.icon_question:before {
  content: "\75";
}

.icon_comment_alt:before {
  content: "\76";
}

.icon_chat_alt:before {
  content: "\77";
}

.icon_vol-mute_alt:before {
  content: "\78";
}

.icon_volume-low_alt:before {
  content: "\79";
}

.icon_volume-high_alt:before {
  content: "\7a";
}

.icon_quotations:before {
  content: "\7b";
}

.icon_quotations_alt2:before {
  content: "\7c";
}

.icon_clock_alt:before {
  content: "\7d";
}

.icon_lock_alt:before {
  content: "\7e";
}

.icon_lock-open_alt:before {
  content: "\e000";
}

.icon_key_alt:before {
  content: "\e001";
}

.icon_cloud_alt:before {
  content: "\e002";
}

.icon_cloud-upload_alt:before {
  content: "\e003";
}

.icon_cloud-download_alt:before {
  content: "\e004";
}

.icon_image:before {
  content: "\e005";
}

.icon_images:before {
  content: "\e006";
}

.icon_lightbulb_alt:before {
  content: "\e007";
}

.icon_gift_alt:before {
  content: "\e008";
}

.icon_house_alt:before {
  content: "\e009";
}

.icon_genius:before {
  content: "\e00a";
}

.icon_mobile:before {
  content: "\e00b";
}

.icon_tablet:before {
  content: "\e00c";
}

.icon_laptop:before {
  content: "\e00d";
}

.icon_desktop:before {
  content: "\e00e";
}

.icon_camera_alt:before {
  content: "\e00f";
}

.icon_mail_alt:before {
  content: "\e010";
}

.icon_cone_alt:before {
  content: "\e011";
}

.icon_ribbon_alt:before {
  content: "\e012";
}

.icon_bag_alt:before {
  content: "\e013";
}

.icon_creditcard:before {
  content: "\e014";
}

.icon_cart_alt:before {
  content: "\e015";
}

.icon_paperclip:before {
  content: "\e016";
}

.icon_tag_alt:before {
  content: "\e017";
}

.icon_tags_alt:before {
  content: "\e018";
}

.icon_trash_alt:before {
  content: "\e019";
}

.icon_cursor_alt:before {
  content: "\e01a";
}

.icon_mic_alt:before {
  content: "\e01b";
}

.icon_compass_alt:before {
  content: "\e01c";
}

.icon_pin_alt:before {
  content: "\e01d";
}

.icon_pushpin_alt:before {
  content: "\e01e";
}

.icon_map_alt:before {
  content: "\e01f";
}

.icon_drawer_alt:before {
  content: "\e020";
}

.icon_toolbox_alt:before {
  content: "\e021";
}

.icon_book_alt:before {
  content: "\e022";
}

.icon_calendar:before {
  content: "\e023";
}

.icon_film:before {
  content: "\e024";
}

.icon_table:before {
  content: "\e025";
}

.icon_contacts_alt:before {
  content: "\e026";
}

.icon_headphones:before {
  content: "\e027";
}

.icon_lifesaver:before {
  content: "\e028";
}

.icon_piechart:before {
  content: "\e029";
}

.icon_refresh:before {
  content: "\e02a";
}

.icon_link_alt:before {
  content: "\e02b";
}

.icon_link:before {
  content: "\e02c";
}

.icon_loading:before {
  content: "\e02d";
}

.icon_blocked:before {
  content: "\e02e";
}

.icon_archive_alt:before {
  content: "\e02f";
}

.icon_heart_alt:before {
  content: "\e030";
}

.icon_star_alt:before {
  content: "\e031";
}

.icon_star-half_alt:before {
  content: "\e032";
}

.icon_star:before {
  content: "\e033";
}

.icon_star-half:before {
  content: "\e034";
}

.icon_tools:before {
  content: "\e035";
}

.icon_tool:before {
  content: "\e036";
}

.icon_cog:before {
  content: "\e037";
}

.icon_cogs:before {
  content: "\e038";
}

.arrow_up_alt:before {
  content: "\e039";
}

.arrow_down_alt:before {
  content: "\e03a";
}

.arrow_left_alt:before {
  content: "\e03b";
}

.arrow_right_alt:before {
  content: "\e03c";
}

.arrow_left-up_alt:before {
  content: "\e03d";
}

.arrow_right-up_alt:before {
  content: "\e03e";
}

.arrow_right-down_alt:before {
  content: "\e03f";
}

.arrow_left-down_alt:before {
  content: "\e040";
}

.arrow_condense_alt:before {
  content: "\e041";
}

.arrow_expand_alt3:before {
  content: "\e042";
}

.arrow_carrot_up_alt:before {
  content: "\e043";
}

.arrow_carrot-down_alt:before {
  content: "\e044";
}

.arrow_carrot-left_alt:before {
  content: "\e045";
}

.arrow_carrot-right_alt:before {
  content: "\e046";
}

.arrow_carrot-2up_alt:before {
  content: "\e047";
}

.arrow_carrot-2dwnn_alt:before {
  content: "\e048";
}

.arrow_carrot-2left_alt:before {
  content: "\e049";
}

.arrow_carrot-2right_alt:before {
  content: "\e04a";
}

.arrow_triangle-up_alt:before {
  content: "\e04b";
}

.arrow_triangle-down_alt:before {
  content: "\e04c";
}

.arrow_triangle-left_alt:before {
  content: "\e04d";
}

.arrow_triangle-right_alt:before {
  content: "\e04e";
}

.icon_minus_alt:before {
  content: "\e04f";
}

.icon_plus_alt:before {
  content: "\e050";
}

.icon_close_alt:before {
  content: "\e051";
}

.icon_check_alt:before {
  content: "\e052";
}

.icon_zoom-out:before {
  content: "\e053";
}

.icon_zoom-in:before {
  content: "\e054";
}

.icon_stop_alt:before {
  content: "\e055";
}

.icon_menu-square_alt:before {
  content: "\e056";
}

.icon_menu-circle_alt:before {
  content: "\e057";
}

.icon_document:before {
  content: "\e058";
}

.icon_documents:before {
  content: "\e059";
}

.icon_pencil_alt:before {
  content: "\e05a";
}

.icon_folder:before {
  content: "\e05b";
}

.icon_folder-open:before {
  content: "\e05c";
}

.icon_folder-add:before {
  content: "\e05d";
}

.icon_folder_upload:before {
  content: "\e05e";
}

.icon_folder_download:before {
  content: "\e05f";
}

.icon_info:before {
  content: "\e060";
}

.icon_error-circle:before {
  content: "\e061";
}

.icon_error-oct:before {
  content: "\e062";
}

.icon_error-triangle:before {
  content: "\e063";
}

.icon_question_alt:before {
  content: "\e064";
}

.icon_comment:before {
  content: "\e065";
}

.icon_chat:before {
  content: "\e066";
}

.icon_vol-mute:before {
  content: "\e067";
}

.icon_volume-low:before {
  content: "\e068";
}

.icon_volume-high:before {
  content: "\e069";
}

.icon_quotations_alt:before {
  content: "\e06a";
}

.icon_clock:before {
  content: "\e06b";
}

.icon_lock:before {
  content: "\e06c";
}

.icon_lock-open:before {
  content: "\e06d";
}

.icon_key:before {
  content: "\e06e";
}

.icon_cloud:before {
  content: "\e06f";
}

.icon_cloud-upload:before {
  content: "\e070";
}

.icon_cloud-download:before {
  content: "\e071";
}

.icon_lightbulb:before {
  content: "\e072";
}

.icon_gift:before {
  content: "\e073";
}

.icon_house:before {
  content: "\e074";
}

.icon_camera:before {
  content: "\e075";
}

.icon_mail:before {
  content: "\e076";
}

.icon_cone:before {
  content: "\e077";
}

.icon_ribbon:before {
  content: "\e078";
}

.icon_bag:before {
  content: "\e079";
}

.icon_cart:before {
  content: "\e07a";
}

.icon_tag:before {
  content: "\e07b";
}

.icon_tags:before {
  content: "\e07c";
}

.icon_trash:before {
  content: "\e07d";
}

.icon_cursor:before {
  content: "\e07e";
}

.icon_mic:before {
  content: "\e07f";
}

.icon_compass:before {
  content: "\e080";
}

.icon_pin:before {
  content: "\e081";
}

.icon_pushpin:before {
  content: "\e082";
}

.icon_map:before {
  content: "\e083";
}

.icon_drawer:before {
  content: "\e084";
}

.icon_toolbox:before {
  content: "\e085";
}

.icon_book:before {
  content: "\e086";
}

.icon_contacts:before {
  content: "\e087";
}

.icon_archive:before {
  content: "\e088";
}

.icon_heart:before {
  content: "\e089";
}

.icon_profile:before {
  content: "\e08a";
}

.icon_group:before {
  content: "\e08b";
}

.icon_grid-2x2:before {
  content: "\e08c";
}

.icon_grid-3x3:before {
  content: "\e08d";
}

.icon_music:before {
  content: "\e08e";
}

.icon_pause_alt:before {
  content: "\e08f";
}

.icon_phone:before {
  content: "\e090";
}

.icon_upload:before {
  content: "\e091";
}

.icon_download:before {
  content: "\e092";
}

.social_facebook:before {
  content: "\e093";
}

.social_twitter:before {
  content: "\e094";
}

.social_pinterest:before {
  content: "\e095";
}

.social_googleplus:before {
  content: "\e096";
}

.social_tumblr:before {
  content: "\e097";
}

.social_tumbleupon:before {
  content: "\e098";
}

.social_wordpress:before {
  content: "\e099";
}

.social_instagram:before {
  content: "\e09a";
}

.social_dribbble:before {
  content: "\e09b";
}

.social_vimeo:before {
  content: "\e09c";
}

.social_linkedin:before {
  content: "\e09d";
}

.social_rss:before {
  content: "\e09e";
}

.social_deviantart:before {
  content: "\e09f";
}

.social_share:before {
  content: "\e0a0";
}

.social_myspace:before {
  content: "\e0a1";
}

.social_skype:before {
  content: "\e0a2";
}

.social_youtube:before {
  content: "\e0a3";
}

.social_picassa:before {
  content: "\e0a4";
}

.social_googledrive:before {
  content: "\e0a5";
}

.social_flickr:before {
  content: "\e0a6";
}

.social_blogger:before {
  content: "\e0a7";
}

.social_spotify:before {
  content: "\e0a8";
}

.social_delicious:before {
  content: "\e0a9";
}

.social_facebook_circle:before {
  content: "\e0aa";
}

.social_twitter_circle:before {
  content: "\e0ab";
}

.social_pinterest_circle:before {
  content: "\e0ac";
}

.social_googleplus_circle:before {
  content: "\e0ad";
}

.social_tumblr_circle:before {
  content: "\e0ae";
}

.social_stumbleupon_circle:before {
  content: "\e0af";
}

.social_wordpress_circle:before {
  content: "\e0b0";
}

.social_instagram_circle:before {
  content: "\e0b1";
}

.social_dribbble_circle:before {
  content: "\e0b2";
}

.social_vimeo_circle:before {
  content: "\e0b3";
}

.social_linkedin_circle:before {
  content: "\e0b4";
}

.social_rss_circle:before {
  content: "\e0b5";
}

.social_deviantart_circle:before {
  content: "\e0b6";
}

.social_share_circle:before {
  content: "\e0b7";
}

.social_myspace_circle:before {
  content: "\e0b8";
}

.social_skype_circle:before {
  content: "\e0b9";
}

.social_youtube_circle:before {
  content: "\e0ba";
}

.social_picassa_circle:before {
  content: "\e0bb";
}

.social_googledrive_alt2:before {
  content: "\e0bc";
}

.social_flickr_circle:before {
  content: "\e0bd";
}

.social_blogger_circle:before {
  content: "\e0be";
}

.social_spotify_circle:before {
  content: "\e0bf";
}

.social_delicious_circle:before {
  content: "\e0c0";
}

.social_facebook_square:before {
  content: "\e0c1";
}

.social_twitter_square:before {
  content: "\e0c2";
}

.social_pinterest_square:before {
  content: "\e0c3";
}

.social_googleplus_square:before {
  content: "\e0c4";
}

.social_tumblr_square:before {
  content: "\e0c5";
}

.social_stumbleupon_square:before {
  content: "\e0c6";
}

.social_wordpress_square:before {
  content: "\e0c7";
}

.social_instagram_square:before {
  content: "\e0c8";
}

.social_dribbble_square:before {
  content: "\e0c9";
}

.social_vimeo_square:before {
  content: "\e0ca";
}

.social_linkedin_square:before {
  content: "\e0cb";
}

.social_rss_square:before {
  content: "\e0cc";
}

.social_deviantart_square:before {
  content: "\e0cd";
}

.social_share_square:before {
  content: "\e0ce";
}

.social_myspace_square:before {
  content: "\e0cf";
}

.social_skype_square:before {
  content: "\e0d0";
}

.social_youtube_square:before {
  content: "\e0d1";
}

.social_picassa_square:before {
  content: "\e0d2";
}

.social_googledrive_square:before {
  content: "\e0d3";
}

.social_flickr_square:before {
  content: "\e0d4";
}

.social_blogger_square:before {
  content: "\e0d5";
}

.social_spotify_square:before {
  content: "\e0d6";
}

.social_delicious_square:before {
  content: "\e0d7";
}

.icon_printer:before {
  content: "\e103";
}

.icon_calulator:before {
  content: "\e0ee";
}

.icon_building:before {
  content: "\e0ef";
}

.icon_floppy:before {
  content: "\e0e8";
}

.icon_drive:before {
  content: "\e0ea";
}

.icon_search-2:before {
  content: "\e101";
}

.icon_id:before {
  content: "\e107";
}

.icon_id-2:before {
  content: "\e108";
}

.icon_puzzle:before {
  content: "\e102";
}

.icon_like:before {
  content: "\e106";
}

.icon_dislike:before {
  content: "\e0eb";
}

.icon_mug:before {
  content: "\e105";
}

.icon_currency:before {
  content: "\e0ed";
}

.icon_wallet:before {
  content: "\e100";
}

.icon_pens:before {
  content: "\e104";
}

.icon_easel:before {
  content: "\e0e9";
}

.icon_flowchart:before {
  content: "\e109";
}

.icon_datareport:before {
  content: "\e0ec";
}

.icon_briefcase:before {
  content: "\e0fe";
}

.icon_shield:before {
  content: "\e0f6";
}

.icon_percent:before {
  content: "\e0fb";
}

.icon_globe:before {
  content: "\e0e2";
}

.icon_globe-2:before {
  content: "\e0e3";
}

.icon_target:before {
  content: "\e0f5";
}

.icon_hourglass:before {
  content: "\e0e1";
}

.icon_balance:before {
  content: "\e0ff";
}

.icon_rook:before {
  content: "\e0f8";
}

.icon_printer-alt:before {
  content: "\e0fa";
}

.icon_calculator_alt:before {
  content: "\e0e7";
}

.icon_building_alt:before {
  content: "\e0fd";
}

.icon_floppy_alt:before {
  content: "\e0e4";
}

.icon_drive_alt:before {
  content: "\e0e5";
}

.icon_search_alt:before {
  content: "\e0f7";
}

.icon_id_alt:before {
  content: "\e0e0";
}

.icon_id-2_alt:before {
  content: "\e0fc";
}

.icon_puzzle_alt:before {
  content: "\e0f9";
}

.icon_like_alt:before {
  content: "\e0dd";
}

.icon_dislike_alt:before {
  content: "\e0f1";
}

.icon_mug_alt:before {
  content: "\e0dc";
}

.icon_currency_alt:before {
  content: "\e0f3";
}

.icon_wallet_alt:before {
  content: "\e0d8";
}

.icon_pens_alt:before {
  content: "\e0db";
}

.icon_easel_alt:before {
  content: "\e0f0";
}

.icon_flowchart_alt:before {
  content: "\e0df";
}

.icon_datareport_alt:before {
  content: "\e0f2";
}

.icon_briefcase_alt:before {
  content: "\e0f4";
}

.icon_shield_alt:before {
  content: "\e0d9";
}

.icon_percent_alt:before {
  content: "\e0da";
}

.icon_globe_alt:before {
  content: "\e0de";
}

.icon_clipboard:before {
  content: "\e0e6";
}


.glyph {
  float: left;
  text-align: center;
  padding: .75em;
  margin: .4em 1.5em .75em 0;
  width: 6em;
  text-shadow: none;
}

.glyph_big {
  font-size: 128px;
  color: #59c5dc;
  float: left;
  margin-right: 20px;
}

.glyph div {
  padding-bottom: 10px;
}

.glyph input {
  font-family: consolas, monospace;
  font-size: 12px;
  width: 100%;
  text-align: center;
  border: 0;
  box-shadow: 0 0 0 1px #ccc;
  padding: .2em;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.centered {
  margin-left: auto;
  margin-right: auto;
}

.glyph .fs1 {
  font-size: 2em;
}

/* footer.css --- 2025-09-05 13:05:44 */
#footer {
    padding: 25px 0 25px;
    background: linear-gradient(to bottom, #fff, #999);

    color: #111;
    font-size: 0.8rem
}


.homepage #footer {
    background: linear-gradient(to bottom, #888, #888);
}

#footer-main,
#footer-bottom {
    max-width: 96%;
    width: 1200px;
    margin: 0 auto;
}


#footer a {
    color: black;
    display: inline-block;
}

#footer-bloc-left {}

#footer-bloc-left img {
    max-width: 180px;
    height: auto !important;
}

#footer-bloc-left ul {
    margin: 0;
    padding: 0 0 0 18px;
}

#footer-bloc-left li {
    margin: 0;
    padding: 0;
}

#footer-bloc-center {
    text-align: center;
}

#footer-bloc-center p {
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}

#footer-bloc-center strong {
    font-size: 0.9rem;
}

#footer-bloc-right {
    text-align: right;
}

#footer-bloc-right img.social {
    margin-left: 15px;
    max-width: 45px;
    height: auto !important;
    filter: contrast(1) grayscale(1) invert(1);
    -webkit-filter: contrast(1) grayscale(1) invert(1);
}

#footer-bottom {
    padding: 25px 0 0;
    color: #444;
}

#footer-bottom a {
    display: inline-block;
    color: #444;
}

#footer-bottom span {
    white-space: nowrap;
}

#footer-bottom a:before {
    content: '•';
    display: inline-block;
    margin: 0 5px;
}



#footer .social-networks {
    display: flex;
    width: 100%;
    gap: 15px;
    align-items: center;
    justify-content: end;

}

#footer .social-networks a {
    display: block;
    border-radius: 50%;
    /* background-color: var(--red); */
}

#footer .social-networks img {
    width: 60px !important;
    height: auto !important;
    filter: brightness(0) saturate(100%) invert(18%) sepia(0%) saturate(2531%) hue-rotate(172deg) brightness(101%) contrast(93%);
}

#footer .social-networks img:hover {
    filter: brightness(0) saturate(100%) invert(11%) sepia(51%) saturate(7071%) hue-rotate(352deg) brightness(98%) contrast(94%);
}

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

        margin: 25px auto 10px;
    }
}

@media screen and (max-width: 767px) {
    footer .row {}

    footer .footer-col {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    #footer-bloc-left * {
        text-align: center;
    }

    #footer-bloc-left .menu {
        display: none;
    }

    #footer-bloc-center {
        padding: 0 0 25px 0;
    }

    #footer .social-networks {
        justify-content: center;
    }
}

/* hp-actualites.css --- 2025-02-18 12:24:59 */


/* article-logos-gallery.css --- 2025-02-20 12:45:18 */
article.logos-gallery {
  background-color: var(--red);
  padding: 35px 0 70px;
  background-image: url('/msmedias/certifications/certifications-bg.jpg');
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 0;
  min-height: 50vh;
  display: flex;
  align-items: center;
}


article.logos-gallery .article-title h2 {
  color: white !important;
}


article.logos-gallery .article-title h2 span::after {
  background-color: white !important;
}

.logos-gallery .logos-items {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  align-items: center;
  padding: 0px 30px;

}

.logos-gallery .logo-item {
  flex: 1 1 auto;
  max-width: 150px;
  text-align: center;
  padding: 15px;
  background: white;
  border-radius: 50%;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 150px;
  overflow: hidden;
}

.logos-gallery .logo-item img {
  max-width: 80% !important;
  max-height: 75% !important;
  margin: auto;
  display: block;
}

article.logos-soutiens {
  background-color: #f9f9f9;
}


article.logos-soutiens .logo-item {
  width: 200px;
  height: 200px;
  max-width: 200px;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.15);
}

/* attachments.css --- 2025-10-03 07:02:00 */
.attachments {
  width: auto;
  font-size: 0;
}

.attachments.width-25pc {
  width: 25%;
}

.attachments.width-33pc {
  width: 33%;
}

.attachments.width-50pc {
  width: 50%;
}

.attachments.width-66pc {
  width: 66%;
}

.attachments.width-75pc {
  width: 75%;
}

.attachments.width-100pc {
  width: 100%;
}

.attachments.width-100pc {
  width: 100%;
  float: none
}


.attachments.right {
  margin: 0 0 0 0
}

.attachments .att {
  position: relative;
}

.attachments .caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.5);
  color: white;
  font-size: 0.7rem;
  padding: 5px 10px;
  line-height: 1;
  text-align: left;
}

.attachments.first-large .att {
  padding: 1px;
}

.attachments.first-large .following {
  width: 25%;
  float: left
}

.attachments.first-large .following a {
  display: block;
  padding-top: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0.8;
}



.attachments .swiper-container {
  overflow: hidden;
  position: relative;

}

.attachments .swiper-slide {
  aspect-ratio: 4 / 3;
}

.attachments .swiper-pagination {
  overflow: hidden;
  position: relative;
  margin-top: 15px;
  bottom: unset !important;
}



@media (max-width: 767px) {
  .attachments {
    float: none !important;
    width: 100% !important;
    margin: 0 0 30px 0 !important;
    padding: 0 0 0 0 !important;
  }
}

/* infos-know-how.css --- 2025-02-12 04:41:18 */
.infos-know-how-group {
  max-width: 1200px;
  width: 96%;
  margin: 0 auto;
}





.infos-know-how-group .group-inner {
  display: flex;
  flex-direction: row;
  margin: 0 -15px;
  justify-content: center;
  flex-wrap: wrap;


}




article.infos-know-how {
  padding: 15px;
}

article.infos-know-how .article-inner {
  border: 1px solid #222;
  cursor: pointer;
}


article.infos-know-how .aticle-title {
  font-weight: normal;
  background-color: var(--red);
  height: 65px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

article.infos-know-how h3 {
  text-align: center;
  font-size: 1rem !important;
  line-height: 1.2;
  margin: 0 7px !important;

}

article.infos-know-how .article-content {
  position: relative;
  overflow: hidden;

}

article.infos-know-how .attachment {
  padding-top: 100%;
  position: relative;
  background-position: center;
  background-size: cover;
}


article.infos-know-how .article-text {
  position: absolute;
  top: 100%;
  left: 100%;
  width: 100%;
  height: 100%;
  overflow-y: hidden;
  background-color: rgba(33, 33, 33, 0.7);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 0.8rem;
  padding: 10px;
  transition: all 700ms;
  text-align: center;
}

article.infos-know-how:hover .article-text {

  top: 0%;
  left: 0%
}

article.infos-know-how .more {
  position: absolute;
  bottom: 0;
  right: 0;
  background-image: url('/img/infos-know-how-more.png');
  background-size: cover;
  height: 50px;
  width: 50px;
  opacity: 1;
  transition: all 200ms;
}


article.infos-know-how:hover .more {
  opacity: 0.2;
  transform: scale(1.6) translate(-20%, -20%);

}




@media screen and (min-width: 1px) and (max-width: 5760px) {
  article.infos-know-how {
    flex: 0 0 25%;
  }

  article.infos-know-how h2 {
    font-size: 1.1rem;
  }

}

/* article-hp-actualites.css --- 2025-10-02 11:59:46 */
article.homepage-actualites {
  background: linear-gradient(to bottom, #f9f9f9, #f9f9f9);
}


article.homepage-actualites .article-content {
  display: block !important;
  /* Avoid a bug of swiper */
}

#homepage-actualites {
  /* Conteneur général */
  margin: 0 auto;


}


#homepage-actualites .swiper-container {
  overflow-x: hidden;
  max-width: calc(100% - 80px);
  margin: 0 auto;

}




#homepage-actualites .swiper-slide div.inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}






@media screen and (min-width: 1200px) {
  #homepage-actualites .swiper-button {
    display: non0e;
  }
}

@media screen and (max-width: 1199px) {
  #homepage-actualites .swiper-container {
    max-width: calc(100% - 80px);
    margin: 0 auto;
  }
}

/* article-intro.css --- 2025-02-20 08:33:58 */
 article.intro {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
 }


 article.intro {
   font-size: 1.1rem;
   border: 0px solid pink;
 }

 article.intro {
   font-weight: bold;
   color: #111;
 }

 article.intro p {
   margin: 10px 0;
 }

/* section-title.css --- 2025-02-07 16:12:49 */
article.section-title {
  padding-top: 0 !important;

}

article.section-title .article-title {
  margin-bottom: 0 !important;
}

article.section-title .article-title h2 {
  text-align: center !important;
  position: relative !important;
  font-size: 2rem !important;
  color: #999 !important;
}

article.section-title h2::after {
  position: absolute !important;
  left: calc(50% - 45px) !important;
  width: 90px !important;
  height: 5px !important;
}

/* partial-actualite.css --- 2025-02-20 18:54:59 */
.actualite-item .cover {
  aspect-ratio: 1.6;
  overflow: hidden;
  position: relative;
}

.actualite-item .cover img {
  object-fit: cover;
  height: 100% !important;
  width: 100% !important;
  transition: all 400ms;
}

.actualite-item .inner:hover img {
  transform: scale(1.1);
}

.actualite-item .date {
  text-align: center;
  font-size: 0.8rem;
  position: absolute;
  bottom: 0;
  right: 0;
  color: white;
  padding: 3px 10px;
  line-height: 1.2;
}

.actualite-item .date .bg {
  position: absolute;
  background: #000;
  transform: translate3d(0, 0, 0) skew(-30deg, 0deg);
  width: 200%;
  top: 0;
  left: -10px;
  bottom: 0;
  color: white;
}

.actualite-item .date .hover {
  width: 120px;
  position: relative;

}

.actualite-item .day-month {
  font-weight: bold;
}

.actualite-item .year {}

.actualite-item a {
  text-decoration: none;
}

.actualite-item .title {
  text-align: center;
  flex: 1;
  padding: 0 25px;
  font-size: 0.9rem;
}

.actualite-item .title a {
  color: inherit;
  text-decoration: none !important;
}

.actualite-item .bottom {
  display: flex;
  flex-direction: row;
  align-items: center;

}

.actualite-item .picto {
  width: 30px;
  text-align: right;
  padding-right: 0px;
  transition: all 400ms;
  display: none;

}

.actualite-item .picto i {
  font-size: 30px;
}


.actualite-item .inner:hover img {
  transform: scale(1.1);
}

.actualite-item .inner:hover .picto {
  padding-right: 0px;

}

@media screen and (max-width: 767px) {
  .actualite-item .title {
    text-align: center;

  }

  .actualite-item .picto {
    display: none;
  }
}

/* buttons.css --- 2025-03-20 17:20:10 */
.btn,
a.btn {
  padding: 8px 25px;
  border-radius: 30px;
  transition: all 400ms;
  text-decoration: none !important;
}

.btn-sm {
  padding: 4px 15px;
  border-radius: 30px;
  font-size: 12px;
}


.btn-red,
.btn-contact,
a.btn-red {
  background-color: var(--red);
  color: white !important;
  font-size: 1.2rem;
  text-decoration: none !important;

}

.btn-red:hover,
.btn-contact:hover,
a.btn-red:hover {
  background-color: var(--dark-red) !important;
  color: white !important;
}


.btn-red img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(181deg) brightness(103%) contrast(103%);
}


button.btn-outline-white,
a.btn-outline-white {
  background-color: transparent;
  border: 1px solid white !important;
  color: white !important;

}

.btn-outline-white:hover,
a.btn-outline-white:hover {
  background-color: white;
  color: var(--red) !important;
}



button.btn-outline-red,
a.btn-outline-red {
  background-color: white;
  border: 1px solid var(--red);
  color: var(--red) !important;

}

.btn-outline-red:hover,
a.btn-outline-red:hover {
  background-color: var(--red);
  color: white !important;
}



a.btn-contact:before {
  font-family: "Font Awesome 6 Free";
  content: "\f0e0";
  margin-right: 10px;
  position: relative;
  top: -1px;
  font-size: 1.3rem
}


.btn-callback {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--red);
  color: white;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
  border-radius: 8px;
  transition: background-color 0.3s;
  text-transform: uppercase;
  padding: 15px;
  box-shadow: 2px 2px 6px #666;
}

.btn-callback img {
  max-width: 48px;
  max-height: 48px;
  width: auto !important;
  filter: var(--white-filter);
  margin-bottom: 15px;
}

.btn-callback:hover {
  background-color: var(--dark-red);
}

/* homepage.css --- 2025-08-21 13:26:00 */
body.homepage .article-title-default {
  text-align: center;
  padding: 35px;
}

body.homepage {
  padding-top: 94px;
}

body.homepage .article-title-default h2 {
  font-size: 1.6rem;
}

body.homepage .article-title-default h2 span {
  position: relative;
  padding-bottom: 7px;
}

body.homepage .article-title-default h2 span:after {
  content: ' ';
  height: 3px;
  width: 80px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: var(--red);
}

@media (max-width: 575px) {
  body.homepage {
    /* padding-top: 80px; */
  }
}

/* article-cta.css --- 2025-08-21 16:02:21 */
article.cta {

  font-size: 120%;
  margin-bottom: 40px !important;


  font-weight: bold;
}

article.cta .article-text {
  max-width: 680px;
  width: 96%;
  margin: 0 auto;
  line-height: 1.9;
  background-color: var(--red);
  padding: 25px 50px;
  border: 0px solid var(--dark-red);
  border-radius: 25px;
  color: white;

}

/* section-hp-row-2.css --- 2025-02-19 07:28:01 */


/* video-responsive.css --- 2025-09-06 09:48:43 */
.video-responsive {
  position: relative;
  display: inline-block;
  width: 100%;
  cursor: pointer;
  aspect-ratio: 16 / 9;
}

.video-responsive video {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
}

/* Icône par défaut (play) */
.video-responsive::before {
  content: "\f144";
  /* fa-play-circle */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 64px;
  color: #ff0000;
  /* rouge YouTube */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.85;
  pointer-events: none;
  /* clic passe à travers */
  transition: opacity 0.3s ease;
  z-index: 900;
  opacity: 0.9;
  pointer-events: none;
  /* clics passent à la vidéo */
  transition: opacity 0.3s ease;
}

/* Quand la vidéo joue → icône pause */
.video-responsive.playing::before {
  opacity: 0;
}

/* two-columns.css --- 2025-02-07 16:12:49 */
article.two-columns {}

article.two-columns .article-text {
    columns: auto;
    columns: 2;
    column-gap: 50px;
}

/* article-engagements.css --- 2025-08-21 17:50:26 */
article.engagements {}



article.engagements .items {}


article.engagements .item {
  width: 150px;
}

article.engagements .flex-grow-0 {}

article.engagements img {
  filter: var(--white-filter);
  opacity: 0;
  transition: all 500ms;
}


article.engagements .article-text {
  font-size: 0.85rem;
  opacity: 0;
  transition: all 500ms;
}


article.engagements.in-viewport img,
article.engagements.in-viewport .article-text {

  opacity: 1;
  transition: all 500ms;
}

@media screen and (max-width: 991px) {
  article.engagements .items {
    flex-wrap: wrap;
    justify-content: center;
  }

}

@media screen and (max-width: 767px) {
  article.engagements .item {
    width: 110px;
    line-height: 1.2;
  }
}

/* article-homepage-video.css --- 2025-09-26 07:57:06 */
article.homepage-video {
  background-color: #e0e0e0;

}

.homepage-video .article-content {
  display: block;
}



@media screen and (max-width: 1200px) {
  .homepage-video .container {
    max-width: unset;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .homepage-video .article-text {
    max-width: unset;
    width: 100%;
  }
}

/* flipper.css --- 2025-02-07 16:12:48 */
.flip-container {
  perspective: 1000px;
  display: inline-block;
}

.flipper {
  width: 80px;
  height: 80px;
  position: relative;
  transform-style: preserve-3d;
  transition: transform 0.5s;
  display: inline-block;

}

.front-image,
.back-image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  backface-visibility: hidden;
  /* Cache le dos de l'image pendant la rotation */
}

.back-image {
  transform: rotateY(180deg);
  /* Tourne l'image de 180 degrés */
  opacity: 0;
  /* Commence avec une opacité de 0 */
}

.flip-container:hover .flipper {
  transform: rotateY(180deg);
  /* Fait pivoter à 180 degrés au survol */
}

.flip-container:hover .back-image {
  opacity: 1;
  /* Rend l'image arrière visible lorsque la rotation atteint 180 degrés */
}

/* cards.css --- 2025-02-07 16:12:48 */
.card {}

.card-title {
  padding: 0.5rem 1rem;
  background-color: #eee;
  font-size: 0.9rem;
}


.card-body {
  padding: 1rem;
  font-size: 0.8rem;
}

/* article.red-bg.css --- 2025-03-21 12:13:45 */
article.red-bg {
  background-color: var(--red-bg);

}

article.red-bg .article-title h2 {
  color: white;
}

article.red-bg .article-title h2 span:after {
  background-color: white;
}

article.red-bg .article-text,
article.red-bg .article-text strong,
article.red-bg .article-text a {
  color: white;
}

/* article-chapeau.css --- 2025-02-20 08:34:27 */
article.chapeau {
  border: 0px solid pink;
  padding-top: 0;
}

article.chapeau,
article.chapeau .article-text {
  color: var(--dark-red);
}

article.chapeau .article-inner {}

article.chapeau .article-text {
  padding: 0px 0;
  font-size: 2rem;
  line-height: 1.3;
  text-align: center;
  font-family: var(--titles-font);
  font-weight: 600;
}

article.chapeau p {
  margin: 10px 0;
}

/* article-hp-pictos.css --- 2025-08-21 15:27:20 */
article.hp-pictos {
  padding: 0;
  background-color: #ffffff;
  position: relative;

}

article.hp-pictos .article-content {
  min-height: 50vh;
  max-width: 96%;
  width: 1170px;
  margin: 0 auto;
  display: flex;
  align-items: start;
  text-align: center;
  padding-top: 70px;
}


article.hp-pictos .wrapper {
  flex-direction: column;
  gap: 2rem;
}


article.hp-pictos .picto-item {
  text-align: center;
  position: relative;
}

article.hp-pictos .picto {
  text-align: center;
  background-color: white;
  display: inline-block;
  border-radius: 50%;
  aspect-ratio: 1.2;
  /* width: 180px; */

}

article.hp-pictos svg {
  width: 100px;
  height: 100px;
}

article.hp-pictos svg path {
  fill: rgb(85, 85, 85);
}

article.hp-pictos .label {
  font-family: var(--titles-font);
  text-transform: uppercase;
  font-size: 1rem;
  padding: 1rem 0;
  font-weight: bold;

}

article.hp-pictos .picto-item.active {}


article.hp-pictos .texts {
  display: none;
}

article.hp-pictos .texts div {
  display: none;
  font-size: 18px;
  font-weight: bold;
  margin-top: 30px;
  /* background: #f5f5f5; */
  border-radius: 25px;
  padding: 25px;
  transition: opacity 0.3s ease;

  color: #303030;
  /*text-transform: uppercase; */
}

article.hp-pictos .text-1 {
  text-align: center;
}

article.hp-pictos .text-2 {
  text-align: center;
}

article.hp-pictos .text-3 {
  text-align: center;
}


article.hp-pictos .visible {
  display: block !important;
  opacity: 1;
}

@media screen and (min-width: 576px) {
  article.hp-pictos .wrapper {
    flex-direction: row;
    gap: 0rem;
  }

  article.hp-pictos .picto-item.active svg path {
    fill: var(--red);
  }

  article.hp-pictos .picto-item.active .label {
    color: var(--red);
  }

  article.hp-pictos .texts {
    display: block;
  }
}

@media screen and (min-width: 756px) {
  article.hp-pictos svg {
    width: 70px;
    height: 70px;
  }
}




@media screen and (min-width: 768px) {
  article.hp-pictos .picto {
    aspect-ratio: 1;
  }

  article.hp-pictos svg {
    width: 100px;
    height: 100px;
  }

  article.hp-pictos .label {

    font-size: 1.5rem;
    padding: 1.2rem 0;
  }

  article.hp-pictos .picto-item.active::after {
    content: "\f078";
    /* Unicode du chevron de FontAwesome */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 1.7em;
    color: var(--red);
  }

}

/* infos.css --- 2025-02-21 09:13:37 */
    /* infos */
    #info-contents {
        padding-top: 90px;
        transition: padding-top 1000ms;
        background-color: white;
        min-height: 80vh;
    }

    .scrolled #info-contents {
        padding-top: 70px !important;
    }

    #info-contents {
        position: relative;
        z-index: 20;
        background-color: white;
    }

    .page-title {
        background-color: var(--dark-red);
        margin-bottom: 50px;
    }

    .page-title h1 {
        padding-top: 25px;
        padding-bottom: 25px;
        color: white !important;
        background-color: var(--red);
        text-align: center;
        font-size: 1.8rem;
        position: relative;
        /*
        background-image: url('/img/logo-s.png');
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto 100%;
        */
    }

    .page-title h1 span::after {
        content: "";
        position: absolute;
        top: 50%;
        left: -55px;
        width: 50px;
        height: 50px;
        transform: translateY(-40%);
        background-image: url('/img/logo-s-white.png');
        background-image: url('/img/logo-s.png');
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto 100%;
        opacity: 1;
        z-index: 0;
        /* Met l'image en arrière-plan */
    }

    @media screen and (max-width: 576px) {
        .page-title h1 span::after {
            display: none;
        }
    }


    .page-title h1 span {
        display: inline-block;
        position: relative;
        z-index: 2;
    }

    #info-contents h2 {
        text-transform: none;
    }

    #info-contents h3 #info-contents p,
    #info-contents h3 {
        margin-top: 0;
        margin-bottom: 1rem;
        padding: 0;
    }

    #info-contents h3 {
        font-size: 1.2rem;
    }

    #info-contents a,
    #info-contents a strong {
        /* color: var(--red); */
        color: #000;
        text-decoration: underline;
        font-weight: 700;
    }

    /*
    #infos-row2 article.bg-light-var(--red) .article-inner {
        background-color: #fcefd4;
        padding: 50px;
    }
    */
    #infos-row2 article.bg-gray-6 .article-inner {
        background-color: #666;
        padding: 50px;
    }

    #infos-row2 article.border-rounded .article-inner {
        border-radius: 15px;
    }

    #infos-row2 .article-title {
        margin: 0 0 25px 0;
    }

    #infos-row2 .article-title h2 {
        text-align: left;
        font-size: 1.5rem;
    }

    #infos-row2 .article-title h2:after {
        width: 60px;
        height: 3px;
        background-color: var(--red);
        display: block;
        content: ' ';
        margin: 7px 0 0;
    }

    #infos-row2 {
        min-height: calc(100vh - 260px)
    }

    #infos-row2 img {
        max-width: 100%;
        height: auto !important;
    }

    #infos-row2 article {
        padding-top: 35px
    }

    #infos-row2 .article-default {
        margin-bottom: 50px
    }

    #infos-row2 .article-text {
        text-align: justify;
    }

    #infos-row2 .article-default p {
        margin: 0 0 15px 0;
    }

    #infos-row2 .article-default ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    #infos-row2 .article-default li {
        margin: 0 0 15px 0;
        padding: 0 0 0 28px;
        position: relative;
    }

    #infos-row2 .article-default li::before {
        content: "\39";
        font-family: ElegantIcons;
        font-weight: 400;
        color: #666;
        position: absolute;
        top: 0;
        left: 0;
        transition: all 300ms;
    }

    #infos-row2 .article-default li:hover::before {
        left: 7px;
    }

    #infos-row2 img {
        max-width: 100%;
    }

    #infos-row2 .article-default .article-inner {
        display: flex;
        align-items: center;
    }

    #infos-row2 article.default .article-inner::after {
        display: table;
        content: " ";
        clear: both;
    }

    #infos-row2 .article-default .wordings {
        flex: 1
    }

    #infos-row2 .article-default .article-text p {
        text-align: justify;
    }

    #infos-row2 article.separetor .article-text {
        text-align: center;
    }

    #infos-row2 article.separetor .article-text img {
        margin: 0 7px;
        width: 15px !important;
    }

    #infos-row2 article.att-position-right .article-inner {
        flex-direction: row-reverse;
    }

    #infos-row2 .article-default .attachments {
        opacity: 0;
        transition: opacity 700ms;
        -webkit-transition: opacity 700ms;
        -moz-transition: opacity 700ms;
        -ms-transition: opacity 700ms;
        -o-transition: opacity 700ms;
    }

    #infos-row2 .article-default.in-viewport .attachments {
        opacity: 1;
    }

    #infos-main article:first-child {
        padding-top: 0 !important;
    }


    @media screen and (max-width: 767px) {
        #infos-row2 article.att-position-left .article-inner {
            flex-direction: column-reverse;
        }

        #infos-row2 article.att-position-right .article-inner {
            flex-direction: column-reverse;
        }

        #infos-row2 .article-default .wordings {
            padding: 0 15px;
        }

        .attachments.right,
        .attachments.left {
            float: none;
            margin: 0 !important;
            width: 100% !important;
            opacity: 1 !important;
            text-align: center;
        }

        #infos-row2 article.services .article-text {
            text-align: left;
        }
    }

/* decorations.css --- 2025-02-20 13:16:15 */
.btn-back:before,
.btn-forward::after {
  font-family: 'ElegantIcons';
  position: relative;
  top: 1px;
}

.btn-back:before {
  content: '\3c';
  margin-right: 3px;
}

.btn-forward::after {
  content: "\3d";
  margin-left: 3px;
}

.pointer {
  cursor: pointer;
}

.alert-sm {
  font-size: 0.8rem;
  padding: 0.35rem 0.75rem;
}



.chevron {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none !important;
  gap: 8px;

  transition: color 0.3s ease, transform 0.3s ease;
  position: relative;
}

.chevron::before {
  content: '\f054';

  font-family: 'Font Awesome 6 Free';

  font-weight: 900;

  display: inline-block;
  font-size: 15px;

  margin-left: 8px;
  position: relative;
  top: 2px;
  text-decoration: none !important;
  transition: transform 0.3s ease;
}

.chevron:hover::before {
  transform: translateX(3px);
}

.swiper-button-next,
.swiper-button-prev {
  color: var(--red) !important;
}

.swiper-pagination-bullet-active {
  background-color: var(--red) !important;
  ;
}

/* article-domaines-activites.css --- 2025-10-03 09:51:44 */
article.domaines-activites {}

article.domaines-activites ul {
  list-style: none;
  justify-content: center;
  gap: 2rem;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

article.domaines-activites li {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: end;
  font-weight: bold;
  width: 120px;
  font-size: calc(0.6rem + 0.25vw);
}

article.domaines-activites li br {
  display: none;
}

article.domaines-activites li img {
  height: 90px !important;
  width: auto !important;
  margin-bottom: 15px;

}

@media screen and (min-width: 320px) and (max-width: 576px) {
  article.domaines-activites li {
    width: 110px;

  }
}

/* modal.css --- 2025-02-19 17:38:03 */
.modal-header {
  background-color: var(--red);
  color: white;
  font-family: Kanit, sans-serif;
}

.modal-header .btn-close {
  filter: invert(1);
}

/* side-buttons.css --- 2025-02-12 04:41:18 */
#side-buttons {
  position: fixed;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 75px;
  z-index: 900;
}

#side-buttons .button {

  width: 190px;
  overflow: hidden;
  position: relative;
  border: 1px solid #111;
  padding: 0 10px;
  transition: all 700ms;
  left: 0;
  background-color: #111;

}


#side-buttons a {
  display: block;
  text-align: center;
  text-decoration: none;
  color: #111;
  display: flex;
  align-items: center;
  margin: 15px 0
}

#side-buttons a:before {
  font-family: "ElegantIcons";
  width: 50px;
  right: 0;
  position: relative;
  text-align: center;
  font-size: 2rem;
  color: var(--red);
  border: 0px pink solid;
  transition: color 700px;
}


#side-buttons .btn-contact a:before {
  content: "\e010";

}

#side-buttons .btn-callback a:before {
  content: "\e027";
}

#side-buttons .btn-phone a:before {
  content: "\e090";
}

#side-buttons .btn-account a:before {
  content: "\e08a";
}

#side-buttons .btn-cart a:before {
  content: "\e015";
}

#side-buttons a span {
  position: relative;
  line-height: 1;
  text-align: left;
  display: inline-block;
  padding-left: 10px;
  flex: 1;

}

#side-buttons .button___,
#side-buttons .button:hover {
  left: -115px;
  background-color: var(--red);
}



#side-buttons .button:hover a:before {
  color: #111;
}

body.infos #side-buttons {
  width: 40px;
}

body.infos #side-buttons .button {

  width: 190px;
  padding: 0 20px 0 3px;
}

body.infos #side-buttons a {
  padding-top: 0px;
}

body.infos #side-buttons a:before {
  width: 30px;
  font-size: 1.3rem;
}

body.infos #side-buttons .button:hover {
  left: -115px;
}

body.infos {}

body.infos {}

body.infos {}

body.infos {}



@media screen and (max-width: 500px) {

  #side-buttons {
    top: 70%;
    transform: translateY(-50%);
    width: 50px;
  }

  #side-buttons a:before {
    font-size: 24px;
  }

  #side-buttons {
    right: 20px
  }

  #side-buttons .button {
    height: 60px
  }
}

/* form.css --- 2025-02-07 16:12:48 */
.form-group-label {}

.form-group-label.required::after {
  content: "\e033";
  font-family: 'ElegantIcons';
  font-size: 7px;
  position: relative;
  top: -5px;
  margin-left: 3px;

}

.checkbox-label {}

.radio-label input,
.checkbox-label input {
  margin-right: 10px;
}


.alert ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.alert li {
  margin: 0 0 5px;
  padding: 0;
}

button[disabled] {
  cursor: no-drop;
}

/* header.css --- 2025-08-21 14:27:07 */
/* header */
header {
    padding: 0 0 0;
    z-index: 1002;
    position: fixed;
    top: 0;
    left: 0%;
    width: 100%;
    transition: padding 400ms;
    height: 90px;
}

header p {
    margin: 0;
    padding: 0;
}

header .header-col {}


header .cover {
    z-index: 1;
}

header .inner {}

header .logo {
    padding: 5px 0;
    max-height: 100%;
}

header .logo svg,
header .logo img {
    width: auto !important;
    max-height: 80px;
    transition: all 400ms;

}






body.scrolled header {
    background: #eee !important;
    box-shadow: 0 2px 2px #ddd;
    height: 60px;
}

body.scrolled header .logo img {
    max-height: 50px;
}





@media (min-width: 992px) and (max-width: 1299px) {}

@media (min-width: 768px) and (max-width: 991px) {}

@media (min-width: 500px) and (max-width: 767px) {}

@media (max-width: 15px) {

    header .above {
        top: 50px;
    }

    header .inner {
        padding-top: 90vh;
    }

    header .logo img {
        max-height: 70px;
    }

    .infos header .inner {
        padding-top: 45vh !important;
    }
}

/* fonts.css --- 2025-03-19 12:49:38 */
:root {
  --titles-font: "Staatliches", sans-serif;

  --titles-font0: "Yanone Kaffeesatz", sans-serif;
  /* --titles-font: "Bebas Neue", sans-serif; */
  --titles-font: "Lexend", sans-serif;
}

h1 {
  font-family: var(--titles-font);
  font-weight: 600;
}

h2,
h3,
h4 {
  font-family: var(--titles-font);
  font-weight: 400;

}

.lato-thin {
  font-family: "Lato", serif;
  font-weight: 100;
  font-style: normal;
}

.lato-light {
  font-family: "Lato", serif;
  font-weight: 300;
  font-style: normal;
}

.lato-regular {
  font-family: "Lato", serif;
  font-weight: 400;
  font-style: normal;
}

.lato-bold {
  font-family: "Lato", serif;
  font-weight: 700;
  font-style: normal;
}

.lato-black {
  font-family: "Lato", serif;
  font-weight: 900;
  font-style: normal;
}

.lato-thin-italic {
  font-family: "Lato", serif;
  font-weight: 100;
  font-style: italic;
}

.lato-light-italic {
  font-family: "Lato", serif;
  font-weight: 300;
  font-style: italic;
}

.lato-regular-italic {
  font-family: "Lato", serif;
  font-weight: 400;
  font-style: italic;
}

.lato-bold-italic {
  font-family: "Lato", serif;
  font-weight: 700;
  font-style: italic;
}

.lato-black-italic {
  font-family: "Lato", serif;
  font-weight: 900;
  font-style: italic;
}

.fs-7 {
  font-size: 0.95rem;
}

.fs-8 {
  font-size: 0.9rem;
}

.fs-9 {
  font-size: 0.85rem;
}

.fs-10 {
  font-size: 0.8rem;
}

.fs-11 {
  font-size: 0.75rem;
}

/* swiper.css --- 2025-08-21 15:25:35 */
:root {
  --swiper-navigation-sides-offset: 5px !important;
  --swiper-navigation-size: 32px !important;
}

/* menu-desktop.css --- 2025-08-21 14:46:17 */
@media screen and (min-width: 992px) {
  #menu {
    opacity: 1;
    padding-top: 5px;
    transition: all 500ms;
    position: absolute;
    right: 0;
    bottom: 0;
  }

  #menu .hidden-desktop {
    display: none !important;
  }

  #menu ul.level0,
  #menu ul.level1,
  #menu ul.level2 {
    list-style: none;
  }


  #menu ul.level0,
  #menu ul.level1,
  #menu ul.level2,
  #menu li.level0,
  #menu li.level1,
  #menu li.level2 {
    padding: 0;
    margin: 0
  }


  #menu ul.level0 {
    display: flex;
    justify-content: right;
  }





  #menu li.level0 {
    border-left: 1px solid #fff;
    /* background-color: #eee; */
    cursor: pointer;
    position: relative;
    color: #111111;
    opacity: 0.8;
  }

  #menu li.level0:first-child {
    border-left: none;
  }

  #menu li.level0>a {
    line-height: 1;
    font-size: 0.7rem;
    width: 120px;
    text-transform: uppercase;
    position: relative;
    padding: 70px 15px 10px;
    display: block;
    font-weight: bold;
    color: #111111;
    text-align: center;
  }

  #menu li.level0>a:before {
    opacity: 1;
    position: absolute;
    top: 18%;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50px;
    border: 1px solid #4b4e53;
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 70% 70%;
    transition: all 700px;
    filter: brightness(0) saturate(100%) invert(31%) sepia(5%) saturate(426%) hue-rotate(158deg) brightness(95%) contrast(94%);
  }

  #menu li.level0.home>a:before {
    background-image: url('../img/menu/home.svg');
  }

  #menu li.level0.savoir-faire>a:before {
    background-image: url('../img/menu/services.svg');
  }

  #menu li.level0.moyens>a:before {
    background-image: url('../img/menu/moyens.svg');
  }

  #menu li.level0.qui-sommes-nous>a:before {
    background-image: url('../img/menu/about-us.svg');
  }

  #menu li.level0.contacts>a:before {
    background-image: url('../img/menu/contacts.svg');
  }

  #menu li.level0.active,
  #menu li.level0:hover {
    opacity: 1;
  }

  #menu li.level0.active>a {
    background-color: var(--red);
  }

  #menu li.level0:hover {
    opacity: 1;
  }

  #menu li.level0.active a {
    color: #fff;
  }

  #menu li.level0.active>a:before {
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(341deg) brightness(101%) contrast(101%);
  }

  #menu li.level0>a:hover {
    text-decoration: none;
  }

  #menu li.level0>ul {
    height: 0;
    right: 0;
    transition: all 1000ms;
    overflow: hidden;
    position: absolute;
    top: 100%;
    background-color: #fafafa;
    border-top: 0px var(--red) solid;
    border-bottom: 0px var(--red) solid;
    text-align: left;
  }

  #menu li.level0>ul {
    left: 0;
    padding: 10px;
    width: 250px;
  }

  #menu li.level1 {
    border-bottom: 1px dotted #ddd;
  }

  #menu li.level1:last-child {
    border: none;
  }

  #menu li.level1>a {
    display: block;
    padding: 10px 0;
  }

  #menu li.contacts {
    position: static;
  }

  #menu li:not(.megamenu):hover>ul {
    display: block;
  }

  #menu ul.level1 li {
    padding-left: 20px;
    position: relative;
  }

  #menu ul.level1 li:before {
    font-family: ElegantIcons;
    content: 'E';
    position: absolute;
    top: 10px;
    left: 0;
    font-size: 1.1rem;
  }






  body.scrolled #menu li.level0>a {
    padding-top: 50px;
  }

  body.scrolled #menu li.level0>a:before {
    top: 14%;
    left: 50%;
    transform: translateX(-50%) scale(30%);
    width: 48px;
    height: 48px;
  }



}

@media screen and (min-width: 1200px) {


  #menu li.level0>a:before {


    top: 12%;
    left: 50%;





    width: 48px;
    height: 48px;

  }


  #menu li.level0>a {
    width: 150px;
  }
}

