/* ============================================================
   PROLIFIC PROTOCOLS — MASTER STYLESHEET v8.0 (DARK LUXURY)
   SINGLE SOURCE OF TRUTH — Appearance > Customize > Additional CSS
   Replace your ENTIRE Additional CSS with this one file.
   Black canvas · gold accents · off-white text · WCAG-AA fixes folded in.
   ============================================================ */

:root{
  /* Surfaces (dark, layered) */
  --pp-bg:#000000;            /* page background */
  --pp-surface:#0E0E0F;       /* sections, footer, cards base */
  --pp-surface-2:#161618;     /* inputs, raised panels */
  --pp-surface-3:#1D1D1F;     /* hover / elevated */

  /* Text */
  --pp-text:#F5F5F7;          /* headings + strong text */
  --pp-body:#E4E4E7;          /* body copy — brightened so it doesn't read faded on black */
  --pp-muted:#ABABB0;         /* secondary / captions — raised off the dim grays */

  /* Gold — warm rich amber-gold (less lemon, more luxury) */
  --pp-gold:#C0902F;          /* core gold */
  --pp-gold-light:#E2B358;    /* warm light gold (not yellow) */
  --pp-gold-deep:#8C6418;     /* bronze-gold for shadows/edges */
  --pp-gold-grad:linear-gradient(135deg,#EBC36B 0%,#C49636 48%,#8C6418 100%);
  --pp-gold-subtle:rgba(192,144,47,0.14);

  /* Lines / ink */
  --pp-rule:rgba(255,255,255,0.08);
  --pp-ink:#16130A;           /* near-black text used on gold buttons */

  --pp-font-display:'Rajdhani',sans-serif;
  --pp-font-body:'DM Sans',sans-serif;
  --pp-ease:cubic-bezier(0.4,0,0.2,1);
  --pp-duration:0.32s;
}

*,*::before,*::after{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  box-sizing:border-box;
}

body{
  font-family:var(--pp-font-body);
  color:var(--pp-body);
  background-color:var(--pp-bg);
}

/* Make Elementor section/containers transparent so the black body shows
   through (prevents stray white bands between widgets) */
.elementor-section,.e-con,.elementor-widget-container{
  background-color:transparent;
}

/* Screen-reader-only utility (SEO + accessibility: real names on icon links) */
.sr-only{
  position:absolute !important;
  width:1px !important; height:1px !important;
  padding:0 !important; margin:-1px !important;
  overflow:hidden !important; clip:rect(0,0,0,0) !important;
  white-space:nowrap !important; border:0 !important;
}

/* ============================================================
   TYPOGRAPHY
   ============================================================ */
h1,h2,h3,h4,.elementor-heading-title{
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  color:var(--pp-text) !important;
  line-height:1.08 !important;
}
h1.elementor-heading-title{
  font-style:italic;
  letter-spacing:1px !important;
  font-weight:800 !important;
}
p{
  font-family:var(--pp-font-body);
  color:var(--pp-body);
  line-height:1.75;
  font-size:17px;
}
a{color:var(--pp-gold-light);}
a:hover{color:var(--pp-gold);}

/* ============================================================
   GLOBAL BUTTONS — brushed-gold primary (matches footer CTA)
   ============================================================ */
.button,.elementor-button,button,input[type="submit"]{
  background:var(--pp-gold-grad) !important;
  background-color:var(--pp-gold) !important;
  color:var(--pp-ink) !important;
  border:none !important;
  border-radius:980px !important;
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:13px !important;
  text-transform:uppercase !important;
  letter-spacing:2px !important;
  padding:14px 32px !important;
  transition:filter var(--pp-duration) var(--pp-ease),transform var(--pp-duration) var(--pp-ease),box-shadow var(--pp-duration) var(--pp-ease) !important;
  cursor:pointer;
  box-shadow:0 6px 22px rgba(194,160,62,0.18) !important;
}
.button:hover,.elementor-button:hover,button:hover,input[type="submit"]:hover{
  filter:brightness(1.08) !important;
  transform:scale(1.02) !important;
  box-shadow:0 8px 30px rgba(194,160,62,0.3) !important;
}
.button:focus-visible,.elementor-button:focus-visible,button:focus-visible,input[type="submit"]:focus-visible{
  outline:2px solid var(--pp-gold-light) !important;
  outline-offset:2px !important;
}

/* Optional secondary button: add class "pp-btn-ghost" on any Elementor button */
.pp-btn-ghost .elementor-button,.elementor-button.pp-btn-ghost,a.pp-btn-ghost{
  background:transparent !important;
  color:var(--pp-gold-light) !important;
  border:1.5px solid var(--pp-gold) !important;
  box-shadow:none !important;
}
.pp-btn-ghost .elementor-button:hover,.elementor-button.pp-btn-ghost:hover,a.pp-btn-ghost:hover{
  background:var(--pp-gold-subtle) !important;
  color:var(--pp-gold-light) !important;
}

/* ============================================================
   FORM INPUTS — dark fields, gold focus ring
   ============================================================ */
input[type="text"],input[type="email"],input[type="password"],input[type="tel"],
input[type="number"],input[type="search"],select,textarea,.input-text,.woocommerce-Input{
  background-color:var(--pp-surface-2) !important;
  color:var(--pp-text) !important;
  border:1px solid var(--pp-rule) !important;
  border-radius:12px !important;
  padding:14px 18px !important;
  font-family:var(--pp-font-body) !important;
  font-size:16px !important;
  box-shadow:none !important;
  outline:none !important;
}
::placeholder{color:var(--pp-muted) !important;opacity:1 !important;}
input:focus,select:focus,textarea:focus{
  background-color:var(--pp-surface-3) !important;
  border-color:var(--pp-gold) !important;
  box-shadow:0 0 0 3px var(--pp-gold-subtle) !important;
}

/* ============================================================
   ANNOUNCEMENT TICKER
   (paste your <span> run TWICE inside .custom-ticker for a seamless loop)
   ============================================================ */
.custom-ticker-wrap{
  width:100%;
  overflow:hidden;
  background-color:var(--pp-bg) !important;
  border-bottom:1px solid rgba(194,160,62,0.22);
  padding:11px 0;
  display:flex;
}
.custom-ticker{
  display:flex;
  flex-wrap:nowrap;
  white-space:nowrap;
  will-change:transform;
  animation:pp-ticker 50s linear infinite;
}
.custom-ticker span{
  font-family:var(--pp-font-display) !important;
  font-weight:600;
  font-size:11px;
  letter-spacing:2.5px;
  color:rgba(255,255,255,0.72) !important;   /* AA-legible */
  padding-right:80px;
  text-transform:uppercase;
}
@keyframes pp-ticker{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ============================================================
   NAVIGATION — luxury (no box, gold underline grows from center)
   ============================================================ */
.elementor-location-header{
  background-color:var(--pp-bg) !important;
  border-bottom:1px solid rgba(194,160,62,0.18) !important;
  box-shadow:0 1px 0 rgba(194,160,62,0.10),0 8px 30px rgba(0,0,0,0.5) !important;
}
/* Tame the oversized logo banner + tighten the header band (kills most
   of the empty space up top). If the logo gets too small, raise 120px;
   if the header still feels tall, the rest is an Elementor section
   padding setting — see note E at the bottom of this file. */
.elementor-location-header .elementor-widget-image img{
  max-height:120px !important;
  width:auto !important;
}
.elementor-location-header > .elementor-section,
.elementor-location-header > .e-con,
.elementor-location-header .e-con-inner{
  padding-top:8px !important;
  padding-bottom:8px !important;
}
.elementor-location-header .elementor-nav-menu--main,
.elementor-location-header nav,
.elementor-location-header .elementor-widget-nav-menu{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}
.elementor-nav-menu .menu-item a,
.elementor-nav-menu a{
  font-family:var(--pp-font-display) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:3px !important;
  text-transform:uppercase !important;
  color:var(--pp-text) !important;
  padding:10px 22px !important;
  background:transparent !important;
  position:relative !important;
  transition:color .25s ease !important;
}
.elementor-nav-menu .menu-item a::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  bottom:2px !important;
  width:0 !important;
  height:1.5px !important;
  background:var(--pp-gold) !important;
  transform:translateX(-50%) !important;
  transition:width .28s ease !important;
}
.elementor-nav-menu .menu-item a:hover{color:var(--pp-gold-light) !important;background:transparent !important;}
.elementor-nav-menu .menu-item a:hover::after{width:55% !important;}
.elementor-nav-menu .current-menu-item a,
.elementor-nav-menu .elementor-item-active{
  color:var(--pp-gold-light) !important;
  background:transparent !important;
  border:none !important;
}
.elementor-nav-menu .current-menu-item a::after,
.elementor-nav-menu .elementor-item-active::after{width:55% !important;}

.elementor-nav-menu--dropdown{
  background-color:rgba(0,0,0,0.96) !important;
  backdrop-filter:blur(24px) !important;
  border-top:1px solid rgba(194,160,62,0.2) !important;
}
.elementor-nav-menu--dropdown a{
  font-family:var(--pp-font-display) !important;
  color:rgba(255,255,255,0.82) !important;
  text-transform:uppercase !important;
  letter-spacing:1.5px !important;
  font-size:14px !important;
  padding:16px 24px !important;
  border-bottom:1px solid rgba(255,255,255,0.06) !important;
}
.elementor-nav-menu--dropdown a:hover{
  color:var(--pp-gold-light) !important;
  background-color:rgba(255,255,255,0.05) !important;
}

/* ============================================================
   STICKY HEADER — shrink + dark frost on scroll
   (Elementor: header container > Advanced > Motion Effects > Sticky: Top)
   ============================================================ */
.elementor-sticky--effects{
  background-color:rgba(0,0,0,0.82) !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
  box-shadow:0 1px 0 rgba(194,160,62,0.18),0 8px 30px rgba(0,0,0,0.55) !important;
  transition:all .35s ease !important;
}
.elementor-sticky--effects .elementor-widget-image img{
  max-height:90px !important;
  transition:max-height .35s ease !important;
}

/* ============================================================
   CART
   ============================================================ */
.elementor-widget-woocommerce-menu-cart,.elementor-menu-cart__wrapper,.elementor-menu-cart__toggle{
  overflow:visible !important;
  display:flex !important;
  align-items:center !important;
}
.elementor-menu-cart__toggle_button,
body .elementor-menu-cart__toggle .elementor-button{
  background:transparent !important;
  color:var(--pp-text) !important;
  border:1.5px solid var(--pp-gold) !important;
  border-radius:980px !important;
  padding:10px 20px !important;
  font-family:var(--pp-font-display) !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:1px !important;
  text-transform:uppercase !important;
  box-shadow:0 0 12px rgba(194,160,62,0.14) !important;
  transition:all var(--pp-duration) var(--pp-ease) !important;
}
.elementor-menu-cart__toggle_button:hover,
body .elementor-menu-cart__toggle .elementor-button:hover,
.elementor-menu-cart__toggle:hover .elementor-button{
  background:var(--pp-gold-subtle) !important;
  color:var(--pp-gold-light) !important;
  border:1.5px solid var(--pp-gold) !important;
  box-shadow:0 0 18px rgba(194,160,62,0.3) !important;
}
.elementor-menu-cart__toggle .elementor-button-text,
.elementor-menu-cart__toggle_button_subtotal{color:var(--pp-text) !important;}

body .elementor-location-header .elementor-menu-cart__toggle_button_count,
body .elementor-menu-cart .elementor-menu-cart__toggle_button_count,
body .elementor-menu-cart__toggle_button_count,
body .elementor-menu-cart__toggle .elementor-count{
  background:var(--pp-gold) !important;
  background-color:var(--pp-gold) !important;
  color:var(--pp-ink) !important;
  font-size:9px !important;
  font-weight:700 !important;
  width:16px !important;
  height:16px !important;
  line-height:16px !important;
  text-align:center !important;
  border-radius:50% !important;
  border:none !important;
  padding:0 !important;
}
/* Cart flyout panel */
.elementor-menu-cart__main,.elementor-menu-cart__container{
  background-color:var(--pp-surface) !important;
  color:var(--pp-body) !important;
}
.elementor-menu-cart__product,.elementor-menu-cart__products{
  color:var(--pp-body) !important;
  border-color:var(--pp-rule) !important;
}
.elementor-menu-cart__footer-buttons .elementor-button{
  background:var(--pp-gold-grad) !important;
  color:var(--pp-ink) !important;
  border-radius:980px !important;
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
  font-size:12px !important;
  text-transform:uppercase !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart{
  background:transparent !important;
  color:var(--pp-text) !important;
  border:1px solid var(--pp-rule) !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover{
  border-color:var(--pp-gold) !important;
  color:var(--pp-gold-light) !important;
}

/* ============================================================
   HERO IMAGE — full-bleed, capped height, scroll cue
   (class pp-hero on the hero Image widget's section)
   ============================================================ */
.pp-hero{padding:0 !important;margin:0 !important;position:relative !important;}
.pp-hero .elementor-widget-container{width:100% !important;margin:0 !important;}
.pp-hero img{
  width:100% !important;
  height:clamp(420px,46vw,600px) !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  max-width:100% !important;
}
.pp-hero::after{
  content:"\e92e";
  font-family:'eicons';
  position:absolute;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  color:rgba(230,197,106,0.85);
  font-size:26px;
  animation:pp-bounce 1.8s ease-in-out infinite;
  pointer-events:none;
}
@keyframes pp-bounce{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(8px);}}

/* ============================================================
   MISSION STATEMENT — gold header lead-in, airy body, gold closer
   (class pp-mission on the mission Text Editor widget)
   ============================================================ */
.pp-mission p{
  font-family:var(--pp-font-body) !important;
  font-weight:400 !important;   /* was 300 — thin weight read as faded on black */
  font-size:17px !important;
  line-height:2.1 !important;
  letter-spacing:0.3px !important;
  color:var(--pp-body) !important;
  text-align:center !important;
  max-width:680px !important;
  margin:0 auto 22px !important;
  text-transform:none !important;
}
.pp-mission p:first-child{
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:26px !important;
  letter-spacing:3px !important;
  text-transform:uppercase !important;
  color:var(--pp-gold-light) !important;
  margin-bottom:40px !important;
  line-height:1.3 !important;
}
.pp-mission p:last-child{
  font-family:var(--pp-font-display) !important;
  font-weight:600 !important;
  font-size:12px !important;
  letter-spacing:3px !important;
  text-transform:uppercase !important;
  color:var(--pp-gold-light) !important;
  margin-top:40px !important;
}

/* ============================================================
   LEGAL / RUO DISCLAIMER — elegant but legible (AA)
   (class pp-legal on the disclaimer text widget)
   ============================================================ */
.pp-legal p,
.pp-legal{
  font-family:var(--pp-font-body) !important;
  font-weight:400 !important;
  font-size:13px !important;
  letter-spacing:0.3px !important;
  text-transform:none !important;
  color:var(--pp-muted) !important;
  text-align:center !important;
  line-height:1.8 !important;
  max-width:640px !important;
  margin:0 auto !important;
}
.pp-legal{
  padding-top:8px !important;
  padding-bottom:40px !important;
}
.pp-legal::before{
  content:"" !important;
  display:block !important;
  width:60px !important;
  height:1px !important;
  background:rgba(194,160,62,0.45) !important;
  margin:0 auto 28px !important;
}

/* ============================================================
   TRUST BADGES (wax seals) — SLEEK, not bulky
   Two classes, applied to the WIDGETS (not the container):
   → TITLE text editor ("Domestically Sourced"):  pp-badge-title
   → DESCRIPTION text editor (the sentence):       pp-badge-text
   Put each class on its own widget — do NOT put pp-badge-title on
   the container, or the body copy turns to caps too (that's the
   bulky look). Image Box widgets are styled automatically.
   ============================================================ */
/* Title — small, refined gold label (lighter weight, smaller) */
.pp-badge-title,
.pp-badge-title p,
.elementor-widget-image-box .elementor-image-box-title{
  font-family:var(--pp-font-display) !important;
  font-weight:600 !important;        /* was 700 — lighter, sleeker */
  letter-spacing:2.5px !important;
  text-transform:uppercase !important;
  font-size:13px !important;         /* refined label size */
  color:var(--pp-gold-light) !important;
  margin:0 0 10px !important;
  line-height:1.4 !important;
}
/* Description — quiet, sentence-case, readable (kills the caps) */
.pp-badge-text,
.pp-badge-text p,
.elementor-widget-image-box .elementor-image-box-description{
  font-family:var(--pp-font-body) !important;
  font-weight:400 !important;
  font-size:14px !important;
  letter-spacing:0 !important;
  text-transform:none !important;    /* undo any uppercase styling */
  line-height:1.75 !important;
  color:var(--pp-muted) !important;  /* quiet gray, not gold */
  max-width:420px !important;
  margin:0 auto !important;
}

/* ============================================================
   WOOCOMMERCE PRODUCT CARDS — dark glass, gold glow on hover
   ============================================================ */
.woocommerce ul.products li.product{
  background:var(--pp-surface) !important;
  border:1px solid var(--pp-rule) !important;
  border-radius:18px !important;
  padding:20px !important;
  transition:transform var(--pp-duration) var(--pp-ease),box-shadow var(--pp-duration) var(--pp-ease),border-color var(--pp-duration) var(--pp-ease);
}
.woocommerce ul.products li.product:hover{
  border-color:rgba(194,160,62,0.5) !important;
  box-shadow:0 28px 64px rgba(0,0,0,0.6),0 0 0 1.5px var(--pp-gold) !important;
  transform:translateY(-6px) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  letter-spacing:1px !important;
  text-transform:uppercase !important;
  color:var(--pp-text) !important;
  font-size:15px !important;
  margin-bottom:4px !important;
}
.woocommerce ul.products li.product .price{
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:18px !important;
  color:var(--pp-text) !important;
  margin:6px 0 14px !important;
}
.woocommerce-Price-amount,.woocommerce-Price-amount bdi{
  color:var(--pp-text) !important;
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:16px !important;
  text-decoration:none !important;
}
del .woocommerce-Price-amount,del bdi,.price del,.price del *{
  color:rgba(199,199,204,0.45) !important;
  font-size:13px !important;
  font-weight:400 !important;
  text-decoration:line-through !important;
}
body .woocommerce span.onsale,body span.onsale{
  background:var(--pp-gold) !important;
  background-image:none !important;
  color:var(--pp-ink) !important;
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:11px !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  border-radius:980px !important;
  padding:5px 14px !important;
  min-height:unset !important;
  min-width:unset !important;
  line-height:1.4 !important;
  border:none !important;
  box-shadow:none !important;
}

/* ============================================================
   ADD TO CART (single product) — FORCED VISIBLE + FULL SIZE
   If the button ever shrinks, hides, or renders as an empty pill,
   these rules restore it to a full gold button with its label.
   The cart form is forced visible so quantity + button always show.
   ============================================================ */
.woocommerce div.product form.cart,
.single-product form.cart,
.single-product .cart{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  visibility:visible !important;
  opacity:1 !important;
}
.woocommerce .single_add_to_cart_button,
.woocommerce button.single_add_to_cart_button,
.single-product .single_add_to_cart_button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  width:auto !important;
  min-width:210px !important;
  height:auto !important;
  background:var(--pp-gold-grad) !important;
  color:var(--pp-ink) !important;
  font-family:var(--pp-font-display) !important;
  font-weight:700 !important;
  font-size:14px !important;
  letter-spacing:2.5px !important;
  text-transform:uppercase !important;
  padding:16px 40px !important;
  border-radius:980px !important;
  line-height:1.2 !important;
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce button.single_add_to_cart_button:hover{
  filter:brightness(1.08) !important;
}
/* Quantity box on the dark card */
.single-product .quantity input.qty{
  background-color:#0E0E0F !important;
  color:var(--pp-text) !important;
  border:1px solid rgba(192,144,47,0.3) !important;
  border-radius:10px !important;
  padding:14px 10px !important;
  width:72px !important;
}

/* ============================================================
   SINGLE PRODUCT PAGE — DARK CHARCOAL SPEC CARD
   Title sits on the black page (stays light via the global heading
   rule). The info card becomes a dark charcoal panel with a thin
   gold edge + light text, matching the hero and footer.
   NOTE: if a WHITE frame still shows AROUND the card, that white is
   on a PARENT Elementor section — set that section's Background to
   #0E0E0F in Elementor (same move you did on the header). If it
   looks like a box-inside-a-box, do that and tell me; I'll drop the
   inner border so the parent section becomes the single clean card.
   ============================================================ */
.single-product .site-main,.single-product #main,.woocommerce-page .site-main,body.single-product{
  padding-top:0 !important;margin-top:0 !important;
}
/* Darken the card wherever the white background actually lives.
   :has() reaches the Elementor container that holds the summary, not
   just the summary element itself — that's why the panel stayed white
   before. */
.single-product .e-con:has(.summary),
.single-product .e-con-inner:has(.summary),
.single-product .elementor-widget-wrap:has(.summary),
.single-product .elementor-element:has(> .elementor-widget-container .summary),
.single-product .summary,
.single-product .entry-summary,
.single-product div.product .summary{
  background-color:#141416 !important;
}
/* Gold edge on the summary card */
.single-product .summary,
.single-product .entry-summary{
  border:1px solid rgba(192,144,47,0.28) !important;
  border-radius:16px !important;
  padding:28px 30px !important;
  box-shadow:0 24px 60px rgba(0,0,0,0.55) !important;
}
/* Price — gold accent */
.single-product .summary .price,
.single-product .summary .price .woocommerce-Price-amount,
.single-product .summary .price bdi,
.single-product .entry-summary .price,
.single-product .entry-summary .woocommerce-Price-amount,
.single-product .entry-summary .woocommerce-Price-amount bdi{
  color:var(--pp-gold-light) !important;
}
/* Specs, descriptions — light on the dark card */
.single-product .summary,
.single-product .summary li,
.single-product .summary ul li,
.single-product .summary p,
.single-product .entry-summary li,
.single-product .entry-summary p,
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description p,
.single-product .woocommerce-product-details__short-description li,
.woocommerce-Tabs-panel--description p,
.elementor-widget-woocommerce-product-content p{
  color:var(--pp-body) !important;
  text-align:left !important;
}
/* Bold labels (Storage:, Guarantee) — brightest */
.single-product .summary strong,
.single-product .entry-summary strong,
.single-product .woocommerce-product-details__short-description strong{
  color:var(--pp-text) !important;
}
.single-product .summary em,
.single-product .woocommerce-product-details__short-description em,
.single-product em{
  color:var(--pp-muted) !important;
  font-size:13.5px !important;
  line-height:1.7 !important;
}
/* Hairline divider inside the card */
.single-product .summary hr,
.single-product .entry-summary hr{
  border-color:rgba(192,144,47,0.25) !important;
}
/* Breadcrumb on the dark page */
.woocommerce-breadcrumb{
  font-size:12px !important;font-weight:400 !important;color:var(--pp-muted) !important;
  letter-spacing:0.5px !important;padding:12px 0 !important;margin:0 !important;
}
.woocommerce-breadcrumb a{color:var(--pp-body) !important;}
.woocommerce-breadcrumb a:hover{color:var(--pp-gold-light) !important;}
/* Product data tabs (dark) */
.woocommerce-tabs ul.tabs li{background:#1D1D1F !important;border-color:var(--pp-rule) !important;}
.woocommerce-tabs ul.tabs li a{color:var(--pp-body) !important;}
.woocommerce-tabs ul.tabs li.active{background:#262629 !important;}
.woocommerce-tabs ul.tabs li.active a{color:var(--pp-gold-light) !important;}
.woocommerce-Tabs-panel h2,.woocommerce-Tabs-panel h3{color:var(--pp-text) !important;}

/* ============================================================
   DIVIDER — thin gold hairline
   ============================================================ */
.elementor-widget-divider .elementor-divider-separator{
  border-top-color:rgba(194,160,62,0.4) !important;
}

/* ============================================================
   FOOTER
   ============================================================ */
.elementor-location-footer{background-color:var(--pp-surface) !important;}
.elementor-location-footer .elementor-section:first-child,
.elementor-location-footer .e-con:first-child{padding-top:0 !important;margin-top:0 !important;}
.elementor-location-footer .elementor-section,
.elementor-location-footer .e-con{padding-top:40px !important;padding-bottom:40px !important;}
.elementor-location-footer p{color:var(--pp-body) !important;}
.elementor-location-footer a{color:rgba(255,255,255,0.72) !important;text-decoration:none !important;transition:color .2s !important;}  /* AA-legible */
.elementor-location-footer a:hover{color:var(--pp-gold-light) !important;}
.elementor-location-footer a:focus-visible{outline:none !important;color:var(--pp-gold-light) !important;text-decoration:underline !important;}

/* ============================================================
   MY ACCOUNT
   ============================================================ */
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account input[type="submit"],
body.woocommerce-account button[type="submit"]{
  background:var(--pp-gold-grad) !important;color:var(--pp-ink) !important;
  border:none !important;border-radius:980px !important;font-family:var(--pp-font-display) !important;
  font-size:13px !important;font-weight:700 !important;letter-spacing:1.5px !important;
  text-transform:uppercase !important;padding:13px 28px !important;box-shadow:none !important;
}
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account .input-text{
  background-color:var(--pp-surface-2) !important;color:var(--pp-text) !important;border:1px solid var(--pp-rule) !important;
  border-radius:12px !important;padding:14px 18px !important;font-family:var(--pp-font-body) !important;font-size:15px !important;
}
body.woocommerce-account label{
  font-family:var(--pp-font-body) !important;font-size:12px !important;font-weight:600 !important;
  letter-spacing:1.5px !important;text-transform:uppercase !important;color:var(--pp-muted) !important;
  margin-bottom:8px !important;display:block !important;
}
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  background-color:var(--pp-surface-2) !important;color:var(--pp-body) !important;border:none !important;
  border-left:3px solid var(--pp-gold) !important;border-radius:0 12px 12px 0 !important;
  padding:16px 20px !important;font-family:var(--pp-font-body) !important;font-size:14px !important;
}
html body.woocommerce-account ul.woocommerce-MyAccount-navigation li a{
  background:var(--pp-surface-2) !important;background-image:none !important;color:var(--pp-body) !important;
  border-bottom:1px solid rgba(255,255,255,0.06) !important;border-radius:0 !important;padding:14px 20px !important;
  font-family:var(--pp-font-body) !important;font-size:13px !important;font-weight:500 !important;
  letter-spacing:1px !important;text-transform:uppercase !important;display:block !important;
}
html body.woocommerce-account ul.woocommerce-MyAccount-navigation li a:hover{background:var(--pp-surface-3) !important;color:var(--pp-gold-light) !important;}
html body.woocommerce-account ul.woocommerce-MyAccount-navigation li.is-active a{background:var(--pp-gold) !important;color:var(--pp-ink) !important;}

/* ============================================================
   LEGAL STORE NOTICE
   ============================================================ */
.woocommerce-store-notice,.demo_store{
  background-color:var(--pp-surface) !important;
  color:rgba(255,255,255,0.72) !important;
  border:none !important;
  border-bottom:1px solid rgba(194,160,62,0.18) !important;
  font-size:11px !important;
  letter-spacing:1px !important;
  text-align:center !important;
  padding:9px 20px !important;
}

/* ============================================================
   MANUAL STEPS THIS FILE CANNOT DO (set in WordPress/Elementor):
   A) HEADINGS: one H1 per page (product title IS the H1 on product
      pages — don't add a second). Set tag via the Heading widget's
      "HTML Tag" dropdown. Styling stays on-brand at any level.
   B) IMAGE ALT TEXT: Media Library > image > Alt Text, descriptive,
      e.g. "BPC-157 5mg lyophilized research peptide vial with COA".
   C) TITLE TAG + META: per page in Yoast/Rank Math (use the
      newsletter-and-seo-packet.md values).
   D) SCHEMA (JSON-LD): paste the packet blocks via the SEO plugin.
   E) PAGE BACKGROUND: if any section still shows white, set that
      Elementor section's Style > Background to #000000 (this file
      makes containers transparent, but a hard-set white in Elementor
      will override CSS).
   ============================================================ */


/* ============================================================
   AGE GATE — DARK LUXURY (matches master stylesheet v8.0)
   Targets the Age Gate plugin's BEM classes (.age-gate__*)
   Appended by site build — uses --pp-* design tokens.
   ============================================================ */
.age-gate__background,
.age-gate__background-color { background-color: var(--pp-bg, #000) !important; }

.age-gate__restricted .age-gate__wrapper,
.age-gate .age-gate__wrapper {
  background: var(--pp-surface, #0E0E0F) !important;
  border: 1px solid var(--pp-gold-subtle, rgba(192,144,47,0.14)) !important;
  border-radius: 6px !important;
  box-shadow: 0 0 80px rgba(192,144,47,0.10), 0 30px 80px rgba(0,0,0,0.7) !important;
  max-width: 540px !important;
  padding: 44px 46px 40px !important;
  text-align: center !important;
}
.age-gate__heading-title--logo img,
.age-gate__heading--logo img { max-width: 230px !important; margin: 0 auto 26px !important; display: block !important; }
.age-gate__heading-title--logo,
.age-gate__heading--logo { position: relative !important; padding-bottom: 26px !important; margin-bottom: 22px !important; }
.age-gate__heading-title--logo::after,
.age-gate__heading--logo::after {
  content: "" !important; position: absolute !important; left: 50% !important; bottom: 0 !important;
  transform: translateX(-50%) !important; width: 64px !important; height: 1px !important;
  background: var(--pp-gold-grad, linear-gradient(135deg,#EBC36B,#C49636,#8C6418)) !important;
}
.age-gate__headline,
.age-gate__heading h1,
.age-gate__heading h2 {
  font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important;
  font-style: normal !important; font-weight: 600 !important; font-size: 24px !important;
  letter-spacing: 5px !important; text-transform: uppercase !important;
  color: var(--pp-text, #F5F5F7) !important; text-align: center !important; margin: 0 0 8px !important;
}
.age-gate__subheadline {
  font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important;
  font-weight: 600 !important; font-size: 11px !important; letter-spacing: 3px !important;
  text-transform: uppercase !important; color: var(--pp-gold-light, #E2B358) !important;
  text-align: center !important; margin: 0 0 26px !important;
}
.age-gate__form p,
.age-gate__restricted p,
.age-gate__challenge p,
.age-gate p {
  font-family: var(--pp-font-body, 'DM Sans', sans-serif) !important;
  color: var(--pp-body, #E4E4E7) !important; font-size: 15px !important; line-height: 1.65 !important;
  letter-spacing: 0.2px !important; text-align: center !important; text-transform: none !important;
  margin: 0 auto 22px !important; max-width: 420px !important;
}
.age-gate__buttons { display: flex !important; gap: 14px !important; justify-content: center !important; margin-top: 8px !important; }
.age-gate__submit,
.age-gate__buttons button,
.age-gate__buttons a {
  font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important;
  font-weight: 600 !important; font-size: 13px !important; letter-spacing: 2.5px !important;
  text-transform: uppercase !important; min-width: 158px !important; padding: 15px 26px !important;
  border-radius: 50px !important; cursor: pointer !important;
  transition: all var(--pp-duration, 0.32s) var(--pp-ease, cubic-bezier(0.4,0,0.2,1)) !important;
}
.age-gate__submit--yes,
button.age-gate__submit--yes {
  background: var(--pp-gold-grad, linear-gradient(135deg,#EBC36B,#C49636,#8C6418)) !important;
  color: var(--pp-ink, #16130A) !important; border: 1px solid var(--pp-gold, #C0902F) !important;
}
.age-gate__submit--yes:hover { filter: brightness(1.08) !important; box-shadow: 0 8px 30px rgba(192,144,47,0.35) !important; transform: translateY(-1px) !important; }
.age-gate__submit--no,
button.age-gate__submit--no {
  background: transparent !important; color: var(--pp-muted, #ABABB0) !important;
  border: 1px solid var(--pp-rule, rgba(255,255,255,0.18)) !important;
}
.age-gate__submit--no:hover { border-color: var(--pp-gold, #C0902F) !important; color: var(--pp-gold-light, #E2B358) !important; }
.age-gate__form p:last-of-type,
.age-gate__restricted > p:last-of-type {
  font-size: 11.5px !important; line-height: 1.7 !important; color: var(--pp-muted, #ABABB0) !important;
  letter-spacing: 0.3px !important; margin-top: 24px !important; opacity: 0.85 !important;
}
@media (max-width: 768px) {
  .age-gate__restricted .age-gate__wrapper,
  .age-gate .age-gate__wrapper { padding: 34px 26px 30px !important; max-width: 92% !important; }
  .age-gate__headline,
  .age-gate__heading h1,
  .age-gate__heading h2 { font-size: 20px !important; letter-spacing: 4px !important; }
  .age-gate__buttons { flex-direction: column !important; }
  .age-gate__submit,
  .age-gate__buttons button,
  .age-gate__buttons a { width: 100% !important; min-width: 0 !important; }
}

/* SUBHEAD FIX: gold accent must beat body p rule */
p.age-gate__subheadline,
.age-gate__form p.age-gate__subheadline,
.age-gate p.age-gate__subheadline {
  color: var(--pp-gold-light, #E2B358) !important;
  font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  max-width: none !important;
  margin: 0 0 26px !important;
}

/* CENTERING FIX: center the card in the viewport */
.age-gate__restricted {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 24px !important;
}
.age-gate__restricted .age-gate__wrapper,
.age-gate .age-gate__wrapper {
  margin: 0 auto !important;
}

/* CENTERING FIX V2: pin the card to true screen center as an overlay */
.age-gate__restricted .age-gate__wrapper,
.age-gate .age-gate__wrapper {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  width: calc(100% - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  overflow-y: auto !important;
  z-index: 2147483600 !important;
}

/* FIT FIX: tighten vertical rhythm so it fits without scrolling on short screens; hide scrollbar */
.age-gate__restricted .age-gate__wrapper,
.age-gate .age-gate__wrapper { padding: 34px 46px 32px !important; scrollbar-width: none !important; }
.age-gate__wrapper::-webkit-scrollbar { display: none !important; width: 0 !important; }
.age-gate__heading-title--logo img,
.age-gate__heading--logo img { max-width: 200px !important; margin: 0 auto 18px !important; }
.age-gate__heading-title--logo,
.age-gate__heading--logo { padding-bottom: 20px !important; margin-bottom: 18px !important; }
.age-gate__form p,
.age-gate__restricted p,
.age-gate__challenge p,
.age-gate p { margin: 0 auto 16px !important; }
.age-gate__headline,
.age-gate__heading h1,
.age-gate__heading h2 { margin: 0 0 6px !important; }
.age-gate__subheadline,
p.age-gate__subheadline { margin: 0 0 18px !important; }
/* ===================== END AGE GATE ===================== */

/* ============================================================
   STATIC DISCLAIMER BAR — replaces the scrolling ticker
   Converts .custom-ticker marquee into a still, centered,
   letter-spaced gold disclaimer for a luxury feel.
   Uses --pp-* design tokens.
   ============================================================ */

/* Outer bar: thin, black, hairline rule beneath */
.custom-ticker-wrap {
  background: var(--pp-bg, #000) !important;
  border-bottom: 1px solid var(--pp-gold-subtle, rgba(192,144,47,0.16)) !important;
  padding: 9px 16px !important;
  overflow: hidden !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Kill the scroll: no animation, no horizontal travel, centered */
.custom-ticker {
  animation: none !important;
  transform: none !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  white-space: nowrap !important;
  text-align: center !important;
}

/* The disclaimer text itself — gold, spaced caps, refined */
.custom-ticker span {
  font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  letter-spacing: 3.5px !important;
  text-transform: uppercase !important;
  color: var(--pp-gold-light, #E2B358) !important;
  white-space: nowrap !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 0.92 !important;
}

/* The text is duplicated twice for the loop — show only the first copy */
.custom-ticker span:nth-of-type(n+2) { display: none !important; }

/* Mobile: shrink + allow wrapping so the full line stays visible */
@media (max-width: 768px) {
  .custom-ticker,
  .custom-ticker span { white-space: normal !important; }
  .custom-ticker span {
    font-size: 9.5px !important;
    letter-spacing: 2px !important;
    text-align: center !important;
    line-height: 1.4 !important;
  }
}
/* ================== END STATIC DISCLAIMER BAR ================== */

/* ============================================================
   DISCLAIMER REFINE — richer gold + editorial polish
   Deeper gold tone, gradient underline, diamond accents.
   ============================================================ */

/* Gradient gold underline instead of flat hairline */
.custom-ticker-wrap {
  border-bottom: none !important;
  position: relative !important;
  padding: 10px 16px !important;
}
.custom-ticker-wrap::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg,
    rgba(192,144,47,0) 0%,
    var(--pp-gold, #C0902F) 30%,
    var(--pp-gold-light, #E2B358) 50%,
    var(--pp-gold, #C0902F) 70%,
    rgba(192,144,47,0) 100%) !important;
  opacity: 0.55 !important;
}

/* Deeper, richer gold for the text + subtle warm glow */
.custom-ticker span {
  color: var(--pp-gold, #C0902F) !important;
  letter-spacing: 4px !important;
  font-weight: 600 !important;
  opacity: 1 !important;
  text-shadow: 0 0 18px rgba(192,144,47,0.22) !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* Editorial diamond accents flanking the disclaimer */
.custom-ticker span:first-of-type::before,
.custom-ticker span:first-of-type::after {
  content: "\25C6" !important; /* ◆ */
  display: inline-block !important;
  font-size: 6px !important;
  line-height: 1 !important;
  color: var(--pp-gold-light, #E2B358) !important;
  opacity: 0.85 !important;
  vertical-align: middle !important;
  transform: translateY(-1px) !important;
}
.custom-ticker span:first-of-type::before { margin-right: 18px !important; }
.custom-ticker span:first-of-type::after  { margin-left: 18px !important; }

/* Mobile: keep accents subtle, allow wrap */
@media (max-width: 768px) {
  .custom-ticker span { letter-spacing: 2px !important; }
  .custom-ticker span:first-of-type::before { margin-right: 10px !important; }
  .custom-ticker span:first-of-type::after  { margin-left: 10px !important; }
}
/* ============== END DISCLAIMER REFINE ============== */

/* ============================================================
   HEADER LUXURY REFINE — Apple-style minimal
   ============================================================ */

/* 1) CART: icon-only, no pill */
.elementor-menu-cart__toggle .elementor-menu-cart__toggle_button { background: transparent !important; border: none !important; border-radius: 0 !important; padding: 6px !important; box-shadow: none !important; position: relative !important; }
.elementor-menu-cart__toggle .elementor-button-text { display: none !important; }
.elementor-menu-cart__toggle .elementor-button-icon svg, .elementor-menu-cart__toggle .elementor-button-icon .e-font-icon-svg { width: 24px !important; height: 24px !important; fill: var(--pp-text, #F5F5F7) !important; transition: fill var(--pp-duration, 0.32s) var(--pp-ease, cubic-bezier(0.4,0,0.2,1)) !important; }
.elementor-menu-cart__toggle .elementor-menu-cart__toggle_button:hover .elementor-button-icon svg { fill: var(--pp-gold-light, #E2B358) !important; }
.elementor-menu-cart__toggle .elementor-button-icon-qty { position: absolute !important; top: -2px !important; right: -4px !important; min-width: 16px !important; height: 16px !important; padding: 0 4px !important; display: flex !important; align-items: center !important; justify-content: center !important; background: var(--pp-gold-grad, linear-gradient(135deg,#EBC36B,#C49636,#8C6418)) !important; color: var(--pp-ink, #16130A) !important; font-family: var(--pp-font-display, 'Rajdhani', sans-serif) !important; font-weight: 700 !important; font-size: 10px !important; line-height: 1 !important; letter-spacing: 0 !important; border-radius: 50px !important; box-shadow: 0 0 0 2px var(--pp-bg, #000) !important; }

/* 2) NAV: spacing + gold hover underline */
.elementor-location-header .elementor-nav-menu .elementor-item, .elementor-location-header nav .elementor-item { font-weight: 500 !important; letter-spacing: 3.4px !important; position: relative !important; transition: color var(--pp-duration, 0.32s) var(--pp-ease, cubic-bezier(0.4,0,0.2,1)) !important; }
.elementor-location-header .elementor-nav-menu .elementor-item::after, .elementor-location-header nav .elementor-item::after { content: "" !important; position: absolute !important; left: 50% !important; bottom: -6px !important; width: 0 !important; height: 1px !important; background: var(--pp-gold-grad, linear-gradient(135deg,#EBC36B,#C49636,#8C6418)) !important; transform: translateX(-50%) !important; transition: width var(--pp-duration, 0.32s) var(--pp-ease, cubic-bezier(0.4,0,0.2,1)) !important; }
.elementor-location-header .elementor-nav-menu .elementor-item:hover::after, .elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active::after, .elementor-location-header nav .elementor-item:hover::after { width: 22px !important; }
.elementor-location-header .elementor-nav-menu .elementor-item:hover, .elementor-location-header nav .elementor-item:hover { color: var(--pp-gold-light, #E2B358) !important; }

/* 3) SLIMMER HEADER */
.elementor-location-header > .elementor, .elementor-location-header .e-con-inner, .elementor-location-header .elementor-top-section { padding-top: 14px !important; padding-bottom: 14px !important; }
.elementor-location-header .elementor-widget-image img, .elementor-location-header img { max-height: 92px !important; width: auto !important; }

/* 4) GOLD HAIRLINE BENEATH HEADER */
.elementor-location-header { position: relative !important; }
.elementor-location-header::after { content: "" !important; position: absolute !important; left: 0 !important; right: 0 !important; bottom: 0 !important; height: 1px !important; background: linear-gradient(90deg, rgba(192,144,47,0) 0%, var(--pp-gold, #C0902F) 25%, var(--pp-gold-light, #E2B358) 50%, var(--pp-gold, #C0902F) 75%, rgba(192,144,47,0) 100%) !important; opacity: 0.45 !important; pointer-events: none !important; }

/* CART PILL OVERRIDE: beat Elementor widget-id specificity */
.elementor-element-a6f3296 .elementor-menu-cart__toggle_button,
body .elementor-menu-cart__toggle .elementor-menu-cart__toggle_button,
body .elementor-menu-cart__toggle a.elementor-button {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 none !important;
  border-width: 0 !important;
  border-radius: 0 !important;
  padding: 4px !important;
  box-shadow: none !important;
  min-width: 0 !important;
}
.elementor-element-a6f3296 .elementor-menu-cart__toggle_button:hover,
body .elementor-menu-cart__toggle .elementor-menu-cart__toggle_button:hover {
  background: transparent !important;
  border: 0 none !important;
}
/* ============== END HEADER LUXURY REFINE ============== */

/* ============================================================
   CART TOP-RIGHT PLACEMENT — luxury convention
   Pin the cart icon to the top-right of the header,
   vertically aligned with the nav row. Desktop only;
   stacks back to normal flow on mobile.
   ============================================================ */
@media (min-width: 769px) {
  .elementor-location-header { position: relative !important; }
  /* the column container that holds logo/nav/cart */
  .elementor-element-95ff9f9 { position: static !important; }
  /* lift the cart out of the centered stack and pin it right */
  .elementor-element-a6f3296 {
    position: absolute !important;
    top: 197px !important;
    right: 48px !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    width: auto !important;
    z-index: 20 !important;
  }
}
/* ============== END CART TOP-RIGHT PLACEMENT ============== */

/* ===== LANDING LUXURY PASS v1 (buttons + grid breathing) ===== */
/* Calmer product grid: more whitespace between cards */
ul.products.elementor-grid{ grid-gap:34px 28px !important; }
@media(min-width:1025px){ ul.products.elementor-grid{ grid-gap:40px 32px !important; } }
ul.products li.product{ padding:22px 20px 26px !important; transition:transform .4s cubic-bezier(.4,0,.2,1), border-color .4s cubic-bezier(.4,0,.2,1) !important; }
ul.products li.product:hover{ transform:translateY(-4px) !important; border-color:rgba(192,144,47,0.45) !important; }
/* Product title: lighter, more editorial */
ul.products li.product h2.woocommerce-loop-product__title{ font-weight:500 !important; letter-spacing:1.4px !important; }
/* DEFAULT button: slim outlined gold (let it whisper) */
ul.products li.product a.button{
  background:transparent !important;
  background-image:none !important;
  color:#C49636 !important;
  border:1px solid rgba(192,144,47,0.55) !important;
  font-weight:600 !important;
  letter-spacing:2.6px !important;
  box-shadow:none !important;
  transition:background-color .35s cubic-bezier(.4,0,.2,1), color .35s cubic-bezier(.4,0,.2,1), border-color .35s cubic-bezier(.4,0,.2,1) !important;
}
/* HOVER button: fill gold gradient, dark ink text (the one moment of confidence) */
ul.products li.product a.button:hover,
ul.products li.product a.button:focus{
  background:linear-gradient(135deg,#EBC36B 0%,#C49636 48%,#8C6418 100%) !important;
  color:#16130A !important;
  border-color:transparent !important;
}
/* keep the same calm treatment on the added/loading state */
ul.products li.product a.button.added,
ul.products li.product a.button.loading{ background:transparent !important; color:#C49636 !important; }


/* ===== TRUST BADGE LUXURY (seals -> framed gold icons) ===== */
/* tighten the seal containers' vertical rhythm */
.elementor-element-62194d6,.elementor-element-0542ed3,.elementor-element-b53d742{ margin-bottom:0 !important; padding-bottom:6px !important; }
/* shrink + calm the wax seal images */
.elementor-element-62194d6 img,.elementor-element-0542ed3 img,.elementor-element-b53d742 img{ width:58px !important; height:58px !important; object-fit:contain !important; display:block !important; margin:0 auto !important; filter:saturate(0.9) brightness(1.06) !important; }
/* thin gold ring frame -> premium line-icon feel */
.elementor-element-62194d6 .elementor-widget-image .elementor-widget-container,.elementor-element-0542ed3 .elementor-widget-image .elementor-widget-container,.elementor-element-b53d742 .elementor-widget-image .elementor-widget-container{ width:104px; height:104px; margin:0 auto !important; border:1px solid rgba(192,144,47,0.38); border-radius:50%; display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at 50% 38%, rgba(192,144,47,0.12), rgba(192,144,47,0.02) 65%, transparent 72%); box-shadow:0 0 22px rgba(192,144,47,0.10), inset 0 0 18px rgba(192,144,47,0.06); transition:border-color .4s cubic-bezier(.4,0,.2,1), box-shadow .4s cubic-bezier(.4,0,.2,1); }
.elementor-element-62194d6 .elementor-widget-image .elementor-widget-container:hover,.elementor-element-0542ed3 .elementor-widget-image .elementor-widget-container:hover,.elementor-element-b53d742 .elementor-widget-image .elementor-widget-container:hover{ border-color:rgba(192,144,47,0.70); box-shadow:0 0 30px rgba(192,144,47,0.18), inset 0 0 18px rgba(192,144,47,0.10); }
/* refine the title+desc block under each ring */
.elementor-element-11bc2d5,.elementor-element-18f6fc5,.elementor-element-c02267e{ margin-top:16px !important; margin-bottom:46px !important; max-width:620px; margin-left:auto !important; margin-right:auto !important; }


/* ===== TRUST BADGE VERTICAL POLISH (tighten + hairline separators) ===== */
/* zero out seal container padding/margins */
.elementor-element-62194d6,.elementor-element-0542ed3,.elementor-element-b53d742{ margin:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
.elementor-element-62194d6{ margin-top:6px !important; }
/* pull titles close to their icons and kill the big bottom gap (high specificity to beat earlier rule) */
.elementor-widget.elementor-element-11bc2d5[data-id],.elementor-widget.elementor-element-18f6fc5[data-id],.elementor-widget.elementor-element-c02267e[data-id]{ margin-top:14px !important; margin-bottom:0 !important; padding-bottom:0 !important; }
.elementor-element-c02267e{ margin-bottom:10px !important; }
/* elegant fading gold hairline separator below the first two groups */
.elementor-element-11bc2d5,.elementor-element-18f6fc5{ position:relative !important; }
.elementor-element-11bc2d5::after,.elementor-element-18f6fc5::after{ content:'' !important; display:block !important; width:60px !important; height:1px !important; margin:24px auto 22px !important; background:linear-gradient(90deg, transparent, rgba(192,144,47,0.55), transparent) !important; }
/* gentle lift on the gold ring icons on hover */
.elementor-element-62194d6 .elementor-widget-image .elementor-widget-container,.elementor-element-0542ed3 .elementor-widget-image .elementor-widget-container,.elementor-element-b53d742 .elementor-widget-image .elementor-widget-container{ transition:border-color .4s cubic-bezier(.4,0,.2,1), box-shadow .4s cubic-bezier(.4,0,.2,1), transform .4s cubic-bezier(.4,0,.2,1) !important; }
.elementor-element-62194d6 .elementor-widget-image .elementor-widget-container:hover,.elementor-element-0542ed3 .elementor-widget-image .elementor-widget-container:hover,.elementor-element-b53d742 .elementor-widget-image .elementor-widget-container:hover{ transform:translateY(-3px) !important; }


/* ============ SHOP PAGE LUXURY PASS ============ */
/* result count -> refined Rajdhani label */
.woocommerce-result-count{ font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important; letter-spacing:3px !important; font-size:13px !important; font-weight:600 !important; color:#ABABB0 !important; }
/* sort dropdown -> gold pill with custom chevron */
.woocommerce-ordering select.orderby{ -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important; background:#0E0E0F url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D'12'%20height%3D'8'%20viewBox%3D'0%200%2012%208'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M1%201l5%205%205-5'%20stroke%3D'%23C0902F'%20stroke-width%3D'1.6'%20fill%3D'none'%20stroke-linecap%3D'round'%2F%3E%3C%2Fsvg%3E") no-repeat right 16px center !important; border:1px solid rgba(192,144,47,0.35) !important; border-radius:980px !important; color:#F5F2EA !important; font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important; letter-spacing:2px !important; font-size:12px !important; font-weight:600 !important; padding:12px 44px 12px 22px !important; cursor:pointer !important; transition:border-color .35s cubic-bezier(.4,0,.2,1) !important; }
.woocommerce-ordering select.orderby:hover{ border-color:rgba(192,144,47,0.70) !important; }
/* grid breathing */
.woocommerce ul.products.elementor-grid, ul.products.elementor-grid{ grid-gap:40px 32px !important; margin-top:14px !important; }
/* card refinement: hover lift + gold glow */
.woocommerce ul.products li.product, ul.products li.product{ padding:22px 22px 26px !important; border:1px solid rgba(255,255,255,0.08) !important; transition:transform .4s cubic-bezier(.4,0,.2,1), border-color .4s cubic-bezier(.4,0,.2,1), box-shadow .4s cubic-bezier(.4,0,.2,1) !important; }
.woocommerce ul.products li.product:hover, ul.products li.product:hover{ transform:translateY(-5px) !important; border-color:rgba(192,144,47,0.45) !important; box-shadow:0 18px 50px rgba(0,0,0,0.55), 0 0 26px rgba(192,144,47,0.10) !important; }
/* frame product images */
ul.products li.product img.attachment-woocommerce_thumbnail{ border-radius:12px !important; background:radial-gradient(ellipse at 50% 40%, #14141A 0%, #0B0B0D 100%) !important; transition:transform .5s cubic-bezier(.4,0,.2,1) !important; }
ul.products li.product:hover img.attachment-woocommerce_thumbnail{ transform:scale(1.03) !important; }
/* title */
ul.products li.product h2.woocommerce-loop-product__title{ font-weight:500 !important; letter-spacing:1.6px !important; margin-top:18px !important; }
/* price -> refined gold, non-italic */
ul.products li.product .price{ font-style:normal !important; font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; letter-spacing:1px !important; color:#E2B358 !important; font-size:19px !important; }


/* ============ SINGLE PRODUCT LUXURY PASS ============ */
/* title -> upright, refined tracking */
h1.product_title{ font-style:normal !important; letter-spacing:1.5px !important; line-height:1.08 !important; margin-bottom:22px !important; }
/* price -> clean gold, display font */
.product .price, .summary .price, p.price, .elementor-widget-woocommerce-product-price .price{ font-style:normal !important; font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; letter-spacing:0.5px !important; color:#E2B358 !important; }
.product .price .woocommerce-Price-amount{ font-style:normal !important; color:#E2B358 !important; }
/* spec list -> gold diamond markers */
.woocommerce-product-details__short-description ul{ list-style:none !important; padding-left:0 !important; }
.woocommerce-product-details__short-description ul li{ position:relative !important; padding-left:22px !important; margin-bottom:11px !important; line-height:1.5 !important; color:#E4E4E7 !important; }
.woocommerce-product-details__short-description ul li::before{ content:'' !important; position:absolute !important; left:0 !important; top:9px !important; width:7px !important; height:7px !important; background:linear-gradient(135deg,#EBC36B,#C49636) !important; transform:rotate(45deg) !important; border-radius:1px !important; }
.woocommerce-product-details__short-description em,.woocommerce-product-details__short-description i{ color:#ABABB0 !important; }
/* main image -> framed + rounded */
.woocommerce-product-gallery__image img,.woocommerce-product-gallery img.wp-post-image{ border-radius:14px !important; border:1px solid rgba(255,255,255,0.06) !important; }
/* qty input refine */
.quantity input.qty{ font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; font-size:16px !important; }
/* add to cart refine */
button.single_add_to_cart_button{ font-family:'Rajdhani',sans-serif !important; letter-spacing:3px !important; font-weight:700 !important; }
/* related heading refine */
.related h2,.elementor-widget-woocommerce-product-content h2{ font-family:'Rajdhani',sans-serif !important; letter-spacing:4px !important; text-transform:uppercase !important; }


/* ============================================================
   RESEARCH PAGE LUXURY PASS  (appended block — reversible)
   Targets research page widgets by Elementor element ID:
   heading 5774fb2 · body 39843b01 · compliance 2717140
   ============================================================ */
.elementor-element-51c9c864 { padding-top: 30px !important; }

/* --- Headline framing with gold hairline --- */
.elementor-element-5774fb2 .elementor-heading-title{
  font-weight: 500 !important;
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
  position: relative;
  padding-bottom: 26px !important;
  margin-bottom: 14px !important;
}
.elementor-element-5774fb2 .elementor-heading-title::after{
  content:""; position:absolute; left:50%; bottom:0;
  transform:translateX(-50%);
  width:90px; height:2px;
  background:linear-gradient(90deg,transparent,#C0902F,transparent);
}

/* --- Constrained editorial reading column --- */
.elementor-element-39843b01{
  max-width:760px !important; margin-left:auto !important; margin-right:auto !important;
}
.elementor-element-39843b01 p{
  line-height:2 !important; letter-spacing:.3px !important; font-size:16.5px !important;
}

/* --- Refined compliance disclaimer (RUO — do not remove) --- */
.elementor-element-2717140{
  max-width:760px !important; margin:34px auto 0 !important;
  padding-top:26px !important; position:relative;
}
.elementor-element-2717140::before{
  content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:140px; height:1px;
  background:linear-gradient(90deg,transparent,rgba(192,144,47,.55),transparent);
}
.elementor-element-2717140 p{
  text-transform:uppercase !important; letter-spacing:2.5px !important; font-size:11.5px !important;
  font-family:'Rajdhani',sans-serif !important; color:#C0902F !important; line-height:1.9 !important;
}

/* ============================================================
   RESEARCH RESOURCES / READING LIST  (pre-styled — waiting)
   Paste an HTML widget with class "pp-research-links" tomorrow
   and these styles auto-apply. Structure expected:
   <div class="pp-research-links">
     <h3>Further Reading</h3>
     <a href="..." target="_blank" rel="noopener">
        <span class="pp-rl-source">PubMed</span>
        <span class="pp-rl-title">Article title here</span>
     </a> ...
   </div>
   ============================================================ */
.pp-research-links{
  max-width:760px; margin:54px auto 0; padding-top:38px;
  border-top:1px solid rgba(192,144,47,.25);
}
.pp-research-links h3{
  font-family:'Rajdhani',sans-serif; text-transform:uppercase;
  letter-spacing:5px; font-weight:500; color:#E2B358;
  text-align:center; margin-bottom:30px; font-size:15px;
}
.pp-research-links a{
  display:flex; align-items:baseline; gap:14px;
  padding:16px 18px; margin-bottom:12px;
  border:1px solid rgba(192,144,47,.18); border-radius:12px;
  text-decoration:none; transition:all .25s ease;
  background:rgba(192,144,47,.03);
}
.pp-research-links a:hover{
  border-color:rgba(192,144,47,.55);
  background:rgba(192,144,47,.07);
  transform:translateY(-2px);
}
.pp-research-links .pp-rl-source{
  font-family:'Rajdhani',sans-serif; text-transform:uppercase;
  letter-spacing:2px; font-size:11px; color:#C0902F;
  min-width:78px; flex-shrink:0;
}
.pp-research-links .pp-rl-title{
  font-family:'DM Sans',sans-serif; font-size:15px; color:#e7e4dd;
  letter-spacing:.2px; line-height:1.5;
}
.pp-research-links a:hover .pp-rl-title{ color:#fff; }


/* ============================================================
   CART LUXURY PASS  (appended block — reversible)
   Elementor WooCommerce cart: dark luxury panels, gold accents
   ============================================================ */
.e-cart-section{
  background:#0d0b07 !important;
  border:1px solid rgba(192,144,47,.22) !important;
  border-radius:16px !important;
  box-shadow:0 10px 40px rgba(0,0,0,.45) !important;
}
.e-shop-table table.shop_table,
.e-shop-table table.shop_table td,
.e-shop-table table.shop_table th{ color:#e7e4dd !important; border-color:rgba(192,144,47,.14) !important; }
.e-shop-table table.shop_table th{
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:2px !important; color:#C0902F !important; font-weight:500 !important;
}
.woocommerce-cart .e-shop-table td.product-name a,
.woocommerce-cart table.cart td.product-name a{ color:#ffffff !important; font-weight:600 !important; letter-spacing:.4px !important; text-decoration:none !important; }
.woocommerce-cart .e-shop-table td.product-name a:hover{ color:#E2B358 !important; }
td.product-price, td.product-subtotal,
.product-subtotal .amount, .product-price .amount{
  color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; font-size:16px !important;
}
td.product-remove a.remove{ color:#C0902F !important; }
td.product-remove a.remove:hover{ color:#fff !important; background:transparent !important; }
.quantity input.qty{
  background:#16130A !important; color:#fff !important;
  border:1px solid rgba(192,144,47,.4) !important; border-radius:8px !important; font-family:'Rajdhani',sans-serif !important;
}
.woocommerce-cart .cart-collaterals .cart_totals h2,
.woocommerce-cart .e-cart-totals .cart_totals h2{
  color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important;
  text-transform:uppercase !important; letter-spacing:4px !important; font-weight:500 !important;
}
.cart_totals table td, .cart_totals table th{ color:#e7e4dd !important; border-color:rgba(192,144,47,.14) !important; }
.cart_totals .amount, .cart_totals .woocommerce-Price-amount{ color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; }
.cart_totals .order-total .amount{ font-size:20px !important; }
.woocommerce-cart input#coupon_code,
.woocommerce-cart input#coupon_code[type="text"]{
  background:#16130A !important; color:#fff !important;
  border:1px solid rgba(192,144,47,.4) !important; border-radius:10px !important;
  padding:12px 16px !important; font-family:'DM Sans',sans-serif !important;
}
.woocommerce-cart input#coupon_code::placeholder{ color:rgba(231,228,221,.45) !important; }
.button[name="update_cart"], button[name="apply_coupon"]{
  background:transparent !important; color:#E2B358 !important;
  border:1.5px solid #C0902F !important; border-radius:40px !important;
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:2.5px !important; font-weight:500 !important; transition:all .28s ease !important; box-shadow:none !important;
}
.button[name="update_cart"]:hover, button[name="apply_coupon"]:hover{
  background:linear-gradient(135deg,#EBC36B,#C49636,#8C6418) !important; color:#16130A !important;
}
.wc-proceed-to-checkout a.checkout-button{
  background:linear-gradient(135deg,#F0CB76,#D2A33F,#9C7322) !important;
  color:#16130A !important; border:none !important; border-radius:40px !important;
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:3px !important; font-weight:600 !important;
  box-shadow:0 8px 28px rgba(192,144,47,.35) !important; transition:all .28s ease !important;
}
.wc-proceed-to-checkout a.checkout-button:hover{ transform:translateY(-2px) !important; box-shadow:0 12px 34px rgba(192,144,47,.5) !important; }


/* --- CART: Remove "×" icon legibility fix (gold, brightens on hover) --- */
.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce .remove,
.woocommerce-cart .elementor-widget-woocommerce-cart td.product-remove a.remove,
.elementor-widget-woocommerce-cart .woocommerce td.product-remove a.remove{
  color:#C0902F !important;
  opacity:1 !important;
  font-weight:600 !important;
}
.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce .remove:hover,
.elementor-widget-woocommerce-cart .woocommerce td.product-remove a.remove:hover{
  color:#ffffff !important;
  background:transparent !important;
}


/* ============================================================
   CHECKOUT LUXURY PASS  (appended block — reversible)
   Elementor WooCommerce checkout: dark panels, gold accents
   NOTE: payment-gateway "no methods" notice is a WooCommerce
   settings issue (enable a gateway), not a styling issue.
   ============================================================ */
.e-checkout__order_review,
.woocommerce-checkout #order_review{
  background:#0d0b07 !important;
  border:1px solid rgba(192,144,47,.22) !important;
  border-radius:16px !important;
  box-shadow:0 10px 40px rgba(0,0,0,.45) !important;
  padding:26px 28px !important;
}
.elementor-element-5ccbc1df > .elementor-widget-container{ background:transparent !important; }

/* Headings */
.woocommerce-billing-fields > h3,
#customer_details h3,
#order_review_heading,
.woocommerce-checkout h3{
  color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important;
  text-transform:uppercase !important; letter-spacing:3px !important; font-weight:500 !important;
}
/* Field labels */
.woocommerce-checkout .form-row label,
.woocommerce-billing-fields label{
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:1.5px !important; font-size:12px !important; color:#C0902F !important;
}
/* Inputs gold-bordered */
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection{
  background:#16130A !important; color:#fff !important;
  border:1px solid rgba(192,144,47,.35) !important; border-radius:10px !important;
}
.woocommerce-checkout input.input-text::placeholder{ color:rgba(231,228,221,.4) !important; }
/* Order review table */
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{ color:#e7e4dd !important; border-color:rgba(192,144,47,.14) !important; }
.woocommerce-checkout-review-order-table .amount,
.woocommerce-checkout-review-order-table .woocommerce-Price-amount{ color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important; font-weight:600 !important; }
.woocommerce-checkout-review-order-table .order-total .amount{ font-size:19px !important; }
.woocommerce-checkout-review-order-table thead th{ font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important; letter-spacing:2px !important; color:#C0902F !important; }
/* Coupon nudge link (Elementor class) gold */
.e-show-coupon-form, .e-woocommerce-coupon-nudge a, a.e-show-coupon-form{ color:#E2B358 !important; text-decoration:none !important; font-weight:600 !important; }
.e-show-coupon-form:hover{ color:#fff !important; }
.e-woocommerce-coupon-nudge{ color:#e7e4dd !important; }
/* Coupon form (expanded) */
.checkout_coupon .input-text{ background:#16130A !important; color:#fff !important; border:1px solid rgba(192,144,47,.35) !important; border-radius:10px !important; }
.checkout_coupon button{
  background:transparent !important; color:#E2B358 !important; border:1.5px solid #C0902F !important; border-radius:40px !important;
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important; letter-spacing:2px !important; transition:all .28s ease !important;
}
.checkout_coupon button:hover{ background:linear-gradient(135deg,#EBC36B,#C49636,#8C6418) !important; color:#16130A !important; }
/* Payment section dark panel */
.woocommerce-checkout #payment,
.woocommerce-checkout-payment{
  background:#0d0b07 !important; border:1px solid rgba(192,144,47,.22) !important; border-radius:16px !important;
}
.woocommerce-checkout #payment .payment_methods li,
.woocommerce-checkout #payment label{ color:#e7e4dd !important; }
.woocommerce-checkout #payment .place-order{ background:transparent !important; }
/* Notices softened to dark gold-tint */
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-notice{
  background:rgba(192,144,47,.07) !important; color:#e7e4dd !important;
  border-top:2px solid #C0902F !important; border-radius:8px !important;
}
.woocommerce-checkout .woocommerce-info::before,
.woocommerce-checkout .woocommerce-message::before{ color:#C0902F !important; }
/* Privacy/terms */
.woocommerce-privacy-policy-text, .woocommerce-privacy-policy-text p,
.woocommerce-terms-and-conditions-wrapper{ color:#b9b4a8 !important; }
.woocommerce-privacy-policy-text a, .woocommerce-checkout a[href*="privacy"]{ color:#E2B358 !important; text-decoration:underline !important; }
.woocommerce-privacy-policy-text a:hover{ color:#fff !important; }
/* Place Order = solid gold hero CTA */
#place_order{
  background:linear-gradient(135deg,#F0CB76,#D2A33F,#9C7322) !important;
  color:#16130A !important; border:none !important; border-radius:40px !important;
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:3px !important; font-weight:600 !important; padding:16px 30px !important;
  box-shadow:0 8px 28px rgba(192,144,47,.35) !important; transition:all .28s ease !important;
}
#place_order:hover{ transform:translateY(-2px) !important; box-shadow:0 12px 34px rgba(192,144,47,.5) !important; }


/* ============================================================
   MY ACCOUNT LUXURY PASS  (appended block — reversible)
   Elementor WooCommerce My Account: dark panel, gold nav/accents
   ============================================================ */
/* Content card -> dark luxury panel */
.woocommerce-account .woocommerce-MyAccount-content{
  background:#0d0b07 !important;
  border:1px solid rgba(192,144,47,.22) !important;
  border-radius:16px !important;
  box-shadow:0 10px 40px rgba(0,0,0,.45) !important;
  padding:34px 38px !important;
  color:#e7e4dd !important;
}
.woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce-account .woocommerce-MyAccount-content td,
.woocommerce-account .woocommerce-MyAccount-content th{ color:#e7e4dd !important; }
.woocommerce-account .woocommerce-MyAccount-content strong{ color:#fff !important; }
.woocommerce-account .woocommerce-MyAccount-content a{ color:#E2B358 !important; text-decoration:none !important; }
.woocommerce-account .woocommerce-MyAccount-content a:hover{ color:#fff !important; }
/* nested content wrapper painted white -> transparent */
.woocommerce-account .woocommerce-MyAccount-content-wrapper{ background:transparent !important; color:#e7e4dd !important; }
.woocommerce-account .woocommerce-MyAccount-content-wrapper p,
.woocommerce-account .woocommerce-MyAccount-content-wrapper{ color:#e7e4dd !important; }
.woocommerce-account .woocommerce-MyAccount-content-wrapper strong{ color:#fff !important; }
.woocommerce-account .woocommerce-MyAccount-content-wrapper a{ color:#E2B358 !important; }

/* Navigation refinement */
.woocommerce-MyAccount-navigation ul{ border:none !important; list-style:none !important; padding-left:0 !important; }
.woocommerce-MyAccount-navigation ul li{ border-bottom:1px solid rgba(192,144,47,.12) !important; }
.woocommerce-MyAccount-navigation ul li a{
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:2px !important; color:#b9b4a8 !important;
  display:block !important; padding:12px 6px !important; transition:all .22s ease !important;
}
.woocommerce-MyAccount-navigation ul li a:hover{ color:#E2B358 !important; padding-left:14px !important; }
.woocommerce-MyAccount-navigation ul li.is-active a{
  color:#E2B358 !important; font-weight:600 !important;
  border-left:2px solid #C0902F !important; padding-left:14px !important;
}

/* Dashboard headings */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3{
  color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important;
  text-transform:uppercase !important; letter-spacing:3px !important; font-weight:500 !important;
}
/* Orders / tables */
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .shop_table{ color:#e7e4dd !important; }
.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .shop_table th{
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:2px !important; color:#C0902F !important;
}
.woocommerce-account .woocommerce-orders-table td,
.woocommerce-account .shop_table td{ border-color:rgba(192,144,47,.14) !important; }
.woocommerce-account .shop_table .amount{ color:#E2B358 !important; font-family:'Rajdhani',sans-serif !important; }

/* Notices harmonized */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message{
  background:rgba(192,144,47,.07) !important; color:#e7e4dd !important;
  border-top:2px solid #C0902F !important; border-radius:8px !important;
}

/* Buttons -> outlined gold fill */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button{
  background:transparent !important; color:#E2B358 !important;
  border:1.5px solid #C0902F !important; border-radius:40px !important;
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:2.5px !important; font-weight:500 !important; transition:all .28s ease !important; box-shadow:none !important;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button:hover{
  background:linear-gradient(135deg,#EBC36B,#C49636,#8C6418) !important; color:#16130A !important;
}
/* Account-details form inputs */
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content select{
  background:#16130A !important; color:#fff !important;
  border:1px solid rgba(192,144,47,.35) !important; border-radius:10px !important;
}
.woocommerce-account .woocommerce-MyAccount-content label{
  font-family:'Rajdhani',sans-serif !important; text-transform:uppercase !important;
  letter-spacing:1.5px !important; font-size:12px !important; color:#C0902F !important;
}


/* ============================================================
   FAQ ACCORDION TEXT — ALL WHITE (research page)
   Forces every accordion question (active + inactive) and all
   answer text to pure white for readability. Overrides the
   gold/dark defaults from the Elementor accordion widget.
   ============================================================ */
.woocommerce .elementor-accordion .elementor-tab-title,
.elementor-accordion .elementor-tab-title,
.elementor-accordion .elementor-tab-title.elementor-active,
.elementor-accordion .elementor-tab-title .elementor-accordion-title,
.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-title,
.elementor-accordion .elementor-tab-title a,
.elementor-accordion .elementor-accordion-icon,
.elementor-accordion .elementor-accordion-icon i,
.elementor-accordion .elementor-accordion-icon svg {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}
.elementor-accordion .elementor-tab-content,
.elementor-accordion .elementor-tab-content *,
.elementor-accordion .elementor-tab-content p,
.elementor-accordion .elementor-tab-content li,
.elementor-accordion .elementor-tab-content a {
  color: #FFFFFF !important;
}
.elementor-accordion .elementor-tab-content a {
  text-decoration: underline !important;
}


/* =========================================================
   PP FAQ — ALWAYS OPEN, WHITE ANSWERS (research page)
   Forces every accordion panel open so the FAQ is fully
   informative (not hidden behind clicks). Questions = gold,
   answers = white. Toggle icon hidden. Reversible block.
   ========================================================= */
.elementor-accordion .elementor-tab-content{
  display:block !important;
  opacity:1 !important;
  height:auto !important;
}
.elementor-accordion .elementor-tab-content,
.elementor-accordion .elementor-tab-content p,
.elementor-accordion .elementor-tab-content span,
.elementor-accordion .elementor-tab-content li{
  color:#FFFFFF !important;
}
.elementor-accordion .elementor-tab-title,
.elementor-accordion .elementor-tab-title.elementor-active,
.elementor-accordion .elementor-tab-title:not(.elementor-active),
.elementor-accordion .elementor-tab-title a.elementor-accordion-title,
.elementor-accordion .elementor-tab-title.elementor-active a.elementor-accordion-title{
  cursor:default !important;
  color:#E2B358 !important;
}
.elementor-accordion .elementor-accordion-icon{
  display:none !important;
}


/* =========================================================
   MY ACCOUNT PAGE — BACKGROUND FIX (OPTION A · page-specific)
   Forces solid black + removes stray background image so
   nothing "peeks through" behind the account content.
   Added via Claude · targeted to page-id-8 only.
   ========================================================= */
body.page-id-8,
body.woocommerce-account {
  background-color: #000000 !important;
  background-image: none !important;
}
/* Belt-and-suspenders: kill any inherited bg image on the
   main wrappers of the My Account page as well */
body.page-id-8 #page,
body.page-id-8 .site,
body.page-id-8 main,
body.page-id-8 .elementor,
body.woocommerce-account #page,
body.woocommerce-account .site,
body.woocommerce-account main,
body.woocommerce-account .elementor {
  background-image: none !important;
}


/* ===== PP-HERO-FILL: fill hero width, keep aspect ratio (no stretch) ===== */
img.pp-hero{
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 auto !important;
}
/* center the hero flex parent as a safety fallback so image is never left-pinned */
.pp-hero{margin-left:auto !important;margin-right:auto !important;}


/* ===== PP-NAV-DIVIDER: change nav menu separator lines from blue to gold ===== */
.elementor-nav-menu--layout-horizontal .elementor-nav-menu > li:not(:last-child)::after{
  --e-nav-menu-divider-color:#E2B358 !important;
  border-left-color:#E2B358 !important;
  border-color:#E2B358 !important;
}

/* ===== PP-RESEARCH-LAYOUT: consistent boxed alignment for Research page ===== */
/* The main content con-inner was display:inline, which ignored max-width/margin. Force it to a centered flex column. */
.elementor-page-1 .elementor-1 .e-con-inner{
  max-width:1140px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
}
/* Fix the stray left margin on the intro text block that pushed paragraphs out of alignment */
.elementor-page-1 .elementor-element-39843b01{
  margin-left:0 !important;
  margin-right:0 !important;
  width:100% !important;
  max-width:100% !important;
}


/* ===== PP-RESEARCH-CENTER: center the intro heading, subheading and paragraphs ===== */
.elementor-page-1 .elementor-element-5774fb2,
.elementor-page-1 .elementor-element-5774fb2 .elementor-heading-title,
.elementor-page-1 .elementor-element-53e15ee,
.elementor-page-1 .elementor-element-53e15ee .elementor-heading-title,
.elementor-page-1 .elementor-element-39843b01,
.elementor-page-1 .elementor-element-39843b01 p{
  text-align:center !important;
}

/* ===== PP-CHECKOUT-SKIN v2: dark-luxury black + gold ===== */
/* 1. KILL the lime-green Elementor background overlay pseudo-element */
body.woocommerce-checkout .elementor-element-5ccbc1df::before,
body.woocommerce-checkout .elementor-element-561a24e::before {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  opacity: 0 !important;
  content: none !important;
}

/* 2. Outer checkout containers: pure black canvas, no borders */
body.woocommerce-checkout .elementor-element-5ccbc1df,
body.woocommerce-checkout .elementor-element-561a24e {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 3. The two panels become dark-surface cards with a gold hairline */
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .woocommerce-checkout-review-order {
  background-color: #0E0E0F !important;
  border: 1px solid rgba(192,144,47,0.55) !important;
  border-radius: 10px !important;
  box-shadow: 0 0 24px rgba(0,0,0,0.6) !important;
  padding: 32px !important;
}

/* neutralise any inner white boxes so the card surface shows through */
body.woocommerce-checkout .col-1,
body.woocommerce-checkout .col-2,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
body.woocommerce-checkout .e-coupon-box,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout .woocommerce {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* 4. Headings gold, body text off-white */
body.woocommerce-checkout #customer_details h3,
body.woocommerce-checkout .woocommerce-checkout-review-order h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3 {
  color: #E2B358 !important;
}
body.woocommerce-checkout,
body.woocommerce-checkout label,
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
body.woocommerce-checkout .cart-subtotal,
body.woocommerce-checkout .order-total {
  color: #F5F5F7 !important;
}
body.woocommerce-checkout .amount,
body.woocommerce-checkout .order-total .amount {
  color: #FFFFFF !important;
}

/* 5. Input fields: deep charcoal, off-white text, gold focus */
body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container .select2-selection,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-selection__rendered {
  background-color: #161618 !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  color: #F5F5F7 !important;
  border-radius: 6px !important;
}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection {
  border-color: #C0902F !important;
  outline: none !important;
}
body.woocommerce-checkout ::placeholder { color: rgba(245,245,247,0.4) !important; }

/* 6. Divider line under order-review rows, gold hairline */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  border-bottom: 1px solid rgba(192,144,47,0.25) !important;
}
body.woocommerce-checkout .order-total th,
body.woocommerce-checkout .order-total td {
  border-top: 1px solid rgba(192,144,47,0.5) !important;
}

/* 7. Place Order button: gold */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout .woocommerce #payment #place_order {
  background-color: #C0902F !important;
  border: 0 !important;
  color: #0B0B0C !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  border-radius: 6px !important;
}
body.woocommerce-checkout #place_order:hover {
  background-color: #E2B358 !important;
}
/* coupon link gold */
body.woocommerce-checkout .woocommerce-form-coupon-toggle a,
body.woocommerce-checkout .showcoupon { color: #E2B358 !important; }

/* PP-CHECKOUT-SKIN v2.1: kill solid green on the checkout widget-container itself */
body.woocommerce-checkout .elementor-element-561a24e .elementor-widget-container,
body.woocommerce-checkout .elementor-element-5ccbc1df .elementor-widget-container,
body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page .elementor-widget-container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}
body.woocommerce-checkout .elementor-element-561a24e .elementor-widget-container::before,
body.woocommerce-checkout .elementor-element-561a24e .elementor-widget-container::after {
  background: transparent !important;
  opacity: 0 !important;
  content: none !important;
}

/* ===== PP-CHECKOUT-READABILITY v1: spacing + readable text ===== */
/* 1. Fix field overlap: give every form row breathing room */
body.woocommerce-checkout .woocommerce-checkout .form-row,
body.woocommerce-checkout #customer_details p.form-row,
body.woocommerce-checkout .woocommerce-billing-fields p.form-row,
body.woocommerce-checkout .woocommerce-shipping-fields p.form-row {
  margin-bottom: 22px !important;
}
/* the country select2 box is tall - ensure the row contains it with clearance */
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_state_field {
  margin-bottom: 26px !important;
  overflow: visible !important;
}
/* make the select2 selected box match input height so it doesn't crowd next label */
body.woocommerce-checkout .select2-container .select2-selection--single {
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 48px !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 46px !important;
}

/* 2. Payment methods message: force clearly readable white text */
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment .wc_payment_methods,
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment li,
body.woocommerce-checkout #payment .woocommerce-info,
body.woocommerce-checkout #payment .woocommerce-notice,
body.woocommerce-checkout #payment .woocommerce-error {
  color: #FFFFFF !important;
}
body.woocommerce-checkout #payment .woocommerce-info a,
body.woocommerce-checkout #payment li a { color: #E2B358 !important; }

/* 3. Make ALL faint/grey helper text readable white */
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-privacy-policy-text p,
body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout .woocommerce-form__label-for-checkbox span,
body.woocommerce-checkout #ship-to-different-address label,
body.woocommerce-checkout #ship-to-different-address-checkbox ~ span,
body.woocommerce-checkout .create-account label,
body.woocommerce-checkout .woocommerce-additional-fields label,
body.woocommerce-checkout .form-row label,
body.woocommerce-checkout .checkout p,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  color: #F5F5F7 !important;
}
/* privacy policy link stays gold */
body.woocommerce-checkout .woocommerce-privacy-policy-text a { color: #E2B358 !important; }

/* 4. brighter placeholders so clients see where to type */
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder {
  color: rgba(245,245,247,0.55) !important;
}

/* ===== PP-CHECKOUT-SELECT2FIX: make country dropdown one clean full-width box ===== */
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 16px !important;
  line-height: 46px !important;
  color: #F5F5F7 !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single {
  background-color: #161618 !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  border-radius: 6px !important;
  width: 100% !important;
}
body.woocommerce-checkout .select2-dropdown,
.select2-dropdown {
  background-color: #161618 !important;
  border: 1px solid rgba(192,144,47,0.4) !important;
  color: #F5F5F7 !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #C0902F !important;
  color: #0B0B0C !important;
}
.select2-search--dropdown .select2-search__field {
  background-color: #0E0E0F !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  color: #F5F5F7 !important;
}

/* ===== PP-CHECKOUT-PAYMSG: make the no-payment-methods message readable ===== */
body.woocommerce-checkout .woocommerce-no-available-payment-methods-message,
body.woocommerce-checkout #payment .woocommerce-no-available-payment-methods-message,
body.woocommerce-checkout #payment .woocommerce-info,
body.woocommerce-checkout #payment .woocommerce-info span,
body.woocommerce-checkout #payment .woocommerce-info a {
  color: #F5F5F7 !important;
}


/* ===== PP-BG-FIX: restore black backgrounds on containers that lost their image/bg ===== */
/* Homepage main content container (was showing white behind content) */
.elementor-element-99cab3b {
	  background-color: var(--pp-bg, #000000) !important;
}
/* Empty related-products / green section on product pages */
.elementor-element-7be1ed66 {
	  background-color: var(--pp-bg, #000000) !important;
}

/* ===== PP-BADGE-COLOR-FIX: match HPLC + American-sourced badge text to the gold COA badge ===== */
.elementor-element-18f6fc5,
.elementor-element-18f6fc5 p,
.elementor-element-18f6fc5 h1,
.elementor-element-18f6fc5 h2,
.elementor-element-18f6fc5 h3,
.elementor-element-18f6fc5 h4,
.elementor-element-18f6fc5 span,
.elementor-element-c02267e,
.elementor-element-c02267e p,
.elementor-element-c02267e h1,
.elementor-element-c02267e h2,
.elementor-element-c02267e h3,
.elementor-element-c02267e h4,
.elementor-element-c02267e span {
	  color: #E2B358 !important;
}

/* ===== PP-HERO-H1-DEDUPE: hide the duplicate Post Title on the home page (new H1 now sits above the hero) ===== */
body.home .elementor-element-7fdf677 {
	  display: none !important;
}
}