html,body{
  height:100%;
}

a:focus {outline: 0;}
a:active {outline: 0;}

body{
  font-family: "Circular";
  color: #ff0033;
  font-weight: bold;
}

body.inverted{
  color: #ffffff;
  background-color: #ff0033;
}

a{
  color: #ff0033;
  text-decoration: underline;
}
a:hover,
a:focus,
a:active{
  color: #ff0033;
  text-decoration:none;
}

.inverted a,
.inverted a:hover,
.inverted a:focus,
.inverted a:active
{
  color: #ffffff;
}

.mobile-header{
  display: none;
}

.sidebar{
  margin-left: 0;
  padding-left: 0;
  padding-right: 0;
  bottom: 0;
  width:22vw;
}

.sidebar ul,
.sidebar li{
  list-style: none;
  margin:0;
  padding: 0;
}

.sidebar .home-link{
  display: block;
  height: 30.05vw;/*29.68vw;*/ /*37.10vw;*/
  background-color: #fff;
  background-image: url(../img/affiche-bi-trimmed.png);
  background-size: 200% 100%;
}

.inverted .sidebar .home-link{
  background-position: center right;
  background-color: #f03;
}

.sidebar .home-link a{
  color:#f03;;
}
.inverted .sidebar .home-link a{
  color:#fff;
}

.homepage .sidebar .home-link a,
.en-homepage .sidebar .home-link a
{
  color:#fff;
}
.inverted.homepage .sidebar .home-link a,
.inverted.en-homepage .sidebar .home-link a{
  color:#f03;
}


.sidebar .home-link a{
  display: block;
  height:100%;
  width:100%;
}

.homepage .sidebar .home-link,
.en-homepage .sidebar .home-link{
  /*display: none;*/
  background-image: none;
}

.homepage .sidebar,
.en-homepage .sidebar{
  display: none;
}

.sidebar .corporate-page{
  font-size: 1vw;
}

.sidebar .main-page{
  width:90%;
  margin-left: 5%;
  height:37px;
  line-height: 44px;
  vertical-align: bottom;
  font-size: 1.86vw;
  border-bottom: 2px solid #f03;
}

.sidebar .main-page.with-submenu{
  height:auto;
}

.inverted .sidebar .main-page{
  border-bottom: 2px solid #fff;
}

.sidebar .main-page a{
  text-decoration: none;
}

.sidebar .sub-page{
  /*background-color: yellow;*/
  font-size: 1.5vw;
  height:25px;
  line-height: 10px;
  margin-left: 1vw;
}

.sidebar .social-btns{
  margin-top: 16px;
}
.sidebar .social-btn-wrapper{
  display: inline-block;
}

.sidebar{
  /*background-color: yellow;*/
}

.sidebar .corporate-pages{
  margin-top: 10px;
 text-align: center;
}
.sidebar .corporate-pages li{
  display: inline-block;
  margin-right:10px;
}


/*****
 * SOCIAL BUTTONS
 *****/

.social-btn{
  display: inline-block;
  width:3.2vw;
  height:3.2vw;
  background-color: white;
  border-radius: 255px;
  background-position: center;
  background-size: 100%;
}
.social-btn-wrapper:not(:last-child){
  margin-right: 2.1vw;
}
.social-btn-wrapper:first-child{
  margin-left: 1.0vw;
}

.social-btn{
  background-color: #ff0033;
}

.inverted .social-btn{
  background-color: #ffffff;
}

.social-btn.facebook{
  background-image: url(../img/facebook-white.png);
}
.social-btn.twitter{
  background-image: url(../img/twitter-white.png);
}
.social-btn.vimeo{
  background-image: url(../img/vimeo-white.png);
}
.social-btn.mail{
  background-image: url(../img/mail-white.png);
}
.inverted .social-btn.facebook{
  background-image: url(../img/facebook-red.png);
}
.inverted .social-btn.twitter{
  background-image: url(../img/twitter-red.png);
}
.inverted .social-btn.vimeo{
  background-image: url(../img/vimeo-red.png);
}
.inverted .social-btn.mail{
  background-image: url(../img/mail-red.png);
}

/*****
 * cadre
 *****/

.cadre{
  background-image:url(../img/cadre-red.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.cadre.full{
  background-image:url(../img/cadre-red-full.svg);
}
.inverted .cadre{
  background-image:url(../img/cadre-white.svg);
}
.inverted .cadre.full{
  background-image:url(../img/cadre-white-full.svg);
}

/*****
 * button
 *****/
 
.btn-ilt{
text-decoration: none;
background-color: #f03;
border-radius: 10px;
color:#fff;
font-size: 16px;
padding-left: 20px;
padding-right: 20px;
line-height: 9px;
}
.btn-ilt:hover,
.btn-ilt:focus,
.btn-ilt:active{
  color:#fff;
}

.inverted .btn-ilt{
  color:#f03;
  background-color: #fff;
}
.inverted .btn-ilt:hover,
.inverted .btn-ilt:focus,
.inverted .btn-ilt:active{
  color:#f03;
}


div[role="content"]{
    padding-bottom: 60px;
}

/*****
 * Programme
 *****/

.programme-content{
padding-left:30px;
}

.programme-content .programme-day .programme-day-title{
display: block;
height:300px;
line-height: 280px;
font-size: 44px;
width:110%;
padding-left: 4.2vw;
}

.programme-content .programme-day.day1{
margin-left: 0%;
}
.programme-content .programme-day.day2,
.programme-content .programme-day.day3,
.programme-content .programme-day.day4
{
margin-left: -5%;
}
.programme-content .programme-day.day2 .programme-day-title
{
margin-left: -5%;
}
.programme-content .programme-day.day3 .programme-day-title{
margin-left: -10%;
}
.programme-content .programme-day.day4 .programme-day-title{
margin-left: -15%;
}

.programme-content .programme-day .day-events{
width:80%;
}
.programme-content  .event{
text-decoration: none;
display: block;
margin-bottom: 20px;
}
.programme-content .event .event-period{
font-size: 14px;
line-height: 13px;
}
.programme-content .event .event-title{
font-size: 17px;
line-height: 18px;
margin-top: 5px;
margin-bottom: 5px;
}
.programme-content .event .event-type{
font-size: 14px;
line-height: 16px;
}

.programme-content .event-body{
font-size: 14px;
/*text-align: justify;*/
}

.programme-content .event-book,
.programme-content .event-back{
margin-top: 15px;
margin-bottom: 20px;
}


.day1oct{
  left:0px;
}
.day2oct{
  left:13.1vw;
}
.day3oct{
  left:27.8vw;
}
.day4oct{
  left:42.3vw;
}

/*****
 * EXPO
 *****/

  
.project-content{
  padding-left:30px;
  margin-top: 20px;
}
.project-list{
  margin-top: 20px;
  max-height: 62vw;
  display: block;
  overflow-y: hidden;
  padding-left: 30px;
}

.project-row:nth-child(2){
  position: relative;
  top: -6vw;
  clear:both;
}
.project-row:nth-child(3){
  position: relative;
  top: -12vw;
  clear:both;
}
.project-row:nth-child(4){
  position: relative;
  top: -18vw;
  clear:both;
}
.project-row:nth-child(5){
  position: relative;
  top: -24vw;
  clear:both;
}

.clear{
  clear:both;
}

.project-row.offset-row{
  margin-left: 0%;
}

.project-item{
  display: block;
  height:20vw;
  text-decoration: none;
  margin-left:2.5vw;
  padding-top: 6.5vw;
  width:12vw;
}
.project-item .project-title{
  font-size: 1.8vw;
  line-height: 1.8vw;
}
.project-item .project-origin{
  font-size: 1.2vw;
  line-height: 1.5vw;
}
.project-item .project-authors{
  font-size: 1.2vw;
  line-height: 1.2vw;
}

.expo-title{
  font-size: 22px;
  border-bottom: 3px solid #ff0033;
  line-height: 30px;
}
.inverted .expo-title{
  border-bottom-color: #fff;
}
.expo-body{
  font-size: 15px;
  text-align: justify;
}

.project-body{
  margin-top: 5vw;
}

.expo-content{
  padding-left:30px;
}

.mainexpo-word-wrapper{
  background-color: #ff0033;
  color:#fff;
  margin-left: -30px;
  margin-right: -40px;
  padding:30px;
  display: none;
  height: 30.05vw;
}
.inverted .mainexpo-word-wrapper{
  background-color: #fff;
  color:#ff0033;
}

.mainexpo-word-wrapper{
  /*position:absolute;*/
  z-index:2000;
}

.mainexpo-edito-wrapper{
  /*position:absolute;*/
  right:10vw;
  top:3vw;
  z-index:1999;
}
.mainexpo-edito{
  font-size: 22px;
}

.expo-content .mainexpo-word-wrapper .close{
  width:25px;
  height:25px;
  background-image: url(../img/close-white.png);
  opacity: 1;
  background-repeat: no-repeat;
}

.inverted .expo-content .mainexpo-word-wrapper .close{
  background-image: url(../img/close-red.png);
}


/****
 * PAGES
 ****/

.large-content .page-body{
  margin-top: 30vh;
  text-align: justify;
}

.infos-contact h2{
  text-decoration: underline;
  font-size: 22px;
}

.infos-contact p{
  line-height: 16px;
}

.plan-gaite{
  display: block;
  width:100%;
  height:600px;
  background-image: url(../img/plan-red.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.inverted .plan-gaite{
  background-image: url(../img/plan-white.png);
}


/****
 * HOME
 ****/

.home-splash{
  height:1000px;
  max-height: 100%;
  
  background-image: url(../img/affiche-white.png);
  background-color: #fff;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  padding: 0;
  margin: 0;
}
.inverted .home-splash{
  background-image: url(../img/affiche-red.png);
  background-color: #f03;
}

.home-splash .full-click{
  position:absolute;
  height:100%;
  width:100%;
  /*background-color: yellow;*/
}

.language_switch{
  position: absolute;
  right:2vw;
  top: 2vw;
  font-size: 40px;
  z-index: 300;
}
 
/****
 * ARCHIVES
 ****/

.archive-content .year{
  display: block;
  height:20vw;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 40px;
}

.archive-content .year.year2012{
  background-image: url(../img/year-2012-red.svg);
}
.archive-content .year.year2013{
  background-image: url(../img/year-2013-red.svg);
}
.archive-content .year.year2014{
  background-image: url(../img/year-2014-red.svg);
}
.inverted .archive-content .year.year2012{
  background-image: url(../img/year-2012-white.svg);
}
.inverted .archive-content .year.year2013{
  background-image: url(../img/year-2013-white.svg);
}
.inverted .archive-content .year.year2014{
  background-image: url(../img/year-2014-white.svg);
}

.archive-content .row2012{
  margin-top: 8vw;
}
.archive-content .row2013{
  margin-top:-15vw;
}
.archive-content .row2014{
  margin-top:-15vw;
}

.archive-content .row a{
  padding-left: 3vw;
}


/***
 * PARTENAIRE
 ***/
.partenaires-page .partner-logo{
  max-height: 20vh;
  display: inline-block;
  margin-right:1vw;
}

.row.partenaires,
.row.formations
{
  margin-top: 4vh;
  text-align: center;
}

.row.partenaires.row1 .partner-logo:first-child{
  margin-left: 1vw;
}

.row.partenaires.row2 .partner-logo{
  margin-right:2vw;
}
.row.partenaires.row2 .partner-logo:first-child{
  margin-left: 2vw;
}

.row.partenaires.row3 .partner-logo{
  margin-right:2vw;
}
.row.partenaires.row3 .partner-logo:first-child{
  margin-left: 2vw;
}

.row.formations.row1 .partner-logo{
  margin-right:3vw;
}
.row.formations.row1 .partner-logo:first-child{
  margin-left: 3vw;
}
.row.formations.row2 .partner-logo{
  margin-top:3vw;
  margin-right:3vw;
}
.row.formations.row2 .partner-logo:first-child{
  margin-left: 3vw;
}
.row.formations.row3 .partner-logo{
  margin-right:5vw;
}
.row.formations.row2 .partner-logo:first-child{
  margin-left: 5vw;
}


/***
 * RESPONSIVE
 ***/

@media (max-width: 992px){

  .mobile-header{
    display: block;
    position: fixed;
    top:0;
    left:0;
    right:0;
    height:11vh;
    background-color: #fff;
    padding-top: 15px;
    z-index: 2000;
  }

  .inverted .mobile-header{
    background-color: #f03;
  }

  .hamburger{
    display: block;
    position: fixed;
    left: 15px;
    top: 6vw;
    width: 30px;
    height: 30px;
    margin-top: 0px;
    background-image: url(../img/hamburger-red.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1000;
  }

  div[role="content"]{
    margin-top: 12vh;
    padding-bottom: 30px;
  }
  .inverted .hamburger{
    background-image: url(../img/hamburger-white.png);
  }
  .sidebar{
    position: fixed;
    top:0;
    height: 100%;
    width:100%;
    transform: translate(-100%, 0%);
    -webkit-transform: translate(-100%, 0%);
    z-index: 999;
    transition: transform 0.5s ease-in;
    -webkit-transition: -webkit-transform 0.5s ease-in;
    background-color: #fff;
    padding-top: 50px;
  }
  .inverted .sidebar{
    background-color: #f03;
  }
  .sidebar.opened{
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
  }

  .sidebar .home-link{
    display:none;
  }
  .sidebar .main-page{
    width:90%;
    margin-left: 5%;
    height:52px;
    line-height: 70px;
    font-size: 25px;
    border-bottom: 2px solid #f03;
  }

  .sidebar .main-page.with-submenu{
    height:auto;
  }

  .sidebar .sub-page{
  /*background-color: yellow;*/
    /*height:4px;*/
    /*line-height: 86px;*/
    font-size: 17px;
    margin-left: 10vw;
  }

  .sidebar .corporate-page{
    font-size: 2.7vh;
    margin-top: 19px;
  }

  .sidebar .corporate-pages li{
    margin-right: 5px;
  }

  .sidebar .social-btns{
    display: none;
  }


  .mobile-header ul,
  .mobile-header li{
    list-style: none;
    margin:0;
    padding: 0;
  }

  .mobile-header .social-btns{
    margin-left: 18.0vw;
  }

  .mobile-header .social-btn-wrapper{
    display: inline-block;
  }

  .social-btn {
    display: inline-block;
    width: 12vw;
    height: 12vw;
  }

  .social-btn-wrapper:not(:last-child){
    margin-right: 9.0vw;
  }
  .social-btn-wrapper:first-child{
    margin-left: 0vw;
  }

  /*****
   * Programme
   *****/
  .programme-content .programme-day .programme-day-title{
    display: block;
    text-align: center;
    height:40vh;
    line-height: 40vh;
    font-size: 30px;
    width:100%;
    padding-left: 0vw;
  }

  .programme-content .programme-day.day1,
  .programme-content .programme-day.day2,
  .programme-content .programme-day.day3,
  .programme-content .programme-day.day4,
  .programme-content .programme-day.day2 .programme-day-title,
  .programme-content .programme-day.day3 .programme-day-title,
  .programme-content .programme-day.day4 .programme-day-title{
    margin-left: 0%;
  }
  .programme-content .programme-day .day-events{
    margin-left:15%;
  }

  .day1oct,
  .day2oct,
  .day3oct,
  .day4oct
  {
    left:0px;
  }

  .mainexpo-edito-wrapper{
    top:60px;
  }

  .project-content{
    padding-left:30px;
  }
  .project-list{
    margin-top: 0px;
    /*padding-top: 80px;*/
  }

  .project-item-wrapper{
    width:40vh;
  }
  .project-item-wrapper.even{
    /*margin-left: -50px;*/
  }
  .project-item-wrapper.odd{
    margin-left: 50px;
  }

  .project-item{
    display: block;
    height:40vh;
    width:32vh;
    text-decoration: none;
    margin-left:0;
    padding-top: 15vh;
    clear: both;
    margin-top: -10vh;
    padding-left: 10vw;
  }

  .project-item.first-item{
    margin-top: 2vh;
  }
  .project-item .project-title{
    font-size: 20px;
    line-height: 20px;
  }
  .project-item .project-origin{
    font-size: 15px;
    line-height: 15px;
  }
  .project-item .project-authors{
    font-size: 15px;
    line-height: 15px;
  }

  .programme-content .event-book, 
  .programme-content .event-back{
    /*margin-left: 20px;*/
    margin-bottom: 30px;
  }

  .plan-gaite{
    height:400px;
  }

  .expo-content{
    padding-left: 15px;
    margin-top:12vh;
  }

  .archive-content .year{
    height:20vh;
    margin-top:20px;
  }
  .archive-content .row2012,
  .archive-content .row2013,
  .archive-content .row2014{
    margin-top: 0px;
  }

  .large-content .page-body{
    margin-top: 0px;
    text-align: justify;
  }

  .programme-content,
  .archive-content,
  .large-content{
    /*padding-top: 80px;*/
  }

  .mainexpo-word-wrapper{
    height:inherit;
  }

  .archive-content .row{
    text-align: center;
  }
  .archive-content .row a{
    padding-left: 0;
    margin-left: -3vw;
  }
}

/**
 * SPECIFICS
 */

a[name="haikus-interactifs"] .project-origin{
  width: 80%;
}

