/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */


   @import url('../font/GT-Alpina-Fine-Standard-Light-Italic.woff');
   @import url('../font/GT-Alpina-Fine-Standard-Light.woff');
   @import url('../font/GT-Alpina-Fine-Standard-Light-Italic.woff2');
   @import url('../font/GT-Alpina-Fine-Standard-Light.woff2');
   
   @font-face {
       font-family: "GtAlpina";
       src: url("../font/GT-Alpina-Fine-Standard-Light.woff") format("woff"),
              url("../font/GT-Alpina-Fine-Standard-Light.woff2") format("woff2");
      }
   
      @font-face {
       font-family: "GtAlpinaItalic";
       src: url("../font/GT-Alpina-Fine-Standard-Light-Italic.woff") format("woff"),
            url("../font/GT-Alpina-Fine-Standard-Light-Italic.woff2") format("woff2");
          }
   
  *{
    font-family: "GtAlpina", sans-serif;
    color: #E5DACD;
    }

    body{
      background-color: rgb(6, 6, 6);
      margin: 0;
      overflow-x: hidden;
    }

    .ytp-large-play-button .ytp-button .ytp-large-play-button-red-bg{
      opacity: 0 !important;
    }

        /* Cookie */
      #cookie_banner-wrapper{
        position: fixed;
        background: #000;
        width: 100%;
        z-index: 100;
        bottom: 0;
        font-size: 15px;

      }

      .cookie_btn{
        position: absolute;
        bottom: 7px;
        right: 5vw;
        cursor: pointer;
      }

      .cookie_message{
        font-size: 15px;
        padding-left: 5vw;
      }

    /* width */
::-webkit-scrollbar {
  width: 5px;
}

/* Track */
::-webkit-scrollbar-track {
  background: none; 
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: #E5DACD; 
}

    .bg {
      position: fixed;
      top: -50%;
      left: -50%;
      right: -50%;
      bottom: -50%;
      width: 200%;
      height: 200vh;
      background: transparent url('http://assets.iceable.com/img/noise-transparent.png') repeat 0 0;
      background-repeat: repeat;
      animation: bg-animation .2s infinite;
      opacity: .6;
      visibility: visible;
      z-index: 300;
      pointer-events: none;
    }
    
    @keyframes bg-animation {
        0% { transform: translate(0,0) }
        10% { transform: translate(-5%,-5%) }
        20% { transform: translate(-10%,5%) }
        30% { transform: translate(5%,-10%) }
        40% { transform: translate(-5%,15%) }
        50% { transform: translate(-10%,5%) }
        60% { transform: translate(15%,0) }
        70% { transform: translate(0,10%) }
        80% { transform: translate(-15%,0) }
        90% { transform: translate(10%,5%) }
        100% { transform: translate(5%,0) }
    }



   h2, h3, h4, .h4{
       font-variant: small-caps;
   }

   ul, li, p, h2, h3, h1{
    margin: 0;
    padding: 0;
   }

   h2{
    font-size: 70px;
    line-height: 75px;
    font-family: "GtAlpina";
    margin: 100px 0;
   }

   h3{
    font-size: 40px;
    line-height: 45px;
    font-family: "GtAlpina";
   }

   h4, .h4{
    font-size: 23px;
    line-height: 33px;
    font-family: "GtAlpina";
   }
  
   em{
    font-size: 19px;
    font-family: "GtAlpinaItalic";
    font-style: normal !important;
   }
   em a{
    font-family: "GtAlpinaItalic";
   }

   h1{
    font-size: 23px;
    line-height: 33px;
    font-family: "GtAlpinaItalic";
    font-style: normal !important;
   }

   p{
    font-family: "rubik",sans-serif;
    font-size: 17px;
    line-height: 27px;
    font-weight: 400;
    font-style: normal;
   }
   a{
    color: #E5DACD !important;
    transition: all .5s ease-out;
   }
   a:hover{
    color: #fff !important;
    transition: all .5s ease-out;
   }
   a:visited{
    color: #E5DACD !important;
   }
   a:active{
    color: #E5DACD !important;
   }


   .honeypot {
    position: absolute;
    left: -9999px;
  }

  .cursor {
    position: fixed;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: none;
    border: 1px solid #B3A99D;
    pointer-events: none;
    z-index: 300 !important;
    transition: transform 0.2s;
}

  .grid-cont{
    margin: 0 5vw;
    position: relative;
  }
  header{
    padding-top: 25px;
    position: relative;
    z-index: 30;
   }
  
   .sound{
    position: absolute;
    display: flex;
    justify-content: right;
    bottom: 25px;
    right: 0;
    cursor: pointer !important;
  }

  .accueil .sound{
    bottom: 55px;
  }
  
  .sound a{
    position: relative;
  }

  .languages li{
    position: relative;
  }

  .playsoundlink #wavy canvas, .mutesoundlink #wavy2 canvas, .mutesoundlink #wavy3 canvas{
    width: 100% !important;
  }

  .playsoundlink a, .mutesoundlink a{
    transition: all .5s ease-out;
  }

  .playsoundlink a:hover, .mutesoundlink a:hover{
    color: #fff;
    transition: all .5s ease-out;
  }
  
  .sound span, .aboutheader span{
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 2px;
    left: 0;
  }

  .projectsfilters span{
    width: 100%;
    height: 1px;
    background: #88837E ;
    position: absolute;
    bottom: -10px;
    left: 0;
  }

  .languages .active span{
    width: 100%;
    height: 1px;
    background: #88837E ;
    position: absolute;
    bottom: -10px;
    left: 0;
    transition: all 1s ease-out;
  }

  .languages span{
    width: 0;
    height: 1px;
    background: #88837E ;
    position: absolute;
    bottom: -10px;
    left: 0;
    transition: all .3s ease-out;
  }

  .linesgo{ 
    width: 100% !important;
    transition: all .3s ease-out;
  }

  #header h1, .chermenu h1{
    font-size: 23px;
    font-family: "GtAlpina";
    font-variant: small-caps;
    color: #696969;
    line-height: 20px;
  }

  #header h3, .chermenu h3{
    font-family: "GtAlpinaItalic";
    font-size: 23px;
    font-variant:normal;
    color: #696969;
  }

  strong{
    font-family: "GtAlpinaItalic" !important;
    font-weight: 300;
  }

  .introtext h4 p{
    font-size: 23px;
    line-height: 33px;
    font-variant: normal !important;
    font-family: "GtAlpina";
    margin-bottom: 50px;
  }

  .more h4{
    font-size: 80px;
    transition: all .5s ease-out;
  }
  .more:hover h4{
    color: #fff !important;
  }

   /*
 * Menu
 */
 .chermenu{
  background: #000;
  position: fixed;
  top: 0;
  left: 120vw;
  height: 100vh;
  width: 100vw;
  transition: all 1s ease-out;
  z-index: 210;
  padding: 25px 0 0 5vw;
 }


 .menubutton{
  display: flex;
  justify-content: right;
  position: fixed;
  right: 5vw;
  mix-blend-mode: difference;
  z-index: 200;
}

.close{
  display: flex;
  justify-content: right;
  position: absolute;
  right: 5vw;
  top: 25px;
  mix-blend-mode: difference;
}

.close h4{
  font-size: 80px !important;
  transform: rotate(45deg);
  transition: all .5s ease-out;
}
.close:hover h4{
  color: #fff !important;
  transition: all .5s ease-out;
}

.titelback{
  cursor: pointer;
}

.titlemenu{
  width: 50vw;
}

 .menubuttons .buttonscontain, .submit input{
    width: 100px;
    height: 100px;
    background: none;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 23px;
    line-height: 33px;
    font-family: "GtAlpina";
    font-variant: small-caps;
 }

 .menubuttons .roundanim{
  border: #B3A99D .5px solid;
  animation: border 5s ease-out infinite, borderrotate 6s linear infinite;
  position: absolute;
  width: 80px;
  height: 80px;
  transition: all .5s ease-out;

 }
 .menubuttons .roundanim2{
  border: #B3A99D .5px solid;
  animation: border2 5s ease-out infinite, borderrotate2 5s linear infinite;
  position: absolute;
  width: 80px;
  height: 80px;
  transition: all .5s ease-out;

 }

 .menubuttons .buttonscontain:hover .roundanim{
  border-color: #fff;
  transition: all .5s ease-out;
}
 .menubuttons .buttonscontain:hover .roundanim2{
  border-color: #fff;
  transition: all .5s ease-out;
}

.menubuttons .buttonscontain .h4{
  transition: all .5s ease-out;
}
.menubuttons .buttonscontain:hover .h4{
  color: #fff;
  transition: all .5s ease-out;
}



 @keyframes border {
  0% { border-radius: 43% 50% 40% 42%; transform: rotate(0);}
  30% {border-radius: 50% 40% 45% 48%; }
  66% {border-radius: 43% 46% 50% 50%;}
  66% {border-radius: 48% 50% 42% 50%;}
  100% { border-radius: 43% 50% 40% 42%;transform: rotate(360deg);  }
} 
@keyframes borderrotate {
  0% { transform: rotate(0);}
  100% { transform: rotate(360deg);  }
}

@keyframes border2 {
  0% { border-radius: 50% 35% 42% 40%; transform: rotate(0);}
  30% {border-radius: 40% 50% 30% 43%; }
  66% {border-radius: 48% 43% 48% 50%;}
  66% {border-radius: 42% 48% 46% 35%;}
  100% { border-radius: 50% 35% 42% 40%;transform: rotate(-360deg);  }
} 
@keyframes borderrotate2 {
  0% { transform: rotate(0);}
  100% { transform: rotate(360deg);  }
}

 .chermenu .menulinks{
  position: absolute;
  display: flex;
  justify-content: center;
  text-align: center;
  opacity: 1;
  transition: all 1s ease-out;
 }

 .chemenulinksplacebefore{
  top: -100px !important;
  left: -100px !important;
  opacity: 0 !important;
  transition: all 1s ease-out;
 }

 .chermenulinkstitelappear{
  opacity: 1 !important;
  transition: all 1s 1s ease-out;
 }

 .chermenu .instrusvg{
  height: 80vh;
  margin-top: 50px;
  width: 90vw;
  position: relative;
 }

 .chermenu .instrusvg svg{
  height: 80%;
 }
 .chermenu .instrusvg .menulinks:hover svg .switchline{
  stroke: #fff !important;
 }
 .chermenu .instrusvg .menulinks:hover svg .switchline path{
  stroke: #fff !important;
 }
 .chermenu .instrusvg .menulinks:hover svg .switchlinerotate path{
  stroke: #fff !important;
 }

 .chermenu .instrusvg svg path{
  stroke:#88837E;
 }
 .chermenu .projectslink{
  top: 0;
  left: -10px;
 }
 .chermenu .agendalink{
  top: 0;
  left: 46vw;
 }
 .chermenu .aboutlink{
  top: 0;
  left: 30vw;
 }
 .chermenu .aboutlink p{
  margin-left: -30%;
 }
 .chermenu .violadawhatlink{
  top: 72%;
  left: 53vw;
 }
 .chermenu .contactlink{
  top: 0;
  left: 62vw;
 }
 .chermenu .gallerylink{
  top: 32%;
  left: 62vw;
 }
 .chermenu .gallerylink p{
  margin-left: -10%;
 }
 .chermenu .inspirationlink{
  top: 0;
  left: 75vw;
 }
 
 .chermenu p{
  font-family: "GtAlpina";
  font-size: 23px;
  margin-bottom: 10px;
  opacity: 0;
  text-align: center;
  transition: opacity 1s ease-out;
  transition: transform .3s ease-out;
 }

 .mobilemenu{
  display: none;
}
.desktopmenu{
  display: block;
}

 .appear{
  left: 0 !important;
  transition: all 1s ease-out;
 }

  .linesep{
  width: 100%;
  transform: scaleX(0);
  transform-origin: left;
    height: 1px;
    background: #88837E;
}
#agenda .linesep{
  transform: scaleX(1);

}

.linesepgo {
  transform: scaleX(1) !important;
  transition: all 2s ease-out;
}

.chermenu svg g, .chermenu svg path{
  transition: all .3s ease-out;
}

.switchlinego{
  transform: translate(7px, 7px) !important;
  transition: all .3s ease-out;
}

.switchlinerotatego{
  transform: translate(7px, -7px) !important;
  transition: all .3s ease-out;
}
.menulinksitalico{
  transform: translateX(5px);
  transition: all .3s ease-out;
 }


 /*
 * Home
 */

 .homeheader{
  height: 100vh;
 }

 #videocontain{
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
 }

 .home video{
  position: absolute;
  height: 100%;
  width: 177.77777778vh; /* 100 * 16 / 9 */
  min-width: 100%;
  min-height: 56.25vw; /* 100 * 9 / 16 */
 }

 #aboutteaser{
  background-size: 75%;
  background-repeat: no-repeat;
  height: 100vh;
  color:#fff;
  margin-bottom: 100px;
 }

 .grid-item {
  float: left;
}

.languages{
  position: absolute;
  bottom: 55px;
}

.languages li{
  display: inline-block;
  margin-right: 25px;
}
.languages li a{
  transition: all .5s ease-out;
}
.languages li a:hover{
  color: #fff !important;
  transition: all .5s ease-out;
}

#teaserproject{
  padding: 100px 0;
}

#teaserproject .menubuttons, #aboutteaser .menubuttons{
  padding: 50px 0 0 50px;
}

#teaserproject p{
  padding-left: 50px;
}

#teaserproject h2{
  margin-left: -150px;
  margin-top: 200px;
  margin-bottom: 50px;
}

#aboutteaser h2{
  margin-top:200px;
  margin-bottom: 50px;
}

#aboutteaser .linesep{
    margin-left: -10%;
}

.projectsfilters ul{
  margin-top: 100px;
}

.projectsfilters ul li{
  list-style-type: none;
  display: inline-block;
  font-size: 23px;
  font-variant: small-caps;
  text-align: right;
  margin-right: 20px;
  position: relative;
  margin-bottom: 20px;
}


.projects .projectsfilters ul li:nth-child(1) span{
  background: #F27405;
}
.projects .projectsfilters ul li:nth-child(2) span{
  background: #A75CF2;
}
.projects .projectsfilters ul li:nth-child(3) span{
  background: #4de5bf;
}

#gallery .projectsfilters ul li:nth-child(1) span{
  background: #4de5bf;
}
#gallery .projectsfilters ul li:nth-child(2) span{
  background: #A75CF2;
}
#gallery .projectsfilters ul li:nth-child(3) span{
  background: #F27405;
}

.projectgrid .projet{
  border: 1px solid #E5DACD;
  width: 90%;
  padding: 5%;
  position: relative;
  margin-bottom: 50px;
  height: 38vw;
}

.projectgrid .projet h3{
  transition: all .5s ease-out;
}

.projectgrid .projet:hover h3{
  transform: translateX(5px) !important;
  transition: all .5s ease-out;
}

.projectgrid .Solo .projet {
  border: 1px solid #A75CF2;;
}

.projectgrid .Mallory .projet {
  border: 1px solid #4de5bf;;
}

.projectgrid .Ensemble .projet {
  border: 1px solid #F27405;;
}

.projectgrid h3{
  margin-top: 10px;
  hyphens:auto;
  margin-bottom: 15%;
}
.projectgrid .projcat{
  text-align: right;
  position: absolute;
  bottom: 5%;
  right: 5%;
  font-family: "GtAlpinaItalic";
}

.footer{
  padding: 50px 0 50px 0;
  font-size: 18px;
  line-height: 28px;
}

.footer a{
  font-family: "GtAlpina";
  font-variant: small-caps;
}

.footer .contactlink a{
  text-align: center;
  font-size: 19px;
  font-family: "GtAlpina" !important;
  font-variant:small-caps;
}
.footer .contactlink{
  text-align: center;
}

.footer div p:last-child{
  text-align: right;
}

.footer div p, .footer div p a{
  font-size: 13px;
  line-height: 18px;
  font-family: "rubik",sans-serif;
  font-variant: normal;
}

.backtotop img{
  width: 75%;
}

#about #aboutheaderimg{
  background-image: url(../img/aboutheaderimage.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;
  width: 100vw;
  position: absolute;
  top: 0;
  z-index:-1;
}
#about .aboutheader{
  height: 98vh;
  width: 100%;
  display: flex;
  align-items: center;
}
#about .aboutheader a{
  position: relative;
}
#about .introtext {
  margin-top: 50px;
}
#about p:not(:first-child){
  margin-bottom: 30px;
}
.longheadertitle{
  justify-content: center;
  display: flex;
  margin-top: 50px;
  color: #fff;
}
#about .playsoundlink, #about .mutesoundlink{
  mix-blend-mode: difference;
}
#about .abouttext{
  column-count: 2;
  column-gap: 50px;
  margin-bottom: 100px;
  widows: 3;
}
#about #instrumentsec{
  height: 600px;
  background-image: url(../img/aboutinstru.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
}
#about #instrumentsec h3, .artisticstatement h3{
  margin-bottom: 25px;
}
#about .artisticstatement h3{
  margin-bottom: 50px;
}
#about #instrumentsec p, #about #instrumentsec h3, #about #instrumentsec a{
  color: rgb(6, 6, 6) !important;
}
#about .artisticstatement{
  padding: 150px 0 100px 0;
}
#about .artisticstatement .grid-x div{
  padding-right: 30px;
}
#about .artisticstatement .artstattitles, .artstattitles p{
  font-family: "GtAlpina";
  font-size: 19px;
  line-height: 28px;
}
#about .thanks{
  margin-bottom:200px;
}
#about .thanks .artstattitles{
  padding:100px 0 60px 0;
}

#about .aboutplay{
  text-align: right;
  cursor: pointer !important;
}

.btt{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 50px 0;
}
.btt a{
  position: relative;
}
.btt a h4{
  position: absolute;
  text-align: center;
  top: 30px;
  left: 28px;
}
.btt line{
  fill: #E5DACD;
}
.btt path, .btt polyline, .btt .st0{
  stroke: #E5DACD;
  stroke-width:1;
  transition: all .5s ease-out;
}
.btt svg{
  height: 100px;
  transition: all .5s ease-out;
}

.btt svg:hover{
  transform: translateY(-5px);
  transition: all .5s ease-out;
}

.btt svg:hover path, .btt svg:hover polyline, .btt svg:hover .st0{
  stroke: #fff;
  transition: all .5s ease-out;
}

#agenda .agendatitles h3{
  margin-bottom: 25px;
}
#agenda .datesvenir{
  margin-top: 25px;
}
#agenda .maininfo h3:nth-child(2) p{
  font-family: "GtAlpinaItalic";
  font-variant: normal;
}
#agenda .secondinfo{
  position: relative;
}
#agenda .datesvenir h3 p{
  font-size: 23px;
line-height: 43px;
font-family: "GtAlpina";
}
#agenda .datesvenir h3{
  font-size: 23px;
font-family: "GtAlpina";
}
#agenda .datesvenir .linesep{
  margin-top: 25px;
}
#agenda .secondinfo div, #agenda .maininfo div{
  margin-right: 15px;
  border-right: 1px solid #88837E;
  padding-right: 10px;
}
#agenda .maininfo div{
  padding-right: 15px;
}
#agenda .secondinfo p:first-child{
  font-family: "GtAlpina";
}
#agenda .secondinfo p, #agenda .timing .heure{
  font-family: "GtAlpina";
  font-size: 23px;
  line-height: 43px;
}
#agenda .timing .heure, #agenda .timing h3{
  font-variant: normal !important;
}
#agenda .datesvenir a{
  border-bottom: 1px solid #E5DACD;
}
#agenda .concertspasses{
  margin-top: 200px;
}
#agenda .concertspassesinfos{
  margin-top: 25px;
  margin-bottom: 100px;
}
#agenda .concertspassesinfos .day{
  margin-top: 50px;
}
#agenda .concertspassesinfos .day h3, .concertspassesinfos .day p{
  font-family: "GtAlpina";
  font-size: 23px;
  line-height: 33px;
  justify-content: center;
  align-items: center;
  display: flex;
  font-variant: normal;
}
#agenda .concertspassesinfos .day p::before{
  content: " – ";
  margin: 0 5px;
}
#agenda .concertspassesinfos .maininfo h3{
  font-family: "GtAlpina";
  font-size: 23px;
  font-variant: normal;
}
#agenda .concertspassesinfos .maininfo p{
  font-family: "GtAlpinaItalic";
  font-size: 23px;
  font-variant: normal;
  justify-content: center;
  align-items: center;
  display: flex;
}
#agenda .concertspassesinfos .maininfo h3::after{
  content: " – ";
  margin: 0 5px;
}
#agenda .concertspassesinfos .secondinfo p:nth-child(1)::after{
  content: " – ";
  margin: 0 5px;
}
#agenda .concertspassesinfos .secondinfo p:nth-child(2){
  font-family: "GtAlpinaItalic";
  font-size: 23px;
  font-variant: normal;
}

#agenda .more{
  position: relative;
  transition: all .5s ease-out;

}

#agenda .more:hover{
  transform: translateX(-5px);
  transition: all .5s ease-out;
}

#agenda .more a{
  font-size: 23px;
    line-height: 33px;
    font-family: "GtAlpina";
    border-bottom: none;
    z-index: 100;
    width: 120px;
    height: 80px;
    display: inline-block;
    align-items: center;
    justify-content: center;
    text-align: left;
    padding-top: 30px;
}

#agenda .more h4{
  position: absolute;
  display: flex;
}

#agenda .more svg{
  position: absolute;
top: 0;
width: 100px;
z-index: -1;
left: -15px;
}

.inspirationpage .ytp-impression-link-text, .inspirationpage .ytp-title-channel-logo{
  display: none !important;
}

.inspirationpage iframe, #gallery iframe{
  border: none;
}

.inspirationpage button {
  mix-blend-mode: difference !important;
}

.inspirationpage .projet, #gallery .projet{
  padding: 25px;
  margin-bottom: 25px;
}

.inspirationpage .projetcadre, #gallery .projetcadre{
  border: 1px solid #88837E;
}

#gallery #Photos{
  border: 1px solid #A75CF2 !important;
}
#gallery #Videos{
  border: 1px solid #4de5bf !important;
}

.inspirationpage .legendeinspi p{
  font-family: "GtAlpinaItalic";
  font-size: 19px;
  margin-top: 25px;
}

.inspirationpage h2{
  margin-bottom: 10px;
}

.inspirationpage .textcourt p{
  font-family: "GtAlpina";
  font-size: 40px;
  line-height: 45px;
}

.inspirationpage .subtitleinspi p{
  font-variant: normal;
  margin-bottom: 100px;
}

#contact #contactform{
  z-index: 30;
  position: relative;
  margin-bottom: 150px;
}

#contact #contactform .field input{
  border-bottom: 1px solid #88837E;
  border-top: none;
  border-left: none;
  border-right: none;
  background: none;
  height: 6vh;
  color: #E5DACD;
  font-family: "rubik",sans-serif;
}
#contact #contactform textarea{
  border: 1px solid #88837E;
  background: none;
  resize: none;
  height: calc(100% - 50px);
  color: #E5DACD;
  font-family: "rubik",sans-serif;
}

#contact #contactform label{
  color: #E5DACD;
  font-size: 19px;
  font-variant: small-caps;
}

#contact .submit{
  display: flex;
  align-items: end;
  position: relative;
}

#contact .submit input{
  cursor: pointer;
  position: absolute;
  bottom: -44px;
  right: -15px;
  border-radius: 50px;
  border: 1px solid #88837E;
  transition: all .3s ease-out;
}

#contact .submit input:hover{
  color: #fff;
  border: 1px solid #fff;
  transition: all .3s ease-out;
}

#contact .contactimg{
  display: flex;
  align-items: end;
}

#project .main{
  margin-top: 100px;
  position: relative;
}

#project .introtext{
  margin-left: -8.3333%;
}

#project .introtext h4{
  margin-top: 150px;
}

#project .textepageproj{
  column-count: 2;
  column-gap: 50px;
}

#project .backall svg{
  margin-top: 100px;
  width: 55px;
  transition: all .5s ease-out;

}

#project .backall svg:hover{
  transform: translateX(-10px) !important;
  transition: all .5s ease-out;
}

#project h2{
  margin-top: 50px;
  margin-bottom: 25px;
  z-index: 10;
  position: relative;
}

#project .projectinfo p{
  font-size: 19px;
    font-family: "GtAlpinaItalic";
    font-style: normal !important;
    width: 60%;
}

#project .vid{
  margin: 150px 0 150px 0;
}
#project .vid iframe{
  color: #e5dacd00;
}

 /*
 * Viola Da What?
 */

 .violadawhati .violadawhatintro{
  padding-bottom: 100px;
  margin-top: 100px;
 }

 .violadawhati .violadawhatintro h3{
  padding-bottom: 50px;
  position: relative;
 }

 .violadawhati .linelefttext{
  width: 7.5%;
  position: absolute;
  left: 7.333%;
  margin-top: 24px;
  border-top: 1px solid #E5DACD;
 }

 .violadawhati #wdwheaderimg{
  background-image: url(../img/wdwimage.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;
  width: 100vw;
  position: absolute;
  top: 0;
  z-index:-1;
}

.violadawhati .illustrationsvg svg{
  margin-bottom: 50px;
}

.violadawhati .illustrationsvg svg g{
  cursor: pointer;
}

.violadasong{
  cursor: pointer !important;
}

.violadawhati .illustrationsvg svg g path, .illustrationsvg svg g line{
  transition: all .3s ease-out;
}

.videoyoutube{
  color: rgba(204, 204, 204, 0);
}

.line{
  opacity: 0;
  transition: all .3s ease-out;
}

.text{
  opacity: 0;
  transition: all .3s ease-out;
}

.textright{
  text-anchor:end;
}

#cordes{
  pointer-events: none;
}

.violasvgappear{
  opacity: 1;
  transition: all .3s ease-out;
}

.violasvgcolor{
  stroke: #A75CF2 !important;
  transition: all .3s ease-out;
}

.violadawhati .familyinstrubackground{
  background-image: url(../img/violadawhatbckgrnd.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: #000;
}

.violadawhati #familyinstru h3{
  margin-bottom: 50px;
}

.violadawhati #familyinstru .familyinstrubackground .grid-cont{
  padding-top: 150px;
}
.violadawhati #familyinstru .familyinstrubackground .grid-cont {
  padding-top: 50px;
}

.violadawhati .familyinstrubackground .lineleft{
  border-left: 1px solid #E5DACD;
  height: 100%;
  left: 7.333%;
  top: 0;
  position: absolute;
}

.violadawhati .column2text{
  column-count: 2;
  column-gap: 50px;
  margin-bottom: 150px;
}

.violadawhati #violadawhatvideo .grid-cont{
  padding-top: 50px;
}

.violadawhati .timeline{
  margin-top: 250px;
  position: relative;
  margin-bottom: 200px;
}

.violadawhati .timeline h3{
  position: relative;
}

.violadawhati .timeline .middleline{
  height: calc(100% - 45px);
  position: absolute;
  width: 1px;
  left: 50%;
  top: 45px;
  background: #88837E;
}

.violadawhati .timeline .linesep{
  margin-bottom: 150px;
}

.violadawhati .textrightmarg .linetimelinetitle{
  width: 18%;
  height: 1px;
  background: #88837E;
  position: absolute;
  left: 1px;
  top: 20px;
}

.violadawhati .textleftmarg .linetimelinetitle{
  width: 18%;
  height: 1px;
  background: #88837E;
  position: absolute;
  right: -1px;
  top: 20px;
}

.violadawhati .phtoleftmarg{
  padding-right: 8.3333%;
  margin-bottom: 100px;
}
.violadawhati .phtorightmarg{
  padding-left: 8.3333%;
  margin-bottom: 100px;
}
.violadawhati .textleftmarg{
  padding-right: 10%;
  position: relative;
}
.violadawhati .textrightmarg{
  padding-left: 10%;
  position: relative;
}

.violadawhati .questions .textrightmarg{
  padding-left: 23.5%;
  position: relative;
}

.violadawhati .timeline h3:not(.bigtitle), .comparequestions h3{
  padding-bottom: 50px;
}

.violadawhati .comparequestions .middleline{
  height:100%;
  position: absolute;
  width: 1px;
  left: 50%;
  background: #88837E;
}

.violadawhati .comparequestions .sepsection{
  margin-bottom: 200px;
}

.violadawhati .comparequestions{
  margin-bottom: 200px;
}

.violadawhati .overseas{
  margin-top: -200px;
  margin-bottom: 150px;
}

.violadawhati .firsttextviola{
  margin-bottom: 150px;
}

.violadawhati .frenchschool{
  margin-bottom: 150px;
}

.violadawhati .compareintro, .comparextro, .questions .textrightmarg{
  margin-bottom: 150px;
}

.violadawhati .compareviola{
  text-align: right;
  padding-right: 10%;
}

.violadawhati .comparextro{
  margin-top: 7px !important;
}

.violadawhati .openmore1 p:nth-child(3) {
  display: none;
}

.violappear{
  display: block !important;
}

.violadawhati .openmoretext{
  position: relative;
  width: 40px;
  height: 40px;
  cursor: pointer;
  transition: all ease-out 0.5s;
}

.violadawhati .openmoretext div{
  width: 35px;
  height: 1px;
  background: #E5DACD;
  position: absolute;
}

.violadawhati .openmoretext div:first-child{
  transform-origin: center;
  transform:rotate(90deg);
  top: 15.5px;
}
.violadawhati .openmoretext div:nth-child(2){
  transform-origin: center;
  transform:rotate(0deg);
  top:15px;
}

.violadawhati .sidenote2{
  display: none;
}

.violarotate{
  transform: rotate(45deg) !important;
  transition: all ease-out 0.5s;
}

.violadawhati .bowingout{
  margin-top: -400px;
}
.violadawhati .anotherquestion{
  height: 400px;
}
.violadawhati .anotherquestion h3{
  text-align: center;
  margin-top: 100px;
}
.violadawhati .anotherquestion .menubuttons{
  text-align: center;
  position: relative;
}
.violadawhati .anotherquestion .menubuttons div{
  position: absolute;
  left:50%;
  top: 50px;
  margin-left:-45px;
}
.violadawhati .anotherquestion .menubuttons h4{
  padding-top: 16px;
}

.violadawhati .sepsection{
  border-top: 1px solid #88837E;
}

#gallery .filter{
  padding-left: 20px;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */


   /* Small Desktop */
  @media screen 
  and (min-device-width: 1024px) and  (max-device-width: 1340px), (min-width: 1024px)  and (max-width: 1340px)   {
    h3 {
      font-size: 30px;
      line-height: 35px;
      font-family: "GtAlpina";
    }
  }

  /* IPAD Portrait and Landscape */
  @media screen 
  and (min-device-width: 768px) and  (max-device-width: 1023px), (min-width: 768px)  and (max-width: 1023px)   {
    #teaserproject h2 {
      margin-left: -75px;
      margin-top: 50px;
      margin-bottom: 0;
    }
    #teaserproject p, #teaserproject .menubuttons, #aboutteaser .menubuttons {
      padding: 25px 0 0 50px;
    }
    h2 {
      font-size: 60px;
      line-height: 65px;
      margin: 100px 0 50px 0;
    }
    #aboutteaser h2 {
      margin-top: 150px;
      margin-bottom: 50px;
    }
    #aboutteaser {
      height: auto;
    }
    .chermenu {
      left: 120vw;
    }
    .chermenu .instrusvg svg {
      height: 60%;
      width: auto;
    }
    .chermenu .projectslink {
      top: 0;
      left: -10%;
    }
    .chermenu .contactlink {
      top: 0;
      left: 59vw;
    }
    .chermenu .gallerylink {
      top: 16%;
      left: 58vw;
    }
    .chermenu .violadawhatlink {
      top: 41%;
      left: 53vw;
    }
    .menulinksitalico {
      font-size: 21px !important;
    }
    h4, .h4{
      font-size: 21px;
      line-height: 31px;
     }
     h1{
      font-size: 21px;
      line-height: 31px;
     }
     .accueil .sound {
      bottom: 65px;
    }
     #header h1, .chermenu h1{
      font-size: 21px;
    }
    #header h3, .chermenu h3{
      font-size: 21px;
    }
    .introtext h4 p{
      font-size: 21px;
      line-height: 31px;
    }
    #gallery .filter {
      padding-left: 0;
    }
    .menubuttons div, .submit input{
      font-size: 21px;
      line-height: 31px;
   }
   .languages {
    bottom: 72px;
  }
   .chermenu p{
    font-size: 21px;
   }
   .projectsfilters ul li{
    font-size: 21px;
  }
  #agenda .secondinfo p, #agenda .timing .heure{
    font-size: 21px;
    line-height: 41px;
  }
  #agenda .concertspassesinfos .day h3, .concertspassesinfos .day p{
    font-size: 21px;
    line-height: 31px;
  }
  #agenda .concertspassesinfos .maininfo h3{
    font-size: 21px;
  }
  #agenda .concertspassesinfos .maininfo p{
    font-size: 21px;
  }
  #agenda .concertspassesinfos .secondinfo p:nth-child(2){
    font-size: 21px;
  }
  #agenda .more a{
    font-size: 21px;
      line-height: 31px;
  }
  .projectsfilters ul {
    margin-top: 0;
  }
  .projectgrid{
    margin-top: 50px;
  }
  .projectgrid .projet {
    height: 65vw;
  }
  #project .main {
    margin-top: 50px;
  }
  #project .backall svg {
    margin: 50px 0;
    width: 55px;
  }
  #project .introtext {
    margin-left: 0;
  }
  #about #aboutheaderimg {
    height: 55vh;
  }
  #about .aboutheader {
    height: 50vh;
  }
  p {
    font-size: 15px;
    line-height: 25px;
  }
  em {
    font-size: 16px;
  }
  #about .thanks {
    margin-bottom: 50px;
  }
  h3 {
    font-size: 35px;
    line-height: 40px;
  }
  #agenda .datesvenir h3 p {
    font-size: 35px;
    line-height: 40px;
  }
  #agenda .more h4 {
    position: relative;
    display: flex;
  }
  #contact #contactform textarea {
    height: 350px;
  }
  #contact .submit input {
    bottom: -89px;
    right: 0;
  }
  #contact #contactform .field input {
    height: 5vh;
  }
  #contact .contactimg {
    margin-top: 100px;
  }
  .gallery-items{
    margin-top: 50px;
  }
  .violadawhati #wdwheaderimg {
    height: 62vh;
  }
  #about .introtext{
    margin-top: 50px;
  }
  .text {
    opacity: 1 !important;
  }
  .line {
    opacity: 1 !important;
  }
  .violallegend{
    display: none;
  }
  .violadawhati .comparequestions .sepsection {
    margin-bottom: 50px;
  }
  .violadawhati .timeline .middleline {
    height: calc(100% - 81px);
    top: 81px;
  }
  .violadawhati .timeline {
    margin-bottom: 100px;
  }
  }

    /* === Smartphones ===== */

  @media screen 
  and (max-device-width: 768px), (max-width:768px)  {
    #teaserproject h2 {
      margin-left: 0;
      margin-top: 25px;
      margin-bottom: 25px;
    }
    #teaserproject .menubuttons, #aboutteaser .menubuttons {
      padding: 25px 0 0 50px;
    }
    .cookie_message {
      font-size: 13px;
      padding-left: 5vw;
      line-height: 15px;
      width: 80%;
      padding-top: 5px;
      padding-bottom: 5px;
    }
    #cookie_banner-wrapper {
      font-size: 13px;
    }
    .languages {
      bottom: 80px;
    }
    .accueil .sound {
      bottom: 48%;
    }
    h2 {
      font-size: 45px;
      line-height: 50px;
      margin: 100px 0 50px 0;
    }
    #aboutteaser h2 {
      margin-top: 150px;
      margin-bottom: 25px;
    }
    #aboutteaser {
      height: auto;
    }
    .chermenu {
      left: 140vw;
    }
    .chermenu .instrusvg svg {
      height: 28%;
      width: auto;
    }
    .chermenu .projectslink {
      top: 0;
      left: -7%;
    }
    .chermenu .contactlink {
      top: 53vh;
      left: 50vw;
    }
    .chermenu .gallerylink {
      top: 16%;
      left: 58vw;
    }
    .chermenu .violadawhatlink {
      top: 41%;
      left: 53vw;
    }
    .mobilemenu{
      display: block;
    }
    .mobilemenu .instrusvg{
      column-count: 2;
    }
    .mobilemenu .menulinks{
      position: initial;
      margin-bottom: 10vh;
    }
    .mobilemenu .menulinks{
      position: initial;
      margin-bottom:10px;
    }
    .mobilemenu li{
      break-inside: avoid;
    }
    .mobilemenu img{
      height: 55px;
    }
    .desktopmenu{
      display: none;
    }
    .menulinksitalico {
      font-size: 19px !important;
    }
    h4, .h4{
      font-size: 19px;
      line-height: 29px;
     }
     h1{
      font-size: 19px;
      line-height: 29px;
     }
     #header h1, .chermenu h1{
      font-size: 19px;
    }
    #header h3, .chermenu h3{
      font-size: 19px;
    }
    .introtext h4 p{
      font-size: 19px;
      line-height: 29px;
    }
    .introtext h4 p {
      margin-bottom: 0;
    }
    .menubuttons div, .submit input{
      font-size: 19px;
      line-height: 29px;
   }
   .chermenu p{
    font-size: 19px;
   }
   .projectsfilters ul li{
    font-size: 19px;
  }
  #agenda .secondinfo p, #agenda .timing .heure{
    font-size: 19px;
    line-height: 39px;
  }
  #agenda .concertspassesinfos .day h3, .concertspassesinfos .day p{
    font-size: 19px;
    line-height: 29px;
  }
  #agenda .concertspassesinfos .maininfo h3{
    font-size: 19px;
  }
  #agenda .concertspassesinfos .maininfo p{
    font-size: 19px;
  }
  #agenda .concertspassesinfos .secondinfo p:nth-child(2){
    font-size: 19px;
  }
  #agenda .more a{
    font-size: 19px;
      line-height: 29px;
  }
  .projectsfilters ul {
    margin-top: 0;
  }
  .projectgrid{
    margin-top: 50px;
  }
  .projectgrid .projet {
    height: 118vw;
  }
  #project .main {
    margin-top: 50px;
  }
  #project .backall svg {
    margin: 50px 0;
    width: 55px;
  }
  #project .introtext {
    margin-left: 0;
  }
  #project .textepageproj {
    column-count: 1;
  }
  #project h2 {
    margin-top: 0;
    margin-bottom: 25px;
    z-index: 10;
    position: relative;
  }
  #about #aboutheaderimg {
    height: 80vh;
  }
  #about .artisticstatement {
    padding: 50px 0 100px 0;
  }
  #about .aboutheader {
    height: 70vh;
  }
  p {
    font-size: 15px;
    line-height: 25px;
  }
  em {
    font-size: 16px;
  }
  #about .thanks {
    margin-bottom: 50px;
  }
  h3 {
    font-size: 30px;
    line-height: 35px;
  }
  #agenda .datesvenir h3 p {
    line-height: 28px;
  }
  #agenda .more h4 {
    position: relative;
    display: flex;
  }
  #agenda .more svg {
    position: absolute;
    top: -3px;
    width: 80px;
    z-index: -1;
    left: -15px;
  }
  #agenda .concertspassesinfos {
    margin-top: 0;
  }
  #contact #contactform textarea {
    height: 350px;
  }
  #contact .submit input {
    bottom: -80px;
    left: 0;
  }
  #contact #contactform .field input {
    height: 5vh;
  }
  .gallery-items{
    margin-top: 50px;
  }
  #gallery .filter {
    padding-left: 0;
  }
  .violadawhati #wdwheaderimg {
    height: 85vh;
  }
  #about .introtext{
    margin-top: 50px;
    margin-bottom: 30px;
  }
  .text {
    opacity: 1 !important;
  }
  .line {
    opacity: 1 !important;
  }
  .violallegend{
    display: none;
  }
  .violadawhati .comparequestions .sepsection {
    margin-bottom: 50px;
  }
  .violadawhati .timeline .middleline {
    opacity: 0;
  }
  .violadawhati .timeline {
    margin-bottom: 100px;
  }
  .languages li {
    margin-right: 8px;
  }
  .sound {
    bottom: 48%;
  }
  .menubuttons div, .submit input {
    width: 80px;
    height: 80px;
  }
  #aboutteaser {
    background-size: 100%;
  }
  .projectsfilters ul li {
    margin-right: 5px;
  }
  #about #aboutheaderimg {
    background-position: right;
  }
  #about .abouttext {
    column-count: 1;
  }
  #about #instrumentsec {
    height: 530px;
  }
  #agenda .secondinfo div, #agenda .maininfo div {
    border-right: none;
  }
  #about .abouttext {
    margin-bottom: 50px;
  }
  .violadawhati .illustrationsvg svg {
    margin-bottom: 0;
  }
  .violadawhati .column2text {
    column-count: 1;
    margin-bottom: 100px;
  }
  .videoyoutube{
    height:300px;
  }
  .violadawhati .timeline .linesep {
    margin-bottom: 50px;
  }
  .violadawhati .textrightmarg .linetimelinetitle {
    opacity: 0;
  }
  .violadawhati .phtoleftmarg {
    margin-bottom: 50px;
  }
  .violadawhati .textrightmarg {
    padding-left: 0;
  }
  .violadawhati .textleftmarg .linetimelinetitle {
    opacity: 0;
  }
  .violadawhati .phtorightmarg {
    padding-left: 0;
    margin-bottom: 50px;
  }
  .violadawhati .overseas {
    margin-top: 0;
  }
  .violadawhati .frenchschool {
    margin-bottom: 50px;
  }
  .violadawhati .bowingout {
    margin-top: 0;
  }
  .violadawhati .overseas {
    margin-top: 0;
    margin-bottom: 50px;
  }
  .violadawhati .comparequestions .middleline {
    opacity: 0;
  }
  .violadawhati .compareintro, .comparextro, .questions .textrightmarg {
    margin-bottom: 50px;
  }
  .violadawhati .questions .textrightmarg {
    padding-left: 0;
  }
  .violadawhati #wdwheaderimg {
    background-position: left;
  }
  .violadawhati .timeline {
    margin-top: 100px;
  }
  .violadawhati .violadawhatintro {
    margin-top: 50px;
  }
  #contact .contactimg {
    margin-top: 100px;
  }
  .btt svg {
    height: 80px;
  }
  }

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

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
 * Extends the .sr-only class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
 * Hide visually and from screen readers, 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.
 */

.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}

.clearfix::after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These 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 print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    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 that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

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

  /*
   * Printing Tables:
   * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }

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

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

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

/* ------- Magnific Popup CSS ------- */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  max-height: 100vh !important;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }


