.elementor-21 .elementor-element.elementor-element-a3da751{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for woocommerce-cart, class: .elementor-element-fbc4a37 *//* ============================================================
   AGELESSRX — WooCommerce Cart Override
   Scope: .woocart  (paste into Elementor → Custom CSS)
   Fonts: Instrument Serif + Poppins (already loaded on site)
   ============================================================ */

/* ── TOKENS ─────────────────────────────────────────────── */
.woocart {
  --gold:        #b88a3d;
  --gold-soft:   #d7b06a;
  --ink:         #0d0c0a;
  --text:        #2a2723;
  --muted:       #5d574e;
  --bg:          #ffffff;
  --bg-soft:     #f8f8f6;
  --bg-warm:     #f2f0ec;
  --line:        rgba(16,16,16,.12);
  --line-soft:   rgba(16,16,16,.07);
  --shadow:      0 24px 70px -48px rgba(18,18,18,.22);
  --r-lg:        20px;
  --r-md:        13px;
  --r-sm:        8px;
  --sans:        'Poppins', -apple-system, sans-serif;
  --serif:       'Instrument Serif', Georgia, serif;
  --trans:       .24s ease;

  font-family: var(--sans);
  color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}

/* ── PAGE TITLE ─────────────────────────────────────────── */
.woocart h1.entry-title,
.woocart h1.page-title {
  font-family: var(--serif);
  font-weight: 400;
  font-size: clamp(2rem, 4.5vw, 3.2rem);
  color: var(--ink);
  line-height: 1.06;
  letter-spacing: .002em;
  margin-bottom: 32px;
}

/* ── NOTICES ────────────────────────────────────────────── */
.woocart .woocommerce-message,
.woocart .woocommerce-info {
  font-family: var(--sans);
  font-size: 13.5px;
  border-top: none;
  border-left: 3px solid var(--gold);
  border-radius: var(--r-sm);
  background: rgba(184,138,61,.07);
  color: var(--text);
  padding: 14px 20px;
}
.woocart .woocommerce-error {
  font-family: var(--sans);
  font-size: 13.5px;
  border-top: none;
  border-left: 3px solid rgba(139,44,44,.6);
  border-radius: var(--r-sm);
  background: rgba(139,44,44,.05);
  color: var(--text);
  padding: 14px 20px;
}

/* ── CART TABLE ─────────────────────────────────────────── */
.woocart table.shop_table {
  border: 1px solid var(--line) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: var(--r-lg) !important;
  overflow: hidden !important;
  background: var(--bg) !important;
  box-shadow: var(--shadow) !important;
  font-family: var(--sans) !important;
  width: 100% !important;
}

/* Header row */
.woocart table.shop_table thead tr {
  background: var(--bg-warm) !important;
}
.woocart table.shop_table thead th {
  font-family: var(--sans) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  border-bottom: 1px solid var(--line) !important;
  padding: 14px 22px !important;
  background: transparent !important;
}

/* Body rows */
.woocart table.shop_table tbody tr {
  border-bottom: 1px solid var(--line-soft) !important;
  transition: background var(--trans) !important;
}
.woocart table.shop_table tbody tr:last-child {
  border-bottom: none !important;
}
.woocart table.shop_table tbody tr:hover {
  background: var(--bg-soft) !important;
}
.woocart table.shop_table td {
  padding: 18px 22px !important;
  border: none !important;
  font-size: 14.5px !important;
  color: var(--text) !important;
  vertical-align: middle !important;
  background: transparent !important;
}

/* Product name */
.woocart table.cart .product-name a,
.woocart #content table.cart .product-name a {
  font-family: var(--sans) !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  color: var(--ink) !important;
  text-decoration: none !important;
  transition: color var(--trans) !important;
}
.woocart table.cart .product-name a:hover {
  color: var(--gold) !important;
}

/* Product variation text */
.woocart table.cart .product-name .variation {
  font-size: 12px !important;
  color: var(--muted) !important;
  margin-top: 4px !important;
}

/* Product image */
.woocart table.cart .product-thumbnail img,
.woocart #content table.cart .product-thumbnail img {
  border-radius: var(--r-sm) !important;
  width: 72px !important;
  height: 72px !important;
  object-fit: cover !important;
}

/* Remove × */
.woocart table.cart td.product-remove a.remove,
.woocart #content table.cart td.product-remove a.remove {
  color: var(--muted) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  background: none !important;
  border-radius: 50% !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: color var(--trans), background var(--trans) !important;
}
.woocart table.cart td.product-remove a.remove:hover {
  color: #8b2c2c !important;
  background: rgba(139,44,44,.08) !important;
}

/* Price & subtotal */
.woocart table.cart .product-price .woocommerce-Price-amount,
.woocart table.cart .product-subtotal .woocommerce-Price-amount {
  font-family: var(--sans) !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: var(--ink) !important;
}

/* Quantity input */
.woocart .quantity .qty {
  font-family: var(--sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-sm) !important;
  padding: 8px 12px !important;
  background: var(--bg) !important;
  width: 72px !important;
  text-align: center !important;
  box-shadow: none !important;
  transition: border-color var(--trans), box-shadow var(--trans) !important;
}
.woocart .quantity .qty:focus {
  outline: none !important;
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(184,138,61,.13) !important;
}

/* Actions row */
.woocart table.cart td.actions {
  padding: 16px 22px !important;
  border-top: 1px solid var(--line) !important;
  background: var(--bg-soft) !important;
}

/* Coupon input */
.woocart td.actions .coupon .input-text {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-md) !important;
  padding: 10px 16px !important;
  background: var(--bg) !important;
  min-height: 44px !important;
  box-shadow: none !important;
  transition: border-color var(--trans), box-shadow var(--trans) !important;
}
.woocart td.actions .coupon .input-text:focus {
  outline: none !important;
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(184,138,61,.12) !important;
}

/* Table footer rows */
.woocart table.shop_table tfoot tr th,
.woocart table.shop_table tfoot tr td {
  padding: 13px 22px !important;
  border-top: 1px solid var(--line) !important;
  font-size: 13.5px !important;
  background: transparent !important;
}
.woocart table.shop_table tfoot tr th {
  font-family: var(--sans) !important;
  font-weight: 700 !important;
  font-size: 10.5px !important;
  letter-spacing: .20em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
}

/* ── BUTTONS — ALL ──────────────────────────────────────── */
.woocart a.button,
.woocart button.button,
.woocart input.button,
.woocart .button {
  font-family: var(--sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #150f06 !important;
  background: var(--gold) !important;
  border: 1px solid var(--gold) !important;
  border-radius: var(--r-md) !important;
  padding: 0 22px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background var(--trans), border-color var(--trans), transform var(--trans), box-shadow var(--trans) !important;
}
.woocart a.button:hover,
.woocart button.button:hover,
.woocart input.button:hover,
.woocart .button:hover {
  background: var(--gold-soft) !important;
  border-color: var(--gold-soft) !important;
  color: #150f06 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 16px 32px -22px rgba(184,138,61,.50) !important;
}

/* Update cart — ghost style */
.woocart button[name="update_cart"],
.woocart button.button[name="update_cart"] {
  background: transparent !important;
  border-color: var(--gold) !important;
  color: var(--gold) !important;
}
.woocart button[name="update_cart"]:hover {
  background: var(--gold) !important;
  color: #150f06 !important;
}

/* Apply coupon button */
.woocart td.actions .coupon .button {
  min-height: 44px !important;
  padding: 0 18px !important;
}

/* ── CART TOTALS PANEL ──────────────────────────────────── */
.woocart .cart-collaterals .cart_totals,
.woocart .cart_totals {
  background: var(--bg) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-lg) !important;
  padding: 32px !important;
  box-shadow: var(--shadow) !important;
}

.woocart .cart_totals h2 {
  font-family: var(--serif) !important;
  font-weight: 400 !important;
  font-size: clamp(1.55rem, 2.8vw, 2.1rem) !important;
  color: var(--ink) !important;
  margin: 0 0 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--line) !important;
  line-height: 1.06 !important;
}

/* Totals table inside panel */
.woocart .cart_totals table {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.woocart .cart_totals table th,
.woocart .cart_totals table td {
  padding: 11px 0 !important;
  border-top: 1px solid var(--line-soft) !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  font-size: 14px !important;
  background: transparent !important;
}
.woocart .cart_totals table th {
  font-family: var(--sans) !important;
  font-weight: 700 !important;
  font-size: 10.5px !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  width: 46% !important;
}

/* Grand total row */
.woocart .cart_totals table .order-total th,
.woocart .cart_totals table .order-total td {
  border-top: 2px solid var(--line) !important;
  padding-top: 16px !important;
}
.woocart .cart_totals table .order-total td .woocommerce-Price-amount,
.woocart .cart_totals table .order-total td bdi,
.woocart .cart_totals table .order-total td strong {
  font-family: var(--serif) !important;
  font-size: 1.65rem !important;
  font-weight: 400 !important;
  color: var(--gold) !important;
}

/* Proceed to checkout */
.woocart .wc-proceed-to-checkout a.checkout-button,
.woocart .wc-proceed-to-checkout .button {
  width: 100% !important;
  font-size: 13px !important;
  min-height: 52px !important;
  margin-top: 22px !important;
  border-radius: var(--r-md) !important;
  letter-spacing: .16em !important;
}

/* Shipping calculator */
.woocart .cart_totals .shipping-calculator-button {
  font-family: var(--sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(184,138,61,.3) !important;
  padding-bottom: 2px !important;
  transition: border-color var(--trans), color var(--trans) !important;
}
.woocart .cart_totals .shipping-calculator-button:hover {
  color: var(--gold-soft) !important;
  border-color: var(--gold-soft) !important;
}
.woocart .cart_totals .shipping-calculator-form input,
.woocart .cart_totals .shipping-calculator-form select {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--r-sm) !important;
  padding: 10px 14px !important;
  background: var(--bg-soft) !important;
  width: 100% !important;
  margin-bottom: 10px !important;
  box-shadow: none !important;
  transition: border-color var(--trans), box-shadow var(--trans) !important;
}
.woocart .cart_totals .shipping-calculator-form input:focus,
.woocart .cart_totals .shipping-calculator-form select:focus {
  outline: none !important;
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(184,138,61,.12) !important;
}

/* Cross-sells section */
.woocart .cross-sells h2 {
  font-family: var(--serif) !important;
  font-weight: 400 !important;
  font-size: clamp(1.55rem, 2.8vw, 2.1rem) !important;
  color: var(--ink) !important;
  margin-bottom: 24px !important;
}

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 768px) {
  .woocart table.shop_table td,
  .woocart table.shop_table thead th {
    padding: 14px 14px !important;
  }
  .woocart .cart_totals {
    padding: 22px !important;
    border-radius: var(--r-md) !important;
  }
  .woocart table.shop_table {
    border-radius: var(--r-md) !important;
  }
}
@media (max-width: 480px) {
  .woocart td.actions {
    text-align: center !important;
  }
  .woocart td.actions .coupon {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin-bottom: 12px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .woocart a.button,
  .woocart button.button,
  .woocart .quantity .qty {
    transition: none !important;
  }
}/* End custom CSS */