/**********************************
        _       _           _
  __ _| | ___ | |__   __ _| |
 / _` | |/ _ \| '_ \ / _` | |
| (_| | | (_) | |_) | (_| | |
 \__, |_|\___/|_.__/ \__,_|_|
 |___/

**********************************/
html {
  overflow-y: scroll;
}
html,
body {
  margin: 0;
  padding: 0;
}
body {
  font-family: 'Quicksand', 'Helvetica', 'Arial', sans-serif;
  font-weight: 700;
  font-size: 14px;
}
h1,
h2 {
  font-weight: 400;
  font-size: 40px;
  margin: 0;
}
h3 {
  font-weight: 700;
  font-size: 14px;
  margin: 0;
  margin-bottom: 14px;
}
h4 {
  margin: 0;
  margin-bottom: 14px;
}
a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  text-decoration: underline;
}
a.a-no-hover:hover {
  text-decoration: none;
}
a.is-active {
  text-decoration: underline;
}
p a {
  text-decoration: underline;
}
p a:hover {
  text-decoration: none;
}
p {
  margin: 0;
  padding: 0;
}
ul {
  margin: 0;
  padding: 0;
}
li {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 10px;
}
.absolute {
  position: absolute;
}
.fixed {
  position: fixed;
}
.col,
.col-2,
.col-3,
.col-1of3,
.col-2of3 {
  float: left;
}
.col-2 {
  width: 50%;
}
.col-3 {
  width: 33%;
}
.col-1of3 {
  width: 33%;
}
.col-2of3 {
  width: 66%;
}
.col-space {
  margin-right: 30px;
}
.col-last .col-space {
  margin-right: 0;
}
.has-not {
  text-decoration: line-through;
}
.bullet-list {
  list-style: none;
}
.bullet-list li {
  padding-left: 10px;
  background: url("../img/l/pt_klein.png") no-repeat -5px 3px;
}
/**********************************
 _                    _
| |__   ___  __ _  __| | ___ _ __
| '_ \ / _ \/ _` |/ _` |/ _ \ '__|
| | | |  __/ (_| | (_| |  __/ |
|_| |_|\___|\__,_|\__,_|\___|_|

**********************************/
header {
  height: 100px;
}
header .contact-info {
  padding-top: 20px;
}
header .contact-info,
header .common-info {
  text-align: center;
  margin: 0;
}
header .contact-info li,
header .common-info li {
  display: inline-block;
  margin: 0 20px 0 20px;
}
header .common-info {
  text-align: center;
  margin-top: 15px;
  margin-bottom: 0;
}
header #map li {
  margin-bottom: 0;
}
/**********************************
                 _             _
  ___ ___  _ __ | |_ ___ _ __ | |_
 / __/ _ \| '_ \| __/ _ \ '_ \| __|
| (_| (_) | | | | ||  __/ | | | |_
 \___\___/|_| |_|\__\___|_| |_|\__|

**********************************/
.ratio-wrapper {
  width: 100%;
  display: inline-block;
  position: relative;
}
.ratio-wrapper:after {
/* 16:9 ratio */
  padding-top: 50.25%;
  display: block;
  content: '';
}
.bg-div {
  position: absolute;
  width: 100%;
  height: 90%;
}
.casa-bg {
  background: url("../img/hg_casa.jpg") no-repeat center 0;
  background-size: 60%;
}
.casetta-bg {
  background: url("../img/hg_casetta.jpg") no-repeat center bottom;
  background-size: 75%;
}
.bg-front {
  opacity: 1;
  z-index: 10;
}
.bg-back {
  opacity: 0.6;
  z-index: 0;
}
section {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 100;
  padding-bottom: 0;
}
.container {
  position: relative;
  display: inline-block;
  height: 100%;
  width: 50%;
  background-color: transparent;
}
.content {
  background-color: #fff;
  padding: 30px;
  width: 320px;
  z-index: 500;
}
.content nav {
  margin-bottom: 100px;
}
.content nav li {
  margin-bottom: 15px;
}
.title .subtitle-info {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
}
.content-wrapper {
  position: relative;
  height: 100%;
  width: 100%;
}
.content-box {
  display: none;
  position: absolute;
  background-color: #fff;
  z-index: 1000;
}
.content-part {
  display: none;
  position: absolute;
  padding: 23px 30px;
  width: 700px;
}
.content-part p {
  margin-bottom: 14px;
}
.content-part .sub-part {
  display: none;
  position: absolute;
}
.content-part .sub-part li {
  margin-bottom: 3px;
}
.content-part .sub-part-initial {
  display: block;
}
.content-part nav {
  position: relative;
  margin-left: 20px;
}
.close-container {
  position: absolute;
  width: 100%;
  bottom: 5px;
  text-align: right;
}
.close-container .close {
  padding: 10px;
}
.opinion {
  margin-bottom: 50px;
}
.opinion .author {
  display: inline-block;
  margin-top: 10px;
}
.opinion .date {
  display: block;
}
.show-more {
  cursor: pointer;
}
.show-more:hover {
  cursor: pointer;
  text-decoration: underline;
}
.content-section {
  margin-bottom: 30px;
}
.content-section h3 {
  margin-bottom: 10px;
}
.content-section li {
  margin-bottom: 0;
}
.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  opacity: 0.4;
  z-index: 490;
  display: none;
}
/*******************************************
  ___ ___  _ __ ___  _ __ ___   ___  _ __
 / __/ _ \| '_ ` _ \| '_ ` _ \ / _ \| '_ | (_| (_) | | | | | | | | | | | (_) | | | |
 \___\___/|_| |_| |_|_| |_| |_|\___/|_| |_|

*******************************************/
.common-content {
  display: none;
  position: absolute;
  background-color: #fff;
  z-index: 1000;
}
.common-content .content-part {
  padding-top: 10px;
}
#edi {
  width: 200px;
  height: 335px;
  padding: 20px;
}
#edi img {
  margin-bottom: 20px;
}
#map {
  width: 700px;
  height: 560px;
}
#map #google-map {
  width: 700px;
  height: 396px;
  margin-bottom: 20px;
}
#surroundings {
  width: 800px;
}
#surroundings .image-container {
  margin-bottom: 20px;
}
/**********************************

  ___ __ _ ___  __ _
 / __/ _` / __|/ _` |
| (_| (_| \__ \ (_| |
 \___\__,_|___/\__,_|

**********************************/
.casa-furrer {
  position: relative;
  float: right;
}
.casa-furrer .content {
  right: 0;
  position: absolute;
}
.casa-furrer .content .content-box {
  right: 380px;
}
.casa-furrer #casa-reservation {
  width: 350px;
}
.casa-furrer #casa-pictures {
  width: 800px;
  height: 450px;
}
.casa-furrer #casa-features .content-wrapper {
  height: 430px;
}
/**********************************
                    _   _
  ___ __ _ ___  ___| |_| |_ __ _
 / __/ _` / __|/ _ \ __| __/ _` |
| (_| (_| \__ \  __/ |_| || (_| |
 \___\__,_|___/\___|\__|\__\__,_|

**********************************/
.casetta-furrer .content {
  bottom: 0;
}
.casetta-furrer .content nav {
  text-align: right;
}
.casetta-furrer .content .content-box {
  left: 380px;
}
.casetta-furrer .content .content-part nav {
  text-align: left;
}
.casetta-furrer #casetta-reservation {
  width: 350px;
}
.casetta-furrer #casetta-pictures {
  width: 800px;
  height: 450px;
}
.casetta-furrer #casetta-features .content-wrapper {
  height: 380px;
}
@media (max-width: 1200px) {
  .content-part {
    width: 450px;
  }
}
@media (max-width: 900px) {
  .col-2 {
    float: none;
    width: 100%;
  }
  .col-3 {
    float: none;
    width: 100%;
  }
  .col-1of3 {
    float: none;
    width: 100%;
  }
  .col-2of3 {
    float: none;
    width: 100%;
  }
  .col-last .col-space {
    margin-right: 30px;
  }
  header {
    height: auto;
  }
  .bg-div {
    position: relative;
  }
  .casa-bg {
    background: none;
  }
  .casetta-bg {
    background: none;
  }
  .content-part {
    width: 100%;
  }
  .container {
    display: none;
  }
  section {
    display: table;
    width: 100%;
    heigth: 100%;
  }
  .casa-furrer {
    display: table-header-group;
    position: relative;
    float: none;
  }
  .casa-furrer .content {
    position: relative;
  }
  .casa-furrer .content .content-box {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
  .casa-furrer #casa-reservation {
    width: 100%;
  }
  .casa-furrer #casa-pictures {
    width: 100%;
    height: 100%;
  }
  .casetta-furrer {
    display: table-footer-group;
    position: relative;
    float: none;
  }
  .casetta-furrer .content {
    position: relative;
  }
  .casetta-furrer .content nav {
    text-align: left;
  }
  .casetta-furrer .content .content-box {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
  .casetta-furrer #casetta-reservation {
    width: 100%;
  }
  .casetta-furrer #casetta-pictures {
    width: 100%;
    height: 100%;
  }
  .content {
    display: table;
  }
  .content > a {
    display: table-header-group;
  }
  .content > nav {
    display: table-footer-group;
    text-align: left;
  }
  .content > nav > ul {
    margin-top: 30px;
  }
  .close-container {
    top: 5px;
    bottom: initial;
  }
}
