.product-single {
    margin: 0;
    padding-top: 2rem;
}

/* product image */
.product-single-image {
    padding: 0;
    margin: 0;
    max-height: 400px;
    overflow: hidden;
    text-align: center;
}

.product-single-image img {
    height: 100%;

    max-width: 368px;
    padding-right: 6rem;
    object-fit: contain;
}

/* product content */
.product-single-content {
    padding: 0;
    margin: 0;
}

.product-single-content .title {
    font-size: 2rem;
}

.product-single-content .meta {
    display: flex;
    color: var(--text-inactive);
}

.product-single-content .meta .divider-line {
    padding: 0 0.5rem;
}

.product-single-content .price-info {
    padding: 1rem 0;
    font-size: 1.25rem;
    display: flex;
    align-items: center;
}

.product-single-content .price-info .price {
    padding-right: 0.5rem;
}

.product-single-content .price-info .price.discounted {
    text-decoration: line-through;
}

.product-single-content .price-info .price-discount {
    background-color: var(--discount-green);
    color: var(--text-light);
    padding: 0 0.5rem;
    font-weight: bold;
}

.product-unavailable {
    font-weight: bold;
    color: var(--red);
}

.product-single-content .description {
    padding: 1rem 0;
    text-align: left;
}

/* product variants */
.product-option-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;

    column-gap: 0.5rem;
    row-gap: 0.5rem;
}

.product-option-input {
    display: none;
}

.product-option-container .form-check-label {
    margin: 0;
}

/* Responsiveness */
/* xl screen */
@media only screen and (max-width: 1200px) {

}

/* lg screen */
@media only screen and (max-width: 992px) {
    .product-single-image img {
        padding-right: 3rem;
    }
}

/* md screen */
@media only screen and (max-width: 768px) {
    .product-single-image img {
        padding: 0;
    }
}

/* sm screen */
@media only screen and (max-width: 576px) {

}