@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

:root {
    --teal-deep:     #143E3C;
    --teal-heritage: #2F807C;
    --gold:          #ECB94C;
    --cream:         #F4ECD9;
    --charcoal:      #18201F;
}

body{
    background: var(--cream);
    font-family: 'Inter', sans-serif;
    color: var(--charcoal);
    margin: 0;
    padding: 0;
}

h2{
    font-size: 100%;
}

.achievements{
    font-weight: bolder;
    text-align: left;
}

    /*  NavHeader stuff 
    The top bar with Main, About, Contact
    */
.navHeader ul{
    background-color: var(--teal-deep);
    color: var(--cream);
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: fixed;
    text-align: center;
    width: 100%;
}

.navSpecialHeader ul{
    background-color: var(--teal-deep);
    color: var(--cream);
    list-style-type: none;
    margin: 0;
    padding: 0;
    /*position: fixed;*/
    text-align: center;
    width: 100%;
}

.navHeader li{
    display: inline-block;
    padding: 30px 45px;
    margin: 0px;
}
.navHeader li:first-child{
    padding-left: 0px;
}
.navHeader li:last-child{
    padding-right: 0px;
}

.navHeader a{
    color: var(--cream);
    text-decoration: none;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
}

.navHeader a:hover{
    text-decoration: underline;
}

#navHeaderInversed ul,  #navHeaderInversed li, #navHeaderInversed a{
    background-color: var(--teal-deep);
    color: white;
}

.horizontalLine{
    height: 1px;
    width: 60%;
    border-width:0;
    color:var(--teal-deep);
    background-color:var(--teal-deep);
}

    /*  Main Titles
    Tract Games, Good-Fun Games
    */
.titles{
    background-color: var(--teal-deep);
    color: var(--cream);
    text-align: center;
    font-family: 'Plus Jakarta Sans', sans-serif;
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.titles #TG {
    font-size: clamp(3rem, 8vw, 6rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    padding: 0 20px 0.35em 20px;
    margin: 0;
    display: inline-block;
    padding-bottom: 0.3em;
}

.titles #GFG {
    font-size: clamp(1rem, 2vw, 1.25rem);
    font-weight: 400;
    color: var(--gold);
    letter-spacing: 0.01em;
    padding: 0 20px 0 20px;
    margin: -0.15em 0 0 0;
}

.heroNav {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    justify-content: center;
    padding: 6.5em 20px 0 20px;
}

.heroNav a {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: clamp(1.25rem, 3vw, 2rem);
    font-weight: 600;
    color: var(--cream);
    text-decoration: none;
    letter-spacing: 0.04em;
    border-top: 3px solid var(--gold);
    border-bottom: 3px solid var(--gold);
    padding: 0.6em 1.4em;
    transition: background 0.2s, color 0.2s;
    cursor: pointer;
}

.heroNav a:hover {
    background: var(--gold);
    color: var(--charcoal);
}

#freeGames{
    background:white;
    color: black;
    font-size: 250%;
    border-bottom: 1px solid var(--teal-deep);
    margin: 50px 19%;
    
}
    /* Game Displays
    Pictures of games and stuff
    */
.gameDisplays {
    background-color: white;
}

.gameDisplays figure{
    margin: 0;
    overflow: visible;
    padding: 30px 20px;
    text-align: center;
}

.gameDisplays figure img{
    border-radius: 10px;
    box-shadow: grey 0px 0px 10px;
    width: 200px;
}

.gameDisplays figcaption{
    margin-top: 15px;
    font-size: 135%;
}

.gameLinks{
    flex-direction: row;
}

.gameLinks div{
    display: inline-block;
    padding: 10px;
    margin: 5px 10px;
    
}

.appNames{
    font-weight: bold;
    margin: 10px 10px 5px 10px;
}

.subtitles{
    color: var(--teal-deep);
    font-size: 14px;
    font-style: italic;
}

/* Footer */
footer{
    background-color: var(--teal-deep);
    color: var(--cream);
    font-family: 'Plus Jakarta Sans', sans-serif;
    padding: 10px 20px 10px 30px;
    text-align: center;
}

/*  Game screens
    when user clicks on an icon */
    
.largeLogoSection{
    background: var(--teal-deep);
    padding: 100px 40px 50px 40px;
    text-align: center;
    color: white;
}

.largeLogoSection h1{
    font-size: 225%;
    margin: 0;
}

.largeLogoSection h2{
    font-size: 80%;
    margin: 10px 10px;
    margin-bottom: 40px;
}

.largeLogoSection img{
    margin: 50px;
    width: 200px;
}

.largeLogoSection p{
    border: 5px double rgb(83, 23, 152);
    line-height: 25px;
    padding: 10px;
}
/*
    Contact Page AND 
    About Page
*/

.contact h1, .about h1, .about h2{
    border-bottom: 2px solid var(--gold);
    padding-top: 50px;
    margin: 0 19% 0px 19%;
    text-align: center;
    font-family: 'Plus Jakarta Sans', sans-serif;
    color: var(--teal-deep);
}

.about div{
    text-align: center;
    margin: 0;
    padding: 0;
}

.about h2{
    padding-top: 0px;
    font-size: 150%;
}

.about img{
    width: 35%;
    max-width: 200px;
    margin: 20px;
}

.about p, .about a{
    line-height: 25px;
    margin: 25px;
    max-width: 700px;
    display: inline-block;
}

.about span{
    font-size: 200%;
}

.contact .contactForms{
    font-size: 120%;
    margin: 90px 12px;
}

.dataAnalyticsDescription{
    padding-top: 100px;
    text-align: center;
    border-color:  red;
}

.dataAnalyticsDescription p{
    line-height: 25px;
    margin: 25px;
    max-width: 700px;
    display: inline-block;
    border-color: green;
}

.dataAnalyticsDescription .disclaimer{
    font-size: 12.5px;
    font-style: oblique;
}

.dataAnalyticsDescription #boldStart{
    font-size: 30px;
    font-weight: bold;
    text-decoration: underline;
}

.dataAnalyticsDescription img{
    margin: 10px;
    margin-top: 55px;
    width: 82.5%;
    height: 82.5%;
}

.snapchatReport{
    margin: 0px 25px 15px 25px;
    line-height: 25px;
    max-width: 700px;
    text-align: center;
    margin-left: auto; /* super weird, wouldn't center like others, so had to do this*/
    margin-right: auto;
}

.snapchatReport p{
    text-align: center;
    display: inline-block;
}

.snapchatReport div{
    background-color: deepskyblue;
}

.snapchatReport img{
    margin: 10px;
    margin-top: 55px;
    max-width: 500px;
    width: 82.5%;
    height: 82.5%;
}

.reportSectionHeader{
    font-size: 25px;
    margin: 0px;
    padding:0px;
}

.reportSectionHeaderMain{
    text-decoration: underline;
    font-size: 30px;
}

.companyName{
    font-style: italic;
}
/*  Media Orientations
If what's in () is true, we will add to page 
    Goes in order!! (Most specific must go below)
    
    Adjusting for smaller screens */
@media screen and (max-width: 550px){
    .navHeader li{
        padding: 30px 20px;
    }
}

/* Adjusting for larger screens */
@media screen and (min-width: 600px){
    
    .contact .contactForms{
        font-size: 105%;
        margin: 90px 0 90px 19%;
    }
}