h1 {
    font-size: 2rem;
    text-shadow: .1rem .1rem .125rem #5c5c5c, 0 0 .1rem;
}

.projects { display: flex; align-items: center;}
.projects > * { padding: 20px; }

.image { flex: 1; max-width: 10rem; }
.image img { width: 100%; height: 100%; }
.caption { flex: 4; }

h2 { margin-top: 0; }
button {
    padding: 8px;
    padding-inline: 11px;
    color: inherit;
    font-family: inherit;
    border-radius: 5px;
    border: none;
    cursor: pointer;
}

.caption a { color: inherit; }
.hl:hover { color: #114488; }

.intro a { text-decoration: none; } /* WARNING: TASTY COLOUR */