@font-face {
	font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwaySemiBold.ttf");
	font-weight: unset;
	font-style: unset;
}

@font-face {
	font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwayCondensedSemiBold.ttf");
	font-weight: 300;
}

@font-face {
	font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwaySemiBold.ttf");
	font-weight: 500;
}



@font-face {
    font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwayBold.ttf");
    font-weight: bold;
}



@font-face {
    font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwayRevOblique.ttf");
    font-style: italic;
}
@font-face {
    font-family: "Walkway";
	src: url("/files/fonts/Walkway/WalkwayBoldRevOblique.ttf");
    font-weight: bold;
    font-style: italic;
}

* 
{
	font-family: 'Walkway';
    /*word-break: break-word;*/
}

body {
	margin: 0px;
	overflow-x: hidden;

	--clr-light-magenta: #AB47BC;
	--clr-magenta: #9827ac;
	--clr-purple: #673AB7;
	--clr-purple-transparent: #673ab7c7;

	--clr-pink: #F3E5F5;
	--clr-white: #F5F5F5;
	--clr-light-gray: #eeeeee;
	--clr-gray: #bdbdbd;
	--clr-dark-gray: #9e9e9e;
	--clr-black: #424242;

    --clr-color-light-magenta: #ab91d7;
    --clr-pink: #F3E5F5;
	--clr-white: #F5F5F5;
	--clr-light-gray: #eeeeee;
	--clr-gray: #bdbdbd;
	--clr-dark-gray: #9e9e9e;
	--clr-black: #424242;
    --clr-darker-green: #0c3a09;
    --clr-dark-green: #36751a;
    --clr-green: #66bb6a;
    --clr-light-green: #e1ecd5;

	--frw-nav-background-color: var( --clr-white );
	--frw-nav-urlbox-background-color: var( --clr-pink );
	--frw-nav-urlbox-color: var( --clr-light-magenta );
	--frw-logo-border-color: var( --clr-purple );
	--frw-logo-background-color: var( --clr-light-magenta );
	--frw-motd-color: var( --clr-white );
	--frw-motd-text1: #673ab7c7;
	--frw-motd-text1-ecke1: var( --clr-purple );
	--frw-motd-text2: var( --clr-light-magenta );
	--frw-motd-text2-ecke2: var( --clr-magenta );
	--frw-accent-darkest-transparent-color: var( --clr-purple-transparent );
	--frw-accent-darkest-color: var( --clr-purple );
	--frw-accent-dark-color: var( --clr-magenta );
	--frw-accent-color: var( --clr-light-magenta );
	--frw-accent-light-color: var( --clr-pink);
    --frw-accent-lightes-color: var( --clr-color-light-magenta );

	--frw-font-size-smaller: 13px;
	--frw-font-size-small: 17px;
	--frw-font-size-medium: 21px;
	--frw-font-size-large: 27px;
	--frw-font-size-larger: 33px;

    --frw-site-width: 80%;;
    width: fit-content;
    
}

.navigationIconBox
{
    display: none;
}

.hidden
{
    display: none;
}

h1.haus:before {
	content: "⌂";
    position: absolute;
    height: 41px;
    width: 35px;
    border-bottom: solid 1px var( --frw-accent-light-color );
    color: var( --frw-accent-light-color );
}

h1.bighaus:before {
	content: "⌂";
    position: absolute;
    height: 308px;
    width: 150px;
    font-size: 250px;
    border-bottom: solid 3px var( --frw-accent-color );
    color: var( --frw-accent-color );
}

/*
h1, h2, h3, h4, h5, h6 {

}

summary::-webkit-details-marker {
	display: none
}

div.imprint {
	position: absolute;
	background-color: #555652;
	min-height: 150px;
	padding-top: 15px;
	padding-bottom: 15px;	
	color:white;
}
	  
div.imprintLeft {
	width: 425px;
	padding: 10px;
	height: 125px;
	border-right: 1px;
	border-color: var( --clr-dark);
	border-style: inset;
	border-left: 0px;
	border-bottom: 0px;
	border-top: 0px;
}
	  
div.imprintCenter {
	width: 600px;
	padding: 10px;
	height: 125px;
	border-right: 1px;
	border-color: #636e72;
	border-style: inset;
	border-left: 0px;
	border-bottom: 0px;
	border-top: 0px;
}
	  
div.imprintRight {
	height: 125px;
	width: 300px;
	padding: 10px;
}

a.imprint {
	text-decoration: none;
    color: #BDBDBD;;
    font-size: 17px;
}
	  
a.imprint:hover {
	text-decoration: none;
    color: #33691e;;
    font-size: 17px;
}
*/

#contentMain {
	padding-top: 50px;
}


div.site_content
{
	width: inherit;
}

div.main_content
{
    width: inherit;
    word-break: break-word;
}


/*
	Portfolio
*/


portfolio
{
	display: grid;
    justify-items: center;
	width: inherit;
	margin: 75px 0px;
}

portfolio > portfolioholder
{
    display: grid;
    justify-items: start;
	position: relative;
    width: var( --frw-site-width );;
}

portfolio > portfolioholder > h1
{
	display: flex;
    position: relative;
}

portfolio > portfolioholder > h1::before
{
	content: "⌂";
    position: relative;
    left: -15px;
    top: -5px;
    border-bottom: solid 1px ;
    color: var( --frw-accent-light-color );
    display: inline;
}

portfolio > portfolioholder > portfolioelements
{
	position: relative;
    background: #ffffffdb;
    border-radius: 2px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
}

portfolio > portfolioholder > portfolioelements > portfolioelement
{
    width: calc(var(--vw) * 37);
    font-size: var( --frw-font-size-medium );
    padding-bottom: 15px;
	display: flex;
}

portfolio > portfolioholder > portfolioelements > portfolioelement::before
{
	content: "✔";
    color: var( --frw-accent-light-color );
    padding-left: 10px;
    position: relative;
    left: -5px;
}

portfolio > portfolioholder > portfolioelements > portfolioelement > li
{
	list-style: none;
}



/*
	Services
*/

services
{
    display: grid;
    background: #f5f6f7;
    justify-items: center;
	padding: 75px 0px;
}

services > servicesholder 
{
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
	justify-content: space-around;
    width: var( --frw-site-width );;
}

services > servicesholder > a
{
	background-color: var( --frw-accent-darkest-transparent-color );
    border: solid 2px var( --frw-accent-darkest-color );
    border-radius: 1px;
    -webkit-box-shadow: 0px 0px 20px 3px var( --frw-accent-darkest-transparent-color );
    -moz-box-shadow: 0px 0px 20px 3px var( --frw-accent-darkest-transparent-color );
    box-shadow: 0px 0px 20px 3px var( --frw-accent-darkest-transparent-color );
    transition: .33s;
    transform-style: preserve-3d;
    margin: 50px 15px;
}

services > servicesholder > a > service
{
    display: grid;
    width: inherit;
    justify-items: center;
    height: 425px
}

services > servicesholder > a > service > serviceholder
{
	color: var(--clr-white );
    text-align: right;
    cursor: pointer;
    text-decoration: underline;
    font-size: var(--frw-font-size-medium );
    width: 275px;
    height: 425px;
    display: flex;
    flex-direction: column;
    justify-content: center;
} 

services > servicesholder > a > service > serviceholder > h2
{
    text-align: left;
}

services > servicesholder > a > service > serviceholder > *
{
    padding: 0px 15px;
}


services > servicesholder > a > service > serviceholder > [name="hUp"]
{
    color: var( --clr-white );
}

services > servicesholder > a > service > serviceholder > [name="img"]
{
	height: 175px;
    width: 100%;
    position: relative;
    display: block;
}

services > servicesholder > a > service > serviceholder > [name="hDown"]
{
	color: var( --clr-white );
    font-weight: normal;
	word-break: break-word;
}

services > servicesholder > a > service > serviceholder > [name="click"]
{
	color: var(--clr-white );
    width: 275px;
    text-decoration: underline;
    font-size: var( --frw-font-size-medium );;
    position: relative;
    text-align: center;
    left: -7px;
}

/*

	Flyer

*/

flyer
{
	width: 100%;
    height: fit-content;
    display: grid;
    justify-content: center;
	background: var( --clr-white );
    padding: 75px 0px;
}

flyer > flyerholder
{
	background: #0c3a09;
    position: relative;
    width: 550px;
    display: grid;
    justify-items: center;
}

flyer > flyerholder > *
{
	position: relative;
    display: grid;
    width: inherit;
    font-size: var( --frw-font-size-medium );
    color: var( --clr-white );
    text-decoration: inherit;
}

flyer > flyerholder > flyertop
{
    top: 5%;
    width: 90%;
	font-size: var( --frw-font-size-large );;
}

flyer > flyerholder > flyertop > h2
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyertop > h2 > sitetitle
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyertop > h2 > sitetitle > magenta
{
	color: var(--clr-light-magenta)
}


flyer > flyerholder > flyerwave
{
	position: relative;
    top: -105px;
    height: 175px;
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
    width: inherit;
}

flyer > flyerholder > flyerwave > svg
{
	position: absolute;
    width: inherit;
}


flyer > flyerholder > flyerwave > flyeroffer
{
	height: 115px;
    width: 115px;
    display: grid;
    align-content: center;
    justify-items: center;
    text-align: center;
    border-radius: 150px;
    border: 3px solid var( --clr-white);
    background: #36751a;
    transform: rotate(5.9486rad);
    position: relative;
    top: 5px;
    left: 300px;
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyerwave > flyeroffer > flyerofferholder
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyerwave > flyeroffer > flyerofferholder > h3
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyerwave > flyeroffer > flyerofferholder > h3 > offertext
{
	font-weight: normal;
    font-size: var( --frw-font-size-smaller );;
    color: var( --clr-white );
    text-decoration: inherit;
}

flyer > flyerholder > flyerwave > flyeroffer > flyerofferholder > h3 > offertext > b
{
	font-weight: bold;
	font-size: var( --frw-font-size-medium );;
}

flyer > flyerholder > flyercenter
{
	width: 90%;
}

flyer > flyerholder > flyercenter > flyercenterleft
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercenter > flyercenterleft > h3
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercenter > flyercenterleft > ul
{
	margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 30px;
    line-height: 27px;
    text-decoration: unset;
    font-size: var( --frw-font-size-small );;
    font-weight: normal;
    color: inherit;
    max-width: 175px;
}

flyer > flyerholder > flyercenter > flyercenterleft > ul > li
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercenter > flyercenterleft > ul > li > offerelement
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
    word-break: keep-all;
}

flyer > flyerholder > flyercenter > flyercenterright
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
    position: absolute;
    width: 55%;
    height: 350px;
    top: -50%;
    right: -5%;
    background: url(/files/images/flyer/hauswart-offer.jpg);
}

flyer > flyerholder > flyercenter > flyercenterright > flyerimages 
{
	position: inherit;
    height: inherit;
    width: 100%;
    right: -1%;
    display: grid;
    justify-items: center;
    align-items: center;
}

flyer > flyerholder > flyercenter > flyercenterright > flyerimages > *
{
	position: absolute;
    display: grid;
    border-radius: 150px;
    border: 4px solid var( --clr-white );
}


flyer > flyerholder > flyercenter > flyercenterright > flyerimages > flyerimagebig
{
	height: 275px;
    width: 275px;
    top: 10px;
    left: 50px;
    background: url(/files/images/flyer/big.jpg);
    background-size: 300px;
    background-position: -80px -15px;
    background-repeat: no-repeat;
}


flyer > flyerholder > flyercenter > flyercenterright > flyerimages > .left
{
	height: 135px;
    width: 135px;
    top: 150px;
    left: 0px;
    z-index: 10;
    background: url(/files/images/flyer/small-left.jpg);
    background-size: 150px;
    background-position: -15px -10px;
    background-repeat: no-repeat;
}

flyer > flyerholder > flyercenter > flyercenterright > flyerimages > .bottom
{
	height: 150px;
    width: 150px;
    top: 225px;
    left: 85px;
    z-index: 5;
    background: url(/files/images/flyer/small-bottom.jpg);
    background-size: 250px;
    background-position: -55px -85px;
    background-repeat: no-repeat;
}

flyer > flyerholder > flyercontact
{
    width: 95%;
    font-size: var( --frw-font-size-small );;
	margin-bottom: 35px;
}

flyer > flyerholder > flyercontact > h2
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
    text-transform: uppercase;
}

flyer > flyerholder > flyercontact > ul
{
	list-style: none;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0px;
    text-transform: uppercase;
    font-size: inherit;
    color: inherit;
    text-decoration: unset;
}

flyer > flyerholder > flyercontact > ul > li
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercontact > ul > li > a 
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercontact > ul > li > a > span
{
	font-size: inherit;
    color: inherit;
    text-decoration: inherit;
}

flyer > flyerholder > flyercontact > p.price
{
    padding: 0px 15px;
    text-transform: uppercase;
}

flyer > flyerholder > flyerbottom
{
	display: block;
    background: var(--clr-light-magenta);
    height: 20px;
}

/*
	Service Informations
*/

serviceinfos
{
	position: relative;
    display: grid;
    width: 100%;
    height: fit-content;
    justify-items: center;
}

serviceinfos > serviceinfosholder
{
	position: relative;
    width: var( --frw-site-width );
    font-size: var( --frw-font-size-medium );;
    padding: 50px 0px;
}

serviceinfos > serviceinfosholder > serviceinfosdetails > details
{
	background: var( --clr-white );
    padding: 15px 10px;
    margin-bottom: 15px;
}

serviceinfos > serviceinfosholder > serviceinfosdetails > details > summary 
{
	font-size: inherit;
    padding-left: 30px;
    outline: none;
    cursor: pointer;
	display: flex;
	align-items: center;
}

serviceinfos > serviceinfosholder > serviceinfosdetails > details.serviceInfo {
    font-size: inherit;
    background: var( --clr-white );
    margin-bottom: 25px;
    padding: 20px;
}

serviceinfos > serviceinfosholder > serviceinfosdetails > details.serviceInfo > summary::before
{
	content: "+";
    color: var( --clr-white );
    position: relative;
    left: -50px;
    text-align: left;
    font-weight: bold;
    display: block;
    padding: 14px 20px;
    background: var( --clr-gray );
	border-color: var( --clr-dark-gray );
	border-style: solid;
	border-radius: 2px;
	border-width: 2px;
}

details[open].serviceInfo summary.serviceInfoSum::before	
{
	content: "-" ;
	background-color: var( --frw-accent-color );
	padding: 14 22px;
	border-color: var( --frw-accent-color );
}

/*
	Contacts
*/

contacts
{
	display: grid;
    justify-items: center;
    width: 100%;
    margin: 75px 0px;
}

contacts > contactstop
{
	background-color: var( --clr-dark-gray );
    color: var( --clr-white );
	font-size: var( --frw-font-size-larger );;
	margin-bottom: 75px;
    height: 125px;
    width: inherit;
    display: flex;
    justify-content: center;
    align-items: center;
	
}

contacts > contactstop > contactstitle
{
	display: block;
    width: var( --frw-site-width );
	font-weight: bold;
}

contacts > contactsholder 
{
    background-color: var( --clr-white );
    display: flex;
	justify-content: space-around;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row;
    align-content: flex-end;
    width: var( --frw-site-width );;
}

contacts > contactsholder > a
{
	color: var( --frw-accent-color );
    background: var( --frw-accent-light-color );
    text-decoration: none;
    font-weight: bold;
    margin: 62.5px 0px;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

contacts > contactsholder > a > contacttype
{
	display: grid;
    align-content: stretch;
    justify-items: center;
    height: 275px;
    width: 250px;
}

contacts > contactsholder > a > contacttype > *
{
	padding: 10px 0px;
}

contacts > contactsholder > a > contacttype > contactname
{
	position: relative;
	top: 0px;
	display: block;
	text-decoration: underline;
	font-size: var( --frw-font-size-medium );;
}

/*
contacts > contactsholder > a > contacttype > contactimg
{
	
}
*/

contacts > contactsholder > a:hover
{
	background: var( --clr-light-gray );
    z-index: 2;
    color: var( --clr-light-gray );
}

contacts > contactsholder > a > contacttype > contactimg > img
{
	height: 125px;
    width: 175px;
    display: block;
	-moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

contacts > contactsholder > a:hover > contacttype > contactimg > img
{
	filter: invert(1) drop-shadow(2px 4px 6px var( --frw-accent-darkest-transparent-color ) );
	height: 150px !important;
    width: 200px !important;
}

contacts > contactsholder > a > contacttype > contactvalue 
{
	text-decoration: none;
    color: inherit;
    font-size: var( --frw-font-size-medium );;
    text-align: right;
}

contacts > contactsholder > a > contacttype > contactvalue
{
	text-decoration: none;
    color: inherit;
    font-size: var( --frw-font-size-small );;
}

contacts > contactsholder > a > contacttype[ type = "mail" ] > contactimg > img
{
    height: 75px;
    width: 100px;
}

contacts > contactsholder > a > contacttype[ type = "address" ] > contactimg > img
{
	height: 75px;
    width: 100px;
}

contacts > contactsholder > a > contacttype[ type = "telefon" ] > contactimg > img
{
	height: 75px;
    width: 100px;
}



/*
	Site Info
*/

siteinfo
{
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    margin: 75px 0px;
}

siteinfo > siteinfoholder
{
	display: grid;
    width: var( --frw-site-width );;
    background: var( --clr-white );
    color: var( --clr-black );
    font-size: var( --frw-font-size-medium );;
	color: var(--frw-accent-color )
}

siteinfo > siteinfoholder > sitetitle
{
	width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    background: var( --clr-white );
    max-height: 125px;
    align-items: center;
}


siteinfo > siteinfoholder > sitetitle > h1
{
    width: var( --frw-site-width );;
}

siteinfo > siteinfoholder > sitecontent
{
	display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    background: var( --clr-white );
    border-top: 2px outset var( --frw-accent-darkest-color );
    min-height: 250px;
	color: var(--clr-black);
}


siteinfo > siteinfoholder > sitecontent > *
{
	display: grid;
    line-height: 25px;
	width: var( --frw-site-width );;
}

siteinfo > siteinfoholder > sitecontent > * > contententry
{
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
	line-height: 30px;
}

siteinfo > siteinfoholder > sitecontent > * > contententry > contenthead
{
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
	padding-right: 5px;
}

siteinfo > siteinfoholder > sitecontent > * > contententry > contentbody 
{
	padding-left: 5px;
}

/*

@media only screen and (max-width: 400px) {
	.site_content
	{
		width: fit-content !important;
	}

	.main_content , groupimg , portfolio , services , serviceinfos , contacts , services
	{
		width: 100% !important;
		position: relative;
	}

	groupimg > motdhold > motdbanner1
	{
		width: 375px !important;
		left: 220px !important;
	}

	groupimg > motdhold > motdbanner1 > .motdbanner1t
	{
		left: 50px !important;
	}

	groupimg > motdhold > motdbanner2
	{
		width: 275px !important;
	}

	groupimg > motdhold > motdbanner2 > motdbanner2text 
	{
		width: 375px !important;
		left: 175px !important;
	}

	groupimg > motdhold > motdbanner2 > motdbanner2text > .motdbanner2t
	{
		left: 50px !important;
	}



	servicesholder
	{
		flex-direction: column !important;
    	display: flex !important;
		width: 75% !important;
		position: relative;
		left: 0%;
	}

	serviceholder > service
	{
		margin-top: 50px;
	}

	servicesholder > a
	{
		margin: 50px 0px;
	}

	contacts > contactsholder 
	{
		flex-direction: column;
	}

	contacts > contactsholder > a 
	{
		width: 100%;
		display: grid;
    	justify-items: center;;
	}

	body
	{
		width: fit-content;
		--frw-font-size-smaller: 25px;
		--frw-font-size-small: 31px;
		--frw-font-size-medium: 35px;
		--frw-font-size-large: 42px;
		--frw-font-size-larger: 48px;
	}
	
	footer
	{
		display: grid !important;
    	justify-content: space-around;
    	width: 100% !important;
	}

	portfolio > portfolioholder , serviceinfos > serviceinfosholder , serviceinfos > serviceinfosholder , contacts > contactsholder
	{
		width: var( --frw-site-width ); !important;
	}

	portfolio > portfolioholder > portfolioelements > portfolioelement
	{
		width: unset !important;
	}

	
}

*/