/* Customer-facing WooCommerce content only. No header/footer selectors. */
.ohio-cart-recommendations {
    font-size: 14px;
}

body.woocommerce-cart > .container,
body.woocommerce-account > .container,
body.woocommerce-checkout > .container > .woocommerce,
.ohio-woo-archive {
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-color);
}

body:is(.woocommerce-cart, .woocommerce-account) > .container > h1,
.ohio-woo-archive .woocommerce-products-header__title {
    color: var(--primary-color);
    font-family: var(--font-constantia);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 32px;
}

.wp-block-woocommerce-cart {
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.6;
}

.wp-block-woocommerce-cart :is(input, select, textarea, button),
body.woocommerce-account > .container :is(input, select, textarea, button) {
    font-family: var(--font-sans);
    font-size: 16px;
}

.wp-block-woocommerce-cart .wc-block-components-product-name,
.wp-block-woocommerce-cart .wc-block-grid__product-title,
.wp-block-woocommerce-cart .wp-block-post-title {
    font-family: var(--font-sans);
    color: var(--primary-color);
    font-size: 16px !important;
    font-weight: 600;
    line-height: 1.5;
}

.wp-block-woocommerce-cart .wc-block-cart__totals-title,
.wp-block-woocommerce-cart .wp-block-heading,
body.woocommerce-account > .container :is(h2, h3),
body.woocommerce-checkout > .container > .woocommerce :is(h2, h3) {
    font-family: var(--font-sans);
    color: var(--primary-color);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: none;
}

.wp-block-woocommerce-cart .wc-block-cart-items__header,
.wp-block-woocommerce-cart .wc-block-components-panel__button,
.wp-block-woocommerce-cart .wc-block-components-totals-item,
.wp-block-woocommerce-cart .wc-block-components-product-price,
.wp-block-woocommerce-cart .wc-block-components-button {
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.5;
}

.wp-block-woocommerce-cart .wc-block-components-totals-footer-item {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-color);
}

.wp-block-woocommerce-cart .wc-block-cart-item__remove-link,
.wp-block-woocommerce-cart .wc-block-components-product-metadata,
.wp-block-woocommerce-cart .wc-block-components-totals-item__description,
.wp-block-woocommerce-cart .wc-block-components-sale-badge,
.wp-block-woocommerce-cart .wc-block-components-notice-banner {
    font-family: var(--font-sans);
    font-size: 14px;
    line-height: 1.6;
}

.wp-block-woocommerce-cart .wc-block-components-button,
.wp-block-woocommerce-cart .wp-block-button__link,
body.woocommerce-account > .container .woocommerce .button,
body.woocommerce-checkout > .container > .woocommerce .button,
.woocommerce .ohio-woo-archive ul.products li.product .button {
    font-family: var(--font-sans);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    border-radius: 8px;
    background: var(--primary-color);
    color: #fff;
    padding: 10px 18px;
}

body.woocommerce-account > .container .woocommerce form .form-row label {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
    margin-bottom: 6px;
}

/* The empty-cart recommendations include WooCommerce's small-font utility. */
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-button__link {
    font-size: 14px !important;
}

.wp-block-woocommerce-cart .wp-block-woocommerce-product-price {
    font-family: var(--font-sans);
    font-size: 16px;
}

body.woocommerce-account > .container .woocommerce .input-text,
body.woocommerce-account > .container .woocommerce select {
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid #a5b6b7;
    border-radius: 6px;
    line-height: 1.5;
}

body.woocommerce-account > .container .woocommerce form .show-password-input {
    top: 50%;
    transform: translateY(-50%);
}

body.woocommerce-account > .container .woocommerce form :is(.form-row-first, .form-row-last) {
    min-width: 0;
}

body.woocommerce-account > .container .woocommerce form :is(em, .description),
body.woocommerce-account > .container .woocommerce-LostPassword {
    font-size: 14px;
    line-height: 1.6;
}

body.woocommerce-account > .container .woocommerce-MyAccount-navigation ul {
    margin: 0;
    padding: 0;
}

body.woocommerce-account > .container .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 10px 14px;
    border-bottom: 1px solid #e1e9e9;
    color: var(--primary-color);
    font-weight: 600;
}

body.woocommerce-account > .container .woocommerce-MyAccount-navigation .is-active a {
    background: #e5f0f2;
    border-radius: 6px;
}

body.woocommerce-account > .container .woocommerce-MyAccount-content,
body.woocommerce-checkout > .container > .woocommerce .woocommerce-order {
    overflow-wrap: anywhere;
}

.ohio-woo-archive {
    padding: 40px 0 60px;
}

.ohio-woo-archive .woocommerce-breadcrumb {
    padding: 0;
    background: none;
    color: var(--gold-color);
    font-size: 14px;
    line-height: 1.6;
}

.ohio-woo-archive .woocommerce-result-count {
    font-size: 14px;
}

.ohio-woo-archive select.orderby {
    max-width: 100%;
    font: 400 16px/1.5 var(--font-sans);
}

.ohio-woo-archive ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--font-sans);
    font-size: 16px !important;
    font-weight: 600;
    color: var(--primary-color);
    line-height: 1.5;
}

.woocommerce .ohio-woo-archive ul.products li.product .price,
.woocommerce .ohio-woo-archive ul.products li.product .price span {
    /* Legacy page.css applies !important to every WooCommerce price span. */
    color: var(--gold-color) !important;
    font-family: var(--font-sans) !important;
    font-size: 16px !important;
}

.woocommerce .ohio-woo-archive ul.products li.product .button {
    font-size: 14px;
}

.ohio-woo-archive nav.woocommerce-pagination {
    clear: both;
}

@media (max-width: 767px) {
    body:is(.woocommerce-cart, .woocommerce-account) > .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    body:is(.woocommerce-cart, .woocommerce-account) > .container > h1,
    .ohio-woo-archive .woocommerce-products-header__title {
        font-size: 28px;
    }

    .wp-block-woocommerce-cart .wc-block-cart__totals-title,
    .wp-block-woocommerce-cart .wp-block-heading,
    body.woocommerce-account > .container :is(h2, h3),
    body.woocommerce-checkout > .container > .woocommerce :is(h2, h3) {
        font-size: 18px !important;
    }

    .wp-block-woocommerce-cart .wp-block-post-title {
        font-size: 16px !important;
    }

    body.woocommerce-account > .container .woocommerce-MyAccount-navigation {
        margin-bottom: 24px;
    }

    .ohio-woo-archive .woocommerce-ordering {
        float: none;
        clear: both;
        width: 100%;
    }

    .ohio-woo-archive select.orderby {
        width: 100%;
    }
}
