/*
Theme Name: Betheme Child - PeptiClinic
Theme URI: https://woocommerce-1539267-6224307.cloudwaysapps.com
Author: PeptiClinic
Author URI: https://woocommerce-1539267-6224307.cloudwaysapps.com
Description: PeptiClinic Unified Three-Theme Child Theme for Betheme
Template: betheme
Version: 4.0.9
Text Domain: pepticlinic
*/

/* =====================================================
   PEPTICLINIC UNIFIED COLOR SYSTEM v4.0
   =====================================================

   ARCHITECTURE:
   ├── 1. COLOR VARIABLES (Three Gender Themes)
   │   ├── :root / [data-gender="neutral"] - Purple (Tailwind Violet)
   │   ├── [data-gender="men"] - Blue (Tailwind Blue)
   │   └── [data-gender="women"] - Pink (Tailwind Pink)
   │
   ├── 2. SHARED VARIABLES (All Themes)
   │   ├── Neutrals (Tailwind Gray - cool blue-tint)
   │   ├── Semantic (success, warning, error, info)
   │   ├── Typography, Spacing, Radius, Transitions
   │   └── Matches portal plugin pepti-variables.css
   │
   ├── 3. GENDER CONTENT VISIBILITY
   │
   ├── 4-14. COMPONENT STYLES
   │   ├── BeTheme Header/Footer
   │   ├── WooCommerce Full Flow
   │   └── Live Search
   │
   ├── 15. PORTAL STYLES (legacy, neutral-only)
   ├── 16. UTILITY CLASSES
   ├── 17. PORTAL CONTAINMENT
   └── 18. RESPONSIVE

   PREFIX: --pepti-* (unified with portal plugin)
   FORBIDDEN: #6d22e0, #442574, #8b4de0, #712FE4

   ===================================================== */


/* =========================================================
   PART 1: THREE-THEME COLOR SYSTEM - CSS VARIABLES
   ========================================================= */

/* ─────────────────────────────────────────────────────────
   1A. BASE / NEUTRAL THEME (Purple - Tailwind Violet)
   ───────────────────────────────────────────────────────── */
:root,
html:not([data-gender]),
html[data-gender=""],
html[data-gender="neutral"] {
    /* PRIMARY - Violet Scale (canonical) */
    --pepti-primary: #7c3aed;
    --pepti-primary-hover: #6d28d9;
    --pepti-primary-active: #5b21b6;
    --pepti-primary-light: #a78bfa;
    --pepti-primary-bg: #f5f3ff;
    --pepti-primary-subtle: #ede9fe;

    /* ACCENT - Indigo */
    --pepti-accent: #6366f1;
    --pepti-accent-hover: #4f46e5;
    --pepti-accent-light: #818cf8;

    /* DARK BACKGROUNDS */
    --pepti-bg-dark: #1a0a2e;
    --pepti-bg-dark-secondary: #3b1d5a;
    --pepti-bg-dark-tertiary: #2d1548;
    --pepti-bg-dark-alt: #0a0a0f;

    /* LIGHT BACKGROUNDS */
    --pepti-bg-light: #f8f9fc;
    --pepti-bg-light-alt: #faf5ff;

    /* TEXT COLORS */
    --pepti-text-dark: #1e1b4b;
    --pepti-text: #4c4866;
    --pepti-text-muted: #6b5b7e;
    --pepti-text-on-dark: #ffffff;
    --pepti-text-on-primary: #ffffff;

    /* BORDERS */
    --pepti-border: rgba(124, 58, 237, 0.15);
    --pepti-border-hover: rgba(124, 58, 237, 0.3);
    --pepti-border-strong: rgba(124, 58, 237, 0.4);
    --pepti-border-active: rgba(124, 58, 237, 0.6);

    /* EFFECTS */
    --pepti-glow-subtle: rgba(124, 58, 237, 0.08);
    --pepti-glow-faint: rgba(124, 58, 237, 0.1);
    --pepti-glow-light: rgba(124, 58, 237, 0.15);
    --pepti-glow-medium: rgba(124, 58, 237, 0.2);
    --pepti-glow: rgba(124, 58, 237, 0.3);
    --pepti-glow-strong: rgba(124, 58, 237, 0.5);
    --pepti-shadow-theme: 0 10px 30px rgba(124, 58, 237, 0.2);
    --pepti-shadow-theme-hover: 0 15px 40px rgba(124, 58, 237, 0.3);
    --pepti-shadow-theme-sm: 0 4px 12px rgba(124, 58, 237, 0.15);

    /* HERO GLOWS */
    --pepti-hero-glow-1: rgba(124, 58, 237, 0.4);
    --pepti-hero-glow-2: rgba(147, 51, 234, 0.35);
    --pepti-hero-glow-3: rgba(99, 102, 241, 0.3);

    /* GRADIENTS */
    --pepti-gradient-primary: linear-gradient(135deg, #7c3aed, #6d28d9);
    --pepti-gradient-dark: linear-gradient(135deg, #1e1b4b, #312e81);
    --pepti-gradient-accent: linear-gradient(135deg, #6366f1, #4f46e5);
    --pepti-bg-gradient: linear-gradient(180deg, #f8f9fc 0%, #f5f3ff 100%);

    /* SHADOWS */
    --pepti-shadow: 0 10px 30px rgba(124, 58, 237, 0.2);

    /* HERO BUTTONS */
    --pepti-hero-btn-primary: #7c3aed;
    --pepti-hero-btn-primary-hover: #6d28d9;
    --pepti-hero-btn-shadow: rgba(124, 58, 237, 0.5);
    --pepti-hero-btn-shadow-hover: rgba(124, 58, 237, 0.65);
    --pepti-hero-btn-secondary: rgba(255, 255, 255, 0.9);
    --pepti-hero-btn-secondary-hover: #ffffff;
    --pepti-hero-btn-secondary-text: #1a0a2e;
    --pepti-hero-btn-secondary-shadow: rgba(0, 0, 0, 0.3);
    --pepti-hero-btn-secondary-shadow-hover: rgba(124, 58, 237, 0.5);
}


/* ─────────────────────────────────────────────────────────
   1B. MEN THEME (Blue - Tailwind Blue)
   ───────────────────────────────────────────────────────── */
html[data-gender="men"] {
    /* PRIMARY - Blue Scale (canonical) */
    --pepti-primary: #2563eb;
    --pepti-primary-hover: #1d4ed8;
    --pepti-primary-active: #1e40af;
    --pepti-primary-light: #60a5fa;
    --pepti-primary-bg: #eff6ff;
    --pepti-primary-subtle: #dbeafe;

    /* ACCENT - Sky Blue */
    --pepti-accent: #3b82f6;
    --pepti-accent-hover: #2563eb;
    --pepti-accent-light: #60a5fa;

    /* DARK BACKGROUNDS */
    --pepti-bg-dark: #0a1628;
    --pepti-bg-dark-secondary: #1e3a5f;
    --pepti-bg-dark-tertiary: #162d4a;
    --pepti-bg-dark-alt: #0a0f1a;

    /* LIGHT BACKGROUNDS */
    --pepti-bg-light: #eff6ff;
    --pepti-bg-light-alt: #f0f4ff;

    /* TEXT COLORS */
    --pepti-text-dark: #1e3a5f;
    --pepti-text: #334155;
    --pepti-text-muted: #64748b;
    --pepti-text-on-dark: #ffffff;
    --pepti-text-on-primary: #ffffff;

    /* BORDERS */
    --pepti-border: rgba(37, 99, 235, 0.15);
    --pepti-border-hover: rgba(37, 99, 235, 0.3);
    --pepti-border-strong: rgba(37, 99, 235, 0.4);
    --pepti-border-active: rgba(37, 99, 235, 0.6);

    /* EFFECTS */
    --pepti-glow-subtle: rgba(37, 99, 235, 0.08);
    --pepti-glow-faint: rgba(37, 99, 235, 0.1);
    --pepti-glow-light: rgba(37, 99, 235, 0.15);
    --pepti-glow-medium: rgba(37, 99, 235, 0.2);
    --pepti-glow: rgba(37, 99, 235, 0.3);
    --pepti-glow-strong: rgba(37, 99, 235, 0.5);
    --pepti-shadow-theme: 0 10px 30px rgba(37, 99, 235, 0.2);
    --pepti-shadow-theme-hover: 0 15px 40px rgba(37, 99, 235, 0.3);
    --pepti-shadow-theme-sm: 0 4px 12px rgba(37, 99, 235, 0.15);

    /* HERO GLOWS */
    --pepti-hero-glow-1: rgba(37, 99, 235, 0.4);
    --pepti-hero-glow-2: rgba(59, 130, 246, 0.35);
    --pepti-hero-glow-3: rgba(29, 78, 216, 0.3);

    /* GRADIENTS */
    --pepti-gradient-primary: linear-gradient(135deg, #2563eb, #1d4ed8);
    --pepti-gradient-dark: linear-gradient(135deg, #1e3a5f, #1e40af);
    --pepti-gradient-accent: linear-gradient(135deg, #3b82f6, #2563eb);
    --pepti-bg-gradient: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);

    /* SHADOWS */
    --pepti-shadow: 0 10px 30px rgba(37, 99, 235, 0.2);

    /* HERO BUTTONS */
    --pepti-hero-btn-primary: #3b82f6;
    --pepti-hero-btn-primary-hover: #60a5fa;
    --pepti-hero-btn-shadow: rgba(59, 130, 246, 0.5);
    --pepti-hero-btn-shadow-hover: rgba(59, 130, 246, 0.65);
    --pepti-hero-btn-secondary: rgba(255, 255, 255, 0.9);
    --pepti-hero-btn-secondary-hover: #ffffff;
    --pepti-hero-btn-secondary-text: #0a1628;
    --pepti-hero-btn-secondary-shadow: rgba(0, 0, 0, 0.3);
    --pepti-hero-btn-secondary-shadow-hover: rgba(59, 130, 246, 0.5);
}


/* ─────────────────────────────────────────────────────────
   1C. WOMEN THEME (Pink - Tailwind Pink)
   ───────────────────────────────────────────────────────── */
html[data-gender="women"] {
    /* PRIMARY - Pink Scale (canonical) */
    --pepti-primary: #ec4899;
    --pepti-primary-hover: #db2777;
    --pepti-primary-active: #be185d;
    --pepti-primary-light: #f472b6;
    --pepti-primary-bg: #fdf2f8;
    --pepti-primary-subtle: #fce7f3;

    /* ACCENT - Rose */
    --pepti-accent: #f472b6;
    --pepti-accent-hover: #ec4899;
    --pepti-accent-light: #f9a8d4;

    /* DARK BACKGROUNDS */
    --pepti-bg-dark: #2e0a1a;
    --pepti-bg-dark-secondary: #4a1d3a;
    --pepti-bg-dark-tertiary: #3d1530;
    --pepti-bg-dark-alt: #1a0a12;

    /* LIGHT BACKGROUNDS */
    --pepti-bg-light: #fdf2f8;
    --pepti-bg-light-alt: #fef8fc;

    /* TEXT COLORS */
    --pepti-text-dark: #4a2b6f;
    --pepti-text: #714b7e;
    --pepti-text-muted: #8a6b9a;
    --pepti-text-on-dark: #ffffff;
    --pepti-text-on-primary: #ffffff;

    /* BORDERS */
    --pepti-border: rgba(236, 72, 153, 0.15);
    --pepti-border-hover: rgba(236, 72, 153, 0.3);
    --pepti-border-strong: rgba(236, 72, 153, 0.4);
    --pepti-border-active: rgba(236, 72, 153, 0.6);

    /* EFFECTS */
    --pepti-glow-subtle: rgba(236, 72, 153, 0.08);
    --pepti-glow-faint: rgba(236, 72, 153, 0.1);
    --pepti-glow-light: rgba(236, 72, 153, 0.15);
    --pepti-glow-medium: rgba(236, 72, 153, 0.2);
    --pepti-glow: rgba(236, 72, 153, 0.3);
    --pepti-glow-strong: rgba(236, 72, 153, 0.5);
    --pepti-shadow-theme: 0 10px 30px rgba(236, 72, 153, 0.2);
    --pepti-shadow-theme-hover: 0 15px 40px rgba(236, 72, 153, 0.3);
    --pepti-shadow-theme-sm: 0 4px 12px rgba(236, 72, 153, 0.15);

    /* HERO GLOWS */
    --pepti-hero-glow-1: rgba(236, 72, 153, 0.4);
    --pepti-hero-glow-2: rgba(219, 39, 119, 0.35);
    --pepti-hero-glow-3: rgba(190, 24, 93, 0.3);

    /* GRADIENTS */
    --pepti-gradient-primary: linear-gradient(135deg, #ec4899, #db2777);
    --pepti-gradient-dark: linear-gradient(135deg, #831843, #be185d);
    --pepti-gradient-accent: linear-gradient(135deg, #f472b6, #ec4899);
    --pepti-bg-gradient: linear-gradient(180deg, #fdf2f8 0%, #fce7f3 100%);

    /* SHADOWS */
    --pepti-shadow: 0 10px 30px rgba(236, 72, 153, 0.2);

    /* HERO BUTTONS */
    --pepti-hero-btn-primary: #f472b6;
    --pepti-hero-btn-primary-hover: #ec4899;
    --pepti-hero-btn-shadow: rgba(244, 114, 182, 0.5);
    --pepti-hero-btn-shadow-hover: rgba(236, 72, 153, 0.65);
    --pepti-hero-btn-secondary: rgba(255, 255, 255, 0.9);
    --pepti-hero-btn-secondary-hover: #ffffff;
    --pepti-hero-btn-secondary-text: #2e0a1a;
    --pepti-hero-btn-secondary-shadow: rgba(0, 0, 0, 0.3);
    --pepti-hero-btn-secondary-shadow-hover: rgba(236, 72, 153, 0.5);
}


/* ─────────────────────────────────────────────────────────
   1D. SHARED VARIABLES (All Themes)
   Matches portal plugin pepti-variables.css (Tailwind Gray)
   ───────────────────────────────────────────────────────── */
:root {
    /* NEUTRALS - Tailwind Gray (cool blue-tint) */
    --pepti-white: #ffffff;
    --pepti-black: #000000;
    --pepti-gray-50: #f9fafb;
    --pepti-gray-100: #f3f4f6;
    --pepti-gray-200: #e5e7eb;
    --pepti-gray-300: #d1d5db;
    --pepti-gray-400: #9ca3af;
    --pepti-gray-500: #6b7280;
    --pepti-gray-600: #4b5563;
    --pepti-gray-700: #374151;
    --pepti-gray-800: #1f2937;
    --pepti-gray-900: #111827;

    /* SEMANTIC - Status Colors */
    --pepti-success: #10b981;
    --pepti-success-hover: #059669;
    --pepti-success-bg: #d1fae5;
    --pepti-success-dark: #065f46;

    --pepti-warning: #f59e0b;
    --pepti-warning-hover: #d97706;
    --pepti-warning-bg: #fef3c7;
    --pepti-warning-dark: #92400e;

    --pepti-error: #ef4444;
    --pepti-error-hover: #dc2626;
    --pepti-error-bg: #fee2e2;
    --pepti-error-dark: #991b1b;

    --pepti-info: #3b82f6;
    --pepti-info-hover: #2563eb;
    --pepti-info-bg: #dbeafe;
    --pepti-info-dark: #1e40af;

    /* TYPOGRAPHY - Matches portal plugin */
    --pepti-font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --pepti-font-heading: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --pepti-font-mono: 'SF Mono', 'Monaco', 'Consolas', monospace;

    /* SPACING - Numbered scale (matches portal plugin) */
    --pepti-space-1: 0.25rem;
    --pepti-space-2: 0.5rem;
    --pepti-space-3: 0.75rem;
    --pepti-space-4: 1rem;
    --pepti-space-5: 1.25rem;
    --pepti-space-6: 1.5rem;
    --pepti-space-8: 2rem;
    --pepti-space-10: 2.5rem;
    --pepti-space-12: 3rem;
    --pepti-space-16: 4rem;

    /* BORDER RADIUS - Matches portal plugin */
    --pepti-radius-sm: 4px;
    --pepti-radius-md: 6px;
    --pepti-radius-lg: 8px;
    --pepti-radius-xl: 12px;
    --pepti-radius-2xl: 16px;
    --pepti-radius-full: 9999px;

    /* TRANSITIONS - Matches portal plugin */
    --pepti-transition-fast: 150ms ease;
    --pepti-transition-base: 200ms ease;
    --pepti-transition-slow: 300ms ease;
}


/* =========================================================
   PART 2: SECTION CONTEXT SYSTEM
   ========================================================= */

/* Part 2A (Portal Context !important overrides) — REMOVED.
   The portal plugin handles its own styling via pepti-variables.css
   and the .pepti-portal-wrapper containment in Part 17. */

/* ─────────────────────────────────────────────────────────
   2B. SHOP CONTEXT (Light, Crisp, Gender-Dynamic Accents)
   ───────────────────────────────────────────────────────── */
.woocommerce,
.woocommerce-page,
body.archive.woocommerce,
body.single-product,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
    background: var(--pepti-white);
}

.woocommerce .site-content,
.woocommerce-page .site-content {
    background: var(--pepti-gray-50);
}


/* ─────────────────────────────────────────────────────────
   2C. SERVICES CONTEXT (Rich, Gender-Dynamic)
   ───────────────────────────────────────────────────────── */
.pepti-services-context,
body.page-template-services,
body[class*="service"] .site-content {
    /* Uses full gender-dynamic theme */
}


/* =========================================================
   PART 3: GENDER CONTENT VISIBILITY
   Required for Elementor templates using data-show attributes
   ========================================================= */

/* Hide all gender-specific content by default */
[data-show="neutral"],
[data-show="men"],
[data-show="women"] {
    display: none !important;
}

/* Show matching content based on data-gender attribute */
html:not([data-gender]) [data-show="neutral"],
html[data-gender=""] [data-show="neutral"],
html[data-gender="neutral"] [data-show="neutral"],
html[data-gender="men"] [data-show="men"],
html[data-gender="women"] [data-show="women"] {
    display: inline !important;
}

/* Block-level gender content */
html:not([data-gender]) [data-show="neutral"].pc-block,
html[data-gender=""] [data-show="neutral"].pc-block,
html[data-gender="neutral"] [data-show="neutral"].pc-block,
html[data-gender="men"] [data-show="men"].pc-block,
html[data-gender="women"] [data-show="women"].pc-block {
    display: block !important;
}

/* Flex gender content */
html:not([data-gender]) [data-show="neutral"].pc-flex,
html[data-gender=""] [data-show="neutral"].pc-flex,
html[data-gender="neutral"] [data-show="neutral"].pc-flex,
html[data-gender="men"] [data-show="men"].pc-flex,
html[data-gender="women"] [data-show="women"].pc-flex {
    display: flex !important;
}


/* =========================================================
   PART 4: BETHEME HEADER - GENDER DYNAMIC
   ========================================================= */

/* Main Menu Links - Hover */
.mfn-header-tmpl .mfn-menu-li > a:hover,
.mfn-header-tmpl .menu > li > a:hover,
.mfn-header-tmpl li.mfn-menu-li:hover > a {
    color: var(--pepti-primary-light) !important;
}

/* Active Menu Item */
.mfn-header-tmpl .current-menu-item > a,
.mfn-header-tmpl .current_page_item > a,
.mfn-header-tmpl .mfn-menu-li.current-menu-item > a,
.mfn-header-tmpl .current-menu-ancestor > a {
    color: var(--pepti-primary-light) !important;
}

/* Submenu Links - Hover */
.mfn-header-tmpl .mfn-submenu a:hover,
.mfn-header-tmpl .sub-menu a:hover,
.mfn-header-tmpl .mfn-submenu li:hover > a {
    color: var(--pepti-primary-light) !important;
    background: var(--pepti-border) !important;
}

/* Menu Dropdown Icon */
.mfn-header-tmpl .mfn-menu-li:hover .mfn-menu-subicon i,
.mfn-header-tmpl .mfn-menu-li.current-menu-item .mfn-menu-subicon i,
.mfn-header-tmpl .mfn-menu-li.current-menu-ancestor .mfn-menu-subicon i {
    color: var(--pepti-primary-light) !important;
}

/* Cart Icon Badge */
.header-cart-icon-custom .mfn-icon-count,
.header-cart-icon-custom .count {
    background: var(--pepti-primary-light) !important;
    color: var(--pepti-white) !important;
}

/* Search Field */
.header-search-custom input.field {
    border-color: var(--pepti-primary-light) !important;
    color: var(--pepti-primary-light) !important;
}

.header-search-custom input.field::placeholder {
    color: var(--pepti-primary-light) !important;
    opacity: 0.7 !important;
}

.header-search-custom input.field:focus {
    border-color: var(--pepti-primary-light) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

.header-search-custom .icon_search .path {
    stroke: var(--pepti-primary-light) !important;
}

/* Header Dynamic Text */
.header-text-dynamic {
    color: var(--pepti-primary-light) !important;
}

/* Sidebar Close Button */
.mfn-sidemenu-tmpl-builder .mfn-sidemenu-closebutton {
    color: var(--pepti-primary) !important;
    transition: all 0.3s ease !important;
}

.mfn-sidemenu-tmpl-builder .mfn-sidemenu-closebutton:hover {
    transform: rotate(90deg) !important;
}


/* =========================================================
   PART 5: BETHEME FOOTER - GENDER DYNAMIC
   ========================================================= */

/* Gender Selector Label */
.pc-footer-gender__label {
    color: var(--pepti-primary) !important;
}

/* Gender Selector Dropdown */
.pc-footer-gender__select-wrap select {
    color: var(--pepti-primary) !important;
    background: var(--pepti-border) !important;
    border-color: var(--pepti-border-hover) !important;
}

.pc-footer-gender__select-wrap select:hover,
.pc-footer-gender__select-wrap select:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

.pc-footer-gender__arrow {
    color: var(--pepti-primary) !important;
}

/* Footer Icons */
#mfn-footer-template .mfn-icon-box .icon-wrapper i,
#mfn-footer-template .mfn-icon-box i.primary,
.mfn-footer-tmpl .mfn-icon-box i.primary {
    color: var(--pepti-primary) !important;
}

/* Footer Titles */
#mfn-footer-template .mfn-icon-box .title,
.mfn-footer-tmpl .mfn-icon-box h5.title {
    color: var(--pepti-primary) !important;
}

/* Footer Menu Headings */
#mfn-footer-template .mcb-item-heading-inner h6.title,
.mfn-footer-tmpl h6.title {
    color: var(--pepti-primary) !important;
}

/* Footer Menu Links - Hover */
#mfn-footer-template .mfn-footer-menu a:hover,
.mfn-footer-tmpl .mfn-footer-menu a:hover {
    color: var(--pepti-primary) !important;
}

/* Footer Active Menu */
#mfn-footer-template .mfn-footer-menu .current-menu-item a,
.mfn-footer-tmpl .mfn-footer-menu .current-menu-item a {
    color: var(--pepti-primary) !important;
}

/* Footer Address */
.footer-address-dynamic {
    color: var(--pepti-primary) !important;
}

/* Social Icon Borders */
#mfn-footer-template .mfn-icon-box .icon-wrapper,
.mfn-footer-tmpl .mfn-icon-box .icon-wrapper {
    border-color: var(--pepti-border-hover) !important;
}

#mfn-footer-template .mfn-icon-box:hover .icon-wrapper,
.mfn-footer-tmpl .mfn-icon-box:hover .icon-wrapper {
    border-color: var(--pepti-primary) !important;
    background: var(--pepti-border) !important;
}

/* Divider Lines */
#mfn-footer-template .mfn-divider-inner,
.mfn-footer-tmpl .mfn-divider-inner {
    background: var(--pepti-border) !important;
}


/* =========================================================
   PART 6: WOOCOMMERCE SHOP ARCHIVES - GENDER DYNAMIC
   ========================================================= */

/* Product Prices */
.shop-archives-custom .price,
.shop-archives-custom .price *,
.shop-archives-custom .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Tag Cloud */
.Tag-Cloud-Custom a {
    color: var(--pepti-primary) !important;
    transition: all 0.2s ease !important;
}

.Tag-Cloud-Custom a:hover {
    color: var(--pepti-primary-active) !important;
    background: var(--pepti-border) !important;
    border-radius: 4px !important;
}

/* Shop Subtitle */
.the-shop-subtitle-custom,
.the-shop-subtitle-custom * {
    color: var(--pepti-primary) !important;
}

/* Pagination - Active */
.shop-archives-custom .page-numbers.current,
.shop-archives-custom span.page-numbers.current {
    background: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
    border-color: var(--pepti-primary) !important;
}

/* Pagination - Hover */
.shop-archives-custom .page-numbers:not(.current):hover {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
}

/* Clear Filters Button */
.shop-clear-filter-custom button,
.shop-clear-filter-custom .wc-block-active-filters__clear-all {
    background: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
    border-color: var(--pepti-primary) !important;
    border-radius: 12px !important;
    transition: all 0.2s ease !important;
}

.shop-clear-filter-custom button:hover,
.shop-clear-filter-custom .wc-block-active-filters__clear-all:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}


/* =========================================================
   PART 7: WOOCOMMERCE SINGLE PRODUCT - GENDER DYNAMIC
   ========================================================= */

/* Product Title */
.mfn-single-product-tmpl-wrapper .woocommerce-products-header__title,
.mfn-single-product-tmpl-wrapper h1.title.page-title {
    color: var(--pepti-primary) !important;
}

/* Product Price */
.mfn-single-product-tmpl-wrapper .price,
.mfn-single-product-tmpl-wrapper .price .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Add to Cart Button */
.mfn-single-product-tmpl-wrapper .single_add_to_cart_button,
.mfn-single-product-tmpl-wrapper .mfn-product-add-to-cart .button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
    transition: all var(--pepti-transition-base) !important;
}

.mfn-single-product-tmpl-wrapper .single_add_to_cart_button:hover,
.mfn-single-product-tmpl-wrapper .mfn-product-add-to-cart .button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Quantity Input Focus */
.mfn-single-product-tmpl-wrapper .quantity input:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Product Meta Links */
.mfn-single-product-tmpl-wrapper .product_meta a {
    color: var(--pepti-primary) !important;
}

.mfn-single-product-tmpl-wrapper .product_meta a:hover {
    color: var(--pepti-primary-active) !important;
}

/* Share Button */
.mfn-single-product-tmpl-wrapper .mfn-share-post-button {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-border-hover) !important;
}

.mfn-single-product-tmpl-wrapper .mfn-share-post-button:hover {
    background: var(--pepti-border) !important;
    border-color: var(--pepti-primary) !important;
}

/* Gallery Zoom Icon */
.woocommerce-product-gallery__trigger::before {
    color: var(--pepti-primary) !important;
}

.woocommerce-product-gallery__trigger:hover::before {
    color: var(--pepti-primary-active) !important;
}

/* Tabs Navigation */
.mfn-woocommerce-tabs-nav li.active a,
.mfn-woocommerce-tabs-nav li a:hover {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
}

/* Description Headings */
.mfn-single-product-tmpl-wrapper .the_content_wrapper h1,
.mfn-single-product-tmpl-wrapper .the_content_wrapper h2,
.mfn-single-product-tmpl-wrapper .the_content_wrapper h3 {
    color: var(--pepti-primary) !important;
}

/* Description List Items — markers themed, text stays readable */
.mfn-single-product-tmpl-wrapper .the_content_wrapper ul li,
.mfn-single-product-tmpl-wrapper .the_content_wrapper ol li {
    color: var(--pepti-gray-700) !important;
}

.mfn-single-product-tmpl-wrapper .the_content_wrapper li strong {
    color: var(--pepti-gray-900) !important;
}

.mfn-single-product-tmpl-wrapper .the_content_wrapper ul li::marker {
    color: var(--pepti-primary) !important;
}

/* Table Headers */
.mfn-single-product-tmpl-wrapper .the_content_wrapper table th,
.woocommerce-product-attributes th {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
}

/* Related Products */
.mfn-related h2.title {
    color: var(--pepti-primary) !important;
}

.mfn-related .mfn-after-shop-loop-item .button,
.mfn-related .add_to_cart_button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.mfn-related .mfn-after-shop-loop-item .button:hover,
.mfn-related .add_to_cart_button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

.mfn-related .mfn-li-product-row-title a:hover {
    color: var(--pepti-primary) !important;
}

.mfn-related .mfn-li-product-row-price .price {
    color: var(--pepti-primary) !important;
}

/* Wishlist Heart */
.mfn-related .mfn-wish-button:hover .path,
.mfn-related .mfn-wish-button.active .path {
    stroke: var(--pepti-primary) !important;
    fill: var(--pepti-border) !important;
}

.mfn-related .image_links a:hover .path {
    stroke: var(--pepti-primary) !important;
}


/* =========================================================
   PART 8: WOOCOMMERCE CART - GENDER DYNAMIC
   ========================================================= */

/* Off-Canvas Cart */
.mfn-cart-holder .close-mfn-cart:hover {
    color: var(--pepti-primary) !important;
}

.mfn-cart-holder .mfn-ch-header h3 svg .path {
    stroke: var(--pepti-primary) !important;
}

/* Free Delivery Progress Bar */
.mfn-free-delivery-info-progressbar span {
    background: var(--pepti-gradient-primary) !important;
}

.mfn-free-delivery-info-desc {
    color: var(--pepti-primary) !important;
}

/* Cart Product Name */
.mfn-cart-holder .mfn-chp-name a {
    color: var(--pepti-primary) !important;
}

.mfn-cart-holder .mfn-chp-name a:hover {
    color: var(--pepti-primary-active) !important;
}

/* Cart Product Price */
.mfn-cart-holder .mfn-chp-price .woocommerce-Price-amount,
.mfn-cart-holder .mfn-chp-info .price .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Quantity Buttons */
.mfn-cart-holder .quantity-change:hover {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
}

.mfn-cart-holder .quantity input:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Remove Button */
.mfn-cart-holder .mfn-chp-remove:hover {
    color: var(--pepti-primary) !important;
}

/* Apply Coupon */
.mfn-cart-holder .mfn-chft-apply-coupon-switcher {
    color: var(--pepti-primary) !important;
}

.mfn-cart-holder .mfn-chft-apply-coupon-switcher:hover {
    color: var(--pepti-primary-active) !important;
}

.mfn-cart-holder .mfn-sidecart-apply-coupon-input:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

.mfn-cart-holder .mfn-sidecart-apply-coupon {
    background: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.mfn-cart-holder .mfn-sidecart-apply-coupon:hover {
    background: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Shipping & Totals */
.mfn-cart-holder .mfn-chft-row-shipping span {
    color: var(--pepti-primary) !important;
}

.mfn-cart-holder .mfn-chft-subtotal-amount .woocommerce-Price-amount,
.mfn-cart-holder .mfn-chft-total .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Checkout Button */
.mfn-cart-holder .mfn-ch-footer-buttons .button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.mfn-cart-holder .mfn-ch-footer-buttons .button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Footer Links */
.mfn-cart-holder .mfn-ch-footer-links a {
    color: var(--pepti-primary) !important;
}

.mfn-cart-holder .mfn-ch-footer-links a:hover {
    color: var(--pepti-primary-active) !important;
}


/* =========================================================
   PART 9: WOOCOMMERCE CART PAGE - GENDER DYNAMIC
   ========================================================= */

/* Checkout Steps */
.mfn-checkout-steps li {
    color: var(--pepti-primary) !important;
}

.mfn-checkout-steps li .mfn-step-number {
    border-color: var(--pepti-border-hover) !important;
    color: var(--pepti-primary) !important;
}

.mfn-checkout-steps li.active .mfn-step-number {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.mfn-checkout-steps li::after {
    color: var(--pepti-border-hover) !important;
}

/* Table Header */
.woocommerce-cart-form .shop_table thead th {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
}

/* Product Name Link */
.woocommerce-cart-form .product-name a {
    color: var(--pepti-primary) !important;
}

.woocommerce-cart-form .product-name a:hover {
    color: var(--pepti-primary-active) !important;
}

/* Prices */
.woocommerce-cart-form .product-price .woocommerce-Price-amount,
.woocommerce-cart-form .product-subtotal .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Quantity Controls */
.woocommerce-cart-form .quantity-change:hover {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
}

.woocommerce-cart-form .quantity input:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Remove Button */
.woocommerce-cart-form .product-remove .remove:hover {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
}

/* Coupon Input */
.woocommerce-cart-form .coupon input:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Action Buttons */
.woocommerce-cart-form .actions .button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.woocommerce-cart-form .actions .button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

.woocommerce-cart-form .actions .button:disabled {
    background: var(--pepti-glow-strong) !important;
    border-color: var(--pepti-glow-strong) !important;
}

/* Cart Totals */
.cart_totals h4.title {
    color: var(--pepti-primary) !important;
}

.cart_totals .mfn-free-delivery-info-progressbar span {
    background: var(--pepti-gradient-primary) !important;
}

.cart_totals .mfn-free-delivery-info-desc {
    color: var(--pepti-primary) !important;
}

.cart_totals .shop_table th {
    color: var(--pepti-primary) !important;
}

.cart_totals .woocommerce-shipping-methods label {
    color: var(--pepti-primary) !important;
}

.cart_totals .woocommerce-shipping-destination strong {
    color: var(--pepti-primary) !important;
}

.cart_totals .cart-subtotal td .woocommerce-Price-amount,
.cart_totals .order-total td .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Proceed to Checkout */
.wc-proceed-to-checkout .checkout-button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.wc-proceed-to-checkout .checkout-button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

.wc-proceed-to-checkout .mfn-woo-cart-link {
    color: var(--pepti-primary) !important;
}

.wc-proceed-to-checkout .mfn-woo-cart-link:hover {
    color: var(--pepti-primary-active) !important;
}


/* =========================================================
   PART 10: WOOCOMMERCE CHECKOUT - GENDER DYNAMIC
   ========================================================= */

/* Coupon Toggle */
.woocommerce-form-coupon-toggle .woocommerce-info a {
    color: var(--pepti-primary) !important;
}

.woocommerce-form-coupon-toggle .woocommerce-info a:hover {
    color: var(--pepti-primary-active) !important;
}

.checkout_coupon .button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.checkout_coupon .button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Section Headings */
.woocommerce-checkout h3,
.woocommerce-checkout h4,
.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
    color: var(--pepti-primary) !important;
}

/* Required Asterisk */
.woocommerce-checkout .required {
    color: var(--pepti-primary) !important;
}

/* Form Inputs */
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Select2 */
.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Checkboxes */
.woocommerce-checkout input[type="checkbox"]:checked {
    accent-color: var(--pepti-primary) !important;
}

/* Order Review Table */
.woocommerce-checkout-review-order-table thead th {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
}

.woocommerce-checkout-review-order-table .product-name {
    color: var(--pepti-primary) !important;
}

.woocommerce-checkout-review-order-table .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

.woocommerce-checkout-review-order-table tfoot th {
    color: var(--pepti-primary) !important;
}

/* Shipping Method */
.woocommerce-checkout .woocommerce-shipping-methods label {
    color: var(--pepti-primary) !important;
}

/* Payment Methods */
.woocommerce-checkout .wc_payment_methods input[type="radio"]:checked {
    accent-color: var(--pepti-primary) !important;
}

.woocommerce-checkout .wc_payment_method.active-payment,
.woocommerce-checkout .wc_payment_method:has(input:checked) {
    border-color: var(--pepti-primary) !important;
}

.woocommerce-checkout .mfn-payment-check i {
    color: var(--pepti-primary) !important;
}

/* Terms Link */
.woocommerce-checkout .woocommerce-terms-and-conditions-link {
    color: var(--pepti-primary) !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-link:hover {
    color: var(--pepti-primary-active) !important;
}

/* Place Order Button */
.woocommerce-checkout #place_order {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.woocommerce-checkout #place_order:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Return Link */
.woocommerce-checkout .mfn-woo-cart-link {
    color: var(--pepti-primary) !important;
}

.woocommerce-checkout .mfn-woo-cart-link:hover {
    color: var(--pepti-primary-active) !important;
}


/* =========================================================
   PART 11: WOOCOMMERCE MY ACCOUNT - GENDER DYNAMIC
   ========================================================= */

/* Navigation Links */
.woocommerce-MyAccount-navigation ul li a {
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    color: var(--pepti-primary-active) !important;
    background: var(--pepti-border) !important;
}

.woocommerce-MyAccount-navigation ul li a::before {
    color: var(--pepti-primary) !important;
}

/* Navigation Active */
.woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--pepti-gray-100) !important;
    color: var(--pepti-primary) !important;
    border-left: 3px solid var(--pepti-primary) !important;
}

.woocommerce-MyAccount-navigation ul li.is-active a:hover {
    background: var(--pepti-gray-200) !important;
    color: var(--pepti-primary-active) !important;
}

/* Content Links */
.woocommerce-MyAccount-content a {
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-content a:hover {
    color: var(--pepti-primary-active) !important;
}

/* Content Strong/Username */
.woocommerce-MyAccount-content p strong {
    color: var(--pepti-primary) !important;
}

/* Form Inputs */
.woocommerce-MyAccount-content input:focus,
.woocommerce-MyAccount-content select:focus,
.woocommerce-MyAccount-content textarea:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

/* Form Buttons */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button[type="submit"] {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content button[type="submit"]:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Orders Table */
.woocommerce-MyAccount-content .woocommerce-orders-table thead th {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-number a {
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-number a:hover {
    color: var(--pepti-primary-active) !important;
}

.woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

/* Address Titles */
.woocommerce-MyAccount-content .woocommerce-Address-title h3 {
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-content .woocommerce-Address-title a {
    color: var(--pepti-primary) !important;
}

.woocommerce-MyAccount-content .woocommerce-Address-title a:hover {
    color: var(--pepti-primary-active) !important;
}


/* =========================================================
   PART 12: WOOCOMMERCE THANK YOU PAGE - GENDER DYNAMIC
   ========================================================= */

/* Success Notice */
.woocommerce-thankyou-order-received {
    color: var(--pepti-primary) !important;
    border-color: var(--pepti-border-hover) !important;
    background: var(--pepti-border) !important;
}

/* Order Overview */
.woocommerce-order-overview li {
    color: var(--pepti-primary) !important;
    border-right-color: var(--pepti-border) !important;
}

.woocommerce-order-overview .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

/* Section Titles */
.woocommerce-order-details__title,
.woocommerce-column__title {
    color: var(--pepti-primary) !important;
}

/* Order Details Table */
.woocommerce-order-details .shop_table thead th {
    background: var(--pepti-border) !important;
    color: var(--pepti-primary) !important;
}

.woocommerce-order-details .product-name a {
    color: var(--pepti-primary) !important;
}

.woocommerce-order-details .product-name a:hover {
    color: var(--pepti-primary-active) !important;
}

.woocommerce-order-details .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

.woocommerce-order-details .shop_table tfoot th,
.woocommerce-order-details .shop_table tfoot td {
    color: var(--pepti-primary) !important;
}

/* Customer Details */
.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
    color: var(--pepti-primary) !important;
}


/* =========================================================
   PART 13: WOOCOMMERCE WISHLIST - GENDER DYNAMIC
   ========================================================= */

.wishlist .wishlist-row h3 a {
    color: var(--pepti-primary) !important;
}

.wishlist .wishlist-row h3 a:hover {
    color: var(--pepti-primary-active) !important;
}

.wishlist .wishlist-row .price,
.wishlist .wishlist-row .price .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

.wishlist .product_meta .sku_wrapper,
.wishlist .product_meta .posted_in,
.wishlist .product_meta .tagged_as {
    color: var(--pepti-primary) !important;
}

.wishlist .product_meta a {
    color: var(--pepti-primary) !important;
}

.wishlist .product_meta a:hover {
    color: var(--pepti-primary-active) !important;
}

.wishlist .wishlist-options .button.add_to_cart_button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.wishlist .wishlist-options .button.add_to_cart_button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

.wishlist .mfn-wish-button.loved .path {
    fill: var(--pepti-primary) !important;
    stroke: var(--pepti-primary) !important;
}


/* =========================================================
   PART 14: LIVE SEARCH - GENDER DYNAMIC
   ========================================================= */

.mfn-live-search-box .mfn-live-search-heading {
    color: var(--pepti-primary) !important;
    border-bottom-color: var(--pepti-border) !important;
}

.mfn-live-search-box li[data-category="category"] a {
    color: var(--pepti-primary) !important;
}

.mfn-live-search-box li[data-category="category"] a:hover {
    color: var(--pepti-primary-active) !important;
    background: var(--pepti-border) !important;
}

.mfn-live-search-box li[data-category="product"] a,
.mfn-live-search-box .mfn-live-search-texts a {
    color: var(--pepti-primary) !important;
}

.mfn-live-search-box li[data-category="product"] a:hover,
.mfn-live-search-box .mfn-live-search-texts a:hover {
    color: var(--pepti-primary-active) !important;
}

.mfn-live-search-box li[data-category="product"]:hover {
    background: var(--pepti-border) !important;
}

.mfn-live-search-box .mfn-ls-price,
.mfn-live-search-box .mfn-ls-price .woocommerce-Price-amount {
    color: var(--pepti-primary) !important;
}

.mfn-live-search-box .button {
    background: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: var(--pepti-white) !important;
}

.mfn-live-search-box .button:hover {
    background: var(--pepti-primary-active) !important;
    border-color: var(--pepti-primary-active) !important;
    color: #ffffff !important;
}

.mfn-live-search-box .mfn-live-search-noresults {
    color: var(--pepti-primary) !important;
}

.search_wrapper .field:focus {
    border-color: var(--pepti-primary) !important;
    box-shadow: 0 0 0 3px var(--pepti-glow-light) !important;
}

.search_wrapper .icon_search .path {
    stroke: var(--pepti-primary) !important;
}


/* =========================================================
   PART 15: LEGACY PORTAL STYLES (Neutral Only)
   Uses --pepti-* variables instead of hardcoded hex values
   ========================================================= */

/* Portal Container */
.pepti-portal-page,
.pepti-portal-context {
    font-family: var(--pepti-font-family) !important;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background: var(--pepti-white);
    color: var(--pepti-gray-800);
}

/* Portal Cards */
.pepti-portal-card {
    background: var(--pepti-white);
    border: 1px solid var(--pepti-gray-200);
    border-radius: var(--pepti-radius-lg);
    padding: var(--pepti-space-6);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: box-shadow var(--pepti-transition-base);
}

.pepti-portal-card:hover {
    box-shadow: 0 4px 12px var(--pepti-glow-light);
}

/* Portal Headings */
.pepti-portal-context h1,
.pepti-portal-context h2,
.pepti-portal-context h3 {
    color: var(--pepti-gray-900) !important;
}

.pepti-portal-context h1 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: var(--pepti-space-6);
}

.pepti-portal-context h2 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: var(--pepti-space-4);
}

.pepti-portal-context h3 {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: var(--pepti-space-2);
}

/* Portal Buttons */
.pepti-portal-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--pepti-radius-lg);
    transition: all var(--pepti-transition-base);
    cursor: pointer;
    text-decoration: none;
}

.pepti-portal-btn-primary {
    background: var(--pepti-primary);
    color: var(--pepti-white);
    border: none;
}

.pepti-portal-btn-primary:hover {
    background: var(--pepti-primary-hover);
    box-shadow: 0 4px 12px var(--pepti-glow);
}

.pepti-portal-btn-secondary {
    background: var(--pepti-white);
    color: var(--pepti-primary);
    border: 1px solid var(--pepti-border-hover);
}

.pepti-portal-btn-secondary:hover {
    background: var(--pepti-primary-bg);
    border-color: var(--pepti-primary);
}

/* Portal Form Inputs */
.pepti-portal-context input[type="text"],
.pepti-portal-context input[type="email"],
.pepti-portal-context input[type="password"],
.pepti-portal-context input[type="tel"],
.pepti-portal-context select,
.pepti-portal-context textarea {
    width: 100%;
    padding: 12px 16px;
    font-size: 14px;
    border: 1px solid var(--pepti-gray-300);
    border-radius: var(--pepti-radius-lg);
    background: var(--pepti-white);
    transition: all var(--pepti-transition-base);
}

.pepti-portal-context input:focus,
.pepti-portal-context select:focus,
.pepti-portal-context textarea:focus {
    outline: none;
    border-color: var(--pepti-primary);
    box-shadow: 0 0 0 3px var(--pepti-glow-light);
}

/* Portal Tables */
.pepti-portal-context table {
    width: 100%;
    border-collapse: collapse;
}

.pepti-portal-context table th {
    background: var(--pepti-gray-50);
    color: var(--pepti-gray-700);
    font-weight: 600;
    text-align: left;
    padding: 12px 16px;
    border-bottom: 1px solid var(--pepti-gray-200);
}

.pepti-portal-context table td {
    padding: 12px 16px;
    border-bottom: 1px solid var(--pepti-gray-100);
}

.pepti-portal-context table tr:hover {
    background: var(--pepti-gray-50);
}

/* Portal Links */
.pepti-portal-context a:not(.pepti-portal-btn) {
    color: var(--pepti-primary);
    text-decoration: none;
}

.pepti-portal-context a:not(.pepti-portal-btn):hover {
    color: var(--pepti-primary-hover);
    text-decoration: underline;
}

/* Portal Status Badges */
.pepti-portal-badge {
    display: inline-flex;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    border-radius: var(--pepti-radius-full);
}

.pepti-portal-badge-success {
    background: var(--pepti-success-bg);
    color: var(--pepti-success-dark);
}

.pepti-portal-badge-warning {
    background: var(--pepti-warning-bg);
    color: var(--pepti-warning-dark);
}

.pepti-portal-badge-error {
    background: var(--pepti-error-bg);
    color: var(--pepti-error-dark);
}

.pepti-portal-badge-info {
    background: var(--pepti-primary-bg);
    color: var(--pepti-primary);
}


/* =========================================================
   PART 16: UTILITY CLASSES
   ========================================================= */

/* Touch Active State */
.pc-goals__card.is-touch-active {
    transform: translateY(-4px);
}

/* Text Colors */
.pc-text-primary { color: var(--pepti-primary) !important; }
.pc-text-primary-light { color: var(--pepti-primary-light) !important; }
.pc-text-accent { color: var(--pepti-accent) !important; }
.pc-text-success { color: var(--pepti-success) !important; }
.pc-text-warning { color: var(--pepti-warning) !important; }
.pc-text-error { color: var(--pepti-error) !important; }
.pc-text-muted { color: var(--pepti-text-muted) !important; }

/* Background Colors */
.pc-bg-primary { background-color: var(--pepti-primary) !important; }
.pc-bg-primary-light { background-color: var(--pepti-primary-light) !important; }
.pc-bg-accent { background-color: var(--pepti-accent) !important; }
.pc-bg-dark { background-color: var(--pepti-bg-dark) !important; }
.pc-bg-light { background-color: var(--pepti-bg-light) !important; }

/* Border Colors */
.pc-border-primary { border-color: var(--pepti-primary) !important; }
.pc-border-light { border-color: var(--pepti-border) !important; }
.pc-border-strong { border-color: var(--pepti-border-strong) !important; }

/* Gradients */
.pc-gradient-primary { background: var(--pepti-gradient-primary) !important; }
.pc-gradient-dark { background: var(--pepti-gradient-dark) !important; }

/* Shadows */
.pc-shadow { box-shadow: var(--pepti-shadow-theme) !important; }
.pc-shadow-sm { box-shadow: var(--pepti-shadow-theme-sm) !important; }
.pc-shadow-hover:hover { box-shadow: var(--pepti-shadow-theme-hover) !important; }

/* Glow Effects */
.pc-glow { box-shadow: 0 0 20px var(--pepti-glow) !important; }
.pc-glow-light { box-shadow: 0 0 15px var(--pepti-glow-light) !important; }


/* =========================================================
   PART 17: PORTAL CONTAINMENT
   Isolates portal plugin from BeTheme/Elementor styles
   ========================================================= */

.pepti-portal-wrapper {
    font-family: var(--pepti-font-family);
    color: var(--pepti-gray-900);
    line-height: 1.5;

    /* Pin portal to neutral purple regardless of gender selection */
    --pepti-primary: #7c3aed;
    --pepti-primary-hover: #6d28d9;
    --pepti-primary-active: #5b21b6;
    --pepti-primary-light: #a78bfa;
    --pepti-primary-bg: #f5f3ff;
    --pepti-primary-subtle: #ede9fe;
}

.pepti-portal-wrapper *,
.pepti-portal-wrapper *::before,
.pepti-portal-wrapper *::after {
    box-sizing: border-box;
}


/* =========================================================
   PART 18: RESPONSIVE ADJUSTMENTS
   ========================================================= */

@media (max-width: 768px) {
    /* Portal adjustments */
    .pepti-portal-page,
    .pepti-portal-context {
        padding: 16px;
    }

    .pepti-portal-card {
        padding: var(--pepti-space-4);
    }

    .pepti-portal-context h1 {
        font-size: 1.5rem;
    }

    .pepti-portal-context h2 {
        font-size: 1.25rem;
    }

    /* Button adjustments */
    .pepti-portal-btn {
        width: 100%;
        padding: 14px 20px;
    }
}


/* =========================================================
   PART 19: THIRD-PARTY CSS OVERRIDES
   Intercepts BeTheme, Elementor, and WooCommerce bleed-through
   ========================================================= */

/* ─────────────────────────────────────────────────────────
   19A. WOOCOMMERCE ROOT VARIABLE OVERRIDES
   Ensures WC uses our design tokens regardless of WC settings
   ───────────────────────────────────────────────────────── */
:root {
    --woocommerce: var(--pepti-primary) !important;
    --wc-primary: var(--pepti-primary) !important;
    --wc-primary-text: #ffffff !important;
    --wc-secondary: var(--pepti-gray-200) !important;
    --wc-secondary-text: var(--pepti-gray-700) !important;
    --wc-highlight: var(--pepti-primary) !important;
    --wc-highligh-text: #ffffff !important;
    --wc-green: var(--pepti-success) !important;
    --wc-red: var(--pepti-error) !important;
    --wc-orange: var(--pepti-warning) !important;
    --wc-blue: var(--pepti-info) !important;
}

/* ─────────────────────────────────────────────────────────
   19B. ELEMENTOR GLOBAL COLOR OVERRIDES
   Prevents white text/primary from Elementor kit settings
   ───────────────────────────────────────────────────────── */
.elementor-kit-288 {
    --e-global-color-primary: var(--pepti-primary) !important;
    --e-global-color-secondary: var(--pepti-gray-900) !important;
    --e-global-color-text: var(--pepti-gray-900) !important;
    --e-global-color-accent: var(--pepti-primary) !important;
}

/* ─────────────────────────────────────────────────────────
   19C. ELEMENTOR BUTTON BORDER-RADIUS OVERRIDE
   Elementor kit sets 30px pill — we want 8px
   ───────────────────────────────────────────────────────── */
.elementor-kit-288 button,
.elementor-kit-288 input[type="button"],
.elementor-kit-288 input[type="submit"],
.elementor-kit-288 .elementor-button {
    border-radius: var(--pepti-radius-lg) !important;
}

/* ─────────────────────────────────────────────────────────
   19D. BETHEME BUTTON VARIABLE OVERRIDE
   BeTheme hardcodes button bg/hover vars to a fixed color.
   Override with --pepti-* vars so buttons respond to gender theming.
   ───────────────────────────────────────────────────────── */
:root {
    --mfn-button-bg: var(--pepti-primary) !important;
    --mfn-button-bg-hover: var(--pepti-primary-hover) !important;
    --mfn-button-border-color-hover: var(--pepti-primary-hover) !important;
    --mfn-button-theme-bg: var(--pepti-primary) !important;
    --mfn-button-theme-bg-hover: var(--pepti-primary-hover) !important;
    --mfn-button-theme-border-color-hover: var(--pepti-primary-hover) !important;
    --mfn-button-action-bg: var(--pepti-primary) !important;
    --mfn-button-action-bg-hover: var(--pepti-primary-hover) !important;
    --mfn-button-action-border-color-hover: var(--pepti-primary-hover) !important;
    --mfn-button-shop-bg: var(--pepti-primary) !important;
    --mfn-button-shop-bg-hover: var(--pepti-primary-hover) !important;
    --mfn-button-shop-border-color-hover: var(--pepti-primary-hover) !important;
}

/* ─────────────────────────────────────────────────────────
   19E. BETHEME THEME COLOR OVERRIDES
   BeTheme generates ~30 CSS rules with hardcoded purple from
   theme options. Override ALL with gender-aware --pepti-* vars
   so colors change when switching men/women/neutral.
   ───────────────────────────────────────────────────────── */

/* Theme accent color (.themecolor class, icons, pricing, tabs) */
.themecolor,
.icon_box .icon_wrapper,
.icon_box a .icon_wrapper,
.color-iconbox,
.pricing-box .plan-header .price,
.tab-title,
.opening_hours .opening_hours_wrapper li span {
    color: var(--pepti-primary) !important;
}

/* Theme background (.themebg class, various components) */
.themebg,
#Filters .filters_wrapper ul li a:hover,
#Filters .filters_wrapper ul li.current-cat a,
.pager .pages a:hover,
.pager .pages a.active,
.pager .pages span.page-numbers.current {
    background-color: var(--pepti-primary) !important;
}

/* General link hover — exclude custom buttons that have their own hover styles */
a:not([class*="btn"]):not([class*="button"]):not([class*="action_button"]):not([class*="cta"]):not([class*="__btn"]):hover,
a:not([class*="btn"]):not([class*="button"]):not([class*="action_button"]):not([class*="cta"]):not([class*="__btn"]):focus,
a:hover.mfn-link {
    color: var(--pepti-primary-hover) !important;
}

/* Custom button hover color lock — BeTheme's a:hover{color:#6d28d9} bleeds
   into buttons whose :hover rules don't explicitly set color. Lock them. */
/* Primary/filled buttons on dark backgrounds — keep white text */
.home-hero-mobile__btn--primary:hover,
.pc-intro-hero__btn--primary:hover,
.pepti-hero-premium__btn--primary:hover,
.pc-footer-cta__btn--primary:hover,
.nuyu-cta-btn:hover,
/* Portal-side CTAs / buttons — text MUST stay white on hover regardless of brand
   color, otherwise BeTheme's bare a:hover{color:--pepti-primary-hover} matches
   the gender-dynamic background and the label vanishes. */
.pepti-halaxy-book-card__cta,
.pepti-halaxy-book-card__cta:link,
.pepti-halaxy-book-card__cta:visited,
.pepti-halaxy-book-card__cta:hover,
.pepti-halaxy-book-card__cta:focus,
.pepti-halaxy-book-card__cta:active,
.pepti-halaxy-dash__btn--primary,
.pepti-halaxy-dash__btn--primary:link,
.pepti-halaxy-dash__btn--primary:visited,
.pepti-halaxy-dash__btn--primary:hover,
.pepti-halaxy-dash__btn--primary:focus,
.pepti-halaxy-dash__btn--primary:active,
.pepti-halaxy-btn--primary,
.pepti-halaxy-btn--primary:link,
.pepti-halaxy-btn--primary:visited,
.pepti-halaxy-btn--primary:hover,
.pepti-halaxy-btn--primary:focus,
.pepti-halaxy-btn--primary:active,
.pepti-signin__button,
.pepti-signin__button:link,
.pepti-signin__button:visited,
.pepti-signin__button:hover,
.pepti-signin__button:focus,
.pepti-signin__button:active {
    color: #ffffff !important;
}
/* Ghost/outline buttons on dark backgrounds — keep white text */
.pc-footer-cta__btn--ghost:hover,
.pepti-hero-premium__btn--ghost:hover {
    color: #ffffff !important;
}
/* Service CTA buttons — use gender-aware primary color on hover */
.pcsvc-cta-btn:hover {
    color: var(--pepti-primary) !important;
}
/* Button-styled links without "btn" class — keep white text on gradient bg */
.pepti-contact-map__info a:hover {
    color: #ffffff !important;
}

/* Fancy links */
a.mfn-link-2 span,
a:hover.mfn-link-2 span:before,
a.mfn-link-5 span,
a.mfn-link-8:after,
a.mfn-link-8:before {
    background: var(--pepti-primary) !important;
}

a.mfn-link-2 span:before,
a:hover.mfn-link-4:before,
a:hover.mfn-link-4:after,
a.mfn-link-5:before,
a.mfn-link-7:after,
a.mfn-link-7:before {
    background: var(--pepti-primary-hover) !important;
}

/* Menu active/hover states */
#Top_bar .menu > li.current-menu-item > a,
#Top_bar .menu > li.current_page_item > a,
#Top_bar .menu > li.current-menu-parent > a,
#Top_bar .menu > li.current-page-parent > a,
#Top_bar .menu > li.current-menu-ancestor > a,
#Top_bar .menu > li.hover > a,
#Top_bar .menu > li ul li a:hover,
#Top_bar .menu > li ul li.hover > a {
    color: var(--pepti-primary) !important;
}

/* Side slide menu */
#Side_slide a.active,
#Side_slide a:not(.button):hover,
#Side_slide #menu ul li.hover > .menu-toggle,
#Side_slide #menu ul li.current-menu-item > a,
#Side_slide #menu ul li.hover > a,
#Side_slide #menu ul li:hover > a {
    color: var(--pepti-primary) !important;
}

/* Footer colors */
.mfn-footer a:not(.button,.icon_bar,.mfn-btn,.mfn-option-btn) {
    color: var(--pepti-primary) !important;
}
.mfn-footer a:not(.button,.icon_bar,.mfn-btn,.mfn-option-btn):hover {
    color: var(--pepti-primary-hover) !important;
}
.mfn-footer h1, .mfn-footer h2, .mfn-footer h3,
.mfn-footer h4, .mfn-footer h5, .mfn-footer h6,
.mfn-footer h1 a, .mfn-footer h2 a, .mfn-footer h3 a {
    color: var(--pepti-primary) !important;
}
.mfn-footer .footer_copy .social li a:hover,
.mfn-footer .footer_copy .social-menu a:hover {
    color: var(--pepti-primary-hover) !important;
}
.mfn-footer .themebg,
.mfn-footer .widget_categories ul,
.mfn-footer .widget_mfn_menu ul li a:hover {
    background-color: var(--pepti-primary) !important;
}

/* Sliding top */
#Sliding-top a:hover {
    color: var(--pepti-primary-hover) !important;
}

/* Icon box hover */
.icon_box:hover .icon_wrapper:before {
    background-color: var(--pepti-primary) !important;
}
.style-simple .icon_box:hover .icon_wrapper {
    color: var(--pepti-primary) !important;
}

/* Logo text color — gender dynamic (only logo, NOT all h1s) */
.text-logo #logo {
    color: var(--pepti-primary) !important;
}

/* Wishlist */
.mfn-wish-button:hover .path {
    stroke: var(--pepti-primary) !important;
}

/* Back to top */
.footer_button,
#back_to_top.footer_button {
    background-color: var(--pepti-primary) !important;
}

/* ─────────────────────────────────────────────────────────
   19G. BETHEME LIST COLOR OVERRIDE
   BeTheme sets color-list on ul/ol via style-colors.php
   ───────────────────────────────────────────────────────── */
.column_column ul,
.column_column ol,
.the_content_wrapper:not(.is-elementor) ul,
.the_content_wrapper:not(.is-elementor) ol {
    color: var(--pepti-gray-700);
}

/* ─────────────────────────────────────────────────────────
   19H. BETHEME BUTTON HOVER TEXT + ICON FIX
   BeTheme outputs empty --mfn-button-*-color-hover vars,
   causing text/icon to inherit the link hover color.
   Lock them to white so filled buttons stay readable.
   ───────────────────────────────────────────────────────── */
:root {
    --mfn-button-font-color-hover: #ffffff !important;
    --mfn-button-theme-font-color-hover: #ffffff !important;
    --mfn-button-action-font-color-hover: #ffffff !important;
    --mfn-button-shop-font-color-hover: #ffffff !important;
    --mfn-button-icon-color-hover: #ffffff;
    --mfn-button-theme-icon-color-hover: #ffffff;
    --mfn-button-action-icon-color-hover: #ffffff;
    --mfn-button-shop-icon-color-hover: #ffffff;
}

/* ─────────────────────────────────────────────────────────
   19I. WOOCOMMERCE BUTTON BORDER-RADIUS
   Override WooCommerce default 3px to match design system
   ───────────────────────────────────────────────────────── */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .cart .button,
.woocommerce .checkout-button,
.woocommerce #place_order {
    border-radius: var(--pepti-radius-lg) !important;
}

/* 19J removed — was forcing ALL links purple on hover site-wide */

/* ─────────────────────────────────────────────────────────
   19K. CONTACT FORM BUTTON — GENDER DYNAMIC
   CF7 and WPForms submit buttons use hardcoded purple.
   Override to use --pepti-primary so they respect gender theming.
   ───────────────────────────────────────────────────────── */
.wpcf7 input[type="submit"],
.wpcf7-submit,
.wpforms-submit,
.wpforms-submit-container button {
    background-color: var(--pepti-primary) !important;
    color: #ffffff !important;
    border: none !important;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7-submit:hover,
.wpforms-submit:hover,
.wpforms-submit-container button:hover {
    background-color: var(--pepti-primary-hover) !important;
    color: #ffffff !important;
}

/* ─────────────────────────────────────────────────────────
   19L. BETHEME BUILDER BUTTON HOVER FIX
   BeTheme action_button and mfn-btn text must stay white
   on hover when button has a filled/colored background.
   ───────────────────────────────────────────────────────── */
a.action_button:hover,
a.action_button:focus,
.action_button:hover,
.mfn-btn:hover,
.button-love a:hover,
.mfn-header-tmpl .action_button:hover {
    color: #ffffff !important;
}

/* Ghost/outline BeTheme buttons on dark sections —
   text and border should be white, hover fills with theme color */
.mcb-section[style*="background-color"] .action_button.button_stroke:not(:hover),
.mcb-section[style*="background-image"] .action_button.button_stroke:not(:hover) {
    color: #ffffff !important;
    border-color: rgba(255,255,255,0.4) !important;
}
.mcb-section[style*="background-color"] .action_button.button_stroke:hover,
.mcb-section[style*="background-image"] .action_button.button_stroke:hover {
    background-color: var(--pepti-primary) !important;
    border-color: var(--pepti-primary) !important;
    color: #ffffff !important;
}

/* ─────────────────────────────────────────────────────────
   19M. GET DIRECTIONS BUTTON FIX
   Button inside contact map card needs visible text
   ───────────────────────────────────────────────────────── */
.pepti-contact-map__info .action_button,
.pepti-contact-map__info a.button,
.pepti-contact-map__info .mfn-btn {
    color: #ffffff !important;
    background-color: var(--pepti-primary) !important;
}
.pepti-contact-map__info .action_button:hover,
.pepti-contact-map__info a.button:hover,
.pepti-contact-map__info .mfn-btn:hover {
    background-color: var(--pepti-primary-hover) !important;
    color: #ffffff !important;
}


/* =========================================================
   END OF PEPTICLINIC UNIFIED STYLESHEET v4.0
   ========================================================= */
