html {
    font: 24px MedievalSharp, cursive;
    width: 50vw;
    margin: auto;
}

article {
    display: grid;
    grid-gap: 1em;
    grid-template-columns: 1fr 1fr;
    max-width: 100%;
}

@media screen and (max-width: 600px) {
    article {
        grid-template-columns: 1fr;
    }
}

article img {
    max-width: 150px;
}

h1 {
    margin-bottom: 0;
}

h2 {
    margin-bottom: 0;
}

h2 + p {
    margin-top: 0.4em;
}

button {
    /* Some ancient looking button */
    background-color: #f4a460;
    border: none;
    color: white;
    padding: 15px 32px;
    font: inherit;
    cursor: pointer;
}

.flag {
    width: 600px;
    position: relative;
}

.flag img {
    width: 600px;
}

.flag-brute p {
    word-wrap: break-word;
    width: 220px;
    position: absolute;
    left: 215px;
    top: 110px;
    font-size: 0.5em;
    color: #ffff00;
    mix-blend-mode: difference;
    text-align: center;
}

.flag-caesar p {
    transform: rotate(15deg);
    word-wrap: break-word;
    width: 220px;
    position: absolute;
    left: 215px;
    top: 130px;
    color: #ffff00;
    mix-blend-mode: difference;
    text-align: center;
}

.error {
    background-color: rgba(255, 0, 0, 0.3);
    border: red;
    padding: 1em;
}

input {
    font: inherit;
}

.back {
    display: inline-block;
    margin-top: 1em;
    background-color: #f4a460;
    border: none;
    color: white;
    padding: 15px 32px;
    cursor: pointer;
    text-decoration: none;
}
