@font-face {
  font-family: 'Oswald';
  src: url(/files/assets/fonts/Oswald-VariableFont.ttf);
}


@font-face {
  font-family: "Roboto";
  src: url(/files/assets/fonts/Roboto-Light.ttf);
  font-weight: light;
}
@font-face {
  font-family: "Roboto";
  src: url(/files/assets/fonts/Roboto-Regular.ttf);
  font-weight: normal;
}
@font-face {
  font-family: "Roboto";
  src: url(/files/assets/fonts/Roboto-Bold.ttf);
  font-weight: bold;
}

:root {
    --acc1: #074A28;
    --acc2: #1D8000;
    --dark: #2A1D15;
    --transition: all 0.6s cubic-bezier(0.33, 1, 0.68, 1);
    --font-acc: 'Oswald';
    --font-secondary: "Roboto";
}
/* popup reassign colors */
:root{
	--cc-text: var(--dark);	
	--cc-btn-primary-bg: var(--acc1);
	--cc-btn-primary-hover-bg: var(--acc2);	
	--cc-toggle-bg-off: var(--acc2);
}
body {
    font-family: var(--font-secondary);
    font-weight: 400;
    background-color: white;
    color: var(--dark);
    max-width: 100vw;
    line-height: 1.6;
    font-size: 24px;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p {
    margin-bottom: 0;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-acc);
    font-weight: 700;
}

h1 {
    font-size: 3.5rem;
    color: var(--acc1);
    font-weight: 600;
}

h2 {
    font-size: 2.5rem;
    color: var(--acc1);
    font-weight: 600;
}

a {
    color: var(--acс1);
}

b, strong {
    color: var(--acc2);
}

figure {
    margin: 0;
}

.invisible {
    display: none;
}

*:focus {
    outline: none;
}

.section {
    padding-top: 150px;
    position: relative;
}

.first-screen__description a,
.about3 a,
#customForm,
.services__item-content a{
    position: relative;
    display: block;
    padding: 30px 80px 30px 50px;
    border-radius: 40px;
    background-color: var(--acc1);
    color: white;
    font-weight: 600;
    line-height: 0.9;
    max-width: fit-content;
    overflow: hidden;
    z-index:3;
}

.first-screen__description a:hover,
.about3 a:hover,
#customForm:hover,
.services__item-content a:hover{
	text-decoration:none;
}

.first-screen__description a:before,
.about3 a:before,
#customForm:before,
.services__item-content a:before{
    content: "";
    display:block;
    border-radius: 40px;
    background-color: var(--acc2);
    position: absolute;
    top: 0;
    bottom:0;
    left:-20px;
    width:20px;
    transition:var(--transition);
     z-index:-1;
     opacity:0;
}

.first-screen__description a:hover:before,
.about3 a:hover:before,
#customForm:hover:before,
.services__item-content a:hover:before{
    width:calc(100% + 20px);
    opacity:1;
}

.first-screen__description a:after,
.about3 a:after,
#customForm:after,
.services__item-content a:after{
    content: "";
    display: block;
    width: 36px;
    height: 30px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(/files/design/icon1_white.svg);
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translate3D(0,-50%,30px);
     z-index:2;
}

/*
   HEADER
*/

#header {
    position: relative;
    z-index: 99;
    height: 100px;
    width: 100%;
    margin-bottom: 50px;
}

#headerWrap {
    padding-left: 30px;
    padding-right: 30px;
    height: 100px;
    align-items: center;
    display: flex;
    justify-content: space-between;
    width: 100%;
}

#nav-wrap {
    display: none;
    margin-top: -100px;
    opacity: 0;
}

#nav-wrap a {
    font-weight: normal;
    font-size: 1rem;
    margin-right: 40px;
    color: var(--dark);
}

#nav-wrap a {
    color: var(--dark);
}

#nav-wrap.is-inview {
    transition: all 1.2s cubic-bezier(.215, .61, .355, 1);
    margin-top: 0;
    opacity: 1;
}

/*
   MENU
*/

.hamburger {
    width: 40px;
    height: 25px;
    padding: 0;
    transition: var(--transition);
}





.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    background-color: var(--acc1);
    width: 40px;
    height: 4px;
    border-radius: 5px;
    transition:var(--transition);
}

.hamburger-inner {
    width: 24px;
}


.hamburger-inner::after {
    width: 32px;
}

.hamburger.is-active .hamburger-inner {
    width: 32px;
}

#header.open .hamburger.is-active:hover{
	opacity:1;
}
#header.open .hamburger.is-active:hover .hamburger-inner,
#header.open .hamburger.is-active:hover .hamburger-inner::before,
#header.open .hamburger.is-active:hover .hamburger-inner::after{
	background-color:white;
}


.nav_wrap.open {
    width: 100%;
}

#prices_table {
    padding-left: 30px;
    padding-right: 30px;
}

.header-phone {
    display: block;
    z-index: 99999;
    position: absolute;
    top: 50%;
    right: 30px;
    margin-top: 0;
}

.header-phone a {
    color: var(--acc1);
    transition: var(--transition);
    font-family: var(--font-acc);
    font-weight: 600;
}
#header.open .header-phone a{
	color: var(--acc2);
}

#header.open .header-phone a:hover{
	color:white;
}

.header-phone a:hover {
    color: var(--acc2);
    text-decoration: none;
}

.menu-items-wrap {
    text-align: center;
    display: flex;
    flex-direction: column;
    
}


.hamburger.is-inview {
    margin-top: 0;
    opacity: 1;
}

.hamburger:focus {
    outline: none;
}

.hamburger-inner {
    margin-top: 2px;
}

.hamburger-inner::before {
    top: -8px;
}

.hamburger-inner::after {
    bottom: -8px;
}






.nav_wrap {
    display: flex;
    border-bottom: none;
    max-height: none;
    margin-bottom: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 100vh;
    width: 0;
    overflow: hidden;
    transition: 0.3s all;
    transition: all 1.2s cubic-bezier(.215, .61, .355, 1);
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0);
    z-index: 30;
}

.nav_wrap.open {
    width: 100%;
    background: var(--acc1);
    overflow: visible;
}

.mod_navigation {
    z-index: 102;
    width: 100%;
}

#headerWrap .mod_navigation {
    display: none;
}

.nav_wrap ul li {
    padding: 10px;
    font-size: 1rem;
}

.nav_wrap ul li a, .nav_wrap ul li a span {
    cursor: pointer;
}

.nav_wrap ul li:hover a, .nav_wrap ul li:hover a span {
    color: var(--acс1);
}

.mod_navigation ul {
    display: flex;
    width: 100%;
    justify-content: center;
    margin-bottom: 0;
}

.mod_navigation ul li a, .mod_navigation ul li strong {
    font-size: 1rem;
    color: white;
    font-weight: normal;
    padding-left: 30px;
    padding-right: 30px;
}

.mod_navigation ul li:first-child a, .mod_navigation ul li:first-child strong {
    padding-left: 0;
}

.nav_wrap .mod_navigation ul {
    flex-direction: column;
}

.mod_navigation ul li a, .mod_navigation ul li strong {
    color: var(--acс1);
}

.mod_navigation ul li a, .mod_navigation ul li strong {
    padding-left: 0;
    text-align: center;
    width: 100%;
    display: block;
    font-size: 1rem;
}

.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after {
    background-color: var(--acc2)
}

.nav_break {
    margin-right: auto;
}

#header_logo {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 15px);
    height: 100px;
}

#header_logo figure {
    display: flex;
    height: 100%;
    align-items: center;
}

#header_logo figure img {
    z-index: 99;
    position: relative;
    display: block;
    width: 175px;
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
}

/*
   FIRST SCREEN
*/

.first-screen__item {
    position: relative;
    width: 360px;
    height: 360px;
    background-color: var(--acc1);
    border-radius: 50px;
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 100px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    text-align: right;
    padding: 30px;
    color: white;
    font-family: var(--font-acc);
}

.first-screen__items .first-screen__item-wrap .first-screen__item:before {
    font-size: 15rem;
    position: absolute;
    bottom: 0;
    font-weight: 600;
    line-height: 0.9;
    z-index: 1;
    opacity: .1;
    right: -15px;
}

.first-screen__items .first-screen__item-wrap:nth-child(1) .first-screen__item:before {
    content: "1";
}

.first-screen__items .first-screen__item-wrap:nth-child(2) .first-screen__item:before {
    content: "2";
}

.first-screen__items .first-screen__item-wrap:nth-child(3) .first-screen__item:before {
    content: "3";
}

.first-screen__item figure {
    position: absolute;
    left: -175px;
    top: -60px;
}

.first-screen__items .first-screen__item-wrap:nth-child(2) .first-screen__item {
    transform: translateX(50px);
    margin-top: 50px;
}

.first-screen__items .first-screen__item-wrap:nth-child(3) .first-screen__item {
    transform: translate(170px, 50px);
}

.first-screen__description {
    padding-top: 75px;
}

.first-screen__description h1 {
    width: 90%;
    padding-bottom: 50px;
}

.first-screen__description a {
    margin-top: 50px;
}

/*
	SERVICES
*/

.services {
    display: flex;
    min-height: 100vh;
}

.services .row {
    width: 100%;
}

.services__links-wrap {
    display: flex;
}

.services__links {
    width: 100%;
    border-radius: 130px;
    background-color: var(--acc1);
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 200px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    padding: 100px 50px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    overflow: hidden;
    position: relative;
}
.services__links:after {
    content: "4";
    font-size: 60rem;
    position: absolute;
    bottom: 0;
    font-weight: 600;
    line-height: 0.6;
    z-index: 1;
    opacity: .1;
    right: 0;
    color: white;
    font-family: var(--font-acc);
}
.services__item {
    display: flex;
    flex-direction: column;
    color: white;
    position: relative;
    z-index: 2;
    transition:var(--transition);
}
.services__item-img{
	width:100%;
	box-shadow: rgb(7 74 40 / 80%) 0px 50px 100px -20px, rgb(0 0 0 / 90%) 0px 30px 60px -20px;
	transition:var(--transition);
}
.services__item:hover .services__item-img{
	transform: rotateY(-20deg);
	box-shadow: rgb(7 74 40 / 70%) 0px 50px 100px -20px, rgb(0 0 0 / 100%) 0px 30px 60px -20px;
}
.services__item-img img{
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.services__item-content{
	width:100%;
	padding-left:50px;
	    order: -1;
}
.services__item-content h3{
	padding-bottom: 25px;
    display: flex;
    flex-direction: row;
    align-items: center;
        cursor: pointer;
}

.services__item .service_btn::before{
	content:"";
	    width: 40px;
    height: 40px;
    background-image: url(/files/design/arrow_acc2.svg);
    background-size: 40px;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    display: flex;
    margin-right: 10px;
    transform: rotate(180deg);
    transition: .5s all;
        opacity: 1;
}

.services__item.open .service_btn::before{
	transform: rotate(270deg);
	    opacity: .75;
}

.services__item-content a{
	background-color:var(--acc2);
	margin-top:20px;
	    display: none;
}
.services__item-content a:before{
	background-color:var(--acc1);
}


.services__list {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.services__list ul {
    margin-top: 50px;
}

.services__list li {
    position: relative;
    padding-left: 60px;
    margin-bottom: 10px;
}

.services__list li:before {
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    width: 36px;
    height: 30px;
    background-image: url(/files/design/icon1_acc2.svg);
}

.services__item .services__item-img-list{
	position: relative;
    max-width: 100%;
    overflow: hidden;
    max-height: 0px;
    transition: .5s all;
}

.services__item.open .services__item-img-list{
	    max-height: 200vh;
}

.services__item-img-wrap {
    display: flex;
    flex-direction: column;
    padding: 0 30px 50px 30px;
}

.services__item-img-wrap p{
	    opacity: .5;
}

/*
	ABOUT
*/

.about {
    padding-top: 100px;
}

.about2 {
    padding-bottom: 100px;
}

.about-fill {
    background-image: url(/files/client-files/about-fill.jpg);
    background-size: cover;
    background-position: top center;
}

.about-content {
	margin-top: 150px;
	margin-bottom: 150px;
}
#about3 .about-content {
	background: var(--acc1);
	color: white;
	height: fit-content;
	padding: 5rem;
	border-radius: 2rem;
}

.about-content h2 {
    padding-bottom: 50px;
}

.about-img {
    display: flex;
    padding-right: 0;
    overflow: hidden;
    padding-left: 0;
    box-shadow: rgb(0 0 0 / 20%) 0px 50px 100px 0px, rgb(0 0 0 / 10%) 0px 30px 50px -30px;
}

.about-img.about-img-left {
    border-top-right-radius: 130px;
    border-bottom-right-radius: 130px;
}

.about-img.about-img-right {
    border-top-left-radius: 130px;
    border-bottom-left-radius: 130px;
}

.about-img:after {
    font-size: 50rem;
    position: absolute;
    bottom: 0;
    font-weight: 600;
    line-height: 0.6;
    z-index: 1;
    opacity: .1;
    right: 0;
    color: white;
}

.about1-img:after {
    content: "5";
}

.about2-img:after {
    content: "6";
    opacity: .3;
}

.about-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.about3{
	padding-top:100px;
	padding-bottom:100px;
}
.about3 h2,
.about3 p,
.about3 b,
.about3 strong{
	color:white;
}

.about3 a{
	margin-top:50px;
	background-color:var(--acc2);
	box-shadow: rgb(7 74 40 / 50%) 0px 50px 100px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
}
.about3 a:before{
	background-color:var(--acc1);
}

/*
	SLICK
*/

.about-slick {
	position:relative;
    width: 100%;
    overflow: hidden;
    border-radius: 130px;
    display: flex;
}

.about-slick:before {
    content: "";
    padding-top: 100%;
    float: left;
}

.slick-list {
    position: relative;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    display: flex;
}

.slick-track {
    display: flex;
}

.slick-slide {
    display: flex;
}

.slick-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-slick .slick-prev,
.about-slick .slick-next,
.services__item .slick-prev,
.services__item .slick-next{
    display: block;
    right: 115px;
    left: auto;
    bottom: 50px;
    z-index: 9999999;
    top: auto;
    width: 50px;
    height: 50px;
    background-image: url(/files/design/arrow_acc2.svg);
    background-size: 50px;
    background-position: center;
    background-repeat: no-repeat;

    border-radius: 50%;
    transform: rotate(0);
    box-shadow: rgb(60 84 141 / 25%) 0px 30px 50px -10px, rgb(32 49 88 / 50%) 0px 15px 30px -15px;
    transition: var(--transition);
}

.about-slick .slick-next,
.services__item .slick-next{
    right: 50px;
    transform: rotate(180deg);
}

.about-slick .slick-prev:before,
.about-slick .slick-next:before,
.services__item .slick-prev:before,
.services__item .slick-next:before{
    display: none;
}

.about-slick .slick-prev:hover,
.about-slick .slick-next:hover,
.services__item .slick-prev:hover,
.services__item .slick-next:hover{
    background-color: var(--acc1);
    background-image: url(/files/design/arrow_acc1.svg);
    background-size: 50px;
    background-position: center;
    background-repeat: no-repeat;
}

.about-slick:after {
    font-size: 50rem;
    position: absolute;
    bottom: 0;
    font-weight: 600;
    line-height: 0.7;
    z-index: 1;
    right: 0;
    color: white;
    content: "7";
    opacity: .3;
}

.slick-prev:focus, .slick-next:focus{
	background-image: url(/files/design/arrow_acc1.svg) !important;
	background-color: var(--acc1) !important;
}

/*
	TEAMS EXPERIENCE
*/
.team.experience{
	padding-top:100px;
	padding-bottom:150px;
}
.team-title{
	text-align:center;
	padding-bottom:100px;
}
.team-title h2{
	padding-bottom:20px;
}
.experience-item{
	border-radius:30px;
	padding:30px;
	background-color:var(--acc2);
	height:250px;
	margin-bottom:30px;
	color:white;
}
.experience-item h3{
	font-size:4rem;
	margin-bottom:20px;
}
.experience-item p{
	line-height: 1.3;
}
.team-item {
    border-radius: 30px;
    padding: 30px;
    background-color: var(--acc1);
    height: 250px;
    color: white;
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 100px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    margin-bottom: 90px;
}
.team-item h3{
	font-size:1.5rem;
	margin-bottom:20px;
}
.team-item p{
	line-height: 1.3;
}
.team-item__img {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 100px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    overflow: hidden;
    position: absolute;
    bottom: -60px;
    right: 60px;
}

/*
	REVIEWS
*/
.reviews{
	padding-top:100px;
	padding-bottom:0;
}
.reviews>.row{
	align-items: center;
}
.reviews-title-short{
	text-align: center;
    padding-bottom: 100px;
}
.reviews-slick{
	position: relative;
}
.reviews-title {
    flex-direction: column;
    align-items: center;
    display: flex;
    opacity:0;
    transition:var(--transition);
}
.reviews-title.show{
	opacity:1;
}
.reviews-title figure{
	order:1;
}
.reviews-title h2{
	order:2;
	font-size:6rem;
	color:var(--acc2);
	padding-top:15px;
	padding-bottom:15px;
}
.reviews-title h3 {
	order:3;
	font-weight:600;
	font-size:2rem;
}
.review-item{
	flex-direction: column;
	padding-left:50px;
	padding-right:50px;
}
.review-item__img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    box-shadow: rgb(7 74 40 / 50%) 0px 20px 40px -10px, rgb(0 0 0 / 40%) 0px 30px 30px -30px;
    overflow: hidden;
}
.review-item__title {
    display: flex;
    width: 100%;
    align-items: center;
}
.review-item__title-content{
	padding-left:30px;
}
.review-item__title-content h3{
	font-size:2rem;
	color:var(--acc1);
	padding-bottom:5px;
}
.review-item__stars{
	display: flex;
}
.review-item__stars img{
	width:1.5rem;
	margin-right:5px;
}
.review-item__description{
	padding-top:50px;
}
.reviews-slick .slick-prev, .reviews-slick .slick-next {
    width: 50px;
    height: 50px;
    background-image: url(/files/design/arrow_acc2.svg);
    z-index: 999;
    border-radius: 50%;
    overflow: hidden;
}
.reviews-slick .slick-prev:hover,
.reviews-slick .slick-prev:active,
.reviews-slick .slick-prev:focus,
.reviews-slick .slick-next:hover,
.reviews-slick .slick-next:active,
.reviews-slick .slick-next:focus{
	background-image:url(/files/design/arrow_acc1.svg);
}
.reviews-slick .slick-prev:before,
.reviews-slick .slick-next:before{
	display:none;
}
.reviews-slick .slick-next {
    transform: translate(0, -50%) rotate(
180deg
);
}


/*
	CONTACT
*/

.contact{
	padding-top:100px;
}
.homepage .contact{
	padding-top:200px;
}

.contact>.row{
	align-items: center;
}
.anfrage {
    display: block;
    width: 100%;
    border-radius: 130px;
    background-color: var(--acc1);
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 200px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    color: white;
    padding: 100px;
    overflow: hidden;
    position: relative;
}
.anfrage:before{
	font-size: 60rem;
    position: absolute;
    bottom: 0;
    font-weight: 600;
    line-height: 0.7;
    z-index: 1;
    right: -5rem;
    color: white;
    content: "8";
    opacity: .1;
}
.anfrage h2{
	color:white;
	margin-bottom:30px;
}
.anfrage label {
    font-size: 1rem;
}
.anfrage input, .anfrage select, .anfrage textarea {
    display: block;
    height: 55px;
    border-radius: 20px;
    background-color: transparent;
    font-family: var(--font-acc);
    font-size: 1.3rem;
    margin-bottom: 20px;
    color: white;
    padding-left: 30px;
    padding-right: 30px;
    transition: var(--transition);
    border: 2px solid white;
    width: 70%;
    transition:var(--transition);
}
.anfrage input::placeholder, .anfrage select::placeholder, .anfrage textarea::placeholder {
    color:rgba(255 255 255 / .7);
}

.anfrage input:hover, .anfrage select:hover, .anfrage textarea:hover{
	border: 2px solid var(--acc2);
}

.anfrage input:focus, .anfrage select:focus, .anfrage textarea:focus{
	background-color:var(--acc2);
	border: 2px solid var(--acc2);
}

.anfrage textarea{
	height:170px;
}
#customForm{
	background-color:var(--acc2);
	font-size: 1rem;
	margin-left: -15px;
	cursor:pointer;
}
#customForm:before{
	background-color:var(--acc1);
}
.contact__info h2{
	margin-bottom:50px;
}
.contact__info a{
	color:var(--acc1);
}
.contact__info a:hover{
	color:var(--acc2);
}

/*
	MAP
*/
#map {
    width: 100%;
    height: 75vh;
    border-top-left-radius: 130px;
    border-top-right-radius: 130px;
    margin-top: 150px;
}


/*
	FOOTER POPUPS
*/

#footer{
	position:relative;
	overflow:hidden;
}
.easyloop-wrap {
    width: 250px;
    height: 100px;
    position: absolute;
    bottom: 0;
    z-index: 999999999999999999999999999999999999999999;
    left: 50%;
    border-radius: 50px;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translate(-50%, -30px);
    box-shadow: rgb(7 74 40 / 50%) 0px 50px 100px -20px, rgb(0 0 0 / 40%) 0px 30px 60px -30px;
    overflow:hidden;
}
.easyloop-wrap:before {
    content: "";
    display: block;
    border-radius: 40px;
    background-color: var(--acc2);
    position: absolute;
    bottom: -20px;
    right: 0;
    left: 0;
    height: 20px;
    transition: var(--transition);
    z-index: -1;
    opacity: 0;
}
.easyloop-wrap:hover:before{
	height: calc(100% + 20px);
    opacity: 1;
}


.imprint-btn, .datepr-btn, .agb-btn {
    cursor: pointer;
}

.imprint, .datepr, .agb{
    position: fixed;
    top: 150%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 6666;
    background-color: var(--acc2);
    width: 70vw;
    height: 70vh;
    padding: 50px 100px;
    transition: .5s cubic-bezier(0.68, -0.6, 0.32, 1.6);
    box-shadow: 0px 0px 60px 10px rgb(0 0 0 / 10%);
    -webkit-overflow-scrolling: touch;
    overflow-y: scroll;
    opacity: 0;
    pointer-events: none;
    color: #fff;
    border-radius: 40px;
}

.imprint::-webkit-scrollbar {
    width: 0px;
}

.datepr::-webkit-scrollbar {
    width: 0px;
}

.imprint::-webkit-scrollbar {
    width: 0px;
}

.imprint strong, .datepr strong, .agb strong {
    color: #a50021;
}

.imprint.open, .datepr.open, .agb.open {
    top: 50%;
    opacity: 1;
    pointer-events: all;
}

.imprint h1, .datepr h1, .agb h1 {
    margin-bottom: 25px;
    color: #fff;
}

.imprint h2, .datepr h2, .agb h2 {
    margin: 25px 0;
    color: #fff;
}

.imprint-bg {
    position: fixed;
    z-index: 6665;
    background-color: #f0f0f0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: .5s all;
}

.imprint-bg.open {
    opacity: .5;
    pointer-events: all;
}

.imprint-close, .datepr-close, .agb-close {
    position: sticky;
    float: right;
    bottom: 50vh;
    width: 40px;
    height: 40px;
    transition: .5s cubic-bezier(0.68, -0.6, 0.32, 1.6);
    cursor: pointer;
    opacity: .8;
    transform: scale(1)translate(60px);
    z-index: 3;
}


.imprint-close:hover, .datepr-close:hover, .agb-close:hover {
    transform: scale(1.1)translate(60px);
    opacity: 1;
}

.imprint-close::after, .datepr-close::after, .agb-close::after {
    content: "";
    width: 100%;
    height: 3px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)rotate( -45deg);
    background-color: #fff;
}

.imprint-close::before, .datepr-close::before, .agb-close::before {
    content: "";
    width: 100%;
    height: 3px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)rotate(45deg);
    background-color: #fff;
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1470px;
        padding-left: 0;
        padding-right: 0;
    }
    .menu-items-wrap {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        padding-left:150px;
        padding-right:150px;
    }
    .menu-items {
        width: 23%;
        overflow: hidden;
        background-color: var(--acc2);
        margin: 1%;
        display: flex;
        align-items: center;
        text-align: center;
        justify-content: center;
        border-radius: 30px;
    }
    .menu-items:hover {
        background-color: var(--acc2-dark);
    }
    .menu-items-wrap .menu-items {
        transition: .3s all;
    }
    .menu-items-wrap .menu-items:hover {
        color: var(--acc1);
        text-decoration: none;
    }
    .nav_wrap .menu-items-wrap .menu-items {
        opacity: 0;
    }
    .nav_wrap.open .menu-items-wrap .menu-items .menu-items_name {
    	color: #fff;
    	/*background-color: var(--acc1);*/
    }
    .nav_wrap.open .menu-items-wrap .menu-items {
    	position:relative;
        opacity: 1;
        color: white;
        background-size:cover;
        transition:var(--transition);
        background-color:var(--acc1);
        z-index:1;
        cursor: pointer;
    }
    .nav_wrap.open .menu-items-wrap .menu-items:after{
    	content:"";
    	position:absolute;
    	top:0;
    	right:0;
    	bottom:0;
    	left:0;
    	opacity:1;
    	background-color:var(--acc2);
    	transition:var(--transition);
    	z-index: -1;
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(1){
    	background-image:url(/files/client-files/service1.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(2){
    	background-image:url(/files/client-files/service2.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(3){
    	background-image:url(/files/client-files/about1.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(4){
    	background-image:url(/files/client-files/about2.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(5){
    	background-image:url(/files/client-files/about3.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(6){
    	background-image:url(/files/client-files/service1.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:nth-child(7){
    	background-image:url(/files/client-files/service2.png);
    }
    .nav_wrap.open .menu-items-wrap .menu-items:hover:after{
    	opacity:.5;
    }
    .nav_wrap.open .menu-items-wrap .menu-items:hover{
    	box-shadow: rgb(7 74 40 / 80%) 0px 50px 100px -20px, rgb(0 0 0 / 90%) 0px 30px 60px -20px;
    }
    
    .menu-items:before {
        content: "";
        padding-top: 100%;
        float: left;
    }
}

@media (max-width:1600px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1470px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .first-screen__item{
    	width: 300px;
    	height: 300px;
    }
    .first-screen__items .first-screen__item-wrap:nth-child(2) .first-screen__item {
    	transform: translateX(0px);
	}
	.first-screen__items .first-screen__item-wrap:nth-child(3) .first-screen__item {
    	transform: translate(150px, 20px);
	}
	.first-screen__item figure {
    	left: -90px;
    	top: -60px;
    	max-width: 350px;
	}
	.services__links{
		padding: 50px;
	}
	.about-slick {
    	height: 100%;
	}
	
	.services__links,
	.about-slick,
	.anfrage{
    	border-radius: 100px;
	}
	.about-img.about-img-right {
    	border-top-left-radius: 100px;
    	border-bottom-left-radius: 100px;
	}
	.about-img.about-img-left {
    	border-top-right-radius: 100px;
    	border-bottom-right-radius: 100px;
	}
	#map {
    	border-top-left-radius: 100px;
    	border-top-right-radius: 100px;
	}
    
}

@media (max-width:1300px) {
	body{
		font-size: 20px;
	}
	#header{
		margin-bottom: 30px;
	}
	.first-screen__description a, .about3 a, #customForm, .services__item-content a{
		padding: 25px 75px 25px 30px;
	}
	.first-screen__description {
    	padding-top: 50px;
	}
	.first-screen__item {
    	width: 275px;
    	height: 275px;
	}
	.first-screen__item figure {
    	left: -90px;
    	top: -60px;
    	max-width: 320px;
	}
	.services__links {
    	padding: 50px 30px;
	}
	.services__item-content{
		padding-left: 30px;
	}
	.about-content {
    	padding-top: 100px;
    	padding-bottom: 100px;
	}
	.team.experience{
		padding-bottom: 0;
	}
	.team-item{
		height: 230px;
	}
	.team-item__img{
		width: 140px;
    	height: 140px;
    	bottom: -50px;
    	right: 30px;
	}
	.contact{
		padding-top:100px;
	}
	.reviews-slick .slick-prev {
    	left: -30px;
	}
	.reviews-slick .slick-next {
    	right: 0;
	}
	.anfrage{
		padding: 50px 30px;
	}
	.experience-item{
		height: 200px;
	}
}

@media (max-width:1200px) {
	body {
    	font-size: 18px;
	}
	.menu-items-wrap .menu-items{
		color:white;
	}
	.first-screen__items .first-screen__item-wrap:nth-child(2) .first-screen__item{
		margin-left: auto;
		margin-right: auto;
		margin-top: 15px;
	}
	.first-screen__items .first-screen__item-wrap:nth-child(3) .first-screen__item {
    	transform: none;
    	margin-left: auto;
    	margin-top: 15px;
	}
	.first-screen__description a, .about3 a, #customForm, .services__item-content a {
    	max-width: 300px;
	}
	.about-content {
    	padding-top: 75px;
    	padding-bottom: 75px;
	}
	.team-item,
	.experience-item{
		padding: 30px 15px;
	}
	.team-item__img{
		right:15px;
		width: 120px;
    	height: 120px;
	}
	.reviews-title-short{
		padding-bottom: 50px;
	}
	
}

@media (max-width:991px) {
	.first-screen{
		padding-bottom:50px;
	}
	.first-screen>.row{
		align-items:center;
	}
	.services__item{
		margin-bottom:30px;
	}
	.services__list{
		padding-top:100px;
	}
	.services__links:after{
		font-size: 40rem;
	}
	.about {
    	padding-top: 0px; 
	}
	.about .about-img{
		order:1;
	}
	.about .about-content{
		order:2;
	}
	.about-img.about-img-right{
		margin-left: 15px;
	}
	.about-img.about-img-left{
		margin-left: -15px;
	}
	.about-img:after {
    	font-size: 40rem;
	}
	.about-slick-wrap{
		padding-top:100px;
	}
	.team-item {
    	height: 200px;
	}
	.reviews-title{
		margin-left: auto;
    	margin-right: auto;
	}
	.reviews-slick .slick-prev {
    	left: 0;
	}
	.review-item__title{
		justify-content: center;
    	margin-top: 50px;
	}
	.anfrage h2 {
    	text-align:center;
	}
	.anfrage .widget {
    	display: flex;
    	flex-direction: column;
    	align-items: center;
	}
	#customForm{
		margin-left: auto;
    	margin-right: auto;
	}
	.contact__info{
		    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 100px;
    margin-bottom: 100px;
    text-align: center;
	}
}

@media (max-width:767px) {
	
	.services__item{
		    margin-bottom: 0px;
	}
	
	
	h1{
		font-size: 2.5rem;
	}
	.header-phone{
		display:none;
	}
	#header_logo{
		left: auto;
    	right: 0;
    	transform: translate(-15px, 0);
	}
	.hamburger{
		position: absolute;
    	left: 15px;
	}
	.first-screen__description{
		padding-bottom:50px;
	}
	.first-screen__items{
		padding-left:30px;
		padding-right:30px;
	}
	.services{
		justify-content: center;
	}
	.services__item{
		flex-direction: column;
	}
	.services__item-content {
    	padding-left: 0;
    	padding-top: 15px;
	}
	.services__links, .about-slick, .anfrage {
    	border-radius: 50px;
	}
	.services__item .slick-prev,
	.services__item .slick-next{
		bottom: 50px;
	}
	
	.services__item .slick-prev{
		right: 75px;
	}
	
	.services__item .slick-next{
		    right: 10px;
	}
	
	.about-img:after {
    	font-size: 20rem;
	}
	.about3{
		padding-bottom:0;
	}
	.about-slick:after {
    	font-size: 20rem;
	}
	.about-slick .slick-prev, .about-slick .slick-next{
		bottom:30px;
	}
	.team-item{
		margin-bottom:60px;
	}
	.team-item__img{
		z-index: 99999;
	}
	.reviews-title figure{
		max-width:200px;
	}
	.reviews-slick .slick-prev {
    	left: -15px;
	}
	.reviews-slick .slick-next {
    	right: -15px;
	}
	.review-item__title{
		flex-direction: column;
	}
	.review-item__title-content{
		display: flex;
    	flex-direction: column;
    	align-items: center;
	}
	.review-item__description{
		text-align:center;
	}
	.anfrage:before {
    	font-size: 40rem;
	}
	.anfrage input, .anfrage select, .anfrage textarea{
		width:100%;
	}
	.contact__info{
		margin-bottom:0;
	}
	map {
    	border-top-left-radius: 30px;
    	border-top-right-radius: 30px;
	}
	
	
	
    .imprint-close::before, .datepr-close::before, .agb-close::before, .imprint-close::after, .datepr-close::after, .agb-close::after {
        height: 2px;
    }
    .imprint-close, .datepr-close, .agb-close {
        bottom: 75vh;
        width: 30px;
        height: 30px;
        transform: scale(1)translate(50px);
    }
    .imprint-close:hover, .datepr-close:hover, .agb-close:hover {
        transform: scale(1)translate(50px);
    }
    .imprint h1, .datepr h1, .agb h1 {
        margin-bottom: 15px;
        font-size: 1.5rem;
        font-weight: 600;
        text-align: left !important;
    }
    .imprint h2, .datepr h2, .agb h2 {
        margin: 10px 0;
        font-size: 1.25rem;
        text-align: left !important;
    }
    .imprint p, .datepr p, .agb p {
        font-size: 1rem;
        text-align: left !important;
    }
    .imprint div, .datepr div, .agb div {
        text-align: left !important;
    }
    .imprint, .datepr, .agb {
        width: 95vw;
        overflow-x: hidden;
        padding: 20px;
        height: 90vh;
        padding-right: 60px;
    }
    .nav_wrap.open {
        width: 100%;
    }
    .hamburger {
        left: 15px;
    }
}

@media (max-width:576px) {}