@charset "UTF-8";

:root {
    --farbe_creme: #F6F6F3;
    --farbe_salbei: #C7D2CA;
    --farbe_grafit: #565452;
    --font_1: 'Noway-Regular', Helvetica, Arial, sans-serif;
    --font_2: 'Noway-Medium', Helvetica, Arial, sans-serif;
}

/* @font-face, family and size */

@font-face {
  src: url("fonts/Noway-Regular.woff2") format("woff2"),
       url("fonts/Noway-Regular.woff") format("woff");
  font-family: "Noway-Regular";
    font-weight: 400;
}

.regular {
	font-family: "Noway-Regular", Arial, Helvetica, sans-serif;
    font-weight: 400;
}

@font-face {
  src: url("fonts/Noway-Medium.woff2") format("woff2"),
       url("fonts/Noway-Medium.woff") format("woff");
  font-family: "Noway-Medium";
    font-weight: 500;
}

.medium {
	font-family: "Noway-Regular", Arial, Helvetica, sans-serif;
    font-weight: 500;
}

body {
	font-family: var(--font_1);
	font-weight: 400;
	font-size: 1rem;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font_2);
	font-weight: 500;
}

button {
	font-family: var(--font_2);
	font-weight: 500;
	font-size: 1em;
}

.lowercase {
	text-transform: lowercase;
}

.uppercase {
	text-transform: uppercase;
}

/* Colors */

body {
	background: var(--farbe_creme);
	color: var(--farbe_grafit);
}

button {
	background: var(--farbe_salbei);
	color: #fff;
}

button:hover {
	background: var(--farbe_grafit);
	color: #fff;
}

a {
	color: var(--farbe_grafit);
}

a:focus, a:hover, a:active {
	color: var(--farbe_grafit);
}

.bg_salbei {
	background: var(--farbe_salbei);
	color: #fff;
}

.color_grafit, .color_grafit a, .color_grafit a:hover, .color_grafit a:active {
	color: var(--farbe_grafit);
}

/* Basics */

html {
	scroll-behavior: smooth;
}

body {
	height: 100%;
	margin: 0 auto;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: grayscale;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
    overflow-x: hidden;
    overflow-wrap: break-word;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
}

img {
	width: 100%;
}

:focus { 
	outline: none
}

.show_mobile {
	display: block;
}

.show_tablet {
	display: none;
}

.show_desk {
	display: none;
}

.show_mobile_2 {
	display: block;
}

.show_desk_2 {
	display: none;
}

.wrapper {
	width: calc(100% - 40px);
	max-width: 1180px;
	margin: 0 auto;
}

.wrapper_img {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}

.section_padding_1 {
	padding: 120px 0;
}

.no_pad_top {
	padding-top: 0 !important;
}

/* Links */

a {
	text-decoration: none;
	transition: all 250ms ease;
	cursor: pointer;
    outline: none;
}

a:focus, a:hover, a:active {
  	outline: none;
	transition: all 250ms ease;
}

.mutet_pic_text {
	font-size: 0.9rem;
	text-decoration: underline !important;
	margin: 40px 0;
}

/* Text and Headers */

.nohyph {
    -webkit-hyphens: none; 
    -ms-hyphens: none; 
    hyphens: none;
}

.spitzmarke {
	font-size: 0.9rem;
}

h1, .like_h1, h2, .like_h2 {
	font-size: 2em; 
  	margin: 1.8rem 0 3rem;
  	line-height: 2.4rem;
}

h3, .like_h3 {
	font-size: 1.17em;
  	margin: 1em 0;
}

h4, .like_h4 {
	font-size: 1em;
  	margin: 1.33em 0;
}

h5, .like_h5 {
	font-size: .83em;
	margin: 1.67em 0;
}

h6, .like_h6 {
	font-size: .67em; 
	margin: 2.33em 0;
}

.imp_dat h2, .imp_dat h3 {
	margin: 60px 0 20px;
}

p {
	font-size: 1em;
	line-height: 1.3rem;
}

.muted_text {
	font-size: 0.8em;
	opacity: 0.8;
}

li {
    list-style-type: none;
}

/* Positioning */

.align_left {
    text-align: left;
}

.align_right {
    text-align: right;
}

.align_center {
    text-align: center;
}

.align_justify {
    text-align: justify;
}

.clearer {
    clear: both;
}

.pos_rel {
	position: relative;
	height: 100%;
}

.no_marg {
	margin: 0 !important;
}

.marg_top_20 {
	margin-top: 20px;
}

.marg_top_50 {
	margin-top: 50px;
}

.marg_top_80 {
	margin-top: 80px;
}

/* Buttons */

button {
	min-width: 150px;
    border: 0px;
	padding: 15px 26px;
	margin: 5px 5px;
	transition: all 250ms ease;
	cursor: pointer;
}

button:hover {
	transition: all 250ms ease;
}

/* Navigation */

header {
	height: 150px;
	position: relative;
}

.logo {
	width: 265px;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.kontakt_header {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	text-align: right;
	display: none;
}

/* Accordion */

summary .like_h2 {
	padding: 10px 0 10px 0;
}

summary .like_h3 {
	padding: 40px 0;
}

details {
	position: relative;
	margin-bottom: 10px;
}

details summary::-webkit-details-marker {
	display:none;
}

summary {
	cursor: pointer;
	text-transform: uppercase;
	font-weight: 700;
}

details .trigger {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	z-index: 50;
}

details[open] .trigger {
	width: 0;
	height: 0;
}

details[open] .bg_salbei {
	color: var(--farbe_grafit) !important;
}

.pad_arc_header {
	padding: 25px 0;
}

.arc_inner {
	margin: 0;
	padding: 1px 0 30px;
}

.open_closer_bm {
	position: absolute;
	width: 50px;
	height: 50px;
	right: 0;
	top: 50%;
	transform: translate(0, -50%);
	z-index: 20;
}

.open_closer_bm::before {
	content: ' ';
	width: 10px;
	height: 2px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) rotate(0deg);
	animation: open-closer-1-close  500ms;
}

@keyframes open-closer-1-close {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(-180deg);
	}
}

.open_closer_bm::after {
	content: ' ';
	width: 10px;
	height: 2px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) rotate(90deg);
	animation: open-closer-2-close  500ms;
}

@keyframes open-closer-2-close {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(90deg);
	}
}

details[open] .open_closer_bm::before {
	transform: translate(-50%, -50%) rotate(0deg);
	animation: open-closer-1  500ms;
	background: var(--farbe_grafit);
}

@keyframes open-closer-1 {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(180deg);
	}
}

details[open] .open_closer_bm::after {
	transform: translate(-50%, -50%) rotate(0deg);
	animation: open-closer-2  500ms;
	background: var(--farbe_grafit);
}

@keyframes open-closer-2 {
	0% {
		transform: translate(-50%, -50%) rotate(90deg);
	}
	100% {
		transform: translate(-50%, -50%) rotate(0deg);
	}
}

details > summary {
  list-style: none;
}

details > summary::marker, /* Latest Chrome, Edge, Firefox */ 
details > summary::-webkit-details-marker /* Safari */ {
  display: none;
}

.arc_1 .open_closer_bm::before, .arc_1 .open_closer_bm::after {
	background: #fff;
}

.arc_2 .open_closer_bm::before, .arc_2 .open_closer_bm::after {
	background: #fff;
}

.arc_1 .like_h2, .arc_2 .like_h2 {
	max-width: 80% !important;
}

.font_size_1_2 {
    font-size: 1.2rem !important;
}

.modul_wrapper ul {
    padding: 0;
    margin: 0;
}

.arc_marg_left li {
    margin-bottom: 10px;
}

.arc_marg_left_2 {
    margin-left: 20px !important;
}

.arc_leistungen_inner {
    padding: 0 20px;
}

/* Content */

.img_fullwidth_start_1 {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.btn_start {
	margin-top: 60px;
	max-width: 170px;
}

.marg_top_mobile {
	margin-top: 60px;
}

.zweier_rechts ul {
	margin: 0;
	padding: 0;
}

.zweier_rechts li {
	margin-bottom: 15px;
}

.zweier_rechts_inner {
	margin-top: 60px;
}

.credit {
	padding: 20px 0;
	color: #fff;
	font-size: 0.8rem;
	line-height: 1.1rem;
}

@media (min-width: 550px) {

	.logo {
		width: 265px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
	}

	.kontakt_header {
		display: block;
	}

	.nohyph_desk {
	    -webkit-hyphens: none; 
	    -ms-hyphens: none; 
	    hyphens: none;
	}

	.con_vierer {  
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		gap: 0px 60px;
		grid-auto-flow: row;
		grid-template-areas:
		"vierer_1 vierer_2" "vierer_3 vierer_4";
	}

	.vierer_1 { grid-area: vierer_1; }

	.vierer_2 { grid-area: vierer_2; }

	.vierer_3 { grid-area: vierer_3; }

	.vierer_4 { grid-area: vierer_4; }
}

@media (min-width: 768px) {

	/* Basics */

	.show_mobile {
		display: none;
	}

	.show_tablet {
		display: block;
	}

	.show_desk {
		display: none;
	}

	/* Links */

	/* Text and Headers */

	/* Positioning */

	.align_left_desk {
		text-align: left;
	}

	.align_right_desk {
	    text-align: right;
	}

	.align_center_desk {
	    text-align: center;
	}

	.align_justify_desk {
	    text-align: justify;
	}

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

	/* Buttons */

	/* Navigation */

	/* Content */

	.img_fullwidth_start_1 {
	    position: relative;
	    width: 100%;
	    height: 500px;
	    overflow: hidden;
	}

	.img_fullwidth_start_1 img {
	    position: absolute;
	    top: 50%;
	    left: 50%;
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	    transform: translate(-50%, -50%);
	}

	.arc_marg_left_2 {
	    margin-left: 40px !important;
	}

	.arc_leistungen_inner {
	    padding: 0 40px;
	}

	.btn_start {
		max-width: revert;
	}

	.con_dreier {  
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-rows: 1fr;
		gap: 0px 60px;
		grid-auto-flow: row;
		grid-template-areas:
		"dreier_1 dreier_2 dreier_3";
	}

	.dreier_1 { grid-area: dreier_1; }

	.dreier_2 { grid-area: dreier_2; }

	.dreier_3 { grid-area: dreier_3; }


}

@media (min-width: 850px) {

	.section_padding_1 {
		padding: 170px 0;
	}

	.con_zweier {  
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		gap: 0px 60px;
		grid-auto-flow: row;
		grid-template-areas:
		"zweier_links zweier_rechts";
	}

	.con_zweier_team {  
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		gap: 0px 60px;
		grid-auto-flow: row;
		grid-template-areas:
		"zweier_links zweier_rechts";
	}

	.zweier_links { grid-area: zweier_links; }

	.zweier_rechts { grid-area: zweier_rechts; }

	.marg_top_mobile {
		margin-top: 0;
	}

	.zweier_rechts_inner {
		position: absolute;
		top: 50%;
		transform: translate(0, -50%);
		max-width: 360px;
		margin-top: 0;
	}
 
	.con_vierer {  
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-template-rows: 1fr;
		gap: 0px 60px;
		grid-auto-flow: row;
		grid-template-areas:
		"vierer_1 vierer_2 vierer_3 vierer_4";
	}

	.vierer_1 { grid-area: vierer_1; }

	.vierer_2 { grid-area: vierer_2; }

	.vierer_3 { grid-area: vierer_3; }

	.vierer_4 { grid-area: vierer_4; }

}

@media (min-width: 1180px) {

	/* Basics */

	.show_mobile {
		display: none;
	}

	.show_tablet {
		display: none;
	}

	.show_desk {
		display: block;
	}

	.show_mobile_2 {
		display: none;
	}

	.show_desk_2 {
		display: block;
	}

	/* Links */

	/* Text and Headers */

	/* Positioning */

	/* Buttons */

	/* Navigation */

	/* Content */

	.img_fullwidth_start_1 {
	    height: 650px;
	}


}

@media (min-width: 1300px) {


	.con_zweier_team {  
		gap: 0px 120px;
	}
}

/* Max-width */

.max_width_290{max-width:290px}
.max_width_295{max-width:295px}
.max_width_300{max-width:300px}
.max_width_305{max-width:305px}
.max_width_310{max-width:310px}
.max_width_315{max-width:315px}
.max_width_320{max-width:320px}
.max_width_325{max-width:325px}
.max_width_330{max-width:330px}
.max_width_335{max-width:335px}
.max_width_340{max-width:340px}
.max_width_345{max-width:345px}
.max_width_350{max-width:350px}
.max_width_355{max-width:355px}
.max_width_360{max-width:360px}
.max_width_365{max-width:365px}
.max_width_370{max-width:370px}
.max_width_375{max-width:375px}
.max_width_380{max-width:380px}
.max_width_385{max-width:385px}
.max_width_390{max-width:390px}
.max_width_395{max-width:395px}
.max_width_400{max-width:400px}
.max_width_405{max-width:405px}
.max_width_410{max-width:410px}
.max_width_415{max-width:415px}
.max_width_420{max-width:420px}
.max_width_425{max-width:425px}
.max_width_430{max-width:430px}
.max_width_435{max-width:435px}
.max_width_440{max-width:440px}
.max_width_445{max-width:445px}
.max_width_450{max-width:450px}
.max_width_455{max-width:455px}
.max_width_460{max-width:460px}
.max_width_465{max-width:465px}
.max_width_470{max-width:470px}
.max_width_475{max-width:475px}
.max_width_480{max-width:480px}
.max_width_485{max-width:485px}
.max_width_490{max-width:490px}
.max_width_495{max-width:495px}
.max_width_500{max-width:500px}
.max_width_505{max-width:505px}
.max_width_510{max-width:510px}
.max_width_515{max-width:515px}
.max_width_520{max-width:520px}
.max_width_525{max-width:525px}
.max_width_530{max-width:530px}
.max_width_535{max-width:535px}
.max_width_540{max-width:540px}
.max_width_545{max-width:545px}
.max_width_550{max-width:550px}
.max_width_555{max-width:555px}
.max_width_560{max-width:560px}
.max_width_565{max-width:565px}
.max_width_570{max-width:570px}
.max_width_575{max-width:575px}
.max_width_580{max-width:580px}
.max_width_585{max-width:585px}
.max_width_590{max-width:590px}
.max_width_595{max-width:595px}
.max_width_600{max-width:600px}
.max_width_605{max-width:605px}
.max_width_610{max-width:610px}
.max_width_615{max-width:615px}
.max_width_620{max-width:620px}
.max_width_625{max-width:625px}
.max_width_630{max-width:630px}
.max_width_635{max-width:635px}
.max_width_640{max-width:640px}
.max_width_645{max-width:645px}
.max_width_650{max-width:650px}
.max_width_655{max-width:655px}
.max_width_660{max-width:660px}
.max_width_665{max-width:665px}
.max_width_670{max-width:670px}
.max_width_675{max-width:675px}
.max_width_680{max-width:680px}
.max_width_685{max-width:685px}
.max_width_690{max-width:690px}
.max_width_695{max-width:695px}
.max_width_700{max-width:700px}
.max_width_705{max-width:705px}
.max_width_710{max-width:710px}
.max_width_715{max-width:715px}
.max_width_720{max-width:720px}
.max_width_725{max-width:725px}
.max_width_730{max-width:730px}
.max_width_735{max-width:735px}
.max_width_740{max-width:740px}
.max_width_745{max-width:745px}
.max_width_750{max-width:750px}
.max_width_755{max-width:755px}
.max_width_760{max-width:760px}
.max_width_765{max-width:765px}
.max_width_770{max-width:770px}
.max_width_775{max-width:775px}
.max_width_780{max-width:780px}
.max_width_785{max-width:785px}
.max_width_790{max-width:790px}
.max_width_795{max-width:795px}
.max_width_800{max-width:800px}