.menu{
    position: fixed;
    align-items: end;
    width: calc(100vw - 20px);
}
.content {
    flex-direction: column;
    height: fit-content;
    padding: 100px 0;
    gap: 20px;
}
.block.image {
    display: flex;
    justify-content: center;
}
.block.text, .block.list, .block.quote {
    max-height: fit-content;
}
.block.image figure {
    height: 60vh;
    flex-direction: column;
}

@media screen and (max-width: 500px) {
    .menu{
        justify-content: space-between;
        position: relative;
        width: 100%;
    }
    .menu .icon:only-child{margin: auto;}
    .content{
        padding: 100px 0;
        overflow-y: scroll;
        position: relative;
    }
}

@media screen and (max-height: 500px) and (orientation: landscape) {
    .menu{
        justify-content: space-around; 
        align-items: center; 
        width: 100%;
        height: 35vh;
    }
    .content{
        font-size: 0.8rem;
        padding: 60px 0;
    }
    .block.image figure{max-height: 120vh;}
    .block.image figcaption{font-size: 1.2rem;}
    figure img.landscape{min-width: none;}
    figure img.portrait{min-width: none;}
    figure img.square { min-width: none;}
}