:root {
    color-scheme: light dark;
    font-family: 'CascadiaCode', Arial, Helvetica, sans-serif;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

p {
    font-size: 1.25rem;
}

h2 {
    margin:0
}

.header-content {
    background-image: linear-gradient(
            #DBF4FF,
            #8EAFED,
            #6495ED
    );
    max-width: 1fr;
    margin-top: 0;
    margin-bottom: 0;
}

.header-image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: auto;
    width: 50%;
    padding: 1rem;
}

.nav {
    background-color: black;
    height: auto;
    padding-left: 1.5em;
    border-top: 2px solid white;
    border-bottom: 2px solid white;
    position: sticky;
    top: 0;
    max-width: 1fr;
    margin: 0 auto;
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.nav-item {
    padding: .25rem 1rem;
}

.nav a {
    color: white;
    text-decoration: none;
    padding-right: 2rem;
    font-size: 1.5rem;
    font-weight: 500;
}

.nav a:link {
    color: white;
}

.nav a:visited {
    color: white;
}

.nav a:focus {
    color: hotpink;
    outline: thick double hotpink;
}

.nav a:hover {
    color: hotpink;
    text-decoration: underline overline;
}

.nav a:active {
    color: blue;
    outline: none;
}


body {
    font-family: 'CascadiaCode', Arial, Helvetica, sans-serif;
    font-size: 1.25rem;
    line-height: 1.5;
    margin: 0;
    background-color: light-dark(lightgray, gray);
    color: light-dark(black, #EFEFEC);
}

.content-box {
    max-width: 60rem;
    margin-inline: auto;
    background-color: light-dark(#EFEDEA, #121212);
}

.welcome {
    margin-inline: auto;
    padding-inline: 2rem;
    background-color: light-dark(#EFEDEA, #121212);
    max-width: 1fr;
    margin: 0 auto;
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.welcome-item {
    padding: 1rem;
}

.wrapper {
    max-width: 60rem;
    margin-inline: auto;
    padding-inline: 2rem;
    background-color: light-dark(#EFEDEA, #121212);
}

.site-header {
    font-size: 4rem;
    text-align: center;
    margin-top: 0;
}
.section-title {
    font-size: 2.5rem;
    margin-top: 0;
    margin-bottom: 0;
}

section {
    padding-block: 1rem;
}

a {
    text-decoration: underline;
    text-underline-offset: .25rem;
    font-weight: 500;
}

a:link {
    color: light-dark(#014982, lightskyblue);
}

a:visited {
    color: light-dark(#692B48, #D0D0FF);
}

a:focus {
    color: light-dark(#692B48, #EB90B7);
    outline: thick double light-dark(#692B48, #EB90B7);
}

a:hover {
    color: light-dark(#692B48, #EB90B7);
    text-decoration: underline;
}

a:active {
    color: light-dark(blue, white);
    outline: none;
}

.blog-post-title {
    font-size: 2.5rem;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: 0;
}

.blog-post-meta {
    font-size: 1rem;
    margin: 0;
    padding: 0;
    color: light-dark(black, #EFEFEC);
}

.dusk {
    background-image: linear-gradient(
            #12C2E9,
            #C471ED,
            #F64F59
    );
}

.sunset {
    background-image: linear-gradient(
            #1F214D,
            #50366F,
            #BF3475,
            #EE6C45,
            #FFCE61,
            #FFE58A
    );
}

.footer-item {
    padding: 1rem;
}

.footer-content {
    background-color: light-dark(ivory, #303030);
    max-width: 1fr;
    margin: 0 auto;
    display: grid;
    grid-gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.footer-image {
    display: block;
    margin-left: 5rem;
    height: auto;
    width: 30%;
    padding: 1rem;
}

.footer-image path {
    fill: white;
}

.content-image-scale {
    width: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

figcaption {
    font-size: .85rem;
    font-style: italic;
    line-height: 1;
    margin: 1px 0 0;
}



/* Pagination */
.pager {
    margin-bottom: 60px;
    text-align: left;
}
.pager > li > a {
    width: 140px;
    padding: 10px 20px;
    text-align: center;
    border-radius: 30px;
}


/*
 * Blog posts
 */

.blog-post {
    margin-bottom: 60px;
}

.search-button {
    background-color: white; /* Green */
    border: none;
    outline-color: transparent;
    color: black;
    padding: .20rem .5rem;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1rem;
    font-weight: 500;
    margin: auto;
    transition-duration: 0.4s;
    cursor: pointer;
    border-radius: 5px;
}

.search-button:hover {
    background-color: hotpink;
    color: white;
}

.search-field {
    background-color: white;
    color: black;
    margin: auto;
    height: 2rem;
    border-radius: 5px;
}