body {
max-width: 800px;
width: 100%;
margin: auto;
position: relative;
padding: 2rem;
}
h1 {
font-size: 3rem;
text-align: right;
h2 {
font-size: 2rem;
margin: 0;
h3 {
font-size: 1.5rem;
line-height: 1.5rem;
font-weight: 800;
hr {
border: .1em solid black;
width: 25%;
margin-top: 2rem;
margin-bottom: 1rem;
nav {
li.homepage::marker {
content: '🏠';
li.email::marker {
content: '📧';
summary {
display: grid;
grid-template-columns: 2fr 1fr;
cursor: pointer;
summary::before {
content: '→';
position: absolute;
top: 0;
right: 100%;
height: 1.5rem;
padding-right: .5rem;
transition: 250ms;
details[open] summary::before {
transform: rotate(45deg);
summary>:first-child {
grid-column: 1;
text-align: left;
summary>:last-child {
grid-column: 2;
summary h3, summary p {
summary strong {
font-variant: small-caps;
font-weight: normal;
summary>* {
align-self: center;
details {
margin: 1em 0;
details .place, details .date {
font-style: italic;
font-size: .9rem;
details .place {
color: #8bc34a;
dl.ha > dt {
h3.skills {
margin-bottom: 0;
dl.skills {
grid-template-columns: 1fr 4fr;
dl.skills > dt {
dl.skills > dd {
dl.skills > * {