@font-face {
  font-family: 'Myriad Pro Regular';
  font-style: normal;
  font-weight: normal;
  src: local('Myriad Pro Regular'), url('../../fonts/MYRIADPRO-REGULAR.woff') format('woff');
  }

  @font-face {
    font-family: 'Lee Toscanini3';
    src: local('letlsh'), url('../../fonts/letlsh.woff') format('woff');
    }
    

  @font-face {
    font-family: 'Lee Toscanini9';
    src: local('LeeToscanini9'), url('../../fonts/LeeToscanini9-BlackSH.woff') format('woff');
    }
    
    
@-webkit-keyframes sunrotate {
  0% {
    transform: rotate(0deg) scale(1.1)
  }
  12.5% {
    transform: rotate(45deg) scale(0.9);
  }
  25% {
    transform: rotate(90deg) scale(1.1)
  }
  37.5% {
    transform: rotate(135deg) scale(0.9);
  }
  50% {
    transform: rotate(180deg) scale(1.1)
  }
  62.5% {
    transform: rotate(225deg) scale(0.9);
  }
  75% {
    transform: rotate(270deg) scale(1.1)
  }
  87.5% {
    transform: rotate(315deg) scale(0.9);
  }
  100% {
    transform: rotate(360deg) scale(1.1)
  }
}
    
    
@keyframes sunrotate {
  0% {
    transform: rotate(0deg) scale(1.1)
  }
  12.5% {
    transform: rotate(45deg) scale(0.9);
  }
  25% {
    transform: rotate(90deg) scale(1.1)
  }
  37.5% {
    transform: rotate(135deg) scale(0.9);
  }
  50% {
    transform: rotate(180deg) scale(1.1)
  }
  62.5% {
    transform: rotate(225deg) scale(0.9);
  }
  75% {
    transform: rotate(270deg) scale(1.1)
  }
  87.5% {
    transform: rotate(315deg) scale(0.9);
  }
  100% {
    transform: rotate(360deg) scale(1.1)
  }
}

@-webkit-keyframes sunrotate2 {
  0% {
    transform: rotate(360deg)
  }
  100% {
    transform: rotate(0deg)
  }
}

@keyframes sunrotate2 {
  0% {
    transform: rotate(360deg)
  }
  100% {
    transform: rotate(0deg)
  }
}


*{ margin:0; padding: 0; box-sizing: border-box; }
a{ color:inherit; text-decoration:none; }
body{background: var(--lightgrey);}

html{
  --red: #DD524C;
  --blue: #207EBE;
  --grey: #595959;
  --green: #0DB49B;
  --lightgrey: #DFE1E0;
  --darkgrey: #0E1113;
  --middlegrey: #dbdbdb;
  --darkgreen: #0D6250;
  --middlegreen: #13AA97;
  --lightgreen: #28BB79;
  --yellowgreen: #CEDF00;
  color: var(--grey);
  font-family: 'Myriad Pro Regular', sans-serif;
  
}


/* pour fonction debug */
.xdebug{
  z-index: 1000000;
  background: #f9f9f9;
  width: 95%;
  margin:0 auto;
  padding:10px;
  border:1px solid rgba(0,0,0,0.2);
}


body.scrolledesk{
  margin-top: 280px;
}


/* CONTENU DE PAGE */

.content{
  display: block;
  position: relative;
  float: right;
  width: 84.5%;
  transition: all 0.3s ease;
}

body #pres{
  margin-top: 0;
}
body.scrolledesk #pres {
  margin-top: 120px;
}

body.scrolledesk .content{
  width: 89%;
  transition: all 0.3s ease;
}


header#headtop::before{
  content: "";
  display: block;
  position: absolute;
  right: -150px;
  top: 170px;
  background-image: url(../../img/svg/sun.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 280px;
  height: 280px;
  z-index: 2;
  -webkit-animation: sunrotate 40s linear infinite;
          animation: sunrotate 40s linear infinite;
  transition: all 0.3s ease;
}

header#headtop::after{
  content: "";
  display: block;
  position: absolute;
  right: -150px;
  top: 170px;
  background-image: url(../../img/sun2.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 280px;
  height: 280px;
  z-index: 2;
  -webkit-animation: sunrotate2 10s linear infinite;
          animation: sunrotate2 10s linear infinite;
  transition: all 0.3s ease;
}

header#headtop.fixed::after, header#headtop.fixed::before{
  top: -140px;
  right: -80px;
  transition: all 0.3s ease;
  z-index: 6;
}

.content .row{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

/* boite de contenu */
.content .row .box{
  font-size: 1.5vw;
  flex: 1;
}

.box.presentation{
  position: relative;
  background: linear-gradient(45deg, var(--darkgreen), var(--middlegreen));
  margin-top: 40px;
}

.box.presentation::before{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  content: "";
  background-image: url(../../img/bg-lightdots.png);
  background-repeat: repeat;
  background-size: 141px, 132px;
  z-index: 0;
}

.box.presentation::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0px;
  width: 100%;
  height: 105%;
  background-image: url(../../img/svg/ban-garden.svg);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: bottom left;
}

/* boite de contenu avec fond pour image */
.box#schem{
  background: url(../../img/bg2.png) repeat;
  position: relative;
}

.box#schem::after{
  position: absolute;
  content: "";
  background: linear-gradient(to right, white, transparent);
  width: 20px;
  height: 100%;
  top: 0;
  left: 0;
}


#analyse.content,
#documents.content{
  position: relative;
}

#analyse.content::after,
#documents.content::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../../img/bg.png)fixed repeat;
  opacity: 0.8;
  z-index: -1;
  background-color: var(--middlegrey);
}

/* Boite de Contenu Image*/
.content-box{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}

/* Titre de boite */
.content .box .deduct{
  display: flex;
  align-items: center;
  height: 40px;
  width: 100%;
  color: white;
  font-size: 24px;
  line-height: 25px;
  min-width: 325px;
  text-align: center;
  position: relative;
  width: 100%;
  height: 40px;
  overflow: hidden;
  margin-top: -40px;
  z-index: 1;
  justify-content: center;
  align-items: center;
  color: var(--darkgreen);
  overflow: visible;
  text-shadow: 0 0 10px white;
  font-weight: bold;
}
.content .box .deduct::after{
  content: "";
  display: block;
  position: relative;
  background-image: url(../../img/cocci.png);
  background-repeat: no-repeat;
  height: 140%;
  width: 50px;
  background-size: contain;
}

.box.presentation h1{
  font-family: 'Lee Toscanini3', sans-serif;
  color: var(--middlegrey);
  z-index: 2;
  position: relative;
  text-shadow: 0px 0px 20px black;
  text-align: center;
  font-size: 4vw;
}
.box.presentation h2{
  display: flex;
  justify-content: center;
  font-family: 'Lee Toscanini9', sans-serif;
  background: -webkit-linear-gradient(var(--lightgreen), var(--middlegreen));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: var(--lightgreen);
  -webkit-text-stroke: 2px var(--darkgreen);
  text-align: center;
  position: relative;
  bottom: 10px;
  font-size: 3.5vw;
  z-index: 2;
  text-shadow: 0 0 10px var(--lightgreen), 0 0 50px var(--yellowgreen);
}

.cocciparator{
  position: relative;
  height: 40px;
  background-image: url(../../img/svg/cocciparator.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

/* Text inside boxes */
/*Title*/

.content .box .title{
  text-align: center;
}

.content .box .title h2 {
  font-family: 'Lee Toscanini3', sans-serif;
  font-size: 3vw;
}

/*Paragraphe*/
.content .box p {
  line-height: 30px;
  text-align: justify;
  padding: 20px;
}

/*50% Twin Columns*/
.content .box .colflex{
  display: flex;
  flex-wrap: nowrap;
}

.content .box .colflex p{
  width: 50%;
  text-align: center;
  font-family: 'Lee Toscanini3', sans-serif;
  font-weight: 900;
}

.content .box .colflex p.full{
  width: 100%;
}

/*Pictograms*/
#pictogram {
  height: 150px;
}

#pictogram .row{
  flex-wrap: nowrap;
  justify-content: space-around;
  height: 100%;
}

#pictogram .row img{
  margin: 20px;
  width: 100%;
}



@media screen and (max-width: 1000px) {
  body.scrolledesk .content{
    width: 88%;
  }
  .content .row .box {
    font-size: 2vw;
  }
  .content .box .colflex {
    flex-wrap: wrap;
  }
  .content .box .colflex p {
    width: 100%;
  }

  .box.presentation h2 {
    -webkit-text-stroke: 1px var(--darkgreen);
  }

}

@media screen and (max-width: 900px) {
  body.scrolledesk .content{
    width: 87%;
  }
}

@media screen and (max-width: 800px) {
  body.scrolledesk .content{
    width: 85%;
  }
  .content .box .deduct {
    font-size: 2.9vw;
  }

  .box.presentation h2 {
    font-size: 5.5vw;
  }
  
  header#headtop::before,
  header#headtop::after {
    top: 120px;
    right: -120px;
    width: 220px;
    height: 220px;
  }
  .content .box .title h2 {
    font-size: 8vw;
  }
  
}

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

  body .content{
    width: 100%;
  }

  .content .row .box {
    font-size: 3vw;
  }

  .content .box .deduct {
    font-size: 3.5vw;
  }

  body #pres{
    margin-top: 240px;
  }  
  
  body.scrolledesk #pres{
    margin-top: 230px;
  }

  body.scrolledesk .content{
    width: 100%;
  }
  
  body header#home.carousel {
    padding-right: 0 !important;
    padding-top: 0 !important;
  }

  .carousel::after{
    right: 0 !important;
    top: 0px !important;
  }

  body.scrolled header#home.carousel{
    width: 100% !important;
  }

  .box.presentation::before {
    z-index: -2;
  }

  #pictogram {
    display: none;
  }

  body.scrolledesk{
    margin-top: 70px !important;
  }

  .box.presentation {
    margin-top: 200px;
  }

  
  header#headtop.fixed::after,
  header#headtop.fixed::before {
    right: -120px;
  }

  body.scrolled {
    margin-top: 125px;
  }

  .content .row {
    flex-direction: column;
  }

  .box#schem::after {
    display: none;
  }
  
  .servicelist table tbody tr {
    flex-direction: column;
    align-items: center;
  }

  .servicelist table tbody tr td {
    width: 70%;
  }
  .box.presentation h1 {
    font-size: 5vw;
  }

}

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

  header#headtop::before,
  header#headtop::after {
    display: none;
  }

  body {
    min-width: 325px;
  }
}