/** Shopify CDN: Minification failed

Line 3937:13 Expected ":"

**/
/* ===========================================
   MED-TAC GLOBAL OVERRIDES
   Extracted from layout/theme.liquid
   =========================================== */

/* ===========================================
   DARK TACTICAL COMMAND — Global Theme System
   Dark-dominant canvas with gunmetal card surfaces
   =========================================== */
:root {
  --dtc-canvas: #0F1115;
  --dtc-card-surface: #1A1F28;
  --dtc-card-border: #2A3340;
  --dtc-micro-border: rgba(255,255,255,0.08);
  --dtc-navy: #1A2B4A;
  --dtc-red: #CC1414;
  --dtc-gold: #9C8F61;
  --dtc-amber: #F59E0B;
  --dtc-body-text: #D0D5DD;
  --dtc-muted: #6B7280;
  --dtc-white: #FFFFFF;
  --dtc-font-display: 'Barlow Condensed', 'Barlow', sans-serif;
  --dtc-font-mono: 'JetBrains Mono', 'Space Mono', monospace;
}

/* Prevent theme's global a:hover { color: #ff7e00 } from turning
   red CTA button text orange on hover. Add any new red anchor
   button class here to keep white text on hover. */
.fudge-reUnj-hero__btn-primary:hover,
.fudge-reUnj-kits__tier-btn:hover,
.fudge-jase-partnership__btn--primary:hover,
.fudge-bunker-banner__cta:hover,
.fudge-DBfSs-final__btn--primary:hover,
.fudge-reUnj-bestsellers__cta:hover,
.fudge-reUnj-brief__btn:hover,
.fudge-gov-sticky__button:hover,
.fudge-hero-as-mci__cta-primary:hover {
  color: #ffffff !important;
}

/* Main content canvas — dark-dominant */
body,
#MainContent,
.main-content,
.page-container,
.main-content-grid {
  background-color: #0F1115 !important;
  color: #D0D5DD;
}

/* Body text on dark backgrounds — softer than pure white for readability */
body {
  color: #D0D5DD;
}

/* ===========================================
   HOMEPAGE LIGHT THEME — Override dark canvas
   Scoped to body.medtac-home-light (index only)
   =========================================== */
body.medtac-home-light,
body.medtac-home-light #MainContent,
body.medtac-home-light .main-content,
body.medtac-home-light .page-container,
body.medtac-home-light .main-content-grid {
  background-color: #ffffff !important;
  color: #121212;
}
body.medtac-home-light {
  color: #121212;
}

/* Product cards on homepage light sections — white surfaces */
body.medtac-home-light [id^="shopify-section"] .product-item,
body.medtac-home-light [id^="shopify-section"] .product-collection {
  background-color: #ffffff !important;
  border: 1px solid #e8e8e8 !important;
}
body.medtac-home-light [id^="shopify-section"] .product-item:hover,
body.medtac-home-light [id^="shopify-section"] .product-collection:hover {
  box-shadow: 0 8px 28px rgba(0,0,0,0.12) !important;
  border-color: rgba(156,143,97,0.4) !important;
}
body.medtac-home-light [id^="shopify-section"] .product-collection__image {
  background-color: #f8f8f8;
}

/* strong tags in light sections — ensure dark text */
body.medtac-home-light .medtac-light-section strong {
  color: #121212 !important;
}

/* strong tags in dark sections — force white per existing rules */
.dark-section strong,
section[style*="background-color: #0F1115"] strong,
section[style*="background-color: #121212"] strong,
section[style*="background-color: #1a1a1a"] strong,
section[style*="background-color: #1a1a2e"] strong,
section[style*="background-color: #1A2B4A"] strong,
.fudge-y6fnr-site-header strong,
.medtac-footer strong {
  color: #fff !important;
}

/* Slider cart bold text — light theme, dark headings */
.sc-drawer strong,
#slider-cart-drawer strong {
  color: var(--sc-heading, #121212) !important;
}

/* Key term highlighting in dark sections */
.dark-section strong,
section[style*="background-color: #0F1115"] strong[key-term],
section[style*="background-color: #121212"] strong[key-term] {
  color: #9C8F61 !important;
}

/* ===========================================
   PRODUCT CARDS — Dark Card Surfaces
   =========================================== */
[id^="shopify-section"] .product-item,
[id^="shopify-section"] .product-collection {
  background-color: #1A1F28 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 6px;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  display: flex;
  flex-direction: column;
}

[id^="shopify-section"] .product-item:hover,
[id^="shopify-section"] .product-collection:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 28px rgba(0,0,0,0.4);
  border-color: rgba(156,143,97,0.3) !important;
}

/* Product card image container */
[id^="shopify-section"] .product-collection__image {
  background-color: #1A1F28;
}

[id^="shopify-section"] .product-collection__image .card__media,
[id^="shopify-section"] .product-collection__image .media {
  overflow: hidden;
  border-radius: 0;
}

[id^="shopify-section"] .product-collection__image img {
  object-fit: cover;
  transition: transform 0.3s ease;
}

[id^="shopify-section"] .product-item:hover .product-collection__image img,
[id^="shopify-section"] .product-collection:hover .product-collection__image img {
  transform: scale(1.05);
}

/* Product card content area */
[id^="shopify-section"] .product-collection__content {
  background-color: #1A1F28;
  padding: 14px 16px 16px;
}

/* Product card title — #D0D5DD → gold on hover */
[id^="shopify-section"] .product-collection__title h2 a {
  color: #D0D5DD !important;
  font-family: 'Barlow', sans-serif;
  font-size: 14px;
  font-weight: 600;
  transition: color 0.2s ease;
  min-height: 3.6em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
}

[id^="shopify-section"] .product-item:hover .product-collection__title h2 a,
[id^="shopify-section"] .product-collection:hover .product-collection__title h2 a {
  color: #9C8F61 !important;
}

/* Product card price — bold red (brightened for dark cards) */
[id^="shopify-section"] .product-collection__price .price,
[id^="shopify-section"] .product-collection__price .price span {
  color: #ff5252 !important;
  font-weight: 700;
  font-size: 16px;
}

/* Product card star ratings — amber */
[id^="shopify-section"] .fudge-trustify-stars {
  margin: 2px 0 8px 0;
}

[id^="shopify-section"] .fudge-trustify-count {
  color: #D0D5DD !important;
  font-size: 12px;
  font-weight: 500;
}

/* Product card ATC / View Details button */
[id^="shopify-section"] .button-cart-bottom .add-to-cart {
  background-color: #CC1414 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  width: 100%;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: auto;
}

[id^="shopify-section"] .button-cart-bottom .add-to-cart:hover {
  background-color: #a00f0f !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(204,20,20,0.3);
}

[id^="shopify-section"] .button-cart-bottom .add-to-cart:disabled {
  background-color: #2A3340 !important;
  color: #6B7280 !important;
  cursor: not-allowed;
}

/* Save badge on product cards — crimson */
[id^="shopify-section"] .fudge-save-badge {
  background: #CC1414;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 3px;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 6px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

/* Monospaced spec badges on product cards */
.dtc-spec-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #9C8F61;
  background: rgba(156,143,97,0.1);
  border: 1px solid rgba(156,143,97,0.25);
  padding: 3px 7px;
  border-radius: 3px;
  white-space: nowrap;
  margin: 2px 4px 2px 0;
}

.dtc-spec-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 0 8px 0;
  padding: 0;
}

/* Doc's Choice gold stamp badge */
.dtc-docs-choice-stamp {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 5;
  background: linear-gradient(135deg, #9C8F61 0%, #7a6e4d 100%);
  color: #fff;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 5px 10px;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  gap: 4px;
}

.dtc-docs-choice-stamp::before {
  content: '\2605';
  font-size: 12px;
}

/* ===========================================
   COLLECTION PAGE — Dark Canvas
   =========================================== */
.main-content-grid,
.js_container_cat,
.product-grid-container,
#ProductGridContainer,
#product-grid {
  background-color: #0F1115 !important;
}

/* Dark filter sidebar */
.facets-wrapper,
#main-collection-filters,
aside.facets-wrapper {
  background-color: #1A1F28 !important;
  border: 1px solid #2A3340 !important;
  border-radius: 6px;
  padding: 16px 16px 8px !important;
}

/* Remove inner box-in-box: strip border, radius, and excessive padding from .facets-container */
.facets-vertical .facets-wrapper .facets-container,
.facets-container {
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
}

/* Filter labels and headings */
.facets__heading,
.facets__details summary,
.facets__details .facets__label,
.verticalTitle {
  color: #9C8F61 !important;
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Filter checkbox/radio labels */
.facets__label .facet-checkbox,
.facets__label span,
.facet-item .facet-checkbox__text,
.facet-item .facet-checkbox__count {
  color: #D0D5DD !important;
}

/* Filter inputs */
.facets__input,
input[type="checkbox"].facet-checkbox,
input[type="radio"].facet-radio {
  accent-color: #9C8F61;
}

/* Sort by dropdown — dark styled */
.select__select,
.facets__sort select,
#SortBy,
select[name="sort_by"] {
  background-color: #1A1F28 !important;
  color: #D0D5DD !important;
  border: 1px solid #2A3340 !important;
  border-radius: 4px;
  padding: 8px 12px;
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  cursor: pointer;
  min-height: 44px;
}

.select__select option,
.facets__sort select option {
  background-color: #1A1F28;
  color: #D0D5DD;
}

/* Collection breadcrumbs — dark */
.breadcrum,
.breadcrumbs,
.breadcrumb {
  color: #595959 !important;
  font-size: 13px !important;
}

.breadcrum a,
.breadcrumbs a,
.breadcrumb a {
  color: #1A2B4A !important;
  text-decoration: none;
}

.breadcrum a:hover,
.breadcrumbs a:hover,
.breadcrumb a:hover {
  color: #9C8F61 !important;
}

/* Active filter pills — dark */
.active-facets__button,
.active-facets__button-wrapper button {
  background-color: #1A1F28 !important;
  color: #D0D5DD !important;
  border: 1px solid #2A3340 !important;
  border-radius: 4px;
  padding: 4px 10px;
  font-size: 12px;
}

.active-facets__button:hover,
.active-facets__button-wrapper button:hover {
  border-color: #CC1414 !important;
  color: #CC1414 !important;
}

/* Clear All button */
.active-facets__clear,
.active-facets__clear-wrapper a,
.active-facets__clear-wrapper button {
  color: #9C8F61 !important;
  font-weight: 600;
  text-decoration: none;
  font-size: 13px;
}

.active-facets__clear:hover,
.active-facets__clear-wrapper a:hover,
.active-facets__clear-wrapper button:hover {
  color: #c9a227 !important;
}

/* Facets summary arrow color */
.facets__details summary .icon-caret,
.facets__details summary svg {
  color: #9C8F61 !important;
}

/* Collection grid — 3-col desktop, 2-col mobile */
#product-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}

@media screen and (max-width: 749px) {
  #product-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}

/* Hide list-view duplicate (DOM bloat fix — keep) */
.product-list-style {
  display: none !important;
}

/* ===========================================
   FACETS — Dark Theme Overrides for component-facets.css
   =========================================== */
.facets-container,
.facets__summary,
.facets__summary:hover,
.facets__disclosure[open] .facets__summary,
.facets__display,
.facets__disclosure-panel,
.mobile-facets__inner,
.mobile-facets__submenu,
.js details[open] > .mobile-facets__submenu,
.mobile-facets__footer {
  background-color: #1A1F28 !important;
  color: #D0D5DD !important;
}

.facets__summary:hover,
.facets__disclosure[open] .facets__summary {
  background-color: #1A1F28 !important;
  border-color: #2A3340 !important;
}

/* Facet checkbox backgrounds */
.facet-checkbox,
input[type="checkbox"].facet-checkbox {
  background: #1A1F28 !important;
  border-color: #2A3340 !important;
  accent-color: #9C8F61;
}

/* Active facet remove buttons */
.active-facets facet-remove a,
.active-facets__button-wrapper button {
  background: #1A1F28 !important;
  color: #D0D5DD !important;
  border: 1px solid #2A3340 !important;
}

/* Mobile facets */
.mobile-facets__header,
.mobile-facets__header-inner {
  background-color: #0F1115 !important;
  color: #D0D5DD !important;
  border-bottom: 1px solid #2A3340 !important;
}

.mobile-facets__close-button {
  color: #D0D5DD !important;
}

.mobile-facets__list {
  background-color: #1A1F28 !important;
}

/* Facet text colors on dark */
.facets__label,
.facets__label span,
.facet-checkbox__text,
.facet-checkbox__count,
.mobile-facets__label,
.mobile-facets__label span {
  color: #D0D5DD !important;
}

/* Facet group headings */
.facets__heading,
.mobile-facets__heading {
  color: #9C8F61 !important;
  border-bottom: 1px solid #2A3340 !important;
}

/* Facet disclosure borders */
.facets__disclosure,
.facets__details {
  border-color: #2A3340 !important;
}

/* Mobile facet overlay */
.mobile-facets__overlay {
  background: rgba(0,0,0,0.6) !important;
}

/* ===========================================
   BUTTONS & CTAs — Dark Tactical Command
   =========================================== */
/* Primary red CTA */
.btn-primary,
.button--primary,
.fudge-cta-btn--primary,
a.btn-primary,
button.btn-primary {
  background-color: #CC1414 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px;
  padding: 12px 28px;
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 14px;
  transition: all 0.25s ease;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
}

.btn-primary:hover,
.button--primary:hover,
.fudge-cta-btn--primary:hover,
a.btn-primary:hover,
button.btn-primary:hover {
  background-color: #a00f0f !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(204,20,20,0.35);
}

/* Gold CTA */
.btn-gold,
.fudge-cta-btn--gold,
a.btn-gold,
button.btn-gold {
  background-color: #9C8F61 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px;
  padding: 12px 28px;
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 14px;
  transition: all 0.25s ease;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
}

.btn-gold:hover,
.fudge-cta-btn--gold:hover,
a.btn-gold:hover,
button.btn-gold:hover {
  background-color: #7a6e4d !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(156,143,97,0.3);
}

/* Glass-morphism secondary CTA */
.btn-glass,
.fudge-cta-btn--glass,
a.btn-glass {
  background: rgba(255,255,255,0.08) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #D0D5DD !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 50px;
  padding: 12px 28px;
  font-family: 'Barlow', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 14px;
  transition: all 0.25s ease;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
}

.btn-glass:hover,
.fudge-cta-btn--glass:hover,
a.btn-glass:hover {
  background: rgba(255,255,255,0.15) !important;
  border-color: rgba(156,143,97,0.4) !important;
  color: #fff !important;
}

/* ===========================================
   TRUST BADGES — Dark Background Styled
   =========================================== */
.fudge-unified-trust-bar {
  background-color: #1A1F28 !important;
  border: 1px solid #2A3340 !important;
  border-radius: 6px;
  padding: 12px 20px;
}

.fudge-unified-trust-bar .trust-badge,
.fudge-unified-trust-bar .trust-item,
.fudge-unified-trust-bar svg {
  color: #9C8F61 !important;
}

.fudge-unified-trust-bar .trust-label,
.fudge-unified-trust-bar .trust-text {
  color: #D0D5DD !important;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* ===========================================
   SECTION HEADERS — Display Typography
   =========================================== */
.dtc-display-header {
  font-family: 'Barlow Condensed', 'Barlow', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: #fff;
}

/* Gold gradient top borders (existing pattern preserved) */
.dtc-gold-top-border {
  border-top: 3px solid transparent;
  border-image: linear-gradient(90deg, #9C8F61 0%, #7a6e4d 50%, transparent 100%) 1;
}

/* Grid texture overlay for dark backgrounds (existing pattern preserved) */
.dtc-grid-texture {
  position: relative;
}

.dtc-grid-texture::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: 
    linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
  z-index: 0;
}

/* ===========================================
   MARCH PROTOCOL COLORS — Preserved
   M: Red #c41e3a, A: Orange #f5a623, R: Green #2e7d32, C: Gray #9e9e9e, H: Purple #7b1fa2
   =========================================== */
.march-m { color: #c41e3a !important; }
.march-a { color: #f5a623 !important; }
.march-r { color: #2e7d32 !important; }
.march-c { color: #9e9e9e !important; }
.march-h { color: #7b1fa2 !important; }

/* ===========================================
   GLOBAL FULL-WIDTH LAYOUT
   All pages: Landing pages, PDPs, Collections, Blogs
   =========================================== */

/* Override theme container constraints */
.container,
.page-width,
.page-container .container {
  max-width: 100% !important;
  width: 100%;
  padding-left: 40px !important;
  padding-right: 40px !important;
  box-sizing: border-box;
}

/* Ensure nested containers don't over-constrain */
.container .container,
.page-width .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ===========================================
   HOMEPAGE FULL-WIDTH: ALL content wrappers
   Catches grids, about blocks, inners, etc.
   =========================================== */
.fudge-stats-about__grid,
.fudge-stats-about__about,
.fudge-latest-articles__grid,
.fudge-jase-partnership__inner,
.fudge-brief-block__container,
[class*="fudge-"][class*="__grid"],
[class*="fudge-"][class*="__about"],
[class*="fudge-"][class*="__inner"] {
  max-width: 100% !important;
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
}
/* Exclude tiny UI elements (swatches, etc.) from section container padding */
.fudge-inline-swatch__inner {
  max-width: none !important;
  width: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media screen and (max-width: 749px) {
  .fudge-stats-about__grid,
  .fudge-stats-about__about,
  .fudge-latest-articles__grid,
  .fudge-jase-partnership__inner,
  .fudge-brief-block__container,
  [class*="fudge-"][class*="__grid"],
  [class*="fudge-"][class*="__about"],
  [class*="fudge-"][class*="__inner"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .fudge-inline-swatch__inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Full-width sections */
.fudge-hero-1__container,
.fudge-d0hGv-hero__container,
[class*="fudge-"][class*="__container"],
[class*="fudge-"][class*="-container"] {
  max-width: 100% !important;
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
}

/* Mobile: reduce side padding */
@media screen and (max-width: 749px) {
  .container,
  .page-width,
  .page-container .container,
  .fudge-hero-1__container,
  .fudge-d0hGv-hero__container,
  [class*="fudge-"][class*="__container"],
  [class*="fudge-"][class*="-container"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* Tablet: medium padding */
@media screen and (min-width: 750px) and (max-width: 1024px) {
  .container,
  .page-width,
  .page-container .container {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

/* ===========================================
   QUICK ADD BUTTON STYLES
   =========================================== */

/* Quick Add button for single-variant products */
.fudge-quick-add-btn {
  transition: all 0.2s ease;
}

.fudge-quick-add-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.fudge-quick-add-btn.is-loading {
  opacity: 0.7;
  cursor: wait;
}

.fudge-quick-add-btn.add-success {
  background-color: #22c55e !important;
  border-color: #22c55e !important;
}

.fudge-quick-add-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* ===========================================
   CORE WEB VITALS OPTIMIZATIONS
   =========================================== */

/* ===========================================
   INLINE HEADER SEARCH BAR
   =========================================== */

/* Search container */
.header-inline-search {
  flex: 1;
  max-width: 400px;
  padding: 0 20px;
}

/* Search form */
.header-search-form {
  position: relative;
  width: 100%;
}

/* Search wrapper - pill shape */
.header-search-wrapper {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(156, 143, 97, 0.3);
  border-radius: 50px;
  padding: 0 12px;
  transition: all 0.3s ease;
}

.header-search-wrapper:hover {
  border-color: rgba(156, 143, 97, 0.6);
  background: rgba(255, 255, 255, 0.12);
}

.header-search-wrapper:focus-within {
  border-color: #9c8f61;
  background: rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 2px rgba(156, 143, 97, 0.2);
}

/* Search icon */
.header-search-icon {
  color: #9c8f61;
  flex-shrink: 0;
  margin-right: 10px;
}

/* Search input */
.header-search-input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  color: #ffffff;
  font-family: 'Barlow', sans-serif;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 0;
  width: 100%;
}

.header-search-input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

/* Submit button */
.header-search-btn {
  background: transparent;
  border: none;
  padding: 6px;
  margin-left: 4px;
  color: #9c8f61;
  cursor: pointer;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.header-search-btn:hover {
  background: rgba(156, 143, 97, 0.2);
  color: #fff;
  transform: translateX(2px);
}

/* Predictive search results dropdown */
.header-search-results {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: min(840px, calc(100vw - 32px));
  margin-top: 10px;
  background: #ffffff;
  border: 1px solid rgba(156, 143, 97, 0.4);
  border-radius: 12px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22), 0 0 0 1px rgba(156, 143, 97, 0.15);
  max-height: min(560px, 80vh);
  overflow-y: auto;
  overflow-x: hidden;
  display: none;
  z-index: 10001;
  scrollbar-width: thin;
  scrollbar-color: #9C8F61 #F3F4F6;
}

.header-search-results::-webkit-scrollbar {
  width: 6px;
}
.header-search-results::-webkit-scrollbar-track {
  background: #f4f4f5;
}
.header-search-results::-webkit-scrollbar-thumb {
  background: #9c8f61;
  border-radius: 3px;
}

/* Show dropdown when predictive-search has open attribute */
predictive-search[open] .header-search-results {
  display: block;
  animation: fudgeSearchDropFade 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes fudgeSearchDropFade {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
}

/* Results wrapper - Multi-column responsive layout */
.predictive-search__results-groups-wrapper {
  display: flex;
  flex-direction: column;
  padding: 0;
}

.predictive-search__results-groups-wrapper.predictive-search--split {
  display: grid;
  grid-template-columns: minmax(240px, 310px) minmax(0, 1fr);
  background: #ffffff;
}

/* Nav Column (Left Sidebar: Collections, Articles, Pages) */
.predictive-search__nav-column {
  background: #F9FAFB;
  border-right: 1px solid #E5E7EB;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Products Column (Right Pane: Product Cards Grid) */
.predictive-search__products-column {
  background: #ffffff;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
}

/* Heading Wrap */
.predictive-search__heading-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(156, 143, 97, 0.2);
}

.predictive-search__heading-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7A6E43;
}

.predictive-search__heading {
  font-family: 'Barlow', sans-serif;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: #7A6E43;
  margin: 0;
  flex: 1;
}

.predictive-search__heading-badge {
  font-family: 'Barlow', sans-serif;
  font-size: 11px;
  font-weight: 600;
  color: #6B7280;
  background: rgba(0, 0, 0, 0.05);
  padding: 1px 6px;
  border-radius: 10px;
}

/* Result group */
.predictive-search__result-group {
  display: flex;
  flex-direction: column;
}

/* Nav Results List */
.predictive-search__results-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.predictive-search__list-item {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Nav Items (Collections, Pages, Articles) */
.predictive-search__item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  color: #1A1A1A;
  text-decoration: none;
  border-radius: 6px;
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.15s ease;
  background: transparent;
}

.predictive-search__item:hover,
.predictive-search__list-item[aria-selected="true"] .predictive-search__item {
  background: rgba(156, 143, 97, 0.14);
  color: #111111;
}

.predictive-search__item-nav-bullet {
  display: flex;
  align-items: center;
  color: #9C8F61;
  flex-shrink: 0;
  transition: transform 0.15s ease;
}

.predictive-search__item:hover .predictive-search__item-nav-bullet {
  transform: translateX(2px);
  color: #7A6E43;
}

.predictive-search__item--collection .predictive-search__item-title {
  font-weight: 600;
  color: #1A1A1A;
}

/* Article specific items */
.predictive-search__item--article {
  align-items: flex-start;
  justify-content: space-between;
}

.predictive-search__item-nav-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}

.predictive-search__item-tag {
  display: inline-block;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: #7A6E43;
}

.predictive-search__item-nav-arrow {
  color: #9C8F61;
  font-size: 13px;
  opacity: 0.6;
  flex-shrink: 0;
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.predictive-search__item:hover .predictive-search__item-nav-arrow {
  opacity: 1;
  transform: translateX(3px);
  color: #7A6E43;
}

/* Products Grid (2 columns on desktop) */
.predictive-search__products-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.predictive-search__product-card-item {
  list-style: none;
  margin: 0;
  padding: 0;
}

.predictive-search__product-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 10px;
  border: 1px solid #E5E7EB;
  border-radius: 8px;
  background: #FFFFFF;
  text-decoration: none;
  color: #1A1A1A;
  transition: all 0.18s ease;
  min-height: 72px;
  box-sizing: border-box;
}

.predictive-search__product-card:hover,
.predictive-search__product-card-item[aria-selected="true"] .predictive-search__product-card {
  border-color: #9C8F61;
  background: #FFFDF8;
  box-shadow: 0 4px 12px rgba(156, 143, 97, 0.15);
  transform: translateY(-1px);
}

.predictive-search__product-thumb-wrap {
  width: 54px;
  height: 54px;
  flex-shrink: 0;
  background: #F9FAFB;
  border: 1px solid #E5E7EB;
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.predictive-search__product-thumb {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.predictive-search__product-thumb-placeholder {
  color: #9C8F61;
}

.predictive-search__product-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}

.predictive-search__product-vendor {
  font-family: 'Barlow', sans-serif;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #888888;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.predictive-search__product-title {
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #111111;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.predictive-search__product-card:hover .predictive-search__product-title {
  color: #7A6E43;
}

.predictive-search__product-price {
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #7A6E43;
  margin-top: 2px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.predictive-search__product-price--sale .predictive-search__product-price-current {
  color: #CC1414;
}

.predictive-search__product-price-compare {
  font-size: 11px;
  font-weight: 500;
  color: #9CA3AF;
  text-decoration: line-through;
}

/* Empty state */
.predictive-search__empty {
  padding: 32px 24px;
  text-align: center;
  color: #374151;
  font-family: 'Barlow', sans-serif;
  font-size: 15px;
  font-weight: 600;
}

.predictive-search__empty-hint {
  font-size: 13px;
  font-weight: 400;
  color: #6B7280;
  margin-top: 8px;
}

/* Footer search button */
.predictive-search__footer {
  padding: 10px 18px;
  background: #F9FAFB;
  border-top: 1px solid #E5E7EB;
  display: flex;
}

.predictive-search__button {
  width: 100%;
  padding: 11px 18px;
  background: #14171E;
  border: 1px solid #9C8F61;
  border-radius: 8px;
  color: #FFFFFF;
  font-family: 'Barlow', sans-serif;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  transition: all 0.2s ease;
}

.predictive-search__button strong {
  color: #c5a55a;
}

.predictive-search__button-count {
  font-size: 12px;
  color: #c5a55a;
  font-weight: 700;
}

.predictive-search__button:hover {
  background: #1C222C;
  border-color: #c5a55a;
  color: #FFFFFF;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

/* Responsive queries for predictive search */
@media (max-width: 900px) {
  .predictive-search__results-groups-wrapper.predictive-search--split {
    grid-template-columns: 1fr;
  }
  .predictive-search__nav-column {
    border-right: none;
    border-bottom: 1px solid #E5E7EB;
  }
  .predictive-search__products-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .header-search-results {
    width: calc(100vw - 20px);
    max-height: 70vh;
  }
  .predictive-search__products-grid {
    grid-template-columns: 1fr;
  }
}

/* Loading state */
predictive-search[loading] .header-search-wrapper {
  opacity: 0.7;
}

/* Reset button */
.predictive-search__reset {
  background: transparent;
  border: none;
  color: rgba(255, 255, 255, 0.5);
  font-size: 18px;
  cursor: pointer;
  padding: 4px 8px;
  line-height: 1;
  transition: color 0.2s ease;
}

.predictive-search__reset:hover {
  color: #fff;
}

/* ===========================================
   FILTER TOOLTIPS
   =========================================== */
.medtac-filter-tooltip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.medtac-filter-tooltip:hover svg,
.medtac-filter-tooltip:focus svg {
  color: #c9a227 !important;
}

/* ===========================================
   HELP ME CHOOSE PROMPT
   =========================================== */
.medtac-help-choose a:hover {
  color: #c9a227 !important;
  border-color: #c9a227 !important;
}
@media screen and (max-width: 600px) {
  .medtac-help-choose {
    flex-direction: column;
    gap: 8px !important;
  }
  .medtac-help-choose span[style*="color: #cbd5e1"] {
    display: none !important;
  }
}

/* ===========================================
   CONTEXTUAL NAVIGATION TILES
   =========================================== */
.medtac-ctx-tile:hover span {
  color: #9c8f61 !important;
}
@media screen and (max-width: 600px) {
  .medtac-ctx-tiles-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ===========================================
   STICKY FILTERS FOR COLLECTIONS
   =========================================== */
.header-search-input.rotating {
  transition: opacity 0.3s ease;
}

.header-search-input.rotating.fade-out {
  opacity: 0;
}

/* Suggestion prompt above results */
.header-search-suggestion {
  padding: 8px 16px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Layout Stability - prevent CLS */
img {
  height: auto;
  max-width: 100%;
}

/* Reserve space for images to prevent CLS */
.fudge-hero-1__bg-image {
  aspect-ratio: 16/9;
}


/* Reduce paint area for fixed elements */
.header.sticky_top.sticky {
  contain: style;
}
#header {
  contain: none !important;
}

/* Font rendering optimization */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ===========================================
   HEADER HEIGHT REDUCTION - COMPACT DESIGN
   =========================================== */

/* Top Utility Bar (Priority 5: Agency Fast Lane) */
.cms-top-bar .topbar:not(.medtac-utility-bar) {
    display: none !important;
}
.cms-top-bar .topbar.medtac-utility-bar {
    display: block !important;
}

/* ===========================================
   STICKY ANNOUNCEMENT STRIP - Inside sticky header
   =========================================== */
.fudge-announcement-strip {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4px 12px;
    padding: 5px 20px;
    background: #0F1115;
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #e0e0e0;
    border-bottom: 1px solid rgba(156,143,97,0.3);
}
.fudge-announcement-strip::-webkit-scrollbar { display: none; }
.fudge-announcement-strip__item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    white-space: nowrap;
}
.fudge-announcement-strip__item a {
    color: #9c8f61 !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.fudge-announcement-strip__item a:hover {
    color: #c9a227 !important;
    text-decoration: underline;
}
.fudge-announcement-strip__sep {
    color: rgba(156,143,97,0.4);
    font-weight: 300;
}
/* Ensure sticky header includes announcement strip */
.header.sticky_top.sticky .fudge-announcement-strip {
    border-bottom: 1px solid rgba(156,143,97,0.5);
    background: #0F1115;
}
/* Mobile announcement & credential strip: consolidated into 32px top-bar */
.fudge-mobile-announcement-strip,
.medtac-credential-bar--mobile {
    display: none !important;
}
@media (max-width: 1024px) {
    .fudge-mobile-announcement-strip,
    .medtac-credential-bar--mobile {
        display: none !important;
    }
    /* Push body content below mobile header (32px top-bar + 52px mobile header = 84px) */
    body {
        padding-top: 84px !important;
    }
}

/* Compact top-header (language/currency bar) */
.cms-top-header .topbar {
    padding: 4px 0 !important;
    min-height: auto !important;
    line-height: 1.2 !important;
}

.cms-top-header .topbar .announcement-bar {
    padding: 0 8px !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    justify-content: flex-start !important;
    gap: 0 !important;
}

.cms-top-header .topbar .row {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
}

/* Left content blocks - push all the way left and compress */
.cms-top-header .announcement-bar > div:first-child {
    padding: 0 !important;
    margin: 0 !important;
    flex: 0 1 auto !important;
    max-width: fit-content !important;
}

.cms-top-header .topbar ul,
.cms-top-header .topbar li {
    margin: 0 !important;
    padding: 0 3px !important;
    white-space: nowrap !important;
}

.cms-top-header .topbar a,
.cms-top-header .topbar span {
    font-size: 10px !important;
    white-space: nowrap !important;
}

/* Text horizontal running - make compact */
.text-horizontal-running {
    padding: 0 !important;
    margin: 0 !important;
}

.text-horizontal-running span {
    padding: 0 4px !important;
    font-size: 10px !important;
}

/* Quick links bar - extend fully to the right */
.topbar-quick-links-wrapper {
    padding: 2px 0 !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    margin-left: auto !important;
}

.topbar-quick-links-wrapper ul {
    flex-wrap: nowrap !important;
    gap: 10px !important;
}

.topbar-quick-links-wrapper li {
    white-space: nowrap !important;
}

.topbar-quick-links-wrapper a {
    font-size: 10px !important;
    padding: 2px 4px !important;
    white-space: nowrap !important;
}

/* Force left content blocks to be compact */
.cms-top-header .announcement-bar > div:not(.topbar-quick-links-wrapper) {
    flex-shrink: 1 !important;
    min-width: 0 !important;
    flex: 0 1 auto !important;
    max-width: none !important;
    width: auto !important;
}

/* Hide empty topbar blocks */
.cms-top-header .topbar-left:empty {
    display: none !important;
}

/* Override Bootstrap column widths for top-header blocks */
.cms-top-header .announcement-bar > div[class*="col-lg-"],
.cms-top-header .announcement-bar > div[class*="col-12"] {
    flex: 0 0 auto !important;
    max-width: none !important;
    width: auto !important;
}

/* Make wrapper-bar-message more compact */
.cms-top-header .wrapper-bar-message {
    padding: 0 !important;
    margin: 0 !important;
}

.cms-top-header .wrapper-bar-message p {
    margin: 0 !important;
    white-space: nowrap !important;
}

/* Fix language/currency selector overlap */
.cms-top-header .menu-language {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

.cms-top-header .menu-language > li {
    padding: 0 4px !important;
}

.cms-top-header .menu-language localization-form {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

.cms-top-header .menu-language localization-form:after {
    right: -4px !important;
}

.cms-top-header .menu-language .disclosure__button {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    font-size: 11px !important;
    padding: 0 4px !important;
}

.cms-top-header .menu-language .disclosure__button img.flag {
    width: 16px !important;
    height: 12px !important;
    object-fit: contain !important;
}

.cms-top-header .menu-language .disclosure__button i,
.cms-top-header .menu-language .disclosure__button .icon-chevron-down {
    font-size: 10px !important;
}

/* Ensure the row and announcement bar don't overflow */
.cms-top-header .topbar .row {
    overflow: visible !important;
}

.cms-top-header .topbar .announcement-bar {
    overflow: visible !important;
}

/* Compact main header */
#header {
    margin: 0 !important;
    padding: 0 !important;
}

#header .header-main-wrap {
    padding: 8px 0 !important;
}

#header .header-top {
    padding: 0 !important;
}

#header .header-bottom {
    padding: 0 !important;
}

/* Reduce logo area padding */
#header .header-logo {
    padding: 0 !important;
    margin: 0 !important;
}

/* Compact header icons */
#header .header-icon {
    padding: 4px 8px !important;
}

/* Reduce nav menu padding */
#header .main-menu > li > a {
    padding: 8px 12px !important;
}

/* Hide any extra spacing elements */
.page-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.shopify-section:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* MEGA MENU BORDER SPACING */
.list-vertical_menu .subverticalmenu {
    border-top: 15px solid transparent !important;
}

/* MEGA MENU SPEED FIX v5 - instant open, smooth close, no stuck menus */
.header .main-menu > li > .submenu,
.header .main-menu > li > .submenu.mega-menu,
.header .main-menu > li > .submenu.mega-menu1,
.header .main-menu > li.type_mega > .submenu,
.header .main-menu > li.type_dropdown > .submenu,
.header .main-menu > li.has-children > .submenu {
    transition: opacity 0.12s ease, visibility 0.12s ease !important;
    transform: none !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    clip: auto !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
.header .main-menu > li.has-children:hover > .submenu,
.header .main-menu > li.type_mega:hover > .submenu,
.header .main-menu > li.type_dropdown:hover > .submenu,
.header .main-menu > li.menu-item-has-children:hover > .submenu,
.header .main-menu > li.menu_item_hover > .submenu,
.header .main-menu li.menu-item.menu_item_hover > .submenu,
.header .main-menu li.menu-item.has-children:hover > .submenu {
    transition: opacity 0.04s ease, visibility 0s !important;
    transform: none !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    clip: auto !important;
}
/* Ensure menu closes when not hovering */
.header .main-menu > li:not(:hover) > .submenu,
.header .main-menu > li:not(.menu_item_hover) > .submenu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
/* Nested submenu instant open */
.header .main-menu .submenu .menu-item.has-children:hover > .submenu {
    transition: opacity 0.04s ease, visibility 0s !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
/* Ensure nested submenus close properly */
.header .main-menu .submenu .menu-item.has-children:not(:hover) > .submenu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Qikify Smart Menu — hide all app-injected elements site-wide */
[class*="tmenu"],
[id*="qikify"],
[class*="qikify"],
[data-qikify],
#qikify-smart-menu,
.qikify-smart-menu-wrapper,
.tmenu_wrapper,
.tmenu_nav,
.tmenu_submenu,
.tmenu_item {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  top: -9999px !important;
  left: -9999px !important;
  z-index: -1 !important;
}

/* ── Collection Product Card Grid Fixes ── */
/* Uniform image containers with fixed aspect ratio */
.product-collection__image .card__media .media {
    aspect-ratio: 1 / 1 !important;
}
.product-collection__image .card__media .media img,
.product-collection__image .card__media .media .secondary_image img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

/* Work WITH the theme's .row flexbox layout for equal-height rows.
   .row uses display:flex; flex-wrap:wrap.
   Adding align-items:stretch makes items in each row equal height.
   JS enforces overflow:hidden and border on .product-item to override app inline styles. */
#collection-product {
    overflow: hidden !important;
}
/* CSS GRID replaces float-based layout for equal-height rows.
   Theme uses float:left on .product-item which prevents flex stretch.
   CSS Grid ensures all cards in a row are equal height automatically. */
#product-grid.product-grid.row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    align-items: stretch !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
@media (max-width: 991px) {
    #product-grid.product-grid.row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 360px) {
    #product-grid.product-grid.row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
/* Product items: CSS Grid cell (low-specificity backup — see end of file for high-specificity override) */
/* AGGRESSIVE: Remove all borders from product cards - override theme's product.css */
.product-collection,
.product-item .product-collection,
#collection-product .product-item .product-collection,
#product-grid .product-item .product-collection,
.product-grid-container .product-item .product-collection,
.products-arrivals .product-item .product-collection {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
    background: #fff !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}
/* Content area: flex column with aligned children */
.product-collection__content.product-grid-style {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 12px 12px 12px !important;
}

/* IMAGE CONTAINER: Fixed aspect-ratio so all images occupy same space.
   object-fit:contain preserves the full image without cropping.
   No white background box — images float cleanly on transparent/card bg.
   This ensures titles start at the same vertical position in every card.
   Override theme's padding-bottom ratio system with aspect-ratio. */
.product-item .product-collection__image {
    position: relative !important;
    overflow: hidden !important;
}
.product-item .product-collection__image .card__media .media {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    padding-bottom: 0 !important;
    background: #ffffff !important;
}
.product-item .product-collection__image .card__media .media img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}
/* Clamp the image area itself to the fixed ratio */
.product-item .product-collection__image .card__media {
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    background: #ffffff !important;
}
.product-item .product-collection__image .image_product.ratio,
.product-item .product-collection__image .card__media .media a.image_product.ratio {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    padding-bottom: 0 !important;
}
/* Kill theme's .ratio::before pseudo that uses --ratio-percent padding to create height */
.product-item .product-collection__image .image_product.ratio::before,
.product-item .product-collection__image .card__media .media::before,
.product-item .product-collection__image .ratio::before {
    content: none !important;
    display: none !important;
    padding-bottom: 0 !important;
    height: 0 !important;
}
/* Override conflicting aspect-ratio from other stylesheets — anchor fills parent absolutely */
.product-item .product-collection__image .card__media .media a.image_product {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    padding-bottom: 0 !important;
}

/* Title block */
.product-collection__content .product-collection__title {
    flex-shrink: 0 !important;
    min-height: 3.6em !important;
    margin-bottom: 2px !important;
}
/* Trustify stars spacing */
.product-collection__content .fudge-trustify-stars {
    margin-bottom: 2px !important;
}
/* Price + swatches block */
.product-collection__content .frm-price-color {
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}
/* ATC button: always pinned to bottom of card, centered */
.product-collection__content .button-cart-bottom {
  margin-top: auto !important;
  padding-top: 6px !important;
  text-align: center !important;
  width: 100% !important;
}
/* The ATC / select_options buttons themselves: full width centered */
.product-collection__content .button-cart-bottom .add-to-cart,
.product-collection__content .button-cart-bottom .select_options {
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
}

/* ── Sale Badge: Overlay on image with "SAVE" label ── */
.product-image__overlay-top-left {
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    z-index: 5 !important;
}
.product-image__overlay-bottom {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 5 !important;
}
.product-image__overlay-top-left .label.label--sale {
		    background: #cc1414 !important;
		    color: #fff !important;
		    font-size: 11px !important;
		    font-weight: 700 !important;
		    padding: 3px 10px !important;
		    border-radius: 3px !important;
		    letter-spacing: 0.3px !important;
		    line-height: 1.4 !important;
		    display: inline-flex !important;
		    width: fit-content !important;
		    min-width: unset !important;
		    height: auto !important;
		}
		/* ── #22: Hide empty sale badges on non-sale products ── */
		.product-image__overlay-top-left .label.label--sale.d-none-important,
		.product-image__overlay-top-left .label.label--sale:empty {
		    display: none !important;
		    width: 0 !important;
		    height: 0 !important;
		    padding: 0 !important;
		    margin: 0 !important;
		    overflow: hidden !important;
		    border: none !important;
		    min-width: 0 !important;
		}
		/* ── #23: Fix hero trust badge overflow on mobile ── */
		@media (max-width: 500px) {
		    .fudge-DBfSs-hero__trust-bar {
		        gap: 10px !important;
		        padding: 12px 14px !important;
		    }
		    .fudge-DBfSs-hero__trust-item {
		        flex-shrink: 1 !important;
		        min-width: 0 !important;
		    }
		    .fudge-DBfSs-hero__trust-label {
		        font-size: 10.5px !important;
		        letter-spacing: 0.1px !important;
		        white-space: nowrap !important;
		        overflow: visible !important;
		    }
		}

/* ── #30: Compact collection banner on mobile — products above fold ── */
@media (max-width: 989px) {
    .collection-hero__inner {
        padding: 8px 0 !important;
    }
    .collection-hero__image-container {
        --alo-height-mb: 80px !important;
        max-height: 80px !important;
    }
    .collection-hero__title {
        font-size: 20px !important;
        margin: 4px 0 !important;
    }
    .collection-hero__description {
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* ── Price Differentiation: Sale vs MSRP ── */
.product-collection__price .price--sale .current,
.product-collection__price .price--sale .current .money {
    color: #ff5252 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}
.product-collection__price .price--sale .compare,
.product-collection__price .price--sale .compare .money {
    color: #999 !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    text-decoration: line-through !important;
}
.product-collection__price .price:not(.price--sale) .money {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #c9a227 !important;
}
/* Price range (e.g. $9.99 – $15.99) */
.product-collection__price .price span {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #c9a227 !important;
}
/* Hover: add shadow only, no border */
#product-grid .product-item:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.1) !important;
}
/* Hide product-list-style in ALL grid view modes.
   Theme's product.css loads async so .style_left {display:flex} from
   global.css wins initially, causing duplicate variant pickers.
   This synchronous rule guarantees list-style is always hidden in grid mode. */
.grid-style .product-item .product-list-style,
.grid-2-style .product-item .product-list-style,
.grid-3-style .product-item .product-list-style,
.grid-4-style .product-item .product-list-style,
.grid-5-style .product-item .product-list-style,
.list-style .product-item .product-grid-style {
    display: none !important;
}

/* Product titles: no line-clamp, min-height for uniform alignment */
.product-collection__title h2,
.product-collection__title h2 a {
    display: block !important;
    min-height: 3.6em !important;
    line-height: 1.2 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
}

/* Grid items stretch evenly */
.collection-grid .grid--view-items,
.collection-grid [class*="grid--"] {
    align-items: stretch !important;
}
.collection-grid .grid__item.product-item {
    align-self: stretch !important;
}
/* Force grid items to stretch within CSS Grid rows */
#product-grid .grid__item.product-item,
#product-grid .product-item {
    align-self: stretch !important;
}

/* ELIMINATE HEADER TO CONTENT GAP */
#header + .page-container,
#header + div,
.main > #header + * {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ELIMINATE HEADER INTERNAL GAPS */
.header .header-top {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.header .navigationMenu {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.header .header-main-wrap {
    gap: 0 !important;
}
.header .header-top > .container > .row {
    margin-bottom: 0 !important;
}
/* Force tight header layout */
.header-main-wrap {
    display: flex !important;
    flex-direction: column !important;
}
.header-main-wrap > .header-top,
.header-main-wrap > .navigationMenu {
    flex-shrink: 0 !important;
}
.header-top .container,
.header-top .row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
/* Tighten row height */
.header.header-2-lines .header-top .container > .row {
    height: auto !important;
    min-height: 70px !important;
}
.header-top .row > div {
    margin-bottom: 0 !important;
}
.logo-wrapper {
    margin: 0 !important;
    padding: 0 !important;
}
/* Target logo area specifically */
.header .header-top .header-logo {
    padding: 0 !important;
    margin: 0 !important;
}
.header .header-top .header-logo a {
    margin: 0 !important;
    padding: 0 !important;
}
.header .header-top .header-logo img {
    margin: 0 !important;
}
/* Remove any container padding */
.header .header-top .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.header .header-top .row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* Fix header-top height to content */
.header .header-top {
    height: auto !important;
}
.header.header-2-lines .header-top .container > .row {
    height: auto !important;
    min-height: 60px !important;
    align-items: center !important;
}
/* Remove border from navigationMenu */
.header.header-2-lines .navigationMenu {
    border-top: none !important;
}

/* NAV ITEM SEPARATORS */
@media (min-width: 992px) {
    .header .main-menu > li:not(:last-child) {
        position: relative;
    }
    .header .main-menu > li:not(:last-child):after {
        content: '\2022';
        position: absolute;
        right: -5px;
        top: 50%;
        transform: translateY(-50%);
        color: rgba(0, 0, 0, 0.2);
        pointer-events: none;
    }
}

/* ===========================================
   FOOTER-AREA GLOBAL OVERRIDES
   =========================================== */

html { scroll-behavior: smooth; }

/* Recently Viewed - Match Typography */
.laber_collection_viewed .section-title {
  font-family: 'Barlow', sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #121212 !important;
}

/* Recently Viewed Mobile Slider */
@media (max-width: 749px) {
  .laber_collection_viewed .js_carousel,
  .laber_collection_viewed .grid-slider-ajax {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 12px !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .laber_collection_viewed .js_carousel::-webkit-scrollbar,
  .laber_collection_viewed .grid-slider-ajax::-webkit-scrollbar {
    display: none !important;
  }
  .laber_collection_viewed .js_carousel,
  .laber_collection_viewed .grid-slider-ajax {
    scrollbar-width: none !important;
  }
  .laber_collection_viewed .alo-item {
    flex: 0 0 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    scroll-snap-align: start !important;
    padding: 0 !important;
  }
  .laber_collection_viewed .section-title {
    font-size: 18px !important;
  }
}

/* Fix gallery images scrolling above sticky header */
.fudge-product-main-redesign,
.fudge-product-container,
.fudge-product-gallery,
.fudge-gallery-wrapper {
  position: relative;
  z-index: 1 !important;
}

/* Ensure sticky header stays on top and retains dark tactical aesthetic */
.header.sticky_top.sticky,
.header.sticky_top.sticky-header,
.header.sticky_top.scrolled,
.header.sticky,
#header {
  z-index: 9999 !important;
  background-color: #121212 !important;
}

.header .header-top,
.header.sticky_top.sticky .header-top,
.header.sticky_top.sticky-header .header-top,
.header.sticky .header-top {
  background-color: #121212 !important;
}

/* Ensure navigationMenu and its wrapper containers retain #161B22 to prevent white container bleed-through */
.header .navigationMenu,
.header.sticky_top.sticky .navigationMenu,
.header.sticky_top.sticky-header .navigationMenu,
.header.sticky .navigationMenu {
  background-color: #161B22 !important;
  background: #161B22 !important;
}

.header .navigationMenu .container,
.header .navigationMenu .row,
.header .navigationMenu .col,
.header .navigationMenu .ps-static,
.header.sticky_top.sticky .navigationMenu .container,
.header.sticky_top.sticky .navigationMenu .row,
.header.sticky_top.sticky .navigationMenu .col,
.header.sticky_top.sticky .navigationMenu .ps-static {
  background-color: #161B22 !important;
  background: #161B22 !important;
}

.fudge-v2-mega-nav,
.fudge-mega-nav {
  background-color: #161B22 !important;
  width: 100% !important;
}

@media only screen and (max-width: 991px) {
  .header.sticky_top,
  .header.sticky_top.sticky,
  .header.sticky_top.sticky-header {
    background-color: #121212 !important;
  }
}

/* ===========================================
   HEADER CONTRAST IMPROVEMENTS
   =========================================== */

/* Search box - add visible border */
.header-search .search_header {
  border: 2px solid #d1d5db !important;
  background-color: #fafafa !important;
}

.header-search .search_header:focus-within {
  border-color: #9c8f61 !important;
  background-color: #fff !important;
}

.header-search .search_header__input {
  background-color: transparent !important;
}

/* Header icons - Gold styling for tactical authority */
.header .header-icon svg path,
.header .header-icon svg {
  fill: #9c8f61 !important;
  stroke: #9c8f61 !important;
  transition: fill 0.2s ease, stroke 0.2s ease;
}

.header .header-icon:hover svg path,
.header .header-icon:hover svg {
  fill: #c9a227 !important;
  stroke: #c9a227 !important;
}

.header .header-icon .box .text {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* LOGIN text - match cart text white color */
.header .header-control li.signin .header-icon span.text span.l,
.header .header-control li.signin .header-icon span.text span.a {
  color: #fff !important;
  opacity: 1 !important;
}
.header .header-control li.signin .header-icon:hover span.text span.l,
.header .header-control li.signin .header-icon:hover span.text span.a {
  color: #9c8f61 !important;
}

.header .header-icon .box .b {
  color: #ffffff !important;
}

/* Cart total price and cart text - High contrast on dark header */
.cart-block .total-price,
.header .header-top .header-control .total-price,
.header .header-control .cart-block .total-price {
  color: #9c8f61 !important;
}

.cart-block .total-price .text,
.header .header-top .header-control .total-price .text,
.header .header-control .cart-block .total-price .text {
  opacity: 1 !important;
  color: #ffffff !important;
  font-weight: 600 !important;
}

.cart-block .total-price .js-total-price,
.header .header-top .header-control .total-price .js-total-price,
.header .header-control .cart-block .total-price .js-total-price {
  color: #9c8f61 !important;
  font-weight: 700 !important;
}

/* Header counter badges */
.header .header-icon .header__counter {
  background-color: #b91c1c !important;
  color: #fff !important;
}

/* ATC button - consistent site-wide styling */
.product-item .button-cart-bottom .add-to-cart,
.product-item .button-cart-bottom .select_options {
  background-color: #121212 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 140px !important;
  padding: 8px 16px !important;
  text-align: center !important;
}
.product-item .button-cart-bottom .add-to-cart:hover,
.product-item .button-cart-bottom .select_options:hover {
  background-color: #cc1414 !important;
}

/* Compare/quote icon counter */
.laber-compare .header__counter,
.box-minicart .header__counter {
  background-color: #111 !important;
}

/* ===========================================
   HEADER CONTROLS RE-ORDER: Quote in middle, Cart on far right
   =========================================== */
.header-control {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 16px !important;
}
.header-control > li.signin {
  order: 1 !important;
  margin: 0 !important;
}
.header-control > li.alo-wishlist,
.header-control > li.laber-wishlist {
  order: 2 !important;
  margin: 0 !important;
}
.header-control > li.laber-compare {
  order: 3 !important;
  margin: 0 !important;
}
.header-control > li.wfq-Morata-headerIcon-desktop,
.header-control > li.header-quote,
.header-control > li[class*="quote"],
.header-control > li[class*="wfq"] {
  order: 5 !important;
  margin: 0 !important;
}
.header-control > li.box-minicart {
  order: 10 !important;
  margin: 0 !important;
}

/* ===========================================
   Quotes Guru Header Icon — Add text label & improve visibility
   =========================================== */
.header-control li.wfq-Morata-headerIcon-desktop {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  cursor: pointer;
}
.header-control li.wfq-Morata-headerIcon-desktop .wfq-header-icon svg {
  width: 33px !important;
  height: 33px !important;
  max-width: 33px !important;
}
.header-control li.wfq-Morata-headerIcon-desktop .wfq-header-icon svg path {
  stroke: #9c8f61 !important;
  fill: none !important;
  transition: stroke 0.2s ease;
}
.header-control li.wfq-Morata-headerIcon-desktop:hover .wfq-header-icon svg path {
  stroke: #c9a227 !important;
}
.header-control li.wfq-Morata-headerIcon-desktop::after {
  content: "ONLINE QUOTE";
  color: #ffffff !important;
  font-family: 'Chakra Petch', sans-serif;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  white-space: nowrap;
  transition: color 0.2s ease;
}
.header-control li.wfq-Morata-headerIcon-desktop:hover::after {
  color: #9c8f61 !important;
}
.header-control li.wfq-Morata-headerIcon-desktop .wfq-floating-count-span {
  position: absolute !important;
  top: -2px !important;
  right: -6px !important;
  background: #cc1414 !important;
  color: #fff !important;
  border-radius: 50% !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  min-width: 16px !important;
  height: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 4px !important;
}

/* ===========================================
   Quotes Guru Modal — Fix z-index so it appears above header
   =========================================== */
#wfq-modal,
#wfq-modal.wfq-modal {
  z-index: 100000 !important;
}
.wfq-drawer-overlay {
  z-index: 99999 !important;
}
#wfq-sidenav {
  z-index: 100000 !important;
}

/* Add to Quote Tooltip on Collection Grids */
.wfq-quote-collection-icon {
  position: absolute !important;
}

.wfq-quote-collection-icon::before {
  content: "Add to Quote";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(-5px);
  background-color: #121212;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
  pointer-events: none;
  z-index: 100;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.wfq-quote-collection-icon::after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(5px);
  border-width: 5px;
  border-style: solid;
  border-color: #121212 transparent transparent transparent;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
  pointer-events: none;
  z-index: 100;
}

.wfq-quote-collection-icon:hover::before {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(-10px);
}

.wfq-quote-collection-icon:hover::after {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* ===========================================
   LOADING OVERLAYS - NUCLEAR SAFETY NET v2
   Prevent ANY loading overlay from permanently
   blocking the page. App scripts (Quote Guru,
   Fast Bundle, EComposer) crash and prevent the
   theme from removing loading states. We kill
   them immediately via CSS + JS fail-safe.
   =========================================== */
.page-load.circle-loadding,
.loading_bg:not(.js-cart-popup .loading_bg),
.kalawi-loading,
.openloadding,
.alo_skeleton,
[class*="loading-spinner"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: -9999 !important;
}
/* skeleton-page must NEVER block scroll or hide content.
   The theme adds this class on every page load, setting overflow:hidden.
   We override it so the page is always scrollable even if JS crashes
   before it can remove the class. */
body.skeleton-page {
    overflow: auto !important;
    position: static !important;
}
/* Kill ALL skeleton shimmer placeholders immediately —
   they cause content to appear as grey rectangles when
   JS fails to remove skeleton-page/openloadding classes */
.skeleton-page .product-cover-thumbnails:after,
.skeleton-page .main-content-detail .alo-img:after,
.skeleton-page .main-content-detail .wrap-main-slider:after,
.skeleton-page .product-item .product-image:after,
.skeleton-page .product-item .product-collection__title h2:after,
.skeleton-page .product-item .frm-price-color:after,
.skeleton-page .product-item .product-collection__options:after,
.skeleton-page .product-item .button-cart-bottom:after,
.skeleton-page .product-item .jdgm-widget:after,
.openloadding .product-item .product-image:after,
.openloadding .product-collection__title h2:after,
.openloadding .jdgm-widget:after,
.openloadding .frm-price-color:after,
.openloadding .product-item .product-collection__options:after,
.openloadding .product-item .button-cart-bottom:after,
#collection-product.loading .product-item .product-bottom-content:after,
#collection-product.loading .product-item .product-collection__content *,
#collection-product.loading .product-item .product-collection__availability p:after,
#collection-product.loading .product-item .product-collection__description:after,
#collection-product.loading .product-item .product-options .product-options:after,
#collection-product.loading .product-item .button-cart-bottom:after,
#collection-product.loading .product-item .product-collection__title h2:after,
#collection-product.loading .product-item .frm-price-color:after,
#collection-product.loading .product-item .jdgm-widget:after,
#collection-product.loading .product-item .product-image:after,
#collection-product.lazyload .product-item .product-image:after,
#collection-product.lazyload .product-item .product-collection__title h2:after,
#collection-product.lazyload .product-item .frm-price-color:after,
#collection-product.lazyload .product-item .product-collection__options:after {
    content: none !important;
    display: none !important;
    animation: none !important;
    background: none !important;
}
/* Force collection grid to be visible even with loading/lazyload classes */
#collection-product.loading,
#collection-product.lazyload {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
/* dialog-overlay: Hidden by default; only visible when JS activates it.
   Without this, if JS crashes, the mask-overlay sits at z-index 9999 
   covering the entire page permanently. */
.dialog-overlay {
    display: none !important;
    pointer-events: none !important;
    z-index: 9999 !important;
}
html.open_show .dialog-overlay,
html.hside_opened .dialog-overlay,
html.pside_opened .dialog-overlay,
html.open_menu .dialog-overlay,
html.open_sidebar .dialog-overlay {
    display: flex !important;
    pointer-events: auto !important;
    z-index: 9999 !important;
}
/* mask-overlay: Only visible when explicitly activated via mask_opened class */
.mask-overlay {
    display: none !important;
}
.mask-overlay.mask_opened {
    display: block !important;
}

/* ===========================================
   SEARCH POPUP VISIBILITY FIX
   Search fields inherit dark header colors,
   making them invisible on white backgrounds.
   Force high-contrast inputs inside search popup.
   =========================================== */
#search_pupop.hero_canvas {
    background-color: #fff !important;
}
#search_pupop input[type="text"],
#search_pupop input[type="search"],
#search_pupop .js_iput_search,
#search_pupop .aloSearch input,
#search_pupop .mini_cart_wrap input {
    background-color: #f5f5f5 !important;
    color: #121212 !important;
    border: 1px solid #d1d5db !important;
    -webkit-text-fill-color: #121212 !important;
}
#search_pupop input::placeholder {
    color: #6b7280 !important;
    -webkit-text-fill-color: #6b7280 !important;
}
#search_pupop .mini_header,
#search_pupop .mini_cart_header {
    background-color: #fff !important;
    color: #121212 !important;
}
#search_pupop .mini_cart_header .title,
#search_pupop .widget-title,
#search_pupop .mini_header .widget-title {
    color: #121212 !important;
}
#search_pupop .close_popup_ajax {
    color: #121212 !important;
}
/* Mobile: Larger close button with better tap target for search popup */
@media only screen and (max-width: 991px) {
    #search_pupop .close_popup_ajax {
        position: fixed !important;
        top: 15px !important;
        right: 15px !important;
        width: 44px !important;
        height: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #f5f5f5 !important;
        border-radius: 50% !important;
        font-size: 24px !important;
        z-index: 100 !important;
        cursor: pointer !important;
    }
    #search_pupop .close_popup_ajax:hover {
        background: #e5e5e5 !important;
    }
}
#search_pupop select {
    background-color: #f5f5f5 !important;
    color: #121212 !important;
}
#search_pupop .popular-search-keywords,
#search_pupop .mini_cart_content {
    color: #121212 !important;
}
#search_pupop .popular-search-keywords a {
    color: #333e48 !important;
}
#search_pupop .product-name,
#search_pupop .product-item .info .product-name {
    color: #121212 !important;
}
#search_pupop .product-item .info .price {
    color: #333e48 !important;
}

/* ===========================================
   LOGIN POPUP VISIBILITY FIX
   Same dark-color inheritance issue.
   =========================================== */
#login_pupop.hero_canvas {
    background-color: #fff !important;
}
#login_pupop input[type="text"],
#login_pupop input[type="email"],
#login_pupop input[type="password"],
#login_pupop input[type="tel"],
#login_pupop textarea,
#login_pupop select {
    background-color: #f5f5f5 !important;
    color: #121212 !important;
    border: 1px solid #d1d5db !important;
    -webkit-text-fill-color: #121212 !important;
}
#login_pupop input::placeholder {
    color: #6b7280 !important;
    -webkit-text-fill-color: #6b7280 !important;
}
#login_pupop label,
#login_pupop .widget-title,
#login_pupop .mini_header,
#login_pupop .mini_cart_header {
    color: #121212 !important;
}

/* ===========================================
   QUOTE POPUP / APP MODAL Z-INDEX FIX
   Quote (Quotes Guru) modal renders behind header.
   Force it above the fixed header.
   =========================================== */
.quotes-guru-modal,
.quotes-guru-popup,
.quotes-guru-overlay,
.qg-modal,
.qg-popup,
.qg-overlay,
[class*="quote-guru"],
[class*="quotes-guru"],
[id*="quote-guru"],
[id*="quotes-guru"] {
    z-index: 10000 !important;
}
/* Ensure any overlay/backdrop for quote modals is also above header */
[class*="quote-guru"] .modal-backdrop,
[class*="quotes-guru"] .modal-backdrop,
[class*="quote-guru-overlay"],
[class*="quotes-guru-overlay"] {
    z-index: 9999 !important;
}
/* Collection product grid loading state - prevent content hiding */
#collection-product.loading .product-item,
.openloadding .product-item {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ===========================================
   WF Quotes Guru - Fix quote icon positioning
   App injects .wf-add-to-quote-collection-icon-wrapper inside
   .product-item__image-wrapper which has overflow:hidden,
   clipping the icon. Override overflow and enforce top-right pos.
   =========================================== */
/* Ensure product card contains absolute-positioned app icons */
.product-item {
    position: relative !important;
}
/* Allow icon to be visible inside image wrapper */
.product-item .product-item__image-wrapper {
    overflow: visible !important;
    position: relative !important;
}
/* Reposition quote icon to top-right of product image */
.product-item .wf-add-to-quote-collection-icon-wrapper {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5 !important;
    margin: 0 !important;
}
/* Style the icon as a compact circular button */
.product-item .wf-add-to-quote-collection-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    font-size: 16px !important;
    line-height: 32px !important;
    border-radius: 50% !important;
    background: rgba(18,18,18,0.85) !important;
    color: #fff !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.25) !important;
    transition: background 0.2s ease !important;
    cursor: pointer !important;
}
.product-item .wf-add-to-quote-collection-icon:hover {
    background: #9c8f61 !important;
}
/* Legacy fallback selectors */
.product-item .wf-quote-icon-wrapper {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5 !important;
}
.product-item .wf-rfq-collection-icon-container {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5 !important;
}

/* ===========================================
   FUDGE BEST DEALS - GLOBAL ENHANCEMENTS
   =========================================== */

/* Gold accent border */
.fudge-best-deals::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, transparent, #9c8f61, transparent) !important;
    z-index: 10 !important;
}

.fudge-best-deals {
    position: relative !important;
}

/* Grid texture overlay */
.fudge-best-deals__container::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.015) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.015) 1px, transparent 1px) !important;
    background-size: 40px 40px !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.fudge-best-deals__container {
    position: relative !important;
}

.fudge-best-deals__container > * {
    position: relative !important;
    z-index: 1 !important;
}

/* Enhanced card hover glow */
.fudge-best-deals__card:hover {
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4), 0 0 30px rgba(156, 143, 97, 0.2) !important;
    border-color: rgba(156, 143, 97, 0.5) !important;
}

/* ===========================================
   COLLECTION PAGE FULL-WIDTH DESCRIPTION
   =========================================== */

/* ── MED-TAC: Full-width collection descriptions (break out of container) ── */
.collection-hero__text-wrapper {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  padding-top: 48px !important;
  box-sizing: border-box !important;
}

/* Override the nested .container class max-width */
.collection-hero__text-wrapper .container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

.collection-hero__text-wrapper > .container.flex {
  display: block !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.collection-hero__text-wrapper .text-center-mmm {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.collection-hero__text-wrapper .collection-hero__description.rte {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Override inline max-width from collection description content */
.collection-hero__text-wrapper .collection-hero__description.rte > div {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

/* ===========================================
   BLOG POST FULL-WIDTH CONTENT
   =========================================== */

/* ── MED-TAC: Full-width blog article content ── */
.article-template__content,
.article-template .container,
.article-template .article-content,
.main-article .container,
.main-article .article__content {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Blog article body text */
.article-template__content .rte,
.article-template .article__content .rte,
.main-article .article__content {
  max-width: 100% !important;
  width: 100% !important;
}

/* Remove sidebar constraint on blog posts */
.article-template--has-sidebar .article-template__content,
.template-article .sidebar {
  max-width: 100% !important;
  width: 100% !important;
}

/* ===========================================
   MOBILE FUNCTIONALITY FIXES
   =========================================== */

/* ── FIX 1: Chat Widget Integration with Sticky ATC (PDP) ── */
/* Chat launcher stays permanently anchored at bottom right without jumping.
   On mobile when the floating sticky bar is active, the in-bar chat button handles chat,
   so the floating launcher is hidden to prevent double-stacking. */
@media (max-width: 768px) {
  .fudge-sticky-atc-bar,
  .fudge-mp-sticky-bar {
    z-index: 9999 !important;
  }

  /* Hide floating Richpanel launcher while sticky bar is active on mobile */
  body.fudge-sticky-active .richpanel-micro,
  body.fudge-sticky-active .rp-micro-app-dummy-icon-container,
  body.fudge-sticky-active .rp-micro-app-label-icon-container,
  body.fudge-sticky-active .rp-widget-launcher,
  body.fudge-sticky-active .rp-launcher-wrap,
  body.fudge-mp-sticky-active .richpanel-micro,
  body.fudge-mp-sticky-active .rp-micro-app-dummy-icon-container,
  body.fudge-mp-sticky-active .rp-micro-app-label-icon-container,
  body.fudge-mp-sticky-active .rp-widget-launcher,
  body.fudge-mp-sticky-active .rp-launcher-wrap {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(200px) !important;
  }
}

/* ── FIX 2: Cart Quantity Buttons - Better Touch Targets ── */
/* Increase button sizes for easier tapping on mobile */
@media (max-width: 768px) {
  .cr-qty {
    margin: 0 4px; /* Add margin from screen edge */
  }
  
  .cr-qty__btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }
  
  .cr-qty__input {
    height: 44px !important;
  }
  
  /* Cart remove button - increase touch target */
  .cr-item__remove {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    margin-right: -4px !important; /* Slight inset from edge */
  }
}

/* ── FIX 3: Search Results Tabs - Better Mobile Layout ── */
/* Stack vertically on mobile for better touch accuracy */
@media (max-width: 768px) {
  .ecom-predictive-search-wrapper {
    flex-direction: column !important;
    gap: 16px !important;
  }
  
  .ecom-predictive-search-group {
    flex: 0 0 auto !important;
    width: 100% !important;
  }
  
  .ecom-predictive-search__result-group {
    min-width: 100% !important;
  }
  
  /* Increase heading and item sizes for better touch targets */
  .ecom-predictive-search__heading {
    font-size: 16px !important;
    padding: 12px 16px 8px !important;
  }
  
  .ecom-predictive-search__item {
    padding: 12px 16px !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
  }
}

/* ── FIX 4: Sticky ATC Close Button - Hide on Mobile ── */
/* Redundant and overlaps with chat widget */
@media (max-width: 768px) {
  .fudge-sticky-atc-close {
    display: none !important;
  }
}

/* ── FIX 5: Breadcrumb Touch Targets & Contrast ── */
@media (max-width: 768px) {
  .breadcrumbs,
  .breadcrum {
    padding: 10px 0 !important;
  }
  
  .breadcrum a,
  .breadcrum span,
  .breadcrum li,
  .breadcrumbs a,
  .breadcrumbs span,
  .breadcrumbs li {
    font-size: 13px !important;
    padding: 6px 8px !important;
    min-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  
  /* Improve breadcrumb contrast */
  .breadcrum a,
  .breadcrumbs a {
    color: #9c8f61 !important;
  }
  
  .breadcrum span,
  .breadcrumbs span {
    color: #666 !important;
  }
}

/* ── FIX 6: Header Icons Touch Targets ── */
@media (max-width: 768px) {
  .header__icon {
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  
  .header__icons {
    gap: 4px !important;
  }
}

/* ── FIX 7: Gallery Navigation Arrows ── */
@media (max-width: 768px) {
  .fudge-gallery-nav-btn,
  .product-gallery__nav-btn,
  [class*="gallery"] button[class*="nav"],
  [class*="slider"] button[class*="arrow"] {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }
}

/* ── FIX 8: Main Product Quantity Buttons - Touch Targets ── */
@media (max-width: 768px) {
  .fudge-qty-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }
  
  .fudge-qty-input {
    height: 44px !important;
    min-height: 44px !important;
  }
  
  .fudge-quantity-selector {
    min-height: 44px !important;
  }
}

/* ── FIX 9: Sticky ATC Quantity Buttons - Touch Targets ── */
@media (max-width: 768px) {
  .fudge-sticky-atc-qty-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 20px !important;
  }
  
  .fudge-sticky-atc-qty-input {
    height: 44px !important;
    min-height: 44px !important;
    width: 50px !important;
  }
  
  .fudge-sticky-atc-qty {
    min-height: 46px !important;
  }
}

/* ── FIX 10: Desktop Breadcrumb Contrast ── */
/* Apply readable contrast on all screen sizes */
.breadcrum a,
.breadcrumbs a {
  color: #9c8f61 !important;
}

.breadcrum span,
.breadcrumbs span {
  color: #666 !important;
}

/* Ensure breadcrumbs are visible on light backgrounds */
.breadcrum,
.breadcrumbs {
  color: #333 !important;
}

/* ── FIX 11: Sort By Label Alignment ── */
.facet-filters__field {
  display: flex;
  justify-content: flex-end;
  height: 100%;
  align-items: center;
  gap: 8px;
}
.facet-filters__field .facet-filters__label {
  margin: 0;
  line-height: 1;
}
.facet-filters__field .select {
  display: flex;
  align-items: center;
}

/* ── FIX 12: Fast Bundle Sticky Banner - Hide on Mobile ── */
/* The "SAVE UP TO 10%" sticky banner overlaps product content on mobile */
@media (max-width: 768px) {
  #fsb_sticky_bar,
  .fsb_sticky,
  .fsb-sticky,
  .fsb_sticky_bar,
  .fast-bundle-sticky-bar,
  [class*="fsb_sticky"],
  [class*="fsb-sticky"],
  [class*="fast-bundle"],
  div[id*="fsb"][style*="fixed"],
  div[class*="fsb"][style*="fixed"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    position: static !important;
  }
}

/* ── FIX 13: Text Contrast on Dark Sections ── */
/* Ensure white text on dark backgrounds for WCAG AA compliance */

/* Dark backgrounds (#121212, #1a1a1a, #0a0a0a, #1A2B4A) need white text */
.fudge-hero-v2-zone2__subhead,
.fudge-hero-v2-zone2__link,
.fudge-hero-v2-zone2__persona-link,
.fudge-m11-hero__description,
.fudge-m11-hero__variants-label,
.fudge-m11-hero__trust-signal,
.fudge-docs-choice__desc,
.fudge-docs-choice__card-title a,
.fudge-docs-choice__price-compare,
.fudge-scenario-carousel__text,
.fudge-gov-institutional__desc,
.fudge-educational-center__desc,
.fudge-best-deals__desc {
  color: #e0e0e0 !important;
}

/* Links and interactive text should be brighter */
.fudge-hero-v2-zone2__link:hover,
.fudge-hero-v2-zone2__persona-link:hover,
.fudge-m11-hero__trust-signal:hover {
  color: #ffffff !important;
}

/* Strong tags in dark sections */
.fudge-docs-choice__desc strong,
.fudge-stats-about__paragraph strong,
.fudge-stats-about__mission-text strong {
  color: #ffffff !important;
}

/* Secondary text on dark - improved from #888/#999 to #bbb */
.fudge-hero-v2-zone2__links,
.fudge-hero-v2-zone3__promise,
.fudge-m11-hero__variants-label {
  color: #aaaaaa !important;
}

/* Gold accent text stays as-is but ensure parent text is readable */
.fudge-hero-v2-zone2__eyebrow,
.fudge-hero-v2-zone3__eyebrow,
.fudge-docs-choice__eyebrow,
.fudge-docs-choice__hero-sub {
  color: #9c8f61 !important;
}

/* Hero zone 2 - dark background */
.fudge-hero-v2-zone2 {
  background: #1a1a1a;
}
.fudge-hero-v2-zone2__headline {
  color: #ffffff !important;
}
.fudge-hero-v2-zone2__subhead {
  color: #cccccc !important;
}

/* Trust signals in dark sections */
.fudge-m11-hero__trust-signal span {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Product card titles in dark sliders */
.fudge-docs-choice__card-title a {
  color: #ffffff !important;
}
.fudge-docs-choice__card-title a:hover {
  color: #ffb800 !important;
}

/* Price text */
.fudge-docs-choice__price-current {
  color: #ffb800 !important;
}
.fudge-docs-choice__price-compare {
  color: #999999 !important;
}

/* Description text */
.fudge-docs-choice__desc {
  color: #d1d1d1 !important;
}
.fudge-docs-choice__desc strong {
  color: #ffffff !important;
}

/* Government institutional section dark overlay */
.fudge-gov-institutional__serve-item {
  color: #e8e8e8 !important;
}
.fudge-gov-institutional__vendor-note {
  color: #bbbbbb !important;
}

/* Hero zone 2 - enhance eyebrow visibility */
.fudge-hero-v2-zone2__eyebrow {
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5) !important;
}

/* Persona labels in hero zone 2 */
.fudge-hero-v2-zone2__persona-label {
  color: #ffffff !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6) !important;
}

/* Persona links */
.fudge-hero-v2-zone2__persona-link {
  color: #9c8f61 !important;
  font-weight: 600 !important;
}

/* Hero zone 2 links - improve from #888 to #bbbbbb */
.fudge-hero-v2-zone2__link {
  color: #bbbbbb !important;
  border-bottom-color: rgba(156, 143, 97, 0.4) !important;
}
.fudge-hero-v2-zone2__link:hover {
  color: #9c8f61 !important;
}

/* Hero zone 3 description - already #bbb but ensure contrast */
.fudge-hero-v2-zone3__description {
  color: #d8d8d8 !important;
}

/* Hero zone 3 promise text */
.fudge-hero-v2-zone3__promise {
  color: #aaaaaa !important;
}

/* ============================================
   PDP VARIANT SELECTOR SIZING - Large Monitor Optimized
   ============================================ */

/* Circle swatches (color images) - increased from 50px to 90px */
.details-info .product-options--type-collection .laber-Color[data-style="circle-image"] .product-options__value--circle,
.fudge-variant-selectors .product-options__value--circle {
  width: 90px !important;
  height: 90px !important;
  border: 2px solid #e6ecf0;
  margin: 0 8px 8px 0;
  transition: all 0.2s ease;
  background-size: cover;
  background-position: center;
}

/* Circle swatch hover - clicky feel */
.details-info .product-options--type-collection .laber-Color[data-style="circle-image"] .product-options__value--circle:hover,
.fudge-variant-selectors .product-options__value--circle:hover {
  transform: scale(1.08);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border-color: #9c8f61;
}

/* Circle swatch active state - prominent gold ring */
.details-info .product-options--type-collection .laber-Color[data-style="circle-image"] .product-options__value--circle.active,
.fudge-variant-selectors .product-options__value--circle.active {
  border-color: #9c8f61;
  box-shadow: 0 0 0 3px rgba(156, 143, 97, 0.3);
  transform: scale(1.05);
}

/* Square swatches - increased from 25px to 60px */
.product-options__value--square {
  width: 60px !important;
  height: 60px !important;
  border: 2px solid #e6ecf0;
  margin: 0 6px 6px 0;
  transition: all 0.2s ease;
}

/* Square swatch hover */
.product-options__value--square:hover {
  transform: scale(1.1);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
}

/* Square swatch active */
.product-options__value--square.active {
  border: 2px solid #9c8f61 !important;
  box-shadow: 0 0 0 3px rgba(156, 143, 97, 0.25);
}

/* Text-based variant buttons - larger and more clickable */
.product-options__value--text {
  min-width: 80px;
  padding: 14px 22px !important;
  margin: 0 6px 6px 0;
  font-size: 15px;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.2s ease;
}

/* Text button hover */
.product-options__value--text:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-color: #9c8f61 !important;
}

/* Text button active */
.product-options__value--text.active {
  border: 2px solid #9c8f61 !important;
  background-color: rgba(156, 143, 97, 0.08);
}

/* Large text buttons */
.product-options__value--large-text {
  min-width: 100px;
  padding: 16px 28px !important;
  font-size: 16px;
}

/* ============================================
   DISABLED VARIANT STYLING
   ============================================ */

/* Disabled swatch - non-interactive, greyed out */
.product-options__value.disabled {
  cursor: not-allowed !important;
  position: relative;
  opacity: 0.4 !important;
  pointer-events: none !important;
}

/* Strikethrough line on disabled swatches */
.product-options__value.disabled:before {
  content: "";
  background: #d32f2f;
  position: absolute;
  height: 2px;
  transform: rotate(-45deg) translate(0, -50%);
  top: 50%;
  left: 5%;
  right: 5%;
  z-index: 2;
}

/* Tooltip message for disabled variants */
.alo_tooltip-content {
  display: block;
  font-size: 12px;
  line-height: 1.4;
}

/* Special message for unavailable items */
.product-options__value.disabled .alo_tooltip-content:after {
  content: " - ITEM UNAVAILABLE, SEE MESSAGE ON THE PAGE";
  display: block;
  color: #d32f2f;
  font-weight: 600;
  margin-top: 4px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Also show unavailable message in label */
.product-options__value.disabled label:after {
  content: " - ITEM UNAVAILABLE, SEE MESSAGE ON THE PAGE";
  display: block;
  color: #d32f2f;
  font-weight: 600;
  margin-top: 4px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Swatch labels below swatches */
.fudge-swatch-label {
  display: block;
  text-align: center;
  font-size: 11px;
  color: #666;
  margin-top: 4px;
  max-width: 70px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Variant options container - better spacing */
.fudge-variant-selectors .product-options__section {
  gap: 4px;
  padding: 8px 0;
}

/* Title options label */
.fudge-variant-selectors .title-options {
  font-size: 14px;
  font-weight: 600;
  color: #121212;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.fudge-variant-selectors .label-selected {
  font-weight: 400;
  color: #666;
  background: #f5f5f5;
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 13px;
}

/* ============================================
   FULL-WIDTH PDP DESCRIPTIONS
   ============================================ */

/* MED-TAC: neutralize legacy 860px description cap — full-width PDPs */
[style*="max-width:860px"],
[style*="max-width: 860px"] {
  max-width: 100% !important;
}

/* ============================================
   STICKY FILTERS FOR COLLECTIONS
   =========================================== */

/* Make desktop vertical filters sidebar sticky */
@media screen and (min-width: 991px) {
  .facets-vertical .facets-wrapper {
    position: sticky !important;
    top: 100px !important;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    align-self: start;
    z-index: 99;
    scrollbar-width: thin;
    scrollbar-color: #2A3340 transparent;
  }
}

/* Remove nested scroll boxes inside filter lists — let sidebar scroll handle it */
.facets__list.list-unstyled.scroll-bar,
.facets-vertical .facets__list.scroll-bar,
.facets-vertical ul.scroll-bar {
  max-height: none !important;
  overflow: visible !important;
}

/* Clean up filter group borders — use spacing instead of boxes */
.facets-vertical .facets__disclosure-vertical {
  border-bottom: none !important;
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
}
.facets-vertical .facets__disclosure-vertical + .facets__disclosure-vertical {
  border-top: 1px solid #2A3340 !important;
  padding-top: 16px !important;
}
.medtac-light-theme .facets-vertical .facets__disclosure-vertical + .facets__disclosure-vertical {
  border-top-color: #e0e0e0 !important;
}

/* ============================================
   RESPONSIVENESS AUDIT FIXES (12 Issues)
   =========================================== */

/* --- Issue 1: Mega-menu dropdown overflow on laptop/tablet --- */
@media screen and (max-width: 1540px) {
  .fudge-mega-dropdown[style*="min-width: 1540px"] {
    min-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
  }
}
@media screen and (max-width: 1340px) {
  .fudge-mega-dropdown[style*="min-width: 1340px"] {
    min-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
  }
  .fudge-nar-card-grid--photo {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
    justify-content: center !important;
  }
}

/* --- Issue 2: Desktop nav shows at 769px, too cramped for laptop --- */
@media screen and (min-width: 769px) and (max-width: 991px) {
  .fudge-mega-nav {
    display: none !important;
  }
}

/* --- Issue 3: Product swatches oversized on compact mobile --- */
@media screen and (max-width: 480px) {
  .details-info .product-options--type-collection .laber-Color[data-style="circle-image"] .product-options__value--circle,
  .fudge-variant-selectors .product-options__value--circle {
    width: 55px !important;
    height: 55px !important;
    margin: 0 6px 6px 0;
  }
  .product-options__value--square {
    width: 42px !important;
    height: 42px !important;
    margin: 0 4px 4px 0;
  }
  .product-options__value--text {
    min-width: 60px !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
  }
  .product-options__value--large-text {
    min-width: 70px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
  }
  .fudge-swatch-label {
    max-width: 55px;
    font-size: 9px;
  }
}

/* --- Issue 4: Trust ticker font too small on mobile --- */
@media screen and (max-width: 480px) {
  .fudge-trust-ticker__item {
    font-size: 9px;
    letter-spacing: 0.8px;
    gap: 6px;
  }
  .fudge-trust-ticker__item svg {
    width: 14px;
    height: 14px;
  }
  .fudge-trust-ticker__content {
    gap: 18px;
  }
  .fudge-trust-ticker__separator {
    width: 3px;
    height: 3px;
  }
}

/* --- Issue 5: Mobile quick links touch targets too small --- */
.fudge-mobile-quick-link {
  padding: 12px 14px !important;
  display: inline-block !important;
  min-height: 44px !important;
  line-height: 20px !important;
  box-sizing: border-box !important;
}

/* --- Issue 6: Text stretches edge-to-edge on large desktop --- */
@media screen and (min-width: 1600px) {
  .fudge-docs-choice__desc,
  .fudge-stats-about__paragraph,
  .fudge-stats-about__mission-text,
  .fudge-hero-badge__description,
  .fudge-hero-v2-zone2__desc,
  .fudge-hero-v2-zone3__desc,
  .fudge-gov-institutional__desc,
  .fudge-scenario-carousel__text {
    max-width: 800px !important;
  }
  .fudge-docs-choice__layout {
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .fudge-hero-badge__container {
    max-width: 1200px !important;
  }
}

/* --- Issue 7: Top bar links don't wrap on tablet --- */
@media screen and (max-width: 1024px) {
  .topbar-nav-links-wrapper,
  [class*="topbar"] nav,
  .fudge-top-bar-links {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
}

/* --- Issue 8: Hero badge stats stack too cramped on mobile --- */
@media screen and (max-width: 480px) {
  .fudge-hero-badge__stat {
    padding: 14px !important;
  }
  .fudge-hero-badge__stat-number {
    font-size: 28px !important;
  }
  .fudge-hero-badge__stat-label {
    font-size: 13px;
  }
}

/* --- Issue 9: Predictive search dropdown transparent background --- */
.predictive-search,
.search-results-dropdown,
.ecom-predictive-search-wrapper {
  background-color: #ffffff !important;
}

/* --- Issue 10: Hero CTAs too small on mobile (42px -> 44px touch target) --- */
@media screen and (max-width: 749px) {
  .fudge-hero-1__cta,
  .fudge-hero-v2-zone2__cta,
  .fudge-hero-v2-zone3__cta {
    min-height: 44px !important;
    padding: 12px 16px !important;
  }
}

/* --- Issue 11: Tooltip overflow clips off-screen on mobile --- */
@media screen and (max-width: 768px) {
  .fudge-unified-trust-tooltip {
    white-space: normal !important;
    width: 220px !important;
    max-width: calc(100vw - 40px) !important;
    left: 0 !important;
    transform: scale(0.95) !important;
    font-size: 11px !important;
  }
  .fudge-unified-trust-tooltip::after {
    left: 16px !important;
    transform: none !important;
  }
  .fudge-trust-tooltip-trigger:hover .fudge-unified-trust-tooltip {
    transform: translateY(-3px) !important;
  }
}

/* --- Issue 12: Doc's Choice layout stretches on large desktop --- */
@media screen and (min-width: 1600px) {
  .fudge-docs-choice__layout {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ========================================
   CSS GRID: Beat grid-style inline specificity
   grid-style snippet uses #shopify-section-XXX .product-item
   with width: calc(100%/N), float:left, clear:left, negative margins
   ======================================== */
[id^="shopify-section"] #collection-product .product-item,
[id^="shopify-section"] #product-grid .product-item,
#collection-product .product-item,
#product-grid .product-item {
    display: flex !important;
    position: relative !important;
    border: none !important;
    border-radius: 6px !important;
    background: #fff !important;
    overflow: visible !important;
    float: none !important;
    width: 100% !important;
    min-height: 100% !important;
    padding: 10px !important;
    padding-bottom: 20px !important;
    clear: none !important;
}
[id^="shopify-section"] #collection-product,
[id^="shopify-section"] #product-grid,
#collection-product,
#product-grid {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Ensure search form containers establish positioning context */
.fudge-mobile-search-form,
.fudge-mobile-drawer__search {
  position: relative !important;
}

/* JASE partnership and Bunker banner — visible on all viewports for CRO */

/* ========================================
   CRO BATCH: Collection Card Equal Heights
   ======================================== */
[id^='shopify-section'] .product-collection__title h2,
[id^='shopify-section'] .product-collection__title h2 a {
  min-height: 3.6em !important;
  display: flex !important;
  align-items: flex-start !important;
  line-height: 1.3 !important;
}
[id^='shopify-section'] .product-collection__content {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
[id^='shopify-section'] .button-cart-bottom {
  margin-top: auto !important;
}
[id^='shopify-section'] .product-collection {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
[id^='shopify-section'] .grid__item.product-item {
  display: flex !important;
}
[id^='shopify-section'] .product-collection__image {
  flex-shrink: 0 !important;
}

/* ========================================
   CRO BATCH: Savings Badge No-Wrap
   ======================================== */
.fudge-save-badge {
  white-space: nowrap !important;
  display: inline-flex !important;
  fit-content !important;
  width: fit-content !important;
  max-width: 100% !important;
}

/* ========================================
   CRO BATCH: PDP Buy-Box Compression (desktop)
   Keep variant selectors + ATC above fold on 1366x768
   ======================================== */
@media (min-width: 1025px) {
  .fudge-pdp-stars {
    margin: 0 0 8px 0 !important;
  }
  .fudge-quick-specs {
    margin: 0 0 8px 0 !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
  }
  .fudge-price-block {
    margin: 0 0 6px 0 !important;
  }
  .fudge-payment-terms {
    margin: 0 0 6px 0 !important;
    min-height: 0 !important;
  }
  .fudge-shipping-callout {
    margin: 6px 0 !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
  }
  .fudge-variant-selectors {
    margin: 0 0 8px 0 !important;
  }
  .medtac-best-price-badge {
    margin: 6px 0 !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
  }
}

/* ========================================
   BLOG READABILITY — Force light backgrounds on all blog pages
   Root cause: .page-container has dark #0F1115 bg, but blog templates
   use dark text (#333, #1a1a1a) designed for white backgrounds.
   ======================================== */

/* All article templates — white background (IFAK guide now white too) */
.main-content-blog:not(.fudge-ifak-guide),
.main-content-blog:not(.fudge-ifak-guide) .container,
.main-content-blog:not(.fudge-ifak-guide) .row,
.main-content-blog:not(.fudge-ifak-guide) .mobile-content,
.main-content-blog:not(.fudge-ifak-guide) .content-blog,
.main-content-blog:not(.fudge-ifak-guide) .post-item,
.main-content-blog:not(.fudge-ifak-guide) .post-info,
.main-content-blog:not(.fudge-ifak-guide) .main-info-post,
.main-content-blog:not(.fudge-ifak-guide) .des {
  background-color: #ffffff !important;
}

.main-content-blog:not(.fudge-ifak-guide) {
  color: #333 !important;
}

/* Article title, headings, body text — force dark on white */
.main-content-blog:not(.fudge-ifak-guide) .article-title-clinical,
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des h2:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div h2:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des h3:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div h3:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des h4:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div h4:not(.medtac-dark-card *) {
  color: #1a1a1a !important;
}

.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des:not(.medtac-dark-card),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des p:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div p:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des li:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div li:not(.medtac-dark-card *) {
  color: #333 !important;
}

/* Dark card elements inside blog posts - protect light text */
.main-content-blog .medtac-dark-card,
.main-content-blog .medtac-dark-card h2,
.main-content-blog .medtac-dark-card h3,
.main-content-blog .medtac-dark-card h4 {
  color: #ffffff !important;
}
.main-content-blog .medtac-dark-card p,
.main-content-blog .medtac-dark-card span:not([style*="background"]) {
  color: #cbd5e1 !important;
}
.main-content-blog .medtac-dark-card strong {
  color: #ffffff !important;
}

/* Strong tags in blog content — force dark (global.css overrides to #121212 which is correct here) */
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des strong:not(.medtac-dark-card *),
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div strong:not(.medtac-dark-card *) {
  color: #121212 !important;
}

/* Protect dark cards in blog content */
.main-content-blog .medtac-dark-card,
.main-content-blog .medtac-dark-card h2,
.main-content-blog .medtac-dark-card h3,
.main-content-blog .medtac-dark-card h4,
.main-content-blog .medtac-dark-card strong {
  color: #ffffff !important;
}
.main-content-blog .medtac-dark-card p,
.main-content-blog .medtac-dark-card li {
  color: #cbd5e1 !important;
}

/* Blockquotes in blog content */
.main-content-blog:not(.fudge-ifak-guide) .main-info-post .des blockquote,
.main-content-blog:not(.fudge-ifak-guide) .main-info-post > div blockquote {
  background: #f9f9f9 !important;
  color: #555 !important;
}

/* Blog sidebar — white background */
.main-content-blog:not(.fudge-ifak-guide) .sidebar,
.main-content-blog:not(.fudge-ifak-guide) .blog-sidebar,
.main-content-blog:not(.fudge-ifak-guide) .col:not(.mobile-content) {
  background-color: #ffffff !important;
  color: #333 !important;
}

/* Modern blog listing — white background */
.modern-blog-container {
  background-color: #ffffff !important;
  color: #333 !important;
}
.modern-blog-container .modern-blog-title {
  color: #121212 !important;
}
.modern-blog-container .modern-blog-subtitle {
  color: #666 !important;
}
.modern-blog-container .modern-article-card .card-title,
.modern-article-card .card-title a {
  color: #121212 !important;
}
.modern-article-card .card-excerpt {
  color: #666 !important;
}

/* Operator Brief article — light khaki/olive background */
.operator-article-container {
  background-color: #F8F2E0 !important;
}
.operator-article-content {
  color: #1F1A12 !important;
}
.operator-article-content strong {
  color: #1F1A12 !important;
}

/* Prepper Medicine blog listing — light khaki background */
.operator-brief-container {
  background-color: #F8F2E0 !important;
}

/* Tactical News blog — intentionally dark, but improve low-contrast elements */
.tacnews-card .tacnews-card-meta {
  color: #888 !important;
}
.tacnews-card .tacnews-card-meta svg {
  stroke: #888 !important;
}
.tacnews-card .tacnews-card-excerpt {
  color: #b0b0b0 !important;
}
.tacnews-crosslink-desc {
  color: #b0b0b0 !important;
}
.tacnews-search input::placeholder {
  color: #888 !important;
}

/* LE Medical Readiness blog — ensure white background */
.fudge-muCS1-le-medical-readiness-blog,
.leblog-container {
  background-color: #ffffff !important;
  color: #333 !important;
}

/* ========================================
   CRO BATCH: Collection Above-the-Fold Compression
   ======================================== */
/* Sticky mobile filter/sort toolbar */
@media (max-width: 768px) {
  [id^='shopify-section'] .facets-vertical-form,
  [id^='shopify-section'] .facets-vertical-sort {
    position: sticky !important;
    top: 0 !important;
    z-index: 50 !important;
    background: #0F1115 !important;
    padding: 8px 12px !important;
    border-bottom: 1px solid rgba(156,143,97,0.2) !important;
  }
}
/* Compress collection banner on mobile */
@media (max-width: 768px) {
  [id^='shopify-section'] .collection-hero__banner,
  [id^='shopify-section'] .main-collection-banner {
    min-height: 60px !important;
    max-height: 80px !important;
    padding: 8px 0 !important;
  }
  [id^='shopify-section'] .collection-hero__banner h1,
  [id^='shopify-section'] .main-collection-banner h1 {
    font-size: 20px !important;
    margin: 0 !important;
  }
  [id^='shopify-section'] .collection-hero__banner p,
  [id^='shopify-section'] .main-collection-banner p {
    display: none !important;
  }
  /* Compress quick filters on mobile */
  [id^='shopify-section'] .facets-vertical-form {
    padding: 4px 0 !important;
  }
  /* Hide duplicate product count on mobile (keep only one) */
  [id^='shopify-section'] .product-count-vertical {
    display: none !important;
  }
}
/* Compress collection header on desktop */
@media (min-width: 769px) and (max-width: 1366px) {
  [id^='shopify-section'] .collection-hero__banner,
  [id^='shopify-section'] .main-collection-banner {
    min-height: 80px !important;
    max-height: 100px !important;
    padding: 10px 0 !important;
  }
  [id^='shopify-section'] .collection-hero__banner h1,
  [id^='shopify-section'] .main-collection-banner h1 {
    font-size: 24px !important;
    margin: 0 !important;
  }
  [id^='shopify-section'] .collection-hero__banner p,
  [id^='shopify-section'] .main-collection-banner p {
    display: none !important;
  }
}

/* ========================================
   COLLECTION PAGE: Savings Badge + Price Layout
   ======================================== */
/* Price and MSRP on single horizontal line */
.product-collection__price .price {
    display: flex !important;
    align-items: baseline !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}
.product-collection__price .price .current {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #c9a227 !important;
}
.product-collection__price .price .compare {
    font-size: 13px !important;
    color: #999 !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
}
/* Savings badge: "SAVE X% ($Y OFF)" */
.fudge-save-badge {
    display: inline-flex !important;
    align-items: center !important;
    background: #cc1414 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 8px !important;
    border-radius: 3px !important;
    letter-spacing: 0.3px !important;
    line-height: 1.4 !important;
    width: fit-content !important;
    margin-top: 4px !important;
}

/* ========================================
   COLLECTION PAGE: Sort Dropdown Gaps
   ======================================== */
.facets-vertical-sort .facet-filters.sorting .facet-filters__field {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.facets-vertical-sort .facet-filters.sorting .facet-filters__label {
    margin: 0 !important;
    flex-shrink: 0 !important;
}
.facets-vertical-sort .facet-filters.sorting .select {
    flex: 1 !important;
}
.facets-vertical-sort .facet-filters.sorting .facet-filters__sort {
    padding: 6px 28px 6px 10px !important;
    font-size: 13px !important;
}

/* ========================================
   COLLECTION PAGE: Mobile Sticky Filter/Sort Bar
   ======================================== */
@media screen and (max-width: 989px) {
    .facets-vertical-sort {
        position: sticky !important;
        top: 0 !important;
        z-index: 50 !important;
        background: #1a1f28 !important;
        padding: 10px 16px !important;
        margin: 0 -16px !important;
        border-bottom: 1px solid #2a3340 !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
    }
    .facets-vertical-sort .product-count-vertical {
        font-size: 13px !important;
        margin: 0 !important;
    }
    .facets-vertical-sort .product-count__text {
        font-size: 13px !important;
        margin: 0 !important;
    }
    /* Hide 3, 4, 5 column grid switchers on mobile */
    .control-button .grid-3-button,
    .control-button .grid-4-button,
    .control-button .grid-5-button {
        display: none !important;
    }
    /* Full-width mobile sorting dropdown */
    .facets-vertical-sort .facet-filters.sorting {
        width: 100% !important;
        flex: 1 1 100% !important;
        margin: 8px 0 0 !important;
    }
    .facets-vertical-sort .facet-filters.sorting .facet-filters__field {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .facets-vertical-sort .facet-filters.sorting .select {
        flex: 1 1 auto !important;
        width: 100% !important;
        position: relative !important;
    }
    .facets-vertical-sort .facet-filters.sorting select.facet-filters__sort {
        width: 100% !important;
        min-width: 0 !important;
        height: 38px !important;
        padding: 6px 32px 6px 12px !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        background-color: #121418 !important;
        color: #ffffff !important;
        border: 1px solid #2a3340 !important;
        border-radius: 4px !important;
        font-size: 13px !important;
    }
    .facets-vertical-sort .facet-filters.sorting .select .icon-caret,
    .facets-vertical-sort .facet-filters.sorting .select .icon-chevron-down {
        position: absolute !important;
        right: 12px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        pointer-events: none !important;
    }
}

/* ========================================
   COLLECTION PAGE: Contain Quotes Guru overflow on card images
   ======================================== */
.product-item .product-collection__image {
    overflow: hidden !important;
}
.product-item .product-item__image-wrapper {
    overflow: hidden !important;
}
/* Quotes Guru icon wrapper: position outside the clipped image area */
.product-item .wf-add-to-quote-collection-icon-wrapper,
.product-item .wf-quote-icon-wrapper,
.product-item .wf-rfq-collection-icon-container {
    z-index: 10 !important;
}

/* ========================================
   COLLECTION DESCRIPTION: Dark Theme Text Overrides
   REMOVED — colors are now managed directly in the collection HTML inline styles.
   ======================================== */

/* ========================================
   BALLISTIC EXPORT NOTICE: Red Grid Warning Banner
   High-visibility red with 40px grid texture overlay
   Scoped to the ballistic protection collection template only
   ======================================== */
[id$="__ss_text_block_CQaFPQ"] > section > div[style*="background-color"] {
  max-width: 100% !important;
  background-color: #CC1414 !important;
  background-image:
    linear-gradient(rgba(0,0,0,0.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,0.18) 1px, transparent 1px) !important;
  background-size: 40px 40px !important;
  border-top: 3px solid #8a0d0d !important;
  border-bottom: 3px solid #8a0d0d !important;
  padding-inline: 2rem !important;
}
[id$="__ss_text_block_CQaFPQ"] p {
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}
[id$="__ss_text_block_CQaFPQ"] strong {
  color: #ffffff !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* ========================================
   COLLECTION FILTERS: Fix label contrast on dark sidebar
   ======================================== */
/* Target label.facet-checkbox directly (theme uses <label class="facet-checkbox">) */
label.facet-checkbox,
label.facet-checkbox span,
label.facet-checkbox .facet-checkbox__text,
label.facet-checkbox .facet-checkbox__count,
.facet-checkbox label,
.facet-item label,
.facet-item label span {
  color: #D0D5DD !important;
}
/* Brand/Color/Size filter option labels */
.verticalFilter .facet-checkbox,
.verticalFilter .facet-checkbox span,
.verticalFilter .facet-checkbox__text,
.verticalFilter .facet-checkbox__count,
.facets__display label,
.facets__display label span {
  color: #D0D5DD !important;
}
/* FAQ accordion border override removed — managed in inline HTML styles */

/* ========================================
   COLLECTION PAGE: Product Count & Grid Bar Text
   ======================================== */
/* Product count text on dark background */
.product-count__text,
.product-count__text span,
.product-count-vertical .product-count__text,
#ProductCountDesktop {
  color: #D0D5DD !important;
}
/* Grid info/count bar background and text */
.facets-vertical-sort,
.facets-vertical-form {
  background-color: #1a1f28 !important;
}
.facets-vertical-sort .product-count__text,
.facets-vertical-sort .product-count__text span {
  color: #D0D5DD !important;
}
/* Sort label text */
.facets-vertical-sort .facet-filters__label {
  color: #9C8F61 !important;
}

/* ========================================
   PDP: Dark Theme Text Overrides
   Fixes dark text (#121212, #555, #666) on dark backgrounds
   for both Master PDP and Default PDP templates
   ======================================== */

/* === Default PDP (1000+ products) === */
/* Override remaining #121212 colors in details area to light */
.fudge-product-main-redesign .fudge-product-details .fudge-product-spec-item,
.fudge-product-main-redesign .fudge-product-details .fudge-product-quick-specs,
.fudge-product-main-redesign .fudge-product-details .fudge-product-review-count,
.fudge-product-main-redesign .fudge-product-details .fudge-product-trust-item,
.fudge-product-main-redesign .fudge-product-details .fudge-product-trust-text,
.fudge-product-main-redesign .fudge-product-details .fudge-product-shipping-text,
.fudge-product-main-redesign .fudge-product-details .fudge-product-info-label,
.fudge-product-main-redesign .fudge-product-details .fudge-product-info-value {
  color: #b0b0b0 !important;
}
/* Strong tags in details area: white ONLY on dark background elements */
.fudge-product-main-redesign .fudge-product-title strong,
.fudge-product-main-redesign .fudge-product-review-count strong {
  color: #fff !important;
}
/* Strong tags inside light containers: keep dark */
.fudge-product-main-redesign .fudge-product-quick-specs strong,
.fudge-product-main-redesign .fudge-product-spec-item strong,
.fudge-product-main-redesign .fudge-price-block strong,
.fudge-product-main-redesign .fudge-stock-urgency strong {
  color: #121212 !important;
}
/* Variant label: light */
.fudge-product-main-redesign .fudge-product-variant-label,
.fudge-product-main-redesign .title-options {
  color: #e0e0e0 !important;
}
/* Quote button: light text */
.fudge-product-main-redesign .fudge-quote-btn,
.fudge-product-main-redesign .wf-add-to-quote-collection-icon-wrapper,
.fudge-product-main-redesign .fudge-quote-btn-container {
  color: #b0b0b0 !important;
}
/* Trust bar borders: dark theme */
.fudge-product-main-redesign .fudge-product-trust-bar,
.fudge-product-main-redesign .fudge-unified-trust-bar {
  border-color: #2a3340 !important;
}
/* Quick specs border: dark theme */
.fudge-product-main-redesign .fudge-product-quick-specs {
  border-bottom-color: #2a3340 !important;
}
/* Price block: ensure light background + dark text inside */
.fudge-product-main-redesign .fudge-price-block {
  background: linear-gradient(135deg, #fafafa 0%, #ffffff 100%) !important;
  border: 1px solid #e0e0e0 !important;
  color: #121212 !important;
}
/* Price block children: let section file colors apply (already light for dark bg) */
/* Only force dark text on specific light-bg elements inside price block */
.fudge-product-main-redesign .fudge-price-block .fudge-compare-price-compact {
  color: #999 !important;
}
/* Keep red price bright for dark bg if price block bg doesn't render */
.fudge-product-main-redesign .fudge-current-price,
.fudge-mp-main .fudge-mp-current-price {
  color: #ff4444 !important;
}
/* Inside price block (light bg): use darker red */
.fudge-product-main-redesign .fudge-price-block .fudge-current-price,
.fudge-mp-price-block .fudge-mp-current-price {
  color: #cc1414 !important;
}
/* Light theme: sale prices dark red, regular prices dark */
body.medtac-light-theme [id^="shopify-section"] .product-collection__price .price--sale .current,
body.medtac-light-theme [id^="shopify-section"] .product-collection__price .price--sale .current .money,
body.medtac-light-theme .product-collection__price .price--sale .current,
body.medtac-light-theme .product-collection__price .price--sale .current .money,
.medtac-light-theme .price-item--sale,
.medtac-light-theme .price__sale .price-item,
.medtac-light-theme .fudge-product-main-redesign .fudge-current-price,
.medtac-light-theme .fudge-mp-main .fudge-mp-current-price {
  color: #cc1414 !important;
}
/* Regular (non-sale) prices: dark, not red or gold */
body.medtac-light-theme [id^="shopify-section"] .product-collection__price .price--regular .current,
body.medtac-light-theme [id^="shopify-section"] .product-collection__price .price--regular .current .money,
body.medtac-light-theme .product-collection__price .price:not(.price--sale) .money,
body.medtac-light-theme .product-collection__price .price .current,
body.medtac-light-theme .product-collection__price .price span,
.medtac-light-theme .price__regular .price-item--regular,
.medtac-light-theme .price-item--regular {
  color: #121212 !important;
}
/* Light theme: review counts dark */
body.medtac-light-theme [id^="shopify-section"] .fudge-trustify-count,
.medtac-light-theme .fudge-trustify-count {
  color: #555 !important;
}
/* Keep savings badge white on red */
.fudge-product-main-redesign .fudge-price-block .fudge-savings-badge {
  color: #fff !important;
  background: linear-gradient(135deg, #cc1414 0%, #990000 100%) !important;
}
/* Keep kit savings green */
.fudge-product-main-redesign .fudge-price-block .fudge-kit-savings {
  color: #2e7d32 !important;
}
.fudge-product-main-redesign .fudge-price-block .fudge-kit-savings strong {
  color: #1b5e20 !important;
}
/* Stock urgency: keep dark text inside (light bg) */
.fudge-product-main-redesign .fudge-stock-urgency,
.fudge-mp-stock-urgency {
  color: #e65100 !important;
}

/* Shop Pay / payment options link: light on dark */
.fudge-product-main-redesign .fudge-dynamic-payment,
.fudge-product-main-redesign .fudge-payment-terms,
.fudge-product-main-redesign .fudge-mp-dynamic-payment,
.fudge-product-main-redesign .shop-pay-section,
.fudge-mp-main .fudge-mp-dynamic-payment,
.fudge-mp-main .shop-pay-section,
.fudge-product-main-redesign [data-shopify-payment-terms],
.fudge-mp-main [data-shopify-payment-terms] {
  color: #b0b0b0 !important;
}
.fudge-product-main-redesign .fudge-dynamic-payment a,
.fudge-product-main-redesign .fudge-payment-terms a,
.fudge-product-main-redesign .fudge-mp-dynamic-payment a,
.fudge-mp-main .fudge-mp-dynamic-payment a,
.fudge-product-main-redesign .shop-pay-section a,
.fudge-mp-main .shop-pay-section a {
  color: #9c8f61 !important;
}

/* Footer copyright/compliance backup override */
.medtac-footer__copyright,
.medtac-footer__compliance {
  color: #b0b0b0 !important;
}

/* ========================================
   LIGHT THEME: Product & Collection Pages
   Overrides dark theme for shopping readability
   Activated via .medtac-light-theme body class
   ======================================== */

/* === Page backgrounds === */
body.medtac-light-theme {
  background-color: #ffffff !important;
  --color-main: #121212;
}
.medtac-light-theme .main-content,
.medtac-light-theme .page-container,
.medtac-light-theme .main-content-grid,
.medtac-light-theme #MainContent {
  background-color: #ffffff !important;
  color: #121212 !important;
}
.medtac-light-theme {
  color: #121212 !important;
}
.medtac-light-theme #ProductGridContainer,
.medtac-light-theme #product-grid,
.medtac-light-theme .product-grid-container {
  background-color: #ffffff !important;
}

/* === PDP: Base text dark on white === */
.medtac-light-theme .fudge-product-main-redesign,
.medtac-light-theme .fudge-mp-main {
  color: #121212 !important;
}

/* === PDP: Title === */
.medtac-light-theme .fudge-product-title,
.medtac-light-theme .fudge-mp-title {
  color: #121212 !important;
}

/* === PDP: Breadcrumbs === */
.medtac-light-theme .fudge-breadcrumb-link,
.medtac-light-theme .fudge-mp-breadcrumb-link {
  color: #9c8f61 !important;
}
.medtac-light-theme .fudge-breadcrumb-link:hover,
.medtac-light-theme .fudge-mp-breadcrumb-link:hover {
  color: #9c8f61 !important;
}
.medtac-light-theme .fudge-breadcrumb-current span,
.medtac-light-theme .fudge-mp-breadcrumb-current,
.medtac-light-theme .fudge-breadcrumb-sep,
.medtac-light-theme .fudge-mp-breadcrumb-sep {
  color: #666 !important;
}

/* === PDP: Review count === */
.medtac-light-theme .fudge-mp-review-count,
.medtac-light-theme .fudge-pdp-stars span[style*="color"] {
  color: #666 !important;
}

/* === PDP: Quick specs === */
.medtac-light-theme .fudge-mp-spec-item,
.medtac-light-theme .fudge-product-spec-item,
.medtac-light-theme .fudge-quick-info-label,
.medtac-light-theme .fudge-quick-info-value,
.medtac-light-theme .fudge-mp-quick-info-label,
.medtac-light-theme .fudge-mp-quick-info-value {
  color: #555 !important;
}
.medtac-light-theme .fudge-mp-spec-item strong,
.medtac-light-theme .fudge-product-spec-item strong,
.medtac-light-theme .fudge-product-quick-specs strong {
  color: #121212 !important;
}

/* === PDP: Trust badges === */
.medtac-light-theme .fudge-mp-trust-item,
.medtac-light-theme .fudge-unified-trust-bar .trust-text,
.medtac-light-theme .fudge-product-trust-item,
.medtac-light-theme .fudge-trust-text,
.medtac-light-theme .fudge-product-main-redesign .fudge-product-details .fudge-product-trust-item,
.medtac-light-theme .fudge-product-main-redesign .fudge-product-details .fudge-product-trust-text,
.medtac-light-theme .fudge-mp-main .fudge-mp-details .fudge-mp-trust-item {
  color: #555 !important;
}
.medtac-light-theme .fudge-mp-trust-item strong,
.medtac-light-theme .fudge-mp-trust-item:hover,
.medtac-light-theme .fudge-product-main-redesign .fudge-product-details .fudge-mp-trust-item strong,
.medtac-light-theme .fudge-mp-main .fudge-mp-details .fudge-mp-trust-item strong {
  color: #121212 !important;
}

/* === PDP: Price block === */
.medtac-light-theme .fudge-mp-msrp-label,
.medtac-light-theme .fudge-mp-price-prefix,
.medtac-light-theme .fudge-price-prefix-compact {
  color: #666 !important;
}
.medtac-light-theme .fudge-mp-current-price,
.medtac-light-theme .fudge-current-price {
  color: #cc1414 !important;
}
.medtac-light-theme .fudge-mp-compare-price,
.medtac-light-theme .fudge-compare-price-compact {
  color: #999 !important;
}
.medtac-light-theme .fudge-mp-price-regular .fudge-mp-current-price {
  color: #121212 !important;
}

/* === PDP: Variant labels === */
.medtac-light-theme .title-options,
.medtac-light-theme .fudge-variant-option-title,
.medtac-light-theme .fudge-mp-variant-label,
.medtac-light-theme .label-selected {
  color: #121212 !important;
}
.medtac-light-theme .fudge-swatch-label {
  color: #666 !important;
}

/* === PDP: Quantity input === */
.medtac-light-theme .fudge-mp-qty-input {
  color: #121212 !important;
  background: #fff !important;
  border-color: #ddd !important;
}

/* === PDP: Payment links === */
.medtac-light-theme .fudge-dynamic-payment,
.medtac-light-theme .fudge-payment-terms,
.medtac-light-theme .fudge-mp-dynamic-payment {
  color: #333 !important;
}
.medtac-light-theme .fudge-dynamic-payment a,
.medtac-light-theme .fudge-mp-dynamic-payment a,
.medtac-light-theme .shop-pay-section a {
  color: #9c8f61 !important;
}

/* === PDP: Quote button === */
.medtac-light-theme .fudge-quote-btn-container {
  color: #333 !important;
}

/* === PDP: Gallery nav (dark on white circle) === */
.medtac-light-theme .fudge-mp-gallery-prev,
.medtac-light-theme .fudge-mp-gallery-next,
.medtac-light-theme .fudge-gallery-prev,
.medtac-light-theme .fudge-gallery-next {
  color: #121212 !important;
}

/* === PDP: Borders & dividers === */
.medtac-light-theme .fudge-mp-unified-trust-bar,
.medtac-light-theme .fudge-mp-quick-specs,
.medtac-light-theme .fudge-product-quick-specs,
.medtac-light-theme .fudge-product-trust-bar,
.medtac-light-theme .fudge-unified-trust-bar {
  border-color: #eee !important;
  background: transparent !important;
}
.medtac-light-theme .fudge-mp-trust-divider,
.medtac-light-theme .fudge-mp-quick-info-divider,
.medtac-light-theme .fudge-mp-price-divider {
  background: #ddd !important;
}

/* === PDP: Strong tags === */
.medtac-light-theme .fudge-product-main-redesign strong,
.medtac-light-theme .fudge-product-main-redesign b,
.medtac-light-theme .fudge-mp-main strong,
.medtac-light-theme .fudge-mp-main b {
  color: #121212 !important;
}

/* === PDP: Cert badges === */
.medtac-light-theme .fudge-mp-cert-label {
  color: #9c8f61 !important;
  border-color: #9c8f61 !important;
  background: #fff !important;
}

/* === PDP: FAQ heading === */
.medtac-light-theme .medtac-faq-heading {
  color: #9c8f61 !important;
}

/* === PDP: Description CSS === */
.medtac-light-theme .tm-pdp-desc,
.medtac-light-theme .tm-pdp-desc p,
.medtac-light-theme .tm-pdp-desc li,
.medtac-light-theme .tm-pdp-desc td,
.medtac-light-theme .tm-pdp-desc th {
  color: #121212 !important;
}
.medtac-light-theme .tm-pdp-desc a {
  color: #9c8f61 !important;
}

/* === PDP: Related products === */
.medtac-light-theme .fudge-related-title {
  color: #121212 !important;
}
.medtac-light-theme .fudge-related-subtitle {
  color: #555 !important;
}

/* === Collection: Banner === */
.medtac-light-theme .collection-banner,
.medtac-light-theme .main-collection-banner {
  background: #ffffff !important;
}
.medtac-light-theme .collection-banner h1,
.medtac-light-theme .collection-banner h2,
.medtac-light-theme .main-collection-banner h1,
.medtac-light-theme .main-collection-banner h2,
.medtac-light-theme .collection-banner p,
.medtac-light-theme .main-collection-banner p {
  color: #121212 !important;
}
.medtac-light-theme .collection-banner a,
.medtac-light-theme .main-collection-banner a {
  color: #9c8f61 !important;
}

/* === Collection: Product card backgrounds (override dark theme #1A1F28) === */
.medtac-light-theme [id^="shopify-section"] .product-item,
.medtac-light-theme [id^="shopify-section"] .product-collection,
.medtac-light-theme .product-item,
.medtac-light-theme .product-collection {
  background-color: #ffffff !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 6px;
  overflow: hidden;
}
.medtac-light-theme [id^="shopify-section"] .product-collection__image,
.medtac-light-theme .product-collection__image {
  background-color: #ffffff !important;
}
.medtac-light-theme [id^="shopify-section"] .product-collection__content,
.medtac-light-theme .product-collection__content {
  background-color: #ffffff !important;
}
.medtac-light-theme [id^="shopify-section"] .product-collection__image .card__media,
.medtac-light-theme [id^="shopify-section"] .product-collection__image .media,
.medtac-light-theme [id^="shopify-section"] .card__media,
.medtac-light-theme [id^="shopify-section"] .media,
.medtac-light-theme .card__media,
.medtac-light-theme .media,
.medtac-light-theme .image_product {
  background-color: #ffffff !important;
}

/* === Findter Filter & Search app — hide injected widget that breaks product grid layout ===
   The Findter app embed injects <fdt-search-filters> inside #product-grid,
   which uses a 3-column CSS grid. The widget gets squished into one grid
   cell and corrupts the entire collection page layout. The store already
   uses native Shopify faceted filters, so this app is redundant. */
fdt-search-filters,
.search-filters__container,
.search-filters__container-collection {
  display: none !important;
}

/* === Collection: Filter sidebar background (override dark theme) === */
body.medtac-light-theme .facets-wrapper,
body.medtac-light-theme #main-collection-filters,
body.medtac-light-theme aside.facets-wrapper,
.medtac-light-theme .facets-vertical .facets-wrapper,
.medtac-light-theme .facets-vertical {
  background-color: #ffffff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 6px;
  padding: 16px !important;
}
.medtac-light-theme .facets__heading,
.medtac-light-theme .facets__details summary,
.medtac-light-theme .verticalTitle {
  color: #9c8f61 !important;
}
.medtac-light-theme .facets__details .facets__label,
.medtac-light-theme .facet-checkbox .name {
  color: #333 !important;
}

/* === Collection: Sort dropdown (override dark theme) === */
.medtac-light-theme .facets__sort select,
.medtac-light-theme #SortBy,
.medtac-light-theme select[name="sort_by"] {
  background-color: #ffffff !important;
  color: #333 !important;
  border: 1px solid #ddd !important;
  border-radius: 4px;
}

/* === Collection: Quick filter bar (override dark theme) === */
.medtac-light-theme [class^="mtf-quick-filters-"],
.medtac-light-theme .fudge-quick-filters-bar,
.medtac-light-theme .quick-filters-bar {
  background: #f8f8f8 !important;
  border-color: #e0e0e0 !important;
}
.medtac-light-theme [class^="mtf-quick-filters-"] *,
.medtac-light-theme .fudge-quick-filters-bar *,
.medtac-light-theme .quick-filters-bar * {
  color: #333 !important;
}
.medtac-light-theme [class^="mtf-quick-filters-"] .mtf-qf-btn {
  background: #fff !important;
  border: 1px solid #ddd !important;
  color: #333 !important;
}
.medtac-light-theme [class^="mtf-quick-filters-"] .mtf-qf-btn:hover,
.medtac-light-theme [class^="mtf-quick-filters-"] .mtf-qf-btn.active {
  background: #9c8f61 !important;
  border-color: #9c8f61 !important;
  color: #fff !important;
}
.medtac-light-theme [class^="mtf-quick-filters-"] .mtf-qf-clear {
  color: #9c8f61 !important;
  background: transparent !important;
  border: 1px solid #ccc !important;
}

/* === Collection: Active filter pills (gold accent) === */
.medtac-light-theme .active-facets .active-facets__button,
.medtac-light-theme .active-facets__button-wrapper {
  color: #fff !important;
  background: #9c8f61 !important;
  border-color: #9c8f61 !important;
}
.medtac-light-theme .active-facets__clear {
  color: #7a6e43 !important;
}

/* === Collection: Product cards text === */
.medtac-light-theme .product-collection__title h2 a,
.medtac-light-theme .product-collection__title h2,
.medtac-light-theme .card__heading a,
.medtac-light-theme .card__heading {
  color: #121212 !important;
}
.medtac-light-theme .product-collection__price .price,
.medtac-light-theme .price-item--sale,
.medtac-light-theme .price__sale .price-item {
  color: #cc1414 !important;
}
.medtac-light-theme .price__regular .price-item--regular,
.medtac-light-theme .price-item--regular {
  color: #121212 !important;
}
.medtac-light-theme .product-collection__vendor,
.medtac-light-theme .card__vendor {
  color: #666 !important;
}

/* === Collection: Filters === */
.medtac-light-theme .facets-vertical,
.medtac-light-theme .facets__display,
.medtac-light-theme .facets__wrapper,
.medtac-light-theme .facets__form,
.medtac-light-theme .facets-container,
.medtac-light-theme .facets__summary,
.medtac-light-theme .facets__summary:hover,
.medtac-light-theme .facets__disclosure[open] .facets__summary,
.medtac-light-theme .facets__disclosure-panel,
.medtac-light-theme .facets__display-vertical,
.medtac-light-theme .facets-wrap,
.medtac-light-theme .facets-wrap-vertical {
  background-color: #ffffff !important;
  color: #333 !important;
  border-color: #e0e0e0 !important;
}
.medtac-light-theme .facet-checkbox,
.medtac-light-theme input[type="checkbox"].facet-checkbox {
  background: #fff !important;
  border-color: #ccc !important;
  accent-color: #9c8f61;
}
.medtac-light-theme .facets__heading,
.medtac-light-theme .facets__details summary,
.medtac-light-theme .verticalTitle {
  color: #9c8f61 !important;
}
.medtac-light-theme .facets__details .facets__label,
.medtac-light-theme .facet-checkbox .name,
.medtac-light-theme .verticalFilter .facet-checkbox span,
.medtac-light-theme .verticalFilter .facet-checkbox__text,
.medtac-light-theme .verticalFilter .facet-checkbox__count,
.medtac-light-theme .facets__display label,
.medtac-light-theme .facets__display label span,
.medtac-light-theme .facet-filters__label,
.medtac-light-theme .facets__label,
.medtac-light-theme .facets__summary,
.medtac-light-theme .facets__count,
body.medtac-light-theme .facet-checkbox .name,
body.medtac-light-theme .facet-checkbox span,
body.medtac-light-theme .facets__item .facet-checkbox .name,
body.medtac-light-theme .facets__list .facet-checkbox .name,
body.medtac-light-theme .facets-wrap .facet-checkbox .name,
body.medtac-light-theme .facets__display-vertical .facet-checkbox .name,
body.medtac-light-theme .facets__display-vertical label span,
body.medtac-light-theme .facets__display-vertical label .name,
body.medtac-light-theme .parent-display label span,
body.medtac-light-theme .parent-display .facet-checkbox .name,
body.medtac-light-theme .facets-container .facet-checkbox .name,
body.medtac-light-theme .facets-container label span,
body.medtac-light-theme #main-collection-filters .facet-checkbox .name,
body.medtac-light-theme #main-collection-filters label span {
  color: #333 !important;
}
/* Filter section titles: gold accent */
body.medtac-light-theme .facets__details summary,
body.medtac-light-theme .facets__summary span,
body.medtac-light-theme .facets__summary > div > span:first-child,
body.medtac-light-theme .facets__heading,
body.medtac-light-theme .verticalTitle {
  color: #9c8f61 !important;
}
/* Product count text: dark on light */
body.medtac-light-theme .product-count__text,
body.medtac-light-theme .product-count__text span,
body.medtac-light-theme .product-count-vertical .product-count__text,
body.medtac-light-theme #ProductCountDesktop,
.medtac-light-theme .product-count__text,
.medtac-light-theme .product-count__text span {
  color: #333 !important;
}
/* Sort/count bar background: light */
.medtac-light-theme .facets-vertical-sort,
.medtac-light-theme .facets-vertical-form,
.medtac-light-theme .product-count-vertical,
.medtac-light-theme .collection-product-count {
  background: transparent !important;
  color: #333 !important;
}
/* Active filter pills: gold accent */
.medtac-light-theme .active-facets .active-facets__button,
.medtac-light-theme .active-facets__button-wrapper,
.medtac-light-theme .active-facets facet-remove a,
.medtac-light-theme .active-facets__button-wrapper button {
  color: #fff !important;
  background: #9c8f61 !important;
  border-color: #9c8f61 !important;
}
/* Facet checkbox borders: light */
.medtac-light-theme .facet-checkbox .square {
  background: #fff !important;
  border-color: #ccc !important;
}
.medtac-light-theme .facet-checkbox input:checked + .square {
  background: #9c8f61 !important;
  border-color: #9c8f61 !important;
}
.medtac-light-theme .facets-vertical-sort,
.medtac-light-theme .select__select,
.medtac-light-theme .facets__sort {
  color: #333 !important;
  background: #ffffff !important;
}
.medtac-light-theme .active-facets .active-facets__button,
.medtac-light-theme .active-facets__button-wrapper {
  color: #333 !important;
  background: #f0f0f0 !important;
}

/* === Collection: Mobile facets === */
.medtac-light-theme .mobile-facets__header,
.medtac-light-theme .mobile-facets__header-inner {
  background-color: #ffffff !important;
  color: #121212 !important;
  border-bottom: 1px solid #e0e0e0 !important;
}
.medtac-light-theme .mobile-facets__close-button,
.medtac-light-theme .mobile-facets__label span,
.medtac-light-theme .mobile-facets__subheading {
  color: #121212 !important;
}
.medtac-light-theme .mobile-facets .mobile-facets__checkbox + label {
  color: #333 !important;
}

/* === Collection: Pagination === */
.medtac-light-theme .pagination__item,
.medtac-light-theme .pagination__link {
  color: #333 !important;
}
.medtac-light-theme .pagination__item--current {
  color: #121212 !important;
}

/* === Collection: Trust bar === */
.medtac-light-theme .medtac-trust-strip,
.medtac-light-theme .medtac-compact-trust {
  background: #f8f8f8 !important;
}
.medtac-light-theme .medtac-trust-strip *,
.medtac-light-theme .medtac-compact-trust * {
  color: #333 !important;
}

/* === Collection: Tables === */
.medtac-light-theme table {
  background: #ffffff !important;
}
.medtac-light-theme thead {
  background: #f5f5f5 !important;
}
.medtac-light-theme th {
  color: #121212 !important;
}
.medtac-light-theme td {
  color: #333 !important;
}

/* Review section: dark text inside light review cards */
.tr-reviews-section,
.tr-reviews-section *,
.tr_review_card,
.tr_review_card * {
  color: #121212 !important;
}
.tr_review_card .tr_review_date {
  color: #565959 !important;
}

/* === Master PDP (11 key products) === */
/* Override any remaining #121212 in details area */
.fudge-mp-main .fudge-mp-details [style*="color:#121212"],
.fudge-mp-main .fudge-mp-details [style*="color: #121212"] {
  color: #e0e0e0 !important;
}
/* Price block: dark text on light background */
.fudge-mp-price-block {
  color: #121212 !important;
}
/* Gallery nav buttons: dark text on white circle bg */
.fudge-mp-gallery-prev,
.fudge-mp-gallery-next {
  color: #121212 !important;
}
/* Quantity input on dark bg: light text */
.fudge-mp-qty-input {
  color: #e0e0e0 !important;
  background: #1a1f28 !important;
  border-color: #2a3340 !important;
}
/* Trust bar borders: dark theme */
.fudge-mp-unified-trust-bar {
  border-top-color: #2a3340 !important;
  border-bottom-color: #2a3340 !important;
}
/* Quick specs border: dark theme */
.fudge-mp-quick-specs {
  border-bottom-color: #2a3340 !important;
}
/* Trust divider: dark theme */
.fudge-mp-trust-divider,
.fudge-mp-quick-info-divider {
  background: #2a3340 !important;
}
/* Price divider: dark theme */
.fudge-mp-price-divider {
  background: #444 !important;
}

/* === Both PDP templates: Light-background containers === */
/* Tab headers: dark text on light background */
.fudge-accordion-header .fudge-accordion-title {
  color: #121212 !important;
}
/* Ensure dark text inside tab content (target text elements, not styled headings) */
.fudge-tab-content p,
.fudge-tab-content li,
.fudge-tab-content td,
.fudge-tab-content th,
.fudge-tab-content ul,
.fudge-tab-content ol,
.fudge-accordion-body p,
.fudge-accordion-body li,
.fudge-accordion-body td,
.fudge-accordion-body th,
.fudge-accordion-body ul,
.fudge-accordion-body ol,
.medtac-faq-q-text,
.medtac-faq-answer,
.medtac-faq-answer *,
.medtac-faq-answer-inner,
.medtac-faq-answer-inner * {
  color: #121212 !important;
}
/* Exception: elements with dark backgrounds inside tab content get light text */
.fudge-accordion-body [style*="background:#12"],
.fudge-accordion-body [style*="background: #12"],
.fudge-accordion-body [style*="background:#0f"],
.fudge-accordion-body [style*="background: #0f"],
.fudge-accordion-body [style*="background:#23"],
.fudge-accordion-body [style*="background: #23"],
.fudge-accordion-body [style*="background:#1a"],
.fudge-accordion-body [style*="background: #1a"],
.fudge-accordion-body [style*="background-color:#12"],
.fudge-accordion-body [style*="background-color:#23"],
.fudge-accordion-body [style*="background-color:#1a"],
.fudge-accordion-body [style*="background-color: #12"],
.fudge-accordion-body [style*="background-color:#0f"],
.fudge-accordion-body [style*="background-color: #0f"] {
  color: #e0e0e0 !important;
}
.fudge-accordion-body [style*="background:#12"] *,
.fudge-accordion-body [style*="background: #12"] *,
.fudge-accordion-body [style*="background:#0f"] *,
.fudge-accordion-body [style*="background: #0f"] *,
.fudge-accordion-body [style*="background:#23"] *,
.fudge-accordion-body [style*="background: #23"] *,
.fudge-accordion-body [style*="background:#1a"] *,
.fudge-accordion-body [style*="background: #1a"] *,
.fudge-accordion-body [style*="background-color:#12"] *,
.fudge-accordion-body [style*="background-color:#23"] *,
.fudge-accordion-body [style*="background-color:#1a"] *,
.fudge-accordion-body [style*="background-color: #12"] *,
.fudge-accordion-body [style*="background-color:#0f"] *,
.fudge-accordion-body [style*="background-color: #0f"] * {
  color: #e0e0e0 !important;
}
/* But keep links gold inside light containers */
.fudge-tab-content a,
.fudge-accordion-body a,
.medtac-faq-item a {
  color: #9c8f61 !important;
}

/* Quick specs / quick info bar: dark text inside light containers */
.fudge-product-main-redesign .fudge-quick-info-label,
.fudge-product-main-redesign .fudge-quick-info-value,
.fudge-product-main-redesign .fudge-product-details .fudge-quick-info-label,
.fudge-product-main-redesign .fudge-product-details .fudge-quick-info-value {
  color: #333 !important;
}
/* Variant labels: dark text inside light containers */
.fudge-product-main-redesign .fudge-variant-option-title,
.fudge-product-main-redesign .label-selected,
.fudge-product-main-redesign .title-options {
  color: #121212 !important;
}
.fudge-product-main-redesign .fudge-swatch-label {
  color: #666 !important;
}

/* === Related Products (Essential Add-Ons) === */
/* Cards have white background - ensure dark text on textual content */
.fudge-related-card {
  color: #121212 !important;
}
.fudge-related-card .fudge-related-info {
  color: #121212 !important;
}
.fudge-related-card .fudge-related-current {
  color: #b12704 !important;
}
.fudge-related-card .fudge-related-compare {
  color: #565959 !important;
}
.fudge-related-card .fudge-related-name {
  color: #0f1111 !important;
}
.fudge-related-card .fudge-related-add-on-tag {
  color: #fff !important;
  background: #9c8f61 !important;
}
.fudge-related-card .fudge-related-name:hover,
.fudge-related-card:hover .fudge-related-name {
  color: #c7511f !important;
}
.fudge-related-title {
  color: #121212 !important;
}
.fudge-related-subtitle {
  color: #565959 !important;
}

/* CTA buttons: Ensure high-contrast white text is never blacked out */
.fudge-related-card .fudge-related-quick-add,
.fudge-related-card .fudge-related-quick-add *,
.fudge-related-card .fudge-related-add-text {
  color: #ffffff !important;
}
.fudge-related-card .fudge-related-quick-add:hover:not(:disabled),
.fudge-related-card .fudge-related-quick-add:hover:not(:disabled) * {
  color: #ffffff !important;
}

/* ── Gold accent: WCAG-safe text overrides (#7a6e43 for small text/links on white) ── */
.breadcrumbs a,
.breadcrum a,
.medtac-light-theme .fudge-breadcrumb-link,
.medtac-light-theme .fudge-mp-breadcrumb-link,
.medtac-light-theme .shop-pay-section a,
.medtac-light-theme .fudge-dynamic-payment a,
.medtac-light-theme .fudge-mp-dynamic-payment a,
.medtac-light-theme .tm-pdp-desc a,
.medtac-light-theme .collection-banner a,
.medtac-light-theme .main-collection-banner a,
.medtac-light-theme [class^="mtf-quick-filters-"] .mtf-qf-clear {
  color: #7a6e43 !important;
}
/* Light theme: breadcrumb background neutral, not blue-tinted */
.medtac-light-theme .breadcrumbs,
.medtac-light-theme .breadcrum,
.medtac-light-theme .wrap-breadcrum {
  background: #f5f5f5 !important;
}
/* Light theme: search app filter headings gold */
.medtac-light-theme .search-filters__filter-option-title,
.medtac-light-theme .search-filters__filter-tree-header,
.medtac-light-theme .search-filters__filter-group-title,
.medtac-light-theme .search-filters__header,
.medtac-light-theme .snize-filter-title,
.medtac-light-theme .snize-header {
  color: #9c8f61 !important;
}
/* Light theme: search app active filter pills gold */
.medtac-light-theme .search-filters__filter-active-tag-item,
.medtac-light-theme .search-filters__filter-active-tag-item-content {
  background: #9c8f61 !important;
  color: #fff !important;
  border-color: #9c8f61 !important;
}
/* Light theme: search app clear button dark gold */
.medtac-light-theme .search-filters__filter-clear-all,
.medtac-light-theme .active-facets__clear,
.medtac-light-theme .search-filters__clear-all {
  color: #7a6e43 !important;
}

/* ── CRO: Mobile Homepage — Move Best Sellers above Shop by Profession ── */
@media (max-width: 768px) {
  #MainContent {
    display: flex !important;
    flex-direction: column !important;
  }
  /* Push Shop by Profession to the end so Best Sellers appears earlier */
  [id$="__fudge-y6fnr-shop-by-profession"] {
    order: 99 !important;
  }
}

/* ===========================================
   COLLECTION PAGE: Button element resets for converted js:void(0) links
   Grid view toggle buttons + filter toggle buttons
   =========================================== */

/* Reset button defaults to match original link styling */
.main-content-grid .js_categories_content .top-control .control-button button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font: inherit;
  color: inherit;
  display: block;
  height: 20px;
  text-align: center;
  position: relative;
  outline: none;
}
.main-content-grid .js_categories_content .top-control .control-button button.grid-2-button {
  -webkit-mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/2.svg?v=143389307596922508101785799861) no-repeat center center;
  mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/2.svg?v=143389307596922508101785799861) no-repeat center center;
  width: 16px;
  height: 16px;
  background-color: #cfcfcf;
}
.main-content-grid .js_categories_content .top-control .control-button button.grid-3-button {
  -webkit-mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/3.svg?v=173635967749590580841785799861) no-repeat center center;
  mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/3.svg?v=173635967749590580841785799861) no-repeat center center;
  width: 16px;
  height: 16px;
  background-color: #cfcfcf;
}
.main-content-grid .js_categories_content .top-control .control-button button.grid-4-button {
  -webkit-mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/4.svg?v=178121001002921185021785799861) no-repeat center center;
  mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/4.svg?v=178121001002921185021785799861) no-repeat center center;
  width: 22px;
  height: 16px;
  background-color: #cfcfcf;
}
.main-content-grid .js_categories_content .top-control .control-button button.grid-5-button {
  -webkit-mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/5.svg?v=168966358864830386621785799861) no-repeat center center;
  mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/5.svg?v=168966358864830386621785799861) no-repeat center center;
  width: 28px;
  height: 16px;
  background-color: #cfcfcf;
}
.main-content-grid .js_categories_content .top-control .control-button button.list-button {
  -webkit-mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/list.svg?v=134761948121339074341785799861) no-repeat center center;
  mask: url(//tactical-medicine.com/cdn/shop/t/1082/assets/list.svg?v=134761948121339074341785799861) no-repeat center center;
  width: 20px;
  height: 16px;
  background-color: #cfcfcf;
}
.main-content-grid .js_categories_content .top-control .control-button button.active {
  background-color: var(--color-main);
}
.main-content-grid .js_categories_content .top-control .control-button button svg {
  display: none;
}

/* Filter toggle button reset */
.filter-title button.filter-toggle-btn,
button.js-mobile-sidebar.mobile-sidebar-btn {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font: inherit;
  color: inherit;
  outline: none;
}
button.js-mobile-sidebar.mobile-sidebar-btn {
  display: inline-flex;
  align-items: center;
}
.filter-title button.filter-toggle-btn {
  display: inline-flex;
  align-items: center;
}

/* ===========================================
   FIELD RECORD — Reusable section header
   Numbered, eyebrow + rule line + title pattern
   =========================================== */
.fr-sechead{display:grid;gap:1.25rem;margin-bottom:3.5rem}
.fr-sechead__meta{display:flex;align-items:baseline;gap:1rem;
  border-bottom:1px solid rgba(18,18,18,.14);padding-bottom:.75rem}
.fr-sechead__meta--dark{border-color:rgba(245,245,245,.16)}
.fr-sechead__idx{font-family:'IBM Plex Mono',monospace;font-size:.8125rem;color:#9C8F61;font-weight:500}
.fr-sechead__eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:.75rem;
  letter-spacing:.18em;text-transform:uppercase;color:#5E573D}
.fr-sechead__eyebrow--dark{color:#8F8C83}
.fr-sechead__spacer{flex:1}
.fr-sechead__data{font-family:'IBM Plex Mono',monospace;font-size:.6875rem;color:#8F8C83;letter-spacing:.02em}
.fr-sechead__title{font-family:'Chakra Petch',sans-serif;font-weight:700;text-transform:uppercase;
  line-height:1.08;letter-spacing:-.015em;font-size:clamp(1.75rem,3.2vw,2.75rem);margin:0}
.fr-sechead__lede{font-size:1.0625rem;max-width:56ch;color:#5E573D;margin:0;line-height:1.6}
.fr-sechead__lede--dark{color:#8F8C83}
@media(max-width:768px){
  .fr-sechead{margin-bottom:2.5rem}
  .fr-sechead__title{font-size:clamp(1.5rem,5vw,2rem)}
  .fr-sechead__lede{font-size:.9375rem}
  .fr-sechead__meta{gap:.75rem;flex-wrap:wrap}
  .fr-sechead__data{font-size:.625rem}
}

/* ===========================================
   PHASE 2: DESKTOP HEADER VERTICAL COMPRESSION
   Targets ~140-150px total height on desktop
   =========================================== */
@media (min-width: 1025px) {
  #shopify-section-top-header {
    display: none !important;
  }
  .medtac-credential-bar {
    padding: 3px 0 !important;
    font-size: 10px !important;
    letter-spacing: 1.2px !important;
    line-height: 16px !important;
  }
  .header-main-wrap {
    padding: 2px 0 !important;
  }
  .fudge-announcement-strip {
    padding: 3px 20px !important;
    font-size: 11px !important;
    line-height: 18px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  /* At initial page load (top of page), the top utility bar already displays shipping and promotions.
     Hide the duplicate announcement strip when header is not sticky; display only when sticky. */
  .header:not(.sticky) .fudge-announcement-strip {
    display: none !important;
  }
  .header.sticky .fudge-announcement-strip {
    display: flex !important;
  }
  .header.header-2-lines .header-top .container > .row {
    height: auto !important;
    min-height: 52px !important;
    align-items: center !important;
  }
  .header-top {
    height: auto !important;
    min-height: 52px !important;
    padding: 0 !important;
  }
  .header-logo .logo-wrapper img,
  .site-header__logo-image img {
    max-height: 46px !important;
    width: auto !important;
    object-fit: contain !important;
  }
  .header-top-meta .header-control {
    height: 46px !important;
    align-items: center !important;
  }
  .header-inline-search {
    padding: 0 16px !important;
  }
  .header-inline-search .header-search-wrapper {
    height: 36px !important;
    min-height: 36px !important;
  }
}

/* ============================================================
   MILITARY & SPECIAL OPERATIONS HUB — CONTRAST & TACTICAL PALETTE
   ============================================================ */
.fudge-03TYm-military-hero h1,
.fudge-03TYm-military-hero h1 span,
.fudge-03TYm-military-hero h2,
.fudge-03TYm-military-hero h3,
.fudge-03TYm-military-hero strong,
.fudge-03TYm-military-hero p strong,
.fudge-milrt-section h2,
.fudge-milrt-section strong,
.fudge-milrt-section p strong,
.fudge-03TYm-final-cta [style*="background: #121418"] h3,
.fudge-03TYm-final-cta [style*="background: #121418"] p,
.fudge-03TYm-final-cta [style*="background: #121418"] strong,
.fudge-mil-spotlight h2,
.fudge-mil-spotlight h3,
.fudge-mil-spotlight strong {
  color: #ffffff !important;
}

.fudge-03TYm-military-hero .fudge-03TYm-military-hero__headline-sub {
  color: #8FA584 !important;
}

.fudge-03TYm-military-hero .fudge-03TYm-military-hero__eyebrow {
  color: #A4AC86 !important;
}

.fudge-03TYm-military-hero .fudge-03TYm-military-hero__subheading {
  color: #E5E7EB !important;
}

.fudge-03TYm-military-hero strong {
  color: #A4AC86 !important;
}

.fudge-milrt-section .fudge-milrt-eyebrow {
  color: #A4AC86 !important;
}

.fudge-milrt-section .fudge-milrt-subtext {
  color: #E5E7EB !important;
}

/* ========================================
   AGENCY SPEC SHEET: Professional Print Styles
   ======================================== */
@media print {
  /* Suppress storefront navigation, footers, and interactive overlays */
  #shopify-section-header1,
  #fudge-mobile-header,
  .fudge-mobile-drawer,
  #shopify-section-footer_1,
  footer,
  .fudge-mp-sticky-bar,
  .fudge-sticky-atc-bar,
  .rp-widget-container,
  #privy-container,
  .klaviyo-form,
  .dialog-overlay,
  .fudge-mp-spec-download-btn,
  .fudge-pdp-spec-download-btn,
  .fudge-manifest-print-btn,
  .fudge-mp-manifest-link,
  .fudge-pdp-manifest-link,
  .fudge-mp-manifest-sep,
  .fudge-pdp-manifest-sep,
  .fudge-reviews-summary,
  .fudge-accordion-toggle {
    display: none !important;
  }

  body {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 11pt !important;
  }

  /* Kit Contents Tab Print Layout */
  .fudge-tab-kit-contents {
    display: block !important;
    page-break-inside: auto;
  }

  .fudge-accordion-content {
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
  }

  .fudge-manifest-banner {
    border: 1px solid #000000 !important;
    background: #fdfdfd !important;
    padding: 12px !important;
    margin-bottom: 15px !important;
    page-break-inside: avoid;
  }

  .fudge-manifest-badge {
    background: #000000 !important;
    color: #ffffff !important;
  }

  details.fudge-manifest-module {
    display: block !important;
    margin-bottom: 12px !important;
    page-break-inside: avoid;
  }

  summary.fudge-manifest-module-summary {
    list-style: none !important;
    font-weight: bold !important;
    border-bottom: 1px solid #000000 !important;
    padding-bottom: 4px !important;
  }

  .fudge-manifest-list li {
    page-break-inside: avoid;
  }
}

/* Firearms Instructor & Range Safety Hub contrast hardening */
.fudge-fi-hero strong,
.fudge-fi-eap-bridge strong,
.fudge-fi-ladder strong:not(.fudge-fi-ladder__card strong),
.fudge-fi-offer strong,
.fudge-fi-hardware strong:not(.fudge-fi-hardware__card strong),
.fudge-fi-procure strong,
.fudge-fi-faq strong {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

.fudge-fi-eap-bridge__pillar strong,
.fudge-fi-hero__protocol-desc strong,
.fudge-fi-hero__card-footer-text strong,
.fudge-fi-ladder__clinical-callout strong,
.fudge-fi-offer__guide-item strong,
.fudge-fi-procure__meta-list strong,
.fudge-fi-faq__content strong {
  color: #9C8F61 !important;
  font-weight: 700 !important;
}

/* Blog Article Dark Cards & High-Alert Modules Contrast Hardening */
.main-content-blog .medtac-dark-card,
.main-content-blog .medtac-dark-card * {
  box-sizing: border-box;
}

.main-content-blog .medtac-dark-card strong,
.main-content-blog .medtac-article-hero strong {
  color: #ffffff !important;
  font-weight: 700 !important;
}



