:root {
  --mws-transparent: transparent;
  --mws-color-bg: #ffffff;
  --mws-color-surface: #f7f7f7;
  --mws-color-text: #111111;
  --mws-color-secondary-text: #666666;
  --mws-color-muted: var(--mws-color-secondary-text);
  --mws-color-heading: #111111;
  --mws-color-border: #e5e5e5;
  --mws-color-link: #111111;
  --mws-color-link-hover: #333333;
  --mws-color-focus: #111111;
  --mws-color-primary: var(--mws-color-link);
  --mws-color-primary-hover: var(--mws-color-link-hover);
  --mws-color-primary-contrast: #ffffff;
  --mws-color-bg-inverse: #111111;
  --mws-color-on-dark: #ffffff;
  --mws-color-on-dark-muted: color-mix(in srgb, var(--mws-color-on-dark) 86%, transparent);
  --mws-color-on-dark-subtle: color-mix(in srgb, var(--mws-color-on-dark) 72%, transparent);
  --mws-color-text-inverse: var(--mws-color-on-dark);
  --mws-color-on-media: var(--mws-color-on-dark);
  --mws-color-on-media-muted: var(--mws-color-on-dark-muted);
  --mws-color-on-media-subtle: var(--mws-color-on-dark-subtle);
  --mws-color-on-media-eyebrow: var(--mws-color-on-media-muted);

  --mws-color-price: var(--mws-color-primary);
  --mws-color-sale-price: #a85a05;
  --mws-color-sale: #a85a05;
  --mws-color-sale-text: #ffffff;
  --mws-color-sold-out: #5f6368;
  --mws-color-sold-out-text: #ffffff;
  --mws-color-cart-badge-bg: var(--mws-color-primary);
  --mws-color-cart-badge-text: var(--mws-color-primary-contrast);
  --mws-color-success: #16a34a;
  --mws-color-error: #dc2626;
  --mws-notice-bg: #ffffff;
  --mws-notice-text: var(--mws-color-text);
  --mws-notice-border: var(--mws-color-border);
  --mws-notice-border-width: 1px;
  --mws-notice-icon: var(--mws-color-success);
  --mws-notice-radius: var(--mws-radius-md);
  --mws-product-tab-text: var(--mws-color-text);
  --mws-product-tab-active: var(--mws-color-link);
  --mws-product-tab-border: var(--mws-color-border);
  --mws-product-tab-label-size: 15px;
  --mws-product-details-radius: var(--mws-radius-lg);
  --mws-product-details-label: var(--mws-color-text);
  --mws-product-details-value: var(--mws-color-secondary-text);
  --mws-product-details-text-size: 15px;
  --mws-notice-link: var(--mws-color-link);
  --mws-notice-link-hover: var(--mws-color-link-hover);
  --mws-notice-action-button-radius: 10px;
  --mws-notice-action-button-padding-y: 12px;
  --mws-notice-action-button-padding-x: calc(var(--mws-notice-action-button-padding-y) * 1.7);
  --mws-notice-action-button-border-width: 0px;
  --mws-notice-action-button-bg: var(--mws-button-bg);
  --mws-notice-action-button-text: var(--mws-button-text);
  --mws-notice-action-button-border: var(--mws-button-border);
  --mws-notice-action-button-hover-bg: var(--mws-button-bg-hover);
  --mws-notice-action-button-hover-text: var(--mws-button-text-hover);
  --mws-notice-action-button-hover-border: var(--mws-button-border-hover-rendered);
  --mws-notice-close-size: 28px;
  --mws-notice-close-radius: 999px;
  --mws-notice-close-border-width: 0px;
  --mws-notice-close-bg: transparent;
  --mws-notice-close-color: var(--mws-notice-text);
  --mws-notice-close-border: transparent;
  --mws-notice-close-hover-bg: color-mix(in srgb, var(--mws-notice-text) 10%, transparent);
  --mws-notice-close-hover-color: var(--mws-notice-link-hover);
  --mws-notice-close-hover-border: var(--mws-notice-close-border);
  --mws-notice-padding: 18px;
  --mws-mobile-menu-padding: 28px;
  --mws-mobile-menu-toggle-base-color: var(--mws-color-primary);
  --mws-mobile-menu-toggle-color: var(--mws-mobile-menu-toggle-base-color);
  --mws-mobile-menu-toggle-hover-color: var(--mws-mobile-menu-toggle-color);
  --mws-mobile-menu-toggle-focus-color: var(--mws-mobile-menu-toggle-hover-color);
  --mws-mobile-menu-toggle-size: 20px;
  --mws-mobile-menu-toggle-touch-size: 42px;
  --mws-mobile-menu-close-bg: var(--mws-color-primary);
  --mws-mobile-menu-close-color: var(--mws-button-text);
  --mws-mobile-menu-close-size: 44px;
  --mws-mobile-menu-close-radius: 8px;
  --mws-mobile-menu-close-border-width: 0px;
  --mws-mobile-menu-close-border: transparent;
  --mws-mobile-menu-close-hover-bg: var(--mws-mobile-menu-close-bg);
  --mws-mobile-menu-close-hover-color: var(--mws-mobile-menu-close-color);
  --mws-mobile-menu-close-hover-border: var(--mws-mobile-menu-close-border);
  --mws-mobile-menu-link: var(--mws-color-link);
  --mws-mobile-menu-link-hover: var(--mws-color-link-hover);
  --mws-mobile-menu-link-active: var(--mws-mobile-menu-link-hover);
  --mws-mobile-menu-primary-link: var(--mws-mobile-menu-link);
  --mws-mobile-menu-primary-hover: var(--mws-mobile-menu-link-hover);
  --mws-mobile-menu-primary-active: var(--mws-mobile-menu-link-active);
  --mws-input-border: var(--mws-color-border);
  --mws-input-focus: var(--mws-color-focus);
  --mws-variation-dropdown-height: 48px;
  --mws-variation-dropdown-radius: var(--mws-form-control-radius, var(--mws-radius-sm));
  --mws-variation-dropdown-border-width: 1px;
  --mws-variation-dropdown-text-size: 16px;
  --mws-variation-dropdown-bg: var(--mws-color-bg);
  --mws-variation-dropdown-text: var(--mws-color-text);
  --mws-variation-dropdown-border: var(--mws-input-border);
  --mws-variation-dropdown-focus-border: var(--mws-input-focus);
  --mws-variation-option-focus-border: var(--mws-color-focus);
  --mws-variation-quantity-focus-border: var(--mws-input-focus);
  --mws-product-card-bg: #ffffff;
  --mws-product-card-border: var(--mws-color-border);
  --mws-product-card-border-width: 1px;
  --mws-product-card-title: var(--mws-color-text);
  --mws-product-card-price: var(--mws-color-price);
  --mws-product-card-text: var(--mws-color-text);
  --mws-product-card-title-size: 16px;
  --mws-product-card-price-size: 16px;
  --mws-product-card-button-font-size: 14px;
  --mws-product-card-button-bg: var(--mws-button-bg);
  --mws-product-card-button-hover-bg: var(--mws-button-bg-hover);
  --mws-product-card-button-text: var(--mws-button-text);
  --mws-product-card-button-hover-text: var(--mws-button-text-hover);
  --mws-product-card-button-border: var(--mws-button-border-rendered);
  --mws-product-card-button-hover-border: var(--mws-button-border-hover-rendered);
  --mws-product-card-button-border-width: var(--mws-button-border-width);
  --mws-product-card-button-align: stretch;
  --mws-product-card-button-width: 100%;
  --mws-product-card-quantity-width: 74px;
  --mws-product-card-quantity-height: 52px;
  --mws-product-card-quantity-radius: var(--mws-form-control-radius, var(--mws-radius-sm));
  --mws-product-card-quantity-text-size: 16px;
  --mws-product-card-quantity-button-gap: 10px;
  --mws-product-card-quantity-align: center;
  --mws-product-card-align: left;
  --mws-product-card-radius: var(--mws-radius-lg);
  --mws-product-card-image-radius: var(--mws-radius-md);
  --mws-product-card-image-bg: var(--mws-product-card-bg);
  --mws-product-card-shadow: 0 10px 26px -18px #000000;
  --mws-product-card-hover-lift: -2px;
  --mws-product-card-hover-transition: 180ms;
  --mws-product-card-image-hover-scale: 1;
  --mws-product-card-overlay-color: #000000;
  --mws-product-card-overlay-opacity: 0;
  --mws-product-image-radius: var(--mws-radius-md);
  --mws-product-image-hover-scale: 1;
  --mws-single-product-top-bg: transparent;
  --mws-single-product-top-radius: 0px;
  --mws-single-product-top-padding: 0px;
  --mws-single-product-top-gap: 64px;
  --mws-single-product-summary-bg: transparent;
  --mws-single-product-summary-radius: var(--mws-radius-lg);
  --mws-single-product-summary-padding: 0px;
  --mws-single-product-title: var(--mws-color-heading);
  --mws-single-product-title-max-width: min(100%, 22ch);
  --mws-single-product-description: var(--mws-color-text);
  --mws-single-product-meta: var(--mws-color-secondary-text);
  --mws-single-product-link: var(--mws-color-link);
  --mws-single-product-link-hover: var(--mws-color-link-hover);
  --mws-single-product-tag-link: var(--mws-single-product-link);
  --mws-single-product-tag-link-hover: var(--mws-single-product-link-hover);
  --mws-single-product-description-size: 16px;
  --mws-single-product-meta-size: 14px;
  --mws-single-product-meta-display: block;
  --mws-product-image-bg: transparent;
  --mws-product-card-image-ratio: 1 / 1;
  --mws-product-card-image-fit: contain;
  --mws-product-image-fit: var(--mws-product-card-image-fit);
  --mws-logo-size-px: 230px;
  --mws-mobile-logo-size-px: 146px;
  --mws-logo-size: var(--mws-logo-size-px);
  --mws-mobile-logo-size: var(--mws-mobile-logo-size-px);
  --mws-logo-width: var(--mws-logo-size);
  --mws-mobile-logo-width: var(--mws-mobile-logo-size);
  --mws-mobile-logo-gap: 12px;
  --mws-logo-max-height: none;
  --mws-header-bg: #ffffff;
  --mws-header-text: var(--mws-color-text);
  --mws-header-link: var(--mws-color-text);
  --mws-header-link-hover: var(--mws-color-link-hover);
  --mws-header-link-active: var(--mws-header-link-hover);
  --mws-header-border: var(--mws-color-border);
  --mws-header-icon: var(--mws-color-text);
  --mws-header-icon-hover: var(--mws-header-link-hover);
  --mws-transparent-header-text: #ffffff;
  --mws-transparent-header-link: #ffffff;
  --mws-transparent-header-link-hover: #ffffff;
  --mws-transparent-header-link-active: #ffffff;
  --mws-transparent-header-icon: #ffffff;
  --mws-transparent-header-icon-hover: #ffffff;

  --mws-theme-secondary-bar-bg: var(--mws-color-surface);
  --mws-theme-secondary-menu-text: var(--mws-color-text);
  --mws-theme-secondary-menu-hover: var(--mws-color-link-hover);
  --mws-theme-secondary-bar-border: var(--mws-color-border);
  --mws-secondary-bar-bg: var(--mws-theme-secondary-bar-bg);
  --mws-secondary-menu-text: var(--mws-theme-secondary-menu-text);
  --mws-secondary-menu-hover: var(--mws-theme-secondary-menu-hover);
  --mws-secondary-menu-active: var(--mws-theme-secondary-menu-hover);
  --mws-secondary-bar-border: var(--mws-theme-secondary-bar-border);
  --mws-secondary-menu-hero-text: var(--mws-transparent-header-link);
  --mws-secondary-menu-hero-hover: var(--mws-transparent-header-link-hover);
  --mws-secondary-menu-hero-active: var(--mws-transparent-header-link-active);
  --mws-secondary-bar-border-width: 0px;
  --mws-secondary-bar-height: 34px;
  --mws-secondary-menu-font: var(--mws-font-menu);
  --mws-secondary-menu-font-size: 14px;
  --mws-secondary-menu-font-weight: 400;
  --mws-secondary-menu-text-transform: none;
  --mws-secondary-menu-link-spacing: 20px;
  --mws-secondary-menu-hover-decoration: underline;

  --mws-footer-bg: var(--mws-color-surface);
  --mws-footer-text: var(--mws-color-secondary-text);
  --mws-footer-link: var(--mws-color-link);
  --mws-footer-link-hover: var(--mws-color-link-hover);
  --mws-footer-border: var(--mws-color-border);
  --mws-footer-padding-block: 44px;
  --mws-footer-padding-inline: 24px;
  --mws-footer-font-size: 15px;
  --mws-footer-widget-title-size: 16px;
  --mws-footer-link-size: 15px;
  --mws-footer-link-text-decoration: none;
  --mws-footer-widget-title: var(--mws-color-text);
  --mws-footer-bottom-bg: var(--mws-footer-bg);
  --mws-footer-bottom-text: var(--mws-footer-text);
  --mws-footer-bottom-link: var(--mws-footer-link);
  --mws-footer-bottom-link-hover: var(--mws-footer-link-hover);
  --mws-footer-bottom-border: var(--mws-footer-border);
  --mws-footer-bottom-border-width: 1px;
  --mws-footer-bottom-padding-y: 12px;
  --mws-footer-bottom-font-size: 14px;

  --mws-button-bg: var(--mws-color-primary);
  --mws-button-bg-hover: var(--mws-color-primary-hover);
  --mws-button-text: #ffffff;
  --mws-button-text-hover: #ffffff;
  --mws-button-border: var(--mws-button-bg);
  --mws-button-border-hover: var(--mws-button-bg-hover);
  --mws-button-hover-border: var(--mws-button-border-hover);
  --mws-button-border-hover-rendered: var(--mws-button-border-hover);
  --mws-button-outline: var(--mws-color-focus);
  --mws-button-focus: var(--mws-button-outline);
  --mws-button-focus-outline-width: 2px;
  --mws-button-focus-outline-offset: 3px;
  --mws-button-radius: 10px;
  --mws-button-height: 46px;
  --mws-button-padding-y: .78rem;
  --mws-button-padding-x: 1rem;
  --mws-button-gap: .5rem;
  --mws-button-line-height: 1;
  --mws-button-letter-spacing: 0px;
  --mws-button-font-size: 15px;
  --mws-button-font-weight: 700;
  --mws-button-text-transform: none;

  --mws-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mws-font-heading: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mws-font-menu: var(--mws-font-body);
  --mws-font-button: var(--mws-font-body);
  --mws-font-product-title: var(--mws-font-heading);
  --mws-font-product-price: var(--mws-font-body);
  --mws-font-notice: var(--mws-font-body);
  --mws-font-size-body: 16px;
  --mws-font-size-small: 14px;
  --mws-font-size-h1: 48px;
  --mws-font-size-h2: 38px;
  --mws-font-size-h3: 30px;
  --mws-font-size-h4: 24px;
  --mws-font-size-h5: 20px;
  --mws-font-size-h6: 17px;
  --mws-font-size-menu: 15px;
  --mws-font-weight-menu: 700;
  --mws-menu-text-transform: none;
  --mws-menu-hover-decoration: underline;
  --mws-font-size-button: 15px;
  --mws-font-size-footer: 15px;
  --mws-font-size-product-title: 42px;
  --mws-font-size-product-price: 24px;
  --mws-font-size-notice: var(--mws-font-size-body);
  --mws-font-size-notice-button: var(--mws-font-size-button);
  --mws-font-weight-body: 400;
  --mws-font-weight-heading: 700;
  --mws-font-weight-product-title: 700;
  --mws-font-weight-product-price: 700;
  --mws-line-height-body: 1.6;

  --mws-radius-sm: 8px;
  --mws-radius-md: 14px;
  --mws-radius-lg: 22px;
  --mws-form-control-radius: var(--mws-radius-sm);
  --mws-space-xs: 8px;
  --mws-space-sm: 12px;
  --mws-space-md: 20px;
  --mws-space-lg: 32px;
  --mws-space-xl: 56px;
  --mws-section-products-padding-block: clamp(1.75rem, 3vw, 3rem);
  --mws-hero-block-after-gap: clamp(2.5rem, 6vw, 6rem);
  --mws-native-block-flow-gap: var(--mws-space-md);
  --mws-native-section-gap: var(--mws-space-lg);
  --mws-native-section-padding: clamp(1.75rem, 4vw, 4rem);
  --mws-native-section-padding-mobile: clamp(1.25rem, 6vw, 2rem);
  --mws-native-section-radius: var(--mws-radius-lg);
  --mws-native-card-padding: var(--mws-space-md);
  --mws-native-card-radius: var(--mws-radius-lg);
  --mws-native-columns-gap: var(--mws-space-lg);
  --mws-native-media-text-gap: var(--mws-space-lg);
  --mws-native-media-radius: var(--mws-radius-md);
  --mws-native-query-gap: var(--mws-space-lg);
  --mws-native-separator-gap: var(--mws-space-lg);
  --mws-button-group-gap: var(--mws-space-sm);
  --mws-container: 1180px;
  --mws-mobile-content-padding: 16px;
  --mws-desktop-content-padding: 24px;
  --mws-content-side-padding: var(--mws-mobile-content-padding);
  --mws-content-safe-width: min(100% - calc(var(--mws-content-side-padding) * 2), var(--mws-container));
  --mws-content-readable-width: min(var(--mws-content-safe-width), 780px);
  --mws-content-header-width: min(var(--mws-content-safe-width), 860px);
  --mws-content-narrow-width: min(var(--mws-content-safe-width), 900px);
  --mws-z-header: 100;
  --mws-z-overlay: 200;
  --mws-z-modal: 300;
  --mws-transition: 0.2s ease;
  --mws-shadow-sm: 0 1px 3px rgba(0,0,0,.08);
  --mws-shadow-md: 0 4px 12px rgba(0,0,0,.12);

  --mws-social-icon-style: plain;
  --mws-social-icon-color: var(--mws-color-link);
  --mws-social-icon-hover-color: var(--mws-color-link-hover);
  --mws-social-icon-bg: transparent;
  --mws-social-icon-hover-bg: var(--mws-color-surface);
  --mws-social-icon-size: 18px;
  --mws-social-icon-gap: 10px;
  --mws-social-icon-button-size: var(--mws-social-icon-size);
  --mws-social-icon-radius: 999px;
  --mws-social-icon-border-width: 0px;
  --mws-social-icon-border-color: transparent;
  --mws-social-icon-hover-border-color: transparent;
  --mws-social-icon-bg-rendered: transparent;
  --mws-social-icon-hover-bg-rendered: transparent;
  --mws-button-border-style: solid;
  --mws-button-border-width: 1px;
  --mws-button-border-rendered: var(--mws-button-border);
  --mws-button-hover-border-width: var(--mws-button-border-width);
}

body {
  background: var(--mws-color-bg);
  color: var(--mws-color-text);
  font-family: var(--mws-font-body);
  font-size: var(--mws-font-size-body);
}

/* Social links foundation */
.mws-social-links {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--mws-social-icon-gap);
  flex-wrap: wrap;
}

.mws-social-links .mws-social-links__item {
  width: var(--mws-social-icon-button-size);
  height: var(--mws-social-icon-button-size);
  min-width: var(--mws-social-icon-button-size);
  min-height: var(--mws-social-icon-button-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--mws-social-icon-color);
  background: var(--mws-social-icon-bg-rendered);
  border: var(--mws-social-icon-border-width) solid var(--mws-social-icon-border-color);
  text-decoration: none;
  line-height: 1;
  border-radius: var(--mws-social-icon-radius);
  cursor: pointer;
  transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.mws-social-links .mws-social-links__item:hover,
.mws-social-links .mws-social-links__item:focus-visible {
  color: var(--mws-social-icon-hover-color);
  background: var(--mws-social-icon-hover-bg-rendered);
  border-color: var(--mws-social-icon-hover-border-color);
}

.mws-social-links .mws-social-links__icon {
  width: var(--mws-social-icon-size);
  height: var(--mws-social-icon-size);
  display: block;
  fill: currentColor;
  flex: 0 0 auto;
  pointer-events: none;
}

@media (min-width: 768px) {
  :root {
    --mws-content-side-padding: var(--mws-desktop-content-padding);
  }
}


/* Shared promotional/status badge geometry.
   Sale, Sold Out, and Offer Card labels intentionally share one visual
   contract while each state/component keeps independent colour ownership. */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale,
.woocommerce div.product span.onsale,
.mws-product-status-badge,
.mws-offer-card__label {
  position: absolute;
  min-height: auto;
  min-width: auto;
  top: var(--mws-space-sm);
  left: var(--mws-space-sm);
  right: auto;
  margin: 0;
  border: 0;
  border-radius: 999px;
  padding: .42rem .72rem;
  font-family: var(--mws-font-body);
  font-size: .84rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  z-index: 3;
}
