/*  ==========================================================================
    Fonts
    ========================================================================== */

 
@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon/icomoon.eot');
	src:url('../fonts/icomoon/icomoon.eot#iefix') format('embedded-opentype'),
		url('../fonts/icomoon/icomoon.woff') format('woff'),
		url('../fonts/icomoon/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon/icomoon.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	-webkit-font-smoothing: antialiased;
}


@font-face {
    font-family: 'GothamBold';
    src: url('../fonts/gotham-bold.eot');
    src: url('../fonts/gotham-bold.eot') format('embedded-opentype'),
         url('../fonts/gotham-bold.woff') format('woff'),
         url('../fonts/gotham-bold.ttf') format('truetype'),
         url('../fonts/gotham-bold.svg') format('svg');
}

@font-face {
    font-family: 'GothamBook';
    src: url('../fonts/gotham-book.eot');
    src: url('../fonts/gotham-book.eot') format('embedded-opentype'),
         url('../fonts/gotham-book.woff') format('woff'),
         url('../fonts/gotham-book.ttf') format('truetype'),
         url('../fonts/gotham-book.svg') format('svg');
}



/* Use the following CSS code if you want to use data attributes for inserting your icons */
[data-icon]:before {
	font-family: 'icomoon';
	content: attr(data-icon);
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  font-size: 14px;
	-webkit-font-smoothing: antialiased;
}



/* ==========================================================================
   CSS
   ========================================================================== */

html, 
body {
  width: 100%;
  /*height: 100%; */
}
body {
  background-color: #000;
  overflow-y: scroll;
}

.left {
  padding-left: 100px;
}

a {
  text-decoration: none;
  color: #676752;
}
a:hover {}

input, 
textarea {
  width: 100%;
}

.site-container {
  padding-left: 240px;
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}


.grid_4 img, 
.grid_5 img, 
.grid_33 img {
  display: block;
}

.marginbottom {
  margin-bottom: 25px;
}
.grid_8 {
  margin-bottom: 20px;
}

.big {
  text-align: center;
}

.page-section {
  border-top: 1px solid #acacac;
}
.page-section:first-child {
  border-top: 0;
}
.page-section ul {
  list-style-type: none;
}

.nobordertop {
  border-top: 0px;
}

.paddingtop {
  padding-top: 40px;
}

.paddingtopbottom {
  padding-top: 40px;
  padding-bottom: 40px;
}

h1 {
  font-family: 'GothamBold';
  font-size: 30px;
  letter-spacing: 2px;
  text-transform: uppercase;
}
h1:after {
  content: "—";
  display: block;
}

h1.lora {
  font-family: 'Lora';
  color: #000;
  letter-spacing: 1px;
}

h1.page404 {
color: #fff;
}

blockquote {
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 25px 10px;
  letter-spacing: 1px;
}
blockquote > p {
  color: #000;
  font-size: 30px;
  font-style: normal;
  font-weight: bold;
  line-height: normal;
  margin: 15px 0;
}
blockquote .author {
  display: block;
  font-size: 15px;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 15px;
}

.small {
  font-size: 23px;
  letter-spacing: 0px;
}

h1.simple.lora {
  text-transform: none;
  padding-left: 10px;
  padding-right: 10px;
}

h2.instagram:before {
  font-size: 30px;
}

h3 {
  color: #000;
  font-family: 'Lora';
  font-size: 15px;
  font-style: italic;
  letter-spacing: 1px;
  line-height: 2.4;
  margin: 20px 0;
}

h6 {
  font-size: 15px;
  margin: 1em 0 0;
}
p,
ul {
  color: #676752;
  font-size: 15px;
  font-weight: 400; 
  line-height: 30px;
}
p,
ul,
blockquote {
  font-family: 'Lora', serif;
}
h6 + p {
  margin-top: .5em;
}

.intro {
  padding-top: 65px;
  padding-bottom: 50px;
}
.outer-wrap {
  position: relative;
  width: 100%;
}
.inner-wrap {
  background-color: #fff;
  position: relative;
  width: 100%;
}

/* ==========================================================================
   Header
   ========================================================================== */

.site-nav {
  position: fixed;
  z-index: 999;
}
.site-header,
.site-nav {
  background-color: #000;
  text-align: center;
}
.site-header,
.site-nav {
  width: 240px;
}
.site-nav li {
  margin: 0 0 26px;
  padding: 0;
}
.site-nav a {
  color: #555;
  font-family: 'GothamBold';
  font-size: 11px;
  letter-spacing: 2px;
  padding: 5px;
  text-decoration: none;
  text-transform: uppercase;
}
.site-nav a:hover,
.site-nav .current_page_item a {
  color: #fff;
}

.logo {
  display: inline-block;
  margin-top: 120px;
  margin-bottom: 70px;
}


.social {
  margin: 0;
}
.social > li {
  display : inline;
}
.social > li > a {
  text-decoration: none;
  color: #555555;
}
.social > li > a:hover {
  color: #fff;
}

.nav-btn {
  background: #000;
  border: 0;
  display: none;
  height: 40px;
  outline: none;
  position: fixed;
  top: 16px;
  left: 16px;
  width: 40px;
  z-index: 9999;
}
.nav-btn > .icon-bar {
  background: #fff;
  display: block;
  height: 4px;
  width: 24px;
  position: absolute;
  left: 8px;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
       -o-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all 400ms ease;
     -moz-transition: all 400ms ease;
       -o-transition: all 400ms ease;
          transition: all 400ms ease;
  -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
     -moz-transform: matrix(1, 0, 0, 1, 0, 0);
       -o-transform: matrix(1, 0, 0, 1, 0, 0);
          transform: matrix(1, 0, 0, 1, 0, 0);
}
.nav-btn > .icon-bar1 {
  top: 10px;
}
.nav-btn > .icon-bar2 {
  top: 18px;
}
.nav-btn > .icon-bar3 {
  top: 26px;
}

.js-nav .nav-btn > .icon-bar1 {
  top: 16px;
  -webkit-transform: matrix(0.7071, 0.7071, -0.7071, 0.7071, 0, 0);
     -moz-transform: matrix(0.7071, 0.7071, -0.7071, 0.7071, 0, 0);
       -o-transform: matrix(0.7071, 0.7071, -0.7071, 0.7071, 0, 0);
          transform: matrix(0.7071, 0.7071, -0.7071, 0.7071, 0, 0);
}
.js-nav .nav-btn > .icon-bar2 {
  opacity: 0;
}
.js-nav .nav-btn > .icon-bar3 {
  top: 16px;
  -webkit-transform: matrix(0.7071, -0.7071, 0.7071, 0.7071, 0, 0);
     -moz-transform: matrix(0.7071, -0.7071, 0.7071, 0.7071, 0, 0);
       -o-transform: matrix(0.7071, -0.7071, 0.7071, 0.7071, 0, 0);
          transform: matrix(0.7071, -0.7071, 0.7071, 0.7071, 0, 0);
}

/* Image responsive */
.full {
  display: block;
  width: 100%;
  height: auto;
}

h6,
strong {
  color: #000;
  font-family: "GothamBold";
}
strong {
  letter-spacing: 0px;
}

.soustitreinstagram {
  padding: 30px;
}




.button {
  background-color: #fff;
  border: 1px solid #676752;
  color: #676752;
  cursor: pointer;
  display: inline-block;
  font-size: 15px;
  margin-top: 15px;
  padding: 16px 19px 15px 19px;
  text-decoration: none;
  width: auto;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all .30s ease-in-out;
     -moz-transition: all .30s ease-in-out;
          transition: all .30s ease-in-out;
}
.button:hover,
.active > .button {
  background-color: #000;
  border: 1px solid #000;
  color: #fff;
}


footer.home {
  height: 100px;
} 

footer.home p {
  padding-top: 30px;
  font-size: 12px;
}

footer.home p a {
  text-decoration: none;
  color: #676752;
}  

footer.home p a:hover {
  text-decoration: underline;
}    

.client img {
  opacity: 0.5;
}

.client img:hover {
  opacity: 1;
}

#EmplacementDeMaCarte {
  height: 100%;
  width: 100%;
}


/* ==========================================================================
   Projets
   ========================================================================== */
   
#projects {
  margin-top: 80px;
}

.projet {
  overflow: hidden;
  position: relative;
}

.instagram {
  float: left;
}

.projet:before {
  content: "";
  display: block;
  padding-top: 68.02083333333%; /* 653px/960px */
}

.projet > a, 
.instagram > a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #000;
  opacity: 0;
  overflow: hidden;
  z-index: 2;
  -webkit-transition: opacity .3s ease;
     -moz-transition: opacity .3s ease;
          transition: opacity .3s ease;
}
.projet.hide > a {
  cursor: default;
}

.projet > img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transition: opacity .3s ease;
     -moz-transition: opacity .3s ease;
          transition: opacity .3s ease;
}
.projet.hide > img {
  opacity: .1;
}

.caption {

  display: table;
  height: 100%;
  width: 100%;
}

.projet > a:hover, 
.instagram > a:hover {
  opacity: 0.8;
}
.projet.hide > a:hover {
  opacity: 0;
}

.caption-inner {
  display: table-cell;
  padding: 0 25px;
  text-align: center;
  vertical-align: middle;
}

.caption-inner h2 {
  color: #fff;
  font-family: "Gotham-bold";
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.caption-inner p {
  color: #fff;
  font-family: 'Lora', serif;
  font-size: 12px;
  letter-spacing: 1px;
}

.navprojets {
  background-color: #fff;
  position: fixed;
  width: 100%;
  z-index: 6000;
}
.navprojets > ul {
  color: #676752;
  font-family: "Lora", "Times";
  font-weight: 400;
  margin: 0;
  padding: 24px 30px;
}
.navprojets > ul > li {
  display: inline;
  margin: 0 10px;
}
.navprojets a {
  border-color: #fff;
  margin: 0;
  padding: 0 7px;
}
.navprojets .active > a,
.navprojets a:hover {
  background-color: #fff;
  color: #000;
}


/* ==========================================================================
   Projet
   ========================================================================== */

.post-header-image {
  position: fixed;
}

.post-container {
  margin-top: 28.75%; /* ratio de l'image */
  background-color: #fff;
  position: relative;
}

.post-link > a {
  background-color: rgba(207,207,207,.3);
  color: #000;
  cursor: pointer;
  display: block;
  font-family: Georgia;
  font-size: 18px;
  line-height: 40px;
  margin: 1px;
  text-align: center;
  text-decoration: none;
  height: 40px;
  width: 40px;
}
.post-link > .top {
  position: relative;
  z-index: 7001;
  -webkit-transform: rotate(-90deg);
     -moz-transform: rotate(-90deg);
       -o-transform: rotate(-90deg); 
          transform: rotate(-90deg); 
}
.post-link > a:hover {
  opacity: 0.6;
}

.post-pagination {
  position: fixed;
  right: 20px;
  top: 20px;
  z-index: 7000;
}
.post-pagination > a {
  float: left;
}

.center > a {
  float: none;
  margin: 0 auto;
}

/** 
 * Animation pour les images 
 * Provient de Animate.css - http://daneden.github.io/animate.css/
 */
.animated {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}


/* ==========================================================================
   Le Studio
   ========================================================================== */

.publications-year {
  font-size: 23px;
}
.publications > li > a {
  color: #000;
  font-family: 'GothamBold';
  text-transform: uppercase;
}
.publications ul {
  margin-top: 0;
}


/* ==========================================================================
   Contact
   ========================================================================== */

.formulaire {
  margin-bottom: 40px;
}

label {
  display: block;
  font-size: 0.8em;
  font-family: "Lora";
  line-height: 1.4em;
  color: #000;
  margin-bottom: -8px;
  font-size: 15px;
}


input, textarea {
  float: left;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  padding: 8px;
  font-family: "Lora";
  font-weight: 400;
  font-size: 1em;
  line-height: 1.5em;
  color: #676752;
  margin-bottom: 15px;
  border: 1px solid #ccc;
}

.wpcf7-response-output,
.wpcf7-not-valid-tip {
  float: left; 
  margin-bottom: 30px;
  padding: 16px 19px 15px 19px;
  background-color: #000;
  color: #fff;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
}
.wpcf7-response-output {
  position: relative;
  left: 10.0%;
  width: 70%;
  margin-top: 15px;
}
.wpcf7-not-valid-tip {
  margin-bottom: 30px;
  position: relative;
  top: -7px;
}
.wpcf7-not-valid-tip:before {
  content: "";
  display: block;
  border-style: solid;
  border-color: transparent transparent #000;
  border-width: 10px;
  position: absolute;
  bottom: 100%;
}

.screen-reader-response,
.wpcf7-display-none {
  display: none;
}








/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

 .clear {
    clear: both;
 }

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min-resolution: 144dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow:none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

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

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}




}


/* iPhone [portrait + landscape]
==================================================
1 COLUMN
================================================== */

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


}

/* min 861px
==================================================
min 861px
================================================== */

@media screen and (min-width: 861px) {

  .site-header {
    height: 100%;
    position: fixed;
    z-index: 999;
  }

  .site-nav {
    left: 0;
    top: 350px;
  }

  .grayscale > img { 
    -webkit-filter: grayscale(100%);
       -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
            filter: grayscale(100%);
            filter: url("../img/grayscale.svg"); /* Firefox 4+ */
            filter: gray; /* IE 6-9 */
  }

  .grayscale:hover > img { 
    -webkit-filter: none;
       -moz-filter: none;
        -ms-filter: none;
         -o-filter: none;
            filter: none;
  }

}


/* max 860px
==================================================
max 860px
================================================== */

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

  .logo {
    margin: 0;
    padding: 20px 0;
  }
    
  .site-header {
    width: 100%;
  }

  .nav-btn {
    display: block;
  }

  .site-nav {
    height: 100%;
    top: 0;
    left: -240px;
    padding-top: 70px;
  }
  .inner-wrap {
    position: absolute;
    top: 0;
    left: 0;
  }  
  .site-nav,
  .inner-wrap {
    -webkit-transition: left 500ms ease;
       -moz-transition: left 500ms ease;
         -o-transition: left 500ms ease;
            transition: left 500ms ease;
  }
  .js-nav .site-nav {
    left: 0;
  }
  .js-nav .inner-wrap {
    left: 240px;
  }


  .site-container {
    padding-left: 0px;
  }

  .container_10 .grid_25 {
    width: 33.333333%;
  }

  .container_10 .prefix_1 {
    /*padding-left:0;*/
  }

  .post-header-image {
    position: static;
  }
  .post-container {
    margin-top: 0;
  }
  .post-pagination {
    position: relative;
    margin-top: -76px;
    padding-bottom: 76px;
    right: 0;
    top: 0;
  }
  .post-pagination > a {
    position: absolute;
  }
  .post-pagination > .next {
    left: 50%;
    margin-left: -62px;
  }
  .post-pagination > .previous {
    right: 50%;
    margin-right: -62px;
  }

  .navprojets {
    position: relative;
    text-align: center;
  }

  #projects {
    margin-top: 0px;
  }

}



/* max 550px
==================================================
max 550px
================================================== */

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

  .container_10 .push_2 {
    display: block;
    left: 10%;
  }

  .container_10 .suffix_1, 
  .container_10 .suffix_2, 
  .container_10 .suffix_5,
  .container_10 .suffix_6 {
    padding-right: 0; 
  }

  .container_10 .suffix_3 {
    padding-right: 10%;
  }

  input, 
  textarea {
    width: 90%;
  }

  .container_10 .grid_3,
  .container_10 .grid_4,
  .container_10 .grid_5,
  .container_10 .grid_33 {
    width: 100.0%;
  }

  .container_10 .grid_6,
  .container_10 .grid_7 {
    width: 80.0%;
  }

  .container_10 .grid_2,
  .container_10 .grid_25 {
    width: 50%;
  }

  .container_10 .grid_3.push_1,
  .container_10 .grid_3.push_2,
  .container_10 .grid_4.push_1,
  .container_10 .grid_4.push_2 {
    width: 80.0%;
  }

  .container_10 .prefix_1 {
    padding-left: 0;
  }

  .navprojets {
    display: none;
  }

}



@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait) {

  .container_10 .grid_2 {
    width: 33.3%;
  }

  .container_10 .prefix_1 {
    padding-left:0;
  }

}