:root {
    --primary-color: #eee;
    --roll-over: rgb(203, 169, 221);
    --line-color: #4a98d0;
}

* {
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}

a:link,
a:visited,
a:active {
    text-decoration: none;
    color: var(--primary-color);
}

a:hover {
    color: var(--roll-over);
}

.social {
    color: var(--primary-color);
}

.body {
    margin-top: 2%;
}

.header-bg {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
    background-color: var(--primary-color);
    box-shadow: 0 4px 8px rgb(0 0 0 / 30%);
    background: url('/site-images/bg2.jpg') no-repeat top center;
    background-position-y: -395px;
    background-size: cover;

    h1 {
        color: #fff;
        font-weight: bold;
        padding-top: 1%;
        padding-left: 1%;
    }

    h2 {
        color: #eee;
        font-size: 130%;
        padding-left: 1%;
        padding-bottom: 1%;
        font-style: italic;

        small {
            font-size: 60%;
        }
    }
}

.footer {
    padding: .5%;
    margin-top: 2%;
    color: #fff;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
    font-size: 90%;
    box-shadow: 0 -4px 8px rgb(0 0 0 / 30%);
    background-color: #050221ed;
    background: url('/site-images/bg2.jpg') no-repeat top center;
    background-position-y: -535px;
    background-size: cover;

    a:link,
    a:visited,
    a:active {
        color: #fff;
    }

    a:hover {
        color: #e2c49c
    }
}

.sidebar {
    h3 {
        padding-top: 22px;
        border-bottom-width: 3px;
        border-color: var(--line-color);
        border-bottom-style: solid;
    }

    .recent-posts h4 {
        /* font-size: 128%; */
        text-transform: uppercase;
        font-size: 100%;
        font-optical-sizing: auto;
        font-weight: bold;
        font-style: normal;
    }

    .recent-posts .date {
        font-size: 90%;
        border-bottom-width: 1px;
        border-color: var(--line-color);
        border-bottom-style: solid;
        padding-bottom: 16px;
    }

    .category {
        p {
            margin: 1% 0 1% 0;
        }

        .sub-entry {
            margin-left: 24px;
        }
    }
}

.article .card {
    margin-bottom: 5%;

    .go {
        margin-bottom: 0;
    }
}

.calendar-grid {
    table {
        width: 100%;

        th {
            text-align: center;
            font-size: 120%;
        }

        td {
            border: 1px solid #ddd;
            text-align: center;

            a:link,
            a:visited,
            a:active {
                text-decoration: none;
                font-weight: bold;
                color: var(--roll-over);
            }

            a:hover {
                color: var(--roll-over);
            }

            .today {
                color: var(--line-color);
            }
        }
    }
}