@import url('https://fonts.googleapis.com/css?family=IBM+Plex+Sans|IBM+Plex+Serif&display=swap');

/* HTML5 Boilerplate  */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; overflow-y:scroll; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

::-moz-selection { background: #ddde4b; color: #222; text-shadow: none; }
::selection { background: #ddde4b; color: #222; text-shadow: none; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #858585; margin: 1em 0; padding: 0; }
dfn { font-style: italic; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="radio"] { margin:0 0 0 .125em; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/*
Sticky Footer Solution
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;}
html, body {height: 100%;}
#wrap {min-height: 100%;}
#main {overflow:auto; padding-bottom: 3.25em;}

#footer {
	position: relative;
	margin-top: -3.25em;
	height: 3.25em;
	clear:both;
	text-align: center;
}

/*
Default Styles
*/
body {
	font: normal normal 1em/1em 'IBM Plex Sans', sans-serif;
	background:#fff;
	color: #222;
}

/* kontinuum gem. styleguide hogrefe */
/*
body:before {
    content: '';
    position: fixed;
    left: 0;
    top: 2rem;
    bottom: 2rem;
    z-index: 1220;
    display: block;
    width: 1em;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9Ii0wLjAwMjY4NTI4IDAgMTQgMTAwMyIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pbllNaW4gbWVldCI+PHJlY3QgeD0iLTYuNDY0IiB5PSItOTAuOTI4IiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0M4MEEwRiIgaWQ9ImU0X3JlY3RhbmdsZSIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMC42MjE3MTQgLTIuMTU0NjcgMjMxLjU5OSkiIHJ5PSIwIiByeD0iMCIvPjxyZWN0IHg9Ii02LjQ2NCIgeT0iLTIuMDkwIiBpZD0iZTFfcmVjdGFuZ2xlIiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyAiIHdpZHRoPSIzMCIgaGVpZ2h0PSIxNzMiIGZpbGw9IiNlNmUxMDAiIHJ5PSIwIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjAzMDYgLTIuMTU0NjcgMC44NTMwMDUpIiByeD0iMCIvPjxyZWN0IHg9Ii02LjQ2NCIgeT0iMzQzLjEzNyIgc3R5bGU9IiIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0ZGMDAxRSIgaWQ9ImUzX3JlY3RhbmdsZSIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMi40OTY1NiAtMi4xNTQ2NyAtNTc0LjI2NykiIHJ5PSIwIiByeD0iMCIvPjxyZWN0IHg9Ii04LjYxOCIgeT0iODI4Ljk4NSIgc3R5bGU9InZlY3Rvci1lZmZlY3Q6IG5vbi1zY2FsaW5nLXN0cm9rZTsiIHdpZHRoPSIzMCIgaGVpZ2h0PSIxNzMiIGZpbGw9IiNCRUVGRUIiIGlkPSJlNV9yZWN0YW5nbGUiIHJ5PSIwIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjA2MTIgMCAtNjMuMDkxOCkiIHJ4PSIwIi8+PHJlY3QgeD0iLTYuNDY0IiB5PSI4ODguNjgyIiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0E1MEYxNCIgaWQ9ImUyX3JlY3RhbmdsZSIgcnk9IjAiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDAuNjA0ODU3IC0yLjE1NDY3IDE3My45OTkpIiByeD0iMCIvPjwvc3ZnPg==);
    background-repeat: no-repeat;
    background-size: contain;
}
*/

/* kontinuum modified: added to #wrap, no left pos */
#wrap:before {
    content: '';
    position: fixed;
    top: 2rem;
    bottom: 2rem;
    z-index: 1220;
    display: block;
    width: 1em;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9Ii0wLjAwMjY4NTI4IDAgMTQgMTAwMyIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pbllNaW4gbWVldCI+PHJlY3QgeD0iLTYuNDY0IiB5PSItOTAuOTI4IiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0M4MEEwRiIgaWQ9ImU0X3JlY3RhbmdsZSIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMC42MjE3MTQgLTIuMTU0NjcgMjMxLjU5OSkiIHJ5PSIwIiByeD0iMCIvPjxyZWN0IHg9Ii02LjQ2NCIgeT0iLTIuMDkwIiBpZD0iZTFfcmVjdGFuZ2xlIiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyAiIHdpZHRoPSIzMCIgaGVpZ2h0PSIxNzMiIGZpbGw9IiNlNmUxMDAiIHJ5PSIwIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjAzMDYgLTIuMTU0NjcgMC44NTMwMDUpIiByeD0iMCIvPjxyZWN0IHg9Ii02LjQ2NCIgeT0iMzQzLjEzNyIgc3R5bGU9IiIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0ZGMDAxRSIgaWQ9ImUzX3JlY3RhbmdsZSIgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMi40OTY1NiAtMi4xNTQ2NyAtNTc0LjI2NykiIHJ5PSIwIiByeD0iMCIvPjxyZWN0IHg9Ii04LjYxOCIgeT0iODI4Ljk4NSIgc3R5bGU9InZlY3Rvci1lZmZlY3Q6IG5vbi1zY2FsaW5nLXN0cm9rZTsiIHdpZHRoPSIzMCIgaGVpZ2h0PSIxNzMiIGZpbGw9IiNCRUVGRUIiIGlkPSJlNV9yZWN0YW5nbGUiIHJ5PSIwIiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAxLjA2MTIgMCAtNjMuMDkxOCkiIHJ4PSIwIi8+PHJlY3QgeD0iLTYuNDY0IiB5PSI4ODguNjgyIiBzdHlsZT0idmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlOyIgd2lkdGg9IjMwIiBoZWlnaHQ9IjE3MyIgZmlsbD0iI0E1MEYxNCIgaWQ9ImUyX3JlY3RhbmdsZSIgcnk9IjAiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDAuNjA0ODU3IC0yLjE1NDY3IDE3My45OTkpIiByeD0iMCIvPjwvc3ZnPg==);
    background-repeat: no-repeat;
    background-size: contain;
}

#wrap {
	width: 53.25em;
	margin: 0 auto;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	-webkit-box-shadow: 0 0 15px #858585;
	box-shadow: 0 0 15px #858585;
}

#main { position:relative; margin:0 3.21875em; }

/*
Ausnahmen f. Home
*/
#home #header { height: 7.5em; margin: 2em 0 0 0; }
#home #header .logo img { position: absolute; z-index:10; top: 2.25em; left: 0; width:24em; height:6.75em; }
#home #header .mainnav { width: 100%; position: absolute; z-index:0; top: 7.75em; right: 0; background: url(../img/common/mainnav_ul_bg.gif) repeat-x 0 0; }

/* jyquery cycle slideshow */
#home #bildbox { width:46.8125em; height:22.25em; }
#home #bildbox img { display:none; }
#home #bildbox img.first { display:block; }

/*
Content Pages
*/
#header { height: 4.5em; margin: 2em 0 0 0; }
#header .logo img { position: absolute; z-index:10; top: 1.25em; left: 0; width:15em; height:4.25em; }
#header .quicklinks { position: absolute; z-index:5; top: 2em; right: 0; font-size:.69em; }
#header .quicklinks a { color: #222; text-decoration: none; }
#header .quicklinks a:hover,
#header .quicklinks a.active { text-decoration: underline; }
#header .quicklinks span { font-size: 1.08em; font-weight:bold; letter-spacing:1px; text-transform:uppercase; color:#9c9c9c; }

#header .mainnav { width: 100%; position: absolute; z-index:0; top: 4.75em; right: 0; background: url(../img/common/mainnav_ul_bg.gif) repeat-x 0 0; }

#header .mainnav ul li.spacer {
	float: right;
	display:block;
	height:2em; /* 28 + 4px */
	margin: 0;
	padding: 0;
	background: #fff;
}

#header .mainnav ul li a {
	float: right;
	display:block;
	height:2.33em;
	margin: 0;
	padding: 0 .5em;
	background: url(../img/common/mainnav_li_bg_hogrefe.gif) 0 0;
	font-size: .75em;
	line-height: 1.5em;
	text-decoration: none;
	color: #222;
}

#header .mainnav ul li a:hover,
#header .mainnav ul li a.active {
	background-position: 0 28px;
	text-decoration: none;
	color: #222;
}

#bildbox { clear: both; border-bottom: 1px solid #858585; }
#bildbox img { margin:.5em 0; }

/* 2col content */
.content {
	font-family: 'IBM Plex Sans', sans-serif;
	float: left;
	width: 31.25em;
}

.aside { float: right; width: 14.375em; }

/* titles top */
.content .title1row,
.aside .title1row {
	height:3.5em;
	margin:0 0 1.25em 0;
	padding: 1em 0 0 0;
	border-bottom:1px solid #858585;
	position: relative;
}

.content .title2row,
.aside .title2row {
	height:6em;
	margin:0 0 1.25em 0;
	padding: 1em 0 0 0;
	border-bottom:1px solid #858585;
	position: relative;
}

h1, h2, h3, h4 {
	font-family: 'IBM Plex Serif', serif;
}
.content h1 {
	font-size: 1.875em;
	line-height: 1.3em;
	font-weight: normal;
	font-style: italic;
	padding:0;
	margin:0;
}

.aside h2 {
	font-size: .8125em;
	line-height: 1.5em;
	text-transform:uppercase;
	font-weight: 600;
	padding:0;
	margin:0;
	position: absolute;
	bottom: .5em;
}

.aside .imagerow {
	height:4.5em;
	margin:0 0 .5em 0;
	padding: 0 0 0 0;
	border-bottom:1px solid #858585;
}

.aside .imagerow img { float:left; margin:.5em 0 0 0; }

/* content styles */
.content h2 {
	font-size: 1em;
	line-height: 1.35em;
	padding:0;
	margin:1.5em 0 .5em 0;
}

.content h3 {
	font-size: 1em;
	line-height: 1.35em;
	padding: .25em 0 0 0;
	margin:2em 0 .5em 0;
	border-top: 1px solid #858585;
}

.content h4 {
	font-size: 1em;
	line-height: 1.35em;
	padding: 0 0 .25em 0;
	margin:.75em 0 .5em 0;
	border-bottom: 1px dotted #858585;
}

.content p.lead {
	font-size: 1.25em;
	line-height: 1.25em;
	margin: 0 0 1.25em 0;
}

.content p.warning {
	font-size: .875em;
	line-height: 1.35em;
	margin: 0 0 1em 0;
	font-weight: bold;
	color: #cc0000;
}

.content p {
	font-size: .875em;
	line-height: 1.35em;
	margin: 0 0 1em 0;
}

.content ul {
	font-size: .875em;
	line-height: 1.35em;
	margin: 0 0 1em 0;
	padding: 0 0 0 1.5em;
}

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

.content ul.arrow li {
	background: url(../img/common/content_li_bg.gif) no-repeat 0 .3em;
	margin: .5em 0;
	padding: 0 0 0 1em;
}

/* links + buttons */
.content a { color:#222; font-style:italic; text-decoration:none; }
.content a:hover { color:#84880d; }

.content .bt {
	/*display: block;*/
	height:2.25em;
	margin:2em 1em 1em 0;
	padding:0 1em;
	background:#c9c9c9;
	/*font-family: 'IBM Plex Serif', serif;*/
	font-family: 'IBM Plex Sans', sans-serif;
	font-size: .875em;
	color:#01637D;
	text-transform: uppercase;
	font-style: normal;
	text-align: center;
	letter-spacing: 2px;
	border:none;
}

.content .bt:hover { background:#ccc; color: #3D732D; }

/* hr + table */
.content hr { clear:both; }
.content table { font-size: .875em; line-height: 1.35em; border:none; }
.content table table { font-size:1em; line-height: 1.35em; border:none; }

/* table bestellform */
.content table#bestellform { width:460px; margin:15px 0 20px 0; }
.content table#bestellform form { padding:15px; border:1px solid #ccc; }
.content table#bestellform td { padding:5px 10px 10px 0; }
.content table#bestellform td.warning { color: #cc0000; }

/* table preise */
.content table#rabatt { margin: 0 0 1em 0; }
.content table#rabatt td { padding:0 1.5em .25em 0; }
.content table#rabatt th { padding:0 1.5em .5em 0; text-align: left; font-weight: normal; vertical-align: bottom; }
.content table#rabatt th.preis,
.content table#rabatt td.preis { text-align: right; font-weight: bold; }

/* table fragen */
.content table#fragen { width:749px; }
.content table#fragen th { padding:.5em 0; text-transform:uppercase; }
.content table#fragen td { padding:.25em .15em; }

/* cols literaturhinweise */
.buch_img { float:left; width:9.75em; height:14.125em; margin:0 1em 1em 0; text-align:right; }

/* aside styles */
.aside p {
	font-family: 'IBM Plex Sans', sans-serif;
	font-size: .875em;
	line-height: 1.35em;
	margin: 0 0 .75em 0;
}

.aside .button_start { margin: 1.75em 0 0 0; }
.aside .button_start a { display: block; width:14.3125em; height:2.375em; background: url(../img/common/button_start_hogrefe.png) 0 0; }
.aside .button_start a:hover { background-position: 0 39px; }

.aside a { color:#222; font-style:italic; text-decoration:none; }
.aside a:hover { color:#84880d; }

.aside .subnav ul { background: #e5e5e5; margin:0; padding:0; list-style-type:none; }
.aside .subnav ul li a {
	display:block;
	font-size:.8125em;
	line-height:2em;
	color:#01637D;
	font-style: normal;
	border-bottom: 1px solid #fff;
	padding:0 .25em  0 1.6em;
	background: url(../img/common/subnav_li_bg.gif) 0 0;
}

.aside .subnav ul li a:hover { background-position: 0 -24px; color:#3D732D; }
.aside .subnav ul li a.active { background-position: 0 -48px; color:#3D732D; }

.aside .subnav li ol { margin: 0 0 0 2.5em; color:#3D732D; }

.aside .subnav li ol li {
	list-style-type: decimal;
	list-style-position: outside;
	font-size:.75em;
	line-height: 1em;
	padding:.25em;
}

.aside .subnav li ol li a {
	display: block;
	padding: 0 .25em 0 0;
	color:#3D732D;
	font-size: 1em;
	line-height: 1.2em;
	background: none;
	border-bottom: none;
}

.aside .subnav li ol li a:hover,
.aside .subnav li ol li a.active { color:#01637D; }

/* copyright + footer home */
#home .copy { clear:both; padding:3em 0 0 0; }
#home .copy div.meta { width: 46.8125em; margin: 0 auto; color: #667075; border-top: 1px solid #d1cbcb; text-align: left; }
#home .copy div.meta a { line-height:2em; font-size:.69em; color: #667075; text-decoration: none; }
#home .copy div.meta a:hover, #home .copy div.meta a.active { text-decoration: underline; }
#home .copy div.hogrefe_logo { border-top:none; text-align: right; padding:1.5em 0 0 0; }
#home .copy div.hogrefe_logo img { width:204px; height:50px; }

#home footer { display:none; }
#home #main { padding-bottom:2rem;}

/* copyright + footer content */
.copy { padding:1em 0 0 0; }
.copy div { width: 46.8125em; margin: 0 auto; color: #667075; border-top: 1px solid #d1cbcb; text-align: left; }
.copy div a { line-height:2em; font-size:.69em; color: #667075; text-decoration: none; }
.copy div a:hover, .copy div a.active { text-decoration: underline; }

/* container f. javascripts */
#js { display: none; }

/* conditional comments -> IE8 */
.lt-ie8 #header .mainnav ul li.spacer {
	float: right;
	display:block;
	height:2em; /* 28 + 4px */
	margin:0;
	padding:0;
}

.lt-ie8 #header .mainnav ul li { display:inline; }

.lt-ie8 #header .mainnav ul li a {
	float: right;
	display:block;
	height:2.33em;
	margin:0;
	padding:0 .5em;
	background: url(../img/common/mainnav_li_bg_hogrefe.gif) 0 0;
	font-size:.75em;
	line-height:1.5em;
	text-decoration:none;
	color:#222;
}

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; }
  a, a:visited { text-decoration: underline; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

.wartungshinweis { padding:2em; width: 40em; margin: 0 auto; color: #FB001A; border: 2px solid #FB001A; text-align: left; line-height:1.25em; font-size:1em; text-decoration: none; text-align: center; }
