/* --- Shop page --- */

.woocommerce .page-header,
.woocommerce #header,
.woocommerce .main .woocommerce-breadcrumb,
.woocommerce #page > hr,
.woocommerce #footer {
    display: none !important;
}

.woocommerce .product .woocommerce-loop-product__link:hover {
    background-color: #fff !important;
    opacity: 0.85;
}
.woocommerce ul.products li.product .button {
    font-size: 0.75rem;
    display: flex;
}
.woocommerce .product .woocommerce-loop-product__link:hover h2 {
    color: #00597b;
    background-color: transparent;
}
.woocommerce ul.products li.product .price {
    color: #515151;
}

/* --- Product page --- */

.woocommerce.single-product .product {
    padding: 1rem;
}
.woocommerce.single-product .summary {
    float: none !important;
    width: 100% !important;
}
.woocommerce.single-product .summary table,
.woocommerce.single-product .summary table * {
    display: block;
}
.woocommerce.single-product .summary form.cart {
    padding-top: 2rem;
    display: block;
    clear: both;
}

.woocommerce.single-product .summary .form-row {
    display: inline-block;
}
.woocommerce.single-product .summary .form-row input:not([type='checkbox']),
.woocommerce.single-product .summary .form-row select,
.woocommerce.single-product .summary .form-row textarea,
.woocommerce.single-product .summary .woocommerce-input-wrapper {
    display: block;
    width: 100%;
    max-width: none;
}
.woocommerce.single-product .summary .form-row label:not(.checkbox) {
    font-size: 0.6rem;
    margin-bottom: 0;
}
.woocommerce.single-product .summary .form-row input::placeholder,
.woocommerce.single-product .summary .form-row textarea::placeholder {
    opacity: 0.7;
}
.woocommerce.single-product .summary .subtitle {
    width: 100%;
    margin-top: 1rem;
}
.woocommerce.single-product .summary p.label .required {
    color: var(--wc-red);
    font-size: 0.6rem;
    font-weight: 700;
    border: 0 !important;
    text-decoration: none;
    font-family: "Montserrat", sans-serif;
    display: inline-block;
    vertical-align: super;
}
.woocommerce.single-product .summary .se-foodtype {
    margin: 0;
}
.woocommerce.single-product .summary .se-foodtype .required {
    display: none;
}
.woocommerce.single-product #header,
.woocommerce.single-product #page > hr,
.woocommerce.single-product .woocommerce-breadcrumb,
.woocommerce .summary .product_meta,
.woocommerce .summary .addtoany_list,
.woocommerce.single-product .summary .stock {
    display: none !important;
}
.woocommerce .summary .single_add_to_cart_button {
    background-color: rgb(82, 134, 170) !important;
}

@media all and (min-width: 769px) {
    .woocommerce.single-product .summary .product_title,
    .woocommerce.single-product .summary .price,
    .woocommerce.single-product .summary .stock,
    .woocommerce.single-product .summary .woocommerce-product-details__short-description {
        width: 48%;
        float: left;
        margin-left: 4%;
    }
}

@media all and (min-width: 992px) {
    .woocommerce.single-product .woocommerce-product-gallery {
        width: 34% !important;
    }
    .woocommerce.single-product .summary .product_title,
    .woocommerce.single-product .summary .price,
    .woocommerce.single-product .summary .stock,
    .woocommerce.single-product .summary .woocommerce-product-details__short-description {
        width: 62%;
    }
}

/* --- Checkout page --- */

.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button,
.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block,
.woocommerce-checkout .wc-block-components-product-badge {
    display: none !important;
}
.woocommerce-checkout .entry-content table tr:nth-child(even) {
    background-color: #4e83a8;
}
.woocommerce-checkout .woocommerce-order-details tfoot tr:first-child {
    display: none !important;
}

/* --- For JS --- */

.woocommerce .summary #mailing-address-group {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
}
.woocommerce .summary #mailing-address-group.show {
    max-height: 20rem;
}
