/* Store design: cart, checkout & account ("Collector's Shelf", white and blue).
   WooCommerce's own block Cart and Checkout, the empty cart ("Your shelf is empty" and best sellers, from the
   "Cart: empty shelf" snippet), the order-received (thank-you) page and My account (log-in form, dashboard, orders,
   order view, addresses, account details). Styling only: every field, label and line of text is WooCommerce's own or
   "Checkout wording"'s. The payment methods' own fields (Authorize.net card form, PayPal buttons) are left as they are.
   Colours, fonts and radii are the tokens of the main "Store design" snippet (html[data-scheme]); every var() carries
   the shaded value as a fallback. Mobile first: tablet from 640px, the receipt beside the form from 1024px. */

/* ---------------------------------------------------------------- page frame (Bricks template "Cart & checkout") */
.shoppage { padding-bottom: 56px; }
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { max-width: none; margin: 0; font: 400 15.5px/1.55 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-cart :focus-visible, .wp-block-woocommerce-checkout :focus-visible, .woocommerce-account .content :focus-visible { outline: 3px solid var(--c-blue-light, #3E8FCF); outline-offset: 2px; }

/* one column on phones and tablets (checkout: the order summary first); from 1024px the receipt sits beside the form */
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout, .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout { display: flex; flex-direction: column; gap: 32px; margin: 0; padding: 0; }
.wc-block-components-sidebar-layout > .wc-block-components-main, .wc-block-components-sidebar-layout > .wc-block-components-sidebar { flex: none; width: 100%; max-width: none; margin: 0; padding: 0; }
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-checkout__sidebar { order: -1; position: static; }

/* ---------------------------------------------------------------- receipt: the cart totals and the checkout's order summary */
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
  position: relative; box-sizing: border-box; margin: 0; padding: 22px 20px 34px; border: 0; border-radius: 0;
  background: linear-gradient(var(--c-card, #FFFFFF) 0 0) top / 100% calc(100% - 10px) no-repeat, conic-gradient(from -45deg at bottom, #0000, var(--c-card, #FFFFFF) 1deg 89deg, #0000 90deg) bottom / 16px 10px repeat-x;
  filter: drop-shadow(0 0 .6px var(--c-card-line, transparent)) drop-shadow(0 0 .6px var(--c-card-line, transparent)) drop-shadow(0 6px 10px var(--c-shelf-shadow, rgba(0, 56, 95, .16)));
  font-variant-numeric: tabular-nums;
}
.wp-block-woocommerce-cart .wc-block-cart__totals-title,
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-text { margin: 0; padding: 0; text-align: center; font: 800 13px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif) !important; letter-spacing: .2em; text-transform: uppercase; color: var(--c-ink, #202833); }
.wp-block-woocommerce-cart .wc-block-cart__totals-title { padding-bottom: 12px; border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0 0 12px; border: 0; border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title-text { flex: 1; }
/* rows: dotted between lines, dashed between groups, the total under a solid rule */
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper { margin: 0; padding: 10px 0; border: 0; border-top: 1px dotted var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block { padding: 0; border-top: 0; }
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block > .wc-block-components-totals-wrapper:first-child { border-top: 0; padding-top: 4px; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block { padding: 0; border-top: 1.5px dashed var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block > .wc-block-components-totals-wrapper:first-child,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-cart-items-block.wc-block-components-totals-wrapper { border-top: 0; }
.wp-block-woocommerce-cart .wc-block-components-totals-wrapper:empty, .wp-block-woocommerce-checkout .wc-block-components-totals-wrapper:empty { display: none; }
.wp-block-woocommerce-cart .wc-block-components-totals-item, .wp-block-woocommerce-checkout .wc-block-components-totals-item { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; padding: 0; font-size: 14.5px; line-height: 1.45; }
.wc-block-components-totals-item .wc-block-components-totals-item__label { flex: 1; color: var(--c-ink, #202833); }
.wc-block-components-totals-item .wc-block-components-totals-item__value { font-weight: 700; color: var(--c-ink, #202833); }
.wc-block-components-totals-item .wc-block-components-totals-item__description { width: 100%; font-size: 12.5px; color: var(--c-ink-2, #4A5563); }
.wc-block-components-totals-item .wc-block-components-totals-item__description:empty { display: none; }
.wp-block-woocommerce-cart .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item),
.wp-block-woocommerce-checkout .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item) { margin-top: 8px; padding-top: 14px; padding-bottom: 0; border-top: 1.5px solid var(--c-ink, #202833); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font: 600 20px/1.2 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif) !important; color: var(--c-ink, #202833); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value .wc-block-components-formatted-money-amount { font: 800 20px/1.2 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif) !important; color: var(--c-ink, #202833); }

/* phones: WooCommerce folds the summary above the form into a bar that opens; the full receipt sits again above Place Order */
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:has(> .wc-block-components-checkout-order-summary__title[role=button]) { padding: 0 16px; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-card, #FFFFFF); filter: none; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title[role=button] { min-height: 52px; padding: 0; border-bottom: 0; cursor: pointer; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title[role=button].is-open { border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title[role=button] .wc-block-components-checkout-order-summary__title-text { margin: 0; text-align: left; font: 700 15px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif) !important; letter-spacing: 0; text-transform: none; color: var(--c-blue, #005A9E); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title[role=button] .wc-block-components-checkout-order-summary__title-price { font: 800 15px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title[role=button] .wc-block-components-checkout-order-summary__title-icon { display: grid; place-items: center; width: 24px; height: 24px; fill: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__content.is-open { padding-bottom: 14px; border-bottom: 0; }
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper { margin: 0 0 18px; }
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper .checkout-order-summary-block-fill { border: 0; border-radius: 0; }
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper .checkout-order-summary-block-fill :is(.wc-block-components-order-summary, .wc-block-components-totals-wrapper, .wc-block-components-totals-coupon, .wc-block-components-panel) { padding-left: 0; padding-right: 0; }
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper > .wc-block-components-checkout-step__heading { display: block; margin: 0; padding: 0 0 12px; border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper .wc-block-components-checkout-step__title { display: block; margin: 0; text-align: center; font: 800 13px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .2em; text-transform: uppercase; color: var(--c-ink, #202833); }

/* the sets on the receipt */
.wp-block-woocommerce-checkout .wc-block-components-order-summary { padding: 0; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary .wc-block-components-order-summary__content { display: grid; gap: 14px; padding: 4px 0; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; column-gap: 12px; align-items: start; margin: 0; padding: 0; border: 0; font-size: 14px; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image { position: relative; width: 48px; margin: 0; padding: 0; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image > img { display: block; width: 48px; max-width: none; height: auto; filter: drop-shadow(3px 3px 5px rgba(0, 32, 56, .28)); }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity { box-sizing: border-box; position: absolute; top: -8px; right: -8px; display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border: 2px solid var(--c-card, #FFFFFF); border-radius: 11px; background: var(--c-navy, #00385F); color: #FFFFFF; font: 800 11px/1 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); box-shadow: none; transform: none; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description { min-width: 0; padding: 0; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name { margin: 0; font: 600 14px/1.35 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-cart-item__prices { margin: 2px 0 0; font-size: 13px; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__total-price { margin: 0; padding: 0; font-weight: 700; text-align: right; }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata { margin-top: 4px; font-size: 12.5px; line-height: 1.45; color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata p { margin: 0; }

/* prices and the Save tag (the same look as the store's Save tag) */
.wp-block-woocommerce-cart .wc-block-components-product-price del, .wp-block-woocommerce-checkout .wc-block-components-product-price del { color: var(--c-ink-2, #4A5563); font-weight: 500; }
.wp-block-woocommerce-cart .wc-block-components-product-price ins, .wp-block-woocommerce-checkout .wc-block-components-product-price ins { color: var(--c-ink, #202833); font-weight: 700; text-decoration: none; background: none; }
.wp-block-woocommerce-cart .wc-block-components-sale-badge, .wp-block-woocommerce-checkout .wc-block-components-sale-badge { margin: 0; padding: 5px 8px 4px; border: 0; border-radius: 3px; background: var(--c-save, #E5F0FA); color: var(--c-save-ink, #005A9E); font: 800 10.5px/1.25 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }

/* ---------------------------------------------------------------- buttons (Proceed to Checkout, Place Order) */
.wp-block-woocommerce-cart .wc-block-components-button.wp-element-button:not(.is-link), .wp-block-woocommerce-checkout .wc-block-components-button.wp-element-button:not(.is-link) {
  box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 100%; height: auto; min-height: 56px; margin: 0; padding: 0 24px; border: 0; border-radius: var(--r-sm, 8px);
  background: var(--c-blue, #005A9E); color: #FFFFFF; font: 700 14.5px/1 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .07em; text-transform: uppercase; text-decoration: none; box-shadow: none; cursor: pointer; transition: background-color .15s;
}
.wp-block-woocommerce-cart .wc-block-components-button.wp-element-button:not(.is-link):hover, .wp-block-woocommerce-checkout .wc-block-components-button.wp-element-button:not(.is-link):hover { background: var(--c-blue-dark, #00477D); color: #FFFFFF; }
.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link) .wc-block-components-button__text, .wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) .wc-block-components-button__text { line-height: 1; }

/* ---------------------------------------------------------------- cart: the sets as "your shelf" rows */
.wp-block-woocommerce-cart table.wc-block-cart-items, .wp-block-woocommerce-cart table.wc-block-cart-items thead, .wp-block-woocommerce-cart table.wc-block-cart-items tbody { display: block; width: 100%; margin: 0; border: 0; background: none; }
.wp-block-woocommerce-cart table.wc-block-cart-items th, .wp-block-woocommerce-cart table.wc-block-cart-items td { border: 0; background: none; }
.wp-block-woocommerce-cart .wc-block-cart-items__header { display: flex; justify-content: space-between; padding: 0 0 10px; border-bottom: 1px solid var(--c-line, #DFE7F0); }
.wp-block-woocommerce-cart .wc-block-cart-items__header th { padding: 0; font: 700 11.5px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .14em; text-transform: uppercase; color: var(--c-ink-2, #4A5563); text-align: left; }
.wp-block-woocommerce-cart .wc-block-cart-items__header .wc-block-cart-items__header-product { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row { display: grid; grid-template-columns: 86px minmax(0, 1fr); column-gap: 18px; padding: 24px 0 26px; border: 0; border-bottom: 1px solid var(--c-line, #DFE7F0); }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td { display: block; min-width: 0; margin: 0; padding: 0; }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image { grid-column: 1; grid-row: 1 / span 2; padding: 0; }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product { grid-column: 2; grid-row: 1; padding: 0; }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total { grid-column: 2; grid-row: 2; display: flex; justify-content: flex-start; margin-top: 12px; padding: 0; }
/* the cover on a white rounded tile, the case centred, as on the product cards (no shelf, no square shadow) */
.wp-block-woocommerce-cart .wc-block-cart-item__image a { position: relative; box-sizing: border-box; display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 5; background: var(--c-card, #FFFFFF); border-radius: var(--r-sm, 8px); box-shadow: inset 0 0 0 1px var(--c-card-line, transparent); }
.wp-block-woocommerce-cart .wc-block-cart-item__image img { display: block; width: auto; max-width: 74%; height: auto; max-height: 82%; margin: 0; filter: none; }
.wp-block-woocommerce-cart .wc-block-cart-item__wrap { display: grid; justify-items: start; gap: 4px; }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__wrap .wc-block-components-product-name { display: block; max-width: none; margin: 0; font: 600 18px/1.25 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); letter-spacing: -.01em; color: var(--c-ink, #202833); text-decoration: none; }
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__wrap .wc-block-components-product-name:hover { color: var(--c-blue, #005A9E); }
.wp-block-woocommerce-cart .wc-block-cart-item__prices { margin: 0; font-size: 14px; }
.wp-block-woocommerce-cart .wc-block-cart-item__wrap .wc-block-components-product-metadata { margin: 0; font-size: 13px; line-height: 1.5; color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-cart .wc-block-cart-item__wrap .wc-block-components-product-metadata p { margin: 0; }
.wp-block-woocommerce-cart .wc-block-cart-item__quantity { display: flex; align-items: center; gap: 10px; margin-top: 10px; }
/* quantity: 38px tall, the input carries no padding of its own (Bricks and WooCommerce both add some) */
.wp-block-woocommerce-cart .wc-block-components-quantity-selector { box-sizing: border-box; display: flex; align-items: stretch; width: auto; min-width: 0; height: 38px; margin: 0; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-field, #FFFFFF); }
.wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { display: grid; place-items: center; width: 34px; min-width: 34px; height: auto; padding: 0; border: 0; background: none; color: var(--c-ink, #202833); font: 500 18px/1 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); opacity: 1; }
.wp-block-woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled { color: var(--c-line-2, #C3D1E0); }
.wp-block-woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input { box-sizing: border-box; width: 30px; min-width: 30px; height: auto; margin: 0; padding: 0; border: 0; background: none; color: var(--c-ink, #202833); font: 700 15px/1 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); text-align: center; box-shadow: none; }
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link { box-sizing: border-box; display: grid !important; place-items: center; width: 38px; height: 38px; margin: 0; padding: 0; border: 0; border-radius: var(--r-sm, 8px); background: none; color: var(--c-ink-2, #4A5563); cursor: pointer; text-decoration: none; }
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link { position: relative; }
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link::after { content: ""; position: absolute; inset: -10px; } /* a 44px tap area round the bin (24px on phones), invisible (review, 2 Nov) */
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover { background: var(--c-band, #EAF1F8); color: var(--c-blue, #005A9E); }
.wp-block-woocommerce-cart .wc-block-cart-item__remove-link svg { display: block; width: 20px; height: 20px; fill: currentColor; }
.wp-block-woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price { font: 800 18px/1.2 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
/* cross-sells ("You may be interested in…"), when a set has them */
.wp-block-woocommerce-cart .wc-block-cart__main .wp-block-woocommerce-product-collection { margin-top: 32px; }
.wp-block-woocommerce-cart .wc-block-cart__main .wp-block-woocommerce-product-collection h2 { font: 600 24px/1.2 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); }
/* the cart's side: receipt, then the button */
.wp-block-woocommerce-cart .wc-block-cart__sidebar { display: grid; align-content: start; gap: 14px; }
.wp-block-woocommerce-cart .wc-block-cart__submit { margin: 0; }
.wp-block-woocommerce-cart .wc-block-cart__payment-options:empty { display: none; }
.wp-block-woocommerce-cart .wc-block-cart__submit-container--sticky { padding: 12px max(16px, env(safe-area-inset-left, 0px)) calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--c-card, #FFFFFF); box-shadow: 0 -10px 24px -14px rgba(0, 56, 95, .35); }
.wp-block-woocommerce-cart .wc-block-cart__submit-container--sticky::before { content: none; }

/* ---------------------------------------------------------------- empty cart ("Cart: empty shelf" snippet): three dashed case outlines, no shelf */
/* an empty cart (the page knows: body.tvsco-cart-empty): while the Cart block is still starting, it shows its empty-cart
   part straight away instead of WooCommerce's placeholder for a full cart, so nothing jumps when it is ready (review,
   2 Nov: the footer jumped twice, CLS 0.27 at 1280px) */
body.tvsco-cart-empty .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-filled-cart-block { display: none; }
body.tvsco-cart-empty .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-empty-cart-block { display: block; }
.cartempty { box-sizing: border-box; display: grid; justify-items: center; gap: 16px; padding: 34px 20px 36px; text-align: center; background: var(--c-card, #FFFFFF); border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); }
.cartempty__shelf { position: relative; display: flex; align-items: flex-end; justify-content: center; gap: 10px; width: min(240px, 80%); height: 74px; padding: 0 18px; box-sizing: border-box; }
.cartempty__shelf i { flex: none; width: 44px; height: 66px; box-sizing: border-box; border: 1.5px dashed var(--c-line-2, #C3D1E0); border-radius: 3px; }
.cartempty__shelf i:nth-child(2) { height: 70px; }
.cartempty__title { margin: 14px 0 0; font: 600 clamp(28px, 7vw, 40px)/1.1 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); letter-spacing: -.02em; color: var(--c-ink, #202833); }
.cartempty .btn { margin-top: 4px; }
.cartshelf { margin-top: 48px; }
.cartshelf .sec-hd { margin-bottom: 22px; }
.cartshelf .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* ---------------------------------------------------------------- checkout: the steps (no step numbers, owner 2 Nov) */
.wp-block-woocommerce-checkout .wc-block-components-checkout-step { margin: 0 0 26px; padding: 0 0 26px; border: 0; border-bottom: 1px solid var(--c-line, #DFE7F0); background: none; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-container { gap: 6px; margin: 0 0 16px; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; margin: 0; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__title { display: flex; align-items: baseline; gap: 12px; margin: 0; font: 600 24px/1.2 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); letter-spacing: -.01em; color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-content { font-size: 13.5px; color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading-content a { color: var(--c-blue, #005A9E); }
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__description { margin: 0; font-size: 14px; line-height: 1.5; color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-checkout .wc-block-checkout__guest-checkout-notice { display: none; } /* "You are currently checking out as a guest." (owner, 2 Nov: not shown) */

/* ---------------------------------------------------------------- checkout fields: the label above a 50px box (WooCommerce
   floats it inside), all spacing from one grid; first + last name and state + ZIP share a row */
.wp-block-woocommerce-checkout .wc-block-components-address-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 14px 12px; margin: 0; }
.wp-block-woocommerce-checkout .wc-block-components-address-form > * { grid-column: 1 / -1; box-sizing: border-box; width: auto !important; min-width: 0; flex: none !important; margin: 0 !important; }
.wp-block-woocommerce-checkout .wc-block-components-address-form > .wc-block-components-address-form__first_name { grid-column: 1; }
.wp-block-woocommerce-checkout .wc-block-components-address-form > .wc-block-components-address-form__last_name { grid-column: 2; }
.wp-block-woocommerce-checkout .wc-block-components-address-form:has(> .wc-block-components-address-form__postcode) > .wc-block-components-address-form__state { grid-column: 1; }
.wp-block-woocommerce-checkout .wc-block-components-address-form:has(> .wc-block-components-address-form__state) > .wc-block-components-address-form__postcode { grid-column: 2; }
.wp-block-woocommerce-checkout .wc-block-components-address-form > .wc-block-components-address-form__address_2-hidden-input { position: absolute; left: -20000px; }
.wp-block-woocommerce-checkout .wc-block-components-text-input, .wp-block-woocommerce-checkout .wc-blocks-components-select { margin: 0 !important; }
.wp-block-woocommerce-checkout .wc-block-components-text-input { position: relative; display: flex; flex-direction: column; gap: 6px; }
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container { position: relative; display: flex; flex-direction: column; gap: 6px; height: auto; line-height: normal; background: none; }
.wp-block-woocommerce-checkout .wc-block-components-form .wc-block-components-text-input label,
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__label {
  order: -1; position: static !important; top: auto; left: auto; transform: none !important; max-width: none; margin: 0; padding: 0; overflow: visible; white-space: normal;
  font: 700 13px/1.35 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif) !important; letter-spacing: 0; color: var(--c-ink, #202833) !important; cursor: default; transition: none;
}
.wp-block-woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input:is([type=text], [type=email], [type=tel], [type=number], [type=password], [type=url], [type=date]),
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select {
  box-sizing: border-box; width: 100%; height: 50px !important; min-height: 50px; margin: 0 !important; padding: 0 14px !important; border: 1.5px solid var(--c-line-2, #C3D1E0) !important; border-radius: var(--r-sm, 8px) !important;
  background-color: var(--c-field, #FFFFFF) !important; color: var(--c-ink, #202833) !important; font: 500 16px/1.25 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif) !important; letter-spacing: 0; box-shadow: none !important; outline: 0; transition: border-color .15s, box-shadow .15s;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select { padding-right: 44px !important; cursor: pointer; }
.wp-block-woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input:focus,
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select:focus { border-color: var(--c-blue, #005A9E) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--c-blue, #005A9E) 18%, transparent) !important; }
.wp-block-woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__expand { position: absolute; top: auto; right: 12px; bottom: 13px; width: 24px; height: 24px; transform: none; fill: var(--c-ink, #202833); pointer-events: none; }
.wp-block-woocommerce-checkout .has-error input, .wp-block-woocommerce-checkout .has-error .wc-blocks-components-select__select { border-color: #B42318 !important; }
.wp-block-woocommerce-checkout .has-error label, .wp-block-woocommerce-checkout .has-error .wc-blocks-components-select__label { color: #B42318 !important; }
.wp-block-woocommerce-checkout .wc-block-components-validation-error { margin: 0; font-size: 13px; color: #B42318; }
.wp-block-woocommerce-checkout .wc-block-components-validation-error > p { margin: 0; }
.wp-block-woocommerce-checkout .wc-block-components-address-form__address_2-toggle { justify-self: start; width: auto !important; margin: -4px 0 0 !important; padding: 2px 0; font: 600 14px/1.4 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-blue, #005A9E); text-align: left; cursor: pointer; }
/* a saved address shown as a card (returning customers) */
.wp-block-woocommerce-checkout .wc-block-components-address-card { gap: 12px; padding: 14px 16px; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-field, #FFFFFF); font-size: 14.5px; line-height: 1.5; }
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit { font-weight: 700; color: var(--c-blue, #005A9E); }

/* checkboxes ("Use same address for billing"): a 20px box, the tick drawn centred in it */
.wp-block-woocommerce-checkout .wc-block-components-checkbox { margin: 16px 0 0; }
.wp-block-woocommerce-checkout .wc-block-components-checkbox label { align-items: flex-start; gap: 12px; font: 600 14.5px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox],
.woocommerce-account .content input[type=checkbox] {
  box-sizing: border-box; appearance: none; -webkit-appearance: none; flex: none; width: 20px; height: 20px; min-width: 20px; margin: 0; padding: 0; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: 5px;
  background: var(--c-field, #FFFFFF) center / 14px 14px no-repeat; box-shadow: none; cursor: pointer; vertical-align: top;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked,
.woocommerce-account .content input[type=checkbox]:checked {
  border-color: var(--c-blue, #005A9E); background-color: var(--c-blue, #005A9E);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.15 4.6 4.6L19 7.35'/%3E%3C/svg%3E");
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]::before, .wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]::after { content: none; }
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { display: none; }

/* radios (shipping options, payment methods): a 20px ring; checked = a 6px blue ring, so the dot is centred by construction.
   top 14.5px puts the ring's centre on the middle of the option name's capitals (measured on 2x crops; WooCommerce's own
   rule for shipping rates sets 16px, hence the longer selector below) */
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input {
  box-sizing: border-box; appearance: none; -webkit-appearance: none; position: absolute; top: 14.5px; left: 16px; width: 20px; height: 20px; min-width: 20px; min-height: 20px; margin: 0; padding: 0;
  border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: 50%; background: var(--c-field, #FFFFFF); box-shadow: none; transform: none; cursor: pointer;
}
.wp-block-woocommerce-checkout .wc-block-components-radio-control label.wc-block-components-radio-control__option > input.wc-block-components-radio-control__input { top: 14.5px; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked { border: 6px solid var(--c-blue, #005A9E); background: #FFFFFF; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before { content: none; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus { outline: 0; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus-visible { outline: 3px solid var(--c-blue-light, #3E8FCF); outline-offset: 2px; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option { position: relative; margin: 0; padding: 15px 16px 15px 50px; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__option::after,
.wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked::after,
.wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked div.wc-block-components-radio-control-accordion-option::after { content: none; display: none; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__option-layout { display: flex; flex-direction: column; gap: 3px; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__label-group { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; font: 700 15px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__label { min-width: 0; font: 700 15px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__secondary-label { flex: none; font: 700 15px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__description-group { display: block; margin: 0; font: 400 13px/1.45 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__secondary-description, .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__description { font: 400 13px/1.45 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink-2, #4A5563); }
/* shipping options: one card, a line between options, the chosen one tinted with a blue edge */
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control .wc-block-components-radio-control { position: relative; overflow: hidden; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-card, #FFFFFF); }
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control .wc-block-components-radio-control__option + .wc-block-components-radio-control__option { border-top: 1px solid var(--c-line, #DFE7F0); }
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control label.wc-block-components-radio-control__option.wc-block-components-radio-control__option-checked { border-radius: 0; background: color-mix(in srgb, var(--c-blue, #005A9E) 6%, var(--c-card, #FFFFFF)); box-shadow: inset 3px 0 0 var(--c-blue, #005A9E); }
.wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package { margin: 0; padding: 0; border: 0; }
/* payment methods: each one a card, the chosen one outlined in blue; their own fields inside are left alone */
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option { position: relative; margin: 0 0 10px; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-card, #FFFFFF); box-shadow: none; overflow: hidden; }
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option:last-child { margin-bottom: 0; }
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option.wc-block-components-radio-control-accordion-option--checked-option-highlighted { border-color: var(--c-blue, #005A9E); box-shadow: none; }
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option { box-shadow: none; }
.wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content { padding: 0 16px 16px; }
.wp-block-woocommerce-checkout .wc-block-components-notice-banner { box-sizing: border-box; margin: 0; border-radius: var(--r-sm, 8px); font-size: 14.5px; line-height: 1.5; }

/* terms line, Place Order, Return to Cart */
.wp-block-woocommerce-checkout .wc-block-checkout__terms { margin: 0 0 18px; padding: 0; border: 0; font-size: 13.5px; line-height: 1.55; color: var(--c-ink-2, #4A5563); }
.wp-block-woocommerce-checkout .wc-block-checkout__terms a { color: var(--c-ink, #202833); text-decoration: underline; text-underline-offset: 3px; }
.wp-block-woocommerce-checkout .wc-block-checkout__actions { margin: 0; padding: 0; }
.wp-block-woocommerce-checkout .wc-block-checkout__actions_row { display: flex; flex-direction: column; align-items: stretch; gap: 16px; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button { align-self: center; display: inline-flex; align-items: center; gap: 6px; padding: 0; color: var(--c-blue, #005A9E); font: 700 14.5px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); text-decoration: none; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button svg { fill: currentColor; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button { order: -1; }

/* ---------------------------------------------------------------- order received ("thank you") page */
.woocommerce-order { display: grid; gap: 22px; max-width: 860px; font-size: 15.5px; line-height: 1.6; color: var(--c-ink, #202833); }
.woocommerce-order > * { margin: 0; }
.woocommerce-order .woocommerce-thankyou-order-received, .woocommerce-order .woocommerce-thankyou-order-failed { display: grid; gap: 10px; margin: 0; padding: 20px 18px; border: 1px solid var(--c-card-line, transparent); border-left: 4px solid var(--c-blue, #005A9E); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); color: var(--c-ink, #202833); font-size: 15.5px; text-align: left; }
.woocommerce-order .woocommerce-thankyou-order-failed { border-left-color: #B42318; }
.woocommerce-order .tvsco-thanks { display: block; }
.woocommerce-order .tvsco-thanks__spam { color: var(--c-ink, #202833); }
.woocommerce-order ul.woocommerce-order-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; overflow: hidden; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); }
.woocommerce-order ul.woocommerce-order-overview li { float: none; min-width: 0; margin: 0; padding: 14px 16px; border: 0; border-bottom: 1px dotted var(--c-line-2, #C3D1E0); font: 700 11px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .12em; text-transform: uppercase; color: var(--c-ink-2, #4A5563); }
.woocommerce-order ul.woocommerce-order-overview li:nth-child(odd):not(:last-child):not(.woocommerce-order-overview__email) { border-right: 1px dotted var(--c-line-2, #C3D1E0); }
.woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__email { grid-column: 1 / -1; }
.woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__email ~ li { border-right: 0; }
.woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__email + li { border-right: 1px dotted var(--c-line-2, #C3D1E0); }
.woocommerce-order ul.woocommerce-order-overview li:last-child { border-bottom: 0; }
.woocommerce-order ul.woocommerce-order-overview li strong { display: block; margin-top: 4px; font: 700 15.5px/1.35 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: 0; text-transform: none; color: var(--c-ink, #202833); overflow-wrap: anywhere; }
/* order details and addresses (thank-you page and My account → order) */
.woocommerce-order-details, .woocommerce-customer-details { margin: 0; }
.woocommerce-order-details .woocommerce-order-details__title, .woocommerce-customer-details .woocommerce-column__title, .woocommerce-order-downloads__title { margin: 0 0 12px; font: 600 22px/1.2 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); color: var(--c-ink, #202833); }
table.woocommerce-table--order-details { width: 100%; margin: 0; border-collapse: separate; border-spacing: 0; overflow: hidden; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); font-size: 15px; font-variant-numeric: tabular-nums; }
table.woocommerce-table--order-details th, table.woocommerce-table--order-details td { padding: 12px 16px; font-size: 15px; line-height: 1.45; border: 0; border-bottom: 1px dotted var(--c-line-2, #C3D1E0); background: none; text-align: left; vertical-align: top; color: var(--c-ink, #202833); }
table.woocommerce-table--order-details thead th { font: 700 11.5px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .12em; text-transform: uppercase; color: var(--c-ink-2, #4A5563); border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
table.woocommerce-table--order-details .product-total, table.woocommerce-table--order-details td:last-child, table.woocommerce-table--order-details thead th:last-child { text-align: right; }
table.woocommerce-table--order-details td.product-name, table.woocommerce-table--order-details th.product-name { width: 64%; }
table.woocommerce-table--order-details .product-name a { color: var(--c-ink, #202833); font-weight: 600; text-decoration: none; }
table.woocommerce-table--order-details .product-name a:hover { color: var(--c-blue, #005A9E); }
table.woocommerce-table--order-details .product-quantity { font-weight: 700; color: var(--c-ink-2, #4A5563); }
table.woocommerce-table--order-details .wc-item-meta { margin: 4px 0 0; padding: 0; list-style: none; font-size: 13px; color: var(--c-ink-2, #4A5563); }
table.woocommerce-table--order-details tfoot th { font-weight: 600; color: var(--c-ink-2, #4A5563); }
table.woocommerce-table--order-details tfoot td { font-weight: 700; }
table.woocommerce-table--order-details tfoot tr:last-child > * { border-bottom: 0; }
table.woocommerce-table--order-details tbody tr:last-child > * { border-bottom: 1.5px dashed var(--c-line-2, #C3D1E0); }
table.woocommerce-table--order-details .shipped_via { display: block; font-weight: 500; color: var(--c-ink-2, #4A5563); }
.woocommerce-account .content table.woocommerce-table--order-details td .button + .button, .woocommerce-order table.woocommerce-table--order-details td .button + .button { margin-left: 6px; }
.woocommerce-customer-details .woocommerce-columns--addresses { display: grid; gap: 22px; margin: 22px 0 0; }
.woocommerce-customer-details .woocommerce-column { float: none; width: auto; max-width: none; margin: 0; padding: 0; }
.woocommerce-customer-details address, .woocommerce-MyAccount-content .woocommerce-Address address { box-sizing: border-box; margin: 0; padding: 16px 18px; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); font-style: normal; line-height: 1.65; color: var(--c-ink, #202833); }
.woocommerce-customer-details address p { margin: 6px 0 0; padding: 0; color: var(--c-ink-2, #4A5563); overflow-wrap: anywhere; }
.woocommerce-customer-details address p::before { content: none; }
.woocommerce-order .order-again { margin: 0; }

/* ---------------------------------------------------------------- My account */
.woocommerce-account .content .brxe-post-content > .woocommerce { font-size: 15.5px; line-height: 1.6; }
/* signed in: the menu, then the page (beside each other from 1024px) */
.woocommerce-account.logged-in .content .brxe-post-content > .woocommerce { display: grid; gap: 20px; align-items: start; }
.woocommerce-account .woocommerce-MyAccount-navigation { float: none; width: auto; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li::before { content: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { box-sizing: border-box; display: flex; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid var(--c-line, #DFE7F0); border-radius: var(--r-sm, 8px); background: var(--c-card, #FFFFFF); color: var(--c-ink, #202833); font: 600 14.5px/1.25 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { border-color: var(--c-blue, #005A9E); color: var(--c-blue, #005A9E); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { border-color: var(--c-blue, #005A9E); background: var(--c-blue, #005A9E); color: #FFFFFF; }
.woocommerce-account .woocommerce-MyAccount-content { box-sizing: border-box; float: none; width: auto; min-width: 0; margin: 0; padding: 20px 16px; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); }
.woocommerce-account .woocommerce-MyAccount-content > :last-child { margin-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-content > p { margin: 0 0 14px; }
.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { color: var(--c-blue, #005A9E); font-weight: 600; text-underline-offset: 3px; }
.woocommerce-account .woocommerce-MyAccount-content mark { padding: 1px 6px; border-radius: 3px; background: var(--c-save, #E5F0FA); color: var(--c-save-ink, #005A9E); font-weight: 700; }
.woocommerce-account .woocommerce-MyAccount-content h2, .woocommerce-account .woocommerce-MyAccount-content h3 { margin: 0 0 12px; font: 600 22px/1.2 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); color: var(--c-ink, #202833); }
/* nested cards inside the white page are flat and pale */
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table--order-details, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details address, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address { border: 1px solid var(--c-line, #DFE7F0); background: var(--c-page, #F3F7FB); box-shadow: none; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details { margin-top: 20px; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details { margin-top: 22px; }
/* notices inside the account pages (the theme styles the ones in the notices bar) */
.woocommerce-account .content :is(.woocommerce-MyAccount-content, .brxe-post-content > .woocommerce) > :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) { box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin: 0 0 18px; padding: 14px 16px; list-style: none; border: 1px solid var(--c-line, #DFE7F0); border-left: 4px solid var(--c-blue, #005A9E); border-radius: var(--r-sm, 8px); background: var(--c-page, #F3F7FB); color: var(--c-ink, #202833); font-size: 14.5px; line-height: 1.5; }
.woocommerce-account .content :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before { content: none; }
.woocommerce-account .content .woocommerce-error { border-left-color: #B42318; }
.woocommerce-account .content :is(.woocommerce-info, .woocommerce-message) > .button { order: 2; }
/* buttons: primary blue; View and Cancel outlined */
.woocommerce-account .content .button, .woocommerce-order .button {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; margin: 0; padding: 0 16px; border: 0; border-radius: var(--r-sm, 8px);
  background: var(--c-blue, #005A9E); color: #FFFFFF; font: 700 12.5px/1 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .07em; text-transform: uppercase; text-decoration: none; white-space: nowrap; box-shadow: none; cursor: pointer; transition: background-color .15s, color .15s;
}
.woocommerce-account .content .button:hover, .woocommerce-order .button:hover { background: var(--c-blue-dark, #00477D); color: #FFFFFF; }
.woocommerce-account .content .button:is(.view, .cancel) { background: transparent; color: var(--c-ink, #202833); box-shadow: inset 0 0 0 1.5px var(--c-ink, #202833); }
.woocommerce-account .content .button:is(.view, .cancel):hover { background: var(--c-ink, #202833); color: var(--c-card, #FFFFFF); }
.woocommerce-account .content form .button[type=submit], .woocommerce-account .content form button.button { min-height: 48px; padding: 0 24px; font-size: 13.5px; }
/* orders: a table from tablet width; on phones each order is a small card with its labels */
.woocommerce-account .woocommerce-orders-table { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 14.5px; }
.woocommerce-account .woocommerce-orders-table th, .woocommerce-account .woocommerce-orders-table td { padding: 12px 10px; border: 0; border-bottom: 1px solid var(--c-line, #DFE7F0); background: none; text-align: left; vertical-align: middle; color: var(--c-ink, #202833); }
.woocommerce-account .woocommerce-orders-table thead th { padding-top: 0; font: 700 11.5px/1.3 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .12em; text-transform: uppercase; color: var(--c-ink-2, #4A5563); }
.woocommerce-account .woocommerce-orders-table th:first-child, .woocommerce-account .woocommerce-orders-table td:first-child { padding-left: 0; }
.woocommerce-account .woocommerce-orders-table th:last-child, .woocommerce-account .woocommerce-orders-table td:last-child { padding-right: 0; }
.woocommerce-account .woocommerce-orders-table__cell-order-number a { font-weight: 800; color: var(--c-blue, #005A9E); text-decoration: none; }
.woocommerce-account .woocommerce-orders-table__cell-order-actions { white-space: normal; }
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button { margin: 3px 6px 3px 0; }
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:last-child { margin-right: 0; }
.woocommerce-account .woocommerce-pagination { display: flex; justify-content: space-between; gap: 10px; margin-top: 18px; }
.woocommerce-account .woocommerce-pagination .button { background: transparent; color: var(--c-ink, #202833); box-shadow: inset 0 0 0 1.5px var(--c-ink, #202833); }
.woocommerce-account .woocommerce-pagination .woocommerce-button--next { margin-left: auto; }
@media (max-width: 767px) {
  .woocommerce-account .woocommerce-orders-table, .woocommerce-account .woocommerce-orders-table tbody, .woocommerce-account .woocommerce-orders-table tr, .woocommerce-account .woocommerce-orders-table th, .woocommerce-account .woocommerce-orders-table td { display: block; }
  .woocommerce-account .woocommerce-orders-table thead { display: none; }
  .woocommerce-account .woocommerce-orders-table tbody tr { margin: 0 0 12px; padding: 6px 14px; border: 1px solid var(--c-line, #DFE7F0); border-radius: var(--r-sm, 8px); background: var(--c-page, #F3F7FB); }
  .woocommerce-account .woocommerce-orders-table tbody :is(th, td) { display: block; padding: 8px 0 !important; border-bottom: 1px dotted var(--c-line-2, #C3D1E0); text-align: right; line-height: 20px; }
  .woocommerce-account .woocommerce-orders-table tbody :is(th, td)::after { content: ""; display: table; clear: both; }
  .woocommerce-account .woocommerce-orders-table tbody :is(th, td):last-child { border-bottom: 0; }
  .woocommerce-account .woocommerce-orders-table tbody :is(th, td)::before { content: attr(data-title); float: left; margin-right: 12px; font: 700 11px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); letter-spacing: .12em; text-transform: uppercase; color: var(--c-ink-2, #4A5563); text-align: left; }
  .woocommerce-account .woocommerce-orders-table tbody .woocommerce-orders-table__cell-order-actions::before { line-height: 46px; }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button { margin: 3px 0 3px 6px; padding: 0 12px; }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button:last-child { margin-right: 0; }
}
/* addresses */
.woocommerce-account .woocommerce-Addresses { display: grid; gap: 22px; margin: 0; }
.woocommerce-account .woocommerce-Addresses::before, .woocommerce-account .woocommerce-Addresses::after { content: none; }
.woocommerce-account .woocommerce-Address { float: none; width: auto; max-width: none; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-Address-title { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 14px; margin: 0 0 10px; }
.woocommerce-account .woocommerce-Address-title h2 { margin: 0; font-size: 20px; }
.woocommerce-account .woocommerce-Address-title .edit { float: none; font-size: 14px; }
/* forms: log in, account details, edit address, lost password */
.woocommerce-account .content form .form-row { box-sizing: border-box; float: none; width: auto; margin: 0 0 16px; padding: 0; }
.woocommerce-account .content form .form-row label:not(.woocommerce-form__label-for-checkbox):not(.checkbox) { display: block; margin: 0 0 6px; font: 700 13px/1.35 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); }
.woocommerce-account .content form .required { color: #B42318; text-decoration: none; border: 0; }
.woocommerce-account .content form :is(input.input-text, input[type=text], input[type=email], input[type=tel], input[type=password], select, textarea) {
  box-sizing: border-box; width: 100%; height: 50px; margin: 0; padding: 0 14px; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background-color: var(--c-field, #FFFFFF); color: var(--c-ink, #202833);
  font: 500 16px/1.25 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); box-shadow: none; outline: 0; transition: border-color .15s, box-shadow .15s;
}
.woocommerce-account .content form textarea { height: auto; min-height: 110px; padding: 12px 14px; line-height: 1.5; }
.woocommerce-account .content form select { appearance: none; -webkit-appearance: none; padding-right: 44px; background: var(--c-field, #FFFFFF) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23202833' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center / 18px 18px no-repeat; cursor: pointer; }
.woocommerce-account .content form :is(input.input-text, input[type=text], input[type=email], input[type=tel], input[type=password], select, textarea):focus { border-color: var(--c-blue, #005A9E); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c-blue, #005A9E) 18%, transparent); }
.woocommerce-account .content form .password-input { position: relative; display: block; }
.woocommerce-account .content form .password-input input { padding-right: 50px; }
.woocommerce-account .content form .show-password-input { position: absolute; top: 5px; right: 5px; display: grid; place-items: center; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 6px; background: none; color: var(--c-ink-2, #4A5563); cursor: pointer; }
.woocommerce-account .content form .show-password-input::after { content: ""; display: block; width: 20px; height: 20px; margin: 0; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; font-size: 0; }
.woocommerce-account .content form .show-password-input.display-password::after { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 4l16 16'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 4l16 16'/%3E%3C/svg%3E"); }
.woocommerce-account .content form .show-password-input:hover { color: var(--c-blue, #005A9E); }
.woocommerce-account .content form .woocommerce-form__label-for-checkbox, .woocommerce-account .content form label.checkbox { display: inline-flex; align-items: flex-start; gap: 10px; margin: 0; font: 600 14.5px/20px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); cursor: pointer; }
.woocommerce-account .content form em, .woocommerce-account .content form #account_display_name_description { display: block; margin-top: 6px; font-size: 13px; font-style: normal; line-height: 1.45; color: var(--c-ink-2, #4A5563); }
.woocommerce-account .content form .clear { display: none; }
.woocommerce-account .content form fieldset { margin: 6px 0 18px; }
.woocommerce-account .content form > p:last-of-type, .woocommerce-account .content form > p:has(> .button) { margin: 0; }
.woocommerce-account .content .select2-container { width: 100% !important; }
.woocommerce-account .content .select2-container .select2-selection--single { box-sizing: border-box; height: 50px; margin: 0; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: var(--r-sm, 8px); background: var(--c-field, #FFFFFF); }
.woocommerce-account .content .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 44px 0 14px; line-height: 47px; color: var(--c-ink, #202833); font: 500 16px/47px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); }
.woocommerce-account .content .select2-container .select2-selection--single .select2-selection__placeholder { color: var(--c-ink-2, #4A5563); }
.woocommerce-account .content .select2-container .select2-selection--single .select2-selection__arrow { top: 0; right: 12px; width: 18px; height: 47px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23202833' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / 18px 18px no-repeat; }
.woocommerce-account .content .select2-container .select2-selection--single .select2-selection__arrow b { display: none; }
.woocommerce-account .content .select2-container--focus .select2-selection--single, .woocommerce-account .content .select2-container--open .select2-selection--single { border-color: var(--c-blue, #005A9E); box-shadow: 0 0 0 3px color-mix(in srgb, var(--c-blue, #005A9E) 18%, transparent); }
.woocommerce-account .select2-dropdown { border: 1.5px solid var(--c-blue, #005A9E); border-radius: var(--r-sm, 8px); background: var(--c-field, #FFFFFF); font: 500 15px/1.4 var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); color: var(--c-ink, #202833); overflow: hidden; }
.woocommerce-account .select2-search--dropdown .select2-search__field { box-sizing: border-box; height: 40px; padding: 0 10px; border: 1.5px solid var(--c-line-2, #C3D1E0); border-radius: 6px; font: 500 16px var(--f-text, 'Manrope', system-ui, 'Segoe UI', sans-serif); }
.woocommerce-account .select2-results__option--highlighted[aria-selected], .woocommerce-account .select2-results__option--highlighted[data-selected] { background: var(--c-blue, #005A9E); color: #FFFFFF; }

/* signed out: the log-in form on a card */
.woocommerce-account:not(.logged-in) .content .brxe-post-content > .woocommerce { box-sizing: border-box; display: block; max-width: 480px; padding: 24px 18px 26px; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); }
.woocommerce-account:not(.logged-in) .content .brxe-post-content > .woocommerce > h2 { margin: 0 0 18px; font: 600 28px/1.15 var(--f-head, 'Fraunces', Georgia, 'Times New Roman', serif); text-align: left; color: var(--c-ink, #202833); }
.woocommerce-account .content form.woocommerce-form-login, .woocommerce-account .content form.woocommerce-ResetPassword, .woocommerce-account .content form.lost_reset_password { display: block; width: auto; max-width: none; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; text-align: left; }
.woocommerce-account .content form.woocommerce-form-login > .form-row:has(.woocommerce-form-login__rememberme) { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin: 6px 0 0; }
.woocommerce-account .content form.woocommerce-form-login .woocommerce-form-login__submit { flex: 1 1 100%; width: 100%; margin: 0; }
.woocommerce-account .content form .lost_password, .woocommerce-account .content form.woocommerce-form-login .woocommerce-LostPassword { margin: 18px 0 0; font-size: 14.5px; text-align: left; }

@media (min-width: 640px) {
  .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row { grid-template-columns: 100px minmax(0, 1fr) auto; column-gap: 22px; }
  .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image { grid-row: 1; }
  .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total { grid-column: 3; grid-row: 1; justify-content: flex-end; margin-top: 0; }
  .wp-block-woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper { flex-direction: column; align-items: flex-end; }
  .cartempty { padding: 44px 32px 46px; }
  .cartshelf .grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .woocommerce-order ul.woocommerce-order-overview { display: flex; flex-wrap: wrap; }
  .woocommerce-order ul.woocommerce-order-overview li, .woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__email ~ li { flex: 1 1 auto; border-bottom: 0; border-right: 1px dotted var(--c-line-2, #C3D1E0); }
  .woocommerce-order ul.woocommerce-order-overview li strong { overflow-wrap: normal; }
  .woocommerce-order ul.woocommerce-order-overview li:last-child, .woocommerce-order ul.woocommerce-order-overview li.woocommerce-order-overview__email ~ li:last-child { border-right: 0; }
  .woocommerce-order .woocommerce-thankyou-order-received { padding: 24px 26px; }
  .woocommerce-customer-details .woocommerce-columns--addresses, .woocommerce-account .woocommerce-Addresses { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .woocommerce-account .woocommerce-MyAccount-content { padding: 28px 30px; }
  .woocommerce-account .content form.woocommerce-EditAccountForm, .woocommerce-account .content .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; }
  .woocommerce-account .content form.woocommerce-EditAccountForm > *, .woocommerce-account .content .woocommerce-address-fields__field-wrapper > * { grid-column: 1 / -1; }
  .woocommerce-account .content form .form-row-first { grid-column: 1 !important; }
  .woocommerce-account .content form .form-row-last { grid-column: 2 !important; }
  .woocommerce-account:not(.logged-in) .content .brxe-post-content > .woocommerce { padding: 30px 32px 32px; }
}
@media (min-width: 1024px) {
  .wp-block-woocommerce-cart .wc-block-components-sidebar-layout.is-large, .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.is-large { display: grid; grid-template-columns: minmax(0, 1fr) 380px; column-gap: 56px; row-gap: 0; align-items: start; }
  .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.is-large { column-gap: 64px; }
  .wc-block-components-sidebar-layout.is-large > .wc-block-components-main { grid-column: 1; grid-row: 1; }
  .wc-block-components-sidebar-layout.is-large > .wc-block-components-sidebar { grid-column: 2; grid-row: 1; order: 0; position: sticky; top: 24px; }
  .wc-block-components-sidebar-layout.is-large > :not(.wc-block-components-main):not(.wc-block-components-sidebar) { grid-column: 1 / -1; }
  .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.is-large > .wc-block-checkout__sidebar { order: 0; position: sticky; top: 24px; }
  .woocommerce-account.logged-in .content .brxe-post-content > .woocommerce { grid-template-columns: 240px minmax(0, 1fr); gap: 32px; }
  .woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: 1fr; gap: 2px; padding: 8px; border: 1px solid var(--c-card-line, transparent); border-radius: var(--r, 12px); background: var(--c-card, #FFFFFF); box-shadow: var(--sh-card, 0 1px 2px rgba(0, 56, 95, .05), 0 10px 24px -14px rgba(0, 56, 95, .28)); }
  .woocommerce-account .woocommerce-MyAccount-navigation li a { border: 0; border-radius: 6px; background: none; }
  .woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: var(--c-band, #EAF1F8); color: var(--c-blue, #005A9E); }
  .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--c-band, #EAF1F8); color: var(--c-blue, #005A9E); box-shadow: inset 3px 0 0 var(--c-blue, #005A9E); }
  .woocommerce-account .woocommerce-MyAccount-content { padding: 32px 36px; }
}

/* ---------------------------------------------------------------- checkout: the USPS logo after "Shipping options"
   (owner, 3 Nov; the same file as TVShowDVDs': child theme assets/brand/usps-logo.svg), centred on the heading's line */
.wp-block-woocommerce-checkout .wc-block-checkout__shipping-option .wc-block-components-checkout-step__title::after { content: ""; flex: none; align-self: center; width: 108px; height: 18px; background: url("/wp-content/themes/tvshowco-child/assets/brand/usps-logo.svg") left center / contain no-repeat; }
