body, button, input, select, textarea, pre {
  margin: 0; }

h1, h2, h3, h4, h5, h6, p, dl, ol, ul, li {
  margin-top: 0;
  margin-bottom: 1rem;
  margin: 0;
  padding: 0; }

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%; }

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

body {
  font-family: 'Open Sans', sans-serif;
  line-height: 1.5rem;
  font-weight: 400; }

h1, .h1, .f1 {
  font-size: 2rem;
  line-height: 2.5rem; }

h2, .h2, .f2 {
  font-size: 1.5rem;
  line-height: 2rem; }

h3, .h3, .f3 {
  font-size: 1.25rem;
  line-height: 1.5rem; }

h4, .h4, .f4 {
  font-size: 1rem;
  line-height: 1.5rem; }

p, .p, h5, h6, dl, ol, ul {
  font-size: 1.125rem;
  line-height: 1.5rem; }

small, .small, .f5 {
  font-size: .875rem;
  line-height: 1.5rem; }

@media screen and (min-width: 48em) {
  .h1 {
    font-size: 4rem;
    line-height: 5rem; }

  .h2 {
    font-size: 2rem;
    line-height: 2.5rem; }

  .h3 {
    font-size: 1.5rem;
    line-height: 2rem; }

  .p {
    font-size: 1.25rem;
    line-height: 2rem; }

  .small {
    font-size: 1rem; } }
@media screen and (min-width: 64em) {
  .h1 {
    font-size: 6rem;
    line-height: 8rem; }

  .h2 {
    font-size: 3rem;
    line-height: 3.5rem; } }
strong, .bold {
  font-weight: bold; }

.regular {
  font-weight: normal; }

.italic {
  font-style: italic; }

.caps {
  text-transform: uppercase;
  letter-spacing: .2em; }

.center {
  text-align: center; }

.right-align {
  text-align: right; }

.measure {
  max-width: 48rem; }

.measure-narrow {
  max-width: 32rem; }

.measure-wide {
  max-width: 60rem; }

.leading-1 {
  line-height: 1.5rem; }

.leading-2 {
  line-height: 2rem; }

.leading-3 {
  line-height: 3rem; }

.leading-4 {
  line-height: 4rem; }

.m0 {
  margin: 0; }

.mb0 {
  margin-bottom: 0; }

.m1 {
  margin: 1rem; }

.mt1 {
  margin-top: 1rem; }

.mr1 {
  margin-right: 1rem; }

.mb1 {
  margin-bottom: 1rem; }

.ml1 {
  margin-left: 1rem; }

.m2 {
  margin: 2rem; }

.mt2 {
  margin-top: 2rem; }

.mr2 {
  margin-right: 2rem; }

.mb2 {
  margin-bottom: 2rem; }

.ml2 {
  margin-left: 2rem; }

.m3 {
  margin: 3rem; }

.mt3 {
  margin-top: 3rem; }

.mr3 {
  margin-right: 3rem; }

.mb3 {
  margin-bottom: 3rem; }

.ml3 {
  margin-left: 3rem; }

.m4 {
  margin: 4rem; }

.mt4 {
  margin-top: 4rem; }

.mr4 {
  margin-right: 4rem; }

.mb4 {
  margin-bottom: 4rem; }

.ml4 {
  margin-left: 4rem; }

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

.m-responsive {
  margin: 2rem; }

.mt-responsive {
  margin-top: 2rem; }

.mr-responsive {
  margin-right: 2rem; }

.mb-responsive {
  margin-bottom: 2rem; }

.ml-responsive {
  margin-left: 2rem; }

@media screen and (min-width: 48em) and (max-width: 64em) {
  .m-responsive {
    margin: 3rem; }

  .mt-responsive {
    margin-top: 3rem; }

  .mr-responsive {
    margin-right: 3rem; }

  .mb-responsive {
    margin-bottom: 3rem; }

  .ml-responsive {
    margin-left: 3rem; } }
@media screen and (min-width: 64em) {
  .m-responsive {
    margin: 4rem; }

  .mt-responsive {
    margin-top: 4rem; }

  .mr-responsive {
    margin-right: 4rem; }

  .mb-responsive {
    margin-bottom: 4rem; }

  .ml-responsive {
    margin-left: 4rem; } }
.p1 {
  padding: 1rem; }

.px1 {
  padding-right: 1rem;
  padding-left: 1rem; }

.py1 {
  padding-top: 1rem;
  padding-bottom: 1rem; }

.p2 {
  padding: 2rem; }

.px2 {
  padding-right: 2rem;
  padding-left: 2rem; }

.py2 {
  padding-top: 2rem;
  padding-bottom: 2rem; }

.p3 {
  padding: 3rem; }

.px3 {
  padding-right: 3rem;
  padding-left: 3rem; }

.py3 {
  padding-top: 3rem;
  padding-bottom: 3rem; }

.p4 {
  padding: 4rem; }

.px4 {
  padding-right: 4rem;
  padding-left: 4rem; }

.py4 {
  padding-top: 4rem;
  padding-bottom: 4rem; }

.p-responsive {
  padding: 1.5rem; }

.px-responsive {
  padding-right: 1.5rem;
  padding-left: 1.5rem; }

.py-responsive {
  padding-top: 1rem;
  padding-bottom: 1rem; }

@media screen and (min-width: 48em) and (max-width: 64em) {
  .p-responsive {
    padding: 3rem; }

  .px-responsive {
    padding-right: 3rem;
    padding-left: 3rem; }

  .py-responsive {
    padding-top: 2rem;
    padding-bottom: 2rem; } }
@media screen and (min-width: 64em) {
  .p-responsive {
    padding: 4rem; }

  .px-responsive {
    padding-right: 4rem;
    padding-left: 4rem; }

  .py-responsive {
    padding-top: 3rem;
    padding-bottom: 3rem; } }
.inline {
  display: inline; }

.block {
  display: block; }

.inline-block {
  display: inline-block; }

.oh {
  overflow: hidden; }

.left {
  float: left; }

.right {
  float: right; }

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

.fit {
  max-width: 100%; }

.full-width {
  width: 100%; }

.half-width {
  width: 50%; }

.mobile-show {
  display: none; }

@media screen and (max-width: 48em) {
  .mobile-show,
  .mobile-block {
    display: block; }

  .mobile-block {
    width: 100%; }

  .mobile-hide {
    display: none; }

  .mobile-center {
    text-align: center; } }
.button {
  font-family: inherit;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
  border: none;
  -webkit-appearance: none;
  appearance: none;
  white-space: nowrap;
  display: inline-block;
  line-height: 2rem;
  height: auto;
  min-height: 2rem;
  padding: .5rem 1rem; }

.button-big {
  padding: 1rem 1.5rem; }

.button-small {
  padding: 0 1rem; }

.form {
  font-size: 1rem; }

.input {
  appearance: none;
  border-style: solid;
  border-width: 1px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
  height: 3rem;
  line-height: 2rem;
  padding: .5rem;
  border-radius: .25rem; }

.select {
  box-sizing: border-box;
  height: 3rem;
  margin-right: 0;
  margin-left: 0;
  border-radius: .25rem; }

.textarea {
  box-sizing: border-box;
  padding: 1rem;
  line-height: 1.5rem;
  border-radius: .25rem; }

.form-stacked label,
.form-stacked .input,
.form-stacked .select {
  display: block;
  width: 100%; }
.form-stacked .input,
.form-stacked .select,
.form-stacked .radio,
.form-stacked .checkbox {
  margin-bottom: 1rem; }

.list {
  padding-left: 2rem; }

.list-simple {
  list-style: none;
  padding-left: 0; }

.list-inline {
  list-style: none;
  padding-left: 0; }
  .list-inline li {
    display: inline;
    white-space: nowrap; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.t0 {
  top: 0; }

.r0 {
  right: 0; }

.b0 {
  bottom: 0; }

.l0 {
  left: 0; }

.z1 {
  z-index: 1; }

.z2 {
  z-index: 2; }

.z3 {
  z-index: 3; }

.z4 {
  z-index: 4; }

.absolute-center {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  display: table; }

.s-blue {
  color: #0096cc; }

.s-light-gray {
  color: #eeeeee; }

.s-mid-gray {
  color: #777777; }

.s-dark-gray {
  color: #333333; }

.s-red {
  color: #ff5522; }

.s-green {
  color: #00ff66; }

.s-orange {
  color: #ffcc22; }

.bg-s-blue {
  background-color: #0096cc; }

.bg-s-light-gray {
  background-color: #eeeeee; }

.bg-s-mid-gray {
  background-color: #777777; }

.bg-s-dark-gray {
  background-color: #333333; }

.bg-s-red {
  background-color: #ff5522; }

.bg-s-green {
  background-color: #00ff66; }

.bg-s-orange {
  background-color: #ffcc22; }

body {
  color: #405660;
  background-color: #fff;
  max-width: 1120px;
  margin: 0 auto; }

.reverse {
  color: rgba(255, 255, 255, 0.8);
  background-color: #405660; }

a, .link {
  color: #00bbdd;
  text-decoration: none; }
  a:hover, .link:hover {
    color: #0090aa; }

.blue {
  color: #00bbdd; }

.bg-blue {
  background-color: #00bbdd; }

.dark {
  color: #405660; }

.bg-dark {
  background-color: #405660; }

.mid-gray {
  color: #708690; }

.bg-mid-gray {
  background-color: #708690; }

.light-gray {
  color: #eaeff0; }

.bg-light-gray {
  background-color: #eaeff0; }

.white {
  color: #fff; }

.bg-white {
  background-color: #fff; }

.rounded {
  border-radius: .25rem; }

.transition-all {
  transition: all .3s ease; }

li {
  list-style: none; }

a {
  color: #405660; }

.button {
  border-radius: .25rem;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-transition: box-shadow .2s ease, background-color .2s ease;
  transition: box-shadow .2s ease, background-color .2s ease; }

.button-dark {
  background-color: #405660; }
  .button-dark:focus {
    outline: none;
    box-shadow: 0 0 0 0.125rem white, 0 0 1px 0.25rem rgba(0, 187, 221, 0.5); }

.button-blue {
  color: #fff;
  background-color: #00bbdd; }
  .button-blue:hover {
    color: #fff;
    background-color: #00d1f7; }
  .button-blue:focus {
    outline: none;
    box-shadow: 0 0 0 0.125rem white, 0 0 1px 0.25rem rgba(0, 187, 221, 0.5); }

.button-box-blue {
  color: #00bbdd;
  background-color: rgba(0, 187, 221, 0);
  box-shadow: inset 0 0 0 2px #00bbdd; }
  .button-box-blue svg {
    fill: #00bbdd; }
  .button-box-blue:hover {
    color: #fff;
    background-color: #00d1f7; }
    .button-box-blue:hover svg {
      fill: #fff; }
  .button-box-blue:focus {
    outline: none;
    box-shadow: inset 0 0 0 2px #00bbdd, 0 0 0 2px white, 0 0 0 4px rgba(0, 187, 221, 0.5); }

.button-gray {
  color: #fff;
  background-color: #708690; }
  .button-gray:hover {
    color: #fff;
    background-color: #435157; }
  .button-gray:focus {
    outline: none;
    box-shadow: 0 0 0 0.125rem white, 0 0 1px 0.25rem rgba(0, 187, 221, 0.5); }

.form-light .input,
.form-light .textarea,
.form-light .select {
  transition: box-shadow .2s ease;
  border-color: #708690; }
  .form-light .input:focus,
  .form-light .textarea:focus,
  .form-light .select:focus {
    outline: none;
    border-color: #00bbdd;
    box-shadow: 0 0 0.125rem rgba(0, 187, 221, 0.5); }

.radio input,
.checkbox input {
  transition: box-shadow .2s ease; }
  .radio input:focus,
  .checkbox input:focus {
    outline: none;
    box-shadow: 0 0 0 2px white, 0 0 1px 4px rgba(0, 187, 221, 0.5); }

.radio input {
  border-radius: 50%; }

.border-light-gray {
  border-color: #eaeff0; }

.border-mid-gray {
  border-color: #708690; }

.border-dark {
  border-color: #405660; }

.border {
  border-style: solid;
  border-width: 1px; }

.border-top {
  border-top-style: solid;
  border-top-width: 1px; }

.border-right {
  border-right-style: solid;
  border-right-width: 1px; }

.border-bottom {
  border-bottom-style: solid;
  border-bottom-width: 1px; }

.border-left {
  border-left-style: solid;
  border-left-width: 1px; }

#wandheizung {
  color: black;
  font-size: 22px;
  opacity: 0.5; }

#background_image_doeteberg {
  background: url(../images/photo/doeteberg_1280.jpg) no-repeat center top;
  padding-top: 100px;
  margin-top: 0px;
  text-align: center;
  background-attachment: relative;
  background-position: center;
  min-height: 650px;
  width: 100%; }

#background_image_provence {
  background: url(../images/photo_2/paradies.jpg) no-repeat center top;
  padding-top: 50px;
  margin-top: 0px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 650px;
  width: 100%; }

.text {
  font-family: "Georgia"; }

.blockquote {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #a5a4a4;
  font-style: italic;
  margin: 30px;
  padding: 30px;
  text-align: center; }

td, th {
  padding: 0.5rem; }

.hdl {
  font-family: "Paytone One";
  font-weight: 700;
  font-size: 80px; }

.paytone {
  font-family: "Paytone One"; }

.abril {
  font-family: "Abril Fatface"; }

.sans {
  font-family: "Open Sans"; }

.thin {
  font-size: 0.5rem; }

.hdl-scale {
  font-size: 150%; }

@media (min-width: 512px) {
  .hdl-scale {
    font-size: 300%; } }
@media (min-width: 768px) {
  .hdl-scale {
    font-size: 400%; } }
@media (min-width: 1024px) {
  .hdl-scale {
    font-size: 400%; } }
@media (min-width: 1280px) {
  .hdl-scale {
    font-size: 400%; } }
.table {
  display: table;
  width: 100%; }

.table-fixed {
  table-layout: fixed; }

.table-cell {
  display: table-cell;
  vertical-align: middle; }

body {
  font-family: 'Open Sans', 'Helvetica Neue', Helvetica, sans-serif; }

h1, h2, h3, h4, h5, h6, .bold {
  font-weight: 600; }

pre, code, samp, .mono {
  font-family: 'Source Code Pro', monospace;
  font-size: 1rem; }

pre {
  overflow: auto; }

html, body {
  height: 100%; }

.y100 {
  height: 100%; }

.min-y100 {
  min-height: 100%; }

.object-scale {
  font-size: 50%; }
  @media (min-width: 512px) {
    .object-scale {
      font-size: 100%; } }
  @media (min-width: 768px) {
    .object-scale {
      font-size: 150%; } }
  @media (min-width: 1024px) {
    .object-scale {
      font-size: 200%; } }
  @media (min-width: 1280px) {
    .object-scale {
      font-size: 250%; } }

.h0 {
  font-size: 6em; }

.square {
  width: 1em;
  height: 1em;
  line-height: 1; }

.border-thick {
  border-width: .25em;
  border-style: solid; }

@-webkit-keyframes pulsate {
  from {
    opacity: .7; }

  to {
    opacity: 1;
    -webkit-transform: scale(1.05); } }
@keyframes pulsate {
  from {
    opacity: .7; }

  to {
    opacity: 1;
    transform: scale(1.05); } }
.pulsate {
  -webkit-animation: pulsate 2s linear infinite alternate;
  animation: pulsate 2s linear infinite alternate; }

@-webkit-keyframes glow {
  from {
    text-shadow: 0 0 0.5rem rgba(0, 187, 221, 0);
    opacity: .7; }

  to {
    text-shadow: 0 0 0.75rem rgba(0, 187, 221, 0.8); } }
@keyframes glow {
  from {
    text-shadow: 0 0 0.5rem rgba(0, 187, 221, 0);
    opacity: .7; }

  to {
    text-shadow: 0 0 0.75rem rgba(0, 187, 221, 0.8); } }
.glow {
  -webkit-animation: glow 2s linear infinite alternate;
  animation: glow 2s linear infinite alternate; }

.show-baseline {
  background-image: url(baseline-16.svg);
  background-size: .5rem .5rem; }

.show-outline, .show-outline * {
  outline: 1px solid rgba(0, 187, 221, 0.2); }

.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -.125em; }

.fill-white {
  fill: #fff; }

.icon-heart {
  fill: #f30; }

.blockquote {
  margin-left: 0; }

.highlight {
  color: #708690;
  line-height: 1.5rem; }
  .highlight .p {
    font-size: 1rem;
    line-height: 1.5rem; }
  .highlight .nc, .highlight .s {
    color: #0090aa; }
  .highlight .nt {
    color: #00bbdd; }
  .highlight .k, .highlight .m, .highlight .n {
    color: #00bbdd; }
