@font-face {
  font-family: dcc-ash;
  src: url("/resources/free-fonts/DCC-Ash.otf") format("opentype");
}
/*
@font-face {
  font-family: binjay;
  src: url("/resources/free-fonts/Binjay-lgeV0.otf") format("opentype"),
  	   url("/resources/free-fonts/Binjay-nR5D0.ttf") format("truetype");
}
@font-face {
  font-family: calloveya;
  src: url("/resources/free-fonts/Calloveya.otf") format("opentype"),
  	   url("/resources/free-fonts/Calloveya.ttf") format("truetype");
}
@font-face {
  font-family: capture-it;
  src: url("/resources/free-fonts/Capture-it.ttf") format("truetype");
}
@font-face {
  font-family: cat;
  src: url("/resources/free-fonts/CAT_DyFa.ttf") format("truetype");
}
@font-face {
  font-family: crossed-out;
  src: url("/resources/free-fonts/CrossedOut-nR7A1.otf") format("opentype"),
  	   url("/resources/free-fonts/CrossedOut-1Gxje.ttf") format("truetype");
}
@font-face {
  font-family: exmouth;
  src: url("/resources/free-fonts/exmouth.ttf") format("truetype");
}
@font-face {
  font-family: freedom45;
  src: url("/resources/free-fonts/Freedom45.otf") format("opentype"),
  	   url("/resources/free-fonts/Freedom45.ttf") format("truetype");
}
@font-face {
  font-family: golden-ranger;
  src: url("/resources/free-fonts/GoldenRanger-2ZDd.ttf") format("truetype");
}
@font-face {
  font-family: hemihead;
  src: url("/resources/free-fonts/hemi-head-bd-it.otf") format("opentype");
}
@font-face {
  font-family: james-striker;
  src: url("/resources/free-fonts/James-Stroker.ttf") format("truetype");
}
@font-face {
  font-family: pakades;
  src: url("/resources/free-fonts/Pakades.otf") format("opentype"),
  	   url("/resources/free-fonts/Pakades.ttf") format("truetype");
}
@font-face {
  font-family: qumpellkano;
  src: url("/resources/free-fonts/Qumpellkano12-A6D2.otf") format("opentype");
}
@font-face {
  font-family: richie-brusher;
  src: url("/resources/free-fonts/RichieBrusher-l2yy.ttf") format("truetype");
}
@font-face {
  font-family: sanger-show;
  src: url("/resources/free-fonts/Sanger-Show.otf") format("opentype"),
  	   url("/resources/free-fonts/Sanger-Show.ttf") format("truetype");
}
@font-face {
  font-family: we-love-peace;
  src: url("/resources/free-fonts/We-Love-Peace.otf") format("opentype"),
  	   url("/resources/free-fonts/We-Love-Peace.ttf") format("truetype");
}
*/
.page-logo-text {
	font-family:"dcc-ash";
	color:white;
	font-size:100px;
	line-height:100px;
	vertical-align:baseline;
	display:inline-block;
	height:100px;
}

.page-logo-image {
	height:100px;
}
@media (max-width: 992px) {
	.page-logo-text {
		font-size:80px;
		line-height:80px;
		height:80px;
	}
	
	.page-logo-image {
		height:80px;
	}
}
@media (max-width: 768px) {
	.page-logo-text {
		font-size:60px;
		line-height:60px;
		height:60px;
	}
	
	.page-logo-image {
		height:60px;
	}
}
@media (max-width: 510px) {
	.page-logo-text {
		font-size:50px;
		line-height:50px;
		height:50px;
	}
	
	.page-logo-image {
		height:50px;
	}
}

@media (max-width: 410px) {
	.page-logo-text {
		font-size:40px;
		line-height:40px;
		height:40px;
	}
	
	.page-logo-image {
		height:40px;
	}
}



.link-goto-icon, .link-goto-icon-external, .link-goto-icon-construction {
	/*arrow*/
	/*
		background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktYXJyb3ctcmV0dXJuLXJpZ2h0IiB2aWV3Qm94PSIwIDAgMTYgMTYiPg0KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xLjUgMS41QS41LjUgMCAwIDAgMSAydjQuOGEyLjUgMi41IDAgMCAwIDIuNSAyLjVoOS43OTNsLTMuMzQ3IDMuMzQ2YS41LjUgMCAwIDAgLjcwOC43MDhsNC4yLTQuMmEuNS41IDAgMCAwIDAtLjcwOGwtNC00YS41LjUgMCAwIDAtLjcwOC43MDhMMTMuMjkzIDguM0gzLjVBMS41IDEuNSAwIDAgMSAyIDYuOFYyYS41LjUgMCAwIDAtLjUtLjUiLz4NCjwvc3ZnPg==');
	*/
	width:1em;
	height:1em;
	margin-bottom:.1em;
	display:inline-block;
	
	/*background-color:currentColor;*/
	background-position: 0 0.2em;
	background-repeat:no-repeat;
	background-size: 1em 1em;
	color:currentColor;
}

a:hover .link-goto-icon,
a:hover .link-goto-icon-external ,
a:hover .link-goto-icon-construction {
	color:currentColor;
}

.btn .link-goto-icon, .btn .link-goto-icon-external {	
	height: .8em;
	width: .8em;
}
.image-todo {
	background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0iYmkgYmktY29uZS1zdHJpcGVkIiB2aWV3Qm94PSIwIDAgMTYgMTYiPg0KICA8cGF0aCBkPSJtOS45NyA0Ljg4Ljk1MyAzLjgxMUMxMC4xNTkgOC44NzggOS4xNCA5IDggOWMtMS4xNCAwLTIuMTU4LS4xMjItMi45MjMtLjMwOUw2LjAzIDQuODhDNi42MzUgNC45NTcgNy4zIDUgOCA1czEuMzY1LS4wNDMgMS45Ny0uMTJtLS4yNDUtLjk3OEw4Ljk3Ljg4QzguNzE4LS4xMyA3LjI4Mi0uMTMgNy4wMy44OEw2LjI3NSAzLjlDNi44IDMuOTY1IDcuMzgyIDQgOCA0Yy42MTggMCAxLjItLjAzNiAxLjcyNS0uMDk4em00LjM5NiA4LjYxM2EuNS41IDAgMCAxIC4wMzcuOTZsLTYgMmEuNS41IDAgMCAxLS4zMTYgMGwtNi0yYS41LjUgMCAwIDEgLjAzNy0uOTZsMi4zOTEtLjU5OC41NjUtMi4yNTdjLjg2Mi4yMTIgMS45NjQuMzM5IDMuMTY1LjMzOXMyLjMwMy0uMTI3IDMuMTY1LS4zMzlsLjU2NSAyLjI1NyAyLjM5MS41OTgiLz4NCjwvc3ZnPg==');
	-color:grey;
	background-position: center center;
	background-repeat:no-repeat;
	min-width:200px;
	min-height:200px;
	background-size:80% 80%;
	width:100%;
}

.display-8 {
  font-size: calc(1.0rem + .8vw);
  font-weight: 200;
  line-height: 1.1;
}
@media (min-width: 1200px) {
  .display-8 {
    font-size: 1.7rem;
  }
}
.thumbnail-container {
	display:flex;
	align-items:center;
	align-content:flex-start;
}
.img-thumbnail{
	padding:0;
}
.thumbnail-citation{
	position:absolute;
	bottom:5px;
	right: 0;
	background-color:rgba(0,0,0,0.4);
	color:white;
	font-size:0.5rem;
	padding-right:calc(0.4em + 5px);
	padding-left:0.4em;
}
.img-citation{
	position:absolute;
	bottom:1rem;
	right: 1rem;
	background-color:rgba(0,0,0,0.4);
	color:white;
	font-size:0.5rem;
	padding-right:.4em;
	padding-reft:.4em;
	text-decoration:none;
}
.project-teaser-box {
	width:100%;
	text-align: center;
}
.project-teaser-box a, .no-text-decoration {
	text-decoration:none;
}
.project-teaser {
	position:relative;
	height:300px;
	width:auto;
	min-width:250px;
	display:inline-block;
	vertical-align: bottom;
	text-align: left;
	margin:5px;
	overflow:hidden;
}

@media (max-width: 992px) {
	.project-teaser {
		height:auto;
		width:450px;
	}
}
@media (max-width: 768px) {
	.project-teaser {
		height:auto;
		width:450px;
	}
}
@media (max-width: 576px) {
	.project-teaser {
		height:auto;
		width:95%;
	}
}

.project-teaser .thumbnail-citation {
	font-size:1rem;	
}

.project-teaser-description {
	position:absolute;
	width:100%;
	bottom:0;
	background-color:rgba(0,0,0,0.4);
	color:white;
}
.project-teaser .project-teaser-headline {
	display:block;
	font-size:2.3rem;
	width:100%;
	padding-left:1rem;
	padding-right:.5rem;
}
.project-teaser .project-teaser-shortdesc-container {
	display:block;
	overflow:hidden;
	font-size:1.5rem;
	width:100%;
	max-height:200px;
	transition: max-height .6s ease;
	transition-delay: 0s;
	padding-left:1.2rem;
	padding-right:.5rem;
	overflow-wrap: break-word;
	box-sizing:border-box;
	hyphens:auto;
}
.project-teaser:not(:hover) .project-teaser-shortdesc-container {
	max-height:0;
}
.project-teaser .project-teaser-shortdesc {
	padding-top:0.2rem;
	padding-bottom:.5rem;
	display:block;
	width:100%;	
}
.project-teaser img {
	max-height:100%;
	max-width:100%;
	object-fit:contain;
}

h2 a {
	text-decoration:none;
	color:currentColor;
}

.codeblock{
	font-family: monospace;
	display:block;
  	padding: 5px;
  	padding-left:20px;
  	background-color: #f1f1f1;
	color:#d63384;
}
.ci, .ci1, .ci2, .ci3, .ci4, .ci5 /*codeblock-indent*/ {
	width:2em;
	display:inline-block;
}
.ci2 /*codeblock-indent*/ {
	width:4em;
}
.ci3 /*codeblock-indent*/ {
	width:6em;
}
.ci4 /*codeblock-indent*/ {
	width:8em;
}
.ci5 /*codeblock-indent*/ {
	width:10em;
}
.chi, .chi1, .chi2, .chi3, .chi4, .chi5 {
	display:inline-block;
} 
.chi, .chi1 {
	padding-left:2em;
	text-indent:-2em;
}
.chi2 {
	padding-left:4em;
	text-indent:-4em;
}
.chi3 {
	padding-left:6em;
	text-indent:-6em;
}
.chi4 {
	padding-left:8em;
	text-indent:-8em;
}
.chi5 {
	padding-left:10em;
	text-indent:-10em;
}

kbd {
	font-family: monospace;
	padding-left: 5px;
	padding-right: 5px;
	border-color:#0a0a0a;
	background-color:#cccccc;
	color:#d63384;
}

.tagline {
	margin-top:.5rem;
	margin-bottom:.5rem;
	font-size:1.2em;
}

.hyauto {
	hyphens:auto;
	overflow-wrap: break-word;
}

.tab-content {
	padding: .5rem;
}
.tab-content.below-tabs {
	border-bottom: 1px solid #dee2e6;
	border-left: 1px solid #dee2e6;
	border-right: 1px solid #dee2e6;
}

@media (max-width: 768px) {
	main>.container>.justify-content-end:first-of-type {
		justify-content: flex-start !important;
	}
	main>.container>.justify-content-end {
		justify-content: center !important;
	}
	main>.container .main-content>.justify-content-end {
		justify-content: center !important;
	}
}

.btn-outline-theme{
	color: var(--theme-color);
	border-color: var(--theme-color);
}
.btn-outline-theme2{
	color: var(--theme-color2);
	border-color: var(--theme-color2);
}
.btn-outline-theme:hover{
	color: white;
	border-color: var(--theme-color);
	background-color: var(--theme-color);
}
.btn-outline-theme2:hover{
	color: white;
	border-color: var(--theme-color2);
	background-color: var(--theme-color2);
}
.btn-outline-theme.active, .btn-outline-theme:active, 
.btn-outline-theme.active.hover, .btn-outline-theme:active:hover, 
.btn-outline-theme.active:hover, .btn-outline-theme:active.hover{
	color: var(--theme-color-180);
	border-color: var(--theme-color-60);
	background-color: var(--theme-color-40);
}
.btn-outline-theme2.active, .btn-outline-theme2:active,
.btn-outline-theme2.active.hover, .btn-outline-theme2:active:hover,
.btn-outline-theme2.active:hover, .btn-outline-theme2:active.hover{
	color: var(--theme-color2-180);
	border-color: var(--theme-color2-60);
	background-color: var(--theme-color2-40);
}
.btn-theme{
	color: white;
	border-color: var(--theme-color);
	background-color: var(--theme-color);
}
.btn-theme2{
	color: white;
	border-color: var(--theme-color2);
	background-color: var(--theme-color2);
}
.btn-theme:hover{
	border-color: var(--theme-color-80);
	background-color: var(--theme-color-80);
}
.btn-theme2:hover{
	border-color: var(--theme-color2-120);
	background-color: var(--theme-color2-120);
}
.bg-theme {
	background-color: var(--theme-color) !important;	
}
.bg-theme2 {
	background-color: var(--theme-color) !important;	
}

a, .nav-link {
	color: var(--theme-color-120);	
}
a:hover, a.hover, .nav-link:hover, .nav-link.hover {
	color: var(--theme-color-150);	
}
.nav-link.active, .nav-link:active,.nav-link.active.hover, .nav-link:active:hover,.nav-link:active.hover, .nav-link.active:hover {
	color: var(--theme-color-200);		
}

.nav-tabs .nav-item:not(:first-of-type) .btn {
	border-top-left-radius:0;
	border-bottom-left-radius:0;
	border-left-width:0.5px;
}
.nav-tabs .nav-item:not(:last-of-type) .btn {
	border-top-right-radius:0;
	border-bottom-right-radius:0;
	border-right-width:0.5px;
}