/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*
modifications to original reset, avoid unwated white space between elements
*/
body {
  font-size: 0;
}

/*
apply a natural box layout model to all elements
*/
*,
*:before,
*:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

/*
reset the fontello default margin
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  width: auto !important;
  margin-right: 0px !important;
  margin-left: 0px !important;
}html, body {
  height: 100%;  
  background: url('/site/img/background-darker.jpg') repeat top left;
}

body {
  font-family: "garamond-premier-pro",serif;
  min-width:1024px;
}

a {
  color:black;
  text-decoration: none;
}

p,h1,h2,h3,h4,h5,h6 {
  font-size: 18px;
  line-height: 1.4;
}

p,h2,h3,h4,h5,h6 {
  margin-top:10px;
}

p:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child {
  margin-top:0px;
}

p {
  margin-top:10px;
}

h2 {
  font-size: 36px; 
  font-weight: bold;
  line-height: 1.1;
}

h3 {
  font-size: 24px; 
  font-weight: bold;
}

h4 {
  font-size: 18px; 
  font-weight: bold;
}

h5 {
  font-size: 16px; 
  font-weight: bold;
}

.webfonts-loading .webfont{
  visibility: hidden;
}

/*
Viewport
*/
div.viewport-intro {
  position:relative;
}

.viewport-canvas {
  position:relative;
  height: 100%;
  min-width: 1024px; 
  overflow: hidden;  
}

span.scrollToTop {
  display:none;
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 50px;
  height: 50px;
  background: url(/site/img/up-button.png);
  background-size: cover;
  cursor: pointer;
}

/*
Header
*/
div.header-wrapper {
  min-height:80px;
}

.viewport-canvas div.header-wrapper{
  position:absolute;
  top:0;
  right:0;
  left:0;    
}

div.header {
  height:80px;
  z-index:1;
  text-align: center;
  position:relative;
  background: url('/site/img/background-darker.jpg') repeat top left;
  color:white;
}

div.header a.logo{
  display:inline-block;
  line-height:32px;
  font-size:32px;
  text-transform: uppercase;
  font-weight: bold;
  color:white;
  padding-top:16px;
  height:80px;
}

div.header a.logo span {
  display:block;  
  line-height:15px;
  font-size: 15px;
  padding-top:4px;
  text-align: center;
}

div.header .buttons {
  position: absolute;
  display: inline-block;
  top: 0px;
  right: 0px;
}


div.header .buttons span {
  position: relative;
  display: inline-block;
  cursor: pointer;
  text-transform: uppercase;
  padding:0 20px 0 0;
  line-height:80px;
  font-size: 16px;
}

div.header .buttons span:last-child {
  padding:0 15px 0 0;
}

div.header .buttons i.icon-home {
  padding-right: 7px;
  font-size: 16px;
  line-height: 78px;
  display: inline-block;
  vertical-align: top;  
}

div.header .buttons i.icon-menu {
  padding-right: 7px;
  font-size: 17px;
}

div.header .buttons i.icon-info {
  padding-right: 7px;
  font-size: 18px;
}

.viewport-intro div.header .buttons span.button-home {
  display:none;  
}

/*
Desktop Menu
*/
div.menu {
  position:relative;
  font-size:22px;
  margin-top:-1000px;
  text-align:center ;
}

div.menu ul {
  padding:8px 20px;
  display:inline-block;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
  margin-bottom:25px;
}

div.menu li {
  text-transform: lowercase;
  font-size: 26px;
  padding:8px 0;
}

div.menu li a{
  color:white;
}

/*
Topslider
*/
div.top-slider-outer {
  position:relative;
}

div.top-slider .top-inner {
  position:relative;
  padding-bottom:35%;
}

div.top-slider .slider-wrapper {
  position:absolute;
  top:0px;
  right:0px;
  bottom:0px;
  left:0px;
}

div.top-slider .slider-wrapper-inner {
  width:100%;
  height:100%;
}

/*
intro
*/
div.intro {
  max-width: 1280px;
  padding: 0px 20px;
  margin: auto;
}

div.intro .item-wrapper {
  margin-top:35px;
}

div.intro .image,
div.intro .body {
  display:inline-block;
  width:50%; 
  vertical-align: middle;
  text-align: center; 
}

div.intro .image {
  padding-bottom: 50%;
  position:relative;  
}

div.intro .image img {
  width:100%;
  height:100%;
}

div.intro .image-inner {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

div.intro .body-outer {
  max-width:95%;
  margin:auto;    
}

div.intro .body-inner {
  max-width:480px;
  margin:auto;  
}

div.intro .even .before {
  display:none;
} 

div.intro .odd .after {
  display:none;
} 

div.intro .round-image img {
  border-radius: 50%;
}

div.intro p.empty-paragraph {
  display:none;
}

div.intro h2 {
  font-family: 'WanderlustLetters-Regular';
  font-size: 66px;
  line-height: 1;
}

div.intro h2 + p {
  margin-top: 10px;
}

div.intro p {
  font-size:22px;
  line-height: 1.4;
}

div.intro a {
  text-decoration: underline;
}

div.intro-footer {
  margin-top: 35px;
  padding:20px;
  background: url('/site/img/background-darker.jpg') repeat top left;
  color:white;
}


/*
intro
*/
div.intro-footer p {
  font-size:20px;
  line-height: 1.4;
}

div.intro-footer a {
  color:white;
}

div.intro-footer p.empty-paragraph {
  display:none;
}

/*
content-wrapper
*/
div.viewport-intro div.content-wrapper {
  position:relative;
  background: url('/site/img/background-lighter.jpg') repeat top left;
  
}

div.viewport-canvas div.content-wrapper {
  position:absolute;
  top:80px;
  right:0;
  bottom:0;
  left:0;
}

html.menu-active div.content-wrapper .content-mask {
  position:absolute;
  background-color: rgba(0,0,0,0.4);
  top:0;
  right:0;
  bottom:0;
  left:0;
}

div.canvas-wrapper {
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: 0px;
  width: 400px;
  background: url('/site/img/background-lighter.jpg') repeat top left;
}

div.canvas-wrapper .mycanvas {
  outline: none;
  height: 100%;
  overflow: auto;
  position: relative;
  -webkit-overflow-scrolling: touch;
  padding: 25px 25px;
}

div.canvas-wrapper a {
  text-decoration: underline;
}

div.canvas-wrapper h3 + p,
div.canvas-wrapper h3 + p.price {
  margin-top:10px;
}

div.canvas-wrapper p.empty-paragraph {
  margin-top:20px;
  font-size: 0;
  line-height: 0;
}

div.canvas-wrapper p.price {
  position: relative;
  padding-right: 45px;
  margin-top: 10px;
}

div.canvas-wrapper p.price:first-child {
  margin-top: 10px;
}


div.canvas-wrapper span.price-1 {
  position: absolute;
  right: 0;
  top: 0;
}

div.canvas-wrapper span.price-2 {
  position: absolute;
  right: 0;
  bottom: 0;
}

div.canvas-wrapper .has-2-prices {
  padding-bottom:25px;
}

div.canvas-wrapper p.has-2-prices + p.price {
  margin-top:15px;
}

div.canvas-wrapper.with-buttons {
  bottom:80px;
}

/*
Previous & next buttons
*/
div.content-wrapper a.previous-next-buttons {
  display:inline-block;
  position:absolute;
  height:80px;
  width:200px;
  bottom:0px;
  color:white;
  font-size: 15px;
  text-align: center;
  text-transform: lowercase;
}

div.content-wrapper a.previous-next-buttons i {
  font-size: 18px;
  display:block;
  text-align:center;
  margin-top:20px;
  margin-bottom: 5px;
}

div.content-wrapper a.previous-button {
  right:200px;
}

div.content-wrapper a.next-button {
  right:0px;
}

div.viewport-canvas .intro-footer {
  display:none;
}

.viewport-intro div.supersized-wrapper {
  position: relative;
  height: auto;
  top: auto;
  padding-bottom: 35%;
  bottom: auto;
  left: auto;
  right: auto;
}
  
@media screen and (max-width:1279px) {
  .viewport-intro div.supersized-wrapper {
    padding-bottom: 40%;
  }
}


@media screen and (max-width:1023px) {

  body {
    height: auto;
  }  
  
  body {
    font-family: "garamond-premier-pro",serif;
    background:#f1f1f1;
    min-width:320px;
    min-height: 100%;
  }

  div.viewport-intro,
  div.viewport-canvas {
    background: url('/site/img/background-darker.jpg') repeat top left;
    min-width: 320px;
    max-width: 600px;
    height: auto;
    min-height: 100%;
    margin: auto;
  } 

  .viewport-canvas div.header-wrapper{
      position:static;
      top:auto;
      right:auto;
      left:auto;    
  }

  div.header-wrapper {
    min-height:60px;
  }
  
  div.header {
    height: 60px;  
  }
  
  div.header a.logo {
    line-height: 22px;
    font-size: 22px;
    padding-top: 12px;
    height: 60px;
  }
  
  div.header a.logo span {
    display: block;
    line-height: 12px;
    font-size: 12px;
    padding-top: 4px;
    text-align: center;
  }    
  
  div.header .buttons span {
    padding: 0 10px 0 10px;
    line-height: 65px;
  }
  
  div.header .buttons span:last-child {
    padding: 0 10px 0 10px;
    margin-right:10px;
  }  
  
  div.header .buttons i.icon-home {
    font-size: 16px;
    line-height: 78px;
    display: inline;

  }

  div.header .buttons i {
    padding:0 !important;  
  }
    
  div.header .buttons span :not(i) {
    display:none;
  }
  
  div.viewport-canvas div.content-wrapper {
    position:relative;
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
  }
  
  div.canvas-wrapper {
    position: static;
    top: auto;
    bottom: auto;
    right: auto;
    width: 100%;
  }  
  
  .viewport-intro div.supersized-wrapper {
    padding-bottom: 62%;
  }
  
  div.intro .odd .after,
  div.intro .even .before {
    display: block;
  }
  
  div.intro .image-inner {
    left: 15%;
    right: 15%;
  }  

  div.intro .image,
  div.intro .body {
    width:100%;
  }
  
  div.intro .image {
    padding-bottom: 70%;
  }  
  
  div.intro .before .body-inner  {
    position:relative;
    z-index:9;
  }      

  div.intro .before .body-inner :not(h2) {
    display:none;
  }      

  div.intro .after .body-inner  {
    margin-top:20px
  }      

  div.intro .after .body-inner h2 {
    display:none;
  }
  
  div.supersized-wrapper {
    position: relative;
    height: auto;
    top: auto;
    padding-bottom: 50%;
    bottom: auto;
    left: auto;
    right: auto;
  }
  
  div.intro .image {
    padding-bottom: 70%;
  } 
   
  span.scrollToTop {
    bottom:auto;
    top:10px;
  }
  
  div.content-wrapper a.previous-next-buttons {
      width: 50%;
      bottom: auto;
      position:static;
  }

  div.canvas-wrapper .mycanvas {
    padding-bottom: 50px;  
  }  
  
  div.viewport-canvas .intro-footer {
    display:block;
    margin-top: 0;
  }            

}


@media screen and (max-width:767px) {

  div.header {
    text-align: left;
    padding-left:20px;
  }

}

@media screen and (max-width:424px) {

  div.header {
    padding-left:10px;
  }

  div.header a.logo{
    font-size: 17px;
    line-height:17px;
    padding-top: 15px;
  }

  div.header a.logo span{
    line-height: 11px;
    font-size: 11px;
    padding-top:4px;
    
  }
  
  div.intro h2 {
    font-size:52px
  }
  
  div.intro .image-inner {
    left: 7.5%;
    right: 7.5%;
  }

  div.intro .image {
    padding-bottom: 85%;  
  }
  
  div.canvas-wrapper .mycanvas {
    padding:25px 15px;
  } 
  
}