html {
    height: 100%;
    background-color: black;
/*    background-image: linear-gradient(#282828, #000000);  */
    background-image: linear-gradient(#353535, #000000);
    background-repeat: no-repeat;
}

header a {
    font-family: 'Open Sans', sans-serif;
    text-decoration: none;
    /* color: #dcedf4; */
    color: #faf6fd;
}

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.1rem;
    line-height: 1.3;
    color: #faf6fd;
}


.page_content {
    padding: 1rem 3rem;
    max-width: 1440px;
    margin: 0 auto;
}

/* this is the background box for the page title */
    /* This is the outer flex box for adjusting size when text wraps */
    .pagetitle {
        display: flex;
        flex-wrap: wrap;
        background-color: #faf6fd;
        justify-content: center;  /* centers inner div while allowing max-width less than 100% */
        padding: 2px;
    }

    /* This is the inner flex box that the text resides inside */
    /* Not sure I actually need this! If I do, put the H1 inside of this.*/
    .pagetitleinner {
        flex-grow: 1;      /* it can grow */
        flex-shrink: 1;    /* it can shrink */
        flex-basis: 75px; /* arbitrary depending on design */
        min-width: 75px;  /* equal to flex-basis */
        max-width: 90%;    /* (100% - margins)/number of boxes */
    }

    /* this is the page title */
    h1 {
        font-family: 'Berkshire Swash'; 
        font-size: 3rem;  
        color: black;
        font-weight: bold;
        text-align: center;
        max-width: 90%; 
    }

/* End of page title formating*/


/* This, or P, would be for a description of the exhibit, if any */
h2 {
    font-size: 2rem;
/*     font-weight: bold;  */
    text-align: center;
    margin: 1.4rem 0 1.4rem 0;
}

/* if for some reason I want to use a serif font along with the other fonts */
h3 {
    font-family: Georgia, 'Times New Roman', Times, serif; 
    font-size: 1.1rem;
    font-weight: bold;
    margin: 0.8rem 0 0.8rem 0;
}

p {
    margin-top: 0.6rem;
}

em {
    font-style: italic;
    font-weight: bold;
}

.inlinebold {
    font-weight: bold;
}

strong {
    font-weight: bold;
}

.betweenpics {
    height: 3rem;
}

.updated {
    font-style: italic;
    font-size: .8rem;
    margin-top: 1rem;
    text-align: left;
}

a:link, a:visited  {
    color: #faf6fd;
}

a:hover {
    color: blue;
}

footer {
    margin-top: 1rem;
    padding: 5px 0;
    background: linear-gradient(to bottom, #182738 0%, #090e14 100%);
    color: #faf6fd;
    text-align: center;
}

footer a {
	text-decoration: none;
    color: #faf6fd;
    margin: 2px;
}

.narrow {
    display: none;
}

.fineprint {
    color: #faf6fd;
    font-size: .8rem;
    font-style: italic;
    padding: 0.25rem 2px 2px 2px;
    
	/* border-top-style: solid;
	border-top-width: 1px; */
}

.main {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 20px;
}


.menupics {
    position: relative;
    width: 45%;
    margin-bottom: 30px;
    margin-left: 5px;
    margin-right: 5px;
    padding-bottom: 15px;
}

.menupics img {
    display: block;
    margin: 1rem auto 2rem auto;
    max-width: 80%;
   /*  height: auto;  */
   /*  border: 5px ridge black; */
}

.menupics .hoverwords {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; left: 0;
    text-align: center;
    padding-top: 20%;
    font-size: 3rem;
    color: white;
    background-color: rgba(0, 0, 0, 0.7);
    /* this hides the words when no hover */
    visibility: none; opacity: 0;
    transition: opacity 0.3s;
}

.menupics .hoverwords:hover {
    visibility: visible; opacity: 1;

}

p img {
    display: block;
    margin: 1rem auto 2rem auto;
    max-width: 100%;
    height: auto;
    border: 5px ridge black;
}


/* these are used on the rock-village systems page */
.button {
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
}

.rv-logo-container {
    float: left;
    width: 15%;
    max-width: auto;
    max-height: .1rem;
/*    padding: 5px;
    padding-right: 20px;  */
}

/* About page */ 

.aboutmain {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
/*     justify-content: center;  */
    align-items: center;
    min-height: 300px;
    padding-top: 20px;

}
.contactbox {
    width: 50%;
    margin: 20px;
    text-align: justify;
}

.contactpic {
    width: 40%;
}


/* Contact Form formating */

.inputwrapper {
    margin-bottom: 30px;
}

input[type=text], input[type=email], textarea {
    padding: 12px 20px; 
    width: 100%;
    font-size: 0.85rem;
    box-sizing: border-box;
}

.newline {
    display: block;
    margin-bottom: 10px;
}

.margin-right-a {
    margin-right: 20px;
}

form {
    margin: 40px 0px;
}

.mybutton {
    background-color: #d0e4ed;
    color: #000000;
    font-family: 'Playfair Display', serif;
    padding: 11px 25px;
    border-radius: 2px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.228);
}

.mybutton:hover {
    background-color: #379efd;
    transition-duration: 0.8s;
}

/* end of Contact Form section */




/* Change to 2 across on the menu for medium-sized screens */
@media (max-width: 1050px){

    .menubox {
        width: 45%;
    }

}
/* end of medium-size screen adjustments */


/* Tablet view */
@media (max-width: 768px){

    .page_content {
        padding: 15px 2rem;
    }

    .wider {
        display: none;
    }

    .narrow {
        display: block;
    }

    #storywrapper {
        display: none;
    }
    
    .menubox {
        width: 100%;
    }

    /* change abot page so the contact picture comes after the write-up */
    .aboutmain {
        display: block;
    }

} /* end of tablet view */


/* mobile view */
@media (max-width: 400px){

    .page_content {
        padding: 13px 1rem;
    }

    footer, footer a {
        font-size: 0.9rem;
    }

} /* end of mobile view */
    


/* These are for embedded you-tube videos - not currently using this */
.iframecontainer {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 56.25%; /* 16:9 Aspect Ratio */
  }
  
.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: 5px double black;
}
/* end of embedded you-tube section */

