/* InnaPace v27/28/29 — Production CSS
 * Authoritative: v27 mockup for Home + Pricing, v28 for Find a Professional, v29 for Dashboard.
 * Enqueued at priority 30 in activepace-theme/functions.php.
 * Last updated: 2026-05-21
 */

/* ============================================================
 * v27 — Tokens, base, shared primitives (topbar, footer, buttons)
 * ============================================================ */
  :root {
    --navy: #0d1b2a;
    --navy-soft: #1a2a3d;
    --teal: #2fa68c;
    --teal-soft: #d6ebe5;
    --teal-deep: #1f7a66;
    --teal-watermark: rgba(47, 166, 140, 0.13);
    --coral: #e57b3f;
    --coral-soft: #f8e1d2;
    --cream: #faf7f2;
    --cream-warm: #f3ede2;
    --paper: #ffffff;
    --ink-1: #0d1b2a;
    --ink-2: #4a5568;
    --ink-3: #8a94a3;
    --rule: #e8e2d6;
    --rule-soft: #efeae0;
    --shadow-sm: 0 1px 2px rgba(13, 27, 42, 0.04), 0 1px 3px rgba(13, 27, 42, 0.03);
    --shadow-md: 0 4px 16px rgba(13, 27, 42, 0.06), 0 2px 6px rgba(13, 27, 42, 0.04);
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  html, body {
    background: var(--cream);
    color: var(--ink-1);
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 15px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
  }
  svg.icon { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }

  /* ===========================
     SHARED TOP BAR (used on all pages)
     =========================== */
  .topbar {
    background: var(--cream);
    padding: 18px 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--rule);
    position: relative;
    z-index: 10;
  }
  .topbar.scroll-sticky {
    position: sticky;
    top: 0;
    backdrop-filter: blur(8px);
    background: rgba(250, 247, 242, 0.92);
    z-index: 20;
  }
  .logotype {
    font-size: 24px;
    display: flex;
    align-items: baseline;
    gap: 1px;
    cursor: pointer;
  }
  .logotype .inna {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal);
  }
  .logotype .pace {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    color: var(--navy);
  }
  .top-nav {
    display: flex;
    gap: 32px;
    align-items: center;
  }
  .top-nav a {
    color: var(--ink-1);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
  }
  .top-nav a:hover { color: var(--teal-deep); }
  .top-nav a.current { color: var(--teal-deep); }
  .header-search-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--rule);
    background: none;
    color: var(--ink-2);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, color 0.15s;
  }
  .header-search-icon:hover { border-color: var(--teal-deep); color: var(--teal-deep); }
  .top-nav .signin-btn {
    color: var(--teal-deep);
    border: 1.5px solid var(--teal-deep);
    padding: 9px 18px;
    border-radius: 100px;
    font-weight: 600;
  }
  .top-nav .signin-btn:hover {
    background: var(--teal-deep);
    color: var(--cream);
  }

  /* ===========================
     SHARED FOOTER (used on all pages except Dashboard)
     =========================== */
  .site-footer {
    margin-top: 96px;
    padding: 48px 48px 36px;
    border-top: 1px solid var(--rule);
    background: var(--cream);
  }
  .footer-grid {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr 1fr;
    gap: 48px;
    align-items: start;
  }
  .footer-brand .logotype { margin-bottom: 14px; }
  .footer-brand p {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    color: var(--ink-2);
    font-size: 13.5px;
    line-height: 1.65;
    max-width: 260px;
  }
  .footer-col h4 {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--ink-3);
    font-weight: 700;
    margin-bottom: 14px;
  }
  .footer-col a {
    display: block;
    color: var(--ink-2);
    text-decoration: none;
    font-size: 13.5px;
    margin-bottom: 8px;
    cursor: pointer;
  }
  .footer-col a:hover { color: var(--teal-deep); }
  .footer-bottom {
    max-width: 1280px;
    margin: 36px auto 0;
    padding-top: 22px;
    border-top: 1px solid var(--rule-soft);
    display: flex;
    justify-content: space-between;
    font-size: 12.5px;
    color: var(--ink-3);
  }
  .footer-bottom em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    color: var(--ink-2);
  }

  /* ===========================
     CARDS, BUTTONS, PILLS — shared primitives
     =========================== */
  .card-base {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: var(--radius-md);
  }
  .btn-primary {
    background: var(--navy);
    color: var(--cream);
    border: none;
    border-radius: 100px;
    padding: 12px 22px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter';
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background 0.15s, gap 0.2s;
    text-decoration: none;
  }
  .btn-primary:hover { background: var(--navy-soft); gap: 10px; }
  .btn-secondary {
    background: var(--teal);
    color: var(--navy);
    border: none;
    border-radius: 100px;
    padding: 12px 22px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter';
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background 0.15s, gap 0.2s;
    text-decoration: none;
  }
  .btn-secondary:hover { background: var(--teal-deep); color: var(--cream); gap: 10px; }

  /* Avatar gradients (reused everywhere) */
  .av-1 { background: linear-gradient(135deg, #2fa68c, #1f7a66); }
  .av-2 { background: linear-gradient(135deg, #e57b3f, #c8632b); }
  .av-3 { background: linear-gradient(135deg, #4a7c9d, #2c5876); }
  .av-4 { background: linear-gradient(135deg, #b5685b, #8d4538); }
  .av-5 { background: linear-gradient(135deg, #8a7654, #695533); }
  .av-6 { background: linear-gradient(135deg, #6b8e6f, #4a6e4e); }
  .av-7 { background: linear-gradient(135deg, #9d6b8e, #6e4a5a); }
  .av-8 { background: linear-gradient(135deg, #c89854, #8f6928); }

  /* ===========================
     RESPONSIVE BASELINE
     =========================== */
  @media (max-width: 1000px) {
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  }
  @media (max-width: 760px) {
    .topbar { padding: 14px 20px; }
    .top-nav { gap: 12px; }
    .top-nav a:not(.signin-btn):not(.current) { display: none; }
    .page-switcher { top: 10px; }
    .page-switcher button { padding: 6px 10px; font-size: 10.5px; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; gap: 8px; }
    .site-footer { padding: 36px 20px 24px; }
  }

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

/* ============================================================
 * v27 — Responsive baseline
 * ============================================================ */
     /* PAGE: HOME
     =========================== */
  .home-hero {
    padding: 60px 48px 0;
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
  }
  .home-hero-grid {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 56px;
    align-items: stretch;
    position: relative;
    min-height: 700px;
  }
  .home-hero-left {
    position: relative;
    padding-top: 60px;
    display: flex;
    flex-direction: column;
    z-index: 2;
  }
  .home-watermark {
    position: absolute;
    top: -30px;
    left: -36px;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 260px;
    line-height: 1;
    color: var(--teal-watermark);
    pointer-events: none;
    user-select: none;
    z-index: 0;
    letter-spacing: -0.04em;
  }
  .home-hero-content { position: relative; z-index: 1; }
  .home-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--coral);
    margin-bottom: 22px;
  }
  .home-eyebrow::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 1.5px;
    background: var(--coral);
  }
  .home-headline { margin-bottom: 28px; }
  .home-headline .line {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 56px;
    line-height: 1.05;
    letter-spacing: -0.025em;
    color: var(--navy);
    display: block;
  }
  .home-headline .line.italic {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal);
    font-size: 72px;
    line-height: 1.0;
    letter-spacing: -0.02em;
    margin-top: 6px;
  }
  .home-sub {
    color: var(--ink-2);
    font-size: 17px;
    max-width: 480px;
    margin-bottom: 36px;
    line-height: 1.6;
  }
  .home-search-card {
    background: var(--paper);
    border-radius: 16px;
    border: 1px solid var(--rule);
    padding: 22px 24px 24px;
    box-shadow: 0 4px 20px rgba(13, 27, 42, 0.04);
    position: relative;
    z-index: 3;
    margin-top: auto;
  }
  .home-search-label {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 14px;
    color: var(--teal-deep);
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .home-search-label::before {
    content: '';
    width: 8px;
    height: 8px;
    background: var(--teal);
    border-radius: 50%;
  }
  .home-search-form {
    display: flex;
    align-items: center;
    background: var(--cream);
    border: 1.5px solid var(--rule);
    border-radius: 100px;
    padding: 6px 6px 6px 24px;
    transition: border-color 0.2s, background 0.2s;
  }
  .home-search-form:focus-within {
    border-color: var(--teal-deep);
    background: var(--paper);
  }
  .home-search-form svg { color: var(--ink-3); flex-shrink: 0; margin-right: 12px; }
  .home-search-form:focus-within svg.search-icon { color: var(--teal-deep); }
  .home-search-input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 16px;
    color: var(--navy);
    padding: 14px 0;
    min-width: 0;
  }
  .home-search-input::placeholder {
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }
  .home-quick-cats {
    display: flex;
    gap: 6px;
    margin-top: 16px;
    flex-wrap: wrap;
  }
  .quick-cat {
    background: var(--cream);
    border: 1px solid var(--rule);
    color: var(--ink-2);
    padding: 6px 14px;
    border-radius: 100px;
    font-size: 12px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.15s;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 5px;
  }
  .quick-cat:hover {
    border-color: var(--teal-deep);
    color: var(--teal-deep);
    background: var(--teal-soft);
  }
  .quick-cat-icon {
    width: 4px;
    height: 4px;
    background: var(--teal);
    border-radius: 50%;
  }
  .home-hero-right {
    position: relative;
    width: 100%;
    align-self: stretch;
    margin-right: -48px;
    overflow: hidden;
  }
  .home-hero-image {
    position: absolute;
    inset: 0;
    background-image: var(--hero-image, url("/wp-content/uploads/hero-home-01.jpg"));
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, black 22%, black 100%),
      linear-gradient(to bottom, black 0%, black 55%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-image:
      linear-gradient(to right, transparent 0%, black 22%, black 100%),
      linear-gradient(to bottom, black 0%, black 55%, transparent 100%);
    mask-composite: intersect;
  }

  /* Featured strip */
  .featured-section {
    max-width: 1320px;
    margin: 40px auto 0;
    padding: 0 48px 0;
    position: relative;
    z-index: 2;
  }
  .featured-strip-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 18px;
    padding: 0 4px;
  }
  .featured-strip-label {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 15px;
    color: var(--coral);
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .featured-strip-label::before {
    content: '';
    width: 7px;
    height: 7px;
    background: var(--coral);
    border-radius: 50%;
    animation: pulse 2s ease-in-out infinite;
  }
  @keyframes pulse {
    0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(229, 123, 63, 0.4); }
    50% { opacity: 0.7; box-shadow: 0 0 0 8px rgba(229, 123, 63, 0); }
  }
  .refresh-link {
    font-size: 12.5px;
    color: var(--ink-3);
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    text-decoration: underline;
    text-decoration-color: var(--rule);
    text-underline-offset: 3px;
    transition: color 0.15s;
  }
  .refresh-link:hover { color: var(--teal-deep); }
  .featured-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .practitioner-card {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 14px;
    padding: 20px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
    cursor: pointer;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
  }
  .practitioner-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(13, 27, 42, 0.08);
    border-color: var(--teal-soft);
  }
  .practitioner-avatar {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    color: var(--cream);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 16px;
    flex-shrink: 0;
    letter-spacing: 0.02em;
  }
  .practitioner-info { min-width: 0; flex: 1; }
  .practitioner-name {
    font-size: 14.5px;
    font-weight: 600;
    color: var(--navy);
    margin-bottom: 3px;
    line-height: 1.25;
  }
  .practitioner-credential {
    font-size: 12px;
    color: var(--ink-3);
    margin-bottom: 8px;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
  }
  .practitioner-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 8px;
  }
  .practitioner-tag {
    font-size: 10.5px;
    background: var(--teal-soft);
    color: var(--teal-deep);
    padding: 2px 9px;
    border-radius: 100px;
    font-weight: 500;
  }
  .practitioner-location {
    font-size: 11.5px;
    color: var(--ink-3);
    display: flex;
    align-items: center;
    gap: 4px;
  }

  @media (max-width: 1100px) {
    .home-hero-grid { grid-template-columns: 1fr; gap: 36px; min-height: 0; }
    .home-hero-left { padding-top: 30px; }
    .home-hero-right { min-height: 460px; margin-right: -20px; }
    .home-watermark { font-size: 200px; top: -18px; left: -20px; }
    .home-search-card { margin-top: 24px; }
  }
  @media (max-width: 760px) {
    .home-hero { padding: 24px 20px 0; }
    .home-watermark { font-size: 140px; top: -10px; left: -16px; }
    .home-headline .line { font-size: 36px; }
    .home-headline .line.italic { font-size: 44px; }
    .home-sub { font-size: 15px; }
    .home-hero-right { min-height: 380px; margin-right: -20px; }
    .featured-section { padding: 0 20px 0; margin-top: 24px; }
    .featured-cards { grid-template-columns: 1fr; }
  }


/* ============================================================
 * v27 — Pricing page
 * ============================================================ */
     /* PAGE: PRICING
     =========================== */
  .pricing-hero {
    text-align: center;
    padding: 64px 24px 32px;
    max-width: 720px;
    margin: 0 auto;
  }
  .pricing-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--coral);
    margin-bottom: 24px;
  }
  .pricing-eyebrow::before, .pricing-eyebrow::after {
    content: '';
    display: inline-block;
    width: 24px;
    height: 1.5px;
    background: var(--coral);
  }
  .pricing-hero h1 {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 42px;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--navy);
    margin-bottom: 8px;
  }
  .pricing-hero h1 em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal);
  }
  .pricing-hero p {
    color: var(--ink-2);
    font-size: 16px;
    max-width: 560px;
    margin: 20px auto 0;
  }
  .toggle-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin: 36px 0 8px;
  }
  .toggle-label {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink-3);
    transition: color 0.2s;
    user-select: none;
  }
  .toggle-label.active { color: var(--navy); }
  .toggle {
    width: 52px;
    height: 28px;
    background: var(--teal-deep);
    border-radius: 100px;
    position: relative;
    cursor: pointer;
    border: none;
  }
  .toggle-knob {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 22px;
    height: 22px;
    background: var(--cream);
    border-radius: 50%;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
  }
  .toggle.annual .toggle-knob { transform: translateX(24px); }
  .savings-pill {
    background: var(--coral-soft);
    color: var(--coral);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 5px 11px;
    border-radius: 100px;
    margin-left: 4px;
    opacity: 0.5;
    transition: opacity 0.2s;
  }
  .toggle-wrap.is-annual .savings-pill { opacity: 1; }

  .pricing-grid {
    max-width: 920px;
    margin: 32px auto 0;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .plan {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 14px;
    padding: 36px 32px 32px;
    position: relative;
  }
  .plan.featured {
    background: var(--navy);
    color: var(--cream);
    border-color: var(--navy);
  }
  .popular-badge {
    position: absolute;
    top: -14px;
    right: 28px;
    background: var(--coral);
    color: var(--paper);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 6px 14px;
    border-radius: 100px;
  }
  .plan-eyebrow {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--coral);
    margin-bottom: 18px;
  }
  .plan.featured .plan-eyebrow { color: var(--teal); }
  .price-row {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 4px;
  }
  .price-amount {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 64px;
    line-height: 1;
    color: var(--navy);
    letter-spacing: -0.02em;
  }
  .plan.featured .price-amount { color: var(--cream); }
  .price-cycle {
    font-size: 16px;
    color: var(--ink-3);
    font-weight: 500;
  }
  .plan.featured .price-cycle { color: rgba(250, 247, 242, 0.55); }
  .price-meta {
    font-size: 13px;
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    margin-bottom: 28px;
    min-height: 20px;
  }
  .plan.featured .price-meta { color: rgba(250, 247, 242, 0.55); }
  .price-meta .save {
    color: var(--teal-deep);
    font-style: normal;
    font-family: 'Inter';
    font-weight: 600;
  }
  .plan.featured .price-meta .save { color: var(--teal); }
  .plan ul {
    list-style: none;
    margin-bottom: 28px;
  }
  .plan li {
    display: flex;
    align-items: start;
    gap: 12px;
    padding: 7px 0;
    font-size: 14.5px;
    color: var(--ink-2);
  }
  .plan.featured li { color: rgba(250, 247, 242, 0.88); }
  .plan li svg {
    flex-shrink: 0;
    margin-top: 4px;
    width: 14px;
    height: 14px;
    color: var(--teal-deep);
  }
  .plan.featured li svg { color: var(--teal); }
  .plan li b { color: var(--navy); font-weight: 600; }
  .plan.featured li b { color: var(--cream); }
  .plan-cta {
    display: block;
    width: 100%;
    padding: 14px;
    background: var(--navy);
    color: var(--cream);
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: background 0.15s;
    font-family: 'Inter';
  }
  .plan-cta:hover { background: var(--navy-soft); }
  .plan.featured .plan-cta {
    background: var(--teal);
    color: var(--navy);
  }
  .plan.featured .plan-cta:hover { background: var(--teal-deep); color: var(--cream); }

  .assurance {
    max-width: 920px;
    margin: 40px auto 0;
    padding: 0 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    text-align: center;
  }
  .assurance-item { padding: 8px; }
  .assurance-item .icon-wrap {
    width: 42px;
    height: 42px;
    background: var(--teal-soft);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    color: var(--teal-deep);
  }
  .assurance-item h4 {
    font-family: 'Inter';
    font-weight: 600;
    font-size: 14px;
    color: var(--navy);
    margin-bottom: 4px;
  }
  .assurance-item p {
    font-size: 13px;
    color: var(--ink-2);
    line-height: 1.5;
  }

  .crosslink-section {
    max-width: 920px;
    margin: 64px auto 0;
    padding: 0 24px;
  }
  .crosslink {
    background: linear-gradient(135deg, var(--cream-warm) 0%, var(--coral-soft) 100%);
    border-radius: 14px;
    padding: 36px 40px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 32px;
    align-items: center;
    position: relative;
    overflow: hidden;
    border: 1px solid var(--rule);
  }
  .crosslink::before {
    content: '';
    position: absolute;
    top: -60px;
    right: -60px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(229, 123, 63, 0.15) 0%, transparent 70%);
    border-radius: 50%;
  }
  .crosslink-content { position: relative; z-index: 1; }
  .crosslink-eyebrow {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--coral);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .crosslink-content h3 {
    font-family: 'Inter';
    font-weight: 700;
    font-size: 24px;
    color: var(--navy);
    margin-bottom: 8px;
    line-height: 1.25;
  }
  .crosslink-content h3 em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal-deep);
  }
  .crosslink-content p {
    color: var(--ink-2);
    font-size: 14.5px;
    max-width: 460px;
  }
  .crosslink-btn {
    background: var(--navy);
    color: var(--cream);
    padding: 12px 24px;
    border-radius: 100px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: gap 0.2s;
    position: relative;
    z-index: 1;
  }
  .crosslink-btn:hover { gap: 12px; }

  .faq-section {
    max-width: 720px;
    margin: 80px auto 0;
    padding: 0 24px;
  }
  .faq-header {
    text-align: center;
    margin-bottom: 32px;
  }
  .faq-header h2 {
    font-family: 'Inter';
    font-weight: 700;
    font-size: 30px;
    color: var(--navy);
    letter-spacing: -0.01em;
  }
  .faq-header h2 em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal);
  }
  .faq-item {
    border-bottom: 1px solid var(--rule);
    padding: 20px 4px;
    cursor: pointer;
  }
  .faq-q {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    color: var(--navy);
    font-size: 15.5px;
  }
  .faq-q .plus {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1.5px solid var(--ink-3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: var(--ink-3);
    transition: transform 0.2s, border-color 0.2s, color 0.2s;
    flex-shrink: 0;
    margin-left: 16px;
  }
  .faq-item.open .plus {
    transform: rotate(45deg);
    border-color: var(--teal-deep);
    color: var(--teal-deep);
  }
  .faq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease-out, margin 0.25s ease-out;
    color: var(--ink-2);
    font-size: 14.5px;
    line-height: 1.6;
  }
  .faq-item.open .faq-a {
    max-height: 200px;
    margin-top: 12px;
  }

  @media (max-width: 760px) {
    .pricing-hero { padding: 40px 20px 24px; }
    .pricing-hero h1 { font-size: 32px; }
    .pricing-grid { grid-template-columns: 1fr; padding: 0 20px; }
    .plan { padding: 28px 24px; }
    .price-amount { font-size: 54px; }
    .assurance { grid-template-columns: 1fr; gap: 18px; }
    .crosslink { grid-template-columns: 1fr; padding: 28px; }
    .crosslink-btn { justify-self: start; }
  }

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

/* ============================================================
 * v28 — Find a Professional
 * ============================================================ */
  /* ===========================
     COMPACT HERO WITH GRADIENT BACKGROUND
     =========================== */
  .find-hero {
    position: relative;
    padding: 56px 48px 48px;
    overflow: hidden;
    border-bottom: 1px solid var(--rule);
  }
  /* Gradient base layer */
  .find-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
      radial-gradient(ellipse 60% 80% at 85% 50%, rgba(47, 166, 140, 0.10) 0%, transparent 65%),
      radial-gradient(ellipse 50% 70% at 15% 30%, rgba(229, 123, 63, 0.06) 0%, transparent 65%),
      linear-gradient(180deg, var(--cream) 0%, var(--cream-warm) 100%);
    z-index: 0;
  }
  /* Photographic accent right side */
  .find-hero::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 38%;
    background-image: var(--hero-image, url("/wp-content/uploads/hero-home-01.jpg"));
    background-size: cover;
    background-position: center right;
    opacity: 0.18;
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, black 30%, black 100%),
      linear-gradient(to bottom, transparent 0%, black 20%, black 80%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-image:
      linear-gradient(to right, transparent 0%, black 30%, black 100%),
      linear-gradient(to bottom, transparent 0%, black 20%, black 80%, transparent 100%);
    mask-composite: intersect;
    z-index: 0;
  }
  .find-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
  }
  .find-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11.5px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: var(--teal-deep);
    margin-bottom: 16px;
  }
  .find-hero-eyebrow::before {
    content: '';
    display: inline-block;
    width: 28px;
    height: 1.5px;
    background: var(--teal-deep);
  }
  .find-hero h1 {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 38px;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--navy);
    margin-bottom: 24px;
  }
  .find-hero h1 em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    color: var(--teal);
  }
  .find-search-wrap {
    max-width: 680px;
    margin: 0 auto;
  }
  .find-search-form {
    display: flex;
    align-items: center;
    background: var(--paper);
    border: 1.5px solid var(--rule);
    border-radius: 100px;
    padding: 6px 6px 6px 26px;
    box-shadow: 0 6px 24px rgba(13, 27, 42, 0.06);
  }
  .find-search-form:focus-within {
    border-color: var(--teal-deep);
    box-shadow: 0 8px 28px rgba(47, 166, 140, 0.14);
  }
  .find-search-form svg.search-icon { color: var(--ink-3); flex-shrink: 0; margin-right: 12px; }
  .find-search-form:focus-within svg.search-icon { color: var(--teal-deep); }
  .find-search-input {
    flex: 1;
    border: none;
    outline: none;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 16px;
    color: var(--navy);
    padding: 16px 0;
    background: transparent;
    min-width: 0;
  }
  .find-search-input::placeholder {
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }
  .find-search-btn {
    background: var(--navy);
    color: var(--cream);
    border: none;
    border-radius: 100px;
    padding: 13px 24px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter';
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: background 0.15s, gap 0.2s;
    flex-shrink: 0;
  }
  .find-search-btn:hover { background: var(--navy-soft); gap: 10px; }

  /* ===========================
     RESULTS SHELL
     =========================== */
  .results-shell {
    max-width: 1280px;
    margin: 32px auto 0;
    padding: 0 48px;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 32px;
    align-items: start;
  }
  .filter-rail {
    position: sticky;
    top: 88px;
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 14px;
    padding: 22px 22px 8px;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
  }
  .filter-rail::-webkit-scrollbar { width: 4px; }
  .filter-rail::-webkit-scrollbar-thumb { background: var(--rule); border-radius: 2px; }

  .filter-rail-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 6px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--rule-soft);
  }
  .filter-rail-header h3 {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 17px;
    color: var(--navy);
  }
  .clear-filters {
    background: none;
    border: none;
    color: var(--coral);
    font-size: 12px;
    text-decoration: underline;
    cursor: pointer;
    font-family: 'Inter';
  }

  .filter-group {
    padding: 16px 0;
    border-bottom: 1px solid var(--rule-soft);
  }
  .filter-group:last-child { border-bottom: none; }
  .filter-group-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--ink-3);
    margin-bottom: 12px;
  }
  .filter-group-tagline {
    font-size: 12px;
    color: var(--ink-3);
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    margin-top: -8px;
    margin-bottom: 12px;
    line-height: 1.45;
  }

  /* CATEGORY PILLS (Mind / Body / Spaces) */
  .category-pills {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6px;
    margin-bottom: 14px;
  }
  .cat-pill {
    background: var(--paper);
    border: 1.5px solid var(--rule);
    color: var(--ink-2);
    padding: 9px 0;
    border-radius: 100px;
    font-size: 13px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.15s;
    text-align: center;
  }
  .cat-pill:hover {
    border-color: var(--teal-deep);
    color: var(--teal-deep);
  }
  .cat-pill.active {
    background: var(--navy);
    color: var(--cream);
    border-color: var(--navy);
  }

  /* Native select styling */
  .filter-select {
    width: 100%;
    padding: 11px 14px;
    border: 1px solid var(--rule);
    border-radius: 10px;
    background: var(--paper);
    font-family: 'Inter';
    font-size: 13.5px;
    color: var(--navy);
    cursor: pointer;
    margin-bottom: 8px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a94a3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
  }
  .filter-select:focus { outline: 2px solid var(--teal-soft); border-color: var(--teal-deep); }

  /* Checkbox / radio shared */
  .filter-option {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 4px 0;
    cursor: pointer;
    font-size: 13.5px;
    color: var(--ink-2);
    user-select: none;
  }
  .filter-option input[type="checkbox"],
  .filter-option input[type="radio"] { display: none; }
  .filter-option .box {
    width: 16px;
    height: 16px;
    border: 1.5px solid var(--rule);
    border-radius: 4px;
    background: var(--cream);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
  }
  .filter-option .box.radio { border-radius: 50%; }
  .filter-option:hover .box { border-color: var(--teal-deep); }
  .filter-option input:checked ~ .box {
    background: var(--teal-deep);
    border-color: var(--teal-deep);
  }
  .filter-option .box svg { opacity: 0; color: var(--cream); width: 10px; height: 10px; stroke-width: 3; }
  .filter-option .box.radio::after {
    content: '';
    width: 6px;
    height: 6px;
    background: var(--cream);
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.15s;
  }
  .filter-option input:checked ~ .box svg { opacity: 1; }
  .filter-option input:checked ~ .box.radio::after { opacity: 1; }
  .filter-option input:checked ~ .label { color: var(--navy); font-weight: 500; }

  /* Toggle */
  .filter-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 0;
    cursor: pointer;
    font-size: 13.5px;
    color: var(--ink-2);
  }
  .toggle-switch {
    width: 34px;
    height: 20px;
    background: var(--rule);
    border-radius: 100px;
    position: relative;
    transition: background 0.2s;
    flex-shrink: 0;
  }
  .toggle-switch::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    background: var(--cream);
    border-radius: 50%;
    transition: transform 0.2s;
  }
  .toggle-switch.on { background: var(--teal-deep); }
  .toggle-switch.on::after { transform: translateX(14px); }

  /* ===========================
     RESULTS COLUMN
     =========================== */
  .results-col { min-width: 0; }
  .results-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
  }
  .results-count {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-size: 15px;
    color: var(--ink-2);
  }
  .results-count .num {
    color: var(--navy);
    font-weight: 600;
    font-style: italic;
  }
  .results-sort {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: var(--ink-3);
  }
  .results-sort select {
    padding: 7px 28px 7px 12px;
    border: 1px solid var(--rule);
    border-radius: 8px;
    background: var(--paper);
    font-family: 'Inter';
    font-size: 13px;
    color: var(--navy);
    font-weight: 500;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a94a3' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
  }
  .active-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--rule-soft);
  }
  .active-filter-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--teal-soft);
    color: var(--teal-deep);
    padding: 5px 12px;
    border-radius: 100px;
    font-size: 12.5px;
    font-weight: 500;
  }
  .active-filter-pill button {
    background: none;
    border: none;
    color: var(--teal-deep);
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    opacity: 0.7;
  }
  .results-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }
  .result-card {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 14px;
    padding: 22px;
    position: relative;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
    cursor: pointer;
    display: flex;
    flex-direction: column;
  }
  .result-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(13, 27, 42, 0.08);
    border-color: var(--teal-soft);
  }
  .result-card.featured {
    border-color: var(--coral-soft);
    background: linear-gradient(180deg, #fffefb 0%, var(--paper) 30%);
  }
  .featured-ribbon {
    position: absolute;
    top: 14px;
    right: 14px;
    background: var(--coral);
    color: var(--paper);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 3px 9px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    gap: 4px;
  }
  .featured-ribbon::before {
    content: '';
    width: 4px;
    height: 4px;
    background: var(--paper);
    border-radius: 50%;
  }
  .result-head { display: flex; gap: 14px; margin-bottom: 14px; }
  .result-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    color: var(--cream);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 17px;
    flex-shrink: 0;
    letter-spacing: 0.02em;
  }
  .result-name-block { min-width: 0; flex: 1; padding-top: 2px; }
  .result-name {
    font-size: 16.5px;
    font-weight: 600;
    color: var(--navy);
    margin-bottom: 3px;
    line-height: 1.25;
  }
  .result-credential {
    font-size: 12.5px;
    color: var(--ink-3);
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
  }
  .result-bio {
    font-size: 13.5px;
    color: var(--ink-2);
    line-height: 1.55;
    margin-bottom: 14px;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .result-bio em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    color: var(--navy);
  }
  .result-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 14px; }
  .result-tag {
    font-size: 11px;
    background: var(--teal-soft);
    color: var(--teal-deep);
    padding: 3px 10px;
    border-radius: 100px;
    font-weight: 500;
  }
  .result-tag.spec { background: var(--cream-warm); color: var(--ink-2); }
  .result-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--rule-soft);
    font-size: 12px;
    color: var(--ink-3);
    flex-wrap: wrap;
  }
  .result-meta-item { display: flex; align-items: center; gap: 5px; }
  .result-meta-item.accepting { color: var(--teal-deep); font-weight: 500; }
  .result-meta-item.accepting svg { color: var(--teal-deep); }

  .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin: 36px 0 60px;
  }
  .page-btn {
    min-width: 36px;
    height: 36px;
    padding: 0 12px;
    border: 1px solid var(--rule);
    background: var(--paper);
    color: var(--ink-2);
    border-radius: 8px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .page-btn:hover:not(:disabled) { border-color: var(--teal-deep); color: var(--teal-deep); }
  .page-btn.active {
    background: var(--navy);
    color: var(--cream);
    border-color: var(--navy);
  }
  .page-btn:disabled { opacity: 0.4; cursor: not-allowed; }
  .page-ellipsis { color: var(--ink-3); padding: 0 4px; }

  /* Avatar gradients */
  .av-1 { background: linear-gradient(135deg, #2fa68c, #1f7a66); }
  .av-2 { background: linear-gradient(135deg, #e57b3f, #c8632b); }
  .av-3 { background: linear-gradient(135deg, #4a7c9d, #2c5876); }
  .av-4 { background: linear-gradient(135deg, #b5685b, #8d4538); }
  .av-5 { background: linear-gradient(135deg, #8a7654, #695533); }
  .av-6 { background: linear-gradient(135deg, #6b8e6f, #4a6e4e); }
  .av-7 { background: linear-gradient(135deg, #9d6b8e, #6e4a5a); }
  .av-8 { background: linear-gradient(135deg, #c89854, #8f6928); }

  @media (max-width: 1000px) {
    .results-shell { grid-template-columns: 1fr; padding: 0 20px; }
    .filter-rail { position: static; max-height: none; }
    .results-grid { grid-template-columns: 1fr; }
  }
  @media (max-width: 760px) {
    .topbar { padding: 14px 20px; }
    .top-nav { gap: 12px; }
    .top-nav a:not(.signin-btn):not(.current) { display: none; }
    .find-hero { padding: 36px 20px 32px; }
    .find-hero::after { width: 50%; opacity: 0.12; }
    .find-hero h1 { font-size: 28px; }
  }

/* ============================================================
 * v29 — Practitioner Dashboard
 * Wrap dashboard markup in <div class="dash-shell"> to scope topbar.
 * ============================================================ */
  /* TOP BAR */
  .dash-shell .topbar {
    background: var(--paper);
    border-bottom: 1px solid var(--rule);
    padding: 16px 36px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 50;
  }
  .dash-shell .logotype { font-size: 22px; display: flex; align-items: baseline; gap: 1px; }
  .dash-shell .logotype .inna { font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif; font-style: italic; font-weight: 500; color: var(--teal); }
  .dash-shell .logotype .pace { font-family: 'Inter', sans-serif; font-weight: 700; color: var(--navy); }
  .dash-shell .top-nav { display: flex; gap: 28px; align-items: center; }
  .dash-shell .top-nav a {
    color: var(--ink-2);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
  }
  .dash-shell .top-nav .view-listing {
    color: var(--teal-deep);
    display: flex;
    align-items: center;
    gap: 6px;
  }
  .avatar-chip {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: linear-gradient(135deg, #2fa68c, #1f7a66);
    color: var(--cream);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
  }

  .shell {
    display: grid;
    grid-template-columns: 240px 1fr;
    min-height: calc(100vh - 71px);
  }

  /* SIDEBAR */
  .sidebar {
    background: var(--paper);
    border-right: 1px solid var(--rule);
    padding: 32px 16px 32px 24px;
  }
  .nav-group { margin-bottom: 28px; }
  .nav-label {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--ink-3);
    padding: 0 12px;
    margin-bottom: 10px;
  }
  .nav-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 6px;
    color: var(--ink-2);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 2px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }
  .nav-item:hover { background: var(--cream-warm); color: var(--navy); }
  .nav-item.active {
    background: var(--cream-warm);
    color: var(--navy);
    font-weight: 600;
    position: relative;
  }
  .nav-item.active::before {
    content: '';
    position: absolute;
    left: -24px;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 18px;
    background: var(--teal);
    border-radius: 0 2px 2px 0;
  }
  .nav-item .badge {
    margin-left: auto;
    background: var(--coral);
    color: white;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 10px;
  }
  .nav-item .soon {
    margin-left: auto;
    font-size: 10px;
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }
  .help-card {
    margin-top: 40px;
    padding: 18px;
    background: var(--cream-warm);
    border-radius: 10px;
    border: 1px solid var(--rule);
  }
  .help-card h4 {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 15px;
    color: var(--navy);
    margin-bottom: 6px;
  }
  .help-card p {
    font-size: 12.5px;
    color: var(--ink-2);
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .help-card a {
    color: var(--teal-deep);
    font-size: 12.5px;
    font-weight: 600;
    text-decoration: none;
  }

  /* MAIN */
  .main {
    padding: 36px 44px 60px;
    max-width: 1180px;
  }

  /* WELCOME */
  .welcome {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--rule);
  }
  .welcome-text .eyebrow {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 13px;
    color: var(--ink-3);
    margin-bottom: 4px;
  }
  .welcome-text h1 {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 400;
    font-size: 36px;
    line-height: 1.15;
    color: var(--navy);
  }
  .welcome-text h1 em {
    font-style: italic;
    font-weight: 500;
    color: var(--teal-deep);
  }
  .status-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--teal-soft);
    color: var(--teal-deep);
    font-size: 12.5px;
    font-weight: 600;
    padding: 7px 14px;
    border-radius: 100px;
    border: 1px solid #c5dfd6;
  }
  .status-dot {
    width: 8px;
    height: 8px;
    background: var(--teal);
    border-radius: 50%;
    box-shadow: 0 0 0 3px rgba(47, 166, 140, 0.18);
  }

  /* STATS */
  .stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 32px;
  }
  .stat {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 10px;
    padding: 20px 22px;
    position: relative;
  }
  .stat-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--ink-3);
    font-weight: 600;
    margin-bottom: 10px;
  }
  .stat-value {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 34px;
    color: var(--navy);
    line-height: 1;
    letter-spacing: -0.02em;
  }
  .stat-meta {
    font-size: 12px;
    color: var(--ink-2);
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .stat-meta .delta {
    color: var(--teal-deep);
    font-weight: 600;
  }
  .stat-period {
    position: absolute;
    top: 18px;
    right: 22px;
    font-size: 10.5px;
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }

  .content-grid {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 28px;
  }
  .col-main { display: flex; flex-direction: column; gap: 24px; }
  .col-side { display: flex; flex-direction: column; gap: 24px; }

  /* ===========================
     RESTRUCTURED PROFILE BOX (v29)
     Maps field-for-field to registration wizard outputs.
     Square avatar. Sectioned layout by wizard step.
     =========================== */
  .dash-card {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 10px;
    overflow: hidden;
  }
  .card-head {
    padding: 18px 22px 14px;
    border-bottom: 1px solid var(--rule-soft);
    display: flex;
    justify-content: space-between;
    align-items: baseline;
  }
  .card-title {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: var(--navy);
  }
  .card-title em { font-style: italic; }
  .card-action {
    font-size: 12.5px;
    color: var(--teal-deep);
    text-decoration: none;
    font-weight: 600;
    cursor: pointer;
  }

  /* PROFILE PREVIEW — new structure */
  .profile-preview {
    padding: 24px 22px;
  }
  .profile-preview-grid {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 22px;
    align-items: start;
  }

  /* SQUARE avatar — was a circle, now a rounded square */
  .profile-avatar-square {
    width: 120px;
    height: 120px;
    border-radius: 12px;
    background: linear-gradient(135deg, #e57b3f, #c8632b);
    color: var(--cream);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 40px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 2px 8px rgba(13, 27, 42, 0.06);
  }
  .profile-avatar-square .edit-overlay {
    position: absolute;
    inset: 0;
    background: rgba(13, 27, 42, 0.55);
    color: var(--cream);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    opacity: 0;
    transition: opacity 0.15s;
    cursor: pointer;
  }
  .profile-avatar-square:hover .edit-overlay { opacity: 1; }

  .profile-identity {
    min-width: 0;
  }

  /* Name + pronouns + credential row */
  .profile-name-row {
    display: flex;
    align-items: baseline;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 4px;
  }
  .profile-name {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 24px;
    color: var(--navy);
    letter-spacing: -0.01em;
  }
  .profile-pronouns {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 13px;
    color: var(--ink-3);
  }
  .profile-credential {
    font-size: 13.5px;
    color: var(--ink-2);
    margin-bottom: 14px;
  }
  .profile-credential .verified {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--teal-deep);
    font-weight: 600;
    margin-left: 8px;
    font-size: 12px;
  }
  .profile-credential .verified svg {
    width: 13px;
    height: 13px;
  }

  /* Fielded sections — one row per logical group */
  .profile-fields {
    border-top: 1px solid var(--rule-soft);
    padding-top: 14px;
  }
  .field-row {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 16px;
    padding: 8px 0;
    align-items: start;
  }
  .field-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--ink-3);
    font-weight: 600;
    padding-top: 3px;
  }
  .field-value {
    font-size: 13.5px;
    color: var(--ink-1);
    line-height: 1.5;
  }
  .field-value.muted {
    color: var(--ink-3);
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }
  .field-value.empty {
    color: var(--coral);
    font-size: 12.5px;
    cursor: pointer;
    text-decoration: underline;
    text-decoration-color: var(--coral-soft);
    text-underline-offset: 3px;
  }
  .field-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
  }
  .field-tag {
    font-size: 11.5px;
    background: var(--paper);
    border: 1px solid var(--rule);
    color: var(--ink-2);
    padding: 3px 10px;
    border-radius: 100px;
    font-weight: 500;
  }
  .field-tag.teal {
    background: var(--teal-soft);
    border-color: #c5dfd6;
    color: var(--teal-deep);
  }
  .field-tag.cream {
    background: var(--cream-warm);
    border-color: var(--rule);
  }

  /* Wellness approach indicator — preserved from v15 wizard */
  .wellness-approach {
    display: inline-flex;
    align-items: center;
    gap: 10px;
  }
  .approach-circle {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: conic-gradient(var(--teal) 0% 60%, var(--rule) 60% 100%);
    position: relative;
    flex-shrink: 0;
  }
  .approach-circle::after {
    content: '';
    position: absolute;
    inset: 4px;
    background: var(--paper);
    border-radius: 50%;
  }
  .approach-label {
    font-size: 12.5px;
    color: var(--ink-2);
  }
  .approach-label strong {
    font-weight: 600;
    color: var(--navy);
  }

  /* COMPLETENESS — kept but slimmed */
  .completeness {
    padding: 16px 22px 22px;
    border-top: 1px solid var(--rule-soft);
    background: linear-gradient(180deg, transparent 0%, var(--cream) 100%);
  }
  .completeness-bar {
    height: 6px;
    background: var(--rule-soft);
    border-radius: 100px;
    overflow: hidden;
    margin-bottom: 12px;
  }
  .completeness-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--teal) 0%, var(--teal-deep) 100%);
    border-radius: 100px;
  }
  .completeness-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 10px;
  }
  .completeness-header .pct {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: var(--teal-deep);
  }
  .completeness-header .label {
    font-size: 13px;
    color: var(--ink-2);
    font-weight: 500;
  }
  .completeness-checks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px 18px;
    margin-top: 12px;
  }
  .check {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--ink-2);
  }
  .check.done { color: var(--ink-3); }
  .check.done .check-icon {
    background: var(--teal-soft);
    color: var(--teal-deep);
    border-color: var(--teal);
  }
  .check.done .check-text { text-decoration: line-through; opacity: 0.7; }
  .check-icon {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1.5px dashed var(--rule);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    flex-shrink: 0;
  }
  .check.todo .check-icon {
    color: var(--coral);
    border-style: solid;
    border-color: var(--coral);
    background: var(--coral-soft);
  }

  /* INQUIRIES — unchanged from v27 */
  .inquiry-list { display: flex; flex-direction: column; }
  .inquiry {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 16px;
    padding: 16px 22px;
    border-bottom: 1px solid var(--rule-soft);
    align-items: start;
    cursor: pointer;
  }
  .inquiry:hover { background: var(--cream); }
  .inquiry:last-child { border-bottom: none; }
  .inquiry.unread { background: rgba(214, 235, 229, 0.25); }
  .inquiry-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 13px;
    color: var(--cream);
  }
  .inquiry-content .from {
    font-weight: 600;
    color: var(--navy);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .inquiry-content .from .unread-dot {
    width: 6px;
    height: 6px;
    background: var(--coral);
    border-radius: 50%;
  }
  .inquiry-content .snippet {
    color: var(--ink-2);
    font-size: 13px;
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
  }
  .inquiry-content .meta {
    font-size: 11.5px;
    color: var(--ink-3);
    margin-top: 6px;
    font-style: italic;
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
  }
  .inquiry-time {
    font-size: 11.5px;
    color: var(--ink-3);
    white-space: nowrap;
    padding-top: 3px;
  }

  /* ACTIVITY chart unchanged */
  .activity-chart { padding: 4px 22px 22px; }
  .chart-container {
    height: 140px;
    position: relative;
    margin-top: 12px;
  }
  .chart-svg { width: 100%; height: 100%; overflow: visible; }
  .chart-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    font-size: 11px;
    color: var(--ink-3);
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
  }

  /* PLAN card unchanged */
  .plan-card {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: var(--cream);
    border-radius: 10px;
    padding: 22px;
    position: relative;
    overflow: hidden;
  }
  .plan-card::before {
    content: '';
    position: absolute;
    top: -40px;
    right: -40px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle, rgba(47, 166, 140, 0.18) 0%, transparent 70%);
    border-radius: 50%;
  }
  .plan-eyebrow {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 12px;
    color: rgba(250, 247, 242, 0.6);
    margin-bottom: 8px;
  }
  .plan-name {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 22px;
    margin-bottom: 4px;
  }
  .plan-name em { color: var(--teal); font-style: italic; }
  .plan-price {
    font-size: 13px;
    color: rgba(250, 247, 242, 0.7);
    margin-bottom: 18px;
  }
  .plan-renews {
    font-size: 12px;
    color: rgba(250, 247, 242, 0.6);
    padding-top: 14px;
    border-top: 1px solid rgba(250, 247, 242, 0.12);
    margin-top: 14px;
  }
  .plan-btn {
    display: inline-block;
    background: rgba(250, 247, 242, 0.1);
    color: var(--cream);
    border: 1px solid rgba(250, 247, 242, 0.2);
    padding: 8px 14px;
    border-radius: 6px;
    font-size: 12.5px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
  }
  .rec-card {
    background: var(--cream-warm);
    border: 1px dashed #d4ccb8;
    border-radius: 10px;
    overflow: hidden;
  }
  .rec-card .card-head { border-bottom: none; padding-bottom: 0; }
  .rec-content { padding: 8px 22px 22px; text-align: center; }
  .rec-illustration {
    width: 64px;
    height: 64px;
    margin: 8px auto 14px;
    background: var(--paper);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--rule);
  }
  .rec-content p {
    font-size: 13px;
    color: var(--ink-2);
    line-height: 1.55;
    max-width: 260px;
    margin: 0 auto;
  }
  .rec-content em {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    color: var(--navy);
  }
  .rec-soon-pill {
    display: inline-block;
    background: var(--paper);
    border: 1px solid var(--rule);
    padding: 4px 12px;
    border-radius: 100px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--ink-3);
    font-weight: 600;
    margin-top: 12px;
  }
  .tip-card {
    background: var(--paper);
    border: 1px solid var(--rule);
    border-radius: 10px;
    padding: 22px;
    position: relative;
  }
  .tip-card .quote-mark {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 60px;
    color: var(--teal-soft);
    line-height: 1;
    position: absolute;
    top: 8px;
    left: 16px;
  }
  .tip-eyebrow {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-style: italic;
    font-size: 12px;
    color: var(--ink-3);
    margin-bottom: 8px;
    position: relative;
    z-index: 1;
  }
  .tip-card h4 {
    font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: var(--navy);
    margin-bottom: 10px;
    line-height: 1.3;
    position: relative;
    z-index: 1;
  }
  .tip-card p {
    font-size: 13px;
    color: var(--ink-2);
    line-height: 1.55;
    position: relative;
    z-index: 1;
  }
  .avatar-c1 { background: linear-gradient(135deg, #4a7c9d, #2c5876); }
  .avatar-c2 { background: linear-gradient(135deg, #b5685b, #8d4538); }
  .avatar-c3 { background: linear-gradient(135deg, #8a7654, #695533); }
  .avatar-c4 { background: linear-gradient(135deg, #6b8e6f, #4a6e4e); }

  @media (max-width: 1100px) {
    .content-grid { grid-template-columns: 1fr; }
    .stats { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 760px) {
    .shell { grid-template-columns: 1fr; }
    .sidebar { display: none; }
    .main { padding: 24px 18px; }
    .welcome { flex-direction: column; align-items: flex-start; gap: 14px; }
    .welcome-text h1 { font-size: 28px; }
    .profile-preview-grid { grid-template-columns: 100px 1fr; gap: 16px; }
    .profile-avatar-square { width: 100px; height: 100px; font-size: 34px; }
    .profile-name { font-size: 20px; }
    .field-row { grid-template-columns: 1fr; gap: 4px; }
    .field-label { padding-top: 8px; }
  }

/* InnaPace v33.1 patch — implementation fixes against deployed site
 * Source: innapace-codefix-v33.1.md
 * Applied: May 22, 2026
 */

/* ============================================================
 * Bug #1 + #7: Avatar squares (primary subject) — 14px radius
 * Default avatars become squares; .av--secondary for circles
 * ============================================================ */
.practitioner-card .practitioner-avatar,
.practitioner-card .avatar,
.result-card .result-avatar,
.result-card .practitioner-avatar,
.featured-cards .practitioner-avatar,
.team-card .team-avatar,
.profile-avatar,
.featured-practitioner-card .avatar,
.listing-card .avatar {
	border-radius: 14px !important;
}

/* Secondary contexts stay circular (40×40) */
.similar-professionals .avatar,
.similar-professionals .practitioner-avatar,
.inquiry-avatar,
.avatar-chip,
.avatar--secondary {
	border-radius: 50% !important;
}

/* ============================================================
 * Bug #2: "Show other practitioners" — quiet inline link
 * ============================================================ */
.refresh-link,
.show-other-link,
.featured-strip-header .refresh-link {
	font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important;
	font-style: italic !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	color: #8a94a3 !important;
	text-decoration: none !important;
	background: none !important;
	border: none !important;
	padding: 0 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	cursor: pointer;
	transition: color 0.15s;
}
.refresh-link:hover,
.show-other-link:hover {
	color: #1f7a66 !important;
}

/* ============================================================
 * Bug #3: Three-step section numbers → atmospheric corner ghost
 * ============================================================ */
.h-step,
.step-card {
	position: relative !important;
	overflow: hidden !important;
	padding-bottom: 40px !important;
}

.h-step h3,
.h-step p,
.step-card h3,
.step-card p {
	position: relative;
	z-index: 2;
}

.h-step-num,
.step-card .step-num {
	position: absolute !important;
	bottom: 6px !important;
	right: 14px !important;
	font-family: 'Inter', sans-serif !important;
	font-style: normal !important;
	font-weight: 700 !important;
	font-size: 40px !important;
	color: #e57b3f !important;            /* coral */
	opacity: 0.16 !important;
	line-height: 1 !important;
	letter-spacing: -0.02em !important;
	pointer-events: none !important;
	z-index: 1 !important;
	background: none !important;
	-webkit-text-fill-color: #e57b3f !important;
	width: auto !important;
	height: auto !important;
	display: block !important;
}

@media (max-width: 760px) {
	.h-step,
	.step-card {
		padding-bottom: 32px !important;
	}
	.h-step-num,
	.step-card .step-num {
		font-size: 32px !important;
		bottom: 4px !important;
		right: 12px !important;
	}
}

/* =============================================================
 * Bug #4: Filter groups → pill chip groups (Find page)
 * ============================================================ */
.filter-group {
	padding: 18px 0;
	border-bottom: 1px solid #efeae0;
}
.filter-group:last-child { border-bottom: none; }

.filter-group-label,
.filter-group-title {
	font-family: 'Inter', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.12em !important;
	color: #0d1b2a !important;
	margin-bottom: 10px !important;
	display: block !important;
}
.filter-group-tagline,
.filter-group-help {
	font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important;
	font-style: italic !important;
	font-size: 12.5px !important;
	color: #8a94a3 !important;
	margin: 4px 0 12px !important;
	line-height: 1.45 !important;
}
.filter-select {
	width: 100%;
	padding: 9px 32px 9px 12px !important;
	background: #ffffff !important;
	border: 1px solid #e8e2d6 !important;
	border-radius: 8px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	color: #0d1b2a !important;
	appearance: none;
	-Webkit-appearance: none;
	background-image: url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='#8a94a3' stroke-width='2.5'><polyline points='6 9 12 15 18 9'/></svg>\") !important;
	background-repeat: no-repeat !important;
	background-position: right 10px center !important;
	cursor: pointer !important;
}
.filter-select:focus {
	outline: none;
	border-color: #1f7a66 !important;
}
.category-pills {
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr !important;
	gap: 6px !important;
	margin-bottom: 12px !important;
}
.cat-pill {
	background: #ffffff !important;
	border: 1.5px solid #e8e2d6 !important;
	color: #4a5568 !important;
	padding: 10px 14px !important;
	border-radius: 100px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all 0.15s !important;
}
.cat-pill:hover {
	border-color: #1f7a66 !important;
	color: #1f7a66 !important;
}
.cat-pill.active {
	background: #0d1b2a !important;
	color: #faf7f2 !important;
	border-color: #0d1b2a !important;
}

/* Result cards */
.results-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 16px !important;
}
.result-card {
	background: #ffffff !important;
	border: 1px solid #e8e2d6 !important;
	border-radius: 14px !important;
	padding: 22px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
	text-decoration: none !important;
	color: inherit !important;
	position: relative !important;
	transition: border-color 0.15s, transform 0.15s, box-shadow 0.15s !important;
}
.result-card:hover {
	border-color: #1f7a66 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 24px rgba(13, 27, 42, 0.06) !important;
}
.result-card.featured {
	background: linear-gradient(135deg, #faf7f2 0%, #ffffff 60%) !important;
	border-color: #f8e1d2 !important;
}
.result-head,
.result-card-head {
	display: flex !important;
	gap: 14px !important;
	align-items: flex-start !important;
}
.result-card .practitioner-avatar {
	width: 56px !important;
	height: 56px !important;
	border-radius: 14px !important;
	color: #faf7f2 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important;
	font-weight: 500 !important;
	font-size: 20px !important;
	flex-shrink: 0 !important;
}
.result-name {
	font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important;
	font-weight: 500 !important;
	font-size: 18px !important;
	color: #0d1b2a !important;
	margin: 0 0 4px !important;
}
.result-credential {
	font-size: 12.5px !important;
	color: #1f7a66 !important;
	font-weight: 600 !important;
	margin: 0 0 4px !important;
	font-style: normal !important;
}
.result-featured-ribbon {
	position: absolute !important;
	top: 14px !important;
	right: 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	background: #f8e1d2 !important;
	color: #e57b3f !important;
	padding: 4px 9px !important;
	border-radius: 100px !important;
}
.result-bio {
	font-size: 13.5px !important;
	color: #4a5568 !important;
	line-height: 1.55 !important;
	margin: 0 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	-Webkit-box-orient: vertical !important;
	overflow: hidden !important;
	font-style: normal !important;
}
.result-tags {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 5px !important;
}
.result-tags .tag {
	background: #d6ebe5 !important;
	color: #1f7a66 !important;
	padding: 4px 10px !important;
	border-radius: 100px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	border: 1px solid #c5dfd6 !important;
}
.result-tags .tag-specialty {
	background: #f3ede2 !important;
	color: #4a5568 !important;
	border-color: #e8e2d6 !important;
}
.result-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	font-size: 12.5px !important;
	color: #8a94a3 !important;
	padding-top: 10px !important;
	border-top: 1px solid #efeae0 !important;
}
.result-meta .meta-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
}
.result-meta .meta-accepting {
	color: #1f7a66 !important;
	font-weight: 600 !important;
}
.rYձеффѥЁ(%ݥѠх(%х(%ɽչ而Ř݄؀х(%ɑȵɅх(%聥х))ݥѠँ($ɕձ̵ɥ쁝ɥѕєյřȀх))ݥѠँ($ɕձеɐх($ɕձеɐɅѥѥȵمхȁݥѠх쁡х쁙еͥх)

/* ============================================================
 * v33.1.2: Mock hero images per variant
 * 4 inline SVG placeholders (one per variant) — atmospheric brand-toned
 * Until practitioners upload real hero photos.
 * ============================================================ */

.profile-hero-banner {
  position: relative;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* Mind — soft teal + coral, abstract listening/conversation feel */
.profile-variant[data-variant="mind"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><radialGradient id='m1' cx='30%25' cy='40%25' r='55%25'><stop offset='0%25' stop-color='%23d6ebe5' stop-opacity='0.8'/><stop offset='100%25' stop-color='%23d6ebe5' stop-opacity='0'/></radialGradient><radialGradient id='m2' cx='75%25' cy='60%25' r='45%25'><stop offset='0%25' stop-color='%23f8e1d2' stop-opacity='0.7'/><stop offset='100%25' stop-color='%23f8e1d2' stop-opacity='0'/></radialGradient></defs><rect width='1600' height='360' fill='%23faf7f2'/><rect width='1600' height='360' fill='url(%23m1)'/><rect width='1600' height='360' fill='url(%23m2)'/><circle cx='1180' cy='150' r='140' fill='%231f7a66' opacity='0.10'/><circle cx='1350' cy='280' r='80' fill='%23e57b3f' opacity='0.13'/><circle cx='950' cy='220' r='55' fill='%232fa68c' opacity='0.08'/></svg>") !important;
}

/* Body — coral + teal, dynamic flowing forms (movement/breath) */
.profile-variant[data-variant="body"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><radialGradient id='b1' cx='30%25' cy='50%25' r='55%25'><stop offset='0%25' stop-color='%23f8e1d2' stop-opacity='0.85'/><stop offset='100%25' stop-color='%23f8e1d2' stop-opacity='0'/></radialGradient><radialGradient id='b2' cx='80%25' cy='40%25' r='45%25'><stop offset='0%25' stop-color='%23d6ebe5' stop-opacity='0.7'/><stop offset='100%25' stop-color='%23d6ebe5' stop-opacity='0'/></radialGradient></defs><rect width='1600' height='360' fill='%23faf7f2'/><rect width='1600' height='360' fill='url(%23b1)'/><rect width='1600' height='360' fill='url(%23b2)'/><path d='M1100 60 Q 1280 180 1100 300' stroke='%23e57b3f' stroke-width='3' fill='none' opacity='0.18'/><path d='M1180 30 Q 1380 180 1180 330' stroke='%232fa68c' stroke-width='2.5' fill='none' opacity='0.15'/><circle cx='1280' cy='200' r='90' fill='%23e57b3f' opacity='0.10'/></svg>") !important;
}

/* Spaces — navy + coral darker, architectural/lighting feel */
.profile-variant[data-variant="spaces"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 400' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='s1' x1='0' x2='1' y1='0' y2='1'><stop offset='0%25' stop-color='%231a2a3d' stop-opacity='0.10'/><stop offset='100%25' stop-color='%230d1b2a' stop-opacity='0.18'/></linearGradient><radialGradient id='s2' cx='75%25' cy='45%25' r='50%25'><stop offset='0%25' stop-color='%23e57b3f' stop-opacity='0.20'/><stop offset='100%25' stop-color='%23e57b3f' stop-opacity='0'/></radialGradient></defs><rect width='1600' height='400' fill='%23f3ede2'/><rect width='1600' height='400' fill='url(%23s1)'/><rect width='1600' height='400' fill='url(%23s2)'/><rect x='1050' y='80' width='40' height='320' fill='%230d1b2a' opacity='0.08'/><rect x='1130' y='40' width='40' height='360' fill='%230d1b2a' opacity='0.10'/><rect x='1210' y='100' width='40' height='300' fill='%230d1b2a' opacity='0.07'/><rect x='1300' y='60' width='240' height='340' fill='%23e57b3f' opacity='0.06'/></svg>") !important;
}

/* Group — teal + navy softer, layered/network feel */
.profile-variant[data-variant="group"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><radialGradient id='g1' cx='30%25' cy='50%25' r='50%25'><stop offset='0%25' stop-color='%23d6ebe5' stop-opacity='0.85'/><stop offset='100%25' stop-color='%23d6ebe5' stop-opacity='0'/></radialGradient><radialGradient id='g2' cx='85%25' cy='35%25' r='40%25'><stop offset='0%25' stop-color='%231a2a3d' stop-opacity='0.10'/><stop offset='100%25' stop-color='%231a2a3d' stop-opacity='0'/></radialGradient></defs><rect width='1600' height='360' fill='%23faf7f2'/><rect width='1600' height='360' fill='url(%23g1)'/><rect width='1600' height='360' fill='url(%23g2)'/><circle cx='1120' cy='180' r='55' fill='%232fa68c' opacity='0.18'/><circle cx='1220' cy='130' r='42' fill='%231f7a66' opacity='0.20'/><circle cx='1320' cy='200' r='48' fill='%230d1b2a' opacity='0.12'/><circle cx='1180' cy='250' r='38' fill='%232fa68c' opacity='0.14'/><line x1='1120' y1='180' x2='1220' y2='130' stroke='%231f7a66' stroke-width='1.5' opacity='0.25'/><line x1='1220' y1='130' x2='1320' y2='200' stroke='#1f7a66' stroke-width='1.5' opacity='0.25'/><line x1='1320' y1='200' x2='1180' y2='250' stroke='#1f7a66' stroke-width='1.5' opacity='0.25'/><line x1='1180' y1='250' x2='1120' y2='180' stroke='#1f7a66' stroke-width='1.5' opacity='0.25'/></svg>") !important;
}

/* ============================================================
 * v33.1.3: Mock hero images per variant — stronger version
 * Replaces v33.1.2 with more visible/distinct imagery
 * ============================================================ */

/* Mind — abstract head/conversation silhouettes, teal+coral */
.profile-variant[data-variant="mind"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='mb' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23faf7f2'/><stop offset='1' stop-color='%23d6ebe5'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23mb)'/><circle cx='1280' cy='180' r='120' fill='%231f7a66' opacity='0.32'/><circle cx='1130' cy='220' r='95' fill='%23e57b3f' opacity='0.28'/><path d='M-50 280 Q 200 230 450 290 T 950 270 T 1500 300 L 1650 360 L -50 360 Z' fill='%231f7a66' opacity='0.22'/><path d='M-50 320 Q 300 290 600 325 T 1200 310 T 1650 320 L 1650 360 L -50 360 Z' fill='%23e57b3f' opacity='0.18'/><circle cx='900' cy='110' r='30' fill='%232fa68c' opacity='0.30'/><circle cx='1410' cy='90' r='22' fill='%23e57b3f' opacity='0.35'/></svg>") !important;
}

/* Body — flowing movement curves, coral primary */
.profile-variant[data-variant="body"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='bb' x1='0' y1='0' x2='1' y2='0'><stop offset='0' stop-color='%23faf7f2'/><stop offset='1' stop-color='#f8e1d2'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23bb)'/><path d='M0 180 Q 200 60 400 180 T 800 180 T 1200 180 T 1600 180' stroke='#e57b3f' stroke-width='6' fill='none' opacity='0.45'/><path d='M0 220 Q 200 100 400 220 T 800 220 T 1200 220 T 1600 220' stroke='#2fa68c' stroke-width='5' fill='none' opacity='0.35'/><path d='M0 260 Q 200 140 400 260 T 800 260 T 1200 260 T 1600 260' stroke='#e57b3f' stroke-width='3.5' fill='none' opacity='0.25'/><circle cx='1280' cy='150' r='80' fill='#e57b3f' opacity='0.22'/><circle cx='1420' cy='240' r='55' fill='#2fa68c' opacity='0.25'/></svg>") !important;
}

/* Spaces — architectural columns/light, navy darker */
.profile-variant[data-variant="spaces"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 400' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='sb' x1='0' y1='0' x2='0' y2='1'><stop offset='0' stop-color='#1a2a3d'/><stop offset='1' stop-color='#0d1b2a'/></linearGradient></defs><rect width='1600' height='400' fill='url(%23sb)'/><rect x='80' y='80' width='110' height='320' fill='#ffffff' opacity='0.08'/><rect x='230' y='40' width='110' height='360' fill='#ffffff' opacity='0.12'/><rect x='380' y='100' width='110' height='300' fill='#ffffff' opacity='0.06'/><rect x='530' y='60' width='110' height='340' fill='#ffffff' opacity='0.10'/><rect x='680' y='90' width='110' height='310' fill='#ffffff' opacity='0.07'/><circle cx='1280' cy='150' r='140' fill='#e57b3f' opacity='0.28'/><circle cx='1440' cy='280' r='80' fill='#e57b3f' opacity='0.18'/><rect x='850' y='0' width='750' height='400' fill='#faf7f2' opacity='0.10'/></svg>") !important;
}

/* Group — network/community of dots connected, teal primary */
.profile-variant[data-variant="group"] .profile-hero-banner {
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='gb' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='#faf7f2'/><stop offset='1' stop-color='#d6ebe5'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23gb)'/><line x1='280' y1='180' x2='480' y2='110' stroke='#1f7a66' stroke-width='2' opacity='0.45'/><line x1='480' y1='110' x2='680' y2='200' stroke='#1f7a66' stroke-width='2' opacity='0.45'/><line x1='680' y1='200' x2='880' y2='130' stroke='#1f7a66' stroke-width='2' opacity='0.45'/><line x1='880' y1='130' x2='1080' y2='220' stroke='#1f7a66' stroke-width='2' opacity='0.45'/><line x1='1080' y1='220' x2='1280' y2='150' stroke='#1f7a66' stroke-width='2' opacity='0.45'/><line x1='480' y1='110' x2='680' y2='280' stroke='#2fa68c' stroke-width='1.5' opacity='0.30'/><line x1='880' y1='130' x2='1080' y2='280' stroke='#2fa68c' stroke-width='1.5' opacity='0.30'/><circle cx='280' cy='180' r='35' fill='#2fa68c' opacity='0.45'/><circle cx='480' cy='110' r='45' fill='#1f7a66' opacity='0.50'/><circle cx='680' cy='200' r='40' fill='#2fa68c' opacity='0.45'/><circle cx='880' cy='130' r='50' fill='#0d1b2a' opacity='0.35'/><circle cx='1080' cy='220' r='42' fill='#1f7a66' opacity='0.50'/><circle cx='1280' cy='150' r='55' fill='#2fa68c' opacity='0.45'/><circle cx='680' cy='280' r='30' fill='#e57b3f' opacity='0.35'/><circle cx='1080' cy='280' r='32' fill='#e57b3f' opacity='0.30'/></svg>") !important;
}

/* ============================================================
 * v33.1.4: Mock hero images per variant — final
 * URL-encoded all # as %23 so data URIs parse correctly
 * ============================================================ */

.profile-variant[data-variant="mind"] .profile-hero-banner {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='mb' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23faf7f2'/><stop offset='1' stop-color='%23d6ebe5'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23mb)'/><circle cx='1280' cy='180' r='120' fill='%231f7a66' opacity='0.32'/><circle cx='1130' cy='220' r='95' fill='%23e57b3f' opacity='0.28'/><path d='M-50 280 Q 200 230 450 290 T 950 270 T 1500 300 L 1650 360 L -50 360 Z' fill='%231f7a66' opacity='0.22'/><path d='M-50 320 Q 300 290 600 325 T 1200 310 T 1650 320 L 1650 360 L -50 360 Z' fill='%23e57b3f' opacity='0.18'/><circle cx='900' cy='110' r='30' fill='%232fa68c' opacity='0.30'/><circle cx='1410' cy='90' r='22' fill='%23e57b3f' opacity='0.35'/></svg>") !important;
}

.profile-variant[data-variant="body"] .profile-hero-banner {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='bb' x1='0' y1='0' x2='1' y2='0'><stop offset='0' stop-color='%23faf7f2'/><stop offset='1' stop-color='%23f8e1d2'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23bb)'/><path d='M0 180 Q 200 60 400 180 T 800 180 T 1200 180 T 1600 180' stroke='%23e57b3f' stroke-width='6' fill='none' opacity='0.45'/><path d='M0 220 Q 200 100 400 220 T 800 220 T 1200 220 T 1600 220' stroke='%232fa68c' stroke-width='5' fill='none' opacity='0.35'/><path d='M0 260 Q 200 140 400 260 T 800 260 T 1200 260 T 1600 260' stroke='%23e57b3f' stroke-width='3.5' fill='none' opacity='0.25'/><circle cx='1280' cy='150' r='80' fill='%23e57b3f' opacity='0.22'/><circle cx='1420' cy='240' r='55' fill='%232fa68c' opacity='0.25'/></svg>") !important;
}

.profile-variant[data-variant="spaces"] .profile-hero-banner {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 400' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='sb' x1='0' y1='0' x2='0' y2='1'><stop offset='0' stop-color='%231a2a3d'/><stop offset='1' stop-color='%230d1b2a'/></linearGradient></defs><rect width='1600' height='400' fill='url(%23sb)'/><rect x='80' y='80' width='110' height='320' fill='%23ffffff' opacity='0.08'/><rect x='230' y='40' width='110' height='360' fill='%23ffffff' opacity='0.12'/><rect x='380' y='100' width='110' height='300' fill='%23ffffff' opacity='0.06'/><rect x='530' y='60' width='110' height='340' fill='%23ffffff' opacity='0.10'/><rect x='680' y='90' width='110' height='310' fill='%23ffffff' opacity='0.07'/><circle cx='1280' cy='150' r='140' fill='%23e57b3f' opacity='0.28'/><circle cx='1440' cy='280' r='80' fill='%23e57b3f' opacity='0.18'/><rect x='850' y='0' width='750' height='400' fill='%23faf7f2' opacity='0.10'/></svg>") !important;
}

.profile-variant[data-variant="group"] .profile-hero-banner {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 360' preserveAspectRatio='xMidYMid slice'><defs><linearGradient id='gb' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23faf7f2'/><stop offset='1' stop-color='%23d6ebe5'/></linearGradient></defs><rect width='1600' height='360' fill='url(%23gb)'/><line x1='280' y1='180' x2='480' y2='110' stroke='%231f7a66' stroke-width='2' opacity='0.45'/><line x1='480' y1='110' x2='680' y2='200' stroke='%231f7a66' stroke-width='2' opacity='0.45'/><line x1='680' y1='200' x2='880' y2='130' stroke='%231f7a66' stroke-width='2' opacity='0.45'/><line x1='880' y1='130' x2='1080' y2='220' stroke='%231f7a66' stroke-width='2' opacity='0.45'/><line x1='1080' y1='220' x2='1280' y2='150' stroke='%231f7a66' stroke-width='2' opacity='0.45'/><line x1='480' y1='110' x2='680' y2='280' stroke='%232fa68c' stroke-width='1.5' opacity='0.30'/><line x1='880' y1='130' x2='1080' y2='280' stroke='%232fa68c' stroke-width='1.5' opacity='0.30'/><circle cx='280' cy='180' r='35' fill='%232fa68c' opacity='0.45'/><circle cx='480' cy='110' r='45' fill='%231f7a66' opacity='0.50'/><circle cx='680' cy='200' r='40' fill='%232fa68c' opacity='0.45'/><circle cx='880' cy='130' r='50' fill='%230d1b2a' opacity='0.35'/><circle cx='1080' cy='220' r='42' fill='%231f7a66' opacity='0.50'/><circle cx='1280' cy='150' r='55' fill='%232fa68c' opacity='0.45'/><circle cx='680' cy='280' r='30' fill='%23e57b3f' opacity='0.35'/><circle cx='1080' cy='280' r='32' fill='%23e57b3f' opacity='0.30'/></svg>") !important;
}


/* v33.1 followup: tag pills in Featured strip + cross-context */
.practitioner-tags { display: flex !important; flex-wrap: wrap !important; gap: 5px !important; margin-top: 6px !important; margin-bottom: 6px !important; }
.practitioner-tags .tag, .practitioner-tags .tag-cultural, .practitioner-card .tag, .practitioner-card .tag-cultural { background: #d6ebe5 !important; color: #1f7a66 !important; padding: 4px 10px !important; border-radius: 100px !important; font-size: 10.5px !important; font-weight: 600 !important; border: 1px solid #c5dfd6 !important; font-family: 'Inter', sans-serif !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; font-style: normal !important; display: inline-block !important; }
/* Featured strip cards layout — name + credential + tags vertical, not displaced */
.featured-cards .practitioner-card { display: flex !important; gap: 12px !important; align-items: flex-start !important; padding: 16px 18px !important; }
.featured-cards .practitioner-info { flex: 1 1 0; min-width: 0; }
.featured-cards .practitioner-name { font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important; font-weight: 500 !important; font-size: 16px !important; color: #0d1b2a !important; margin-bottom: 2px !important; }
.featured-cards .practitioner-credential { font-family: var(--font-sans), 'Plus Jakarta Sans', sans-serif !important; font-style: italic !important; font-size: 12px !important; color: #8a94a3 !important; margin-bottom: 4px !important; }
.featured-cards .practitioner-meta { font-size: 11.5px !important; color: #8a94a3 !important; display: inline-flex !important; align-items: center !important; gap: 4px !important; margin-top: 6px !important; }
.featured-cards .practitioner-tags .tag, .featured-cards .practitioner-tags .tag-cultural { font-size: 10px !important; padding: 3px 8px !important; letter-spacing: 0.04em !important; }