/*@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800&display=swap);*/
@import url(https://fonts.googleapis.com/css?family=Roboto:500,900,100,300,700,400&display=swap);
@import url('https://fonts.googleapis.com/css?family=Karla:400,700&display=swap');



/***********************/
/*       General       */
/***********************/



* {
  box-sizing: border-box;
}

body {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 960px;
  min-height: 400px;
  padding: 0;
  margin: 0;
  
  font-family: "Karla", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000;
  
  background-color: #FFF;
  transition: background 2s, color 2s;
}

a {
  color: inherit;
}

.wrapper {
  display: block;
  width: 860px;
  margin: 0 auto;
  padding-bottom: 90px;

  overflow: hidden;
}

.cb {
  clear: both;
}

body.dark {
  background-color: #000;
  color: #EEE;
}

.cookiesPolicy {
  font-size: 13px;
  text-align: justify;
}

.cookiesPolicy h1 {
  margin: 0;
  margin-bottom: 5px;

  font-size: 14px;
  font-weight: bold;
}

.footer {
  display: block;
  width: 860px;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 30px;
  z-index: 0;

  font-size: 10px;
  color: #AAA;
  text-align: left;
}

img {
  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}



/********************/
/*       Home       */
/********************/



.wrapperhome {
  position: absolute;
  margin-top: 0;
  margin-left: -220px;
  width: 440px;
  top: 50%;
  left: 50%;

  text-align: center;
}

.homePannel {
  display: block;
  position: relative;
  margin: 0 auto;
  width: 440px;
  height: 85px;

  border: 0;/*2px solid #000;*/
  cursor: pointer;
  transform: scale(0.8);

  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.homePannel:hover {
  /*transform: scale(0.98);*/
  transform: scale(0.78);
}

.homeTitle {
  display: block;
  position: absolute;
  /*left: 83px;
  top: 28px;
  width: 353px;*/
  width: 100%;

  font-family: "Roboto", sans-serif;
  font-weight: 600;
  font-size: 25px;
  line-height: 85px;
  letter-spacing: .7px;
  white-space: nowrap;
  text-align: center;
}

/*.homeSubtitle {
  display: block;
  padding-left: 4px;

  font-weight: 400;
  letter-spacing: 6px;
}*/

.homeSubtitle {
  font-size: 14px;
  margin-top: -60px;
  opacity: 0.4;
}

.homeLogo {
  display: block;
  position: absolute;
  top: -2px;
  left: -2px;
  width: 85px;
  height: 85px;

  background: url("/img/logo.png");
  background-size: 85px 85px;
  background-repeat: no-repeat;
  background-position: -2px;
  border: 2px solid #000;
}

.homeLanguages {
  margin-top: 20px;
  word-spacing: 40px;

  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.homeLanguage {
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  opacity: 0.5;
}

.homeLanguage:hover {
  opacity: 1;
}



/***********************/
/*       Headers       */
/***********************/



.headers {
  position: relative;
  display: block;
  padding-top: 24px;
  padding-bottom: 10px; /*24px;*/
  padding-left: 10px;/*74px;*/
  margin-bottom: 20px;
}

.headersLogo {
  display: block;
  position: absolute;
  left: 0;
  top: 44px;
  width: 60px;
  height: 60px;

  /*background: url("/img/logo.png");*/
  background-size: 60px 60px;
  background-position: -2px;
  /*border: 2px solid #000;*/
  opacity: 0.05;
  z-index: -1000;
}

.headersLogo::after {
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 350px;
  height: 2px;

  background-color: #000;
  content: "";
}

.headersTitle {
  margin-top: 20px;

  font-family: "Roboto";
  font-weight: 600;
  font-size: 22px;
  letter-spacing: .7px;
  white-space: nowrap;

  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.headersTitleLink {
  text-decoration: none;
}

.headersLanguages {
  position: absolute;
  display: block;
  top: 24px;
  right: 0;

  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  word-spacing: 10px;

  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.headersLanguage {
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  opacity: 0.3;
}

.headersLanguage:hover {
  opacity: 0.6;
}

.navbar {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 4px;

  font-size: 15px;
  font-weight: 400;
  word-spacing: 0;

  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.navbarLink {
  margin-right: 22px;

  text-decoration: none;
  opacity: 0.5;
}

.navbarLink.active {
  opacity: 1 !important;
}

.navbarLink:hover {
  opacity: 1;
}

.mobile-button {
  display: none;
}

.mobile-navbar {
  display: none;
}

.mobile-cache {
  display: none;
}



/*******************/
/*       Bio       */
/*******************/



.wrapperbio {
  font-size: 13px;
}

.bioContent {
  position: relative;
  display: block;
  margin: 0 auto;
  margin-top: 16px;
  height: 521px;
}

.bioPhoto {
  position: relative;
  display: block;
  width: 300px;
  height: calc(1.2121*300px);
  margin-right: 20px;
  margin-bottom: 10px;
  float: left;

  background: url("/img/bioPhoto.jpg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.bioParagraph {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 50px;
  min-height: calc(1.2121*364px);

  text-align: justify;
  font-size: 14px;
}

.paragraphLink {
  font-weight: 600;
  text-decoration: none;
}

.paragraphLink:hover {
  text-decoration: underline;
}

.bioPrix, .bioExpo, .bioParutions {
  position: relative;
  display: block;
  float: right;
  width: calc(50% - 40px);
}

.bioPrix {
  margin-bottom: 40px;
}

.bioExpo {
  float: left;
}

.bioPrixTitle, .bioExpoTitle, .bioParutionsTitle {
  padding-left: 40px;
  font-weight: 700;
  font-size: 19px;
  margin-bottom: 10px;
  font-family: "Roboto";
}

.bioPrixElement, .bioExpoElement, .bioParutionsElement {
  width: 100%;
  margin: 5px 0;
}

.bioPrixDate, .bioExpoDate, .bioParutionsDate {
  float: left;
  width: 40px;
  font-family: "Roboto";

  font-weight: 600;
}

.bioPrixName, .bioExpoName, .bioParutionsName {
  float: right;
  width: calc(100% - 40px);

  text-align: justify;
}

/*.hiddenDate {
  opacity: .1;
}*/



/***********************/
/*       Contact       */
/***********************/



.wrappercontact {
  font-size: 13px;
}

.contactContent {
  position: relative;
  display: block;
  margin: 0 10px;
  margin-top: 16px;
  width: 560px;
  height: 212px;
}

.contactInfo {
  position: absolute;
  display: block;
  width: 400px;
  margin: 0;
  top: 0;
  left: 0;

  text-align: justify;
}

.contactForm {
  position: absolute;
  display: block;
  width: 300px;
  margin: 0;
  top: 0;
  right: 0;

  text-align: justify;
}

.formButton, .formInput {
  display: block;
  width: 100%;
  padding: 5px;

  font-family: inherit;
  font-weight: 400;
  font-size: 13px;

  appearance: none;
  border: 1px solid #DDD;
  outline: none;
}

.formInput {
  margin-bottom: 0px;

  background-color: #fff;
  border-bottom: none;
}

.formTextarea {
  height: 76px;
  min-height: 76px;
  max-height: 167px;
  resize: vertical;
}

.formButton {
  background-color: #EEE;
  cursor: pointer;
}

.formButton:hover {
  background-color: #DDD;
}

.formButton:active {
  background-color: #CCC;
}

.contactRequis {
  margin-bottom: 16px;

  font-size: 12px;
  text-align: right;
  color: #AAA;
}

.linkBar {
  display: block;
  margin-top: 20px;
  margin-bottom: 20px;
}

.linkBarEmail {
  background: url("/img/email.png");
}

.linkBarFacebook {
  background: url("/img/facebook.png");
}

.linkBarLinkedin {
  background: url("/img/linkedin.png");
}

.linkBarLink {
  display: block;
  float: left;
  margin-right: 16px;
  width: 32px;
  height: 32px;

  background-size: 32px 96px;
  background-position: 0px 0px;
  background-repeat: no-repeat;
  border-radius: 50%;
}

.linkBarLink:hover {
  background-position: 0px -32px;
}

.linkBarLink:active {
  background-position: 0px -64px;
}



/***********************/
/*        Works        */
/***********************/



.photoContent {
  margin-top: 0;
  padding: 0 10px;
}

.photoSeries {
  float: left;
  width: 860px;
  margin-left: -10px;
}

.photoSerieStrip {
  position: relative;
  display: block;
  width: 860px;
  height: 160px;
  margin-bottom: 6px;

  overflow: hidden;
}

.serieStripTitle {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 300px;
  padding: 8px 15px;
  padding-left: 10px;

  text-decoration: none;
  color: #000;
  opacity: .95;
  background-color: #fff;
  overflow: hidden;
}

.photoSerieStrip.right .serieStripBackground {
  background-position: -300px top;
}

.photoSerieStrip.right.boite .serieStripBackground {
  background-position: -360px top;
}

.photoSerieStrip.right .serieStripTitle {
  right: 0;
  padding-left: 15px;
  padding-right: 10px;
  text-align: right;
}

.serieStripName {
  font-size: 16px;
  font-family: "Roboto";
  text-transform: lowercase;
  font-weight: 700;
  letter-spacing: 0.2px;
}

.serieStripTitle.boite {
  width: calc(300px*1.2);
}

.serieStripTitle.boite .serieStripName {
  /*font-size: 20px;*/
}

.serieStripDate {
  position: absolute;
  top: 8px;
  left: 10px;
  right: 15px;
  text-align: right;
  font-size: 11.5px;
  line-height: 20px;
  font-weight: 600;
}

.photoSerieStrip.right .serieStripDate {
  left: 15px;
  right: 10px;
  text-align: left;
}

.serieStripDescription {
  display: block;
  margin-top: 4px;

  font-weight: normal;
  font-size: 11.5px;
  letter-spacing: 0;
  text-align: justify;
}

.photoSerieStrip:hover .serieStripBackground {
  opacity: 1;
}

.serieStripBackground {
  position: absolute;
  z-index: -10;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;

  background-size: 100%;
  background-repeat: no-repeat;
  opacity: 0.5;
  /*transition: opacity .2s;*/
}

.photoSeriesReturn {
  display: inline-block;
  text-decoration: none;
  margin: 0;
  margin-top: -10px;
  
  font-size: 15px;
  float: left;
  font-weight: 400;
  /*color: #AAA;*/
  color: #000;
}

.photoSeriesReturn:hover {
  /*color: #BBB;*/
  color: #555;
}

.photoSeriesIntroduction {
  padding: 0;
  /*margin: 0 40px 0 100px;*/
  padding-bottom: 10px;
  margin-bottom: 15px; /*40px;*/

  text-align: justify;
  font-size: 14px;
  font-style: normal;
  color: #000;

  /*border-bottom: 2px solid #DDD;*/
}

.photoSeriesAdditionnalText {
  padding: 0;
  /*margin: 0 40px 0 100px;*/
  padding-bottom: 10px;
  margin-bottom: 0; /*40px;*/

  text-align: justify;
  font-size: 14px;
  font-style: normal;
  color: #000;

  /*border-bottom: 2px solid #DDD;*/
}

.photoSeriesTitle {
  /*padding: 0 40px 0 100px;*/
  margin: 10px 0;
  /*margin-top: -20px;*/
  margin-top: 20px;

  font-family: "Roboto";
  text-transform: lowercase;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  letter-spacing: .5px;
  text-align: left;
}

.lireLaSuite, .introReduire {
  display: inline-block;
  float: right;
  margin-top: 5px;

  color: #000;
  font-weight: 800;

  cursor: pointer;
  user-select: none;
}

.introReduire {
  margin-top: 20px;
}

.lireLaSuite:hover, .introReduire:hover {
  color: #444;
}

.photoSeriesFullIntro {
  display: none;
}

.lireAddText {
  display: inline-block;
  float: right;
  margin-top: -10px;
  margin-bottom: 10px;

  color: #000;
  font-weight: 800;
  font-size: 14px;

  cursor: pointer;
  user-select: none;
}

.lireAddText:hover {
  color: #444;
}

.photoSeriesAddText {
  display: none;
  position: relative;
  padding-left: 100px;
  margin-bottom: 20px;
}

.photoSeriesAddText::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 80px;

  background-color: #EEE;
}

.mobileThumbnail {
  display: none;
}

.photoContentThumbnails {
}

.photoThumbnails {
  margin-left: -14px;
  margin-right: -14px;
}

.photoShowThumbnail {
  display: block;
  float: left;

  width: var(--width860);
  height: var(--height860);

  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-size: cover;
  opacity: .9;
}

.photoShowThumbnail:hover {
  opacity: 1;
}






/***********************/
/*        News         */
/***********************/



.slideshowImg {
  width: 100%;
  
  user-drag: none; 
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}






/***********************/
/*    Publications     */
/***********************/



.publicationsPicture {
  margin-bottom: 0;
  margin-left: 10px;
  margin-right: 10px;
  float: left;

  background-size: cover;
  background-repeat: no-repeat;
}

.publicationsPicture.right {
  float: right;
}

.publicationDescription {
  margin: 0 10px;
  margin-top: 5px;
  margin-bottom: 20px;
  font-size: 12px;
}

.publicationDescription.right {
  text-align: right;
}