
    body {
        background-color: #E3EAED;
        font-family: Arial, Helvetica, sans-serif;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; 
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; 
        min-height: 100vh; /* toute la hauteur du viewport (compatible IE9+) */
        margin:0;
        padding:0;
        color: #232323;
        font-family: Arial, Helvetica, sans-serif;
       }


   

    header,footer,.main, .footer-top{
        background:#fff;
        padding-left:16px;
        padding-right:16px;
        padding-top:0;
        padding-bottom:8px;
        margin:0;
        width: 1024px;
        margin-left:auto;
        margin-right:auto
    }
   
    .no{
        /*display:none*/
    }

   

	.main{
        display: block; /* IE fix */
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto; /* occupe la hauteur restante */
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; /* crée un contexte flex pour ses enfants */
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction:column
        
		}

    .container{
        display:flex;
        flex-direction:row;
        padding:0;
        margin:0
    }

    .btn{
    background:rgba(0, 0, 0, 0.25);
    color:#000;
    display: inline-block;
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    user-select: none;
    border: 1px solid transparent;
    padding: .5rem 1rem;
    font-size: 1.25rem;
    border-radius: .25rem;
    text-decoration:none
       
    }


    .btn-delete{
        background-color:#f00;
        color:#fff;
        width:auto;

    }

    button:disabled{
        opacity: 0.2;
        cursor: not-allowed;
    }

    .btn-save:after{
       padding-left:10px;
       content:"\1F5AB";
       

    }

   .input-file-img{
       color:transparent

   }

    .input-file-img:after,.btn-duplicate:after{
        padding-left:10px !important;
        content:"\1F4F8" !important;
        color:#000
    }

    .btn-delete:after{
       padding-left:10px !important;
       content:"\1F5D1" !important
        
    }

    .list-contact{
       
        padding:0
    }

    .list-contact li{
        list-style:none;
        list-style:none;
        padding-bottom:10px
    }

    .list-contact .btn{
        color:#fff;
        background:#587b8c
    }
    .list-contact a{
        margin-right:10px
    }

    /*.more{
        flex:1;
        margin-top: 62px;
    }

    .more aside{
        padding: 8px;
        margin: 0;
        margin-bottom: 12px;
    }
    .content{
        flex:2;
        margin-right:8px
    }
    
	.breadcrumb{
        display:flex;
		margin: 0; 
        padding: 0;
		justify-content: flex-start;
        list-style:none;
        background-color: #587b8c;
        font-family: 'din_regularregular', Arial, Helvetica, sans-serif;
        padding-top:8px;
        padding-bottom:8px
        
    }
	.breadcrumb li{
		margin-right:10px; 
		 
		}
	.breadcrumb a{
        color:#fff;
        text-decoration:none
	}*/
    nav{
		width:100%;
		margin: 0; padding: 0; 
		display:flex;
		justify-content: space-around;
		}


    /*nav div{
		color: #fff; 
        margin:0;
        padding:0

    }*/
    
    .footer-top{
        background-color: #8CA9B7;
    font-size: 1.4em;
    padding: 16px;
    display:flex;
    color:#fff;
    font-size:14px;
    font-family:'din__bold_bold', Arial, Helvetica, sans-serif;
    }

    .footer-top div{

        flex:1;
        display:flex;
        flex-direction:column
    
    }

    .footer-top div:nth-child(2) {
        align-items:flex-end
        }
    
    .footer-top ul{
        display:flex;
        list-style:none;
        margin:0;
        padding:0
    }


    .footer-top a{

        text-decoration:none;
        color:#fff;
    }

    footer {
        background:#587b8c;
        
        }

	footer nav{
		justify-content: flex-end;
        padding: 10px 0 0 0;   
		}

    footer nav div:nth-child(1){

        align-items:flex-start;
        flex:1

    }

    footer nav div:not(:first-child){
        padding-left:20px
    }



    footer a{
        color:#fff;
        text-decoration:none;
        line-height: 200%;
        font-family: 'din__bold_bold', Arial, Helvetica, sans-serif;
    }

    footer a:nth-child(1){
        padding:0
    }


    /*.icon2-google-plus, .icon2-facebook, .icon2-twitter, .icon2-feed, .icon2-youtube, .icon2-flickr {
    display: inline-block;
    width: 28px;
    height: 28px;
    background-image: url(../img/social.png);
    background-repeat: no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.icon2-feed {
    background-position: -168px 0;
}

.icon2-youtube {
    background-position: -224px 0;
}

.icon2-flickr {
    background-position: -280px 0;
}

.icon2-twitter {
    background-position: -112px 0;
}

.icon2-google-plus {
    background-position: 0 0;
}

.icon2-facebook {
    background-position: -56px 0;
}*/  

.footer-top li {
    margin-right: 15px;
    width: 28px;
}


    header{
        display:flex;
        flex-direction: column;
        align-items: stretch;
       }
    
    header section{        
        display:flex
        }


    header section:nth-child(1){
        align-self:flex-end;
        border-bottom:solid 1px #587b8c;
        margin:0;
        padding:0;
        margin-bottom:15px;
        margin-top:10px;
       
       
    }

   
            
    
   header ul{
        display:flex;
        list-style:none;
        margin:0;
        padding:0 
        
    }
    header li{
        padding:0;
        margin:0;
       padding-left:20px;
       
    }

    /*header nav div:not(:first-child){
        padding-top:20px;
        
    }*/

     header nav div:first-child{
         padding-right:40px;
     }
    header nav div:not(:first-child){   
        padding-top:20px;
        border-left:solid 1px #587b8c;
        padding-left:10px;
        vertical-align:bottom;
        flex:1
	}
     header nav div:nth-child(3){
         border-left:0
     }

    header nav a{
        text-decoration:none;
        color:#587b8c;
        font-size: 1.4em;

    }

    /* gestion des aside*/

    /*.childs ul{
        display:flex;
        flex-direction:column;
        width:100%;
        list-style:none;
        margin:0;
        padding:0
    }

    .childs li{
     background:#587b8c;
     padding: 4px 0 4px 4px;
     margin-bottom:10px;
    
    }
    .childs li:hover{
          opacity:0.6
    }

    .childs a{
        text-decoration:none;
    color: #fff;
    padding: 6px 25px 6px 8px;
    margin-right: 4px;
    display: block;
       background: url(../img/fleche-sous-menu.jpg) right center no-repeat;
      
    }*/


    /*.childs a:after{
        color:#fff;
        content:\002794;
    }*/
        
    /*.blocks{
       
        background-color: #587b8c;
        color:#fff;
        margin-bottom:12px;
    }

    .block-pad{
       
       opacity:0.3;
        
    }


    .blocks div,blocks h2,.blocks ul, .blocks li{
        margin:0;
        padding:0;
    }

    .blocks h2{
     color:   #232323;
    font-family: "Times New Roman", Times, serif;
    font-weight: normal;
    line-height: 80%;
    }

     .blocks li{
             margin-bottom: 8px;
           
     }

    .blocks li a{
        text-decoration:none;
        color:#fff;
        line-height: 120%;
    display: block;
    padding: 0 0 0 20px;
    margin-bottom: 5px;
}
    }

     .blocks ul{
       list-style:none;
   }

    
   .block-pad a{
      
        color:#000 !important;
        text-decoration:none;
     
    }

  
   .documents{
       margin:0;
       padding:0;
   }
   .documents ul{
        list-style:none;
        width:100%;
        margin:0;
        padding:0
   }
   .documents li{
       display:flex;
       flex-direction:row;
       padding: 16px;
   }

   .documents li:nth-child(even){
       background:#E3EAED
   }

   .documents li:nth-child(odd){
       background:#B7C9D2
   }
    .documents h2{
      margin:0;
      padding:0
   }
   
   .documents span:first-child{
       flex:2
   }
    .documents span:not(:first-child){
       flex:1
   }

	.photos div{
		display:flex;

	}

	.photo-all{
        margin:0;
	color: #587b8c;
    padding: 25px 30px 0 0;
    margin-right: 2px;
    font-weight: bold;
    vertical-align: bottom;
    align-items:flex-end
	}

   
   .photos h2{
       font-family: "Times New Roman", Times, serif;
       flex:1
   }
   .photos ul{
	    background-color: #E3EAED;
        padding: 16px;
	    list-style:none;
        margin:0;
        display:flex
   }
   
   .photos li{
        display:none;
   }

   
   .photos li:nth-child(-n+4){
        display:inline-flex;
        margin-right:8px;
       
   }

    .photos a{
        text-decoration:none;
    }

    .photos img{
        max-height: 97px;
    }*/

  

 .bt-menu, .bt-menu-close{
      background-color:transparent;
      border:none;
      cursor:pointer;
      -webkit-transform:translateY(-50%);
      -moz-transform:translateY(-50%);
      -o-transform:translateY(-50%);
      -ms-transform:translateY(-50%);
      transform:translateY(-50%);
      z-index:1002;
      display:none
 }

 header nav div:nth-child(2){
     display:none;
     margin:0;
     padding:0
 }

 
header a svg{
    width:298px;
    height:43px
}


/* resultat de recherche*/
/*.result article{
    display:flex;
    padding-bottom:8px;
    padding-top:8px;
    border-bottom:1px solid #B7C9D2;
}*/


/*.result div:first-child{}*/

/*.result picture{
    display:flex;
    margin: auto;
    margin-right:8px;
    background:#8CA9B7;
    flex: 0 0 120px;
    height:120px;
    justify-content: center;
    align-items: center;
  
}

.result h2 {
    padding-top:0;
    font-size:18px;
    margin-top:0  
}

.result a{
    color:#587b8c;
}

.pager-bar{
    display:flex;
   
    font-weight:bold;
    color:#587b8c;
    font-size:14px;
    justify-content:flex-end;

}*/
/** taille image*/
/*figure{
  max-width: 100%;
}

figcaption {
    display:none
}

figure img{
    margin:0;
    padding:0
}*/

.top {
     border-bottom:1px solid #8CA9B7;
}


/*.pager-bar span:first-child{
    flex:1;
    padding: 8px 0;
}

.pager-bar span:not(:first-child){
    background: #E3EAED;
    cursor:pointer;
    padding:8px;
}*/


/* modal*/

.modal-background {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: white;
        opacity: .50;
        -webkit-opacity: .5;
        -moz-opacity: .5;
        filter: alpha(opacity=50);
        z-index: 1010;
    }
    
    .modal-content {
        background-color: white;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        box-shadow: 0 0 20px 0 #222;
        -webkit-box-shadow: 0 0 20px 0 #222;
        -moz-box-shadow: 0 0 20px 0 #222;
        display: none;
        height: 240px;
        left: 50%;
        margin: -120px 0 0 -160px;
        padding: 10px;
        position: absolute;
        top: 50%;
        width: 320px;
        z-index: 1010;
    }

    .modal-open,.modal-close{
        cursor:pointer;
    }
    .modal-background.active, .modal-content.active {
        display: block;
    }
/**bouton de retour*/

#cRetour{
  border-radius:3px;
  padding:10px;
  font-size:15px;
  text-align:center;
  color:#fff;
  background:rgba(0, 0, 0, 0.25);
  position:fixed;
  right:20px;
  opacity:1;
  z-index:9999;
  transition:all ease-in 0.2s;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

#cRetour:before{ content: '\25b2'; }

#cRetour:hover{
  background:rgba(0, 0, 0, 1);
  transition:all ease-in 0.2s;
}
#cRetour.cInvisible{
  bottom:-35px;
  opacity:0;
  transition:all ease-in 0.5s;
}

#cRetour.cVisible{
  bottom:20px;
  opacity:1;
}

/** fin modal*/

/*.subscription-details{
    display:none
}*/

/*actu grid*/

/*.grid{

    display: grid;
  grid-template-columns: 25% 25% 25% 25%;
  /*grid-template-rows: 400px 400px 400px 400px;*/ 
  grid-column-gap: 0;
  grid-row-gap: 0;
  grid-auto-flow: row;
}

.grid div{
    padding: 10px;
    border-left: solid #B7C9D2 1px;
    border-bottom: solid #B7C9D2 1px;
    min-height:230px;
    height:230px;
    margin:0
}
.grid h2{
  font-size:15px
}


.grid a{
    color:#52798C;

}*/
/**home*/

.home{
    display:flex;
    flex-direction:column;
    flex-grow:initial;
    align-content:flex-start
}


.home-actu{
    position:relative;
    float:left;
    width:100%;
    margin:0 auto;
    background:#8CA9B7;

}
.home-actu .rslides{
    list-style:none;
    margin: 0;

}

.home-actu .rslides li {
    margin:0;
    padding:0;
    }

.home h1{
   position:absolute;
   top:10px;
   z-index:104;
   background:#587b8c;
   padding:16px;
   color:#fff;
   width:340px;
   margin:0;
   padding-bottom:0;
}

.home-actu h2{
   position:absolute;
   top:48px;
   z-index:105;
    background:#587b8c;
   padding:16px;
   width:340px;
    margin:0;
    padding-top:0
}

.home-actu >a{
    bottom:0;
    right:0;
    position:absolute;
    background:#fff;
    color:#587b8c;
    font-size:1.2em;
    text-decoration:none;
    padding:8px;
    margin:0;
    z-index:102;
}

.home-actu h2 a{
    color:#000;
    font-size:0.7em;
    z-index:200;  
     
}
.home-actu picture{
 margin:0;
 padding:0;
 text-align:left
}

/*.home-actu source{
  
}*/



.home-ps,.home-pp{
    display:flex;
    align-content:flex-start;
   

}

.home-pp a{
    flex:1;
    background:#587b8c;
 
}

.home-pp a {
    color:#fff;
    text-decoration:none;
    margin:0;
    padding-left:12px;
    padding-top:12px;
}


.home-pp a:not(:first-child), .home-ps h4:not(:first-child){
   margin-left:12px
}
.home-pp h3{
    height:50px;
    margin:0;
    padding: 15px 0 15px 15px;
    font-size: 1.3em;
    text-align:center
}

.home-ps h4 {
    flex:1;
    border: solid 2px #587b8c;
    padding:8px;
    margin-top:16px;
    height:50px
}


.home-ps a{
    margin:auto;
    text-decoration:none;
    color:#587b8c
}

.home-ps h4:nth-child(2){
    border-color:#9CC118
}

.home-ps h4:nth-child(2) a {
    color:#9CC118
}

.home-ps h4:nth-child(5){
    border-color:#F5A30C
}

.home-ps h4:nth-child(5) a {
    color:#F5A30C
}

.home-ps h4:nth-child(6){
    border-color:#A41E23
}

.home-ps h4:nth-child(6) a {
    color:#A41E23
}

/**a verifier*/


@media screen and (min-width: 521px) and (max-width:770px){
    .grid{
    grid-template-columns: 33% 33% 34%; 
}

    .home-actu h1{
        display:none;
    }

    .home-actu h2{
       
        top:10px;
        width:auto;
        font-size:1.2em;
        max-width:240px;
    }

      .home-actu h2 a{
       
       color:#fff
    }
    .home-pp{
        display:grid;
        grid-template-columns: 50% 50%;
        grid-auto-flow: row;
        grid-column-gap: 0;
         grid-row-gap: 0;
    }

    .home-pp div{
        position:relative;
        display:flex;
        flex-direction:row;
      
        

    }

        .home-pp div, .home-ps h4{
            margin-left:5px;
            margin-top:2.5px;
        }

    .home-pp div:not(:first-child), .home-ps h4:not(:first-child){
   margin-left:5px
}
    
        .home-pp h3{
       padding-right:170px;
       height:63px;
       font-size:1em
    }

    .home-pp picture{
        position:absolute;
        right:0
    }
     .home-ps{
        display:grid;
        grid-template-columns: 33.33% 33.33% 33.34%;
         grid-auto-flow: row;
          grid-column-gap: 0;
         grid-row-gap: 0;
    }


}

@media screen and (max-width: 519px){
    .grid{
        grid-template-columns:  100% ;
        }

    .home-actu h1{
        display:none;
    }

    .home-actu h2{
        top:10px;
        width:auto;
        font-size:1.2em;
        max-width:240px;
    }

        .home-actu h2 a{
       
       color:#fff
    }

        .home-pp{
        display:flex;
        flex-direction:column;
      
    }
            .home-ps{
        display:flex;
        flex-direction:column;
        
    }

            .home-pp div{
        position:relative;
        display:flex;
        flex-direction:row;
    }

              .home-pp div, .home-ps h4{
            margin-left:5px;
            margin-right:5px;
             margin-top:2.5px;
        }

    .home-pp div:not(:first-child), .home-ps h4:not(:first-child){
   margin-left:5px;
   margin-right:5px
}

        .home-pp h3{
       padding-right:180px;
       height:63px;
       font-size:1.1em
    }

    .home-pp picture{
        position:absolute;
        right:0
    }
}

/*@media screen and (max-width: 340px){
    .result picture{
        width:0;
        height:0;
        flex:0
    }

}*/


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

/*.result article{
flex-direction:column;    
    
}*/

.top{
    border:0
}

/*.pager-bar{
    flex-direction:column;
    justify-content:center;
    text-align: center;
}

.pager-bar span{
    border-bottom:solid 1px #8CA9B7;
}*/


}

@media screen and (max-width: 1024px) {
    body{
        background:#fff;
    }
  header,footer,.main, .footer-top{
     width:100%;
      padding:0;
    margin:0;
      
  }

  .main{
      margin-top:50px;
  }
    .breadcrumb, .footer-top>*{
        margin:5px
    }
   .container{
        flex-direction:column;
        margin:5px
    }

   /*.more{
       flex:1;
       margin-top:0
   }

   .content{
       flex:1;
       margin-right:0
   }*/

   header{
       
        flex-direction: row;
        padding-top:8px;
        position:fixed;
        top:0;
        z-index:1001;
        
       }

   header nav{

       justify-content:initial
   }
    header section:nth-child(1){
      
       display:none
    }

    header section:nth-child(2){
      
    height:45px
    }


    header nav div:not(:first-child) {
        display:none;
        flex:1
    
}
  header nav a:first-child{
      padding:0;
      margin:0;
      
  }

        header nav div:first-child {

            display:flex;
            flex-direction:row;
            padding-right:0;
            margin:0;
        }


   header nav,  .footer-top div, .footer-top{
       flex-direction:column
   }

   footer nav{
       flex-direction:column-reverse
   }
   .footer-top div:nth-child(2){
       align-items:flex-start
   }

 .bt-menu{
     display:block;
     padding-top:15px
 }
.bt-menu svg{
    width:45px;
    height:45px;
    fill:#587b8c}

.bt-menu-close{
    display:block;
         padding-top:35px;
         padding-left:12px;
         padding-bottom:0px;
         height:52px

}
.bt-menu-close svg{
    width: 42px;
    height: 36px;
    fill:#fff;
    margin:0;
    padding:0;
    
   
}

.sidebar:hover svg{
   
    fill:#587b8c;
    margin:0;
    padding:0
}

header a svg{
    width:242px;
    height:35px
}

.sidebar{
    z-index:1014;
    background-color:#fff;
    display:block !important;
    margin:0;
    background:#587b8c;
    padding: 0; 
    border: 0; 
    vertical-align:auto;
    border-top:1px solid #fff;
    padding-bottom:10px;
    position:relative;
    top:-10px
    

}
.sidebar:hover{
    background:#fff;
}

.sidebar a{
    color:#fff;
}

.sidebar:hover a{
    color:#587b8c;
}


/*.photos li{
        display:none;
   }

   
   .photos ul:nth-child(-n+2){
        display:inline-block;
        margin-right:8px;
       
   }*/
}

.main .input-group {
    display:flex;
    flex-direction: column;
}
.main label{
    display: block;
    width:100%;
    font-size:1.25em;
    padding-bottom:16px
}

    .main div:not(:first-child) {

        padding-top:16px
    }

    .main .button-submit{

        
        margin-top:16px
    }

.main table {
    width:100%;
}
.main thead {
background:#587b8c;
color:#fff;
text-transform: uppercase;
font-weight:bold


}

.main tbody tr:nth-child(2n) {
background:#B7C9D2;

}

.main td {
    padding:4px
}

.main input, .main select, .main button{

    font-size:1.125em;
    padding:4px;
}

.main h1, .main h2{
    margin-top:12px;
    margin-bottom:0

}

.ui-selected {
    background-color: #f00 !important;
    color:#fff !important;
    font-weight:bold
}