/* =============================================================================
   MANGO MANSION — Premium Luxury Futuristic Theme v2.0
   "Pakistan's Finest. Delivered to the World."
   Author: Antigravity AI
   ============================================================================= */

/* ======================== CUSTOM PROPERTIES ======================== */
:root {
    /* Brand Colors */
    --mm-gold:          #C8A85C;      /* Luxury Gold */
    --mm-gold-bright:   #D4B36A;      /* Light Gold */
    --mm-gold-deep:     #967C3E;      /* Deep Amber Gold */
    --mm-gold-glow:     rgba(200, 168, 92, 0.18);
    --mm-gold-subtle:   rgba(200, 168, 92, 0.08);

    --mm-green:         #022F20;      /* Deep Forest Green */
    --mm-green-light:   #033724;      /* Medium Forest Green */
    --mm-green-bright:  #043A27;      /* Vibrant Estate Green */
    --mm-green-glow:    rgba(3, 55, 36, 0.25);

    /* Dark Luxury Background System (Forest Green Based) */
    --mm-bg-base:       #011e14;       /* Deepest Black-Green */
    --mm-bg-surface:    #02271a;       /* Dark Green Surface */
    --mm-bg-elevated:   #033625;       /* Elevated green card base */
    --mm-bg-glass:      rgba(2, 39, 26, 0.75); /* Frosted green glass */
    --mm-bg-glass-light:rgba(3, 54, 37, 0.6);

    /* Mango Accents */
    --mm-accent-mango:      #FFD54A;   /* Ripe Mango Yellow */
    --mm-accent-mango-deep: #FFB300;   /* Rich Mango Orange */

    /* Text */
    --mm-text-primary:  #f0ede8;       /* Ivory White */
    --mm-text-secondary:#c8b89a;       /* Luxury Muted Gold */
    --mm-text-muted:    rgba(240, 237, 232, 0.5); /* Semi-transparent warm gray */
    --mm-text-inverse:  #011e14;       /* Dark Green on gold text */

    /* Borders */
    --mm-border-gold:   rgba(200, 168, 92, 0.15);
    --mm-border-subtle: rgba(240, 237, 232, 0.06);
    --mm-border-active: rgba(200, 168, 92, 0.4);

    /* Gradients */
    --mm-gradient-gold:    linear-gradient(135deg, #FFE093 0%, #C8A85C 50%, #967C3E 100%);
    --mm-gradient-green:   linear-gradient(135deg, #043A27 0%, #011E14 100%);
    --mm-gradient-hero:    radial-gradient(ellipse 80% 50% at 50% 40%, rgba(200, 168, 92, 0.12) 0%, transparent 60%);
    --mm-gradient-card:    linear-gradient(145deg, rgba(3, 54, 37, 0.95) 0%, rgba(1, 30, 20, 0.95) 100%);
    --mm-gradient-footer:  linear-gradient(180deg, #022F20 0%, #011E14 100%);
    --mm-gradient-text:    linear-gradient(135deg, #FFE093 0%, #C8A85C 50%, #967C3E 100%);

    /* Shadows */
    --mm-shadow-sm:     0 2px 8px rgba(0,0,0,0.4);
    --mm-shadow-md:     0 8px 24px rgba(0,0,0,0.5);
    --mm-shadow-lg:     0 20px 60px rgba(0,0,0,0.6);
    --mm-shadow-gold:   0 0 30px hsla(41,100%,50%,0.25), 0 8px 32px rgba(0,0,0,0.5);
    --mm-shadow-gold-hover: 0 0 50px hsla(41,100%,50%,0.35), 0 12px 40px rgba(0,0,0,0.6);
    --mm-shadow-green:  0 0 30px hsla(152,70%,25%,0.3);

    /* Glassmorphism */
    --mm-blur-sm:       blur(8px);
    --mm-blur-md:       blur(16px);
    --mm-blur-lg:       blur(28px);

    /* Typography */
    --mm-font-display:  'Playfair Display', 'Georgia', serif;
    --mm-font-body:     'Outfit', 'Inter', system-ui, sans-serif;
    --mm-font-badge:    'Cinzel', 'Georgia', serif;

    /* Sizes */
    --mm-container-max: 1280px;
    --mm-container-pad: clamp(16px, 5vw, 48px);
    --mm-section-pad:   clamp(60px, 8vw, 120px);
    --mm-radius-sm:     8px;
    --mm-radius-md:     16px;
    --mm-radius-lg:     24px;
    --mm-radius-xl:     32px;
    --mm-radius-pill:   9999px;

    /* Timing */
    --mm-ease-smooth:   cubic-bezier(0.16, 1, 0.3, 1);
    --mm-ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1);
    --mm-ease-in:       cubic-bezier(0.4, 0, 1, 1);
    --mm-ease-out:      cubic-bezier(0, 0, 0.2, 1);
    --mm-t-fast:        150ms;
    --mm-t-normal:      300ms;
    --mm-t-slow:        500ms;
    --mm-t-xslow:       800ms;
}

/* ======================== RESET & BASE ======================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
    scroll-behavior: auto; /* Let OS/browser handle scroll physics natively — no JS override */
    -webkit-text-size-adjust: 100%;
    overscroll-behavior-y: none; /* Prevent scroll chaining jank */
}

body {
    font-family: var(--mm-font-body);
    background-color: var(--mm-bg-base);
    color: var(--mm-text-primary);
    line-height: 1.65;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; font-family: inherit; border: none; background: none; }
ul { list-style: none; }
input, textarea { font-family: inherit; }

.mm-sr-only {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border-width: 0;
}

/* ======================== CONTAINER ======================== */
.mm-container {
    width: 100%;
    max-width: var(--mm-container-max);
    margin: 0 auto;
    padding-inline: var(--mm-container-pad);
}

/* ======================== TYPOGRAPHY UTILITIES ======================== */
.mm-gradient-text,
.mm-section-title em,
.mm-hero-title em {
    background: var(--mm-gradient-text);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-style: normal;
}

/* ======================== BUTTONS ======================== */
.mm-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 28px;
    border-radius: var(--mm-radius-pill);
    font-family: var(--mm-font-body);
    font-weight: 600;
    font-size: 15px;
    letter-spacing: 0.02em;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
    border: none;
}

.mm-btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.15) 0%, transparent 60%);
    opacity: 0;
    transition: opacity var(--mm-t-fast);
    border-radius: inherit;
}
.mm-btn:hover::before { opacity: 1; }

.mm-btn-primary {
    background: var(--mm-gradient-gold);
    color: var(--mm-text-inverse);
    box-shadow: var(--mm-shadow-gold);
}
.mm-btn-primary:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: var(--mm-shadow-gold-hover);
}
.mm-btn-primary:active { transform: translateY(0) scale(0.98); }

.mm-btn-outline {
    background: transparent;
    color: var(--mm-gold);
    border: 1.5px solid var(--mm-border-active);
    backdrop-filter: var(--mm-blur-sm);
}
.mm-btn-outline:hover {
    background: var(--mm-gold-subtle);
    border-color: var(--mm-gold);
    transform: translateY(-2px);
    box-shadow: var(--mm-shadow-gold);
}

.mm-btn-ghost {
    background: transparent;
    color: var(--mm-gold);
    font-size: 14px;
    padding: 0;
    font-weight: 600;
}
.mm-btn-ghost:hover { opacity: 0.8; }

.mm-btn-small { padding: 10px 18px; font-size: 13px; gap: 6px; }
.mm-btn-large { padding: 16px 36px; font-size: 16px; }

/* ======================== SECTION SHARED STYLES ======================== */
.mm-section-header {
    text-align: center;
    margin-bottom: clamp(40px, 6vw, 72px);
}

.mm-section-tag {
    font-family: var(--mm-font-badge);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--mm-gold);
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    opacity: 0.9;
}
.mm-section-tag::before,
.mm-section-tag::after {
    content: '';
    display: block;
    width: 32px;
    height: 1px;
    background: var(--mm-gradient-gold);
    opacity: 0.6;
}

.mm-section-title {
    font-family: var(--mm-font-display);
    font-size: clamp(28px, 4.5vw, 54px);
    font-weight: 700;
    line-height: 1.15;
    color: var(--mm-text-primary);
    margin-bottom: 20px;
}

.mm-section-desc {
    font-size: 16px;
    color: var(--mm-text-secondary);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.75;
}

/* ======================== HEADER ======================== */
.mm-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 1000;
    background: rgba(1, 30, 20, 0.65);
    backdrop-filter: var(--mm-blur-lg);
    -webkit-backdrop-filter: var(--mm-blur-lg);
    border-bottom: 1px solid rgba(200, 168, 92, 0.15);
    transition: background var(--mm-t-normal) var(--mm-ease-out),
                border-color var(--mm-t-normal),
                box-shadow var(--mm-t-normal);
    height: 70px;
    display: flex;
    align-items: center;
}

.mm-header.mm-scrolled {
    background: rgba(1, 30, 20, 0.92);
    border-color: var(--mm-gold);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
}

.mm-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    height: 70px;
}

/* Logo */
.mm-logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    flex-shrink: 0;
    transition: opacity var(--mm-t-fast);
}
.mm-logo-img {
    max-height: 48px;
    width: auto;
    object-fit: contain;
    border-radius: 6px;
    filter: drop-shadow(0 2px 8px rgba(0,0,0,0.3));
    transition: transform var(--mm-t-normal) var(--mm-ease-spring);
}
.mm-logo:hover .mm-logo-img {
    transform: scale(1.04);
}

.mm-logo-icon {
    font-size: 28px;
    filter: drop-shadow(0 0 8px hsla(41,100%,50%,0.6));
    animation: mm-float 4s ease-in-out infinite;
}

@keyframes mm-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}

.mm-logo-text { display: flex; flex-direction: column; line-height: 1.1; }
.mm-logo-name {
    font-family: var(--mm-font-display);
    font-size: 16px;
    font-weight: 700;
    color: var(--mm-text-primary);
    letter-spacing: 0.01em;
}
.mm-logo-tagline {
    font-family: var(--mm-font-badge);
    font-size: 9px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--mm-gold);
    opacity: 0.8;
}

/* Desktop Nav */
.mm-nav .mm-nav-list {
    display: flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    margin: 0; padding: 0;
}

.mm-nav .mm-nav-list > li > a,
.mm-nav .mm-nav-list > li > button {
    display: inline-block;
    padding: 8px 14px;
    border-radius: var(--mm-radius-sm);
    font-size: 14px;
    font-weight: 500;
    color: var(--mm-text-secondary);
    transition: all var(--mm-t-fast);
    position: relative;
}
.mm-nav .mm-nav-list > li > a::after {
    content: '';
    position: absolute;
    bottom: 4px; left: 14px; right: 14px;
    height: 2px;
    background: var(--mm-gradient-gold);
    border-radius: 1px;
    transform: scaleX(0);
    transition: transform var(--mm-t-normal) var(--mm-ease-smooth);
}
.mm-nav .mm-nav-list > li > a:hover { color: var(--mm-text-primary); }
.mm-nav .mm-nav-list > li > a:hover::after { transform: scaleX(1); }

/* Header Actions */
.mm-header-actions {
    display: flex;
    align-items: center;
    gap: 4px;
}

.mm-icon-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px; height: 40px;
    border-radius: var(--mm-radius-sm);
    color: var(--mm-text-secondary);
    transition: all var(--mm-t-fast);
    position: relative;
    border: none;
    background: none;
}
.mm-icon-btn:hover {
    color: var(--mm-gold);
    background: var(--mm-gold-subtle);
}

.mm-cart-badge {
    position: absolute;
    top: 4px; right: 4px;
    background: var(--mm-gold);
    color: var(--mm-text-inverse);
    font-size: 9px;
    font-weight: 700;
    width: 16px; height: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

/* Search Overlay */
.mm-search-overlay {
    position: fixed;
    inset: 0;
    z-index: 1100;
    background: rgba(1, 30, 20, 0.96);
    backdrop-filter: var(--mm-blur-lg);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 80px;
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--mm-t-normal) var(--mm-ease-out),
                visibility var(--mm-t-normal);
}
.mm-search-overlay.mm-active {
    opacity: 1;
    visibility: visible;
}

.mm-search-overlay-inner {
    width: 100%;
    max-width: 680px;
    padding: 0 24px;
    position: relative;
}

.mm-search-overlay-form {
    display: flex;
    align-items: center;
    background: var(--mm-bg-elevated);
    border: 1.5px solid var(--mm-border-active);
    border-radius: var(--mm-radius-pill);
    overflow: hidden;
    box-shadow: var(--mm-shadow-gold);
}

.mm-search-overlay-input {
    flex: 1;
    padding: 18px 24px;
    background: none;
    border: none;
    outline: none;
    color: var(--mm-text-primary);
    font-size: 17px;
    font-family: var(--mm-font-body);
}
.mm-search-overlay-input::placeholder { color: var(--mm-text-muted); }

.mm-search-overlay-submit {
    padding: 0 20px;
    color: var(--mm-gold);
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
}
.mm-search-overlay-submit:hover { opacity: 0.7; }

.mm-search-overlay-close {
    position: absolute;
    top: -50px;
    right: 24px;
    color: var(--mm-text-secondary);
    background: var(--mm-bg-elevated);
    border: 1px solid var(--mm-border-subtle);
    border-radius: 50%;
    width: 40px; height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all var(--mm-t-fast);
}
.mm-search-overlay-close:hover { color: var(--mm-gold); border-color: var(--mm-border-gold); }

/* Mobile Menu Toggle */
.mm-mobile-toggle { display: none; }
.mm-hamburger { display: flex; flex-direction: column; gap: 5px; }
.mm-hamburger span {
    display: block;
    width: 22px; height: 2px;
    background: var(--mm-text-secondary);
    border-radius: 1px;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
}

/* Mobile Menu */
.mm-mobile-menu {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    height: 100vh;
    background: rgba(1, 26, 17, 0.98);
    backdrop-filter: var(--mm-blur-lg);
    -webkit-backdrop-filter: var(--mm-blur-lg);
    z-index: 999;
    transform: translateX(100%);
    transition: transform var(--mm-t-slow) var(--mm-ease-smooth);
    padding: 100px 24px 40px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}
.mm-mobile-menu.mm-active { transform: translateX(0); }

.mm-mobile-menu ul {
    display: flex;
    flex-direction: column;
    gap: 14px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.mm-mobile-menu li a {
    display: block;
    padding: 16px 24px;
    font-size: 18px;
    font-weight: 600;
    color: var(--mm-text-primary);
    border-radius: var(--mm-radius-md);
    border: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(2, 39, 26, 0.4);
    transition: all var(--mm-t-fast);
    text-align: center;
    text-decoration: none;
}

.mm-mobile-menu li a:hover,
.mm-mobile-menu li.current-menu-item a {
    color: var(--mm-gold);
    background: rgba(200, 168, 92, 0.1);
    border-color: rgba(200, 168, 92, 0.35);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
    transform: scale(1.02);
}

/* Mobile Submenu Styling */
.mm-mobile-menu ul.sub-menu {
    padding-left: 20px;
    margin-top: 8px;
    gap: 8px;
}
.mm-mobile-menu ul.sub-menu li a {
    font-size: 15px;
    padding: 10px 16px;
    font-weight: 500;
    background: rgba(2, 39, 26, 0.25);
    border-color: rgba(255, 255, 255, 0.02);
}

/* ======================== HERO SECTION ======================== */
.mm-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 100px 0 80px;
    overflow: hidden;
    background: var(--mm-bg-base);
}

/* Hero background gradient */
.mm-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 70% 60% at 50% 50%, hsla(41,100%,50%,0.07) 0%, transparent 65%),
        radial-gradient(ellipse 40% 40% at 20% 30%, hsla(152,70%,20%,0.1) 0%, transparent 60%),
        radial-gradient(ellipse 30% 30% at 80% 70%, hsla(41,100%,50%,0.05) 0%, transparent 60%);
    pointer-events: none;
}

/* Particle Canvas */
.mm-particles-canvas {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    pointer-events: none;
    z-index: 0;
}

/* Floating orbs */
.mm-orbs { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.mm-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.3;
    animation: mm-orb-drift 12s ease-in-out infinite alternate;
}
.mm-orb-1 {
    width: 500px; height: 500px;
    background: radial-gradient(circle, hsla(41,100%,50%,0.4) 0%, transparent 70%);
    top: -100px; left: -100px;
    animation-delay: 0s;
}
.mm-orb-2 {
    width: 400px; height: 400px;
    background: radial-gradient(circle, hsla(152,70%,25%,0.5) 0%, transparent 70%);
    bottom: -80px; right: -80px;
    animation-delay: -4s;
}
.mm-orb-3 {
    width: 300px; height: 300px;
    background: radial-gradient(circle, hsla(41,100%,50%,0.25) 0%, transparent 70%);
    top: 50%; left: 60%;
    animation-delay: -8s;
}
@keyframes mm-orb-drift {
    0% { transform: translate(0,0) scale(1); }
    100% { transform: translate(60px, 40px) scale(1.15); }
}

/* Hero Content */
.mm-hero > .mm-container {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    width: 100%;
}

.mm-hero-inner { display: flex; flex-direction: column; gap: 28px; }

.mm-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--mm-bg-glass);
    backdrop-filter: var(--mm-blur-sm);
    border: 1px solid var(--mm-border-gold);
    border-radius: var(--mm-radius-pill);
    padding: 8px 20px;
    font-family: var(--mm-font-badge);
    font-size: 11px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--mm-gold);
    width: fit-content;
    animation: mm-badge-pulse 3s ease-in-out infinite;
}
@keyframes mm-badge-pulse {
    0%, 100% { box-shadow: 0 0 0 0 var(--mm-gold-glow); }
    50% { box-shadow: 0 0 0 8px transparent; }
}

.mm-badge-dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--mm-gold);
    animation: mm-dot-blink 1.5s ease-in-out infinite;
    flex-shrink: 0;
}
@keyframes mm-dot-blink {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(0.7); }
}

.mm-hero-title {
    font-family: var(--mm-font-display);
    font-size: clamp(36px, 5.5vw, 72px);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.02em;
    color: var(--mm-text-primary);
}
.mm-hero-title em {
    background: var(--mm-gradient-text);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-style: normal;
}

.mm-hero-subtitle {
    font-size: clamp(15px, 1.6vw, 18px);
    color: var(--mm-text-secondary);
    line-height: 1.75;
    max-width: 520px;
}

.mm-hero-ctas {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

/* Stats */
.mm-hero-stats {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px 28px;
    background: var(--mm-bg-glass);
    backdrop-filter: var(--mm-blur-md);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-lg);
    width: fit-content;
    flex-wrap: wrap;
}

.mm-stat { text-align: center; }
.mm-stat-number {
    font-family: var(--mm-font-display);
    font-size: 26px;
    font-weight: 700;
    color: var(--mm-gold);
    line-height: 1;
}
.mm-stat-unit { font-size: 18px; color: var(--mm-gold); font-weight: 700; }
.mm-stat-label {
    font-size: 11px;
    color: var(--mm-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 4px;
    display: block;
}
.mm-stat-divider { width: 1px; height: 40px; background: var(--mm-border-subtle); flex-shrink: 0; }

/* Hero Cards */
.mm-hero-cards {
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: relative;
    z-index: 1;
}

.mm-hero-card {
    position: relative;
    background: var(--mm-gradient-card);
    border: 1px solid var(--mm-border-gold);
    border-radius: var(--mm-radius-xl);
    padding: 24px 28px;
    display: flex;
    align-items: center;
    gap: 20px;
    backdrop-filter: var(--mm-blur-md);
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
    cursor: pointer;
    overflow: hidden;
}

.mm-hero-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: var(--mm-gradient-gold);
    border-radius: var(--mm-radius-xl) var(--mm-radius-xl) 0 0;
}

.mm-hero-card-glow {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 60% at 30% 50%, var(--mm-gold-subtle) 0%, transparent 70%);
    opacity: 0;
    transition: opacity var(--mm-t-normal);
    pointer-events: none;
}
.mm-hero-card:hover .mm-hero-card-glow { opacity: 1; }
.mm-hero-card:hover {
    transform: translateX(8px);
    border-color: var(--mm-border-active);
    box-shadow: var(--mm-shadow-gold);
}

.mm-hero-card-featured {
    transform: scale(1.04);
    border-color: var(--mm-gold);
    box-shadow: var(--mm-shadow-gold);
    background: linear-gradient(145deg, hsla(41,50%,15%,0.95) 0%, hsla(240,20%,8%,0.95) 100%);
}
.mm-hero-card-featured:hover { transform: scale(1.04) translateX(8px); }

.mm-featured-label {
    position: absolute;
    top: 12px; right: 16px;
    background: var(--mm-gradient-gold);
    color: var(--mm-text-inverse);
    font-family: var(--mm-font-badge);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: var(--mm-radius-pill);
}

.mm-hero-card-emoji {
    font-size: 40px;
    filter: drop-shadow(0 4px 12px hsla(41,100%,50%,0.4));
    flex-shrink: 0;
    transition: transform var(--mm-t-normal) var(--mm-ease-spring);
}
.mm-hero-card:hover .mm-hero-card-emoji { transform: scale(1.15) rotate(-5deg); }

.mm-hero-card-info { flex: 1; }
.mm-hero-card-info h3 {
    font-family: var(--mm-font-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--mm-text-primary);
    margin-bottom: 4px;
}
.mm-hero-card-info p {
    font-size: 12px;
    color: var(--mm-text-muted);
    letter-spacing: 0.04em;
}
.mm-hero-card-price {
    display: block;
    margin-top: 8px;
    font-size: 15px;
    font-weight: 700;
    color: var(--mm-gold);
}

/* Scroll Indicator */
.mm-scroll-indicator {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: var(--mm-text-muted);
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    z-index: 1;
    animation: mm-scroll-bob 2s ease-in-out infinite;
}
@keyframes mm-scroll-bob {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(6px); }
}

/* ======================== STORY SECTION ======================== */
.mm-story {
    padding-block: var(--mm-section-pad);
    background: linear-gradient(180deg, var(--mm-bg-base) 0%, var(--mm-bg-surface) 100%);
    position: relative;
    overflow: hidden;
}

.mm-story::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: radial-gradient(ellipse 60% 50% at 30% 50%, hsla(152,70%,15%,0.08) 0%, transparent 70%);
    pointer-events: none;
}

.mm-story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    position: relative;
    z-index: 1;
}

.mm-story-visual {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 500px;
}

.mm-story-orb {
    position: absolute;
    width: 350px; height: 350px;
    background: radial-gradient(circle, hsla(152,70%,18%,0.35) 0%, transparent 70%);
    border-radius: 50%;
    filter: blur(30px);
    animation: mm-orb-drift 8s ease-in-out infinite alternate;
}

.mm-story-image-frame {
    position: relative;
    width: 260px; height: 260px;
    background: var(--mm-gradient-card);
    border: 1.5px solid var(--mm-border-gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--mm-shadow-gold), inset 0 0 60px hsla(41,100%,50%,0.05);
}

.mm-story-emoji-bg {
    position: absolute;
    font-size: 120px;
    opacity: 0.06;
    transform: scale(1.5);
    filter: blur(2px);
    pointer-events: none;
}
.mm-story-icon { font-size: 80px; filter: drop-shadow(0 8px 24px hsla(41,100%,50%,0.5)); }
.mm-story-icon-ring {
    position: absolute;
    inset: -16px;
    border: 1px solid var(--mm-border-gold);
    border-radius: 50%;
    animation: mm-ring-spin 20s linear infinite;
}
.mm-story-icon-ring::before {
    content: '🥭';
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 20px;
}
@keyframes mm-ring-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.mm-story-badge-float {
    position: absolute;
    background: var(--mm-bg-glass);
    backdrop-filter: var(--mm-blur-sm);
    border: 1px solid var(--mm-border-gold);
    border-radius: var(--mm-radius-pill);
    padding: 10px 18px;
    font-size: 13px;
    color: var(--mm-gold);
    font-weight: 600;
    white-space: nowrap;
    animation: mm-badge-float 4s ease-in-out infinite alternate;
}
.mm-story-badge-1 { top: 10%; right: 5%; animation-delay: 0s; }
.mm-story-badge-2 { bottom: 15%; left: 0%; animation-delay: -2s; }
@keyframes mm-badge-float {
    0% { transform: translateY(0) rotate(-1deg); }
    100% { transform: translateY(-12px) rotate(1deg); }
}

.mm-story-content { display: flex; flex-direction: column; gap: 28px; }

.mm-story-text p {
    font-size: 16px;
    color: var(--mm-text-secondary);
    line-height: 1.85;
}

.mm-story-features { display: flex; flex-direction: column; gap: 20px; }
.mm-story-feature {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 20px;
    background: var(--mm-bg-glass);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-md);
    backdrop-filter: var(--mm-blur-sm);
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
}
.mm-story-feature:hover {
    border-color: var(--mm-border-gold);
    background: var(--mm-bg-elevated);
    transform: translateX(6px);
}
.mm-feature-icon { font-size: 24px; flex-shrink: 0; margin-top: 2px; }
.mm-feature-text h4 {
    font-size: 15px;
    font-weight: 600;
    color: var(--mm-text-primary);
    margin-bottom: 4px;
}
.mm-feature-text p { font-size: 13px; color: var(--mm-text-muted); }

/* ======================== PRODUCTS SECTION ======================== */
.mm-products {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-surface);
    position: relative;
}
.mm-products::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 40% at 50% 0%, var(--mm-gold-subtle) 0%, transparent 60%);
    pointer-events: none;
}

.mm-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
    position: relative;
    z-index: 1;
}

.mm-product-card {
    background: var(--mm-gradient-card);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-xl);
    overflow: hidden;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
    position: relative;
}

.mm-product-card:hover {
    border-color: var(--mm-border-gold);
    transform: translateY(-8px);
    box-shadow: var(--mm-shadow-gold);
}

.mm-product-card-inner { display: flex; flex-direction: column; height: 100%; }

.mm-product-image-wrap {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
    background: var(--mm-bg-elevated);
}

.mm-product-image-link { display: block; width: 100%; height: 100%; }

.mm-product-img {
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform var(--mm-t-slow) var(--mm-ease-smooth);
}
.mm-product-card:hover .mm-product-img { transform: scale(1.08); }

.mm-product-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, hsla(240,20%,4%,0.7) 0%, transparent 60%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 16px;
    opacity: 0;
    transition: opacity var(--mm-t-normal);
}
.mm-product-card:hover .mm-product-overlay { opacity: 1; }
.mm-product-overlay-text {
    color: var(--mm-gold);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.mm-product-badges {
    position: absolute;
    top: 12px; left: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.mm-product-badge {
    padding: 4px 12px;
    border-radius: var(--mm-radius-pill);
    font-family: var(--mm-font-badge);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.mm-badge-export {
    background: rgba(200, 168, 92, 0.12) !important;
    color: var(--mm-gold-bright) !important;
    border: 1px solid rgba(200, 168, 92, 0.45) !important;
    backdrop-filter: var(--mm-blur-sm) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

.mm-product-info {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
}

.mm-product-rating { display: flex; align-items: center; gap: 2px; }
.mm-star { color: var(--mm-border-gold); font-size: 14px; }
.mm-star-filled { color: var(--mm-gold); }

.mm-product-title {
    font-family: var(--mm-font-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--mm-text-primary);
}
.mm-product-title a { color: inherit; transition: color var(--mm-t-fast); }
.mm-product-title a:hover { color: var(--mm-gold); }

.mm-product-desc { font-size: 13px; color: var(--mm-text-muted); line-height: 1.6; flex: 1; }

.mm-product-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid var(--mm-border-subtle);
}

.mm-product-price { color: var(--mm-gold); font-size: 18px; font-weight: 700; }
.mm-product-price .amount { color: inherit; }
.mm-product-price ins { text-decoration: none; }
.mm-product-price del { opacity: 0.5; font-size: 14px; }

.mm-products-cta {
    text-align: center;
    margin-top: 48px;
    position: relative;
    z-index: 1;
}

/* ======================== VIDEO SECTION ======================== */
.mm-videos {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-base);
    position: relative;
}
.mm-videos::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 50% at 50% 50%, hsla(152,70%,12%,0.12) 0%, transparent 70%);
    pointer-events: none;
}

.mm-videos-grid {
    display: grid;
    gap: 24px;
    position: relative;
    z-index: 1;
}
.mm-videos-count-1 { grid-template-columns: 1fr; max-width: 720px; margin: 0 auto; }
.mm-videos-count-2 { grid-template-columns: 1fr 1fr; }
.mm-videos-count-3 { grid-template-columns: repeat(3, 1fr); }

.mm-video-card {
    background: var(--mm-gradient-card);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-xl);
    overflow: hidden;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
}
.mm-video-card:hover {
    border-color: var(--mm-border-gold);
    box-shadow: var(--mm-shadow-gold);
    transform: translateY(-4px);
}

.mm-video-frame-wrap {
    position: relative;
    aspect-ratio: 16/9;
    overflow: hidden;
    background: var(--mm-bg-elevated);
}

.mm-video-play-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
}

.mm-video-thumb-pattern {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, hsla(41,100%,10%,0.8) 0%, hsla(152,70%,8%,0.8) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}
.mm-video-thumb-emoji { font-size: 80px; filter: blur(0.5px); opacity: 0.6; }
.mm-video-thumb-overlay {
    position: absolute;
    inset: 0;
    background: hsla(240,20%,4%,0.4);
    transition: background var(--mm-t-normal);
}
.mm-video-play-overlay:hover .mm-video-thumb-overlay { background: hsla(240,20%,4%,0.2); }

.mm-video-play-btn {
    position: relative;
    z-index: 3;
    width: 72px; height: 72px;
    background: var(--mm-gradient-gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mm-text-inverse);
    box-shadow: 0 0 40px hsla(41,100%,50%,0.4), var(--mm-shadow-md);
    transition: all var(--mm-t-normal) var(--mm-ease-spring);
}
.mm-video-play-overlay:hover .mm-video-play-btn {
    transform: scale(1.12);
    box-shadow: 0 0 60px hsla(41,100%,50%,0.6), var(--mm-shadow-lg);
}

.mm-video-iframe {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    border: none;
    z-index: 1;
}
.mm-video-hidden { display: none; }

.mm-video-info { padding: 20px 24px 24px; }
.mm-video-title {
    font-family: var(--mm-font-display);
    font-size: 18px;
    font-weight: 600;
    color: var(--mm-text-primary);
    margin-bottom: 8px;
    line-height: 1.3;
}
.mm-video-desc { font-size: 13px; color: var(--mm-text-muted); line-height: 1.6; }

/* ======================== SEO CONTENT SECTION ======================== */
.mm-seo-content {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-surface);
    position: relative;
}

.mm-seo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
    position: relative;
    z-index: 1;
}

.mm-seo-card {
    padding: 28px;
    background: var(--mm-bg-glass);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-xl);
    backdrop-filter: var(--mm-blur-sm);
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
    position: relative;
    overflow: hidden;
}
.mm-seo-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: var(--mm-gradient-gold);
    opacity: 0;
    transition: opacity var(--mm-t-normal);
}
.mm-seo-card:hover {
    border-color: var(--mm-border-gold);
    background: var(--mm-bg-elevated);
    transform: translateY(-4px);
    box-shadow: var(--mm-shadow-gold);
}
.mm-seo-card:hover::before { opacity: 1; }

.mm-seo-icon { font-size: 36px; margin-bottom: 16px; display: block; }
.mm-seo-card h3 {
    font-family: var(--mm-font-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--mm-text-primary);
    margin-bottom: 12px;
}
.mm-seo-card p {
    font-size: 14px;
    color: var(--mm-text-secondary);
    line-height: 1.75;
}
.mm-seo-card p strong { color: var(--mm-gold); font-weight: 600; }

/* ======================== BLOG SECTION ======================== */
.mm-blog {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-base);
    position: relative;
}
.mm-blog::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 40% at 50% 100%, hsla(41,100%,50%,0.05) 0%, transparent 70%);
    pointer-events: none;
}

.mm-blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    position: relative;
    z-index: 1;
}

.mm-blog-card {
    background: var(--mm-gradient-card);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-xl);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
}
.mm-blog-card:hover {
    border-color: var(--mm-border-gold);
    transform: translateY(-6px);
    box-shadow: var(--mm-shadow-gold);
}
.mm-blog-card-link { display: flex; flex-direction: column; height: 100%; color: inherit; }

.mm-blog-card-top {
    position: relative;
    aspect-ratio: 16/9;
    background: var(--mm-bg-elevated);
    overflow: hidden;
}
.mm-blog-thumb {
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform var(--mm-t-slow) var(--mm-ease-smooth);
}
.mm-blog-card:hover .mm-blog-thumb { transform: scale(1.06); }

.mm-blog-emoji-thumb {
    width: 100%; height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 64px;
    background: linear-gradient(135deg, hsla(41,50%,10%,1) 0%, hsla(152,50%,8%,1) 100%);
    filter: drop-shadow(0 4px 12px hsla(41,100%,50%,0.3));
}

.mm-blog-tag {
    position: absolute;
    bottom: 12px; left: 12px;
    background: var(--mm-gradient-gold);
    color: var(--mm-text-inverse);
    font-family: var(--mm-font-badge);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: var(--mm-radius-pill);
}

.mm-blog-card-body { padding: 20px 20px 12px; flex: 1; }
.mm-blog-card-title {
    font-family: var(--mm-font-display);
    font-size: 16px;
    font-weight: 700;
    color: var(--mm-text-primary);
    line-height: 1.35;
    margin-bottom: 10px;
    transition: color var(--mm-t-fast);
}
.mm-blog-card:hover .mm-blog-card-title { color: var(--mm-gold); }
.mm-blog-card-excerpt { font-size: 13px; color: var(--mm-text-muted); line-height: 1.65; }

.mm-blog-card-footer {
    padding: 12px 20px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid var(--mm-border-subtle);
    margin-top: auto;
}
.mm-blog-date { font-size: 12px; color: var(--mm-text-muted); }
.mm-blog-read-link { font-size: 12px; color: var(--mm-gold); font-weight: 600; }

.mm-blog-cta { text-align: center; margin-top: 48px; position: relative; z-index: 1; }

/* ======================== TESTIMONIALS ======================== */
.mm-testimonials {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-surface);
    position: relative;
    overflow: hidden;
}
.mm-testimonials::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 60% at 50% 50%, hsla(41,100%,50%,0.04) 0%, transparent 70%);
}

.mm-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    position: relative;
    z-index: 1;
}

.mm-testimonial-card {
    padding: 32px;
    background: var(--mm-gradient-card);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-xl);
    display: flex;
    flex-direction: column;
    gap: 20px;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth);
    position: relative;
    overflow: hidden;
}
.mm-testimonial-card::before {
    content: '"';
    position: absolute;
    top: 16px; right: 24px;
    font-family: var(--mm-font-display);
    font-size: 80px;
    line-height: 1;
    color: var(--mm-gold);
    opacity: 0.08;
}
.mm-testimonial-card:hover {
    border-color: var(--mm-border-gold);
    box-shadow: var(--mm-shadow-gold);
    transform: translateY(-4px);
}

.mm-testimonial-top { display: flex; align-items: center; justify-content: space-between; }
.mm-testimonial-stars { display: flex; gap: 2px; }
.mm-testimonial-flag { font-size: 22px; }

.mm-testimonial-text {
    font-size: 15px;
    color: var(--mm-text-secondary);
    line-height: 1.75;
    font-style: italic;
    flex: 1;
}

.mm-testimonial-author { display: flex; align-items: center; gap: 14px; }
.mm-testimonial-avatar {
    width: 44px; height: 44px;
    border-radius: 50%;
    background: var(--mm-gradient-gold);
    color: var(--mm-text-inverse);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    font-family: var(--mm-font-display);
    flex-shrink: 0;
}
.mm-testimonial-name { font-weight: 600; color: var(--mm-text-primary); font-size: 14px; }
.mm-testimonial-location { font-size: 12px; color: var(--mm-text-muted); margin-top: 2px; }

/* ======================== NEWSLETTER SECTION ======================== */
.mm-newsletter {
    padding-block: var(--mm-section-pad);
    background: var(--mm-bg-base);
    position: relative;
    overflow: hidden;
}
.mm-newsletter::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 60% 70% at 50% 50%, hsla(41,100%,50%,0.08) 0%, transparent 65%),
        radial-gradient(ellipse 40% 40% at 20% 80%, hsla(152,70%,15%,0.1) 0%, transparent 60%);
}

.mm-newsletter-inner {
    position: relative;
    z-index: 1;
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}

.mm-newsletter-bg-emoji {
    font-size: 80px;
    filter: blur(2px);
    opacity: 0.15;
    position: absolute;
    top: -40px;
    z-index: 0;
    pointer-events: none;
}

.mm-newsletter-title {
    font-family: var(--mm-font-display);
    font-size: clamp(28px, 4vw, 44px);
    font-weight: 700;
    color: var(--mm-text-primary);
    line-height: 1.15;
    position: relative;
    z-index: 1;
}
.mm-newsletter-subtitle {
    font-size: 16px;
    color: var(--mm-text-secondary);
    line-height: 1.75;
    max-width: 480px;
    position: relative;
    z-index: 1;
}

.mm-newsletter-form { width: 100%; position: relative; z-index: 1; }
.mm-newsletter-input-wrap {
    display: flex;
    gap: 12px;
    background: var(--mm-bg-glass);
    backdrop-filter: var(--mm-blur-md);
    border: 1.5px solid var(--mm-border-gold);
    border-radius: var(--mm-radius-pill);
    padding: 6px 6px 6px 24px;
    box-shadow: var(--mm-shadow-gold);
    align-items: center;
}
.mm-newsletter-input {
    flex: 1;
    background: none;
    border: none;
    outline: none;
    color: var(--mm-text-primary);
    font-size: 15px;
    font-family: var(--mm-font-body);
    min-width: 0;
}
.mm-newsletter-input::placeholder { color: var(--mm-text-muted); }

.mm-newsletter-message {
    margin-top: 12px;
    font-size: 14px;
    min-height: 20px;
    color: var(--mm-green-bright);
}
.mm-newsletter-message.mm-error { color: hsl(0, 70%, 60%); }

.mm-newsletter-privacy { font-size: 12px; color: var(--mm-text-muted); }

/* ======================== FOOTER ======================== */
.mm-footer {
    background: var(--mm-gradient-footer);
    position: relative;
    overflow: hidden;
}
.mm-footer::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 60% at 50% 0%, hsla(152,70%,12%,0.2) 0%, transparent 70%);
    pointer-events: none;
}

.mm-footer-topline {
    height: 2px;
    background: var(--mm-gradient-gold);
    opacity: 0.6;
}

.mm-footer .mm-container {
    padding-block: 72px 40px;
    position: relative;
    z-index: 1;
}

.mm-footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 48px;
    padding-bottom: 56px;
    border-bottom: 1px solid var(--mm-border-subtle);
}

/* Footer Brand */
.mm-footer-logo {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}
.mm-footer-logo-img {
    max-height: 72px;
    width: auto;
    object-fit: contain;
    border-radius: 8px;
    filter: drop-shadow(0 4px 12px rgba(0,0,0,0.4));
}

.mm-footer-tagline {
    font-family: var(--mm-font-badge);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--mm-gold);
    margin-bottom: 14px;
}
.mm-footer-desc { font-size: 13px; color: var(--mm-text-muted); line-height: 1.75; margin-bottom: 24px; }

.mm-footer-social {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.mm-social-link {
    width: 40px; height: 40px;
    border-radius: var(--mm-radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mm-bg-elevated);
    border: 1px solid var(--mm-border-subtle);
    color: var(--mm-text-muted);
    transition: all var(--mm-t-fast);
}
.mm-social-link:hover {
    color: var(--mm-gold);
    border-color: var(--mm-border-gold);
    background: var(--mm-gold-subtle);
    transform: translateY(-2px);
}

/* Footer Columns */
.mm-footer-col-title {
    font-family: var(--mm-font-badge);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--mm-gold);
    margin-bottom: 20px;
}
.mm-footer-links { display: flex; flex-direction: column; gap: 10px; }
.mm-footer-links a {
    font-size: 14px;
    color: var(--mm-text-muted);
    transition: color var(--mm-t-fast);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.mm-footer-links a:hover { color: var(--mm-gold); }
.mm-footer-links a:hover::before { content: '→'; color: var(--mm-gold); font-size: 12px; }

/* Footer Contact */
.mm-footer-contact-items { display: flex; flex-direction: column; gap: 12px; margin-bottom: 20px; }
.mm-footer-contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: var(--mm-text-muted);
}
.mm-footer-contact-item svg { flex-shrink: 0; color: var(--mm-gold); }
.mm-footer-contact-item a { color: var(--mm-text-muted); transition: color var(--mm-t-fast); }
.mm-footer-contact-item a:hover { color: var(--mm-gold); }

.mm-footer-trust { display: flex; flex-direction: column; gap: 8px; }
.mm-trust-badge {
    font-size: 12px;
    color: var(--mm-text-muted);
    padding: 6px 12px;
    background: var(--mm-bg-elevated);
    border: 1px solid var(--mm-border-subtle);
    border-radius: var(--mm-radius-sm);
    display: inline-block;
    width: fit-content;
}

/* Footer Bottom */
.mm-footer-bottom {
    padding-top: 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}
.mm-footer-bottom-left p { font-size: 13px; color: var(--mm-text-muted); }
.mm-footer-bottom-right {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 13px;
    color: var(--mm-text-muted);
}
.mm-footer-bottom-right a { color: var(--mm-text-muted); transition: color var(--mm-t-fast); }
.mm-footer-bottom-right a:hover { color: var(--mm-gold); }
.mm-footer-bottom-right span { opacity: 0.4; }

/* ======================== WOOCOMMERCE OVERRIDES ======================== */
body .woocommerce .button,
body .woocommerce button.button {
    background: var(--mm-gradient-gold) !important;
    color: var(--mm-text-inverse) !important;
    border-radius: var(--mm-radius-pill) !important;
    font-weight: 600 !important;
    border: none !important;
    box-shadow: var(--mm-shadow-gold) !important;
    transition: all var(--mm-t-normal) !important;
    padding: 12px 24px !important;
}
body .woocommerce .button:hover,
body .woocommerce button.button:hover {
    opacity: 0.9 !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--mm-shadow-gold-hover) !important;
}
body .woocommerce-message, body .woocommerce-info {
    background: var(--mm-bg-elevated) !important;
    color: var(--mm-text-primary) !important;
    border-top-color: var(--mm-gold) !important;
}
body .woocommerce input:not([type=submit]),
body .woocommerce textarea,
body .woocommerce select {
    background: var(--mm-bg-elevated) !important;
    border: 1px solid var(--mm-border-subtle) !important;
    color: var(--mm-text-primary) !important;
    border-radius: var(--mm-radius-sm) !important;
}
body .woocommerce input:not([type=submit]):focus,
body .woocommerce textarea:focus {
    border-color: var(--mm-border-active) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px var(--mm-gold-glow) !important;
}

/* ======================== SCROLLBAR STYLING ======================== */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--mm-bg-base); }
::-webkit-scrollbar-thumb {
    background: var(--mm-gradient-gold);
    border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover { opacity: 0.8; }

/* ======================== ANIMATIONS & UTILITIES ======================== */
@keyframes mm-fade-up {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes mm-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes mm-shimmer {
    0% { background-position: -200% center; }
    100% { background-position: 200% center; }
}

.mm-animate-fade-up {
    animation: mm-fade-up 0.7s var(--mm-ease-smooth) both;
}
.mm-animate-fade-in {
    animation: mm-fade-in 0.5s var(--mm-ease-out) both;
}

/* Intersection Observer animated elements */
[data-mm-animate] {
    opacity: 0;
    transform: translateY(40px) scale(0.96);
    filter: blur(4px);
    transition: opacity 0.9s var(--mm-ease-smooth), transform 0.9s var(--mm-ease-smooth), filter 0.9s var(--mm-ease-smooth);
    will-change: transform, opacity, filter;
}
[data-mm-animate].mm-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
}

/* ======================== RESPONSIVE ======================== */
@media (max-width: 1024px) {
    .mm-nav { display: none; }
    .mm-mobile-toggle { display: flex; }
    .mm-hero > .mm-container { grid-template-columns: 1fr; gap: 48px; text-align: center; }
    .mm-hero-inner { align-items: center; }
    .mm-hero-badge { margin: 0 auto; }
    .mm-hero-stats { margin: 0 auto; }
    .mm-hero-cards { flex-direction: row; flex-wrap: wrap; justify-content: center; }
    .mm-hero-card { max-width: 260px; }
    .mm-story-grid { grid-template-columns: 1fr; gap: 48px; }
    .mm-story-visual { height: 350px; order: -1; }
    .mm-footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
    .mm-hero-cards { flex-direction: column; align-items: stretch; max-width: 400px; margin: 0 auto; }
    .mm-hero-card-featured { transform: none; }
    .mm-hero-card-featured:hover { transform: translateX(8px); }
    .mm-products-grid { grid-template-columns: 1fr 1fr; }
    .mm-videos-count-3 { grid-template-columns: 1fr; }
    .mm-videos-count-2 { grid-template-columns: 1fr; }
    .mm-footer-grid { grid-template-columns: 1fr; gap: 36px; }
    .mm-footer-bottom { flex-direction: column; text-align: center; }
    .mm-hero-stats { flex-wrap: wrap; gap: 16px; justify-content: center; }
    .mm-stat-divider { display: none; }
    .mm-newsletter-input-wrap { flex-direction: column; border-radius: var(--mm-radius-xl); padding: 16px; gap: 12px; }
    .mm-newsletter-input { width: 100%; text-align: center; }
    .mm-newsletter-input-wrap .mm-btn { width: 100%; justify-content: center; }
}

@media (max-width: 480px) {
    .mm-header-inner { gap: 12px; }
    .mm-logo-img { max-height: 38px; }
    .mm-products-grid { grid-template-columns: 1fr; }
    .mm-testimonials-grid { grid-template-columns: 1fr; }
    .mm-seo-grid { grid-template-columns: 1fr; }
    .mm-hero-title { font-size: 32px; }
}

/* Push content below fixed header */
.site-header ~ .site-main,
body > .mm-hero:first-of-type,
.hfeed .mm-hero {
    margin-top: 0;
}
body { padding-top: 70px; }

/* Scroll progress indicator bar */
.mm-scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    width: 0%;
    background: linear-gradient(90deg, #FFE093 0%, #FFB000 50%, #D88900 100%);
    box-shadow: 0 0 8px rgba(255, 176, 0, 0.6);
    z-index: 99999;
    transition: width 0.1s ease-out;
}

/* ============================================================
   ASTRA FULL-WIDTH AND TITLE HIDING OVERRIDES FOR HOMEPAGE
   ============================================================ */
body.home {
    background-color: var(--mm-bg-base) !important;
}

/* Hide Astra Default Title Header */
body.home .entry-header,
body.home .ast-archive-description {
    display: none !important;
}

/* Remove Astra site spacing & wrappers */
body.home #page,
body.home .site,
body.home #content,
body.home .ast-container,
body.home #primary,
body.home #main,
body.home .ast-article-single,
body.home .entry-content {
    background-color: var(--mm-bg-base) !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Remove padding/margin on grid/container elements within Astra structure */
body.home .ast-row,
body.home .ast-col-sm-12 {
    padding: 0 !important;
    margin: 0 !important;
}

/* ============================================================
   IMMERSIVE SCROLL CANVAS & NARRATIVE LAYOUT
   ============================================================ */
.mm-hero-track {
    position: relative;
    height: 220vh; /* scroll track — burst plays while pinned */
    width: 100%;
    background: var(--mm-bg-base);
}

.mm-hero-canvas-wrapper {
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(ellipse 85% 60% at 50% 50%, rgba(2, 47, 32, 0.45) 0%, var(--mm-bg-base) 80%);
}

.mm-canvas-container {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

canvas#mm-burst-scene {
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
}

.layer-content {
    position: relative;
    z-index: 20;
    pointer-events: none;
}

.layer-content a,
.layer-content button {
    pointer-events: auto;
}

/* Energy Text Overlays */
.mm-energy-text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--mm-font-display);
    font-size: clamp(45px, 8vw, 120px);
    font-weight: 700;
    opacity: 0;
    color: var(--mm-accent-mango);
    text-shadow: 0 0 30px var(--mm-gold), 0 0 90px var(--mm-gold-deep);
    pointer-events: none;
    z-index: 60;
    text-align: center;
    line-height: 1.1;
    letter-spacing: 0.05em;
    white-space: nowrap;
}

/* Scroll indicator hint */
.mm-scroll-hint {
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 50;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    opacity: 0;
    pointer-events: none;
}

.mm-scroll-hint span {
    font-size: 11px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--mm-text-secondary);
}

.mm-scroll-hint-line {
    width: 1px;
    height: 48px;
    background: linear-gradient(to bottom, rgba(200, 168, 92, 0.5), transparent);
    animation: scrollLineDown 1.8s ease-in-out infinite;
}

@keyframes scrollLineDown {
    0%   { transform: scaleY(0); transform-origin: top; }
    50%  { transform: scaleY(1); transform-origin: top; }
    50.01% { transform-origin: bottom; }
    100% { transform: scaleY(0); transform-origin: bottom; }
}

/* Horizontal Hero Variety Cards on scroll end */
.mm-hero-cards {
    display: flex;
    gap: 24px;
    justify-content: center;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: absolute;
    bottom: 8%;
    left: 50%;
    transform: translate(-50%, 40px);
    z-index: 50;
    pointer-events: none;
    opacity: 0;
    transition: transform 0.8s var(--mm-ease-smooth), opacity 0.8s var(--mm-ease-smooth);
}

.mm-hero-cards .mm-hero-card {
    min-width: 280px;
    max-width: 320px;
}

/* GSAP Word Clip Reveal Support */
.word-wrap {
    display: inline-block;
    overflow: hidden;
    vertical-align: bottom;
}

.word {
    display: inline-block;
    transform: translateY(110%);
}

.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s var(--mm-ease-smooth), transform 0.8s var(--mm-ease-smooth);
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Responsive Sticky Canvas Elements */
@media (max-width: 1024px) {
    .mm-hero-cards {
        flex-direction: row;
        flex-wrap: wrap;
        bottom: 6%;
    }
}

@media (max-width: 768px) {
    .mm-hero-cards {
        flex-direction: column;
        align-items: stretch;
        max-width: 360px;
        bottom: 5%;
        gap: 12px;
    }
    .mm-hero-card {
        padding: 16px 20px !important;
        gap: 12px !important;
    }
    .mm-hero-title {
        font-size: clamp(32px, 6vw, 48px) !important;
        line-height: 1.1 !important;
    }
    .mm-energy-text {
        font-size: clamp(32px, 6vw, 55px) !important;
    }
}

/* ============================================================
   GLOBAL THEME OVERRIDES FOR ASTRA & WOOCOMMERCE (DARK THEME)
   ============================================================ */
body,
body.blog,
body.archive,
body.single,
body.page,
body.woocommerce,
body.woocommerce-page,
.ast-separate-container,
.ast-separate-container.ast-two-container,
.site,
.site-content,
#content,
#primary,
#main,
.entry-content,
.woocommerce,
.woocommerce-page,
.ast-container,
.site-header,
.site-footer,
.main-header-bar,
.main-footer-bar,
.ast-footer-overlay,
#colophon {
    background-color: var(--mm-bg-base) !important;
    background: var(--mm-bg-base) !important;
    color: var(--mm-text-primary) !important;
}

/* Links in main content area */
.site-content a:not(.button):not(.mm-btn):not(.added_to_cart),
#primary a:not(.button):not(.mm-btn):not(.added_to_cart),
.entry-content a:not(.button):not(.mm-btn):not(.added_to_cart) {
    color: var(--mm-gold) !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(200, 168, 92, 0.3) !important;
    transition: color var(--mm-t-fast) !important;
}
.site-content a:not(.button):not(.mm-btn):not(.added_to_cart):hover,
#primary a:not(.button):not(.mm-btn):not(.added_to_cart):hover,
.entry-content a:not(.button):not(.mm-btn):not(.added_to_cart):hover {
    color: var(--mm-gold-bright) !important;
    text-decoration-color: var(--mm-gold) !important;
}

/* Headings and generic text elements */
h1, h2, h3, h4, h5, h6,
.entry-title,
.woocommerce-products-header__title,
.woocommerce-loop-product__title {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
}

/* Tables and containers */
.woocommerce table.shop_table,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout #order_review,
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment div.payment_box {
    background-color: var(--mm-bg-surface) !important;
    color: var(--mm-text-primary) !important;
    border-color: var(--mm-border-gold) !important;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    border-color: var(--mm-border-gold) !important;
    color: var(--mm-text-primary) !important;
}

.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout,
.woocommerce-Checkout-shipping,
.woocommerce-billing-fields {
    background-color: var(--mm-bg-surface) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-radius: var(--mm-radius-lg) !important;
    padding: 24px !important;
    color: var(--mm-text-primary) !important;
}

/* Form inputs & fields */
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-cart input[type="text"],
.woocommerce-cart select,
.woocommerce-page select,
.woocommerce-page input[type="text"],
.woocommerce-page input[type="email"],
.woocommerce-page input[type="tel"],
.woocommerce-page textarea,
.woocommerce-page select,
.woocommerce-page .select2-container--default .select2-selection--single {
    background-color: var(--mm-bg-elevated) !important;
    color: var(--mm-text-primary) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-radius: var(--mm-radius-sm) !important;
    padding: 10px 15px !important;
    outline: none !important;
}

.woocommerce-checkout input[type="text"]:focus,
.woocommerce-checkout input[type="email"]:focus,
.woocommerce-checkout input[type="tel"]:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-page input[type="text"]:focus,
.woocommerce-page textarea:focus {
    border-color: var(--mm-gold) !important;
    box-shadow: 0 0 10px var(--mm-gold-glow) !important;
}

/* Headings and labels in checkout */
.woocommerce-checkout h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
#order_review_heading,
.woocommerce-order-details__title,
.woocommerce-customer-details h2,
.woocommerce-column__title {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
    border-bottom: 1px solid var(--mm-border-gold) !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
    font-weight: 700 !important;
}

.woocommerce label {
    color: var(--mm-text-secondary) !important;
    font-family: var(--mm-font-body) !important;
    font-weight: 500 !important;
}

/* Totals & Totals table */
.cart_totals h2 {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
    border-bottom: 1px solid var(--mm-border-gold) !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

.cart_totals table.shop_table {
    border: none !important;
}

/* Coupon section */
.woocommerce-cart-form .coupon {
    background: transparent !important;
    border: none !important;
}

/* Single Product Overrides */
.woocommerce div.product .product_title {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
    font-size: clamp(24px, 3vw, 42px) !important;
    margin-bottom: 15px !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: var(--mm-gold) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    margin-bottom: 20px !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    color: var(--mm-text-secondary) !important;
    font-size: 15px !important;
    margin-bottom: 25px !important;
    line-height: 1.7 !important;
}

.woocommerce div.product .stock {
    color: var(--mm-accent-mango) !important;
    font-weight: 600 !important;
}

.woocommerce div.product .quantity input.qty {
    background-color: var(--mm-bg-elevated) !important;
    color: var(--mm-text-primary) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-radius: var(--mm-radius-sm) !important;
    padding: 8px !important;
    width: 60px !important;
    height: auto !important;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--mm-border-gold) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: var(--mm-bg-surface) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-bottom: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background: var(--mm-bg-elevated) !important;
    border-color: var(--mm-gold) !important;
    border-bottom: 1px solid var(--mm-bg-elevated) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--mm-text-secondary) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--mm-gold) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    background: var(--mm-bg-surface) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-top: none !important;
    padding: 24px !important;
    border-radius: 0 0 var(--mm-radius-lg) var(--mm-radius-lg) !important;
    color: var(--mm-text-primary) !important;
}

/* Notification Boxes */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice {
    background-color: var(--mm-bg-elevated) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-top: 3px solid var(--mm-gold) !important;
    color: var(--mm-text-primary) !important;
    border-radius: var(--mm-radius-sm) !important;
    box-shadow: var(--mm-shadow-md) !important;
}

.woocommerce-error li {
    color: #ff6b6b !important;
}

/* WooCommerce Buttons Override */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.woocommerce-page a.button.alt,
.woocommerce-page button.button.alt,
.woocommerce-page input.button.alt {
    background: var(--mm-gradient-gold) !important;
    color: var(--mm-text-inverse) !important;
    border-radius: var(--mm-radius-pill) !important;
    border: none !important;
    font-family: var(--mm-font-body) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 12px 24px !important;
    letter-spacing: 0.02em !important;
    box-shadow: var(--mm-shadow-sm) !important;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth) !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
    transform: translateY(-2px) !important;
    box-shadow: var(--mm-shadow-gold) !important;
    background: var(--mm-gradient-gold) !important;
    opacity: 0.95 !important;
}

.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active {
    transform: translateY(0) !important;
}

/* Disabled button styles */
.woocommerce a.button:disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button:disabled[disabled],
.woocommerce input.button:disabled[disabled] {
    background: var(--mm-bg-elevated) !important;
    color: var(--mm-text-muted) !important;
    cursor: not-allowed !important;
    opacity: 0.5 !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Payment method styling */
.woocommerce-checkout #payment ul.payment_methods li {
    color: var(--mm-text-primary) !important;
    font-weight: 500 !important;
    border-bottom: 1px solid var(--mm-border-subtle) !important;
    padding: 15px 0 !important;
}

.woocommerce-checkout #payment div.payment_box p {
    color: var(--mm-text-secondary) !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
}

/* Thank you / Order Received Page */
.woocommerce-order-received .woocommerce-thankyou-order-received {
    color: var(--mm-accent-mango) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin-bottom: 30px !important;
}

.woocommerce-order-received ul.woocommerce-thankyou-order-details {
    background: var(--mm-bg-surface) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-radius: var(--mm-radius-lg) !important;
    padding: 20px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    justify-content: space-between !important;
    list-style: none !important;
    margin-bottom: 40px !important;
}

.woocommerce-order-received ul.woocommerce-thankyou-order-details li {
    border: none !important;
    color: var(--mm-text-muted) !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
}

.woocommerce-order-received ul.woocommerce-thankyou-order-details li strong {
    display: block !important;
    color: var(--mm-text-primary) !important;
    font-size: 16px !important;
    margin-top: 5px !important;
    text-transform: none !important;
}

/* Shop/Archive Loop Overrides */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    background: var(--mm-gradient-card) !important;
    border: 1px solid var(--mm-border-gold) !important;
    border-radius: var(--mm-radius-lg) !important;
    padding: 20px !important;
    transition: all var(--mm-t-normal) var(--mm-ease-smooth) !important;
    text-align: center !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
    transform: translateY(-5px) !important;
    border-color: var(--mm-gold) !important;
    box-shadow: var(--mm-shadow-gold) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    margin: 15px 0 10px 0 !important;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
    color: var(--mm-gold) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    margin-bottom: 15px !important;
}

/* Mini Cart & Dropdowns */
.widget_shopping_cart,
.woocommerce-mini-cart,
.woocommerce-mini-cart-item,
.woocommerce-mini-cart__total,
.woocommerce-mini-cart__buttons {
    background-color: var(--mm-bg-surface) !important;
    color: var(--mm-text-primary) !important;
}
.woocommerce-mini-cart-item a {
    color: var(--mm-text-primary) !important;
}

/* Policy and Generic Pages Styles */
.page .entry-title,
.single-post .entry-title {
    color: var(--mm-text-primary) !important;
    font-family: var(--mm-font-display) !important;
    font-size: clamp(28px, 4vw, 48px) !important;
    margin-bottom: 25px !important;
    text-align: center !important;
}

.page .entry-content h2,
.single-post .entry-content h2,
.page .entry-content h3,
.single-post .entry-content h3 {
    color: var(--mm-gold) !important;
    font-family: var(--mm-font-display) !important;
    margin-top: 35px !important;
    margin-bottom: 15px !important;
}

.page .entry-content p,
.single-post .entry-content p,
.page .entry-content li,
.single-post .entry-content li {
    color: var(--mm-text-secondary) !important;
    font-size: 16px !important;
    line-height: 1.8 !important;
    margin-bottom: 1.5rem !important;
}

.page .entry-content ul,
.single-post .entry-content ul {
    list-style-type: disc !important;
    padding-left: 20px !important;
    margin-bottom: 1.5rem !important;
}

.page .entry-content ol,
.single-post .entry-content ol {
    list-style-type: decimal !important;
    padding-left: 20px !important;
    margin-bottom: 1.5rem !important;
}

.ast-breadcrumbs-wrapper,
.woocommerce-breadcrumb {
    color: var(--mm-text-secondary) !important;
    font-size: 13px !important;
    margin-bottom: 20px !important;
}
.ast-breadcrumbs-wrapper a,
.woocommerce-breadcrumb a {
    color: var(--mm-gold) !important;
}

/* ============================================================
   WOOCOMMERCE BLOCKS (CART & CHECKOUT) DESIGN SYSTEM OVERRIDES
   ============================================================ */
.wc-block-components-checkbox__label,
.wc-block-components-radio-control__option-label,
.wc-block-components-checkbox,
.wc-block-checkout__actions label,
.wc-block-components-address-form label,
.wc-block-components-text-input label,
.wc-block-components-combobox label,
.wc-block-components-form-step__title,
.wc-block-components-title,
.wc-block-checkout__step h2,
.wc-block-components-checkout-step__title,
.wc-block-components-address-card,
.wc-block-components-order-summary__header,
.wc-block-components-order-summary-item__title,
.wc-block-components-panel__title,
.wc-block-components-panel__content,
.wc-block-components-express-checkout__title,
.wc-block-components-express-checkout,
.wc-block-components-formatted-money,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-components-sidebar,
.wc-block-checkout__sidebar,
.wc-block-cart__sidebar-title,
.wc-block-cart__totals-title,
.wc-block-cart-items,
.wc-block-cart-item__wrap,
.wc-block-cart-item__product-name,
.wc-block-cart-item__price,
.wc-block-cart-item__total,
.wc-block-cart-item__remove-link,
.wc-block-cart-item__quantity,
.wc-block-components-sidebar-layout,
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wc-block-components-checkbox label,
.wc-block-checkout label,
.wc-block-checkout span,
.wc-block-checkout p,
.wc-block-cart label,
.wc-block-cart span,
.wc-block-cart p {
    color: var(--mm-text-primary) !important;
}

.wc-block-components-checkbox__description,
.wc-block-components-radio-control__option-description,
.wc-block-components-product-metadata,
.wc-block-components-totals-discount__label,
.wc-block-components-totals-discount__value,
.wc-block-components-totals-shipping__change-address-button,
.wc-block-components-checkout-step__description,
.wc-block-components-address-card__phone,
.wc-block-components-address-card__email,
.wc-block-components-address-card__address,
.wc-block-checkout__actions-privacy-policy,
.wc-block-checkout__actions-privacy-policy a {
    color: var(--mm-text-secondary) !important;
}

.wc-block-components-sidebar,
.wc-block-checkout__sidebar,
.wc-block-components-panel,
.wc-block-components-panel__content,
.wc-block-components-panel__button,
.wc-block-components-panel__title-path,
.wc-block-components-address-card,
.wc-block-components-express-checkout,
.wc-block-components-validation-error,
.wc-block-components-notice,
.wc-block-components-notice__content,
.wc-block-components-form-step,
.wc-block-components-checkout-step {
    background-color: var(--mm-bg-surface) !important;
    border-color: var(--mm-border-gold) !important;
    color: var(--mm-text-primary) !important;
}

.wc-block-components-panel {
    border-bottom: 1px solid var(--mm-border-gold) !important;
}

/* Ensure link color inside blocks checkout is gold */
.wc-block-checkout__actions-privacy-policy a,
.wc-block-checkout a {
    color: var(--mm-gold) !important;
    text-decoration: underline !important;
}
.wc-block-checkout__actions-privacy-policy a:hover,
.wc-block-checkout a:hover {
    color: var(--mm-gold-bright) !important;
}

