
/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v34-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}


* {
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Open Sans';
  box-sizing: border-box;
}

a {
  text-decoration: none;
}

.footer a, .title-bar a {
  color: #f4f4f4;
}

.headerReplacement {
  text-indent: -9999px;
  width: 190px;
  height: 18px;
  background: url('../img/seibold-immobilien-transparent.png') #111111 no-repeat;  
}

.push {
  text-indent: -9999px;
  width: 21px;
  height: 22px;
  background: url('../img/seibold-icon.png') #ffffff no-repeat center center;  
}

.wichtig, .mail-viewer {
  display: none;
}

.container100 {
  position: relative;
  width: 100vw;
  height: 92vh;
}

.container {
  max-width: 1000px;
  margin: auto;
}

.banner, .footer {
  background-color: #111;
  color: #f4f4f4;
  padding: 15px 0;
  text-align: center;
  font-size: 0.8rem;
}

.rechts {
  text-align: right;
}

video {
  position: absolute;
  top: 0;
  left: 0;
}

.video-wrapper {
  position: relative;

  width: 400px;
  height: 200px;

  overflow: hidden;

  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}

video {
  /** Simulationg background-size: cover */
  object-fit: cover;
  height: 100%;
  width: 100%;

  position: absolute;
  top: 0;
  left: 0;
}

.viertel {
  position: absolute;
  width: 50%;
  height: 50%;
  color: #fff;
  font-size: 3rem;

  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  overflow: hidden;
}
 
.viertel::after {
  content: '';
  position: absolute;
  display: block;
  background: #000e14;
  opacity: 0.75;
  top:0;
  left:0;
  width: 100%;
  height: 100%;

  -ms-transform: scale(2) translateX(-75%) translateY(-75%) rotate(-28deg);
  -webkit-transform: scale(2) translateX(-75%) translateY(-75%) rotate(-28deg);
  -moz-transform: scale(2) translateX(-75%) translateY(-75%) rotate(-28deg);
  -o-transform: scale(2) translateX(-75%) translateY(-75%) rotate(-28deg);
  transform: scale(2) translateX(-75%) translateY(-75%) rotate(-28deg);

  -webkit-transition: transform 1s ease-out;
  -moz-transition: transform 1s ease-out;
  -o-transition: transform 1s ease-out;
  transition: transform 1s ease-out;
}

.viertel:hover::after, .viertel:active::after {
  -ms-transform: scale(2) translateX(0) translateY(0) rotate(-28deg);
  -webkit-transform: scale(2) translateX(0) translateY(0) rotate(-28deg);
  -moz-transform: scale(2) translateX(0) translateY(0) rotate(-28deg);
  -o-transform: scale(2) translateX(0) translateY(0) rotate(-28deg);
  transform: scale(2) translateX(0) translateY(0) rotate(-28deg);
}

.viertel h2 {
  padding-top: 10vh;
  filter: drop-shadow(2px 2px 6px #444);
}

.viertel h2, .viertel p {
  z-index: 1000;
}

p { 
  font-weight: 300;
  line-height: 1.5;
  font-size: 1.6rem;
  opacity: 0;
  transition: all .6s ease;
  text-align: center;
}

h2 {
  font-size: 4rem;
  font-weight: 300;
  display: inline-block;
}

.viertel:hover p, .viertel:hover .btn {
  opacity: 1;
}


.bg1 {
  top: 0;
  left: 0;
  display: flex;
}

.bg2 {
  top: 0;
  left: 50%;
  display: flex;
}

.bg3 {
  top: 50%;
  left: 0;
  display: flex;
}

.bg4 {
  top: 50%;
  left: 50%;
  display: flex;
}

.btn {
  padding: 8px 12px;
  background-color: #000e14;
  border: 1px solid #fff;
  border-radius: 5px;
  margin-top: 8px;
  font-size: 0.8rem;
  opacity: 0;
  z-index: 900;
  transition: all 0.8s ease;
}

.btn:hover {
  background-color: #003444;
}

a.btn {
  color: #fff;
}

.box50 {
  float: left;
  width: 48%;
  padding: 0;
  color: #000;
  font-size: 1.4rem;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.kontaktbox {
  text-align: center;
  padding: 40px 0
}

.kontaktbox p {
  opacity: 1;
  margin-bottom: 80px;
}

.title-bar {
  display: flex;
  justify-content: space-between;
  padding: 0 15px;
}

@media (max-width: 1000px) {
  
  h2 {
    font-size: 2.5rem;
  }

  .viertel h2 {
    padding-top: 5vh;
  }

  p {
    font-size: 1rem;
  }

  .viertel {
    position: absolute;
    width: 100%;
    height: 25%;
  }

  .bg1 {
    top: 0;
    left: 0;
    display: flex;
  }
  
  .bg2 {
    top: 25%;
    left: 0;
    display: flex;
  }
  
  .bg3 {
    top: 50%;
    left: 0;
    display: flex;
  }
  
  .bg4 {
    top: 75%;
    left: 0%;
    display: flex;
  }

  .viertel:hover::after {
    transform: scale(2) translateX(0) translateY(0) rotate(0deg);
  }

  .btn {
    display: none;
  }

}

.datenschutz {
  max-width: 700px;
  padding: 50px 0;
}

.datenschutz p {
  display:block;
  opacity: 1;
  text-align: left;
  font-size: 18px;
  color: #000;
  padding-bottom: 20px;
}

.datenschutz ul {
  padding-left: 30px;
  font-size: 18px;
  font-weight: 300;
  color: #000;
}

.small {
  font-size: 18px;
}