/*
Theme Name: Eric van Hove
Theme URI: https://www.ericvanhove.be/
Author: Atelier Design
Author URI: http://www.atelierdesign.be
Description: EVH-art Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: evh-art
Tags:
*/
/*--------------------------------------------------------------
# Reset
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, figure {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline; }

html {
  font-size: 62.5%;
  /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
  /* overflow-y: scroll;  Keeps page centered in all browsers regardless of content height */
  -webkit-text-size-adjust: 100%;
  /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
  -ms-text-size-adjust: 100%;
  /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* Apply a natural box layout model to the document; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */ }

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block; }

ol, ul {
  list-style: none; }

table {
  /* tables still need 'cellspacing="0"' in the markup */
  border-collapse: separate;
  border-spacing: 0; }

caption, th, td {
  font-weight: normal;
  text-align: left; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: ""; }

blockquote, q {
  quotes: "" ""; }

button {
  border: 0;
  padding: 0;
  border-radius: 0;
  -webkit-appeareance: none;
  appeareance: none;
  background: none;
  cursor: pointer; }

a:focus, button:focus {
  outline: 0; }

a:hover,
a:active, button:hover, button:focus {
  outline: 0; }

a img {
  border: 0; }

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent; }

p {
  word-wrap: break-word; }

/*--------------------------------------------------------------*/
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
/*  -   GRID BUILDER
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
.grid, .d-grid, .t-grid, .m-grid {
  position: relative; }

.grid {
  width: calc(23*(48px + (12)*((100vw - 1366px)/(554))));
  max-width: 1380px;
  margin: 0 auto; }

@media (min-width: 1025px) {
  .d-grid {
    width: calc(23*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1380px;
    margin: 0 auto; } }

@media (max-width: 1024px) {
  .t-grid {
    margin: 0 auto; }
  .grid, .t-grid {
    width: 80.85938vw; } }

@media (max-width: 767px) {
  .m-grid {
    margin: 0 auto; }
  .grid, .t-grid, .m-grid {
    width: 79.0625vw; } }

.center {
  position: relative;
  margin: 0 auto; }

.right {
  position: relative;
  margin-left: auto;
  margin-right: 0; }

@media (min-width: 1025px) {
  .col-1 {
    width: calc(1*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 60px; }
  .col-2 {
    width: calc(2*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 120px; }
  .col-3 {
    width: calc(3*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 180px; }
  .col-4 {
    width: calc(4*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 240px; }
  .col-5 {
    width: calc(5*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 300px; }
  .col-6 {
    width: calc(6*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 360px; }
  .col-7 {
    width: calc(7*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 420px; }
  .col-8 {
    width: calc(8*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 480px; }
  .col-9 {
    width: calc(9*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 540px; }
  .col-10 {
    width: calc(10*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 600px; }
  .col-11 {
    width: calc(11*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 660px; }
  .col-12 {
    width: calc(12*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 720px; }
  .col-13 {
    width: calc(13*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 780px; }
  .col-14 {
    width: calc(14*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 840px; }
  .col-15 {
    width: calc(15*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 900px; }
  .col-16 {
    width: calc(16*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 960px; }
  .col-17 {
    width: calc(17*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1020px; }
  .col-18 {
    width: calc(18*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1080px; }
  .col-19 {
    width: calc(19*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1140px; }
  .col-20 {
    width: calc(20*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1200px; }
  .col-21 {
    width: calc(21*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1260px; }
  .col-22 {
    width: calc(22*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1320px; } }

@media (max-width: 1024px) and (min-width: 768px) {
  .t-col-1 {
    width: 3.51563vw; }
  .t-col-2 {
    width: 7.03125vw; }
  .t-col-3 {
    width: 10.54688vw; }
  .t-col-4 {
    width: 14.0625vw; }
  .t-col-5 {
    width: 17.57813vw; }
  .t-col-6 {
    width: 21.09375vw; }
  .t-col-7 {
    width: 24.60938vw; }
  .t-col-8 {
    width: 28.125vw; }
  .t-col-9 {
    width: 31.64063vw; }
  .t-col-10 {
    width: 35.15625vw; }
  .t-col-11 {
    width: 38.67188vw; }
  .t-col-12 {
    width: 42.1875vw; }
  .t-col-13 {
    width: 45.70313vw; }
  .t-col-14 {
    width: 49.21875vw; }
  .t-col-15 {
    width: 52.73438vw; }
  .t-col-16 {
    width: 56.25vw; }
  .t-col-17 {
    width: 59.76563vw; }
  .t-col-18 {
    width: 63.28125vw; }
  .t-col-19 {
    width: 66.79688vw; }
  .t-col-20 {
    width: 70.3125vw; }
  .t-col-21 {
    width: 73.82813vw; }
  .t-col-22 {
    width: 77.34375vw; } }

@media (max-width: 767px) {
  .m-col-1 {
    width: 7.1875vw; }
  .m-col-2 {
    width: 14.375vw; }
  .m-col-3 {
    width: 21.5625vw; }
  .m-col-4 {
    width: 28.75vw; }
  .m-col-5 {
    width: 35.9375vw; }
  .m-col-6 {
    width: 43.125vw; }
  .m-col-7 {
    width: 50.3125vw; }
  .m-col-8 {
    width: 57.5vw; }
  .m-col-9 {
    width: 64.6875vw; }
  .m-col-10 {
    width: 71.875vw; } }

/**
 * Fix for vw, vh, vmin, vmax on iOS 7.
 * http://caniuse.com/#feat=viewport-units
 *
 * This fix works by replacing viewport units with px values on known screen sizes.
 *
 * iPhone 6 and 6 Plus cannot run iOS 7, so are not targeted by this fix.
 * Target devices running iOS 8+ will incidentally execute the media query,
 * but this will still produce the expected result; so this is not a problem.
 *
 * As an example, replace:
 *
 *   height: 50vh;
 *   font-size: 5vmin;
 *
 * with:
 *
 *   @include viewport-unit(height, 50vh);
 *   @include viewport-unit(font-size, 5vmin);
 */
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
/* source-sans-pro-300 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: local("Source Sans Pro Light"), local("SourceSansPro-Light"), url("fonts/source-sans-pro-v11-latin-300.woff2") format("woff2"), url("fonts/source-sans-pro-v11-latin-300.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: local("Source Sans Pro Regular"), local("SourceSansPro-Regular"), url("fonts/source-sans-pro-v11-latin-regular.woff2") format("woff2"), url("fonts/source-sans-pro-v11-latin-regular.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* source-sans-pro-600 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 600;
  src: local("Source Sans Pro SemiBold"), local("SourceSansPro-SemiBold"), url("fonts/source-sans-pro-v11-latin-600.woff2") format("woff2"), url("fonts/source-sans-pro-v11-latin-600.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: local("Source Sans Pro Bold"), local("SourceSansPro-Bold"), url("fonts/source-sans-pro-v11-latin-700.woff2") format("woff2"), url("fonts/source-sans-pro-v11-latin-700.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

body,
button,
input,
select,
textarea {
  color: #2E2E2E;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0; }

p {
  font-size: 1.4rem;
  line-height: 1.71;
  letter-spacing: 0.025em;
  color: #585858;
  font-weight: 300; }

@media (min-width: 768px) {
  p {
    font-size: 1.5rem;
    line-height: 1.867; } }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
a {
  color: #2E2E2E;
  text-decoration: none; }
  a:visited {
    color: #2E2E2E; }
  a:hover {
    text-decoration: none; }
  a:hover, a:focus, a:active {
    color: #2E2E2E;
    outline: 0; }

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.site-header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  -webkit-transition: background 0.35s ease-in-out, -webkit-transform 0.35s ease-in-out;
  transition: background 0.35s ease-in-out, -webkit-transform 0.35s ease-in-out;
  transition: transform 0.35s ease-in-out, background 0.35s ease-in-out;
  transition: transform 0.35s ease-in-out, background 0.35s ease-in-out, -webkit-transform 0.35s ease-in-out; }
  .site-header.white .menu-toggle span {
    background: #fff; }
  .site-header.white .menu-toggle strong {
    color: #fff; }
  .site-header.white .site-title a {
    color: #fff; }
  .site-header.nav-up {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  .site-header.nav-scroll {
    background: #fff; }
    .site-header.nav-scroll .site-title a,
    .site-header.nav-scroll .menu-toggle strong {
      color: #2E2E2E; }
    .site-header.nav-scroll .menu-toggle span {
      background: #2E2E2E; }
  .site-header.open {
    -webkit-transform: none;
            transform: none; }
    .site-header.open .site-title a,
    .site-header.open .menu-toggle strong {
      color: #fff; }
    .site-header.open .menu-toggle span {
      background: #fff; }
    .site-header.open .menu-toggle i:before {
      opacity: 1;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    .site-header.open .menu-toggle i:after {
      opacity: 1;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
    .site-header.open .menu-toggle span, .site-header.open .menu-toggle strong, .site-header.open .menu-toggle i {
      -webkit-transform: translateX(-33px);
              transform: translateX(-33px); }
    .site-header.open.white .menu-toggle span {
      background: #fff; }
    .site-header.open.white .menu-toggle strong {
      color: #fff; }
    .site-header.open.white .site-title a {
      color: #fff; }

.inner-header {
  height: 84px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.site-title {
  letter-spacing: 0.2em;
  text-transform: uppercase;
  z-index: 1002; }
  .site-title a {
    -webkit-transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1);
    transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1); }

.menu-toggle {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  height: 44px;
  z-index: 1002;
  overflow: hidden; }
  .menu-toggle span {
    display: inline-block;
    margin-right: 10px;
    width: 23px;
    height: 1px;
    background: #2E2E2E;
    -webkit-transition: background 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.2s ease, margin 0.2s ease, -webkit-transform 0.2s ease;
    transition: background 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.2s ease, margin 0.2s ease, -webkit-transform 0.2s ease;
    transition: background 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.2s ease, margin 0.2s ease, transform 0.2s ease;
    transition: background 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.2s ease, margin 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease; }
  .menu-toggle strong {
    font-size: 1.2rem;
    letter-spacing: 0.2em;
    font-weight: 400;
    -webkit-transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), -webkit-transform 0.2s ease;
    transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), -webkit-transform 0.2s ease;
    transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.2s ease;
    transition: color 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.2s ease, -webkit-transform 0.2s ease; }
  .menu-toggle i {
    display: inline-block;
    position: absolute;
    right: -6px;
    top: 48.5%; }
    .menu-toggle i:before, .menu-toggle i:after {
      content: " ";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 16px;
      height: 1px;
      background: #fff;
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
      -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
      transition: opacity .2s ease, -webkit-transform .2s ease;
      transition: transform .2s ease, opacity .2s ease;
      transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
      opacity: 0; }
  .menu-toggle:hover span {
    margin-right: 14px;
    width: 18px; }

.modal-nav {
  position: fixed;
  z-index: 1001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  background: #161616;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  will-change: opacity;
  -webkit-transition: visibility 0s 0.5s, opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
  transition: visibility 0s 0.5s, opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); }
  .modal-nav .scroll {
    height: 100%;
    overflow: auto; }
    .modal-nav .scroll:before {
      content: '';
      display: block;
      position: absolute;
      width: 100%;
      height: 84px;
      background: #161616;
      z-index: 3; }

.primary-container {
  padding-top: 96px;
  padding-bottom: 40px;
  min-height: calc(100vh - 156px); }
  .primary-container a {
    font-size: 2.2rem;
    color: #fff;
    line-height: 2;
    letter-spacing: 0.07em;
    text-transform: lowercase;
    position: relative;
    display: inline-block; }
    .primary-container a:after {
      content: '';
      position: absolute;
      width: 100%;
      -webkit-transform: scaleX(0);
              transform: scaleX(0);
      height: 1px;
      bottom: 4px;
      left: 0;
      background-color: #fff;
      -webkit-transform-origin: bottom right;
              transform-origin: bottom right;
      -webkit-transition: -webkit-transform 0.3s ease-out;
      transition: -webkit-transform 0.3s ease-out;
      transition: transform 0.3s ease-out;
      transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; }
    .primary-container a:hover {
      text-decoration: none; }
      .primary-container a:hover:after {
        -webkit-transform: scaleX(1);
                transform: scaleX(1);
        -webkit-transform-origin: bottom left;
                transform-origin: bottom left; }
  .primary-container li.current-menu-item a:after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1); }

.site-header.open .modal-nav {
  visibility: visible;
  opacity: 1;
  -webkit-transition: visibility 0s, opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
  transition: visibility 0s, opacity 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); }

@media (min-width: 768px) {
  .site-header.open .menu-toggle span, .site-header.open .menu-toggle strong, .site-header.open .menu-toggle i {
    -webkit-transform: translateX(-56px);
            transform: translateX(-56px); }
  .inner-header {
    width: 92%;
    height: 100px; }
  .site-title {
    font-size: 1.6rem; }
  .menu-toggle span {
    width: 36px;
    margin-right: 20px; }
  .menu-toggle i {
    right: -8px; }
    .menu-toggle i:before, .menu-toggle i:after {
      width: 20px; }
  .menu-toggle:hover span {
    margin-right: 26px;
    width: 30px; }
  .modal-nav .scroll:before {
    height: 100px; }
  .primary-container {
    padding-top: 140px;
    padding-bottom: 80px;
    min-height: calc(100vh - 236px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto; }
    .primary-container a {
      font-size: 2.6rem; } }

@media (min-width: 1025px) {
  .site-header.white .site-title a {
    color: #2E2E2E; }
  .inner-header {
    height: 132px; }
  .modal-nav .scroll:before {
    content: none; }
  .primary-container {
    height: 100vh;
    min-height: 0; } }

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Modules
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Pages
--------------------------------------------------------------*/
html {
  overflow-y: scroll;
  overflow-x: hidden; }

body,
html {
  background-color: #fff;
  width: 100%;
  height: 100%; }

img {
  display: block;
  width: 100%;
  height: auto; }

strong {
  font-weight: bold; }

em {
  font-style: italic; }

.preload * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important; }

.wrapper {
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  overflow: hidden;
  opacity: 0; }
  .wrapper.loaded {
    opacity: 1; }

section {
  position: relative; }

/* OBJECTFIT FALLBACK */
.object-fit-img {
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.object-fit-bg {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  position: relative;
  overflow: hidden; }

.objectfit .object-fit-bg,
.object-fit .object-fit-bg {
  background-image: none !important; }

.no-objectfit img,
.no-object-fit img {
  display: none !important; }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.right {
  margin-left: auto;
  margin-right: 0; }

.align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.section-branch {
  height: 50vh; }
  .section-branch a {
    display: block;
    width: 100%;
    height: 100%; }
  .section-branch hgroup {
    position: relative;
    z-index: 2; }
  .section-branch h2 {
    font-size: 2.6rem;
    letter-spacing: 0.198em;
    text-transform: uppercase;
    padding-top: 5vh; }
  .section-branch h3 {
    font-size: 1.2rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-top: 10px; }
    .section-branch h3 > div {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .section-branch h3 i {
      display: inline-block;
      width: 32px;
      height: 10px;
      margin-left: 16px;
      background: url(img/arrow-to.svg) no-repeat;
      background-size: contain; }
  .section-branch.atelier a {
    color: #fff; }
    .section-branch.atelier a:after {
      content: '';
      position: absolute;
      display: block;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background: rgba(0, 0, 0, 0.25); }
  .section-branch.atelier h3 i {
    background-image: url(img/arrow-to-white.svg); }
  .section-branch.to-atelier {
    height: 156px; }
    .section-branch.to-atelier h2 {
      padding-top: 48px; }
    .section-branch.to-atelier a:after {
      background: rgba(0, 0, 0, 0.55); }

@media (min-width: 768px) {
  .section-branch h2 {
    padding-top: 6vh;
    font-size: 3.6rem; }
  .section-branch h3 {
    margin-top: 16px; }
  .section-branch.to-atelier {
    height: 236px; }
    .section-branch.to-atelier h2 {
      padding-top: 84px;
      font-size: 2.6rem; }
    .section-branch.to-atelier h3 {
      margin-top: 10px; } }

@media (min-width: 1025px) {
  .main-home {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 140%;
    margin-left: -20%; }
  .section-branch {
    height: 100vh;
    width: 50%; }
    .section-branch hgroup {
      padding-left: 20%; }
    .section-branch h2 {
      padding-top: 60px; }
    .section-branch h3 {
      margin-top: 20px;
      overflow: hidden; }
      .section-branch h3 > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .section-branch h3 span {
        display: none;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        opacity: 0; }
      .section-branch h3 i {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        margin-left: 0;
        margin-right: 8px; }
    .section-branch.artiste hgroup {
      padding-left: calc(28% + 20%); }
  .main-home .section-branch .object-fit-bg {
    background: none !important; }
  .main-home .section-branch img.object-fit-img {
    display: block !important;
    height: 100%;
    width: auto;
    -o-object-fit: unset;
       object-fit: unset;
    left: -10%; }
  .main-home .section-branch.artiste img.object-fit-img {
    right: -10%;
    left: auto; }
  .section-branch.to-atelier {
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: calc( ((100vw - (23*(48px + (12)*((100vw - 1366px)/(554)))))/2) + (7*(48px + (12)*((100vw - 1366px)/(554))))); } }
  @media (min-width: 1025px) and (min-width: 1920px) {
    .section-branch.to-atelier {
      max-width: calc( ((100vw - 1380px)/2) + (420px)); } }

@media (min-width: 1025px) {
    .section-branch.to-atelier hgroup {
      position: absolute;
      bottom: 8vh;
      left: 6vw;
      padding-left: 0; }
    .section-branch.to-atelier h2 {
      padding-top: 84px;
      font-size: 2.6rem; }
    .section-branch.to-atelier h3 {
      margin-top: 20px; }
    .section-branch.to-atelier img {
      width: calc(100% + 50px);
      -webkit-transition: -webkit-transform 0.5s ease;
      transition: -webkit-transform 0.5s ease;
      transition: transform 0.5s ease;
      transition: transform 0.5s ease, -webkit-transform 0.5s ease; }
    .section-branch.to-atelier:hover img {
      -webkit-transform: translateX(-50px);
              transform: translateX(-50px); } }

.cover-box {
  height: 62.5vw;
  max-height: 310px;
  position: relative; }
  .cover-box:after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.35); }

.content {
  padding: 50px 0; }
  .content h1 {
    font-size: 2.4rem;
    letter-spacing: 0.15em;
    margin-bottom: 24px; }
  .content h2 {
    font-size: 1.6rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 20px; }
  .content h3 {
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.025em;
    margin-bottom: 4px; }
  .content p,
  .content li {
    margin-bottom: 24px; }
  .content hr {
    margin: 24px 0;
    border: 0;
    border-bottom: 1px solid #EDEDEF; }
  .content.listing h3 {
    margin-bottom: 4px;
    margin-top: 18px; }
  .content.listing p, .content.listing li {
    margin-bottom: 3px;
    line-height: 1.5; }
  .content .wp-block-file a {
    text-transform: uppercase;
    font-size: 1.2rem;
    letter-spacing: 0.2em;
    color: #585858;
    font-weight: 600;
    display: inline-block;
    padding-left: 48px;
    height: 37px;
    line-height: 37px;
    width: 26px;
    background: url(img/pdf.svg) no-repeat;
    background-size: 26px 37px;
    width: auto;
    white-space: nowrap; }

@media (min-width: 768px) {
  .content {
    padding: 68px 0; }
    .content > div {
      margin: 0 auto; }
    .content h1 {
      font-size: 3rem;
      margin-bottom: 36px; }
    .content h2 {
      margin-bottom: 26px; }
    .content h3 {
      margin-bottom: 12px; }
    .content p,
    .content li {
      margin-bottom: 24px; }
    .content hr {
      margin: 36px 0; } }

@media (min-width: 1025px) {
  .generic-container {
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 100vh; }
    .generic-container .cover-box {
      position: fixed;
      right: 0;
      top: 0;
      width: calc( ((100vw - (23*(48px + (12)*((100vw - 1366px)/(554)))))/2) + (7*(48px + (12)*((100vw - 1366px)/(554)))));
      height: 100%;
      max-height: none; } }
    @media (min-width: 1025px) and (min-width: 1920px) {
      .generic-container .cover-box {
        max-width: calc( ((100vw - 1380px)/2) + (420px));
        margin-left: auto;
        margin-right: 0; } }

@media (min-width: 1025px) {
    .generic-container .content {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      padding: 180px 0; }
      .generic-container .content > div {
        margin: 0; }
      .generic-container .content h1 {
        font-size: 3.5rem;
        margin-bottom: 44px; } }

.section-all-artworks {
  padding-top: 84px;
  padding-bottom: 24px; }

.artwork-preview {
  margin-bottom: 42px; }
  .artwork-preview .img-box {
    overflow: hidden; }
  .artwork-preview h2 {
    font-weight: 600;
    letter-spacing: 0.025em;
    padding-top: 20px; }

@media (min-width: 768px) {
  .section-all-artworks {
    padding-top: 116px;
    padding-bottom: 32px; }
  .artwork-preview {
    margin-bottom: 48px; } }

@media (min-width: 1025px) {
  .section-all-artworks {
    padding-top: 144px;
    padding-bottom: 40px; }
  .artwork-preview {
    margin-bottom: 76px; } }

.section-all-news {
  padding-top: 84px;
  padding-bottom: 42px; }

article.news {
  -webkit-transition: background 0.25s ease-in-out;
  transition: background 0.25s ease-in-out;
  background: #fff; }
  article.news:hover {
    background: #f7f7f7; }
  article.news a {
    display: block; }
  article.news .inner-news {
    border-top: 1px solid #EDEDEF;
    padding: 26px 0 40px; }
  article.news time {
    font-size: 1.2rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    color: #585858;
    margin-bottom: 16px;
    display: block; }
  article.news h2 {
    font-weight: 600;
    letter-spacing: 0.025em;
    margin-bottom: 8px; }
  article.news .arrow-to {
    margin-top: 18px; }
    article.news .arrow-to span {
      display: inline-block;
      width: 22px;
      height: 8px;
      background: url(img/arrow-to.svg) no-repeat;
      background-size: contain; }
  article.news:first-child .inner-news {
    border: 0; }

@media (min-width: 768px) {
  .section-all-news {
    padding-top: 116px;
    padding-bottom: 80px; }
  article.news:hover .arrow-to span {
    -webkit-transform: translateX(16px);
            transform: translateX(16px); }
  article.news .inner-news {
    padding: 36px 0; }
  article.news .arrow-to {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -4px; }
    article.news .arrow-to span {
      width: 26px;
      height: 9px;
      -webkit-transition: -webkit-transform 0.25s ease-in-out;
      transition: -webkit-transform 0.25s ease-in-out;
      transition: transform 0.25s ease-in-out;
      transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out; } }

@media (min-width: 1025px) {
  .section-all-news {
    padding-top: 144px;
    padding-bottom: 84px; }
  article.news .inner-news {
    padding: 40px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  article.news time {
    font-size: 1.2rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    color: #585858;
    margin-bottom: 16px;
    display: block; }
  article.news h2 {
    font-weight: 600;
    letter-spacing: 0.025em;
    margin-bottom: 8px; }
  article.news .arrow-to {
    margin-top: 18px;
    position: relative;
    top: 0;
    margin-top: 0;
    text-align: right; }
    article.news .arrow-to span {
      width: 28px;
      height: 10px; } }

.main-artwork {
  padding-top: 84px;
  padding-bottom: 24px; }

.artwork-content {
  padding-bottom: 22px; }
  .artwork-content h1 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 14px;
    letter-spacing: 0.025em; }
  .artwork-content p {
    margin-bottom: 12px; }
  .artwork-content .materials {
    cursor: pointer; }
    .artwork-content .materials.open .materials-popup {
      visibility: visible;
      opacity: 1; }
  .artwork-content .trigger-mat {
    width: 20px;
    height: 20px;
    border: 1px solid rgba(46, 46, 46, 0.15);
    position: relative;
    display: inline-block;
    border-radius: 50%;
    -webkit-transform: translate(12px, 5px);
            transform: translate(12px, 5px); }
    .artwork-content .trigger-mat:before, .artwork-content .trigger-mat:after {
      content: '';
      display: block;
      background: #2E2E2E;
      width: 7px;
      height: 1px;
      position: absolute;
      top: 50%;
      left: 50%; }
    .artwork-content .trigger-mat:before {
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
    .artwork-content .trigger-mat:after {
      -webkit-transform: translate(-50%, -50%) rotate(90deg);
              transform: translate(-50%, -50%) rotate(90deg); }
  .artwork-content .materials-popup {
    opacity: 0;
    visibility: hidden;
    background: #2E2E2E;
    position: absolute;
    z-index: 30;
    padding: 30px 0 22px;
    -webkit-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out; }
    .artwork-content .materials-popup:before {
      position: absolute;
      display: block;
      content: '';
      top: -8px;
      left: 198px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 7.5px 7.5px 7.5px;
      border-color: transparent transparent #2E2E2E transparent; }
    .artwork-content .materials-popup p {
      font-size: 1.2rem;
      color: #fff; }
  @media (max-width: 767px) {
    .artwork-content .materials-popup {
      width: 100%;
      left: 0;
      padding: 30px 30px 22px; } }
  .artwork-content .specs {
    font-size: 1rem;
    line-height: 2.2;
    letter-spacing: 0.15em;
    margin-bottom: 12px;
    color: #585858; }
    .artwork-content .specs strong {
      text-transform: uppercase;
      font-weight: 600;
      color: #2E2E2E; }
    .artwork-content .specs.credits {
      margin-top: 12px; }

.slider-artwork .img-box img {
  height: 50vw;
  width: auto; }

.slider-artwork .swiper-slide {
  width: auto; }

.slider-pag {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  position: relative;
  bottom: 0;
  width: 34px;
  margin: 14px auto 38px; }
  .slider-pag:after {
    content: '';
    position: absolute;
    display: block;
    width: 34px;
    height: 1px;
    background: #2E2E2E;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
    left: 50%;
    top: 50%; }
  .slider-pag span {
    display: block;
    margin-bottom: 16px; }
    .slider-pag span:before {
      content: '0'; }
  .slider-pag span:last-child {
    margin-top: 16px;
    margin-bottom: 0;
    text-align: right; }

.single-slider .slider-pag span {
  display: none; }

.single-slider .slider-pag:after {
  content: none; }

.single-slider .slider-artwork .swiper-slide {
  width: 100%; }

.single-slider .slider-artwork .img-box img {
  width: 100%;
  height: auto; }

a.to-artworks {
  display: none; }

a.next-artwork {
  width: 100%;
  display: block;
  text-align: center;
  border: 1px solid #CCCCCC;
  padding: 16px; }
  a.next-artwork span {
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 0.2em;
    color: #585858;
    display: inline-block;
    margin-bottom: 4px; }
  a.next-artwork strong {
    font-weight: 600;
    letter-spacing: 0.1em; }

@media (min-width: 768px) and (max-width: 1024px) {
  .main-artwork {
    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;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; } }

@media (min-width: 768px) {
  .main-artwork {
    padding-top: 132px;
    padding-bottom: 0; }
  .artwork-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 48px; }
    .artwork-content .materials-popup:before {
      left: 186px; }
  .slider-pag {
    margin: 34px auto 52px; }
  .other-artworks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .other-artworks a {
      position: relative; }
      .other-artworks a i {
        position: absolute;
        display: block;
        width: 26px;
        height: 9px;
        background: url(img/arrow-back.svg) no-repeat;
        background-size: contain;
        top: 50%; }
  a.to-artworks {
    display: block;
    width: 50%;
    border-top: 1px solid #CCCCCC;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 0.2em;
    color: #585858;
    line-height: 72px;
    padding-left: 74px; }
    a.to-artworks i {
      left: 24px;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%); }
      a.to-artworks i:last-child {
        display: none; }
  a.next-artwork {
    width: 50%;
    border-bottom: 0;
    border-right: 0;
    line-height: 72px;
    padding: 0 74px 0 0;
    text-align: right; }
    a.next-artwork i {
      right: 24px;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      background: url(img/arrow-to.svg) no-repeat; } }

@media (min-width: 1025px) {
  .main-artwork {
    min-height: 100vh;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .artwork-content {
    z-index: 2;
    display: block;
    padding: 90px 0 140px; }
    .artwork-content h1 {
      font-size: 1.6rem;
      margin-bottom: 12px; }
    .artwork-content p {
      margin-bottom: 0;
      line-height: 1.5; }
    .artwork-content .materials {
      position: relative; }
    .artwork-content .materials-popup {
      padding: 36px 0 28px;
      right: -424px;
      width: 400px;
      top: 0;
      -webkit-transform: translateY(-48%);
              transform: translateY(-48%); }
      .artwork-content .materials-popup > div {
        padding: 0 36px; }
      .artwork-content .materials-popup:before {
        position: absolute;
        display: block;
        content: '';
        top: 50%;
        left: -8px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7.5px 7.5px 7.5px 0;
        border-color: transparent #2E2E2E transparent transparent; }
    .artwork-content .specs {
      font-size: 1rem;
      padding-top: 12px; }
  .slider-artwork-wrapper {
    position: absolute;
    top: 132px;
    right: 0; }
  .slider-artwork-nav {
    position: absolute;
    right: -82px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); } }
  @media (min-width: 1025px) and (max-width: 1365px) {
    .slider-artwork-nav {
      right: -35px; } }

@media (min-width: 1025px) {
  .slider-pag {
    margin: 58px 0; }
  .slider-prev, .slider-next {
    cursor: pointer;
    width: 34px;
    height: 40px; }
    .slider-prev.swiper-button-disabled, .slider-next.swiper-button-disabled {
      opacity: 0.2; }
    .slider-prev span, .slider-next span {
      margin: 0 auto;
      display: block;
      height: 26px;
      width: 9px;
      background: url(img/arrow.svg);
      -webkit-transition: 0.25s ease-in-out;
      transition: 0.25s ease-in-out; }
  .slider-prev span {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  .slider-prev:not(.swiper-button-disabled):hover span {
    -webkit-transform: translateY(-16px) rotate(180deg);
            transform: translateY(-16px) rotate(180deg); }
  .slider-next:not(.swiper-button-disabled):hover span {
    -webkit-transform: translateY(16px);
            transform: translateY(16px); }
  .slider-artwork {
    overflow: hidden;
    height: calc(100vh - 132px - 96px); }
    .slider-artwork .swiper-slide {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 100%; }
    .slider-artwork .img-box {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .slider-artwork .img-box img {
        height: auto;
        max-width: 100%;
        max-height: calc(100vh - 132px - 96px); }
  .single-slider .slider-pag, .single-slider .slider-prev {
    display: none; }
  .single-slider .slider-artwork .swiper-slide {
    width: 100%; }
  .single-slider .slider-artwork .img-box img {
    width: auto; }
  .other-artworks {
    display: block;
    position: static; }
  a.to-artworks {
    position: absolute;
    top: 132px;
    left: 0;
    display: block;
    width: 96px;
    border: 0;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 0.2em;
    color: #585858;
    line-height: 14px;
    padding-left: 0;
    margin-top: 4px; }
    a.to-artworks span {
      overflow: visible;
      width: 26px;
      height: 9px;
      margin-bottom: 12px;
      display: block;
      position: relative; }
    a.to-artworks i {
      position: absolute;
      left: 0;
      top: 0;
      -webkit-transform: none;
              transform: none; }
      a.to-artworks i:last-child {
        opacity: 0;
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
        display: block; }
    a.to-artworks.animated i:first-child {
      -webkit-animation: back-first 0.3s ease  both;
              animation: back-first 0.3s ease  both; }
    a.to-artworks.animated i:last-child {
      -webkit-animation: back-last 0.3s ease  both;
              animation: back-last 0.3s ease  both; }
  @-webkit-keyframes back-first {
    0% {
      opacity: 1;
      -webkit-transform: translateX(0);
              transform: translateX(0); }
    100% {
      opacity: 0;
      -webkit-transform: translateX(-100%);
              transform: translateX(-100%); } }
  @keyframes back-first {
    0% {
      opacity: 1;
      -webkit-transform: translateX(0);
              transform: translateX(0); }
    100% {
      opacity: 0;
      -webkit-transform: translateX(-100%);
              transform: translateX(-100%); } }
  @-webkit-keyframes back-last {
    0% {
      opacity: 0;
      -webkit-transform: translateX(100%);
              transform: translateX(100%); }
    100% {
      opacity: 1;
      -webkit-transform: translateX(0);
              transform: translateX(0); } }
  @keyframes back-last {
    0% {
      opacity: 0;
      -webkit-transform: translateX(100%);
              transform: translateX(100%); }
    100% {
      opacity: 1;
      -webkit-transform: translateX(0);
              transform: translateX(0); } }
  a.next-artwork {
    position: absolute;
    bottom: 0;
    width: auto;
    border: 0;
    padding: 0;
    text-align: center;
    right: 0;
    height: 96px;
    padding-top: 0;
    line-height: 96px;
    width: calc(18*(48px + (12)*((100vw - 1366px)/(554))));
    max-width: 1080px;
    -webkit-transition: -webkit-transform 0.5s ease-in-out;
    transition: -webkit-transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out; }
    a.next-artwork i {
      display: none; }
    a.next-artwork strong, a.next-artwork span {
      display: inline-block;
      -webkit-transition: -webkit-transform 0.5s ease-in-out;
      transition: -webkit-transform 0.5s ease-in-out;
      transition: transform 0.5s ease-in-out;
      transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out; }
    a.next-artwork strong {
      position: relative; }
      a.next-artwork strong:before, a.next-artwork strong:after {
        position: absolute;
        content: '';
        width: 0;
        height: 2px;
        background: #161616;
        bottom: -4px;
        -webkit-transition: width 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
        transition: width 0.3s cubic-bezier(0.165, 0.84, 0.44, 1); }
      a.next-artwork strong:before {
        right: 50%; }
      a.next-artwork strong:after {
        left: 50%; }
    a.next-artwork:hover strong:before, a.next-artwork:hover strong:after {
      width: 50%; }
    a.next-artwork.bigger {
      -webkit-transform: translateY(-100px);
              transform: translateY(-100px); } }
