/* Stylesheet für Selfhtml Design 08 
  responsives Layout mit Grid Layout ab Z. 249   */

/* ====================================================   GLOBAL DEFINITION   ==================================================== */

/* alternatives Boxmodell */
html { 
  	box-sizing: border-box; 
	padding: 0;
	margin: 0;	
} 

*, ::before, ::after { 
	box-sizing: inherit; 
}

body {
    margin: 0 auto; 
    font: normal 1em Arial, sans-serif;  /* Mindestschriftgröße wird dem Browser, bzw. dem Nutzer überlassen! */
	 color: #595959;
/*	background:
		radial-gradient(black 15%, transparent 16%) 0 0,
		radial-gradient(black 15%, transparent 16%) 8px 8px,
		radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 0 1px,
		radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 8px 9px;
	background-size:16px 16px; */
	background-color: gainsboro;
}

/* ====================================================   Inhalt   ==================================================== */

	/* Kontakt- und Serviceformular */
  span.pflichtfeld {
   font-size: 12px;
   color: red;
  }

  span.hilfetext {
   font-size: 12px;
   font-style: Oblique;
  }
  
  textarea {
   font-family: Tahoma, Arial, Helvetica, sans-serif;
   padding: 3px;
  }

	/* Linkformatierung Allgemein */
a {
  color: #595959;
  text-decoration: none;
}

a:hover,
a:focus {
	background-color: #92D050;
	text-decoration: none;
}

.copy a:hover, a:focus {background-color: transparent;}

header {
  max-width: 75em;
  background-color: ;
  margin: 0 auto;
  position: relative;
  margin-bottom: 0.5em;
}

header #logo {
  display: inline-block;
  background: #fff url('../img/e-consulting_grau.png') no-repeat left center;
  color: #595959;
  margin: 0 5em 0 0;
  padding: 0 0 0 11em;
  text-decoration: none;
  height: 60px;
  border: 0px solid black;
  outline: none;
}

main {
  display: block;   /*für IE9-11 */	
  max-width: 75em;
  position:relative;
  padding: 1em; /* 0 20px 0; */
  margin: 0 auto;
  background-color: #eee;
  border-radius: 0.5em;
  /* background: white;
  color: #333; */
}

.gallery{
  color: ;
}

.gallery img {
	width: 100%;
	/* border-radius: 0 0.8em 0.8em; */
}

  /* slide in captions found @http://css-tricks.com/slide-in-image-captions/ */
figure { 
  width: 100%;
  padding:0; 
  margin:0 ;
  display: block; 
  position: relative; 
  overflow: hidden; 
}

figure:before { 
  content: "?"; 
  position: absolute; 
  background: rgba(255,255,255,0.75); 
  color: #000;
  width: 24px;
  height: 24px;
  bottom:30px; left:30px;
  border-radius: 12px;
  text-align: center;
  font-size: 14px;
  line-height: 24px;
  transition: all 0.6s ease;
  opacity: 0.75;  
}
figure:hover:before {
  opacity: 0;
}

figcaption { 
  position: absolute; 
  background: rgba(0,0,0,0.75); 
  color: #eee; 
  padding: 10px 20px;
  width:100%; 
  opacity: 0;
  bottom: -20%; 
  left: 0;
  transition: all 0.6s ease;
}

figcaption h2 {
  margin: 0;
}

figcaption p {
  margin: 0;
  padding: 0.3em 0 0.5em 0;
}
figure:hover figcaption {
  opacity: 1;
  bottom: 0;
}

section {
 border: 0px solid #ccc;
 max-width: ;
 margin: 0 auto;
 padding-bottom: 0;
 margin-bottom: 0em; /* geändert war 2 */
}

article	{
  padding: 0px;
  width: 100%;
  border: 0px solid #000;
  border-radius: 0.5em;
}
/*
article.portfolio	{
  padding: 0 1em 0 1em;
  width: 100%;
  border: 1px solid #000;
  background-color: ;
  border-radius: 0.5em;
}
*/
aside	{
	border-radius: 0.5em;
	padding: 0 10px 0 10px;
   border: 0px solid #eee;
   background-color: #92D050;
}

aside.footer	{
	background-color: gainsboro;
	border-radius: 0.5em;
	padding: 0 10px 0 10px;
   border: 0px solid #eee;
}

aside a {
  color: #595959;
  text-decoration: none;
  padding: 2px 5px 2px 5px;
}

aside a:hover,
aside a:focus {
	background-color: #595959;
	color:#92D050; 
	text-decoration: none;
}

section.services h1 {
	color: #eee;
  	padding: 3px;
  	font-size: 1.3em;
  	text-align: center;
}

section.leasing {
 border: 0px solid #ccc;
 background: #535353;
 margin: 0 auto;
 padding: 0.5em 0.5em 1.5em 0.5em;
}

section.bikes {
 border-bottom: 0px solid #282828;
 background: #fff;
 margin: 0 auto;
 padding: ;
}

section.services {
	width: 100%;
   border: 0px solid #BE3C26;
   background: #282828;
}

.services img {
	width: 100%;
	/* filter: invert(1); */  
}

section.textcon {
  width: 100%;
  border: 0px solid #eee;
}

ul.feature{
}

ul.feature li{
	 color: #595959;
	 text-transform: uppercase;
	 font-weight: bold;    
    list-style: square;
    padding: 15px 0 5px 5px;
}

ul.portfolio{
}

ul.portfolio li{
	 color: #595959;
	 font-weight: bold;    
    list-style: disc;
    padding: 5px 0 5px 5px;
}

  /* Navigation */

nav {
	margin: 0;	
	width: 100%;
	background-color: #fff;
	/* background-image: repeating-linear-gradient(90deg, black, gainsboro); */
	border-radius: 0.5em; /* Ecke links oben 0 0.5em 0.5em */
}

nav ul {
	margin: 1em 0 0.5em 0.3em;
 	font: 1.3em  Arial, Helvetica, sans-serif;
 	list-style-type: none;
}

nav li {
	display: inline-block;
	margin: 0.5em;
}

nav a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	padding: 0.3em 1em 0.3em 1em;
	font-weight: ;
	color: #92D050;
	border-radius: 0.3em; /* Ecke links oben 0 0.5em 0.5em */
	background-color: gainsboro;
	color: #595959;
	outline: none;
}

[aria-current=page] {
	font-weight: bold;
	background-color: #92D050;
	color: gainsboro;
}

nav a:hover, nav a:focus {
	background-color:  #92D050;
	color: #595959; 
}


footer {
  max-width: 75em;
  padding: 1em;
  margin: 0 auto;
  border: 0px solid #000;
}

.copy {
	text-align: right;;
	font-size: 0.8em;
	margin: 3em 1em 0 0;
}

dl.grid { 
  display: grid; 
  grid-template-columns: 1fr 85%; 
}
dd { 
  margin: 0; 
  padding-left: 1em; 
}
dl.grid dd {
  margin-bottom: 0.5em;
}

a[href^="tel"] { white-space: nowrap; }

	/* Ausblenden der 3-Balken bei ausreichend großen Viewports */	
.menue-button {
    display: none;
} 

/* ====================================================   LAYOUT   ==================================================== */

/* Mobile first ! alle Blöcke haben 100%, Navigation unten*/

body {
  padding: 0px;
}
/* CSS erweitern um MENÜ-Button und entsprechende Steuerung */
/*	Menü-Button oben rechts einblenden bei kleiner als 1000px */
@media only screen and (max-width:1000px) {

	/* Einblenden der 3-Balken bei kleinen Viewports; Formatierung der Balken */
	.menue-button {
		display: block;
	}
	.menue-button {
		background-color: transparent;
		display: block;
		position: fixed;
		z-index: 1;		/* Eine Ebene über dem Hintergrund */
		right: 10px;
		top: 8px;
		padding: 0 10px 0  10px;
		color: grey;
		cursor: pointer;
		text-decoration: none;
		font-size: 3.5em;
		outline: none;		/* Verhindert die Punktierung um den Link */
	}
			
	.menue-button:hover {
		color: #eee;
		background: #535353;
	}
		
	/* Formatierung mobile Navigation */
	nav {
		float: left;
		width: 100%;
		padding-bottom: 0.5em;
		display: none;
	} 
	
	/* Einzeilige Anordnung der Listenelemente	*/		
	nav li {
		width: 50%;
		border-bottom: 0px solid #eee;
	}
		
/* die Magie, um die Steuerung einzublenden (auch auf mobile Devices) */
#nav-menue:target nav {
    display: block;
}
/* ausblenden des Menü-Buttons zum öffnen - somit wird der zum Schließen sichtbar */
#nav-menue:target .menue-button-beschr-open {
    display: none ; 
	}
}
		
@media screen and (min-width: 35em) {    

	main, footer {
	  	display: grid;
	  	grid-template-columns: repeat(2, 1fr);
	  	grid-gap: 0.5em;	/* Abstand der Felder in main und footer */
	}
	article {
		grid-column: 1 / 2;
	}
		
	article.fullscreen {
		grid-column: 1 / 3;
	}
	
	.gallery {
		grid-column: 1 / 3;
	}	
	
	aside  {
		grid-column: 2 / 3;	
	}
}

@media screen and (min-width: 55em) {   
	main, footer {
	  	grid-template-columns: repeat(3, 1fr);		/* 3Spalten, sobald Platz da ist */
	}
	
	article {
		grid-column: 1 / 3;
	}
	
	article.fullscreen {
		grid-column: 1 / 4;
	}
	
	.gallery {
		grid-column: 1 / 4;
	}
	
	aside  {
		grid-column: 3 / 4;	
	}
	figure {
  		margin: 0;
	}

	nav ul {
  		padding: 0 0 0 2%;
  		font: 1.2em Arial,Helvetica,sans-serif;
	}
}
