body {
    background-color: #fce2e2;
    background-image: url(./img/coqbackground.png);
    background-blend-mode: overlay;
    font-family: 'Victor Mono', monospace;
    padding: 0;
    margin: 0;
}

.container {
    display: grid;
    grid-gap: 0;
    grid-template:
        "nav header"
        "nav main"
        "nav footer"
        / 20% 80%;
}

header {
    grid-area: header;
    text-align: center;
    align-content: center;
    padding-top: 2rem;
}

header img {
    max-width: 60%;
    filter: drop-shadow(0 0 0.3rem #dd2b2b);
}

nav {
    grid-area: nav;
    background-color: #dd2b2b;
    background-image: linear-gradient(180deg, rgba(221, 43, 43, 1) 0%, rgba(221, 43, 43, 1) 30%, rgba(252, 226, 226, 1) 100%);
    background-blend-mode: overlay;
    text-align: center;
    padding: 1rem;
    font-size: 1.8em;
    font-weight: 700;
    font-style: italic;
    text-transform: lowercase;
    filter: drop-shadow(0 0 0.3rem #dd2b2b);
}

nav img {
    max-width: 100%;
    padding-top: 1rem;
}

nav ul {
    list-style: none;
    margin-top: 2.5rem;
    padding: 0;
    text-align: center;
}

nav li {
    padding-bottom: 1.8rem;
}

nav li a {
    padding: 0.5rem;
    background-color: #f3f0f0;
    border-right: 1.6rem solid #3e263c;
    color: #dd2b2b;
    text-decoration: none;
}

.slide {
    color: #dd2b2b;
    background-image: linear-gradient(90deg,
            #f3f0f0 0%,
            #f3f0f0 50%,
            #3e263c 50%,
            #3e263c 100%);
    background-size: 250%;
    transition: background-position .5s cubic-bezier(.50, .1, 1, .63),
        color .2s linear;
    transition-delay: 0.0s, 0.15s;
}

.slide:hover {
    color: #f3f0f0;
    background-position: 100%;
}

main {
    grid-area: main;
    margin: 0;
    padding: 0;
}

main .content {
    color: #3e263c;
    background-color: #f3f0f0;
    background-size: 20px 20px;
    background-image: repeating-linear-gradient(0deg, #f5b9b9, #f5b9b9 1px, #f3f0f0 1px, #f3f0f0);
    width: 90%;
    margin: 1.5rem auto;
    padding: 1rem;
    border: 12px solid;
    border-image: url('./img/coqborder.png') 16 repeat;
    background-clip: padding-box;
    filter: drop-shadow(0 0 0.3rem #dd2b2b);
}

main h1 {
    font-style: italic;
    font-size: 2rem;
    color: #dd2b2b;
    margin: 0;
    text-shadow: 0.1rem 0.1rem #3e263c;
}

main h1:before {
    content: url(./img/coqh.png);
    display: inline-block;
    padding-right: 0.5em;
    vertical-align: middle;
}

main h2 {
    font-style: italic;
    font-size: 1.6rem;
    color: #dd2b2b;
    margin: 0 0 0.8rem 0;
    text-indent: 1rem;
    text-decoration: underline wavy;
    letter-spacing: 0.2rem;
    text-shadow: 0.08rem 0.08rem #3e263c;
}

main h3 {
    font-style: italic;
    font-size: 1.2rem;
    color: #dd2b2b;
    text-indent: 0.5rem;
    margin: 0;
    text-shadow: 0.05rem 0.05rem #3e263c;
}

main h3:before {
    content: '✦ ';
    font-style: normal;
}

main b {
    font-weight: 700;
    color: #dd2b2b;
}

main a:not(:has(img)) {
    background-color: #dd2b2b;
    padding: 0.2rem;
    color: #f5b9b9;
    font-weight: bold;
    text-decoration: none;
}

main a:not(:has(img)):hover {
    background-color: #f3f0f0;
    color: #dd2b2b;
}

main a img {
    border: none;
    background: none;
    background-color: none;
}

main blockquote {
    width: 70%;
    background-color: #dd2b2b;
    background-image: url("./img/coqfooter.png");
    background-repeat: no-repeat;
    background-position: 98% 85%;
    color: #f3f0f0;
    border-right: 1.6rem solid #3e263c;
    margin: auto;
    padding: 1rem 0.5rem 0.5rem;
}

main blockquote b {
    color: #3e263c;
    font-style: italic;
}

main blockquote ul {
    list-style: none;
}

main blockquote li {
    padding-bottom: 0.5rem;
}

main summary {
    font-weight: 700;
    color:#dd2b2b;
    padding-left: 0.3rem;
    padding-bottom: 0.2rem;
}

main .eevee {
    width: 40%;
}

main .right {
    float: right;
    margin-top: -0.2rem;
}

main .link {
    color: #3e263c;
}

main .coq {
    font-weight: 700;
    font-style: italic;
    color: #dd2b2b;
}

main .email {
    background-color: #3e263c;
    padding: 0.2rem;
    color: #dd2b2b;
    font-weight: bold;
    line-height: 1.8rem;
}

main hr {
    width: 100%;
    display: block;
    border: 0px;
    width: 380px;
    height: 19px;
    background-image: url('./img/coqdivider.png');
}

main ul {
    list-style: lower-roman;
    margin: 0.5rem;
}

main ul li {
    color: #3e263c;
    margin: 0.8rem auto 0.8rem 1rem;
}

main .boxlist {
    background: #dd2b2b;
    color: #fce2e2;
    display: inline-block;
    font-size: 0.55rem;
    text-align: center;
    width: 10rem;
    padding: 1rem;
    margin: 1rem;
    border-radius: 0.5rem;
}

main .boxlist a:hover {
    background: none;
}

main .boxlist b {
    color: #3e263c;
    font-size: 0.9rem;
}

footer {
    grid-area: footer;
    padding: 0.5rem;
    margin: -1rem auto 0.5rem;
    font-size: 0.8rem;
    font-style: italic;
    line-height: 1.3rem;
    text-align: center;
}

footer a:not(:has(img)) {
    background-color: #dd2b2b;
    padding: 0.2rem;
    color: #f5b9b9;
    font-weight: bold;
    text-decoration: none;
}

footer a:not(:has(img)):hover {
    background-color: #f3f0f0;
    color: #dd2b2b;
}

footer a img {
    border: none;
    background: none;
    background-color: none;
}


@media only screen and (min-width:800px) {
    .container {
        max-width: 100%;
        max-height: 100%;
    }

    nav {
        position: fixed !important;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 18%;
    }

}


@media only screen and (max-width: 800px) {
    .container {
        max-width: fit-content;
        justify-content: center;
        align-content: center;
        grid-template:
            "nav"
            "header"
            "main"
            "footer";
    }

    header img {
        max-width: 90%;
    }

    nav {
        font-size: 0.8rem;
    }

    nav img {
        width: 60vw;
    }

    nav ul {
        text-align: center;
        margin-bottom: 0;
    }

    nav li {
        justify-content: center;
        display: inline-block;
    }

    main .content {
        width: 85%;
        font-size: 0.8rem;
        line-height: 1.3rem;
    }

    main a {
        padding: 0.1rem;
    }

    main h1 {
        font-size: 1.5rem;
        text-align: center;
        padding-bottom: 0.8rem;
    }

    main h1:before {
        content: none;
    }

    main h2 {
        font-size: 1.2rem;
        margin-bottom: 1.5rem;
    }

    main h3 {
        font-size: 1rem;
    }

    main blockquote {
        width: 70vw;
        background-image: none;
    }

    main blockquote ul {
        padding-left: 0.4rem;
    }

    main blockquote li {
        padding-bottom: 0.1rem;
    }

    main .eevee {
        width: 70%;
    }

    main .right {
        display: none;
    }

    main hr {
        width: 252px;
        background-image: url(./img/coqdividermob.png);
    }
}