:root
{
    --primary-color: #325871   ;
    --secondary-color: #FFC66C ;
    --accent1-color: #BB0A21;
    --accent2-color: #FF6E37;
    --other-color:  rgba(20,30,13, .7);

    --heading-font: "Secular One";
    --paragraph-font: Georgia, serif;

    --headline-color-on-white: #325871;  /* headlines on a white background */ 
    --headline-color-on-color: #FFEDE5; /* headlines on a colored background */ 
    --paragraph-color-on-white: #325871; /* paragraph text on a white background */ 
    --paragraph-color-on-color: #FFEDE5; /* paragraph text on a colored background */ 
    --paragraph-background-color: #325871;
    --nav-link-color: #BB0A21;
    --nav-background-color: #FFC66C;
    --nav-hover-link-color: #FFEDE5;
    --nav-hover-background-color: #FF6E37;
}


body
{
    display: grid;
    background-color: var(--nav-background-color);
    max-width: 1600px;
    margin: 0 auto;
    font-size: 22px;
    
}
h2
{
    font-family: var(--heading-font);
}
p
{
    font-family: var(--paragraph-font);
}
img
{
    max-width: 100%;
}

/* header */
header
{
    display: grid;
    border: 5px solid var(--nav-link-color);
    grid-template-columns: 150px auto;
    background-color: rgba(20,30,13, .7);
    /* background-color: var(--headline-color-on-white); */
}
#logo_link
{
    padding-left: 1em;
    justify-self: center;
    align-self: center;
}
nav
{
    display: flex;
    justify-content: space-around;
}
nav a
{
    text-align: center;
    color: #fcfbfb;
    text-decoration: none;
    padding: 60px;
    /* margin-top: 1em; */
}
nav a:hover 
{
    color: var(--nav-hover-link-color);
    background-color: var(--nav-hover-background-color);
}
nav a:link, nav a:visited 
{
    color: var(--nav-link-color);
}

/* Home Main */
.home
{
    display: grid;
    max-height: 125px;
}
.home h1
{
    font-size: 50px;
    border-width: 5px 5px 5px var(--headline-color-on-white);
    border-radius: 5px 5px 5px var(--headline-color-on-white);
    border-color: 5px 5px 5px var(--headline-color-on-white);
    color: var(--headline-color-on-white);
    margin: auto;
}

.main-grid
{
    display: grid;
    border: 5px solid var(--accent1-color);
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr;
    max-width: 1600px;
    max-height: 60em;
    padding: 1em;   
}
.main-grid img
{
    align-self: center;
}
.para-one
{
    color: var(--headline-color-on-white);
    padding: 1em;
    grid-column: 2/4;
    grid-row: 1/2;
    margin: auto;
    width: 80%;
    background-color: #FF6E37;
    border: 5px solid var(--accent1-color);
}
.para-two
{
    color: var(--headline-color-on-white);
    text-align: center;
    padding: 2em;
    grid-column: 1/3;
    grid-row: 2/3;
    margin: auto;
    height: 70%;
    width: 70%;
    background-color: #FF6E37;
    border: 5px solid var(--accent1-color);
}
.para-three
{
    color: var(--headline-color-on-white);
    padding: 2em;
    grid-column: 2/4;
    grid-row: 3/4;
    margin: auto;
    width: 70%;
    background-color: #FF6E37;
    border: 5px solid var(--accent1-color);
}
.para-one-cheese
{
    border: 10px solid var(--accent2-color);
    width: 95%;
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    align-self: center;
}
.para-two-cheese 
{
    border: 10px solid var(--accent2-color);
    width: 95%;
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    align-self: center; 
}
.para-three-cheese
{
    border: 10px solid var(--accent2-color);
    width: 95%;
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    align-self: center;
    width: 400px;
    height: 300px;
}


/* Purchase Main */
.purchases
{
    display: grid;
    grid-template-columns: 3fr 3fr 3fr;
    justify-self: center;
}
.purchases h2
{
    text-size-adjust: none;
    color: var(--headline-color-on-white);
}
section
{
    padding: 2em;
    text-align: center;
}
.american-cheese, .brie-cheese, .cheddar-cheese, 
.colby-cheese, .gouda-cheese, .mozzarella-cheese, 
.parmesan-cheese, .pepperjack-cheese, .swiss-cheese, 
.pink-cheese, .blue-cheese, .unprocessed-cheese
{
    position: relative;
    border: 10px solid var(--accent2-color);
    width: 95%;
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    align-self: center;
}
.text-block
{
    position: relative;
    bottom: 145px;
    right: -20px;
    width: auto;
    background: fixed;
    background-color: var(--accent1-color);
    color: var(--headline-color-on-color);
    font-size: x-large;
    /* padding-left: 100px;
    padding-right: 100px; */
}
.text-block
{
    width: 120px;
}

/* History Main */
.history-main
{
    display: grid;
    padding: 10px;
    grid-template-columns: 1fr 100px 1fr; 
    grid-template-rows: repeat(5, auto);   
    border: 5px solid var(--accent1-color);
}
.history-main h2
{
    text-align: center;
}
.history-main p
{
    text-align: center;
    font: var(--paragraph-font);
}
.cheese-title
{
    text-align: center;
    color: var(--headline-color-on-white);
}
.century-17, .century-18, .century-19, .century-20
{
    border: 10px solid (var(--accent1-color));
    padding: 5px;
    box-shadow: 5px 5px 10px var(--accent1-color);
    line-height: 1.2;
    margin: auto;
    background-color: var(--accent2-color);
    color: var(--headline-color-on-white);
}
.factory
{
    border: 15px solid var(--accent2-color);
    width: 95%;
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    align-self: center;
    margin-left: auto;
    margin-right: auto;
    width: 300px;
    height: 225px;

}
.storage
{
    border: 10px solid var(--accent2-color);
    transition: transform .5s;
    box-shadow: 5px 5px 10px #6f7364;
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
    margin-bottom: auto;
    width: 350px;
    height: 525px;
}
.dotted-line 
{
    height: 100%;
    border-left: 2px dotted #000;
    position: relative;
    left: 40px;
    margin: auto;
}
.dotted-line img
{
    width: 75px;
    height: 75px;
    position: relative;
    top: 40%;
    left: -35px;
    z-index: 1;
}


/* footer */
footer
{
    display: grid;
    border: 5px solid var(--nav-link-color);
    background-color: rgba(20,30,13, .7);
    /* background-color: var(--headline-color-on-white); */
    padding: 25px 50px;
    /* margin-top: 75px; */
    display: flex;
    justify-content: space-around;
    align-items: center;
}
footer p
{
    font-size: 1.2em;
    text-align: left;
    color: #d9c2a3;
}
footer .social img
{
    padding: 15px;
}
footer p a:hover
{
    text-decoration: underline;
}
