/*
Theme Name: MileMark Directory Theme
Theme URI: https://milemarkmedia.com
Description: Modern law firm directory theme. 12 color schemes, translucent headers, gradient backgrounds, body textures, sidebar accents, glassmorphism effects.
Version: 4.0
Author: MileMark Media
License: Proprietary
Text Domain: milemark-theme
*/

/* ================================================================
   RESET
   ================================================================ */
*,*::before,*::after{box-sizing:border-box}
body,h1,h2,h3,h4,h5,h6,p,figure{margin:0;padding:0}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
html,body{overflow-x:hidden}

/* ================================================================
   COLOR SCHEMES (12 total)
   ================================================================ */

/* --- 1. Deep Blue (default) --- */
:root,body.mm-scheme-deep-blue{
    --hd:#0f1e3d;--hd-rgb:15,30,61;--ht:#fff;--hh:#3b82f6;--ac:#1e40af;--ac2:#2563eb;--al:#dbeafe;--al2:#eff6ff;
    --bg:#f8f9fb;--bg2:#eef2f7;--card:#fff;--card-rgb:255,255,255;--tx:#1a1a2e;--tx2:#4b5563;--mu:#9ca3af;--bd:#e5e7eb;
    --glow:rgba(59,130,246,.15);--glow2:rgba(30,64,175,.08);
    --grad-body:linear-gradient(135deg,#f8f9fb 0%,#eef2f7 50%,#f0f4ff 100%);
    --grad-accent:linear-gradient(135deg,#1e40af,#3b82f6);
    --fh:'Merriweather',Georgia,serif;--fb:'Inter',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");
    --body-tex:none;
    --radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;
    --sidebar-accent:var(--ac);
}

/* --- 2. Crimson & Navy --- */
body.mm-scheme-crimson-navy{
    --hd:#1a1a2e;--hd-rgb:26,26,46;--ht:#fff;--hh:#ef4444;--ac:#b91c1c;--ac2:#dc2626;--al:#fde8e8;--al2:#fff5f5;
    --bg:#fafafa;--bg2:#f5f0f0;--card:#fff;--card-rgb:255,255,255;--tx:#1a1a2e;--tx2:#4b5563;--mu:#9ca3af;--bd:#e5e7eb;
    --glow:rgba(239,68,68,.12);--glow2:rgba(185,28,28,.06);
    --grad-body:linear-gradient(160deg,#fafafa 0%,#f5f0f0 50%,#fef2f2 100%);
    --grad-accent:linear-gradient(135deg,#b91c1c,#ef4444);
    --fh:'Libre Baskerville',Georgia,serif;--fb:'Source Sans 3',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='.04'%3E%3Ccircle cx='3' cy='3' r='1'/%3E%3Ccircle cx='13' cy='13' r='1'/%3E%3C/g%3E%3C/svg%3E");
    --body-tex:none;--radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 3. Charcoal & Teal --- */
body.mm-scheme-charcoal-teal{
    --hd:#1e293b;--hd-rgb:30,41,59;--ht:#fff;--hh:#14b8a6;--ac:#0d9488;--ac2:#14b8a6;--al:#ccfbf1;--al2:#f0fdfa;
    --bg:#f8fafc;--bg2:#f0f5f4;--card:#fff;--card-rgb:255,255,255;--tx:#1e293b;--tx2:#475569;--mu:#94a3b8;--bd:#e2e8f0;
    --glow:rgba(20,184,166,.12);--glow2:rgba(13,148,136,.06);
    --grad-body:linear-gradient(135deg,#f8fafc 0%,#f0fdfa 50%,#f0f5f4 100%);
    --grad-accent:linear-gradient(135deg,#0d9488,#14b8a6);
    --fh:'Playfair Display',Georgia,serif;--fb:'DM Sans',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='.025'%3E%3Cpath d='M0 40L40 0H20L0 20M40 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");
    --body-tex:none;--radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 4. Slate & Gold --- */
body.mm-scheme-slate-gold{
    --hd:#1c1c28;--hd-rgb:28,28,40;--ht:#fff;--hh:#d4a44c;--ac:#b8860b;--ac2:#d4a44c;--al:#fef3c7;--al2:#fffbeb;
    --bg:#fafaf8;--bg2:#f5f3ee;--card:#fff;--card-rgb:255,255,255;--tx:#1c1c28;--tx2:#4a4a5a;--mu:#9ca3af;--bd:#e5e5dc;
    --glow:rgba(212,164,76,.12);--glow2:rgba(184,134,11,.06);
    --grad-body:linear-gradient(160deg,#fafaf8 0%,#f5f3ee 50%,#fffbeb 100%);
    --grad-accent:linear-gradient(135deg,#b8860b,#d4a44c);
    --fh:'Cormorant Garamond',Georgia,serif;--fb:'Raleway',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7z' fill='%23fff' fill-opacity='.02'/%3E%3C/svg%3E");
    --body-tex:none;--radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 5. Forest & Copper --- */
body.mm-scheme-forest-copper{
    --hd:#1a2e1a;--hd-rgb:26,46,26;--ht:#fff;--hh:#c8875f;--ac:#8b5e3c;--ac2:#c8875f;--al:#fde8d0;--al2:#fef7ee;
    --bg:#f7f9f5;--bg2:#eef3ea;--card:#fff;--card-rgb:255,255,255;--tx:#1a2e1a;--tx2:#4a5e4a;--mu:#8a9a8a;--bd:#d5e0d0;
    --glow:rgba(200,135,95,.12);--glow2:rgba(139,94,60,.06);
    --grad-body:linear-gradient(135deg,#f7f9f5 0%,#eef3ea 40%,#fef7ee 100%);
    --grad-accent:linear-gradient(135deg,#2d5016,#4a7c2e);
    --fh:'Lora',Georgia,serif;--fb:'Nunito Sans',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='52' height='26' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23fff' stroke-opacity='.03'%3E%3Cpath d='M10 10c0-2.21-1.79-4-4-4S2 7.79 2 10m14 0c0-2.21-1.79-4-4-4s-4 1.79-4 4'/%3E%3C/g%3E%3C/svg%3E");
    --body-tex:none;--radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:#2d5016;
}

/* --- 6. Midnight Plum --- */
body.mm-scheme-midnight-plum{
    --hd:#1e1028;--hd-rgb:30,16,40;--ht:#f0e6ff;--hh:#c084fc;--ac:#7c3aed;--ac2:#a855f7;--al:#f3e8ff;--al2:#faf5ff;
    --bg:#faf8fc;--bg2:#f3eef8;--card:#fff;--card-rgb:255,255,255;--tx:#1e1028;--tx2:#5b4a6a;--mu:#9a8aab;--bd:#e5dced;
    --glow:rgba(192,132,252,.15);--glow2:rgba(124,58,237,.08);
    --grad-body:linear-gradient(160deg,#faf8fc 0%,#f3eef8 50%,#faf5ff 100%);
    --grad-accent:linear-gradient(135deg,#7c3aed,#c084fc);
    --fh:'Crimson Pro',Georgia,serif;--fb:'Outfit',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='30' height='30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 0L30 15 15 30 0 15z' fill='none' stroke='%23fff' stroke-opacity='.025'/%3E%3C/svg%3E");
    --body-tex:none;--radius:12px;--radius-lg:18px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 7. Ocean Breeze --- */
body.mm-scheme-ocean-breeze{
    --hd:#0c2d48;--hd-rgb:12,45,72;--ht:#fff;--hh:#38bdf8;--ac:#0284c7;--ac2:#0ea5e9;--al:#e0f2fe;--al2:#f0f9ff;
    --bg:#f0f9ff;--bg2:#e0f2fe;--card:#fff;--card-rgb:255,255,255;--tx:#0c2d48;--tx2:#3a6b8a;--mu:#7da8c4;--bd:#bae6fd;
    --glow:rgba(56,189,248,.15);--glow2:rgba(2,132,199,.08);
    --grad-body:linear-gradient(180deg,#f0f9ff 0%,#e0f2fe 30%,#f0f9ff 60%,#e8f4fd 100%);
    --grad-accent:linear-gradient(135deg,#0c4a6e,#0ea5e9);
    --fh:'Josefin Slab',Georgia,serif;--fb:'Work Sans',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='100' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 10c25 0 25-8 50-8s25 8 50 8' fill='none' stroke='%23fff' stroke-opacity='.04' stroke-width='.5'/%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='100' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 10c25 0 25-6 50-6s25 6 50 6' fill='none' stroke='%230284c7' stroke-opacity='.03' stroke-width='.5'/%3E%3C/svg%3E");
    --radius:12px;--radius-lg:20px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 8. Obsidian (Dark Mode) --- */
body.mm-scheme-obsidian{
    --hd:#0a0a0f;--hd-rgb:10,10,15;--ht:#e4e4e7;--hh:#a78bfa;--ac:#8b5cf6;--ac2:#a78bfa;--al:rgba(139,92,246,.12);--al2:rgba(139,92,246,.06);
    --bg:#111118;--bg2:#18181f;--card:#1c1c26;--card-rgb:28,28,38;--tx:#e4e4e7;--tx2:#a1a1aa;--mu:#71717a;--bd:#27272a;
    --glow:rgba(139,92,246,.2);--glow2:rgba(139,92,246,.1);
    --grad-body:linear-gradient(160deg,#111118 0%,#14141e 50%,#111118 100%);
    --grad-accent:linear-gradient(135deg,#6d28d9,#a78bfa);
    --fh:'Space Grotesk',system-ui,sans-serif;--fb:'Space Grotesk',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h40v40H0z' fill='none' stroke='%23fff' stroke-opacity='.02' stroke-width='.5'/%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h40v40H0z' fill='none' stroke='%23fff' stroke-opacity='.015' stroke-width='.5'/%3E%3C/svg%3E");
    --radius:10px;--radius-lg:16px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}
body.mm-scheme-obsidian a{color:var(--ac)}
body.mm-scheme-obsidian a:hover{color:var(--ac2)}
body.mm-scheme-obsidian .mm-post-card-body h2 a{color:var(--tx)}
body.mm-scheme-obsidian .mm-post-card-body h2 a:hover{color:var(--ac)}
body.mm-scheme-obsidian .mm-ft{border-top:1px solid var(--bd)}

/* --- 9. Warm Terracotta --- */
body.mm-scheme-terracotta{
    --hd:#2c1810;--hd-rgb:44,24,16;--ht:#fef0e6;--hh:#f59e6b;--ac:#c2703c;--ac2:#e8854a;--al:#fde8d0;--al2:#fef7ee;
    --bg:#fdf8f4;--bg2:#f8ede3;--card:#fff;--card-rgb:255,255,255;--tx:#2c1810;--tx2:#6b4f3e;--mu:#a08878;--bd:#e8d8c8;
    --glow:rgba(245,158,107,.15);--glow2:rgba(194,112,60,.08);
    --grad-body:linear-gradient(135deg,#fdf8f4 0%,#f8ede3 40%,#fef7ee 100%);
    --grad-accent:linear-gradient(135deg,#9a4a20,#e8854a);
    --fh:'Bitter',Georgia,serif;--fb:'Karla',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='40' cy='40' r='20' fill='none' stroke='%23fff' stroke-opacity='.025'/%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='30' cy='30' r='1' fill='%23c2703c' fill-opacity='.02'/%3E%3C/svg%3E");
    --radius:8px;--radius-lg:14px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 10. Arctic Steel --- */
body.mm-scheme-arctic-steel{
    --hd:#1b2838;--hd-rgb:27,40,56;--ht:#cad5e2;--hh:#64b5f6;--ac:#3a7cc2;--ac2:#5c9ee0;--al:#d6eaf8;--al2:#eaf4fc;
    --bg:#edf2f7;--bg2:#dfe6ee;--card:#f7fafc;--card-rgb:247,250,252;--tx:#1b2838;--tx2:#4a5e72;--mu:#8a9bb0;--bd:#c8d6e0;
    --glow:rgba(100,181,246,.12);--glow2:rgba(58,124,194,.06);
    --grad-body:linear-gradient(180deg,#edf2f7 0%,#dfe6ee 50%,#eaf4fc 100%);
    --grad-accent:linear-gradient(135deg,#1b2838,#3a7cc2);
    --fh:'IBM Plex Serif',Georgia,serif;--fb:'IBM Plex Sans',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='20' height='20' fill='none' stroke='%23fff' stroke-opacity='.04' stroke-width='.3'/%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='20' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='20' height='20' fill='none' stroke='%233a7cc2' stroke-opacity='.02' stroke-width='.3'/%3E%3C/svg%3E");
    --radius:6px;--radius-lg:10px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* --- 11. Noir Ember (Dark Mode) --- */
body.mm-scheme-noir-ember{
    --hd:#0d0d0d;--hd-rgb:13,13,13;--ht:#f5f0ec;--hh:#ff6b35;--ac:#e05520;--ac2:#ff6b35;--al:rgba(224,85,32,.12);--al2:rgba(224,85,32,.06);
    --bg:#141414;--bg2:#1a1a1a;--card:#1e1e1e;--card-rgb:30,30,30;--tx:#f0ebe6;--tx2:#b0a898;--mu:#7a7068;--bd:#2a2a2a;
    --glow:rgba(255,107,53,.2);--glow2:rgba(224,85,32,.1);
    --grad-body:linear-gradient(160deg,#141414 0%,#1a1410 50%,#141414 100%);
    --grad-accent:linear-gradient(135deg,#c23d0a,#ff6b35);
    --fh:'Bebas Neue',Impact,sans-serif;--fb:'Barlow',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L60 30 30 60 0 30z' fill='none' stroke='%23fff' stroke-opacity='.015'/%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L60 30 30 60 0 30z' fill='none' stroke='%23ff6b35' stroke-opacity='.01'/%3E%3C/svg%3E");
    --radius:8px;--radius-lg:12px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}
body.mm-scheme-noir-ember a{color:var(--ac)}
body.mm-scheme-noir-ember a:hover{color:var(--ac2)}
body.mm-scheme-noir-ember .mm-post-card-body h2 a{color:var(--tx)}
body.mm-scheme-noir-ember .mm-post-card-body h2 a:hover{color:var(--ac)}
body.mm-scheme-noir-ember .mm-ft{border-top:1px solid var(--bd)}

/* --- 12. Sage & Ivory --- */
body.mm-scheme-sage-ivory{
    --hd:#2e3830;--hd-rgb:46,56,48;--ht:#f0efe8;--hh:#8fbc8f;--ac:#5a7a5a;--ac2:#6b956b;--al:#e8f0e8;--al2:#f4f8f4;
    --bg:#f6f5f0;--bg2:#edeae2;--card:#fdfcf8;--card-rgb:253,252,248;--tx:#2e3830;--tx2:#5a6858;--mu:#8a9888;--bd:#d5d2c8;
    --glow:rgba(143,188,143,.12);--glow2:rgba(90,122,90,.06);
    --grad-body:linear-gradient(135deg,#f6f5f0 0%,#edeae2 40%,#f4f8f4 100%);
    --grad-accent:linear-gradient(135deg,#3a5a3a,#6b956b);
    --fh:'Spectral',Georgia,serif;--fb:'Jost',system-ui,sans-serif;
    --tex:url("data:image/svg+xml,%3Csvg width='52' height='26' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23fff' stroke-opacity='.035'%3E%3Cpath d='M10 10c0-2.21-1.79-4-4-4S2 7.79 2 10m14 0c0-2.21-1.79-4-4-4s-4 1.79-4 4'/%3E%3C/g%3E%3C/svg%3E");
    --body-tex:url("data:image/svg+xml,%3Csvg width='52' height='26' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%235a7a5a' stroke-opacity='.02'%3E%3Cpath d='M10 10c0-2.21-1.79-4-4-4S2 7.79 2 10m14 0c0-2.21-1.79-4-4-4s-4 1.79-4 4'/%3E%3C/g%3E%3C/svg%3E");
    --radius:8px;--radius-lg:14px;
    --header-blur:0;--header-alpha:1;--sidebar-accent:var(--ac);
}

/* ================================================================
   HEADER STYLE MODIFIERS (applied via body class)
   ================================================================ */

/* Translucent / Glassmorphism */
body.mm-header-glass .mm-hd{
    background:rgba(var(--hd-rgb),.82)!important;
    -webkit-backdrop-filter:blur(20px) saturate(1.6);
    backdrop-filter:blur(20px) saturate(1.6);
    border-bottom:1px solid rgba(255,255,255,.06);
}
body.mm-header-glass .mm-hd::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,transparent 100%);
    pointer-events:none;
}

/* Gradient header band */
body.mm-header-gradient .mm-hd{
    background:var(--grad-accent)!important;
    background-image:var(--tex),var(--grad-accent)!important;
    border-bottom:none;
}
body.mm-header-gradient .mm-hd::after{
    content:'';position:absolute;bottom:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
}

/* Floating header */
body.mm-header-float .mm-hd{
    margin:12px 16px 0;border-radius:var(--radius-lg);
    box-shadow:0 8px 32px rgba(0,0,0,.2);
    border-bottom:none;
}
body.mm-header-float .mm-hd-inner{padding:0 20px}

/* Underline accent */
body.mm-header-underline .mm-hd{border-bottom:none}
body.mm-header-underline .mm-hd::after{
    content:'';position:absolute;bottom:0;left:0;right:0;height:4px;
    background:var(--grad-accent);
}

/* ================================================================
   BODY BACKGROUND STYLES
   ================================================================ */

/* Gradient body */
body.mm-body-gradient{
    background:var(--grad-body)!important;
    background-attachment:fixed!important;
}

/* Body texture */
body.mm-body-texture{
    background-color:var(--bg)!important;
    background-image:var(--body-tex)!important;
}

/* Mesh gradient (organic blobs) */
body.mm-body-mesh{background:var(--bg)!important}
body.mm-body-mesh::before{
    content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;
    background:
        radial-gradient(ellipse 60% 50% at 10% 20%, var(--glow) 0%, transparent 60%),
        radial-gradient(ellipse 50% 60% at 90% 80%, var(--glow2) 0%, transparent 60%),
        radial-gradient(ellipse 40% 40% at 50% 50%, var(--glow) 0%, transparent 70%);
}

/* Grain overlay */
body.mm-body-grain::after{
    content:'';position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.35;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E");
    background-repeat:repeat;background-size:256px;
}
body.mm-body-grain>*{position:relative;z-index:1}

/* ================================================================
   SIDEBAR ACCENT STRIPS
   ================================================================ */
body.mm-sidebar-left .mm-wrap::before{
    content:'';position:fixed;top:0;left:0;bottom:0;width:4px;
    background:var(--grad-accent);z-index:200;
}
body.mm-sidebar-right .mm-wrap::before{
    content:'';position:fixed;top:0;right:0;bottom:0;left:auto;width:4px;
    background:var(--grad-accent);z-index:200;
}
body.mm-sidebar-both .mm-wrap::before,
body.mm-sidebar-both .mm-wrap::after{
    content:'';position:fixed;top:0;bottom:0;width:4px;
    background:var(--grad-accent);z-index:200;
}
body.mm-sidebar-both .mm-wrap::before{left:0}
body.mm-sidebar-both .mm-wrap::after{right:0}
body.mm-sidebar-glow .mm-wrap::before{
    content:'';position:fixed;top:0;left:0;bottom:0;width:3px;
    background:var(--grad-accent);z-index:200;
    box-shadow:0 0 20px var(--glow),0 0 60px var(--glow2);
}

/* ================================================================
   TYPOGRAPHY
   ================================================================ */
html{-webkit-text-size-adjust:100%}
body{
    font-family:var(--fb);font-size:17px;line-height:1.7;color:var(--tx);
    background:var(--bg);-webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:var(--fh);color:var(--tx);line-height:1.3;font-weight:700}
h1{font-size:2em;margin-bottom:.5em}
h2{font-size:1.5em;margin-bottom:.4em}
h3{font-size:1.2em;margin-bottom:.3em}
p{margin-bottom:1em;color:var(--tx2)}
a{color:var(--ac);transition:color .2s}
a:hover{color:var(--ac2)}
blockquote{
    border-left:4px solid var(--ac);padding:1em 1.5em;margin:1.5em 0;
    background:var(--al);border-radius:0 var(--radius) var(--radius) 0;font-style:italic;
}
.entry-content ul,.entry-content ol{margin:0 0 1em 1.5em;list-style:revert;padding:0}
.entry-content li{margin-bottom:.3em;list-style:inherit}

/* ================================================================
   LAYOUT
   ================================================================ */
.mm-wrap{min-height:100vh;display:flex;flex-direction:column}
.mm-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:40px 24px 60px;word-wrap:break-word}

/* ================================================================
   HEADER
   ================================================================ */
.mm-hd{
    background:rgba(var(--hd-rgb),var(--header-alpha,1));
    background-image:var(--tex);
    border-bottom:3px solid var(--ac);
    position:sticky;top:0;z-index:100;
    transition:background .3s,box-shadow .3s;
}
.mm-hd-inner{
    max-width:1200px;margin:0 auto;padding:0 24px;
    display:flex;align-items:center;min-height:68px;padding-top:8px;padding-bottom:8px;
}
.mm-logo{display:flex;align-items:center;color:var(--ht);font-weight:700;font-size:1.1em;margin-right:auto;flex-shrink:0}
.mm-logo:hover{color:var(--ht)}
.mm-logo img{height:48px;width:auto}
.mm-sitename{color:var(--ht)}

/* ================================================================
   DESKTOP NAV
   ================================================================ */
.mm-desktop-nav{margin-left:auto}
.mm-dmenu{display:flex;list-style:none;margin:0;padding:0;gap:0}
.mm-dmenu>li{position:relative}
.mm-dmenu>li>a{
    display:flex;align-items:center;padding:24px 16px;
    color:var(--ht);font-size:.9em;font-weight:500;white-space:nowrap;
    border-bottom:2px solid transparent;transition:color .2s,border-color .2s;
}
.mm-dmenu>li>a:hover,.mm-dmenu>li.current-menu-item>a{
    color:var(--hh);border-bottom-color:var(--hh);
}
.mm-dmenu>li.menu-item-has-children>a::after{
    content:'';width:0;height:0;margin-left:5px;
    border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;
}

/* Desktop dropdown */
.mm-dmenu .sub-menu{
    display:none;position:absolute;top:100%;left:0;
    background:rgba(var(--hd-rgb),.97);
    -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
    list-style:none;margin:0;padding:6px 0;min-width:200px;
    box-shadow:0 12px 32px rgba(0,0,0,.25);
    border-top:2px solid var(--ac);border-radius:0 0 var(--radius) var(--radius);z-index:50;
}
.mm-dmenu>li:hover>.sub-menu{display:block}
.mm-dmenu .sub-menu li{display:block}
.mm-dmenu .sub-menu a{display:block;padding:8px 18px;color:var(--ht);font-size:.85em;white-space:nowrap;transition:background .2s,color .2s}
.mm-dmenu .sub-menu a:hover{background:rgba(255,255,255,.08);color:var(--hh)}

/* Hamburger */
.mm-burg{
    display:none;background:none;border:none;color:var(--ht);cursor:pointer;
    padding:8px;margin-left:12px;
}

/* ================================================================
   MOBILE
   ================================================================ */
@media(max-width:768px){
    .mm-desktop-nav{display:none}
    .mm-burg{display:block}
    .mm-hd-inner{padding:0 16px}
    .mm-main{padding:24px 16px 40px}
    body.mm-header-float .mm-hd{margin:8px 10px 0;border-radius:var(--radius)}
    body.mm-sidebar-left .mm-wrap::before,
    body.mm-sidebar-right .mm-wrap::before,
    body.mm-sidebar-both .mm-wrap::before,
    body.mm-sidebar-both .mm-wrap::after,
    body.mm-sidebar-glow .mm-wrap::before{display:none}
}

/* Mobile overlay */
.mm-mobile-overlay{
    position:fixed;top:0;left:0;right:0;bottom:0;
    background:rgba(var(--hd-rgb),.96);
    -webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);
    background-image:var(--tex);
    z-index:9999;overflow-y:auto;padding:24px;
}
.mm-close{
    position:absolute;top:16px;right:16px;
    background:none;border:none;color:var(--ht);cursor:pointer;padding:8px;
}
.mm-mmenu{list-style:none;margin:40px 0 0;padding:0}
.mm-mmenu>li{border-bottom:1px solid rgba(255,255,255,.08)}
.mm-mmenu>li>a{display:block;padding:16px 0;color:var(--ht);font-size:1.1em;font-weight:500}
.mm-mmenu>li>a:hover{color:var(--hh)}
.mm-mmenu .sub-menu{list-style:none;margin:0;padding:0 0 8px 20px;display:none}
.mm-mmenu>li.mm-sub-open>.sub-menu{display:block}
.mm-mmenu .sub-menu a{display:block;padding:10px 0;color:rgba(255,255,255,.7);font-size:.95em}
.mm-mmenu .sub-menu a:hover{color:var(--hh)}
.mm-mmenu>li.menu-item-has-children>a::after{
    content:'';display:inline-block;width:0;height:0;margin-left:8px;
    border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid currentColor;
    transition:transform .2s;
}
.mm-mmenu>li.mm-sub-open>a::after{transform:rotate(180deg)}

/* ================================================================
   FOOTER
   ================================================================ */
.mm-ft{
    background:rgba(var(--hd-rgb),.98);background-image:var(--tex);
    color:var(--mu);padding:28px 24px;font-size:.85em;margin-top:auto;text-align:center;
}
.mm-ft a{color:var(--mu)}
.mm-ft a:hover{color:#fff}

/* ================================================================
   BLOG CARDS
   ================================================================ */
.mm-post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.mm-post-card{
    background:rgba(var(--card-rgb),.92);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
    border-radius:var(--radius-lg);
    border:1px solid var(--bd);
    overflow:hidden;
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.mm-post-card:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 40px var(--glow),0 4px 12px rgba(0,0,0,.06);
    border-color:rgba(var(--hd-rgb),.12);
}
.mm-post-card img{width:100%;height:200px;object-fit:cover}
.mm-post-card-body{padding:20px}
.mm-post-card-body h2{font-size:1.1em;margin-bottom:.3em}
.mm-post-card-body h2 a{color:var(--tx)}
.mm-post-card-body h2 a:hover{color:var(--ac)}
.mm-post-meta{font-size:.8em;color:var(--mu);margin-bottom:.5em}

/* Card gradient top stripe on hover */
.mm-post-card::before{
    content:'';display:block;height:3px;
    background:var(--grad-accent);
    opacity:0;transition:opacity .25s;
}
.mm-post-card:hover::before{opacity:1}

.mm-single-post{max-width:760px;margin:0 auto}
.mm-single-post .entry-content{line-height:1.8}
.mm-page-content{max-width:860px;margin:0 auto}
.mm-page-content.mm-full-width{max-width:100%}

.mm-pagination{display:flex;justify-content:center;gap:6px;margin:40px 0 20px;flex-wrap:wrap}
.mm-pagination a,.mm-pagination span{
    padding:8px 14px;border:1px solid var(--bd);
    border-radius:var(--radius);font-size:.9em;color:var(--tx2);transition:all .2s;
}
.mm-pagination a:hover{border-color:var(--ac);color:var(--ac);box-shadow:0 2px 8px var(--glow)}
.mm-pagination .current{background:var(--grad-accent);color:#fff;border-color:transparent}

/* Directory full width */
body.post-type-archive-mm_listing .mm-main,
body.tax-mm_category .mm-main,
body.single-mm_listing .mm-main{max-width:100%;padding:0}

/* ================================================================
   CARD STYLE MODIFIERS
   ================================================================ */

/* Glass cards */
body.mm-cards-glass .mm-post-card{
    background:rgba(var(--card-rgb),.55);
    -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
    border:1px solid rgba(255,255,255,.15);
}

/* Elevated cards */
body.mm-cards-elevated .mm-post-card{
    border:none;box-shadow:0 4px 20px rgba(0,0,0,.08);
}
body.mm-cards-elevated .mm-post-card:hover{
    box-shadow:0 16px 48px var(--glow),0 8px 20px rgba(0,0,0,.1);
}

/* Bordered accent cards */
body.mm-cards-bordered .mm-post-card{border-left:4px solid var(--ac)}

/* ================================================================
   RESPONSIVE
   ================================================================ */
@media(max-width:600px){
    h1{font-size:1.5em}h2{font-size:1.2em}
    .mm-post-list{grid-template-columns:1fr}
    body{font-size:16px}
}

/* ================================================================
   PRINT
   ================================================================ */
@media print{
    .mm-hd,.mm-ft,.mm-burg,.mm-mobile-overlay{display:none!important}
    body{background:#fff!important;color:#000!important}
    .mm-main{max-width:100%!important;padding:0!important}
}
