/* ================================================================
   FINNRICK ESCROW — Brand CSS
   finnrick.com palette on the STG Ustone marketplace
   Colors: #4B85B4 bg · #243342 navy · #4ADE97 mint · #252D41 text
   Font:   IBM Plex Sans + IBM Plex Mono
   ================================================================ */

/* -- Tokens ----------------------------------------------------- */
:root {
  /* Override STG emblem with GLP1 Forum wordmark (navy — light header) */
  --stg-emblem: url("/wp-content/mu-plugins/glp1forum-wordmark-navy.svg") !important;

  --fr-bg:           #4B85B4;
  --fr-surface:      #FFFFFF;
  --fr-navy:         #243342;
  --fr-navy-light:   #1D2D44;
  --fr-text:         #252D41;
  --fr-text-2:       #3D4656;
  /* GLP1 Forum accent = their blue (chip ink). --fr-mint kept as alias so
     existing rules flip to GLP1 Forum blue instead of the old neon green. */
  --fr-blue:         #2456A8;
  --fr-blue-hover:   #245A9E;
  --fr-blue-soft:    #DBE6F0;
  --fr-amber:        #A87B00;
  /* GLP1 Forum's brand BUTTON colour (their "Become a member" CTA) */
  --fr-gold:         #F96A5E;
  --fr-gold-hover:   #E8544A;
  --fr-gold-ink:     #FFFFFF;   /* near-black text on gold */
  --fr-green:        #13844A;   /* verified / escrow-held success */
  --fr-green-soft:   #E6F7EE;
  --fr-mint:         #2456A8;   /* alias → GLP1 Forum blue */
  --fr-mint-hover:   #245A9E;
  --fr-border:       #BBD0E6;
  --fr-border-warm:  #E4E1D7;
  --fr-cream:        #EDEAE2;
  --fr-muted:        #8A91A0;
  --fr-font:         'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;
  /* GLP1 Forum uses NO monospace — "mono" is now IBM Plex Sans so labels/
     numbers match the rest of the site; tabular figures keep them aligned. */
  --fr-mono:         'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;

  /* ==== Flip the STG dark-theme engine to GLP1 Forum's light palette ==== */
  --stg-bg:    #4B85B4 !important;   /* page   (was #0f111a) */
  --stg-bg-2:  #FFFFFF !important;   /* cards  (was #171a24) */
  --stg-bg-3:  #DBE6F0 !important;   /* raised (was #1e2230) */
  --stg-fg:    #252D41 !important;   /* text   (was #e7e9f0) */
  --stg-line:  #BBD0E6 !important;   /* border (was #2a2f3d) */
  --stg-muted: #5A6372 !important;   /* muted  (was #9aa0b4) */
  /* Theme paints its filled buttons with var(--stg-accent) via an !important
     rule LiteSpeed's combine makes near-impossible to out-cascade — so set
     the variable itself to GLP1 Forum gold. Links use --fr-blue explicitly. */
  --stg-accent:   #F96A5E !important;/* = GLP1 Forum gold button (was #7aa2ff) */
  --stg-accent-2: #13844A !important;/* success(was #9ce6c0) */
  /* STG paints headings, nav, brand cards etc. with var(--stg-mono) (JetBrains
     Mono) via !important rules — flip the variable so they use GLP1 Forum's Sans. */
  --stg-mono: -apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Roboto,Arial,sans-serif !important;

  /* Override Bootstrap / Ustone tokens */
  --bs-body-bg:      #4B85B4 !important;
  --bs-body-color:   #252D41 !important;
  --bs-primary:      #2456A8 !important;
  --bs-primary-rgb:  43, 92, 173 !important;
  --bs-secondary:    #243342 !important;
  --bs-border-color: #BBD0E6 !important;
  --bs-link-color:   #243342 !important;
  --bs-link-hover-color: #2456A8 !important;
}

/* -- Base ------------------------------------------------------- */
html, body,
[data-bs-theme="dark"] body,
[data-bs-theme="light"] body {
  background-color: var(--fr-bg) !important;
  color:            var(--fr-text) !important;
  font-family:      var(--fr-font) !important;
}

/* ============================================================
   FULL-SITE LIGHT ENFORCEMENT — kill every leftover dark STG surface
   (GLP1 Forum is a light site: cream page, white cards, navy header+footer)
   ============================================================ */

/* Page + content wrappers → cream */
.main-content,
.page-content,
.site-content,
.content-area,
.primary-content,
.post-body,
.post-content,
.stg-wrap,
.stg-section,
.stg-sections {
  background: var(--fr-bg) !important;
  color: var(--fr-text) !important;
}

/* Generic STG panels / tools / bands → white cards, dark text */
.stg-tool,
.stg-pay-block,
.stg-pay-facts,
.stg-cta-band,
.stg-panel,
.stg-box,
.stg-card,
details.stg-rv,
.stg-faq details,
.stg-guide-card,
.stg-note,
.stg-callout {
  background: var(--fr-surface) !important;
  color: var(--fr-text) !important;
  border-color: var(--fr-border) !important;
}

/* Brand-showcase box had a hardcoded dark gradient → light GLP1 Forum card */
.stg-bbox,
.stg-bshow .stg-bbox,
[class*="stg-bbox"],
.stg-brand-panel,
[class*="stg-pay"],
.stg-tool[style*="gradient"] {
  background: linear-gradient(180deg, #FFFFFF 0%, #4B85B4 100%) !important;
  border: 1px solid var(--fr-border) !important;
  color: var(--fr-text) !important;
}
.stg-bbox *, .stg-bbox-head, .stg-bbox-head *,
.stg-bshow .stg-card-name, .stg-bbox .stg-store-name {
  color: var(--fr-navy) !important;
}
.stg-bbox .stg-muted, .stg-bbox-head .stg-sub,
.stg-bbox-head span:not(.stg-card-name), .stg-bbox small {
  color: var(--fr-text-2) !important;
}
.stg-bbox a.button, .stg-bbox .button { color: #fff !important; }
.stg-bbox-head { background: transparent !important; }
.stg-cta-band {
  background: var(--fr-cream) !important;
  border: 1px solid var(--fr-border) !important;
}
.stg-tool *,
.stg-pay-block *,
.stg-cta-band *,
details.stg-rv *,
.stg-guide-card * {
  color: inherit;
}
.stg-tool h1, .stg-tool h2, .stg-tool h3, .stg-tool h4,
.stg-pay-block h1, .stg-pay-block h2, .stg-pay-block h3,
.stg-cta-band h1, .stg-cta-band h2, .stg-cta-band h3,
.stg-guide-card strong {
  color: var(--fr-navy) !important;
}
.stg-tool p, .stg-pay-block p, .stg-cta-band p,
.stg-guide-card span, .stg-muted, .stg-sub {
  color: var(--fr-text-2) !important;
}

/* Dark page-title banner (the "Marketplace" shop header) → cream */
.page-header,
.page-header-background,
.woocommerce-products-header,
.stg-hero-art {
  background: var(--fr-bg) !important;
  background-image: none !important;
  color: var(--fr-navy) !important;
  border-bottom: 1px solid var(--fr-border-warm) !important;
}
.page-header .page-title,
.page-header h1,
.woocommerce-products-header__title {
  color: var(--fr-navy) !important;
}
.page-header .breadcrumb,
.page-header .breadcrumb a,
.page-header p {
  color: var(--fr-text-2) !important;
}

/* Cart / account dropdowns + mobile drawers → white, dark text */
.action-dropdown,
.action-dropdown-inner,
.cart-dropdown-inner,
.account-dropdown,
.drawer-inner,
.drawer-inner-header,
.drawer-inner-body,
.off-canvas,
.mobile-menu {
  background: var(--fr-surface) !important;
  color: var(--fr-text) !important;
  border-color: var(--fr-border) !important;
}
.action-dropdown a,
.drawer-inner a,
.account-dropdown a,
.mobile-menu a {
  color: var(--fr-text) !important;
}
.action-dropdown a:hover,
.drawer-inner a:hover,
.mobile-menu a:hover {
  color: var(--fr-blue) !important;
}
.drawer-inner-header,
.action-dropdown .cart-dropdown-header {
  border-bottom: 1px solid var(--fr-border) !important;
}

/* ============================================================
   FOOTER — custom STG footer markup (.footer-widgets > .footer-inner.grid
   > .stg-foot columns) restyled to GLP1 Forum's navy, legible, professional.
   Structure: footer.footer (near-black) > .footer-row.footer-widgets (navy,
   4-col grid) + .footer-row.footer-copyright (darker bar).
   ============================================================ */
.footer,
.site-footer,
#colophon,
.footer-row,
.footer-widgets,
.footer-copyright,
.footer-main {
  background: var(--fr-navy) !important;
  color: rgba(255,255,255,0.62) !important;
}
/* Main widget band: navy, generous padding, warm hairline top border */
.footer-row.footer-widgets {
  background: var(--fr-navy) !important;
  border-top: 1px solid rgba(255,255,255,0.09) !important;
  padding: 56px 0 46px !important;
}
.footer .copyright,
.footer-copyright,
.copyright {
  background: #0B1422 !important;
  color: rgba(255,255,255,0.45) !important;
}

/* Column grid: comfortable gap, brand column a touch wider */
.footer-inner.grid { gap: 40px !important; align-items: start !important; }

/* Column headings — WERE navy-on-navy (invisible): stg-front.css paints
   `.stg-foot h4` with var(--stg-fg) (now dark navy) at equal specificity but
   declared AFTER us in the LiteSpeed-combined file, so it won. Beat it with an
   `html body` prefix (higher specificity). Now white small-caps. */
html body .stg-foot h4,
html body .footer-widgets .stg-foot h4 {
  color: #FFFFFF !important;
  font-family: var(--fr-font) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  margin: 0 0 18px !important;
  line-height: 1 !important;
  opacity: 1 !important;
}
/* Column link lists */
.stg-foot ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.stg-foot ul li { margin: 0 0 11px !important; line-height: 1.3 !important; }
.stg-foot ul li:last-child { margin-bottom: 0 !important; }
.stg-foot ul li a {
  color: rgba(255,255,255,0.60) !important;
  font-family: var(--fr-font) !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}
.stg-foot ul li a:hover { color: #FFFFFF !important; }

/* Brand column */
.stg-foot-brand { max-width: 320px; }
.stg-foot-brand p {
  color: rgba(255,255,255,0.55) !important;
  font-family: var(--fr-font) !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  margin: 16px 0 18px !important;
}
/* Footer brand logo: dark text on navy → white FINNRICK wordmark */
.stg-foot-logo {
  display: inline-block !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  width: 158px !important;
  height: 24px !important;
  background: url("/wp-content/mu-plugins/glp1forum-wordmark-white.svg") left center / contain no-repeat !important;
}
/* Escrow badge — green pill that reads on navy (was dark green + light border) */
.stg-foot-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  background: rgba(19,132,74,0.16) !important;
  border: 1px solid rgba(19,132,74,0.45) !important;
  color: #4FD98C !important;
  font-family: var(--fr-font) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
}

/* Copyright bar: tidy row, muted links → white on hover */
.footer-copyright { padding: 16px 0 !important; }
.footer-copyright .container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
}
.footer-copyright,
.footer-copyright p,
.footer-copyright span {
  color: rgba(255,255,255,0.48) !important;
  font-size: 12.5px !important;
}
.footer-copyright a {
  color: rgba(255,255,255,0.58) !important;
  font-size: 12.5px !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}
.footer-copyright a:hover { color: #FFFFFF !important; }

/* Responsive: collapse the 4-col grid cleanly */
@media (max-width: 900px) {
  .footer-inner.grid { grid-template-columns: 1fr 1fr !important; gap: 36px 28px !important; }
  .stg-foot-brand { grid-column: 1 / -1 !important; max-width: 480px; }
  .footer-row.footer-widgets { padding: 44px 0 36px !important; }
}
@media (max-width: 520px) {
  .footer-inner.grid { grid-template-columns: 1fr !important; }
  .footer-copyright .container { justify-content: center !important; text-align: center !important; }
}

/* Inputs on light surfaces */
.stg-tool input, .stg-tool select, .stg-tool textarea,
.action-dropdown input, .drawer-inner input {
  background: #fff !important;
  color: var(--fr-text) !important;
  border: 1px solid var(--fr-border) !important;
}

/* Accent text/links that were STG blue → GLP1 Forum blue */
a.stg-link, .stg-accent, .stg-tool a:not(.button),
.stg-cta-band a:not(.button) {
  color: var(--fr-blue) !important;
}

/* -- Logo ------------------------------------------------------- */
.finnrick-logo-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #fff !important;
  text-decoration: none !important;
}
.finnrick-logo {
  color: #fff;
  height: 20px;
  width: auto;
  flex-shrink: 0;
}
.finnrick-logo path { fill: currentColor !important; }

.fr-escrow-label {
  font-family: var(--fr-font) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.65) !important;
  border-left: 1px solid rgba(255,255,255,0.25) !important;
  padding-left: 10px !important;
  line-height: 1 !important;
  margin-top: 1px !important;
}

/* -- Header: LIGHT (GLP1 Forum's own header is light w/ black logo) --- */
.site-header,
#masthead,
.header-wrap,
.header-row,
.header-main,
.header-top-bar,
.action-bar,
.header-navbar,
header.site-header,
[class*="site-header"],
#masthead .header-row,
#masthead .header-main,
#masthead .header-inner {
  background-color: var(--fr-surface) !important;
  border-bottom: 1px solid var(--fr-border-warm) !important;
  color: var(--fr-text) !important;
}

/* Nav links in light header → dark navy, hover GLP1 Forum blue */
.site-header a,
.header-main a,
.header-row a,
.header-navbar a,
header.site-header a,
#masthead a,
.site-header .nav-link,
.site-header .menu-item a,
.header-main .menu-item > a {
  color: var(--fr-text) !important;
}
.site-header a:hover,
.header-main a:hover,
#masthead a:hover,
.site-header .nav-link:hover,
.header-main .menu-item > a:hover {
  color: var(--fr-blue) !important;
  text-decoration: none !important;
}
#masthead .action-sub { color: var(--fr-muted) !important; }
#masthead .action-label { color: var(--fr-text) !important; }

/* action icons (cart, search, account) → navy */
.action-icon, .header-action-icon,
#masthead .action-icon,
.site-header .action-icon-wrap {
  color: var(--fr-navy) !important;
}
.site-header .cart-count,
#masthead .cart-count,
.action-count {
  background: var(--fr-blue) !important;
  color: #fff !important;
}

/* -- Typography ------------------------------------------------- */
*,
*::before,
*::after {
  font-family: var(--fr-font) !important;
}
code, pre, kbd, samp,
.mono, [class*="mono"],
.product-sku, .stg-pill code,
[class*="font-mono"],
.stg-em-cell code {
  font-family: var(--fr-mono) !important;
}

/* Tabular figures so numbers/prices/labels align like GLP1 Forum's */
.fr-lane-num, .fr-lane-meta,
.woocommerce-Price-amount, .amount,
.stg-stats, .stg-stats *,
.stg-pill, .fr-eyebrow,
table td, table th,
.pb-amt, [data-testing-price] {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" 1 !important;
}

h1, .h1 { font-size: clamp(28px,5vw,46px) !important; font-weight: 700 !important; letter-spacing: -0.025em !important; color: var(--fr-navy) !important; }
h2, .h2 { font-size: clamp(22px,3.5vw,32px) !important; font-weight: 700 !important; letter-spacing: -0.02em !important; color: var(--fr-navy) !important; }
h3, .h3 { font-size: clamp(18px,2.5vw,24px) !important; font-weight: 600 !important; color: var(--fr-navy) !important; }
h4, .h4, h5, .h5, h6, .h6 { color: var(--fr-navy) !important; font-weight: 600 !important; }
p  { color: var(--fr-text-2) !important; font-size: 16px !important; line-height: 1.6 !important; }

/* -- Links ----------------------------------------------------- */
a                           { color: var(--fr-navy) !important; }
a:hover                     { color: var(--fr-mint-hover) !important; }
.woocommerce-loop-product__title a { color: var(--fr-navy) !important; }

/* -- Buttons — GLP1 Forum brand button: amber/gold, near-black text,
      square, bold uppercase w/ wide tracking (their "Become a member").
      Gold is GLP1 Forum's ONE filled button; every filled button uses it
      (no leftover blue anywhere). Outline/ghost handled separately below. -- */
body .btn,
body .btn-primary,
body .button,
body a.button,
body button.button,
body .button.variant-primary,
body .button.variant-black,
body .button.size-base,
body .wp-element-button,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button,
body .woocommerce a.button.alt,
body .woocommerce button.button.alt,
body .woocommerce #respond input#submit,
body .wc-proceed-to-checkout .checkout-button,
body #place_order,
.wc-block-components-button,
button[type="submit"],
input[type="submit"],
body .single_add_to_cart_button,
body .add_to_cart_button,
body .stg-co-pay-btn,
body [class*="pay-btn"],
body .btn-accent {
  background: var(--fr-gold) !important;
  color: var(--fr-gold-ink) !important;
  border: none !important;
  border-radius: 0 !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  transition: background 0.15s !important;
}
body .btn *,
body .button *,
body a.button *,
body .single_add_to_cart_button * { color: var(--fr-gold-ink) !important; }

body .btn:hover,
body .button:hover,
body a.button:hover,
body button.button:hover,
body .button.variant-primary:hover,
body .button.variant-black:hover,
body .single_add_to_cart_button:hover,
body .add_to_cart_button:hover,
body #place_order:hover,
body .stg-co-pay-btn:hover {
  background: var(--fr-gold-hover) !important;
  color: var(--fr-gold-ink) !important;
}

/* Floating chat launcher → navy (not a CTA, shouldn't read as gold) */
body .stg-chat-launch,
body [class*="chat-launch"],
body [class*="chat-fab"] {
  background: var(--fr-navy) !important;
  color: #fff !important;
}

/* secondary / outline button */
.btn-secondary,
.btn-outline-primary {
  background: transparent !important;
  color: var(--fr-navy) !important;
  border: 1px solid var(--fr-border) !important;
  border-radius: 0 !important;
}
.btn-secondary:hover {
  background: var(--fr-navy) !important;
  color: #fff !important;
}

/* Primary buttons are GLP1 Forum gold → near-black ink (see Buttons section).
   body-prefixed to beat the theme's equal-specificity !important. */
body .button.variant-primary,
body .btn-primary,
body .single_add_to_cart_button,
body .woocommerce a.button.alt,
body .woocommerce button.button.alt {
  color: var(--fr-gold-ink) !important;
}
body .button.variant-primary *,
body .single_add_to_cart_button * { color: var(--fr-gold-ink) !important; }

/* Card hover-action icons + wishlist/compare/quickview were dark navy
   rgba(23,26,36,0.85) w/ dark icons → light chips w/ navy icon.
   body-prefixed to outrank theme's equal-specificity !important rule. */
body .gloria-wishlist-btn,
body .ustone-compare-btn,
body .ustone-quickview-btn,
body [class*="wishlist-btn"],
body [class*="compare-btn"],
body [class*="quickview-btn"],
body .product-action a,
body .product-actions a,
body .product-actions button {
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid var(--fr-border) !important;
  color: var(--fr-navy) !important;
  box-shadow: 0 1px 3px rgba(16,28,46,0.12) !important;
}
body .gloria-wishlist-btn:hover,
body .ustone-compare-btn:hover,
body .ustone-quickview-btn:hover,
body .product-actions a:hover {
  background: #FFFFFF !important;
  color: var(--fr-blue) !important;
  border-color: var(--fr-blue) !important;
}
body .gloria-wishlist-btn svg,
body .ustone-compare-btn svg,
body .ustone-quickview-btn svg,
body .gloria-wishlist-btn i,
body .ustone-compare-btn i {
  color: inherit !important;
  stroke: currentColor !important;
}

/* -- Cards / surfaces ------------------------------------------ */
.card,
.product-item,
.stg-brand-card,
[class*="-card"],
.woocommerce ul.products li.product,
.wc-block-grid__product,
.wc-block-product-template__element {
  background: var(--fr-surface) !important;
  border: 1px solid var(--fr-border) !important;
  border-radius: 2px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05) !important;
}

/* -- Page / content areas -------------------------------------- */
.site-main,
main#main,
#primary,
#content,
.entry-content,
.page-content,
.woocommerce-page {
  background: transparent !important;
  color: var(--fr-text) !important;
}

/* Page/category header banner */
.page-header-background,
.woocommerce-products-header,
.page-title-wrap {
  background: var(--fr-navy) !important;
  color: #fff !important;
}
.page-title,
.woocommerce-products-header__title,
.page-header-background h1,
.page-header-background .page-title {
  color: #fff !important;
}

/* -- Shop ---------------------------------------------------- */

/* Product cards had a hardcoded dark gradient set by `.products > .product`
   WITH !important → need higher specificity to win. Light GLP1 Forum card. */
body .products > .product,
.products > .product.type-product,
.stg-bbox .products > .product,
.stg-slide .products > .product,
body .products > .product > .product-inner,
body .products > .product .product-body,
.product-body-inner,
.wc-block-grid__product,
.wc-block-product-template__element {
  background: #FFFFFF !important;
  background-image: none !important;
  color: var(--fr-text) !important;
}
body .products > .product,
.products > .product.type-product {
  border: 1px solid var(--fr-border) !important;
  border-radius: 4px !important;
}
/* inner wrappers shouldn't re-paint a bg */
.product .product-inner,
.product .product-body,
.product-body-inner {
  border: none !important;
  border-radius: 0 !important;
}
.product .product-title,
.product .product-title a,
.product .woocommerce-loop-product__title {
  color: var(--fr-navy) !important;
}
.product .product-brand,
.product .product-brand a,
.product .stg-card-brand {
  color: var(--fr-green) !important;
}
.product .price, .product .amount, .product .price * {
  color: var(--fr-navy) !important;
}
.product .product-meta, .product small, .product .per-mg {
  color: var(--fr-muted) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-components-product-name {
  color: var(--fr-navy) !important;
  font-weight: 600 !important;
}
.woocommerce ul.products li.product .price,
.woocommerce-Price-amount,
.wc-block-components-product-price {
  color: var(--fr-navy) !important;
  font-weight: 700 !important;
  font-family: var(--fr-mono) !important;
}

/* -- Badges / pills ------------------------------------------ */
.stg-pill {
  font-family: var(--fr-mono) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  border-radius: 2px !important;
  letter-spacing: 0.04em !important;
}
.stg-pill-held      { background: var(--fr-green-soft) !important; color: var(--fr-green) !important; border-color: var(--fr-green) !important; }
.stg-pill-released  { background: rgba(16,28,46,0.08) !important; color: var(--fr-navy) !important; }
.stg-pill-disputed  { background: #fff3cd !important; color: #856404 !important; }
.stg-pill-cancelled { background: #f8d7da !important; color: #842029 !important; }

/* -- Checkout steps ------------------------------------------ */
.stg-co-steps {
  background: var(--fr-navy) !important;
  color: rgba(255,255,255,0.55) !important;
}
.stg-co-steps .is-done  { color: var(--fr-green) !important; }
.stg-co-steps .is-on    { color: #fff !important; }
.stg-co-dot {
  background: var(--fr-navy-light) !important;
  color: rgba(255,255,255,0.6) !important;
  border-radius: 2px !important;
}
.stg-co-steps .is-done .stg-co-dot { background: var(--fr-green) !important; color: #fff !important; }
.stg-co-steps .is-on   .stg-co-dot { background: var(--fr-blue) !important; color: #fff !important; }
.stg-co-lbl strong { color: inherit !important; }
.stg-co-lbl em     { color: rgba(255,255,255,0.45) !important; }

/* -- Age gate (light GLP1 Forum design) ------------------------- */
/* CRITICAL: the gate's own JS sets `hidden` to dismiss it on "agree" —
   must outrank the display:flex rule (higher specificity, declared after). */
#stg-gate.stg-gate[hidden],
html #stg-gate[hidden] { display: none !important; }
/* Backdrop: softly dimmed, frosted — lets the cream site show through */
#stg-gate.stg-gate {
  background: rgba(16, 28, 46, 0.42) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  backdrop-filter: blur(6px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}
/* Card: white, clean border, soft shadow, minimal radius */
#stg-gate .stg-gate-card {
  background: #FFFFFF !important;
  border: 1px solid var(--fr-border) !important;
  border-radius: 6px !important;
  box-shadow: 0 24px 60px rgba(16, 28, 46, 0.22) !important;
  padding: 40px 38px 32px !important;
  max-width: 440px !important;
  width: 100% !important;
  text-align: center !important;
}
/* Emblem → navy GLP1 Forum wordmark */
#stg-gate .stg-gate-emblem {
  content: url("/wp-content/mu-plugins/glp1forum-wordmark-navy.svg") !important;
  width: 150px !important;
  height: auto !important;
  margin: 0 auto 22px !important;
  display: block !important;
  opacity: 1 !important;
}
#stg-gate h2,
#stg-gate #stg-gate-title {
  font-family: var(--fr-font) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: var(--fr-navy) !important;
  margin: 0 0 14px !important;
}
#stg-gate p {
  font-family: var(--fr-font) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: var(--fr-text-2) !important;
  margin: 0 0 14px !important;
}
#stg-gate a:not(.stg-gate-no):not(.button) {
  color: var(--fr-blue) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}
#stg-gate .stg-gate-actions {
  margin-top: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  align-items: center !important;
}
/* Primary button → GLP1 Forum brand gold, square, full-width */
#stg-gate #stg-gate-yes,
#stg-gate .stg-gate-actions .button {
  background: var(--fr-gold) !important;
  color: var(--fr-gold-ink) !important;
  font-family: var(--fr-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 0 !important;
  width: 100% !important;
  padding: 15px 20px !important;
  cursor: pointer !important;
  transition: background 0.15s ease !important;
}
#stg-gate #stg-gate-yes:hover,
#stg-gate .stg-gate-actions .button:hover {
  background: var(--fr-gold-hover) !important;
  color: var(--fr-gold-ink) !important;
}
/* "Leave" → quiet muted link */
#stg-gate .stg-gate-no {
  color: var(--fr-muted) !important;
  font-family: var(--fr-font) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}
#stg-gate .stg-gate-no:hover { color: var(--fr-text-2) !important; }

/* -- WooCommerce forms --------------------------------------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row input[type="text"],
.woocommerce form .form-row input[type="email"],
.woocommerce form .form-row input[type="tel"],
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
input[type="text"], input[type="email"],
input[type="password"], input[type="tel"],
select, textarea {
  background: var(--fr-surface) !important;
  border: 1px solid var(--fr-border) !important;
  color: var(--fr-text) !important;
  border-radius: 0 !important;
  font-family: var(--fr-font) !important;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--fr-navy) !important;
  box-shadow: 0 0 0 2px rgba(16,28,46,0.12) !important;
  outline: none !important;
}
label { color: var(--fr-text) !important; font-weight: 500 !important; }

/* -- Tables -------------------------------------------------- */
table {
  background: var(--fr-surface) !important;
  border-color: var(--fr-border) !important;
}
thead th {
  background: var(--fr-navy) !important;
  color: #fff !important;
  border-color: var(--fr-navy) !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
}
tbody td {
  border-color: var(--fr-border) !important;
  color: var(--fr-text) !important;
}
tbody tr:hover td { background: rgba(16,28,46,0.03) !important; }

/* -- Footer -------------------------------------------------- */
.site-footer,
footer.site-footer,
.footer-wrap,
.footer-main,
#colophon {
  background: var(--fr-navy) !important;
  color: rgba(255,255,255,0.65) !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
}
.site-footer a,
footer.site-footer a {
  color: rgba(255,255,255,0.65) !important;
}
.site-footer a:hover,
footer.site-footer a:hover {
  color: var(--fr-mint) !important;
}
.site-footer h4,
.site-footer h5,
.site-footer .widget-title {
  color: #fff !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
.site-footer p,
.site-footer li {
  color: rgba(255,255,255,0.55) !important;
  font-size: 13px !important;
}
.copyright-bar,
.site-footer .copyright {
  background: rgba(0,0,0,0.25) !important;
  color: rgba(255,255,255,0.4) !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
}

/* -- Escrow admin panel (wp-admin) --------------------------- */
.stg-em-wrap     { background: #fff !important; color: var(--fr-text) !important; }
.stg-em-topbar   { background: var(--fr-navy) !important; color: #fff !important; }
.stg-em-cell code { font-family: var(--fr-mono) !important; }

/* -- Sidebar / widgets --------------------------------------- */
.widget, aside, .widget-area {
  background: var(--fr-surface) !important;
}
.widget-title {
  color: var(--fr-navy) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

/* -- WC notifications --------------------------------------- */
.woocommerce-message {
  border-top-color: var(--fr-green) !important;
  background: var(--fr-green-soft) !important;
  color: var(--fr-navy) !important;
}
.woocommerce-info {
  border-top-color: var(--fr-blue) !important;
  background: var(--fr-blue-soft) !important;
  color: var(--fr-navy) !important;
}
.woocommerce-error {
  border-top-color: #e74c3c !important;
}

/* -- Brand storefront header -------------------------------- */
.vendor-cover-image,
.dokan-store-cover,
[class*="store-banner"],
[class*="vendor-banner"] {
  background: var(--fr-navy) !important;
}
.vendor-store-info h2,
.dokan-store-name {
  color: #fff !important;
}

/* -- Escrow stage bar on order pages ----------------------- */
.stg-stage-bar         { border-color: var(--fr-border) !important; }
.stg-stage-bar .is-done { background: var(--fr-green) !important; color: #fff !important; }
.stg-stage-bar .is-current { background: var(--fr-navy) !important; color: #fff !important; }

/* -- Misc overrides to kill leftover dark terminal rules ---- */
.bg-dark, [class*="bg-dark"] { background: var(--fr-navy) !important; }
.text-dark, [class*="text-dark"] { color: var(--fr-text) !important; }
.border-dark { border-color: var(--fr-border) !important; }

/* Force body bg override for Ustone dark-skin utility classes */
html[data-bs-theme="dark"],
html[data-bs-theme="light"] {
  background-color: var(--fr-bg) !important;
}
html[data-bs-theme] body {
  background-color: var(--fr-bg) !important;
  color: var(--fr-text) !important;
}

/* ============================================================
   BRAND LOGO — GLP1 Forum wordmark lockup in the Ustone header
   The theme ships `#masthead .brand a::before { width:34px;height:34px }`
   (specificity 1,1,2) which crushed the 147×25 wordmark into a tiny box.
   We beat it with `html body #masthead …` (2,1,2) and size the full
   emblem+wordmark lockup at ~27px tall for a crisp, legible logo.
   ============================================================ */

/* The brand link becomes a clean inline-flex lockup: [wordmark] | ESCROW */
html body .brand,
html body #masthead .brand { display: flex !important; align-items: center !important; }
html body .brand a,
html body #masthead .brand a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 11px !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

/* Wordmark — full GLP1 Forum lockup (emblem square + FINNRICK), navy.
   A theme rule declared AFTER ours keeps pinning `width` to 34px, so we
   lock the box with min/max-width (properties the theme never sets) — the
   wordmark then renders at its true 159×27 size regardless of cascade order. */
html body .brand a::before,
html body #masthead .brand a::before {
  content: "" !important;
  display: block !important;
  width: 159px !important;
  min-width: 159px !important;
  max-width: 159px !important;
  height: 27px !important;
  min-height: 27px !important;
  background-color: transparent !important;   /* kill theme's cream glob box */
  background-image: url("/wp-content/mu-plugins/glp1forum-wordmark-navy.svg") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  border: 0 !important;
  box-shadow: none !important;                 /* kill theme's 1px glob ring */
  border-radius: 0 !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

/* Visually hide brand text spans — replaced by wordmark SVG in ::before */
.brand a .brand-text {
  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;
}

/* "ESCROW" sub-label — small caps, divider rule, aligned to wordmark */
html body .brand a::after,
html body #masthead .brand a::after {
  content: "ESCROW" !important;
  display: inline-flex !important;
  align-items: center !important;
  align-self: center !important;
  height: 16px !important;
  font-family: var(--fr-font) !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  color: var(--fr-muted) !important;
  border-left: 1px solid var(--fr-border) !important;
  padding-left: 11px !important;
  margin: 0 !important;
  line-height: 1 !important;
  text-indent: 0.11em !important;   /* optical: balance the wide tracking */
}

/* (Age-gate emblem handled in the light age-gate block above — navy wordmark) */

/* ============================================================
   ANNOUNCEMENT / TRUST BAR  (finnrick.com's slim navy top strip)
   Injected before the sticky header via wp_body_open.
   ============================================================ */
.fr-topbar {
  background: var(--fr-navy) !important;
  color: rgba(255,255,255,0.72) !important;
  font-family: var(--fr-font) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.fr-topbar-inner {
  max-width: 1360px;
  margin: 0 auto;
  padding: 8px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  font-size: 12.5px;
  letter-spacing: 0.005em;
  line-height: 1.3;
}
.fr-topbar-msg { display: inline-flex; align-items: center; gap: 9px; }
.fr-topbar-msg strong { color: #fff !important; font-weight: 600 !important; }
.fr-topbar-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--fr-green); flex-shrink: 0;
  box-shadow: 0 0 0 3px rgba(19,132,74,0.22);
}
.fr-topbar-sep {
  width: 1px; height: 12px; background: rgba(255,255,255,0.22); flex-shrink: 0;
}
.fr-topbar-link {
  color: var(--fr-gold) !important;
  font-weight: 600 !important;
  white-space: nowrap;
  text-decoration: none !important;
  transition: color 0.15s ease;
}
.fr-topbar-link:hover { color: #fff !important; }

/* ============================================================
   HEADER POLISH — tighter, more professional Ustone masthead
   ============================================================ */
/* Comfortable fixed row height, logo vertically centered */
html body #masthead .header-main .header-inner { min-height: 70px !important; }
html body #masthead .header-main .container { padding-top: 0 !important; padding-bottom: 0 !important; }

/* Action buttons (account / cart): quiet divider, refined spacing */
#masthead .action-buttons.style-1 {
  gap: 4px !important;
  padding-left: 22px !important;
  margin-left: 6px !important;
  border-left: 1px solid var(--fr-border-warm) !important;
}
#masthead .action-button .action-link {
  padding: 8px 12px !important;
  border-radius: 6px !important;
  transition: background 0.15s ease !important;
}
#masthead .action-button .action-link:hover { background: #F3F1EC !important; }
#masthead .action-sub {
  font-size: 10.5px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--fr-muted) !important;
}
#masthead .action-label {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--fr-navy) !important;
  line-height: 1.15 !important;
}
/* Mobile hamburger: navy icon, neat hit area */
#masthead .menu-toggle .action-icon { color: var(--fr-navy) !important; }

/* Nav row: refined menu typography + active underline accent */
html body #masthead .header-navbar {
  background: var(--fr-surface) !important;
  border-top: 1px solid var(--fr-border-warm) !important;
}
html body #masthead .header-navbar .header-inner { min-height: 50px !important; }
/* spread the single nav column so a trust line can sit on the right */
html body #masthead .header-navbar .header-inner > .column.flex-1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}
/* Keep the primary menu on a single row (theme defaults it to flex-wrap) */
html body #masthead .primary-menu .menu {
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
#masthead .primary-menu .menu > li > a {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  color: var(--fr-text-2) !important;
  padding: 15px 0 !important;
  margin-right: 26px !important;
  position: relative !important;
  transition: color 0.15s ease !important;
}
#masthead .primary-menu .menu > li > a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important;
  height: 2px !important;
  background: var(--fr-navy) !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.18s ease !important;
}
#masthead .primary-menu .menu > li > a:hover { color: var(--fr-navy) !important; }
#masthead .primary-menu .menu > li > a:hover::after { transform: scaleX(1) !important; }
#masthead .primary-menu .menu > li.current-menu-item > a,
#masthead .primary-menu .menu > li.active > a { color: var(--fr-navy) !important; }
#masthead .primary-menu .menu > li.current-menu-item > a::after,
#masthead .primary-menu .menu > li.active > a::after { transform: scaleX(1) !important; }
/* dropdown caret alignment for "Guides" submenu toggle */
#masthead .primary-menu .menu > li.menu-item-has-children > a { margin-right: 26px !important; }

/* Right-side trust line on the nav row (fills the empty space elegantly) */
html body #masthead .header-navbar .header-inner > .column.flex-1::after {
  content: "Lab-verified brands · Crypto & card · Full refund on non-delivery" !important;
  font-family: var(--fr-font) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.005em !important;
  color: var(--fr-muted) !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  padding-left: 24px !important;
}
@media (max-width: 1280px) {
  html body #masthead .header-navbar .header-inner > .column.flex-1::after { display: none !important; }
}

/* ============================================================
   FINNRICK-STYLE HERO (finnrick.com concept)
   Cream surface · cycling peptide chip · data lane cards · no image
   ============================================================ */
.fr-hero {
  background: var(--fr-bg) !important;
  padding: 64px 0 56px !important;
  border-bottom: 1px solid var(--fr-border-warm) !important;
}
.fr-hero-wrap {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}
.fr-hero-text { max-width: 760px; }

.fr-eyebrow {
  display: inline-block;
  font-family: var(--fr-mono) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--fr-mint-hover) !important;
  margin-bottom: 20px !important;
}
.fr-hero-h1 {
  font-family: var(--fr-font) !important;
  font-size: clamp(30px, 5vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.025em !important;
  color: var(--fr-navy) !important;
  margin: 0 0 20px !important;
}

/* Cycling peptide chip — GLP1 Forum's exact mechanic */
.fr-pchip {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  background: var(--fr-chip-bg, #DBE6F0);
  color: var(--fr-chip-ink, #2456A8);
  border-radius: 4px;
  padding: 0.04em 0.34em 0.1em;
  font-weight: 700;
  position: relative;
  transition: background 0.45s ease, color 0.45s ease;
  vertical-align: baseline;
}
.fr-hero-h1 .fr-pchip .fr-pcword {
  display: none !important;
  white-space: nowrap;
  opacity: 1;
}
.fr-hero-h1 .fr-pchip .fr-pcword.active {
  display: inline-block !important;
  animation: fr-chip-in 0.4s ease both;
}
@keyframes fr-chip-in {
  from { opacity: 0; transform: translateY(0.18em); }
  to   { opacity: 1; transform: translateY(0); }
}

.fr-hero-p {
  font-family: var(--fr-font) !important;
  font-size: clamp(16px, 2vw, 19px) !important;
  line-height: 1.6 !important;
  color: var(--fr-text-2) !important;
  margin: 0 !important;
  max-width: 640px;
}

/* Data lane cards — GLP1 Forum's lane grid */
.fr-lanes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--fr-border);
  border: 1px solid var(--fr-border);
  margin-top: 44px;
}
.fr-lane {
  background: var(--fr-surface) !important;
  padding: 22px 24px 20px !important;
  display: flex !important;
  flex-direction: column;
  text-decoration: none !important;
  color: var(--fr-navy) !important;
  position: relative;
  transition: background 0.15s ease;
  min-height: 190px;
}
.fr-lane:hover { background: #FBFAF7 !important; }
.fr-lane-hi { box-shadow: inset 3px 0 0 var(--fr-mint); }

.fr-lane-badge {
  position: absolute;
  top: 0; right: 0;
  font-family: var(--fr-mono) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  background: var(--fr-navy) !important;
  color: #fff !important;
  padding: 4px 10px !important;
}
.fr-lane-num {
  font-family: var(--fr-mono) !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  color: var(--fr-navy) !important;
  line-height: 1 !important;
  margin-bottom: 14px !important;
}
.fr-lane-title {
  font-family: var(--fr-font) !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  color: var(--fr-navy) !important;
  margin-bottom: 8px !important;
  letter-spacing: -0.01em !important;
}
.fr-lane-desc {
  font-family: var(--fr-font) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: var(--fr-text-2) !important;
  margin-bottom: 14px !important;
  flex: 1;
}
.fr-lane-meta {
  font-family: var(--fr-mono) !important;
  font-size: 10.5px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #8A91A0 !important;
  margin-bottom: 14px !important;
}
.fr-lane-cta {
  font-family: var(--fr-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--fr-navy) !important;
  transition: color 0.15s ease;
}
.fr-lane:hover .fr-lane-cta { color: var(--fr-mint-hover) !important; }

@media (max-width: 860px) {
  .fr-lanes { grid-template-columns: 1fr; }
  .fr-lane { min-height: 0; }
  .fr-lane-hi { box-shadow: inset 0 3px 0 var(--fr-mint); }
}

/* ============================================================
   BRAND LEADERBOARD (finnrick.com's signature ranked table)
   ============================================================ */
.fr-leaderboard {
  background: var(--fr-bg);
  border-bottom: 1px solid var(--fr-border-warm);
  padding: 48px 0 56px;
}
.fr-lb-wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.fr-lb-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 16px; flex-wrap: wrap;
}
.fr-lb-eyebrow {
  display: block;
  font-family: var(--fr-font); font-size: 12px; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--fr-green); margin-bottom: 6px;
}
.fr-lb-title {
  font-family: var(--fr-font) !important;
  font-size: clamp(24px, 3.2vw, 34px) !important;
  font-weight: 700 !important; letter-spacing: -0.02em !important;
  color: var(--fr-navy) !important; margin: 0 !important;
}
.fr-lb-all {
  font-family: var(--fr-font); font-size: 13px; font-weight: 600;
  color: var(--fr-navy) !important; text-decoration: none !important;
  border-bottom: 1px solid var(--fr-border); padding-bottom: 2px; white-space: nowrap;
}
.fr-lb-all:hover { color: var(--fr-blue) !important; border-color: var(--fr-blue); }
.fr-lb-sub {
  font-family: var(--fr-font) !important; font-size: 15px !important;
  color: var(--fr-text-2) !important; max-width: 680px;
  margin: 12px 0 22px !important; line-height: 1.55 !important;
}

.fr-lb-table { border: 1px solid var(--fr-border); background: var(--fr-surface); }
.fr-lb-row {
  display: grid;
  grid-template-columns: 44px 1fr 92px 104px 104px;
  align-items: center;
  padding: 11px 16px;
  border-top: 1px solid var(--fr-border);
  text-decoration: none !important;
  color: var(--fr-text) !important;
  transition: background 0.12s ease;
}
.fr-lb-row:first-child { border-top: none; }
a.fr-lb-row:hover { background: #FBFAF7; }
.fr-lb-headrow {
  background: var(--fr-navy);
  border-top: none;
}
.fr-lb-headrow span {
  font-family: var(--fr-font) !important; font-size: 11px !important;
  font-weight: 600 !important; letter-spacing: 0.07em !important;
  text-transform: uppercase !important; color: rgba(255,255,255,0.72) !important;
}
.fr-lb-top { background: #FCFBF6; box-shadow: inset 3px 0 0 var(--fr-gold); }
.fr-lb-rank {
  font-family: var(--fr-mono) !important; font-size: 14px !important;
  font-weight: 600 !important; color: var(--fr-navy) !important;
  font-variant-numeric: tabular-nums;
}
.fr-lb-top .fr-lb-rank { color: var(--fr-gold-hover) !important; }
.fr-lb-brand { display: flex; align-items: center; gap: 11px; min-width: 0; }
.fr-lb-logo {
  width: 28px; height: 28px; border-radius: 3px; object-fit: contain;
  background: #EEF1F6; border: 1px solid var(--fr-border); flex-shrink: 0;
  padding: 2px;
}
.fr-lb-logo--txt {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--fr-font); font-size: 11px; font-weight: 700;
  color: var(--fr-navy); letter-spacing: 0.02em;
}
.fr-lb-name {
  font-family: var(--fr-font) !important; font-size: 15px !important;
  font-weight: 600 !important; color: var(--fr-navy) !important;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.fr-lb-num {
  font-family: var(--fr-mono) !important; font-size: 14px !important;
  color: var(--fr-text) !important; text-align: right;
  font-variant-numeric: tabular-nums;
}
.fr-lb-pct {
  font-family: var(--fr-mono) !important; font-size: 13px !important;
  font-weight: 600 !important; color: var(--fr-green) !important;
  text-align: right; position: relative;
  display: flex; align-items: center; justify-content: flex-end; gap: 8px;
  font-variant-numeric: tabular-nums;
}
.fr-lb-pct em {
  display: inline-block; height: 5px; width: 46px; border-radius: 3px;
  background: var(--fr-border); position: relative; overflow: hidden; flex-shrink: 0;
}
.fr-lb-pct em::after {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0;
  width: var(--p, 0%); background: var(--fr-green); border-radius: 3px;
}

@media (max-width: 720px) {
  .fr-lb-row { grid-template-columns: 30px 1fr 56px 64px; padding: 10px 12px; }
  .fr-lb-pct { display: none; }
  .fr-lb-name { font-size: 14px !important; }
  .fr-lb-logo { width: 24px; height: 24px; }
}

/* -- Mobile ------------------------------------------------- */
@media (max-width: 768px) {
  .site-header { padding: 0 16px !important; }
  .finnrick-logo { height: 16px !important; }
  .fr-escrow-label { display: none !important; }
  h1 { font-size: 26px !important; }
  h2 { font-size: 20px !important; }
  /* Logo: scale the lockup down but keep it crisp + centered.
     min/max-width must be overridden too (set on the base rule). */
  html body .brand a::before,
  html body #masthead .brand a::before {
    width: 132px !important; min-width: 132px !important; max-width: 132px !important;
    height: 22px !important; min-height: 22px !important;
  }
  /* Drop the ESCROW sub-label on small screens to avoid crowding the row */
  html body .brand a::after,
  html body #masthead .brand a::after { display: none !important; }
  .fr-hero { padding: 40px 0 36px !important; }
  /* Announcement bar: condense to the core message */
  .fr-topbar-inner { padding: 7px 16px !important; gap: 10px !important; font-size: 11.5px !important; }
  .fr-topbar-msg { gap: 7px !important; }
  .fr-topbar-sep, .fr-topbar-detail { display: none !important; }
  .fr-topbar-link { display: none !important; }
}
@media (max-width: 480px) {
  html body .brand a::before,
  html body #masthead .brand a::before {
    width: 116px !important; min-width: 116px !important; max-width: 116px !important;
    height: 19px !important; min-height: 19px !important;
  }
}

/* ============================================================
   STATS STRIP (finnrick.com's "12,729 results" trust counter)
   Navy band of key numbers, sits between the hero and leaderboard.
   ============================================================ */
.fr-stats-strip {
  background: var(--fr-navy);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding: 22px 0;
}
.fr-stats-inner {
  max-width: 1180px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: 0;
}
.fr-stat {
  display: flex; flex-direction: column; align-items: center;
  gap: 4px; padding: 6px 40px; text-align: center;
}
.fr-stat-num {
  font-family: var(--fr-font) !important;
  font-size: 30px; font-weight: 700; letter-spacing: -0.025em;
  color: #FFFFFF; line-height: 1; font-variant-numeric: tabular-nums;
}
.fr-stat-label {
  font-family: var(--fr-font) !important;
  font-size: 11px; font-weight: 500; letter-spacing: 0.08em;
  text-transform: uppercase; color: rgba(255,255,255,0.56);
}
.fr-stat-sep {
  width: 1px; height: 42px; background: rgba(255,255,255,0.13); flex-shrink: 0;
}
@media (max-width: 720px) {
  .fr-stat { padding: 10px 22px; flex: 1 1 40%; }
  .fr-stat-num { font-size: 24px; }
  .fr-stat-sep { display: none; }
}

/* ============================================================
   HOW ESCROW WORKS (finnrick.com's process explainer, adapted)
   White band · 4 numbered step cards in a seamless grid.
   ============================================================ */
.fr-how-works {
  background: var(--fr-surface);
  border-bottom: 1px solid var(--fr-border-warm);
  padding: 58px 0 62px;
}
.fr-hw-wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.fr-hw-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 16px; flex-wrap: wrap; margin-bottom: 34px;
}
.fr-hw-title {
  font-family: var(--fr-font) !important;
  font-size: clamp(24px, 3.2vw, 33px) !important;
  font-weight: 700 !important; letter-spacing: -0.02em !important;
  color: var(--fr-navy) !important; margin: 0 !important;
}
.fr-hw-link {
  font-family: var(--fr-font) !important;
  font-size: 13px; font-weight: 600; color: var(--fr-navy) !important;
  text-decoration: none !important; border-bottom: 1px solid var(--fr-border);
  padding-bottom: 2px; white-space: nowrap;
}
.fr-hw-link:hover { color: var(--fr-blue) !important; border-color: var(--fr-blue); }
.fr-hw-steps {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 1px; background: var(--fr-border); border: 1px solid var(--fr-border);
}
.fr-hw-step { background: var(--fr-bg); padding: 28px 24px 26px; position: relative; }
.fr-hw-num {
  font-family: var(--fr-font) !important;
  font-size: 40px; font-weight: 700; letter-spacing: -0.03em;
  color: var(--fr-navy); opacity: 0.13; line-height: 1; margin-bottom: 14px;
  font-variant-numeric: tabular-nums;
}
.fr-hw-step-title {
  font-family: var(--fr-font) !important;
  font-size: 17px; font-weight: 700; color: var(--fr-navy);
  margin-bottom: 9px; letter-spacing: -0.01em;
}
.fr-hw-desc {
  font-family: var(--fr-font) !important;
  font-size: 13.5px !important; line-height: 1.55 !important;
  color: var(--fr-text-2) !important; margin: 0 !important;
}
@media (max-width: 860px) { .fr-hw-steps { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .fr-hw-steps { grid-template-columns: 1fr; } }

/* ============================================================
   BUYER'S GUIDES (finnrick.com "latest news" card row, adapted)
   Cream band · 4 guide cards linking to the 101 explainer pages.
   ============================================================ */
.fr-guides {
  background: var(--fr-bg);
  border-bottom: 1px solid var(--fr-border-warm);
  padding: 58px 0 62px;
}
.fr-guides-wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.fr-guides-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 16px; flex-wrap: wrap; margin-bottom: 26px;
}
.fr-guides-title {
  font-family: var(--fr-font) !important;
  font-size: clamp(24px, 3.2vw, 33px) !important;
  font-weight: 700 !important; letter-spacing: -0.02em !important;
  color: var(--fr-navy) !important; margin: 0 !important;
}
.fr-guides-all {
  font-family: var(--fr-font) !important;
  font-size: 13px; font-weight: 600; color: var(--fr-navy) !important;
  text-decoration: none !important; border-bottom: 1px solid var(--fr-border);
  padding-bottom: 2px; white-space: nowrap;
}
.fr-guides-all:hover { color: var(--fr-blue) !important; border-color: var(--fr-blue); }
.fr-guides-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.fr-guide-card {
  background: var(--fr-surface) !important;
  border: 1px solid var(--fr-border) !important;
  border-radius: 3px !important;
  padding: 24px 22px 20px !important;
  display: flex !important; flex-direction: column;
  text-decoration: none !important; color: var(--fr-navy) !important;
  transition: box-shadow 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.fr-guide-card:hover {
  box-shadow: 0 6px 20px rgba(16,28,46,0.10) !important;
  border-color: var(--fr-navy) !important;
  transform: translateY(-2px);
}
.fr-guide-tag {
  display: inline-block; font-family: var(--fr-font) !important;
  font-size: 10px; font-weight: 600; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--fr-blue) !important; margin-bottom: 11px;
}
.fr-guide-title {
  font-family: var(--fr-font) !important;
  font-size: 17px; font-weight: 700; color: var(--fr-navy);
  letter-spacing: -0.01em; margin-bottom: 9px; line-height: 1.25;
}
.fr-guide-desc {
  font-family: var(--fr-font) !important;
  font-size: 13.5px !important; line-height: 1.55 !important;
  color: var(--fr-text-2) !important; margin: 0 0 16px !important; flex: 1;
}
.fr-guide-cta {
  font-family: var(--fr-font) !important;
  font-size: 13px; font-weight: 600; color: var(--fr-navy) !important; margin-top: auto;
}
.fr-guide-card:hover .fr-guide-cta { color: var(--fr-blue) !important; }
@media (max-width: 860px) { .fr-guides-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .fr-guides-grid { grid-template-columns: 1fr; } }

/* ============================================================
   NEWSLETTER CAPTURE (finnrick.com's footer signup, as a band)
   Navy band · headline left, email form right, gold Subscribe.
   ============================================================ */
.fr-newsletter {
  background: var(--fr-navy);
  border-top: 1px solid rgba(255,255,255,0.08);
  padding: 56px 0 60px;
}
.fr-nl-wrap {
  max-width: 1180px; margin: 0 auto; padding: 0 24px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center;
}
.fr-nl-wrap .fr-lb-eyebrow { color: var(--fr-gold) !important; }
.fr-nl-title {
  font-family: var(--fr-font) !important;
  font-size: clamp(22px, 3vw, 30px) !important;
  font-weight: 700 !important; letter-spacing: -0.02em !important;
  color: #FFFFFF !important; margin: 6px 0 10px !important;
}
.fr-nl-desc {
  font-family: var(--fr-font) !important;
  font-size: 15px !important; color: rgba(255,255,255,0.65) !important;
  line-height: 1.6 !important; margin: 0 !important; max-width: 440px;
}
.fr-nl-form { width: 100%; }
.fr-nl-row {
  display: flex; gap: 0;
  border: 1px solid rgba(255,255,255,0.20); border-radius: 2px; overflow: hidden;
}
.fr-nl-input {
  flex: 1; min-width: 0;
  background: rgba(255,255,255,0.08) !important;
  border: none !important; border-radius: 0 !important;
  color: #FFFFFF !important; font-family: var(--fr-font) !important;
  font-size: 15px !important; padding: 14px 16px !important;
}
.fr-nl-input::placeholder { color: rgba(255,255,255,0.42) !important; }
.fr-nl-input:focus {
  background: rgba(255,255,255,0.12) !important;
  outline: none !important; box-shadow: none !important; border: none !important;
}
.fr-nl-btn {
  background: var(--fr-gold) !important; color: var(--fr-gold-ink) !important;
  border: none !important; border-radius: 0 !important;
  font-family: var(--fr-font) !important;
  font-size: 14px !important; font-weight: 700 !important;
  letter-spacing: 0.08em !important; text-transform: uppercase !important;
  padding: 14px 22px !important; cursor: pointer !important;
  white-space: nowrap; flex-shrink: 0; transition: background 0.15s ease !important;
}
.fr-nl-btn:hover { background: var(--fr-gold-hover) !important; }
.fr-nl-note {
  font-family: var(--fr-font) !important;
  font-size: 12px !important; color: rgba(255,255,255,0.42) !important;
  margin: 11px 0 0 !important; line-height: 1.4 !important;
}
.fr-nl-success {
  background: rgba(19,132,74,0.16); border: 1px solid rgba(79,217,140,0.32);
  color: #4FD98C !important; font-family: var(--fr-font) !important;
  padding: 16px 20px; font-weight: 600; font-size: 15px; border-radius: 2px;
}
@media (max-width: 768px) {
  .fr-nl-wrap { grid-template-columns: 1fr; gap: 26px; }
}

/* ============================================================
   FOOTER SOCIAL LINKS (finnrick.com "SOCIALIZE" row)
   Injected after the escrow badge in the footer brand column.
   ============================================================ */
.fr-foot-social { display: flex; align-items: center; gap: 10px; margin-top: 20px; }
.fr-soc {
  display: inline-flex !important; align-items: center; justify-content: center;
  width: 34px; height: 34px;
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.13) !important;
  border-radius: 3px !important;
  color: rgba(255,255,255,0.62) !important;
  text-decoration: none !important;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.fr-soc:hover {
  background: rgba(255,255,255,0.14) !important;
  color: #FFFFFF !important; border-color: rgba(255,255,255,0.28) !important;
}
.fr-soc svg { display: block; }

/* ============================================================
   DEFENSIVE: never let a styled element override the `hidden`
   attribute. Any modal/dropdown/panel the theme toggles via
   `hidden` (or we style with display:…!important) stays hideable.
   Declared last so it wins equal-specificity ties. Higher-specificity
   display rules (e.g. the age gate) carry their own [hidden] guard.
   ============================================================ */
[hidden] { display: none !important; }


/* ── Shop by peptide (homepage) ─────────────────────────────── */
.fr-peps{background:#4B85B4;padding:10px 20px 2px}
.fr-peps-wrap{max-width:1180px;margin:0 auto}
.fr-peps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;margin-top:8px}
.fr-pep-card{display:flex;flex-direction:column;gap:3px;padding:13px 14px;background:#fff;border:1px solid #D7DBE2;border-radius:8px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.fr-pep-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px -20px rgba(16,28,46,.5);border-color:#2456A8}
.fr-pep-name{font-weight:700;color:#243342;font-size:15px;line-height:1.2}
.fr-pep-count{font-size:12px;color:#5A6372;font-variant-numeric:tabular-nums}
@media(max-width:600px){.fr-peps-grid{grid-template-columns:repeat(2,1fr)}}

html body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Roboto,Arial,sans-serif!important}


/* ============================================================
   GLP1 FORUM concept skin — match glp1forum.com (XenForo blue)
   blue page #4B85B4 · navy header #243342 · white cards · gradient heads
   ============================================================ */
html, body { background:#4B85B4 !important; }
.main-content,.page-content,.site-content,.content-area,.primary-content,.stg-wrap,.stg-section,.stg-sections { background:transparent !important; }

/* Navy header + blue accent rail + white nav (forum header) */
html body .site-header, html body #masthead, html body #masthead .header-row,
html body #masthead .header-main, html body #masthead .header-inner, html body .header-wrap {
  background-color:#243342 !important; border-bottom:3px solid #2A6293 !important; color:#E8F4FC !important;
}
html body #masthead a, html body .site-header a, html body .header-main .menu-item > a,
html body #masthead .action-label, html body #masthead .nav-link { color:#E8F4FC !important; }
html body #masthead a:hover, html body .header-main .menu-item > a:hover, html body #masthead .nav-link:hover { color:#9FD0F5 !important; }
html body #masthead .action-sub { color:#9DB2C9 !important; }
html body #masthead .action-icon, html body .action-icon, html body #masthead .header-action-icon { color:#E8F4FC !important; }
html body #masthead .menu > li > a::after { background:#9FD0F5 !important; } /* nav underline */

/* White cards on blue, light-blue borders, rounded (forum panels) */
.stg-box,.fr-lane,.fr-pep-card,.fr-guide-card,.stg-card,.stg-panel,.stg-tool,
.woocommerce ul.products > li.product, .products > .product, .fr-nl-form, .fr-stat {
  background:#FFFFFF !important; border:1px solid #BBD0E6 !important; border-radius:6px !important;
}

/* Forum-style gradient section headers (white top -> blue bottom) */
.fr-guides-head, .fr-lb-head, .fr-hw-head, .fr-lb-headrow {
  background:linear-gradient(0deg,#3E85CC,#FFFFFF) !important;
  border:1px solid #9DBEDC !important; border-radius:6px 6px 0 0 !important;
  padding:12px 16px !important; margin:0 !important;
}
.fr-guides-title, .fr-lb-title, .fr-hw-title, .fr-lb-head *, .fr-guides-head .fr-lb-eyebrow { color:#243342 !important; }

/* Hero + stats text must sit on a readable surface over blue: give hero a white card */
.fr-hero { background:#FFFFFF !important; border:1px solid #BBD0E6 !important; border-radius:8px !important; margin:16px auto !important; }
.fr-peps, .fr-guides, .fr-how-works { background:transparent !important; }

/* Links deep blue */
.main-content a, .stg-box a, p a, .woocommerce a.link, .fr-guide-card, .fr-pep-name { color:#2456A8 !important; }

/* Topbar + footer stay navy */
.fr-topbar, .footer, .footer-row.footer-widgets { background:#243342 !important; }


/* ============================================================
   Card the bare page/archive headers + category intro on blue
   (higher contrast — forum-style white .p-title panels)
   ============================================================ */
html body .page-header.align-center { padding:18px 0 2px !important; background:transparent !important; }
html body .page-header.align-center .page-header-inner,
html body .stg-cat-intro {
  background:#FFFFFF !important;
  border:1px solid #BBD0E6 !important;
  border-radius:8px !important;
  padding:16px 22px !important;
  box-shadow:0 1px 2px rgba(36,51,66,.06) !important;
}
html body .page-header .entry-title { color:#243342 !important; }
html body .page-header .entry-description,
html body .page-header .entry-description p,
html body .stg-cat-intro,
html body .stg-cat-intro p { color:#252D41 !important; }
html body .stg-cat-intro { margin:16px 0 !important; }
html body .stg-cat-intro strong { color:#243342 !important; }


/* ============================================================
   COLOR FIXES (2026-11-09 full-site pass)
   - near-black footer/submenu -> forum navy
   - form controls turned blue by the #F6F8FB->#4B85B4 swap -> white
   - primary coral buttons -> white text
   ============================================================ */

/* 1) Footer + copyright bar -> forum navy (was #0b0d14 / #0b1422) */
html body footer.footer { background:#243342 !important; }
html body .footer-row.footer-copyright,
html body .footer .copyright { background:#1D2A38 !important; }
html body footer.footer, html body footer.footer p,
html body .footer-copyright, html body .footer-copyright a { color:#C7D6E5 !important; }
html body footer.footer a:hover { color:#9FD0F5 !important; }

/* 2) Header dropdown submenus -> navy (was #171a24) */
html body #masthead ul.sub-menu, html body .header-navbar ul.sub-menu,
html body .site-header ul.sub-menu {
  background:#243342 !important; border:1px solid #2A6293 !important;
}
html body #masthead ul.sub-menu a, html body .header-navbar ul.sub-menu a { color:#E8F4FC !important; }
html body #masthead ul.sub-menu li > a:hover, html body .header-navbar ul.sub-menu li > a:hover {
  background:#2A6293 !important; color:#FFFFFF !important;
}

/* 3) Form controls were light-gray (#F6F8FB) -> became page-blue. Restore WHITE. */
html body input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]),
html body select, html body textarea,
html body .input-text, html body .input-qty,
html body .select2-container--default .select2-selection--single {
  background-color:#FFFFFF !important; color:#252D41 !important;
  border:1px solid #BBD0E6 !important;
}
html body input::placeholder, html body textarea::placeholder { color:#8A91A0 !important; }

/* qty stepper buttons -> light chip, not blue */
html body .quantity, html body .quantity .input-qty { background:#FFFFFF !important; }
html body .quantity-button, html body .quantity .plus, html body .quantity .minus {
  background:#EEF3F9 !important; color:#243342 !important; border-color:#BBD0E6 !important;
}
html body .quantity-button:hover, html body .quantity .plus:hover, html body .quantity .minus:hover {
  background:#DBE6F0 !important;
}

/* stray blue trust/review boxes + blue list chips -> white card */
html body .stg-trustbox, html body .stg-rv {
  background:#FFFFFF !important; border:1px solid #BBD0E6 !important; border-radius:6px !important;
}

/* 4) Primary / coral buttons -> WHITE text (add-to-cart had near-black text) */
html body .single_add_to_cart_button, html body button.single_add_to_cart_button,
html body .add_to_cart_button, html body .ajax_add_to_cart,
html body .checkout-button, html body #place_order,
html body .button.alt, html body .wc-forward, html body .wp-element-button.button,
html body .button.variant-black {
  color:#FFFFFF !important;
}
html body .single_add_to_cart_button:hover, html body #place_order:hover,
html body .checkout-button:hover, html body .button.alt:hover { color:#FFFFFF !important; filter:brightness(.95); }


/* colorfix supplement: coral button text (incl. children) + password toggle */
html body button.variant-black, html body .button.variant-black,
html body button.variant-black *, html body .button.variant-black *,
html body .ustone-ajax-login-submit, html body .ustone-ajax-login-submit * {
  color:#FFFFFF !important;
}
html body .show-password-input { background:transparent !important; color:#243342 !important; opacity:.65 !important; }
html body .show-password-input:hover { opacity:1 !important; }


/* colorfix: bulk-pricing tier chips were page-blue (swap casualty) -> light chips */
html body .stg-bulk ol li {
  background:#EEF3F8 !important; color:#243342 !important;
  border:1px solid #BBD0E6 !important;
}
html body .stg-bulk ol li b { color:#243342 !important; }
html body .stg-bulk ol li .woocommerce-Price-amount { color:#2456A8 !important; }
html body .stg-bulk ol li.is-on { background:#FFFFFF !important; border-color:#F96A5E !important; }
html body .stg-bulk ol li.is-on .woocommerce-Price-amount { color:#243342 !important; }
html body .stg-bulk ol li:hover { background:#DBE6F0 !important; }


/* ============================================================
   Header nav = glp1forum tab strip (2026-11-09 forum redesign)
   was: top-level links #3d4656 on navy, active "Home" = #243342 (invisible)
   ============================================================ */
html body .header-row.header-navbar { background:#2A6293 !important; border-top:1px solid rgba(255,255,255,.08) !important; border-bottom:0 !important; }
html body .header-navbar .menu > li > a {
  color:#E8F4FC !important; border-radius:6px 6px 0 0 !important;
  transition:background .2s, color .2s !important;
}
html body .header-navbar .menu > li > a:hover { color:#FFFFFF !important; background:rgba(255,255,255,.12) !important; }
html body .header-navbar .menu > li.current-menu-item > a,
html body .header-navbar .menu > li.current_page_item > a,
html body .header-navbar .menu > li.current-menu-ancestor > a,
html body .header-navbar .menu > li.current-menu-parent > a {
  color:#212483 !important; background:#CDDBEA !important; font-weight:700 !important;
}
html body .header-navbar .menu > li > a::after, html body .header-navbar .menu > li > a::before { display:none !important; }

/* tab strip, ID-level specificity to beat the old #masthead .primary-menu rules */
html body #masthead .header-row.header-navbar { background:#2A6293 !important; border-top:1px solid rgba(255,255,255,.08) !important; }
html body #masthead .header-navbar .header-inner { min-height:48px !important; align-items:flex-end !important; }
html body #masthead .primary-menu .menu > li > a {
  color:#E8F4FC !important; padding:13px 16px 12px !important; margin-right:3px !important;
  font-size:15px !important; font-weight:500 !important; letter-spacing:0 !important;
  border-radius:6px 6px 0 0 !important; transition:background .2s, color .2s !important;
}
html body #masthead .primary-menu .menu > li.menu-item-has-children > a { margin-right:3px !important; padding-right:26px !important; }
html body #masthead .primary-menu .menu > li > a:hover { color:#FFFFFF !important; background:rgba(255,255,255,.13) !important; }
html body #masthead .primary-menu .menu > li.current-menu-item > a,
html body #masthead .primary-menu .menu > li.current_page_item > a,
html body #masthead .primary-menu .menu > li.current-menu-ancestor > a,
html body #masthead .primary-menu .menu > li.active > a { color:#212483 !important; background:#CDDBEA !important; font-weight:700 !important; }
html body #masthead .primary-menu .menu > li > a::after { display:none !important; }
html body #masthead .primary-menu .menu > li.menu-item-has-children > a .sub-arrow,
html body #masthead .primary-menu .menu > li > a svg { color:currentColor !important; fill:currentColor !important; }
html body #masthead .header-navbar .header-inner > .column.flex-1::after { color:#C7D6E5 !important; align-self:center !important; }

html body #masthead .header-row.header-navbar .header-inner { background:transparent !important; border-bottom:0 !important; }

/* payment coin chips were page-blue (swap casualty) -> light chips */
html body .stg-pay-coins { background:transparent !important; }
html body .stg-pay-coins > span { background:#EEF3F8 !important; color:#243342 !important; border:1px solid #BBD0E6 !important; transition:transform .2s, background .2s !important; }
html body .stg-pay-coins > span:hover { transform:translateY(-2px); background:#DBE6F0 !important; }
html body .stg-pay-coins > span.is-wallet { background:#E2F2E9 !important; color:#13844A !important; border-color:#9FD8B8 !important; }

/* header cart total: WooCommerce price colour was beating the header text colour */
html body #masthead .action-label, html body #masthead .action-label .woocommerce-Price-amount,
html body #masthead .action-label bdi, html body #masthead .action-label .woocommerce-Price-currencySymbol { color:#E8F4FC !important; }
