
@font-face {
    font-family: 'Halvar Mittel XTh';
    src: url('font/HalvarMittel-XTh.eot');
    src: local('Halvar Mittelschrift ExtraThin'), local('HalvarMittel-XTh'),
        url('font/HalvarMittel-XTh.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-XTh.woff2') format('woff2'),
        url('font/HalvarMittel-XTh.woff') format('woff'),
        url('font/HalvarMittel-XTh.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Halvar Mittel Lt';
    src: url('font/HalvarMittel-Lt.eot');
    src: local('Halvar Mittelschrift Light'), local('HalvarMittel-Lt'),
        url('font/HalvarMittel-Lt.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-Lt.woff2') format('woff2'),
        url('font/HalvarMittel-Lt.woff') format('woff'),
        url('font/HalvarMittel-Lt.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Halvar Mittel Hl';
    src: url('font/HalvarMittel-Hl.eot');
    src: local('Halvar Mittelschrift Hairline'), local('HalvarMittel-Hl'),
        url('font/HalvarMittel-Hl.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-Hl.woff2') format('woff2'),
        url('font/HalvarMittel-Hl.woff') format('woff'),
        url('font/HalvarMittel-Hl.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}



@font-face {
    font-family: 'Halvar Mittel lt';
    src: url('font/HalvarMittel-Rg.eot');
    src: local('Halvar Mittelschrift Regular'), local('HalvarMittel-Rg'),
        url('font/HalvarMittel-Rg.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-Rg.woff2') format('woff2'),
        url('font/HalvarMittel-Rg.woff') format('woff'),
        url('font/HalvarMittel-Rg.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}




@font-face {
    font-family: 'Halvar Mittel Th';
    src: url('font/HalvarMittel-Th.eot');
    src: local('Halvar Mittelschrift Thin'), local('HalvarMittel-Th'),
        url('font/HalvarMittel-Th.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-Th.woff2') format('woff2'),
        url('font/HalvarMittel-Th.woff') format('woff'),
        url('font/HalvarMittel-Th.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Halvar Mittel Md';
    src: url('font/HalvarMittel-Md.eot');
    src: local('Halvar Mittelschrift Medium'), local('HalvarMittel-Md'),
        url('font/HalvarMittel-Md.eot?#iefix') format('embedded-opentype'),
        url('font/HalvarMittel-Md.woff2') format('woff2'),
        url('font/HalvarMittel-Md.woff') format('woff'),
        url('font/HalvarMittel-Md.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}


body
{
	font-family: 'Halvar Mittel lt';
	background:#fff;
	overflow-x:hidden;
	margin:0;
	padding:0;
	border:0;
}

.ipWidget-Gallery ._item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    margin-bottom: 20px;
    padding: 0 10px;
    width: 24.99%;
}
.header {
	position: absolute;
    z-index: 4;
    width: calc(100% - 60px);
    float: left;
    display: flex;
    padding: 0 30px;
    top: 0px;
    height: 70px;
    align-items: center;
}
.main_logo
{display: flex;position: absolute;top: auto;bottom: -40px;margin: 0 auto;width: 83px;height: 80px;z-index: 1;left: 0;right: 0;justify-content: center;}
.main_logo.is-active
{
	left: 60px;
    right: auto;
    top: 60px;
    width: 53px;
    height: 50px;
}

.main_logo::after
{
    display: block;
    content: "";
    width: 100%;
    position: absolute;
    width: 113px;
    height: 110px;
    background: white;
    z-index: -1;
    border-radius: 50%;
    top: -15px;
    left: -15px;
	box-shadow: 0px 13px 5px rgb(0 0 0 / 40%);
}
.main_logo::before
{
    display: block;
    content: "";
    width: 100%;
    position: absolute;
    width: 324px;
    height: 20px;
    background-image: url(img/shadow.png);
    z-index: -1;
	background-size:100%;
    background-position: center;
    top: 0;
    bottom: -19px;
    margin: auto;
	
}
.main_logo img
{
	height:80px;
	float:left;
	display:block;
}
.main_logo.is-active img
{
	    height: 50px;
}
.main_logo.is-active:before
{
	display:none;
}
.main_logo.is-active:after
{
	display: block;
    content: "";
    width: 100%;
    position: absolute;
    width: 63px;
    height: 60px;
    background: white;
    z-index: -1;
    border-radius: 50%;
    top: -5px;
    left: -5px;
    box-shadow: 0px 0px 10px rgb(0 0 0 / 40%);
}

/* menu */







/* menu */
.homi
{
    width: calc(100% - 60px);
    height: 100%;
    position: relative;
    float: left;
    display: block;
    display: flex;
    margin: 0;
    align-items: center;
    padding: 200px 30px 215px;
    background: #e9e9e9;

}

.homi h1 
{
	font-weight: 100;
    font-size: 10vh;
    font-family: 'Halvar Mittel Th';
}
.front_left
{
	display:block;
	width:50%;
	float:left;
	height: auto;
	position:relative;
	padding-bottom:116px;
}
.front_right
{
	display: flex;
	width: calc(50% - 50px);
	float: right;
	padding-right: 50px;
	height: 100%;
	align-items: center;
}
.cont
{
width: calc(100% - 60px);
    background: #fff;
    position: relative;
    float: left;
    display: block;
    padding: 0 30px 30px 30px;
   
}

.cont_left
{
	display: block;
    width: 100%;
    float: left;
    position: relative;

}
.cont_right
{
	display:block;
	width:50%;
	float:right;
	height:100%;
}
.cont_right img 
{
	display: block;
	opacity:0;
	transform: rotateY(50deg) rotateZ(5deg);
}

.cont_right img.animate
{
  opacity: 1;
  transform: rotateY(0deg) rotateZ(0deg);
  transition: all 0.8s ease-in;
}
 .cont_left h2
{
    font-weight: 100;
    font-size: 15vh;
    font-family: 'Halvar Mittel Th';
    float: left;
    display: block;
    width: 100%;
    position: relative;
    padding-bottom: 40px;
    letter-spacing: -6px;
    line-height: 12vh;
}
 .cont_left h2 span
 {
	 
 }
.cont_left p
{
	font-size: 18px;
    font-family: 'Halvar Mittel lt';
    font-weight:300;
    line-height: 22px;
    color: #555;
	    margin-bottom: 10px;
}





.vintalight__container,
.vintalight__container::before,
.vintalight__container::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.vintalight {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  position:relativ;
  max-width: 1200px;
  
}
.vintalight__container {
  position: relative;
  width: 90%;
  max-width: 10.5em;
  height: 40vh;
  background-color: #fff;
  font-size: 30px;
  box-shadow: 0 2px 6px 1px rgba(0, 0, 0, 0.5);
  transition: transform 0.5s cubic-bezier(0.075, 0.82, 0.165, 1), box-shadow 0.5s, margin 0.5s;
}
@media screen and (max-width: 500px) {
  .vintalight__container {
    max-width: 7.35em;
    height: 8.575em;
  }
}
.vintalight__container:nth-child(1) {
  transform: translate(40px, 30px) rotate(-30deg);
  z-index: 0;
}
.vintalight__container:nth-child(1):hover {
  transform: scale(1.15) translate(40px, 30px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(1) {
    transform: translate(0) rotate(19deg);
  }
  .vintalight__container:nth-child(1):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:nth-child(2) {
  transform: translate(30px, 20px) rotate(7deg);
  z-index: 1;
}
.vintalight__container:nth-child(2):hover {
  transform: scale(1.15) translate(30px, 20px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(2) {
    transform: translate(0) rotate(7deg);
  }
  .vintalight__container:nth-child(2):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:nth-child(3) {
  transform: translate(-20px, 20px) rotate(20deg);
  z-index: 2;
}
.vintalight__container:nth-child(3):hover {
  transform: scale(1.15) translate(-20px, 20px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(3) {
    transform: translate(0) rotate(20deg);
  }
  .vintalight__container:nth-child(3):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:nth-child(4) {
  transform: translate(40px, -10px) rotate(10deg);
  z-index: 3;
}
.vintalight__container:nth-child(4):hover {
  transform: scale(1.15) translate(40px, -10px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(4) {
    transform: translate(0) rotate(10deg);
  }
  .vintalight__container:nth-child(4):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:nth-child(5) {
  transform: translate(30px, -20px) rotate(-20deg);
  z-index: 4;
}
.vintalight__container:nth-child(5):hover {
  transform: scale(1.15) translate(30px, -20px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(5) {
    transform: translate(0) rotate(-20deg);
  }
  .vintalight__container:nth-child(5):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:nth-child(6) {
  transform: translate(30px, -40px) rotate(-10deg);
  z-index: 5;
}
.vintalight__container:nth-child(6):hover {
  transform: scale(1.15) translate(30px, -40px) rotate(0);
}
@media screen and (max-width: 700px) {
  .vintalight__container:nth-child(6) {
    transform: translate(0) rotate(-10deg);
  }
  .vintalight__container:nth-child(6):hover {
    transform: scale(1.1) translate(0) rotate(0);
  }
}
.vintalight__container:hover {
  box-shadow: 0 4px 8px 3px rgba(0, 0, 0, 0.4);
  z-index: 100;
}
@media screen and (max-width: 700px) {
  .vintalight__container:hover {
    margin: 0 25px;
  }
}
.vintalight__container:hover .vintalight__photo::before {
  transform: scale(1);
}
.vintalight__container.active, .vintalight__container.active:hover {
  transform: rotate(0) scale(1.25);
}
@media screen and (max-width: 500px) {
  .vintalight__container.active, .vintalight__container.active:hover {
    transform: rotate(0) scale(1.15);
  }
}
.vintalight__container.active {
  position: relative;
}
.vintalight__container.active .vintalight__photo {
  cursor: default;
}
.vintalight__container.active .vintalight__photo::before {
  display: none;
}
.vintalight__photo {
  position: relative;
  width: 100%;
  height: 100%;

  overflow: hidden;
  cursor: pointer;
 
}


.vintalight__photo a 
{
	    float: left;
    display: block;
    position: relative;
    height: 100%;
	width:100%;
}
@media screen and (max-width: 500px) {
  .vintalight__photo {
    width: 100%;
    height: 100%;
    margin: 0;
  }
}
.vintalight__photo::before {
  content: "";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 1em;
  font-family: "Roboto", sans-serif;
  transform: scale(0);
  transition: all 0.25s;
}
.vintalight__img
 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition:0.6s;
 
}

.vintalight__img:hover
{
	transform:scale(1)!important;
	transition:0.8s;
}
 .scale-img
{
  transform: scale(2);
  transition: 0.6s;
}

.vintalight__caption {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 2.375em;
}
@media screen and (max-width: 500px) {
  .vintalight__caption {
    height: 1.6625em;
  }
}
.vintalight__text {
  color: #222;
  font-size: 1em;
  font-family: "Nanum Pen Script", cursive;
}
.vintalight-overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
  opacity: 0;
  z-index: 10000;
  transition: opacity 0.5s;
}
.vintalight-overlay.active {
  opacity: 1;
  
}
.vintalight__button {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 30px;
  height: 30px;
  background-color: #f53d3d;
  border: 3px solid #fff;
  border-radius: 50%;
  outline: none;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  box-shadow: -2px 2px 1px rgba(0, 0, 0, 0.3);
  z-index: 10000;
  cursor: pointer;
}
/* line */

.lines {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: calc(100% - 100px);
    margin: auto;
    margin-top: 70px;
    width: 90vw;
	display:none;
}

.line {
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    left: 50%;
    background: #000;
    opacity: 1;
	z-index:1;
    overflow: hidden;
}
.line::after {
  content: "";
  display: block;
  position: absolute;
  height: 15vh;
  width: 100%;
  top: -50%;
  left: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 75%, #ffffff 100%);
  -webkit-animation: drop 7s 0s infinite;
          animation: drop 7s 0s infinite;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
          animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
}
.line:nth-child(1) {
    left: 23%;
    transform: rotate(45deg);
    top: 0;
}
.line:nth-child(1)::after {
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}
.line:nth-child(3) {
  margin-left: 26%;
  transform: rotate(-45deg);
   top: 0;
}
.line:nth-child(3)::after {
  -webkit-animation-delay: 2.5s;
          animation-delay: 2.5s;
}
.line:nth-child(4) {
  margin-left: -48%;
}
.line:nth-child(5) {
  margin-left: 48%;
}

@-webkit-keyframes drop {
  0% {
    top: -50%;
  }
  100% {
    top: 110%;
  }
}

@keyframes drop {
  0% {
    top: -50%;
  }
  100% {
    top: 110%;
  }
}
.homi p a 
{
    float: left;
    display: block;
    width: 60px;
    background: #000;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #fff;
    transition: 0.6s;
}
.homi p a:hover
{
	text-decoration:none;
	box-shadow: inset 0 0 0 40px #000;
	transition:0.7s;
	 color: #00963f;
}
.animate
{
	width:100%;
	height:100vh;
	position:relative;
	padding-bottom: 50px;
}
.animate svg 
{
    width: 100%;
    height: 100vh;
    margin: 0;
    padding: 0;
  
    top: 0px;
    left: 0;
	    z-index: 0;
}
.front_page
{
    width: calc(100% - 60px);
    height: calc(100vh - 100px);
    display: flex;
    float: left;
    align-content: center;
    justify-content: center;
    position: relative;
    align-items: center;
    overflow:hidden;
    z-index:1;
    margin: 70px 30px 30px 30px;
    background:#fff;
}
.circle_holder
{
    width: 100%;
    height: calc(100vh - 100px);
    float: left;
    display: block;
    position: absolute;
    display: flex;
    padding: 0;
    align-items: center;
    justify-content: center;
}

.front_page::before
{
    content: '';
    width: 100%;
    background-image: url(img/Frame.svg);
    background-size: auto 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    bottom: calc(-26vw + 2px);
    right: 0;
    left: 0;
    background-repeat: no-repeat;
    height: 26vw;
    position: absolute;
}



.front_page h1 span
{
	display: flex;
    justify-content: center;
    color: #00963f;
}


.cont_left ._tabs-menu
{position: relative;top: 0;left: 0;width: 100%;margin: auto;display: flex;justify-content: flex-start;margin-top: -9vh;margin-top: -150px;}
.cont_left ._tabs
{
	    width: 100%;
	    position: relative;
	    left: 0;
	    padding: 0;
	    height: 100%;
	    margin-top: 50px;
}
.cont_left ._tabs img 
{
    aspect-ratio: 1/1;
    float: left;
    border-radius: 50%;
	border-bottom-left-radius: 0%;
	z-index: 2;
	position:relative;
}


.cont_left dt a
{
	    border-radius: 50%;
		margin-right: -50px!important;
    height: 140px;
    width: 140px;
	display: flex!important;
	align-items: center;
    justify-content: center;
	 background-color: #00963f!important;
    box-shadow: -10px 0px 30px -9px #000;
	transition:0.6s;
	    border-bottom-left-radius: 0%;
			
}
.cont_left dt:first-child a
{
	    margin-left: 20px;
}
.cont_left dt a 
{
	font-size: 18px;
	font-family:Halvar Mittel Th;
	padding:0!important;
	    position: relative;
   
}
.cont_left dt a span
{
	width:100%;
	text-align:center;
	height:auto;
}
.cont_left dt a:hover
{
	 text-decoration: none;
	 	transform:scale(1.1);
	transition:0.6s;
		z-index:1;
}
.cont_left dt a.current
{
	color:#fff!important;
	 background-color: #000!important;
	z-index:1;
	    transform: translate(0, -27px);
	transition:0.6s;
} 
.cont_left ._tabs-menu > dt {

    float: left;
    display: block;
    margin-right: 0px!important;
    background-color:rgba(255,255,255,0)!important;
    border-top: 0px solid #d4d4d1!important;
    border-right: 0px solid #d4d4d1!important;
    border-left: 0px solid #d4d4d1!important;
	transform: rotate(-45deg);
}
.cont_left ._tabs .ipWidget-Image a:after
{
position: absolute;
    content: "";
    float: left;
    width: 110%;
    left: -5%;
    height: 110%;
    top: -5%;
    border-radius: 50%;
    border: 1px solid #00963f;
    right: 0;
    margin: auto;
	    border-bottom-left-radius: 0%;
		background:#dff9d9;
		    z-index: 1;
}
.cont_left ._tabs .ipWidget-Image a:before
{
    position: absolute;
    content: "";
    float: left;
    width: 110%;
    left: -21%;
    height: 110%;
    top: -14%;
    border-radius: 50%;
    right: 0;
    margin: auto;
	 transform: rotate(-10deg);
    border-bottom-left-radius: 0%;

background: -moz-linear-gradient(45deg,  rgba(0,150,63,1) 0%, rgba(125,185,232,0) 75%); 
background: -webkit-linear-gradient(45deg,  rgba(0,150,63,1) 0%,rgba(125,185,232,0) 75%); 
background: linear-gradient(45deg,  rgba(0,150,63,1) 0%,rgba(125,185,232,0) 75%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00963f', endColorstr='#007db9e8',GradientType=1 ); 


   
}
.cont_left ._tabs .ipWidget-Image a
{
    width: 70%;
    position: relative;
    margin-left: 15%;
    display: flex;
    aspect-ratio: 1/1;
    justify-content: center;
	margin-bottom:5%;
	
	
}
.cont_left ._tab.current
{
	overflow:visible!important;
}
.cont_left ._tab.current ._container
{
	display: flex;
    align-items: center;
	align-items: flex-end;
}
a.c_more
{
	    float: left;
    display: block;
    width: 60px;
    background: #000;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #fff;
	margin-top: 40px;
   
	transition:0.6s;
}
a.c_more:hover
{
	text-decoration:none!important;
}
a.c_more i
{
	transition:0.6s;
}
.front_right a.c_more i

a.c_more:hover
{
	text-decoration:none;
	transition:0.6s;
	background:#00963f;
}
a.c_more:hover i
{
	transition:0.6s;
	transform:rotate(360deg);
}

.cont:before{
    content: '';
    width: 100%;
    background-image: url(img/lines.svg);
    background-size: 100% 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    top: calc(-20vw + 2px);
    right: 0;
    left: 0;
    height: 20vw;
    position: absolute;
}




.carousel {
  position: relative;
  z-index: 1;
  height: 100vh;
  overflow: hidden;
  padding-top: 35vw;
  pointer-events: none;
}

.carousel-item {
  --items: 7;
  --width: clamp(150px, 30vw, 300px);
  --height: clamp(200px, 40vw, 400px);
  --x: calc(var(--active) * 800%);
  --y: calc(var(--active) * 200%);
  --rot: calc(var(--active) * 120deg);
  --opacity: calc(var(--zIndex) / var(--items) * 3 - 2);
  overflow: hidden;
  position: absolute;
  z-index: var(--zIndex);
  width: var(--width);
  height: var(--height);
  margin: calc(var(--height) * -0.5) 0 0 calc(var(--width) * -0.5);
  border-radius: 10px;
  top: 50%;
  left: 50%;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transform-origin: 0% 100%;
  box-shadow: 0 10px 50px 10px rgba(0, 0, 0, 0.5);
  background: rgba(0,0,0,0.7);
  pointer-events: all;
  transform: translate(var(--x), var(--y)) rotate(var(--rot));
  transition: transform 0.8s cubic-bezier(0, 0.02, 0, 1);
  cursor:pointer;
}
.carousel-item .carousel-box {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.8s cubic-bezier(0, 0.02, 0, 1);
  font-family: "Orelo-sw-db", serif;
}
.carousel-item .carousel-box:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5));
}
.carousel-item .title {
  position: absolute;
  z-index: 1;
  color: #fff;
  bottom: 20px;
      font-family: 'Halvar Mittel Th';
  left: 20px;
  transition: opacity 0.8s cubic-bezier(0, 0.02, 0, 1);
  font-size: clamp(20px, 1vw, 30px);
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
}
.carousel-item .num {
  position: absolute;
  z-index: 1;
  color: #fff;
  top: 10px;
  left: 20px;
  transition: opacity 0.8s cubic-bezier(0, 0.02, 0, 1);
  font-size: clamp(20px, 10vw, 80px);
}
.carousel-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}

.layout {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.layout:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 90px;
  width: 10px;
  height: 100%;
  border: 1px solid #fff;
  border-top: none;
  border-bottom: none;
  opacity: 0.15;
}
.layout .box {
  position: absolute;
  bottom: 0;
  left: 30px;
  color: #fff;
  transform-origin: 0% 10%;
  transform: rotate(-90deg);
  font-size: 9px;
  line-height: 1.4;
  text-transform: uppercase;
  opacity: 0.4;
}

.contstick
{
	width: 100%;
	background: #00963f;
	display: block;
	float: left;
	position: relative;
	height: calc(100vh + 26vw);
	overflow: hidden;
	z-index:-2;
}
.contstick::before
{
    content: '';
    width: 100%;
    background-image: url(img/lines.svg);
    background-size: 100% 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    top: -2px;
    right: 0;
    left: 0;
    background-repeat: no-repeat;
    height: 26vw;
    position: absolute;
    transform: rotatex(180deg);
    z-index: -1;
}
.front_right p 
{
	font-size: 18px;
    font-family: 'Halvar Mittel lt';
   font-weight:300;
    line-height: 22px;
    color: #555;
	    margin-bottom: 10px;
}

.front_right h2 
{
    font-weight: 100;
    font-size: 15vh;
    font-family: 'Halvar Mittel Th';
    float: left;
    display: block;
    width: 100%;
    position: relative;
    padding-bottom: 60px;
    letter-spacing: -6px;
    line-height: 12vh;
}
.nr_tel
{
	color: #000;
    position: absolute;
    top: 36.5px;
    left: 50px;
    display: block;
	    font-size: 16px;
}
.nr_tel i 
{
	margin-right:10px;
	color:#00963f;
}
.rrethi
{
    border-radius: 0 0 50% 50%/0 0 100% 100%;
    background: #00963f;
width: calc(50vw + 90px);
    height: calc(25vw + 45px);
    top: 0;
    left: 0;
    position: absolute;
    aspect-ratio: 1/1;
    z-index: 0;
    background: #e9e9e9;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 0;
    margin: auto;
	
}
.rrethi:before
{
    position: absolute;
width: calc(50vw + 210px);
    height: calc(25vw + 105px);
	top:0;
    content: "";
    aspect-ratio: 1/1;
    z-index: 0;
    border-radius: 0 0 50% 50%/0 0 100% 100%;

	border-top:1px solid rgba(25,255,255,0);
	z-index:0;
	    box-shadow: 0px 10px 50px 10px rgb(0 0 0 / 10%);

}
.rrethi:after
{
    position: absolute;
	width: calc(50vw + 30px);
	background:#00963f;
    height: calc(25vw + 15px);
	left:0;
	right:0;
	margin:auto;
	top:0;
    content: "";
    aspect-ratio: 1/1;
    z-index: 0;
    border-radius: 0 0 50% 50%/0 0 100% 100%;

	z-index:2;

}


/* social */

.rrethi_b
{
    width: 50vw;
    height: 25vw;
    position: absolute;
    border-radius: 0 0 50% 50%/0 0 100% 100%;
    overflow: hidden;
    top: 0;
	z-index: 3;
}
.rrethi_b span
{
float:left;
display:block;

}

.rrethi_b span:nth-child(2) {
    float: left;
    display: block;
    width: 25vw;
    left: 25vw;
    position: Absolute;
    left: 0;
    top: 0;
    height: 25vw;
    clip-path: polygon(100% 100%, 100% 0%, 0% 100%, 0 100%);
    transition:0.6s;
    background: #6b717b;
  }
.rrethi_b span:nth-child(4) {
    float: left;
    display: block;
    width: 25vw;
    position: Absolute;
    left: 25vw;
    top: 0;
    height: 25vw;
    clip-path: polygon(100% 100%, 100% 0%, 0% 0%, 0% 0%);
    transition:0.6s;
    background: #818181;
}
.rrethi_b span:nth-child(3) 
{
	float: left;
	display: block;
	width: 25vw;
	left: 25vw;
	position: Absolute;
	top: 0;
	height: 25vw;
	clip-path: polygon(0% 100%, 100% 100%, 0% 0%, 0% 0%);
	transition:0.6s;
	background: #959595;
}
.rrethi_b svg
{
	fill: #000;
	font-size:64px;
	font-weight:400;
	font-family:Halvar Mittel Th;
}
.rrethi_b span:nth-child(1)
 {
    float: left;
    display: block;
    width:25vw;
    position:Absolute;
    left:0;
    top:0;
    height:25vw;
    background-size:100%;
    transition:0.6s;
    clip-path: polygon(0% 0%, 100% 0%, 0% 100%, 0% 0%);
    background: #e7e7e7;
}
.rrethi_b span a
{
       position: absolute;
    left:00%;
    top: 0;
    width: 200%;
  transition:0.6s;
    height: 100%;

}

.rrethi_b span:nth-child(4) a
{
	left:-50%;
}
.rrethi_b span a::after
{

    content: "";
    position: Absolute;
   left: 25%;
    top: -50%;
    z-index: 9999;
    width: 50%;
    height: 100%;
    background-image: url(img/bg.png);
	background-size:auto 50%;
    border-radius: 50%;
	transition:0.6s;
	
	
}
.rrethi_b span:nth-child(3) a::after
{

       content: "";
    position: Absolute;
    left: -25%;
    top: -50%;
    z-index: 9999;
    width: 50%;
    height: 100%;
    background-image: url(img/bg.png);
    background-size: auto 50%;
    border-radius: 50%;
    transition: 0.6s;
   
	
}
.rrethi_b span:nth-child(4) a::after
{

       content: "";
    position: Absolute;
    left: 0%;
    top: -50%;
    z-index: 9999;
    width: 50%;
    height: 100%;
    background-image: url(img/bg.png);
    background-size: auto 50%;
    border-radius: 50%;
    transition: 0.6s;
    
	
}
	
	
span a:hover:after
	{
	transform:scale(1.5)
	}
.rrethi_b span:nth-child(1):hover
{
	background-size:110%;
	transition:0.6s;
	filter:grayscale(0);
}
.rrethi_b span:nth-child(2):hover
{
		background-size:110%;
	transition:0.6s;
	filter:grayscale(0);
}
.rrethi_b span:nth-child(3):hover
{
		background-size:110%;
	transition:0.6s;
	filter:grayscale(0);
}
.rrethi_b span:nth-child(3) svg
{
	    transform: rotate(-90deg);
}
.rrethi_b span:nth-child(4):hover
{
		background-size:110%;
	transition:0.6s;
	filter:grayscale(0);
}
.rrethi_b span:nth-child(4) svg
{
	    transform: rotate(270deg);
}
.txt_holder {
width: calc(50vw + 210px);
    height: calc(25vw + 105px);
    margin: auto;
    position: absolute;

    border-radius: 0 0 50% 50%/0 0 100% 100%;

    top: 0;
}

svg {
	display: block;
    fill: #000;
    font-family: 'Halvar Mittel Th';
    font-weight: 100;
    height: 100%;
    margin: auto;
    text-transform: uppercase;
    width: 100%;
}

text {
  letter-spacing: 2px;
}
.c_left
{
width: 50%;
    float: left;
    height: 100%;
    display: flex;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    transition: 0.6s;
    overflow: hidden;
    filter: blur(0px);
    align-items: flex-end;
    justify-content: center;
		
}
.c_right
{
width: 50%;
    float: left;
    height: 100%;
    display: flex;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    transition: 0.6s;
    overflow: hidden;
    filter: blur(0px);
    align-items: flex-end;
    justify-content: center;
	
}
.c_left:hover img, .c_right:hover img
{
	filter:blur(0px);
	transition:0.6s;
}
.c_left img
{
	width: 100vw;
    position: absolute;
	left:0px;
	top:-0px;
	filter:blur(5px);
	transition:0.6s;
	clip:rect(0px,100vw,auto,0px);
	margin-left:-5px;
	
}
 .c_right img
{
	width: 100vw;
    position: absolute;
	right:0;
	top:0;
	filter:blur(5px);
	transition:0.6s;
	margin-right:-10px;
	
}
.c_left:hover, .c_right:hover
{
	overflow:hidden;
	
}
.front_page video 
{
	filter: grayscale(1);
    opacity: 0.4;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
}

.stick_right h3 
{
	width:calc(100% - 60px);
	padding:0 30px 0;
	text-align:center;
	font-size:22px;
	font-family:Halvar Mittel Th;
	font-weight: 500;
	color:#000;
}
.stick_right p
{
    text-align: center;
    font-weight: 100;
    font-size: 3vw;
    font-family: 'Halvar Mittel Th';
    float: left;
    display: block;
    width: 100%;
    position: relative;
    letter-spacing: -3px;
}

.contstick h2{position: relative;font-size: 14vw;color: #00963f;-webkit-text-stroke: 1px #23a55a;text-transform: uppercase;font-family: 'Halvar Mittel Md';font-weight: 500;top: 0;left: 0;margin: auto;bottom: 0;right: 0;align-items: center;justify-content: center;}
.contstick h2::before{
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #23a55a;
    -webkit-text-stroke: 0vw #383d52;
    border-right: 2px solid #fff;
    overflow: hidden;
    animation: animate 6s linear infinite;
    font-family: 'Halvar Mittel Md';
}
@keyframes animate{
    0%,10%,100%{
        width: 0;
    }
    70%,90%{
        width: 100%;
    }
}
.tits_holder
{
    position: absolute;
    height: 100%;
    width: 100%;
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
	    z-index: -1;
}
.r_more 
{
	    position: absolute;
	    width: 10%;
	    /* height: 200px; */
	    background: #000;
	    bottom: 100px;
	    left: 100px;
	    border-radius: 50%;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    color: #fff;
	    font-size: 80px;
	    transition:0.6s;
	    -webkit-animation: shockwaveJump 1s ease-out infinite;
	    animation: shockwaveJump 1s ease-out infinite;
	    aspect-ratio: 1/1;
}
.r_more:hover i 
{
	transform:rotate(360deg);
	transition:0.6s;
}
.r_more i 
{
	transition:0.6s;
}
.r_more:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  -webkit-animation: shockwave 1s 0.65s ease-out infinite;
          animation: shockwave 1s 0.65s ease-out infinite;
}
.r_more:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 50%;
  -webkit-animation: shockwave 1s 0.5s ease-out infinite;
          animation: shockwave 1s 0.5s ease-out infinite;
}

@-webkit-keyframes shockwaveJump {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.08);
  }
  50% {
    transform: scale(0.98);
  }
  55% {
    transform: scale(1.02);
  }
  60% {
    transform: scale(0.98);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes shockwaveJump {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.08);
  }
  50% {
    transform: scale(0.98);
  }
  55% {
    transform: scale(1.02);
  }
  60% {
    transform: scale(0.98);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes shockwave {
  0% {
    transform: scale(1);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.15), inset 0 0 1px rgba(0, 0, 0, 0.15);
  }
  95% {
    box-shadow: 0 0 50px rgba(0, 0, 0, 0), inset 0 0 30px rgba(0, 0, 0, 0);
  }
  100% {
    transform: scale(2.25);
  }
}
@keyframes shockwave {
  0% {
    transform: scale(1);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.15), inset 0 0 1px rgba(0, 0, 0, 0.15);
  }
  95% {
    box-shadow: 0 0 50px rgba(0, 0, 0, 0), inset 0 0 30px rgba(0, 0, 0, 0);
  }
  100% {
    transform: scale(2.25);
  }
}
.stick_right
{
      width: 20%;
      position: absolute;
      float: right;
      display: flex;
      aspect-ratio: 1/1;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 50%;
      right: 20%;
      top: 15%;
}
.stick_right:after
{
	    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: black;
    left: 10%;
    z-index: -1;
	opacity: 0.5;
}
.reviews
{
    width: calc(100% - 60px);
    height: 100vh;
    display: flex;
    float: left;
    position: relative;
    background: #e9e9e9;
    flex-direction: column;
    align-items: center;
    margin: 30px;
    padding: 0;
    justify-content: center;
    margin-bottom: 0;
}
.review
{
	width: 190px;
	aspect-ratio: 1/1;
	position: relative;
	border-bottom-right-radius: 30px;
	background: #fff;
	margin: 15px 0;
	transition:0.6s;
	border-radius: 50%;
	height: 190px;
	box-shadow: 0 0 10px 10px rgb(0 0 0 / 10%);
}
.review:hover .yllat i 
{
	  animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
  transform: translate3d(0, 0, 0);
  perspective: 1000px;
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

.review .foto
{
	width: 60px;
	float: left;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
	margin: auto;
	border: 5px solid #00963f;
	border-radius: 50%;
}
.foto img
{
    width: 60px;
    height: 60px;
    border-radius: 50%;
}
.foto span
{
	    width: 100%;
	    text-align: center;
	    font-size: 14px;
	    display: block;
	    font-family: 'Halvar Mittel Th';
    padding-top: 5px;
	    color: rgba(0,0,0,0.7);
}
.review .descript {width: 100%;float: left;position: relative;display: flex;flex-direction: column;align-content: center;align-items: center;min-height: 100%;justify-content: center;}
.descript p
{
	padding-right: 10px;
	padding-top: 20px;
	font-family: 'Halvar Mittel lt';
	font-size: 14px;
	margin: 0;
	width: 100%;
	font-weight:300;
	float: left;
	color: rgba(0,0,0,0.7);
	padding: 0 20px;
	text-align: center;
}

.review .yllat
{
    float: left;
    width: 100%;
    float: left;
    display: flex;
    margin-top: 10px;
    position: absolute;
    justify-content: center;
    margin-left: 0;
    bottom: 15px;
}
.yllat i 
{
    float: left;
    display: block;
    font-size: 13px;
    color: #00963f;
}


.review:nth-child(2)
{
	    margin-left: 600px;
}
.review:nth-child(1)
{
	margin-left: 0;
}
.review:nth-child(3)
{
	margin-left: -473px;
}
.review:nth-child(1):after
{
	position:absolute;
	content:"";
	width:1px;
	height: calc(100% + 8px);
	background:#bdb1b1;
	right: 0;
	left: 0;
	margin: auto;
	bottom: calc(-100% - 8px);
}
.review:nth-child(2):before
{
	position:absolute;
	content:"";
	width: 212px;
	height:1px;
	background:#bdb1b1;
	bottom: 50px;
	margin: auto;
	left: -208px;
	transform: rotate(-15deg);
}


.review:nth-child(2):after
{
	position:absolute;
	content:"";
	width:10px;
	height:10px;
	background:#00963f;
	top: 0;
	bottom: -145px;
	margin: auto;
	left: -209px;
	border-radius:50%;
}
.review:nth-child(3):after {
    position: absolute;
    content: "";
    width: 1px;
    height: calc(100% + -8px);
    background: #bdb1b1;
    right: 0;
    left: 0;
    top: -101px;
    margin: auto;
    right: calc(-100% - 115px);
    transform: rotate(64deg);
	z-index:0;
}

::-webkit-scrollbar-track
{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
}

::-webkit-scrollbar
{
	width: 0px;
	background-color: #F5F5F5;
}

::-webkit-scrollbar-thumb
{
	background-color: #00963f;
}
.reviews:before
{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(img/lines2.svg);
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    opacity: 0.1;
    background-position: top center;
    background-size:auto 200%;
}




.go_down a {
  padding-top: 80px;
}
.go_down  span {
position: absolute;
    top: 0;
    left: 50%;
    margin-top: 8px;
    width: 10px;
    height: 10px;
    margin-left: -5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-animation: sdb07 2s infinite;
    animation: sdb07 2s infinite;
    opacity: 0;
    box-sizing: border-box;
}
.go_down  span:nth-of-type(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}
.go_down  span:nth-of-type(2) {
top: 10px;
  -webkit-animation-delay: .15s;
  animation-delay: .15s;
}
.go_down  span:nth-of-type(3) {
  top: 32px;
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}
@-webkit-keyframes sdb07 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb07 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.go_down a {
  position: absolute;
  bottom: 20px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #fff;
  font : normal 400 20px/1 'Josefin Sans', sans-serif;
  letter-spacing: .1em;
  text-decoration: none;
  transition: opacity .3s;
}
.go_down a:hover {
  opacity: .5;
}
.go_down
{
	    left: 0;
	    position: absolute;
	    bottom: 30px;
	    transition: opacity .3s;
	    right: 0;
	    width: 40px;
	    height: 40px;
	    background: #00963f;
	    border-radius: 50%;
	    display: flex;
	    align-items: center;
	    margin: auto;
	    justify-content: center;
}
.overlay_back
{
    width: 40px;
    height: 40px;
    background: #00963f;
    position: absolute;
    right: 30px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 15px;
}
footer
{
    width: calc(100% - 60px);
    height: 100vh;
    margin: 0 30px 30px;
		background: #00963f;
    display: block;
    float: left;
   position:relative;  
}
.ic_social 
{
	width: auto;
    height: auto;
    float: left;
    display: block;
    top: 0;
    position: relative;
    bottom: 0;
	transition:0.6s;
	
}
.ic_social span
{

	margin-left:10px;
	transition:0.6s;
	text-indent:-9999px;
	overflow:hidden;
    font-family: 'Halvar Mittel lt';
    color: #555;
	font-weight:400;
}
.ic_social i 
{
	width: 30px;
	height: 30px;
	background: #6b717b;
	border-radius: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	float: left;
	color: #fff;
	transition:0.6s;
}
.ic_social a 
{
	 float: left;
    display: flex;
    align-items: center;
	transition:0.6s;
}
.ic_social a:hover span
{
	text-indent:0px;
	transition: 0.6s;
	margin-right:10px;
}
.ic_social a:hover
{
	transition:0.6s;
}
.ic_social a:hover i 
{
	background:#00963f;
}
.footer_holder
{
    width: 100%;
    height: 100%;
    display: block;
    float: left;
    position: relative;
    background-image: url(img/map.svg);
    background-repeat: no-repeat;
    background-size: 400px auto;
    background-position: center 30px;
    z-index: 1;
    display: flex;
    align-items: center;
	    flex-direction: column;
}
.footer_holder:before
{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(img/lines2.svg);
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    background-size: auto 200%;
    background-position: top center;
    transform: rotatex(180deg);
    z-index: -1;
}
.contact_holder span 
{
	    float: left;
    display: block;
    font-size: 172px;
    font-weight: 800;
    font-family: 'Halvar Mittel Th';
	color:#44a76e;
}
.contact_us
{
	    width: 300px;
    position: absolute;
    height: 300px;
    border-radius: 50%;
    background: #fff;
    margin: auto;
    right: 0;
	display: flex;
    left: 0;
    align-items: center;
    justify-content: center;
	    color: #000;
   font-size: 180px;
	    transition: 0.6s;
    -webkit-animation: shockwaveJump 1s ease-out infinite;
    animation: shockwaveJump 1s ease-out infinite;
}
.contact_us:hover
{
	background:#000;
	color:#fff;
	transition:0.6;
}
.contact_us:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: 50%;
    -webkit-animation: shockwave 1s 0.65s ease-out infinite;
    animation: shockwave 1s 0.65s ease-out infinite;
}

.contact_holder
{
	width:100%;
	height:100%;
	float:left;
	display:flex;
	align-items: center;
}
.contact_down
{
	display: flex;
    flex-direction: column;
    align-content: center;
    width: 100%;
    height: auto;
}
.contact_down span
{
	left: 0;
	top: 0;
	position: relative;
	margin: auto;
	color:#fff;
	font-size: 13px;
	margin-bottom:10px;
	font-weight: 400;
	font-family: 'Halvar Mittel Th';
}
.contact_down p 
{
	width: 50%;
	left: 0;
	position: relative;
	right: 0;
	margin: auto;
	color: #abe3c3;
	font-family: 'Halvar Mittel lt';
	line-height: 13px;
	font-size: 12px;
	text-align: center;
	font-weight:300;
}
.footer_social
{
width: 100%;
    position: relative;
    height: auto;
    float: left;
    display: flex;
    justify-content: center;
    flex-direction: row;
	margin-top:20px;
}
.footer_social a i 
{
	width: 30px;
	height: 30px;
	background: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	transition:0.8s;
}
.footer_social a i:hover
{
	background: #fff;
	color: #00963f;
	transition:0.8s;
}
.footer_social a 
{
	margin-right: 10px;
}
.author
{
    width: auto;
    display: table;
    position: relative;
    margin: 20px auto 0;
    padding-top: 20px;
    padding-left: 30px;
    padding-right: 30px;
    border-top: 1px solid rgba(255,255,255,0.2);
    margin-bottom: 30px;
}
.author img 
{
	width: 80px;
}
.footer_holder:after
{
	content:"";
	width:calc(100% + 40px);
	height:100%;
	position:absolute;
	display:block;
	background-image:url(img/text.svg);
	background-size:100% auto;
	background-position:center;
	background-repeat:no-repeat;
	opacity:0.2;
	z-index:-1;
}



/* menu */
.hamburger {
    width: 40px;
    height: 40px;
    position: absolute;
    right: 3em;
    z-index: 10000;
    background: #00963f;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
	transition:0.6s;
}
.hamburger.is-active .hamburger--container .hamburger--bars {
  background: #000;
  position:fixed;
}
.hamburger.is-active .hamburger--container .hamburger--bars:before, .hamburger.is-active .hamburger--container .hamburger--bars:after {
  background: #000;
}
.hamburger.is-active .hamburger--container .hamburger--bars:before {
  left: 0.25em;
}
.hamburger.is-active .hamburger--container .hamburger--bars:after {
  left: -0.25em;
}
.hamburger .hamburger--container {
  width: 100%;
  /* padding: 0.25em; */
  height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
}
.hamburger .hamburger--container .hamburger--bars {
  height: 2px;
  width: 1.5em;
  background: #fff;
  position: absolute;
  /* top: 0.9em; */
  transition: 0.3s ease;
}
.hamburger.is-active
{
	background:#fff;
	position:absolute;
	top:60px;
	right:60px;
	transition:0.6s;
}

.hamburger .hamburger--container .hamburger--bars:before, .hamburger .hamburger--container .hamburger--bars:after {
  content: "";
  display: block;
  height: 2px;
  width: 1.5em;
  background: #fff;
  position: absolute;
  left: 0;
  transition: 0.3s ease;
}
.hamburger .hamburger--container .hamburger--bars:before {
  top: -0.5em;
}
.hamburger .hamburger--container .hamburger--bars:after {
  top: 0.5em;
}

.
.logo.is-active img {
  filter: invert(100%);
}

.fsmenu {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2;
  overflow: hidden;
  display: none;
}
 .fsmenu--container {
  width: 100%;
  height: 100%;
  padding:0;
  position: relative;
  right: 0;
  overflow: hidden;
  background-image: url(img/background.svg),radial-gradient(circle at 18.7% 37.8%, rgb(250, 250, 250) 0%, rgb(225, 234, 238) 90%);
  background-repeat:no-repeat;
  background-size:auto 100%, 100%;
  background-position:left top;
}


.fsmenu--list {
  width: calc(100% - 60px);
  display: flex;
  height: calc(100% - 60px);
  /* position: absolute; */
  bottom: 60px;
  right: 60px;
  padding: 0 60px 60px 0;
  margin: 0;
  align-items: flex-end;
  flex-direction: column;
  justify-content: flex-end;
}
.fsmenu--list .fsmenu--list-element {
  width: 100%;
  height: auto;
  list-style-type: none;
  text-align: right;
  /* position: relative; */
  bottom: 0;
  right: 0;
  display: block;
}
 .fsmenu--list .fsmenu--list-element a {
  width: 100%;
  height: auto;
  text-decoration: none;
  color: white;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  transition: 0.2s ease;
  position: relative;
  bottom: 0;
}
.fsmenu--list .fsmenu--list-element a:hover span.page_title{
  color: #00963f;
}
 .fsmenu--list .fsmenu--list-element a span.page_title {font-size: 5em;font-weight: 300;letter-spacing: 0;text-transform: uppercase;line-height: 1;height: 1em;display: inline-block;position: relative;z-index: 3;font-family: 'Halvar Mittel Th';color: #484646;}
.fsmenu--listi .fsmenu--list-element a span:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  position: absolute;
  left: 0;
  z-index: 1003;
}
 .fsmenu--list-element a .fsmenu--scrolling-text {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    margin: auto;
    bottom: 0;
}

 .fsmenu--list .fsmenu--list-element .fsmenu--scrolling-text span {
  height: 1em;
  font-size: 8em;
  font-weight: 900;
  letter-spacing: 10px;
  text-transform: uppercase;
  line-height: 1;
    color: rgba(255,255,255,0.6);
  display: inline-block;
  margin-right: 1em;
  white-space: nowrap;
}
.fsmenu--list .fsmenu--list-element:hover .fsmenu--scrolling-text {
  opacity: 1;
  -webkit-animation: animScrollingContactTextLeft 9s linear 0s infinite;
          animation: animScrollingContactTextLeft 9s linear 0s infinite;
}


.fsmenu--list .fsmenu--list-element .fsmenu--link-img .fsmenu--img-container {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius:50%;
}
.fsmenu .fsmenu--list .fsmenu--list-element .fsmenu--link-img .fsmenu--img-container img {
  width: 100%;
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}
.fsmenu  .fsmenu--list .fsmenu--list-element.open .fsmenu--link-img {
  left: 0;
  right: calc(100vw - 720px);
  -webkit-animation: animMenuRevealImg 0.4s ease 0s forwards;
          animation: animMenuRevealImg 0.4s ease 0s forwards;
		  
}
.fsmenu .fsmenu--list .fsmenu--list-element.open .fsmenu--link-img .fsmenu--img-container img {
  right: 0;
  left: auto;
}
.fsmenu .fsmenu--list .fsmenu--list-element.is-closing .fsmenu--link-img {
  left: 0;
  right: auto;
  -webkit-animation: animMenuCloseImg 0.4s ease 0s forwards;
  animation: animMenuCloseImg 0.4s ease 0s forwards;
  height: auto;
  display: block;
  height: auto;
  float: left;
  margin: 0;
  padding: 0;
}
.fsmenu .fsmenu--list .fsmenu--list-element.is-closing .fsmenu--link-img .fsmenu--img-container img {
  left: 0;
  right: auto;
}
.fsmenu.is-active {
  display: block;
}
.fsmenu.is-active .fsmenu--container {
  -webkit-animation: animMenuReveal 0.6s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0s forwards;
          animation: animMenuReveal 0.6s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0s forwards;
}
.fsmenu.is-active .fsmenu--container .fsmenu--text-container .fsmenu--list .fsmenu--list-element a span:before {
  -webkit-animation: animMenuRevealLinks 0.4s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0.4s forwards;
          animation: animMenuRevealLinks 0.4s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0.4s forwards;
}
.fsmenu.close-menu {
 
}
.fsmenu.close-menu .fsmenu--container {
  width: 100vw;
  right: auto;
  left: 0;
  -webkit-animation: animMenuClose 0.6s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0.3s forwards;
          animation: animMenuClose 0.6s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0.3s forwards;
}
.fsmenu.close-menu .fsmenu--container .fsmenu--text-container .fsmenu--list .fsmenu--list-element a span:before {
  left: auto;
  right: 0;
  background: black;
  -webkit-animation: animMenuCloseLinks 0.4s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0s forwards;
          animation: animMenuCloseLinks 0.4s cubic-bezier(0.13, 0.13, 0.02, 1.07) 0s forwards;
}

@-webkit-keyframes animMenuReveal {
  0% {
    width: 0vw;
  }
  100% {
    width: 100vw;
  }
}

@keyframes animMenuReveal {
  0% {
    width: 0vw;
  }
  100% {
    width: 100vw;
  }
}
@-webkit-keyframes animMenuRevealLinks {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@keyframes animMenuRevealLinks {
  0% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@-webkit-keyframes animMenuClose {
  0% {
    width: 100vw;
    padding: 8em 3em 3em;
  }
  100% {
    width: 0vw;
    padding: 8em 0 0;
  }
}
@keyframes animMenuClose {
  0% {
    width: 100vw;
    padding: 8em 3em 3em;
  }
  100% {
    width: 0vw;
    padding: 8em 0 0;
  }
}
@-webkit-keyframes animMenuCloseLinks {
  0% {
    width: 0%;
  }
  100% {
    width: 110%;
  }
}
@keyframes animMenuCloseLinks {
  0% {
    width: 0%;
  }
  100% {
    width: 110%;
  }
}
@-webkit-keyframes animMenuRevealImg {
  0% {
    width: 0;
  }
  100% {
    width: 720px;
  }
}
@keyframes animMenuRevealImg {
  0% {
    width: 0;
  }
  100% {
    width: 720px;
  }
}
@-webkit-keyframes animMenuCloseImg {
  0% {
    width: 720px;
  }
  100% {
    width: 0;
  }
}
@keyframes animMenuCloseImg {
  0% {
    width: 720px;
  }
  100% {
    width: 0;
  }
}
@-webkit-keyframes animScrollingContactTextLeft {
  0% {
    transform: translate(-20%, 0%);
  }
  100% {
    transform: translate(-40%, 0%);
  }
}
@keyframes animScrollingContactTextLeft {
  0% {
    transform: translate(-20%, 0%);
  }
  100% {
    transform: translate(-40%, 0%);
  }
}


/* menu */


.uberuns
{
    width: calc(100% - 120px);
    height: calc(100vh - 190px);
    float: left;
    display: flex;
    position: relative;
    background: #6b717b;
    margin: 70px 0 0;
    padding:60px;
    align-items: center;
    /* overflow:hidden; */
    flex-direction: row;
}
.leistungen
{
	width: calc(100% - 180px);
	min-height: calc(100vh - 190px);
	float: left;
	display: flex;
	position: relative;
	background: #6b717b;
	margin: 70px 30px 30px;
	padding:60px;
	overflow:hidden;
	    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
}
.swiper-wrapper a.cboxElement
{
	    float: left;
	    height: 100%;
	    overflow: hidden;
	    display: flex;
	    justify-content: center;
	    align-items: center;
}
.leistungen_left
{
	width: 40%;
	height: auto;
	float:left;
	display: flex;
	position:relative;
	align-items: flex-end;
	margin-right: 30px;
	z-index:1;
}
.leistungen_right .ipWidget-AsdSlider .bx-wrapper .bx-viewport
{
	height:70vh!important;
	
}
.referenzen_holder ._item a.cboxElement
{
	    width: 100%;
    aspect-ratio: 1/1;
    float: left;
    display: block;
    overflow: hidden;
}
.referenzen_holder ._item a.cboxElement img
{    width: auto;
    min-width: 100%;
    min-height: 100%;
}
.leistungen_left p, .leistungen_right p 
{
    float: left;
    position: relative;
    font-size: 18px;
    font-family: 'Halvar Mittel lt';
    line-height: 22px;
    color: #fff;
    font-weight: 300;
	padding:0;
	/* margin:0; */
}
.leistungen_left p b, .leistungen_right p b
{
	font-family: 'Halvar Mittel lt';
    font-weight: 300;
	font-size:25px;
}
.leistungen_left h1 {
    color: #fff;
    font-size: 15vh;
    font-family: 'Halvar Mittel Th';
    font-weight: 100;
    position: relative;
    width: 100%;
    float: left;
    margin-bottom: 60px;
    letter-spacing: -6px;
    line-height: 10vh;
}
.leistungen_right
{
		width: calc(60% - 30px);
		height: auto;
		float:right;
		display: block;
		position:relative;
		align-items: flex-end;
		margin-left: 30px;
		z-index:1;
}.leistungen:after
{
		position: absolute;
		height: auto;
		border-radius: 50%;
		left: -35vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 70vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
}
.leistungen:before
{
	position: absolute;
		height: auto;
		border-radius: 50%;
		left: -30vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 60vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
	
}

.leistungen:hover::after 
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2s linear infinite;
  -moz-animation: rotating 2s linear infinite;
  -ms-animation: rotating 2s linear infinite;
  -o-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}
.leistungen:hover::before  
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2.5s linear infinite;
  -moz-animation: rotating 2.5s linear infinite;
  -ms-animation: rotating 2.5s linear infinite;
  -o-animation: rotating 2.5s linear infinite;
  animation: rotating 2.5s linear infinite;
}


@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.referenzen
{
	width: calc(100% - 60px);
    height: 100%;
    float: left;
    display: block;
    position: relative;
    background: #6b717b;
    margin: 70px 30px 30px;
	overflow: hidden;
}
.kontakt
{
    width: calc(100% - 180px);
    /* height: auto; */
    float: left;
    display: block;
    position: relative;
    background: #6b717b;
    margin: 70px 30px 30px;
    padding: 60px;
    overflow:hidden;
}

.fsmenu--link-img
{
	    position: absolute;
    width: 25%;
    aspect-ratio: 1/1;
    left: 60px!important;
    bottom: 60px;
	animation:none!important;
	opacity:0!important;
	transition:0.6s;
}
.fsmenu--list-element.open .fsmenu--link-img
{
	opacity:1!important;
	transition:0.6s;
	  
}
.company_data
{
	width:calc(100% - 60px);
	height:100vh;
	position:relative;
	float:left;
	background-color: rgba(0,0,0,0.6);
	display:flex;
	align-items: center;
	justify-content: center;
	margin: 0 30px;
}
.data_holder
{
	height: auto;
	position:relative;
	display:block;
	float:left;
	width: 30%;
	aspect-ratio:1/1;
}
.data
{
    height: calc(50% - 67.5px);
    width: calc(50% - 67.5px);
    position: absolute;
    transition: 0.6s;
    overflow: hidden;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
}
.data:hover
{
	height: 75%;
	width:75%;
	transition:0.6s;	
}
.data:nth-child(1)
{
	right:calc(50% + 7.5px);
	bottom:calc(50% + 7.5px);
	
}
.data:nth-child(1):hover
{
	border-top-left-radius:20%;
}
.data:nth-child(2):hover
{
	border-top-right-radius:20%;
}
.data:nth-child(3):hover
{
	border-bottom-left-radius:20%;
}
.data:nth-child(4):hover
{
	border-bottom-right-radius:20%;
}


.data:nth-child(2)
{
	left:calc(50% + 7.5px);
	bottom:calc(50% + 7.5px);
}
.data:nth-child(3)
{
	top:calc(50% + 7.5px);
	right:calc(50% + 7.5px);
}
.data:nth-child(4)
{
	top:calc(50% + 7.5px);
	left:calc(50% + 7.5px);
}
.data:after
{
	width:120px;
	height:120px;
	border-radius:50%;
	position:absolute;
	content:"";
	box-shadow:0px 0px 0px 1000px rgba(0,150,63,0.7);
	 z-index: -1;
}
.data:hover:after
{
	box-shadow:0px 0px 0px 1000px rgba(255,255,255,1);
	
}
.data:nth-child(1):after
{
	bottom:-67.5px;
	right:-67.5px;
}
.data:nth-child(2):after
{
	left:-67.5px;
	bottom:-67.5px;
}
.data:nth-child(3):after
{
	right:-67.5px;
	top:-67.5px;
}
.data:nth-child(4):after
{
	left:-67.5px;
	top:-67.5px;
}
.data p
{
	display:none;
	font-size: 16px;
    font-family: 'Halvar Mittel lt';
    font-weight: 300;
    line-height: 20px;
    color: #555;
	float: left;
    width: 100%;
}
.data h2
{
	font-weight: 300;
    font-size: 2vw;
    font-family: 'Halvar Mittel Th';
    float: left;
    display: block;
    width: 100%;
	color:#fff;
    
}
.data:hover h2
{
	color:#555;
}
.data:hover p 
{
	display:block;
}
.data .ipBlock
{
	    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.data_holder:after
{
	position:absolute;
	content:"";
	width:90px;
	height:90px;
	background-color:#fff;
	border-radius:50%;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	background-image:url(img/logo.png);
	background-size:60px auto;
	background-repeat:no-repeat;
	background-position:center;
}
.company_data:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(img/lines2.svg);
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    opacity: 0.5;
    background-position: top center;
    background-size: auto 200%;
}
.uberuns_left
{
	width:60%;
	height:100%;
	float:left;
	display: flex;
	position: relative;
	align-items: center;
	align-items: flex-end;
	justify-content: flex-start;

}
.uberuns_right
{
    width: 100%;
    float: right;
    display: flex;
    position: relative;
    aspect-ratio: 1/1!important;
    background: #fff;
    padding: 30px;
    align-items: center;
    overflow: hidden;
}
.uberuns_center
{
	    width: 40%;
	    float: left;
	    display: flex;
	    position: relative;
	    height: 100%;
	    align-items: flex-end;
}

.uberuns_left h1
{
    color: #fff;
    font-size: 15vh;
	font-family: 'Halvar Mittel Th';
	font-weight:100;
    position: relative;
    width: 100%;
    float: left;
    margin-bottom: 60px;
	letter-spacing: -6px;
	line-height: 10vh;
}
.uberuns_left h1 span 
{
	   float: left;
    display: block;
    width: 100%;
}
.uberuns_left p 
{
    float: left;
    position: relative;
    width: 60%;
    font-size: 18px;
    font-family: 'Halvar Mittel lt';
    line-height: 22px;
    color: #fff;
    font-weight: 300;
    display: block;
}
.uberuns_center h2
{
	color: #000;
    font-size: 50px;
    font-family: 'Halvar Mittel Th';
    font-weight: 100;
    position: relative;
    width: 100%;
    float: left;
    margin-bottom: 60px;
    letter-spacing: -2px;
    text-align:center;
	
}
.uberuns:after
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    left: -35vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 70vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
}
.uberuns:before
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    left: -30vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 60vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
	
}

.uberuns:hover::after 
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2s linear infinite;
  -moz-animation: rotating 2s linear infinite;
  -ms-animation: rotating 2s linear infinite;
  -o-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}
.uberuns:hover::before  
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2.5s linear infinite;
  -moz-animation: rotating 2.5s linear infinite;
  -ms-animation: rotating 2.5s linear infinite;
  -o-animation: rotating 2.5s linear infinite;
  animation: rotating 2.5s linear infinite;
}


@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}




.uberuns_left:hover:before, .uberuns_left:hover:after
{
	border:1px solid rgba(255,255,255,0.5);
	transition:0.7s;
}
.uberuns_left:hover:before
{
	left:-90%;
	transition:0.7s;
}
.uberuns_left:hover:after
{
	left:-120%;
	transition:0.7s;
}

.uberuns_right p 
{
	float: left;
    position: relative;
    font-size: 18px;
    font-family: 'Halvar Mittel lt';
    line-height: 22px;
    color: #000;
	font-weight:300;
}
.uberuns_right:after
{
	width:50%;
	aspect-ratio:1/1;
	position:absolute;
	content:"";
	border-radius:50%;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	box-shadow:0px 0px 0px 1000px #fff;
	
	background-image:url(img/about_us.png);
	background-position:center;
	background-size:auto 100%;
	transition:0.7s;
}
.uberuns_right:hover:after
{
	width:100%;
	height:100%;
	transition:0.5s;
	border-radius:0;
	background-image:none;
}
.uberuns_right,.uberuns_right:hover
{
	transition:0.7s;
}
.uberuns_right:before
{
position: absolute;
    content: "+";
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #00963f;
    z-index: 1;
    left: auto;
    right: 25%;
    top: 25%;
    bottom: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 40px;
    font-family: 'Halvar Mittel Hl';
	transition:0.8s;

}
.uberuns_right:hover:before
{
	width:0;
	height:0;
	transition:0.4s;
}
.uberuns_project
{
	width:100%;
	height: auto;
	float:left;
	display:block;
	position:relative;
	background: #6b717b;
	padding-bottom: 30px;
	margin-bottom: 30px;
}


/* slider */

.swiper-container-android .swiper-slide, .swiper-wrapper {
    transform: translate3d(0px,0,0);
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%;
}
.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0,0,0);
    z-index: 10;
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color,var(--swiper-theme-color));
}



.swiper-container {
  height: auto;
  width: 100%;
  /* padding-bottom: 85px!important; */
}

.swiper-wrapper {
  width: 73.8%;
  will-change: transform;
}
@media (min-width: 630px) {
  .swiper-wrapper {
    width: 100%;
  }
}

.swiper-slide {
  width: 100%;
  overflow: hidden;
  flex-shrink: 0;
  width: 100%;
  height: auto;
  position: relative;
  transition-property: transform;
}
.swiper-slide.swiper-slide-active .slide-image, .swiper-slide.swiper-slide-duplicate-active .slide-image {
  transform: scale3d(1, 1, 1);
}
@media (min-width: 630px) {
  .swiper-slide {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .swiper-slide {
    width: 33.333333%;
  }
  .swiper-slide.swiper-slide-next .slide-image, .swiper-slide.swiper-slide-prev .slide-image, .swiper-slide.swiper-slide-duplicate-next .slide-image, .swiper-slide.swiper-slide-duplicate-prev .slide-image {
    transform: scale3d(1, 1, 1);
  }
}
@media (min-width: 1024px) {
  .swiper-slide {
    width: 25%;
	    aspect-ratio: 1/1;
  }
}
@media (min-width: 1024px) {
  .leistungen_right .swiper-slide {
    width: 50%;
    aspect-ratio: 1/1;
    
  }
}

.swiper-pagination {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  /* height: 85px; */
}
.swiper-pagination.swiper-pagination {
  bottom: -30px;
  padding-top: 40px;
}

.swiper-pagination-bullet {
  background: #fff;
  width: 22px;
  height: 4px;
  border-radius: 0;
  transition: opacity 1s ease;
}
.swiper-pagination-bullet.swiper-pagination-bullet.swiper-pagination-bullet {
  margin: 0;
}
@media (min-width: 768px) {
  .swiper-pagination-bullet {
    width: 40px;
  }
}

.slide-image {
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transform: scale3d(1.3, 1.3, 1);
  backface-visibility: hidden;
  will-change: transform;
  transition: transform 1400ms ease;
  overflow: hidden;
}

.slide-content {
  padding: 0 2.2rem;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.slide-content h4 {
  font-size: 25px;
  font-weight: 400;
  margin: 0 0 1rem;
  padding-top: 2.8rem;
  flex-grow: 0;
}
.slide-content p {
  display: flex;
  line-height: 1.8;
  margin-top: 0;
  font-size: 14px;
  flex-grow: 1;
}
.slide-content footer {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-bottom: 2.8rem;
  font-size: 14px;
  color: #c2c0e0;
}
.slide-content a {
  color: tomato;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 3px solid currentColor;
  padding-bottom: 3px;
}
.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 0;
    padding-bottom: 30px;
}
.swiper-wrapper {
    position: relative;
    /* width: 100%; */
    height: auto;
    z-index: 0;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
    top: 60px;
}

.referenzen_holder
{width: calc(100% - 40px);float: right;height:auto;display: block;padding: 20px 20px 0px 20px;z-index: 1;position: relative;}


.referenzen_child .fsmenu--list
 {
    width: 100%;
    display: block;
    height: auto;
    position: relative;
    bottom: auto;
    left: 0;
    padding: 0;
    margin: 0;
    float: left;
    padding-top: 30px;
    padding-left: 30px;
    overflow: hidden;
}
.referenzen_child .fsmenu--list-element 
{
    width: 100%;
    height: auto;
    list-style-type: none;
    text-align: left;
    position: relative;
    display: block;
    /* padding-bottom: 15px; */
    transition:0.6s;
}

.referenzen_child .fsmenu--list-element:hover
{
	transition:0.6s;
	transform:scale(1.1);
	
}
.referenzen_child .fsmenu--list-element a
{
	display:block;
}
.referenzen_child .fsmenu--link-img
{
	display:none;
}
.referenzen_child .fsmenu--list-element.open
{
	
}
.referenzen_child .page_title:hover
{
	color:fff!important;
}
.referenzen_child .fsmenu--list-element a .fsmenu--scrolling-text 
{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    overflow: hidden;
    margin: auto;
    bottom: 0;
	display:none;
}
.referenzen_child .fsmenu--list .fsmenu--list-element .fsmenu--scrolling-text span
{
	    font-size: 5em;
}
.referenzen_child .fsmenu--list .fsmenu--list-element a .page_title
{
	color:rgba(255,255,255,0.6);
	transition:0.6s;
	font-size: 32px;
}
.referenzen_child .fsmenu--list .fsmenu--list-element a:hover span.page_title
{
	color:rgba(255,255,255,1);
	transition:0.6s;
}

/* gallery */

.referenzen_holder ._item
{
	filter: brightness(0.5);
	transition:0.6s;
}
.referenzen_holder ._item:hover
{
	filter: brightness(1);
	transition:0.6s;
	transform:scale(1.1);
	
}.referenzen_gallery ._image:hover
{
	box-shadow: 0px 0px 40px 10px #fff;
	transition:0.6s;
}
.referenzen_gallery #cboxOverlay
{
	background:#6b717b;
	    opacity: 0.8!important;
}
.referenzen_gallery #cboxMiddleLeft, .referenzen_gallery #cboxTopLeft, .referenzen_gallery #cboxBottomLeft, .referenzen_gallery #cboxBottomRight, .referenzen_gallery #cboxTopCenter, .referenzen_gallery #cboxTopRight, .referenzen_gallery #cboxMiddleRight, .referenzen_gallery #cboxBottomCenter
{
	background:none!important;
}
 .referenzen_gallery #cboxCurrent
 {
	 display:none!important;
 }
 .referenzen_gallery #cboxContent
 {
	 	background:none;
	    
 }
 .referenzen_gallery #cboxTitle
 {
	 color:#fff;
	 font-family: 'Halvar Mittel lt';
	 font-weight: 300;
	 display:none!important;
 }
 .referenzen_gallery #cboxClose
 {
	 background:none;
	  text-indent:-99999!important;
	 
 }
 .referenzen_gallery #cboxNext,  .referenzen_gallery #cboxPrevious
 {
	 background:none;
	 text-indent:-99999!important;
 }
 .referenzen_gallery #cboxClose:after
 {
    content:"\f057";
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    background: #00963f;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 20px;
 font-family: 'FontAwesome';
    justify-content: center;
    align-items: center;
	border-radius:50%;
	 text-indent:1px!important;
 }
  .referenzen_gallery #cboxNext:after
  {
	      content:"\f054";
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    background: #00963f;
    top: 0;
    left: 0;
    color: #fff;
  font-size: 11px;
    font-family: 'FontAwesome';
    justify-content: center;
    align-items: center;
	border-radius:50%;
	 text-indent:1px!important;
	  
  }
    .referenzen_gallery #cboxPrevious:after
  {
	content: "\f053";
    width: 100%;
    height: 100%;
    position: absolute;
    display: flex;
    background: #00963f;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 11px;
    font-family: 'FontAwesome';
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    text-indent: 1px!important;
	  
  }
  
  
  
  .referenzen:after
{
		position: absolute;
		height: auto;
		border-radius: 50%;
		left: -35vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 70vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
}
.referenzen:before
{
		position: absolute;
		height: auto;
		border-radius: 50%;
		left: -30vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 60vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
	
}

.referenzen:hover::after 
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2s linear infinite;
  -moz-animation: rotating 2s linear infinite;
  -ms-animation: rotating 2s linear infinite;
  -o-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}
.referenzen:hover::before  
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2.5s linear infinite;
  -moz-animation: rotating 2.5s linear infinite;
  -ms-animation: rotating 2.5s linear infinite;
  -o-animation: rotating 2.5s linear infinite;
  animation: rotating 2.5s linear infinite;
}


@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.leistungen .referenzen_child 
{
    float: left;
    height: auto;
    width: 30%;
    position: absolute;
    z-index: 1;
    display: block;
    align-items: center;
    top: 0;
    left:0;
    margin: auto;
    transition:0.6s;
    background:#00963f;
}
.leistungen .referenzen_child:hover
{
	box-shadow: 18px -1px 78px -27px rgba(0,0,0,0.2);
	transition:0.6s;
	

	
}



.leistungen_holder .swiper-container .ipsImage 
{
    background-size: auto 100%;
    background-repeat: no-repeat;
	    background-position: center;
}
.referenzen_child li a 
{
	background-image:url(img/_shadow.png);
	background-size: 100% auto;
	background-position: bottom -1px right;
	background-repeat:no-repeat;
	padding-bottom: 35px;
}
.referenzen_child ul li.active a span.page_title
{
	color:rgba(255,255,255,1)!important;
}
.fixed
{
	position:fixed !important;
	background:#fff;
	border-bottom: 1px solid rgba(0,0,0,0.05);
}
.kontakt_span span:first-child
{
	width:100%;
	font-size:50px;
	color:#fff;
	position:relative;
	font-family: 'Halvar Mittel Th';
    font-weight: 600;
}
.kontakt_span span:last-child
{
	width: 100%;
    position: relative;
    display: block;
	color:#fff;
	font-size:40px;
	font-family: 'Halvar Mittel Th';
    font-weight: 100;
}
.kontakt_left .form-control
{
    max-width: 100%;
    background: none!important;
    box-shadow: 0 0 0 0!important;
    border: none;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding-left: 80px;
    color: #fff;
    transition: 0.8s;
    width: calc(100% - 100px);
    padding: 20px 20px 20px 80px;
    float: left;
    display: block;
	font-family: 'Halvar Mittel lt';
    font-size: 18px;
}

.kontakt_left .form-group
{
position: relative;
    margin-bottom: 50px;
    width: 100%;
    float: left;
    display: block;
}
.kontakt_left fieldset
{
	    border: 0;
    float: left;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
}
.kontakt_left .form-group.type-submit
{
	margin-bottom:0;
}

.kontakt_left label 
{
	position:absolute;
	top: 20px;
	left:0;
	color: rgba(255,255,255,0.4);
	    font-size: 18px;
    font-family: 'Halvar Mittel lt';
    font-weight: 300;
}
.kontakt_left .ipsAjaxSubmit 
{
	padding-top: 40px;
}
.kontakt_left textarea
{
	    padding-left: 110px!important;
}
.kontakt_left input.form-control:focus
{
	border:0 !important;
	border-bottom:1px solid #fff !important;
	transition:0.8s;
	box-shadow:0 0 0 0!important;
	
}
.kontakt_left .btn-default
{
	    width: 100%;
    background: rgba(255,255,255,0.4);
    font-size: 18px;
    font-family: 'Halvar Mittel lt';
    font-weight: 300;
    transition: 0.8s;
    float: left;
    display: block;
    width: 100%;
    box-shadow: 0 0 0 0;
    border: 0;
    color: #fff;
    border-radius: 3px;
    padding: 15px 0;
}
.kontakt_left .btn-default:hover
{
	border:0px;
	background:green;
	transition:0.8s;
	text-decoration:none;
	box-shadow:inset 0 0 0 0;
}
.kontakt_left
{
	width: calc(50% - 15px);
	height: auto;
	position:relative;
	display:block;
	/* padding-right: 15px; */
	float: right;
	margin-left: 15px;
}
.kontakt_right
{
	width: calc(50% - 75px);
	position: absolute;
	display: block;
	float: left;
	/* padding-left: 15px; */
	height: auto;
	align-items: flex-end;
	bottom: 70px;
	left: 60px;
	margin-right: 15px;
}

.kontakt_left h3,.kontakt_right h3
{
	    width: 100%;
    font-size: 32px;
    color: #fff;
    position: relative;
    font-family: 'Halvar Mittel Th';
    font-weight: 100;
	
}
.kontakt_left h3
{
	text-align: center;
}
.kontakt_right h2 
{
		    width: 100%;
    font-size: 50px;
    color: #fff;
    position: relative;
    font-family: 'Halvar Mittel Th';
    font-weight: 100;
}
.kontakt_right p span
{
	font-size: 18px;
    font-family: 'Halvar Mittel lt';
    font-weight: 300;
    line-height: 22px;
    color: rgba(255,255,255,0.4);

}
.kontakt_left p span
{
	font-size: 18px;
    font-family: 'Halvar Mittel lt';
    font-weight: 300;
    line-height: 22px;
    color: rgba(255,255,255,0.4);

}
.kontakt:after
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    left: -35vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 70vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
}

.kontakt:before
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    left: -30vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 60vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
	
}
.vintalight__caption
{
	display:none;
}

.kontakt:hover::after 
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2s linear infinite;
  -moz-animation: rotating 2s linear infinite;
  -ms-animation: rotating 2s linear infinite;
  -o-animation: rotating 2s linear infinite;
  animation: rotating 2s linear infinite;
}
.kontakt:hover::before  
{
    border-top: 1px solid #fff;
    border-left-width: 1px;
    border-right-width: 1px;
    transform: rotate(360deg);
    transition: transform 0.4s linear 0s;
     -webkit-animation: rotating 2.5s linear infinite;
  -moz-animation: rotating 2.5s linear infinite;
  -ms-animation: rotating 2.5s linear infinite;
  -o-animation: rotating 2.5s linear infinite;
  animation: rotating 2.5s linear infinite;
}


@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.contstick .carousel .title
{
	display:none;
}
nav.secondary {
	width: auto;
	margin: 0;
	position: fixed;
	padding-top: 50px;
	float: left;
	padding: 0;
	z-index: 3;
	top: 0;
	bottom: 0;
	/* display: flex; */
	align-items: center;
	left:0;
}


#nav-toggle {
    width: 50px;
    height: 50px;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e4e4e9));
    background-image: linear-gradient(to bottom, #fff, #e4e4e9);
    -webkit-box-shadow: 0 7px 11px -3px rgba(45,35,66,0.2), 0 2px 4px 0 rgba(45,35,66,0.4), inset 0 -3px 0 0 #cfd1e3;
    box-shadow: 0 7px 11px -3px rgba(45,35,66,0.2), 0 2px 4px 0 rgba(45,35,66,0.4), inset 0 -3px 0 0 #cfd1e3;
    float: right;
    border-radius: 100%;
    cursor: pointer;
    font-weight: bold;
    color: #5D6494;
    text-shadow: 0 1px 1px rgba(255,255,255,0.5);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    transition:0.8s;
    float: right;
    display: flex;
    font-size: 31px;
    left: 80px;
    justify-content: center;
    position:relative;
    align-items: center;
    top: 121px;
}

#nav-toggle:hover i
{
	transform:rotate(180deg);
	transition:0.8s;
}
/* #nav-toggle.active:after */
/* { */
		/* background: rgba(0,150,63,1); */
		/* transition:0.8s; */
/* } */
#nav-toggle.active:after
{
	background: rgba(0,150,63,1);
	transition: 0.8s;
	border-radius: 0;
	border-top-left-radius: 75px;
	border-bottom-left-radius: 75px;
	border-top-right-radius: 75px;
	transform: rotate(10deg);
}

#nav-toggle:after
{
	position:absolute;
	content:"";
	top:0;
	bottom:0;
	margin:auto;
	background: rgba(0,150,63,0.5);
	width: 100px;
	height: 100px;
	border-radius:50%;
	z-index: -1;
	transition:0.8s;
}


#nav-toggle span,
#nav-toggle span:before {
  cursor: pointer;
  border-radius: 1px;
  height: 2px;
  width: 25px;
  background: white;
  position: absolute;
  left: 7px;
  top: 50%;
  display: flex;
  content: '';
}

#nav-toggle span:before {
  height: 25px;
  width: 2px;
  top: -12px;
  left: 12px;
}

#nav-toggle span,
#nav-toggle span:before {
  transition: all 0.5s ease-in-out;
}

#nav-toggle.active span {
  transform: rotate(135deg);
}
#nav-toggle + ul{
  list-style: none;
  position: absolute;
  right: 0;
  color: white;
  float: left;
  transform: none;
  visibility: hidden;
  left: 145px;
  width: 500px;
  z-index: 2;
  opacity:0;
  transition:0.8s;
  /* box-shadow: 0px 0px 10px 0px #000; */
  padding: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  height: auto;
  display: flex;
  flex-direction: column;
  aspect-ratio: 1/1;
  justify-content: center;
  overflow: hidden;
  background: #00963f;
}

#nav-toggle.active + ul 
{
	visibility:visible;
	opacity:1;
	transition:0.8s;
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
    border-top-right-radius: 50%;
}
#nav-toggle + ul li
{
    float: left;
    display: block;
    width: calc(100% - 10px);
    /* background: #00963f; */
    position: relative;
    padding-left: 10px;
    padding-bottom: 19px;
    overflow: hidden;
    text-align: center;
}
#nav-toggle + ul li:first-child
{
	padding-top:10px;
}

#nav-toggle + ul li.currently a
{
	color:#000;
}



@keyframes logo-ani1{
  0%{
    transform: translate(0, -40px);
    opacity: 0;
  }
  100%{
    transform: translate(0, 0px);
    opacity: 1;
  }
}
@keyframes logo-ani2{
  0%{
    transform: translate(0, -40px);
    opacity: 0;
  }
  20%{
    transform: translate(0, -40px);
    opacity: 0;
  }
  100%{
    transform: translate(0, 0px);
    opacity: 1;
  }
}
@keyframes logo-ani3{
  0%{
    transform: translate(0, -40px);
    opacity: 0;
  }
  40%{
    transform: translate(0, -40px);
    opacity: 0;
  }
  100%{
    transform: translate(0, 0px);
    opacity: 1;
  }
}

.secondary ul li a 
{
	font-size: 2vw;
	color:white;
	font-family: 'Halvar Mittel Th';
	font-weight: 100;
}
.leistungen_holder .ipWidget-Text .ipsContainer
{
	display:flex;
	justify-content: flex-start;
}

.header_menu
{
    float: left;
    display: block;
    width: auto;
    position: relative;
    z-index: 0;

}
.header_menu .fsmenu--list
{
	float: right;
    display: block;
    height: auto;
    width: 100%;
    padding: 0;
}
.header_menu .fsmenu--list-element
{
	width: auto;
    float: left;
    display: inline-block;
}


.header_menu .fsmenu--list .fsmenu--list-element a span.page_title {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: uppercase;
    line-height: 1;
    height: 1em;
    display: inline-block;
    position: relative;
    z-index: 3;
    font-family: 'Halvar Mittel Th';
    color: #484646;
    padding: 0 20px;
}
.header_menu .fsmenu--list .fsmenu--list-element a:hover span.page_title {
	color:#00963f
}
.header_menu .fsmenu--link-img
{
	display:none !important;
}
.header_menu .fsmenu--list-element a .fsmenu--scrolling-text
{
	display:none !important;
}
/* media */
.contact_icons
{
	float: left;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
	margin-bottom:40px;
}
._icons
{
	    float: left;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
	margin-right: 40px
}
._icons i
{

    font-size: 48px;
	width:48px;
    color: #fff;
    margin-right: 20px;
}
._icons div
{
	    display: flex;
    flex-direction: column;
    color: #fff;
    line-height: 16px;
}
._icons h4
{
	margin: 0;
    font-size: 20px;
    font-family: 'Halvar Mittel Th';
    float: left;
    display: block;
    width: 100%;
    margin-bottom: 10px;
}
._icons span
{
	float: left;
    display: block;
    width: 100%;
    font-weight: 100;
    font-size: 16px;
}
.kontakt_right .contact_icons {
    float: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 0px;
    line-height: 16px;
}
.kontakt_right ._icons {
    float: left;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
   margin-right: 0px; 
    width: 100%;
    margin-bottom: 40px;
}
@media only screen and (max-width: 768px)
{
	.contact_icons {
    float: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: 40px;
    align-items: center;
}
._icons {
    float: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 0px;
	    margin-bottom: 20px;
}
._icons i {
    font-size: 48px;
    color: #fff;
    margin-right: 0px;
    margin-bottom: 20px;
}
._icons div {
    display: flex;
    flex-direction: column;
    color: #fff;
    line-height: 16px;
    align-items: center;
    justify-content: center;
    text-align: center;
}
	.header_menu
	{
		display:none;
	}
	.header {
    position: absolute;
    z-index: 4;
    width: calc(100% - 20px);
    float: left;
    display: flex;
    padding: 0 10px;
    top: 0px;
    height: 70px;
    align-items: center;
	}
	.hamburger
	{
		right:10px;
	}
	.front_page {
    width: calc(100% - 20px);
    height: calc(100vh - 80px);
    display: flex;
    float: left;
    align-content: center;
    justify-content: center;
    position: relative;
    align-items: center;
    overflow: hidden;
    z-index: 1;
    margin: 70px 10px 10px 10px;
    background: #fff;
	}
	.front_page video
	{
		width:auto;
		height:100vh;

	}
	.txt_holder {
		width: 100vw;
		height: auto;
		margin: auto;
		position: absolute;
		top: 0px;
		margin-top: -18px;
	}
	.rrethi:before {
		position: absolute;
		width: calc(100vw - 20px);
		height: auto;
		top: 0;
		content: "";
		aspect-ratio: 1/0.5;
		z-index: 0;
		border-radius: 0 0 50% 50%/0 0 100% 100%;
		border-top: 1px solid rgba(25,255,255,0);
		z-index: 0;
		box-shadow: 0px 10px 50px 10px rgb(0 0 0 / 10%);
	}
	.homi {
    width: auto;
    height: 100%;
    position: relative;
    float: left;
    display: block;
    margin: 0 10px;
    padding: 0;
    background: #e9e9e9;
	    padding-bottom: 200px;
	}
	.front_right {
    display: block;
    width: calc(100% - 20px);
    float: right;
    padding:10px;
    height: 100%;
	}
	.front_left {
    display: block;
    width: 100%;
    float: left;
    height: auto;
    position: relative;
    padding-bottom: 0;
	}
	.cont_left ._tabs-menu
	{
		display:block;
		position: relative;
		top: -50px;
		left: 0;
		width: 100%;
		margin: auto;
		float:left;
	}
	.review:nth-child(2)
	{
		margin-left:0;
	}
	.review:nth-child(3) 
	{
		margin-left: 0;
	}
	.contact_us
	{
		width: 80px;
    height: 80px;
    font-size: 40px;
	}
	.descript p
	{
		width:calc(100% - 40px)
	}
	.kontakt_right ._icons {
    float: left;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    margin-right: 0px;
    width: 100%;
    margin-bottom: 40px;
}
	.review:nth-child(2):before
	{
		left:0;
		display:none;
	}
	.review:nth-child(3):after
	{
		top:-75px;
		transform:rotate(0deg);
		right:0;
		z-index:0;
		height: calc(100% + -145px);
	}
	.stick_right {
	width: 40%;
    height: auto;
    position: absolute;
    float: right;
    display: flex;
    aspect-ratio: 1/1;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 50%;
    right: 30px;
    top: -30px;
	}
	.r_more
	{
		left:50px;
		bottom:50px;
		height:60px;
		width:60px;
		font-size:22px;
	}
	.cont_left dt a
	{
		height: 90px;
		width: 90px;
		margin-right:0!important;
	}
	.cont 
	{
    width: calc(100% - 20px);
    background: #fff;
    position: relative;
    float: left;
    display: block;
    padding: 0 10px 10px 10px;
	}
	.cont:before
	{
		margin:0 10px;
		width: calc(100% - 20px);
	}
	.cont_left ._tabs
	{
		margin-top:0;
	}
	.cont_left h2
	{
		padding-bottom: 0px;
		text-align:center;
		font-size:32px;
		letter-spacing:-3px;
	}
	.cont_left ._tab.current ._container
	{
		display:block;
	}
	.contstick::before
	{
		top:-1.6px;
		aspect-ratio: 1/0.2;
		
	}
	.contstick
	{
		margin: 0 10px;
		width:calc(100% - 20px);
		
	}
	.review:nth-child(2):after
	{
		bottom:0;
		left:0;
		display:none;
	}
	.reviews
	{
		margin:10px;
		width:calc(100% - 20px);
		height:auto;
		padding-top: 30px;
		margin-bottom: 0;
	}
	footer
	{
    width: calc(100% - 20px);
    height: 100vh;
    margin: 0 10px 10px 10px;
	overflow:hidden;
	}
	.reviews:before 
	{
    position: absolute;
    content: "";
    width: 100%;
    height: auto;
    background-image: url(img/lines2.svg);
    background-repeat: no-repeat;
    left: 0;
    top: auto;
    opacity: 0.1;
    background-position: top center;
    background-size: 100%;
    aspect-ratio: 1/0.5;
    bottom: 0;
 }
	.footer_holder:before {
    position: absolute;
    content: "";
    width: 100%;
    height: auto;
    background-image: url(img/lines2.svg);
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    background-size: 100%;
    background-position: top center;
    transform: rotatex(180deg);
    z-index: -1;
    aspect-ratio: 1/0.5;
    /* background-color: red; */
	}
	.company_data:before
	{
				position: absolute;
		content: "";
		width: 100%;
		height: auto;
		background-image: url(img/lines2.svg);
		background-repeat: no-repeat;
		left: 0;
		top: auto;
		opacity: 0.6;
		background-position: top center;
		background-size: 100%;
		aspect-ratio: 1/0.5;
		bottom: 0;
	}
	.author
	{
		margin-bottom: 10px;
		padding-top: 10px;
	}
	.footer_social
	{
		    margin-top: 10px;
	}
	.contact_down p
	{
		padding: 0 10px;
		width: calc(100% - 20px);
	}
	.footer_holder:after
	{
		
		width: calc(100% + -25px);
	}
	.footer_holder
	{
		background-size: 250px auto;
	}
	.review:nth-child(1), .review:nth-child(2)
	{
		margin-bottom: 60px;
	}
	.vintalight__photo::before
	{
		background-color:rgba(0, 0, 0, 0.0);
	}
	.go_down
	{
		bottom:10px;
	}
	a.c_more
	{
		margin-top:0;
		float:right;
		    right: calc(50% - 30px);
		position:relative;
	}
	.cont_left ._tabs .ipWidget-Image a
	{
		margin-top:20px;
	}
	.front_right h2
	{
		padding-bottom:0;
		text-align: center;
		font-size:32px;
		letter-spacing:-3px;
	}
	.fsmenu--list
	{
		width: calc(100% - 40px);
		display: flex;
		height: 100%;
		position: absolute;
		bottom: 0px;
		right: 0;
		padding: 20px;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-end;
	}	
	.fsmenu--list .fsmenu--list-element a span.page_title
	{
		font-size:3em;
	}
	.hamburger.is-active
	{
		position:fixed;
		top:20px;
		right:20px;
	}
	.fsmenu--link-img
	{
		display:none;
	}
	.uberuns 
	{
    width: calc(100% - 20px);
    height: auto;
    float: left;
    display: block;
    position: relative;
    background: #6b717b;
    margin: 70px 0 0;
    padding: 10px;
    align-items: center;
    overflow: hidden;
    flex-direction: row;
	}
	.uberuns_left h1
	{
		margin-top: 30px;
		margin-bottom: 0;
		font-size: 60px;
		line-height: 37px;
	}
	.uberuns_left p
	{
		width:100%;
		height:auto;
	}
	.uberuns_right
	{
		width: 50% ;
		padding:10px ;
		margin-top:20px;
		z-index:2;
	}
	.uberuns_left
	{
			width: 100%;
		height: auto;
		float: left;
		display: block;
		z-index:1;
	}
	.uberuns_center
	{
		width: 100%;
		float: left;
		display: flex;
		position: relative;
		height: auto;
		justify-content: center;
		z-index:1;
	}
	.uberuns_project
	{
		margin-bottom:10px;
		height:auto;
		padding-bottom: 0;
	}
	.company_data
	{
		width: calc(100% - 20px);
		    margin: 0 10px;
	}
	.uberuns_right p
	{
		font-size:16px;
	}
	.data_holder
	{
		width:70vw;
	}
	.swiper-container
	{
		padding-bottom:0!important;
	}
	.swiper-slide
	{
		width: 70.2%;
		aspect-ratio:1/1;
	}
	.swiper-pagination
	{
		height: auto;
    margin-top: 80px;
    margin-bottom: 23px;
	padding:0!important;
	}
	.data:hover
	{
		height: 45vw;
		width:30vw;
		transition:0.6s;	
	}
	.data h2
	{
		font-size:4vw;
	}
	.data p 
	{
		font-size: 3.2vw;
	}
	.uberuns:before 
	{
		position: absolute;
		height: auto;
		border-radius: 50%;
		left: -30vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 60vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
	}
	.uberuns:after 
	{
		position: absolute;
		height: auto;
		border-radius: 50%;
		left: -35vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 70vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
	}
	.leistungen
	{
		    width: calc(100% - 40px);
		margin: 70px 10px 10px;
		height: auto;
		padding:65px 10px 0px;
		display:block;
	}
	.swiper-pagination.swiper-pagination
	{
		bottom:0;
	}
	.leistungen_left h1
	{
		font-size:50px;
		margin-bottom:0;
		text-align:center;
		letter-spacing:0;
	}
	#nav-toggle
	{
		top: 105px;
		left: 47px;
	}
	#nav-toggle + ul
	{
		    right: auto;
		left: 99px;
		top: 168px;
		margin: 0;
	}
	#nav-toggle.active + ul {
    width: calc(100vw - 130px);
    /* left: 115px; */
    right: 0;
    aspect-ratio: 1/1;
	}
	.secondary ul li a
	{
		font-size:6vw;
	}
	#nav-toggle.active:after
	{
		width:65px;
		height:65px;
	}
	#nav-toggle:after
	{
		width:75px;
		height:75px;
	}
	.leistungen_left
	{
			width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
		z-index:1;
	}
	.leistungen_right
	{
		width: 100%;
		height:auto;
		z-index:1;
	}
	
	.leistungen_holder h2
	{
		padding-bottom:0;
		text-align:center;
		font-size:32px;
	}
	.leistungen_holder p
	{
		text-align:left!important;
		width:100%;
		float:left;
	}
	.leistungen_box 
	{
		float: right;
		position: relative;
		display: flex;
		height: auto;
		width: 100%;
		justify-content: center;
		padding-right: 0;
		padding-bottom: 0;
	}
	.referenzen_child .fsmenu--list .fsmenu--list-element a .page_title
	{
		font-size:20px;
	}
	.referenzen_child li a
	{
		padding-bottom:20px;
	}
	.referenzen
	{
		margin: 70px 10px 10px;
		width: calc(100% - 20px);
		height: auto;
	}
	.referenzen_child
	{
		position:relative;
		width:80%;
		border-top-right-radius:0px;
		border-bottom-right-radius: 50px;
		padding-bottom: 30px;
		padding-top: 40px;
		height:auto;
	}
	.referenzen_child .fsmenu--list
	{
		padding-left:15px;
	}
	.referenzen_holder ._item
	{
		margin-bottom:10px;
		padding:0;
	}
	.referenzen_holder ._item:nth-child(2n-1)
	{
		padding-right:5px;
	}
	.referenzen_holder ._item:nth-child(2n)
	{
		padding-left:5px;
	}
	.referenzen_holder ._item
	{
		filter:brightness(1);
	}
	.kontakt
	{
		margin: 70px 10px 10px;
		width: calc(100% - 40px);
		padding:10px;
	}
	.kontakt_right
	{
		width:100%;
		padding:0;
		margin:0;
		position:relative;
		bottom:0;
		left:0;
		margin-top: 50px;
		z-index:1;
	}
	.kontakt_left
	{
		width:100%;
		float:left;
		margin-top: 20px;
		margin-left:0;
		z-index:1;
	}
	.stick_right p
	{
		font-size: 7.4vw;
		line-height: calc(3.5vw + 18px);
	}
	.kontakt_left h3 
	{
		text-align: left;
	}
	.kontakt:before 
	{
	position: absolute;
		height: auto;
		border-radius: 50%;
		right: -30vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 60vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
		left:auto
	}
	.kontakt:after 
	{
		position: absolute;
		height: auto;
		border-radius: 50%;
		right: -35vw;
		bottom: 0;
		border: 1px solid rgba(255,255,255,0.2);
		content: "";
		transition: 0.6s;
		z-index: 0;
		width: 70vw;
		aspect-ratio: 1/1;
		top: 0;
		margin: auto;
		left:auto;
	}
	
	.uberuns_left p,.leistungen_holder p, .contact_down p, .kontakt_right p span, .kontakt_left p span, .contact_down span
	{
		font-family: 'Halvar Mittel xth';
		font-weight: 100;
	}
	.cont_left p, .stick_right p, .descript p
	{
		font-weight:600;
		font-family: 'Halvar Mittel xth';
		
	}
	.kontakt_right h2
	{
		font-size:30px;
		    text-align: center;
	}
	.kontakt_left h3, .kontakt_right h3
	{
		font-size:22px;
	}
	.rrethi_b
	{
		width:80vw;
		height:40vw;
	}
	.rrethi_b span:nth-child(1), .rrethi_b span:nth-child(2), .rrethi_b span:nth-child(3), .rrethi_b span:nth-child(4)
	{
		width:40vw;
		height:40vw;
	}
	.rrethi_b span:nth-child(3), .rrethi_b span:nth-child(4)
	{
		left: 40vw;
	}
	.rrethi:after
	{
		display:none;
	}
	.rrethi_b span svg text 
	{
		font-size: 6vw;
	}
	span a:after
	{
	transform:scale(1.5)
	}
	.homi a.c_more
	{
		margin-bottom:30px;
	}

	.cont_left ._tabs-menu > dt
	{
		transform:rotate(0deg);
		width: 50%;
		height:auto;
	}
	.cont_left dt:first-child a
	{
		margin-left:0;
	}
	.cont_left dt a.current
	{
		transform:scale(1);
	}

		.cont_left ._tabs-menu > dt
	{
		float: left;
		display: block;
		width: 50%;
		transform: rotate(20deg);
	}
	.cont_left ._tabs-menu > dt:nth-child(2n)
	{
		float:right;
		margin-right:0px!important;
		transform: rotate(-20deg);
	}
	.cont_left ._tabs-menu > dt a
	{
	float: left;
		display: block;
		width: 100%;
		height: auto;
		border-radius: 0;
		padding: 10px 0!important;
	}
	.cont_left ._tabs-menu > dt:nth-child(2n) a
	{
		border-top-left-radius:50px;
		border-bottom-right-radius:50px;
	}
	.cont_left ._tabs-menu > dt:nth-child(2n+1) a
	{
		border-top-right-radius:50px;
		border-bottom-left-radius:50px;
	}
	.referenzen_holder  .ipWidget-Gallery ._container
	 {
		margin: 0px;
	}
	.uberuns_project .swiper-container .ipsImage
	{
		background-size: auto 100%;
		background-repeat: no-repeat;
	}

	.referenzen_holder .ipWidget-Gallery ._item
	{
		width:50%;
	}
	.referenzen_holder
	{
		padding: 10px 10px 0px 10px;
		width: calc(100% - 20px);
	}
	.vintalight {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-content: center;
	}

}
@media (min-width:300px) and (max-width:480px)
{
	.rrethi_b span svg text {
    font-size: 7vw!important;
}
.stick_right {
    width: 50%;
    height: 180px;
    position: absolute;
    float: right;
    display: flex;
    aspect-ratio: 1/1;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 50%;
    right: 30px;
    top: -30px;
    height: auto;
    font-size: 16px;
}
.stick_right p {
font-size: 7.5vw;
    line-height: calc(3.5vw + 18px);
}.uberuns_right {
    width: 80%;
    padding: 10px;
    margin-top: 20px;
    z-index: 2;
}
}

@media (min-width:769px) and (max-width:1024px)
{
	.data_holder {
    height: auto;
    position: relative;
    display: block;
    float: left;
    width: 60%;
    aspect-ratio: 1/1;
	}
	.data:hover
{
	height: 75%;
	width:75%;
	transition:0.6s;	
}
.secondary ul li a {
    font-size: 5vw;

}
.rrethi_b span svg text {
    font-size: 6vw!important;
}
.front_page video
{
	width: 100%;
    height: auto;	
}
.vintalight__container:nth-child(1) {
    transform: translate(0px, 30px) rotate(-30deg);
    z-index: 0;
}
.vintalight__container:nth-child(4) {
    transform: translate(10px, -10px) rotate(10deg);
    z-index: 3;
}
.stick_right
{
	width: 35%;
    top: -30px;
    right: 30px;
}
.stick_right p 
{
	font-size: 6vw;
    line-height: calc(3.5vw + 18px);
}
.contstick::before
{
	width:100vw;
	top: calc(-1vw + 6px);
}
.r_more
{
	left:30px;
	bottom:30px;
	    width: 60px;
    height: 60px;

}
.r_more i
{
	font-size:22px;
}
.contact_us
{
	width:150px;
	height:150px;
}
.contact_us i 
{
	font-size:90px;
}
.footer_holder:before
{
		width: 100%;
	    background-size: 100% auto;
		aspect-ratio: 1/0.5;
		height:auto;
}
.reviews:before, .company_data:before
{
	height: auto;
	background-size: 100% auto;
	 bottom: 0;
	aspect-ratio: 1/0.5;
	top:auto;
}
.reviews
{
	height:100%;
}
.review:nth-child(2)
{
	    margin-left: 484px;
}
.review:nth-child(2):before
{
	left: -148px;
	width: 156px;
	bottom: 41px;
}
.review:nth-child(2):after
{
	    left: -152px;
}
.review:nth-child(1)
{
	top:30px;
}
.review:nth-child(1):after
{
	    height: calc(82% + 8px);
		    bottom: calc(-100% - -26px);
}
.vintalight__container:nth-child(1):hover
{
	    transform: scale(1.15) translate(-5px, 30px) rotate(0);
}
.vintalight__container:nth-child(2):hover {
    transform: scale(1.15) translate(2px, 20px) rotate(0);
}
.vintalight__container:nth-child(4):hover {
    transform: scale(1.15) translate(4px, -10px) rotate(0);
}
.uberuns
{
	height:auto;
	padding-bottom:0;
}
.uberuns_left p
{
	width:90%;
}
.uberuns
{
	display: flex;
	align-items: flex-end;
	    overflow: hidden;
}
.leistungen_right
{
	width:100%;
	margin-left:0;
	z-index:1;
}
.leistungen_right 
{
	background-size:auto 100%;
	background-repeat:no-repeat;
}
.leistungen_left
{
	width:100%;
	margin-right:0;
	z-index:1;
}
.leistungen
{
	display:block;
	height:auto;
}
.leistungen_left h1
{
	margin-bottom: 20px;
    text-align: center;
}
.kontakt_right {
    width: 100%;
    position: relative;
    display: block;
    float: left;
    padding-left: 0px;
    height: auto;
    align-items: flex-end;
    bottom: 0;
    left: 0;
    margin-right: 0;
}
.kontakt_left {
    width: 100%;
    height: auto;
    position: relative;
    display: block;
    padding-right: 0;
    float: right;
    margin-left: 0;
	    margin-bottom: 20px;
}
.kontakt
{
    display: flex;
	flex-direction: column;
	padding-bottom:30px;
}
.kontakt_left h3
{
	text-align:left;
}
.kontakt_left p 
{
	text-align:left;
}
.kontakt:after
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    right: -35vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 70vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
	left:auto;
}

.kontakt:before
{
    position: absolute;
    height: auto;
    border-radius: 50%;
    right: -30vw;
    bottom: 0;
    border: 1px solid rgba(255,255,255,0.2);
    content: "";
    transition: 0.6s;
    z-index: 0;
    width: 60vw;
    aspect-ratio: 1/1;
    top: 0;
    margin: auto;
	left:auto;
	
}
#nav-toggle.active + ul
{
	top: 354px;
}
}

@media (min-width:1025px) 
{
	/* .contstick::before */
	/* { */
		/* top: calc(-1vw + 12px); */
	/* } */
	.reviews
	{
		height:100%;
		padding-top:46px;
		padding-bottom:20px;
	}
	.reviews:before, .company_data:before
	{
		width:100%;
	height: auto;
    background-size: 100% auto;
    bottom: 0;
    aspect-ratio: 1/0.5;
    top: auto;
	}
	.footer_holder:before 
	{
    width: 100%;
    background-size: 100% auto;
    aspect-ratio: 1/0.5;
    height: auto;
	}
	.stick_right 
	{

    right: 30px;
    top: 30px;
	}
	.uberuns
	{
		    padding: 60px 60px 0;
	}
	#nav-toggle.active + ul
	{
		width: calc(30vw - 114px);
		left: 145px;
		top: 204px;
		right: auto;
		aspect-ratio: 1/01;
		bottom: auto;
	}
}
a
{
	text-decoration:none;
}