:root {
    --body-background: #260909;
    --body-foreground: #e6bebe;
    --body-accent: #ffffff;
    --interactive-default: #d14224;
    --interactive-hover: #d15238;
    --interactive-text: #ffffff;
}

* {
    box-sizing: border-box;
}

body {
    background-color: var(--body-background);
    color: var(--body-foreground);
    font-family: sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0.2em 0;
}

h1, h2, h3, h4, h5, h6, footer, .center {
    text-align: center;
}

h1, h2, h3, h4, h5, h6, b, strong, i {
    color: var(--body-accent);
}

a {
    color: var(--interactive-default);
}

a:hover, a:focus, a:active {
    color: var(--interactive-hover);
    text-shadow: 0 0 6px var(--interactive-hover);
}

hr {
    border: 1px dashed var(--interactive-default);

    margin: 3rem 0;
}

code {
    font-size: larger;
}

details {
    margin-block-start: 1em;
    margin-block-end: 1em;
}

summary {
    cursor: pointer;
    color: var(--interactive-default);
}

summary:hover, summary:focus, summary:active {
    color: var(--interactive-hover);
}

img {
    box-shadow: 2px 2px 0 black;
    border-radius: 4px;
}

p img {
    height: 1em;
    vertical-align: sub;
    box-shadow: none;
    border-radius: 100%;
}

.btn {
    padding: 8px;
    border-width: 2px;
    border-radius: 4px;

    border-style: outset;

    background-color: var(--interactive-default);
    border-color: var(--interactive-default);
    color: var(--interactive-text);
}

.btn:hover, .btn:focus, .btn:active {
    background-color: var(--interactive-hover);
    border-color: var(--interactive-hover);

    color: var(--interactive-text);
    box-shadow: 0 0 4px var(--interactive-hover);
}

.btn:active {
    border-style: inset;
}

a.btn {
    text-decoration-line: none;
}

.xs {
    font-size: small;
}

.xl {
    font-size: x-large;
}

.xxl {
    font-size: xx-large;
}

@media screen and (min-width: 600px) {
    .row {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 16px;
    }

    .row-group {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }
}


#site {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}

#icon {
    width: 64px;
    height: 64px;
    border-radius: 100%;

    margin-left: auto;
    margin-right: auto;

    display: block;
}