/* Match visual convergence for WooCommerce commerce surfaces.
   Scope: Cart and Checkout (WooCommerce Blocks + classic fallback), checkout
   readiness framing, and account order-table density. Shop/product card and
   account navigation bases live in style.css / page-convergence.css. */

/* ------------------------------------------------------------------ */
/* 1. Shared commerce container                                        */
/* ------------------------------------------------------------------ */

.woocommerce-cart .wc-block-cart,
.woocommerce-checkout .wc-block-checkout {
  margin-inline: auto;
  max-width: var(--mfv-container);
  padding-inline: clamp(1rem, 3vw, 2.5rem);
}

.woocommerce-cart .wc-block-cart__main,
.woocommerce-checkout .wc-block-checkout__main {
  min-width: 0;
}

/* Blocks-only containment: classic WooCommerce is contracted in
 * page-convergence.css and must not depend on these selectors. */
.woocommerce-cart .wc-block-cart .wc-block-components-product-list,
.woocommerce-checkout .wc-block-checkout .wc-block-components-product-list { min-width: 0; }

/* ------------------------------------------------------------------ */
/* 2. Cart + checkout: two-column premium layout (desktop)             */
/* ------------------------------------------------------------------ */

.woocommerce-cart .wc-block-cart__sidebar,
.woocommerce-checkout .wc-block-checkout__sidebar {
  background: #f4efeb;
  border: 1px solid var(--mfv-border);
  box-sizing: border-box;
  padding: clamp(1.2rem, 2vw, 1.7rem);
}

/* Summary panel label mirrors the approved ORDER SUMMARY panel head. */
.woocommerce-cart .wc-block-cart__sidebar::before,
.woocommerce-checkout .wc-block-checkout__sidebar::before {
  color: var(--mfv-text);
  content: "Order summary";
  display: block;
  font-family: var(--mfv-sans);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin-bottom: .9rem;
  text-transform: uppercase;
}


@media (min-width: 901px) {
  .woocommerce-cart .wc-block-cart {
    align-items: start;
    display: grid !important;
    gap: clamp(1.6rem, 3vw, 2.6rem);
    grid-template-columns: minmax(0, 1.6fr) minmax(340px, .72fr);
  }
  .woocommerce-checkout .wc-block-checkout {
    align-items: start;
    display: grid !important;
    gap: clamp(1.8rem, 3vw, 2.8rem);
    grid-template-columns: minmax(0, 2.3fr) minmax(340px, 1fr);
  }
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-checkout__sidebar {
    align-self: start;
    position: sticky;
    top: 1rem;
  }
}

/* ------------------------------------------------------------------ */
/* 3. Cart: dense item rows (Blocks table + classic shop_table)        */
/* ------------------------------------------------------------------ */

/* Column headers: PRODUCT / PRICE / QUANTITY / TOTAL micro-labels. */
.woocommerce-cart .wc-block-cart-items__header th,
.woocommerce-cart table.shop_table thead th {
  border-bottom: 1px solid var(--mfv-border);
  color: var(--mfv-text);
  font-family: var(--mfv-sans);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .12em;
  padding: .55rem .5rem;
  text-transform: uppercase;
}

.woocommerce-cart .wc-block-cart-items,
.woocommerce-checkout .wc-block-components-order-summary {
  border-top: 1px solid var(--mfv-border);
}

.woocommerce-cart .wc-block-cart-items__row,
.woocommerce-checkout .wc-block-components-order-summary-item {
  border-bottom: 1px solid var(--mfv-border);
  padding-block: .85rem;
}

.woocommerce-cart table.shop_table tbody td {
  padding-block: .85rem;
}

/* Square decoded-ready thumbnails on a calm surface. */
.woocommerce-cart .wc-block-cart-item__image img,
.woocommerce-checkout .wc-block-components-order-summary-item__image img,
.woocommerce-cart table.shop_table img {
  aspect-ratio: 1 / 1;
  background: #f7f3f0;
  border: 1px solid var(--mfv-border);
  box-sizing: border-box;
  image-rendering: auto;
  object-fit: contain;
  padding: .2rem;
}

.woocommerce-cart .wc-block-cart-item__image img { min-height: 118px; width: 118px; }
.woocommerce-checkout .wc-block-components-order-summary-item__image img { min-height: 64px; width: 64px; }
.woocommerce-cart table.shop_table img { width: 118px; }
.woocommerce-cart .wc-block-cart-items__row { min-height: 150px; padding-block: 1.05rem; }
.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name { font-size: .94rem; line-height: 1.35; }
.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__prices { font-size: .8rem; }


.woocommerce-cart .wc-block-components-product-name,
.woocommerce-checkout .wc-block-components-product-name {
  font-family: var(--mfv-sans);
  font-size: .86rem;
  font-weight: 700;
}

.woocommerce-cart .wc-block-cart-item__prices,
.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices {
  color: var(--mfv-muted);
  font-size: .74rem;
}

.woocommerce-cart .wc-block-cart-item__remove-link {
  color: var(--mfv-muted);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}
.woocommerce-cart .wc-block-cart-item__remove-link:hover { color: var(--mfv-text); }

/* Compact bordered quantity stepper with >=44px touch targets. */
.woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid var(--mfv-border);
  border-radius: 0;
  box-sizing: border-box;
  display: flex;
  height: 44px;
  width: 132px;
}
.woocommerce-cart .wc-block-components-quantity-selector__button {
  background: transparent;
  border: 0;
  color: var(--mfv-text);
  font-size: .95rem;
  margin: 0;
  min-height: 44px;
  min-width: 44px;
  width: 44px;
}
.woocommerce-cart .wc-block-components-quantity-selector input {
  appearance: textfield;
  border-inline: 1px solid var(--mfv-border);
  border-radius: 0;
  font-family: var(--mfv-sans);
  font-size: .8rem;
  font-weight: 600;
  margin: 0;
  min-height: 100%;
  text-align: center;
  width: 44px;
}

/* ------------------------------------------------------------------ */
/* 4. Summary hierarchy: totals, coupon, strong CTA                    */
/* ------------------------------------------------------------------ */

.woocommerce-cart .wc-block-components-totals-wrapper,
.woocommerce-checkout .wc-block-components-totals-wrapper {
  border-color: var(--mfv-border);
}

.woocommerce-cart .wc-block-components-totals-item,
.woocommerce-checkout .wc-block-components-totals-item {
  align-items: baseline;
  display: flex;
  font-size: .8rem;
  justify-content: space-between;
  padding-block: .4rem;
}
.woocommerce-cart .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-item__label {
  color: var(--mfv-muted);
  font-size: .74rem;
}

/* Final total row: emphasized, strong rule above. */
.woocommerce-cart .wc-block-components-totals-footer-item,
.woocommerce-checkout .wc-block-components-totals-footer-item {
  border-top: 1px solid #111;
  margin-top: .6rem;
  padding-top: .9rem;
}
.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  color: var(--mfv-text);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-size: 1.05rem;
  font-weight: 700;
}

/* Coupon / promo row kept compact and inline. */
.wc-block-components-totals-coupon__button {
  color: var(--mfv-text);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.wc-block-components-totals-coupon__content .wc-block-components-text-input input {
  border-color: var(--mfv-border) !important;
  border-radius: 0 !important;
  min-height: 42px;
}

.woocommerce-cart .wc-block-cart__submit-container,
.woocommerce-cart .wc-block-cart__submit-container--sticky {
  display: block !important;
  position: static !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-top: 1.2rem !important;
}

.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout #place_order {
  align-items: center !important;
  background: #111 !important;
  border: 1px solid #111 !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: flex !important;
  font-size: .72rem;
  font-weight: 700;
  justify-content: center !important;
  letter-spacing: .12em;
  min-height: 54px;
  text-decoration: none !important;
  text-transform: uppercase;
  width: 100%;
}
.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout #place_order:hover {
  background: #352f2c !important;
}
.woocommerce-cart .wc-block-cart__submit-button:focus-visible,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible,
.woocommerce-checkout #place_order:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}

/* ------------------------------------------------------------------ */
/* 5. Checkout: numbered compact steps and form controls               */
/* ------------------------------------------------------------------ */

.woocommerce-checkout .wc-block-checkout__form .wc-block-components-checkout-step {
  border-bottom: 1px solid var(--mfv-border);
  margin-bottom: 1.1rem;
  padding-bottom: 1.1rem;
}

/* Truthful numbering: counters count only rendered checkout steps. */
.wc-block-checkout__form { counter-reset: mfv-checkout-step; }
.woocommerce-checkout .wc-block-components-checkout-step__title::before {
  color: var(--mfv-muted);
  content: counter(mfv-checkout-step, decimal-leading-zero) ". ";
  counter-increment: mfv-checkout-step;
}
.wc-block-components-checkout-step__heading h2,
.wc-block-components-checkout-step__title {
  font-family: var(--mfv-sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin: 0;
  text-transform: uppercase;
}
.wc-block-components-checkout-step__description {
  color: var(--mfv-muted);
  font-size: .76rem;
}

.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select,
.woocommerce-checkout .input-text,
.woocommerce-checkout select.select,
.woocommerce-cart .wc-block-components-text-input input {
  background: #fff;
  border: 1px solid var(--mfv-border) !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  font-family: var(--mfv-sans);
  font-size: .85rem;
  min-height: 46px;
}
.woocommerce-checkout .wc-block-components-text-input.is-active input,
.woocommerce-checkout .input-text:focus {
  border-color: #111 !important;
  box-shadow: 0 0 0 1px #111 inset;
  outline: none;
}

/* Shipping / payment option rows: bordered, square, selected = inked. */
.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
.woocommerce-checkout .wc-block-components-radio-control__option {
  border: 1px solid var(--mfv-border);
  border-radius: 0;
  margin-top: -1px;
  padding: .8rem 1rem;
}
.woocommerce-checkout .wc-block-components-radio-control__option:has(input:checked) {
  background: #faf8f6;
  border-color: #111;
  position: relative;
  z-index: 1;
}
.woocommerce-checkout .wc-block-components-payment-method-label { font-size: .8rem; }
.woocommerce-checkout .mfv-checkout-review-shipping { border-bottom: 1px solid var(--mfv-border); margin-bottom: 1.1rem; padding-bottom: 1.1rem; }
.woocommerce-checkout .mfv-checkout-review-shipping__body { background: #faf8f6; border: 1px solid var(--mfv-border); display: grid; gap: .35rem; margin-top: .8rem; padding: 1rem 1.1rem; }
.woocommerce-checkout .mfv-checkout-review-shipping__body strong { font-size: .78rem; }
.woocommerce-checkout .mfv-checkout-review-shipping__body span { color: var(--mfv-muted); font-size: .76rem; line-height: 1.5; }
.woocommerce-checkout .mfv-checkout-review-trust { background: #f4efeb; border: 1px solid var(--mfv-border); display: grid; gap: .5rem; margin-top: 1rem; padding: 1.1rem 1.2rem; }
.woocommerce-checkout .mfv-checkout-review-trust strong { font-family: var(--mfv-serif); font-size: 1rem; font-weight: 500; }
.woocommerce-checkout .mfv-checkout-review-trust span { border-top: 1px solid var(--mfv-border); color: var(--mfv-muted); font-size: .72rem; padding-top: .45rem; }
.woocommerce-checkout [data-mfv-review-disabled="1"] { cursor: not-allowed !important; opacity: .55; pointer-events: none; }
.woocommerce-checkout .wc-block-components-radio-control-accordion-content {
  border-top: 1px solid var(--mfv-border);
  padding: 1rem;
}

/* ------------------------------------------------------------------ */
/* 6. Notices, validation, empty-cart and titles                       */
/* ------------------------------------------------------------------ */

.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-cart .wc-block-components-notice-banner,
.wc-block-components-notice-banner.is-error,
.wc-block-components-notice-banner {
  background: #faf8f5 !important;
  border: 1px solid #e5dfd8 !important;
  border-left: 4px solid #7a3030 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #4a3b32 !important;
  font-size: .82rem !important;
  line-height: 1.5 !important;
  padding: 14px 18px !important;
}

.wc-block-components-notice-banner.is-error .wc-block-components-notice-banner__content,
.wc-block-components-notice-banner .wc-block-components-notice-banner__content {
  color: #4a3b32 !important;
  font-size: .82rem !important;
}

.wc-block-components-notice-banner.is-error svg,
.wc-block-components-notice-banner svg {
  fill: #7a3030 !important;
  color: #7a3030 !important;
}

.woocommerce-checkout a,
.woocommerce-cart a,
.woocommerce-account a,
.wc-block-components-checkout-step a {
  color: #111 !important;
  text-decoration-color: #888 !important;
}

.woocommerce-checkout a:hover,
.woocommerce-cart a:hover,
.woocommerce-account a:hover,
.wc-block-components-checkout-step a:hover {
  color: #000 !important;
  text-decoration: underline !important;
}

.woocommerce-cart .wc-block-cart__empty-cart__title,
.woocommerce-checkout .wc-block-components-title {
  font-family: var(--mfv-serif);
  font-weight: 400;
}

/* Checkout readiness framing rendered by inc/visual-convergence.php. */
.mfv-checkout-readiness {
  background: #f4efeb;
  border: 1px solid var(--mfv-border);
  border-left: 3px solid #111;
  margin-top: 2rem;
  padding: clamp(1.2rem, 2vw, 1.7rem);
}
.mfv-checkout-readiness h2 { font-family: var(--mfv-sans); font-size: 1.05rem; font-weight: 700; margin: .2rem 0 .35rem; }
.mfv-checkout-readiness > div > p:last-child { color: var(--mfv-muted); font-size: .8rem; margin: 0; }
.mfv-checkout-readiness__grid {
  background: var(--mfv-border);
  border: 1px solid var(--mfv-border);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 1rem;
}
.mfv-checkout-readiness__grid > span {
  background: #fff;
  display: flex;
  flex-direction: column;
  font-size: .76rem;
  gap: .3rem;
  padding: .9rem 1rem;
}
.mfv-checkout-readiness__grid strong {
  font-size: .66rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* ------------------------------------------------------------------ */
/* 7. Account: order-table density and header micro-labels             */
/* ------------------------------------------------------------------ */

.woocommerce-account .shop_table thead th {
  border-bottom: 1px solid var(--mfv-border);
  color: var(--mfv-muted);
  font-family: var(--mfv-sans);
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .12em;
  padding: .6rem .7rem;
  text-transform: uppercase;
}
.woocommerce-account .shop_table td {
  border-bottom: 1px solid var(--mfv-border);
  font-size: .8rem;
  padding: .7rem;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a {
  color: var(--mfv-text);
  font-weight: 700;
  text-decoration: none;
}

/* ------------------------------------------------------------------ */
/* 8. Responsive fallback                                              */
/* ------------------------------------------------------------------ */

@media (max-width: 900px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout {
    display: block;
  }
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top: 1.5rem;
    position: static;
  }
}

/* Account reference convergence. This layer is account-only: WooCommerce
 * remains authoritative for orders, addresses, profile data and wishlist. */
.woocommerce-account .mfv-account-root {
  max-width: var(--mfv-container);
  row-gap: 1.25rem;
}
.woocommerce-account .mfv-account-root__header { margin-bottom: .15rem; }
.woocommerce-account .mfv-account-root__header h1 {
  font-family: var(--mfv-sans);
  font-size: clamp(1.65rem, 3vw, 2.15rem);
  font-weight: 500;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.woocommerce-account .mfv-account-preview__hero {
  background: #171718;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 1.05fr);
  min-height: 250px;
  overflow: hidden;
}
.woocommerce-account .mfv-account-preview__hero-media { min-height: inherit; }
.woocommerce-account .mfv-account-preview__hero-image {
  display: block;
  height: 100%;
  min-height: 250px;
  object-fit: cover;
  object-position: center 42%;
  width: 100%;
}
.woocommerce-account .mfv-account-preview__head {
  align-content: center;
  color: #fff;
  display: grid;
  gap: .55rem;
  padding: clamp(1.5rem, 3vw, 2.35rem);
}
.woocommerce-account .mfv-account-preview__head h2 { color: inherit; margin: 0; }
.woocommerce-account .mfv-account-preview__head p:not(.mfv-kicker) { color: #e9e4e1; margin: 0; }
.woocommerce-account .mfv-account-dashboard-grid { gap: .9rem; margin-top: .9rem; }
.woocommerce-account .mfv-account-dashboard-panel { min-height: 0; }

@media (max-width: 900px) {
  .woocommerce-account .mfv-account-root { row-gap: 1rem; }
  .woocommerce-account .mfv-account-preview__hero { grid-template-columns: 1fr 1fr; min-height: 190px; }
  .woocommerce-account .mfv-account-preview__hero-image { min-height: 190px; }
}

@media (max-width: 600px) {
  .woocommerce-account .mfv-account-root { padding-inline: .75rem; }
  .woocommerce-account .mfv-account-root__header h1 { font-size: 1.65rem; }
  .woocommerce-account .mfv-account-preview__hero { grid-template-columns: 1fr; min-height: 0; }
  .woocommerce-account .mfv-account-preview__head { min-height: 150px; padding: 1rem; }
  .woocommerce-account .mfv-account-preview__hero-media { min-height: 120px; }
  .woocommerce-account .mfv-account-preview__hero-image { min-height: 120px; object-position: center 38%; }
  .woocommerce-account .mfv-account-dashboard-grid { gap: .7rem; }
  .woocommerce-account .mfv-account-dashboard-panel { padding: .9rem; }
  .woocommerce-account .mfv-account-wishlist-empty { align-items: start; grid-template-columns: 1fr; }
  .woocommerce-account .mfv-account-wishlist-actions { align-items: stretch; flex-direction: column; }
}

@media (max-width: 700px) {
  .mfv-checkout-readiness__grid { grid-template-columns: 1fr; }
}

/* Structural support panels keep the reference cadence while remaining truthful. */
.woocommerce-cart .mfv-cart-context__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.woocommerce-cart .mfv-cart-context__input { display: grid; grid-template-columns: 1fr auto; margin-top: .15rem; }
.woocommerce-cart .mfv-cart-context__input input,
.woocommerce-cart .mfv-cart-context__input button { border: 1px solid var(--mfv-border); border-radius: 0; box-sizing: border-box; font: inherit; min-height: 34px; }
.woocommerce-cart .mfv-cart-context__input input { background: #faf8f6; color: var(--mfv-muted); min-width: 0; padding: .4rem .5rem; }
.woocommerce-cart .mfv-cart-context__input button { background: #e9e3df; color: var(--mfv-muted); cursor: not-allowed; font-size: .65rem; font-weight: 700; letter-spacing: .06em; padding-inline: .65rem; text-transform: uppercase; }
.woocommerce-account .woocommerce-MyAccount-navigation { align-self: start; background: #f4efeb; border: 1px solid var(--mfv-border); padding: 1.25rem; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; gap: .2rem; margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--mfv-border); padding: .65rem 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { color: var(--mfv-text); font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-account .mfv-account-dashboard-panel--orders { min-height: 190px; }
.woocommerce-account .mfv-account-empty { background: #faf8f6; border: 1px dashed var(--mfv-border); display: grid; gap: .35rem; min-height: 92px; padding: 1rem; place-content: center start; }
.woocommerce-account .mfv-account-empty span { color: var(--mfv-muted); font-size: .78rem; line-height: 1.5; }

@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout {
    padding-inline: .9rem;
  }
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-checkout__sidebar {
    padding: 1rem;
  }
  .woocommerce-cart .wc-block-cart-item__image img { min-height: 72px; width: 72px; }
  .woocommerce-cart .wc-block-components-quantity-selector { width: 104px; }
  .woocommerce-cart .wc-block-cart__submit-button,
  .woocommerce-checkout .wc-block-components-checkout-place-order-button {
    font-size: .68rem;
    min-height: 50px;
  }
  .woocommerce-cart .wc-block-cart-items__header { display: none; }
}

/* Cart-only reference composition: recommendations, reassurance, scent
 * finder, notes, and editorial gallery remain in that order at every width.
 * Product data, quantity controls, totals, coupons, and checkout remain native. */
.woocommerce-cart .mfv-vc-products,
.woocommerce-cart .mfv-vc-benefits,
.woocommerce-cart .mfv-vc-scent-journey,
.woocommerce-cart .mfv-vc-newsletter,
.woocommerce-cart .mfv-vc-gallery { clear: both; }

.woocommerce-cart .mfv-vc-products .products { align-items: stretch; gap: 1.25rem; }
.woocommerce-cart .mfv-vc-products .product { display: flex; flex-direction: column; }
.woocommerce-cart .mfv-vc-products .product .button { margin-top: auto; }

@media (min-width: 901px) {
  .woocommerce-cart .mfv-cart-context,
  .woocommerce-cart .mfv-vc-products,
  .woocommerce-cart .mfv-vc-scent-journey,
  .woocommerce-cart .mfv-vc-gallery,
  .woocommerce-cart .mfv-vc-benefits,
  .woocommerce-cart .mfv-vc-newsletter { max-width: var(--mfv-container); }
  .woocommerce-cart .mfv-vc-products .product img { aspect-ratio: 1 / 1; object-fit: contain; }
  .woocommerce-cart .mfv-vc-benefits__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .woocommerce-cart .mfv-vc-products,
  .woocommerce-cart .mfv-vc-benefits,
  .woocommerce-cart .mfv-vc-scent-journey,
  .woocommerce-cart .mfv-vc-newsletter,
  .woocommerce-cart .mfv-vc-gallery { margin-top: 2rem; }
}

@media (max-width: 600px) {
  .woocommerce-cart .mfv-vc-products .products { gap: .75rem; }
  .woocommerce-cart .mfv-vc-products .product .woocommerce-loop-product__title { min-height: 2.4em; }
  .woocommerce-cart .mfv-vc-benefits__grid,
  .woocommerce-cart .mfv-vc-scent-journey__prompts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Final responsive guardrails shared by Blocks and classic WooCommerce.
 * Keep the reference cadence when the active template is not a Blocks
 * template, while leaving all controls and totals native. */
@media (max-width: 600px) {
  .woocommerce-cart .mfv-cart-context__head,
  .woocommerce-checkout .mfv-checkout-title,
  .woocommerce-account .mfv-account-root__header {
    padding-inline: 0;
  }
  .woocommerce-cart .mfv-cart-context__title h1,
  .woocommerce-checkout .mfv-checkout-title h1,
  .woocommerce-account .mfv-account-root__header h1 {
    font-size: clamp(1.75rem, 9vw, 2.35rem);
  }
  .woocommerce-cart form.woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout form.checkout,
  .woocommerce-checkout .col2-set {
    width: 100%;
  }
  .woocommerce-cart table.shop_table .product-thumbnail { width: 84px; }
  .woocommerce-cart table.shop_table img { width: 76px; }
  .woocommerce-cart table.shop_table .product-name { min-width: 0; }
  .woocommerce-cart .cart_totals { margin-top: 1rem; }
  .woocommerce-account .mfv-account-root .mfv-account-preview__hero {
    grid-template-columns: 1fr;
  }
  .woocommerce-account .mfv-account-root .mfv-account-preview__hero-image {
    max-height: 190px;
    min-height: 0;
  }
}

/* Final desktop convergence: keep native cart anatomy legible even when the
 * active page falls back to classic WooCommerce markup. */
@media (min-width: 901px) {
  .woocommerce-cart form.woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals { min-width: 0; }
  .woocommerce-cart form.woocommerce-cart-form { width: 100%; }
  .woocommerce-cart .cart-collaterals { width: 100%; }
  .woocommerce-cart .cart_totals { background: #f4efeb; border: 1px solid var(--mfv-border); padding: clamp(1.2rem, 2vw, 1.7rem); width: 100%; }
  .woocommerce-cart .cart_totals .checkout-button { display: block; margin-top: 1.25rem; text-align: center; }
  .woocommerce-cart table.shop_table { table-layout: auto; width: 100%; }
  .woocommerce-cart table.shop_table .product-thumbnail { width: 112px; }
  .woocommerce-cart table.shop_table .product-name { min-width: 220px; }
  .woocommerce-cart table.shop_table .product-quantity { width: 140px; }

  .woocommerce-checkout .wc-block-checkout__main,
  .woocommerce-checkout .wc-block-components-main { padding-block: .5rem 2rem; }
  .woocommerce-checkout .wc-block-checkout__main > *,
  .woocommerce-checkout .wc-block-components-main > * { margin-block: 0 1.35rem; }
  .woocommerce-checkout .wc-block-checkout__sidebar,
  .woocommerce-checkout .wc-block-components-sidebar { padding: clamp(1.4rem, 2.4vw, 2rem); }
  .woocommerce-checkout .wc-block-components-order-summary { padding-block: .5rem 1.25rem; }
  .woocommerce-checkout .wc-block-components-totals-wrapper { padding-block: .7rem; }
}

/* One signed-in dashboard composition: scope native-content suppression only
 * to the account root. Orders/addresses/details endpoints keep their real
 * WooCommerce content and navigation functional. */
.mfv-account-dashboard-root.logged-in.woocommerce-account .woocommerce-MyAccount-content { display: none !important; }
.mfv-account-dashboard-root.logged-in.woocommerce-account .woocommerce { align-items: start; gap: clamp(1.5rem, 3vw, 3rem); grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr); }
.mfv-account-dashboard-root.logged-in.woocommerce-account .woocommerce-MyAccount-navigation { align-self: start; }
.mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-preview { grid-column: 2; margin-top: 0; min-width: 0; }
.mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-dashboard-grid { align-items: stretch; display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1rem; }
.mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-dashboard-panel { min-height: 180px; }
.mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-dashboard-panel--wishlist { grid-column: 1 / -1; min-height: 0; }
@media (max-width: 900px) {
  .mfv-account-dashboard-root.logged-in.woocommerce-account .woocommerce { display: block; }
  .mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-preview { margin-top: 1.5rem; }
  .mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-dashboard-grid { grid-template-columns: 1fr; }
  .mfv-account-dashboard-root.logged-in.woocommerce-account .mfv-account-dashboard-panel--wishlist { grid-column: auto; }
}

/* Commerce convergence: preserve native WooCommerce controls inside a clear
 * editorial frame. */
.mfv-cart-context { margin-block: 0 2rem; }
.mfv-cart-context__progress { background: #f4eee9; border: 1px solid #e6ddd6; padding: 1.25rem 1.5rem; }
.mfv-cart-context__progress > div:first-child { display: grid; gap: .25rem; }
.mfv-cart-context__progress strong { font-family: Georgia, serif; font-size: 1.35rem; }
.mfv-cart-context__progress span:not(.mfv-kicker) { color: #625b57; font-size: .85rem; }
.mfv-cart-context__meter { background: #fff; border: 1px solid #d5cbc4; height: .45rem; margin-top: 1rem; overflow: hidden; }
.mfv-cart-context__meter span { background: #171514; display: block; height: 100%; transition: width .2s ease; }
.mfv-cart-context__grid { border-bottom: 1px solid #e4ded9; display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr); padding-block: 1.25rem; }
.mfv-cart-context__grid > * { display: grid; gap: .3rem; padding-inline: 1rem; }
.mfv-cart-context__grid > * + * { border-left: 1px solid #e4ded9; }
.mfv-cart-context__grid span { color: #625b57; font-size: .82rem; }
.mfv-checkout-signin, .mfv-checkout-notice { margin-block: .75rem 0; padding-block: .9rem; }
.mfv-checkout-signin { border-bottom: 1px solid #e4ded9; }
.mfv-checkout-signin a { color: inherit; margin-left: .35rem; text-decoration: underline; }
.mfv-checkout-notice { background: #f4eee9; display: flex; gap: 1rem; }
.mfv-checkout-notice span { color: #625b57; font-size: .85rem; }

/* Checkout reference intro: breadcrumb + CHECKOUT title sit above the native
 * form and share the approved commerce-shell cadence. */
.woocommerce-checkout .mfv-vc-breadcrumb { color: var(--mfv-muted); font-size: .72rem; letter-spacing: .04em; margin-block: 1.6rem .25rem; }
.woocommerce-checkout .mfv-vc-breadcrumb a { color: var(--mfv-muted); text-decoration: none; }
.woocommerce-checkout .mfv-vc-breadcrumb a:hover { color: var(--mfv-text); }
.woocommerce-checkout .mfv-vc-breadcrumb span[aria-hidden] { margin: 0 .5rem; }
.woocommerce-checkout .mfv-checkout-title { margin-block: .25rem .75rem; }
.woocommerce-checkout .mfv-checkout-title h1 { font-family: var(--mfv-serif); font-size: clamp(2.2rem, 3.6vw, 3.2rem); line-height: 1; margin: 0 0 .5rem; }
.woocommerce-checkout .mfv-checkout-title p { color: var(--mfv-muted); font-size: .85rem; line-height: 1.5; margin: 0; max-width: 44rem; }
.woocommerce-checkout .mfv-checkout-signin strong { font-weight: 700; }
.mfv-account-wishlist-empty { align-items: center; background: #faf8f6; border: 1px solid var(--mfv-border); display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr) auto; min-height: 120px; padding: 1.25rem; }
.mfv-account-wishlist-empty > div:first-child { display: grid; gap: .35rem; }
.mfv-account-wishlist-empty span { color: var(--mfv-muted); font-size: .8rem; line-height: 1.5; }
.mfv-account-wishlist-actions { align-items: center; display: flex; gap: .8rem; }
.mfv-account-wishlist-actions .button { margin: 0; }
.mfv-account-wishlist-actions > a:not(.button) { color: var(--mfv-text); font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.mfv-checkout-steps { border-bottom: 1px solid var(--mfv-border); border-top: 1px solid var(--mfv-border); display: grid; gap: 1px; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 1rem; }
.mfv-checkout-steps span { background: #fff; color: var(--mfv-muted); display: grid; font-size: .68rem; gap: .35rem; letter-spacing: .08em; padding: .85rem .75rem; text-transform: uppercase; }
.mfv-checkout-steps b { color: var(--mfv-text); font-size: .72rem; }
.woocommerce-account .mfv-account-preview { margin-top: clamp(2rem, 4vw, 4rem); }
.woocommerce-account .mfv-account-preview__hero { min-height: 300px; }
.woocommerce-account .mfv-account-dashboard-grid { gap: 1px; }
.woocommerce-account .mfv-account-dashboard-panel { background: #fff; border: 1px solid var(--mfv-border); padding: clamp(1rem, 1.7vw, 1.35rem); }
.woocommerce-account .mfv-account-dashboard-panel__head { align-items: baseline; display: flex; justify-content: space-between; }
.woocommerce-account .mfv-account-dashboard-panel__head a { color: var(--mfv-text); font-size: .65rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-account .mfv-account-dashboard-panel--wishlist { grid-column: 1 / -1; }

/* Unified signed-in account root. Endpoint pages remain native WooCommerce. */
.woocommerce-account .mfv-account-root { align-items: start; display: grid; gap: clamp(1.5rem, 3vw, 3rem); grid-template-columns: minmax(190px, .28fr) minmax(0, 1fr); }
.woocommerce-account .mfv-account-root__nav { margin: 0; width: 100%; }
.woocommerce-account .mfv-account-root__main { min-width: 0; }
.woocommerce-account .mfv-account-root .mfv-account-preview { margin: 0; max-width: none; width: 100%; }
.woocommerce-account .mfv-account-root .mfv-account-preview__hero { min-height: 320px; }
.woocommerce-account .mfv-account-address { background: #faf8f6; border: 1px solid var(--mfv-border); display: grid; font-style: normal; gap: .5rem; line-height: 1.55; min-height: 120px; padding: 1rem; }
.woocommerce-account .mfv-account-address span { color: var(--mfv-muted); font-size: .8rem; }

/* Account root convergence: breadcrumb + MY ACCOUNT title, left nav + truthful
 * non-rewards support card, right dashboard. Geometry mirrors the nav card. */
.woocommerce-account .mfv-account-root__header { grid-column: 1 / -1; margin-bottom: .35rem; }
.woocommerce-account .mfv-account-root__header h1 { font-family: var(--mfv-serif); font-size: clamp(1.8rem, 4vw, 2.6rem); font-weight: 400; margin: 0; }
.woocommerce-account .mfv-account-root__aside { align-self: start; display: grid; gap: 1rem; }
.woocommerce-account .mfv-account-root__support { background: #f4efeb; border: 1px solid var(--mfv-border); padding: 1.25rem; }
.woocommerce-account .mfv-account-root__support .mfv-kicker { margin: 0; }
.woocommerce-account .mfv-account-root__support h3 { font-family: var(--mfv-sans); font-size: .95rem; font-weight: 700; margin: .35rem 0 .5rem; }
.woocommerce-account .mfv-account-root__support-copy { color: var(--mfv-muted); font-size: .8rem; line-height: 1.55; margin: 0 0 .85rem; }
.woocommerce-account .mfv-account-root__support-links { display: grid; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.woocommerce-account .mfv-account-root__support-links a { color: var(--mfv-text); font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* Wishlist grid: real saved products, capped at four truthful cards. */
.woocommerce-account .mfv-account-wishlist-grid { display: grid; gap: 1rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.woocommerce-account .mfv-account-wishlist-card { background: #faf8f6; border: 1px solid var(--mfv-border); color: var(--mfv-text); display: grid; gap: .5rem; padding: .8rem; text-decoration: none; }
.woocommerce-account .mfv-account-wishlist-card img { height: auto; width: 100%; }
.woocommerce-account .mfv-account-wishlist-card__title { font-size: .8rem; line-height: 1.4; }
.woocommerce-account .mfv-account-wishlist-card__price { color: var(--mfv-muted); font-size: .8rem; }

/* Tablet account composition: give the dashboard the full readable measure
 * before the navigation column can compress it. Native endpoint content and
 * account links remain intact; only the visual root is reflowed. */
@media (max-width: 900px) {
  .woocommerce-account .mfv-account-root {
    gap: 1.25rem;
    grid-template-columns: 1fr;
  }
  .woocommerce-account .mfv-account-root__nav {
    margin-bottom: 0;
  }
  .woocommerce-account .mfv-account-root__nav a {
    align-items: center;
    display: flex;
    min-height: 44px;
  }
  .woocommerce-account .mfv-account-root .mfv-account-preview__hero {
    min-height: 260px;
  }
  .woocommerce-account .mfv-account-root .mfv-account-preview__hero .mfv-account-preview__head {
    padding: 2rem;
  }
}

@media (max-width: 700px) {
  .mfv-cart-context__grid { grid-template-columns: 1fr 1fr; }
  .mfv-account-wishlist-empty { grid-template-columns: 1fr; }
  .mfv-account-wishlist-actions { align-items: flex-start; flex-direction: column; }
  .woocommerce-account .mfv-account-root { grid-template-columns: 1fr; }
  .woocommerce-account .mfv-account-root__nav { margin-bottom: 1rem; }
  .mfv-cart-context__grid > * + * { border-left: 0; }
  .mfv-checkout-notice { display: grid; gap: .4rem; }
  .mfv-checkout-steps { grid-template-columns: 1fr 1fr; }
  .woocommerce-cart .mfv-cart-context__actions { align-items: flex-start; flex-direction: column; }
}

/* Keep native checkout forms functional while reducing heading dominance and
 * unused vertical rhythm around the rendered steps. */
.woocommerce-checkout .wc-block-components-checkout-step {
  margin-bottom: .85rem;
  padding-bottom: .85rem;
}
.woocommerce-checkout .wc-block-components-checkout-step__heading h2,
.woocommerce-checkout .wc-block-components-checkout-step__title {
  font-size: .78rem;
}
.woocommerce-checkout .wc-block-components-checkout-step__description {
  margin-block: .35rem .7rem;
}

/* The convergence intro is the single checkout heading. Blocksy's generic
 * entry header duplicates it above the native checkout content. */
.woocommerce-checkout .entry-header { display: none; }

@media (prefers-reduced-motion: reduce) {
  .woocommerce-cart *,
  .woocommerce-checkout * {
    transition-duration: 0.01ms !important;
  }
}

/* Truthful cart action rail: structural reassurance without inventing
 * shipping, payment, promotion, or availability claims. */
.woocommerce-cart .mfv-cart-context { margin-block: 0 1.35rem; }
.woocommerce-cart .mfv-cart-context__actions { align-items: center; border-bottom: 0; display: flex; gap: 1rem; justify-content: space-between; padding: .35rem 0 .8rem; }
.woocommerce-cart .mfv-cart-context__actions .button { margin: 0; }
.woocommerce-cart .mfv-cart-context__actions > span { color: var(--mfv-muted); font-size: .74rem; }
.woocommerce-cart .mfv-cart-context__progress { align-items: center; background: #f4efeb; border: 1px solid var(--mfv-border); display: grid; gap: .35rem 1.2rem; grid-template-columns: minmax(0,1fr) minmax(160px,.34fr); padding: .85rem 1rem; }
.woocommerce-cart .mfv-cart-context__progress > div:first-child { display: grid; gap: .15rem; }
.woocommerce-cart .mfv-cart-context__progress .mfv-kicker { margin: 0; }
.woocommerce-cart .mfv-cart-context__progress strong { font-family: var(--mfv-serif); font-size: 1.12rem; font-weight: 400; }
.woocommerce-cart .mfv-cart-context__progress span:not(.mfv-kicker) { color: var(--mfv-muted); font-size: .72rem; }
.woocommerce-cart .mfv-cart-context__meter { margin-top: 0; }
.woocommerce-cart .mfv-cart-review-reassurance { border-top: 1px solid var(--mfv-border); display: grid; gap: 0; margin-top: 1rem; }
.woocommerce-cart .mfv-cart-review-reassurance > div { display: grid; gap: .25rem; padding: .8rem 0; }
.woocommerce-cart .mfv-cart-review-reassurance > div + div { border-top: 1px solid var(--mfv-border); }
.woocommerce-cart .mfv-cart-review-reassurance strong { font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce-cart .mfv-cart-review-reassurance span, .woocommerce-cart .mfv-cart-review-reassurance a { color: var(--mfv-muted); font-size: .72rem; line-height: 1.45; }
.woocommerce-cart .mfv-cart-context__grid {
  background: var(--mfv-border);
  border: 1px solid var(--mfv-border);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.woocommerce-cart .mfv-cart-context__grid a {
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: .3rem;
  min-height: 82px;
  justify-content: center;
  padding: .9rem 1.1rem;
  text-decoration: none;
}
.woocommerce-cart .mfv-cart-context__grid strong {
  font-size: .7rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.woocommerce-cart .mfv-cart-context__grid span {
  color: var(--mfv-muted);
  font-size: .72rem;
  line-height: 1.45;
}
.woocommerce-cart .mfv-cart-context__grid > div { background: #fff; display: flex; flex-direction: column; gap: .3rem; min-height: 82px; justify-content: center; padding: .9rem 1.1rem; }
.woocommerce-cart .mfv-cart-context__actions { align-items: center; border-bottom: 0; display: flex; gap: 1rem; justify-content: space-between; padding: .35rem 0 .8rem; }
.woocommerce-cart .mfv-cart-context__actions .button { margin: 0; }
.woocommerce-cart .mfv-cart-context__actions > span { color: var(--mfv-muted); font-size: .74rem; }

.mfv-account-preview__hero { background: #211d1b; color: #fff; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); min-height: 260px; overflow: hidden; }
.mfv-account-preview__hero .mfv-account-preview__head { align-content: center; padding: clamp(1.5rem, 4vw, 3.5rem); }
.mfv-account-preview__hero .mfv-account-preview__head p:not(.mfv-kicker) { color: #e8e1dd; }
.mfv-account-preview__hero-image { height: 100%; min-height: 260px; object-fit: cover; width: 100%; }
.mfv-account-preview__hero .mfv-vc-button { background: #fff; color: #111; display: inline-block; margin-top: .75rem; }

@media (max-width: 700px) {
  .woocommerce-cart .mfv-cart-context__grid { grid-template-columns: 1fr; }
  /* Hero image stacks below the welcome copy; let max-height win over the
   * desktop min-height so it never overflows or cramps the hero on phones. */
  .mfv-account-preview__hero { grid-template-columns: 1fr; }
  .mfv-account-preview__hero .mfv-account-preview__head { padding: clamp(1.5rem, 6vw, 2.25rem); }
  .mfv-account-preview__hero-image { max-height: 200px; min-height: 0; object-fit: cover; width: 100%; }
  .woocommerce-account .mfv-account-root__header { margin-bottom: .25rem; }
  .woocommerce-account .mfv-account-wishlist-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 460px) {
  .woocommerce-account .mfv-account-wishlist-grid { grid-template-columns: 1fr; }
  .mfv-account-preview__hero-image { max-height: 160px; }
}

/* Iteration 2 structural corrections: keep the page wrapper out of the
 * Blocks grid, and let only the native sidebar layout own the two tracks. */
.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout {
  display: block !important;
  width: 100% !important;
  max-width: var(--mfv-container);
}
.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout >
.wc-block-components-sidebar-layout.wc-block-checkout {
  align-items: start;
  display: grid !important;
  gap: clamp(1.8rem, 3vw, 2.8rem);
  grid-template-columns: minmax(0, 2.3fr) minmax(340px, 1fr);
  width: 100% !important;
}
.woocommerce-checkout .wc-block-checkout__main,
.woocommerce-checkout .wc-block-checkout__sidebar,
.woocommerce-checkout .wc-block-components-main,
.woocommerce-checkout .wc-block-components-sidebar,
.woocommerce-cart .wc-block-cart__main,
.woocommerce-cart .wc-block-cart__sidebar,
.woocommerce-cart .wc-block-components-main,
.woocommerce-cart .wc-block-components-sidebar {
  box-sizing: border-box;
  max-width: none !important;
  min-width: 0;
  width: 100% !important;
}
.woocommerce-checkout .wc-block-components-order-summary,
.woocommerce-checkout .wc-block-components-order-summary-item,
.woocommerce-checkout .wc-block-components-product-name {
  min-width: 0;
  overflow-wrap: normal;
  white-space: normal;
  word-break: normal;
}
.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  min-height: 64px;
  width: 64px;
}

/* Appended catalog strips are shortcode content, not classic page shells. */
.woocommerce-cart .mfv-vc-products .woocommerce.columns-4,
.woocommerce-account .mfv-vc-products .woocommerce.columns-4 {
  display: block !important;
  float: none !important;
  max-width: none !important;
  width: 100% !important;
}
.woocommerce-cart .mfv-vc-products .woocommerce.columns-4 ul.products,
.woocommerce-account .mfv-vc-products .woocommerce.columns-4 ul.products {
  display: grid !important;
  float: none !important;
  gap: 1rem;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  margin-inline: 0;
  width: 100% !important;
}
.woocommerce-cart .mfv-vc-products .woocommerce.columns-4 ul.products::before,
.woocommerce-cart .mfv-vc-products .woocommerce.columns-4 ul.products::after,
.woocommerce-account .mfv-vc-products .woocommerce.columns-4 ul.products::before,
.woocommerce-account .mfv-vc-products .woocommerce.columns-4 ul.products::after {
  display: none !important;
}

/* Logged-out account is a centered composition; native account navigation
 * remains a grid only for signed-in users. */
.woocommerce-account .woocommerce.ct-woo-unauthorized {
  display: block !important;
  width: 100% !important;
}
.woocommerce-account:not(.logged-in) .woocommerce.ct-woo-unauthorized .woocommerce-form-login {
  margin-inline: auto;
  max-width: 640px;
  width: 100%;
}
.logged-in.woocommerce-account .woocommerce {
  display: grid;
}

@media (max-width: 900px) {
  .woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout >
  .wc-block-components-sidebar-layout.wc-block-checkout {
    display: block !important;
  }
  .woocommerce-cart .mfv-vc-products .woocommerce.columns-4 ul.products,
  .woocommerce-account .mfv-vc-products .woocommerce.columns-4 ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  /* Tablet: let the five-step navigator breathe across two rows instead of
   * cramping five equal cells into the narrower measure. */
  .woocommerce-checkout .mfv-checkout-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .woocommerce-checkout .mfv-checkout-steps span { padding: .8rem .6rem; }
}

@media (max-width: 600px) {
  .woocommerce-cart .mfv-vc-products .woocommerce.columns-4 ul.products,
  .woocommerce-account .mfv-vc-products .woocommerce.columns-4 ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* Checkout-only final convergence. Keep the native Blocks anatomy and review
 * safeguards, while matching the supplied reference's restrained density. */
.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout {
  padding-inline: 0;
}
.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
  align-items: start;
  gap: clamp(1.25rem, 2.4vw, 2rem);
}
.woocommerce-checkout .wc-block-checkout__main,
.woocommerce-checkout .wc-block-checkout__sidebar {
  min-width: 0;
}
.woocommerce-checkout .wc-block-checkout__main {
  padding-inline: clamp(0rem, .5vw, .35rem);
}
.woocommerce-checkout .wc-block-checkout__sidebar {
  background: #fff;
  padding: 1rem;
  position: static;
}
.woocommerce-checkout .wc-block-checkout__sidebar::before {
  font-size: .7rem;
  margin-bottom: .7rem;
}
.woocommerce-checkout .wc-block-components-checkout-step {
  margin-bottom: .7rem;
  padding-bottom: .7rem;
}
.woocommerce-checkout .wc-block-components-checkout-step__heading {
  margin-bottom: .5rem;
}
.woocommerce-checkout .wc-block-components-checkout-step__heading h2,
.woocommerce-checkout .wc-block-components-checkout-step__title {
  font-size: .76rem;
  letter-spacing: .08em;
}
.woocommerce-checkout .wc-block-components-text-input,
.woocommerce-checkout .wc-block-components-combobox,
.woocommerce-checkout .wc-blocks-components-select {
  margin-bottom: .55rem;
}
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select {
  min-height: 42px;
}
.woocommerce-checkout .wc-block-components-order-summary-item {
  padding-block: .65rem;
}
.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  min-height: 54px;
  width: 54px;
}
.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  font-size: .68rem;
}
.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
  font-size: .76rem;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout #place_order {
  min-height: 46px;
}

@media (max-width: 900px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    display: block !important;
  }
  .woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top: 1rem;
  }
}

@media (max-width: 600px) {
  .woocommerce-checkout .wc-block-checkout__main,
  .woocommerce-checkout .wc-block-checkout__sidebar {
    padding-inline: 0;
  }
  .woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top: .8rem;
    padding: .75rem;
  }
  .woocommerce-checkout .wc-block-components-checkout-step {
    margin-bottom: .55rem;
    padding-bottom: .55rem;
  }
  .woocommerce-checkout .wc-block-components-order-summary-item__image img {
    min-height: 48px;
    width: 48px;
  }
}

/* Final cart convergence: let the native cart carry the page. These
 * overrides are intentionally cart-only; catalog facts and Woo controls
 * remain native and truthful. */
@media (min-width: 901px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-cart .wp-block-woocommerce-cart {
    gap: clamp(1.75rem, 3vw, 2.75rem);
    grid-template-columns: minmax(0, 2.2fr) minmax(320px, .95fr) !important;
  }
  .woocommerce-cart .wc-block-cart__main,
  .woocommerce-cart .wc-block-components-main {
    padding-bottom: 1rem;
  }
  .woocommerce-cart .wc-block-cart-items__row {
    min-height: 176px;
    padding-block: 1.35rem;
  }
  .woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image {
    min-width: 158px !important;
    padding-right: 16px !important;
    width: 158px !important;
  }
  .woocommerce-cart .wc-block-cart-item__image > a {
    display: block !important;
    width: 142px !important;
  }
  .woocommerce-cart .wc-block-cart-item__image img,
  .woocommerce-cart table.shop_table img {
    height: 142px !important;
    max-width: none !important;
    min-height: 142px;
    width: 142px !important;
  }
  .woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name,
  .woocommerce-cart table.shop_table .product-name { font-size: 1.05rem !important; line-height: 1.4; }
  .woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__prices,
  .woocommerce-cart table.shop_table .product-price,
  .woocommerce-cart table.shop_table .product-subtotal { font-size: .92rem; }
  .woocommerce-cart .wc-block-cart-item__quantity,
  .woocommerce-cart table.shop_table .product-quantity { min-width: 132px; }
  .woocommerce-cart .wc-block-components-quantity-selector { height: 46px; width: 132px; }
  .woocommerce-cart .wc-block-components-quantity-selector__button { font-size: 1.05rem; width: 44px; }
  .woocommerce-cart .wc-block-components-quantity-selector input { font-size: .9rem; width: 50px; }
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-cart .wc-block-components-sidebar,
  .woocommerce-cart .cart_totals { padding: clamp(1.45rem, 2.5vw, 2rem); }
  .woocommerce-cart .wc-block-components-totals-item { font-size: .92rem; padding-block: .58rem; }
  .woocommerce-cart .wc-block-components-totals-item__label { font-size: .82rem; }
  .woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 1.28rem; }
  .woocommerce-cart .wc-block-components-totals-coupon { border-top: 1px solid var(--mfv-border); margin-top: .75rem; padding-top: 1rem; }
  .woocommerce-cart .wc-block-components-totals-coupon__button { font-size: .78rem; padding-block: .35rem; }
  .woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-text-input input { min-height: 46px; }
  .woocommerce-cart .coupon { border-top: 1px solid var(--mfv-border); margin-top: 1rem; padding-top: 1rem; }
  .woocommerce-cart .coupon input.input-text { min-height: 44px; width: min(100%, 220px); }
  .woocommerce-cart .coupon .button { min-height: 44px; }
}

.woocommerce-cart .mfv-cart-context { margin-bottom: 1rem; }
.woocommerce-cart .mfv-cart-context__progress { padding: 1rem 1.15rem; }
.woocommerce-cart .mfv-cart-context__progress strong { font-size: 1.2rem; }
.woocommerce-cart .mfv-vc-products,
.woocommerce-cart .mfv-vc-benefits,
.woocommerce-cart .mfv-vc-scent-journey,
.woocommerce-cart .mfv-vc-newsletter,
.woocommerce-cart .mfv-vc-gallery { margin-top: clamp(2rem, 4vw, 3.25rem); }
.woocommerce-cart .mfv-vc-products .product img { aspect-ratio: 1 / 1; }
.woocommerce-cart .mfv-vc-products .product .woocommerce-loop-product__title { font-size: .92rem; }

@media (max-width: 900px) {
  .woocommerce-cart .wc-block-cart-item__image img,
  .woocommerce-cart table.shop_table img { min-height: 96px; width: 96px; }
  .woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name { font-size: .98rem; }
}

/* ==========================================================================
 * Cart visual convergence refinements (ownership scope: Cart only).
 * Approved Cart structure per docs/reference-page-system.md §6. Native
 * WooCommerce keeps cart truth/behavior and the staging no-payment safeguards.
 * ========================================================================== */

/* Title + continue-shopping row (reference §6: page title + continue shopping). */
.woocommerce-cart .mfv-cart-context__head {
  align-items: center;
  border-bottom: 1px solid var(--mfv-border);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: .35rem 0 1rem;
}
.woocommerce-cart .mfv-cart-context__head .button { margin: 0; }
.woocommerce-cart .mfv-cart-context__title { display: grid; gap: .15rem; }
.woocommerce-cart .mfv-cart-context__title h1 {
  font-family: var(--mfv-serif);
  font-size: clamp(2rem, 3.4vw, 2.85rem);
  font-weight: 400;
  line-height: 1;
  margin: .15rem 0 .1rem;
}
.woocommerce-cart .mfv-cart-context__title span { color: var(--mfv-muted); font-size: .8rem; }

/* Truthful shipping-readiness band: preserves the free-shipping progress
 * geometry (band + meter) without inventing a threshold, carrier, or benefit. */
.woocommerce-cart .mfv-cart-shipping-band {
  background: #f4efeb;
  border: 1px solid var(--mfv-border);
}
.woocommerce-cart .mfv-cart-shipping-band__lead { display: grid; gap: .15rem; }
.woocommerce-cart .mfv-cart-shipping-band__lead .mfv-kicker { margin: 0; }
.woocommerce-cart .mfv-cart-shipping-band__lead strong {
  font-family: var(--mfv-serif);
  font-size: 1.12rem;
  font-weight: 400;
}
.woocommerce-cart .mfv-cart-shipping-band__lead span:not(.mfv-kicker) {
  color: var(--mfv-muted);
  font-size: .72rem;
}
.woocommerce-cart .mfv-cart-context__meter { margin-top: 0; }

/* Sticky summary guard: stop the order summary overlapping or being clipped
 * when it is taller than the viewport (prevents sticky overlap on scroll). */
@media (min-width: 901px) {
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-checkout__sidebar {
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
  }
}

/* Tablet: un-cramp cart item rows with clearer rhythm and a larger thumbnail. */
@media (max-width: 900px) {
  .woocommerce-cart .wc-block-cart-items__row {
    align-items: center;
    gap: .5rem 1rem;
    padding-block: 1.1rem;
  }
  .woocommerce-cart .wc-block-cart-item__image img { min-height: 104px; width: 104px; }
  .woocommerce-cart .wc-block-components-quantity-selector { width: 120px; }
  .woocommerce-cart .wc-block-cart-item__quantity { min-width: 120px; }
  .woocommerce-cart .wc-block-cart-item__total { font-size: .95rem; }
}

/* Mobile: stack each cart row (image + name/price on top, quantity/total
 * beneath) so columns never crush together on narrow screens. */
@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart-items__row {
    display: grid;
    gap: .35rem 1rem;
    grid-template-areas:
      "image product"
      "image quantity"
      "image total";
    grid-template-columns: 84px 1fr;
    padding-block: 1.15rem;
  }
  .woocommerce-cart .wc-block-cart-item__image { grid-area: image; }
  .woocommerce-cart .wc-block-cart-item__product { display: grid; gap: .2rem; grid-area: product; }
  .woocommerce-cart .wc-block-cart-item__quantity { grid-area: quantity; }
  .woocommerce-cart .wc-block-cart-item__total { grid-area: total; }
  .woocommerce-cart .wc-block-cart-item__image img { min-height: 84px; width: 84px; }
  .woocommerce-cart .wc-block-components-quantity-selector { width: 112px; }
  .woocommerce-cart .wc-block-cart-item__remove-link { font-size: .62rem; }
}

/* All single products use their canonical WooCommerce product gallery images generically. */

/* Reference-page finishing pass. Keep WooCommerce's markup and event wiring
 * authoritative; these rules only establish the desktop composition and
 * visual hierarchy shown in the approved Cart / Checkout / Account captures. */
@media (min-width: 901px) {
  .woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout,
  .woocommerce-checkout .wc-block-checkout {
    max-width: var(--mfv-container) !important;
  }

  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    align-items: start;
    display: grid !important;
    gap: clamp(1.5rem, 3vw, 2.75rem);
    grid-template-columns: minmax(0, 1.58fr) minmax(320px, .92fr) !important;
  }

  .woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-main,
  .woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-sidebar {
    min-width: 0;
    width: auto !important;
  }

  .woocommerce-checkout .wc-block-components-sidebar {
    align-self: start;
    background: #fff;
    border: 1px solid var(--mfv-border);
    box-sizing: border-box;
    padding: clamp(1.15rem, 2vw, 1.65rem);
    position: sticky;
    top: 1rem;
  }

  .woocommerce-checkout .wc-block-components-sidebar::before {
    content: "Order summary";
    display: block;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .1em;
    margin-bottom: 1rem;
    text-transform: uppercase;
  }

  .woocommerce-checkout .mfv-checkout-readiness {
    margin-top: 1.5rem;
  }

  .woocommerce-checkout .mfv-checkout-readiness__grid,
  .woocommerce-checkout .mfv-checkout-review-trust {
    background: #f4efeb;
  }

  .woocommerce-account .mfv-account-preview__hero {
    grid-template-columns: minmax(0, 1.08fr) minmax(300px, .92fr);
    min-height: 300px;
  }

  .woocommerce-account .mfv-account-preview__hero-image {
    min-height: 300px;
  }
}

/* Checkout reference finish: final cascade for the approved form/summary
 * proportion, product-led imagery, density, and responsive stack. */
@media (min-width: 901px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    column-gap: clamp(1.25rem, 2.5vw, 2.25rem);
    grid-template-columns: minmax(0, 1.34fr) minmax(350px, .96fr) !important;
  }
  .woocommerce-checkout .wc-block-components-main { padding-right: clamp(0rem, 1vw, .75rem); }
  .woocommerce-checkout .wc-block-components-sidebar {
    border: 1px solid var(--mfv-border);
    padding: clamp(1.15rem, 1.8vw, 1.5rem);
  }
  .woocommerce-checkout .wc-block-components-order-summary-item {
    align-items: center;
    column-gap: .85rem;
    min-height: 76px;
    padding-block: .72rem;
  }
  .woocommerce-checkout .wc-block-components-order-summary-item__image img {
    height: 68px;
    min-height: 68px;
    width: 68px;
  }
  .woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
  .woocommerce-checkout .wc-block-components-order-summary-item__quantity {
    font-size: .7rem;
    line-height: 1.35;
  }
  .woocommerce-checkout .wc-block-components-order-summary-item__total-price { font-size: .78rem; white-space: nowrap; }
  .woocommerce-checkout .wc-block-components-checkout-step { margin-bottom: .85rem; padding-bottom: .85rem; }
  .woocommerce-checkout .wc-block-components-checkout-step__heading { margin-bottom: .55rem; }
}

@media (max-width: 900px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout { display: block !important; }
  .woocommerce-checkout .wc-block-components-main,
  .woocommerce-checkout .wc-block-components-sidebar { width: 100% !important; }
  .woocommerce-checkout .wc-block-components-sidebar { margin-top: 1.25rem; }
}

@media (max-width: 600px) {
  .woocommerce-checkout .wc-block-components-sidebar { padding: .75rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item { min-height: 64px; padding-block: .62rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item__image img { height: 56px; min-height: 56px; width: 56px; }
  .woocommerce-checkout .wc-block-components-order-summary-item__total-price { font-size: .72rem; }
}

/* TRUE EOF: isolated final guards for Cart, Checkout, and Account. */
.woocommerce-cart .wc-block-cart__sidebar { background: #f7f3ef; }
.woocommerce-cart .wc-block-cart-items__row { border-bottom: 1px solid var(--mfv-border); }
.woocommerce-cart .wc-block-cart__empty-cart { border: 1px solid var(--mfv-border); text-align: center; }
.woocommerce-checkout .wc-block-components-sidebar { background: #f7f3ef; }
.woocommerce-checkout .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"][disabled] { cursor: not-allowed; opacity: .5; pointer-events: none; }
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .mfv-account-empty { background: #f7f3ef; border: 1px solid var(--mfv-border); }
@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-components-sidebar { position: static; }
  .woocommerce-account .mfv-account-root { display: block; }
}

@media (max-width: 600px) {
  .woocommerce-account .woocommerce-MyAccount-navigation { padding: .75rem; }
  .woocommerce-account .woocommerce-MyAccount-navigation li { padding: .45rem 0; }
  .woocommerce-account .mfv-account-dashboard-panel { padding: .7rem; }
  .woocommerce-account .mfv-account-dashboard-panel--orders { min-height: 150px; }
  .woocommerce-account .mfv-account-wishlist-empty { min-height: 88px; padding: .75rem; }
}

/* Compact the truthful checkout support panels on narrow screens while
 * retaining every native field, review row, and disabled submit control. */
@media (max-width: 600px) {
  .woocommerce-checkout .mfv-checkout-readiness,
  .woocommerce-checkout .mfv-checkout-review-shipping__body,
  .woocommerce-checkout .mfv-checkout-review-trust { padding: .75rem; }
  .woocommerce-checkout .mfv-checkout-readiness { margin-top: 1rem; }
  .woocommerce-checkout .mfv-checkout-readiness__grid { margin-top: .65rem; }
  .woocommerce-checkout .mfv-checkout-readiness__grid > span { padding: .6rem .7rem; }
  .woocommerce-checkout .mfv-checkout-review-shipping { margin-bottom: .75rem; padding-bottom: .75rem; }
  .woocommerce-checkout .wc-block-components-checkout-step { margin-bottom: .55rem; padding-bottom: .55rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item { min-height: 56px; padding-block: .45rem; }
  .woocommerce-checkout .mfv-cart-context { margin-bottom: .75rem; }
  .woocommerce-checkout .mfv-checkout-signin,
  .woocommerce-checkout .mfv-checkout-notice { margin-top: .45rem; padding-block: .55rem; }
  .woocommerce-checkout .mfv-checkout-steps { margin-top: .65rem; }
  .woocommerce-checkout .mfv-checkout-steps span { gap: .2rem; padding: .55rem .4rem; }
}

/* TRUE EOF overrides — Cart / Checkout / Account only. */
.woocommerce-cart .wc-block-cart__sidebar { background: #f7f3ef; border-color: var(--mfv-border); }
.woocommerce-cart .wc-block-cart-items__row { border-bottom: 1px solid var(--mfv-border); }
.woocommerce-cart .wc-block-cart__empty-cart { border: 1px solid var(--mfv-border); text-align: center; }
.woocommerce-cart .wc-block-cart__empty-cart h2 { font-family: var(--mfv-serif, Georgia, serif); font-weight: 400; }

.woocommerce-checkout .wc-block-components-sidebar { background: #f7f3ef; border-color: var(--mfv-border); }
.woocommerce-checkout .wc-block-components-order-summary { border-top: 1px solid var(--mfv-border); }
.woocommerce-checkout .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"][disabled] {
  cursor: not-allowed;
  opacity: .5;
  pointer-events: none;
}

.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .mfv-account-empty {
  background: #f7f3ef;
  border: 1px solid var(--mfv-border);
  color: var(--mfv-text);
}
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-message::before { display: none; }

@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-components-sidebar { position: static; }
  .woocommerce-account .mfv-account-root { display: block; }
}

/* Checkout reference finish: match the approved form/summary proportion,
 * product-led summary rows, and restrained editorial rhythm. This layer is
 * checkout-only; WooCommerce still owns values, availability and submit
 * state. */
@media (min-width: 901px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    column-gap: clamp(1.25rem, 2.5vw, 2.25rem);
    grid-template-columns: minmax(0, 1.34fr) minmax(350px, .96fr) !important;
  }

  .woocommerce-checkout .wc-block-components-main {
    padding-right: clamp(0rem, 1vw, .75rem);
  }

  .woocommerce-checkout .wc-block-components-sidebar {
    border: 1px solid var(--mfv-border);
    padding: clamp(1.15rem, 1.8vw, 1.5rem);
  }

  .woocommerce-checkout .wc-block-components-order-summary {
    margin-top: .15rem;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item {
    align-items: center;
    column-gap: .85rem;
    min-height: 76px;
    padding-block: .72rem;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__image img {
    height: 68px;
    min-height: 68px;
    width: 68px;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
  .woocommerce-checkout .wc-block-components-order-summary-item__quantity {
    font-size: .7rem;
    line-height: 1.35;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    font-size: .78rem;
    white-space: nowrap;
  }

  .woocommerce-checkout .wc-block-components-checkout-step {
    margin-bottom: .85rem;
    padding-bottom: .85rem;
  }

  .woocommerce-checkout .wc-block-components-checkout-step__heading {
    margin-bottom: .55rem;
  }
}

@media (max-width: 900px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    display: block !important;
  }

  .woocommerce-checkout .wc-block-components-main,
  .woocommerce-checkout .wc-block-components-sidebar {
    width: 100% !important;
  }

  .woocommerce-checkout .wc-block-components-sidebar {
    margin-top: 1.25rem;
  }
}

@media (max-width: 600px) {
  .woocommerce-checkout .wc-block-components-sidebar {
    padding: .75rem;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item {
    min-height: 64px;
    padding-block: .62rem;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__image img {
    height: 56px;
    min-height: 56px;
    width: 56px;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    font-size: .72rem;
  }
}

/* Trust band below the native checkout remains informational: it never adds
 * payment methods, shipping promises, or a second submit action. */
.woocommerce-checkout .mfv-checkout-readiness {
  border-left: 3px solid #111;
}
.woocommerce-checkout .mfv-checkout-readiness__grid > span {
  line-height: 1.45;
}

@media (max-width: 900px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    display: block !important;
  }
  .woocommerce-checkout .wc-block-components-sidebar {
    margin-top: 1.25rem;
    position: static;
  }
}

/* Final reference alignment: one ownership layer for the three requested
 * commerce pages. Keep WooCommerce markup/data and disabled payment state
 * intact; these rules only correct measure, rhythm, and responsive flow. */
.woocommerce-cart .wc-block-cart,
.woocommerce-checkout .wc-block-checkout,
.woocommerce-account .mfv-account-root {
  box-sizing: border-box;
  margin-inline: auto;
  max-width: var(--mfv-container);
  width: 100%;
}

@media (min-width: 901px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    align-items: start;
    column-gap: clamp(1.5rem, 3vw, 2.5rem);
  }

  .woocommerce-cart .wc-block-cart {
    grid-template-columns: minmax(0, 1fr) minmax(300px, .42fr) !important;
  }

  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-cart .wc-block-components-sidebar {
    align-self: start;
    max-height: none;
    overflow: visible;
    position: sticky;
    top: 1rem;
  }

  .woocommerce-cart .wc-block-cart-items__row {
    min-height: 0;
    padding-block: 1rem;
  }

  .woocommerce-cart .wc-block-cart-item__image img,
  .woocommerce-cart table.shop_table img {
    height: 112px !important;
    min-height: 112px;
    width: 112px !important;
  }

  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    grid-template-columns: minmax(0, 1.62fr) minmax(320px, .88fr) !important;
  }

  .woocommerce-checkout .wc-block-components-main {
    min-width: 0;
  }

  .woocommerce-checkout .wc-block-components-sidebar {
    max-height: none;
    overflow: visible;
    position: sticky;
    top: 1rem;
  }

  .woocommerce-account .mfv-account-root__main {
    min-width: 0;
  }

  .woocommerce-account .mfv-account-dashboard-grid {
    gap: 1rem;
  }

  .woocommerce-account .mfv-account-dashboard-panel {
    padding: 1.15rem;
  }

  .woocommerce-account .mfv-account-preview__hero {
    min-height: 250px;
  }

  .woocommerce-account .mfv-account-preview__hero-image {
    min-height: 250px;
  }
}

@media (max-width: 900px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout,
  .woocommerce-account .mfv-account-root {
    padding-inline: 1rem;
  }

  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-cart .wc-block-components-sidebar,
  .woocommerce-checkout .wc-block-components-sidebar {
    margin-top: 1rem;
  }

  .woocommerce-account .mfv-account-root__aside,
  .woocommerce-account .mfv-account-root__main {
    width: 100%;
  }

  .woocommerce-account .mfv-account-dashboard-grid {
    gap: .75rem;
  }

  .woocommerce-account .mfv-account-dashboard-panel {
    padding: 1rem;
  }
}

@media (max-width: 600px) {
  .woocommerce-cart .mfv-cart-context__head {
    align-items: flex-start;
    flex-direction: column;
    gap: .75rem;
  }

  .woocommerce-cart .mfv-cart-context__head .button {
    width: 100%;
  }

  .woocommerce-cart .wc-block-cart-items__row {
    align-items: start;
    display: grid;
    gap: .35rem .75rem;
    grid-template-areas: "image product" "image quantity" "image total";
    grid-template-columns: 72px minmax(0, 1fr);
    padding-block: .9rem;
  }

  .woocommerce-cart .wc-block-cart-item__image img,
  .woocommerce-cart table.shop_table img {
    height: 72px !important;
    min-height: 72px;
    width: 72px !important;
  }

  .woocommerce-cart .wc-block-components-quantity-selector {
    height: 36px;
    width: 104px;
  }

  .woocommerce-cart .wc-block-components-quantity-selector__button {
    width: 34px;
  }

  .woocommerce-cart .wc-block-cart-item__quantity,
  .woocommerce-cart .wc-block-cart-item__total {
    min-width: 0;
  }

  .woocommerce-checkout .mfv-checkout-title h1 {
    font-size: 2rem;
  }

  .woocommerce-checkout .mfv-checkout-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .woocommerce-checkout .wc-block-components-sidebar,
  .woocommerce-checkout .wc-block-components-main {
    padding-inline: 0;
  }

  .woocommerce-account .mfv-account-preview__hero {
    min-height: 0;
  }

  .woocommerce-account .mfv-account-preview__hero .mfv-account-preview__head {
    padding: 1.25rem;
  }
}

/* Fourth-pass commerce convergence. This final layer owns only the three
 * requested surfaces; WooCommerce continues to own all customer/cart data. */

/* The cart submit control must stay in document flow on tablet. Blocks can
 * add sticky positioning to this wrapper, which otherwise covers item rows. */
@media (max-width: 900px) {
  .woocommerce-cart .wc-block-cart__submit-container,
  .woocommerce-cart .wc-block-cart__submit,
  .woocommerce-cart .wc-block-cart__submit-button {
    bottom: auto !important;
    position: static !important;
    transform: none !important;
  }

  .woocommerce-cart .wc-block-cart__submit-container {
    background: transparent !important;
    box-shadow: none !important;
    margin-block: 1rem 0;
    padding: 0 !important;
    z-index: auto !important;
  }

  .woocommerce-cart .wc-block-cart-items__row {
    min-height: 118px;
    padding-block: 1.15rem;
  }

  .woocommerce-cart .wc-block-cart-item__image img {
    height: 104px !important;
    min-height: 104px;
    width: 104px !important;
  }

  .woocommerce-cart .wc-block-cart__sidebar {
    margin-top: 1.5rem;
  }

  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    gap: 1.5rem;
  }

  .woocommerce-account .mfv-account-preview__hero {
    min-height: 280px;
  }
  .woocommerce-account .mfv-account-preview__hero-image {
    min-height: 280px;
    object-position: center 42%;
  }
}

@media (min-width: 901px) {
  .woocommerce-cart .wc-block-cart {
    grid-template-columns: minmax(0, 1.72fr) minmax(320px, .78fr) !important;
  }

  .woocommerce-cart .wc-block-cart-items__row {
    min-height: 148px;
    padding-block: 1.15rem;
  }

  .woocommerce-cart .wc-block-cart-item__image img,
  .woocommerce-cart table.shop_table img {
    height: 128px !important;
    min-height: 128px;
    width: 128px !important;
  }

  .woocommerce-cart .mfv-vc-products,
  .woocommerce-cart .mfv-vc-benefits,
  .woocommerce-cart .mfv-vc-scent-journey,
  .woocommerce-cart .mfv-vc-newsletter,
  .woocommerce-cart .mfv-vc-gallery {
    margin-top: 2.5rem;
  }

  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    grid-template-columns: minmax(0, 1.5fr) minmax(350px, .9fr) !important;
  }

  .woocommerce-account .mfv-account-root {
    gap: 1.5rem 2rem;
    grid-template-columns: minmax(200px, .3fr) minmax(0, 1fr);
  }

  .woocommerce-account .mfv-account-root .mfv-account-preview__hero {
    min-height: 290px;
  }
  .woocommerce-account .mfv-account-root .mfv-account-preview__hero-image {
    min-height: 290px;
    object-position: center 42%;
  }
}

@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart-items__row {
    grid-template-columns: 88px minmax(0, 1fr);
  }

  .woocommerce-cart .wc-block-cart-item__image img {
    height: 88px !important;
    min-height: 88px;
    width: 88px !important;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item {
    padding-block: .8rem;
  }

  .woocommerce-checkout .wc-block-components-order-summary-item__image img {
    height: 58px;
    min-height: 58px;
    width: 58px;
  }

  .woocommerce-account .mfv-account-preview__hero-image {
    max-height: 190px;
    min-height: 0;
    object-position: center 38%;
  }
}

/* Final reference layer: keep each WooCommerce surface isolated so a block
 * update or a shared component cannot leak layout rules between pages. */

/* CART — shell, rows, summary, and the real WooCommerce empty state. */
.woocommerce-cart .wc-block-cart {
  background: var(--mfv-surface, #fff);
  box-sizing: border-box;
  row-gap: clamp(1.5rem, 3vw, 2.5rem);
}
.woocommerce-cart .wc-block-cart-items {
  border-top: 1px solid var(--mfv-border);
}
.woocommerce-cart .wc-block-cart-items__row {
  border-bottom: 1px solid var(--mfv-border);
  column-gap: 1rem;
}
.woocommerce-cart .wc-block-cart-item__product {
  min-width: 0;
}
.woocommerce-cart .wc-block-cart-item__product a,
.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
  color: var(--mfv-text);
  font-weight: 600;
  text-decoration: none;
}
.woocommerce-cart .wc-block-cart__sidebar {
  background: #f7f3ef;
  border-color: var(--mfv-border);
}
.woocommerce-cart .wc-block-cart__empty-cart {
  border: 1px solid var(--mfv-border);
  margin: 0;
  padding: clamp(2rem, 6vw, 5rem) 1rem;
  text-align: center;
}
.woocommerce-cart .wc-block-cart__empty-cart h2 {
  font-family: var(--mfv-serif, Georgia, serif);
  font-weight: 400;
}

/* CHECKOUT — explicit review framing; order submission stays disabled by
 * the storefront state and is never made actionable by CSS. */
.woocommerce-checkout .wc-block-checkout {
  background: var(--mfv-surface, #fff);
}
.woocommerce-checkout .wc-block-components-checkout-step {
  border-bottom: 1px solid var(--mfv-border);
}
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
.woocommerce-checkout .wc-block-components-address-form input,
.woocommerce-checkout .wc-block-components-address-form select {
  background: #fff;
  border: 1px solid var(--mfv-border);
  border-radius: 0;
  min-height: 2.85rem;
}
.woocommerce-checkout .wc-block-components-sidebar {
  background: #f7f3ef;
}
.woocommerce-checkout .wc-block-components-order-summary {
  border-top: 1px solid var(--mfv-border);
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"][disabled] {
  cursor: not-allowed;
  filter: none;
  opacity: .5;
  pointer-events: none;
}

/* ACCOUNT — dashboard shell, truthful empty panels, and mobile stacking. */
.woocommerce-account .mfv-account-root {
  align-items: start;
}
.woocommerce-account .mfv-account-nav,
.woocommerce-account .mfv-account-preview,
.woocommerce-account .mfv-account-dashboard-panel {
  border-color: var(--mfv-border);
}
.woocommerce-account .mfv-account-preview__hero {
  overflow: hidden;
}
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .mfv-account-empty {
  background: #f7f3ef;
  border: 1px solid var(--mfv-border);
  color: var(--mfv-text);
  padding: 1rem;
}
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-message::before {
  display: none;
}

@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart,
  .woocommerce-checkout .wc-block-checkout {
    padding-inline: .75rem;
  }
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-components-sidebar {
    position: static;
  }
  .woocommerce-account .mfv-account-root {
    display: block;
  }
  .woocommerce-account .mfv-account-nav,
  .woocommerce-account .mfv-account-preview {
    margin-bottom: 1rem;
  }
}

/* Checkout reference finish: final cascade for the approved split, summary
 * imagery, density, typography, and responsive stack. */
@media (min-width: 901px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
    column-gap: clamp(1.25rem, 2.5vw, 2.25rem);
    grid-template-columns: minmax(0, 1.34fr) minmax(350px, .96fr) !important;
  }
  .woocommerce-checkout .wc-block-components-main { padding-right: clamp(0rem, 1vw, .75rem); }
  .woocommerce-checkout .wc-block-components-sidebar { border: 1px solid var(--mfv-border); padding: clamp(1.15rem, 1.8vw, 1.5rem); }
  .woocommerce-checkout .wc-block-components-order-summary-item { align-items: center; column-gap: .85rem; min-height: 76px; padding-block: .72rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item__image img { height: 68px; min-height: 68px; width: 68px; }
  .woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
  .woocommerce-checkout .wc-block-components-order-summary-item__quantity { font-size: .7rem; line-height: 1.35; }
  .woocommerce-checkout .wc-block-components-order-summary-item__total-price { font-size: .78rem; white-space: nowrap; }
  .woocommerce-checkout .wc-block-components-checkout-step { margin-bottom: .85rem; padding-bottom: .85rem; }
  .woocommerce-checkout .wc-block-components-checkout-step__heading { margin-bottom: .55rem; }
}
@media (max-width: 900px) {
  .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout { display: block !important; }
  .woocommerce-checkout .wc-block-components-main,
  .woocommerce-checkout .wc-block-components-sidebar { width: 100% !important; }
  .woocommerce-checkout .wc-block-components-sidebar { margin-top: 1.25rem; }
}
@media (max-width: 600px) {
  .woocommerce-checkout .wc-block-components-sidebar { padding: .75rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item { min-height: 64px; padding-block: .62rem; }
  .woocommerce-checkout .wc-block-components-order-summary-item__image img { height: 56px; min-height: 56px; width: 56px; }
  .woocommerce-checkout .wc-block-components-order-summary-item__total-price { font-size: .72rem; }
}

/* TRUE EOF: isolated final guards for Cart, Checkout, and Account. */
.woocommerce-cart .wc-block-cart__sidebar { background: #f7f3ef; }
.woocommerce-cart .wc-block-cart-items__row { border-bottom: 1px solid var(--mfv-border); }
.woocommerce-cart .wc-block-cart__empty-cart { border: 1px solid var(--mfv-border); text-align: center; }
.woocommerce-checkout .wc-block-components-sidebar { background: #f7f3ef; }
.woocommerce-checkout .wc-block-components-checkout-place-order-button[disabled],
.woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled,
.woocommerce-checkout button[name="woocommerce_checkout_place_order"][disabled] { cursor: not-allowed; opacity: .5; pointer-events: none; }
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .mfv-account-empty { background: #f7f3ef; border: 1px solid var(--mfv-border); }
@media (max-width: 600px) {
  .woocommerce-cart .wc-block-cart__sidebar,
  .woocommerce-checkout .wc-block-components-sidebar { position: static; }
  .woocommerce-account .mfv-account-root { display: block; }
}
