/* ══════════════════════════════════════════════════════════════════════════════
   VISUAL CLEANUP — Task #1447056
   Fixes: Crisp overflow, footer legal link sizing, bottom-fixed z-index hierarchy

   Root causes:
   1. Crisp chatbox internal spans render at 1000px, overflowing the viewport.
      Fix: constrain #crisp-chatbox to viewport width with overflow hidden.
   2. Footer legal links (Privacy, Terms, Disclaimer, Unsubscribe) are 16-17px
      height — too small for comfortable touch/click targets.
      Fix: add padding to footer legal link elements for 44px+ touch targets.
   3. Bottom-fixed elements (.hp-resume-banner, .hn-sticky-bottom, .sr-gcta-bar,
      .sr-scta-bar) had conflicting z-index values causing the resume banner
      to be obscured by the sticky CTA bar beneath it.
      Fix: establish single z-index hierarchy for all bottom-fixed elements.
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── 1. CRISP CHATBOX OVERFLOW ──────────────────────────────────────────────── */
/* Crisp renders internal spans at 1000px width. Constrain to viewport. */
#crisp-chatbox {
  overflow: hidden !important;
  max-width: 100vw !important;
}

/* ── 2. FOOTER LEGAL LINKS — LARGER TOUCH TARGETS ───────────────────────────── */
/* Links in the Legal column were only 16-17px tall. Increase padding for
   accessibility (WCAG 2.5.8 target size) and readability. */
.fn-col-links a[href="/privacy"],
.fn-col-links a[href="/terms"],
.fn-col-links a[href="/disclaimer"],
.fn-col-links a[href="/refund-policy"],
.fn-col-links a[href="/citation-policy"],
.fn-col-links a[href="/accessibility"],
.fn-col-links a[href="/contact"] {
  padding: 8px 4px;
}

/* Also target the footer bottom-row legal links if they exist */
.fn-pricing-disclaimer a {
  padding: 4px 2px;
}

/* Mobile accordion legal links need larger touch targets too */
.fn-mobile-accordion-links a[href="/privacy"],
.fn-mobile-accordion-links a[href="/terms"],
.fn-mobile-accordion-links a[href="/disclaimer"],
.fn-mobile-accordion-links a[href="/refund-policy"],
.fn-mobile-accordion-links a[href="/citation-policy"],
.fn-mobile-accordion-links a[href="/accessibility"],
.fn-mobile-accordion-links a[href="/contact"] {
  padding: 12px 8px;
  min-height: 48px;
}

/* ── 3. BOTTOM-FIXED Z-INDEX HIERARCHY ──────────────────────────────────────── */
/* Single source of truth for all bottom-fixed elements.
   Higher position = higher z-index to prevent overlap.

   Layer 1 (bottom:0)   — .hn-sticky-bottom (mobile nav CTA)   = 9000
   Layer 2 (bottom:0)   — .sr-gcta-bar, .sr-scta-bar (CTAs)    = 9100
   Layer 3 (above bars)  — .hp-resume-banner (resume claim)     = 9200
   Layer 4               — Crisp chat bubble                    = ~1000000 (Crisp-managed)
*/
html body .hn-sticky-bottom {
  z-index: 9000 !important;
}

html body .sr-gcta-bar {
  z-index: 9100 !important;
}

html body .sr-scta-bar {
  z-index: 9100 !important;
}

html body .hp-resume-banner {
  z-index: 9200 !important;
}
