/* ============================================================
   CannaElite Gold skin — V9 nav + footer over Twenty Twenty-Five
   Values ported from V9/canna-elite-shop.html (verbatim where shown).
   ============================================================ */
:root {
  --ce-black:      #000000;
  --ce-near-black: #050505;
  --ce-gold-dark:  #6b4f18;
  --ce-gold-mid:   #b8892a;
  --ce-gold-bright:#dcbd97;
  --ce-gold-light: #e8c860;
  --ce-gold-hi:    #f5e080;
  --ce-gold-tan:   #c8a84a;
  --ce-gold-grad:  linear-gradient(135deg,#6b4f18 0%,#b8892a 20%,#e8c860 40%,#f5e080 50%,#e8c860 60%,#b8892a 80%,#6b4f18 100%);
  --ce-gold-grad-h:linear-gradient(180deg,#6b4f18 0%,#b8892a 25%,#e8c860 50%,#b8892a 75%,#6b4f18 100%);
  --ce-text-body:  #d4c9b0;
  --ce-text-dim:   #8a7d64;
}

/* ── Dark page canvas on the shop archive only (keep cart/checkout/account
      readable on their light backgrounds) ──────────────────────────────── */
body.woocommerce-shop,
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
  background: var(--ce-black);
}
body.woocommerce-shop .wp-block-group.is-layout-constrained > main,
body.post-type-archive-product main {
  background: transparent;
}

/* ════════════════════════════════════════════════════════════
   GOLD HEADER  (parts/header.html → .ce-gold-header)
   ════════════════════════════════════════════════════════════ */
.ce-gold-header { position: relative; background: var(--ce-black); }

/* Ship / announcement bar */
.ce-gold-header .ce-shipbar {
  background: linear-gradient(90deg,#3a2c0a,#6b4f18,#b8892a,#6b4f18,#3a2c0a);
  text-align: center;
  padding: 9px 24px;
  font-family: 'Cinzel', serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--ce-black);
}

/* Nav bar (V9 values: sticky black bar, gold hairline borders) */
.ce-gold-header .ce-nav {
  background: #000;
  border-top: 1px solid rgba(200,168,74,0.3);
  border-bottom: 1px solid rgba(200,168,74,0.3);
  box-shadow: 0 2px 24px rgba(0,0,0,0.8);
  position: sticky;
  top: 0;
  z-index: 500;
}
.ce-gold-header .nav-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  min-height: 120px;
  padding: 24px 40px;
  position: relative;
}
.ce-gold-header .nav-group { flex: 1 1 0; display: flex; align-items: center; flex-wrap: wrap; }
.ce-gold-header .nav-left  { justify-content: flex-end; }
.ce-gold-header .nav-right { justify-content: flex-start; }

/* V9 separator: thin gold pipe at 40% */
.ce-gold-header .nav-separator { color: rgba(200,168,74,0.4); font-size: 18px; line-height: 1; padding: 0 4px; margin: 0; opacity: 0.4; }

.ce-gold-header .nav-link {
  font-family: 'Cinzel', serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ce-gold-bright);
  padding: 14px 20px;
  transition: all 0.2s;
  position: relative;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
}
.ce-gold-header .nav-link:hover { color: var(--ce-gold-light); }
.ce-gold-header .nav-link::after {
  content: '';
  position: absolute;
  bottom: 8px; left: 20px; right: 20px;
  height: 1px;
  background: var(--ce-gold-mid);
  transform: scaleX(0);
  transition: transform 0.2s;
}
.ce-gold-header .nav-link:hover::after { transform: scaleX(1); }

.ce-gold-header .ce-navlogo-link { flex: 0 0 auto; padding: 0 30px; display: flex; align-items: center; }
.ce-gold-header .ce-navlogo-img {
  height: 90px; width: auto; display: block; margin-bottom: 0;
  filter: drop-shadow(0 0 16px rgba(212,168,53,.45));
}

/* Info dropdown — display:flex + align-items:center guarantees the "Info ▾"
   trigger is centered in the nav row on its own box (matching every plain
   .nav-link sibling) instead of relying on the surrounding div's default
   block layout, so it lines up identically to the static header at every
   width. */
.ce-gold-header .nav-drop { position: relative; display: flex; align-items: center; }
.ce-gold-header .nav-drop-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: #0c0c0c;
  border: 1px solid var(--ce-gold-mid);
  border-top: 2px solid var(--ce-gold-bright);
  min-width: 240px;
  z-index: 600;
}
.ce-gold-header .nav-drop:hover .nav-drop-menu,
.ce-gold-header .nav-drop:focus-within .nav-drop-menu { display: block; }
.ce-gold-header .nav-drop-menu a {
  display: block;
  padding: 11px 20px;
  font-family: 'Cinzel', serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ce-gold-bright);
  border-bottom: 1px solid #1a1a1a;
  text-decoration: none;
  transition: all 0.2s;
}
.ce-gold-header .nav-drop-menu a:last-child { border-bottom: none; }
.ce-gold-header .nav-drop-menu a:hover { background: rgba(200,168,74,0.08); color: var(--ce-gold-light); padding-left: 28px; }

/* ── Basket + hover mini-cart drawer (top-right, gold on black) ─────────── */
.ce-gold-header .ce-cart {
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);
  z-index: 620;
}
.ce-gold-header .ce-cart-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ce-gold-bright);
  text-decoration: none;
  padding: 6px;
  transition: color 0.2s;
}
.ce-gold-header .ce-cart-btn:hover { color: var(--ce-gold-light); }
.ce-gold-header .ce-cart-icon { display: block; }
.ce-gold-header .ce-cart-count {
  position: absolute;
  top: -4px; right: -6px;
  min-width: 18px; height: 18px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--ce-gold-grad);
  color: #000;
  font-family: 'Cinzel', serif;
  font-size: 10px; font-weight: 700; line-height: 18px;
  text-align: center;
}

/* drawer: anchored under the basket, hidden until the basket area is hovered */
.ce-gold-header .ce-cart-drawer {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 10px;
  width: 330px;
  background: #0c0c0c;
  border: 1px solid var(--ce-gold-mid);
  border-top: 2px solid var(--ce-gold-bright);
  box-shadow: 0 18px 50px rgba(0,0,0,0.85);
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
  transition: opacity 0.22s ease, transform 0.22s ease;
  z-index: 620;
}
/* invisible bridge so moving the cursor from icon to drawer keeps it open */
.ce-gold-header .ce-cart-drawer::before {
  content: ''; position: absolute; top: -12px; left: 0; right: 0; height: 12px;
}
.ce-gold-header .ce-cart:hover .ce-cart-drawer,
.ce-gold-header .ce-cart:focus-within .ce-cart-drawer {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.ce-gold-header .ce-cart-head {
  font-family: 'Cinzel', serif;
  font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase;
  color: var(--ce-gold-bright);
  padding: 14px 18px;
  border-bottom: 1px solid rgba(200,168,74,0.18);
}
.ce-gold-header .ce-cart-items { max-height: 320px; overflow-y: auto; }
.ce-gold-header .ce-cart-empty {
  padding: 26px 18px;
  font-family: 'Crimson Text', Georgia, serif;
  font-style: italic;
  color: var(--ce-text-dim);
  text-align: center;
}
.ce-gold-header .ce-cart-line {
  display: grid;
  grid-template-columns: 46px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 12px 18px;
  border-bottom: 1px solid rgba(200,168,74,0.10);
}
.ce-gold-header .ce-cart-line img {
  width: 46px; height: 46px; object-fit: contain;
  background: #0a0a0a; border: 1px solid rgba(200,168,74,0.18); padding: 3px;
}
.ce-gold-header .ce-cart-line .ce-cl-name {
  font-family: 'Cinzel', serif; font-size: 12px; color: var(--ce-gold-light); line-height: 1.25;
}
.ce-gold-header .ce-cart-line .ce-cl-meta {
  font-family: 'Crimson Text', Georgia, serif; font-style: italic; font-size: 12px; color: var(--ce-text-dim); margin-top: 2px;
}
.ce-gold-header .ce-cart-line .ce-cl-price {
  font-family: 'Cinzel', serif; font-size: 12px; color: var(--ce-gold-bright); white-space: nowrap;
}

.ce-gold-header .ce-cart-foot { padding: 14px 18px; border-top: 1px solid rgba(200,168,74,0.18); }
.ce-gold-header .ce-cart-subtotal {
  display: flex; justify-content: space-between; align-items: baseline;
  font-family: 'Cinzel', serif; font-size: 12px; letter-spacing: 1px; text-transform: uppercase;
  color: var(--ce-gold-bright); margin-bottom: 12px;
}
.ce-gold-header .ce-cart-subtotal span:last-child { font-size: 15px; }
.ce-gold-header .ce-cart-checkout {
  display: block; text-align: center;
  background: var(--ce-gold-grad); color: #000;
  font-family: 'Cinzel', serif; font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
  padding: 11px 14px; text-decoration: none; transition: filter 0.2s;
}
.ce-gold-header .ce-cart-checkout:hover { filter: brightness(1.08); }
.ce-gold-header .ce-cart-view {
  display: block; text-align: center; margin-top: 8px;
  font-family: 'Cinzel', serif; font-size: 10px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase;
  color: var(--ce-gold-bright); text-decoration: none; opacity: 0.85;
}
.ce-gold-header .ce-cart-view:hover { color: var(--ce-gold-light); opacity: 1; }

/* Phone breakpoints split into the SAME two tiers as the static header
   (index.html / canna-elite-account.html: 860px wraps + hides separators +
   shrinks link font; 820px is a SEPARATE, narrower tier that drops the logo
   to its own row and centers the link groups). The theme previously
   collapsed both tiers into one 860px query, which reordered the logo too
   early (821-860px) relative to the static header — split to match, and
   match nav-link's shrunk font-size to the static value (.62rem) exactly.
   The minicart-specific repositioning (cart icon, drawer width) is kept at
   860px since the static header has no equivalent functional minicart. */
@media (max-width: 860px) {
  .ce-gold-header .nav-inner { flex-wrap: wrap; min-height: 0; justify-content: center; gap: 6px 10px; padding: 12px 16px; }
  .ce-gold-header .nav-separator { display: none; }
  .ce-gold-header .nav-link { font-size: .62rem; padding: 8px 12px; }
  .ce-gold-header .ce-navlogo-img { height: 64px; }
  .ce-gold-header .ce-cart { top: 14px; right: 14px; transform: none; }
  .ce-gold-header .ce-cart-drawer { width: 88vw; max-width: 330px; }
}
@media (max-width: 820px) {
  .ce-gold-header .ce-navlogo-link { order: -1; flex: 1 0 100%; justify-content: center; padding: 8px 0; }
  .ce-gold-header .nav-group { flex: 1 1 45%; justify-content: center; }
}

/* ════════════════════════════════════════════════════════════
   GOLD FOOTER  (parts/footer.html → .ce-gold-footer)
   ════════════════════════════════════════════════════════════ */
.ce-gold-footer {
  background-color: #020202;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cg stroke='%23b8892a' stroke-width='0.4' opacity='0.07'%3E%3Cline x1='0' y1='0' x2='30' y2='30'/%3E%3Cline x1='60' y1='0' x2='30' y2='30'/%3E%3Cline x1='0' y1='60' x2='30' y2='30'/%3E%3Cline x1='60' y1='60' x2='30' y2='30'/%3E%3C/g%3E%3C/svg%3E");
  border-top: 2px solid;
  border-image: var(--ce-gold-grad-h) 1;
  color: var(--ce-text-dim);
}
.ce-gold-footer .footer-top {
  max-width: 1200px;
  margin: 0 auto;
  padding: 72px 40px 48px;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 60px;
}
.ce-gold-footer .footer-brand {
  display: flex; flex-direction: column; align-items: flex-start; gap: 14px;
}
.ce-gold-footer .footer-brand-logo-img {
  display: block; height: 90px; width: auto; margin: 0 0 2px;
  filter: drop-shadow(0 0 16px rgba(232,200,96,.45)) drop-shadow(0 0 40px rgba(212,168,53,.18));
}
.ce-gold-footer .ce3-estrow { display: flex; align-items: center; gap: 12px; }
.ce-gold-footer .ce3-seg { width: 42px; height: 1px; background: linear-gradient(90deg,rgba(232,200,96,0),var(--ce-gold-light)); }
.ce-gold-footer .ce3-seg.ce3-r { background: linear-gradient(90deg,var(--ce-gold-light),rgba(232,200,96,0)); }
.ce-gold-footer .ce3-dia { width: 5px; height: 5px; background: var(--ce-gold-light); transform: rotate(45deg); box-shadow: 0 0 8px rgba(232,200,96,.6); }
.ce-gold-footer .ce3-est { font-family: 'Cinzel', serif; font-size: 11px; font-weight: 700; letter-spacing: 6px; text-transform: uppercase; color: var(--ce-gold-hi); }
.ce-gold-footer .footer-brand-body {
  font-family: 'Cinzel', serif;
  font-size: 12px; letter-spacing: 3px; text-transform: uppercase;
  color: var(--ce-text-dim); margin-top: 4px;
}

.ce-gold-footer .footer-col h4 {
  font-family: 'Cinzel', serif;
  font-size: 10px; font-weight: 700; letter-spacing: 4px; text-transform: uppercase;
  color: var(--ce-gold-bright);
  margin: 0 0 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(200,168,74,0.15);
}
.ce-gold-footer .footer-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.ce-gold-footer .footer-col a {
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 15px; color: var(--ce-text-dim); text-decoration: none; transition: color 0.2s;
}
.ce-gold-footer .footer-col a:hover { color: var(--ce-gold-bright); }

.ce-gold-footer .footer-bottom {
  border-top: 1px solid rgba(200,168,74,0.1);
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  flex-wrap: wrap;
}
.ce-gold-footer .footer-legal { font-family: 'Crimson Text', Georgia, serif; font-size: 12px; color: var(--ce-text-dim); line-height: 1.7; max-width: 760px; margin: 0; }
.ce-gold-footer .footer-copy { font-family: 'Cinzel', serif; font-size: 10px; letter-spacing: 2px; color: var(--ce-text-dim); white-space: nowrap; opacity: 0.6; }

@media (max-width: 860px) {
  .ce-gold-footer .footer-top { display: flex; flex-wrap: wrap; gap: 28px; }
  .ce-gold-footer .footer-col, .ce-gold-footer .footer-brand { flex: 1 1 100%; width: 100%; }
  .ce-gold-footer .footer-brand { align-items: center; text-align: center; }
}

/* ════════════════════════════════════════════════════════════
   CART (page 32) + CHECKOUT (page 33) — gold-on-black skin.
   Style only; the classic [woocommerce_cart]/[woocommerce_checkout]
   markup + logic are untouched. Scoped to the WC page body classes.
   ════════════════════════════════════════════════════════════ */
body.woocommerce-cart,
body.woocommerce-checkout {
  background: #0a0a0a !important;
  color: var(--ce-text-body);
}
body.woocommerce-cart .wp-site-blocks,
body.woocommerce-checkout .wp-site-blocks { background: transparent; }

/* the content area becomes a CE gold pagebox on the wall */
body.woocommerce-cart main .woocommerce,
body.woocommerce-checkout main .woocommerce {
  position: relative;
  background: #000;
  border: 1px solid rgba(200,168,74,0.25);
  padding: 34px 40px 44px;
  margin: 32px auto 48px;
  font-family: 'Crimson Text', Georgia, serif;
  color: var(--ce-text-body);
}
body.woocommerce-cart main .woocommerce::before,
body.woocommerce-checkout main .woocommerce::before {
  content: ''; position: absolute; inset: 9px;
  border: 1px solid rgba(200,168,74,0.18); pointer-events: none;
}

/* page title (Cart / Checkout) + section headings */
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-checkout .wp-block-post-title,
body.woocommerce-cart main h1,
body.woocommerce-checkout main h1 {
  font-family: 'Cinzel Decorative', serif !important;
  color: #e8c860 !important;
  text-align: center;
  letter-spacing: .04em;
}
body.woocommerce-cart .woocommerce h2,
body.woocommerce-cart .woocommerce h3,
body.woocommerce-checkout .woocommerce h2,
body.woocommerce-checkout .woocommerce h3,
body.woocommerce-checkout #order_review_heading {
  font-family: 'Cinzel', serif !important;
  font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
  color: var(--ce-gold-bright) !important;
}

/* body text + links */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce { color: var(--ce-text-body); }
body.woocommerce-cart .woocommerce a,
body.woocommerce-checkout .woocommerce a { color: var(--ce-gold-light); }
body.woocommerce-cart .woocommerce a:hover,
body.woocommerce-checkout .woocommerce a:hover { color: var(--ce-gold-hi); }

/* tables: dark cells, gold rules + Cinzel headers */
body.woocommerce-cart .woocommerce table.shop_table,
body.woocommerce-checkout .woocommerce table.shop_table {
  background: transparent;
  border: 1px solid rgba(200,168,74,0.3);
  border-radius: 0;
}
body.woocommerce-cart .woocommerce table.shop_table th,
body.woocommerce-checkout .woocommerce table.shop_table th {
  font-family: 'Cinzel', serif; letter-spacing: 1px; text-transform: uppercase;
  color: var(--ce-gold-bright);
  border-bottom: 1px solid rgba(200,168,74,0.4);
  background: #000;
}
body.woocommerce-cart .woocommerce table.shop_table td,
body.woocommerce-checkout .woocommerce table.shop_table td {
  color: var(--ce-text-body);
  border-top: 1px solid rgba(200,168,74,0.14);
  background: rgba(12,12,12,0.6);
}
body.woocommerce-cart .woocommerce table.shop_table tfoot th,
body.woocommerce-cart .woocommerce .order-total .amount,
body.woocommerce-checkout .woocommerce .order-total .amount { color: var(--ce-gold-hi); }
body.woocommerce-cart .woocommerce .product-remove a.remove {
  color: var(--ce-gold-bright) !important; border-color: rgba(200,168,74,.4);
}
body.woocommerce-cart .woocommerce .product-thumbnail img {
  border: 1px solid rgba(200,168,74,0.2); background: #0a0a0a;
}

/* inputs / selects / textareas — dark gold-framed */
body.woocommerce-cart .woocommerce input.input-text,
body.woocommerce-cart .woocommerce input.qty,
body.woocommerce-checkout .woocommerce input.input-text,
body.woocommerce-checkout .woocommerce input.qty,
body.woocommerce-checkout .woocommerce select,
body.woocommerce-checkout .woocommerce textarea,
body.woocommerce-checkout .woocommerce .select2-selection {
  background: #060606 !important;
  color: var(--ce-text-body) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 0 !important;
}
body.woocommerce-cart .woocommerce input:focus,
body.woocommerce-checkout .woocommerce input:focus,
body.woocommerce-checkout .woocommerce select:focus,
body.woocommerce-checkout .woocommerce textarea:focus { border-color: var(--ce-gold-bright) !important; outline: none; }
body.woocommerce-checkout .woocommerce label,
body.woocommerce-checkout .woocommerce .woocommerce-input-wrapper { color: var(--ce-text-body); }
body.woocommerce-checkout .woocommerce .required { color: var(--ce-gold-light); }

/* buttons: brand gold, black Cinzel caps (Update, Apply coupon, Proceed, Place order) */
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-cart .woocommerce a.checkout-button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-checkout .woocommerce input.button,
body.woocommerce-checkout .woocommerce #place_order {
  background: var(--ce-gold-grad) !important;
  color: #000 !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important; letter-spacing: 2px; text-transform: uppercase;
  border: 1px solid var(--ce-gold-mid) !important;
  border-radius: 0 !important;
  text-shadow: none !important;
  transition: filter .2s;
}
body.woocommerce-cart .woocommerce a.checkout-button,
body.woocommerce-checkout .woocommerce #place_order { display: block; text-align: center; padding: 14px 18px; font-size: 13px; }
body.woocommerce-cart .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce #place_order:hover { filter: brightness(1.08); }

/* coupon / info notices */
body.woocommerce-cart .woocommerce .cart_totals,
body.woocommerce-checkout .woocommerce #order_review { background: transparent; }
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  background: rgba(200,168,74,0.06) !important;
  border-top: 3px solid var(--ce-gold-mid);
  color: var(--ce-text-body);
}
body.woocommerce-cart .woocommerce-message::before,
body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-info::before { color: var(--ce-gold-bright); }

/* block-style notices used by classic cart/checkout (coupon prompt, payment
   notice) render light-blue by default — gold-tint them to match. */
body.woocommerce-cart .wc-block-components-notice-banner,
body.woocommerce-checkout .wc-block-components-notice-banner {
  background: rgba(200,168,74,0.07) !important;
  color: var(--ce-text-body) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 0 !important;
}
body.woocommerce-cart .wc-block-components-notice-banner a,
body.woocommerce-checkout .wc-block-components-notice-banner a { color: var(--ce-gold-light) !important; }
body.woocommerce-cart .wc-block-components-notice-banner svg,
body.woocommerce-checkout .wc-block-components-notice-banner svg { fill: var(--ce-gold-bright) !important; }

/* WC's jQuery blockUI loading veil defaults to white inline — darken it so the
   gold pages never flash a white overlay (style only; logic untouched). */
body.woocommerce-cart .blockUI.blockOverlay,
body.woocommerce-checkout .blockUI.blockOverlay { background: #050505 !important; }

/* ════════════════════════════════════════════════════════════
   MY ACCOUNT (login form + logged-in dashboard) — gold-on-black skin.
   Style only; the [woocommerce_my_account] markup + logic are untouched.
   Scoped to body.woocommerce-account. Canvas (ce-wall lattice) is set with
   cart/checkout in the CE-STORE-LATTICE block below. Mirrors the cart/checkout
   pagebox so the account pages wear the same V9 frame.
   ════════════════════════════════════════════════════════════ */
body.woocommerce-account {
  background: #0a0a0a !important;
  color: var(--ce-text-body);
}
body.woocommerce-account .wp-site-blocks { background: transparent; }

/* content area becomes a CE gold pagebox on the wall */
body.woocommerce-account main .woocommerce {
  position: relative;
  background: #000;
  border: 1px solid rgba(200,168,74,0.25);
  padding: 34px 40px 44px;
  margin: 32px auto 48px;
  max-width: 1000px;
  font-family: 'Crimson Text', Georgia, serif;
  color: var(--ce-text-body);
}
body.woocommerce-account main .woocommerce::before {
  content: ''; position: absolute; inset: 9px;
  border: 1px solid rgba(200,168,74,0.18); pointer-events: none;
}

/* page title (My Account) + section headings */
body.woocommerce-account .wp-block-post-title,
body.woocommerce-account main h1 {
  font-family: 'Cinzel Decorative', serif !important;
  color: #e8c860 !important;
  text-align: center;
  letter-spacing: .04em;
}
body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
  color: var(--ce-gold-bright) !important;
}

/* body text + links */
body.woocommerce-account .woocommerce { color: var(--ce-text-body); }
body.woocommerce-account .woocommerce a { color: var(--ce-gold-light); }
body.woocommerce-account .woocommerce a:hover { color: var(--ce-gold-hi); }

/* login / register form fields: dark cells, gold borders, zero radius */
body.woocommerce-account .woocommerce label { color: var(--ce-text-body); }
body.woocommerce-account .woocommerce .required { color: var(--ce-gold-light); }
body.woocommerce-account .woocommerce input.input-text,
body.woocommerce-account .woocommerce input.woocommerce-Input,
body.woocommerce-account .woocommerce input[type="text"],
body.woocommerce-account .woocommerce input[type="email"],
body.woocommerce-account .woocommerce input[type="password"],
body.woocommerce-account .woocommerce input[type="tel"],
body.woocommerce-account .woocommerce select,
body.woocommerce-account .woocommerce textarea {
  background: #060606 !important;
  color: var(--ce-text-body) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 0 !important;
}
body.woocommerce-account .woocommerce input:focus,
body.woocommerce-account .woocommerce select:focus,
body.woocommerce-account .woocommerce textarea:focus {
  border-color: var(--ce-gold-bright) !important; outline: none;
}

/* buttons: brand gold, black Cinzel caps (Log in, Register, Save changes) */
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce input.button,
body.woocommerce-account .woocommerce .woocommerce-button,
body.woocommerce-account .woocommerce .woocommerce-form-login__submit,
body.woocommerce-account .woocommerce .woocommerce-form-register__submit {
  background: var(--ce-gold-grad) !important;
  color: #000 !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important; letter-spacing: 2px; text-transform: uppercase;
  border: 1px solid var(--ce-gold-mid) !important;
  border-radius: 0 !important;
  text-shadow: none !important;
  transition: filter .2s;
}
body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce .woocommerce-button:hover { filter: brightness(1.08); }

/* login/register columns: gold-hairline card panels, zero radius */
body.woocommerce-account .woocommerce .col2-set .col-1,
body.woocommerce-account .woocommerce .col2-set .col-2,
body.woocommerce-account .woocommerce .u-column1,
body.woocommerce-account .woocommerce .u-column2 {
  border: 1px solid rgba(200,168,74,0.18);
  background: rgba(200,168,74,0.02);
  padding: 24px 26px;
  border-radius: 0;
}

/* MyAccount navigation (logged-in): superseded by the single-framed-column
   redesign in the CE-ACCT-CART-CHECKOUT V9 POLISH block below (search
   "2b. Account navigation") — that block loads later and is the only
   .woocommerce-MyAccount-navigation ruleset now (this stub removed
   2026-07-11 to avoid two competing definitions of the same component). */

/* MyAccount content pane + any dashboard tables */
body.woocommerce-account .woocommerce-MyAccount-content { color: var(--ce-text-body); }
body.woocommerce-account .woocommerce-MyAccount-content a { color: var(--ce-gold-light); }
body.woocommerce-account .woocommerce table.shop_table,
body.woocommerce-account .woocommerce table.woocommerce-orders-table,
body.woocommerce-account .woocommerce table.account-orders-table {
  background: transparent;
  border: 1px solid rgba(200,168,74,0.3);
  border-radius: 0;
}
body.woocommerce-account .woocommerce table th {
  font-family: 'Cinzel', serif; letter-spacing: 1px; text-transform: uppercase;
  color: var(--ce-gold-bright);
  border-bottom: 1px solid rgba(200,168,74,0.4);
  background: #000;
}
body.woocommerce-account .woocommerce table td {
  color: var(--ce-text-body);
  border-top: 1px solid rgba(200,168,74,0.14);
}

/* account notices (login errors / "logged out" messages) */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
  background: rgba(200,168,74,0.06) !important;
  border-top: 3px solid var(--ce-gold-mid);
  color: var(--ce-text-body);
  border-radius: 0 !important;
}
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before { color: var(--ce-gold-bright); }
body.woocommerce-account .wc-block-components-notice-banner {
  background: rgba(200,168,74,0.07) !important;
  color: var(--ce-text-body) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 0 !important;
}
body.woocommerce-account .blockUI.blockOverlay { background: #050505 !important; }

/* ════════════════════════════════════════════════════════════
   RETAIL SHOP (cannaelite-sandbox) — V9 gold look on the default
   WooCommerce product GRID (li.wc-block-product cards). NOT the
   wholesale .wl-* list. Design ref: V9/canna-elite-shop.html.
   ════════════════════════════════════════════════════════════ */
body.post-type-archive-product,
body.woocommerce-shop,
body.tax-product_cat,
body.tax-product_tag {
  background:#050400;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cg stroke='%23b8892a' stroke-width='0.5' opacity='0.15'%3E%3Cline x1='0' y1='0' x2='40' y2='40'/%3E%3Cline x1='80' y1='0' x2='40' y2='40'/%3E%3Cline x1='0' y1='80' x2='40' y2='40'/%3E%3Cline x1='80' y1='80' x2='40' y2='40'/%3E%3C/g%3E%3Ctext x='40' y='44' text-anchor='middle' font-family='serif' font-size='7' fill='%23b8892a' opacity='0.2' letter-spacing='1'%3ECE%3C/text%3E%3C/svg%3E");
  color:var(--ce-text-body);
}
.ce-retail-shop { background:transparent; padding-bottom:60px; }

/* gold "Shop" hero */
.ce-shop-hero { text-align:center; padding:46px 16px 6px; }
.ce-shop-eyebrow { font-family:'Cinzel',serif; font-size:11px; letter-spacing:5px; text-transform:uppercase; color:var(--ce-text-dim); margin-bottom:14px; }
.ce-shop-title { font-family:'Cinzel Decorative',serif !important; font-size:clamp(2rem,5vw,3.2rem) !important; font-weight:700; letter-spacing:.04em; margin:0; }
.ce-shop-title.gold-text { background:var(--ce-gold-grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.ce-shop-orn { display:flex; align-items:center; justify-content:center; gap:16px; margin:18px 0 8px; }
.ce-shop-orn-line { width:120px; max-width:22vw; height:1px; background:var(--ce-gold-grad-h); opacity:.6; }
.ce-shop-orn-dia { color:var(--ce-gold-bright); font-size:18px; opacity:.85; }

/* product GRID cards (V9 .product-card) */
body.post-type-archive-product ul.wc-block-product-template,
body.post-type-archive-product .wp-block-woocommerce-product-template {
  gap:20px !important; list-style:none; padding-left:0;
}
body.post-type-archive-product li.wc-block-product,
body.tax-product_cat li.wc-block-product {
  background:#000 !important;
  border:1px solid rgba(200,168,74,0.16);
  border-radius:0 !important;
  padding:0 0 20px !important;
  position:relative; overflow:hidden;
  transition:border-color .3s, transform .3s, box-shadow .3s;
}
body.post-type-archive-product li.wc-block-product:hover {
  border-color:rgba(200,168,74,0.5);
  transform:translateY(-4px);
  box-shadow:0 12px 40px rgba(0,0,0,.6);
}
/* image area */
body.post-type-archive-product li.wc-block-product .wc-block-components-product-image,
body.post-type-archive-product li.wc-block-product .wp-block-woocommerce-product-image {
  margin:0 0 16px; background:#0a0a0a; display:block;
}
body.post-type-archive-product li.wc-block-product .wc-block-components-product-image img,
body.post-type-archive-product li.wc-block-product img {
  width:100%; aspect-ratio:4/3; object-fit:contain; background:#0a0a0a; padding:10px; display:block;
}
/* title + price + button */
body.post-type-archive-product li.wc-block-product .wp-block-post-title,
body.post-type-archive-product li.wc-block-product .wp-block-post-title a {
  font-family:'Cinzel Decorative',serif !important; font-weight:700; color:var(--ce-gold-light) !important;
  text-decoration:none; padding:0 16px; line-height:1.25;
}
body.post-type-archive-product li.wc-block-product .wc-block-components-product-price,
body.post-type-archive-product li.wc-block-product .price {
  display:block; color:var(--ce-gold-bright) !important; font-family:'Cinzel',serif !important;
  font-weight:700; padding:8px 16px 0; font-size:1.05rem;
}
body.post-type-archive-product li.wc-block-product .wc-block-components-product-price del { color:var(--ce-text-dim) !important; opacity:.7; }
body.post-type-archive-product li.wc-block-product .wp-block-button__link,
body.post-type-archive-product li.wc-block-product a.add_to_cart_button,
body.post-type-archive-product li.wc-block-product a.button,
body.post-type-archive-product li.wc-block-product button.wp-block-button__link {
  background:var(--ce-gold-grad) !important; color:#000 !important;
  font-family:'Cinzel',serif !important; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  font-size:11px !important; border:1px solid var(--ce-gold-mid) !important; border-radius:0 !important;
  padding:10px 16px !important; margin:12px 16px 0 !important; display:inline-block; transition:filter .2s;
}
body.post-type-archive-product li.wc-block-product .wp-block-button__link:hover,
body.post-type-archive-product li.wc-block-product a.add_to_cart_button:hover { filter:brightness(1.08); }

/* pagination + store notices on the dark bg */
body.post-type-archive-product .wp-block-query-pagination a,
body.post-type-archive-product .wp-block-query-pagination .page-numbers { color:var(--ce-gold-bright); }
body.post-type-archive-product .wc-block-components-product-results-count,
body.post-type-archive-product .woocommerce-result-count { color:var(--ce-text-dim); }

/* Products missing their own image fall back to the light WC placeholder — dim it
   so it reads as a quiet dark tile on the gold-on-black grid (data gap, not design). */
body.post-type-archive-product li.wc-block-product img[src*="woocommerce-placeholder"],
body.post-type-archive-product li.wc-block-product img[src*="placeholder"] {
  opacity:0.12; filter:grayscale(1);
}

/* "Wholesale" link on the retail My Account page (gold button, works on the
   default light account page). The banner that printed this link on the
   account/login pages was removed 2026-07-11 (task 2); this rule is now
   unused/dead but harmless to leave in place. */
.woocommerce-account .ce-acct-wholesale,
.ce-acct-wholesale {
  display:inline-block; margin:0 0 22px;
  background:var(--ce-gold-grad); color:#000 !important;
  font-family:'Cinzel',serif; font-weight:700; letter-spacing:1px; text-transform:uppercase;
  font-size:12px; padding:12px 22px; text-decoration:none; border:1px solid var(--ce-gold-mid);
}
.ce-acct-wholesale:hover { filter:brightness(1.08); }
/* Header nav Wholesale link: pixel-match the static header — plain nav-link,
   NO emphasis color. (2026-07-11: dropped the gold-hi brighten; the static
   header renders Wholesale exactly like every other .nav-link.) */

/* ════════════════════════════════════════════════════════════
   CE-STORE-LATTICE + COMPACT CHECKOUT  (added 2026-07-06)
   Brief: D:\rambl\CE-STORE-LATTICE-AND-COMPACT-CHECKOUT.md
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* --- Step 1: REAL home-page lattice (ce-wall.jpg) behind all store pages.
       Same image + size/repeat/attachment the V9 home page uses on <body>.
       Form/cart/product cards keep their own solid black card on top. --- */
/* html-prefixed so it out-specifies the earlier `background:#0a0a0a !important`
   rule (this file, line ~351) regardless of stylesheet load order. */
html body.woocommerce-checkout,
html body.woocommerce-cart,
html body.woocommerce-account,
html body.woocommerce-shop,
html body.post-type-archive-product,
html body.tax-product_cat,
html body.tax-product_tag,
html body.single-product {
  background: url("/wp-content/themes/twentytwentyfive-ce/assets/ce-wall.jpg") center center / 990px repeat fixed #0a0a0a !important;
}

/* --- Step 2: compact, centered, two-column checkout.
       Was: 1340px-wide pagebox, billing/shipping stacked ABOVE a full-width
       order review (very tall). Now: ~1000px centered pagebox with billing
       (left) beside the order summary (right), tighter vertical rhythm. --- */
html body.woocommerce-checkout main .woocommerce {
  max-width: 1000px !important;
}
@media (min-width: 900px) {
  /* CSS grid: billing column (left) + order-summary column (right).
     Form has exactly 3 children: #customer_details, #order_review_heading,
     #order_review — mapped to named areas so heading+review stack on the right. */
  body.woocommerce-checkout form.checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
    grid-template-areas:
      "customer heading"
      "customer review";
    column-gap: 34px;
    align-items: start;
  }
  body.woocommerce-checkout form.checkout #customer_details {
    grid-area: customer; width: auto; float: none; max-width: none;
  }
  body.woocommerce-checkout form.checkout #order_review_heading {
    grid-area: heading; margin: 0 0 14px;
  }
  body.woocommerce-checkout form.checkout #order_review {
    grid-area: review; width: auto; float: none;
  }
  /* narrow left column: stack billing over shipping (not 48%/48% floats) */
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2 {
    float: none; width: 100%;
  }
  body.woocommerce-checkout #customer_details .col-2 { margin-top: 20px; }
}
/* tighten vertical spacing so the whole form fits one screen (readable, no field removed) */
body.woocommerce-checkout .woocommerce form .form-row {
  margin: 0 0 10px;
}
/* END CE-STORE-LATTICE + COMPACT CHECKOUT */

/* ════════════════════════════════════════════════════════════
   CE-STORE EMPTY-BOX + LOGO FIX  (added 2026-07-06)
   Brief: D:\rambl\CE-STORE-EMPTYBOX-AND-LOGO.md
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* Fault 1: the WooCommerce Store Notices block (.wp-block-woocommerce-store-notices)
   carries the generic `woocommerce` class, so the pagebox card rule above dressed it
   as an empty black bordered card at the top of cart/checkout. Strip that styling so
   it is invisible when empty; real notices injected into its .woocommerce-notices-wrapper
   still render with the skin's notice styling. NOT hidden (it is a live notices slot). */
body.woocommerce-cart .wp-block-woocommerce-store-notices,
body.woocommerce-checkout .wp-block-woocommerce-store-notices {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.woocommerce-cart .wp-block-woocommerce-store-notices::before,
body.woocommerce-checkout .wp-block-woocommerce-store-notices::before {
  content: none !important;
}

/* Fault 2: the nav logo <img> src in parts/header.html was a root-relative path
   (/wp-content/...) missing the /store/ prefix, so it 404s on store pages and fell
   back to underlined alt text. Canonical src fixed in parts/header.html; this CSS
   points the rendered <img> at the same working home-page crest so it is correct on
   the live block theme too (content:url() swaps the replaced image). */
.ce-gold-header .ce-navlogo-img {
  content: url("/wp-content/themes/twentytwentyfive-ce/assets/ce-logo.png") !important;
}
/* END CE-STORE EMPTY-BOX + LOGO FIX */

/* NOTE (2026-07-06): checkout gold footer + footer-logo path bug were fixed WITHOUT CSS.
   - Gold footer added to checkout via the page-checkout template (canonical
     templates/page-checkout.html + live custom DB template).
   - Footer crest path bug (parts/footer.html src missing /store/) fixed at the SRC:
     canonical parts/footer.html + live custom DB `footer` template-part override.
   No ce-gold.css rule needed for either. Rollback = clear those two custom DB
   templates + revert the two .html files. */

/* ════════════════════════════════════════════════════════════
   CE-CHECKOUT-CONDENSE  (added 2026-07-06)
   Brief: D:\rambl\CE-CHECKOUT-CONDENSE.md
   Spacing/size only — NO field removed, order/columns/lattice/nav/
   footer/shortcode/gateway all unchanged. Was ~1820px tall (42px
   label line-height, 48-51px inputs, 21px heading margins, 19.4px
   payment-row margins, 87px "Pay with your credit card" line);
   this compresses all of it to land under ~1300px, readable +
   tappable (inputs stay >=42px). Payment box is real WC form-rows
   (not a locked iframe), so its card fields tighten too.
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* 1. LABELS — the main waste. 21px font at 42px line-height => each
      label block was ~57px before the input even started. Cut to a
      readable 14px, tight line-height, small gap to its input. */
body.woocommerce-checkout .woocommerce form .form-row label,
body.woocommerce-checkout .woocommerce .payment_box label,
body.woocommerce-checkout .woocommerce label.required_field {
  font-size: 14px !important;
  line-height: 1.3 !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
}

/* 2. INPUTS / SELECTS / TEXTAREAS + Authorize.net card fields —
      48-51px down to a compact ~42px (kept >=40px for mobile tap). */
body.woocommerce-checkout .woocommerce input.input-text,
body.woocommerce-checkout .woocommerce input.qty,
body.woocommerce-checkout .woocommerce select,
body.woocommerce-checkout .woocommerce textarea,
body.woocommerce-checkout .woocommerce .anet-input,
body.woocommerce-checkout .woocommerce .text-input-credit-card {
  height: auto !important;
  min-height: 42px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
}

/* 3. SECTION HEADINGS (BILLING DETAILS / YOUR ORDER) — 21px top+
      21px bottom margins down to a tight, still-readable rhythm. */
body.woocommerce-checkout .woocommerce h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3 {
  font-size: 17px !important;
  line-height: 1.3 !important;
  margin: 4px 0 12px !important;
}

/* 4. FORM-ROW vertical gaps — billing 10px + card 19.4px unified to 8px. */
body.woocommerce-checkout .woocommerce form .form-row,
body.woocommerce-checkout .woocommerce .payment_box .form-row {
  margin: 0 0 8px !important;
  padding: 0 !important;
}

/* 5. PAYMENT BOX — 713px block. Trim its 19.4px padding + 19.4px
      margin, and kill the 87px "Pay with your credit card" line
      (big font + 19.4px margins) down to a compact caption. */
body.woocommerce-checkout .woocommerce .payment_box {
  padding: 12px 16px !important;
  margin: 10px 0 !important;
}
body.woocommerce-checkout .woocommerce .payment_box > p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
}
body.woocommerce-checkout .woocommerce #payment .payment_methods li,
body.woocommerce-checkout .woocommerce #payment .wc_payment_methods li {
  margin: 0 0 8px !important;
  padding: 0 !important;
}

/* 6. ORDER TABLE row spacing — 9px cell padding down to 6px. */
body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th {
  padding: 6px 10px !important;
}

/* 7. PAGEBOX padding — 34/40/44 trimmed. */
body.woocommerce-checkout main .woocommerce {
  padding: 22px 32px 28px !important;
}
/* 8. ORDER TABLE + terms body text — was 22px/33px, so the product
      name, its variation list, and amounts made the review table very
      tall. Bring body text to a readable 14px (headings handled above).
      This is the last large vertical chunk in the right column. */
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .woocommerce-checkout-review-order-table strong.product-quantity,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd {
  font-size: 14px !important;
  line-height: 1.4 !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation {
  margin: 4px 0 0 !important;
}
/* 9. Terms / privacy paragraph above Place order — 22px body text down
      to 13px so it stops eating ~120px under the order summary. */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p {
  font-size: 13px !important;
  line-height: 1.4 !important;
  margin: 0 0 10px !important;
}
/* END CE-CHECKOUT-CONDENSE */

/* ════════════════════════════════════════════════════════════
   CE-CHECKOUT-CLEAN-STYLE  (added 2026-07-06)
   Brief: D:\rambl\CE-CHECKOUT-CLEAN-STYLE.md
   LOOK ONLY — structure unchanged (2-col, 1000px, all fields,
   gateway, shortcode, lattice, gold nav/footer). Turns the blocky
   WooCommerce order TABLE into one thin-line gold card (per-cell
   borders + backgrounds stripped, dividers only above the subtotal
   group and above Total), collapses the product meta (Flavor/MG/
   Package) to ONE dim line, lays the Authorize.net card fields as
   Card Number (full) then CVV (left) + Expiry Month+Year (the date,
   right) on one line, shrinks the gateway heading + section headings
   to one compact line, and makes labels compact gold with a small
   input radius. Loads AFTER CE-CHECKOUT-CONDENSE so it refines those
   sizes. ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* ---- A. ORDER BOX: one clean thin-line card, no heavy cells ---- */
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  padding: 6px 10px !important;
  background: transparent !important;
}
/* strip every per-cell border + background (the blocky table look) */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  background: transparent !important;
  border: 0 !important;
  padding: 4px 6px !important;
}
/* header row: small caps + a single thin divider under it */
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  font-size: 11px !important;
  padding-bottom: 6px !important;
  border-bottom: 1px solid rgba(200,168,74,0.15) !important;
}
/* product line: name left, price right, same line, top aligned */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td { padding-top: 8px !important; }
body.woocommerce-checkout .cart_item .product-name {
  font-size: 13px !important; line-height: 1.35 !important; vertical-align: top !important;
}
body.woocommerce-checkout .cart_item .product-total {
  font-size: 13px !important; text-align: right !important; vertical-align: top !important; white-space: nowrap !important;
}
body.woocommerce-checkout .cart_item strong.product-quantity {
  font-size: 12px !important; font-weight: 400 !important; color: #8a7d64 !important;
}
/* meta (Flavor / MG / Package) -> ONE compact dim line under the name */
body.woocommerce-checkout .cart_item dl.variation {
  display: block !important; margin: 2px 0 0 !important;
  font-size: 10.5px !important; line-height: 1.45 !important; color: #8a7d64 !important;
}
body.woocommerce-checkout .cart_item dl.variation dt,
body.woocommerce-checkout .cart_item dl.variation dd,
body.woocommerce-checkout .cart_item dl.variation dd p {
  display: inline !important; margin: 0 !important; padding: 0 !important;
  font-size: 10.5px !important; line-height: 1.45 !important; font-weight: 400 !important;
  color: #8a7d64 !important; float: none !important;
}
body.woocommerce-checkout .cart_item dl.variation dt::after { content: " " !important; }
body.woocommerce-checkout .cart_item dl.variation dd::after { content: " · " !important; color: rgba(138,125,100,0.65) !important; }
body.woocommerce-checkout .cart_item dl.variation dd:last-of-type::after { content: "" !important; }
/* subtotal + shipping: simple label-left / value-right ~12px */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
  font-size: 12px !important; font-weight: 400 !important; text-align: left !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
  font-size: 12px !important; text-align: right !important;
}
/* thin divider above the subtotal group (first tfoot row) */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td {
  border-top: 1px solid rgba(200,168,74,0.15) !important; padding-top: 8px !important;
}
/* Total: bold gold, thin top border above it */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td {
  border-top: 1px solid rgba(200,168,74,0.15) !important; padding-top: 8px !important;
  font-size: 14px !important; font-weight: 700 !important; color: #f5e080 !important;
}

/* ---- B. PAYMENT: one-line gateway heading + side-by-side card fields ----
   Markup: div.anet-payment-form > 2x div.form-row-pair
     pair 1 = [#anet-card-number, #anet-card-cvc]
     pair 2 = [#anet-card-expiry-month, #anet-card-expiry-year]
   Promote both pairs (display:contents) so all 4 fields flex together,
   then width them: Card# full row; CVV left half; Month+Year the date. */
/* "Credit Card - Authorize.net" = the method radio's <label>; was 22px/44px (wrapped, 74px) */
body.woocommerce-checkout label[for="payment_method_anet"] {
  font-size: 12.5px !important; line-height: 1.3 !important; letter-spacing: 1px !important;
}
body.woocommerce-checkout li.payment_method_anet label img,
body.woocommerce-checkout .wc_payment_methods label img { max-height: 16px !important; width: auto !important; vertical-align: middle !important; margin: 0 2px !important; }
/* intro "Pay with your credit card..." line small */
body.woocommerce-checkout .payment_box.payment_method_anet > p { font-size: 12px !important; }
/* flex the wrapper, dissolve the pair divs into it */
body.woocommerce-checkout .payment_box .anet-payment-form {
  display: flex !important; flex-wrap: wrap !important; gap: 10px !important; align-items: flex-end !important;
}
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair { display: contents !important; }
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair > .form-row {
  width: auto !important; min-width: 0 !important; margin: 0 !important; float: none !important;
}
/* let the controls shrink with their row (kills the flex min-content trap
   that otherwise keeps each field full-width and wrapped to its own line) */
body.woocommerce-checkout .payment_box .anet-payment-form .form-row input,
body.woocommerce-checkout .payment_box .anet-payment-form .form-row select {
  width: 100% !important; min-width: 0 !important; box-sizing: border-box !important;
}
/* keep the narrow card labels ("Expiry Month/Year") on ONE line so those
   fields don't grow taller than CVV and leave a gap on the row */
body.woocommerce-checkout .payment_box .anet-payment-form .form-row > label {
  font-size: 12px !important; white-space: nowrap !important;
  overflow: hidden !important; text-overflow: ellipsis !important;
}
/* Card Number = full width (pair 1, 1st field) */
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair:nth-child(1) > .form-row:nth-child(1) {
  flex: 0 0 100% !important;
}
/* CVV = compact, left (pair 1, 2nd field) */
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair:nth-child(1) > .form-row:nth-child(2) {
  flex: 0 0 84px !important;
}
/* Expiry Month + Year grow to fill the rest as the date, right (pair 2) */
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair:nth-child(2) > .form-row {
  flex: 1 1 0 !important;
}

/* ---- C. INPUTS + LABELS: compact, small radius, gold labels ---- */
body.woocommerce-checkout .woocommerce input.input-text,
body.woocommerce-checkout .woocommerce select,
body.woocommerce-checkout .woocommerce textarea,
body.woocommerce-checkout .woocommerce .anet-input,
body.woocommerce-checkout .woocommerce .text-input-credit-card {
  border-radius: 4px !important;
}
body.woocommerce-checkout .woocommerce form .form-row > label,
body.woocommerce-checkout .payment_box .form-row label {
  font-size: 13px !important;
  line-height: 1.3 !important;
  color: var(--ce-gold-bright) !important;
  margin: 0 0 3px !important;
}

/* ---- D. SECTION HEADINGS (BILLING DETAILS / YOUR ORDER) ~15px compact ---- */
body.woocommerce-checkout .woocommerce h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3 {
  font-size: 15px !important; letter-spacing: 1.5px !important; margin: 2px 0 10px !important;
}
/* END CE-CHECKOUT-CLEAN-STYLE */

/* ════════════════════════════════════════════════════════════
   CE-CHECKOUT-MATCH-RENDER  (added 2026-07-06)
   Brief: D:\rambl\CE-CHECKOUT-MATCH-RENDER.md
   THREE fixes to hit the approved design, CSS only, structure
   unchanged. Loads AFTER CE-CHECKOUT-CLEAN-STYLE.
   (1) frame BOTH columns as matching black cards on the lattice —
       left = #customer_details; right = #order_review_heading joined
       to #order_review (one card). Inner order table + payment box
       are NOT restyled, only framed. Grid rows set to `auto 1fr` to
       collapse the row-stretch gap that otherwise floats the heading
       above the review body.
   (2) coupon: hide the WC toggle bar, force the hidden coupon form
       visible, lay it as a plain labelled field (gold "Coupon:" label,
       dark input, gold Apply button).
   (3) widen the Expiry Month/Year columns so their labels + "Select
       Month/Year" placeholders stop clipping.
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* ---- FIX 1: two matching cards ---- */
/* collapse the heading/review gap: 1fr row absorbs the tall left
   column's excess height instead of inflating row 1 */
body.woocommerce-checkout form.checkout {
  grid-template-rows: auto 1fr !important;
  align-items: start !important;
}
/* LEFT — billing card */
body.woocommerce-checkout form.checkout #customer_details {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  padding: 16px !important;
}
/* RIGHT — one outer card = heading (top) joined to review (body) */
body.woocommerce-checkout form.checkout #order_review_heading {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-bottom: 0 !important;
  border-radius: 6px 6px 0 0 !important;
  margin: 0 !important;
  padding: 16px 16px 10px !important;
}
body.woocommerce-checkout form.checkout #order_review {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-top: 0 !important;
  border-radius: 0 0 6px 6px !important;
  margin: 0 !important;
  padding: 0 16px 16px !important;
}
/* the billing heading already lives inside #customer_details (col-1),
   so both cards carry their own gold heading — trim its top margin so
   it sits flush at the card top */
body.woocommerce-checkout #customer_details .woocommerce-billing-fields > h3 {
  margin-top: 0 !important;
}

/* ---- FIX 2: coupon as a plain field (not the toggle bar) ---- */
body.woocommerce-checkout .woocommerce-form-coupon-toggle { display: none !important; }
body.woocommerce-checkout form.checkout_coupon {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;
  gap: 10px !important;
  max-width: 460px !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
body.woocommerce-checkout form.checkout_coupon .form-row-first {
  flex: 1 1 auto !important; min-width: 0 !important; margin: 0 !important;
}
body.woocommerce-checkout form.checkout_coupon .form-row-last {
  flex: 0 0 auto !important; margin: 0 !important;
}
body.woocommerce-checkout form.checkout_coupon label {
  display: block !important;
  color: var(--ce-gold-bright) !important;
  font-size: 13px !important; letter-spacing: 1px !important; margin: 0 0 3px !important;
  /* un-clip WC's screen-reader-text label so it shows like the billing labels */
  position: static !important; clip: auto !important; clip-path: none !important;
  width: auto !important; height: auto !important; overflow: visible !important;
}
body.woocommerce-checkout form.checkout_coupon #coupon_code { width: 100% !important; }
body.woocommerce-checkout form.checkout_coupon .clear { display: none !important; }
/* compact Apply button ~42px to match the input (default was 18px font +
   big padding, wrapping to 2 lines = 84px tall) */
body.woocommerce-checkout form.checkout_coupon button {
  font-size: 13px !important; line-height: 1 !important;
  padding: 10px 18px !important; min-height: 42px !important; height: 42px !important;
  white-space: nowrap !important;
}

/* ---- FIX 3: stop Expiry Month/Year label + placeholder clipping ----
   reclaim width (trim payment-list padding, full-width form), keep CVV
   compact, let Month/Year grow wide, and un-clip the labels */
body.woocommerce-checkout .woocommerce ul.payment_methods {
  padding-left: 12px !important; padding-right: 12px !important;
}
/* trim the payment box side padding + row gap to reclaim width for the
   date columns (the box was narrower than the order card) */
body.woocommerce-checkout .payment_box.payment_method_anet {
  padding-left: 10px !important; padding-right: 10px !important;
}
body.woocommerce-checkout .payment_box .anet-payment-form { width: 100% !important; gap: 8px !important; }
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair:nth-child(1) > .form-row:nth-child(2) {
  flex: 0 0 64px !important;   /* CVV — compact */
}
body.woocommerce-checkout .payment_box .anet-payment-form > .form-row-pair:nth-child(2) > .form-row {
  flex: 1 1 0 !important;      /* Expiry Month + Year — grow wide */
}
body.woocommerce-checkout .payment_box .anet-payment-form .form-row > label {
  overflow: visible !important; text-overflow: clip !important;
}
/* END CE-CHECKOUT-MATCH-RENDER */

/* ════════════════════════════════════════════════════════════
   CE-CHECKOUT-POLISH  (added 2026-07-07)
   Brief: D:\rambl\CE-CHECKOUT-POLISH.md
   Three layout cleanups, CSS only, two-card structure kept.
   Loads AFTER CE-CHECKOUT-MATCH-RENDER.
   (1) Move the coupon into the RIGHT column above the order card,
       top-aligned with the billing card. The coupon form is a
       SIBLING of form.checkout (both under div.woocommerce), so we
       promote form.checkout's children into the pagebox grid with
       `display:contents` and lay coupon/heading/review down the right
       column. Verified: form still holds all 44 fields + serializeArray
       posts every field (display:contents doesn't reparent the DOM).
   (2) Payment brand icons onto one line (shrink to 14px + nowrap
       heading) — they had wrapped once the right card's 16px padding
       narrowed the heading.
   (3) Pair City+State and ZIP+Phone two-up to shorten the left column;
       addresses + email stay full width. All grid/flex gated behind
       @media(min-width:900px) so mobile stacks to full width.
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* ---- FIX 1: coupon into the right column (grid promotion) ---- */
@media (min-width: 900px) {
  body.woocommerce-checkout .woocommerce:has(> form.checkout) {
    display: grid !important;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) !important;
    grid-template-areas:
      "notices  notices"
      "customer coupon"
      "customer heading"
      "customer review" !important;
    grid-template-rows: auto auto auto 1fr !important;
    column-gap: 34px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }
  /* dissolve the checkout form so its columns become items of the
     pagebox grid, siblings of the coupon form */
  body.woocommerce-checkout .woocommerce:has(> form.checkout) > form.checkout {
    display: contents !important;
  }
  body.woocommerce-checkout .woocommerce:has(> form.checkout) > form.checkout_coupon {
    grid-area: coupon !important;
    max-width: none !important;
    margin: 0 0 16px !important;
  }
  body.woocommerce-checkout .woocommerce:has(> form.checkout) > .woocommerce-notices-wrapper {
    grid-area: notices !important;
  }
  body.woocommerce-checkout #customer_details { grid-area: customer !important; }
  body.woocommerce-checkout #order_review_heading { grid-area: heading !important; }
  body.woocommerce-checkout #order_review { grid-area: review !important; }
}

/* ---- FIX 2: brand icons on one line next to the heading ---- */
body.woocommerce-checkout li.payment_method_anet label img,
body.woocommerce-checkout .wc_payment_methods label img {
  max-height: 14px !important;
}
body.woocommerce-checkout label[for="payment_method_anet"] {
  white-space: nowrap !important;
  letter-spacing: 0.3px !important;
}

/* ---- FIX 3: pair City+State and ZIP+Phone (desktop only) ---- */
@media (min-width: 900px) {
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    column-gap: 16px !important;
    row-gap: 0 !important;
  }
  /* default every billing row to full width... */
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
    width: 100% !important;
    float: none !important;
  }
  /* ...then pair First/Last (already), City+State, ZIP+Phone two-up */
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-first,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-last,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row:has(#billing_city),
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row:has(#billing_state),
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row:has(#billing_postcode),
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row:has(#billing_phone) {
    width: calc(50% - 8px) !important;
  }
}
/* END CE-CHECKOUT-POLISH */

/* ════════════════════════════════════════════════════════════
   CE-STORE-BAR-GOLD + CART-BLOCK-CARDS  (2026-07-07)
   Fix 1: store shipbar → match the V9 shop .ce-shipbar exactly
          (values read live off canna-elite.com shop; appearance only,
           NOT the shop's position:sticky). Overrides the earlier
           .ce-gold-header .ce-shipbar rule above via !important
           (Customizer loads before this file).
   Fix 2: block-cart (/store/cart is the WooCommerce Block Cart) main +
          sidebar → black cards w/ thin gold border matching the checkout
          #customer_details card; Proceed-to-Checkout button → gold gradient
          matching #place_order. Classic-cart selectors don't exist on the
          block cart, which is why the cart lost its cards. These selectors
          exist ONLY on the block cart → checkout is untouched.
   Rollback: delete this whole block (banner → END).
   ════════════════════════════════════════════════════════════ */

/* Fix 1 — shipbar matches the shop bar */
.ce-gold-header .ce-shipbar {
  background: linear-gradient(180deg,#f6e58e,#d9ad3e 55%,#b8892a) !important;
  color: #1c1305 !important;
  font-size: .6rem !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  padding: 7px 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.55) !important;
}
@media (max-width:600px) {
  .ce-gold-header .ce-shipbar {
    font-size: .5rem !important;
    letter-spacing: .14em !important;
  }
}

/* Fix 2 — block-cart black cards (match checkout #customer_details) */
.wc-block-cart__main,
.wc-block-cart__sidebar {
  background: #000;
  border: 1px solid rgba(200,168,74,0.3);
  border-radius: 6px;
  padding: 16px;
  box-sizing: border-box;
}

/* Fix 2 — Proceed to Checkout button → gold gradient (match #place_order) */
.wc-block-cart__submit-button,
a.wc-block-cart__submit-button {
  background: var(--ce-gold-grad) !important;
  color: var(--ce-black) !important;
  border: none !important;
}

/* END CE-STORE-BAR-GOLD + CART-BLOCK-CARDS */

/* ════════════════════════════════════════════════════════════
   CE-ACCT-CART-CHECKOUT V9 POLISH  (added 2026-07-11)
   COSMETIC-ONLY pass on My Account / Cart / Checkout so all three read
   as one set: V9 masthead (eyebrow + gold-gradient title + line–✦–line
   ornament), account dashboard dress-up (welcome card, gold nav tiles,
   crest watermark), orders-table styling + status chips, ShipBoard
   tracking column (styled defensively — selector unconfirmed), and the
   View COAs button. Zero border-radius throughout. Does NOT touch the
   June CE-CHECKOUT-CLEAN-STYLE 4px input radius block above.
   Loads LAST, so it safely refines the earlier account/cart/checkout
   blocks (same-specificity + !important selectors win by source order)
   without deleting or restructuring anything above.
   No functional/logic changes — style only.
   ROLLBACK: delete this whole block down to the END marker.
   ════════════════════════════════════════════════════════════ */

/* ---- 1. V9 MASTHEAD: gold-gradient title + line–✦–line ornament ----
   WooCommerce markup has no eyebrow/ornament elements, so the ornament is
   synthesized with h1::after — a TRUE line–✦–line: the ✦ is the
   pseudo-element's text content, and the two flanking lines are drawn as
   two background-image layers (reusing --ce-gold-grad-h) sized to
   calc(50% - 24px) and anchored left/right, leaving a 48px gap in the
   middle for the ✦ glyph so the lines never overlap the star. Cart /
   Checkout also keep an eyebrow word via h1::before (unchanged). ACCOUNT
   drops the eyebrow (2026-07-11) — see 1a below for what replaces it. */
body.woocommerce-account main h1,
body.woocommerce-account .wp-block-post-title,
body.woocommerce-cart main h1,
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-checkout main h1,
body.woocommerce-checkout .wp-block-post-title {
  position: relative;
  font-family: 'Cinzel Decorative', serif !important;
  background: var(--ce-gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 10px rgba(0,0,0,.9)) drop-shadow(0 0 22px rgba(0,0,0,.6));
  text-align: center;
  letter-spacing: .04em;
  padding-top: 28px;
  margin-bottom: 0 !important;
}
/* Cart / Checkout eyebrow word — unchanged, account no longer matched here */
body.woocommerce-cart main h1::before,
body.woocommerce-cart .wp-block-post-title::before,
body.woocommerce-checkout main h1::before,
body.woocommerce-checkout .wp-block-post-title::before {
  display: block;
  font-family: 'Cinzel', serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--ce-gold-bright);
  -webkit-text-fill-color: var(--ce-gold-bright);
  opacity: .7;
  background: none;
  margin-bottom: 14px;
}
body.woocommerce-cart main h1::before,
body.woocommerce-cart .wp-block-post-title::before { content: "Cart"; }
body.woocommerce-checkout main h1::before,
body.woocommerce-checkout .wp-block-post-title::before { content: "Checkout"; }

/* Ornament — line–✦–line — shared by all three pages */
body.woocommerce-account main h1::after,
body.woocommerce-account .wp-block-post-title::after,
body.woocommerce-cart main h1::after,
body.woocommerce-cart .wp-block-post-title::after,
body.woocommerce-checkout main h1::after,
body.woocommerce-checkout .wp-block-post-title::after {
  content: "\2726";
  display: block;
  width: 100%;
  max-width: 360px;
  height: 20px;
  margin: 16px auto 4px;
  text-align: center;
  font-size: 19px;
  line-height: 20px;
  font-family: 'Cinzel', serif;
  color: var(--ce-gold-bright);
  -webkit-text-fill-color: var(--ce-gold-bright);
  opacity: .85;
  background-image: var(--ce-gold-grad-h), var(--ce-gold-grad-h);
  background-repeat: no-repeat, no-repeat;
  background-position: left center, right center;
  background-size: calc(50% - 24px) 1px, calc(50% - 24px) 1px;
}

/* ---- 1a. ACCOUNT ONLY: no eyebrow — title framed in its own pagebox ----
   The "Account" eyebrow word is gone; the h1::before pseudo it used to
   occupy is now free (explicitly suppressed below).
   TECHNIQUE NOTE — deliberate deviation from a literal ::before/z-index
   implementation: the naive approach (::before as an absolutely-positioned
   z-index:-1 box "behind" the text) is unreliable here. Per the CSS
   stacking spec, an element's OWN background/border always paints as the
   BOTTOM-most layer of its stacking context — painted BEFORE any
   descendant, including a negative-z-index ::before. Since the gold
   gradient "text" IS the h1's own `background` (clipped to the glyph
   shapes via background-clip:text), an opaque ::before box — even at
   z-index:-1 — paints ON TOP of that background layer and can hide the
   gradient text entirely.
   Implemented instead with TWO background-image layers on the h1 itself:
   the front layer is the gold gradient (clipped to the text glyphs), the
   back layer is a solid black fill (clipped to the padding box). CSS
   composites background layers deterministically front-to-back within a
   single `background-image` list — no stacking-context/z-index ambiguity
   — so the gradient text is guaranteed to render on top of the black
   fill. The gold border + inner hairline (mimicking .ce-pagebox's
   inset:10px double-frame) are a real border/outline on the h1 itself —
   thin rings, not fills, so they never cover the text either. ::before
   stays unused/empty; ::after keeps the ornament, which now sits on the
   wall BELOW the box (the box only spans the h1's own padding box, not
   the in-flow ::after that follows it). */
body.woocommerce-account main h1,
body.woocommerce-account .wp-block-post-title {
  padding: 34px 48px !important;
  margin: 52px auto 0 !important;
  width: fit-content;
  max-width: min(620px, calc(100% - 32px));
  background-image: var(--ce-gold-grad), linear-gradient(#000,#000);
  background-clip: text, padding-box;
  -webkit-background-clip: text, padding-box;
  border: 1px solid rgba(200,168,74,.25);
  outline: 1px solid rgba(200,168,74,.4);
  outline-offset: -10px;
}
body.woocommerce-account main h1::before,
body.woocommerce-account .wp-block-post-title::before {
  content: none;
}
@media (max-width: 600px) {
  body.woocommerce-account main h1,
  body.woocommerce-account .wp-block-post-title {
    padding: 24px 26px !important;
    margin-top: 34px !important;
  }
}

/* ---- 2a. Dashboard welcome line -> gold-ruled card ---- */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content > p:first-of-type {
  display: block;
  background: rgba(200,168,74,0.03);
  border: 1px solid rgba(200,168,74,0.25);
  border-radius: 0;
  padding: 20px 24px;
  margin: 0 0 26px;
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 16px;
  line-height: 1.65;
  color: var(--ce-text-body);
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content > p:first-of-type strong {
  font-family: 'Cinzel', serif;
  font-weight: 700;
  letter-spacing: .5px;
  color: var(--ce-gold-light) !important;
}

/* ---- 2b. Account navigation -> ONE framed column, tight hairline rows ----
   Redesigned 2026-07-11: was a gap'd grid of separate bordered tiles (62px
   min-height each) — replaced with a SINGLE outer-bordered column and 1px
   hairline RULES between rows, much less dead vertical space, a small
   gold-diamond ornament accent per row, and its own crest watermark
   (distinct from the content-pane watermark in 2c below). WooCommerce
   floats/widths this column itself (desktop: left column beside content;
   ≤767px: stacks full-width) — reinforced explicitly in the phone query
   below so it always stacks even if a parent stylesheet's own breakpoint
   differs by a few px. */
body.woocommerce-account .woocommerce-MyAccount-navigation {
  position: relative;
  overflow: hidden; /* contains the crest watermark */
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  position: relative;
  z-index: 1;
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(200,168,74,0.3);
  background: rgba(0,0,0,0.35);
}
body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0;
  border-bottom: 1px solid rgba(200,168,74,0.16);
  background: transparent;
  border-radius: 0;
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
  border-bottom: none;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 0;
  padding: 13px 18px !important;
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ce-gold-light) !important;
  transition: color .22s ease;
}
/* ornament accent — small gold diamond ahead of the label */
body.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
  content: "\2726";
  flex: 0 0 auto;
  font-size: 9px;
  line-height: 1;
  color: var(--ce-gold-mid);
  opacity: .55;
  transition: opacity .22s ease, color .22s ease;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:hover {
  background: rgba(200,168,74,0.05);
  box-shadow: inset 0 0 0 1px rgba(220,189,151,0.3), 0 8px 18px rgba(0,0,0,0.5);
  transform: translateY(-2px); /* transform only — never shifts sibling layout */
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:hover a {
  color: var(--ce-gold-hi) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:hover a::before {
  opacity: 1;
  color: var(--ce-gold-hi);
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active {
  background: var(--ce-gold-grad) !important;
  box-shadow: none;
  transform: none;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
  color: #000 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::before,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active a::before {
  color: #000;
  opacity: .65;
}
/* crest watermark — scoped to the NAV column only, so it never overlaps
   the content-pane watermark in 2c below */
body.woocommerce-account .woocommerce-MyAccount-navigation::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("/wp-content/themes/twentytwentyfive-ce/assets/ce-logo.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: min(70%, 200px);
  opacity: .05;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 767px) {
  body.woocommerce-account .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    float: none !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation {
    margin: 0 0 28px;
  }
}

/* ---- 2c. Crest watermark behind the account CONTENT pane (logged-in
   only). Rescoped 2026-07-11 from the whole .woocommerce wrapper (nav +
   content together) to just .woocommerce-MyAccount-content, so it can
   never overlap the nav column's own crest in 2b above — each half of the
   page carries exactly one subtle watermark, never two stacked. ---- */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  position: relative;
  overflow: hidden;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("/wp-content/themes/twentytwentyfive-ce/assets/ce-logo.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: min(60%, 420px);
  opacity: .05;
  pointer-events: none;
  z-index: 0;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content > * {
  position: relative;
  z-index: 1;
}

/* ---- 3. Orders table refinement: Cinzel heads, Crimson body, alt-row tint ---- */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-MyAccount-orders,
body.woocommerce-account table.account-orders-table,
body.woocommerce-account .woocommerce table.shop_table {
  border-collapse: collapse;
  border-radius: 0 !important;
}
body.woocommerce-account .woocommerce-orders-table thead th,
body.woocommerce-account .woocommerce-MyAccount-orders thead th,
body.woocommerce-account table.account-orders-table thead th,
body.woocommerce-account .woocommerce table.shop_table thead th {
  font-family: 'Cinzel', serif !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  color: var(--ce-gold-bright) !important;
  background: #000 !important;
  border-bottom: 1px solid rgba(200,168,74,0.4) !important;
}
body.woocommerce-account .woocommerce-orders-table tbody td,
body.woocommerce-account .woocommerce-MyAccount-orders tbody td,
body.woocommerce-account table.account-orders-table tbody td,
body.woocommerce-account .woocommerce table.shop_table tbody td {
  font-family: 'Crimson Text', Georgia, serif !important;
  font-size: 14px;
  color: var(--ce-text-body) !important;
  border-top: 1px solid rgba(200,168,74,0.14) !important;
}
body.woocommerce-account .woocommerce-orders-table tbody tr:nth-child(even) td,
body.woocommerce-account .woocommerce-MyAccount-orders tbody tr:nth-child(even) td,
body.woocommerce-account table.account-orders-table tbody tr:nth-child(even) td,
body.woocommerce-account .woocommerce table.shop_table tbody tr:nth-child(even) td {
  background: rgba(200,168,74,0.03);
}

/* ---- 3a. Status chips (base + brand-colored variants).
   Classes ce-status-{slug} are emitted by the ce_account_order_status_chip()
   presentational hook in functions.php (woocommerce_my_account_my_orders_column_order-status). ---- */
.ce-status-chip {
  display: inline-block;
  font-family: 'Cinzel', serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 5px 12px;
  border: 1px solid rgba(200,168,74,0.4);
  border-radius: 0;
  background: rgba(200,168,74,0.06);
  color: var(--ce-gold-bright);
  white-space: nowrap;
}
.ce-status-chip.ce-status-completed {
  border-color: rgba(140,200,110,0.5); color: #b7dba0; background: rgba(140,200,110,0.07);
}
.ce-status-chip.ce-status-processing {
  border-color: rgba(220,168,60,0.55); color: var(--ce-gold-light); background: rgba(220,168,60,0.09);
}
.ce-status-chip.ce-status-on-hold {
  border-color: rgba(200,168,74,0.3); color: var(--ce-text-dim); background: rgba(200,168,74,0.03);
}
.ce-status-chip.ce-status-cancelled,
.ce-status-chip.ce-status-failed {
  border-color: rgba(180,90,70,0.4); color: #cf9d97; background: rgba(160,60,50,0.07);
}
.ce-status-chip.ce-status-pending {
  border-color: rgba(200,168,74,0.2); color: var(--ce-text-dim); background: transparent; opacity: .85;
}

/* ---- 3b. ShipBoard tracking number — DEFENSIVE styling only.
   WooCommerce's classic front-end account orders table does not natively
   show a tracking column; ShipBoard's exact front-end selector for the
   injected tracking cell/element is NOT documented anywhere in this repo.
   These selectors are best-guess plausible candidates so tracking looks
   on-brand IF/when ShipBoard renders one of them. CONFIRM the real
   selector against a live order that has tracking and adjust/add to this
   rule if it differs — no markup has been fabricated to force a match. */
body.woocommerce-account .woocommerce-orders-table__cell-order-tracking,
body.woocommerce-account td[data-title="Tracking"],
body.woocommerce-account .shipboard-tracking,
body.woocommerce-account .tracking-number,
body.woocommerce-account .ce-tracking {
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: .5px;
  color: var(--ce-gold-light);
  border-bottom: 1px solid rgba(200,168,74,0.35);
  padding-bottom: 2px;
  display: inline-block;
}

/* ---- 4. View COAs gold button (mirrors .ce-acct-wholesale).
   Markup printed by ce_account_coas_button() in functions.php
   (woocommerce_account_dashboard hook); absolute URL to canna-elite.com. ---- */
body.woocommerce-account .ce-acct-coas,
.ce-acct-coas {
  display: inline-block;
  margin: 0 0 22px;
  background: var(--ce-gold-grad);
  color: #000 !important;
  font-family: 'Cinzel', serif;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 12px;
  padding: 12px 22px;
  text-decoration: none;
  border: 1px solid var(--ce-gold-mid);
  border-radius: 0;
  transition: filter .2s;
}
.ce-acct-coas:hover { filter: brightness(1.08); }

/* ---- 5. Cart/checkout parity: alternating row tint on the CART table only
   (the checkout order-review table keeps its own June thin-line look from
   CE-CHECKOUT-CLEAN-STYLE above — not touched). ---- */
body.woocommerce-cart .woocommerce table.shop_table tbody tr:nth-child(even) td {
  background: rgba(200,168,74,0.05);
}

/* ---- 6. Recurring Orders endpoint — reserved subscription slot.
   Panel = framed pagebox-style card (dark, gold hairline, zero radius,
   centered "coming soon" tone — NOT an error state). .ce-acct-notify is
   the same gold V9 button as .ce-acct-coas / .ce-acct-wholesale. Container
   .ce-recurring-panel + these styles stay when the real plugin swaps the
   partial in, so there is no relayout. ---- */
body.woocommerce-account .ce-recurring-panel {
  position: relative;
  background: #000;
  border: 1px solid rgba(200,168,74,0.25);
  border-radius: 0;
  padding: 44px 40px 48px;
  margin: 8px 0 0;
  text-align: center;
}
body.woocommerce-account .ce-recurring-panel::before {
  content: ''; position: absolute; inset: 9px;
  border: 1px solid rgba(200,168,74,0.18); pointer-events: none;
}
body.woocommerce-account .ce-recurring-panel > * { position: relative; z-index: 1; }
body.woocommerce-account .ce-recurring-panel h2.ce-recurring-title {
  font-family: 'Cinzel Decorative', serif !important;
  font-size: clamp(1.4rem, 3vw, 2rem);
  font-weight: 700;
  letter-spacing: .03em;
  background: var(--ce-gold-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.85));
  margin: 0 0 14px !important;
  text-transform: none !important;
}
body.woocommerce-account .ce-recurring-copy {
  font-family: 'Crimson Text', Georgia, serif;
  font-size: 17px;
  line-height: 1.6;
  color: var(--ce-text-body);
  margin: 0 auto 26px;
  max-width: 420px;
}
body.woocommerce-account .ce-acct-notify,
.ce-acct-notify {
  display: inline-block;
  margin: 0;
  background: var(--ce-gold-grad);
  color: #000 !important;
  font-family: 'Cinzel', serif;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 12px;
  padding: 12px 22px;
  text-decoration: none;
  border: 1px solid var(--ce-gold-mid);
  border-radius: 0;
  transition: filter .2s;
}
.ce-acct-notify:hover { filter: brightness(1.08); }

/* ---- 7. General richness pass — section rules, addresses, form rhythm ----
   Tightens/enriches the rest of the account area so it reads as one
   cohesive V9 component set: gold hairline rules under section headings
   (the natural divider between e.g. the welcome card and whatever section
   follows it — orders table, addresses, etc.), gold-hairline field cards
   for the Addresses page (matching the login/register col2-set cards
   above), and a little extra breathing room between blocks. Zero
   border-radius throughout; no functional changes. ---- */

/* Section headings inside the account content pane: gold Cinzel caps +
   a hairline rule underneath — the divider between logical blocks. */
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
  font-family: 'Cinzel', serif !important;
  font-weight: 600;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-size: 13px;
  color: var(--ce-gold-bright) !important;
  border-bottom: 1px solid rgba(200,168,74,0.25);
  padding-bottom: 12px;
  margin: 40px 0 22px;
}
body.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
body.woocommerce-account .woocommerce-MyAccount-content > h3:first-child {
  margin-top: 0;
}

/* Addresses page: gold-hairline field cards (same family as the
   login/register col2-set cards), zero radius, tidy title row. */
body.woocommerce-account .woocommerce-Addresses {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  margin-top: 6px;
}
body.woocommerce-account .woocommerce-Address {
  flex: 1 1 280px;
  background: rgba(200,168,74,0.02);
  border: 1px solid rgba(200,168,74,0.18);
  border-radius: 0;
  padding: 24px 26px;
}
body.woocommerce-account .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 16px;
}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3 {
  border-bottom: none;
  margin: 0;
  padding-bottom: 0;
  font-size: 12px;
}
body.woocommerce-account .woocommerce-Address address {
  font-family: 'Crimson Text', Georgia, serif;
  font-style: normal;
  font-size: 15px;
  line-height: 1.7;
  color: var(--ce-text-body);
}

/* Login/register + account-details forms: a bit more vertical rhythm
   between the field cards and the submit row (cohesive with the dashboard
   spacing above), consistent Cinzel field labels. */
body.woocommerce-account .woocommerce form .form-row label {
  font-family: 'Cinzel', serif;
  font-size: 11px;
  letter-spacing: .5px;
}
body.woocommerce-account .woocommerce .col2-set { gap: 22px; }
body.woocommerce-account .woocommerce p.form-row { margin-bottom: 14px; }
body.woocommerce-account .woocommerce fieldset {
  border: 1px solid rgba(200,168,74,0.18);
  border-radius: 0;
  padding: 22px 24px;
  margin: 26px 0 0;
}
body.woocommerce-account .woocommerce fieldset legend {
  font-family: 'Cinzel', serif;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--ce-gold-bright);
  padding: 0 8px;
}
/* END CE-ACCT-CART-CHECKOUT V9 POLISH */

/* ════════════════════════════════════════════════════════════
   CE CLASSIC CART CARDS  (added 2026-07-16)
   /cart/ = [woocommerce_cart] shortcode rendered unstyled. Wrap the cart
   table + totals in the same black card + thin gold border used on the
   approved /checkout/ two-card layout (#customer_details/#order_review
   recipe: #000, 1px rgba(200,168,74,.3), 6px radius, 16px pad). Also dark
   product-thumbnail tile (kills the white placeholder) + gold-tint the
   empty-cart is-info notice. Reference = /checkout/ (no classic cart on
   /store/ to copy). ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */
body.woocommerce-cart .woocommerce .woocommerce-cart-form,
body.woocommerce-cart .woocommerce .cart_totals {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  padding: 16px !important;
  box-sizing: border-box;
}
body.woocommerce-cart .woocommerce .cart-collaterals,
body.woocommerce-cart .woocommerce .cart_totals { margin-top: 22px; }
body.woocommerce-cart .woocommerce .woocommerce-cart-form table.shop_table,
body.woocommerce-cart .woocommerce .cart_totals table {
  background: transparent !important;
  border: 0 !important;
  margin: 0 !important;
}
body.woocommerce-cart .woocommerce td.product-thumbnail img,
body.woocommerce-cart .woocommerce td.product-thumbnail img.woocommerce-placeholder {
  width: 64px !important;
  height: 64px !important;
  object-fit: cover;
  background: #0a0a0a !important;
  border: 1px solid rgba(200,168,74,0.25) !important;
  border-radius: 4px;
  padding: 2px;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-info,
body.woocommerce-cart .ce-cart-empty .wc-block-components-notice-banner,
body.woocommerce-cart p.cart-empty {
  background: rgba(200,168,74,0.07) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  color: var(--ce-text-body) !important;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-info svg { fill: var(--ce-gold-bright) !important; }
body.woocommerce-cart .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content { color: var(--ce-text-body) !important; }
/* END CE CLASSIC CART CARDS */

/* ════════════════════════════════════════════════════════════
   CE CART + MASTHEAD FINAL PASS  (added 2026-07-16)
   /checkout/ is the base — reuse ONLY checkout values:
     content max-width 1000px (L806) · pagebox padding 22px 32px 28px
     (L968) · card #000 / 1px rgba(200,168,74,.3) / 6px / 16px · order-
     table cells 6px 10px (L964) · coupon button 42px/10px 18px/13px
     (L1240) · form-row margin 0 0 10px (L843).
   (1) drop the duplicate eyebrow (h1::before) on cart + order-received —
       checkout has no eyebrow. (2) masthead title on a #000 box (dual bg
       layer keeps the gold gradient text over the black fill — same
       method as the account pagebox), not floating on the lattice.
   (3) cart tightened to the checkout 1000px pagebox + 22/32/28 padding +
       6px 10px table cells + 42px coupon row. (4) order-received order
       table + address blocks framed as #000 cards, checkout padding/width.
   ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */

/* (1) remove eyebrow */
body.woocommerce-cart main h1::before,
body.woocommerce-cart .wp-block-post-title::before,
body.woocommerce-checkout main h1::before,
body.woocommerce-checkout .wp-block-post-title::before {
  content: none !important;
  display: none !important;
}

/* (2) masthead title on a black box (checkout pagebox values) */
body.woocommerce-cart main h1,
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-checkout main h1,
body.woocommerce-checkout .wp-block-post-title {
  background-image: var(--ce-gold-grad), linear-gradient(#000, #000) !important;
  background-clip: text, padding-box !important;
  -webkit-background-clip: text, padding-box !important;
  border: 1px solid rgba(200,168,74,0.25) !important;
  border-radius: 0 !important;
  padding: 22px 32px 28px !important;
  max-width: 1000px !important;
  margin: 32px auto 20px !important;
  filter: none !important;
}

/* (3) CART: match checkout pagebox width + padding */
body.woocommerce-cart main .woocommerce {
  max-width: 1000px !important;
  padding: 22px 32px 28px !important;
}
/* order/totals table cells → checkout 6px 10px */
body.woocommerce-cart .woocommerce table.shop_table td,
body.woocommerce-cart .woocommerce table.shop_table th {
  padding: 6px 10px !important;
}
/* coupon + update-cart buttons → checkout coupon-button metrics */
body.woocommerce-cart .woocommerce .actions .coupon button,
body.woocommerce-cart .woocommerce .actions button[name="update_cart"] {
  font-size: 13px !important; line-height: 1 !important;
  padding: 10px 18px !important; min-height: 42px !important; height: 42px !important;
  white-space: nowrap !important;
}
body.woocommerce-cart .woocommerce .actions .coupon #coupon_code {
  min-height: 42px !important; height: 42px !important;
}
body.woocommerce-cart .woocommerce form .form-row { margin: 0 0 10px !important; }

/* (4) ORDER-RECEIVED: order table + address blocks as #000 cards
   (max-width 1000px already applies via body.woocommerce-checkout L806) */
body.woocommerce-order-received .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  padding: 16px !important;
  margin: 0 0 20px !important;
}
body.woocommerce-order-received .woocommerce-order-details td,
body.woocommerce-order-received .woocommerce-order-details th {
  padding: 6px 10px !important;
}
/* END CE CART + MASTHEAD FINAL PASS */

/* ════════════════════════════════════════════════════════════
   CE COMPACTION — CART + ORDER-RECEIVED fit 1440x900  (2026-07-16)
   checkout value set ONLY: heading 17px (L927) · body 14px (L985) ·
   small 13px · cells 6px 10px (L964) · margins 4px/8px/12px · grid
   1.5fr/1fr gap 34px (L813). Tight masthead joined to the content as
   ONE continuous panel; two-col cart like checkout's two cards.
   ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */

/* tight masthead: small title, minimal padding, small ornament */
body.woocommerce-cart main h1,
body.woocommerce-order-received main h1 {
  font-size: 17px !important;
  line-height: 1.25 !important;
  padding: 12px 32px !important;
  margin: 32px auto 0 !important;
  border-bottom: 0 !important;
}
body.woocommerce-cart main h1::after,
body.woocommerce-order-received main h1::after {
  font-size: 13px !important;
  height: auto !important;
  margin: 6px auto 0 !important;
}
/* join the content box flush under the masthead = one continuous panel */
body.woocommerce-cart main .woocommerce,
body.woocommerce-order-received main .woocommerce {
  border-top: 0 !important;
  margin-top: 0 !important;
  padding-top: 14px !important;
}

/* CART: two columns like checkout's two cards (table left, totals right) */
@media (min-width: 900px) {
  body.woocommerce-cart .woocommerce {
    display: grid !important;
    grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) !important;
    column-gap: 34px !important;
    align-items: start !important;
  }
  body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1 !important; }
  body.woocommerce-cart .woocommerce-cart-form { grid-column: 1 !important; }
  body.woocommerce-cart .cart-collaterals {
    grid-column: 2 !important; width: auto !important; float: none !important; margin: 0 !important;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals { width: auto !important; float: none !important; margin: 0 !important; }
}

/* CART compaction: 14px body, 6px 10px cells, tight totals + inline variations */
body.woocommerce-cart .woocommerce table.shop_table,
body.woocommerce-cart .woocommerce table.shop_table td,
body.woocommerce-cart .woocommerce table.shop_table th { font-size: 14px !important; line-height: 1.4 !important; }
body.woocommerce-cart .woocommerce table.shop_table td,
body.woocommerce-cart .woocommerce table.shop_table th { padding: 6px 10px !important; }
body.woocommerce-cart .woocommerce .cart_totals h2 { font-size: 17px !important; margin: 4px 0 12px !important; }
body.woocommerce-cart .woocommerce td.product-name dl.variation { margin: 4px 0 0 !important; font-size: 13px !important; line-height: 1.4 !important; }
body.woocommerce-cart .woocommerce td.product-name dl.variation dt,
body.woocommerce-cart .woocommerce td.product-name dl.variation dd,
body.woocommerce-cart .woocommerce td.product-name dl.variation dd p {
  display: inline !important; margin: 0 4px 0 0 !important; font-size: 13px !important; font-weight: 400 !important;
}

/* ORDER-RECEIVED compaction: thank-you, overview, headings, table, addresses */
body.woocommerce-order-received .woocommerce-thankyou-order-received { font-size: 14px !important; margin: 0 0 12px !important; padding: 8px 10px !important; }
body.woocommerce-order-received .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order-overview li { font-size: 14px !important; line-height: 1.4 !important; }
body.woocommerce-order-received .woocommerce-order-overview li { padding: 4px 10px !important; margin: 0 !important; }
body.woocommerce-order-received h2 { font-size: 17px !important; margin: 4px 0 12px !important; }
body.woocommerce-order-received .woocommerce-order-details table td,
body.woocommerce-order-received .woocommerce-order-details table th { padding: 6px 10px !important; font-size: 14px !important; line-height: 1.4 !important; }
body.woocommerce-order-received .woocommerce-order-details dl.variation,
body.woocommerce-order-received .woocommerce-order-details dl.variation dt,
body.woocommerce-order-received .woocommerce-order-details dl.variation dd { display: inline !important; font-size: 13px !important; margin: 0 4px 0 0 !important; }
body.woocommerce-order-received .woocommerce-customer-details address { font-size: 14px !important; line-height: 1.5 !important; }
body.woocommerce-order-received .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details { padding: 12px 16px !important; margin: 0 0 14px !important; }
/* END CE COMPACTION */

/* ════════ CE COMPACTION FIX (2026-07-16) ════════
   Cart title is .wp-block-post-title (specificity 0,2,1) which out-ranked
   the compaction `main h1` (0,1,3), so the cart masthead kept 20px bottom
   margin + 22/32/28 padding = the gap. Re-apply tight masthead at matching
   specificity + collapse the wrapper gap so masthead butts the content =
   one continuous panel. Also hide empty store-notices box. Checkout values
   only. ROLLBACK: delete to END. ════════ */
body.woocommerce-cart main h1,
body.woocommerce-cart .wp-block-post-title {
  font-size: 17px !important;
  line-height: 1.25 !important;
  padding: 12px 32px !important;
  margin: 32px auto 0 !important;
  border-bottom: 0 !important;
  max-width: 1000px !important;
}
body.woocommerce-cart main h1::after,
body.woocommerce-cart .wp-block-post-title::after {
  font-size: 13px !important; height: auto !important; margin: 6px auto 0 !important;
}
/* collapse wrapper gap: content box butts against the masthead */
body.woocommerce-cart .wp-block-post-content,
body.woocommerce-order-received .wp-block-post-content { margin-top: 0 !important; }
body.woocommerce-cart .wp-block-post-content > .woocommerce,
body.woocommerce-order-received .wp-block-post-content > .woocommerce { margin-top: 0 !important; border-top: 0 !important; }
/* empty store-notices must not render as a black box / add space */
body.woocommerce-cart .wc-block-store-notices:empty,
body.woocommerce-checkout .wc-block-store-notices:empty,
body.woocommerce-order-received .wc-block-store-notices:empty { display: none !important; }
/* END CE COMPACTION FIX */

/* ════════ CE THEME-HEADER MOBILE HAMBURGER (2026-07-16) ════════
   Ports the static V9 pure-CSS burger (ce-s4.css) into the WP theme header
   (parts/header.html) so product/cart/checkout/account get the same mobile
   nav as the static home/shop pages. No JS. Burger LEFT, logo center, cart
   icon right (no overlap). Breakpoint 1050px matches the static.
   ROLLBACK: delete to END + remove the burger markup from parts/header.html. */
.ce-gold-header .ce-burger,
.ce-gold-header .ce-mobile-menu { display: none; }
@media (max-width: 1050px) {
  .ce-gold-header .ce-nav { position: relative; }
  .ce-gold-header .nav-group { display: none !important; }
  .ce-gold-header .nav-inner { position: relative; justify-content: center !important; min-height: 92px !important; padding: 12px 56px !important; flex-wrap: nowrap !important; }
  .ce-gold-header .ce-navlogo-link { order: 0 !important; flex: 0 0 auto !important; padding: 0 !important; }
  .ce-gold-header .ce-navlogo-img { height: 68px !important; }
  .ce-gold-header .ce-burger { display: flex !important; flex-direction: column; justify-content: center; gap: 6px; position: absolute; left: 18px; top: 50%; transform: translateY(-50%); width: 34px; height: 30px; cursor: pointer; z-index: 600; }
  .ce-gold-header .ce-burger span { display: block; height: 2px; width: 28px; background: #dcbd97; transition: .25s; border-radius: 0; }
  .ce-gold-header #ceNavToggle:checked ~ .ce-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .ce-gold-header #ceNavToggle:checked ~ .ce-burger span:nth-child(2) { opacity: 0; }
  .ce-gold-header #ceNavToggle:checked ~ .ce-burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
  .ce-gold-header .ce-mobile-menu { display: flex !important; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0; background: #000; border-top: 1px solid rgba(200,168,74,.3); max-height: 0; overflow: hidden; transition: max-height .3s ease; z-index: 590; }
  .ce-gold-header #ceNavToggle:checked ~ .ce-mobile-menu { max-height: 85vh; overflow: auto; border-bottom: 1px solid rgba(200,168,74,.3); }
  .ce-gold-header .ce-mobile-menu a { font-family: 'Cinzel', serif; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; color: #dcbd97; padding: 15px 24px; border-bottom: 1px solid rgba(200,168,74,.12); text-decoration: none; }
  .ce-gold-header .ce-mobile-menu a:hover { background: rgba(200,168,74,0.08); color: #e8c860; }
  .ce-gold-header .ce-mobile-menu a:last-child { border-bottom: 0; }
}
/* END CE THEME-HEADER MOBILE HAMBURGER */

/* ════════════════════════════════════════════════════════════
   CE ANET CARD PANEL → DARK CARD  (2026-07-16, CSS ONLY)
   The Authorize.Net payment_box rendered with WooCommerce's default
   light-lavender bg (#dcd7e2) + white Card Number/CVV inputs. Restyle to
   the CE dark cards (#000 / 1px rgba(200,168,74,.3) / #060606 inputs / gold
   labels + gold focus). No plugin JS / no card-field logic touched.
   ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */
body.woocommerce-checkout .payment_box.payment_method_anet {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  color: var(--ce-text-body) !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .payment_box.payment_method_anet::before {
  border-bottom-color: #000 !important;
}
body.woocommerce-checkout .payment_box.payment_method_anet > p {
  color: var(--ce-text-body) !important;
}
body.woocommerce-checkout .payment_box.payment_method_anet label,
body.woocommerce-checkout .payment_box.payment_method_anet .required_field {
  color: var(--ce-gold-bright) !important;
}
body.woocommerce-checkout .payment_box.payment_method_anet input.anet-input,
body.woocommerce-checkout .payment_box.payment_method_anet input.text-input-credit-card,
body.woocommerce-checkout .payment_box.payment_method_anet .anet-payment-form input,
body.woocommerce-checkout .payment_box.payment_method_anet .anet-payment-form select {
  background: #060606 !important;
  color: var(--ce-text-body) !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 0 !important;
}
body.woocommerce-checkout .payment_box.payment_method_anet .anet-payment-form input:focus,
body.woocommerce-checkout .payment_box.payment_method_anet .anet-payment-form select:focus {
  border-color: var(--ce-gold-bright) !important;
  outline: none !important;
}
/* END CE ANET CARD PANEL */

/* ════════════════════════════════════════════════════════════
   CE ORDER-RECEIVED POLISH  (2026-07-16, CSS ONLY, checkout values)
   Bring the order-overview strip + ORDER DETAILS table + billing/shipping
   blocks up to the approved /checkout/ review-table look: transparent cells,
   thin gold dividers rgba(200,168,74,.15), 11px Cinzel header, bright-gold
   total #f5e080, Cinzel gold section titles. ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */
/* ORDER DETAILS table — strip blocky cells + thin gold dividers */
body.woocommerce-order-received .woocommerce-order-details table.order_details th,
body.woocommerce-order-received .woocommerce-order-details table.order_details td {
  background: transparent !important;
  border: 0 !important;
  padding: 4px 6px !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details thead th {
  font-size: 11px !important;
  padding-bottom: 6px !important;
  border-bottom: 1px solid rgba(200,168,74,0.15) !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details tbody td,
body.woocommerce-order-received .woocommerce-order-details table.order_details tbody th {
  font-size: 13px !important; line-height: 1.35 !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot th {
  font-size: 12px !important; font-weight: 400 !important; text-align: left !important;
  color: var(--ce-gold-bright) !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot td {
  font-size: 12px !important; text-align: right !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot tr:first-child th,
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot tr:first-child td {
  border-top: 1px solid rgba(200,168,74,0.15) !important; padding-top: 8px !important;
}
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot tr.order-total th,
body.woocommerce-order-received .woocommerce-order-details table.order_details tfoot tr.order-total td {
  border-top: 1px solid rgba(200,168,74,0.15) !important; padding-top: 8px !important;
  font-size: 14px !important; font-weight: 700 !important; color: #f5e080 !important;
}

/* Order-overview strip — gold Cinzel labels, cream values, bright-gold total */
body.woocommerce-order-received .woocommerce-order-overview li {
  border: 0 !important;
  font-family: 'Cinzel', serif !important;
  font-size: 11px !important; letter-spacing: 1px !important; text-transform: uppercase !important;
  color: var(--ce-gold-bright) !important;
}
body.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block !important; margin-top: 4px !important;
  font-family: 'Crimson Text', Georgia, serif !important;
  font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important;
  font-weight: 600 !important; color: var(--ce-text-body) !important;
}
body.woocommerce-order-received .woocommerce-order-overview li.woocommerce-order-overview__total strong {
  color: #f5e080 !important; font-weight: 700 !important;
}

/* Billing / shipping blocks — Cinzel gold titles, cream address text */
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column__title,
body.woocommerce-order-received .woocommerce-customer-details h2,
body.woocommerce-order-received .woocommerce-customer-details h3 {
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important; letter-spacing: 2px !important; text-transform: uppercase !important;
  font-size: 17px !important; color: var(--ce-gold-bright) !important; margin: 0 0 12px !important;
}
body.woocommerce-order-received .woocommerce-customer-details address {
  color: var(--ce-text-body) !important; font-size: 14px !important; line-height: 1.5 !important;
  border: 0 !important; padding: 0 !important; font-style: normal !important;
}
/* END CE ORDER-RECEIVED POLISH */

/* ════════ CE ORDER-RECEIVED — tighten label/value spacing (2026-07-16, CSS only)
   The order-details table was full-width (966px) so label sat far-left and
   value far-right. Shrink the table to its content (like the /checkout/ review
   table ~352px) so values sit next to labels; group the overview strip left
   instead of spreading edge-to-edge. ROLLBACK: delete to END. ════════ */
body.woocommerce-order-received .woocommerce-order-details table.order_details {
  width: auto !important;
  min-width: 320px !important;
  max-width: 500px !important;
  margin: 0 auto 0 0 !important;
}
body.woocommerce-order-received .woocommerce-order-overview {
  justify-content: flex-start !important;
  gap: 40px !important;
}
/* END CE ORDER-RECEIVED tighten */

/* ════════════════════════════════════════════════════════════
   CE ORDER-RECEIVED — 2-COLUMN LAYOUT  (2026-07-16, checkout values)
   Dynamic masthead "Order Received · No NNNNN" keeps the tight header box.
   Body = /checkout/-style two columns: LEFT #000 card (date/payment meta +
   ORDER DETAILS table, values tight against labels), RIGHT stacked BILLING +
   SHIPPING #000 cards. 1000px container, 34px gap, stacks < 900px.
   ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */
body.woocommerce-order-received .ce-orcvd-cols { display: block; }
@media (min-width: 900px) {
  body.woocommerce-order-received .ce-orcvd-cols {
    display: grid !important;
    grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) !important;
    column-gap: 34px !important;
    align-items: start !important;
  }
}
/* LEFT card */
body.woocommerce-order-received .ce-orcvd-left {
  background: #000 !important;
  border: 1px solid rgba(200,168,74,0.3) !important;
  border-radius: 6px !important;
  padding: 16px !important;
}
body.woocommerce-order-received .ce-orcvd-left .woocommerce-order-details {
  background: transparent !important; border: 0 !important; padding: 0 !important; margin: 0 !important;
}
body.woocommerce-order-received .ce-orcvd-left .woocommerce-order-details__title {
  font-family: 'Cinzel', serif !important; font-weight: 700 !important; letter-spacing: 2px !important;
  text-transform: uppercase !important; font-size: 17px !important; color: var(--ce-gold-bright) !important;
  margin: 0 0 12px !important;
}
/* date / payment meta (label: value, tight) */
body.woocommerce-order-received .ce-orcvd-meta {
  list-style: none !important; margin: 0 0 14px !important; padding: 0 0 12px !important;
  border-bottom: 1px solid rgba(200,168,74,0.15);
}
body.woocommerce-order-received .ce-orcvd-meta li { font-size: 12px !important; line-height: 1.7 !important; }
body.woocommerce-order-received .ce-orcvd-meta li span {
  font-family: 'Cinzel', serif; text-transform: uppercase; letter-spacing: 1px; font-size: 11px; color: var(--ce-gold-bright);
}
body.woocommerce-order-received .ce-orcvd-meta li span::after { content: ': '; }
body.woocommerce-order-received .ce-orcvd-meta li strong { color: var(--ce-text-body); font-weight: 600; }
/* RIGHT column: stacked BILLING + SHIPPING cards */
body.woocommerce-order-received .ce-orcvd-right { display: flex; flex-direction: column; gap: 16px; margin-top: 20px; }
@media (min-width: 900px) { body.woocommerce-order-received .ce-orcvd-right { margin-top: 0; } }
body.woocommerce-order-received .ce-orcvd-right .woocommerce-customer-details {
  background: transparent !important; border: 0 !important; padding: 0 !important; margin: 0 !important;
}
body.woocommerce-order-received .ce-orcvd-right .woocommerce-columns--addresses {
  display: flex !important; flex-direction: column !important; gap: 16px !important; margin: 0 !important;
}
body.woocommerce-order-received .ce-orcvd-right .woocommerce-column {
  background: #000 !important; border: 1px solid rgba(200,168,74,0.3) !important; border-radius: 6px !important;
  padding: 16px !important; width: auto !important; float: none !important; margin: 0 !important;
}
/* masthead: if the shortcode block wraps the h1 in a <p>, neutralise that wrapper */
body.woocommerce-order-received .wp-block-shortcode { margin: 0 !important; }
/* END CE ORDER-RECEIVED 2-COLUMN */

/* ════════════════════════════════════════════════════════════
   CE FOOTER — MATCH canna-elite.com ROOT  (2026-07-16)
   Copied from the live root footer (footer.footer-pattern), not invented:
   .footer-top is a GRID (brand cell 1.5fr, centered; Shop / Wholesale / Info
   columns), Info is 2-col, tagline italic Crimson serif. Overrides the earlier
   left-aligned flex footer. ROLLBACK: delete to END marker.
   ════════════════════════════════════════════════════════════ */
.ce-gold-footer .footer-top {
  display: grid !important;
  grid-template-columns: 1.5fr auto auto auto !important;
  gap: 44px !important;
  align-items: start !important;
  flex-wrap: nowrap !important;
}
.ce-gold-footer .footer-brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 18px !important;
}
.ce-gold-footer .footer-brand-body {
  font-family: 'Crimson Text', Georgia, serif !important;
  font-style: italic !important;
  font-size: 17px !important;
  color: var(--ce-gold-tan) !important;
  max-width: 300px !important;
  line-height: 1.5 !important;
  margin: 0 auto !important;
}
.ce-gold-footer .footer-info-2col {
  display: grid !important;
  grid-template-columns: auto auto !important;
  column-gap: 40px !important;
  row-gap: 10px !important;
}
.ce-gold-footer .footer-info-2col li { white-space: nowrap; }
/* tablet: brand spans the full top (centered above the three columns) */
@media (max-width: 900px) {
  .ce-gold-footer .footer-top { grid-template-columns: 1fr 1fr 1fr !important; gap: 32px !important; }
  .ce-gold-footer .footer-brand { grid-column: 1 / -1 !important; }
}
/* mobile: everything stacked + centered */
@media (max-width: 560px) {
  .ce-gold-footer .footer-top { display: flex !important; flex-direction: column !important; gap: 22px !important; }
  .ce-gold-footer .footer-col { width: 100% !important; text-align: center !important; }
  .ce-gold-footer .footer-info-2col { justify-content: center !important; }
}
/* END CE FOOTER MATCH ROOT */

.ce-gold-footer .footer-brand-body { text-transform: none !important; }

/* ════════════════════════════════════════════════════════════
   CE MOBILE TABLE VALUE-WRAP FIX  (2026-07-16, ≤600px)
   At 390–401 the value column was starved (label column forced wide by the
   product-name row) so short values like "Free Shipping" wrapped. Let the
   product name wrap, keep value/amount cells on one line across the
   order-received, checkout-review and cart totals tables. ROLLBACK: delete.
   ════════════════════════════════════════════════════════════ */
@media (max-width: 600px) {
  /* order-received ORDER DETAILS */
  body.woocommerce-order-received .woocommerce-order-details table.order_details {
    width: 100% !important;
    max-width: none !important;
  }
  body.woocommerce-order-received .woocommerce-order-details tfoot td,
  body.woocommerce-order-received .woocommerce-order-details tbody td.product-total {
    white-space: nowrap !important;
    text-align: right !important;
  }
  body.woocommerce-order-received .woocommerce-order-details tbody td.product-name {
    white-space: normal !important;
  }
  /* checkout review-order totals */
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-total {
    white-space: nowrap !important;
  }
  /* cart totals */
  body.woocommerce-cart .woocommerce .cart_totals table td,
  body.woocommerce-cart .woocommerce table.shop_table td.product-subtotal,
  body.woocommerce-cart .woocommerce table.shop_table td.product-price {
    white-space: nowrap !important;
  }
}
/* END CE MOBILE TABLE VALUE-WRAP FIX */

/* ════════ CE CART COUPON — fit at 390–430 (2026-07-16) ════════
   At ≤430 the input + Apply button side-by-side clipped the button text.
   Stack them (input full-width, Apply full-width below) so the coupon row
   stays inside the card. ROLLBACK: delete to END. ════════ */
@media (max-width: 430px) {
  body.woocommerce-cart .woocommerce .actions .coupon {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 8px !important;
  }
  body.woocommerce-cart .woocommerce .actions .coupon #coupon_code,
  body.woocommerce-cart .woocommerce .actions .coupon button {
    width: 100% !important;
    flex: 1 1 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
  }
}
/* END CE CART COUPON fit */
