/* Überschriften */

h1 {
	font-size:1.8em;
	font-weight:600;
	margin-bottom:0.6em;
	text-shadow:2px 2px 5px rgba(63, 63, 64, 0.4);
}
h2 {
	font-size:1.2em;
	font-weight:600;
	margin-top:1em;
	margin-bottom:0.4em;
	text-shadow:1px 1px 5px rgba(63, 63, 64, 0.4);
}

/* Links */

a {
	text-decoration:none;
	transition:all 0.5s ease;
}
a:link {
	color:#7A7067;
}
a:visited {
	color:#7A7067;
}
a:hover {
	color:#A49893;
}
#content a:hover, #footer a:hover {
	color:#423f40;
	text-shadow:-1px 1px 5px #a49893, 1px -1px 5px #A49893;
}
ul a:before {
	content:'» ';
}
#header a:before, #footer a:before, .contact_form a:before {
	content:'';	
}

/* Listen */

ul {
	margin:0em 0em 1em 1em; list-style-type:square;
}
li {
	margin-left:.5em;
	line-height:1.4em;	
}

ul.linkliste li {
	list-style-type:none;
}

/* Allgemeine Definitionen */

img {
	max-width:100%;
}
.imground {
	border-radius:10px;
	border:none;
	overflow:hidden;
	box-shadow:4px 4px 5px rgba(63, 63, 64, 0.4);
}
p {
	padding:0 0 0.8em 0;
	line-height:1.3em;
	text-align:justify;
}
strong {
	font-weight:bold;
}
hr {
	margin-top:15px;
	margin-bottom:15px;
	border:none;
	border-top:1px solid #ccc;
}
.klein {
	font-size:.85em;
	text-align:justify;
}
.versal {
    color:#A49893;
    font-size:2.5em;
    padding-right:0.1em;
}
.gradient {
	background:linear-gradient(white 0%, #C4C5C5 100%);
}
.rahmen {
	border:1em solid #fff;
	border-radius:5px;
	box-shadow:1px 1px 2px #e6e6e6;	
}
.imp_punkt {
	font-size:1.1em;
	margin-bottom:.8em;
}
.padding_tb {									/* Padding oben und unten für Text-Only im Contentbereich */
	padding-top:1.5em;
	padding-bottom:1.5em;
}

.clearfix:after { content: "."; clear: both; display: block; visibility: hidden; height: 0px; }

/* Infofahnen zum ein- und ausblenden */

.fahne {
	position:absolute;
	display:none;
	top:2em;
	left:2em;
	width:40%;
	height:auto;
	border-radius:8px;
	background:rgba(66,63,64,.6);
	color:#fff;
	padding:1.5em 2.5em 1.5em 2.5em;
	overflow:hidden;
	z-index:950; /* damit Links funktionieren */
	
	box-shadow:	2px 2px 6px 1px rgba(122,112,103,.6),
				inset 1px 1px 1px 1px rgba(71,65,60,.4),
				inset -1px -1px 1px 1px rgba(173,159,146,.4);
}
a.trigger{
	z-index:900;
	position:absolute;
	top:2em;
	right:0;
	color:#fff;
	padding:1em 5em 1em 1em;
	background:rgba(66,63,64,.4) url(../files/plus.png) 85% 55% no-repeat;
	transition:all 0.5s ease;
	border-top-left-radius:8px;
	border-bottom-left-radius:8px;
	display:block;
	font-size:1.2em;
	text-shadow:none;
	font-weight:700;
	box-shadow:	-1px 1px 6px 1px rgba(122,112,103,.6),
				inset 1px 1px 1px 1px rgba(71,65,60,.2),
				inset -1px -1px 1px 1px rgba(173,159,146,.2);
	;
}
#content a.trigger:hover{
	padding:1em 6em 1em 2em;
	display:block;
	color:#fff;
}
a.active.trigger {
	background:rgba(66,63,64,.6) url(../files/minus.png) 85% 55% no-repeat;
	padding:1em 6em 1em 2em;
}
.fahne li  {
	list-style-type:none;
}

/* Haupt-Navigation */

#navigation ul {
	float:right;
	display:inline;
	margin:0;
	margin-top:0.5em;
	padding:0;
	text-transform:lowercase;
}
#navigation ul li {
	float:left;
	position:relative;
	margin-left:0;
	height:1.9em;
	list-style-type:none;
}
#navigation ul li a {
	display:block;
	margin:0 0.1em;
	padding:.1em .4em;
	font-size:1.1em;
	white-space:nowrap;
	border-radius:8px;
	color:#666;
	transition:all 1s ease;
}
#navigation ul li:last-child a { 
	margin-right:0;
}
#navigation ul li a:hover {
	color:#423f40;
}

/* Aktuelle Seite hervorheben */

#index #header .nav_index, #dekoration #header .nav_dekoration, #werbetechnik #header .nav_werbetechnik, #grafik #header .nav_grafik,  #info #header .nav_info {
	color:#423f40;
	text-shadow:none;
	background-color:#FFF;
	border:1px solid #ccc;
}

/* Subnavigation */

#subnav ul.subnav {
	width:100%;
	text-align:right;
	float:right;
	list-style:none;
	margin:0;
	padding:0;
	text-transform:lowercase;
	font-size:1em;
}
#subnav ul.subnav li {
	position:relative;
	display:inline;
	margin:0;
	border-left:1px solid #7A7067;
	list-style-type:none;
	height:1.5em;
}
#subnav ul.subnav li:first-child {
	border-left:none;
}
#subnav ul.subnav a {
	padding:0 .5em;
	color:#666;
	transition:all 1s ease;
}
#subnav ul.subnav a:hover {
	color:#423f40;
}
#subnav ul a.menuactive {
	text-decoration:underline;
	color:#423f40;
}

/* Formulare */

.contact_form {
	
}
fieldset {
    border:1px solid #eee;
    border-radius:5px;
    display:block;
	margin-bottom:1.5em;
    padding:1em 2em;
}
legend {
    font-size:larger;
	padding:0 1em;
}
label {
	width:30%;
	display:inline-block;
	float:left;
	padding:.3em .3em;
}
.contact_form ul {
	width:100%;
	list-style-position:outside;
	margin:0;
	padding:0;
}
.contact_form li{
	padding:.2em 0;
	position:relative;
	list-style-type:none;
}
.pflichtfeld {
	color:#a32929;
	margin-left:.5em;
	margin-right:0.2em;
	display:inline;
	float:right;
}
.rot {
	color:#a32929;
	font-weight:bold;
}
.formerror {
    display: block;
	margin-left:1em;
	margin-bottom:.4em;
}
input, textarea, select {
	width:70%;
	background-color:#FFFFFF;
    border: 1px solid #DDDDDD;
    border-radius:3px;
	padding:.3em .7em;
	box-shadow: 0px 0px 3px #ccc, 0 10px 15px #eee inset; 
}
input:hover, input:active, input:focus, textarea:hover, textarea:active, textarea:focus {
    border-color:#A49893;
	outline:none;
	background: #fff;
	box-shadow: 0 0 3px #aaa;
}
input:focus, textarea:focus { 							/* add this to the already existing style */
	padding-left:1em;
}
input, textarea { 										/* add this to the already existing style */
	-moz-transition: padding .25s;
	-webkit-transition: padding .25s;
	-o-transition: padding .25s;
	transition: padding .25s;
}

/* Button Style */

.button {
	margin-bottom:1em;
}
