html {
	padding: 0 5% 10px;
}

body {
	position:relative;
	background: #d5d5d5;
	font-family: Times New Roman;
	/*font-family: Tauri, Helvetica, sans-serif;*/
	width: 1200px;
	margin:0 auto;
	font-size: 1.2em;
	color: #535353;
}

/* Style the tab */
.tab {
  overflow: hidden;
  border: 1px solid #ccc;
  background-color: #f1f1f1;
}

/* Style the buttons inside the tab */
.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-size: 17px;
}

/* Change background color of buttons on hover */
.tab button:hover {
  background-color: #ddd;
}

/* Create an active/current tablink class */
.tab button.active {
  background-color: #ccc;
}

/* Style the tab content */
.tabcontent {
  display: none;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-top: none;
}

* {
-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */

}

a {
	text-decoration: none;
}

header {
	width: 100%;
	height: 240px;
	margin:20px auto 0px;
	color:white;
}
header h1 a{
	display:block;
	color:white;
	padding:10px 0 0 20px;
	font-family: Tauri, Helvetica, sans-serif;
	font-size:140%;
}
header h1 span {
	font-family: Tauri, Helvetica, sans-serif;
	font-size:50%;
	color:white;
	padding: 0 20px;
}
header h2 a{
	display:block;
	color:white;
	padding:10px 0 0 20px;
	font-family: Tauri, Helvetica, sans-serif;
	font-size:140%;
}
header h2 span {
	font-family: Tauri, Helvetica, sans-serif;
	font-size:50%;
	color:white;
	padding: 0 20px;
}

.ribbon{
	margin: 30px 0 50px;
	position: relative;
	background: #365F91;
	border: 1px solid rgba(0,0,0,.3);
	box-shadow: 0px 1px 3px rgba(0,0,0,.2);
	padding: 10px 15px;
	clear: both;
	text-align: center;
	padding: 10px 9px 10px 10px;
	width: 50%;
	margin-left: -10px;
}

.ribbon::before{
	display: block;
	width: 10px;
	height: 0px;
	position: absolute;
	bottom: -10px;
	left: -11px;
	content: "";
	border-bottom: 10px solid transparent;
	border-right: 10px solid rgb(0, 80, 116);
}

.ribbon::after{
	display: block;
	width: 10px;
	height: 0px;
	position: absolute;
	bottom: -10px;
	right: -10px;
	content: "";
	border-bottom: 10px solid transparent;
	border-left: 10px solid rgb(0, 80, 116);

}
header a#navlink {
	display:none;
	float: right;
	text-decoration: none;
	font-size: 1.8em;
	font-weight: bold;
	margin:20px 20px 0 0;
}

ul#header-top {
	position:absolute;
	top:10px;
	right:50px;
	list-style-type: none;
}
ul#header-top  li			{ float: right; list-style-type: none; padding: 0px 10px; border-left: 1px #ACACAC solid; }
ul#header-top  li:last-child		{ border: none; }

header p{
	background: #1691AC url("../img/head_250x215.png") top right no-repeat;
	width: 100%;
	height:210px;
	margin:-130px 0 0 0;
}
header div.headr{
	font-family: Tauri, Helvetica, sans-serif;
	font-size: 0.8em;
 	float:right;
	color:#365f91;
 	margin-right:10px;
}

/** CONTENT **/
main {
	float:left;
	width: 100%;
	margin: 0 0 10px 0;
	background: #fff;
	-webkit-box-shadow: 0 0 80px rgba(0,0,0,0.1) inset, 0 3px 1px rgba(0,0,0,0.15);
	box-shadow: 0 0 80px rgba(0,0,0,0.1) inset, 0 3px 1px rgba(0,0,0,0.15);
}

article{
	padding: 30px;
	padding-bottom: 100px;
	width: 95%;
	float:left;

}

h1 {
	font-size: 2.0em;
	font-weight: normal;
	font-family: 'Times New Roman', serif;
	/*font-family: 'Tauri', serif;  */
	padding-top: 30px;
	padding-bottom: 10px;
	margin: 0;
	color: #235493;
	/* text-transform: uppercase;*/
	/*border-left:5px solid #4e68AD;*/
}

h2 {
	font-size: 1.8em;
	font-weight: normal;
	font-family: 'Times New Roman', serif;
	/* font-family: 'Tauri', serif;  */
	padding-top: 30px;
	padding-bottom: 10px;
	color: #365f91;
	/*text-transform: uppercase;*/
	/*border-left:5px solid #4e68AD;*/
}

h2 span {
	font-size: 0.70em;
	color: #818181;
	text-transform: none;
}

h3	{
	font-size: 1.35em;
	font-weight: normal;
	margin: 0px;
	padding-top: 30px;*/
	padding-bottom: 20px;
	color: #4E68AD;
}

@media (max-width: 480px) {
	h3	{
		font-size: 2em;
		font-weight: normal;
		margin: 0px;
		padding-top: 30px;*/
		padding-bottom: 20px;
		color: #4E68AD;
	}
}

h4	{
	font-size: 1.2em;
	font-weight: normal;
    padding-top: 20px;
	padding-bottom: 10px;
	margin: 0px;
	color: #4E68AD;
}

p {
	font-size: 1.1em;
	text-align: left;
	line-height: 1.6em;
	padding: 6px 0px
}

@media (max-width: 480px) {
	p {
		font-size: 1.2em;
		text-align: left;
		line-height: 1.6em;
		padding: 6px 0px
	}
}

div{
	padding: 11px 0px
}

a 	{
	color: #4E68AD;
	padding: 1px 1px;
	outline: none;
	text-decoration: none;
}
a:hover 	{
	color: #818181;
	text-decoration: none;
}
a:focus 	{
	outline: none;
}
a.more	{
	float: right;
	font-weight: bold;


}
a.more:hover {
	color: #535353;
}
a.more:after{
	content:" \2192 ";
	font-size:1.2em;
	font-weight:bold;
}

ul.square {
	list-style-type:square;
    color: #999999;
    float: left;
    margin: 0 0 10px 13px;
	font-weight:bold;
}

ul.square li{
	padding:10px;
}

/*DL, DT, DD Datenliste*/
dl 					{margin-bottom:50px;}

dl dt {
    float:left;
    font-weight:bold;
    margin-right:5px;
    padding:5px;
    width:140px;
}

dl dd {
    margin:2px 0;
    padding:5px 0;
}

section#intro {
	width: 100%;
	padding:10px 2%;
	float: left;
}

section.spalte {
	width: 100%;
	padding:10px 2%;
	float: left;
}

section p img {
	float:left;
	margin:0 10px 10px 0;
}

#footer-p {
	float: left;
	font-weight: bold;
	font-size: 12px;
	margin: 20px 0 0 0;
}
footer div {
	font-family: Tauri, Helvetica, sans-serif;
	font-size: 1.0em;
}
.footultitle {
	font-weight: bold;
	padding:10px;
	font-size: 1.0em;
}
.footr {
    float:right;
    padding:30px;
    margin:0 0 0 0%;
}
.footl {
    float:left;
    padding:20px;
    margin:0 0 0 0%;
}
footer div ul#footul {
    float:left;
    list-style:none;
    padding:10px;
    margin:0 0 0 0%;
}
#nav {
	width: 100%;
	float: left;
	margin: 0 0 1em 0;
	padding: 0;
	list-style: none;
	font-family: Tauri, Helvetica, sans-serif;
	background-color: #f2f2f2;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc; }
#nav li {
	float: left; }
#nav li a {
	display: block;
	padding: 8px 15px;
	text-decoration: none;
	color: #069;
	border-right: 1px solid #ccc; }

nav#navigation{
 float: left;
    margin-right: 30px;
    width: 265px;
}

#nav ul li:hover a, #nav ul li:active a {
	color: #F5F5F5;
	background: #535353;
}

#navigation ul ul {
	display: none;
}

#navigation ul li:hover > ul {
	display: block;
}


#navigation ul {
	float: left;
    list-style-type: none;
    width: 100%;
	margin-bottom:30px;
}

#navigation ul li {position:relative;
}
#navigation ul li.first-child	{ border-top: 1px #DBDBDB solid; }

#navigation ul li:hover a, #navigation ul li:active a {
	float: left;
	width: 230px;
	color: #F5F5F5;
	background: #535353;
}

#navigation ul li a {

	display: block;
    border-bottom: 1px solid #DBDBDB;
    color: #535353;
    float: left;
    font-size: 1.1em;
    line-height: 1.5em;
    padding: 1em 35px;
    text-decoration: none;
    width: 230px;
}

#navigation ul li a:before{
	content:" ";
	display:inline-block;
	width:10px;
	height:15px;
	border-left:5px solid #CCC;
}

#navigation ul ul {
	position: absolute;
	top:143px;left:190px;
	z-index:99;
}
#navigation ul li:hover ul {display:block;}
#navigation ul ul li {
	display:block;
	float: none;
	position: relative;
}

#navigation ul ul li a {
	background: #97b314;
	color: #fff;
}
#navigation ul ul li a:hover {
	background:  #d0ff00;
	color:gray;
}

footer p {
	float: right;
	padding: 10px;
}
@media only screen and (max-width: 960px) {
body{width:100%}
header h2.ribbon {width:50%;}
article {width:100%}

header a#navlink {
	display:block;
}

}
/* 1-Spaltenlayout  */
@media only screen and (max-width: 600px) {

header h2.ribbon {width:80%;}

ul#header-top {
	position:relative;
}

article section.spalte {width:100%;}

nav ul li{width:90%}

#navigation{
	float:left;
	clear:left;
	width:90%;
	padding:0;
	margin:0;
}
#navigation ul {
	position:relative;
	padding:0;
	margin:0;
	top:0;
	left:0%;
	width:100%;
	clear:left;
}
#navigation li {
	display: block;
	padding: 0;
	margin: 0;
}

}

/* eigen */

li.content0 {
	padding: 5px;
	font-size: 1.4em;
	}

li.content0:hover {
	background-color: #ACD7F2;
}

li.content1 {
	padding: 5px;
	font-size: 1.3em;
	}

li.content1:hover {
	background-color: #ACD7F2;
}

li.content2{
	padding: 1px;
	font-size: 1.2em;
}

li.content2:hover{
	background-color:#ACD7F2;
}

li.content3{
	padding: 1px;
	font-size: 1.1em;
}

li.content3:hover{
	background-color:#ACD7F2;
}

img.anwendungsbild {
  border-width: 2px;
  border-style: solid;
  border-color: #4E68AD;
}

img.bookcover {
  	width: 200px;
  	border-width: 2px;
  	border-style: solid;
  	border-color: #4E68AD;
}

img.slideshowcover {
	width: 200px;
  	border-width: 2px;
  	border-style: solid;
  	border-color: #4E68AD;
}

video.anwendungsvideo {
  border-width: 2px;
  border-style: solid;
  border-color: #00000;
}

div.fullwidth {
  align:center;
  width:100%;
}

.grid-container{
	background-color: #E8F3FA;
	padding: 1px;
	display: grid;
	grid-auto-columns: minmax(15rem, auto);
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	grid-gap: 1rem;
}

.grid-item{
	padding: .5rem;
	font-size: 2rem;
	text-align: center;
}

p.up {
	text-align: right;
	padding-right: 50px;
	padding-bottom: 150px;
}

p.up img {
	float: right;
}

p.next {
	text-align: right;
	padding-right: 50px;
	padding-bottom: 50px;
}

p.next img {
	float: right;
}

p.down {
	text-align: right;
	margin-right: 50px;
	margin-top: 100px;
}

table.warenkorb {
	padding: 10px;
	background-color: #E8F3FA;
}

table.warenkorb  thead{
	font-weight:bold;
	font-size: 1.1em;
	background-color: #F8F8F8;
}

table.warenkorb  tfoot{
	font-weight:bold;
	background-color: #F8F8F8;
}

table.warenkorb  tr{
	background-color: #F8F3FA;
}

table.warenkorb  td{
	padding: 10px;
}

table.benutzer {
	padding: 10px;
	font-size: 1em;
	background-color: #E8F3FA;
}

table.benutzer  thead{
	font-weight:bold;
	font-size: 1.1em;
	background-color: #F8F8F8;
}

table.benutzer  tfoot{
	font-weight:bold;
	background-color: #F8F8F8;
}

table.benutzer  tr{
	background-color: #F8F3FA;
}

table.benutzer  td{
	padding: 10px;
}

button.kaufen {
	position: relative;
	margin: 2em;
	padding: .5em 1em;
	width: 8em;
	background: babyblue;
	color: darkblue;
	border: 1px solid blue;
	border-radius: 3px;
	cursor: pointer;
}
button.kaufen:hover, button.kaufen:active {
	outline: none;
	background: lightblue;
	color: darkblue;
}

#userInput {
  background-image: url('../img/searchicon.png');
  background-position: 120px 3px;
  background-repeat: no-repeat;
  width: 100%;
  font-size: 16px;
  padding: 12px 20px 12px 40px;
  border: 1px solid #ddd;
  margin-bottom: 12px;
}

#orderInput {
  background-image: url('../img/searchicon.png');
  background-position: 130px 5px;
  background-repeat: no-repeat;
  width: 100%;
  font-size: 20px;
  padding: 12px 20px 12px 40px;
  border: 1px solid #ddd;
  margin-bottom: 12px;
}

#userTable {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid #ddd;
  font-size: 16px;
}

#userTable th, #userTable td {
  text-align: left;
  padding: 12px;
}

#userTable tr {
  border-bottom: 1px solid #ddd;
}

#userTable tr.header, #userTable tr:hover {
  background-color: #f1f1f1;
}

#orderTable {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid #ddd;
  font-size: 16px;
}

#orderTable th, #orderTable td {
  text-align: left;
  padding: 12px;
}

#orderTable tr {
  border-bottom: 1px solid #ddd;
}

#orderTable tr.header, #orderTable tr:hover {
  background-color: #f1f1f1;
}
