/*=================================== Custom fonts ===================================*/

/*=================================== Initialization & General ===================================*/

/*=================================== Site-specific Framework & Snippets ===================================*/

/*Site-specific grids, widths & heights*/

/*Site-specific paddings*/
.p-05i { padding:0.5rem !important; }
/*Site-specific margins*/
.mr-0i { margin-right:0 !important; }
.inlineBlock { margin-top:-0.1rem; }
.paragraphs p { margin-bottom:1rem; }

/*Site-specific framework: Backgrounds*/
.bg-black { background-color:#000; }
.bg-grey { background-color:#fcfcfc; }
.bg-red { background-color:#ee2a45; }
.bg-turquoise,  .bg-default, div.source:hover > span, table tr:hover { background-color:#8cffc4; }
.bg-yellow { background-color:#ffe000; }
.bg-white, div.source { background-color:#fff; }
.bg-whiteTransparent { background-color:#ffffff8a; }

/*Site-specific framework: Borders*/
.border.black { border:1px solid #000; }
.border.black.dashed { border:1px dashed #000; }
.border.black.strong { border:0.16rem solid #000; }
.border.black.strong.dashed { border:0.16rem dashed #000; }
.leftBorder.black { border-left:1px solid #000; }
.rightBorder.black { border-right:1px solid #000; }
.rightBorder.black.strong.dashed { border-right:0.16rem dashed #000; }
.topBorder.black { border-top:1px solid #000; }
.topBorder.black.strong { border-top:0.16rem solid #000; }
.topBorder.black.dashed { border-top:1px dashed #000; }
.topBorder.black.strong.dashed { border-top:0.16rem dashed #000; }
.topBorder.white.strong.dashed { border-top:0.16rem dashed #fff; }
.bottomBorder.black { border-bottom:1px solid #000; }
.bottomBorder.black.strong { border-bottom:0.16rem solid #000; }
.bottomBorder.black.strong.dashed { border-bottom:0.16rem dashed #000; }
.roundedCorners { border-radius:0.5rem; }
.roundedTopCorners { border-top-left-radius:0.5rem; border-top-right-radius:0.5rem; }
.roundedCorners.tag, input.roundedCorners { border-radius:0.5rem; }

/*Site-specific framework: Cursors, buttons & icons*/
button.continue { padding-right:4rem; background-image:url(/assets/images/icon-next.svg); background-repeat:no-repeat; background-position:right 1rem center; background-size:2rem; }
button.next { width:2rem; height:2rem; background-image:url(/assets/images/icon-next.svg); background-repeat:no-repeat; background-position:left center; background-size:contain; }
button.previous { width:2rem; height:2rem; background-image:url(/assets/images/icon-previous.svg); background-repeat:no-repeat; background-position:left center; background-size:contain; }
button.next.large { width:4rem; height:4rem; }
button.previous.large { width:4rem; height:4rem; }
button.strong, .tag.strong { box-shadow:0.25rem 0 0 #000, 0 0 0 #000, 0 0 0 #000, 0 0 0 #000; }
button.text:hover, .tag:not(.sort):hover, input:hover, input:focus { box-shadow:0.25rem 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000; }
.tag.sort { background-image:url(/assets/images/icon-sort.svg); background-repeat:no-repeat; background-position:1rem center; background-size:1.2rem; padding-left:3rem; }

/*Snippets*/
.blueWhiteScrollbar::-webkit-scrollbar-track { border:none; border-radius:0.25rem; background-color:##8b93c3; }
.blueWhiteScrollbar::-webkit-scrollbar { width:0.5rem; background-color:none; }
.blueWhiteScrollbar::-webkit-scrollbar-thumb { border-radius:0.25rem; background-color:#001282; }
div.shadow { box-shadow: 0.25rem 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000 }
table { border-collapse:collapse; }
ul { padding:1rem 2rem; }

/*=================================== Templates ===================================*/

body::-webkit-scrollbar { display: none; } /* Hide scrollbar for Chrome, Safari and Opera */
body { -ms-overflow-style: none; scrollbar-width: none; } /* Hide scrollbar for IE, Edge and Firefox */
body { background-image:url(/assets/images/background-main-01.svg); background-repeat:repeat; background-size:11rem; }

.wrapper { width:100%; max-width:1440px; transition:0.25s all ease }

.dataset { transition:0.25s all ease; position:relative; }
.dataset:hover { height:22rem; }
.dataset .colorBar { width:0; position:absolute; top:0; left:0; transition:1s all ease; }
.dataset:hover .colorBar { width:100%; }
.dataset:hover .hidden { display:inherit; }

.news .next, .news .previous { top:47%; }

/*=================================== Texts ===================================*/

/*Default types*/
nav * { font:400 1.5rem/1.5rem "zeitung", sans-serif; }
span, table { font:400 1.2rem/1.9rem "dico-code-one", monospace; letter-spacing:-0.035rem; }
span.main { font:400 1.3rem/1.8rem "courier-std", monospace; letter-spacing:-0.035rem; }
span.small { font:400 1rem/1.6rem "dico-code-one", monospace; letter-spacing:-0.035rem; }
span.large { font:400 1.5rem/1.8rem "dico-code-one", monospace; letter-spacing:-0.035rem; }
span.tag, input, button.text { font:400 1.3rem/1.3rem "zeitung", sans-serif; }
h1 { font:700 4rem/7rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h2 { font:700 2.4rem/7rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h2.large { font:700 10rem/10rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h3 { font:700 3rem/3.6rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h3.small { font:700 1.3rem/2rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h3.large { font:700 3.4rem/4.2rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
h4 { font:700 1.7rem/2.2rem "zeitung", sans-serif; letter-spacing:-0.05rem; }

/*Type colors*/
.black, .black a, a.black { color:#000; }
.white, .white a, a.white { color:#fff; }
.yellow, .yellow a, a.yellow { color:#ffe000; }
.default, .default a, .default { color:#8cffc4; }

/*Type styles*/
.italic { font-style:italic !important; }
.uppercase, span.data { text-transform:uppercase; }
.strong, .bold { font-weight:bold !important; }
.strikethrough, button.publication { text-decoration:line-through; }
.outline { text-shadow:0.25rem 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000; }

/*Link styles*/
a { text-decoration:none; }
span.alwaysUnderline a:link, span.alwaysUnderline a:visited, span.alwaysUnderline a:hover, span.alwaysUnderline a:active, span.hoverUnderline a:hover, a.hoverUnderline:hover, a.alwaysUnderline { font-weight:700; border-bottom:1px dashed #8cffc4; }
span.large.alwaysUnderline a:link, span.large.alwaysUnderline a:visited, span.large.alwaysUnderline a:hover, span.large.alwaysUnderline a:active, span.large.hoverUnderline a:hover { font-weight:700; border-bottom:1px solid #000; }

/*=================================== Supersize Styles ===================================*/

@media all and (min-width:1440px) {
	/*=================================== Site-specific Framework & Snippets ===================================*/

	/*Site-specific paddings*/
	.p-05i { padding:calc(0.5 / 100 * var(--maxWidth)) !important; }
	/*Site-specific margins*/
	.inlineBlock { margin-top:calc(-0.1 / 100 * var(--maxWidth)); }
	.paragraphs p { margin-bottom:calc(1 / 100 * var(--maxWidth)); }  

	/*Site-specific framework: Borders*/
	.border.black.strong { border:calc(0.16 / 100 * var(--maxWidth)) solid #000; }
	.border.black.strong.dashed { border:calc(0.16 / 100 * var(--maxWidth)) dashed #000; }
	.rightBorder.black.strong.dashed { border-right:calc(0.16 / 100 * var(--maxWidth)) dashed #000; }
	.topBorder.black.strong { border-top:calc(0.16 / 100 * var(--maxWidth)) solid #000; }
	.topBorder.black.strong.dashed { border-top:calc(0.16 / 100 * var(--maxWidth)) dashed #000; }
	.topBorder.white.strong.dashed { border-top:calc(0.16 / 100 * var(--maxWidth)) dashed #fff; }
	.bottomBorder.black { border-bottom:calc(0.16 / 100 * var(--maxWidth)) solid #000; }
	.bottomBorder.black.strong.dashed { border-bottom:calc(0.16 / 100 * var(--maxWidth)) dashed #000; }
	.roundedCorners { border-radius:calc(0.5 / 100 * var(--maxWidth)); }
	.roundedTopCorners { border-top-left-radius:calc(0.5 / 100 * var(--maxWidth)); border-top-right-radius:calc(0.5 / 100 * var(--maxWidth)); }
	.roundedCorners.tag, input.roundedCorners { border-radius:calc(0.5 / 100 * var(--maxWidth)); }

	/*Site-specific framework: Cursors, buttons & icons*/
	button.continue { padding-right:calc(4 / 100 * var(--maxWidth)); background-position:right calc(1 / 100 * var(--maxWidth)) center; background-size:calc(2 / 100 * var(--maxWidth)); }
	button.next { width:calc(2 / 100 * var(--maxWidth)); height:calc(2 / 100 * var(--maxWidth)); }
	button.previous { width:calc(2 / 100 * var(--maxWidth)); height:calc(2 / 100 * var(--maxWidth)); }
	button.next.large { width:calc(4 / 100 * var(--maxWidth)); height:calc(4 / 100 * var(--maxWidth)); }
	button.previous.large { width:calc(4 / 100 * var(--maxWidth)); height:calc(4 / 100 * var(--maxWidth)); }
	button.strong, .tag.strong { box-shadow:0.25calc( / 100 * var(--maxWidth)) 0 0 #000, 0 0 0 #000, 0 0 0 #000, 0 0 0 #000; }
	button.text:hover, .tag:not(.sort):hover, input:hover, input:focus { box-shadow:0.25calc( / 100 * var(--maxWidth)) 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000; }
	.tag.sort { background-position:1calc( / 100 * var(--maxWidth)) center; background-size:1.2calc( / 100 * var(--maxWidth)); padding-left:3calc( / 100 * var(--maxWidth)); }

	/*Snippets*/
	.blueWhiteScrollbar::-webkit-scrollbar-track { border-radius:calc(0.25 / 100 * var(--maxWidth)); }
	.blueWhiteScrollbar::-webkit-scrollbar { width:calc(0.5 / 100 * var(--maxWidth)); }
	.blueWhiteScrollbar::-webkit-scrollbar-thumb { border-radius:calc(0.25 / 100 * var(--maxWidth)); }
	div.shadow { box-shadow: calc(0.25 / 100 * var(--maxWidth)) 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000 }
	ul { padding:calc(1 / 100 * var(--maxWidth)) calc(2 / 100 * var(--maxWidth)); }

	/*=================================== Templates ===================================*/

	body { background-size:calc(11 / 100 * var(--maxWidth)); }

	.dataset:hover { height:calc(22 / 100 * var(--maxWidth)); }

	/*=================================== Templates ===================================*/

	/*body {background-size:144px; }

	.dataset:hover { height:288px; }*/

	/*=================================== Texts ===================================*/

	/*Default types*/
	nav * { font:400 calc(1.5 / 100 * var(--maxWidth))/calc(1.5 / 100 * var(--maxWidth)) "zeitung", sans-serif; }
	span { font:400 calc(1.2 / 100 * var(--maxWidth))/calc(1.9 / 100 * var(--maxWidth)) "dico-code-one", monospace; letter-spacing:calc(-0.035 / 100 * var(--maxWidth)); }
	span.main { font:400 calc(1.3 / 100 * var(--maxWidth))/calc(1.8 / 100 * var(--maxWidth)) "courier-std", monospace; letter-spacing:calc(-0.035 / 100 * var(--maxWidth)); }
	span.small { font:400 calc(1 / 100 * var(--maxWidth))/calc(1.6 / 100 * var(--maxWidth)) "dico-code-one", monospace; letter-spacing:calc(-0.035 / 100 * var(--maxWidth)); }
	span.large { font:400 calc(1.5 / 100 * var(--maxWidth))/calc(1.8 / 100 * var(--maxWidth)) "dico-code-one", monospace; letter-spacing:calc(-0.035 / 100 * var(--maxWidth)); }
	span.tag, input, button.text { font:400 calc(1.3 / 100 * var(--maxWidth))/calc(1.3 / 100 * var(--maxWidth)) "zeitung", sans-serif; }
	h1 { font:700 calc(4 / 100 * var(--maxWidth))/calc(7 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h2 { font:700 calc(2.4 / 100 * var(--maxWidth))/calc(7 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h2.large { font:700 calc(10 / 100 * var(--maxWidth))/calc(10 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h3 { font:700 calc(3 / 100 * var(--maxWidth))/calc(3.6 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h3.small { font:700 calc(1.3 / 100 * var(--maxWidth))/calc(2 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h3.large { font:700 calc(3.4 / 100 * var(--maxWidth))/calc(4.2 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }
	h4 { font:700 calc(1.7 / 100 * var(--maxWidth))/calc(2.2 / 100 * var(--maxWidth)) "zeitung", sans-serif; letter-spacing:calc(-0.05 / 100 * var(--maxWidth)); }

	/*Type styles*/
	.outline { text-shadow:calc(0.25 / 100 * var(--maxWidth)) 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000; }
}

/*=================================== Mobile Styles ===================================*/

@media all and (max-width:600px) {
	/*=================================== Templates ===================================*/

	body.mt-10 { margin-right:0; }

	footer .w-15 { width:100%; padding:1rem 0; }
	footer .w-20, footer .w-30, footer .w-50 { width:100%; padding:2rem; }
	footer .mt-10 { margin-top:4rem; }

	section .wrapper, footer .wrapper { padding:2rem; }

	section.news .h-40 { height:auto; padding-bottom:6rem; }
	section.news .px-10 { padding:2rem; }
	section.news .doubleColumns { column-count:1; }
	section.news .next, section.news .previous { top:auto; bottom:-3.5rem; z-index:200; }
	section.news .date { margin:1rem 0; flex-grow:0; }
	section.news .read { width:100%; left:0; bottom:-4rem; z-index:100; position:absolute; }

	section.library .headline, section.library .datasets { margin-top:4rem; }
	section.library .w-60, section.library .w-25 { width:100%; }
	section.library .h-11 { padding:0; height:auto; }
	section.library div.h-11 { padding:2rem 0; }
	section.library .floatLeft, section.library .floatRight { display:block; }
	section.library .colorBar { display:none; }

	section.contact .wrapper div { width:100%; margin:0; padding:2rem 0; display:block; }
	section.contact .wrapper div div { width:100%; margin:2rem 0; padding:2rem; display:block; }

	.widget .wrapper.inlineFlex { display:inline-block; }
	.widget .w-60p, .widget .w-40p, .widget .w-30p { width:100%; padding:0; }
	.widget .sources { padding-top:2rem; }
	.widget .sources .source { float:right; }
	.widget canvas.p-2 { padding:1rem; }

	/*=================================== Texts ===================================*/

	/*Default types*/
	nav * { font:400 1.3rem/1.3rem "zeitung", sans-serif; }
	h1 { font:700 3.4rem/4rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
	h2 { font:700 2rem/2.6rem "zeitung", sans-serif; letter-spacing:-0.05rem; padding-bottom:1.5rem; }
	h2.large { font:700 6rem/6rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
	h3 { font:700 2.4rem/3rem "zeitung", sans-serif; letter-spacing:-0.05rem; }
}