/* ═══════════════════════════════════════════════════════════════
   HOLIST — DESIGN FIX PATCH  v1.0
   Referenced by index.html via:  <link rel="stylesheet" href="fixes.css">
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. BODY ─────────────────────────────────────────────────── */
body { -moz-osx-font-smoothing: grayscale; }

/* ── 2. WHATSAPP FLOAT ───────────────────────────────────────── */
@keyframes wa-pulse {
  0%,100% { box-shadow: 0 2px 8px rgba(0,0,0,.18), 0 8px 28px rgba(37,211,102,.32), 0 0 0 1.5px rgba(255,255,255,.12) inset; }
  50%      { box-shadow: 0 2px 8px rgba(0,0,0,.18), 0 14px 42px rgba(37,211,102,.52), 0 0 0 1.5px rgba(255,255,255,.18) inset; }
}
.wa-float {
  z-index: 10000;             /* above grain (9999) and nav (500)   */
  bottom: 32px;
  right: 28px;
  border-radius: 3px;
  box-shadow: 0 2px 8px rgba(0,0,0,.18), 0 8px 28px rgba(37,211,102,.32), 0 0 0 1.5px rgba(255,255,255,.12) inset;
  animation: wa-pulse 3.5s ease-in-out infinite;
}
.wa-float:hover {
  animation: none;
  background: #1ebe5d;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,.22), 0 16px 40px rgba(37,211,102,.48), 0 0 0 1.5px rgba(255,255,255,.20) inset;
}
@media(max-width:768px) {
  .wa-float { bottom: 88px; right: 16px; padding: 12px 14px; }
}
body.booking-active .wa-float  { display: none !important; }
body.booking-success .wa-float { display: flex !important; }

/* ── 3. DARK SECTIONS — contrast & weight ────────────────────── */
.val-sect .vg-text       { color: rgba(247,242,232,.82); font-weight: 400; letter-spacing: .015em; }
.val-sect .vg-text strong{ color: rgba(247,242,232,.95); }
.pillars-sect .pillar-body { color: rgba(247,242,232,.80); font-weight: 400; letter-spacing: .015em; }
.cta-sect .cta-sub       { color: rgba(247,242,232,.80); font-weight: 400; }
.trust-item              { color: rgba(247,242,232,.88); }

/* ── 4. GOLD NUMBERS ─────────────────────────────────────────── */
.vg-num    { color: var(--gold-light); opacity: 1; text-shadow: 0 0 40px rgba(212,168,67,.18); }
.pillar-num{ color: rgba(212,168,67,.30); }  /* was .12 — invisible */
.step-nv   { color: var(--gold-light); opacity: .75; }

/* ── 5. FOOTER ───────────────────────────────────────────────── */
.footer-tagline       { color: rgba(247,242,232,.78); }
.footer-col button    { color: rgba(247,242,232,.75); }
.footer-bottom        { color: rgba(247,242,232,.55); }  /* was .38 — 2:1 fail */
.footer-col h5        { color: rgba(196,169,122,.82); }

/* ── 6. BOOKING ──────────────────────────────────────────────── */
.prog-lbl             { color: rgba(196,169,122,.65); }  /* was .38 */
.prog-lbl.active      { color: var(--gold); }

/* ── 7. FOCUS ────────────────────────────────────────────────── */
.btn-gold:focus-visible,
.nav-cta:focus-visible  { outline-color: var(--ivory); }
.bs-wa-link:focus-visible { outline: 2px solid #4ade80; outline-offset: 2px; border-radius: 1px; }

/* ── 8. PAGE HERO DARK ───────────────────────────────────────── */
.ph p               { color: rgba(247,242,232,.82); }
.outcome-lbl        { color: rgba(247,242,232,.72); }
.outcome-lbl strong { color: rgba(247,242,232,.92); }

/* ── 9. DOCTOR PHOTO ─────────────────────────────────────────── */
.pfc-img img {
  mix-blend-mode: normal;       /* remove desaturating blend */
  opacity: 1;
  object-fit: cover;
  object-position: center top;  /* keeps full head in frame */
}
.pfc-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(42,31,14,.82) 0%, rgba(42,31,14,.35) 30%, transparent 55%);
  pointer-events: none;
  z-index: 1;
}
.pfc-badge { z-index: 2; position: relative; }
.pfc-img img[src]:not([src=""]) ~ .pfc-placeholder { display: none; }
