/* Native WooCommerce page layout; no changes to checkout or account data. */
.storefront-breadcrumb { margin: 0; padding: 0; }
.storefront-breadcrumb > .col-full { max-width: var(--lb-content-width); padding-inline: var(--lb-gutter); }
.storefront-breadcrumb .woocommerce-breadcrumb { margin: 0; padding-block: 1.25rem; line-height: 1.5; }
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .lb-editorial { width: 100%; margin: 0; padding: 1.5rem 0 4rem; }
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .lb-editorial__article { width: 100%; max-width: none; margin: 0; }
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .lb-editorial__header { max-width: none; margin: 0 0 1.75rem; padding-bottom: 1.25rem; }
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .lb-editorial__content { max-width: none; margin: 0; }
body.woocommerce-account.logged-in .lb-account-page .woocommerce:has(> .woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: 15rem minmax(0, 1fr); align-items: start; gap: 1.75rem; }
body.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
body.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { display: none; }
body.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
body.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper:empty { display: none; }
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content { width: 100%; margin: 0; min-width: 0; }
body.woocommerce-account .woocommerce-MyAccount-navigation a { justify-content: space-between; gap: 1rem; }
body.woocommerce-account .woocommerce-MyAccount-navigation a::before { order: 1; float: none; min-width: 1.1rem; opacity: .65; }
body.woocommerce-account .woocommerce-MyAccount-content { padding: clamp(1.25rem, 3vw, 2rem); box-shadow: none; }
body.woocommerce-account .woocommerce-MyAccount-content p { margin-bottom: 1.25rem; }
body.woocommerce-account .woocommerce-MyAccount-content p:last-child { margin-bottom: 0; }
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info { margin-bottom: 0; }
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button { margin-block: .35rem; }
body.woocommerce-account .woocommerce > h2 { max-width: 32rem; margin: 0 auto 1rem; }
body.woocommerce-account .woocommerce-ResetPassword > p:first-child { font-size: .95rem; line-height: 1.65; }
body.woocommerce-account .woocommerce form .form-row { width: 100%; margin: 0 0 1.25rem; padding: 0; }
body.woocommerce-account .woocommerce form .form-row:last-child { margin-bottom: 0; }
body.woocommerce-account .woocommerce form label { font-size: .85rem; }
body.woocommerce-account .woocommerce form .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: .5rem; margin-right: 1rem; }

/* Block cart/checkout require their own styles; legacy table selectors do not reach them. */
body.woocommerce-cart .wp-block-woocommerce-cart { width: 100%; max-width: none; margin: 0; }
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block { max-width: none; }
body.woocommerce-cart .wc-block-cart__empty-cart__title { margin: 0; padding: 1.75rem 1rem 0; font-family: var(--lb-serif); font-size: clamp(1.65rem, 3vw, 2.1rem); font-weight: 400; line-height: 1.2; }
body.woocommerce-cart .wc-block-cart__empty-cart__title::before {
    display: block; width: 64px; height: 64px; margin: 0 auto 1rem; background-color: var(--lb-accent);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 23h34l3 33H12l3-33Z'/%3E%3Cpath d='M24 23v-7a8 8 0 0 1 16 0v7'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
}
body.woocommerce-cart .wc-block-cart__empty-cart__title + p { margin: 1.25rem 0 2.25rem; }
body.woocommerce-cart .wc-block-cart__empty-cart__title + p a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: .7rem 1.5rem; border-radius: 999px; color: #fff; background: var(--lb-accent); font-size: .85rem; font-weight: 600; text-decoration: none; }
body.woocommerce-cart .wc-block-cart__empty-cart__title + p a:hover { background: var(--lb-accent-hover); }
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wp-block-separator { display: none; }
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) { margin-top: 2.5rem; font-size: clamp(1.65rem, 3vw, 2.1rem); font-weight: 400; }
body.woocommerce-cart .wc-block-grid__products { gap: 1.25rem; margin: 0; padding: 0; }
body.woocommerce-cart .wc-block-grid__products .wc-block-grid__product { flex-basis: calc((100% - 3.75rem) / 4); max-width: none; margin: 0; padding: 0; border: 0; }
body.woocommerce-cart .wc-block-grid__product-image img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 1rem; }
body.woocommerce-cart .wc-block-grid__product-title { margin-block: 1rem .75rem; color: var(--lb-ink); font-size: .9rem; font-weight: 600; line-height: 1.4; }
body.woocommerce-cart .wc-block-grid__product-link { text-decoration: none; }
body.woocommerce-cart .wc-block-grid__product-add-to-cart a { min-height: 44px; padding: .65rem 1rem; font-size: .8rem; text-decoration: none; }
body:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-sidebar-layout { margin-bottom: 0; }
body:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-main { min-width: 0; }
body:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-sidebar { padding: 1.25rem; border: 1px solid var(--lb-line); border-radius: 1rem; background: #fff; }
body.woocommerce-cart .wc-block-cart-items { border-color: var(--lb-line); }
body.woocommerce-cart .wc-block-cart-items__row { background: #fff; }
body.woocommerce-cart .wc-block-cart-items__row img { border-radius: .65rem; }
body:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-button { min-height: 48px; border-radius: 999px; color: #fff; background: var(--lb-accent); font-size: .9rem; font-weight: 600; }
body:is(.woocommerce-cart, .woocommerce-checkout) .wc-block-components-button:hover { color: #fff; background: var(--lb-accent-hover); }
body.woocommerce-checkout .wc-block-components-checkout-step { margin-bottom: 2rem; padding: 1.5rem; border: 1px solid var(--lb-line); border-radius: 1rem; background: #fff; }
body.woocommerce-checkout .wc-block-components-checkout-step__heading { font-family: var(--lb-serif); font-size: 1.4rem; font-weight: 400; }

@media (max-width: 767px) {
    .storefront-breadcrumb .woocommerce-breadcrumb { padding-block: 1rem; }
    body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .lb-editorial { padding-top: 1rem; }
    body.woocommerce-account.logged-in .lb-account-page .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
    body.woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.woocommerce-account .woocommerce-MyAccount-navigation a { font-size: .76rem; }
    body.woocommerce-cart .wc-block-grid__products { gap: 1rem; }
    body.woocommerce-cart .wc-block-grid__products .wc-block-grid__product { flex-basis: calc((100% - 1rem) / 2); }
    body.woocommerce-checkout .wc-block-components-checkout-step { padding: 1rem; }
}
