/*! PlumberFinderUSA — Consolidated Page Styles
    Generated 2026-06-05. Replaces the inline <style> blocks that
    were embedded in each PHP template. Loaded after custom.css + mobile.css.
    Sections: tokens/base (header) -> home -> join -> misc templates. */

/* ======================================================================
   1. GLOBAL TOKENS + BASE  (was inline in header.php)
   ====================================================================== */
    /* ── v6 design tokens ── */
    :root {
      --pf-cta: #DC2626; --pf-cta-dark: #B91C1C;
      --pf-cta-soft: #FEE2E2; --pf-cta-glow: rgba(220,38,38,.30);
      --pf-ink: #0A0A0A; --pf-text: #1F2937; --pf-text-2: #4B5563;
      --pf-mute: #6B7280; --pf-mute-2: #9CA3AF;
      --pf-line: #E5E7EB; --pf-line-soft: #F3F4F6;
      --pf-bg: #FFFFFF; --pf-bg-2: #FAFAFA; --pf-bg-3: #F3F4F6;
      --pf-star: #F59E0B; --pf-green: #15803D; --pf-green-soft: #DCFCE7;
      --pf-font-display: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      --pf-font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      --pf-font-serif: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      --pf-r-sm:8px; --pf-r-md:12px; --pf-r-lg:16px; --pf-r-pill:999px;
      --pf-shadow-xs: 0 1px 2px rgba(10,10,10,.04);
      --pf-shadow-sm: 0 2px 8px rgba(10,10,10,.05);
      --pf-shadow-md: 0 8px 24px rgba(10,10,10,.07);
      --pf-shadow-lg: 0 18px 40px rgba(10,10,10,.10);
      --pf-shadow-xl: 0 32px 70px rgba(10,10,10,.16);
      --pf-shadow-cta: 0 8px 22px var(--pf-cta-glow);
      --pf-shadow-cta-hover: 0 14px 32px rgba(220,38,38,.45);
      --pf-shadow-card: 0 30px 80px rgba(10,10,10,.22), 0 8px 16px rgba(10,10,10,.10);
      --pf-ease: cubic-bezier(.2,.8,.2,1);
    }

    /* ── Global base ── */
    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
    html, body { margin: 0; padding: 0; overflow-x: hidden; }
    body {
      font-family: var(--pf-font-body);
      font-size: 16px; font-weight: 400;
      color: var(--pf-text); background: var(--pf-bg);
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      line-height: 1.6;
    }
    @media (max-width: 768px) { body { padding-bottom: 76px; } }
    img, svg { max-width: 100%; height: auto; display: block; }
    a { color: inherit; text-decoration: none; }
    button { font: inherit; cursor: pointer; border: 0; background: none; }
    h1,h2,h3,h4,h5,h6 {
      font-family: var(--pf-font-display);
      font-weight: 800; letter-spacing: -.025em;
      line-height: 1.08; margin: 0; color: var(--pf-ink);
    }
    h1 { letter-spacing: -.045em; font-weight: 900; }
    main, #content { display: block; width: 100%; }

    /* ── HEADER — sticky, translucent white ── */
    #masthead {
      position: sticky; top: 0; z-index: 500;
      background: rgba(255,255,255,.96);
      backdrop-filter: saturate(180%) blur(14px);
      -webkit-backdrop-filter: saturate(180%) blur(14px);
      border-bottom: 1px solid var(--pf-line);
      width: 100%;
    }
    .pfv6-nav {
      display: flex; align-items: center; justify-content: space-between;
      max-width: 1280px; margin: 0 auto; padding: 0 24px;
      min-height: 72px; gap: 24px;
    }
    .pfv6-brand {
      font-family: var(--pf-font-display);
      font-weight: 900; font-size: 19px;
      color: var(--pf-ink); letter-spacing: -.025em;
      white-space: nowrap; text-decoration: none;
    }
    .pfv6-brand span { color: var(--pf-cta); }

    /* Desktop nav links */
    .pfv6-navlinks {
      display: none; list-style: none; margin: 0; padding: 0;
      gap: 2px; align-items: center;
    }
    .pfv6-navlinks a {
      display: block; color: var(--pf-text); font-weight: 500;
      font-size: 14.5px; padding: 9px 14px;
      border-radius: var(--pf-r-md);
      transition: color .15s var(--pf-ease), background .15s var(--pf-ease);
    }
    .pfv6-navlinks a:hover { color: var(--pf-ink); background: var(--pf-bg-3); }
    /* Override Bootstrap nav styles */
    .pfv6-navlinks li { list-style: none; margin: 0; padding: 0; }
    .pfv6-navlinks .dropdown-menu { border-radius: var(--pf-r-md); border: 1px solid var(--pf-line); box-shadow: var(--pf-shadow-md); }

    /* Nav actions */
    .pfv6-nav-actions {
      display: none; align-items: center; gap: 10px;
    }
    .pfv6-nav-login {
      color: var(--pf-text); font-weight: 500; font-size: 14px;
      padding: 8px 12px; border-radius: var(--pf-r-md);
      transition: color .15s var(--pf-ease);
    }
    .pfv6-nav-login:hover { color: var(--pf-ink); }
    .pfv6-btn-outline {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 10px 16px; background: transparent; color: var(--pf-ink);
      font-weight: 700; font-size: 14px;
      border: 1.5px solid var(--pf-line); border-radius: var(--pf-r-md);
      transition: all .15s var(--pf-ease);
    }
    .pfv6-btn-outline:hover { border-color: var(--pf-ink); background: var(--pf-bg-2); }

    /* Mobile toggle */
    .pfv6-mobile-toggle {
      display: flex; flex-direction: column; gap: 4px;
      padding: 8px; background: none; border: 0; cursor: pointer;
    }
    .pfv6-mobile-toggle span {
      display: block; width: 24px; height: 2px;
      background: var(--pf-ink); border-radius: 2px;
      transition: transform .25s, opacity .15s;
    }

    @media (min-width: 992px) {
      .pfv6-navlinks { display: flex; }
      .pfv6-nav-actions { display: flex; }
      .pfv6-mobile-toggle { display: none; }
    }

    /* ── MOBILE OVERLAY ── */
    .pfv6-overlay {
      position: fixed; inset: 0;
      background: #fff; z-index: 9999;
      transform: translateX(100%);
      transition: transform .3s var(--pf-ease);
      overflow-y: auto; padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
    }
    .pfv6-overlay.open { transform: translateX(0); }
    .pfv6-overlay-header {
      display: flex; align-items: center; justify-content: space-between;
      padding: 18px 24px; border-bottom: 1px solid var(--pf-line);
    }
    .pfv6-overlay ul {
      list-style: none; margin: 0; padding: 16px 0;
    }
    .pfv6-overlay ul li a {
      display: flex; align-items: center; justify-content: space-between;
      padding: 14px 24px; font-weight: 600; font-size: 16px;
      color: var(--pf-ink); border-bottom: 1px solid var(--pf-line-soft);
      transition: background .15s var(--pf-ease);
    }
    .pfv6-overlay ul li a:hover { background: var(--pf-bg-2); }
    .pfv6-overlay ul li a i { color: var(--pf-mute); font-size: 12px; }
    .pfv6-overlay-footer {
      padding: 20px 24px;
      border-top: 1px solid var(--pf-line);
    }
    .pfv6-overlay-cta {
      display: flex; align-items: center; justify-content: center; gap: 10px;
      width: 100%; padding: 16px;
      background: var(--pf-cta); color: #fff !important;
      font-weight: 800; font-size: 16px;
      border-radius: var(--pf-r-md);
      transition: background .15s var(--pf-ease);
    }
    .pfv6-overlay-cta:hover { background: var(--pf-cta-dark); }
    .pfv6-overlay-contact {
      display: flex; align-items: center; justify-content: center; gap: 8px;
      margin-top: 12px; color: var(--pf-mute); font-size: 14px;
    }
    .pfv6-overlay-close {
      width: 36px; height: 36px; min-width: 36px; min-height: 36px;
      border-radius: 50%; padding: 0;
      background: none; border: none; color: var(--pf-ink);
      display: flex; align-items: center; justify-content: center;
      font-size: 16px; cursor: pointer;
      transition: background .15s var(--pf-ease);
    }
    .pfv6-overlay-close:hover { background: var(--pf-bg-3); }

    /* ── Bootstrap override — neutralize on all pages ── */
    .container { max-width: 1280px !important; }
    .btn { font-family: var(--pf-font-display) !important; }
    /* On front page, reserve space for the mobile sticky bar — mobile only.
       (Was unscoped, which left a 76px white gap under the footer on desktop.) */
    @media (max-width: 768px) { .home body, body.home { padding-bottom: 76px; } }

    /* Skip link */
    .skip-link { position: absolute; left: -9999px; top: 0; }
    .skip-link:focus { left: 0; background: var(--pf-cta); color: #fff; padding: 10px 16px; z-index: 99999; }
/* NAV OVERRIDE — beats theme link colors */
#masthead a,
#masthead .pfv6-navlinks a,
#masthead .pfv6-navlinks a:link,
#masthead .pfv6-navlinks a:visited,
#masthead ul#menu-main-menu li a,
#masthead ul#menu-main-menu li a:link,
#masthead ul#menu-main-menu li a:visited,
#masthead .pfv6-nav-login,
#masthead .pfv6-nav-login:link,
#masthead .pfv6-nav-login:visited {
  color: #0A0A0A !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  text-decoration: none !important;
}
#masthead a:hover,
#masthead .pfv6-navlinks a:hover,
#masthead ul#menu-main-menu li a:hover {
  color: #0A0A0A !important;
  background: #F3F4F6;
  border-radius: 6px;
}
/* Brand wordmark */
#masthead .pfv6-brand,
#masthead .pfv6-brand:link,
#masthead .pfv6-brand:visited,
#masthead .pfusa-brand-text,
#masthead .pfusa-brand-text:link {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-weight: 900 !important;
  color: #0A0A0A !important;
  letter-spacing: -0.04em !important;
  text-decoration: none !important;
}
#masthead .pfv6-brand span,
#masthead .pfusa-brand-text span { color: #DC2626 !important; }
/* List My Business button keeps its border */
#masthead .pfv6-btn-outline,
#masthead .pfv6-btn-outline:link,
#masthead .pfv6-btn-outline:visited {
  color: #0A0A0A !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  text-decoration: none !important;
}

/* ======================================================================
   2. HOME PAGE  .pfv6 / .pf-*  (was inline in front-page.php)
   ====================================================================== */
/* ============================================================
   PFUSA v6 — White + Black + #DC2626 only
   ============================================================ */
:root {
  --pf-cta:        #DC2626;
  --pf-cta-dark:   #B91C1C;
  --pf-cta-soft:   #FEE2E2;
  --pf-cta-glow:   rgba(220,38,38,.30);
  --pf-ink:        #0A0A0A;
  --pf-text:       #1F2937;
  --pf-text-2:     #4B5563;
  --pf-mute:       #6B7280;
  --pf-mute-2:     #9CA3AF;
  --pf-line:       #E5E7EB;
  --pf-line-soft:  #F3F4F6;
  --pf-bg:         #FFFFFF;
  --pf-bg-2:       #FAFAFA;
  --pf-bg-3:       #F3F4F6;
  --pf-star:       #F59E0B;
  --pf-green:      #15803D;
  --pf-green-soft: #DCFCE7;
  --pf-font-display: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --pf-font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --pf-font-serif:   'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --pf-r-sm:   8px;
  --pf-r-md:   12px;
  --pf-r-lg:   16px;
  --pf-r-pill: 999px;
  --pf-shadow-xs:       0 1px 2px rgba(10,10,10,.04);
  --pf-shadow-sm:       0 2px 8px rgba(10,10,10,.05);
  --pf-shadow-md:       0 8px 24px rgba(10,10,10,.07);
  --pf-shadow-lg:       0 18px 40px rgba(10,10,10,.10);
  --pf-shadow-xl:       0 32px 70px rgba(10,10,10,.16);
  --pf-shadow-cta:      0 8px 22px var(--pf-cta-glow);
  --pf-shadow-cta-hover:0 14px 32px rgba(220,38,38,.45);
  --pf-shadow-card:     0 30px 80px rgba(10,10,10,.22), 0 8px 16px rgba(10,10,10,.10);
  --pf-ease: cubic-bezier(.2,.8,.2,1);
}

/* ── Reset scoped to this page ── */
.pfv6 *, .pfv6 *::before, .pfv6 *::after { box-sizing: border-box; }
.pfv6 { font-family: var(--pf-font-body); color: var(--pf-text); background: var(--pf-bg); -webkit-font-smoothing: antialiased; }
.pfv6 h1,.pfv6 h2,.pfv6 h3,.pfv6 h4 { font-family: var(--pf-font-display); font-weight: 800; letter-spacing: -.025em; line-height: 1.08; margin: 0; }
.pfv6 h2,.pfv6 h3,.pfv6 h4 { color: var(--pf-ink); }
/* Hero headings always white — must beat .pfv6 h1 specificity */
.pfv6 .pf-hero h1, .pfv6 .pf-hero h2 { color: #fff !important; text-shadow: 0 2px 18px rgba(0,0,0,.40); }
.pfv6 h1 { letter-spacing: -.045em; font-weight: 900; }
.pfv6 a { color: inherit; text-decoration: none; }
.pfv6 button { font: inherit; cursor: pointer; border: 0; background: none; }
.pfv6 .pf-container { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
@media (max-width: 768px) { body { padding-bottom: 76px; } }

/* ── HERO ── */
.pfv6 .pf-hero {
  position: relative; overflow: hidden;
  display: flex; align-items: center;
  padding: 72px 0 80px;
  background: var(--pf-ink);
  min-height: 580px;
}
.pfv6 .pf-hero-bg {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover; object-position: 70% 50%;
  z-index: 0;
}
.pfv6 .pf-hero::before {
  content: ""; position: absolute; inset: 0; z-index: 1;
  background:
    radial-gradient(ellipse 90% 70% at 50% 50%, rgba(10,10,10,.10) 0%, rgba(10,10,10,.55) 100%),
    linear-gradient(180deg, rgba(10,10,10,.86) 0%, rgba(10,10,10,.68) 30%, rgba(10,10,10,.58) 60%, rgba(10,10,10,.78) 100%);
}
.pfv6 .pf-hero .pf-container { position: relative; z-index: 2; width: 100%; }
.pfv6 .pf-hero-grid { display: flex; flex-direction: column; align-items: center; gap: 32px; }
.pfv6 .pf-hero-content { max-width: 1240px; text-align: center; }
.pfv6 .pf-hero-eyebrow {
  display: inline-flex; align-items: center; gap: 9px;
  font-size: 11.5px; font-weight: 700; color: rgba(255,255,255,.95);
  padding: 7px 14px 7px 12px; border-radius: var(--pf-r-pill);
  margin-bottom: 24px;
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  letter-spacing: .12em; text-transform: uppercase;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}
.pfv6 .pf-hero-eyebrow .live-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: #4ADE80; box-shadow: 0 0 8px #4ADE80;
  animation: pfPulse 2s infinite;
}
@keyframes pfPulse { 0%,100% { opacity:1; } 50% { opacity:.5; } }
@keyframes pfBoltPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.6; transform:scale(.92); } }
.pfv6 .pf-hero h1 {
  font-size: clamp(40px, 5.4vw, 72px);
  margin: 0 0 20px; color: #fff;
  font-weight: 900;
  letter-spacing: -.045em;
  line-height: 1.05;
  text-shadow: 0 2px 18px rgba(0,0,0,.40);
}
.pfv6 .pf-hero-sub {
  font-size: clamp(17px, 1.6vw, 19px);
  color: rgba(255,255,255,.88); max-width: 1000px; margin: 0 auto;
  line-height: 1.55; font-weight: 400;
  text-shadow: 0 1px 8px rgba(0,0,0,.50);
}
.pfv6 .pf-hero-sub strong {
  color: #fff;
  font-weight: 700;
  background: linear-gradient(180deg, transparent 60%, rgba(220,38,38,.55) 60%);
  padding: 0 2px;
}

/* ── CHAT WIDGET IN HERO ── */
.pfv6 .pf-hero-bottom { width: 100%; max-width: 720px; display: flex; flex-direction: column; align-items: center; }
.pfv6 .pf-chat-trigger {
  display: block; width: 100%; text-align: left;
  background: transparent; border: 0; padding: 0; cursor: pointer; font: inherit; color: inherit;
}
.pfv6 .pf-chat-trigger:focus-visible { outline: 0; }
.pfv6 .pf-chat-trigger:focus-visible .pf-chat-input-row {
  border-color: #C7D2FE;
  box-shadow: 0 0 0 4px rgba(99,102,241,.18), 0 24px 60px rgba(10,10,10,.25);
}
.pfv6 .pf-chat-input-row {
  display: flex; flex-direction: column; gap: 12px;
  background: #fff; border: 1px solid var(--pf-line);
  border-radius: 28px; padding: 18px 20px;
  box-shadow: 0 4px 16px rgba(10,10,10,.12), 0 24px 60px rgba(10,10,10,.25);
  transition: border-color .15s var(--pf-ease), box-shadow .15s var(--pf-ease);
}
.pfv6 .pf-chat-input-fake {
  width: 100%; font-size: 16px; font-weight: 400;
  font-family: var(--pf-font-body);
  color: var(--pf-mute-2); min-height: 72px; line-height: 1.5;
  padding: 0; background: transparent !important;
  border: 0 !important; border-radius: 0 !important;
  outline: 0; resize: none; box-shadow: none !important;
}
.pfv6 .pf-chat-input-fake, .pfv6 .pf-chat-input-fake::placeholder { color: #0A0A0A !important; }
.pfv6 .pf-chat-input-actions {
  display: flex; align-items: center; justify-content: space-between; gap: 6px;
}
.pfv6 .pf-chat-input-actions-right { display: flex; align-items: center; gap: 6px; }
.pfv6 .pf-chat-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 50%;
  color: var(--pf-mute); font-size: 14px;
}
.pfv6 .pf-chat-send-btn {
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(180deg, var(--pf-cta) 0%, var(--pf-cta-dark) 100%);
  color: #fff; width: 40px; height: 40px; border-radius: 50%; font-size: 13px;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 6px 16px rgba(220,38,38,.40);
  animation: pfSendReady 2.4s infinite;
}
@keyframes pfSendReady {
  0% { box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 0 0 rgba(220,38,38,.45); }
  70% { box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 0 10px rgba(220,38,38,0); }
  100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 0 0 rgba(220,38,38,0); }
}
.pfv6 .pf-chips {
  display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 18px;
}
.pfv6 .pf-chip {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 13.5px; font-weight: 600; color: rgba(255,255,255,.96);
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  padding: 9px 16px; border-radius: 999px; cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
  transition: all .18s var(--pf-ease);
}
.pfv6 .pf-chip i { font-size: 11px; opacity: .8; }
.pfv6 .pf-chip:hover { background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.42); transform: translateY(-1px) scale(1.02); }

/* ── TRUST STRIP ── */
.pfv6 .pf-trust-strip { background: var(--pf-bg); border-bottom: 1px solid var(--pf-line); padding: 16px 0; overflow: hidden; }
.pfv6 .pf-trust-inner { display: flex; align-items: center; justify-content: center; gap: clamp(12px,3vw,40px); flex-wrap: wrap; padding: 0 16px; }
.pfv6 .pf-trust-item { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--pf-text-2); font-weight: 500; }
.pfv6 .pf-trust-item i { color: var(--pf-green); font-size: 14px; }
.pfv6 .pf-trust-item strong { color: var(--pf-ink); font-weight: 800; }

/* ── AI STRIP ── */
.pfv6 .pf-ai-strip {
  position: relative;
  background: radial-gradient(ellipse 60% 80% at 80% 50%, rgba(99,102,241,.10) 0%, transparent 60%),
              radial-gradient(ellipse 60% 80% at 20% 50%, rgba(220,38,38,.08) 0%, transparent 60%),
              linear-gradient(180deg, #FAFAFC 0%, #FFFFFF 100%);
  border-top: 1px solid var(--pf-line); border-bottom: 1px solid var(--pf-line);
  padding: 56px 0; overflow: hidden;
}
.pfv6 .pf-ai-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 28px; }
.pfv6 .pf-ai-msg { display: flex; align-items: center; gap: 18px; max-width: 640px; }
.pfv6 .pf-ai-icon {
  width: 64px; height: 64px; border-radius: 16px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--pf-cta) 0%, #6366F1 100%);
  color: #fff; display: flex; align-items: center; justify-content: center; font-size: 26px;
  box-shadow: 0 10px 28px rgba(220,38,38,.30), 0 4px 10px rgba(99,102,241,.20);
}
.pfv6 .pf-ai-eyebrow { display: inline-block; font-size: 11px; font-weight: 800; color: #0F172A; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 6px; }
.pfv6 .pf-ai-text strong { font-size: 22px; display: block; color: var(--pf-ink); font-weight: 800; letter-spacing: -.02em; line-height: 1.2; margin-bottom: 4px; }
.pfv6 .pf-ai-text span { color: var(--pf-text-2); font-size: 14.5px; line-height: 1.5; }
.pfv6 .pf-ai-logos { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.pfv6 .pf-ai-logo {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 13px; font-weight: 700; color: var(--pf-ink);
  background: #fff; border: 1px solid var(--pf-line);
  padding: 9px 14px; border-radius: var(--pf-r-pill);
  box-shadow: var(--pf-shadow-xs);
}
.pfv6 .pf-ai-logo .fab.fa-google { color: #4285F4; }
.pfv6 .pf-ai-logo .fa-robot { color: #10A37F; }
.pfv6 .pf-ai-logo .fa-brain { color: #C99868; }

/* ── SECTIONS ── */
.pfv6 .pf-section { padding: clamp(64px,8vw,100px) 0; }
.pfv6 .pf-section-alt { background: var(--pf-bg-2); }
.pfv6 .pf-section-dark { background: var(--pf-ink); color: #fff; position: relative; overflow: hidden; width: 100%; margin-left: 0 !important; margin-right: 0 !important; max-width: 100% !important; }
.pfv6 .pf-section-head { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 44px; }
.pfv6 .pf-section-head-text { max-width: 660px; }
.pfv6 .pf-eyebrow { display: inline-block; font-size: 12px; font-weight: 700; color: #0F172A; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 12px; }
.pfv6 .pf-section-head h2 { font-size: clamp(30px,3.8vw,44px); margin: 0 0 14px; letter-spacing: -.03em; font-weight: 800; }
.pfv6 .pf-section-head p { color: var(--pf-text-2); font-size: 16.5px; margin: 0; line-height: 1.6; max-width: 580px; }
.pfv6 .pf-see-all { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 14px; color: var(--pf-cta); white-space: nowrap; padding: 8px 0; transition: gap .15s var(--pf-ease); }
.pfv6 .pf-see-all:hover { gap: 10px; }

/* ── CATEGORY CARDS ── */
.pfv6 .pf-cat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.pfv6 .pf-cat-card {
  position: relative; display: block; aspect-ratio: 4/3;
  border-radius: var(--pf-r-lg); overflow: hidden; background: var(--pf-ink);
  transition: transform .25s var(--pf-ease), box-shadow .25s var(--pf-ease);
  box-shadow: var(--pf-shadow-sm);
}
.pfv6 .pf-cat-card:hover { transform: translateY(-4px); box-shadow: var(--pf-shadow-lg); }
.pfv6 .pf-cat-card-img { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .5s var(--pf-ease); }
.pfv6 .pf-cat-card:hover .pf-cat-card-img { transform: scale(1.06); }
.pfv6 .pf-cat-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,10,10,.10) 0%, rgba(10,10,10,.85) 100%); }
.pfv6 .pf-cat-card-content { position: absolute; inset: auto 0 0 0; padding: 22px; z-index: 2; color: #fff; }
.pfv6 .pf-cat-card h3 { color: #fff; font-size: 20px; font-weight: 800; margin: 0 0 4px; letter-spacing: -.02em; }
.pfv6 .pf-cat-card p { color: rgba(255,255,255,.78); font-size: 13.5px; margin: 0; }
.pfv6 .pf-cat-arrow {
  position: absolute; top: 16px; right: 16px; width: 36px; height: 36px;
  border-radius: 50%; background: rgba(255,255,255,.18); backdrop-filter: blur(8px);
  color: #fff; display: flex; align-items: center; justify-content: center; font-size: 12px; z-index: 2;
  opacity: 0; transform: translateY(-4px);
  transition: opacity .2s var(--pf-ease), transform .2s var(--pf-ease), background .2s var(--pf-ease);
}
.pfv6 .pf-cat-card:hover .pf-cat-arrow { opacity: 1; transform: translateY(0); background: var(--pf-cta); }

/* ── FEATURED LISTINGS ── */
.pfv6 .pf-listings-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.pfv6 .pf-listing-card {
  display: flex; flex-direction: column; background: #fff;
  border: 1px solid var(--pf-line); border-radius: var(--pf-r-lg); overflow: hidden;
  transition: transform .2s var(--pf-ease), box-shadow .2s var(--pf-ease), border-color .2s var(--pf-ease);
}
.pfv6 .pf-listing-card:hover { transform: translateY(-4px); box-shadow: var(--pf-shadow-lg); border-color: transparent; }
.pfv6 .pf-lc-photo { position: relative; aspect-ratio: 16/10; background: var(--pf-bg-3); overflow: hidden; }
.pfv6 .pf-lc-photo img { width: 100%; height: 100%; object-fit: cover; }
.pfv6 .pf-lc-verified {
  position: absolute; top: 12px; left: 12px;
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(255,255,255,.96); color: var(--pf-ink);
  font-size: 11px; font-weight: 700; letter-spacing: .04em;
  padding: 5px 10px; border-radius: var(--pf-r-pill); text-transform: uppercase;
  backdrop-filter: blur(6px); box-shadow: 0 2px 8px rgba(0,0,0,.10);
}
.pfv6 .pf-lc-verified i { color: var(--pf-green); }
.pfv6 .pf-lc-body { padding: 22px; flex: 1; display: flex; flex-direction: column; }
.pfv6 .pf-lc-name { font-size: 18px; font-weight: 800; color: var(--pf-ink); margin: 0 0 2px; letter-spacing: -.015em; }
.pfv6 .pf-lc-cat { font-size: 13px; color: var(--pf-mute); margin: 0 0 14px; }
.pfv6 .pf-lc-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; }
.pfv6 .pf-lc-stars { display: inline-flex; gap: 1px; color: var(--pf-star); font-size: 14px; }
.pfv6 .pf-lc-rating-text { font-size: 13px; color: var(--pf-text-2); }
.pfv6 .pf-lc-rating-text strong { color: var(--pf-ink); font-weight: 800; }
.pfv6 .pf-lc-meta { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--pf-mute); margin: 0 0 16px; border-top: 1px solid var(--pf-line-soft); padding-top: 14px; }
.pfv6 .pf-lc-meta i { color: var(--pf-mute-2); }
.pfv6 .pf-lc-actions { margin-top: auto; display: flex; gap: 8px; }
.pfv6 .pf-lc-cta {
  flex: 1; display: inline-flex; align-items: center; justify-content: space-between;
  padding: 13px 18px; background: var(--pf-bg-3); border-radius: var(--pf-r-md);
  font-size: 14px; font-weight: 700; color: var(--pf-ink);
  transition: background .15s var(--pf-ease), color .15s var(--pf-ease);
}
.pfv6 .pf-listing-card:hover .pf-lc-cta { background: var(--pf-ink); color: #fff; }
.pfv6 .pf-lc-call {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 13px 16px; background: var(--pf-cta); color: #fff;
  border-radius: var(--pf-r-md); font-size: 14px; font-weight: 800;
  transition: background .15s var(--pf-ease);
}
.pfv6 .pf-lc-call:hover { background: var(--pf-cta-dark); }

/* ── TESTIMONIALS ── */
.pfv6 .pf-testimonials-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.pfv6 .pf-testimonial {
  background: #fff; border-radius: var(--pf-r-lg); padding: 32px 28px;
  border: 1px solid var(--pf-line); display: flex; flex-direction: column;
  transition: transform .2s var(--pf-ease), border-color .2s var(--pf-ease), box-shadow .2s var(--pf-ease);
}
.pfv6 .pf-testimonial:hover { transform: translateY(-3px); border-color: transparent; box-shadow: var(--pf-shadow-md); }
.pfv6 .pf-testimonial-stars { color: var(--pf-star); margin-bottom: 16px; font-size: 16px; letter-spacing: 1px; }
.pfv6 .pf-testimonial-quote { font-size: 17px; line-height: 1.55; color: var(--pf-ink); margin: 0 0 24px; flex: 1; font-family: var(--pf-font-serif); font-style: italic; }
.pfv6 .pf-testimonial-author { display: flex; align-items: center; gap: 12px; }
.pfv6 .pf-testimonial-avatar { width: 44px; height: 44px; border-radius: 50%; background: var(--pf-ink); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; flex-shrink: 0; }
.pfv6 .pf-testimonial-name { font-weight: 800; font-size: 14px; color: var(--pf-ink); margin: 0; }
.pfv6 .pf-testimonial-meta { font-size: 12.5px; color: var(--pf-mute); margin: 0; }

/* ── HOW IT WORKS ── */
.pfv6 .pf-how-grid { display: grid; grid-template-columns: 1fr; gap: 48px; align-items: center; }
@media (min-width: 992px) { .pfv6 .pf-how-grid { grid-template-columns: 1fr 1fr; gap: 72px; } }
.pfv6 .pf-how-steps { display: flex; flex-direction: column; gap: 18px; }
.pfv6 .pf-how-step {
  display: flex; gap: 18px; align-items: flex-start; padding: 24px;
  border-radius: var(--pf-r-lg); border: 1px solid var(--pf-line); background: #fff;
  transition: border-color .2s var(--pf-ease), transform .2s var(--pf-ease), box-shadow .2s var(--pf-ease);
}
.pfv6 .pf-how-step:hover { border-color: transparent; transform: translateX(4px); box-shadow: var(--pf-shadow-md); }
.pfv6 .pf-how-num { flex-shrink: 0; width: 44px; height: 44px; border-radius: 50%; background: var(--pf-cta); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 17px; }
.pfv6 .pf-how-step h3 { font-size: 18px; margin: 0 0 6px; color: var(--pf-ink); font-weight: 800; }
.pfv6 .pf-how-step p { color: var(--pf-text-2); margin: 0; font-size: 14.5px; line-height: 1.6; }
.pfv6 .pf-how-img-wrap { position: relative; border-radius: var(--pf-r-lg); overflow: hidden; max-width: 480px; margin: 0 auto; }
.pfv6 .pf-how-img-wrap img { width: 100%; height: auto; display: block; border-radius: var(--pf-r-lg); }

/* ── STATES ── */
.pfv6 .pf-states-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-bottom: 32px; }
.pfv6 .pf-state-pill {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 18px; background: #fff; border: 1px solid var(--pf-line);
  border-radius: var(--pf-r-md); font-size: 14px; color: var(--pf-ink); font-weight: 600;
  transition: all .15s var(--pf-ease);
}
.pfv6 .pf-state-pill:hover { border-color: var(--pf-cta); transform: translateY(-1px); box-shadow: var(--pf-shadow-sm); }
.pfv6 .pf-state-pill .pf-state-count { font-size: 12px; color: var(--pf-mute); }
.pfv6 .pf-states-cta { text-align: center; }
.pfv6 .pf-btn-secondary {
  display: inline-flex; align-items: center; gap: 8px; padding: 14px 28px;
  background: var(--pf-ink); color: #fff; border-radius: var(--pf-r-md);
  font-weight: 700; font-size: 15px; transition: all .15s var(--pf-ease);
}
.pfv6 .pf-btn-secondary:hover { background: var(--pf-cta); transform: translateY(-1px); box-shadow: var(--pf-shadow-md); }

/* ── FOR PROS ── */
.pfv6 .pf-section-dark::before {
  content: ""; position: absolute; inset: 0; z-index: 0;
  background: radial-gradient(ellipse 50% 50% at 90% 10%, rgba(220,38,38,.30) 0%, transparent 60%),
              radial-gradient(ellipse 60% 50% at 0% 90%, rgba(245,158,11,.06) 0%, transparent 60%);
}
.pfv6 .pf-section-dark .pf-container { position: relative; z-index: 1; }
.pfv6 .pf-pros-grid { display: grid; grid-template-columns: 1fr; gap: 48px; align-items: center; }
@media (min-width: 992px) { .pfv6 .pf-pros-grid { grid-template-columns: 1.05fr .95fr; gap: 72px; } }
.pfv6 .pf-pros-eyebrow { color: rgba(252,165,165,.95); }
.pfv6 .pf-pros-text h2 { color: #fff; font-size: clamp(30px,3.8vw,46px); margin-bottom: 16px; }
.pfv6 .pf-pros-text > p { color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.6; margin: 0 0 28px; max-width: 540px; }
.pfv6 .pf-pros-bullets { list-style: none; padding: 0; margin: 0 0 32px; display: flex; flex-direction: column; gap: 18px; }
.pfv6 .pf-pros-bullet { display: flex; gap: 14px; align-items: flex-start; }
.pfv6 .pf-pros-bullet-icon { flex-shrink: 0; width: 38px; height: 38px; border-radius: 10px; background: rgba(255,255,255,.08); color: rgba(252,165,165,1); display: flex; align-items: center; justify-content: center; font-size: 14px; }
.pfv6 .pf-pros-bullet-text strong { display: block; color: #fff; font-size: 15px; margin-bottom: 2px; font-weight: 700; }
.pfv6 .pf-pros-bullet-text span { color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.55; }
.pfv6 .pf-pros-cta-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.pfv6 .pf-btn-cta-large {
  display: inline-flex; align-items: center; gap: 10px; padding: 16px 28px;
  background: var(--pf-cta); color: #fff; font-weight: 800; font-size: 16px;
  border-radius: var(--pf-r-md); box-shadow: var(--pf-shadow-cta);
  transition: all .15s var(--pf-ease);
}
.pfv6 .pf-btn-cta-large:hover { background: var(--pf-cta-dark); transform: translateY(-2px); box-shadow: var(--pf-shadow-cta-hover); }
.pfv6 .pf-btn-ghost {
  display: inline-flex; align-items: center; gap: 8px; padding: 16px 22px;
  color: #fff; font-weight: 600; font-size: 15px;
  border-radius: var(--pf-r-md); border: 1px solid rgba(255,255,255,.18);
  transition: all .15s var(--pf-ease);
}
.pfv6 .pf-btn-ghost:hover { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.3); }

/* ── FAQ ── */
.pfv6 .pf-faq-list { display: flex; flex-direction: column; gap: 10px; max-width: 880px; margin: 0 auto; }
.pfv6 .pf-faq-item { background: #fff; border: 1px solid var(--pf-line); border-radius: var(--pf-r-md); overflow: hidden; transition: border-color .15s var(--pf-ease), box-shadow .15s var(--pf-ease); }
.pfv6 .pf-faq-item[open] { border-color: var(--pf-cta); box-shadow: var(--pf-shadow-sm); }
.pfv6 .pf-faq-summary { display: flex; justify-content: space-between; align-items: center; padding: 18px 22px; font-weight: 700; font-size: 16px; color: var(--pf-ink); cursor: pointer; list-style: none; user-select: none; }
.pfv6 .pf-faq-summary::-webkit-details-marker { display: none; }
.pfv6 .pf-faq-summary i { color: var(--pf-mute); transition: transform .2s var(--pf-ease); }
.pfv6 .pf-faq-item[open] .pf-faq-summary i { transform: rotate(45deg); color: var(--pf-cta); }
.pfv6 .pf-faq-answer { padding: 0 22px 22px; color: var(--pf-text-2); font-size: 15px; line-height: 1.65; }
.pfv6 .pf-faq-answer p { margin: 0; }

/* ── MOBILE STICKY BAR ── */
.pfv6-mobile-bar {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 999;
  background: #fff; border-top: 1px solid var(--pf-line);
  padding: 10px 12px; padding-bottom: calc(10px + env(safe-area-inset-bottom));
  display: none; gap: 8px; box-shadow: 0 -8px 24px rgba(10,10,10,.10);
}
@media (max-width: 768px) { .pfv6-mobile-bar { display: flex; } }
.pfv6-mobile-bar .pf-mcb-search {
  flex: 2; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px; background: var(--pf-cta); color: #fff; font-weight: 800; font-size: 15px;
  border-radius: var(--pf-r-md);
}
.pfv6-mobile-bar .pf-mcb-emergency {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 14px; background: var(--pf-bg-2); color: var(--pf-ink); font-weight: 700; font-size: 14px;
  border-radius: var(--pf-r-md); border: 1px solid var(--pf-line);
}

/* ── MOBILE STICKY BAR ── */
.pfv6-mobile-bar {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 999;
  background: #fff; border-top: 1px solid var(--pf-line);
  padding: 10px 12px; padding-bottom: calc(10px + env(safe-area-inset-bottom));
  display: none; gap: 8px; box-shadow: 0 -8px 24px rgba(10,10,10,.10);
}
@media (max-width: 768px) { .pfv6-mobile-bar { display: flex; } }
.pfv6-mobile-bar .pf-mcb-search {
  flex: 2; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px; background: var(--pf-cta); color: #fff; font-weight: 800; font-size: 15px;
  border-radius: var(--pf-r-md);
}
.pfv6-mobile-bar .pf-mcb-emergency {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 14px; background: var(--pf-bg-2); color: var(--pf-ink); font-weight: 700; font-size: 14px;
  border-radius: var(--pf-r-md); border: 1px solid var(--pf-line);
}

/* ── MOBILE STICKY BAR ── */
.pfv6-mobile-bar {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 999;
  background: #fff; border-top: 1px solid var(--pf-line);
  padding: 10px 12px; padding-bottom: calc(10px + env(safe-area-inset-bottom));
  display: none; gap: 8px; box-shadow: 0 -8px 24px rgba(10,10,10,.10);
}
@media (max-width: 768px) { .pfv6-mobile-bar { display: flex; } }
.pfv6-mobile-bar .pf-mcb-search {
  flex: 2; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px; background: var(--pf-cta); color: #fff; font-weight: 800; font-size: 15px;
  border-radius: var(--pf-r-md);
}
.pfv6-mobile-bar .pf-mcb-emergency {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 14px; background: var(--pf-bg-2); color: var(--pf-ink); font-weight: 700; font-size: 14px;
  border-radius: var(--pf-r-md); border: 1px solid var(--pf-line);
}

/* ── MOBILE STICKY BAR ── */
.pfv6-mobile-bar {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 999;
  background: #fff; border-top: 1px solid var(--pf-line);
  padding: 10px 12px; padding-bottom: calc(10px + env(safe-area-inset-bottom));
  display: none; gap: 8px; box-shadow: 0 -8px 24px rgba(10,10,10,.10);
}
@media (max-width: 768px) { .pfv6-mobile-bar { display: flex; } }
.pfv6-mobile-bar .pf-mcb-search {
  flex: 2; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 14px; background: var(--pf-cta); color: #fff; font-weight: 800; font-size: 15px;
  border-radius: var(--pf-r-md);
}
.pfv6-mobile-bar .pf-mcb-emergency {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 14px; background: var(--pf-bg-2); color: var(--pf-ink); font-weight: 700; font-size: 14px;
  border-radius: var(--pf-r-md); border: 1px solid var(--pf-line);
}


/* ── Plumby Chat — scoped, no external overrides possible ── */
#pf-chat-dialog{position:fixed!important;inset:0!important;margin:auto!important;width:min(600px,calc(100vw - 24px))!important;height:min(640px,88vh)!important;border:none!important;padding:0!important;border-radius:20px!important;overflow:hidden!important;background:#F3F4F6!important;box-shadow:0 24px 80px rgba(0,0,0,.5)!important;display:none!important}
#pf-chat-dialog[open]{display:flex!important;flex-direction:column!important}
#pf-chat-dialog::backdrop{background:rgba(0,0,0,.62)!important}
#pf-chat-dialog .plumby-inner{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;flex:1!important}
#pf-chat-dialog .plumby-header{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:12px!important;padding:14px 18px!important;background:#0A0A0A!important}
#pf-chat-dialog .plumby-avatar{width:42px!important;height:42px!important;border-radius:50%!important;background:linear-gradient(135deg,#DC2626,#7C3AED)!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:18px!important;flex-shrink:0!important}
#pf-chat-dialog .plumby-name{font-size:15px!important;font-weight:700!important;color:#fff!important;line-height:1.2!important;font-family:Inter,sans-serif!important}
#pf-chat-dialog .plumby-sub{font-size:12px!important;color:rgba(255,255,255,.5)!important;display:flex!important;align-items:center!important;gap:5px!important;font-family:Inter,sans-serif!important}
#pf-chat-dialog .plumby-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#4ADE80!important;display:inline-block!important;box-shadow:0 0 6px #4ADE80!important}
#pf-chat-dialog #pf-chat-stream{flex:1 1 0!important;min-height:0!important;overflow-y:auto!important;padding:16px 18px!important;background:#F3F4F6!important;display:flex!important;flex-direction:column!important;gap:12px!important;height:0!important}
#pf-chat-dialog .pf-chat-msg{display:flex!important;align-items:flex-end!important;gap:8px!important;max-width:85%!important}
#pf-chat-dialog .pf-chat-msg.is-user{align-self:flex-end!important;flex-direction:row-reverse!important;max-width:85%!important}
#pf-chat-dialog .pf-chat-ai-avatar{width:28px!important;height:28px!important;border-radius:50%!important;flex-shrink:0!important;background:linear-gradient(135deg,#DC2626,#7C3AED)!important;color:#fff!important;font-size:12px!important;display:flex!important;align-items:center!important;justify-content:center!important}
#pf-chat-dialog .pf-chat-bubble{padding:12px 16px!important;border-radius:18px!important;font-size:15px!important;line-height:1.55!important;font-family:Inter,sans-serif!important;word-wrap:break-word!important}
#pf-chat-dialog .pf-chat-msg:not(.is-user) .pf-chat-bubble{background:#fff!important;color:#111!important;border-radius:4px 18px 18px 18px!important;box-shadow:0 1px 3px rgba(0,0,0,.08)!important;word-break:break-word!important;overflow-wrap:break-word!important}
#pf-chat-dialog .pf-chat-msg.is-user .pf-chat-bubble{background:#0A0A0A!important;color:#fff!important;border-radius:18px 4px 18px 18px!important}
#pf-chat-dialog .pf-chat-bubble p{margin:0 0 6px!important}
#pf-chat-dialog .pf-chat-bubble p:last-child{margin:0!important}
#pf-chat-dialog .pf-chat-typing{display:flex!important;align-items:center!important;gap:4px!important;padding:12px 16px!important;background:#fff!important;border-radius:4px 18px 18px 18px!important;width:fit-content!important;box-shadow:0 1px 3px rgba(0,0,0,.08)!important}
#pf-chat-dialog .pf-typing-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#9CA3AF!important;animation:pfT 1.2s infinite!important}
#pf-chat-dialog .pf-typing-dot:nth-child(2){animation-delay:.2s!important}
#pf-chat-dialog .pf-typing-dot:nth-child(3){animation-delay:.4s!important}
@keyframes pfT{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-4px)}}
#pf-chat-dialog #pf-chat-chips{display:none!important}
#pf-chat-dialog .pf-inline-chips{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:4px!important;margin-bottom:4px!important}
#pf-chat-dialog .pf-dialog-chip{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:5px 11px!important;border-radius:999px!important;border:1.5px solid #DC2626!important;background:#fff!important;color:#0F172A!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important;transition:all .15s!important;font-family:Inter,sans-serif!important}
#pf-chat-dialog .pf-dialog-chip:hover{background:#DC2626!important;color:#fff!important}
#pf-chat-dialog .pf-dialog-chip i{font-size:12px!important}
#pf-chat-dialog .pf-dialog-input-row{flex:0 0 auto!important;padding:10px 14px 14px!important;background:#fff!important;border-top:1px solid #EBEBEB!important}
#pf-chat-dialog .pf-dialog-textarea{display:block!important;width:100%!important;box-sizing:border-box!important;border:1.5px solid #E0E0E0!important;border-radius:24px!important;padding:13px 50px 13px 18px!important;font-size:16px!important;line-height:1.45!important;resize:none!important;outline:none!important;color:#111!important;background:#F9FAFB!important;min-height:52px!important;max-height:120px!important;font-family:Inter,sans-serif!important;overflow-y:auto!important;-webkit-appearance:none!important}
#pf-chat-dialog .pf-dialog-textarea:focus{border-color:#DC2626!important;background:#fff!important;box-shadow:0 0 0 3px rgba(220,38,38,.1)!important}
#pf-chat-dialog .pf-dialog-textarea::placeholder{color:#9CA3AF!important}
#pf-chat-dialog .pf-dialog-actions{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-top:8px!important}
#pf-chat-dialog .pf-dialog-actions-right{display:flex!important;gap:6px!important;align-items:center!important}
#pf-chat-dialog .pf-dialog-icon{width:34px!important;height:34px!important;border-radius:50%!important;border:none!important;background:none!important;color:#9CA3AF!important;font-size:16px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important}
#pf-chat-dialog .pf-dialog-icon:hover{color:#374151!important}
#pf-chat-dialog .pf-dialog-send{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;max-width:38px!important;max-height:38px!important;border-radius:50%!important;border:none!important;background:#DC2626!important;color:#fff!important;font-size:15px!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 8px rgba(220,38,38,.35)!important;flex-shrink:0!important;padding:0!important;line-height:38px!important;aspect-ratio:1/1!important}
#pf-chat-dialog .pf-dialog-send:hover{background:#B91C1C!important}
#pf-chat-dialog .pf-chat-results{display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:6px!important;width:100%!important;overflow:hidden!important}
#pf-chat-dialog .pf-chat-result{background:#fff!important;border:1px solid #E5E7EB!important;border-radius:14px!important;position:relative!important;overflow:hidden!important}
#pf-chat-dialog .pf-chat-result.pf-best-match{border-color:#DC2626!important;box-shadow:0 0 0 1px #DC2626!important;margin-top:10px!important;overflow:visible!important}
#pf-chat-dialog .pf-chat-result.pf-best-match::before{content:"★ Best match"!important;position:absolute!important;top:-9px!important;left:10px!important;background:#DC2626!important;color:#fff!important;font-size:12px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:2px 8px!important;border-radius:999px!important}
#pf-chat-dialog .pf-chat-result-body{display:flex!important;align-items:center!important;gap:8px!important;padding:8px 10px!important;box-sizing:border-box!important;overflow:hidden!important}
#pf-chat-dialog .pf-chat-result-mark{width:34px!important;height:34px!important;border-radius:10px!important;flex-shrink:0!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-weight:800!important;font-size:14px!important}
#pf-chat-dialog .pf-chat-result-mark.av-1{background:linear-gradient(135deg,#DC2626,#0A0A0A)!important}
#pf-chat-dialog .pf-chat-result-mark.av-2{background:linear-gradient(135deg,#1F2937,#4B5563)!important}
#pf-chat-dialog .pf-chat-result-mark.av-3{background:linear-gradient(135deg,#B91C1C,#DC2626)!important}
#pf-chat-dialog .pf-chat-result-info{flex:1!important;min-width:0!important;overflow:hidden!important}
#pf-chat-dialog .pf-chat-result-row1{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important;overflow:hidden!important;margin-bottom:2px!important}
#pf-chat-dialog a.pf-chat-result-name,#pf-chat-dialog span.pf-chat-result-name{font-weight:700!important;font-size:13px!important;color:#111!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:none!important;display:block!important;text-decoration:none!important;flex-shrink:1!important;min-width:0!important;width:0!important;flex-grow:1!important}
#pf-chat-dialog a.pf-chat-result-name:hover{color:#0F172A!important}
#pf-chat-dialog .pf-chat-result-score{font-size:12px!important;font-weight:800!important;color:#0F172A!important;background:#FEE2E2!important;padding:1px 6px!important;border-radius:999px!important;flex-shrink:0!important;line-height:1.4!important}
#pf-chat-dialog .pf-chat-result-meta{font-size:12px!important;color:#6B7280!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#pf-chat-dialog .pf-chat-result-meta .stars{color:#F59E0B!important}
#pf-chat-dialog .pf-chat-result-call{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;border-radius:50%!important;flex-shrink:0!important;background:#DC2626!important;color:#fff!important;font-size:13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;box-shadow:0 2px 6px rgba(220,38,38,.3)!important;transition:background .15s!important;line-height:36px!important;overflow:hidden!important}
#pf-chat-dialog .pf-chat-result-call:hover{background:#B91C1C!important;color:#fff!important}
#pf-chat-dialog .pf-chat-footer{font-size:12px!important;color:#9CA3AF!important;margin-top:6px!important}
#pf-chat-dialog .pf-chat-footer a{color:#0F172A!important;text-decoration:none!important}
@keyframes pfPulse{0%{box-shadow:0 0 0 0 rgba(220,38,38,.5)}70%{box-shadow:0 0 0 8px rgba(220,38,38,0)}100%{box-shadow:0 0 0 0 rgba(220,38,38,0)}}
#pf-chat-dialog .pf-chat-result.pf-best-match .pf-chat-result-call{animation:pfPulse 2s infinite!important}
@media(max-width:640px){#pf-chat-dialog{width:calc(100vw - 16px)!important;height:92vh!important;border-radius:16px!important}#pf-chat-dialog .pf-dialog-textarea{font-size:16px!important}}

/* ── Homepage featured listing card utilities ── */
.pf-lc-photo-placeholder {
  width: 100%; height: 100%;
  background: var(--color-bg-muted);
  display: flex; align-items: center; justify-content: center;
  color: var(--color-text-subtle); font-size: 2rem;
}
.pf-lc-photo-img {
  width: 100%; height: 100%;
  object-fit: contain; padding: var(--space-4);
  background: var(--color-bg);
}
.pf-stat-num {
  font-size: 24px; font-weight: 900; line-height: 1;
  color: var(--color-text);
}
.pf-stat-label {
  font-size: 11px; color: var(--color-text-subtle);
  margin-top: 2px;
}
.pf-stat-label-lg {
  font-size: 11px; color: var(--color-text-subtle);
  margin-top: 4px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.05em;
}
.pf-eyebrow-badge {
  font-size: 11px; color: var(--color-success);
  background: rgba(22,163,74,0.1);
  padding: 2px 8px; border-radius: var(--radius-full);
}

/* ── Utility overrides ── */
.pf-text-muted { color: var(--color-text-muted); }
.pf-text-white { color: white; }
.pf-icon-sm { font-size: 10px; }
.pf-chat-input-base { color: var(--ink-900); }

/* ── States section utilities ── */
.pf-state-pill { font-size: 10px; display: flex; align-items: center; gap: 4px; }
.pf-state-count { font-size: 10px; opacity: 0.6; }
.pf-hiw-number { font-size: 24px; font-weight: 900; line-height: 1; color: var(--ink-900); }
.pf-section-h2 { font-size: clamp(28px, 3.4vw, 40px); margin-bottom: 14px; }
.pf-section-sub { color: var(--color-text-muted); font-size: 16px; margin: 0 0 32px; max-width: 480px; }
.pf-for-pros-card { background: #fff; border-radius: var(--radius-xl); padding: 28px; box-shadow: var(--shadow-md); }
.pf-cta-row { display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--color-border); }
.pf-cta-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 24px; }
.pf-score-chart-row { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; align-items: flex-end; height: 48px; }

/* ── Homepage section utilities ── */
.pf-score-bar-fill { background: var(--pf-cta); border-radius: 4px 4px 0 0; }
.pf-score-chart-col { display: flex; align-items: flex-end; }
.pf-review-count { font-size: 24px; font-weight: 900; line-height: 1; color: var(--pf-ink); }
.pf-review-label { font-size: 11px; color: var(--pf-mute); margin-top: 2px; }
.pf-review-label-upper { font-size: 11px; color: var(--pf-mute); margin-top: 4px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }
.pf-info-row { font-size: 12px; display: flex; align-items: center; gap: 10px; }
.pf-for-pros-bg { background: var(--pf-bg-2); border-radius: var(--pf-r-md); }
.pf-flex-col-center { justify-content: center; text-align: center; flex-direction: column; align-items: center; display: flex; }
.pf-text-center { text-align: center; }
.pf-muted-text { color: var(--pf-mute); font-size: 13px; }
.pf-cta-link { color: var(--pf-cta); }
.pf-icon-google { color: #4285F4; font-size: 14px; }
.pf-label-sm { font-size: 11px; color: var(--pf-mute); text-transform: uppercase; letter-spacing: 0.05em; }
.pf-bold-stat { font-weight: 800; font-size: 14px; }
.pf-flex-fill { flex: 1; font-weight: 700; }
.pf-eyebrow-green { font-size: 11px; color: var(--pf-green); background: var(--pf-green-soft); padding: 2px 8px; border-radius: var(--pf-r-pill); }
.pf-icon-xs { font-size: 9px; margin-right: 4px; }
.pf-para-sub { margin-top: 18px; font-size: 14px; color: rgba(255,255,255,.55); }
.pf-btn-close-xs { margin-left: auto; background: none; border: none; cursor: pointer; color: var(--pf-mute); font-size: 16px; }

/* ── More homepage utilities ── */
.pf-score-bar { background: var(--pf-cta); border-radius: 4px 4px 0 0; height: var(--h); }
.pf-bg-card { background: var(--pf-bg-2); border-radius: var(--pf-r-md); }
.pf-info-row-sm { font-size: 12px; display: flex; align-items: center; gap: 10px; }
.pf-icon-muted { color: var(--pf-mute); font-size: 10px; }
.pf-lc-meta-row { font-size: 11px; color: var(--pf-mute); text-transform: uppercase; letter-spacing: 0.05em; font-weight: 700; }
.pf-bold-label { font-weight: 800; font-size: 14px; }
.pf-img-preview-thumb { width: 48px; height: 48px; object-fit: cover; border-radius: 8px; }
.pf-for-pros-white { background: #fff; border-radius: var(--pf-r-lg); }
.pf-flex-center-col { display: flex; align-items: center; justify-content: center; flex-direction: column; }
.pf-eyebrow-green-sm { font-size: 11px; color: var(--pf-green); background: var(--pf-green-soft); padding: 2px 8px; border-radius: var(--pf-r-pill); }
.pf-icon-pulse { color: #FCA5A5; font-size: 11px; animation: pfBoltPulse 1.8s ease-in-out infinite; }

/* ======================================================================
   3. JOIN PAGE  .join-page / .sp2-*  (was inline in join.php)
   ====================================================================== */
    /* ── JOIN PAGE v3 — scoped to .join-page ── */

    /* 1. HERO BG: pure near-black */
    .join-page .sp2-hero {
        background: linear-gradient(135deg, #0A0A0A 0%, #000 100%);
    }
    .join-page .sp2-hero::before { background: none; }

    /* Logo legibility on dark hero */
    .join-page .sp2-nav-logo {
        color: #ffffff !important;
        font-weight: 900;
        font-size: 18px;
        letter-spacing: -0.02em;
        text-decoration: none;
    }
    .join-page .sp2-nav-logo span {
        color:#0F172A !important;
    }

    /* Single eyebrow pill */
    .join-page .sp2-eyebrow {
        background: rgba(148,163,184,.12);
        border: 1px solid rgba(148,163,184,.35);
        color: #CBD5E1;
    }
    .join-page .sp2-pulse {
        background: #DC2626;
        animation: sp2pulse 1.4s infinite;
    }
    .join-page .sp2-h1-highlight { color:#CBD5E1; }
    .join-page .sp2-bullets li i { color:#34D399; }
    .join-page .sp2-announce { background: #991b1b; }

    /* Loss-stat callout */
    .jls-box {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        background: rgba(148,163,184,.12);
        border-left: 4px solid #64748B;
        border-radius: 0 8px 8px 0;
        padding: 14px 18px;
        margin: 20px 0;
    }
    .jls-num {
        font-size: clamp(20px, 4vw, 26px);
        font-weight: 900;
        color:#CBD5E1;
        line-height: 1.1;
        white-space: nowrap; /* 9. fix wrap */
        flex-shrink: 0;
    }
    .jls-desc {
        font-size: 13px;
        color: #94a3b8;
        line-height: 1.55;
        padding-top: 2px;
    }

    /* 8. Mobile-only hero shortcut CTA */
    .sp2-hero-mobile-cta {
        display: none;
        width: 100%;
        background: #DC2626;
        color: #fff !important;
        font-weight: 800;
        font-size: 16px;
        padding: 14px 20px;
        border-radius: 8px;
        text-align: center;
        text-decoration: none;
        margin: 16px 0 20px;
        box-shadow: 0 4px 14px rgba(220,38,38,.4);
    }
    @media (max-width: 768px) {
        .sp2-hero-mobile-cta { display: block; }
    }

    /* 3. Plan radio cards */
    .join-page .sp2-plan {
        cursor: pointer;
        min-height: 44px;
        position: relative;
    }
    .join-page .sp2-plan input[type="radio"] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }
    .sp2-plan-radio-dot {
        width: 18px; height: 18px;
        border: 2px solid #d1d5db;
        border-radius: 50%;
        flex-shrink: 0;
        display: flex; align-items: center; justify-content: center;
        transition: border-color .15s;
    }
    .sp2-plan-radio-dot::after {
        content: '';
        width: 8px; height: 8px;
        background: #DC2626;
        border-radius: 50%;
        opacity: 0;
        transition: opacity .15s;
    }
    .join-page .sp2-plan.is-selected .sp2-plan-radio-dot { border-color: #DC2626; }
    .join-page .sp2-plan.is-selected .sp2-plan-radio-dot::after { opacity: 1; }
    .sp2-plan-inner-wrap {
        display: flex; align-items: center; gap: 10px; width: 100%;
    }
    .sp2-plan-inner-wrap .sp2-plan-inner { flex: 1; }

    /* 5. Guarantee headline */
    .join-guarantee-line {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 13px;
        font-weight: 700;
        color: #111827;
        margin-bottom: 10px;
    }
    .join-guarantee-line .jgl-dot {
        width: 8px; height: 8px;
        background: #DC2626;
        border-radius: 50%;
        flex-shrink: 0;
    }

    /* 4. Trust row ABOVE cta — override existing below-cta position */
    .join-trust-above {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 16px;
        margin-bottom: 12px;
        font-size: 12px;
        color: #6b7280;
    }
    .join-trust-above li {
        list-style: none;
        display: flex;
        align-items: center;
        gap: 5px;
    }
    .join-trust-above li i { color:#0F172A; font-size: 11px; }

    /* Hide original trust row (moved above) */
    .join-page .sp2-trust-row { display: none; }

    /* CTA fine print */
    .sp2-cta-fine {
        display: block;
        font-size: 12px;
        color: #64748B;
        text-align: center;
        margin-top: 6px;
    }
    .sp2-final-cta-fine {
        display: block;
        font-size: 12px;
        color: #6b7280;
        margin-top: 8px;
        text-align: center;
    }
    .sp2-pricing-cta-fine {
        display: block;
        font-size: 12px;
        color: #64748B;
        text-align: center;
        margin-top: 6px;
    }

    /* 10. Floating labels */
    .sp2-field { position: relative; }
    .sp2-field label {
        position: absolute;
        top: 50%;
        left: 14px;
        transform: translateY(-50%);
        font-size: 14px;
        color: #9ca3af;
        pointer-events: none;
        transition: top .15s, font-size .15s, color .15s, transform .15s;
        background: transparent;
        padding: 0 2px;
        line-height: 1;
        z-index: 1;
    }
    .sp2-field input:focus ~ label,
    .sp2-field input:not(:placeholder-shown) ~ label,
    .sp2-field input.has-value ~ label {
        top: 0;
        transform: translateY(-50%);
        font-size: 11px;
        color:#0F172A;
        background: #fff;
        padding: 0 4px;
    }
    .sp2-field input::placeholder { color: transparent; }

    /* 13. Social proof row above form headline */
    .join-social-proof-row {
        font-size: 13px;
        font-weight: 600;
        color: #6b7280;
        margin-bottom: 8px;
        display: flex;
        align-items: center;
        gap: 6px;
    }
    .join-social-proof-row .jsr-stars { color: #f59e0b; }

    /* 8. Sticky bar: smooth fade */
    .sp2-sticky {
        transition: opacity .25s, visibility .25s;
        display: flex !important;
    }
    .sp2-sticky.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }

    /* Fix bullet list layout — stack cleanly, no multi-column breaks */
    .join-page .sp2-bullets {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 0;
        margin: 20px 0;
        list-style: none;
    }
    .join-page .sp2-bullets li {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        font-size: 15px;
        line-height: 1.5;
        color: #e2e8f0;
    }
    .join-page .sp2-bullets li i {
        color:#34D399;
        margin-top: 3px;
        flex-shrink: 0;
        font-size: 14px;
    }

    /* Problem section accent */
    .join-page .sp2-problem-card { border-top: 3px solid #DC2626; }
    .join-page .sp2-problem-icon i { color:#0F172A; }
    .join-page .sp2-problem-stat { background: #fee2e2; color: #991b1b; }

    /* 11. Activity toast */
    #join-toast {
        position: fixed;
        bottom: 80px;
        left: 16px;
        z-index: 9000;
        background: #fff;
        border: 1px solid #e5e7eb;
        border-left: 4px solid #DC2626;
        border-radius: 8px;
        padding: 12px 16px;
        font-size: 13px;
        color: #111827;
        box-shadow: 0 4px 20px rgba(0,0,0,.12);
        max-width: 280px;
        opacity: 0;
        transform: translateY(8px);
        transition: opacity .3s, transform .3s;
        pointer-events: none;
    }
    #join-toast.is-visible { opacity: 1; transform: translateY(0); pointer-events: auto; }
    #join-toast .jt-name { font-weight: 700; }
    #join-toast .jt-meta { color: #6b7280; font-size: 12px; margin-top: 2px; }
    @media (max-width: 768px) { #join-toast { display: none; } }

    /* 12. Exit-intent modal */
    #join-exit-modal {
        position: fixed; inset: 0; z-index: 9999;
        background: rgba(0,0,0,.6);
        display: flex; align-items: center; justify-content: center;
        opacity: 0; visibility: hidden;
        transition: opacity .25s, visibility .25s;
    }
    #join-exit-modal.is-open { opacity: 1; visibility: visible; }
    .jem-card {
        background: #fff;
        border-radius: 16px;
        padding: 36px 32px;
        max-width: 420px;
        width: calc(100% - 32px);
        text-align: center;
        position: relative;
    }
    .jem-card h2 { font-size: 22px; font-weight: 900; margin-bottom: 10px; letter-spacing: -.02em; }
    .jem-card p { font-size: 15px; color: #6b7280; margin-bottom: 24px; }
    .jem-cta {
        display: block; width: 100%;
        background: #DC2626; color: #fff;
        font-weight: 800; font-size: 16px;
        padding: 14px; border-radius: 8px;
        text-decoration: none;
        transition: background .15s;
    }
    .jem-cta:hover { background: #b91c1c; color: #fff; }
    .jem-dismiss {
        position: absolute; top: 12px; right: 14px;
        font-size: 20px; color: #9ca3af; cursor: pointer;
        background: none; border: none; line-height: 1;
        padding: 4px 8px;
    }
    .jem-fine { font-size: 11px; color: #9ca3af; margin-top: 10px; }

    /* AI FOMO section — mobile */
    @media (max-width: 768px) {
        .sp2-video-section { padding: 40px 16px !important; }
        .sp2-video-section h2 { font-size: 22px !important; }
        .sp2-ai-fomo-stats { flex-direction: column !important; align-items: center !important; }
        .sp2-ai-fomo-stat { width: 100% !important; max-width: 100% !important; min-width: unset !important; }
        .sp2-ai-fomo-platforms { gap: 8px !important; }
        .sp2-ai-fomo-platform { min-width: 80px !important; padding: 10px 12px !important; }
        .sp2-ai-fomo-warning { padding: 16px 18px !important; }
        .sp2-ai-fomo-warning p { font-size: 14px !important; }
        .sp2-ai-section { padding: 50px 16px !important; }
        .sp2-ai-section h2 { font-size: 24px !important; }
        .sp2-ai-section p { font-size: 15px !important; }
    }

/* ======================================================================
   4. GLOSSARY ARCHIVE  (was inline in archive-glossary.php)
   ====================================================================== */
.featured {display:none;}
.alpha_letter {text-align: center;}
.glossary_category-sect {-webkit-column-count: 1;-moz-column-count: 1;column-count: 1;}
.glossary_category-sect li.parent {display:none;opacity: 0;}
.glossary_category-sect li.parent.act {display:list-item;opacity: 1;transition: opacity 1s;}
.glossary_category-sect h3 {
  color: #0F112D;
  margin-bottom: 5px;
}
.glossary_category-sect .glossary-post h3 {
  margin-bottom: 5px;
  line-height: 25px;
}
.glossary_category-sect .glossary-post h3 a {
  color: #0F112D;
  padding: 0;
  font-weight: 700;
  font-size: 20px;
}
.glossary_category-sect .glossary-post h3 a:hover {
  color: #42a6ff;
}
.post-type-archive-glossary .content-area {
  background-color: #f2f2f2;
}
.post-type-archive-glossary .content-area .innerBanner::before {
  z-index: 99;
}
.post-type-archive-glossary .cardWrapper {
  margin-bottom: 0;
}
.post-type-archive-glossary .glossary-section {
  padding-bottom: 60px;
}
.glossary_category-sect .glossary-post {
  border-bottom: 1px solid #E5E4E6;
}
@media only screen and (max-width: 1200px) {
  .post-type-archive-glossary .alpha_letter .alpha_letter_list {
    display: block;
  }
  .post-type-archive-glossary .alpha_letter ul li a {
  border-bottom: 1px solid #D0D5DD;
}
.post-type-archive-glossary .cardWrapper .cardTitle {
  padding: 15px 15px;
}
.post-type-archive-glossary .cardWrapper .cardContent {
  padding: 15px 15px;
}
}
@media only screen and (max-width: 767px) {
  .glossary_category-sect {-webkit-column-count: 1;-moz-column-count: 1;column-count: 1;}
}

/* ======================================================================
   5. LISTING LIVE  (was inline in listing-live.php)
   ====================================================================== */
body.signup-landing { background: #F4F7FA; }
.listing-live-wrap { min-height: calc(100vh - 69px); display: flex; align-items: center; justify-content: center; padding: 2rem; }
.listing-live-card { background: #fff; border-radius: 24px; padding: 3rem 2.5rem; max-width: 540px; width: 100%; text-align: center; box-shadow: 0 8px 40px rgba(0,0,0,0.10); border: 1px solid #E8EDF2; }
.listing-live-icon { font-size: 3.5rem; margin-bottom: 1rem; display: block; }
.listing-live-card h1 { font-family: 'Inter', sans-serif; font-size: 1.75rem; font-weight: 900; color: #0F1923; letter-spacing: -0.03em; margin: 0 0 0.5rem; }
.ll-sub { color: #6B7280; font-size: 1rem; line-height: 1.7; margin: 0 0 1.5rem; font-family: 'Inter', sans-serif; }
.ll-dfy-box { background: linear-gradient(135deg, #0A2540 0%, #0A5C9E 100%); border-radius: 14px; padding: 1.25rem 1.5rem; margin-bottom: 1.75rem; text-align: left; }
.ll-dfy-headline { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 800; color: #fff; margin-bottom: 0.5rem; }
.ll-dfy-box p { font-family: 'Inter', sans-serif; font-size: 0.88rem; color: rgba(255,255,255,0.85); line-height: 1.6; margin: 0; }
.listing-live-steps { display: flex; flex-direction: column; gap: 0.85rem; margin-bottom: 1.75rem; text-align: left; }
.lls-step { display: flex; align-items: center; gap: 1rem; padding: 0.9rem 1rem; border-radius: 12px; background: #F8FAFC; border: 1px solid #E8EDF2; }
.lls-step.done { background: rgba(22,163,74,0.06); border-color: rgba(22,163,74,0.2); }
.lls-step.active { background: rgba(10,92,158,0.06); border-color: rgba(10,92,158,0.2); }
.lls-num { width: 34px; height: 34px; border-radius: 50%; background: #E8EDF2; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 0.85rem; font-family: 'Inter', sans-serif; flex-shrink: 0; color: #6B7280; }
.lls-step.done .lls-num { background: #16A34A; color: #fff; }
.lls-step.active .lls-num { background: #0A5C9E; color: #fff; }
.lls-step strong { display: block; font-size: 0.875rem; color: #0F1923; font-weight: 700; font-family: 'Inter', sans-serif; }
.lls-step span { font-size: 0.78rem; color: #6B7280; font-family: 'Inter', sans-serif; }
.ll-expect-box { background: #F4F7FA; border-radius: 14px; padding: 1.25rem 1.5rem; margin-bottom: 1.5rem; text-align: left; }
.ll-expect-box strong { display: block; font-family: 'Inter', sans-serif; font-size: 0.875rem; font-weight: 700; color: #0F1923; margin-bottom: 0.75rem; }
.ll-expect-box ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 0.5rem; }
.ll-expect-box li { font-family: 'Inter', sans-serif; font-size: 0.85rem; color: #374151; line-height: 1.5; }
.listing-live-support p { font-size: 0.82rem; color: #9CA3AF; margin: 0; font-family: 'Inter', sans-serif; }
.listing-live-support a { color: #0A5C9E; text-decoration: none; }
@media(max-width:480px) { .listing-live-card { padding: 2rem 1.25rem; } }

/* ======================================================================
   6. GLOSSARY CATEGORIES  (was inline in categories-glossary.php)
   ====================================================================== */
		.featured {display:none;}
		.alpha_letter {text-align: center;}
		.business_category-sect {-webkit-column-count: 4;-moz-column-count: 4;column-count: 4;}
		.business_category-sect li.parent {display:none;opacity: 0;}
		.business_category-sect li.parent.act {display:list-item;opacity: 1;transition: opacity 1s;}
        @media only screen and (max-width: 767px) {
          .business_category-sect {-webkit-column-count: 1;-moz-column-count: 1;column-count: 1;}
        }


/* ======================================================================
   JOIN HERO — LIGHT REDESIGN (overrides the old dark hero)
   ====================================================================== */
.join-page .sp2-hero { background:#F1F5F9 !important; }
.join-page .sp2-hero::before { display:none !important; }
.join-page .sp2-nav-logo,
.join-page .sp2-nav-logo.pfusa-brand-text { color:#0F172A !important; }
.join-page .sp2-nav-logo span { color:#DC2626 !important; }
.join-page .sp2-nav-help,
.join-page .sp2-nav-signin { color:#475569 !important; }
.join-page .sp2-nav-help i { color:#475569 !important; }
.join-page .sp2-nav-signin { border-color:#CBD5E1 !important; }
.join-page .sp2-nav-signin strong { color:#0F172A !important; }
.join-page .sp2-eyebrow { background:transparent !important; border:none !important; color:#64748B !important; padding:0 !important; margin-bottom:16px !important; font-weight:700 !important; letter-spacing:.12em !important; }
.join-page .sp2-h1 { color:#0F172A !important; }
.join-page .sp2-h1-highlight { color:#0F172A !important; }
.join-page .sp2-sub { color:#475569 !important; }
.join-page .sp2-sub strong { color:#0F172A !important; }
.join-page .sp2-bullets li { color:#0F172A !important; }
.join-page .sp2-bullets li i { color:#16A34A !important; }
.join-page .sp2-plan { background:#fff !important; border:1px solid #E2E8F0 !important; }
.join-page .sp2-plan.is-selected { border:2px solid #0F172A !important; background:#fff !important; }
.join-page .sp2-plan-badge { background:#0F172A !important; color:#fff !important; }
.join-page .sp2-hero-inner { padding-top:36px !important; padding-bottom:56px !important; }
