@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fjalla+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Hammersmith+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;700&display=swap');

/***************************************************************************
****************************************************************************
******************************** GLOBAL CSS ********************************
****************************************************************************
****************************************************************************/

   html {
        scroll-behavior: smooth;
        font-family: 'Open Sans', sans-serif;
        font-size: 16px;
        font-weight: 400;
        color: black;
    }

    @media screen and (min-width: 960px) {
    html {
        scroll-behavior: smooth;
        font-family: 'Open Sans', sans-serif;
        font-size: 16px;
        /* line-height: 1.6rem; */
        line-height: 1.5rem;
        font-weight: 400;
        color: black;
    }
}

    /** Makes all <p> inside <a>. Otherwise color becomes blue as per defautl browser text link color. Will not use <HTML> color black rule. **/
    a p {
        color: black;
    }

    p.body-copy-gray {
        /* color: #727272; */
        color: #000000;
    }

    p {
        margin-top: 0rem;
    }

    /** CSS won't target Contact Form or Photography Buttons for FONT-FAMILY under <HTML>. Need their own selector. **/
    .tabs-photography button,
    .contact-form-name-field,
    .contact-form-email-field,
    .contact-form-message-field,
    .contact-form-submit-button {
        font-family: 'Open Sans', sans-serif;
        font-size: 1rem;
        font-weight: 400;
    }

    @media screen and (min-width: 960px) {
    .tabs-photography button,
    .contact-form-name-field,
    .contact-form-email-field,
    .contact-form-message-field,
    .contact-form-submit-button {
        font-family: 'Open Sans', sans-serif;
        font-size: 1rem;
        font-weight: 400;
    }
}

    body {
        margin: 0px;
    }

    .grid-container {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        grid-gap: 0px;
        border: 0px solid black;
    }

    /** Offets global nav links to h2 headers are not behind sticky header DIV **/
    a.anchor {
        position: relative;
        display: block;
        top: -6rem; /** When margin-top for section is 200px, this is 100px **/
        margin-right: auto;
        margin-left: auto;
        width: 50%;
        text-align: center;
        border: 0px solid black;
        visibility: hidden;
    }

    /** Offets global nav links to h2 headers are not behind sticky header DIV **/
    @media screen and (min-width: 960px){
    a.anchor {
        position: relative;
        display: block;
        top: -6rem; /** When margin-top for section is 200px, this is 100px **/
        margin-right: auto;
        margin-left: auto;
        width: 50%;
        text-align: center;
        border: 0px solid black;
        visibility: hidden;
    }
}

    /** NEED TO FIND OUT WHY A SEPARATE THING IS NEEDED **/
    a.anchor-logo {
        position: relative;
        display: block;
        top: -6rem;
        margin-right: auto;
        margin-left: auto;
        width: 50%;
        text-align: center;
        border: 0px solid black;
        visibility: hidden;
    }

    /* a.logo {
        border: 1px solid black;
    } */

    img.logo {
        height: 1.5rem;
        display: block;
        border: 0px solid black;
    }

    /** Container for left, middle, and right header grid items **/
    /* header.home {
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        grid-gap: 0;
        position: sticky;
        top: 0;
        margin-bottom: 1rem;
        z-index: 999;
        border-bottom: 1px solid black;
    } */
    
    /** Container for left, middle, and right header grid items **/
    header {
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        grid-gap: 0;
        position: sticky;
        top: 0;
        margin-bottom: 1.0rem;
        z-index: 999;
        border-bottom: 1px solid black;
    }

    /** Container for left, middle, and right header grid items **/
    @media screen and (min-width: 960px) {
    header {
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* grid-gap: 0; */
        grid-column-gap: 0rem;
        position: sticky;
        top: 0;
        margin-bottom: 2rem;
        z-index: 999;
        border-bottom: 1px solid black;
    }
}

    .header-left, .header-middle, .header-right {
        height: 4rem; /* height: 55px; */
        background-color: rgba(255, 255, 255, .90);
        /* position: sticky; */
        top: 0;
        border-bottom: 0px solid black;
        z-index: 999;
    }

    .header-left {
        grid-column: 1 / 1;
        /* grid-row: 1 / 2; */
    }

    /** Container for logo and global <NAV> **/
    .header-middle {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        grid-column: 2 / 12;
        border: 0px solid black;
        /* grid-row: 1 / 2; */
    }

    @media screen and (min-width: 960px) {
    .header-middle {
        display: flex;
        justify-content: space-between;
        align-items: center;
        grid-column: 2 / 12;
        /* grid-row: 1 / 2; */
    }
}
    .header-right {
        grid-column: 12 / span 1;
        /* grid-row: 1 / span 1; */
    }

    /** Global navigation **/    
    nav {
        display: none;
        border: 0px solid black;
    }
    
    @media screen and (min-width: 960px) {
    nav {
        display: block;
        font-size: 1.0rem;
        font-weight: 400;
        letter-spacing: 0.05rem;
        font-family: 'Roboto Condensed', sans-serif;
        border: 0px solid black;
    }
}

    nav a {
        display: inline;
        text-decoration: none;
        color: black;
        margin-left: 30px;
        /* padding-top: 15px;
        padding-bottom: 15px; */
        transition: .3s;
        text-transform: uppercase;
        /* border-top: 3px solid rgba(0,162,255,0);
        border-bottom: 3px solid rgba(0,162,255,0); */
    }

    nav a:hover {
        color: #00a2ff;
        /* padding-top: 0px;
        padding-bottom: 0px;
        border-top: 3px solid rgba(0,162,255,1);
        border-bottom: 3px solid rgba(0,162,255,1); */
    }

    main {
        position: relative;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border: 0px solid red;
    }

    /** This is for Case Studies. Layout doesn't require grid **/
    main.grid-none {
        position: relative;
        grid-column: 2 / 12;
        display: block;
        grid-template-columns: none;
        border: 0px solid red;
    }

    /** HEADERS - Individual Portfolio <H1> are actaully smaller than Home Page <h2> **/


    @media screen and (max-width: 960px) {
        .mobile-global-nav {
            display: flex;
            justify-content: space-between;
            align-items: center;
            position: sticky;
            grid-column: 1 / 13;
            bottom: 0;
            width: 100%;
            padding: 1rem 0rem;
            /* height: 4rem; */
            box-sizing: border-box;
            background-color: rgba(0, 0, 0, .90);
            border-top: 1px solid black;
            font-family: 'Roboto Condensed', sans-serif;
            font-weight: 700;
        }
    }

    @media screen and (max-width: 960px) {
        .mobile-global-nav .text {
            font-size: 0.7rem;
            width: 100%;
            display: block;
            text-align: center;
            color: #000000;
            margin-top: -0.2rem;
            padding-bottom: 0.5rem;
            border: 0px solid black;
        }
    }

        @media screen and (min-width: 960px) {
        .mobile-global-nav {
            display: flex;
            justify-content: space-between;
            position: sticky;
            grid-column: 1 / 13;
            bottom: 0;
            width: 100%;
            /* height: 4rem; */
            display: none;
            box-sizing: border-box;
            background-color: black;
            border-top: 0px solid black;
        }
    }

        .mobile-global-nav a {
            display: block;
            width: 100%;
            text-decoration: none;
            background-color: none;
            border: 0px solid black;
        }

        .mobile-global-nav a img {
            display: block;
            /* width: 60%; */
            width: 20%;
            /* height: 30%; */
            margin-left: auto;
            margin-right: auto;
            border: 0px solid black;
        }

        /** Styles all links inside paragraphs **/
        p a {
            color: #00a2ff;
            text-decoration: none;
        }
    
        p a:hover {
            color: #00a2ff;
            text-decoration: underline;
        }

        /** Applies bottom margins to elements **/
        .margin-bottom-5rem {
            margin-bottom: 5rem;
        }

        .margin-bottom-2-5rem {
            margin-bottom: 2.5rem;
        }
        
        .margin-bottom-2rem {
            margin-bottom: 2rem;
        }

        .margin-bottom-1rem {
            margin-bottom: 1.0rem;
        }

/***************************************************************************
****************************************************************************
******************************** HOME PAGE *********************************
****************************************************************************
****************************************************************************/

    .home-image-container {
        position: relative;
        grid-column: 1 / 13;
        /* padding-top: 30%; */
        margin-bottom: 5rem;
        box-sizing: border-box;
        border: 0px solid limegreen;
    }
    
    @media screen and (min-width: 960px) {
    .home-image-container {
        position: relative;
        grid-column: 1 / 13;
        /* padding-top: 30%; */
        margin-bottom: 10rem;
        box-sizing: border-box;
        border: 0px solid limegreen;
    }
}

    .home-image {
        width: 100%;
    }

    /* .home-image-container img {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        box-sizing: border-box;
        border: 3px solid orange;
    } */

    /** For "blank" PNG file that "holds up" the DIV **/
    .image0d,
    .image0m {
        position: relative;
        /* display: block; */
        width: 100%;
        box-sizing: border-box;
        border: 0px solid red;
    }

    /* .imaged0d img,
    .imaged0m img {
        width: 100%;
        display: block;
        border: 0px solid red;
    } */

    .image1d,
    .image2d,
    .image3d,
    .image1m,
    .image2m,
    .image3m    {
        position: absolute;
        top: 0;
        left: 0;
        /* display: block; */
        width: 100%;
        background-size: 100%;
        background-repeat: no-repeat;
        /* background-size: cover; */
        background-position: top center;
        /* height: 94vh; */
        /*padding-top: 29.2%;*/ /* FOR DIV TAGS */
        /* height: auto; */
        box-sizing: border-box;
        border: 0px solid magenta;
    }

    @media screen and (min-aspect-ratio: 1/1) {
    .image0d,
    .image1d,
    .image2d,
    .image3d {
        display: block;
    }
}

    @media screen and (max-aspect-ratio: 1/1) {
    .image0d,
    .image1d,
    .image2d,
    .image3d {
        display: none;
    }
}

    @media screen and (min-aspect-ratio: 1/1) {
    .image0m,
    .image1m,
    .image2m,
    .image3m {
        display: none;
    }
}

    @media screen and (max-aspect-ratio: 1/1) {
    .image0m,
    .image1m,
    .image2m,
    .image3m {
        display: block;
    }
}

    /* @media screen and (min-width: 960px) {
    .image1,
    .image2,
    .image3 {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        background-size: 100%;
        background-repeat: no-repeat;
        height: 90vh;
        box-sizing: border-box;
        border: 0px solid red;
    }
}
    
    /** NO TEXT **/
    .image1d, .image1m {
        animation-name: image1;
        animation-duration: 3s;
        animation-fill-mode: forwards;
        /* background-image: url(../graphics/home-image-animation-mobile-01.jpg); */
    }

    @keyframes image1 {
        0%      {opacity: 1;}
        30%     {opacity: 1;}
        100%    {opacity: 0;}
    }

    /** FIRST LINE **/
    .image2d, .image2m {
        animation-name: image2;
        animation-duration: 8s;
        animation-fill-mode: forwards;
        /* background-image: url(../graphics/home-image-animation-mobile-02.jpg); */
    }

    @keyframes image2 {
        0%      {opacity: 1;}
        40%     {opacity: 1;}
        100%    {opacity: 0;}
    }

    /** FIRST AND SECOND LINE **/
    .image3d, .image3m {
        animation-name: image3;
        animation-duration: 8s;
        animation-fill-mode: forwards;
        /* background-image: url(../graphics/home-image-animation-mobile-03.jpg); */
        /* background-size: cover; */
    }

    @keyframes image3 {
        0%      {opacity: 1;}
        100%    {opacity: 1;}
    }

    section {
        margin-bottom: 5rem;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* grid-gap: 30px; */
        box-sizing: border-box;
        background-color: rgba(255,255,255,0);
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    section {
        margin-bottom: 10rem;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* grid-gap: 30px; */
        box-sizing: border-box;
        background-color: rgba(255,255,255,0);
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    section.contact-thank-you {
        position: absolute;
        top: 1rem;
        right: 4rem;
        bottom: 1rem;
        left: 1rem;
        /* height: 50%;
        width: 50%; */
        /* margin-bottom: 10rem; */
        /* grid-column: 1 / 13; */
        /* display: grid;
        grid-template-columns: repeat(12, 1fr); */
        box-sizing: border-box;
        background-color: rgba(255,255,255,0);
        border: 10px solid black;
    }
}

    section.home {
        margin-bottom: 5rem;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* grid-gap: 30px; */
        box-sizing: border-box;
        background-color: rgba(255,255,255,0);
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    section.home {
        margin-bottom: 10rem;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* grid-gap: 30px; */
        box-sizing: border-box;
        background-color: rgba(255,255,255,0);
        border: 0px solid black;
    }
}

/***************************************************************************
****************************************************************************
********************************* ABOUT ************************************
****************************************************************************
****************************************************************************/

    /** Home Page section headers **/
    h2.home {
        grid-column: 2 / 12;
        font-size: 3.0rem;
        line-height: 3.0rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        font-weight: 700;
        margin-top: 0rem;
        margin-bottom: 2.50rem;
        text-align: left;
        border: 0px solid black;
        font-family: 'Roboto Condensed', sans-serif;
    }

    /** Home Page section headers **/
    @media screen and (min-width: 960px) {
    h2.home {
        grid-column: 2 / 6;
        font-size: 5.0rem;
        line-height: 5.0rem;
        letter-spacing: 0.0rem;
        text-transform: none;
        font-weight: 700;
        /* color: #00a2ff; */
        margin-top: 0;
        margin-bottom: 2.5rem;
        text-align: left;
        border: 0px solid black;
        font-family: 'Roboto Condensed', sans-serif;
    }
}

    /** Container for paragraphs **/
    .about-paragraphs-container {
        grid-column: 2 / 12;
        border: 0px solid black;
    }

    /** Container for paragraphs **/
    @media screen and (min-width: 960px) {
    .about-paragraphs-container {
        grid-column: 2 / 6;
        margin-top: 0rem;
        border: 0px solid black;
    }
}

    /** About paragraphs **/
    .about-paragraph {
        text-align: left;
        margin-top: 0rem;
        margin-bottom: 1.25rem;
        border: 0px solid black;
    }

    /** Text links within paragraphs **/
    .about-paragraphs-links {
        color: #00a2ff;
        text-decoration: none;
        padding-bottom: 3px;
        border-bottom: 3px solid white;
        transition: .3s;
    }

    /** Text links within paragraphs HOVER **/
    .about-paragraphs-links:hover {
        padding-bottom: 3px;
        border-bottom: 3px solid #00a2ff;
    }

/***************************************************************************
****************************************************************************
**************************** PORTFOLIO SECTION *****************************
****************************************************************************
****************************************************************************/


/*********************************
*** Styles for portfolio tabs ***
**********************************/

        /* Style the tab */
        .tab {
            overflow: hidden;
            margin-top: 50px;
            /* border: 1px solid #ccc;
            background-color: #f1f1f1; */
            /* width: 50%;
            margin-right: auto;
            margin-left: auto; */
            grid-column: 4 / 10;
            display: flex;
            justify-content: space-between;
        }

        /* Style the buttons that are used to open the tab content */
        .tab button {
            background-color: inherit;
            float: left;
            border: none;
            outline: none;
            cursor: pointer;
            padding: 8px 16px;
            transition: 0.3s;
            border-radius: 30px;
            border: 2px solid #00a2ff;
            color: #00a2ff;
        }

        /* Change background color of buttons on hover */
        .tab button:hover {
            border: 2px solid #00a2ff;
            background-color: #00a2ff;
            color: #FFFFFF;
        }

        /* Create an active/current tablink class */
        .tab button.active {
            border: 2px solid #00a2ff;
            background-color: #00a2ff;
            color: #FFFFFF;
        }

    /* Portfolio links container */
    .portfolio-links-container {
        grid-column: 1 / 13;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 0px 0px;
        /* border: 0px solid #ccc; */
        background-color: white;
        border-top: none;
        -webkit-animation: fadeEffect 1s;
        animation: fadeEffect 1s;
        border: 0px solid black;
    }
    
    
    /* Portfolio links container */
    @media screen and (min-width: 960px) {
    .portfolio-links-container {
        grid-column: 2 / 12;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-top: 0rem;
        padding: 0px 0px;
        /* border: 0px solid #ccc; */
        background-color: white;
        border-top: none;
        -webkit-animation: fadeEffect 1s;
        animation: fadeEffect 1s;
        border: 0px solid black;
    }
}

    /** Individual container for each link **/
    @media screen and (max-width: 960px) {
    .portfolio-link-container {
        width: 100%;
        text-decoration: none;
        margin-bottom: 5rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Individual container for each link **/
    @media screen and (min-width: 960px) {
    .portfolio-link-container {
        width: 26%;
        display: block;
        text-decoration: none;
        margin-bottom: 5rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Individual container for each link **/
    @media screen and (max-width: 960px) {
    .portfolio-link-container-bottom-links-no-bottom-margin {
        width: 100%;
        display: block;
        text-decoration: none;
        margin-bottom: 5rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Individual container for each link **/
    @media screen and (min-width: 960px) {
    .portfolio-link-container-bottom-links-no-bottom-margin {
        width: 26%;
        display: block;
        text-decoration: none;
        margin-bottom: 0rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Individual container for each link - LAST BOTTOM LINK **/
    @media screen and (max-width: 960px) {
    .portfolio-link-container-last-link-no-bottom-margin {
        width: 100%;
        display: block;
        text-decoration: none;
        margin-bottom: 0rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Individual container for each link - LAST BOTTOM LINK **/
    @media screen and (min-width: 960px) {
    .portfolio-link-container-last-link-no-bottom-margin {
        width: 26%;
        display: block;
        text-decoration: none;
        margin-bottom: 0rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Image container for links - ALSO FOR "OTHER PROJECTS" **/
    .portfolio-link-image-container {
        margin-bottom: 1.0rem;
        width: 100%;
        /* padding-top: 50%; */
        box-sizing: border-box;
        /* background-color: gray; */
        overflow: hidden;
        border: 1px solid black;
    }

    .portfolio-link-image-container img {
        width: 100%;
        display: block;
        transition: .3s;
    }

    .portfolio-link-image-container img:hover {
        width: 100%;
        transform-origin: center;
        transform: scale(1.2);
        display: block;
    }

    /** Home project titles **/
    h3.home-portfolio {
        font-size: 2.0rem;
        line-height: 2.0rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        text-align: left;
        margin-top: 0rem;
        margin-left: 8.33%;
        color: #000000;
        border: 0px solid red;
        font-family: 'Roboto Condensed', sans-serif;
    }
    
    /** Home project titles **/
    @media screen and (min-width: 960px) {
    h3.home-portfolio {
        font-size: 1.5rem;
        line-height: 1.5rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        text-align: left;
        margin-top: 0rem;
        margin-left: 0rem;
        margin-bottom: 1rem;
        color: #000000;
        border: 0px solid red;
        font-family: 'Roboto Condensed', sans-serif;
    }
}

    .image {
        display: block;
        width: 100%;
        height: auto;
    }

/*********************************
*** INDIVIDUAL PORTFOLIO PAGES ***
**********************************/

    /** Container for different sections **/
    section.portfolio {
        /* position: relative; */
        margin-bottom: 5rem;
        padding: 0rem;
        box-sizing: border-box;
        background-color: white;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border: 0px solid red;
    }    


    /** Container for different sections **/
    @media screen and (min-width: 960px) {
    section.portfolio {
        /* position: relative; */
        margin-bottom: 10rem;
        padding: 0rem;
        box-sizing: border-box;
        background-color: white;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border: 0px solid red;
    }
}

    /** Individual portfolios project name **/
    h1.portfolio {
        grid-column: 2 / 12;
        font-family: 'Roboto Condensed', sans-serif;
        font-size: 3.0em;
        line-height: 3.0rem;
        font-weight: 700;
        letter-spacing: 0.2rem;
        /* text-align: justify;
        text-justify: inter-character; */
        text-transform: uppercase;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        border: 0px solid black;
    }
    
    /** Individual portfolios project name **/
    @media screen and (min-width: 960px) {
    h1.portfolio {
        grid-column: 2 / 9;
        font-size: 5.0rem;
        line-height: 5.0rem;
        font-weight: 700;
        letter-spacing: 0.0rem;
        text-align: left;
        /* text-transform: uppercase; */
        text-transform: none;
        margin-top: 0rem;
        margin-bottom: 5rem;
        border: 0px solid black;
        font-family: 'Roboto Condensed', sans-serif;
    }
}
    /** Deliverables **/
    section ul {
        grid-column: 2 / 12;
        list-style-type: none;
        margin-top: 0rem;
        margin-bottom: 1.25rem;
        padding: 0;
        border: 0px solid black;
    }

    /** Deliverables **/
    @media screen and (min-width: 960px) {
    section ul {
        grid-column: 2 / 7;
        list-style-type: none;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        padding: 0;
        border: 0px solid black;
    }
}
        
    section ul li.list-header {
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 400;
        font-size: 1.0rem;
        letter-spacing: 1px;
        text-transform: uppercase;
        list-style-type: none;
        margin-bottom: 0.2rem;
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    section ul li.list-header {
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 400;
        font-size: 1.0rem;
        letter-spacing: 1px;
        text-transform: uppercase;
        list-style-type: none;
        margin-bottom: 0.2rem;
        border: 0px solid black;
    }
}
        
    section ul li {
        grid-column: 2 / 12;
        list-style-type: none;
        border: 0px solid black;
        }


    @media screen and (min-width: 960px) {
    section ul li {
        grid-column: 2 / 7;
        list-style-type: none;
        border: 0px solid black;
        }
    }

    p.intro-paragraph {
        grid-column: 2 / 12;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        text-align: left;
        border: 0px solid black;
    }
    
    
    @media screen and (min-width: 960px) {
    p.intro-paragraph {
        grid-column: 2 / 7;
        margin-top: 0rem;
        margin-bottom: 5rem;
        text-align: left;
        border: 0px solid black;
    }
}

   /** Container for ALL portfolio blocks **/
   @media screen and (max-width: 960px) {
    .portfolio-blocks-container {
        margin-top: 0rem;
        grid-column: 1 / 13;
        /* padding: 0 8.4%;
        display: flex;
        justify-content: space-between; */
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /*grid-gap: 3rem;*/ /* Interferes with mobile when it's scaled down. Doesn't fit */
        grid-column-gap: 0rem; /* Set to zero for mobile **/
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Container for ALL portfolio blocks **/
    @media screen and (min-width: 960px) {
    .portfolio-blocks-container {
        margin-top: 0rem;
        grid-column: 1 / 13;
        /* padding: 0 8.4%;
        display: flex;
        justify-content: space-between; */
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /*grid-gap: 3rem;*/ /* Interferes with mobile when it's scaled down. Doesn't fit */
        grid-column-gap: 0rem; /* !!! DOES NOT WORK FOR MOBILE !!! **/
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Containers for portfolio blocks images and text **/
    @media screen and (max-width: 960px) {
    .portfolio-block-left-col-container {
        grid-column: 1 / 13;
        /* width: 100%; */
        margin-bottom: 5rem;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Containers for portfolio blocks images and text **/
    @media screen and (min-width: 960px) {
    .portfolio-block-left-col-container {
        grid-column: 2 / 7;
        /* width: 40%; */
        margin-bottom: 10rem;
        margin-right: 1.5rem;
        border: 0px solid black;
    }
}
    
    /** Containers for portfolio blocks images and text **/
    @media screen and (max-width: 960px) {
    .portfolio-block-right-col-container {
        grid-column: 1 / 13;
        /* width: 100%; */
        margin-bottom: 5rem;
        border: 0px solid black;
    }
}
    
    /** Containers for portfolio blocks images and text **/
    @media screen and (min-width: 960px) {
        .portfolio-block-right-col-container {
            grid-column: 7 / 12;
            /* width: 40%; */
            margin-bottom: 10rem;
            margin-left: 1.5rem;
            border: 0px solid black;
        }
    }
    
    /** Containers for portfolio indvidual blocks images and text **/
    @media screen and (max-width: 960px) {
    .portfolio-block-full-width-container {
        grid-column: 1 / 13;
        /* width: 100%; */
        /* display: grid; */
        /* grid-template-columns: repeat(12, 1fr); */
        margin-top: 0rem;
        margin-bottom: 5rem;
        border: 0px solid black;
    }
}

    /** Containers for portfolio indvidual blocks images and text **/
    @media screen and (min-width: 960px) {
    .portfolio-block-full-width-container {
        grid-column: 2 / 12;
        /* width: 100%; */
        margin-bottom: 10rem;
        border: 0px solid black;
    }
}

    .portfolio-block-image-half-width-container {
        display: flex;
        justify-content: center;
        align-content: center;
        /* height: 40vw; */
        width: 100%;
        margin-bottom: 1rem;
        grid-column: 1 / 13;
        box-sizing: border-box;
        border: 1px solid black;
    }
    
    /** SQUARE RATIO left/right image containers **/
    @media screen and (min-width: 960px) {
    .portfolio-block-image-half-width-container {
        display: flex;
        justify-content: center;
        align-content: center;
        height: 40vw;
        width: 100%;
        margin-bottom: 1rem;
        /* padding: 5% 5%; */
        box-sizing: border-box;
        border: 1px solid black;
    }
}
    
    .portfolio-block-image-full-width-container {
        display: flex;
        justify-content: center;
        align-content: center;
        grid-column: 1 / 13;
        width: 100%;
        margin-bottom: 1rem;
        box-sizing: border-box;
        border: 1px solid black;
    }

    /** Full width image container **/
    @media screen and (min-width: 960px) {
    .portfolio-block-image-full-width-container {
        grid-column: 1 / 13;
        margin-bottom: 1rem;
        /* display: flex;
        justify-content: center;
        align-content: center; */
        /* height: 40vw; */
        width: 100%;
        /* padding: 5% 5%; */
        box-sizing: border-box;
        border: 1px solid black;
    }
 }

    @media screen and (min-width: 960px) {
    img.portfolio-block-image-mobile {
        width: 100%;
        display: none;
        border: 0px solid black;
    }
}

    @media screen and (max-width: 960px) {
    img.portfolio-block-image-mobile {
        width: 100%;
        display: block;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    img.portfolio-block-image {
        width: 100%;
        display: block;
        border: 0px solid black;
    }
}

    @media screen and (max-width: 960px) {
    img.portfolio-block-image {
        width: 100%;
        display: none;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    .portfolio-half-span-image-container img.work-v {
        height: 100%;
        /* width: auto; */
        align-self: center;
        display: block;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
        .portfolio-half-span-image-container img.work-h {
            /* height: auto; */
            width: 100%;
            align-self: center; /** Not sure why this works **/
            display: block;
            border: 0px solid black;
        }
    }

    @media screen and (min-width: 960px) {
        .portfolio-full-span-image-container img.full-span {
            height: auto;
            width: 100%;
            align-self: center; /** Not sure why this works **/
            display: block;
            border: 1px solid black;
        }
    }

        /** Project title **/
        @media screen and (max-width: 960px) {
        h2.portfolio {
            /* grid-column: 2 / 12; */
            width: 85%;
            font-family: 'Roboto Condensed', sans-serif;
            font-weight: 400;
            letter-spacing: 1px;
            line-height: 1.5rem;
            margin-top: 0rem;
            margin-right: auto;
            margin-left: auto;
            text-align: left;
            text-transform: uppercase;
            border: 0px solid black;
        }
    }
        /** Project title **/
        @media screen and (min-width: 960px) {
        h2.portfolio {
            /* grid-column: 2 / 12; */
            width: 100%;
            font-family: 'Roboto Condensed', sans-serif;
            font-weight: 400;
            letter-spacing: 0px;
            line-height: 1.5rem;
            margin-top: 0rem;
            text-align: left;
            text-transform: uppercase;
            border: 0px solid black;
        }
    }

        /** Project title - first line **/
        .portfolio-title-first {
            display: inline-block;
            font-size: 1.0rem;
            /* padding: 0.2rem 0.5rem; */
            /* border-radius: 18px 18px 18px 18px; */
            /* margin-bottom: .5rem; */
            /* border: 1px solid black; */
            color: #808080;
            /* font-family: 'Open Sans'; */
        }

        /** Project title - second line **/
        .portfolio-title-second {
            display: block;
            font-size: 1.5rem;
            line-height: 1.5rem;
            border: 0px solid black;
        }

 
@media screen and (max-width: 960px) {
    p.portfolio-text-half-width {
        width: 85%;
        margin-top: 1rem;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 0rem;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    p.portfolio-text-half-width {
        width: 100%;
        margin-top: 1rem;
        margin-bottom: 0rem;
        border: 0px solid black;
    }
}

@media screen and (max-width: 960px) {
    p.portfolio-text-full-width {
        /* grid-column: 1 / 6; */
        width: 85%;
        margin-top: 1rem;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 0rem;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    p.portfolio-text-full-width {
        /* grid-column: 1 / 6; */
        width: 50%;
        margin-top: 1rem;
        margin-bottom: 0rem;
        border: 0px solid black;
    }
}

    .other-projects-links-container {
        grid-column: 1 / 13;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        box-sizing: border-box;
        border: 0px solid black;
    }
    
    /** Container for the grid **/
    @media screen and (min-width: 960px) {
    .other-projects-links-container {
        grid-column: 2 / 12;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        box-sizing: border-box;
        border: 0px solid black;
    }
}

    /** Other Projects title **/    
    h3.portfolio {
        grid-column: 2 / 12;
        font-size: 3.0rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        text-align: left;
        border: 0px solid black;
    }    


    /** Other Projects title **/
    @media screen and (min-width: 960px) {
    h3.portfolio {
        grid-column: 2 / 6;
        font-size: 2.5rem;
        line-height: 2.5rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        text-align: left;
        border: 0px solid black;
        font-family: 'Roboto Condensed', sans-serif;
    }
}
    /** Other projects individual titles **/    
    h4.portfolio {
        font-size: 2.0rem;
        line-height: 2.0rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        text-align: left;
        margin-top: 0rem;
        margin-left: 8.33%;
        color: #000000;
        border: 0px solid red;
        font-family: 'Roboto Condensed', sans-serif;
    }


    /** Other projects individual titles **/
    @media screen and (min-width: 960px) {
    h4.portfolio {
        font-size: 1.5rem;
        line-height: 1.5rem;
        font-weight: 400;
        letter-spacing: 0px;
        text-transform: uppercase;
        text-align: left;
        margin-top: 0rem;
        margin-left: 0rem;
        margin-bottom: 0rem;
        color: #000000;
        border: 0px solid red;
        font-family: 'Roboto Condensed', sans-serif;
    }
}

    /** Back to Other Proejcts **/

    @media screen and (max-width: 960px) {
    .other-projects-mobile {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* display: block; */
        }
    }
    
    @media screen and (min-width: 960px) {
    .other-projects-mobile {
        /* display: grid;
        grid-template-columns: repeat(12, 1fr); */
        display: none;
    }
}

    @media screen and (max-width: 960px) {
    .other-projects-desktop {
        /* display: grid;
        grid-template-columns: repeat(12, 1fr); */
        display: none;
        }
    }

    @media screen and (min-width: 960px) {
    .other-projects-desktop {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* display: block; */
    }
}

    .back-to-other-projects {
        grid-column: 1/13;
        padding: 1.5rem 0rem;
        font-family: 'Roboto Condensed', sans-serif;
        font-size: 1rem;
        letter-spacing: 0.05rem;
        line-height: 1.5rem;
        text-decoration: none;
        font-weight: 400;
        text-align: center;
        text-transform: uppercase;
        color: #FFFFFF;
        /* background-color: #808080; */
        background-color: #00a2ff;
    }


/***************************************************************************
****************************************************************************
******************************** CASE STUDIES ******************************
****************************************************************************
****************************************************************************/

    .case-studies-button {
        display: inline;
        text-transform: uppercase;
        padding: 0.50rem 0.50rem;
        color: black;
        background-color: white;
        border: 1px solid black;
        box-sizing: border-box;
    }

    .case-studies-button:hover {
        display: inline;
        text-transform: uppercase;
        padding: 0.5rem 0.50rem;
        color: white;
        background-color: black;
        border: 1px solid black;
        transition: 0.3s;
    }

    img.case-study {
        width: 100%;
        /* margin-bottom: 5rem; */
    }

    .pre-title {
        font-family: 'Roboto Condensed', sans-serif;
        text-transform: uppercase;
        border: 0px solid black;
    }

    h2.case-study {
        font-family: 'Roboto Condensed', sans-serif;
        text-transform: capitalize;
        margin-top: 0rem;
        /* margin-bottom: 1rem; */
        font-size: 4rem;
        line-height: 4rem;
        font-weight: 400;
        border: 0px solid black;
    }

    h3.case-study {
        font-family: 'Roboto Condensed', sans-serif;
        margin-top: 0rem;
        /* margin-bottom: 1rem; */
        font-size: 1.5rem;
        font-weight: 400;
    }

    p.case-study {
        width: 50%;
        /* margin-bottom: 1rem; */
    }

    hr.case-study {
        margin-bottom: 5rem;
        border: 1px solid #BFBFBF;
    }

    .case-studies-links-container {
        display: flex;
        justify-content: flex-start;
    }

    .case-study-link-container {
        display: block;
        width: 26%;
        margin-right: 5rem;
        text-decoration: none;
        border: 0px solid black;
    }

    /** Image container for links - ALSO FOR "OTHER PROJECTS" **/
    .case-study-link-image-container {
        margin-bottom: 1.0rem;
        width: 100%;
        box-sizing: border-box;
        overflow: hidden;
        border: 1px solid black;
    }

    .case-study-link-image-container img {
        width: 100%;
        display: block;
        transition: .3s;
    }

    .case-study-link-image-container img:hover {
        width: 100%;
        transform-origin: center;
        transform: scale(1.2);
        display: block;
    }
    

/***************************************************************************
****************************************************************************
******************************** PHOTOGRAPHY *******************************
****************************************************************************
****************************************************************************/

    /** This is because a child element will align at least to the first grid column. So 'tab-photography' no longer alings to parent grid **/
    .tabs-photography-container {
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        margin-bottom: 0rem;
        border: 0px solid black;
    }
    


    /** This is because a child element will align at least to the first grid column. So 'tab-photography' no longer alings to parent grid **/
    @media screen and (min-width: 960px) {
    .tabs-photography-container {
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        margin-bottom: 2.5rem;
        border: 0px solid black;
    }
}

    .tabs-photography {
        overflow: hidden;
        /* margin-top: 50px; */
        grid-column: 1 / 13;
        margin-left: 0;
        /* width: 400px; */
        display: flex;
        justify-content: space-between;
        border: 0px solid black;
    }
    
    @media screen and (min-width: 960px) {
    .tabs-photography {
        overflow: hidden;
        /* margin-top: 50px; */
        grid-column: 2 / 12;
        margin-left: 0;
        /* width: 400px; */
        display: flex;
        justify-content: flex-start;
        border: 0px solid black;
    }
}

    /* Style the buttons that are used to open the tab content */
    .tabs-photography button {
        background-color: inherit;
        /* float: left; */
        /* border: none; */
        outline: none;
        cursor: pointer;
        padding: 30px 0px;
        width: 50%;
        transition: 0.3s;
        border-radius: 0px;
        color: #000000;
        /* color: #00a2ff; */
        background-color: #FFFFFF;
        border: 2px solid #000000;
        /* border: 2px solid #00a2ff; */
    }

    @media screen and (min-width: 960px) {
    .tabs-photography button {
        /* text-transform: uppercase; */
        margin-right: 0rem;
        outline: none;
        cursor: pointer;
        padding: 0.5rem 0.5rem;
        width: auto;
        transition: 0.3s;
        border-radius: 0;
        color: #000000;
        /* color: #00a2ff; */
        background-color: #FFFFFF;
        border: 1px solid #000000;
        /* border: 1px solid #00a2ff; */
    }
}

    /* Change background color of buttons on hover */
    .tabs-photography button:hover {
        color: #FFFFFF;
        background-color: #000000;
        border: 1px solid #000000;
        /* background-color: #00a2ff;
        border: 1px solid #00a2ff; */
    }

    /* Create an active/current tablink class */
    .tabs-photography button.active {
        color: #FFFFFF;
        background-color: #000000;
        border: 2px solid #000000;
        /* background-color: #00a2ff;
        border: 2px solid #00a2ff; */
    }
    
    /* Create an active/current tablink class */
    @media screen and (min-width: 960px) {
    .tabs-photography button.active {
        color: #FFFFFF;
        background-color: #000000;
        border: 1px solid #000000;
        /* background-color: #00a2ff;
        border: 1px solid #00a2ff; */
    }
}

    /** Home photography buttons text **/
    h3.home-photography {
        font-family: 'Roboto Condensed', sans-serif;
        font-size: 1.5rem;
        font-weight: 400;
        letter-spacing: 2px;
        border: 0px solid black;
    }
    
    /** Home photography buttons text **/
    @media screen and (min-width: 960px) {
    h3.home-photography {
        font-family: 'Roboto Condensed', sans-serif;
        font-size: 1.0rem;
        font-weight: 400;
        letter-spacing: 1px;
        text-transform: uppercase;
        text-align: center;
        margin: 0rem;
        border: 0px solid red;
    }
}

    /** Home photography buttons **/
    .tabs-photography button h3 {
        margin: 0;
        border: 0px solid red;
    }

    /** Home photography buttons **/
    @media screen and (min-width: 960px) {
    .tabs-photography button h3 {
        margin: 0;
        border: 0px solid red;
    }
}

    /* Style the tab content */
    .tabcontent-photography-links-container {
        grid-column: 1 / 13;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 0px 0px;
        border: 0px solid #ccc;
        background-color: white;
        border-top: none;
        -webkit-animation: fadeEffect 1s;
        animation: fadeEffect 1s;
        /* margin-top: 50px; */
        margin-top: 0px;
        /* margin-right: auto;
        margin-left: auto;
        width: 85%; */
    }

    @media screen and (min-width: 960px) {
    /* Style the tab content */
    .tabcontent-photography-links-container {
        grid-column: 2 / 12;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 0px 0px;
        /* border: 0px solid #ccc; */
        border: 0px solid black;
        box-sizing: border-box;
        background-color: white;
        border-top: none;
        -webkit-animation: fadeEffect 1s;
        animation: fadeEffect 1s;
        margin-top: 0rem;
    }
}

    /* Fade in tabs */
    @-webkit-keyframes fadeEffect {
        from {opacity: 0;}
        to {opacity: 1;}
    }

    @keyframes fadeEffect {
        from {opacity: 0;}
        to {opacity: 1;}
    }

    /** SQAURE SHAPE Individual items for the photography grid **/
    .photography-link {
        position: relative;
        width: 50%;
        border: 2px solid rgba(0,0,0,1);
        box-sizing: border-box;
        margin: 0px 0px 0px 0px;
        background-size: contain;
        background-size: 103%; /** Allows image to go beyond frame - 103% **/
        background-position: center;
        background-repeat: no-repeat;
        background-color: white;
        transition: .3s;
    }

    @media screen and (min-width: 960px) {
    .photography-link {
        position: relative;
        /* width: 20%; */
        width: 26%;
        border: 1px solid rgba(0,0,0,1);
        box-sizing: border-box;
        margin: 0rem 0rem 5rem 0rem;
        background-size: contain;
        background-size: 103%; /** Allows image to go beyond frame - 103% **/
        background-position: center;
        background-repeat: no-repeat;
        background-color: white;
        transition: .3s;
        }
    }

    /** NOTE: Portfolio uses scale since the that uses an <IMG> as opposed a Background Image **/
    .photography-link:hover {
        background-size: 123%;
    }

    .photography-link-overlay {
        position: absolute;
        /* bottom: 0; These make the part of the website have the overlay effect as well.
        left: 0;
        right: 0; */
        background-color: rgba(0,0,0,0);
        width: 100%;
        height: 100%;
        transition: .3s;
    }

    /* .photography-link:hover {
        border: 0px solid white;
        background-size: 110%;
    } */

    .photography-link:after {
        content: "";
        display: block;
        padding-bottom: 100%;
    }

    .photography-link img {
        width: 100%;
        display: block;
        transition: .3s;
    }

    .photography-link img:hover {
        width: 100%;
        transform-origin: center center;
        transform: scale(1.2);
        display: block;
    }

/****************************************************************************
 ****************************************************************************
 ******************************** CONTACT ***********************************
 ****************************************************************************
 ****************************************************************************/


    .contact-paragraph {
        grid-column: 2 / 12;
        margin-top: 0rem;
        margin-bottom: 1.25rem;
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    .contact-paragraph {
        grid-column: 2 / 6;
        margin-top: 0rem;
        margin-bottom: 2.5rem;
        border: 0px solid black;
    }
}

    .contact-paragraph a {
        color: #00a2ff;
        text-decoration: none;
    }

    .contact-paragraph a:hover {
        color: #00a2ff;
        text-decoration: underline;
    }

    /** Contact form container **/
    .contact-form-container {
        margin-bottom: 0rem; /* Last element before footer */
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border: 0px solid blue;
    }

    /** Sets color for place holder text in contact form fields **/
    ::placeholder {
        color: gray;
    }

    /** Sets font styles for all contact form fields **/
    /* .contact-form-name-field,
    .contact-form-email-field,
    .contact-form-message-field,
    .contact-form-submit-button {
        font-family: 'Open Sans', sans-serif;
        font-size: 1rem;
    } */

    /** Sets shape and color attributes to fields **/
    .contact-form-name-field,
    .contact-form-email-field {
        height: 40px;
        /* border-radius: 30px; */
        border-radius: 0px;
        padding-left: 15px;
        margin-bottom: 20px;
        border: 1px solid black;
        grid-column: 2 / 12;
    }

    @media screen and (min-width: 960px) {
    .contact-form-name-field,
    .contact-form-email-field {
        height: 40px;
        /* border-radius: 30px; */
        padding-left: 15px;
        margin-bottom: 1.25rem;
        /* margin-bottom: 20px; */
        border: 1px solid black;
        grid-column: 2 / 6;
    }
}

    /** Sets shape and color attributes to fields **/
    .contact-form-message-field {
        height: 150px;
        /* border-radius: 30px; */
        border-radius: 0px;
        padding-top: 10px;
        padding-left: 15px;
        margin-bottom: 20px;
        border: 1px solid black;
        grid-column: 2 / 12;
    }

    @media screen and (min-width: 960px) {
        .contact-form-message-field {
        height: 150px;
        /* border-radius: 30px; */
        padding-top: 10px;
        padding-left: 15px;
        margin-bottom: 1.25rem;
        /* margin-bottom: 20px; */
        border: 1px solid black;
        grid-column: 2 / 6;
    }
}

    /** Sets shape and color attributes to Submit button **/
    .contact-form-submit-button {
        padding: 15px 0px;
        border: 1px solid #00a2ff;
        background-color: #FFFFFF;
        color: #00a2ff;
        transition: .3s;
        /* border-radius: 30px; */
        border-radius: 0;
        grid-column: 2 / 12;
    }

    @media screen and (min-width: 960px) {
        .contact-form-submit-button {
        padding: 8px;
        border: 1px solid #00a2ff;
        background-color: #FFFFFF;
        color: #00a2ff;
        transition: .3s;
        /* border-radius: 30px; */
        grid-column: 5 / 6;
        text-transform: uppercase;
        cursor: pointer;
    }
}

    @media screen and (min-width: 960px) {
    .contact-form-submit-button:hover {
        background-color: #00a2ff;
        color: #FFFFFF;
    }
}

     .contact-form-footer {
        grid-column: 2 / 12;
        text-align: center;
        width: auto;
        background-color: lightgray;
        padding: 15px 20px;
        border-radius: 30px;
        margin-top: 0px;
        border: 0px solid black;   
    }

    @media screen and (min-width: 960px) {
    .contact-form-footer {
        grid-column: 4 / 10;
        text-align: center;
        width: auto;
        background-color: lightgray;
        padding: 15px 20px;
        border-radius: 30px;
        margin-top: 0px;
        border: 0px solid black;
    }
}

    @media screen and (min-width: 960px) {
    .contact-form-footer {
        grid-column: 2 / 7;
        text-align: center;
        width: auto;
        background-color: lightgray;
        padding: 15px 20px;
        border-radius: 30px;
        margin-top: 0px;
        border: 0px solid black;
    }
}

/********** CONTACT FORM - THANK YOU **********/

    /* Thank you! */
    h1.contact-thank-you {
        grid-column: 4 / 10;
        font-size: 5.0rem;
        line-height: 5.0rem;
        font-weight: 700;
        letter-spacing: 3px;
        text-align: center;
        text-transform: uppercase;
        margin: 0rem 0rem 1.25rem 0rem;
        font-family: 'Roboto Condensed', sans-serif;
        border: 0px solid red;
    }

    /* Message on it's way */
    @media screen and (max-width: 960px) {
    p.contact-thank-you {   
        grid-column: 5 / 9;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        margin: 0rem 0rem 5rem 0rem;
        border: 0px solid black;
    }
}

    /* Message on it's way */
    @media screen and (min-width: 960px) {
    p.contact-thank-you {   
        grid-column: 5 / 9;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        margin: 0rem 0rem 0rem 0rem;
        border: 0px solid black;
    }
}

    /* Link within contact paragraph */
    p.contact-thank-you a {
        color: #00a2ff;
        text-decoration: none;
    }

    /* Link within contact paragraph */
    p.contact-thank-you a:hover {
        text-decoration: underline;
    }

    /* Click text */
    @media screen and (max-width: 960px) {
    p.contact-thank-you-click {
        display: none;
        grid-column: 1 / 13;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        margin: 0rem 0rem 0rem 0rem;
        border: 0px solid black;
    }
 }

    /* Click text */
    @media screen and (min-width: 960px) {
    p.contact-thank-you-click {
        display: inline;
        grid-column: 1 / 13;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        margin: 0rem 0rem 0rem 0rem;
        border: 0px solid black;
    }
}

    /* Click text - link */
    p.contact-thank-you-click a {
        color: #00a2ff;
        text-decoration: none;
    }

    /* Click text - link */
    p.contact-thank-you-click a:hover {
        text-decoration: underline;
    }

    /* Tap container */
    @media screen and (max-width: 960px) {
    .contact-thank-you-tap-container {
        display: inline;
        grid-column: 1 / 13;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        text-decoration: none;
        border: 0px solid black;
    }
}

    /* Tap container */
    @media screen and (min-width: 960px) {
    .contact-thank-you-tap-container {
        display: none;
        grid-column: 1 / 13;
        text-align: center;
        font-size: 1.0rem;
        line-height: 1.5rem;
        font-weight: 400;
        border: 0px solid black;
    }
}

    /* Tap */
    @media screen and (max-width: 960px) {
    .contact-thank-you-tap-container a {
        display: block;
        margin-right: auto;
        margin-left: auto;
        width: 30%;
        /* color: white; */
        text-decoration: none;
        padding: 0rem 0rem;
        background-color: #FFFFFF;
        border: 0px solid #00a2ff;
    }
}

    .contact-thank-you-tap-container a img {
        width: 100%;
        margin-bottom: 0.5rem;
        display: block;
        border: 0px solid black;
    }

    .contact-thank-you-tap-container div {
        width: 100%;
        line-height: 1rem;
        color: #00a2ff;
        border: 0px solid black;
    }

    .lets-connect-container {
        grid-column: 2/6;
        border: 0px solid black;
    }

    .lets-connect-container img {
        width: 40px;
        margin-right: 10px;
    }

/***************************************************************************
****************************************************************************
********************************** FOOTER **********************************
****************************************************************************
****************************************************************************/

    /* For individual portfolio pages to compensate for margins above it */
    footer {
        width: 100%;
        height: 4rem;
        color: #000000;
        align-items: center;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        margin-top: 0rem;
        /* margin-top: -2.5rem; */
        background-color: #FFFFFF;
        border-top: 1px solid black;
    }

    /* For individual portfolio pages to compensate for margins above it */
    @media screen and (min-width: 960px) {
    footer {
        width: 100%;
        height: 4rem;
        color: #000000;
        align-items: center;
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        margin-top: 0rem;
        /* margin-top: -5rem; */ /* To compensate for margins above it */
        background-color: #FFFFFF;
        border-top: 1px solid black;
    }
}

    .no-grid {
        grid-column: 2 / 12;
        width: 100%;
        box-sizing: border-box;
        border: 0px solid black;
    }

    .no-grid div {
        width: 100%;
        text-align: center;
        border: 0px solid black;
    }
    @media screen and (min-width: 960px) {
    .no-grid div {
        width: 100%;
        text-align: center;
        border: 0px solid black;
    }
}

    .footer-left {
        grid-column: 2 / 12;
        text-align: center;
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    .footer-left {
        grid-column: 2 / 7;
        text-align: left;
        color: #000000;
        border: 0px solid black;
    }
}

    .footer-right {
        grid-column: 2 / 12;
        margin-top: 3px;
        text-align: center;
        border: 0px solid black;
    }

    @media screen and (min-width: 960px) {
    .footer-right {
        grid-column: 8 / 12;
        text-align: right;
        border: 0px solid black;
    }
}

    .footer-right a {
        /* color: #FFFFFF; */
        color: #000000;
        text-decoration: none;

    }

    .footer-right a:hover {
        text-decoration: underline;
    }

/***************************************************************************
****************************************************************************
****************************** HAMBURGER MENU ******************************
****************************************************************************
****************************************************************************/

    /** CSS Grid didn't seem to work for <BODY> tag **/
    .container {
        /* position: absolute; why won't this go below FOOTER? */
        position: sticky;
        left: 0;
        bottom: 0;
        width: 100%;
        box-sizing: border-box;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border-top: 1px solid black;
    }

    /** Hamburger Menu not needed for desktop. DISPLAY = NONE **/
    @media screen and (min-width: 960px) {
    .container {
        /* position: absolute; why won't this go below FOOTER? */
        position: sticky;
        left: 0;
        bottom: 0;
        width: 100%;
        box-sizing: border-box;
        display: none;
        grid-template-columns: repeat(12, 1fr);
        border-top: 1px solid black;
    }
}

    .topnav {
        overflow: hidden;
        background-color: rgba(255,255,255,1);
        /* position: absolute;
        left: 0;
        bottom: 0; */
        /* display: flex;
        justify-content: flex-start;
        flex-wrap: wrap; */
        /* font-size: 1rem; */
        grid-column: 1 / 13;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        border-top: 0px solid black;
    }

    .topnav #myLinks {
        display: none;
        grid-column: 1 / 13;
        margin-bottom: 0px;
        max-height: 50vh;
        overflow: scroll;
        padding: 0;
        border: 0px solid blue;
    }

    .topnav a {
        color: black;
        padding: 1rem 3rem;
        text-decoration: none;
        /* font-size: 25px; */
        display: block;
        flex-wrap: wrap;
        border: 0px solid red;
        background-color: rgba(255,255,255,0);
    }

    .topnav .section-header {
        color: black;
        padding: 1rem 1rem;
        text-decoration: none;
        /* font-size: 25px; */
        /* font-weight: 700; */
        letter-spacing: 0px;
        text-transform: uppercase;
        display: block;
        flex-wrap: wrap;
        border: 0px solid red;
        background-color: rgba(255,255,255,0);
    }

    .topnav a.active {
        color: #00a2ff;
    }

    .topnav a.icon {
        position: relative;
        display: block;
        background: white;
        padding: 14px 16px;
        font-size: 25px;
        grid-column: 1 / 2;
        text-align: center;
        color: #00a2ff;
        border: 0px solid #00a2ff;
        /* border-radius: 30px 30px 30px 30px; */
    }

    .other-projectsA { /** !!! DELETE? !!! **/
        grid-column: 2 / 13;
        display: flex;
        align-items: center;
        padding-left: 20px;
        background-color: rgba(255,255,255,0);
        /* background-image: url(../graphics/nav-icons-prev-project-hover.png); */
        background-repeat: no-repeat;
        background-position: center left;
        background-size: 1rem;
        border: 0px solid red;
    }

    .topnav a:hover {
        background-color: rgba(255,255,255,0);
        color: black;
    }

    /* .active {
        background-color: #4CAF50;
        color: white;
        grid-column: 2 / 13;
    } */