/*
	Name: Smashing HTML5
	Date: July 2009
	Description: Sample layout for HTML5 and CSS3 goodness.
	Version: 1.0
	License: MIT <https://opensource.org/licenses/MIT>
	Licensed by: Smashing Media GmbH <https://www.smashingmagazine.com/>
	Original author: Enrique Ramírez <http://enrique-ramirez.com/>
*/

/* Imports */
@import url("reset.css");
@import url("pygment.css");
@import url("typogrify.css");
@import url("fonts.css");

/***** Global *****/
/* Colors */
:root{ /* we could use the functions from https://una.im/css-color-theming/ to automatically derive the intermediate colors. */
	--strengthened-main-background: #fff;
	--strengthened-main-background-2: #f2f2f2;
	--main-background: hsl(216, 0%, 92%);
	--accented-main-background: hsl(131, 45%, 85%);
	--weakened-main-color: #444;
	--weakened-main-color-2: #333;
	--main-color: #111;
	--darkmode-button-background: hsla(0, 0%, 65%, 80%);
	--accent-color: hsl(153, 62%, 35%); /* #3AD08D */
	--target-highlight-color: rgba(255, 255, 73, 0.4);
}
@media screen{
	:root.dark{
		--strengthened-main-background: #222;
		--strengthened-main-background-2: #333;
		--main-background: hsl(216, 5%, 21%);
		--accented-main-background: hsl(131, 10%, 27%);
		--weakened-main-color: #C9C9C9;
		--weakened-main-color-2: #DADADA;
		--main-color: #F3F3F3;
		--darkmode-button-background: hsla(0, 0%, 65%, 85%);
		--accent-color: hsl(153, 52%, 45%);
		--target-highlight-color: rgba(105, 105, 0, 0.82);
	}
}

/* Body */
body {
	--content-max-width: 860px;
	--content-max-width-incl-tolerance: 865px;
	--content-padding: 25px;


	background: var(--main-background);
    color: var(--main-color);
    font-family: 'Alef', sans-serif;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    text-align: center;
}

/* Headings (alt) 
h1 {font-size: 1.75rem }
h2 {font-size: 1.479rem}
h3 {font-size: 1.25rem}
h4 {font-size: 1.125rem}
h5 {font-size: 1.0rem}
h6 {font-size: 0.875rem}	
*/


/* Headings (neuer Standard, in den Texten müssen die Überschriften verändert werden)
*/
h1 {font-size: 2.625rem }
h2 {font-size: 2.05rem}
h3 {font-size: 1.75rem}
h4 {font-size: 1.55em}
h5 {font-size: 1.10rem}
h6 {font-size: 1.02rem}


h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	line-height: 1.1;
	margin-bottom: .25em;
	margin-top: 0.3em;
}

h1, h2, h3, h4 {
    font-family: 'Yanone Kaffeesatz', arial, serif;
}

h5, h6 {
	font-family: 'Alef Bold', serif;
	margin-top: 0.7em;
	margin-bottom: 0.4em;
}

hr { border: 0.10em solid var(--accented-main-background); }

/* Anchors */
a {outline: 0;}
a img {border: 0px; text-decoration: none;}
a:link, a:visited {
	color: var(--accent-color);
	padding: 0 1px;
	text-decoration: underline;
}
a:hover, a:active {
	background-color: var(--accent-color);
	color: var(--strengthened-main-background);
	text-decoration: none;
	text-shadow: 1px 1px 1px var(--weakened-main-color-2);
}

banner a:hover h1, banner a:hover strong {
    background-color: inherit
}

/* Paragraphs */
div.line-block,
p { 
	margin-top: 1em;
    margin-bottom: 1em;
}

strong, b {
	font-weight: normal;
	font-family: 'Alef Bold';
}
em, i {font-style: italic;}

/* Lists */
ul {
	list-style: outside disc;
	margin: 0em 0 0 1.5em;
}

ol {
	list-style: outside decimal;
	margin: 0em 0 0 1.5em;
}

li { margin: 0.4em auto; }

ul.image-wrap {
	list-style: none;
	margin: 0 auto 0 auto;
	text-align: center;
}
.image-wrap > li {
	display: inline-block;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
.image-wrap a, a.image-link {
	display: inline-block;
	padding: 0;
}
.image-wrap a:hover > *, .image-wrap a:active > *, a.image-link:hover > *, a.image-link:active > *{
	opacity: 0.6;
}

ul.selbsthilfe-cards{
	margin: 1em;
	background: var(--main-background);
}
.selbsthilfe-cards > li{
    list-style: none;
	padding: 0.5em 1em;
	margin: 0;
}
.selbsthilfe-cards > li#selbsthilfe-head{
	background: var(--accent-color);
	color: var(--strengthened-main-background);
	border: none;
}

.selbsthilfe-cards > li > ul {
	margin: 0 0 0 0em;
}
.selbsthilfe-cards > li > ul > li{
	list-style: none;
	display: inline-block;
	width: 46%;
	margin: 0 0 0 1em;
	vertical-align: top;
}

.nowrap{
	white-space: nowrap;
}

.post-info {
    float: right;
    margin-left: 0.8em;
	margin-bottom: 0.2em;
    margin-top: -0.9em;
	max-width: 20em;
	padding: 0.7em 0.8em;
	font-family: 'Alef', 'sans-serif';
	font-size: 90%;
	color: var(--weakened-main-color);
	border: solid 0.15em var(--strengthened-main-background-2);
	background-color: var(--strengthened-main-background);
}

.post-info p{
    margin-top: 1px;
    margin-bottom: 1px;
}


dl {margin: 0 0 0.3em 0;}
dt {font-weight: bold;}
dd {margin-left: 1.5em;}

pre{background-color: var(--main-background); padding: 10px; margin: 10px; overflow: auto;}

/* Quotes */
blockquote {
    margin: 0.8em;
	background: var(--main-background);
	padding: 0.3em 0.7em;
	border-left: 3px solid var(--accent-color);
}
blockquote + h3, ul + h3, ul + h2{
	margin-top: 0.85em;
}
cite {}

q {}

div.note {
   float: right;
   margin:0.3em;
   font-size: 85%;
   max-width: 400px;
}

/* simple footnotes plugin */
sup a.simple-footnote:link, sup a.simple-footnote:visited{
	text-decoration: none;
	font-family: 'Alef Bold';
}
.simple-footnotes ::marker{
	color: var(--accent-color);
	font-family: 'Alef Bold';
}
.simple-footnotes{
	font-size: 90%;
	margin-top: 1.5em;
}

/* highlight targeted ids */
:target {
	background-color: var(--target-highlight-color);
}

h3 sup{
	font-size: 53%;
}

h3 sup a.simple-footnote:link, h3 sup a.simple-footnote:visited{
	font-family: 'Alef';
}

/* Tables */
table {margin: .5em auto 1.5em auto; width: 98%;}

	/* Thead */
	thead th {padding: .5em .4em; text-align: left;}
	thead td {}

	/* Tbody */
	tbody td {padding: .5em .4em;}
	tbody th {}

	tbody .alt td {}
	tbody .alt th {}

	/* Tfoot */
	tfoot th {}
	tfoot td {}

/* HTML5 tags */
header, section, footer,
aside, nav, article, figure {
	display: block;
	text-align: left;
}

/* Buttons */
button{
	color: var(--strengthened-main-background);
	background: var(--main-color);
	border-radius: 0.2em;
	border: none;
	cursor: pointer;
}

/* Big button: display a link as a big button. */
.big-button{
	text-align: center;
}
.big-button a{
	color: var(--strengthened-main-background);
	background: var(--accent-color); 
	
	display: inline-block;
	margin: auto;
	border-radius: 0.6em;
	padding: 1em 2em;
	text-shadow: none !important;
	text-decoration: none;
}

/***** Layout *****/
.body {clear: both; margin: 0 auto;}

/* Images, Figures */
#content .body img, #content.body img, #content .body video, #content.body video{
	max-width: 100%;
	max-height: 23em;
	display: block;
}
#content .body img, #content.body img{
	margin: 0 auto;
}
figure{
	margin: 1em auto;
	display: inline-block;
	border: solid 0.45em var(--main-background);
	background: var(--main-background);
}

#content img.right, figure.right, div.figure.align-right, #content video.right {
    float: right;
    margin: 0 0 2em 2em;
	max-width: 40%;
}
#content img.left, figure.left, div.figure.align-left, #content video.left {
    float: left;
    margin: 0 2em 2em 0;
	max-width: 40%;
}

figcaption{
	padding-top: 0.2em;
	line-height: 1.2;
	font-size: 90%;
}
figcaption.credit{
	float: right;
}
/*
embedded video
***************/
div.embedded-video{
	max-width: 40.89em; /* gives 16/9 ratio at 23em height.*/
	margin: 1em auto;
}
.embedded-video div{
	position: relative;
	padding-bottom: 56.25%; /* 16/9 ratio. [The percentage is proportional to the width of the parent element.]*/
	width: 100%;
}
.embedded-video iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*
Dark-Theme Toggle 
*****************/
div.dark-theme-toggle{
	position: absolute;
	top: 0.5em;
	right: 0.5em;
}
.dark-theme-toggle button{
	font-size: 133%;
	background-color: var(--darkmode-button-background);
	width: 2.2em;
	height: 2.2em;
	border-radius: 50%;
}
.dark .dark-theme-button,.light .light-theme-button{
	display: none;
}


/*
	Header
*****************/
#banner {
	margin: 0 auto;
	padding: 0;
	text-align: center;
}

	/* Sitename */
	a:link#sitename, a:visited#sitename{
		color: var(--main-color);
		display: block;
		font-weight: bold;
		padding: .6em 1.5625em .6em 1.5625em;
		margin: 1.6625rem auto 0 auto;
		text-decoration: none;
		max-width: var(--content-max-width);
		text-align: left;
	}
	a:hover#sitename, a:active#sitename {
		background: var(--strengthened-main-background);
		color: var(--accent-color);
		text-shadow: none;
	}
	#sitename img {height: 4.42rem; margin-right: 0.35rem;}
	#sitename div {display: inline-block;}
	#sitename h1, #sitename h3 {margin: initial;}
	#sitename h1 {font-size: 3.125rem;}
	#sitename h3 {font-size: 1.45rem;}

	/* Main Nav */
	#banner nav {
		background: var(--accent-color);
		font-size: 1.045rem;
		font-family: 'Alef Bold', 'sans-serif';
		line-height: 1.9;
		padding: 0;
		text-align: center;
	}

	#banner nav ul {
		list-style: none; 
		margin: 0 auto;
	}
	#banner nav li {
		display: inline-block; 
		margin: 0;
	}

	#banner nav a:link, #banner nav a:visited {
		color: var(--strengthened-main-background);
		display: inline-block;
		height: 30px;
		padding: 0.3em 1.5em;
		text-decoration: none;
	}
	#banner nav a:hover, #banner nav a:active,
	#banner nav .active a:link, #banner nav .active a:visited,
	.big-button a:hover, .big-button a:active {
		background: var(--weakened-main-color-2);
		color: var(--strengthened-main-background);
		text-shadow: none !important;
	}

/*
	News banner
********************/

.news_banner{
	padding:  1.2em var(--content-padding);
	max-width: var(--content-max-width);
	text-align: left;
	background-color: var(--accent-color);
	color: var(--strengthened-main-background);
	margin: 0 auto;
	margin-top: 1.05rem;
}
.news_banner a:link, .news_banner a:visited {
	color: var(--strengthened-main-background);
}
.news_banner h5{
	/*display: inline;*/
	/*margin: 0em;*/
}
.news_banner img{
	float: left;
	max-height: 6em;
	max-width: 40%;
    margin: 0 1em 1em 0;
}
.news_banner.with_image{
	min-height: 6em;
}

/*
	Featured
*****************/
#featured {
	margin-bottom: 0.8em;
}

/*
	Body
*****************/
#content {
	margin-top: 1.05rem;
}

#content > *{
	max-width: var(--content-max-width);
	padding: var(--content-padding);
}

#content .body, #content.body {
	background: var(--strengthened-main-background);
	overflow: hidden;
}

#content_title {
	text-align: left;
	margin: 0 auto;
	padding-bottom: 0.1em;
	padding-top: 0.1em;
}

div.bannerpic {
	text-align: center;
	margin: 0 auto;

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;

	/* Für breites Banner:
	background-size: cover;
	background-position: center center;
	*/
}
.bannerpic img{
	visibility: hidden;
	max-width: 100%;
	max-height: 23.625rem;
	min-height: 30vh;
}

/*
	Extras
*****************/
#extras {
	margin: 0 auto 3em auto;
	padding: 0 var(--content-padding);
	max-width: var(--content-max-width-incl-tolerance);
	font-family: 'Alef', 'sans-serif';
}

#extras ul {list-style: none; margin: 0;}
#extras li {
	border-bottom: 1px solid var(--strengthened-main-background);
	margin: 0;
}
#extras h3 {
	color: var(--accent-color);
	margin-bottom: .25em;
	padding: 0 3px;
}

#extras a:link, #extras a:visited {
	color: var(--weakened-main-color);
	display: block;
	border-bottom: 1px solid var(--accented-main-background);
	text-decoration: none;
	padding: .3em .25em;
}

#extras a:hover, #extras a:active {color: var(--strengthened-main-background);}

	/* Blogroll */
	#extras .blogroll {
		max-width: 625px;
		margin-top: 2em;
		display: inline-block;
		vertical-align: top;
	}

	#extras .blogroll li {
		margin: 0 20px 0 0;
		display: inline-block;
	}

	#extras .blogroll a {
		width: 180px;
	}
	@media (min-width: 450px) {
		/* Double width columns */
		#extras .blogroll li a[href*='twitter.com'] {
			width: calc(2*180px + 8px + 20px);
		}
	}

	/* Social */
	#extras .social {
		width: 235px;
		margin-top: 2em;
		display: inline-block;
		vertical-align: top;
	}

	#extras .social a[href*='mailto:'], .blogroll a[href*='feeds']  {
		background-repeat: no-repeat;
		background-position: 3px center;
		padding-left: 25px !important;
		background-size: 1em auto;
	}
	#extras .blogroll a[href*='feeds']  {
		width: calc(180px - 25px + 4px);
	}

		/* Icons */
		/*.social a[href*='about.me'] {background-image: url('../images/icons/aboutme.png');}
		.social a[href*='bitbucket.org'] {background-image: url('../images/icons/bitbucket.png');}
		.social a[href*='delicious.com'] {background-image: url('../images/icons/delicious.png');}
		.social a[href*='facebook.com'] {background-image: url('../images/icons/facebook.png');}
		.social a[href*='gitorious.org'] {background-image: url('../images/icons/gitorious.png');}
		.social a[href*='github.com'],
		.social a[href*='git.io'] {
			background-image: url('../images/icons/github.png');
			background-size: 16px 16px;
		}
		.social a[href*='gittip.com'] {background-image: url('../images/icons/gittip.png');}
		.social a[href*='plus.google.com'] {background-image: url('../images/icons/google-plus.png');}
		.social a[href*='groups.google.com'] {background-image: url('../images/icons/google-groups.png');}
		.social a[href*='news.ycombinator.com'],
		.social a[href*='hackernewsers.com'] {background-image: url('../images/icons/hackernews.png');}
		.social a[href*='last.fm'], .social a[href*='lastfm.'] {background-image: url('../images/icons/lastfm.png');}
		.social a[href*='linkedin.com'] {background-image: url('../images/icons/linkedin.png');}
		.social a[href*='reddit.com'] {background-image: url('../images/icons/reddit.png');}
		.social a[href*='slideshare.net'] {background-image: url('../images/icons/slideshare.png');}
		.social a[href*='speakerdeck.com'] {background-image: url('../images/icons/speakerdeck.png');}
		.social a[href*='stackoverflow.com'] {background-image: url('../images/icons/stackoverflow.png');}
		.social a[href*='twitter.com'] {background-image: url('../images/icons/twitter.png');}
		.social a[href*='vimeo.com'] {background-image: url('../images/icons/vimeo.png');}
		.social a[href*='youtube.com'] {background-image: url('../images/icons/youtube.png');}*/
		.social a[href*='mailto:'] {background-image: url('../images/email.svg');}
		
		.blogroll a[href*='feeds'] {background-image: url('../images/Feed-icon.svg');}

/*
	About
*****************/
#about {
	background: var(--strengthened-main-background);
	font-style: normal;
	margin-bottom: 2em;
	overflow: hidden;
	padding: 25px;
	text-align: left;
	width: 760px;

	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}

#about .primary {float: left; width: 165px;}
#about .primary strong {color: var(--accent-color); display: block; font-size: 1.286em;}
#about .photo {float: left; margin:0.3em 20px;}

#about .url:link, #about .url:visited {text-decoration: none;}

#about .bio {float: right; width: 500px;}

/*
	Footer
*****************/
#copyright {
	padding: 0 2em;
	text-align: right;
	max-width: 870px;
	font-size: 90%;
	margin-bottom: 2em;
}
#copyright p{
	margin: 0.4em 0;
}

/***** Sections *****/
/* Blog */
.hentry {
	display: block;
	clear: both;
	border-top: 0.2em solid var(--accented-main-background);
	padding: 1.5em 0;
}
li:first-child .hentry, #content > .hentry {border: 0; margin: 0;}
#content > .hentry {padding: 1em 0;}
.hentry img{display : none ;}
.entry-title {font-size: 2.625rem; margin-bottom: 0.25em; margin-top: 0;}
.entry-title a:link, .entry-title a:visited {text-decoration: none; color: var(--main-color);}
.entry-title a:visited {background-color: var(--strengthened-main-background);}

.hentry .post-info * {font-style: normal;}

	/* Content */
	.hentry footer address {display: inline;}
	#posts-list footer address {display: block;}

	/* Blog Index */
	#posts-list {list-style: none; margin: 0;}
	#posts-list .hentry {padding-left: 10px; position: relative;}

	/* About the Author */
	#about-author {
		background: var(--strengthened-main-background);
		clear: both;
		font-style: normal;
		margin: 2em 0;
		padding: 10px 20px 15px 20px;

		border-radius:0.3em;
		-moz-border-radius:0.3em;
		-webkit-border-radius:0.3em;
	}

	#about-author strong {
		color: var(--accent-color);
		clear: both;
		display: block;
		font-size: 1.429em;
	}

	#about-author .photo {border: 1px solid #ddd; float: left; margin:0.3em 1em 0 0;}

	/* Comments */
	#comments-list {list-style: none; margin: 0 1em;}
	#comments-list blockquote {
		background: #f8f8f8;
		clear: both;
		font-style: normal;
		margin: 0;
		padding: 15px 20px;

		border-radius:0.3em;
		-moz-border-radius:0.3em;
		-webkit-border-radius:0.3em;
	}
	#comments-list footer {color: #888; padding: .5em 1em 0 0; text-align: right;}

	#comments-list li:nth-child(2n) blockquote {background: #F5f5f5;}

	/* Add a Comment */
	#add-comment label {clear: left; float: left; text-align: left; width: 150px;}
	#add-comment input[type='text'],
	#add-comment input[type='email'],
	#add-comment input[type='url'] {float: left; width: 200px;}

	#add-comment textarea {float: left; height: 150px; width: 495px;}

	#add-comment p.req {clear: both; margin: 0 .5em 1em 0; text-align: right;}

	#add-comment input[type='submit'] {float: right; margin: 0 .5em;}
	#add-comment * {margin-bottom: .5em;}


/*
Media Queries
*************/

@media screen and (min-width: 920px) {
	div.dark-theme-toggle {
		position: fixed;
	}

	#content .body, #content.body, .news_banner {
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border: solid 1.5px var(--accented-main-background);
	}
	
	#featured {
		margin-bottom: 1.5em;
	}
	a:link#sitename, a:visited#sitename {
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
	}

	.image-wrap > li {
		margin-left: 0.6em;
		margin-right: 0.6em;
	}
	
	.image-wrap img{
		max-width: 29em !important;
	}
}
@media (max-width: 670px) {
	#sitename div {
		display: block;
	}
	a:link#sitename, a:visited#sitename{
		text-align: center;
	}
	#sitename img {
		height: 6rem;
	}

	#content img.right, figure.right, div.figure.align-right, #content video.right {
		margin: 0 0 1em 1em;
		max-width: 50%;
	}
	#content img.left, figure.left, div.figure.align-left, #content video.left {
		margin: 0 1em 1em 0;
		max-width: 50%;
	}

	.selbsthilfe-cards > li > ul {
		margin: 0 0 0 1em;
	}
	.selbsthilfe-cards > li > ul > li {
		display: list-item;
		width: auto;
		list-style: initial;
		margin: 0.3em 0;
	}
	.post-info{
		max-width: none;
		float: none;
	}

}
@media print {
	body {
		background: none;
	}
	html {
		font-size: 94%;
	}
	a:link#sitename, a:visited#sitename {
		background: var(--main-background);
		padding: 1.3em 1.5625em;
		margin-top: 0cm;
	}

	#content .body, #content.body {
		padding-top: 0cm;
		padding-bottom: 0cm;
	}

	.dark-theme-toggle, .bannerpic, nav, #extras, #copyright {
		display: none;
	}

	img, figure{
		page-break-inside: avoid;
	}
}