.cf-woocommerce {
    padding: 4rem 0 6rem;
}

.woocommerce .woocommerce-breadcrumb {
    color: var(--cf-muted);
    font-size: .875rem;
}

.woocommerce div.product {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: clamp(2rem, 5vw, 5rem);
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
    width: auto;
    float: none;
}

.woocommerce div.product .product_title {
    font-size: clamp(2.4rem, 5vw, 4rem);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: var(--cf-ink);
    font-size: 2rem;
    font-weight: 750;
}

.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    min-height: 50px;
    border-radius: var(--cf-radius-sm);
    background: var(--cf-accent);
    color: #fff;
}

.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
    background: var(--cf-accent-hover);
    color: #fff;
}

.woocommerce table.shop_table,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-checkout #payment {
    border-color: var(--cf-border);
    border-radius: var(--cf-radius-md);
    background: rgba(255, 253, 249, .9);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-top-color: var(--cf-accent);
    background: rgba(255, 253, 249, .92);
}

@media (max-width: 780px) {
    .woocommerce div.product {
        grid-template-columns: 1fr;
    }
}
