footer{
    height: auto;
    width: 100%;

    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;

    flex-wrap: wrap;

    background-color: var(--darkGray);
    color: white;

    margin-top: auto;
    padding: 15px 0 15px 0;
}
footer > p{
    color: white;
}

footer > *{
    padding: 8px;
}

header{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;

    height: 100px;
    width: 100%;

    background-color: rgb(255, 255, 255, 0.7);

    position: sticky;
    top: 0;
    z-index: 1;

    backdrop-filter: blur(10px);
}

.logo{
    height: 80px;

    position: relative;
    z-index: 10;

    margin: 10px 10px 10px 50px;
}

.fixedIcon{
    position: fixed;
    top: 110px;
    right: 20px;
}

.fixedIcon img:hover{
    transition: 0.4s;
    transform: scale(1.2) rotate(5deg);
    transform-origin: center;
}

#mailIcon{
    display: none;
}

.fixedIcon img{
    border-radius: 30px;
    width: 40px;
    height: 40px;

    padding: 5px;
    border: 4px solid var(--blue);

    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;

    background-color: white;

    cursor: pointer;

    transition: 0.4s;
    transform: scale(1) rotate(0deg);
    transform-origin: center;
}

.fixedIconText{

    border-radius: 30px;


    overflow: hidden;
    position: absolute;
}

#mailIcon:not(:checked) ~ .fixedIconText{
    height: 55px;
    width: 55px;

    top: 1px;
    right: 1px;

    transition: 0.3s ease 0.2s, width 0.3s ease 0.2s, top 0.1s ease 0.4s, right 0.1s ease 0.4s;
}

#mailIcon:checked ~ .fixedIconText{
    height: 50px;
    width: 180px;
    padding: 30px 70px 30px 20px;

    top: 0;
    right: 0;

    transition: 0.3s ease, top 0.1s ease, right 0.1s ease;
}

.fixedIconText a{
    font-weight: bolder;
}

.fixedIconText p{
    margin-bottom: 10px;
    font-size: 1.2em;
    font-weight: bolder;
}

#mailIcon:not(:checked) ~ .fixedIconText a, #mailIcon:not(:checked) ~ .fixedIconText p{
    opacity: 0;
    transition: opacity 0.2s ease;
}

#mailIcon:checked ~ .fixedIconText a, #mailIcon:checked ~ .fixedIconText p{
    opacity: 1;
    transition: opacity 0.2s ease 0.3s;
}

.errorPage{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}