body {
  padding: 0px;
  margin: 0px;
  font-family: 'Open Sans', sans-serif;
  color: #000;
  font-weight: 300;
  font-size: 16px;
  height: 100%;
  width: 100%;
  overflow-x: hidden;
  overflow-y: hidden;
}

html {
  height: 100%;
}

@font-face {
    font-family: "Loveline";
    src: url("../files/Loveline.ttf");
}

@font-face {
    font-family: "Brixton";
    src: url("../files/Brixton.ttf");
}

h1 {
  padding: 0px;
  margin: 0px;
  margin-top: -20px;
  font-family: "Loveline";

  font-size: 80px;
  background-image: url("../images/noise.png"),-webkit-linear-gradient(top, #ffe088, #ac8736);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 400;
}

h2 {
  padding: 0px;
  margin: 0px;
  font-family: "Loveline";
  font-weight: bold;
  font-size: 40px;
  color: #5d4b34;
}

article {
  font-family: "Brixton","Georgia",serif;
  color: #708963;
  font-size: 16px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding-top: 5px;
  box-sizing: border-box;
}

article.larger {
  font-size: 1.1em;
}

article.small-margin {
  margin-bottom: 10px;
}

a:link,a:visited { color: #555; }

.slide-in {
  opacity: 0;
}

#front-page,#front-leaves {
  display: none;
}

header {
  position: fixed;
  display: block;
  z-index: 9999;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 70px;
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
  text-align: center;
  font-weight: 300;
  opacity: 0.95;
}

header:hover {
  opacity: 1;
}

header > div,header > a:link {
  display: inline-flex;
  height: 100%;
  padding: 0px 20px;
  align-items: center;
  box-sizing: border-box;
  text-transform: uppercase;
  text-decoration: none;
  border: none;
}

#menu-button {
  border-right: 1px solid #ddd;
  float: left;
  cursor: pointer;
}

#menu-button:hover {
  background-color: #eee;
}

.menu-hamburger {
  display: inline-block;
  height: 15px;
  width: 20px;
  margin-right: 10px;
}

.menu-hamburger .menu-bar:after {
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 0%;
  background: #3b9800;
  transition: 0.3s ease all;
}

#next-page.disabled {
  bottom: -120px;
}

#next-page {
  position: fixed;
  left: 50%;
  margin-left: -50px;
  bottom: -50px;
  height: 100px;
  width: 100px;
  border-radius: 100px;
  background: url("../images/down-arrow.png") no-repeat #fff;
  background-position: 50% 25%;
  background-size: 20%;
  box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
  z-index: 9999;
  cursor: pointer;
  transition: 0.5s ease all;
}

#next-page:hover {
  background-color: #eee;

}

#menu-button:hover .menu-bar:after {
  width: 100%;
}

.menu-bar {
  display: block;
  width: 100%;
  height: 3px;
  background: #000;
  margin-bottom: 3px;
  position: relative;
}

.menu-hamburger .menu-bar:nth-child(1) {
  width: 70%;
}

.menu-hamburger .menu-bar:nth-child(2) {
  transition-delay: 500ms !important;
  width: 100%;
}

.menu-hamburger .menu-bar:nth-child(3) {
  transition-delay: 0.2s;
  width: 50%;
  margin: 0px;
}

.menu-hamburger .menu-bar:nth-child(1):after {

}

.menu-hamburger .menu-bar:nth-child(2):after {
  transition-delay: 100ms;
}

.menu-hamburger .menu-bar:nth-child(3):after {
  transition-delay: 200ms;
}

#site-logo {
  background: url("../images/monogram.png");
  background-size: auto 80%;
  background-repeat: no-repeat;
  background-position: center;
  width: 80px;
  position: absolute;
  left: 50%;
  margin-left: -40px;
  transition: 0.3s ease all;
}

#volume-speaker {
  border-left: 1px solid #ddd;
  width: 70px;
  background: url("../images/speaker.png");
  background-size: auto 30%;
  background-repeat: no-repeat;
  background-position: center;
  float: right;
  cursor: pointer;
}

#volume-speaker.volume-disabled, #volume-speaker:hover {
  background-image: url("../images/speaker-mute.png");
}

#volume-speaker:hover {
  background-color: #eee;
}

#preload-images {
  position: fixed;
  left: 99999px;
  top: 99999px;
  opacity: 0;
}

#splash-screen {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 999999;
  overflow-y: scroll;
}

#monogram {
  width: 200px;
  height: 200px;
  display: block;
  background: url("../images/monogram.jpg") no-repeat center;
  background-size: 80%;
}

@keyframes pulsate  {
  0% { opacity: 1.0; }
  40% { opacity: 1.0; }
  100% { opacity: 0; }
}

#loading-description {
  width: 100%;
  position: absolute;
  top: 50%;
  margin-top: 80px;
  left: 0px;
}

#circle-leaves {
  position: absolute;
  top: calc(50% - 10px);
  left: -50px;
  width: 0px;
  height: 0px;
}

#circle-leaves span {
  position: absolute;
  width: 300px;
  height: 20px;
  background: url("../images/leaf.png") transparent;
  background-position: right;
  background-repeat: no-repeat;
  background-size: auto 100%;
  opacity: 0.1;
  transition: 2s ease all;
}

#circle-leaves span.loaded {
  opacity: 1.0;
}

#circle-leaves span:nth-child(1) { transform: rotate(270deg); }
#circle-leaves span:nth-child(2) { transform: rotate(285deg); }
#circle-leaves span:nth-child(3) { transform: rotate(300deg); }
#circle-leaves span:nth-child(4) { transform: rotate(315deg); }
#circle-leaves span:nth-child(5) { transform: rotate(330deg); }
#circle-leaves span:nth-child(6) { transform: rotate(345deg); }

#circle-leaves span:nth-child(7) { transform: rotate(0deg); }
#circle-leaves span:nth-child(8) { transform: rotate(15deg); }
#circle-leaves span:nth-child(9) { transform: rotate(30deg); }
#circle-leaves span:nth-child(10) { transform: rotate(45deg); }
#circle-leaves span:nth-child(11) { transform: rotate(60deg); }
#circle-leaves span:nth-child(12) { transform: rotate(75deg); }
#circle-leaves span:nth-child(13) { transform: rotate(90deg); }
#circle-leaves span:nth-child(14) { transform: rotate(105deg); }
#circle-leaves span:nth-child(15) { transform: rotate(120deg); }
#circle-leaves span:nth-child(16) { transform: rotate(135deg); }
#circle-leaves span:nth-child(17) { transform: rotate(150deg); }
#circle-leaves span:nth-child(18) { transform: rotate(165deg); }
#circle-leaves span:nth-child(19) { transform: rotate(180deg); }
#circle-leaves span:nth-child(20) { transform: rotate(195deg); }
#circle-leaves span:nth-child(21) { transform: rotate(210deg); }
#circle-leaves span:nth-child(22) { transform: rotate(225deg); }
#circle-leaves span:nth-child(23) { transform: rotate(240deg); }
#circle-leaves span:nth-child(24) { transform: rotate(255deg); }

#svg-wrapper {
  position: relative;
  display: none;
}

.no-pulsate {
  animation: 0s !important;
}

.bar {
  width: 0%;
  border-bottom: 2px solid;
  position: absolute;
  transition: 1s ease all;
}

#bar-1 {
  right: 55%;
  border-color: #365433;
}

#bar-2 {
  left: 55%;
  border-color: #c1a048;
}

.bg { background: #0099ff; }

#page1 {
  padding-top: 35px;
  box-sizing: border-box;
  background: url("../images/bg1.jpg") no-repeat top right, url("../images/bg2.jpg") no-repeat bottom left;
}

.page,.banner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: center;
  position: relative;
}

.banner {

}

#leaves {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.leaves1 {
  position: absolute;
  left: -15vw;
  width: 30vw;
  top: -15vh;
  animation: 2s linear leavesRepeat infinite alternate;
}

.leaves2 {
  position: absolute;
  width: 30vw;
  height: auto;
  left: -7vw;
  top: 20vh;
  z-index: 999;
}

.leaves3 {
  position: absolute;
  width: 30vw;
  height: auto;
  right: -7vw;
  top: -30vh;
  z-index: 999;
  transform: rotate(-10deg);
  animation: 2s linear leavesRepeat infinite alternate;
}

.leaves4 {
  position: absolute;
  width: 30vw;
  height: auto;
  right: -7vw;
  top: 20vh;
  z-index: 999;
  transform: rotate(-180deg);
}

.leaves5 {
  position: absolute;
  width: 30vw;
  height: auto;
  left: -7vw;
  top: -10vh;
  z-index: 999;
  transform: rotate(-170deg);
  animation: 2s linear leavesRepeat infinite alternate;
}

.flower {
  position: absolute;
  width: 70%;
  height: auto;
  bottom: 0px;
  left: -15%;
  bottom: -8%;
  z-index: 999;
}

.banner {
  height: auto;
  display: block;
  background: #eee;
  padding: 100px 0px;

}

.wrapper-image {
  display: block;
  position: relative;
}

.page img.normal-image:hover {
  /*transform: scale(1.1);
  opacity: 0.8;*/
}

.banner img.normal-image {
  height: 70%;
  max-width: 50%;
}

img.normal-image,.wrapper-image {
  /*transition: 0.3s ease all;*/
  height: 80%;
}

#quirky-dots {
  display: inline-block;
  width: 80%;
  margin: auto 10%;
}

.page .wrapper-image > img.normal-image {
  /*transition: 0.3s ease all;*/
  height: 100%;
}

table h2 {
  color: #83a065;
  font-size: 30px;
}

table {
  max-width: 60%;
}

table {
  border-collapse: collapse;
}

table td {
  padding: 0px 40px;
}

table img {
  max-width: 90%;
  border-radius: 100%;
  display: inline-block;
}

.royal-image:hover,.sebel-image:hover {
  border-radius: 10px;
}

.royal-image {
  background-image: url("../images/royal.jpg");
}

.sebel-image {
  background-image: url("../images/sebel.jpg");
}

.royal-image,.sebel-image {
  display: inline-block;
  background-size: auto 100%;
  background-position: center;
  border-radius: 100%;
  background-repeat: no-repeat;
  height: 400px;
  width: 400px;
  box-shadow: 0px 10px 10px rgba(0,0,0,0.2);
  transition: 0.2s ease all;
}

table td {
  width: 50%;
}

@media screen and (max-width: 1200px) {
  #site-logo {
    left: 50px;
  }

  #front-page {
    display: unset;
  }

  .slide-in {
    opacity: 1.0;
    display: none;
  }

  .slide-in[side='center'] {
    display: unset;
  }

  #page1 {
    background-size: 50%;
    padding-top: 120px;
  }

  img.normal-image,.wrapper-image,.banner img.normal-image,.page .wrapper-image > img.normal-image {
    /*transition: 0.3s ease all;*/
    height: auto;
    max-width: 80%;
  }

  .page,.banner {
    padding: 50px 0px;
    height: auto;
  }

  h1 {
    font-size: 40px;
  }

  h2 {
    font-size: 24px;
  }

  article {
    font-size: 10px;
  }

  article.larger {
    font-size: 1.0em;
  }

  .banner {
    padding: 50px 20px;
    box-sizing: border-box;
  }
}
