@font-face {

	font-family: "Computer Modern";

	src: url('../fonts/cmunss-subset.woff2') format('woff2');

}



@font-face {

	font-family: "Computer Modern";

	src: url('../fonts/cmunsx-subset.woff2') format('woff2');

	font-weight: bold;


}



@font-face {

	font-family: "Computer Modern";

	src: url('../fonts/cmunsi-subset.woff2') format('woff2');

	font-style: italic;

}





body {

	font-family: "Computer Modern";

	min-width: 670px;

	text-align: left;

	width: 660px;

	margin: 4% auto 4% auto;

	line-height: 1.3em;

}



p {

	margin-bottom: 0.7em;

	margin-top: 0;

}


.small-text {
    
    font-size: 80%; 
    line-height: 80%;
}

.logo-list {
    
    display: flex;
    align-items: center;  
    gap: 0.6em;
    margin-top: 0.2em;
    margin-left: 0.05em;
    
}


/* Pictures */

img {

	width: 11.25em;

}



.circle {

	border-radius: 50%;

}



.side-picture {

	float: right;

	margin-left: 0.8em;

	margin-bottom: 0.3em;
	
	margin-top: -0.5em;
	
	padding: 0em;

}


.small {
    
    width: 9em;
    
}

.logo {
    
    opacity: 0.7;

}

.logo:hover {
    
    opacity:0.5 !important;
    
}

.mini {
    
    vertical-align: middle; 
    height: 0.9em;
    width: auto;

}

.front-page-logo {
    
    width: 1.2em;
    
}


/* Headings */

h1 {

	font-weight: bold;

	font-size: 32px;

	margin-bottom: 0.5em;

	line-height: 100%;

}



h2 {

	line-height: 120%;
	
	font-size: 22px;


}


.presentation h3 {
  margin: 0;             
  font-size: 1rem;
}

.presentation p {
  margin: 0;             
}


.subheading {

	font-size: 70%;
	
	display: block;
	
	margin-bottom: -0.5em;
	
	line-height: 100%;


}



.contact {

	font-weight: normal;

	font-size: 100%;

	margin-bottom: 0.2em;

}





/* Links */

a {

	text-decoration: none;

	color: #0066cc;

}

.title {
    
    /*font-weight: bold;*/
    
}

.name {
    
    white-space: nowrap;
    color: black;
    
}

.unbreakable {
    
  white-space: nowrap;
  
}


.rainbow {

	background: linear-gradient(to right, #FF0018, #FFA52C, #FFFF41, #008018, #0000F9, #86007D);

	-webkit-background-clip: text;

	-webkit-text-fill-color: transparent;

}



.active {

	font-weight: bold;

}



a:hover {

	text-decoration: underline;

}



.dotted:hover {

	text-decoration: underline dotted;

}





/* Lists */

ol {

	padding-left: 1.8em;

}

ol li::marker {
    
    font-weight: bold; 
    font-size: 90%;  
    
}


ul {

	padding-left: 1.8em;

}



li {

	margin-bottom: 0.7em;
	
}

ul li {

	list-style: square;

}




/* Header and navigation */

header {

	display: block;

}



nav {

	margin-bottom: 5%;

}



nav ul {

	text-align: right;

}



nav li {

	display: inline-block;

	padding-right: 2%;

}



nav a {

	color: #566573;

}



nav a:hover {

	color: #ABB2B9;

	text-decoration: none;

}





/* For narrow screens */

@media screen and (max-width: 660px) {

	body {

		min-width: 90%;

		width: 90%;

		margin-top:1.2em;

	}
	
	main {
	    
	    margin-top: -1.5em;
	    
	}



	header {

		margin-bottom: 15%;

	}



	img {

		width: 40%;

	}
	
	.side-picture {
	    
	    margin-top: 0em;
	    
	}



	#portrait {

		margin-top: 0;

	}



	h2 {

		font-size: 140%;

		margin-bottom: 0.5em;

	}



	nav {

		font-size: 85%;

	}

}