:root { /* root pseudo class is very cool - allows us to predefine variables for use throughout site */
    font-size: 16px;
    font-family: Arial, sans-serif;
    /* NLW color palette below here */
    --nlw-palette-yellow: #F5C600;
    --nlw-palette-offwhite: #F6EDE7;
    --nlw-palette-brown: #80321E;
    --nlw-palette-red: #C52127;
    --nlw-palette-vanilla: #FFF3AD;
    --nlw-palette-paper: #A6896A;
}

body {
    background-color: var(--nlw-palette-vanilla); /* Retro yellow background */
    margin: 0;
    padding: 0;
    color: #333;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.container {
    display: flex;
    flex-direction: column;
    flex: 1;
}

header {
    background-color: var(--nlw-palette-paper);
    padding: 10px 0;
    opacity: 1;
    transition: background-color 200ms linear;
    
    /* box-shadow: 0px 10px 20px 0px var(--nlw-palette-paper); */

    /* border-bottom-right-radius: 10%; */
    /* border-bottom-left-radius: 10%; */
}

header a {
    text-decoration: none;
}

header:hover {
    background-color: var(--nlw-palette-brown);
    opacity: 1;
}

nav ul {
    list-style: none;
    display: flex;
    justify-content: end;
    align-items: center;
    margin: 0;
    padding: 0;
}

nav ul li {
    transition: 200ms;
    margin: 0 10px;
}
nav ul li:hover {
    border-radius: 1px;
    background-color: var(--nlw-palette-paper);
    box-shadow: 0px 0px 0px 10px var(--nlw-palette-paper)
}

nav ul li:first-child {
    margin-right: auto;
}

nav ul li a img {
    max-width: 24px;
    max-height: 24px;
}

main {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero {
    position: relative;

    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 50px;
    background-color: var(--nlw-palette-yellow); /* Retro yellow hero section */
    width: 80%;
    max-width: 900px;
    margin: 0 auto;
    border-radius: 10px;
}

.hero-text {
    width: 50%;
    text-align: left;
}

.hero-text h1 {
    font-size: 2.5em;
    margin-bottom: 10px;
}

.hero-text p {
    font-size: 1.2em;
    margin-bottom: 20px;
    font-style: italic;
}

.hero-text button {
    padding: 10px 20px;
    background-color: var(--nlw-palette-offwhite);
    color: #000;
    border: none;
    cursor: pointer;
    border-radius: 10px;
    
    box-shadow: inset 0 0 0 0 var(--nlw-palette-vanilla);

    transition: ease-out 0.5s;
}
.hero-text button:hover {
    box-shadow: inset 300px 0 0 0 var(--nlw-palette-vanilla);
}

.hero-image {
    position: relative;

    width: 50%;
}
/*.hero-image:hover {
    transform: rotateY(180deg);
}*/

.imageHolder {
    position: relative;

    transform-style: preserve-3d;
    transition: 0.5s ease;
    
    width: auto;
    height: 60vh;
    max-height: 600px;
    /* background: var(--nlw-palette-vanilla); */
}
.imageHolder:hover {
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
}
.imageHolder:hover .thefront{
    transition: 200ms;
    opacity: 0%;

}

.hero-image img {

    position: absolute;

    top: 0;
    bottom: 0;
    margin: auto 0;

    width: 100%;
    height: auto;

    max-height: 600px;

    border-radius: 10px;

    transition: 200ms;

    box-shadow: 20px 20px 0px 0px var(--nlw-palette-vanilla);
}

/*
.hero-image img:hover {
    box-shadow: 0px 0px 20px 20px var(--nlw-palette-vanilla);
}
*/

footer {
    background-color: var(--nlw-palette-paper);
    color: #000;
    text-align: center;
    padding: 0px 0px;
    position: sticky;
    bottom: 0;
    width: 100%;
}

footer p {
    font-size: 0.5rem;
}

.namelink {
    font-style: italic;
}

.namelink a {
    transition: 200ms;
    color: #fff;
    text-decoration: none;
    text-shadow: 4px 4px 0 var(--nlw-palette-yellow), 8px 8px 0 var(--nlw-palette-red)
}

.namelink a:hover {
    text-shadow: #FC0 1px 0 10px;
}

/* testing card flipping */
.thefront {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    
    visibility: visible;

    opacity: 100%;
}
.theback {
    backface-visibility: hidden;

    /* doesn't work in safari... testing safari code below*/
    /* -webkit-perspective: 0; */
    -webkit-backface-visibility: hidden;
    -webkit-transform: translate3d(0,0,0);
    visibility: visible;

    transform: rotateY(180deg);

    position: absolute;

    top: 0;
    bottom: 0;
    margin: auto 0;

    width: 100%;
}


@media only screen and (max-width: 600px) { /* this is saying check only screen width, if width is min 600px (large screen) */
    body {
        background-color: var(--nlw-palette-yellow); /* Retro yellow hero section */
    }

    footer {
        display: none;
    }

    .container {
        display: flex;
        flex-direction: column-reverse;
    }

    header {
        height: 4vh;

        background-color: var(--nlw-palette-vanilla);
    }

    header:hover {
        background-color: var(--nlw-palette-vanilla);
    }

    .namelink {
        display: none;
    }

    nav ul {
        justify-content: space-around;
    }

    nav ul li a img {
        max-width: 4vh;
        max-height: 4vh;
    }

    .imageHolder {
        height: 25vh;
    }
}

@media only screen and (max-height: 700px) and (min-width: 600px) { /* this is saying check only screen width, if width is min 600px (large screen) */
    body {
        background-color: var(--nlw-palette-yellow); /* Retro yellow hero section */
    }

    .imageHolder {
        height: 50vh;
    }

    .hero-image img {
        width: auto;
        height: 100%;

        left: 0;
        right: 0;
        margin: 0 auto;
    }

    header {
        height: 5vh;

        background-color: var(--nlw-palette-vanilla);
    }

    header:hover {
        background-color: var(--nlw-palette-vanilla);
    }

    .namelink {
        display: none;
    }

    nav ul {
        justify-content: space-around;
    }

    nav ul li a img {
        max-width: 5vh;
        max-height: 5vh;

        min-width: 4vh;
        min-height: 4vh;
    }

    footer {
        display: none;
    }
}