/* CSS Document */


/* ========== Thank you for looking at this code ========== */
/* ========== WARNUNG! COPYRIGHT BY haller.id | SWITZERLAND ========== */

:root {

	
	--oneColor: #EBE3DD;
	--twoColor:#463630;
	--whiteColor: #E7D1C0;/*#C5B69E;*/
	
	--threeColor:#B38474;
	--inputColor:#728798;
	--buttonColor:#00996D;
	--hover1Color:#61B995;
	--successColor: #28a745;
    --infoColor: #17a2b8;
    --warningColor: #ffc107;
	--dangerColor: #dc3545;
    --lightColor: #f8f9fa;
    --darkColor: #343a40;
	--grayColor: #6c757d;
	
	--black: #000000;
    --blue: #007bff;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #dc3545;
    --orange: #fd7e14;
    --yellow: #ffc107;
    --green: #28a745;
    --teal: #20c997;
    --cyan: #17a2b8;
    
    --font-family-sans-serif: -apple-system,BlinkMacSystemFont, "Helvetica","Verdana","Segoe UI","Roboto","Helvetica Neue","Arial","Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --font-family-monospace: "Helvetica", "Verdana","SFMono-Regular","Menlo","Monaco","Consolas","Liberation Mono","Courier New",monospace;

	--p: 16px;
	--psmall: 14px;
	--h1:35px;
	--h1small:26px;
	--h2:26px;
    --h2small:23.6px;
    --h3: 30px;
    --h3small: 25px;
	--h4:26px;
	--h4small:16px;
  	--h5: 26px;
    --h5small: 14px;
	--h6:26px;
	--h6small: 14px;
		
    --oneFont: 'web_font_regular';   
	--twoFont: 'web_font_regular_bold'; 

	--ButtonPadding:0.3rem 2rem;
	--ButtonMargin:0.2rem 0.8rem 0.8rem 0;
	--ButtonBorderRadius:5px;	
	
	--BoxWidth:25%;
	--BoxWidth01:345px;
	--BoxWidthDesktop50:50%;
	--BoxWidthDesktop33:33.333333%;
	--BoxRadius:4px;
	--BoxWidthText:400px;
	--BoxWidthTextXL:80%;	
	--randAbstand1:1rem;
		
	--bewegung:all 0.3s ease-in-out;
	--bewegung6:all 0.4s ease-in-out;
	
	--WxDisplayWidth: 1300px;
	--WxDisplayWidthXL: 2000px;
}
	@font-face {
		font-family:'MYROGE_font_h1';
		
		src:url("../assets/MYROGE-Regular.otf");
	}
	@font-face {
		font-family:'Adomania_font_h2';
		src:url("../assets/Avigea.otf");
		/*font-weight: bolder;*/
	}
	@font-face {
		font-family:'Avigea_font_hx';
		src:url("../assets/Avigea.otf");
		/*font-weight: bolder;*/
	}

	@font-face {
		font-family:'madiosa_font_hx';
		src:url("../assets/madiosa.otf");
		/*font-weight: bolder;*/
	}
/* Hiermit können Safari >=1.1, Opera >=9.5, IE9 was anfangen*/
::selection {
    background:var(--twoColor);
    /*color: #336699;*/
	color:var(--oneColor);
}
/* und hiermit der Firefox >=1 */
::-moz-selection {
    background:var(--twoColor);
    /*color: #336699;*/
	color:var(--oneColor);
}


/* ========== ========== DESIGN BODY - HEADQUARTER ========== ========== */
* {
    padding: 0;
    margin: 0;
	font-family:var(--font-family-sans-serif);
    color: var(--whiteColor);
    font: var(--p);
    box-sizing: border-box;
}
html {
	font-size: var(--p);
	margin:0;	
	padding:0;
}
body {
	font-family:sans-serif;
	text-decoration:none;
	margin:0rem 0 0 0 ;
	padding:0;
}
header {
	position: relative;
	width: 100%;
}
main {
	min-height: 800px; 
	/*max-width:   var(--WxDisplayWidth);
	margin: 0 auto;*/
	overflow: hidden;
}
footer {
	position: absolute; 		
	width:  100%;
}
p {
	font-size: var(--p);
	color: var(--darkColor);
	line-height: 1.3;
	font-family:'ffe', Arial, "sans-serif";
}
h1 {
	font-size:var(--h1);
	color:var(--twoColor);
	letter-spacing: 2px;
	font-weight:100;
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
}
h2 {
	font-size:var(--h1);
	color: var(--darkColor);
	letter-spacing: 2px;
	/*text-transform: uppercase;
	font-weight: bold;*/
   	font-family:'Adomania_font_h2', Arial, "sans-serif";
}
h3 {
	font-size:var(--h1);
	max-width: var(--BoxWidthTextXL);
	padding: 0.8rem 0 1rem 0;
	color: var(--oneColor);
	text-align: start;
	font-family:'Avigea_font_hx', Arial, "sans-serif";
}
h4 {
	font-size:var(--h4);
	color: var(--darkColor);
	/*text-align:center;*/
    font-weight: bold;
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
}
h5 {
	letter-spacing: 2px;
	font-size:var(--h5);
	color:var(--twoColor);
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
    /*font-weight: bold;*/
}
h6 {
	font-size:var(--h6);
	color: var(--darkColor);
	/*text-align:center;*/
    font-weight: bold;
	font-family:'madiosa_font_hx', Arial, "sans-serif";
}
a {
	color: var(--darkColor);
	font-size: var(--p);
	text-decoration:none; 
	cursor: pointer;
	letter-spacing: 0.5px;
	font-family:'Helvetica_font_h1', Arial, "sans-serif";
}
li {
	font-size:var(--p);
	list-style:none;
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
	font-weight: bold;
}
.hoverbox:hover{
    box-shadow: rgba(0, 0, 0, 0.54) 0px 3px 8px;
	transition: var(--bewegung6);
}
/* Die Klasse für den Scroll-Effekt */
.scroll_effekt {
  opacity: 0; /* Startet unsichtbar */
  transform: translateY(20px); /* Verschiebt das Element nach unten */
  transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out; /* Fügt eine Übergangsanimation hinzu */
}
.scroll_effekt.active {
  opacity: 1; /* Macht das Element sichtbar */
  transform: translateX(0); /* Setzt die Verschiebung zurück */
}
.titel_01{
    font-weight: bold;
	font-size:var(--h2small);
	text-transform: uppercase;
	text-align:left;
	padding: 0 0 0.5rem 0;
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
	letter-spacing: 5px;
}
.titel_mini_01{
	font-size:var(--p);
	text-transform: uppercase;
	text-align:left;
	padding: 0 0 0.5rem 0;
}
.titel_mini_01_bg1{
	font-size: var(--p);
    text-transform: uppercase;
    padding: 0.5rem;
    display: inline-block;
    color: var(--oneColor);
    background-color: var(--threeColor);
    width: fit-content; /* Hintergrund passt sich an den Text an */
    white-space: nowrap; /* Verhindert, dass der Text umbricht */
}
.titel_mini_01_bg {
    font-size: var(--p);
    text-transform: uppercase;
    text-align: left;
    display: inline;
    padding: 0.5rem;
	color:var(--oneColor);
    background-color: var(--threeColor);
}
.textbox_01{
	font-size:var(--h2);
	max-width: var(--BoxWidthTextXL);
	padding: 0.8rem 0 1rem 0;

}
.textbox_01_bg1{
    padding: 0.5rem;	
    color: var(--threeColor);
    background-color: var(--oneColor);

}
.textbox_02{
	font-size:var(--psmall);
	max-width: var(--BoxWidthText);
	padding: 0rem 0 0.5rem 0;
	letter-spacing: 0.5px;
}
.textbox_03{
	font-size:var(--h2small);
	max-width: var(--BoxWidthTextXL);
	padding: 0.8rem 0 1.5rem 0;
}
.textbox_04{
	font-size:var(--p);
	max-width: var(--BoxWidthTextXL);
	padding: 0.2rem 0;
}
.textbox_04 span{
	font-weight: bold;
	font-family:'MYROGE_font_h1', Arial, "sans-serif";
		letter-spacing: 5px;
}
.textbox_05{
	font-size:var(--p);
	max-width: var(--BoxWidthTextXL);
	padding: 0.2rem 0;
	text-align: end;
	margin: 0 0 0 auto;
}
.link_01{
    color: var(--twoColor);
    position: relative;
	padding:1rem;
	border-bottom: 1px solid rgba(255,255,255,0.00);
	transition: var(--bewegung6);
}
.link_01:hover{
	border-bottom: 1px solid var(--threeColor);
	transition: var(--bewegung6);
}
.link_02{
	transition: var(--bewegung6);
	color: var(--oneColor);
	background-color:var(--threeColor);
	padding:1rem 2rem;
}
.link_02:hover{
	background-color:var(--twoColor);
	transition: var(--bewegung6);
}
.link_03{
	transition: var(--bewegung6);
	color: var(--oneColor);
	background-color:var(--twoColor);
	padding:1rem 2rem;
}
.link_03:hover{
	background-color:var(--threeColor);
	transition: var(--bewegung6);
}
img.icon_01{
	width: 48px;
	height: 48px;
	object-fit: cover;
}
img.icon_02{
	width:12px;
	height:12px;
	margin-left: 1rem;
}
img.icon_03{
	width: 80px;
	height: 80px;
	border-radius: 50%;
	padding: 1rem;
	background-color: var(--oneColor);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 8px;
}
img.icon_04{
	width:18px;
	height:18px;
	margin-right: 1rem;
}
.zoom {
	overflow: hidden;
}
.zoom img {
	transition: var(--bewegung6);
}
.zoom:hover img {
	transform: scale(1.05);
}
.scroll {
    opacity: 0;
    transform: translateX(20%);
    transition: transform 2.5s ease-out, opacity 2.5s ease-out;
    will-change: transform, opacity;
}

.scroll.in-view {
    opacity: 1;
    transform: translateX(0);
}
.bg_weiss{
	background-color: var(--whiteColor)!important;
}
/* ========== ========== include header ========== ==========*/

#header_menu{
	position: relative;
	width: 100%;
	height:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0rem;
	z-index: 5;

}
#header_menu a{
	font-weight:normal;
}
.header_menu_in{
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0rem 0.5rem;
	z-index: 5;
}
	
.header_100{
	position: relative;
	display: flex;
	flex-wrap:wrap;
	background-color: var(--oneColor);
	overflow: hidden;
	width: 100%;
	height: auto;
	justify-content: center;
}	
.header_101{
	position: relative;
	display: flex;
	flex-wrap:wrap;
	overflow: hidden;
	width: auto;
	height: auto;
	justify-content: space-evenly;
	margin:0 3rem;
}			
.header_101 img{
	width: 18px;
	height:18px;
	margin:6px 0;
}		
.header_101 p{
	padding:7px;
	font-size: var(--psmall);
	color: var(--twoColor);
}


.header_menu_in_img_container{
	position: relative;
	display: flex;
	width:20%;
	height:auto;
	justify-content: flex-start;
	text-align: center;
	padding: 1rem 0 0 0;
	overflow: hidden;
}
.header_menu_in_img_container img.white{
	width:100%;
	max-width: 300px;
    height:auto;
	/*min-height:100%;*/
    display: flex;	
	position: relative;
	margin: 0 auto;
	object-fit: cover;
}
.header_menu_in_img_container img.black{
	display:none;
}
.header_menu_in_right{
	position: relative;
	width: 80%;
	height: auto;
	padding: 1rem 1rem 1rem 4rem;
	display: block;
	justify-content: flex-end;
	text-align: end;
}

.header_menu_in_right_top{
	position: relative;
	width: 100%;
	height: auto;
	padding: 0 1rem 0 0;
	display: flex;
	justify-content: flex-end;
	text-align: end;
}
.header_menu_in_right_top a{
	position: relative;
    color: var(--whiteColor);
	width: auto;
	height: auto;
	margin: 0 0 0 1rem ;
	font-size: var(--psmall);
	transition: var(--bewegung6);
	border-bottom: 1px solid rgba(255,255,255,0.00);
}
.header_menu_in_right_top a.header_menu_in_right_top_link_hover:hover {
	border-bottom: 1px solid var(--threeColor);
	transition: var(--bewegung6);
}
.header_menu_in_right_bottom {
    position: relative;
    width: 100%;
    height: auto;
    padding: 1rem 0 1rem 0;
    display: flex;
    justify-content: flex-start;
    text-align: start;
	z-index: 5;
}
.header_menu_in_right_bottom a {
    margin: 0 0 0 1rem;
    color: var(--whiteColor);
    position: relative;
	border-bottom: 1px solid rgba(255,255,255,0.00);
	transition: var(--bewegung6);
}
.header_menu_in_right_bottom a:hover {
	border-bottom: 1px solid var(--threeColor);
	transition: var(--bewegung6);
}
.dropdown {
    position: relative;
    display: inline-block;
}
.dropdown-toggle {
    padding: 1rem;
}
.dropdown-box {
    display: none;
    position: absolute;
    top: 100%;
    left: -5%;
    z-index: 10;
    text-align: left;
    padding: 1rem 0;
	width: 100%;
    min-width: 13rem;
}
.dropdown-box a {
    display: block;
	width: 100%;
    padding: 1rem 2rem;
    color: var(--oneColor);
    text-decoration: none;
	transition: var(--bewegung6);
	background-color:  var(--threeColor);
}
.dropdown-box a:hover {
	transition: var(--bewegung6);
    background-color: var(--twoColor);
}
.header_menu_in_right_index .dropdown-box a:hover {
	transition: var(--bewegung6);
	color: var(--whiteColor)!important;
    background-color: var(--threeColor);
}
.dropdown:hover .dropdown-box,
.dropdown-box:hover {
    display: block;
}
.burger-menu {
    display: none;
    cursor: pointer;
    margin-left: 1rem;
    position: absolute;
    top: 1rem;
    right: 2rem;
    z-index: 1100;
}
.burger {
    width: 35px;
    height: 4px;
    background-color: var(--threeColor);
    margin: 6px 0;
    transition: 0.4s;
}
.mobile-menu {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height:auto;
    background-color: var(--twoColor);
    z-index: 20;
    padding-top: 60px;
}
.mobile-menu-content {
	position: relative;
    display: flex;
	flex-wrap: wrap;
	padding: 4rem 0 0 0 ;
    text-align: left;
	overflow: auto;
    background-color: var(--twoColor);
	z-index: 20;
}
.mobile-menu-content a {
    padding: 1rem 4rem;
    color: var(--whiteColor);
    text-decoration: none;
    border-bottom: 1px solid var(--whiteColor);
    text-align: left;
	width: 100%;
}
.mobile-menu .dropdown-box {
    display: block;
    padding-left: 1rem;
}
.burger-menu.open .burger:nth-child(1) {
    transform: rotate(-45deg) translate(-5px, 6px);
}
.burger-menu.open .burger:nth-child(2) {
    opacity: 0;
}
.burger-menu.open .burger:nth-child(3) {
	position: absolute;
	top: 1rem;
    transform: rotate(45deg) translate(-5px, -6px);
}
/* ========== ========== include angebote ========== ==========*/
#header_angebote{
	position: relative;
	width: 100%;
	height:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0rem ;
	overflow: hidden;
	z-index: 3;
}
.header_angebote_in {
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	padding: 0rem 0.5rem;
}
.header_menu_in_right_index a, .header_menu_in_right_index p{
	color: var(--twoColor)!important;
}
.header_angebote_in_inner {
	position: relative;
	display: flex;
	transition: transform 0.3s ease-in-out;
	will-change: transform;
	overflow-x: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--twoColor) transparent;
}
.header_angebote_in_inner::-webkit-scrollbar {
	width: 8px;
	height: 4px; /* Hinzugefügt für Firefox-Kompatibilität */
	background-color: var(--threeColor);/* Hintergrundfarbe der Standard-Scrollbar */
}
.header_angebote_in_inner::-webkit-scrollbar-thumb {
	background-color: var(--threeColor); /* Farbe des Scrollbalken-Griffs */
	border-radius: var(--ButtonBorderRadius);
}
.header_angebote_in_inner::-webkit-scrollbar-track {
	background: transparent;
}
.header_angebote_in a {
	min-width: 120px;
	width: auto;
	margin: 1rem;
	text-align: center;
	text-decoration: none;
	color:var(--whiteColor);	
	overflow: visible;
}
.header_angebote_in a p{
	color:var(--whiteColor);	
	position: relative;
	width: 100%;
	min-width: 100%;
	text-align: center;
	margin-top: 0.5rem;
}
.header_angebote_in a, .header_angebote_in p{
	color: var(--whiteColor);
}
.header_angebote_in_img_container{
	position: relative;
	display: flex;
	width:100px;
	height:100px;
	justify-content: flex-start;
	text-align: center;
	padding:0;
	overflow: hidden;
	margin: 0 auto;
	border-radius: 50%;
}
.header_angebote_in_img_container img{
	width:100%;
    height:auto;
	min-height:100%;
    display: flex;	
	position: relative;
	margin: 0 auto;
	object-fit: cover;
}
.absolute_left, .absolute_right {
	display: none;
}
/* ========== ========== include welcome box ========== ==========*/
#header_welcome_box{
	position: relative;
	width: 100%;
	height:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0rem;
	overflow: hidden;
	z-index: 6;
}
.header_welcome_box_in{
	position: relative;
	width:100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 10rem 2rem 4rem 2rem;
	display: block;
	justify-content: flex-start;
	padding: 0.5rem 2rem 0 2rem;
	border-left: 1px solid  var(--threeColor);
	z-index: 6;
}
.projekt_header_height{
	min-height: 50vh;
}
.header_welcome_box_in h1{
	color:var(--whiteColor);
}
.header_welcome_box_in h2,.header_welcome_box_in h3,.header_welcome_box_in h4, .header_welcome_box_in h5,.header_welcome_box_in h6{
	padding-top: 0rem;
	color:var(--whiteColor)!important;
	font-size:5rem;
}
.header_welcome_box_in_index h1{
	color:var(--twoColor);
}
.header_welcome_box_in_index h2{
	padding-top: 1rem;
	color:var(--twoColor);
}
.header_welcome_box_in_01{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 1rem 0 ;
	margin-top: 1rem;
}
/* ========== ========== main_001 ========== ==========*/
#main_001{
	position: absolute;
	top: 0;
	left:0;
    width: 100%;           
    height: auto;
	min-height:  100vh;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	background-color:var(--whiteColor);
	margin: 0rem 0;
	overflow: hidden;
	index:0;
}
/*.main_001_img_index {
	background-image: 
        linear-gradient(to right, rgba(255, 255, 255, 0.8) 20%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%), url('https://agmento.ch/gallery/full/1670/051agmentoimmobilienwolfwilcam0012-03@2x.jpg');
    background-size: cover; 
    background-position: center;
    background-repeat: no-repeat; 
    width: 100%;           
    height: 100vh;
}*/
.main_001_img_index {
    position: relative;
    display: flex;
    width: 100%; 
    height: 100%; 
    min-height: 100vh;
    justify-content: center;
    padding: 0;
    overflow: hidden;
    margin: 0 0 0 auto;
    z-index: 1;
}
.main_001_img_index .overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(48,50,47,1.00) 0%, rgba(48,50,47,0.2) 50%, rgba(48,50,47,0) 100%); /* Weiße, transparente Fläche */
    z-index: 2; /* Muss höher sein als die Bilder, aber niedriger als die Punkte */
}

.main_001_img_index img {
    width: 100%;
	min-width: 100%;
    height: 100%;
    display: none;
    position: absolute;
    object-fit: cover;
    z-index: 1; /* Muss niedriger sein als die Overlay-Fläche */
	transition: opacity 5s cubic-bezier(.42, 0, .22, 1.07);
}
.main_001_img_index img.active {
    display: block;
	transition: opacity 5s ease-in-out;
}
.main_001_img_index_dots {
    z-index: 2;
    position: absolute;
    bottom: 1rem;
    left: 0.5rem;
    display: flex;
    flex-direction: column-reverse; 
    justify-content: flex-end; 
    align-items: center;
    padding: 0.5rem 0;
}

.main_001_img_index_dots .dot {
    width: 12px;
    height: 12px;
    background-color: #949494;
    border-radius: 50%;
    margin: 6px 0;
    cursor: pointer;
    display: block; 
}

.main_001_img_index_dots .dot.active {
    background-color: var(--threeColor);
}
.main_001_textbox_02{
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
    height:auto;
	margin: 8rem auto 0 auto;
	display: block;
	background-color: var(--oneColor);
	padding: 4rem 6rem 4rem 4rem;
	border-radius: var(--ButtonBorderRadius);
	z-index: 7;	
}
.main_001_textbox_02 p{
	color: var(--twoColor);
}
.main_001_textbox_02 p.textbox_03{
	margin-bottom: 2rem;
}
.main_001_textbox_02_in{
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
    height:auto;
	margin: 0 auto;
	padding: 0.5rem 2rem 2rem 2rem;
	border-left: 1px solid  var(--oneColor);
}
.main_001_textbox_02_in h1, .main_001_textbox_02_in h2{
	color: 1px solid  var(--oneColor);
}
.main_001_textbox_02 .titel_01{
	font-weight:normal;
	text-transform:none;
}
/* ========== ========== main_002 ========== ==========*/
#main_002{
	position: relative;
    width: 100%;           
    height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	background-color:var(--whiteColor);
	margin: 8rem 0 0rem 0;
	overflow: hidden;
}
.main_002_in {
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	padding: 0rem 0rem;
	display: flex;
	flex-wrap: wrap;
}

.main_002_in_left{
	position:relative;
	width:  var(--BoxWidthDesktop50);
	height: auto;
	overflow: hidden;
	display: flex;
	margin: 0 auto;
	justify-content: flex-start;
	text-align: center;	
	padding:1.5rem 1.5rem 1.5rem 0rem  ;
}
.main_002_in_right{
	position:relative;
	width: var(--BoxWidthDesktop50);
	height: auto;
	overflow: hidden;
	display: block;
	margin: 0 auto;
	justify-content: flex-start;
	text-align: center;
	padding:1.5rem 0 1.5rem 1.5rem  ;
}
.main_002_in_right_01{
	position:relative;
	width: 100%;
	height: auto;
	overflow: hidden;
	display: flex;
	margin: 0 auto;
	justify-content: flex-start;
	text-align: center;
	padding:0;
	border-radius:var(--ButtonBorderRadius);
}
.main_002_in_right_01 img{
	width:100%;
    height:auto;
	min-height:100%;
    display: flex;	
	position: relative;
	margin: 0 auto;
	object-fit: cover;
}
.main_002_overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(48,50,47,1.00) 0%, rgba(48,50,47,0.2) 50%, rgba(48,50,47,0) 100%); /* Weiße, transparente Fläche */
    z-index: 3; /* Muss höher sein als die Bilder, aber niedriger als die Punkte */
}
.main_002_in_right_01 img.verlauf{
	background: linear-gradient(to right, rgba(145,128,91,0.8) 20%, rgba(145,128,91,0.3) 50%, rgba(145,128,91,0) 100%);
}
.main_002_in_overlay{
	position: absolute;
	bottom: 0;
	left: 0;
	height: auto;
	width: 100%;
	padding: 1rem 2rem;
	z-index: 4;
	text-align: start;
}
.main_002_in_overlay h3{
	color:var(--oneColor);
	text-align: start;
	display: flex;
}
.main_002_in_overlay p{
	color:var(--oneColor);
	text-align: start;
}
.main_002_in_right_01_margin-top{
	margin-top: 3rem;
}
/* ========== ========== main_003 Link ========== ==========*/
#main_003{
	position: relative;
    width: 100%;           
    height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	/*background-color:var(--whiteColor);*/
	margin:4rem 0;
	overflow: hidden;
}
.main_003_in {
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	padding: 0rem 0.5rem;
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	justify-content: center;
}
.main_003_in a{
	position: relative;
	margin: 0 auto;
}
/* ========== ========== main_004 Link ========== ==========*/
#main_004{
	position: relative;
    width: 100%;           
    height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	background-color:var(--oneColor);
	/*background: linear-gradient(to right, rgba(145,128,91,0.8) 20%, rgba(145,128,91,0.3) 50%, rgba(145,128,91,0) 100%);*/
	margin:8rem 0;
	padding-top: 4rem;
	overflow: hidden;
}
.main_004_in {
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	padding: 0rem 0.5rem;
	display: block;
	text-align: center;
	justify-content: center;
}
.main_004_in p.titel_01{
	text-align: center;
	margin-bottom: 2rem;
}
.main_004_in_box{
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0rem 0.5rem;
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	justify-content: space-between;
}
.main_004_in_box_in{
	position: relative;
	width: var(--BoxWidth);
	height: auto;	
	display: block;
	justify-content: center;
	text-align: center;
}
.main_004_in_box_in p{
	padding: 1rem 0;
}
.main_004_in_box_in_img_container{
	position: relative;
	display: flex;
	width:100px;
	height:100px;
	justify-content: flex-start;
	text-align: center;
	padding:0;
	overflow: hidden;
	margin: 1rem auto;
	border-radius: 50%;
}
.header_angebote_in_img_container img{
	width:100%;
    height:auto;
	min-height:100%;
    display: flex;	
	position: relative;
	margin: 0 auto;
	object-fit: cover;
}
.main_004_in_box_02{
	position: relative;
	width: 100%;
	margin: 2rem auto;
	padding: 2rem 0.5rem;
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	justify-content: center;
}

/* ========== ========== main_005 ========== ==========*/
#main_005{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	width: 100%;
	overflow: hidden;
	padding-top: 5rem;
}
.main_005_in{
	position: relative;
	width:100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	display: block;
	padding: 0.5rem 2rem 1rem 0.5rem;
	/*border-left: 1px solid  var(--threeColor);*/
}
.main_005_in h2{
	padding-top: 1rem;
}
/* ========== ========== main_005 ========== ==========*/
#main_006{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	width: 100%;
	overflow: hidden;
	margin: 0 0 4rem 0;
}
.main_006_in{
	position: relative;
	width:100%;
	/*max-width: var(--WxDisplayWidth);*/
	height: auto;
	margin: 0 auto;
	display: block;
	padding: 0.5rem 0rem 0 0rem;
}
.main_006_in_01{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 1rem 0;
	margin-top: 1rem;
	justify-content: center;
}
.main_006_in_box{
	position:relative;
	width:  var(--BoxWidthDesktop33);
	height: 700px;
	overflow: hidden;
	display: flex;
	margin: 0 auto;
	justify-content: flex-start;
	text-align: center;
	padding:1.5rem;
}
.main_006_in_box_01{
	position:relative;
	width: 100%;
	height: auto;
	min-height: 450px;
	overflow: hidden;
	display: block;
	margin: 0 auto;
	justify-content: flex-start;
	text-align: center;
	padding:0;
	border-radius:var(--ButtonBorderRadius);
}
.main_006_in_box_01:hover .main_006_in_overlay p,h3{	
	transition: var(--bewegung6);
	/*padding: 1rem 3rem;*/
} 

.main_006_in_box a{
	margin-bottom: 1.5rem
}
/*.main_006_in_box_01 img{
	min-height:400px;
}
.main_006_in_box img{
    height:auto;
}*/
.main_006_in_overlay{
	position: absolute;
	top: 1rem;
	left: 0;
	height: auto;
	width: 100%;
	padding: 1rem 2rem;
	z-index: 4;
}
.main_006_in_overlay p,h3{
	color:var(--oneColor);
	text-align: start;
	display: flex;
}




/* ========== ========== main_400 ========== ==========*/
.main_300{
	position: relative;
	width: 100%;
    overflow: hidden;
	max-height:400px;
	text-align: center;
	justify-content: center;
    margin: 2rem 0;
}
.main_300 img{
	width: 100%;
	height:auto;
	object-fit: contain;
	display: flex;
	justify-content: center;
    margin:0 auto;
    max-width: 1581px;
}
.main_400{
  	position: relative;
	width: 100%;
    overflow: hidden;
	text-align: center;
	justify-content: center;	
}
.main_400_background_img{
    background-color:var(--lightgrey);
	background-image: url("https://blog.adobe.com/de/publish/2021/10/26/media_1cc596a1d60f93011cc0aad8a75e2cd1e7516ebe3.png?width=750&format=png&optimize=medium");
	background-repeat:no-repeat;
	background-size:cover;
	/*background-attachment:fixed;*/
    background-attachment: inherit;
	background-position: center center;
	display: flex;
    object-fit: contain;
	justify-content: center;
}
.main_401{
	position: relative;
	max-width: 1581px;
	margin: 0 auto;
	text-align: center;
	justify-content: center;
	padding: 4rem 0rem 4rem 0rem;
}
.main_402{
	display: flex;
    flex-wrap: wrap;
	max-width: 900px;
	margin: 0 auto;
	justify-content: center;
}

.main_403{
    width: 33%;
    margin:0 ;
    padding:1rem;
}
.main_403 img{
    width: 40px;
    margin:0 auto 0rem auto;
}
.main_403 h6{
    padding-bottom: 0.5rem;
}
.main_500{
    position: relative;
    width: 100%;
    height: auto;
	justify-content: center;
	padding:3rem 0;
}

.main_501{
	position: relative;
	margin: 0 auto;
	max-width: 900px;
	border:2px solid var(--grayColor);
	padding:1rem 2rem;
	border-radius: var(--borderRadi4);
}
.main_501 h6{
    text-align: start;
	padding-bottom: 0.8rem;
}
.main_501 p{
    max-width: 550px; 
}
.main_501 span{
    font-weight: bold;
	color: var(--darkColor);
}
.main_501 a{
    position: absolute;
	bottom:1.5rem;
	right: 1.5rem;
    display: flex;
    background-color: var(--buttonColor);
    color: var(--threeColor);
    padding:0.5rem 1.5rem;
    margin:0.5rem 0 0 0;
    border-radius:var(--borderRadi20); 
	transition: var(--bewegung6);
}
.main_501 a:hover{
    background-color: var(--hover1Color);
	color: var(--threeColor);
	transition: var(--bewegung6);
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}


/* ========== ========== include social media ========== ==========*/
#social_media{
	position: relative;
	width: 100%;
	height:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 8rem 0 0 0;
	overflow: hidden;
}
.social_media_box_in{
	position: relative;
	width:100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 2rem 2rem 4rem 2rem;
	display: block;
	justify-content: flex-start;
	padding: 0.5rem 2rem 0 2rem;
	z-index: 1;
	border-left: 1px solid  var(--threeColor);
}
.social_media_box_in p.titel_01{
	padding-top: 1rem;
}
.social_media_box_in_01{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 1rem 0 ;
	margin-top: 1rem;
}
.social_media_box_in_01 a{
	margin-right: 4rem;
}

/* ========== ========== Impressum & Datenschutz  ========== ==========*/
#impressum{
	position: relative;
	overflow: hidden;
	width:100%;
	height:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding:1rem 1rem 4rem 4rem ;
}
.impressum_in{
	position: relative;
	width: 100%;
	max-width: var(--WxDisplayWidth);
	height: auto;
	margin: 0 auto;
	display: block;
	justify-content: flex-start;
	text-align:start;
	padding: 0rem 0.5rem;
}
.impressum_in_text{
	position: relative;
	width: 800px;
	height: auto;
	padding: 2rem 0;
}
.impressum_in_text h3{
	margin-bottom: 1rem;
	color: #595958;
}
.impressum_in_text p{
	color: #595958;
}
p.text_small{
	font-size:var(--psmall);
}
/* ========== ========== Footer  ========== ==========*/
.footer_303{
	position: relative;
	width: 100%;
	display: flex;
	justify-content: center;
	padding: 1rem 0;
}
.footer_301{
	position: relative;
	display: block;
	margin: 0 1rem 0rem 1rem;
}
.footer_301 p.titel{
	padding: 1rem 1rem 1.5rem 1rem;
	text-transform: uppercase;
	font-weight:bilder;
	color: var(--darkColor);
}
.footer_301 p{
	padding: 0.5rem 1rem;
}
.footer_301 a{
	padding: 0.4rem 1rem;
	width: 100%;
	display: flex;
}
.footer_304{
	position: relative;
	width: 100%;
	max-width: 1400px;
	display: flex;
	justify-content: space-between;
	padding: 0 4rem;
	margin: 1rem auto 0 auto;
}
.footer_321 img{
    width: 60px;
    margin:0 0.5rem 0rem 0.5rem;
}
.footer_322{
	position: relative;
	padding: 0.5rem;
	height: 100%;
	display: flex;
}
.footer_322 img{
	height: 30px;
    margin:0 auto 0rem auto;
}	
.footer_322 a{
	position: relative;
	padding: 0.5rem;
	margin: 0 0.5rem 0 0.5rem;
	display: flex;
}

.footer_300{
	position: relative;
	height: auto;
	width: 100%;
	overflow: hidden;
	margin-top: 1rem;
}
.footer_300_inside1{
	position: relative;
	height: auto;
	width: 100%;
	overflow: hidden;
	background-color: var(--oneColor);
	padding: 0.5rem 2rem;
}
.footer_300_inside1 a{
	padding: 0.5rem;
	margin-left: 1rem;
	color: var(--twoColor);
}







/* ========== ========== Footer hallerid - icon & copyright ========== ==========*/
	
.flo_copy_div {
	position: relative;
	padding:1rem 0rem;
	width: var(--HundertProz);	
	background-color:var(--oneColor);
	text-align: center;
	bottom: 0rem;
	transition:var(--bewegung);
	z-index: 2; 
}	
.flo_copy_div a:hover {
	color: var(--HauptFarbe);
	transition:var(--bewegung);
	text-decoration: underline;
}
.mobilefoot2{
	display:none;
}
.mobilefoot{
	color: var(--twoColor);
}
.fva_footer_icon_member img{
	z-index: 3;
	position: absolute;
	width: 40px;
	top: -1rem;
	right: 2rem;
	transition: var(--bewegung6);
	transform: scale(1) rotate(0deg);
}
.fva_footer_icon_member img:hover{
	transition: var(--bewegung6);
	transform: scale(1.3) rotate(6deg);
}

		
        

/* ========== MEDIA SCREEN  1580px ========== */
/* ========== APPLE NOTEBOOK 16und13zoll ========== */
	@media screen and (min-width:1581px) 
	{
body {
	/*background-color:rgba(151,185,231,1.00); ZUM ARBEITEN */
} .main_100{
	position: relative;
	overflow: hidden;
	width: 100%;
	max-height:300px;
	text-align: center;
	justify-content: center;
	
}		
.main_100 img{
	max-width: 1581px;
	height:auto;
	margin:0 auto;
	object-fit: contain;
	display: flex;
	justify-content: center;
	background-color: blanchedalmond;		
}	
		
		
		
		
		
		
		
		
.main_001_img_index img{
	max-width: 2200px;
}	
.main_001_img_index_dots {
    left:1.5rem;
}	
}

/* ========== MEDIA SCREEN  1580px ========== */
/* ========== APPLE NOTEBOOK 16und13zoll ========== */
	@media screen and (max-width:1454px) 
	{
body {
	/*background-color:lightcoral; ZUM ARBEITEN */
}
img.absolute_left,
img.absolute_right {
	display: none;
}		
	
}

/* ========== MEDIA SCREEN  992px ========== */
	@media screen and (max-width:1300px) 
	{		
body {
	/*background-color: rgba(190,124,223,1.00);ZUM ARBEITEN*/
}
:root {
	/*--BoxWidth:100%;
	*/
	--BoxWidthTextXL:100%;
	--BoxWidthDesktop50: 100%;
	--BoxWidthDesktop33: 100%;
	--ButtonMargin:0.5rem 0.8rem 0.5rem 0;
}
.textbox_01{
	font-size:var(--h1small);
}
.header_menu_in_right{
	width: auto;
	position: absolute; 
	right: 1rem;
	top:1rem;
	padding: 1rem 1rem 0 0;
	justify-content: flex-end;
	text-align: end;
}
.header_menu_in_right_bottom {
	display: none;
}
.burger-menu {
	display: block;
}
.mobile-menu {
	display: none;
}
.mobile-menu.open {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: var(--twoColor);
	display: block;
	z-index:1000; 
}
.burger-menu.open {
	position:absolute;
 	z-index: 1100;
}
/** Höhe für Startbild oben, sobald Menu geöffnet **/
.burger-menu.open + .header_img_index, .burger-menu.open + .header_img_projekte,.burger-menu.open + .header_img_projekt {          
    height: 100vh!important;
}
.mobile-menu .dropdown-box {
	display: block; 
}
.header_menu_in_right_top{
	display: none;
}
.header_menu_in_right_top a{
	width: 100%;
}
.header_menu_in_img_container{
	width:50%;
	padding: 1rem 0 0 2rem ;
	z-index: 1100;
}
.header_menu_in_img_container img.white{
	display:none;
}
.header_menu_in_img_container img.black{
	display: flex;
	width:100%;
	max-width: 300px;
    height:auto;
	max-height:2.5rem;
	min-height: auto;
	margin-bottom: 4rem;
}
.header_welcome_box_in{
	margin: 4rem 2rem 4rem 2rem;
}
.header_welcome_box_in{
	padding: 0.5rem 0rem 0 1.5rem;
}

		/* ========== ========== main_001 ========== ==========*/
#main_001{
	min-height: 100vh;
	margin: 4rem 0;
	overflow:visible;
}
.main_001_img_index{
    width: 100%;           
    height: 100%; 
	margin: 0;
}
.main_001_img_index img{
	width:95%;
	min-height: 400px; 
}

.main_001_textbox_02{
	width: 80%; 
	padding: 4rem 2rem 0rem 0rem;
}
.main_001_textbox_02_in{
    height:auto;
	margin: 0 auto;
	padding: 0.5rem 2rem 4rem 2rem;
}
.main_006_in{
	padding: 0 5rem;
}

.main_006_in_box{
	display: block;
	padding:1rem;
}
/*.main_006_in_box_01 img{
	min-height:400px;
}
.main_006_in_box img{
    height:auto;
}*/
.main_006_in_box_01:hover .main_006_in_overlay p,h3{	
	transition: var(--bewegung6);
	/*padding: 0;*/
}


/* ========== ========== uber uns  ========== ==========*/
#main_007{
	margin: 8rem 0 0rem 0;
}
.main_007_box_in_01 ul{
	width: 100%;
}

.mobilefoot2{
	display:flex;
}
.mobilefoot{
	display:none;
}

/* ========== ========== Footer  ========== ==========*/


		
}	
	
/* ========== MEDIA SCREEN  768px ========== */
/* ========== APPLE tablet (kleineres) ========== */
	@media screen and (max-width:768px) 
	{	
body {
	/*background-color:rgba(240,206,164,1.00); ZUM ARBEITEN */
}
:root {
	--BoxWidth:100%;
}
/* ========== ========== Main Index ========== ========== */

h1 {
	font-size:var(--h1small);
	letter-spacing: 2px;
}
#h1{
	font-size:var(--h4small);	
}
h2 {
	font-size:var(--h2small);
	letter-spacing: 2px;
}
h3 {
	font-size:var(--h3small);
}
h4 {
	font-size:var(--h4small);
}
h5 {
	font-size:var(--h5small);
}
h6 {
	font-size:var(--h6small);
}
/* ========== ========== include angebote ========== ========== */

.textbox_01{
	font-size:var(--h1small);
}
.main_100 img{
	width: auto;
	height:250px;
}
.main_300 img{
	width: auto;
	height:250px;
}
		
		
		
		
		
		
		
		
		
		
		
		
		
.main_002_in {
	padding: 0rem;
}		
.main_006_in{
	padding: 0;
}		
.main_006_in_projekte{
	padding: 0;
}			
.main_006_in_projekte_left{
	width:  100%;
	padding:1rem;
}
.main_006_in_projekte_right{
	width: 100%;
	padding:1rem;
}
		
#impressum{
	padding:0rem 0rem 4rem 0rem ;
}
.impressum_in{
	display: block;
}
.impressum_in_text{
	margin-bottom: 1rem;
	width:auto;
}	
}	
/* ========== MEDIA SCREEN  600px ========== */
	@media screen and (max-width:600px) 
	{
body {
	/*background-color:rgba(195,245,245,1.00); ZUM BEARBEITEN */
}
h1 {
	font-size:var(--h4);
	letter-spacing: 2px;
}

	}
