*{
    font-family: 'Gochi Hand', cursive;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
}
.container{
    position:fixed;
    top: 2.5vh;
    bottom: 2.5vh;
    right: 20vw;
    left: 20vw;
}
.flexColumn{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    align-items: center;
}
.flexRow{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
}
.button{
    padding: .2em .4em;
    border:.1em solid black;
    border-radius: .4em;
    background-color: white;
    transition: 0.2s;
    margin: .6em;

    -webkit-box-shadow: 10px 10px 4px 0px rgb(199, 199, 199);
    -moz-box-shadow: 10px 10px 4px 0px rgb(199, 199, 199);
    box-shadow: 10px 10px 4px 0px rgb(199, 199, 199);
}
.button:hover{
    color:white;
    background-color: black;
}

.textContainer{
    height: 40vh;
    justify-content:stretch;

    overflow: auto;
    overflow-x: hidden;
}
.imgContainer{
    /*set dimension*/
    height: 50vh;
}
img{
    /*follow container dimension*/
    max-width: 100%;
    max-height: 100%;
    display: block; /* remove extra space below image */
}
.topMargin{
    margin-top: 2vh;
}

/* Track */
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px grey;
  border-radius: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: black;
  border-radius: 10px;
}



.sidePanelBorder{
    position: fixed;
    border-left: .5vw solid black;

    top: 12vh;
    bottom: 45vh;
    left: 93vw;

    width: 50vw;

    background-color: white;
}
.sidePanel{
    position: fixed;
    border: .2vw solid black;

    top: 12vh;
    bottom: 45vh;
    left: 89vw;

    width: 50vw;

    transition: .5s;

    background-color: white;
}
.sidePanel:hover{
    left: 49vw;
}
.sidePanelBorder:hover ~ sidePanel{
    left: 49vw;
}
.sidePanelTitle{
    writing-mode: vertical-rl;
    text-orientation: upright;

    position: absolute;
    left: 0;
    top: auto;
    bottom: auto;
    right: 4vw;

    font-size: 16px;

    -webkit-text-stroke-width: thick;
    width: 2vw;
}
.incazzometroImgContainer{
    height: 32vh;
}

@media only screen and (max-width: 1200px) {
    *{
        font-size: 20px;
    }

    .container{
        top: 2.5vh;
        bottom: 2.5vh;
        right: 18vw;
        left: 18vw;
    }

    .topMargin{
        margin-top: 3vh;
    }

    .sidePanelBorder{
        border-left: .5vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 93vw;
    
        width: 50vw;
    }

    .sidePanel{
        border: .2vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 89vw;
    
        width: 50vw;
    }

    .sidePanelTitle{
        left: 0;
        right: 4vw;
        -webkit-text-stroke-width: thick;
        width: 3vw;
    }
}

@media only screen and (max-width: 800px) {
    *{
        font-size: 18px;
    }

    .container{
        top: 2.5vh;
        bottom: 2.5vh;
        right: 10vw;
        left: 10vw;
    }

    .topMargin{
        margin-top: 1vh;
    }

    .sidePanelBorder{
        border-left: .5vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 93vw;
    
        width: 50vw;
    }

    .sidePanel{
        border: .2vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 87vw;
    
        width: 50vw;
    }

    .sidePanelTitle{
        left: 0;
        right: 4vw;
        -webkit-text-stroke-width: thick;
        width: 4.5vw;
    }
}

@media only screen and (max-width: 600px) {
    *{
        font-size: 15px;
    }

    .container{
        top: 2.5vh;
        bottom: 2.5vh;
        right: 10vw;
        left: 10vw;
    }

    .topMargin{
        margin-top: 1vh;
    }

    .sidePanelBorder{
        border-left: .5vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 93vw;
    
        width: 50vw;
    }

    .sidePanel{
        border: .2vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 85vw;
    
        width: 50vw;
    }

    .sidePanelTitle{
        left: 0;
        right: 4vw;
        -webkit-text-stroke-width: thick;
        width: 6vw;
    }
}

@media only screen and (max-width: 426px) {
    *{
        font-size: 13px;
    }

    .container{
        top: 2.5vh;
        bottom: 2.5vh;
        right: 1vw;
        left: 1vw;
    }

    .topMargin{
        margin-top: .2vh;
    }

    .sidePanelBorder{
        border-left: .5vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 93vw;
    
        width: 50vw;
    }

    .sidePanel{
        border: .2vw solid black;
    
        top: 12vh;
        bottom: 45vh;
        left: 83vw;
    
        width: 50vw;
    }

    .sidePanelTitle{
        
        left: 0;
        right: 4vw;
        -webkit-text-stroke-width: thick;
        width: 9vw;
    }
}

@media only screen and (max-height: 800px) {
    .sidePanelTitle{
        font-size: 15px;
    }
}

@media only screen and (max-height: 700px) {
    .sidePanelTitle{
        font-size: 13px;
    }
}

@media only screen and (max-height: 600px) {
    .sidePanelTitle{
        font-size: 11px;
    }
}

@media only screen and (max-height: 500px) {
    .sidePanelTitle{
        font-size: 9px;
    }
}

@media only screen and (max-height: 400px) {
    .sidePanelTitle{
        font-size: 7px;
    }
}