/*
Theme Name: Verum Labs Overrides
Theme URI: https://verumlabs.store
Description: Child theme for Verum Labs — centers About Us & FAQ, hides scroll indicator + reviews tab, tightens product gallery, swaps marquee/banners, and adds DOSAGE pills + QUANTITY -/+ controls on product pages.
Author: Verum Labs
Version: 2.00.53
Template: verum-labs
*/

/* =========================================================
   0. Top navigation bar — centered + always clickable
   ========================================================= */
/* Nav + RUO banner stay in the normal document flow — they scroll away with the page. */
html body nav.nav{position:static !important;top:auto !important;display:grid !important;grid-template-columns:1fr auto 1fr !important;align-items:center !important;column-gap:24px;pointer-events:auto !important}
html body .ruo-banner{position:static !important;top:auto !important}
/* Body no longer needs a top-offset to clear a fixed nav */
html body.home,
html body{padding-top:0 !important}
.verum-wc-wrap{padding-top:48px !important}
nav.nav > .logo,
nav.nav > .navlinks,
nav.nav > .nav-right,
nav.nav a,
nav.nav button{pointer-events:auto !important}
nav.nav > .logo{justify-self:start}
nav.nav > .navlinks{justify-self:center}
nav.nav > .nav-right{justify-self:end}

/* Defensive: a stuck cart drawer / overlay must never trap clicks when not open */
.verum-cart-drawer:not(.open){pointer-events:none !important;visibility:hidden !important;opacity:0 !important}
.verum-cart-drawer:not(.open) .verum-cart-drawer-overlay{pointer-events:none !important}
/* Same for the mobile menu */
.verum-mobile-menu:not(.open){pointer-events:none !important;visibility:hidden !important}

/* Defensive: kill any stuck WooCommerce blockUI overlay that can freeze the page after AJAX */
.blockUI.blockOverlay{pointer-events:none !important}

/* =========================================================
   1. Hide the hero "scroll" indicator (bottom-left of home)
   ========================================================= */
.scroller{display:none !important}

/* =========================================================
   2. Center About Us + FAQ sections
   ========================================================= */
.about-hero,
.about-section,
.about-cta,
.faq-hero,
.faq-body,
.faq-cta-section{text-align:center !important}

.about-hero h1,
.about-hero p,
.about-content h3,
.about-content p,
.about-label,
.faq-hero h1,
.faq-hero p{margin-left:auto !important;margin-right:auto !important}

.about-inner{grid-template-columns:1fr !important;justify-items:center !important;text-align:center !important}
.about-label{padding-top:0 !important}
.about-content{display:flex;flex-direction:column;align-items:center}
.about-content p{max-width:660px}

.faq-body{margin-left:auto !important;margin-right:auto !important}
.faq-cat-hdr{justify-content:center !important;gap:14px}
.faq-q{justify-content:center !important;text-align:center !important;gap:14px}
.faq-q-text{margin-left:auto;margin-right:auto}
.faq-a{margin-left:auto !important;margin-right:auto !important;text-align:center !important}

/* =========================================================
   3. Hide Reviews tab on product pages
   ========================================================= */
.verum-wc-wrap li#tab-title-reviews,
.verum-wc-wrap #tab-reviews,
.verum-wc-wrap .woocommerce-Tabs-panel--reviews,
.verum-wc-wrap .reviews_tab{display:none !important}

/* =========================================================
   4. Product gallery: kill hover-zoom, hide search icon,
      tight frame, centered in its column
   ========================================================= */
.verum-wc-wrap .woocommerce-product-gallery__trigger{display:none !important}
.verum-wc-wrap .woocommerce-product-gallery__image .zoomImg{display:none !important}
.verum-wc-wrap .woocommerce-product-gallery__image a{cursor:default !important;pointer-events:none;display:block;line-height:0;text-align:center}
.verum-wc-wrap div.product .woocommerce-product-gallery{justify-self:center !important;text-align:center !important;width:100% !important}
.verum-wc-wrap div.product .woocommerce-product-gallery__wrapper{min-height:0 !important;padding:0 !important;max-width:520px;width:fit-content;margin:0 auto !important;aspect-ratio:auto;display:block;background:transparent !important;border:0 !important}
.verum-wc-wrap div.product .woocommerce-product-gallery__image{display:block;line-height:0;text-align:center}
.verum-wc-wrap div.product .woocommerce-product-gallery__image img{max-height:none !important;max-width:520px !important;width:100%;height:auto;display:block;margin:0 auto !important}

/* =========================================================
   5. PDP DOSAGE pills + QUANTITY -/+ controls
   ========================================================= */
.verum-pdp-row{display:flex;align-items:center;gap:18px;margin:14px 0}
.verum-pdp-label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);min-width:90px;font-weight:500}
.verum-pdp-pills{display:flex;gap:10px;flex-wrap:wrap}
.verum-pdp-pill{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:13px 26px;border-radius:999px;background:transparent;color:var(--ink);border:1px solid var(--line-strong);cursor:pointer;transition:background .25s,color .25s,border-color .25s;line-height:1;min-width:96px;text-align:center}
.verum-pdp-pill:hover{border-color:var(--ink)}
.verum-pdp-pill.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.verum-pdp-qty{display:inline-flex !important;align-items:center !important;border:1px solid var(--line-strong) !important;border-radius:999px !important;overflow:hidden !important;height:36px !important;width:112px !important;min-width:112px !important;max-width:112px !important;box-sizing:border-box !important;flex:0 0 112px !important;justify-content:space-between !important}
.verum-pdp-qty-btn{width:32px !important;min-width:32px !important;height:34px !important;background:transparent !important;border:0 !important;color:var(--ink) !important;font-size:14px !important;line-height:1 !important;cursor:pointer !important;font-family:var(--mono) !important;font-weight:500 !important;padding:0 !important;transition:background .25s !important;flex:0 0 32px !important}
.verum-pdp-qty-btn:hover{background:rgba(244,241,234,.08) !important}
.verum-pdp-qty-input{width:48px !important;min-width:48px !important;max-width:48px !important;background:transparent !important;border:0 !important;text-align:center !important;color:var(--ink) !important;font-family:var(--mono) !important;font-size:14px !important;font-weight:600 !important;-moz-appearance:textfield !important;appearance:textfield !important;padding:0 !important;height:34px !important;line-height:34px !important;flex:0 0 48px !important;box-sizing:border-box !important}
.verum-pdp-qty-input::-webkit-outer-spin-button,.verum-pdp-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.verum-wc-wrap form.cart > div.quantity{display:none !important}
/* Simple products: the cart form itself flex-lays qty + button.
   The placeholder variations table (injected via JS) gets flex-basis:100% so it
   takes its own row above qty + button. */
.verum-wc-wrap div.product form.cart:not(.variations_form){display:flex !important;align-items:center !important;gap:14px !important;flex-wrap:wrap}
.verum-wc-wrap div.product form.cart:not(.variations_form) > table.variations{flex:1 1 100% !important;width:100% !important}
.verum-wc-wrap div.product table.variations.verum-placeholder select{opacity:1 !important;cursor:pointer !important}
/* Variable products: the inner add-to-cart wrap flex-lays qty + button.
   form.cart stays block so the variations table + .single_variation_wrap stack vertically. */
.verum-wc-wrap div.product form.variations_form{display:block !important}
.verum-wc-wrap div.product form.variations_form .single_variation_wrap{display:block}
.verum-wc-wrap div.product form.variations_form .woocommerce-variation-add-to-cart{display:flex !important;align-items:center !important;gap:14px !important;flex-wrap:wrap;margin-top:10px}
.verum-wc-wrap div.product .single_add_to_cart_button{padding:9px 32px !important;font-size:10px !important;letter-spacing:.22em !important;min-width:280px !important;flex:1 1 auto !important;width:auto !important;height:36px !important;line-height:1 !important}
/* Title price visible at all times, even on variable products before a pick */
.verum-wc-wrap div.product .summary > p.price{display:block !important}
.verum-wc-wrap div.product .woocommerce-variation-price{display:block !important;margin:6px 0 10px !important;font-family:var(--mono) !important;font-size:14px !important;color:var(--ink) !important}
/* Keep WC variations dropdown visible (variable products only) so users can
   pick a size and the price updates natively. Hide only the "Clear" link. */
.verum-wc-wrap div.product .reset_variations{display:none !important}
.verum-wc-wrap div.product table.variations{margin:0 0 18px !important}
.verum-wc-wrap div.product table.variations th.label{padding-right:18px !important;vertical-align:middle !important}

/* =========================================================
   6. Onyx-style checkout layout (2-col with order summary right)
   ========================================================= */
/* Match form.checkout whether or not it sits inside .verum-wc-wrap */
form.checkout,
form.woocommerce-checkout,
.verum-wc-wrap form.checkout{display:grid !important;grid-template-columns:1.4fr 1fr !important;grid-template-rows:auto 1fr !important;column-gap:48px !important;row-gap:0 !important;align-items:stretch !important}
form.checkout #customer_details,
form.woocommerce-checkout #customer_details,
.verum-wc-wrap #customer_details{grid-column:1 !important;grid-row:1 / 3 !important;align-self:stretch !important}
form.checkout > h3#order_review_heading,
form.woocommerce-checkout > h3#order_review_heading,
.verum-wc-wrap form.checkout > h3#order_review_heading{grid-column:2 !important;grid-row:1 !important;margin:0 !important;align-self:start !important}
form.checkout > #order_review,
form.woocommerce-checkout > #order_review,
.verum-wc-wrap form.checkout > #order_review{grid-column:2 !important;grid-row:2 !important;margin-top:0 !important;padding-top:0 !important;display:flex !important;flex-direction:column !important;gap:8px !important;align-self:stretch !important;min-height:100% !important}
.verum-wc-wrap form.checkout > #order_review > *:first-child{margin-top:0 !important}
.verum-wc-wrap #customer_details .col2-set,
.verum-wc-wrap #customer_details > .col2-set > .col-1,
.verum-wc-wrap #customer_details > .col2-set > .col-2{display:block !important;grid-template-columns:1fr !important;gap:0 !important}

/* Big "BILLING DETAILS" / "YOUR ORDER" headings */
.verum-wc-wrap #customer_details h3,
.verum-wc-wrap #order_review_heading{font-family:var(--display) !important;font-weight:700 !important;font-size:clamp(28px,3.5vw,42px) !important;letter-spacing:.005em !important;text-transform:uppercase !important;margin:0 0 24px !important;line-height:1 !important;color:var(--ink) !important;border:0 !important;padding:0 !important}

/* Field rows: first/last name side-by-side, everything else full-width */
.verum-wc-wrap .woocommerce-billing-fields__field-wrapper,
.verum-wc-wrap .woocommerce-shipping-fields__field-wrapper,
.verum-wc-wrap .woocommerce-additional-fields__field-wrapper{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px 16px !important}
.verum-wc-wrap .form-row{margin:0 !important;padding:0 !important;width:auto !important;float:none !important}
.verum-wc-wrap .form-row-first,
.verum-wc-wrap .form-row-last{width:auto !important;float:none !important}
.verum-wc-wrap .form-row-wide,
.verum-wc-wrap .form-row.notes,
.verum-wc-wrap #billing_country_field,
.verum-wc-wrap #billing_address_1_field,
.verum-wc-wrap #billing_address_2_field,
.verum-wc-wrap #billing_city_field,
.verum-wc-wrap #billing_state_field,
.verum-wc-wrap #billing_postcode_field,
.verum-wc-wrap #billing_phone_field,
.verum-wc-wrap #billing_email_field,
.verum-wc-wrap #order_comments_field,
.verum-wc-wrap #account_password_field{grid-column:1 / -1 !important}

.verum-wc-wrap .form-row label{display:block !important;font-family:var(--sans) !important;text-transform:none !important;letter-spacing:0 !important;font-size:14px !important;color:var(--ink) !important;margin-bottom:8px !important;font-weight:500}
.verum-wc-wrap .form-row .required{color:var(--ink-dim) !important;text-decoration:none}
.verum-wc-wrap .form-row input.input-text,
.verum-wc-wrap .form-row textarea,
.verum-wc-wrap .form-row select{height:48px !important;padding:12px 14px !important;border-radius:6px !important;font-size:14px !important;width:100% !important}
.verum-wc-wrap .form-row textarea{height:auto !important;min-height:90px}

/* Select2 country/state — match input height */
.verum-wc-wrap .select2-container .select2-selection--single{height:48px !important;border:1px solid var(--line-strong) !important;border-radius:6px !important;background:#0a0a0a !important}
.verum-wc-wrap .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ink) !important;line-height:46px !important;padding-left:14px !important}
.verum-wc-wrap .select2-container--default .select2-selection--single .select2-selection__arrow{height:46px !important}

/* Login / coupon prompts above the form — tighter */
.verum-wc-wrap .woocommerce-form-coupon-toggle,
.verum-wc-wrap .woocommerce-form-login-toggle{margin-bottom:18px}

/* Shipping toggle */
.verum-wc-wrap .woocommerce-shipping-fields h3{margin-top:28px}

/* ---------------------------------------------------------------
   6b. Billing form: fill the width — collapse col-1 / col-2 into a
   single stacked column, so billing fields use the full available
   width and order notes drop below them (no empty right gap).
   Selectors avoid `.verum-wc-wrap` so they work on the live checkout.
   --------------------------------------------------------------- */
/* Kill the side-by-side .col-1 / .col-2 layout completely. */
body.woocommerce-checkout form.checkout #customer_details,
body.woocommerce-checkout form.woocommerce-checkout #customer_details{
  display:block !important;
}
body.woocommerce-checkout form.checkout #customer_details .col2-set,
body.woocommerce-checkout form.woocommerce-checkout #customer_details .col2-set,
body.woocommerce-checkout form.checkout #customer_details > .col2-set,
body.woocommerce form.checkout #customer_details .col2-set{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  float:none !important;
}
body.woocommerce-checkout form.checkout #customer_details .col-1,
body.woocommerce-checkout form.checkout #customer_details .col-2,
body.woocommerce-checkout form.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout form.woocommerce-checkout #customer_details .col-2,
body.woocommerce form.checkout #customer_details .col-1,
body.woocommerce form.checkout #customer_details .col-2{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  float:none !important;
  clear:both !important;
  padding:0 !important;
  margin:0 0 24px !important;
}
/* Last child shouldn't have a trailing margin — keeps the bottom clean. */
body.woocommerce-checkout #customer_details .col-2:last-child{margin-bottom:0 !important}

/* The billing-fields wrapper itself becomes a 2-col grid that uses 100% width. */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:14px 18px !important;
}
body.woocommerce-checkout .form-row{margin:0 !important;padding:0 !important;width:auto !important;max-width:none !important;float:none !important;min-width:0 !important;clear:none !important}
body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last{width:auto !important;float:none !important;clear:none !important}

/* Genuinely-wide rows still span both columns. */
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #order_comments_field,
body.woocommerce-checkout #account_password_field{grid-column:1 / -1 !important}

body.woocommerce-checkout #order_comments_field textarea{min-height:120px !important}

@media (max-width:720px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper{grid-template-columns:1fr !important}
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field,
  body.woocommerce-checkout #order_comments_field{grid-column:auto !important}
}

/* Right column — Your order */
.verum-wc-wrap #order_review{position:sticky;top:128px}
.verum-wc-wrap .woocommerce-checkout-review-order-table{border:1px solid var(--line) !important;border-radius:14px !important;background:rgba(244,241,234,.03) !important;padding:0 !important;margin:0 0 16px !important;width:100%;border-collapse:separate !important;border-spacing:0 !important}
.verum-wc-wrap .woocommerce-checkout-review-order-table thead{display:none}
.verum-wc-wrap .woocommerce-checkout-review-order-table tbody .cart_item:first-child td{padding-top:6px !important}
.verum-wc-wrap .woocommerce-checkout-review-order-table tbody .cart_item td{border:0 !important;padding:8px 12px !important;background:transparent !important}
/* Line-item row: image + (name + qty stacked) on the left, price right.
   Selectors don't require .verum-wc-wrap so they apply on the live site too. */
.woocommerce-checkout-review-order-table .product-name,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-name{display:flex !important;align-items:center !important;gap:14px !important;font-family:var(--mono) !important;font-size:13px !important;letter-spacing:.06em !important;text-transform:uppercase !important;color:var(--ink) !important}
.woocommerce-checkout-review-order-table .product-name .verum-checkout-name,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-name .verum-checkout-name{display:flex !important;flex-direction:column !important;gap:4px !important;line-height:1.2 !important}
.woocommerce-checkout-review-order-table .product-name strong.product-quantity,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-name strong.product-quantity{font-family:var(--mono) !important;font-size:11px !important;letter-spacing:.18em !important;color:var(--ink-dim) !important;font-weight:500 !important;display:block !important;margin:0 !important}
/* Single 80px rounded-square thumbnail with a cream-tinted background (Onyx-style).
   The JS scrub in verum-overrides.js removes any duplicate images at runtime;
   this CSS makes sure whatever remains is sized + framed correctly. */
.woocommerce-checkout-review-order-table .product-name img,
.woocommerce-checkout-review-order-table .cart_item img,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-name img,
.verum-wc-wrap .woocommerce-checkout-review-order-table .cart_item img{width:80px !important;height:80px !important;max-width:80px !important;max-height:80px !important;min-width:0 !important;min-height:0 !important;border-radius:14px !important;object-fit:cover !important;background:rgba(244,241,234,.04) !important;padding:0 !important;box-sizing:border-box !important;flex-shrink:0 !important;display:block !important;margin:0 !important}
.woocommerce-checkout-review-order-table .product-name img ~ img,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-name img ~ img{display:none !important}
.woocommerce-checkout-review-order-table .product-total,
.verum-wc-wrap .woocommerce-checkout-review-order-table .product-total{text-align:right !important;font-family:var(--mono) !important;font-weight:600 !important;font-size:14px !important;color:var(--ink) !important;white-space:nowrap !important;vertical-align:middle !important}

/* Totals (tfoot) */
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot tr{background:transparent !important}
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot th,
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot td{padding:10px 14px !important;background:transparent !important;border-top:1px solid var(--line) !important}
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot th{font-family:var(--mono) !important;font-size:11px !important;text-transform:uppercase !important;letter-spacing:.16em !important;color:var(--ink-dim) !important;font-weight:500 !important;text-align:left}
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot td{text-align:right !important;color:var(--ink) !important;font-family:var(--mono) !important;font-size:14px !important;font-weight:500}
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total th{font-size:13px !important;color:var(--ink) !important}
.verum-wc-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td{font-size:22px !important;font-weight:700 !important;letter-spacing:-.01em !important}

/* Payment methods */
.verum-wc-wrap #payment{background:transparent !important;border:0 !important;padding:0 !important;margin-top:8px}
.verum-wc-wrap #payment ul.payment_methods{margin:0 !important;padding:0 !important;border:0 !important;list-style:none}
.verum-wc-wrap #payment ul.payment_methods li{padding:14px 0 !important;border:0 !important;border-bottom:1px solid var(--line) !important;background:transparent !important;list-style:none}
.verum-wc-wrap #payment ul.payment_methods li:last-child{border-bottom:0 !important}
.verum-wc-wrap #payment ul.payment_methods li label{font-family:var(--sans) !important;font-size:14px;color:var(--ink) !important;text-transform:none !important;letter-spacing:0 !important;font-weight:500;cursor:pointer}
.verum-wc-wrap #payment ul.payment_methods li input[type=radio]{accent-color:var(--ink) !important;margin-right:10px;transform:scale(1.1)}
.verum-wc-wrap #payment ul.payment_methods .payment_box{background:rgba(244,241,234,.04) !important;border:0 !important;padding:14px !important;border-radius:8px !important;margin-top:10px !important;color:var(--ink-dim);font-size:13px}
.verum-wc-wrap #payment ul.payment_methods .payment_box::before{display:none !important}
.verum-wc-wrap #payment .wc_payment_method img,
.verum-wc-wrap #payment .payment_box img{max-height:22px;vertical-align:middle;margin-left:6px}

/* Terms + Place order */
.verum-wc-wrap .woocommerce-terms-and-conditions-wrapper{margin:14px 0}
.verum-wc-wrap .wc-terms-and-conditions label{font-family:var(--sans) !important;font-size:13px !important;color:var(--ink-dim) !important;text-transform:none !important;letter-spacing:0 !important}
.verum-wc-wrap #place_order{display:block !important;width:100% !important;padding:16px 24px !important;font-family:var(--mono) !important;font-size:13px !important;font-weight:600 !important;letter-spacing:.24em !important;text-transform:uppercase !important;background:var(--ink) !important;color:var(--bg) !important;border:0 !important;border-radius:999px !important;margin-top:14px !important;cursor:pointer;height:auto !important;line-height:1;min-width:0 !important}
.verum-wc-wrap #place_order:hover{opacity:.9}

@media (max-width: 980px) {
  .verum-wc-wrap form.checkout{grid-template-columns:1fr !important;gap:32px !important}
  .verum-wc-wrap #order_review_heading,
  .verum-wc-wrap #order_review{grid-column:1 !important}
  .verum-wc-wrap #order_review{position:static !important}
  .verum-wc-wrap .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr !important}
}

/* =========================================================
   7. Cart drawer same-day shipping banner
   ========================================================= */
.verum-drawer-ship-banner{padding:12px 28px;border-bottom:1px solid var(--line);background:rgba(244,241,234,.04);font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-align:center;line-height:1.5;flex-shrink:0}

/* =========================================================
   8. Bundle Builder ([verum_bundle_builder] shortcode)
   ========================================================= */
.verum-bundle-wrap{max-width:1440px;margin:0 auto;padding:48px 32px 80px}
.verum-bundle-hero{text-align:center;margin-bottom:64px;padding:0 16px}
.verum-bundle-hero .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:24px}
.verum-bundle-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(56px,9vw,140px);line-height:.9;letter-spacing:-.04em;margin:0 0 32px;color:var(--ink)}
.verum-bundle-hero h1 em{font-style:normal;color:var(--ink-dim);font-weight:300}
.verum-bundle-hero p{font-size:16px;line-height:1.7;color:var(--ink-dim);max-width:540px;margin:0 auto 36px}
.verum-bundle-hero .bundle-stats{display:flex;justify-content:center;gap:60px;flex-wrap:wrap}
.verum-bundle-hero .bundle-stat{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}
.verum-bundle-hero .bundle-stat span{display:block;font-family:var(--display);font-weight:500;font-size:42px;letter-spacing:-.02em;color:var(--ink);margin-bottom:4px}
.verum-bundle-grid{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start}
.verum-bundle-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.verum-bundle-card{position:relative;background:rgba(244,241,234,.025);border:1px solid var(--line);border-radius:18px;padding:24px;transition:border-color .3s,background .3s;display:flex;flex-direction:column;cursor:pointer}
.verum-bundle-card:hover{border-color:var(--line-strong);background:rgba(244,241,234,.04)}
.verum-bundle-card.selected{border-color:var(--ink);background:rgba(244,241,234,.06)}
.verum-bundle-card .card-img{width:100%;aspect-ratio:1/1;border-radius:14px;background:rgba(244,241,234,.04);overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.verum-bundle-card .card-img img{width:100%;height:100%;object-fit:cover;display:block}
.verum-bundle-card .card-name{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);margin:0 0 6px;font-weight:500}
.verum-bundle-card .card-title{font-family:var(--display);font-weight:500;font-size:24px;letter-spacing:-.01em;color:var(--ink);line-height:1.1;margin:0 0 12px}
.verum-bundle-card .card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}
.verum-bundle-card .card-price{font-family:var(--display);font-weight:500;font-size:22px;color:var(--ink);letter-spacing:-.01em}
.verum-bundle-card .card-add{margin-top:auto;width:100%;padding:13px 20px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;background:transparent;color:var(--ink);border:1px solid var(--line-strong);border-radius:999px;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.verum-bundle-card .card-add:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.verum-bundle-card.selected .card-add{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.verum-bundle-card.selected .card-add::before{content:"\2713 ";letter-spacing:0}
.verum-bundle-side{position:sticky;top:32px;background:rgba(244,241,234,.04);border:1px solid var(--line);border-radius:18px;padding:32px;display:flex;flex-direction:column;gap:24px}
.verum-bundle-side h2{font-family:var(--display);font-weight:500;font-size:28px;letter-spacing:-.01em;color:var(--ink);margin:0;line-height:1}
.verum-bundle-side .side-sub{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);margin:6px 0 0}
.verum-bundle-slots{display:flex;flex-direction:column;gap:10px}
.verum-bundle-slot{display:flex;align-items:center;gap:14px;padding:14px;background:transparent;border:1px dashed var(--line-strong);border-radius:12px;min-height:72px}
.verum-bundle-slot.filled{border-style:solid;background:rgba(244,241,234,.04)}
.verum-bundle-slot .slot-num{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--ink-dim);min-width:18px}
.verum-bundle-slot .slot-thumb{width:44px;height:44px;border-radius:8px;background:rgba(244,241,234,.06);object-fit:cover;flex-shrink:0;display:none}
.verum-bundle-slot.filled .slot-thumb{display:block}
.verum-bundle-slot .slot-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);flex:1}
.verum-bundle-slot.filled .slot-label{color:var(--ink)}
.verum-bundle-slot .slot-price{font-family:var(--mono);font-size:12px;color:var(--ink);font-weight:600}
.verum-bundle-slot .slot-remove{color:var(--ink-dim);font-size:18px;background:transparent;border:0;cursor:pointer;display:none;padding:4px 8px;line-height:1}
.verum-bundle-slot.filled .slot-remove{display:block}
.verum-bundle-slot.filled .slot-remove:hover{color:var(--ink)}
.verum-bundle-totals{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:8px}
.verum-bundle-totals .row{display:flex;justify-content:space-between;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}
.verum-bundle-totals .row.discount{color:#7fb37f}
.verum-bundle-totals .row.total{padding-top:10px;border-top:1px solid var(--line);margin-top:6px;font-size:14px;color:var(--ink);font-weight:600}
.verum-bundle-totals .row.total .v{font-family:var(--display);font-size:24px;letter-spacing:-.01em;font-weight:500}
.verum-bundle-cta{padding:18px;border-radius:999px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;background:var(--ink);color:var(--bg);border:0;cursor:pointer;transition:opacity .3s}
.verum-bundle-cta:hover{opacity:.88}
.verum-bundle-cta:disabled{opacity:.35;cursor:not-allowed}
.verum-bundle-side .side-note{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);text-align:center;line-height:1.6}
@media (max-width:980px){
  .verum-bundle-grid{grid-template-columns:1fr;gap:32px}
  .verum-bundle-products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .verum-bundle-side{position:static;order:-1}
  .verum-bundle-hero h1{font-size:64px}
  .verum-bundle-hero .bundle-stats{gap:32px}
}
@media (max-width:560px){
  .verum-bundle-products{grid-template-columns:1fr}
}

/* =========================================================
   9. Bundle discount applied banner (cart + checkout pages)
   ========================================================= */
.verum-bundle-applied{display:flex;align-items:center;gap:12px;padding:16px 22px;margin:0 0 24px;border:1px solid rgba(127,179,127,.4);border-left:3px solid #7fb37f;background:rgba(127,179,127,.08);border-radius:10px;font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-weight:600}
.verum-bundle-applied-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#7fb37f;color:#0a0a0a;font-size:14px;font-weight:700;flex-shrink:0}
.verum-bundle-applied-text{letter-spacing:.18em}
.verum-wc-wrap tr.verum-bundle-note th{font-family:var(--mono) !important;font-size:11px !important;letter-spacing:.16em !important;text-transform:uppercase !important;color:var(--ink-dim) !important}

/* Drawer + line-item bundle markers */
.verum-drawer-bundle-banner{display:flex;align-items:center;gap:10px;padding:12px 28px;background:rgba(127,179,127,.12);border-bottom:1px solid rgba(127,179,127,.3);font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#a8d6a8;font-weight:600;flex-shrink:0}
.verum-drawer-bundle-banner .verum-drawer-bundle-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#7fb37f;color:#0a0a0a;font-size:11px;font-weight:700}
.verum-bundle-badge{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:999px;background:#7fb37f;color:#0a0a0a;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;vertical-align:middle}

/* Bundle item: show original price struck-through, discounted price beside it */
.verum-bundle-strike{color:var(--ink-dim) !important;text-decoration:line-through !important;font-family:var(--mono) !important;font-weight:400 !important;opacity:.7;margin-right:6px}
.verum-bundle-new{color:#7fb37f !important;text-decoration:none !important;font-family:var(--display) !important;font-weight:600 !important}
.verum-bundle-new .woocommerce-Price-amount{color:#7fb37f !important}
.verum-bundle-strike .woocommerce-Price-amount{color:var(--ink-dim) !important}

/* =========================================================
   10. Bundles page — hide the WP page title and collapse top space
   ========================================================= */
body.page-bundles .entry-title,
body.page-bundles .entry-header,
body.page-bundles header.entry-header,
body.page-bundles .post-title,
body.page-bundles .page-title,
body.page-bundles .wp-block-post-title,
body.page-bundles .verum-page-title,
body.page-bundles .verum-page-header{display:none !important}
body.page-bundles .verum-wc-wrap,
body.page-bundles main,
body.page-bundles article{padding-top:24px !important;margin-top:0 !important}
body.page-bundles .verum-bundle-wrap{padding-top:24px !important}

/* Hide the parent theme's auto-rendered <h1 class="verum-page-title">Bundles</h1>
   on the bundles page (and any page containing the shortcode). */
body.verum-on-bundles .verum-page-title,
body.verum-on-bundles .verum-page-header,
body.verum-on-bundles .entry-title,
body.verum-on-bundles header.entry-header,
body.verum-on-bundles .page-title,
body.verum-on-bundles .wp-block-post-title,
body.page-id-303 .verum-page-title,
body.page-id-303 .verum-page-header{display:none !important}
body.verum-on-bundles .verum-wc-wrap,
body.verum-on-bundles main,
body.verum-on-bundles article{padding-top:0 !important;margin-top:0 !important}
body.verum-on-bundles .verum-bundle-wrap{padding-top:48px !important}

/* Bundle card size selector */
.verum-bundle-card .card-size-row{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.verum-bundle-card .card-size-label{font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);font-weight:500}
.verum-bundle-card .card-size-select{flex:1;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:rgba(244,241,234,.04);border:1px solid var(--line-strong);border-radius:999px;padding:8px 36px 8px 14px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23F4F1EA' stroke-width='1.5'><path d='M1 1.5l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 14px center;background-size:9px;cursor:pointer}
.verum-bundle-card .card-size-select:focus{outline:none;border-color:var(--ink)}

/* Compact size selector in the meta row */
.verum-bundle-card .card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 18px}
.verum-bundle-card .card-meta .card-size-select{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid var(--line-strong);border-radius:999px;padding:6px 26px 6px 12px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23F4F1EA' stroke-width='1.5'><path d='M1 1.5l5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:8px;cursor:pointer;line-height:1.2;height:auto;min-width:0;max-width:140px}
.verum-bundle-card .card-meta .card-size-select:focus{outline:none;border-color:var(--ink)}
.verum-bundle-card .card-size-static{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);padding:6px 0}
.verum-bundle-card .card-meta .card-price{font-family:var(--display);font-weight:500;font-size:22px;color:var(--ink);letter-spacing:-.01em}
/* Old standalone size row no longer rendered, hide if anything stale remains */
.verum-bundle-card .card-size-row{display:none !important}
.verum-bundle-card .card-name{display:none !important}

/* Bundles page — push the hero up flush with the nav (no big empty band) */
body.verum-on-bundles .verum-wc-wrap,
body.verum-on-bundles main,
body.verum-on-bundles article,
body.verum-on-bundles .verum-page-content,
body.verum-on-bundles .entry-content{padding-top:0 !important;margin-top:0 !important}
body.verum-on-bundles .verum-bundle-wrap{padding-top:0 !important;margin-top:0 !important}
body.verum-on-bundles .verum-bundle-hero{margin-top:0 !important;padding-top:24px !important;margin-bottom:40px !important}
body.verum-on-bundles .verum-bundle-hero .eyebrow{margin-bottom:16px !important}
body.verum-on-bundles .verum-bundle-hero h1{margin-bottom:20px !important}

/* Push the stats row further from the divider line below */
body.verum-on-bundles .verum-bundle-hero{padding-bottom:48px !important;margin-bottom:64px !important}
body.verum-on-bundles .verum-bundle-hero .bundle-stats{margin-top:32px !important;padding-bottom:24px !important}
body.verum-on-bundles .verum-bundle-hero .bundle-stat{padding-bottom:4px !important}

/* Collapse the empty band at the top of Home, About Us, and FAQ sections */
.hero-wrap{padding-top:24px !important}
.about-hero{padding-top:32px !important;padding-bottom:48px !important}
.faq-hero{padding-top:32px !important;padding-bottom:40px !important}
.about-section:first-of-type{padding-top:32px !important}
.about-cta,
.faq-cta-section{padding-top:60px !important}

/* Home hero: top-align content so the eyebrow + meta sit right under the nav
   instead of being vertically centered in a 100vh tall section. */
.hero{min-height:auto !important}
.hero-wrap{justify-content:flex-start !important;padding-top:24px !important;flex:0 1 auto !important}
.hero-top{margin-bottom:24px !important}
.hero-bottom{margin-top:32px !important}

/* Kill the parent theme's 112px top padding on every SPA "page" section */
.page[data-page]{padding-top:0 !important}

/* Nav link order: Home · Catalog · Bundles · FAQ · About Us · Affiliates */
nav.nav .navlinks{display:flex !important}
nav.nav .navlinks a[data-page-link="home"]{order:1 !important}
nav.nav .navlinks a[href*="/shop"]{order:2 !important}
nav.nav .navlinks a[data-verum-bundles]{order:3 !important}
nav.nav .navlinks a[data-page-link="faq"]{order:4 !important}
nav.nav .navlinks a[data-page-link="about"]{order:5 !important}
nav.nav .navlinks a[data-verum-affiliates]{order:6 !important}
/* Same order in mobile menu */
.verum-mobile-menu-links{display:flex !important;flex-direction:column}
.verum-mobile-menu-links a[data-page-link="home"]{order:1 !important}
.verum-mobile-menu-links a[href*="/shop"]{order:2 !important}
.verum-mobile-menu-links a[data-verum-bundles]{order:3 !important}
.verum-mobile-menu-links a[data-page-link="faq"]{order:4 !important}
.verum-mobile-menu-links a[data-page-link="about"]{order:5 !important}
.verum-mobile-menu-links a[data-verum-affiliates]{order:6 !important}

/* =========================================================
   11. Minimalist product detail page (PDP)
   ========================================================= */
/* Clutter to remove */
.verum-wc-wrap .wlr-product-message,
.verum-wc-wrap .product_meta,
.verum-wc-wrap .cat-meta,
.verum-wc-wrap .product_cat-peptide ~ *,
.verum-wc-wrap div.product .upsells,
.verum-wc-wrap div.product .related,
.verum-wc-wrap div.product .woocommerce-tabs,
.verum-wc-wrap div.product .wc-tabs-wrapper,
.verum-wc-wrap div.product .wc-tabs,
.verum-wc-wrap section.related,
.verum-wc-wrap section.upsells,
.verum-wc-wrap div.product .product_meta,
.verum-wc-wrap .woocommerce-Reviews,
.verum-wc-wrap .verum-coa-badges{display:none !important}

/* Keep the price clean and tight */
.verum-wc-wrap div.product h1.product_title{font-size:clamp(38px,5vw,64px) !important;line-height:1 !important;letter-spacing:-.02em !important;margin-bottom:12px !important}
.verum-wc-wrap div.product p.price{font-family:var(--display) !important;font-weight:500 !important;font-size:28px !important;color:var(--ink) !important;letter-spacing:-.01em !important;margin:0 0 28px !important;padding:0 !important}
.verum-wc-wrap div.product .woocommerce-product-details__short-description{font-family:var(--sans) !important;font-size:14px !important;line-height:1.7 !important;color:var(--ink-dim) !important;margin:0 0 28px !important;max-width:520px}
.verum-wc-wrap div.product .woocommerce-product-details__short-description p{margin:0 0 10px !important}

/* Compress vertical whitespace inside the summary column */
.verum-wc-wrap div.product .summary > *{margin-top:0}
.verum-wc-wrap div.product form.cart{margin-top:8px !important}

/* Notices remain visible, just smaller */
.verum-wc-wrap .woocommerce-notices-wrapper:empty{display:none !important}
.verum-wc-wrap .woocommerce-message,
.verum-wc-wrap .woocommerce-info,
.verum-wc-wrap .woocommerce-error{padding:10px 16px !important;font-size:12px !important;margin-bottom:16px !important}

/* =========================================================
   12. PDP — Vanguard-style structural layout (dark theme)
   ========================================================= */

/* Big bold uppercase product title */
.verum-wc-wrap div.product h1.product_title,
.verum-wc-wrap div.product .summary h1.product_title,
body.single-product div.product h1.product_title{font-family:"Space Grotesk", var(--display), system-ui, sans-serif !important;font-size:clamp(28px,2.6vw,40px) !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:-.01em !important;line-height:1 !important;margin:0 0 18px !important;color:var(--ink) !important}

/* "PRICE" eyebrow removed per request */
.verum-wc-wrap div.product p.price::before,
body.single-product div.product p.price::before{content:none !important;display:none !important}

.verum-wc-wrap div.product p.price,
body.single-product div.product p.price{font-family:"Space Grotesk", var(--display), system-ui, sans-serif !important;font-weight:700 !important;font-size:28px !important;letter-spacing:-.02em !important;color:var(--ink) !important;margin:0 0 22px !important;line-height:1}
body.single-product div.product p.price .woocommerce-Price-amount{font-family:"Space Grotesk", var(--display), system-ui, sans-serif !important}

/* Big rounded image card on the left */
.verum-wc-wrap div.product .woocommerce-product-gallery__wrapper{background:rgba(244,241,234,.04) !important;border:1px solid var(--line) !important;border-radius:24px !important;padding:60px !important;max-width:none !important;width:100% !important;aspect-ratio:1/1 !important;display:flex !important;align-items:center !important;justify-content:center !important}
.verum-wc-wrap div.product .woocommerce-product-gallery__image img{max-width:100% !important;max-height:100% !important;width:auto !important;height:auto !important}

/* Status / dispatch banner injected by JS */
.verum-pdp-status{display:flex;flex-direction:column;gap:8px;padding:18px 22px;background:rgba(244,241,234,.04);border:1px solid var(--line);border-radius:14px;margin:0 0 28px}
.verum-pdp-status-row{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:14px;color:var(--ink);line-height:1.4}
.verum-pdp-status-row strong{color:var(--ink);font-weight:600}
.verum-pdp-status-icon{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;font-weight:700}
.verum-pdp-status-icon.stock{background:#7fb37f;color:#0a0a0a}
.verum-pdp-status-icon.clock{background:rgba(244,241,234,.06);color:#ffb464;border:1px solid rgba(255,180,100,.4)}

/* QUANTITY row label */
.verum-pdp-row .verum-pdp-label{min-width:96px}

/* Wide rounded Add to Cart button with a touch of icon */
.verum-wc-wrap div.product .single_add_to_cart_button{padding:18px 32px !important;font-size:12px !important;letter-spacing:.22em !important;min-width:280px !important;flex:1 1 auto !important;height:auto !important;border-radius:999px !important;background:var(--ink) !important;color:var(--bg) !important;border:0 !important;font-family:var(--mono) !important;font-weight:600 !important;text-transform:uppercase !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;line-height:1 !important}
.verum-wc-wrap div.product .single_add_to_cart_button::after{content:"";display:inline-block;width:14px;height:14px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a0a0a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='21' r='1'/><circle cx='20' cy='21' r='1'/><path d='M1 1h4l2.7 13.4a2 2 0 0 0 2 1.6h9.7a2 2 0 0 0 2-1.6L23 6H6'/></svg>");background-size:contain;background-repeat:no-repeat}

/* Trust strip below the cart button */
.verum-pdp-trust{display:flex;flex-wrap:wrap;gap:24px;margin:22px 0 0;padding:0;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}
.verum-pdp-trust span{display:inline-flex;align-items:center;gap:8px}
.verum-pdp-trust span::before{content:"";display:inline-block;width:14px;height:14px;border-radius:50%;background:#7fb37f;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a0a0a' stroke-width='3' stroke-linecap='round'><polyline points='20 6 9 17 4 12'/></svg>");background-size:10px;background-repeat:no-repeat;background-position:center}

/* Tighten the column gap and form row spacing */
.verum-wc-wrap div.product{gap:64px !important;align-items:start !important}
.verum-wc-wrap div.product form.cart{margin-top:8px !important}

/* ====== ALIGN: image card top edge == title top edge ======
   The site's parent theme adds extra top space to .summary / .product_title;
   these rules nuke it from both columns regardless of body class.        */
html body div.product,
html body .verum-wc-wrap div.product{align-items:flex-start !important}
html body div.product .images,
html body div.product .summary,
html body div.product .woocommerce-product-gallery,
html body div.product .entry-summary{margin-top:0 !important;padding-top:0 !important}
html body div.product .summary > *:first-child,
html body div.product .entry-summary > *:first-child{margin-top:0 !important;padding-top:0 !important}
html body div.product h1.product_title,
html body div.product .summary h1.product_title,
html body div.product .entry-summary h1.product_title{margin-top:0 !important;padding-top:0 !important}
/* Kill leading notice wrappers — they're almost always invisible but eat ~14px */
html body div.product .woocommerce-notices-wrapper:empty,
html body div.product .summary .woocommerce-notices-wrapper:empty,
html body div.product .entry-summary .woocommerce-notices-wrapper:empty{display:none !important;margin:0 !important;padding:0 !important;height:0 !important}

/* Hide WC's native quantity widget anywhere inside the cart form (covers
   variable products where it sits inside .woocommerce-variation-add-to-cart) */
.verum-wc-wrap form.cart div.quantity,
.verum-wc-wrap form.cart .woocommerce-variation-add-to-cart > .quantity,
.verum-wc-wrap form.variations_form div.quantity:not(.verum-pdp-qty){display:none !important}

/* PDP size dropdown — match the look + dimensions of the quantity pill */
.verum-wc-wrap div.product table.variations{border:0 !important;width:auto !important;margin:0 !important}
.verum-wc-wrap div.product table.variations tbody{display:flex;align-items:center;gap:18px}
.verum-wc-wrap div.product table.variations tr{display:contents}
.verum-wc-wrap div.product table.variations th.label{padding:0 !important;border:0 !important;background:none !important;width:auto !important}
.verum-wc-wrap div.product table.variations th.label label{font-family:var(--mono) !important;font-size:10px !important;letter-spacing:.22em !important;text-transform:uppercase !important;color:var(--ink-dim) !important;font-weight:500 !important;min-width:96px !important;display:inline-block;margin:0 !important}
.verum-wc-wrap div.product table.variations td.value{padding:0 !important;border:0 !important;background:none !important}

/* The select itself styled as a 36px pill — same WIDTH + HEIGHT as .verum-pdp-qty
   (qty = 32px btn + 48px input + 32px btn = 112px). */
.verum-wc-wrap div.product table.variations select{
  height:36px !important;line-height:1 !important;
  padding:0 28px 0 14px !important;
  font-family:var(--mono) !important;font-size:12px !important;font-weight:600 !important;
  letter-spacing:.14em !important;text-transform:uppercase !important;
  background:transparent !important;color:var(--ink) !important;
  border:1px solid var(--line-strong) !important;border-radius:999px !important;
  appearance:none !important;-webkit-appearance:none !important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23F4F1EA' stroke-width='1.5'><path d='M1 1.5l5 5 5-5'/></svg>") !important;
  background-repeat:no-repeat !important;background-position:right 12px center !important;background-size:10px !important;
  cursor:pointer !important;
  width:112px !important;min-width:112px !important;max-width:112px !important;
  box-sizing:border-box !important;text-align:center !important;text-align-last:center !important;
}
.verum-wc-wrap div.product table.variations select:focus{outline:none !important;border-color:var(--ink) !important}
.verum-wc-wrap div.product table.variations select option{background:#0a0a0a !important;color:var(--ink) !important;letter-spacing:0}

/* CoA panel — restored, but tightened to fit the minimalist PDP */
.verum-wc-wrap .verum-coa-panel{display:block !important;margin:40px 0 0 !important;padding:32px !important;border:1px solid var(--line) !important;border-radius:18px !important;background:rgba(244,241,234,.03) !important;grid-column:1 / -1 !important}
.verum-wc-wrap .verum-coa-title{font-family:var(--display) !important;font-weight:500 !important;font-size:24px !important;letter-spacing:-.01em !important;color:var(--ink) !important;margin:0 0 20px !important;padding:0 !important;border:0 !important;line-height:1.1}
.verum-wc-wrap .verum-coa-meta{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr)) !important;gap:18px 32px !important;margin:0 0 24px !important;padding:0 !important;list-style:none}
.verum-wc-wrap .verum-coa-meta > div{display:flex;flex-direction:column;gap:4px;padding:0 !important;border:0 !important}
.verum-wc-wrap .verum-coa-meta .k{font-family:var(--mono) !important;font-size:10px !important;letter-spacing:.22em !important;text-transform:uppercase !important;color:var(--ink-dim) !important;font-weight:500 !important}
.verum-wc-wrap .verum-coa-meta .v{font-family:var(--sans) !important;font-size:14px !important;color:var(--ink) !important;font-weight:500 !important;letter-spacing:0 !important;text-transform:none !important}
/* "VIEW COA" pill is dead — the Certificate of Analysis column is the link now.
   IMPORTANT: do NOT use href*="coa" selectors here — that catches the column link too. */
.verum-wc-wrap .verum-coa-download,
.verum-wc-wrap a.verum-coa-download,
.verum-coa-panel .verum-coa-download{display:none !important}
/* Make absolutely sure the column-link's children don't swallow the click. */
.verum-wc-wrap .verum-coa-col-link *{pointer-events:none}
.verum-wc-wrap .verum-coa-col-link{pointer-events:auto !important;cursor:pointer !important}

/* CoA meta: kill the parent theme's grid-line effect (light-gray bg with 1px gaps) */
.verum-wc-wrap .verum-coa-meta{background:transparent !important;border:0 !important;border-radius:0 !important;overflow:visible !important;gap:18px 36px !important}
.verum-wc-wrap .verum-coa-meta > div{background:transparent !important;padding:0 !important;border:0 !important}

/* "Lab Results" heading removed per request */
.verum-coa-panel .verum-coa-title,
.verum-wc-wrap .verum-coa-panel .verum-coa-title{display:none !important}

/* ===== Lab Results card (new structure) ===== */
.verum-wc-wrap .verum-coa-panel{background:transparent !important;border:0 !important;padding:0 !important;margin:40px 0 0 !important}
.verum-wc-wrap .verum-coa-title{font-family:var(--display) !important;font-weight:500 !important;font-size:28px !important;letter-spacing:-.01em !important;text-transform:none !important;color:var(--ink) !important;margin:0 0 18px !important}

.verum-wc-wrap .verum-coa-card{background:rgba(244,241,234,.03);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.verum-wc-wrap .verum-coa-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 28px;background:rgba(244,241,234,.04);border-bottom:1px solid var(--line)}
.verum-wc-wrap .verum-coa-head-l{display:flex;align-items:center;gap:14px}
.verum-wc-wrap .verum-coa-dot{width:10px;height:10px;border-radius:50%;background:#7fb37f;flex-shrink:0;box-shadow:0 0 0 4px rgba(127,179,127,.18)}
.verum-wc-wrap .verum-coa-lot{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.verum-wc-wrap .verum-coa-lot-num{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.02em;color:var(--ink)}
.verum-wc-wrap .verum-coa-pill{display:inline-flex;align-items:center;padding:3px 12px;border-radius:999px;background:rgba(127,179,127,.18);color:#a8d6a8;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;border:1px solid rgba(127,179,127,.35)}
.verum-wc-wrap .verum-coa-date{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-dim);margin-top:6px}
.verum-wc-wrap .verum-coa-purity{display:flex;align-items:center;gap:10px;color:var(--ink-dim)}
.verum-wc-wrap .verum-coa-purity-val{font-family:var(--display);font-weight:600;font-size:22px;color:var(--ink);letter-spacing:-.01em}

.verum-wc-wrap .verum-coa-body{display:grid;grid-template-columns:1fr 1fr;background:transparent}
.verum-wc-wrap .verum-coa-col{padding:24px 28px;display:flex;flex-direction:column;gap:18px;background:rgba(244,241,234,.025);position:relative}
.verum-wc-wrap .verum-coa-col + .verum-coa-col{border-left:1px solid var(--line)}
.verum-wc-wrap .verum-coa-col-head{display:flex;align-items:center;gap:14px}
.verum-wc-wrap .verum-coa-col-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:rgba(244,241,234,.08);color:var(--ink);flex-shrink:0}
.verum-wc-wrap .verum-coa-col-title{font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ink);letter-spacing:0}
.verum-wc-wrap .verum-coa-col-detail{display:flex;flex-direction:column;gap:4px;padding-top:18px;border-top:1px solid var(--line)}
.verum-wc-wrap .verum-coa-detail-label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);font-weight:500}
.verum-wc-wrap .verum-coa-detail-value{font-family:var(--sans);font-size:15px;color:var(--ink);font-weight:500;letter-spacing:0}
.verum-wc-wrap .verum-coa-col-detail-sub{padding-top:10px;border-top:0;margin-top:2px}
.verum-wc-wrap .verum-coa-col-detail-sub .verum-coa-detail-value{font-size:13px;color:var(--ink-dim);font-weight:400}

@media (max-width:720px){
  .verum-wc-wrap .verum-coa-body{grid-template-columns:1fr}
  .verum-wc-wrap .verum-coa-col + .verum-coa-col{border-left:0;border-top:1px solid var(--line)}
  .verum-wc-wrap .verum-coa-head{flex-wrap:wrap}
}

/* Make the CoA column a clickable card when a URL is set */
.verum-wc-wrap .verum-coa-col-link{text-decoration:none !important;color:inherit !important;cursor:pointer !important;transition:background .25s}
.verum-wc-wrap .verum-coa-col-link:hover{background:rgba(244,241,234,.06) !important}
.verum-wc-wrap .verum-coa-col-arrow{margin-left:auto;font-size:14px;color:var(--ink-dim);transition:color .25s,transform .25s;display:inline-block}
.verum-wc-wrap .verum-coa-col-link:hover .verum-coa-col-arrow{color:var(--ink);transform:translate(2px,-2px)}
.verum-wc-wrap .verum-coa-col-head{align-items:center !important}

/* Lock all 3 column heads to the SAME height so the divider line, the
   eyebrow label, and the value all sit at the same Y across columns. */
.verum-wc-wrap .verum-coa-col{display:flex !important;flex-direction:column !important;gap:18px !important}
.verum-wc-wrap .verum-coa-col-head{min-height:72px !important;align-items:center !important}
/* Same icon size in every column (col 1's link icon is 42px). */
.verum-wc-wrap .verum-coa-col .verum-coa-col-icon{width:42px !important;height:42px !important;border-radius:12px !important}

/* Three-column CoA body */
.verum-wc-wrap .verum-coa-body.verum-coa-body-3col{grid-template-columns:1fr 1fr 1fr !important}
@media (max-width:980px){
  .verum-wc-wrap .verum-coa-body.verum-coa-body-3col{grid-template-columns:1fr !important}
  .verum-wc-wrap .verum-coa-body-3col .verum-coa-col + .verum-coa-col{border-left:0 !important;border-top:1px solid var(--line) !important}
}

/* CoA "Certificate of Analysis" column upgraded to a real button-card */
.verum-wc-wrap .verum-coa-col-link{
  position:relative;
  background:linear-gradient(180deg,rgba(244,241,234,.05),rgba(244,241,234,.02)) !important;
  border-right:1px solid var(--line) !important;
  transition:background .3s,transform .3s,box-shadow .3s !important;
  isolation:isolate;
}
.verum-wc-wrap .verum-coa-col-link::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(244,241,234,.08),transparent 60%);
  opacity:0;transition:opacity .3s;pointer-events:none;z-index:0;
}
.verum-wc-wrap .verum-coa-col-link > *{position:relative;z-index:1}
.verum-wc-wrap .verum-coa-col-link:hover{
  background:linear-gradient(180deg,rgba(244,241,234,.12),rgba(244,241,234,.06)) !important;
  box-shadow:inset 0 0 0 1px var(--ink-dim);
}
.verum-wc-wrap .verum-coa-col-link:hover::before{opacity:1}
.verum-wc-wrap .verum-coa-col-link:hover .verum-coa-col-icon{background:var(--ink) !important;color:var(--bg) !important}
.verum-wc-wrap .verum-coa-col-link:hover .verum-coa-col-arrow{color:var(--ink);transform:translate(3px,-3px) scale(1.1)}

.verum-wc-wrap .verum-coa-col-link .verum-coa-col-icon{
  background:rgba(244,241,234,.12) !important;
  border:1px solid var(--line) !important;
  transition:background .3s,color .3s,border-color .3s !important;
  width:42px !important;height:42px !important;border-radius:12px !important;
}
.verum-wc-wrap .verum-coa-col-link .verum-coa-col-title{
  font-weight:600 !important;
  position:relative;
}
.verum-wc-wrap .verum-coa-col-link .verum-coa-col-arrow{
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:999px;
  border:1px solid var(--line-strong);
  font-size:11px;
  margin-left:auto;color:var(--ink-dim);
  transition:color .3s,transform .3s,border-color .3s,background .3s;
}
.verum-wc-wrap .verum-coa-col-link:hover .verum-coa-col-arrow{border-color:var(--ink);background:rgba(244,241,234,.06)}

/* "View PDF" subtle CTA label below the title */
.verum-wc-wrap .verum-coa-col-link .verum-coa-col-title::after{
  content:" \2192 View PDF";
  display:block;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--ink-dim);
  font-weight:500;
  margin-top:4px;
  transition:color .3s;
}
.verum-wc-wrap .verum-coa-col-link:hover .verum-coa-col-title::after{color:var(--ink)}

/* =========================================================
   13. WPLoyalty "earn points" banner — match dark aesthetic.
   Plugin sets the green styles INLINE on the element, so every
   property below uses !important to override.
   ========================================================= */
body .wlr-message-info,
body .wlr_points_rewards_earn_points,
body .wlr-message-info.wlr_points_rewards_earn_points,
body div.wlr-message-info{
  background:rgba(244,241,234,.03) !important;
  background-color:rgba(244,241,234,.03) !important;
  border:1px solid var(--line) !important;
  border-left:3px solid var(--ink) !important;
  color:var(--ink) !important;
  border-radius:10px !important;
  padding:14px 20px !important;
  margin:18px 0 !important;
  font-family:var(--sans) !important;
  font-size:14px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  line-height:1.5 !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
body .wlr-message-info *,
body .wlr_points_rewards_earn_points *{
  color:var(--ink) !important;
  background:transparent !important;
  font-family:inherit !important;
}
body .wlr-message-info a,
body .wlr_points_rewards_earn_points a{
  color:var(--ink) !important;
  text-decoration:underline !important;
  text-decoration-color:var(--ink-dim) !important;
  text-underline-offset:3px;
}
/* Star/icon — works whether plugin uses ::before, <img>, or <svg>. */
body .wlr-message-info::before,
body .wlr_points_rewards_earn_points::before{
  color:var(--ink) !important;
  background:transparent !important;
  filter:none !important;
  opacity:.85 !important;
}
body .wlr-message-info img,
body .wlr-message-info svg,
body .wlr_points_rewards_earn_points img,
body .wlr_points_rewards_earn_points svg{
  filter:brightness(0) invert(94%) sepia(11%) saturate(394%) hue-rotate(346deg) brightness(98%) contrast(94%) !important;
  opacity:.85 !important;
}

/* =========================================================
   14. "Added to cart" notice — stop icon from overlapping text
   ========================================================= */
body .woocommerce-message,
body .woocommerce-info,
body .woocommerce-error{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:14px 18px !important;
  position:relative !important;
}
/* Move the parent theme's absolutely-positioned ::before icon into the flow
   so it sits beside the text instead of on top of it. */
body .woocommerce-message::before,
body .woocommerce-info::before,
body .woocommerce-error::before{
  position:static !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;
  margin:0 !important;
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
/* The "View cart" link some themes render on the right — keep it tucked. */
body .woocommerce-message .button{margin-left:auto !important}

/* =========================================================
   15. Footer "VERUM" wordmark — Space Grotesk
   ========================================================= */
body footer .verum-logo,
body footer .footer-brand,
body footer .footer-logo,
body footer .site-title,
body footer .brand,
body footer .wordmark,
body footer h1, body footer h2, body footer h3,
body footer .verum-footer-brand,
body .footer .verum-logo,
body .site-footer .verum-logo,
body .site-footer .site-title,
body .site-footer .brand,
body .site-footer h1, body .site-footer h2,
body .footer-brand{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif !important;
  letter-spacing:-.01em !important;
}
/* Also target the inner text spans if the brand wraps text in nested elements. */
body footer .verum-logo *, body footer .brand *, body footer .site-title *,
body footer .wordmark *, body footer .footer-brand *, body .site-footer .brand *{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif !important;
}

/* =========================================================
   16. Home hero — stop the "y" / "p" descenders being clipped
   ========================================================= */
body .hero h1, body .hero h2, body .hero .hero-title, body .hero .hero-heading,
body .hero-wrap h1, body .hero-wrap h2, body .hero-wrap .hero-title,
body .hero .hero-rotator, body .hero .word-rotator,
body .hero h1 *, body .hero h2 *,
body .hero-wrap h1 *, body .hero-wrap h2 *{
  line-height:1.08 !important;
  padding-bottom:.08em !important;
  overflow:visible !important;
}
/* Specifically fix the word lines so descenders don't crash into the next row. */
body .hero h1 span, body .hero h2 span, body .hero-wrap h1 span, body .hero-wrap h2 span,
body .hero .hero-line, body .hero-wrap .hero-line{
  display:block !important;
  line-height:1.08 !important;
  padding-bottom:.06em !important;
  overflow:visible !important;
}

/* =========================================================
   17. Nav on tablet/phone — hamburger earlier, logo never wraps
   ========================================================= */
/* Keep the "VERUM LABS" wordmark on a single line at every viewport. */
nav.nav .logo,
nav.nav .logo span,
nav.nav a.logo,
nav.nav a.logo span{
  white-space:nowrap !important;
  flex-shrink:0 !important;
}
nav.nav .logo{display:inline-flex !important;align-items:center !important;gap:10px !important}

/* Below 1080px (laptops + tablets) the 5 nav links + account/cart no longer
   fit cleanly, so swap to the hamburger system the parent theme provides.
   We switch from grid to flex so .nav-right hugs the right edge cleanly
   (with grid + display:none on .navlinks, the right column collapses and
   .nav-right slides into the middle). */
@media (max-width:1080px){
  html body nav.nav{
    display:flex !important;
    grid-template-columns:none !important;
    justify-content:space-between !important;
    align-items:center !important;
    column-gap:12px !important;
  }
  nav.nav > .logo{justify-self:auto !important;margin-right:auto !important}
  nav.nav > .navlinks{display:none !important}
  nav.nav > .nav-right{justify-self:auto !important;margin-left:auto !important;display:inline-flex !important;align-items:center !important;gap:10px !important;flex-shrink:0 !important}
  nav.nav .verum-mobile-toggle{display:inline-flex !important}
}

/* On real phones (≤520px) tighten the logo so the row never overflows. */
@media (max-width:520px){
  html body nav.nav{padding-left:14px !important;padding-right:14px !important;column-gap:10px !important}
  nav.nav .logo span{font-size:14px !important;letter-spacing:.04em !important}
  nav.nav .logo img{width:22px !important;height:22px !important}
  nav.nav .nav-right{gap:8px !important}
  nav.nav .nav-right .account-btn{width:36px !important;height:36px !important}
}

/* =========================================================
   18. Phone-only — hide the hero "Research-grade polypeptides"
       eyebrow + the Purity/Testing/COA stat block above the
       "Precision. Purity. Proof." headline.
   ========================================================= */
@media (max-width:720px){
  body .hero .eyebrow,
  body .hero-wrap .eyebrow,
  body .hero .hero-meta,
  body .hero-wrap .hero-meta{display:none !important}
}

/* =========================================================
   19. Catalog/shop page — replace the filter sidebar with a
       single centered search bar.
   ========================================================= */
/* Hide the old toolbar (Hide Filters button) and filter aside. */
body .verum-shop-toolbar,
body .verum-filters{display:none !important}

/* Collapse the 2-column shop body into a single column. */
body .verum-shop-body{
  display:block !important;
  grid-template-columns:none !important;
}
body .verum-shop-grid{width:100% !important}

/* New centered search bar — matches the rounded pill ref but in cream-on-black. */
.verum-catalog-search{
  display:flex !important;
  justify-content:center !important;
  margin:8px auto 36px !important;
  padding:0 16px !important;
  width:100% !important;
}
.verum-catalog-search form{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  max-width:640px !important;
  background:rgba(244,241,234,.05) !important;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  padding:14px 22px !important;
  gap:14px !important;
  transition:border-color .25s ease, background .25s ease !important;
}
.verum-catalog-search form:focus-within{
  border-color:var(--ink-dim) !important;
  background:rgba(244,241,234,.07) !important;
}
.verum-catalog-search .vcs-icon{
  flex-shrink:0 !important;
  width:18px !important;
  height:18px !important;
  color:var(--ink-dim) !important;
  opacity:.7 !important;
}
.verum-catalog-search input[type="search"]{
  flex:1 1 auto !important;
  min-width:0 !important;
  background:transparent !important;
  border:0 !important;
  outline:none !important;
  box-shadow:none !important;
  color:var(--ink) !important;
  font-family:var(--sans), system-ui, sans-serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:.01em !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1.4 !important;
}
.verum-catalog-search input[type="search"]::placeholder{
  color:var(--ink-dim) !important;
  opacity:.65 !important;
}
.verum-catalog-search input[type="search"]::-webkit-search-cancel-button{
  -webkit-appearance:none;
  appearance:none;
}
.verum-catalog-search button{display:none !important}

@media (max-width:720px){
  .verum-catalog-search{margin:4px auto 24px !important}
  .verum-catalog-search form{padding:12px 18px !important}
  .verum-catalog-search input[type="search"]{font-size:14px !important}
}

/* =========================================================
   20. PDP image card — phone-only sizing fix.
       The desktop card uses padding:60px + aspect-ratio:1/1
       which on a phone produces a giant empty square with a
       small bottle in the middle. On phones we want the
       bottle to fill the card so the card sits visually
       between the title and the price with no dead space.
   ========================================================= */
@media (max-width:720px){
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__wrapper{
    aspect-ratio:auto !important;
    padding:14px !important;
    max-width:100% !important;
    width:100% !important;
    margin:0 auto !important;
  }
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__image,
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__image a{
    width:100% !important;
    display:block !important;
  }
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__image img{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
    max-height:none !important;
    display:block !important;
    margin:0 auto !important;
  }
  /* Tighten the gap above and below the image card so it sits
     centered between the title and price. The JS PDP-column
     aligner from Section 14 / alignPdpColumns() only runs on
     wider viewports, so we can safely zero any leftover
     translateY transform here. */
  html body .verum-wc-wrap div.product .woocommerce-product-gallery,
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__wrapper,
  html body .verum-wc-wrap div.product h1.product_title{
    transform:none !important;
  }
  html body .verum-wc-wrap div.product .woocommerce-product-gallery{
    margin:2px 0 4px !important;
  }
  /* Tighten title bottom-margin and price top-margin so the photo
     hugs the title above it and the price below it. */
  html body .verum-wc-wrap div.product h1.product_title,
  html body div.product h1.product_title,
  html body.single-product div.product h1.product_title{
    margin:0 0 4px !important;
  }
  html body .verum-wc-wrap div.product p.price,
  html body div.product p.price,
  html body.single-product div.product p.price{
    margin:4px 0 14px !important;
  }
  /* The card itself has padding above/below the bottle — keep horizontal
     padding but shrink vertical padding so the bottle fills more of the card. */
  html body .verum-wc-wrap div.product .woocommerce-product-gallery__wrapper{
    padding:6px 14px !important;
  }

  /* Center the peptide title, price, and quantity pill on phone. */
  html body .verum-wc-wrap div.product h1.product_title,
  html body div.product h1.product_title,
  html body.single-product div.product h1.product_title{
    text-align:center !important;
  }
  html body .verum-wc-wrap div.product p.price,
  html body div.product p.price,
  html body.single-product div.product p.price{
    text-align:center !important;
    display:block !important;
    width:100% !important;
  }
  /* === Size + Quantity rows ===
     Goal: PILLS centered on the page, LABELS ("SIZE" / "QUANTITY") sit just
     to the left of each pill, and the STARTS of the two labels are aligned
     on the same X axis.

     How: row is position:relative full-width. Pill centers via margin:0 auto.
     Label is absolutely positioned with left:calc(50% - 166px) (= 110px to
     the left of the pill's left edge), fixed width 96px, text-align:left
     so the first letter starts at exactly that X. Identical math for both
     rows ⇒ pill X identical AND label-start X identical. */

  /* --- size row --- */
  html body .verum-wc-wrap div.product table.variations,
  html body .verum-wc-wrap div.product table.variations tbody,
  html body .verum-wc-wrap div.product table.variations tr,
  html body .verum-wc-wrap div.product table.variations td.value{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:none !important;
  }
  html body .verum-wc-wrap div.product table.variations{
    margin:0 0 12px !important;
  }
  html body .verum-wc-wrap div.product table.variations tr{
    position:relative !important;
    min-height:36px !important;
  }
  html body .verum-wc-wrap div.product table.variations th.label{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    left:calc(50% - 166px) !important;
    width:96px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:none !important;
    text-align:left !important;
  }
  html body .verum-wc-wrap div.product table.variations th.label label{
    display:block !important;
    text-align:left !important;
    min-width:0 !important;
    width:auto !important;
    margin:0 !important;
  }
  html body .verum-wc-wrap div.product table.variations select{
    display:block !important;
    margin:0 auto !important;
  }

  /* --- qty row --- */
  html body .verum-pdp-row{
    position:relative !important;
    display:block !important;
    width:100% !important;
    min-height:36px !important;
    margin:0 0 12px !important;
    text-align:left !important;
  }
  html body .verum-pdp-row .verum-pdp-label{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    left:calc(50% - 166px) !important;
    width:96px !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
    min-width:0 !important;
  }
  html body .verum-pdp-qty{
    display:flex !important;
    margin:0 auto !important;
  }

  /* Stack the variation add-to-cart row so the qty pill sits on its own
     line above the Add to cart button. */
  html body .verum-wc-wrap div.product form.variations_form .woocommerce-variation-add-to-cart{
    display:block !important;
  }
}

/* =========================================================
   21. Phone-only — center the 3D molecule (#heroGL) within
   the hero background.

   The parent theme renders the molecule with
   `group.position.x = 4`, which on phone's tall/narrow
   viewport pushes the model almost entirely off the right
   edge of the canvas. We can't reach into the IIFE'd JS, so
   we widen the canvas (so the model is actually drawn into
   the framebuffer) and offset it so the molecule lands at
   ~horizontal center of the hero. We also re-center the
   radial gradient overlay to match.
   ========================================================= */
@media (max-width:1080px) and (orientation:portrait), (max-width:900px){
  /* Replace the heavy dark overlay with a very subtle bottom fade so the
     centered 3D molecule reads clearly behind the hero content. The original
     overlay used a 60% radial dim + linear dim that hid the molecule on phone.
     (The molecule itself is recentered by the camera shift in
     verum-overrides.js — see applyHeroCameraPatch.) */
  html body .hero .hero-gradient,
  html body .hero-gradient{
    background:
      linear-gradient(180deg, rgba(5,5,5,.45) 0%, transparent 22%, transparent 78%, rgba(5,5,5,.9) 100%) !important;
  }
}

/* =========================================================
   22. Affiliates page — injected via verum-overrides.js as a
   data-page="affiliates" SPA section. Uses the same dark
   cream-on-black palette and typographic scale as the other
   pages. Centered, single-column editorial layout.
   ========================================================= */
#page-affiliates .wrap{
  max-width:880px;
  margin:0 auto;
  padding:0 32px;
}

/* Hero */
#page-affiliates .verum-aff-hero{
  padding:90px 0 56px;
  text-align:center;
}
#page-affiliates .verum-aff-title{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif;
  font-weight:700;
  font-size:clamp(56px,10vw,124px);
  letter-spacing:-.03em;
  line-height:.95;
  color:var(--ink);
  margin:0 0 18px;
  text-transform:uppercase;
}
#page-affiliates .verum-aff-eyebrow{
  display:inline-block;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--ink-dim);
}

/* Numbered cards */
#page-affiliates .verum-aff-cards{
  padding:32px 0 64px;
}
#page-affiliates .verum-aff-card{
  text-align:center;
  padding:48px 0;
}
#page-affiliates .verum-aff-num{
  display:block;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.32em;
  color:var(--ink-dim);
  margin-bottom:18px;
}
#page-affiliates .verum-aff-card-title{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif;
  font-weight:700;
  font-size:clamp(22px,2.6vw,30px);
  letter-spacing:-.01em;
  color:var(--ink);
  margin:0 auto 18px;
  max-width:680px;
  line-height:1.2;
}
#page-affiliates .verum-aff-card-body{
  font-size:15px;
  line-height:1.7;
  color:var(--ink-dim);
  margin:0 auto;
  max-width:640px;
}
#page-affiliates .verum-aff-most-imp{
  text-align:center;
  font-family:var(--mono);
  font-size:13px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:#c8a55a;
  font-weight:600;
  padding:28px 0 0;
}
#page-affiliates .verum-aff-card-feature .verum-aff-num{
  color:#c8a55a;
}

/* Standards / Partner Criteria sections */
#page-affiliates .verum-aff-section{
  padding:64px 0;
  border-top:1px solid var(--line);
  text-align:center;
}
#page-affiliates .verum-aff-section-label{
  display:block;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--ink-dim);
  margin-bottom:32px;
}
#page-affiliates .verum-aff-intro{
  font-size:15px;
  line-height:1.7;
  color:var(--ink-dim);
  margin:0 auto 32px;
  max-width:640px;
}
#page-affiliates .verum-aff-list{
  list-style:none;
  padding:0;
  margin:0 auto;
  max-width:640px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
#page-affiliates .verum-aff-list li{
  font-size:15px;
  line-height:1.6;
  color:var(--ink);
  padding:0;
  text-align:center;
}
#page-affiliates .verum-aff-list li::before{
  content:"— ";
  color:var(--ink-dim);
}
#page-affiliates .verum-aff-list strong{
  color:var(--ink);
  font-weight:600;
}

/* Application form */
#page-affiliates .verum-aff-apply{
  padding:72px 0;
  border-top:1px solid var(--line);
  text-align:center;
}
#page-affiliates .verum-aff-apply-label{
  color:#c8a55a;
  margin-bottom:40px;
}
#page-affiliates .verum-aff-form{
  display:flex;
  flex-direction:column;
  gap:22px;
  max-width:560px;
  margin:0 auto;
  text-align:left;
}
#page-affiliates .verum-aff-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
#page-affiliates .verum-aff-field label{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--ink-dim);
  font-weight:500;
  line-height:1.5;
}
#page-affiliates .verum-aff-field input{
  width:100%;
  background:rgba(244,241,234,.04);
  border:1px solid var(--line);
  border-radius:10px;
  padding:14px 16px;
  color:var(--ink);
  font-family:var(--sans), system-ui, sans-serif;
  font-size:14px;
  letter-spacing:.01em;
  line-height:1.4;
  transition:border-color .25s, background .25s;
  box-sizing:border-box;
}
#page-affiliates .verum-aff-field input::placeholder{
  color:var(--ink-dim);
  opacity:.5;
}
#page-affiliates .verum-aff-field input:focus{
  outline:none;
  border-color:var(--ink-dim);
  background:rgba(244,241,234,.07);
}
#page-affiliates .verum-aff-field input:-webkit-autofill{
  -webkit-text-fill-color:var(--ink);
  -webkit-box-shadow:0 0 0 1000px rgba(244,241,234,.04) inset;
  caret-color:var(--ink);
}
#page-affiliates .verum-aff-submit{
  align-self:center;
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-weight:500;
  color:var(--bg);
  background:var(--ink);
  border:1px solid var(--ink);
  border-radius:999px;
  padding:14px 32px;
  cursor:pointer;
  transition:background .25s, color .25s, transform .25s, opacity .25s;
}
#page-affiliates .verum-aff-submit:hover:not(:disabled){
  background:transparent;
  color:var(--ink);
  transform:translateY(-1px);
}
#page-affiliates .verum-aff-submit:disabled{
  opacity:.5;
  cursor:wait;
}
#page-affiliates .verum-aff-form-msg{
  margin:18px 0 0;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-align:center;
  min-height:1.2em;
}
#page-affiliates .verum-aff-form-msg-success{
  color:#9ed5a4;
}
#page-affiliates .verum-aff-form-msg-error{
  color:#e89a8a;
}
/* Thank-you panel shown after a successful submission */
#page-affiliates .verum-aff-thanks{
  text-align:center;
  padding:32px 0;
  max-width:640px;
  margin:0 auto;
}
#page-affiliates .verum-aff-thanks .verum-aff-section-label{
  display:block;
  margin-bottom:36px;
}
#page-affiliates .verum-aff-thanks-title{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif;
  font-weight:700;
  font-size:clamp(28px,4vw,42px);
  letter-spacing:-.02em;
  line-height:1.15;
  color:var(--ink);
  margin:0 0 18px;
}
#page-affiliates .verum-aff-thanks-body{
  font-size:16px;
  line-height:1.7;
  color:var(--ink-dim);
  margin:0;
}
/* Legacy class kept in case any cached HTML still references it */
#page-affiliates .verum-aff-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-weight:500;
  color:var(--bg);
  background:var(--ink);
  border:1px solid var(--ink);
  border-radius:999px;
  padding:14px 30px;
  text-decoration:none;
  transition:background .25s, color .25s, transform .25s;
}
#page-affiliates .verum-aff-cta:hover{
  background:transparent;
  color:var(--ink);
  transform:translateY(-1px);
}

/* Signature block */
#page-affiliates .verum-aff-sig{
  padding:72px 0 96px;
  border-top:1px solid var(--line);
  text-align:center;
}
#page-affiliates .verum-aff-sig-mark{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif;
  font-weight:700;
  font-size:clamp(36px,6vw,64px);
  letter-spacing:.04em;
  color:var(--ink);
  margin:0 0 8px;
  text-transform:uppercase;
}
#page-affiliates .verum-aff-sig-tag{
  margin:0;
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.2em;
  color:var(--ink-dim);
}
#page-affiliates .verum-aff-sig-tag em{
  font-style:italic;
}

/* Mobile */
@media (max-width:720px){
  #page-affiliates .wrap{padding:0 22px}
  #page-affiliates .verum-aff-hero{padding:64px 0 42px}
  #page-affiliates .verum-aff-card{padding:36px 0}
  #page-affiliates .verum-aff-section,
  #page-affiliates .verum-aff-apply{padding:52px 0}
  #page-affiliates .verum-aff-sig{padding:56px 0 80px}
  #page-affiliates .verum-aff-card-title{font-size:20px}
  #page-affiliates .verum-aff-most-imp{font-size:11px;letter-spacing:.22em}
}

/* =========================================================
   23. Hide the FAQ page everywhere — nav links, mobile menu,
   footer link list, and the page section itself.
   (The JS in verum-overrides.js also redirects #faq → #home.)
   ========================================================= */
nav.nav .navlinks a[data-page-link="faq"],
.verum-mobile-menu-links a[data-page-link="faq"],
.verum-mobile-menu-links a[href*="#faq"],
.foot-col a[data-page-link="faq"],
.foot-col a[href*="#faq"],
[data-page="faq"]{
  display:none !important;
}

/* =========================================================
   24. Bundles page — keep Bacteriostatic Water available
   ONLY in the 10ML variant. The product is a single
   WooCommerce variable card; the JS handler (in
   verum-overrides.js → initBundleBuilder) forces the card
   back to variation_id 348 (10ML / $10) and removes any
   dose-switcher option labelled 30ML inside the card.
   ========================================================= */

/* =========================================================
   25. Bundles page hero — equalize vertical spacing between
   the four stacked elements (eyebrow, title, subtitle, stats).
   The parent theme used 24/32/36px which felt uneven; we set
   a uniform ~36px gap so the rhythm reads cleanly.
   ========================================================= */
body .verum-bundle-hero .eyebrow{margin-bottom:36px !important}
body .verum-bundle-hero h1{margin:0 0 36px !important}
body .verum-bundle-hero p{margin:0 auto 36px !important}
body .verum-bundle-hero .bundle-stats{margin-top:0 !important}
@media (max-width:720px){
  body .verum-bundle-hero .eyebrow,
  body .verum-bundle-hero h1,
  body .verum-bundle-hero p{margin-bottom:28px !important}
}

/* =========================================================
   28. Desktop ≥721px — place the Size pill row and the
   Quantity pill row side-by-side. JS (verum-overrides.js →
   pairSizeAndQtyRow) lifts .verum-pdp-row out of its
   variable-product wrapper so it sits as a sibling of
   table.variations; this CSS lays them out inline AND
   forces the tier widget below them as a full-width row.

   Selectors are intentionally specificity-matched to the
   parent theme's `form.cart:not(.variations_form) >
   table.variations { width:100% !important; flex:1 1 100% }`
   rule so our width:auto + flex:0 0 auto actually wins.
   ========================================================= */
@media (min-width:721px){
  html body .verum-wc-wrap div.product form.cart:not(.variations_form) > table.variations,
  html body .verum-wc-wrap div.product form.variations_form > table.variations,
  html body .verum-wc-wrap div.product form.cart > table.variations{
    display:inline-block !important;
    width:auto !important;
    max-width:none !important;
    flex:0 0 auto !important;
    margin:0 !important;
    vertical-align:middle !important;
  }
  html body .verum-wc-wrap div.product form.cart .verum-pdp-row,
  html body .verum-wc-wrap div.product form.variations_form .verum-pdp-row,
  html body .verum-pdp-row{
    display:inline-flex !important;
    width:auto !important;
    flex:0 0 auto !important;
    margin:0 0 0 28px !important;
    vertical-align:middle !important;
  }
  /* The Bundle & Save tier widget always claims the full row below the pills. */
  html body .verum-wc-wrap div.product form.cart .verum-pdp-tiers,
  html body .verum-wc-wrap div.product form.variations_form .verum-pdp-tiers,
  html body .verum-pdp-tiers{
    display:block !important;
    flex:1 1 100% !important;
    width:100% !important;
    margin:18px 0 22px !important;
    box-sizing:border-box !important;
  }
}

/* =========================================================
   27. PDP "Bundle & Save" quantity-tier widget (injected by
   verum-overrides.js → injectQtyTiers). Dark cream-on-black,
   rounded cards, mono labels, small black-vial SVGs. The
   selected tier is highlighted with the brand ink color.
   ========================================================= */
.verum-pdp-tiers{
  margin:18px 0 22px;
  padding:22px 20px 20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(244,241,234,.025);
}
.verum-pdp-tiers-label{
  display:block;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--ink-dim);
  margin-bottom:18px;
}
.verum-pdp-tiers-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.verum-pdp-tier{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:24px 14px 20px;
  min-height:96px;
  background:rgba(244,241,234,.03);
  border:1px solid var(--line);
  border-radius:14px;
  color:var(--ink);
  font-family:var(--sans), system-ui, sans-serif;
  cursor:pointer;
  transition:border-color .25s, background .25s, transform .15s;
  text-align:center;
  box-sizing:border-box;
}
.verum-pdp-tier:hover{
  border-color:var(--ink-dim);
  background:rgba(244,241,234,.06);
}
.verum-pdp-tier.is-selected{
  border-color:var(--ink) !important;
  background:rgba(244,241,234,.09) !important;
  box-shadow:inset 0 0 0 1px var(--ink);
}
.verum-pdp-tier .verum-tier-icons{
  display:inline-flex;
  align-items:flex-end;
  gap:6px;
  height:32px;
  margin-bottom:6px;
}
.verum-pdp-tier .verum-tier-vial{
  width:22px;
  height:30px;
  object-fit:contain;
  /* PNG is black-on-white; invert to render the silhouette pure white. */
  filter:invert(1) brightness(1.05);
  opacity:.85;
  transition:opacity .25s, transform .25s;
}
.verum-pdp-tier.is-selected .verum-tier-vial{
  opacity:1;
  transform:translateY(-1px);
}
.verum-pdp-tier .verum-tier-title{
  font-family:"Space Grotesk", var(--display), system-ui, sans-serif;
  font-weight:700;
  font-size:14px;
  letter-spacing:-.01em;
  color:var(--ink);
  line-height:1.1;
  margin-top:2px;
}
.verum-pdp-tier .verum-tier-sub{
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink-dim);
}
.verum-pdp-tier.is-selected .verum-tier-sub{
  color:var(--ink);
}
.verum-pdp-tier .verum-tier-badge{
  position:absolute;
  top:-10px;
  left:50%;
  transform:translateX(-50%);
  font-family:var(--mono);
  font-size:9px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:5px 12px;
  border-radius:999px;
  white-space:nowrap;
  background:var(--ink);
  color:var(--bg);
  border:1px solid var(--ink);
}
.verum-pdp-tier .verum-tier-badge-popular{
  background:#5b7a5b;
  border-color:#5b7a5b;
  color:#f4f1ea;
}
.verum-pdp-tier .verum-tier-badge-value{
  background:#c8a55a;
  border-color:#c8a55a;
  color:#1a1a1a;
}

@media (max-width:560px){
  .verum-pdp-tiers{padding:18px 14px 16px}
  .verum-pdp-tier{padding:20px 8px 14px}
  .verum-pdp-tier .verum-tier-title{font-size:13px}
  .verum-pdp-tier .verum-tier-sub{font-size:9px;letter-spacing:.14em}
  .verum-pdp-tier .verum-tier-badge{font-size:8px;padding:4px 8px}
}

/* =========================================================
   26. Hide the WooCommerce "SALE" badge on catalog listings.
   The badge is the small pill (top-right of each card)
   rendered by WC when a product has a sale price. Covers
   shop loop, product-category, and any wc-block grids.
   ========================================================= */
body .woocommerce ul.products li.product .onsale,
body .verum-wc-wrap ul.products li.product .onsale,
body ul.products li.product span.onsale,
body .woocommerce span.onsale,
body .wc-block-grid__product .onsale,
body .wp-block-woocommerce-product-image .onsale,
body .prod-card .onsale,
body .prod-card .sale-badge,
body .prod-card .sale,
body span.onsale{
  display:none !important;
}

/* =========================================================
   29. Hide the "Downloads" tab on the My Account dashboard.
   PHP filter unsets the menu item; this CSS is a belt-and-
   braces in case a custom template renders the link directly
   from a hard-coded HTML list.
   ========================================================= */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads,
.woocommerce-account .woocommerce-MyAccount-navigation a[href*="/downloads"]{
  display:none !important;
}

/* =========================================================
   30. Re-skin the WPLoyalty Points & Rewards dashboard so it
   matches the rest of the site (dark canvas, cream text and
   accents, Space Grotesk, dark elevated cards). Scoped to
   /my-account/loyalty_reward/ via the body class WC adds for
   the active My Account endpoint, plus the WPLoyalty wrapper
   classes (wlr_*). Selectors are intentionally broad — the
   plugin's exact markup varies by version, so each rule
   targets the canonical class AND a structural fallback.
   ========================================================= */
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account [id*="loyalty"],
.woocommerce-account [class*="loyalty"],
.woocommerce-account .wlr_my_account_warpper,
.woocommerce-account .wlr_my_account_section,
.woocommerce-account .wlr-my-account-wrapper{
  background:transparent !important;
  color:#e8e3d8 !important;
  font-family:"Space Grotesk", "Inter", system-ui, sans-serif !important;
}

/* Outer panel — kill the white background, swap for site-dark. */
.woocommerce-account .woocommerce-MyAccount-content > *:not(.woocommerce-MyAccount-navigation),
.woocommerce-account .wlr_my_account_warpper,
.woocommerce-account .wlr_my_account_section,
.woocommerce-account .wlr-my-account-wrapper{
  background:#0f0f0f !important;
  border:1px solid rgba(232,227,216,0.10) !important;
  border-radius:14px !important;
  padding:28px !important;
  box-shadow:none !important;
}

/* Section headings — "MY POINTS" / "MY REWARDS" etc. Keep the
   left vertical accent bar but switch it (and the label) to
   cream so it reads against the dark canvas. */
.woocommerce-account .wlr_section_title,
.woocommerce-account .wlr_my_account_section h2,
.woocommerce-account .wlr_my_account_section h3,
.woocommerce-account [class*="loyalty"] h2,
.woocommerce-account [class*="loyalty"] h3,
.woocommerce-account .wlr-section-title{
  color:#e8e3d8 !important;
  font-family:"Space Grotesk", "Inter", system-ui, sans-serif !important;
  font-weight:600 !important;
  letter-spacing:0.08em !important;
  text-transform:uppercase !important;
  font-size:13px !important;
  border-left:3px solid #e8e3d8 !important;
  padding-left:10px !important;
  margin:0 0 16px !important;
}

/* Point cards (Available points / Redeemed points / Used rewards). */
.woocommerce-account .wlr_my_points_card,
.woocommerce-account .wlr_points_box,
.woocommerce-account .wlr_card,
.woocommerce-account .wlr_points_card,
.woocommerce-account .wlr-card,
.woocommerce-account [class*="loyalty"] .wlr_points,
.woocommerce-account [class*="points-card"],
.woocommerce-account [class*="loyalty_card"]{
  background:#161616 !important;
  border:1px solid rgba(232,227,216,0.12) !important;
  border-radius:12px !important;
  color:#e8e3d8 !important;
  padding:20px !important;
  box-shadow:none !important;
}

/* Point card numbers — make them prominent. */
.woocommerce-account .wlr_my_points_card .wlr_points_value,
.woocommerce-account .wlr_my_points_card strong,
.woocommerce-account .wlr_card .wlr_count,
.woocommerce-account .wlr-points-count,
.woocommerce-account [class*="points-card"] strong{
  color:#e8e3d8 !important;
  font-family:"Space Grotesk", sans-serif !important;
  font-weight:700 !important;
  font-size:26px !important;
}

/* Point card labels — softer cream. */
.woocommerce-account .wlr_my_points_card .wlr_points_label,
.woocommerce-account .wlr_card .wlr_card_title,
.woocommerce-account [class*="points-card"] span,
.woocommerce-account [class*="points-card"] p{
  color:rgba(232,227,216,0.65) !important;
  font-size:13px !important;
  letter-spacing:0.04em !important;
}

/* WPLoyalty icons render as dark SVGs or inline images — invert
   so they read on dark backgrounds. */
.woocommerce-account .wlr_my_account_section svg,
.woocommerce-account .wlr_my_account_section img.wlr_icon,
.woocommerce-account .wlr_card svg,
.woocommerce-account [class*="loyalty"] .wlr_icon,
.woocommerce-account [class*="points-card"] svg,
.woocommerce-account [class*="points-card"] img,
.woocommerce-account [class*="ways-to-earn"] svg,
.woocommerce-account [class*="ways-to-earn"] img,
.woocommerce-account .wlr_empty_state svg,
.woocommerce-account .wlr_empty_state img,
.woocommerce-account .wlr-empty-state svg,
.woocommerce-account .wlr-empty-state img{
  filter:invert(1) brightness(0.92) !important;
}

/* Rewards / Coupons / Used & Expired Coupons tab strip. */
.woocommerce-account .wlr_rewards_tabs,
.woocommerce-account .wlr_tab_list,
.woocommerce-account .wlr-tabs,
.woocommerce-account [class*="reward-tabs"]{
  border-bottom:1px solid rgba(232,227,216,0.12) !important;
  margin-bottom:18px !important;
}
.woocommerce-account .wlr_rewards_tabs a,
.woocommerce-account .wlr_tab_list a,
.woocommerce-account .wlr-tabs a,
.woocommerce-account .wlr_tab_item,
.woocommerce-account [class*="reward-tabs"] a,
.woocommerce-account [class*="reward-tabs"] button{
  color:rgba(232,227,216,0.6) !important;
  background:transparent !important;
  border:none !important;
  padding:10px 16px !important;
  font-size:13px !important;
  letter-spacing:0.04em !important;
  text-transform:uppercase !important;
  font-family:"Space Grotesk", sans-serif !important;
}
.woocommerce-account .wlr_rewards_tabs a.active,
.woocommerce-account .wlr_rewards_tabs a.wlr_active,
.woocommerce-account .wlr_tab_list a.active,
.woocommerce-account .wlr-tabs a.active,
.woocommerce-account [class*="reward-tabs"] .active,
.woocommerce-account [class*="reward-tabs"] [aria-selected="true"]{
  color:#e8e3d8 !important;
  border-bottom:2px solid #e8e3d8 !important;
}

/* Empty state ("Begin Your Rewards Journey!"). */
.woocommerce-account .wlr_empty_state,
.woocommerce-account .wlr-empty-state,
.woocommerce-account [class*="empty-state"]{
  background:#161616 !important;
  border:1px dashed rgba(232,227,216,0.15) !important;
  border-radius:12px !important;
  color:#e8e3d8 !important;
  padding:28px !important;
  text-align:center !important;
}
.woocommerce-account .wlr_empty_state h3,
.woocommerce-account .wlr_empty_state h4,
.woocommerce-account .wlr-empty-state h3,
.woocommerce-account [class*="empty-state"] h3,
.woocommerce-account [class*="empty-state"] h4{
  color:#e8e3d8 !important;
  font-family:"Space Grotesk", sans-serif !important;
  font-weight:600 !important;
  margin:10px 0 6px !important;
}
.woocommerce-account .wlr_empty_state p,
.woocommerce-account .wlr-empty-state p,
.woocommerce-account [class*="empty-state"] p{
  color:rgba(232,227,216,0.65) !important;
  font-size:13px !important;
}

/* "Ways to earn rewards" cards (Point For Purchase, etc.). */
.woocommerce-account .wlr_ways_to_earn_card,
.woocommerce-account .wlr_earn_card,
.woocommerce-account .wlr-earn-card,
.woocommerce-account [class*="ways-to-earn"] .wlr_card,
.woocommerce-account [class*="earn-card"]{
  background:#161616 !important;
  border:1px solid rgba(232,227,216,0.12) !important;
  border-radius:12px !important;
  color:#e8e3d8 !important;
  padding:18px !important;
}
.woocommerce-account [class*="earn-card"] h3,
.woocommerce-account [class*="earn-card"] h4,
.woocommerce-account .wlr_earn_card .wlr_title{
  color:#e8e3d8 !important;
  font-family:"Space Grotesk", sans-serif !important;
  font-weight:600 !important;
  font-size:14px !important;
  margin:6px 0 !important;
}
.woocommerce-account [class*="earn-card"] p,
.woocommerce-account [class*="earn-card"] span,
.woocommerce-account .wlr_earn_card p{
  color:rgba(232,227,216,0.65) !important;
  font-size:12px !important;
}

/* Currency dropdown (USD) — keep the existing dark pill look
   but ensure the chevron is cream and there's no white outline. */
.woocommerce-account .wlr_currency_dropdown,
.woocommerce-account .wlr_select,
.woocommerce-account select[class*="wlr"]{
  background:#1a1a1a !important;
  color:#e8e3d8 !important;
  border:1px solid rgba(232,227,216,0.15) !important;
  border-radius:8px !important;
  padding:6px 10px !important;
  font-family:"Space Grotesk", sans-serif !important;
}

/* Notification preference checkbox row. */
.woocommerce-account .wlr_notification_preference,
.woocommerce-account [class*="notification-preference"]{
  background:#161616 !important;
  border:1px solid rgba(232,227,216,0.12) !important;
  border-radius:12px !important;
  padding:14px 18px !important;
  color:#e8e3d8 !important;
  font-size:12px !important;
  letter-spacing:0.06em !important;
}
.woocommerce-account .wlr_notification_preference input[type="checkbox"],
.woocommerce-account [class*="notification-preference"] input[type="checkbox"]{
  accent-color:#e8e3d8 !important;
}

/* Primary action buttons (Redeem / Apply / Claim) — match the
   site's dark pill CTA style. */
.woocommerce-account .wlr_btn,
.woocommerce-account .wlr-btn,
.woocommerce-account .wlr_button,
.woocommerce-account button[class*="wlr"],
.woocommerce-account a[class*="wlr-btn"]{
  background:#e8e3d8 !important;
  color:#0a0a0a !important;
  border:none !important;
  border-radius:999px !important;
  padding:10px 22px !important;
  font-family:"Space Grotesk", sans-serif !important;
  font-weight:600 !important;
  font-size:12px !important;
  letter-spacing:0.08em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
}
.woocommerce-account .wlr_btn:hover,
.woocommerce-account .wlr-btn:hover,
.woocommerce-account button[class*="wlr"]:hover{
  background:#f5f1e8 !important;
}

/* Catch-all: the plugin sets dark inline text colors on every
   inner element. Force them all to cream with a high-specificity
   universal selector scoped to the loyalty endpoint only. */
body.woocommerce-account .woocommerce-MyAccount-content *,
body.woocommerce-account [class*="loyalty"] *,
body.woocommerce-account [id*="loyalty"] *,
body.woocommerce-account .wlr_my_account_warpper *,
body.woocommerce-account .wlr_my_account_section *,
body.woocommerce-account .wlr-my-account-wrapper *{
  color:#e8e3d8 !important;
}

/* Scope: only the loyalty endpoint. Add a body-level guard so
   the above universal rule doesn't bleed into the Dashboard /
   Orders / Addresses tabs (those use the same MyAccount-content
   wrapper). The .woocommerce-account body class is added on
   every My Account page, so we tighten using the loyalty-only
   body classes WP adds when that endpoint is active. */
body.woocommerce-account:not(.woocommerce-edit-account):not(.woocommerce-view-order):not(.woocommerce-orders):not(.woocommerce-edit-address):not(.woocommerce-dashboard) .woocommerce-MyAccount-content *{
  color:#e8e3d8 !important;
}

/* Brighter icons — the previous brightness(0.92) was leaving
   them too dim against the dark canvas. */
body.woocommerce-account .woocommerce-MyAccount-content svg,
body.woocommerce-account .woocommerce-MyAccount-content img:not(.wp-post-image):not(.attachment-woocommerce_thumbnail),
body.woocommerce-account [class*="loyalty"] svg,
body.woocommerce-account [class*="loyalty"] img{
  filter:invert(0.92) sepia(0.05) saturate(0.3) brightness(1.05) !important;
  opacity:0.95 !important;
}

/* Make the big point numbers and section labels pop. */
body.woocommerce-account .woocommerce-MyAccount-content h1,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-MyAccount-content h4,
body.woocommerce-account .woocommerce-MyAccount-content strong,
body.woocommerce-account .woocommerce-MyAccount-content b{
  color:#f5f1e8 !important;
  opacity:1 !important;
}

/* Re-soften secondary copy without losing readability. */
body.woocommerce-account .woocommerce-MyAccount-content small,
body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content span:not(strong):not(b){
  color:rgba(232,227,216,0.78) !important;
}





/* Home quality strip: 4th tile = live same-day-shipping countdown.
   Parent stacks the strip to 1 column at <=900px; only widen to 4 columns
   above that. The same-day timer uses tabular figures so it doesn't jitter. */
@media (min-width: 901px) {
	.quality-strip { grid-template-columns: repeat(4, 1fr) !important; }
}
.qs-num.verum-shipclock {
	font-size: clamp(32px, 3.4vw, 54px);
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.01em;
	white-space: nowrap;
}

/* Bundle hero: parent-theme background molecule (same widget as the About
   hero, data-mol="bpc") sits behind the content, and the hero content gets an
   even vertical rhythm (equal gaps between eyebrow / heading / copy / stats). */
.verum-bundle-hero { position: relative; }
body.verum-on-bundles .verum-bundle-hero,
.verum-bundle-hero { padding: 48px 16px 8px !important; margin: 0 auto 56px !important; }
body.verum-on-bundles .verum-bundle-hero .eyebrow,
.verum-bundle-hero .eyebrow { margin: 0 0 40px !important; }
body.verum-on-bundles .verum-bundle-hero h1,
.verum-bundle-hero h1 { margin: 0 0 40px !important; }
body.verum-on-bundles .verum-bundle-hero p,
.verum-bundle-hero p { margin: 0 auto 40px !important; max-width: 540px; }
body.verum-on-bundles .verum-bundle-hero .bundle-stats,
.verum-bundle-hero .bundle-stats { margin: 0 !important; padding: 0 !important; }
body.verum-on-bundles .verum-bundle-hero .bundle-stat,
.verum-bundle-hero .bundle-stat { padding-bottom: 0 !important; }
