@import url("https://fonts.googleapis.com/css2?family=DM+Sans&family=DM+Serif+Display&family=DM+Serif+Text&display=swap");
@import url("https://use.fontawesome.com/releases/v5.13.0/css/all.css");

html {
    background-color: grey;
    margin: 15px;
}

body {
    font-family: "DM Sans", sans-serif;
    box-shadow: dimgray 5px 10px 10px;

    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;

    background-color: white;
    font-size: 11pt;

    width: 210mm;
    height: 297mm;
    margin: 0 auto;
    padding: 18mm;
    /*border: 18mm solid #fee;*/

    box-sizing: border-box;
}

@media print {
    html {
        background-color: transparent;
        margin: 0;
    }

    body {
        box-shadow: dimgray 5px 10px 10px;
    }
}

h1, h2, h3 {
    font-family: "DM Serif Text", serif;
    font-weight: normal;
}

h1 {
    font-family: "DM Serif Display", serif;
    font-size: 2.4em;
    letter-spacing: 3px;
    margin-bottom: -0.6em;
}

p {
    color: #777e8e;
}

a {
    text-decoration: none;
    color: inherit;
    transition: color 0.1s linear;
}

a:hover {
    color: darkorange;
}

time {
    font-size: 0.8em;
    color: lightslategray;
}

time:before {
    font-family: "Font Awesome 5 Free";
    content: "\f017";
    font-weight: 400;
    margin-right: 10px;
}

/****************************************/

header {
    width: 100%;
    display: flex;
    gap: 40px;
    align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid #dddddd;
}

header img {
    height: 170px;
    border-radius: 100%;
}

header h1 {
    margin-top: 0;
}

header p {
    font-family: "DM Serif Text", sans-serif;
    font-size: 1.3em;
    color: black;
}

header ul {
    font-size: 0.9em;
    color: gray;
    padding: 0;
    margin-bottom: 0;
    display: grid;
    grid-template-columns: auto auto;
    gap: 12px 16px;
}

header li {
    display: block;
    white-space: nowrap;
}

header .location {
    grid-column: span 2;
}

header i {
    width: 22px;
    text-align: center;
}

/****************************************/

h2 {
    font-size: 1.6em;
    margin-bottom: 0.7em;
}

h2:not(:first-child) {
    margin-top: 40px;
}

section {
    font-size: 0.9em;
}

section .entry {
    display: flex;
    flex-direction: column;
    gap: 0.4em;
    margin: 0.8em 0;
}

section .title {
    font-size: initial;
}

section .subtitle {
    margin-top: 0.4em;
}

section .info {
    color: #777e8e;
}

section ul {
    margin: 0;
    padding-left: 1em;
    max-width: 23em;
}

section li {
    margin-bottom: 0.1em;
}

/***************** LAYOUT ***********************/

main {
    width: calc(70% - 60px);
    padding-right: 30px;
    margin-right: 29px;
    border-right: 1px solid #dddddd;
}

aside {
    width: 30%;
}

main section:first-child .entry {
    margin: 2em 0;
}
