@import url('https://fonts.googleapis.com/css2?family=Averia+Serif+Libre:wght@400;700&family=Jacques+Francois&family=Lato:wght@400;700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

html{
    height: 100%;
}

body{
    background-color: var(--color-background);
    margin: 0;

    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 60px 160px 1fr 80px;
    grid-template-areas: 
    "header-contact-info"
    "givia-header"
    "."
    "footer";
    min-height: 100%;
}

:root{
    --color-givia-main: #1E78C2;
    --color-givia-second: #3AB5E6;
    --color-givia-header: #C2681E;
    --color-givia-header-second: #E5C6B4;
    --color-background: #F6F5FD;
}

*{
    font-family: 'Lato', sans-serif;
}

p{
    margin: 0;
}



.header-contact-info{
    grid-area: header-contact-info;

    height: 60px;
    background: linear-gradient(95deg, #1E78C2 29.28%, #3AB5E6 126.05%);

    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

.header-contact-info .logo-number-pair{
    height: 36px;
    display: flex;
    align-items: center;
    font-size: 20px;
    color: white;
    /* margin-inline: 10vw; */

    min-width: max-content;
    text-decoration: none;
}

.header-contact-info .logo-number-pair>img{
    height: 100%;
    margin-right: 7px;
    
}

.givia-header{
    z-index: 999;
    grid-area: givia-header;

    display: flex;
    justify-content: center;
    align-items: center;
    height: 160px;
    background: linear-gradient(274deg, rgba(194, 104, 30, 0.33) 24.94%, rgba(51, 230, 140, 0.00) 101.61%);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.givia-header > img{
    height:80%;
}

.header-selections{
    color: var(--color-givia-main);
    display: flex;
    align-items: center;
    gap: 30px;
    margin-left: 20vw;
    font-size: 20px;
    height: 100%;
}

.header-selections > p{
    cursor: pointer;
}

.header-selections > a {
    color: var(--color-givia-main);
    text-decoration: none;
}

.header-selections > a:hover{
    text-decoration: none;
}

.header-selections > a > p{
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
}

.header-selections > a.divisions-container > a{
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 2px;
}

a, a:visited, a:hover, a:active{
    color:inherit;
}

.header-selections > a > p:hover{
    text-decoration: underline;
}
/* 
.header-selections > a.drop-down-selection{
    height: 30%;
    
} */

/* The currently selected element */
.header-selections-selected{
    color: var(--color-background) !important;
    background-color: var(--color-givia-main);
    padding: 5px;
    padding-inline: 10px;
    border-radius: 10px;
    text-decoration: none;
}

.divisions-container{
    position: relative;
    padding-block: 5px;
}

.drop-down-selection{
    text-decoration: none;
}

.divisions-drop-down-menu{
    display: none;
    background-color: var(--color-background);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    width: 40vw;
    padding: 20px;
    /* position: fixed;
    right: 200px;
    top: 175px; */

    position: absolute;
    left: -250px;
    top: 29px;

    border-radius: 0px 0px 10px 10px;
    color: var(--color-givia-main);

    transition: all 250ms ease-in-out;

    z-index: 2000;
}

.divisions-drop-down-menu > a{
    text-decoration: none;
}

.divisions-drop-down-menu > a:hover{
    text-decoration: underline;
    cursor: pointer;
}

.divisions-hovered{
    display:grid !important;
    grid-template-columns: repeat(3,1fr);
    row-gap: 20px;
    column-gap: 20px;
}

.language-label{
    height: 35%;
}

.language-selector-container{
    position: relative;
}

.language-selector{
    font-size: 17px;

    display: none;
    
    background-color: var(--color-background);
    border-radius: 0px 0px 10px 10px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    width: 70px;
    position: absolute;
    left: -20px;
    padding: 7px;

    color: var(--color-givia-main);
}

.language-selector > p:hover{
    text-decoration: underline;
    cursor: pointer;
}

.language-hovered{
    display:flex !important;
    flex-flow: column nowrap;
    align-items: center;
    gap: 7px;
}


.footer{
    grid-area: footer;

    height: 80px;
    width: 100%;
    color: var(--color-background);
    background: linear-gradient(101deg, #1E78C2 35.2%, #3AB5E6 92.88%);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25) inset;

    display: flex;
    justify-content: center;
    align-items: center;

    /* position: fixed;
    bottom: 0px; */
}

.footer > p {
    font-size: 20px;
}

.mobile-menu{
    display: none;
}

.hamburger-menu-icon{
    display: none;
}

@media(max-width: 40em){
    body{
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 90px 1fr 80px;
        grid-template-areas: 
        "givia-header"
        "."
        "footer";
        min-height: 100%;
    }

    .header-contact-info{
        display: none;
    }

    .header-selections{
        display: none;
    }

    .hamburger-menu-icon{
        display: block;
        position: absolute;
        left: 30px;
    }



    .givia-header{
        height: 90px;
        
    }

    .mobile-menu > .givia-header{
        grid-area: header;
        z-index: 300;
        box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
        background: linear-gradient(287deg, #C2681E -37.25%, #BFDBBE 51.06%); 
    }

    .givia-header > img{
        height: 80%;
    }

    .dark-space{
        grid-area: dark-space;
        background: rgba(0, 0, 0, 0);
    }

    .dark-space >div{
        width: fit-content;
        position: relative;
        top: 50px;
        left: 30%;
    }

    


    .mobile-menu{
        display: grid;
        grid-template-rows: 90px 138px 1fr 150px;
        grid-template-columns: 80% 20%;
        grid-template-areas: 
            "header dark-space"
            "contact-info dark-space"
            "menu-selections dark-space"
            "language-selections dark-space";
        position: fixed;
        top: 0;
        left: 0;
        z-index: 2000;
        width: 100vw;
        height: 100svh;
        
        transform: translateX(-100vw);
        transition: transform 250ms ease-in-out;
        
        touch-action: none;
    }

    .mobile-menu > *{
        width: 100%;
    }

    .mobile-menu-contact-info{
        grid-area: contact-info;
    }

    .logo-number-pair{
        height: 45px;
        background: linear-gradient(95deg, #1E78C2 29.28%, #3AB5E6 126.05%);
        box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
        border-bottom: 1px solid var(--color-givia-second);

        display: flex;
        align-items: center;
        justify-content: center;

        text-decoration: none;
    }

    .logo-number-pair > p{
        
        font-size: 16px;
        color: var(--color-background);
        margin-left: 10px;
    }

    .logo-number-pair >img{
        height: 60%;
    }

    .mobile-menu-selection{
        display: flex;
        flex-flow: column;
        align-items: center;

        grid-area: menu-selections;
        height: 100%;
        background-color: var(--color-background);
    }

    .mobile-menu-selection > a{
        text-decoration: none;
        color: var(--color-givia-main);

        font-size: 40px;
        font-style: normal;
        font-weight: 500; 

        /* text-align: center; */
        border-bottom: 5px solid var(--color-givia-main);
        /* padding-block: 17.5%; */
        width: 100%;
        height: 25%;

        display: flex;
        justify-content: center;
        align-items: center;
    }

    .mobile-menu-language-selection{
        background-color: var(--color-background);
        width: 100%;
        height: 100%;

        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;

        grid-area: language-selections;
        
    }
    .mobile-menu-language-selection > div >label{
        font-size: 32px;
        color: var(--color-givia-main);
        font-weight: 500; 
    }

    .mobile-menu-language-selection > div >input{
        height: 33px;
        color: var(--color-givia-main);
    }

    .footer > p{
        text-align: center;
        font-size: 15px;
        width: 210px;
    }
}

@media(min-width:40em) and ( max-width: 1100px){

    .header-contact-info{
        display: flex;
        flex-flow: row wrap;
        justify-content: space-evenly;
        margin:0;
    }


    .givia-header{
        display: flex;
        flex-flow: column nowrap;
        justify-content: space-evenly  ;
    }

    .givia-header>img{
        height: 80px;
    }

    .header-selections{
        margin: 0;
        height: fit-content;
    }

    .divisions-drop-down-menu{
        left: -20vw;
        width: 70vw;
    }
}