*:visited
{
    color:#2999Fa;
}

header
{
    padding: 1rem;
    font-family: Anton;
    text-align: center;
}

body
{
    background-color: #ddd;
}

.avatar
{
    text-align: center;

    border-radius: 25%;
    padding: 2rem;
    border-left: 5px ridge #29F8Fa;
    border-right: 5px ridge #29F8Fa;

    background-color: #333;
}

.avatar img
{
    border-radius: 25%;
    padding: 1rem;
    border-left: 5px ridge #29F8Fa;
    border-right: 5px ridge #29F8Fa;

    width: 40%;

    margin-bottom: 1rem;
}

#hero
{
    text-align: center;
    font-family: Anton;
}

#hero h2
{
    color: #29F8Fa;
    font-size: 24pt;
    padding: .5rem;

    background-color: #333;
    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    margin-bottom: 1rem;
}

#hero p
{
    padding: .5rem;
    color: #29F8Fa;
    background-color: #333;
    font-family: Barlow, serif;

    display: flex;
    flex-direction: column;
    align-items: center;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    text-align: center;

    margin-bottom: 1rem;
}

#bio
{
    color: #29F8Fa;
    background-color: #333;
    padding: 1rem;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    margin-bottom: 1rem;
}

#hobbies
{
    color: #29F8Fa;
    background-color: #333;

    font-family: Barlow, serif;

    padding:  1rem;
    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    margin-bottom: 1rem;
}

#photos
{
    color: #29F8Fa;
    background-color: #333;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    padding: 1rem;
}

#photos figure
{
    text-align: center;
    font-size: 22pt;
}

#photos figcaption
{
    padding: .5rem;
}

#photos img
{
    width: 100%;
    border-radius: 20px;
    grid-row: 1;
    grid-column: 1;
}
/*
#photos img:hover~.imghover
{
    color: rgba(255, 255, 255, 255);
    background-color: rgba(51, 51, 51, .70);
    border-radius:20px ;

    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    grid-row: 1;
    grid-column: 1;
}

#photos img:hover
{   
    box-shadow: 0px 10px 40px #CC0000;
    grid-row: 1;
    grid-column: 1;
}
*/

.gridcontent:hover img
{
    box-shadow: 0px 0px 40px #CC0000;

    grid-row: 1;
    grid-column: 1;
}

.imghover:hover, #photos img:hover~.imghover
{
    color: rgba(255, 255, 255, 1);

    background: rgba(51, 51, 51, .70);

    border-radius:20px ;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    grid-row: 1;
    grid-column: 1;
}

.imghover
{
    color: rgba(255, 255, 255, 0);

    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 20px;

    grid-row: 1;
    grid-column: 1;
}

/* This keeps the picture and the hover text together*/
.gridcontent
{
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    width: 100%;
}

#webarticle
{
    margin-top: 1rem;
    padding: 1rem;

    color: #29F8Fa;
    background-color: #333;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    font-family: Barlow, serif;
}

#webarticle h2
{
    font-family: Barlow, serif;
}

#mapContent
{
    display: grid;
    grid-template-columns: 1fr;

    width: 100%;
}

#mapText
{
    padding: 1rem;
    margin: .5rem;

    color: #29F8Fa;
    background-color: #333;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;
}

#mapExample
{
    margin: .5rem;

    background-color: #333;
    border-radius: 20px;
    border: 5px ridge #29F8Fa;

    padding: 1rem;
}

#mapExample iframe
{
    border-radius: 20px;
}

#article
{
    /*background-image: radial-gradient(black,black, #444444, white); /* good looking border might use later*/
    border-radius: 20px;
    border: .75rem ridge black;
    margin-top: 1rem;

    background-image: linear-gradient(90deg, #220000, black, #220000);

    border-radius: 20px;
    border: 5px ridge #29F8Fa;
}

#article h2
{
    font-family: Anton;
    padding: 2rem;
    text-align: center;
    color: #CC0000;
}

#article p
{
    font-family: Anton;
    text-align: left;
    font-size: 16;
    color: #CC0000;
    background-color: rgba(0,0,0,0);

    padding: 1rem;
}

#article p::first-letter
{
    color: black;
    float: left;
    font-size: 32pt;
    line-height: .25rem;

    padding: 1.5rem;

    border: 4px ridge #000000;
    border-radius: 3rem 0 3rem 0;

    box-shadow: 0rem 0rem 1rem rgba(255, 0, 0, 64);

    background-image:radial-gradient(#CC0000,#ffd700, #CC0000);
    margin: .35rem;
}

#article div
{
    max-width: 55rem;
    margin: 0 auto;
    padding: 1rem;
}

footer
{
    clear: both;
    padding-top: 1rem;
    text-align: center;
}

#contactInfo
{
    background-color: #FEFEFE;
    font-family: Barlow, serif;

    text-align: left;
    border: 5px ridge #29F8Fa;
    
    padding: 3px;
}

#contectHeader
{
    font-family: Anton;
}

.redacted
{
    color: #0221AD;
    background-color: #000000;
    
    border: 1px dotted #0221AD;
    padding: .05rem;

    display: inline;
}

.video
{
    text-align: center;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;
    background-color: #333;

    margin-top: 1rem;

    padding: .5rem;
}

.video p
{
    color: #29F8Fa;
    background-color: #333;
}

.video iframe
{
    width: 100%;
}

#contact
{
    display: grid;
    grid-template-columns: 1fr 3fr 1fr;

    margin-top: 1rem;
    padding: 1rem;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;
    background-color: #333;
}

#contact h2
{
    text-align: center;
    font-family: Anton;
    font-size: 28pt;
    color: #29F8Fa;

    border-radius: 20px;
    border: 5px ridge #29F8Fa;
    background-color: #333;
}

#contactForm label
{
    margin-top: .25rem;
}

#contactForm legend
{
    background-color: #333;
    border-radius: 20px;
    border-top: 5px ridge #29F8Fa;

    padding-left: .25rem;
    padding-right: .25rem;
}

#formElements
{
    display: grid;
    width: 100%;
    font-family: Barlow, serif;
    padding: .25rem;
}

fieldset
{
   border-radius: 20px;
   border: 5px ridge #29F8Fa;

   color: #29F8Fa;
   background-color: #333;

   margin-top: .5rem;
}

button{
    width: 100%;
    color: #333;

    font-family: Barlow, serif;
    font-weight: 600;
    font-size: 12pt;

    background-color: #29F8Fa;

    border-radius: 20px;
    border: 5px ridge #333;
}

.buttonwrapper
{
    margin-top: .5rem;
    width: 40%;
}

#Links
{
    text-align: center;
}

.tab
{
    display: inline;
    color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 50em)
{
    figure {
        display: grid;
        grid-template-columns: 2fr 1fr;
    }
    
    figcaption {
        display: flex;
        justify-content: center;
        align-items: center;

        font-size: 28pt;
    }

    #photos .imghover
    {
        font-size: 28px;
    }

    .gridcontent
    {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        width: 100%;

        font-size: 28pt;
    }

    #mapContent
    {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    #article div {
        max-width: 100%;
        columns: 30rem;
    }

    .video iframe
    {
        width: 560px;
        height: 320px;
    }
    
    #article p::first-letter
    {
        clear: both;

        border: 0px;
        box-shadow: 0rem 0rem 0rem rgba(0, 0, 0, 0);
        line-height: 1em;

        font-size: 16pt;
        font-family: Anton;
        text-align: left;
        color: #CC0000;
        background-image: radial-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));

        padding: 0px;
        margin: 3px;
    }
    #article p:first-child::first-letter
    {
        
        color: black;
        float: left;
        font-size: 32pt;
        line-height: .25rem;

        padding: 1.5rem;

        border: 4px ridge black;
        border-radius: 3rem 0 3rem 0;

        box-shadow: 0rem 0rem 1rem rgba(255, 0, 0, 64);

        background-image:radial-gradient(darkred,gold, #CC0000);
        margin: .35rem;
    }

 }

 @media screen and (min-width: 100em)
{

    #photos
    {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-rows: 1fr;
    }

    figure
    {
        grid-row: 2;
    }

    .gridcontent
    {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        width: 100%;

        align-items: center;

        font-size: 16pt;
    }

    .imghover
    {    
        height: 100%;
        border-radius: 20px;

        font-size: 12px;
    }

    figure img {
        width: 100%;
    }

    hr{
        display: none;
    }

    figcaption {
        display: block;

        font-size: 14pt;
    }

    #photos h2
    {
        font-size: 32pt;
        text-align: center;
        grid-column: 2;
    }

    .video iframe
    {
        width: 1100px;
        height: 630px;
    }

    #article div {
        max-width: 100%;
        columns: 40rem;
    }
 }