/**
 * Theme Name: Rey Child
 * Theme URI: http://reytheme.com/
 * Description: This is a child theme of Rey.
 * Author: Marius H.
 * Author URI:  https://twitter.com/mariushoria
 * Template: rey
 * Version: 1.1.7
 * License: General Public License
 * License URI: http://www.gnu.org/licenses/gpl.html
 * Text Domain: rey-child
 */

/* ============================================================
   BOLT PEPTIDE — Brand theming over Rey
   Layout mirrors evolvepeptides.com; colors = Bolt brand kit
   Navy #152238 (dark anchor) · Brand blue #0F60D3 · Accent blue #4888DD · Glow #95BBEA
   ============================================================ */

/* ---- Rey color variables remapped to Bolt palette ---- */
:root,
body {
  --accent-color: #152238 !important;
  --accent-color-rgb: 21, 34, 56 !important;
  --body-color: #4A5560 !important;
  --heading-color: #152238 !important;
  --link-color: #152238 !important;
  --border-color: #E6E8EC !important;
  --rey-accentColor: #152238 !important;

  /* Bolt brand tokens */
  --bolt-navy: #152238;
  --bolt-navy-2: #1F2E48;
  /* Brand blue rebrand (2026-06-19): legacy "mint" -> accent blue, "blue" -> main brand blue */
  --bolt-mint: #4888DD;
  --bolt-blue: #0F60D3;
  --bolt-glow: #95BBEA;
  --bolt-gray-bg: #F6F7F9;
  --bolt-surface: #1F2937;
}

/* ---- Typography: Space Grotesk (headings) + Inter (body) ---- */
body,
.rey-pageContent,
button, input, select, textarea,
.woocommerce-page {
  font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
  color: #4A5560;
}

h1, h2, h3, h4, h5, h6,
.rey-siteTitle, .elementor-heading-title,
.product_title, .woocommerce-loop-product__title,
.entry-title, .rey-postTitle {
  font-family: 'Space Grotesk', system-ui, sans-serif !important;
  color: #152238 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em;
}

/* ---- Links ---- */
a { color: #152238; }
a:hover { color: var(--bolt-blue); }

/* ---- Buttons: navy pill (evolve-style), mint not used for bg ---- */
.button, .btn, button.button, input[type="submit"],
.woocommerce a.button, .woocommerce button.button,
.woocommerce #respond input#submit, .added_to_cart,
.rey-addToCart, .single_add_to_cart_button {
  background-color: #152238 !important;
  color: #ffffff !important;
  border-color: #152238 !important;
  border-radius: 9999px !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
  transition: background-color .28s cubic-bezier(.2,.7,.3,1), border-color .28s cubic-bezier(.2,.7,.3,1), box-shadow .28s cubic-bezier(.2,.7,.3,1), transform .28s cubic-bezier(.2,.7,.3,1) !important;
  will-change: transform;
}
/* CTA hover — V2: brand blue + soft glow lift (matches #95BBEA glow token) */
.button:hover, .btn:hover, button.button:hover, input[type="submit"]:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce #respond input#submit:hover, .rey-addToCart:hover,
.single_add_to_cart_button:hover {
  background-color: #0F60D3 !important;
  border-color: #0F60D3 !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 22px -6px rgba(15,96,211,.5) !important;
}
.button:active, .btn:active, .woocommerce a.button:active,
.woocommerce button.button:active, .single_add_to_cart_button:active {
  transform: translateY(0) !important;
  box-shadow: 0 4px 10px -4px rgba(15,96,211,.5) !important;
}
@media (prefers-reduced-motion: reduce){
  .button, .btn, .woocommerce a.button, .woocommerce button.button, .single_add_to_cart_button, .elementor-button { transition: background-color .2s ease, box-shadow .2s ease !important; }
  .button:hover, .btn:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .single_add_to_cart_button:hover, .elementor-button:hover { transform: none !important; }
}

/* Outline button variant */
.button.is-outline, .btn--outline {
  background: transparent !important;
  color: #152238 !important;
  border: 1.5px solid #152238 !important;
}
.button.is-outline:hover { background: #152238 !important; color: #fff !important; }

/* ---- Sale / Save badges → mint accent ---- */
.woocommerce span.onsale,
.rey-saleBadge, .price del + ins,
.rey-productLabel--sale {
  background-color: var(--bolt-mint) !important;
  color: #ffffff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  border: none !important;
}

/* ---- Prices ---- */
.price, .woocommerce-Price-amount, .amount {
  color: #152238 !important;
  font-weight: 700 !important;
}
.price del, del .woocommerce-Price-amount { color: #9AA1AB !important; font-weight: 400 !important; }
.price ins, ins .woocommerce-Price-amount { color: #152238 !important; }

/* ---- Product cards (shop / best sellers) ---- */
.product-element-bottom, .rey-productInner {
  text-align: left;
}
ul.products li.product .woocommerce-loop-product__title {
  font-size: 16px !important;
  font-weight: 700 !important;
}

/* ---- Header (Rey) ---- */
.rey-siteHeader, #masthead {
  background: #ffffff !important;
  border-bottom: 1px solid #EDEEF1;
}
.rey-headerMenu a, .rey-mainMenu a {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 500 !important;
  color: #152238 !important;
}
.rey-headerMenu a:hover { color: var(--bolt-blue) !important; }

/* ---- Announcement / Topbar ---- */
.bolt-topbar {
  background: linear-gradient(90deg, #152238 0%, #1F2E48 100%);
  color: rgba(255,255,255,0.92);
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  letter-spacing: 0.02em;
  text-align: center;
  padding: 9px 16px;
  overflow: hidden;
  white-space: nowrap;
}
.bolt-topbar strong { color: var(--bolt-mint); font-weight: 600; }
.bolt-topbar .bolt-topbar__track {
  display: inline-block;
  animation: bolt-ticker 28s linear infinite;
}
.bolt-topbar .bolt-topbar__track span { margin: 0 28px; }
@keyframes bolt-ticker {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Secondary info bar (email / shipping / social) */
.bolt-infobar {
  background: #1F2E48;
  color: rgba(255,255,255,0.85);
  font-size: 13px;
  font-family: 'Inter', sans-serif;
}
.bolt-infobar a { color: rgba(255,255,255,0.85); }
.bolt-infobar a:hover { color: var(--bolt-mint); }

/* ---- Dark sections (affiliate CTA, newsletter, footer) ---- */
.bolt-section-dark {
  background: #152238 !important; /* solid navy — renders reliably (gradient dropped in tall full-page captures) */
  color: #fff !important;
}
.bolt-section-dark h1, .bolt-section-dark h2, .bolt-section-dark h3 {
  color: #fff !important;
}
.bolt-accent-mint { color: var(--bolt-mint) !important; }

/* ---- Footer ---- */
.rey-siteFooter, #colophon {
  background: #152238 !important;
  color: rgba(255,255,255,0.75) !important;
}
.rey-siteFooter a, #colophon a { color: rgba(255,255,255,0.7) !important; }
.rey-siteFooter a:hover, #colophon a:hover { color: var(--bolt-mint) !important; }
.rey-siteFooter h1, .rey-siteFooter h2, .rey-siteFooter h3,
.rey-siteFooter h4, .rey-siteFooter h5 { color: #fff !important; }

/* ---- Section bg helpers ---- */
.bolt-bg-gray { background: var(--bolt-gray-bg) !important; }

/* ---- Trust-icon accents ---- */
.bolt-trust-icon { color: var(--bolt-navy); }

/* ---- Misc polish ---- */
::selection { background: var(--bolt-mint); color: #ffffff; }

/* Elementor CTA buttons — unify hover with site CTAs: brand blue + soft glow lift */
.elementor-button { transition: background-color .28s cubic-bezier(.2,.7,.3,1), box-shadow .28s cubic-bezier(.2,.7,.3,1), transform .28s cubic-bezier(.2,.7,.3,1) !important; will-change: transform; }
.elementor-widget-button .elementor-button:hover,
.elementor-button:hover {
  background-color: #0F60D3 !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px -6px rgba(15,96,211,.5);
}
.elementor-button:active { transform: translateY(0); box-shadow: 0 4px 10px -4px rgba(15,96,211,.5); }
/* Affiliate heading mint accent helper */
.bolt-mint-word { color: var(--bolt-mint) !important; }

/* ================================================================
   BOLT PEPTIDE — Refinement pass v1.0.3
   Cart transparency · product image · button alignment ·
   user-friendly spec tables · compact spacing · polish
   ================================================================ */

/* ---- Header cart: transparent background, navy icon, mint count ---- */
.rey-headerCart,
.rey-headerIcon,
.rey-headerIcon.menu-cart,
.menu-cart .rey-headerIcon,
.rey-headerCart .rey-headerIcon {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.rey-headerCart svg,
.rey-headerIcon svg,
.rey-headerCart .rey-icon { color: var(--bolt-navy) !important; fill: var(--bolt-navy) !important; }
.rey-headerCart-count,
.rey-cartCount,
.rey-headerCart .count,
.cart-contents-count {
  background: #0F60D3 !important;
  color: #ffffff !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
}

/* ---- Header icon hovers (search / cart / account) — refined to match brand ----
   Kill Rey's heavy filled-box hover; instead icon smoothly tints brand blue
   with a subtle scale, plus a soft circular glow. */
.rey-headerIcon-btn, .rey-headerCart, .js-rey-headerCart,
.rey-headerAccount-btn, .js-rey-headerAccount, .js-rey-headerSearch,
.rey-headerSearch-btn, .rey-headerSearch .rey-headerIcon-btn {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 50% !important;
  transition: color .25s ease, background-color .25s ease, transform .25s cubic-bezier(.2,.7,.3,1) !important;
}
.rey-headerIcon-btn:hover, .rey-headerCart:hover, .js-rey-headerCart:hover,
.rey-headerAccount-btn:hover, .js-rey-headerAccount:hover, .js-rey-headerSearch:hover,
.rey-headerSearch-btn:hover, .rey-headerIcon:hover .rey-headerIcon-btn {
  background: rgba(15,96,211,.10) !important;   /* soft brand-blue wash, not a hard box */
  box-shadow: none !important;
  transform: translateY(-1px) !important;
}
.rey-headerIcon-btn:hover svg, .rey-headerIcon-btn:hover .rey-icon, .rey-headerIcon-btn:hover .__icon,
.rey-headerCart:hover svg, .js-rey-headerCart:hover svg, .rey-headerCart:hover .rey-icon,
.rey-headerAccount-btn:hover svg, .rey-headerAccount-btn:hover .rey-icon,
.js-rey-headerSearch:hover svg, .js-rey-headerSearch:hover .rey-icon {
  color: #0F60D3 !important; fill: #0F60D3 !important;
}

/* ---- Single product: gallery image smaller + centered + proportional ---- */
.single-product div.product .woocommerce-product-gallery {
  max-width: 420px !important;
  width: 100% !important;
  margin: 0 auto !important;
  float: none !important;
}
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image { text-align: center !important; }
.single-product .woocommerce-product-gallery__image img {
  max-width: 420px !important;
  width: auto !important;
  margin: 0 auto !important;
  border-radius: 16px !important;
}
/* rebalance the 2-column product layout: gallery narrower, summary roomier */
.single-product div.product > .rey-productGallery,
.single-product div.product .product-gallery-wrapper { flex: 0 0 42% !important; max-width: 42% !important; }
.single-product div.product .summary.entry-summary { flex: 0 0 54% !important; max-width: 54% !important; }

/* ---- Add-to-cart area (Rey markup) — clear 2-row hierarchy ----
   form.cart > .rey-cartBtnQty (qty + ADD TO CART)  +  .rey-wishlistBtn-wrapper */
.single-product form.cart {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
  margin: 24px 0 20px !important;
}
/* Row 1: qty + ADD TO CART fill the width; ADD TO CART grows = the main action */
.single-product form.cart .rey-cartBtnQty {
  width: 100% !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 14px !important;
}
.single-product .rey-cartBtnQty .quantity,
.single-product .rey-cartBtnQty .rey-qtyField { flex: 0 0 auto !important; margin: 0 !important; }
.single-product .rey-qtyField, .single-product .quantity {
  height: 54px !important; border-radius: 9999px !important; overflow: hidden !important;
}
.single-product .quantity input.qty {
  height: 54px !important; width: 88px !important; text-align: center !important; font-weight: 600 !important;
}
.single-product .single_add_to_cart_button,
.single-product .rey-ajaxCartReplace-btn {
  flex: 1 1 auto !important;
  height: 54px !important;
  padding: 0 36px !important;
  font-size: 15px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* Row 2: wishlist as a secondary pill, auto width, never clipped */
.single-product .rey-wishlistBtn-wrapper {
  flex: 0 0 auto !important;
  margin-top: 2px !important;
}
.single-product .rey-wishlistBtn,
.single-product .rey-wishlistBtn.btn {
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  padding: 0 24px !important;
  background: transparent !important;
  color: #5A6577 !important;
  border: 1.5px solid #D5DAE3 !important;
  border-radius: 9999px !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color .25s ease, border-color .25s ease, background-color .25s ease, transform .25s cubic-bezier(.2,.7,.3,1) !important;
}
.single-product .rey-wishlistBtn span,
.single-product .rey-wishlistBtn .rey-wishlistBtn-text { color: inherit !important; background: transparent !important; }
.single-product .rey-wishlistBtn svg,
.single-product .rey-wishlistBtn .rey-icon { width: 16px !important; height: 16px !important; color: inherit !important; fill: none !important; }
.single-product .rey-wishlistBtn:hover {
  background: #F0F5FE !important; color: #0F60D3 !important; border-color: #0F60D3 !important;
  transform: translateY(-1px) !important;
}
.single-product .rey-wishlistBtn:hover svg, .single-product .rey-wishlistBtn:hover .rey-icon { color: #0F60D3 !important; }

/* ---- Description & Specifications: user-friendly, full-width, styled ---- */
.single-product .rey-wc-pageWrapper .woocommerce-tabs,
.single-product .rey-productExtraContent { width: 100% !important; }
.single-product .woocommerce-Tabs-panel,
.single-product #tab-description,
.single-product .woocommerce-product-details__short-description { font-size: 15.5px !important; line-height: 1.75 !important; color: #3F4853 !important; }
.single-product .woocommerce-Tabs-panel h2,
.single-product .rey-productSection-title,
.single-product .woocommerce-tabs h2 {
  font-family: 'Space Grotesk', sans-serif !important;
  color: var(--bolt-navy) !important;
  font-size: 24px !important;
  margin-bottom: 14px !important;
}
/* Spec tables inside descriptions -> clean striped table */
.single-product .product table,
.single-product .woocommerce-Tabs-panel table,
.single-product #tab-description table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 18px 0 !important;
  font-size: 14.5px !important;
  border: 1px solid #E6E8EC !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
.single-product .product table th,
.single-product .product table td,
.single-product .woocommerce-Tabs-panel table th,
.single-product .woocommerce-Tabs-panel table td {
  text-align: left !important;
  padding: 13px 18px !important;
  border: none !important;
  border-bottom: 1px solid #EDEFF2 !important;
  vertical-align: top !important;
}
.single-product .product table th,
.single-product .woocommerce-Tabs-panel table th {
  background: #F6F7F9 !important;
  color: var(--bolt-navy) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  width: 36% !important;
  white-space: nowrap !important;
}
.single-product .product table tr:last-child th,
.single-product .product table tr:last-child td { border-bottom: none !important; }
.single-product .product table tr:nth-child(even) td { background: #FBFCFD !important; }

/* ---- Product title + price polish ---- */
.single-product .product_title { font-size: clamp(1.8rem, 2.6vw, 2.3rem) !important; margin-bottom: 8px !important; }
.single-product .price .woocommerce-Price-amount { font-size: 1.5rem !important; }
.single-product .stock.in-stock { color: #0a875a !important; font-weight: 600 !important; }

/* ---- COMPACT spacing: trim oversized vertical padding on top-level sections ---- */
body.home .e-con.e-parent { padding-top: 54px !important; padding-bottom: 54px !important; }
body.home .e-con.e-parent:first-child { padding-top: 44px !important; padding-bottom: 44px !important; } /* hero */
.elementor-widget-wrap, .e-con-inner { row-gap: 0 !important; }

/* Hero right image card: center vial vertically, cap height, no huge empty space */
body.home .e-con.e-parent:first-child .elementor-widget-image { align-self: center !important; }
body.home .e-con.e-parent:first-child img { max-height: 360px !important; width: auto !important; object-fit: contain !important; }

/* ---- Shop: tidy NEW badge to mint, compact result bar ---- */
.rey-productPositionBadges .onsale,
.rey-productNew, .rey-newBadge, ul.products .rey-productBadge {
  background: var(--bolt-mint) !important;
  color: #07301F !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
}

/* ---- Buttons: unify Elementor + Rey size/rounding for consistency ---- */
.elementor-button { border-radius: 9999px !important; font-family: 'Space Grotesk', sans-serif !important; }

/* ---- Section heading rhythm tighten ---- */
.elementor-widget-heading { margin-bottom: 6px !important; }

/* Cart count badge -> mint */
.__cart-count,
.rey-headerCart .__cart-count,
.rey-headerCart-wrapper .__cart-count {
  background: var(--bolt-mint) !important;
  color: #07301F !important;
  border-radius: 9999px !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
}
/* Hide an empty Rey product spec panel (heading with no content) */
.rey-wcPanel-inner > h2:only-child { display: none !important; }

/* Spec table (injected in product descriptions) */
.single-product .bolt-spec-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 18px 0 24px !important;
  border: 1px solid #E6E8EC !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  font-size: 14.5px !important;
}
.single-product .bolt-spec-table th,
.single-product .bolt-spec-table td {
  padding: 12px 18px !important;
  border-bottom: 1px solid #EDEFF2 !important;
  text-align: left !important;
  vertical-align: top !important;
}
.single-product .bolt-spec-table th {
  background: #F6F7F9 !important;
  color: var(--bolt-navy) !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  width: 34% !important;
}
.single-product .bolt-spec-table tr:last-child th,
.single-product .bolt-spec-table tr:last-child td { border-bottom: none !important; }
.single-product .bolt-spec-table tr:nth-child(even) td { background: #FBFCFD !important; }
.single-product .bolt-spec-table tr:nth-child(even) th { background: #F2F4F6 !important; }

/* RUO compliance note */
.bolt-ruo-note {
  background: rgba(23,255,194,0.07) !important;
  border: 1px solid rgba(23,255,194,0.4) !important;
  border-radius: 10px !important;
  padding: 14px 18px !important;
  font-size: 13.5px !important;
  color: #2A3340 !important;
  margin-top: 18px !important;
}
.bolt-ruo-note strong { color: var(--bolt-navy) !important; }

/* Product page section headings (Description / Specifications) */
.single-product .summary ~ * h3,
.single-product .woocommerce-Tabs-panel h3,
.single-product div.product h3 {
  font-family: 'Space Grotesk', sans-serif !important;
  color: var(--bolt-navy) !important;
  font-size: 22px !important;
  margin: 22px 0 10px !important;
}

/* Header logo: consistent height across all templates */
.rey-siteLogo img, .custom-logo, .rey-logoWrapper img {
  max-height: 44px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* ================================================================
   GLOBAL COMPACT SPACING v1.0.8 — every page, tighter sections
   ================================================================ */
/* All Elementor top-level sections (overrides earlier home-only rule) */
body.home .e-con.e-parent,
body .e-con.e-parent,
.elementor .e-con.e-parent {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}
/* First section (hero) — minimal top gap under header */
body.home .e-con.e-parent:first-child,
body .e-con.e-parent:first-child,
.elementor .e-con.e-parent:first-child {
  padding-top: 26px !important;
  padding-bottom: 34px !important;
}
/* Kill inner row gaps */
.e-con-inner, .elementor-widget-wrap { row-gap: 0 !important; }

/* Rey page-content wrapper: remove big top/bottom whitespace on all pages */
.rey-pageContent,
.rey-mainContent,
.rey-wrapper > .rey-pageContent,
#content, .site-content {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* WooCommerce shop / archive: compact top, trim result-bar gaps */
.woocommerce.archive .rey-pageContent,
.post-type-archive-product .rey-pageContent,
.woocommerce.archive .rey-wcArchive { padding-top: 22px !important; }
.woocommerce ul.products { margin-top: 14px !important; }

/* Single product: compact top + below-gallery spacing */
.single-product .rey-pageContent { padding-top: 22px !important; }
.single-product div.product { margin-bottom: 24px !important; }

/* Generic WP/Rey page title area spacing trim */
.rey-pageTitle, .page-header, .entry-header { margin-bottom: 12px !important; }

/* Reduce default Elementor section/heading bottom margins that add air */
.elementor-widget { margin-bottom: 0 !important; }
.e-con > .e-con-inner > .elementor-widget:last-child { margin-bottom: 0 !important; }

/* Account/header icon buttons: transparent bg + navy glyph (match cart) */
.rey-headerAccount-btn,
.rey-headerIcon-btn,
.js-rey-headerAccount,
.rey-headerAccount .rey-headerIcon-btn {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.rey-headerAccount-btn svg, .rey-headerAccount-btn .rey-icon, .rey-headerAccount-btn .__icon,
.rey-headerIcon-btn svg, .rey-headerIcon-btn .rey-icon, .rey-headerIcon-btn .__icon {
  color: var(--bolt-navy) !important;
  fill: var(--bolt-navy) !important;
}

/* Cart counter bubble -> mint (Rey default class) */
.rey-headerIcon-counter,
.rey-headerIcon-counter.--bubble,
.rey-headerCart .rey-headerIcon-counter {
  background: var(--bolt-mint) !important;
  background-color: var(--bolt-mint) !important;
  color: #07301F !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 700 !important;
}


/* ================================================================
   Shop/loop card action row (Add to Cart + Quickview): centered + not clipped
   (padding/centering only — does NOT override Rey's hover-reveal display)
   ================================================================ */
.rey-productLoop-footer {
  justify-content: center !important;
  text-align: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
.rey-productLoop-footer .add_to_cart_button,
.rey-productLoop-footer .added_to_cart,
.rey-productLoop-footer a.button,
.rey-productFooter-item--quickview a,
.rey-productFooter-item--quickview .button {
  padding: 8px 18px !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
}
/* Product footer hover — strip fill. Must beat .woocommerce button.button:hover (0-3-1).
   Include element type selectors so specificity reaches 0-4-1 and wins against !important. */
.woocommerce a.button.rey-btn--under:hover,
.woocommerce button.button.rey-btn--under:hover,
.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button.add_to_cart_button:hover,
.rey-productLoop-footer a.button:hover,
.rey-productLoop-footer button.button:hover,
.rey-productFooter-item--quickview a.button:hover,
.rey-productFooter-item--quickview button.button:hover,
.rey-productFooter-item--quickview button.rey-quickviewBtn:hover {
  background-color: transparent !important;
  background: transparent !important;
  border-color: transparent !important;
  color: currentColor !important;
  transform: none !important;
  box-shadow: none !important;
  --btn-bg-color: transparent !important;
  --accent-hover-color: transparent !important;
}
.rey-productFooter-inner { text-align: center !important; }

/* Hero still — transparent WebP floats over section background */
.elementor-element-e744359,
.elementor-element-e744359 .elementor-widget-container {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.bolt-hero-still {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  max-width: 640px !important;
  margin: 0 auto !important;
  background: transparent !important;
}

/* ============================================================
   Global pre-footer (testimonial + stats) — 2026-06-19
   These sections live inside the Elementor footer template (594)
   on LIGHT backgrounds, so they must override the dark-footer
   white-heading rule (.rey-siteFooter h1..h5 { color:#fff }).
   ============================================================ */
.rey-siteFooter .elementor-element-bptstars .elementor-heading-title { color: #F5A623 !important; } /* review stars */
.rey-siteFooter .elementor-element-bps86n .elementor-heading-title,
.rey-siteFooter .elementor-element-bps91n .elementor-heading-title,
.rey-siteFooter .elementor-element-bps80n .elementor-heading-title { color: #152238 !important; }   /* stat numbers */
.rey-siteFooter .elementor-element-bps86s .elementor-heading-title,
.rey-siteFooter .elementor-element-bps91s .elementor-heading-title,
.rey-siteFooter .elementor-element-bps80s .elementor-heading-title { color: #0F60D3 !important; }   /* stat labels */
/* Newsletter form (navy bg) — keep input readable, JOIN button on-brand blue */
.rey-siteFooter .elementor-element-bpprefoot3 input[type="email"] { background:#fff !important; color:#152238 !important; border:none !important; border-radius:9999px !important; padding:13px 20px !important; }
.rey-siteFooter .elementor-element-bpprefoot3 .elementor-button { background-color:#0F60D3 !important; border-radius:9999px !important; }

/* Keep the 3 stat columns in one row on desktop (stack < 768) */
@media (min-width: 768px){
  .rey-siteFooter .elementor-element-bpprefoot2 { flex-wrap: nowrap !important; }
  .rey-siteFooter .elementor-element-bps86c,
  .rey-siteFooter .elementor-element-bps91c,
  .rey-siteFooter .elementor-element-bps80c { width: 33.33% !important; flex: 1 1 0 !important; max-width: 360px; }
}

/* ============================================================
   MOBILE COMPACTING PASS — 2026-06-19  (≤767 / ≤480)
   Primary ordering view. Reduce whitespace/gaps, enlarge product
   imagery, stack & tighten. Scoped to mobile; desktop/tablet intact.
   ============================================================ */
@media (max-width: 767px){
  /* 1) Tighten every top-level section's vertical padding */
  .rey-siteContent .e-con.e-parent{ --padding-top:26px !important; --padding-bottom:26px !important; }
  /* tighter inter-widget gaps inside stacked containers */
  .rey-siteContent .e-con.e-parent{ --row-gap:14px; }

  /* 2) HERO — stack to column, big centered image, compact */
  .elementor-element-b960d3a{ --flex-direction:column !important; --padding-top:22px !important; --padding-bottom:22px !important; --align-items:center; text-align:center; }
  .elementor-element-b960d3a > .e-con-inner{ flex-direction:column !important; }
  .elementor-element-9205d01{ width:100% !important; align-items:center !important; text-align:center; }
  .elementor-element-9205d01 .elementor-widget-icon-list .elementor-icon-list-items{ display:inline-block; text-align:left; }
  .elementor-element-f942fcd{ width:100% !important; }
  .bolt-hero-still{ max-width:90% !important; width:90% !important; margin:6px auto 0 !important; }
  .elementor-element-b960d3a h1{ font-size:30px !important; line-height:1.15 !important; }

  /* 3) PRE-FOOTER compacting (testimonial / stats / newsletter) */
  .rey-siteFooter .elementor-element-bpprefoot1{ --padding-top:30px !important; --padding-bottom:22px !important; }
  .rey-siteFooter .elementor-element-bptquote p{ font-size:18px !important; }
  /* stats: kill the big vertical gaps between 86/91/80 */
  .rey-siteFooter .elementor-element-bpprefoot2{ --padding-top:22px !important; --padding-bottom:22px !important; --gap:10px !important; --row-gap:10px !important; --column-gap:10px !important; }
  .rey-siteFooter .elementor-element-bpprefoot2 > .e-con-inner{ gap:10px !important; }
  .rey-siteFooter .elementor-element-bps86c, .rey-siteFooter .elementor-element-bps91c, .rey-siteFooter .elementor-element-bps80c{ --row-gap:2px !important; --gap:2px !important; }
  .rey-siteFooter .elementor-element-bps86c > .e-con-inner, .rey-siteFooter .elementor-element-bps91c > .e-con-inner, .rey-siteFooter .elementor-element-bps80c > .e-con-inner{ gap:2px !important; }
  .rey-siteFooter .elementor-element-bps86n .elementor-heading-title, .rey-siteFooter .elementor-element-bps91n .elementor-heading-title, .rey-siteFooter .elementor-element-bps80n .elementor-heading-title{ font-size:40px !important; line-height:1.05 !important; margin:0 !important; }
  .rey-siteFooter .elementor-element-bps86d p, .rey-siteFooter .elementor-element-bps91d p, .rey-siteFooter .elementor-element-bps80d p{ margin-top:2px !important; font-size:13px !important; }
  .rey-siteFooter .elementor-element-bpprefoot3{ --padding-top:26px !important; --padding-bottom:26px !important; }

  /* 4) SINGLE PRODUCT — big gallery image, compact summary */
  .single-product .woocommerce-product-gallery{ width:100% !important; margin-bottom:14px !important; }
  .single-product .woocommerce-product-gallery__image img{ width:100% !important; }
  .single-product .rey-productSummary, .single-product .summary.entry-summary{ margin-top:6px !important; }
  .single-product .product .rey-productGallery, .single-product .product{ row-gap:10px !important; }

  /* 5) SHOP / BEST SELLERS — bigger product images, tighter cards */
  ul.products{ grid-gap:12px !important; gap:12px !important; }
  ul.products li.product .rey-productThumbnail{ margin-bottom:6px !important; }
  ul.products li.product .rey-productThumbnail img, ul.products li.product .rey-thumbImg{ width:100% !important; }
  .rey-productInner{ padding:0 !important; }
  ul.products li.product .woocommerce-loop-product__title{ font-size:14px !important; margin:4px 0 2px !important; }

  /* 6) Generic: trim Elementor default widget bottom margins on mobile */
  .rey-siteContent .elementor-widget:not(:last-child){ margin-bottom:10px !important; }
}

@media (max-width: 480px){
  .rey-siteContent .e-con.e-parent{ --padding-top:22px !important; --padding-bottom:22px !important; }
  .elementor-element-b960d3a h1{ font-size:27px !important; }
  .rey-siteFooter .elementor-element-bps86n .elementor-heading-title, .rey-siteFooter .elementor-element-bps91n .elementor-heading-title, .rey-siteFooter .elementor-element-bps80n .elementor-heading-title{ font-size:36px !important; }
}

/* Mobile pass v2 — tighten trust columns + icon-box spacing, maximize imagery */
@media (max-width: 767px){
  /* trust columns: tighter stack + smaller gaps */
  .elementor-element-b54337c{ --row-gap:12px !important; --gap:12px !important; }
  .elementor-element-b54337c > .e-con-inner{ gap:12px !important; }
  .elementor-element-b54337c .elementor-widget-icon-box .elementor-icon-box-icon{ margin-bottom:8px !important; }
  .elementor-element-b54337c .elementor-icon-box-title{ margin-bottom:4px !important; }
  /* product loop image fills the card edge-to-edge for max prominence */
  ul.products li.product .rey-productThumbnail{ border-radius:10px; overflow:hidden; }
  ul.products li.product{ padding-bottom:4px !important; }
  /* Best Sellers heading tighter */
  .rey-siteContent .elementor-widget-heading:not(:first-child){ margin-bottom:8px !important; }
}

/* ============================================================
   FOOTER v2 — 5-column layout (brand · Shop · Research · Support
   · Stay in the Loop) + bottom policy bar + disclaimer. 2026-06-19
   ============================================================ */
.rey-siteFooter .elementor-element-bpf-row{ flex-wrap: nowrap !important; gap: 30px !important; align-items: flex-start !important; }
.rey-siteFooter .elementor-element-bpf-row > .e-con-inner{ flex-wrap: nowrap !important; gap: 30px !important; align-items: flex-start !important; }
.rey-siteFooter .elementor-element-bpf-brand{ flex: 0 0 21% !important; width: 21% !important; }
.rey-siteFooter .elementor-element-bpf-shop,
.rey-siteFooter .elementor-element-bpf-research,
.rey-siteFooter .elementor-element-bpf-support{ flex: 1 1 0 !important; width: auto !important; }
.rey-siteFooter .elementor-element-bpf-loop{ flex: 0 0 25% !important; width: 25% !important; }
.rey-siteFooter .elementor-element-bpf-row a:hover{ color: #fff !important; }

/* Bottom policy bar + disclaimer */
.rey-siteFooter .elementor-element-bpf-bottom{ padding: 4px 0 !important; }
.rey-siteFooter .elementor-element-bpf-pol a:hover{ color: #fff !important; }

/* Responsive: tablet 2-3 cols, mobile stack */
@media (max-width: 991px){
  .rey-siteFooter .elementor-element-bpf-row,
  .rey-siteFooter .elementor-element-bpf-row > .e-con-inner{ flex-wrap: wrap !important; }
  .rey-siteFooter .elementor-element-bpf-brand{ flex: 1 1 100% !important; width: 100% !important; }
  .rey-siteFooter .elementor-element-bpf-shop,
  .rey-siteFooter .elementor-element-bpf-research,
  .rey-siteFooter .elementor-element-bpf-support{ flex: 1 1 28% !important; }
  .rey-siteFooter .elementor-element-bpf-loop{ flex: 1 1 100% !important; width: 100% !important; max-width: 380px !important; }
}
@media (max-width: 600px){
  .rey-siteFooter .elementor-element-bpf-row > *{ flex: 1 1 100% !important; width: 100% !important; }
  .rey-siteFooter .elementor-element-bpf-bottom{ flex-direction: column !important; align-items: flex-start !important; gap: 10px !important; }
  .rey-siteFooter .elementor-element-bpf-pol div{ text-align: left !important; }
  .rey-siteFooter .elementor-element-bpf-pol a{ margin: 0 16px 0 0 !important; display: inline-block; line-height: 2 !important; }
}

/* ============================================================
   PRODUCT PAGE — Authenticity box + "Independently Tested" / COA
   section (mirrors reference product layout). 2026-06-19
   ============================================================ */
.bolt-authenticity{
  display:flex; gap:12px; align-items:flex-start;
  background:#152238; color:#fff; border-radius:14px; padding:16px 18px; margin:16px 0 4px;
}
.bolt-authenticity__ic{ flex:0 0 auto; margin-top:1px; }
.bolt-authenticity__tx{ font-size:13.5px; line-height:1.55; color:rgba(255,255,255,0.78); }
.bolt-authenticity__tx strong{ display:block; color:#fff; font-family:'Space Grotesk',sans-serif; font-size:15px; margin-bottom:2px; }

.bolt-coa{ max-width:1200px; margin:46px auto 8px; padding:0 24px; }
.bolt-coa__head{ text-align:center; max-width:760px; margin:0 auto 30px; }
.bolt-coa__eyebrow{ display:inline-block; color:#0F60D3; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:12px; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:8px; }
.bolt-coa__title{ font-family:'Space Grotesk',sans-serif; font-weight:700; color:#152238; font-size:30px; margin:0 0 10px; letter-spacing:-0.01em; }
.bolt-coa__sub{ color:#4A5560; font-size:15.5px; line-height:1.6; margin:0; }
.bolt-coa__grid{ display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:start; }
.bolt-coa__tests{ background:#fff; border:1px solid #E6E8EC; border-radius:16px; padding:24px 26px; box-shadow:0 6px 24px -16px rgba(21,34,56,.25); }
.bolt-coa__h3{ font-family:'Space Grotesk',sans-serif; font-weight:700; color:#152238; font-size:17px; margin:0 0 14px; }
.bolt-coa__list{ list-style:none; margin:0; padding:0; }
.bolt-coa__item{ display:flex; gap:12px; align-items:flex-start; padding:11px 0; border-bottom:1px solid #F0F2F5; }
.bolt-coa__item:last-child{ border-bottom:0; }
.bolt-coa__check{ flex:0 0 auto; margin-top:1px; line-height:0; }
.bolt-coa__txt strong{ display:block; color:#152238; font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:14.5px; }
.bolt-coa__txt em{ font-style:normal; color:#6A7486; font-size:13px; }
.bolt-coa__pass{ color:#16A34A; font-weight:600; }
.bolt-coa__doc{ background:#F6F8FB; border:1px solid #E6E8EC; border-radius:16px; padding:18px; }
.bolt-coa__verified{ display:flex; align-items:center; gap:6px; justify-content:flex-end; font-size:12px; color:#6A7486; margin-bottom:12px; }
.bolt-coa__verified strong{ color:#0F60D3; font-family:'Space Grotesk',sans-serif; }
.bolt-coa__cert{ background:#fff; border:1px solid #E3E6EB; border-radius:10px; padding:18px; box-shadow:0 8px 30px -18px rgba(21,34,56,.35); }
.bolt-coa__certHead{ display:flex; justify-content:space-between; align-items:baseline; border-bottom:2px solid #152238; padding-bottom:8px; margin-bottom:12px; }
.bolt-coa__certBrand{ font-family:'Space Grotesk',sans-serif; font-weight:700; color:#152238; font-size:13px; letter-spacing:1px; }
.bolt-coa__certTitle{ color:#0F60D3; font-size:12px; font-weight:600; }
.bolt-coa__certMeta{ display:grid; grid-template-columns:1fr 1fr; gap:8px 16px; margin-bottom:12px; }
.bolt-coa__certMeta span{ font-size:12px; color:#152238; }
.bolt-coa__certMeta b{ display:block; color:#9AA1AB; font-weight:500; font-size:10.5px; text-transform:uppercase; letter-spacing:.4px; }
.bolt-coa__certTable{ width:100%; border-collapse:collapse; font-size:12px; }
.bolt-coa__certTable th{ text-align:left; color:#9AA1AB; font-weight:600; font-size:10.5px; text-transform:uppercase; letter-spacing:.4px; border-bottom:1px solid #EDEFF2; padding:5px 6px; }
.bolt-coa__certTable td{ color:#152238; padding:6px; border-bottom:1px solid #F4F5F7; }
.bolt-coa__certTable td:last-child{ color:#16A34A; font-weight:600; }
.bolt-coa__dl{ display:inline-block; margin-top:14px; color:#0F60D3; font-weight:600; font-family:'Space Grotesk',sans-serif; text-decoration:none; }
.bolt-coa__dl:hover{ text-decoration:underline; }
@media (max-width:900px){ .bolt-coa__grid{ grid-template-columns:1fr; gap:18px; } .bolt-coa__title{ font-size:25px; } .bolt-coa{ margin-top:32px; } }

/* Research-Use-Only product modal */
.bolt-ruo[hidden]{ display:none !important; }
.bolt-ruo{ position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; padding:20px;
  background:rgba(10,18,32,0.72); backdrop-filter:blur(4px); }
.bolt-ruo__card{ background:#fff; border-radius:18px; max-width:460px; width:100%; padding:34px 32px; text-align:center; box-shadow:0 30px 80px -20px rgba(0,0,0,.5); }
.bolt-ruo__logo{ width:120px; height:auto; margin:0 auto 14px; display:block; }
.bolt-ruo__title{ font-family:'Space Grotesk',sans-serif; font-weight:700; color:#152238; font-size:22px; margin:0 0 8px; }
.bolt-ruo__intro{ color:#4A5560; font-size:14px; line-height:1.6; margin:0 0 18px; }
.bolt-ruo__check{ display:flex; gap:10px; text-align:left; font-size:13px; color:#33415C; line-height:1.5; margin:0 0 12px; cursor:pointer; }
.bolt-ruo__check input{ margin-top:2px; flex:0 0 auto; width:17px; height:17px; accent-color:#0F60D3; }
.bolt-ruo__btn{ width:100%; margin-top:10px; height:48px; border:0; border-radius:9999px; background:#0F60D3; color:#fff;
  font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:15px; cursor:pointer; transition:all .25s ease; }
.bolt-ruo__btn:disabled{ background:#C7D2E3; cursor:not-allowed; }
.bolt-ruo__btn:not(:disabled):hover{ box-shadow:0 10px 22px -6px rgba(15,96,211,.5); transform:translateY(-1px); }
.bolt-ruo__leave{ display:block; margin:12px auto 0; background:none; border:0; color:#9AA1AB; font-size:12px; cursor:pointer; text-decoration:underline; }

/* ============================================================
   SHOP HEADER — compact + aligned toolbar + clean sort. 2026-06-19
   ============================================================ */
/* 1) Sort/view controls: .btn-line must be a clean outline, not a navy pill
   (the global .btn rule was filling it navy) */
.rey-loopHeader .btn.btn-line,
.rey-loopSelectList .btn,
.woocommerce-ordering .btn,
.rey-viewSelector .btn {
  background-color:#fff !important;
  color:#152238 !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-family:'Space Grotesk',sans-serif !important;
  font-weight:600 !important;
  transform:none !important;
}
.rey-loopHeader .btn.btn-line:hover,
.rey-loopSelectList .btn:hover {
  background-color:#F2F6FD !important; color:#0F60D3 !important;
}

/* 2) Remove the "Shop RUO Peptides" description */
.woocommerce-products-header .page-description { display:none !important; }

/* ============================================================
   BOLT ARCHIVE CATS — matches Rey .btn.btn-line underline style
   ============================================================ */
.bolt-archive-cats {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 0.5rem;
  margin-bottom: 1rem;
  line-height: 1;
}

.bolt-archive-cats__link {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: 0.15em;
  padding: 0 0 5px;
  font-size: 0.8125rem;
  font-weight: 600;
  font-family: 'Space Grotesk', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #152238;
  text-decoration: none;
  background: transparent;
  border: none;
  line-height: 1;
  white-space: nowrap;
  transition: color 0.2s ease-out;
}

/* Animated underline — identical to Rey btn.btn-line ::after */
.bolt-archive-cats__link::after {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: center right;
  transition: transform 0.4s ease-out;
}

.bolt-archive-cats__link:hover {
  color: #0F60D3;
}
.bolt-archive-cats__link:hover::after {
  transform: scaleX(1);
  transform-origin: center left;
}

/* Active / current category — always-visible underline */
.bolt-archive-cats__link.current::after,
.bolt-archive-cats__link[aria-current]::after {
  transform: scaleX(1);
  transform-origin: center left;
  transition: none;
}

/* Count superscript */
.bolt-archive-cats__link sup {
  font-size: 0.6em;
  font-weight: 400;
  opacity: 0.4;
  margin-left: 0.05em;
  line-height: 1;
  vertical-align: super;
}

/* 3) Compact breadcrumb + page header */
.rey-breadcrumbs { margin-bottom:6px !important; font-size:12.5px !important; }
.woocommerce-products-header { margin-bottom:10px !important; padding-bottom:0 !important; }
.woocommerce-products-header__title { margin:0 0 2px !important; }

/* 4) Compact the Category filter bar (was ~89px tall, full-width) */
.filters-top-sidebar.rey-filterSidebar { padding:0 !important; margin:0 !important; }
.filters-top-sidebar .rey-filterTop-head { margin-bottom:0 !important; }
.rey-siteRow:has(> .rey-siteContainer .filters-top-sidebar){ padding-top:0 !important; padding-bottom:0 !important; }

/* 5) Filter bar (set to render 'after title') sits directly above the toolbar.
   Pull the toolbar up onto the filter bar's row: Category on the left, view/sort on the right. */
@media (min-width:1025px){
  .rey-siteRow .filters-top-sidebar .rey-filterTop{ display:flex !important; align-items:center !important; }
  main.rey-siteMain .reyajfilter-before-products .rey-loopHeader{
    margin-top:-95px !important;
    justify-content:flex-end !important;
    gap:18px !important;
    align-items:center !important;
    min-height:44px !important;
    padding-left:200px !important;  /* clear the Category filter on the left */
  }
  main.rey-siteMain .reyajfilter-before-products .rey-loopHeader .woocommerce-result-count{ margin:0 !important; padding:0 !important; flex:0 0 auto !important; width:auto !important; align-self:center; white-space:nowrap; font-size:12.5px !important; }
  main.rey-siteMain .reyajfilter-before-products .rey-loopHeader .rey-viewSelector,
  main.rey-siteMain .reyajfilter-before-products .rey-loopHeader .woocommerce-ordering{ align-self:center; }
  main.rey-siteMain .reyajfilter-before-products .rey-loopHeader .rey-filterBtn{ display:none !important; }
}

/* ============================================================
   Omnisend embedded newsletter form — input + Subscribe button equal,
   full width (edge-to-edge), ~50px tall, WITHOUT clipping text/button.
   - zero BOTH container paddings (symmetric width)
   - reduce the input's vertical padding so the placeholder fits in 50px
   - do NOT force the button height (it's already ~50px); leave room below
     so the focus ring isn't cut off.
   Hashes are this form instance's IDs; the attribute fallback below is
   ID-agnostic in case the form is rebuilt in Omnisend.
   ============================================================ */
#omnisend-form-6a358c7433843eae466e6d2f-submit-form .omnisend-form-6a358c7433843eae466e6d2f-field-container-62a34db0f7b3732a01429b16-input {
  width: 100% !important; box-sizing: border-box !important;
  height: 54px !important; min-height: 54px !important;
  padding-top: 14px !important; padding-bottom: 14px !important;   /* fit text inside 50px */
}
#omnisend-form-6a358c7433843eae466e6d2f-submit-form .omnisend-form-6a358c7433843eae466e6d2f-field-container-62a34db0f7b3732a01429b16,
#omnisend-form-6a358c7433843eae466e6d2f-submit-form .omnisend-form-6a358c7433843eae466e6d2f-action-container-627932485028ebd8c6660c51 {
  padding-left: 0 !important; padding-right: 0 !important; width: 100% !important;
}
#omnisend-form-6a358c7433843eae466e6d2f-submit-form .omnisend-form-6a358c7433843eae466e6d2f-action-container-627932485028ebd8c6660c51 {
  padding-bottom: 4px !important;   /* room for the button focus ring */
}
#omnisend-form-6a358c7433843eae466e6d2f-submit-form .omnisend-form-6a358c7433843eae466e6d2f-action-627932485028ebd8c6660c51 {
  width: 100% !important; height: 54px !important; min-height: 54px !important;   /* match the input height exactly */
}

/* ID-agnostic fallback (survives an Omnisend form rebuild): equal full width.
   Zero both container paddings; full-width input/button; gentle input padding.
   NOTE: do not force the button height here (caused clipping). */
.rey-siteFooter [id^="omnisend-embedded"] [class*="-field-container"]:not([class*="-wrapper"]),
.rey-siteFooter [id^="omnisend-embedded"] [class*="-action-container"] {
  padding-left: 0 !important; padding-right: 0 !important; width: 100% !important;
}
.rey-siteFooter [id^="omnisend-embedded"] [class*="-field-container"] input {
  width: 100% !important; box-sizing: border-box !important; height: 54px !important; padding-top: 14px !important; padding-bottom: 14px !important;
}
.rey-siteFooter [id^="omnisend-embedded"] [class*="-action"]:not([class*="-container"]) {
  width: 100% !important; height: 54px !important; min-height: 54px !important;
}

/* ------------------------------------------------------------
   Newsletter form — user refinements (45px height, centered
   button text, tighter stacking). Appended below so they apply last.
   ------------------------------------------------------------ */
/* Reduce button height and center text */
button#omnisend-form-6a358c7433843eae466e6d2f-action-627932485028ebd8c6660c51 {
    height: 54px !important;
    min-height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Match input height */
.omnisend-form-6a358c7433843eae466e6d2f-sections-container input {
    height: 54px !important;
    min-height: 54px !important;
}

/* Fix container height and remove top padding shift */
.omnisend-form-6a358c7433843eae466e6d2f-action-container-627932485028ebd8c6660c51 {
    height: auto !important;
    padding-top: 0px !important;
}
/* Reduce space between stacked elements */
.omnisend-form-6a358c7433843eae466e6d2f-sections-container {
    gap: 16px !important;
}

/* Reduced margin for the button container */
.omnisend-form-6a358c7433843eae466e6d2f-action-container-627932485028ebd8c6660c51 {
    margin-top: 5px !important;
}

/* ===== UI consistency pass — unify quantity steppers (clean 8px) — 2026-06-20 ===== */
.single-product .quantity, .single-product .rey-qtyField{ border-radius:8px !important; }
.woocommerce-cart .quantity, .woocommerce-checkout .quantity{
  border:1.5px solid #D5DAE3 !important; border-radius:8px !important; background:#fff !important; overflow:hidden !important;
}
.woocommerce-cart .quantity input.qty, .woocommerce-checkout .quantity input.qty{
  border:0 !important; background:transparent !important; box-shadow:none !important;
}

/* ===== Quantity stepper — complete consistency fix (product + cart + checkout) 2026-06-20 ===== */
.single-product .quantity,
.woocommerce-cart .quantity,
.woocommerce-checkout .quantity{
  border:1.5px solid #D5DAE3 !important;
  border-radius:8px !important;
  background:#fff !important;
  overflow:hidden !important;
}
.single-product .rey-qtyField{ border-radius:8px !important; overflow:hidden !important; }
.single-product .quantity input.qty,
.woocommerce-cart .quantity input.qty,
.woocommerce-checkout .quantity input.qty{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
