@font-face {
    font-family: 'lato';
    src: url('../homepage-src/LatoLatin-Heavy.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'archivo';
    src: url('../homepage-src/Archivo-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'fervostyle';
    src: url('../homepage-src/fervostyle.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'ibmplex';
    src: url('../homepage-src/IBMPlexMono-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ibmplex-italic';
    src: url('../homepage-src/IBMPlexMono-Italic.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ibmplex-bold';
    src: url('../homepage-src/IBMPlexMono-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'ibmplex-semibold';
    src: url('../homepage-src/IBMPlexMono-SemiBold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}


body {
	font-family: 'ibmplex';
	font-size: 16px;
	background-color: #1a1a1a;
	background-image: url("data:image/svg+xml,%3Csvg width='42' height='44' viewBox='0 0 42 44' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Page-1' fill='none' fill-rule='evenodd'%3E%3Cg id='brick-wall' fill='%23303030' fill-opacity='0.4'%3E%3Cpath d='M0 0h42v44H0V0zm1 1h40v20H1V1zM0 23h20v20H0V23zm22 0h20v20H22V23z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	color: #CCCCCC;
	height: 100%;
	padding: 0;
	margin: 0;
}

div.container {
	max-width: 840px;
	margin-top: 0;
}

div.mainbody {
	background: #121212;
	border: 1px #313131;
	border-style: solid;
	box-shadow: 0px 0px 32px #1f1f1f;
	padding-bottom: 16px;
	margin-top: 64px;
}

div.header {
	width: calc(100% - 32px);
	padding: 16px;
	margin: 0;
}

div.content {
	background: #1e1e1e;
	padding: 8px;
	line-height: 1.5;
	border: 1px solid #3a3a3a;
	box-shadow: 2px 2px 8px #000000;
	margin: 16px;
	margin-top: 0;
}

div.content-title {
	border: 1px solid #3a3a3a;
	background: #1e1e1e;
	margin: 16px;
	margin-bottom: 0;
	padding: 8px;
}

div.marquee {
	display: inline-block;
	color:#ffff00; 
	text-shadow: 2px black; 
	white-space: nowrap;
	width: max-content;
	animation: scroll 15s linear infinite;
	
}

div.marquee-container {
  width: 100%;          /* Set desired width */
  overflow: hidden;      /* Hides text outside the box */
  position: relative;
}

@keyframes scroll {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}

.text-right {
	text-align: right;
}

b {
	font-family: 'ibmplex-semibold';
	font-weight: normal;
}

i {
	font-family: 'ibmplex-italic';
	font-weight: normal;
}

h1 {
	font-size: 36px;
	font-family: 'ibmplex-bold';
	margin: 0;
	padding: 0;
	line-height: 1;
	color: #4DA6FF;
}

h2 {
	display: inline;
	font-size: 20px;
	font-family: 'ibmplex-semibold';
	margin: 0;
	padding: 0;
	line-height: 1;
	color: #4DA6FF;
}

h3 {
	display: inline;
	font-size: 20px;
	font-family: 'ibmplex-semibold';
	margin: 0;
	margin-bottom: 8px;
	padding: 0;
	line-height: 1;
}

span.icon {
	color: #ffa64d;
}

span.listitem {
	margin-left: 32px;
}

hr {
	margin-bottom: 0.5em;
	margin-top: 0.5em;
	border-top: #BDBFC3 1px solid;
}

a {
	text-decoration: underline;
	color: #ccc;
}

a:hover {
	color: #ccc;
	text-decoration: none;
}

span.topic { 
	color: #cc7733;
	font-size: 18pt;
}

span.word { 
	text-decoration: underline;
	text-decoration-style: dotted; 
}

span.title { 
	font-size: 18pt;
}

span.list {
	display: block;
	margin-left: 48px;
	line-height: 1.25;
}

div.mono {
	background: #222;
	font-family: monospace;
	font-size: 12pt;
	border: 1px solid #444;
	padding: 2px;
	white-space: pre;
}

p.date { 
	color: #777;
	font-size: 8pt;
	line-height: 1.5;
	margin-bottom: 8px;
}

p.info {
	text-indent: 12.5%;
	margin-bottom: 0;
}

p.post {
	text-indent: 6.25%;
	margin-bottom: 1em;
	line-height: 1.5;
	text-align: justify;
	font-size: 16px;
}

p.small {
	font-size: 12px;
	line-height: 1;
	margin-bottom: 8px;
}

div.lang {
	font-size: 8pt; 
	text-align: right; 
	float: right;
}

table {
	border: 0;
}

table.contact td, th {
	padding: 0;
	border-bottom: 0px;
}


ul.tree, ul.tree ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-left: 16px;
} 
ul.tree ul {
	margin-left: 10px;
}

ul.tree li {
	margin: 0;
	padding: 0 7px;
	line-height: 20px;
	border-left: 2px solid #BDBFC3;
}
   
ul.tree li:last-child {
	border-left:none;
}

ul.tree li:before {
	position:relative;
	top:-0.3em;
	height:1em;
	width:12px;
	color:white;
	border-bottom:2px solid #BDBFC3;
	content:"";
	display:inline-block;
	left:-7px;
}
ul.tree li:last-child:before {
	border-left:2px solid #BDBFC3;   
}

img.icons {
	width: 24px;
	height: 24px;
	padding-right: 8px;
}

span.month { 
	color: #cccc33;
	font-size: 14pt;
	font-weight: bold;
}

span.title { 
	color: #cc7733;
	font-size: 18pt;
}

p.date { 
	color: #777;
	font-size: 8pt;
	line-height: 1.5;
	margin-bottom: 8px;
}

p.list {
	padding-left: 16px;
	line-height: 1;
	margin-bottom: 1em;
}

span.header > a {
	text-decoration: none;
	color: #cc7733;
}

a.list {
	text-decoration: none;
}

a.list:hover {
	text-decoration: underline;
}
