@import url('https://fonts.googleapis.com/css2?family=Gloria+Hallelujah&family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap');

*, html{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    background: url('assets/background.png') repeat;
    font: normal 1em/155% 'Gloria Hallelujah';
    color: #3e2a1a;
}

::selection {
    background: #ffefe1;
    color: #3e2a1a;
}

::-moz-selection {
    background: #ffefe1;
    color: #3e2a1a;
}

::-webkit-selection{
    background: #ffefe1;
    color: #3e2a1a;
}

container{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 70em;
    margin: 5vh auto;
    gap: 5%;
    position: relative;
}

nav{
    flex: 27%;
    width: 27%;
    font: normal 2em 'Urbanist', sans-serif;
    text-transform: lowercase;
    letter-spacing: 2px;
    position: fixed;
    bottom: 0;
    z-index: 1000;
    padding: 1em;
    float: left;
    left: 10%;
    text-align: center;
}

h1{
    font: normal 1em/100% 'Gloria Hallelujah';
    color: #3e2a1a;
    text-shadow: 2px 2px 0 #f9f1ea;
}

nav ul{
    list-style-type: none;
    text-align: right;
}

nav ul li{
    margin: 0.25em 0;
}

nav ul li:first-child{
    margin: 1em 0;
}

nav ul li:first-child a:link, nav ul li:first-child a:visited{
    background: none;
    border-top: none;
}

nav ul li:first-child img{
    width: 7.5em;
    height: auto;
}

nav ul li a:link, nav ul li a:visited{
    display: block;
    background: #6c5441;
    color: #efdac8;
    text-decoration: none;
    border-top: 5px solid #d5c0ae;
}

nav ul li a:hover, nav ul li a:active{
    border-top: 5px solid #3e2a1a;
    background: none;
    color: #3e2a1a;
}

nav h6{
    margin: 15% auto 5vh;
    font: normal 0.4em 'Gloria Hallelujah';
    display: block;
    transform: rotate(-5deg);
    background: #3e2a1a;
        color: #efdac8;
        width: fit-content;
        padding: 0 1em;
}

main{
    position: absolute;
    right: 0;
    flex: 60%;
    max-width: 60%;
}

section{
    margin: 2em auto 3em;
    padding: 2em 0;
}

section:first-child, section:nth-child(2){
    padding: 0;
}

.photostrip{
    width: 100%;
    display: flex;
    background: #fff;
    justify-content: center;
    align-items: center;
    padding: 1em;
    transform: rotate(-5deg);
    margin: 0 auto 7em;
}

.photostrip img{
    height: 180px;
    width: auto;
    max-width: 140px;
    filter: sepia(0.5);
}

.photostrip img:hover{
    filter: grayscale(0);
}

.photo{
    flex: 25%;
    max-width: 25%;
    text-align: center;
}

#info .blurb{
    background: #fff;
    transform: rotate(5deg);
    padding: 1em;
    margin-top: -1em;
}

#memories ul{
    padding: 0;
    list-style-type: none;
}

#memories ul li{
    margin: 1.5em 0;
    padding: 1em;
    background: #fff;
    color: #3e2a1a;
    border-left: 5px solid #91735a;
    box-shadow: 5px 5px 0 #635447;
}

h2{
    text-align: center;
    font: normal 2.5em 'Urbanist', sans-serif;
    text-transform: uppercase;
    color: #482e19;
    transform: rotate(-5deg);
    letter-spacing: 5px;
    box-shadow: inset 0 -20px 0 #ffefe1;
    width: fit-content;
    margin: 0 auto 0.5em;
}

.blurb h2{
    margin: -1em 0;
    font: normal 3em 'Gloria Hallelujah';
    text-align: right;
    text-transform: lowercase;
    color: #75573e;
    width: auto;
    box-shadow: none;
}

.blurb{
    font-size: 1.1em;
}

.blurb p{
    padding: 0.25em 0;
}

.item{
    margin-bottom: 1em;
}

.item p{
    background: #91735a;
    color: #fff;
    text-align: center;
    margin-top: 10px;
    text-shadow: 2px 2px 0 #635447;
}

#art .gallery .item img{
    height: 200px;
    width: auto;
    max-width: 100%;
}

strong{
    text-transform: uppercase;
    font: normal 1em 'Urbanist', sans-serif;
    letter-spacing: 2px;
    font-weight: bold;
    color: #75573e;
    background: #f9f1ea;
}

em{
    font: italic 1em 'Urbanist', sans-serif;
    color: #ad6428;
    letter-spacing: 1px;
}

star{
    font-size: 1.2em;
    color: #ad6428;
}

.blurb, .photostrip{
    box-shadow: 5px 5px 0 #635447;
}

.gallery{
    display: flex;
    flex-direction: unset;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

.gallery img{
    height: 200px;
    max-width: 160px;
    width: auto;
    background: #fff;
}

#photo-gallery img{
    background: #fff;
    padding: 10px;
    box-shadow: 5px 5px 0 #635447;
}

#art img{
    border: 5px solid #91735a;
}

#art img:hover{
    border: 5px solid #3e2a1a;
}

#art img:hover, nav img:hover, .photostrip img:hover{
    cursor: pointer;
}

#art img:hover, nav img:hover{
    filter: sepia(0.5);
}

a img:active, #art img:active, nav img:active, .photostrip img:active{
position: relative;
  top: 10px;
}

footer{
    text-align: center;
    margin-bottom: 5vh;
}

footer img{
    padding: 0 10px;
}

footer img:hover{
    background: #71543b;
    border-radius: 20px;
}

/* Smaller Desktop Heights */
@media (max-height: 800px) {
    nav{
        font-size: 1.75em;
    }

}

/* Tablet Styles */
@media (max-width: 810px) {
    container {
        display: block;
        width: 90%;
    }

    nav {
        flex: 100%;
        width: 100%;
        padding: 0.5em;
        position:static;
    }

    nav ul {
        text-align: center;
    }

    nav ul li {
        margin: 0.5em 0;
    }

    main {
        flex: 100%;
        max-width: 100%;
        position: static;
    }

    #art .gallery .item img {
        height: 150px;
    }

    h2 {
        font-size: 2em;
    }

    .blurb h2 {
        font-size: 2.5em;
    }
}

/* Mobile Styles */
@media (max-width: 480px) {

    html, body{
        overflow-x: hidden;
    }
    container {
        width: 100%;
        gap: 2%;
    }

    nav {
        padding: 0.5em;
        position:static;
    }

    nav ul li:first-child img {
        width: 5em;
    }

    .photostrip img {
        height: 100px;
    }

    #art .gallery .item img {
        height: 120px;
    }

    h2 {
        font-size: 1.5em;
    }

    .blurb h2 {
        font-size: 2em;
    }

    .blurb{
        transform: rotate(0deg)!important;
  width: 95%;
  margin: -1em auto 0;
  font-size: 0.95em;
    }

}