/*   Y O U R   C S S   S T Y L E S
**
** Style all markdown content elements properly
** Use the markdown test file to check it: https://github.com/typemill/typemill/blob/master/content/00-Welcome/03-Markdown-Test.md
** You can activate and use the Tachyons CSS library: https://typemill.net/theme-developers/helper-functions#activate-tachyons
**
*/

/************************************
*  		STANDARD-ELEMENTS  			*
************************************/
html{}
body{}
header{}
footer{}
nav{}
main{}
aside{}
article{}
article a, article a:link, article a:visited{ text-decoration: underline; }
/* article a:before{ content: '\203A'; margin-right: 5px; } */
abbr{}
blockquote{
  margin: 1.5em 1.5em;
  padding: 0.5em 0;
  quotes: "\201C""\201D""\2018""\2019";
  font-style: italic;
}
blockquote:before{
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}
blockquote p {
  display: inline;
}
article pre, article code{
	font-family: monospace;
}
article pre{
	white-space: pre;
	padding: 0em;
	display: block;
	max-width: 100%;
	overflow-x: auto;
}
article code{
	font-size: 0.8em;
	line-height: 1.4em;
	padding: 0 0.5em;
	word-break: break-word;
}
pre > code{
	font-size: 0.8em;
	padding: 1em;
	display: inline-block;
}
pre > code.language-pagebreak{
	display: none;
}
dl{}
dt{}
dd{}
img{}
article h1, article h2, article h3, article h4, article h5, article h6{
	line-height: 1.15em;
	font-weight: 700; 
	line-height: 1em; 
}
h1,h2,h3,h4,h5,h6{ word-wrap: break-word; hyphens: auto; }
article h1{ font-size: 2.2em; margin: 1.4em 0 0.6em; z-index:1; }
article h2{ font-size: 1.6em; margin: 1.8em 0 0.6em; }
article h3{	font-size: 1.3em; margin: 1.6em 0 0.6em; }
article h4{	font-size: 1.1em; margin: 1.4em 0 0.6em; }
article h5{	font-size: 1em; margin: 1.2em 0 0.6em; }
article h6{	font-size: 1em; font-style: italic; font-weight:300; margin: 1em 0 0.6em; }
article .h1, article .h2, article .h3, article .h4, article .h5, article .h6{
	height: auto; /* fix for tachyons */
}
hr{
	border: none;
	border-top: 1px solid;
}
ol{}
footer ul{ padding-left:1em; }
li{}
sup{}
/* Make table look good */
.tm-table{
	overflow-x: auto;
}
table{
	width: 100%;
	border-collapse: collapse;
	font-size: .8em;
}
thead{
	text-align: left;
}
tr{
	border-top: 1px solid;
	border-bottom: 1px solid;
	margin-bottom: -1px;
}
th,td{
	padding: .5em 1em;
}
main b, main strong{
	font-weight: 600;
}

/************************************
*  		STANDARD SUGGESTIONS 		*
************************************/

/* Make links and buttons smooth */
.link, .link:active, .link:focus, .link:hover, .link:link, .link:visited{
	transition: none;
}
a, a:link, a:visited, a:focus, a:hover, a:active, button{
	transition: all .15s ease!important;
	transition-property: color, background-color, text-shadow, border;
}
article a:hover, article a:focus, article a:active,
footer a:hover, footer a:focus, footer a:active{ 
	text-decoration: none;
}

/* For definition list */
dt::after{
	content: ":";
}

/* Make images and image captions look good */
img, figure,figure img{
	max-width: 100%;
	height: auto;
	aspect-ratio: attr(width) / attr(height);
}
figure, video, audio{
	display: table;
	margin: 2em auto;
	padding: 0;
}
figure.right, figure.left {
    width: auto;
    float: none;
    margin: auto auto;
}
figure img{
	display: block;
	margin: auto;
}
figcaption{
	display: table-caption;
	caption-side: bottom;
	font-size: 0.8em;
	margin-top: .5em;
	line-height: 1.2em;
}
.footnotes ol{
	font-size: .8em;
	line-height: 1em;
	margin: 0 0 0 0;
}

/************************************
* 			TYPEMILL-ELEMENTS 		*
************************************/

ul.TOC,.TOC ul{
	list-style: none;
}
.TOC{
	padding: 1em;
	border: 1px solid;
}
.TOC{
	border-color: lightgray;
}
.TOC li{
	position: relative;
}
.TOC li a{
	text-decoration: none;
	display: inline-block;
	width: 100%;
	border-bottom: 1px dashed;
	line-height: 1em;
	margin: .3em 0;
}
.TOC li a:hover,.TOC li a:focus,.TOC li a:active{
	border-bottom: 1px solid;
}
.TOC li a:after{
	content: '\203A'; 
	position: absolute;
	right: 5px;
	transition: all .2s;
}
.TOC li a:hover:after{
	right: 0px;	
}
.notice1 {
    margin: 1em 0;
    padding: 10px 1em;
}
.notice2 {
    margin: 1em 0;
    padding: 10px 1em;
}
.notice3{
    margin: 1em 0;
    padding: 10px 1em;
    background-color: #d4e0ff;
    border-left: 4px solid #3c7bf6;	
}

/* used for pro content box */
.notice4{
  position: relative;
  text-align: center;
  padding: 1em;
  border: 1px solid;
}

/* Style the optional anchor-links for headlines */
a.tm-heading-anchor {
	display:  inline-block;
	margin-left:  -0.8em;
	width: 0.8em;
	font-weight: 300;
    opacity: 0;
    text-decoration: none;
    float: right;
}
a.tm-heading-anchor:hover,a.tm-heading-anchor:focus {
    opacity: 1;
    text-decoration: none;
}
h2:focus > .tm-heading-anchor, 
h2:hover > .tm-heading-anchor, 
h3:focus > .tm-heading-anchor, 
h3:hover > .tm-heading-anchor, 
h4:focus > .tm-heading-anchor, 
h4:hover > .tm-heading-anchor,
h5:focus > .tm-heading-anchor, 
h5:hover > .tm-heading-anchor,
h6:focus > .tm-heading-anchor, 
h6:hover > .tm-heading-anchor{
	opacity: .5;
	text-decoration: none;
}

/* style the typemill download-button for files */
a.tm-download{}
a.tm-download::before{
	content: "\2193";
  	-webkit-mask: url("data:image/svg+xml; utf8, <svg width='24' fill='currentColor' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M23 12c0-3.037-1.232-5.789-3.222-7.778s-4.741-3.222-7.778-3.222-5.789 1.232-7.778 3.222-3.222 4.741-3.222 7.778 1.232 5.789 3.222 7.778 4.741 3.222 7.778 3.222 5.789-1.232 7.778-3.222 3.222-4.741 3.222-7.778zM21 12c0 2.486-1.006 4.734-2.636 6.364s-3.878 2.636-6.364 2.636-4.734-1.006-6.364-2.636-2.636-3.878-2.636-6.364 1.006-4.734 2.636-6.364 3.878-2.636 6.364-2.636 4.734 1.006 6.364 2.636 2.636 3.878 2.636 6.364zM11 8v5.586l-2.293-2.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414l4 4c0.092 0.092 0.202 0.166 0.324 0.217 0.245 0.101 0.521 0.101 0.766 0 0.118-0.049 0.228-0.121 0.324-0.217l4-4c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-2.293 2.293v-5.586c0-0.552-0.448-1-1-1s-1 0.448-1 1z'></path></svg>") no-repeat 50% 50%;
  	mask: url("data:image/svg+xml; utf8, <svg width='24' fill='currentColor' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M23 12c0-3.037-1.232-5.789-3.222-7.778s-4.741-3.222-7.778-3.222-5.789 1.232-7.778 3.222-3.222 4.741-3.222 7.778 1.232 5.789 3.222 7.778 4.741 3.222 7.778 3.222 5.789-1.232 7.778-3.222 3.222-4.741 3.222-7.778zM21 12c0 2.486-1.006 4.734-2.636 6.364s-3.878 2.636-6.364 2.636-4.734-1.006-6.364-2.636-2.636-3.878-2.636-6.364 1.006-4.734 2.636-6.364 3.878-2.636 6.364-2.636 4.734 1.006 6.364 2.636 2.636 3.878 2.636 6.364zM11 8v5.586l-2.293-2.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414l4 4c0.092 0.092 0.202 0.166 0.324 0.217 0.245 0.101 0.521 0.101 0.766 0 0.118-0.049 0.228-0.121 0.324-0.217l4-4c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-2.293 2.293v-5.586c0-0.552-0.448-1-1-1s-1 0.448-1 1z'></path></svg>") no-repeat 50% 50%;
  	-webkit-mask-size: cover;
  	mask-size: cover;
	background-color: currentColor;	
	display: inline-block;
	margin-right: 5px;
	width:  24px;
	height: 24px;
	text-decoration: none;
	vertical-align: middle;
}
a.tm-download:hover::before{
	text-decoration: none;
}

/* Fake youtube button. Works with typemillutilities.js */
.video-container{
	position: relative;
	text-align: center;
}
img.youtube{
	position: relative;
	max-width: 560px;
}
button.play-video { 
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -50px;
	margin-left: -50px;
	height: 100px;
	width: 100px;
	background: #e0474c;
	color: #FFFFFF;
	border-radius: 50%;
	border: 0px;
	padding: 0;
	text-align: center;
}
button.play-video:hover {
	background: #cc4146;
	cursor: pointer;
}
button.play-video::after {
	position: absolute;
	top: 50%;
	margin: -20px 0 0 -15px;
	height: 0;
	width: 0;
	border-style: solid;
	border-width: 20px 0 20px 40px;
	border-color: transparent transparent transparent rgba(255, 255, 255, 0.75);
	content: ' ';
}

.landingpageinfo h2{
	font-size: 2.25rem;
}
.landingpageinfo h3{
	font-size: 1.5rem;
}
.landingpageinfo h4{
	font-size: 1.25rem;
}
.icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    stroke-width: 0;
    stroke: currentColor;
    fill: currentColor;
}
/************************************
* 		TACHYONS ADDITIONS 			*
************************************/

/* Keeps Footer at the bottom */
.body-footer-bottom { /* add this class to the body-tag */
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.footer-bottom { /* add this class to the footer-tag */
  margin-top: auto;
}
/* Nice set of system fonts, add this to the body-tag */
.sans-serif-tm { 
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; 
}
.sans-serif-title{
	font-family: arial,"Segoe UI",Roboto,-apple-system,BlinkMacSystemFont,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; 	
}
/* optimize text, add this to the body-tag */
.optimize-text{
    /* Adjust font size */
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    /* Font varient */
    font-variant-ligatures: none;
    -webkit-font-variant-ligatures: none;
    /* Smoothing */
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
	text-shadow: rgba(0, 0, 0, .01) 0 0 1px;
}
.grid-container{
	display: block;
}
.grid-header, .grid-main, .grid-sidebar{
	display: block;
	width: 100%;
}
.grid-footer{
  grid-column: 1 / -1;
}

.f-large{
	font-size: 4rem;
}
.h4-5{
	height: 12rem;	
}
.shadow-2-hover{
  transition: all 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);	
}
.shadow-2-hover:hover, .shadow-2-hover:focus{
	box-shadow:0px 0px 8px 2px rgba( 0, 0, 0, 0.2 );
}
.margin-bottom-1{
	margin-bottom: -1px;
}
.arrow-after:after{
	content: '\203A'; position: absolute; right:5px;
}
.arrow-after-transition:after{
	content: '\203A'; position: absolute; right:5px;
	transition: all .2s;
}
.arrow-after-transition:hover:after{
	right:0px;
}
.indent-l-1{ padding-left:1rem; }
.indent-l-2{ padding-left:2rem; }
.indent-l-3{ padding-left:3rem; }
.indent-l-4{ padding-left:4rem; }
.indent-l-5{ padding-left:4.5rem; }
.indent-l-6{ padding-left:5rem; }
.b--solid-hover:hover,.b--solid-hover:focus,.b--solid-hover:active{
	border-style: solid;
}
.flex-grow{
	flex-grow: 1;
}

/*************************
*  RESPONSIVE NAVIGATION *
*************************/

.contentnav{
	width: 70%;
	position: absolute;
	right: 0;
	top: 0;
}
.contentnav.collapse .folder > ul{
	display: none;
}
.contentnav .folder.active > ul,.contentnav .folder.activeParent > ul{
	display: block;
}
.burgerbutton{
	display: inline-block;
	font-size: 2em;
	width: 100%;
	text-align: right;
	padding: 2rem;
	box-sizing: border-box;
}
.burgerbutton, .menu{
    transition:all .2s ease;
}
.menu {
   	max-height: 0; /* hide menu completely when burger unchecked */
	margin: 0px;
	overflow:hidden;
	position: relative;
	z-index: 1;
	font-size: 1.3rem;
}
#burger:checked ~ .menu {
	max-height: 200%;
}

#burger:checked ~ .menu {
	background: #333;
}
.menu a{
	color: #fff;
}
#burger:checked ~ .burgerbutton {
	color: #fff;
	background: #333;
}

.logo-image{
	max-width: 200px;
}

@media screen and (min-width:30em){
	h1,h2,h3,h4,h5,h6{ hyphens: manual; }
}

@media (min-width: 40em) {
	figure.right {
	    width: auto;
	    float: right;
	    margin: 0 0 2em 2em;
	}
	figure.left {
	    width: auto;
	    float: left;
	    margin: 0 2em 2em 0;
	}
}

/**************
* 	Forms 	  *
**************/

form{
	width: 100%;
	max-width:  800px;
	border: none;
	margin: 20px 0 20px 0;
	padding: 0 0 0 0;
}
form fieldset{
	width: 100%;
	border: none;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
form label{
	width: 100%;
	display: block;
	color: #333;
	margin-top: 1.5em;
}
form input, form textarea{
	width: 100%;
	display: block;
	border: 1px solid #ddd;
	padding: 15px;
	margin: 0 0 20px 0;
	background: #f5f5f5;
}
form input:focus,form select:focus,form textarea:focus{
	outline: none;
	border: 1px solid rgba(229, 226, 211, 1);
	box-shadow: 0 0 2px #D73B00;;
}
form input[type="submit"],form button,form .button{
	cursor: pointer;
	font-size: 1em;
	border: 0;
	margin-top: 1.5em;
	width: 100%;
	padding: 15px;
}
form input[type="submit"]:hover,form button:hover,.button:hover{
	opacity: .8;
}


@media screen and (min-width:50em) {
	.grid-container{
		display: grid;
		grid-template-columns: 30% 70%;
		grid-column-gap: 1em;
		grid-template-rows: auto auto;
		grid-template-areas: 
		"gridHeader gridMain"
		"gridSidebar gridMain"
		". gridMain"
	}
	.grid-header{
		grid-area: gridHeader;
	}
	.grid-main{
		grid-area: gridMain;
	}
	.grid-sidebar{
		grid-area: gridSidebar;
	}

	.logo-image{
		max-width: 100%;
	}

	#burger:checked ~ .burgerbutton {
		color: inherit;
		background: inherit;
	}
	#burger:checked ~ .menu {
		background: inherit;
	}
	.menu a{
		color: inherit;
	}
	.contentnav{
		position: relative;
		width: auto;
	}
	.burgerbutton{
		display: none;
	}
	.menu{
		font-size: inherit;
		max-height: inherit;
	}
	a.tm-heading-anchor {
		float: left;
	}
}

@media print {
	#contentnav, nav, #bottompager,.widgetcontainer,.funcicons,.account,footer{
		display:  none;
	}
	.grid-main{
	    margin-top: -10px!important;
	    padding-top: 0px!important;
	}
	.logo-image{
		max-width: 150px;
	}	
	main{
		padding-bottom: 0!important;
	}
	aside{
		padding-top: 0!important;
		padding-bottom: 0!important;
	}
	main,footer{
		border:  0px!important;
	}
	footer .ph3
	{
		padding-top: 0;
		padding-bottom: 0;
	}
	body, .landingpagecontrast, .account, main, footer, .landingpageintro, .landingpageinfo, .landingpageteaser, .landingpagenavi, .landingpagenews, button.expander, .notice4{
		background: #fff!important;
		color:  black!important;
	}
	article{
		font-size: .8em;
	}
	article a[href]{
		color: black;
		text-decoration: underline;
	}
	article a[href]:after {
		content: " (" attr(href) ")";
	}
	nav .mw6{
		width:  100%;
	}
	a.tm-heading-anchor {
		display: none;
	}
}