/* 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: white;
	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-color:#282828;
	background-size:16px 16px;
}

/* ====================================================   Inhalt   ==================================================== */

h1 {
  font-size: 1.5em;
}

a {
  color: #E51049
/*  color: skyblue; */
}

a:hover,
a:focus {
 /*	background:#e6f2f7 ;  */
   background:  #E51049;
}

header {
  max-width: 80em;
  color:white;
  background: #eee;
  margin: 0 auto 1.6em;
  position: relative;
}

header::after {
  position: absolute;
  content: "";
/*  background: linear-gradient(to top, #feb040 25%, #282523 25%, #282523 50%, #34a2da 50%, #34a2da 75%, #0e76bc 75%); */
  height: 1.6em;
  left: 0;
  right: 0;
  bottom: -1.6em;
}

/*header h1 {
  padding-left: 80%;
}     */
/*h1 #logozeile {
  padding-left: 80%;
}  */

header #logo {
  display: inline-block;
  background: url('../img/logoganzklein.png') no-repeat left center;
  color: black;
  margin: 0 0 0 2em;
  padding-left: 10em;
  text-decoration: none;
  max-height: 100%;
  max-width: 60%;
}

main {
  display: block;   /*für IE9-11 */
  max-width: 80em;
  position:relative;
  padding:0 20px 0;
  margin: 0 auto;
  background: white;
  color: #333;
}

.gallery{
  color: #FFFFFF;
  font-family: "Times New Roman", Times, serif;
}

  /* slide in captions found @http://css-tricks.com/slide-in-image-captions/ */
figure { 
  padding:0; 
  margin:0 -20px;;
  display: block; 
  position: relative; 
  overflow: hidden; 
}

figure:before { 
  content: "?"; 
  position: absolute; 
  background: rgba(255,255,255,0.75); 
  color: black;
  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;
}

.gallery img {
	width: 100%;
}

figcaption { 
  position: absolute; 
  background: rgba(0,0,0,0.75); 
  color: white; 
  padding: 10px 20px;
  width:100%; 
  opacity: 0;
  bottom: -20%; 
  left: 0;
  transition: all 0.6s ease;
}

figcaption h2 {
  margin: 0 12px;
}

figcaption p {
  margin: 12px 12px 0;
  padding: 0;
}
figure:hover figcaption {
  opacity: 1;
  bottom: 0;
}


article {
  display: block;   /*für IE9-11 */
  max-width: 80em;
  position:relative;
  padding:0 20px 0;
  margin: 0 auto;
  background: white;
  color: #333;
}

section.hilfe{
}

section.hilfe h1{
  padding-left:30px;
  background: url('../img/einkaufswagen.png') no-repeat left center;
}

/*section.hilfe p{
  border-bottom: 1px dashed #535353;
} */

section.verkauf h1{
  padding-left:30px;
  background: url('../img/einkaufswagen.png') no-repeat left center;
}
/* Sign in form */

#signin label {
	display: block;
}  

#signin input, #signin textarea {   
   width: 80%;
   border: 1px solid #dfdfdf;
   background: #fff;
   padding: 5px 3px;
}   

#signin textarea{
   height:105px;
   overflow:auto;
}      

#signin button{
   margin: 1em 1em;
   padding: 0.5em;
   float: right;
   color: #feb040;
   background: #0e76bc;
   border: 1px solid #333;
   border-radius: 5px;
}
   
#signin button:hover,
#signin button:focus {
	background: #feb040;
	color: #0e76bc;
}

.hilfe img {
	width: 100%;
/*	filter: invert(1); */
}

  /* Navigation */

nav {
	margin: 0;	
	width: 100%;
	background: black;
  padding-top: 10px;
  padding-bottom: 10px;
}

nav ul {
	margin: 0;
	padding: 0;
 	font: 1.3em  Arial, Helvetica, sans-serif;
 	list-style-type: none;
}

nav li {
	display: inline;
	margin: 0;
}

nav a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	color: white;
	padding: .5em;
	padding-right: 2em;
	text-align: right;
}

[aria-current=page] {
	font-weight: bold;
	color: #e51049;
}

nav a::after{
	content:" ▶";
	color: #e51049;
	display: inline-block;
	width: 2em;
}

nav a:hover::after, nav a:focus::after{
	content:" ▼";
}

nav a:hover, nav a:focus {
	background: transparent;
	color: #feb040;
}
footer a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	color: white;
	padding: .5em;
	padding-right: 2em;
	text-align: right;
}

footer a::after{
	/* content:" ▶";*/
	color: #e51049;
	display: inline-block;
	width: 2em;
}

footer a:hover::after, nav a:focus::after{
/*	content:" ▼";   */
}

footer a:hover, nav a:focus {
	background: transparent;
	color: #feb040;
}

a.erfolg {
	position: relative;
	display: inline-block;
	text-decoration: none;
	color: CornflowerBlue;
	padding: .5em;
	padding-right: 2em;
	text-align: right;
}
a.erfolg:hover, a.erfolg:focus {
	background: transparent;
	color: #feb040;
}
a.erfolg::after{
	/* content:" ▶";*/
	color: CadetBlue;
	display: inline-block;
	width: 2em;
}

a.erfolg a.erfolg:hover::after, a.erfolg a:focus::after{
/*	content:" ▼";   */
}

a.erfolg a.erfolg:hover, a.erfolg:focus {
	background: transparent;
	color: #feb040;
}

footer {
  max-width: 70em;
  padding: 0.5em;
  margin: 1em auto;
  color: #ccc;
}

dl.grid {
  display: grid;
  grid-template-columns: 1fr 100%;
}
dd {
  margin: 0;
  padding-left: 1em;
}
dl.grid dd {
  margin-bottom: 1em;
}

a[href^="tel"] { white-space: nowrap; }

.copy {
	text-align: right;
}

/* ====================================================   LAYOUT   ==================================================== */

/* Mobile first ! alle Blöcke haben 100%, Navigation unten*/

body {
  padding: 0 1em;
}

@media screen and (min-width: 35em) {    

	main, footer {
	  	display: grid;
	  	grid-template-columns: repeat(2, 1fr);
	  	grid-gap: 1em;
	}
/*	article {
		grid-column: 1 / 2;
	}	
	.gallery {
		grid-column: 1 / 3;
	}	
	
	aside  {
		grid-column: 2 / 3;	
	}     */
}

@media screen and (min-width: 50em) {   
	main, footer {
	  	grid-template-columns: repeat(3, 1fr);		/* 3Spalten, sobald Platz da ist */
	}
	
/*	article {
		grid-column: 1 / 3;
	}
	
	.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;
}
}
img.karte  {
	width: 300px;
	height: 200px;
	overflow: hidden;
}
img.karte {
	width: 100%;
	height: auto;
	/* SCALE */
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	/* VERZÖGERUNG */
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-ms-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}

img.karte:hover {
	-webkit-transform: scale(2);
	-moz-transform: scale(2);
	-ms-transform: scale(2);
	-o-transform: scale(2);
	transform: scale(2);
