/* -------------------- Floating Contact -- Kreis mit Plus  Start-------------------- */

@-webkit-keyframes come-in {
  0% {
    -webkit-transform: translatey(100px);
            transform: translatey(100px);
    opacity: 0;
  }
  30% {
    -webkit-transform: translateX(-50px) scale(0.4);
            transform: translateX(-50px) scale(0.4);
  }
  70% {
    -webkit-transform: translateX(0px) scale(1.2);
            transform: translateX(0px) scale(1.2);
  }
  100% {
    -webkit-transform: translatey(0px) scale(1);
            transform: translatey(0px) scale(1);
    opacity: 1;
  }
}
@keyframes come-in {
  0% {
    -webkit-transform: translatey(100px);
            transform: translatey(100px);
    opacity: 0;
  }
  30% {
    -webkit-transform: translateX(-50px) scale(0.4);
            transform: translateX(-50px) scale(0.4);
  }
  70% {
    -webkit-transform: translateX(0px) scale(1.2);
            transform: translateX(0px) scale(1.2);
  }
  100% {
    -webkit-transform: translatey(0px) scale(1);
            transform: translatey(0px) scale(1);
    opacity: 1;
  }
}

.floating-container {
  position: fixed;
  display: block;
  z-index: 1;
  width: 100px;
  height: 100px;
  bottom: 0;
  right: 0;
  margin: 35px 25px;
}
.floating-container:hover {
  height: 220px;
}
.floating-container:hover .floating-button {
  -webkit-transform: translatey(5px);
          transform: translatey(5px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: var(--color-text);
}
.floating-container:hover .element-container a .float-element:nth-child(1) {
  -webkit-animation: come-in 0.4s forwards 0.2s;
          animation: come-in 0.4s forwards 0.2s;
}
.floating-container:hover .element-container a .float-element:nth-child(2) {
  -webkit-animation: come-in 0.4s forwards 0.4s;
          animation: come-in 0.4s forwards 0.4s;
}
.floating-container:hover .element-container a .float-element:nth-child(3) {
  -webkit-animation: come-in 0.4s forwards 0.6s;
          animation: come-in 0.4s forwards 0.6s;
}
.floating-container .floating-button {
  position: absolute;
  width: 65px;
  height: 65px;
  background: var(--color-akzent);
  bottom: 0;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  color: #fff;
  line-height: 65px;
  text-align: center;
  font-size: 23px;
  z-index: 100;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.floating-container a .float-element {
  position: relative;
  display: block;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  margin: 15px auto;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 40px;
  z-index: 0;
  opacity: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}
.floating-container a .float-element .material-icons {
  vertical-align: middle;
  font-size: 1.4rem;
}
.floating-container a .float-element:nth-child(1) {
  background-color: #fff;
  border: 3px solid var(--color-akzent);
}
.floating-container a .float-element:nth-child(2) {
  background-color: #fff;
  border: 3px solid var(--color-akzent);
}
.floating-container a .float-element:nth-child(3) {
  background-color: #fff;
  border: 3px solid var(--color-akzent);
}

/* -------------------- Floating Contact -- Kreis mit Plus ENDE -------------------- */

/* -------------------- Floating Contact -- Drei Kreise nebeneinander unten BEGINN -------------------- */

.container-contact {
  right: 2%;
  bottom: 5%;
  position: fixed;
  width: 280px;
  display: none !important;
}
.contact-icon {
  display: none !important;
  color: #fff;
  font-weight: bold;
  width: 80px;
  height: 80px;
  background-color: var(--color-akzent);
  transition: all .35s;
  box-shadow: 1px 0px 2px var(--color-akzent);
  font-size: 0.65rem;
  z-index: 9;
  border-radius: 50%;
}
.contact-icon:hover {
  color: var(--color-text);
  text-decoration: none;
}
@media (min-width: 992px) {
  .contact-icon {
    display: block !important;
  }
  .container-contact {
    display: block !important;
  }
}

/* -------------------- Floating Contact -- Drei Kreise nebeneinander unten ENDE -------------------- */


/* -------------------- Floating Contact -- Kontakt Buttons an der rechten Seite BEGINN -------------------- */

.container-contact-right {
	right: 0%;
	bottom: 4.5%;
	position: fixed;
	width: 120px;
	display: none !important;
	background: var(--bg-float-contact);
	backdrop-filter: blur(7px);
	border-radius: 0.5em 0em 0em 0.5em;
}

.contact-icon-right {
	display: none !important;
	color: #fff;
	font-weight: bold;
	background-color: var(--color-akzent);
	transition: all .35s;
	border: 4px solid #fff;
	outline: 4px solid #000;
	box-shadow: 1px 0px 2px #cccccc;
	font-size: 0.65rem;
	line-height: 0.8rem;
	z-index: 9;
	border-radius: 50%;
	height: 80px;
	width: 80px;
	text-align: center;
	padding: 1rem;
}

.contact-icon-right:hover {
	background-color: var(--color-links);
	color: var(--color-navigation);
	text-decoration: none;
	border: 4px solid var(--color-akzent);
	outline: 4px solid #000;
}

@media (min-width: 992px) {
	.contact-icon-right {
		display: block !important;
	}
	
	.container-contact-right {
		display: block !important;
	}
}

#facebook-float {
	background-color: var(--color-facebook);
	text-align: center;
	display: block;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

#facebook-float:hover {
	border: 4px solid var(--color-facebook);
}

#facebook-float svg {
	position: relative;
	color: #fff;
	transition: .5s;
	z-index: 3;
	top: 5%;
}

#facebook-float:hover svg {
	color: #fff;
	transform: rotateY(360deg);
}

#facebook-float:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 100%;
	transition: .5s;
	z-index: 2;
	background: var(--color-facebook);
}

#facebook-float:hover:before {
	top: 0;
}

/* -------------------- Floating Contact -- Kontakt Buttons an der echten Seite ENDE -------------------- */