*{
    box-sizing: border-box;
}

body {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    color: #430007;
    background-color: #f2f3ea;
}

.rotate.plus90 {
    transform: rotate(90deg);
    transform-origin: bottom left;
    top: -100vw;
    left: 0;
    position: absolute;
}

.rotate.neg90 {
    transform: rotate(-90deg);
    transform-origin: left top;
    top: 100%;
    left: 0;
    position: absolute;
}

.rotate-container{
    min-height: 100vw;
    width: 100vh;
    margin: 0;
    padding: 0;
    border: none;
}

body.rotate{
    width: 100vh;
    height: 100vw;
}


.bottom_scroll{
    color: #fff;
    background-color: #ff1b59;
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0;
    padding: 0.5rem;
    font-family: 'Open Sans', cursive;
    z-index: 5;
}

.scroll_text{
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
}

.rotate .bottom_scroll{
    width: 100vh;
}



.justify-space-between{
    display: flex;
    justify-content: space-between;
}


.menu_wrapper{
    text-transform: uppercase;
    font-family: 'Open Sans', cursive;
}


.item{
    padding: 0.5rem 0;
    font-weight: 600;
    border-bottom: 2px solid #ddd;
}

.item-head{
    font-weight: 800 !important;
    font-size: 1.4rem;
    border-bottom: 2px solid #ff1b59;
}


.item-price{
    font-weight: bolder;
    font-size: 1.4rem;
    margin-left: auto;
}

.itemdesc-text{
    font-size: 14px;
}

.itemdesc-text p{
    margin-top: 0.5rem;
}



/* Description */
.menu_desc{
    width: 100%;
    min-height: 100px;
    position: absolute;
    bottom: .5rem;
    left: 0;
    padding: 0 2rem;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.rotate .menu_desc{
    bottom: 2rem;
    left: 0;
    width: 100%;
    padding: 0 4rem;
}


.menu_desc .menu_desc_text{
    font-weight: 600;
    color: #430007;
    font-family: 'Open Sans', cursive;
    font-size: 1.4rem;
}

/* Logo */
.menu_logo{
    max-height: 100px;
    height: auto;
    width: auto;
    margin-left: auto;
    bottom: .1rem;
    right: .1rem;
}


/* Price Headers */
.price_headers{
    display: flex;
    justify-content: flex-end;
}

.price_header{
    width: 80px;
    text-align: right;
    font-weight: 800;
    font-size: 1.4rem;
    margin: 0;
    margin-left: 16px;
    color: #ff1b59;
    text-transform: none;
    /* background-color: #ddd; */
}

/* Item Prices */
.item-row{
    display: flex;
}

.item-text{
    margin-right: auto;
}

.item-row .item-price{
    width: 80px;
    margin: 0 !important;
    margin-left: 16px !important;
    font-size: 20px !important;
    text-align: right;

    /* background-color: #ddd; */
}