
main {
    height: 85vmin;
    overflow: hidden;
    padding: 0.5vmin;
}

#left-side, #right-side {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 3vmin 4vmin;

}
#right-side {
    width: 74%;
    overflow-y: auto;
    align-items: flex-start;
}
#left-side {
    width: 26%;
    padding-top: 6vmin;
    justify-content: flex-start;
    display: flex;
}
#left-side img {
    justify-self: center;
    width: 75%;
    object-fit: cover;
    border-radius: 50px;
}

.divider {
    height: 65vmin;
    border-right: solid 1px rgba(0,0,0,0.3);
}

#images {
    width: 100%;
}

#right-side img, #product-info img {
    object-fit: contain;
    width: 100%;
}

#tableware-product {
    width: 60%;
    height: calc(100% - 30vmin);
    margin: auto;
    top: 15vmin;
    left: auto;
    background: white;
    border: solid 1px black;
}

#tableware-product .offcanvas-body {
    margin: 3vmin;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 80%;
}
#product-data {
    width: 100%;
    height: 100%;
    align-self: flex-start;
    margin: 0 4.5vmin;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
#product-data .divider {
    height: 100%;
}
.product {
    width: calc(25% - 4vmin);
}
.product img {
    aspect-ratio: 1;
}
td {
    padding: 0 1vmin;
    text-align: center;
}
th {
    font-weight: 450;
    padding: 0 1vmin;
    text-align: center;
}
td:nth-child(3), th:nth-child(3) {
    text-align: left
}

.subcategory {
    width: 100%;
}
.subcategory-name {
    width:100%;
    text-align: left;
    font-size:1.2rem;
    font-weight:600;
    padding: 1vmin;
}
.subcategory-products {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 6vmin;
}

.product {
    display: flex;
    text-align: center;
    flex-direction: column;
    margin:0 2vmin;
    justify-content: center;
    align-items: center;
}

.product-name {
    padding: 1vmin 0;
}
#product-info {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
}
#left-info {
    width: 35%;
}
#right-info {
    width: 65%;
    align-self: flex-start;
    text-align: left;
    padding:0 3vmin;
}
#references-table {
    padding-top: 1vmin;
}

@media (max-aspect-ratio: 4/3) {

    html {
        overflow: auto;
    }
    body {
        padding-top: 15vmin;
        overflow: auto;
    }
    main {
        flex-wrap: wrap;
        height: auto;
        overflow: auto;
    }

    #left-side, #right-side {
        width: 100%;
        height: auto;
    }

    .divider {
        display: none;
    }

    .product {
        width: calc(50% - 4vmin);
    }

    #tableware-product {
        width: 100%;
        height: auto;
        top: 50%;
        transform: translateY(-50%);
    }

    #product-info {
        flex-direction: column;
    }
    #product-info .divider {
        display: none;
    }
    #right-info {
        width: 100%;
    }

}