/*
 * 2026-10-20 visual consistency (batch 2)
 *
 * One button system, one dark closing card, quieter frames around bright UI
 * screenshots. Colors, borders, radii and spacing only; no layout/copy changes.
 */

/* ── 1. Screen-share demo images: lower saturation, keep the contrast ── */
.home-v2 #stealth .hero-slider-container img,
.home-v2 #stealth .v2-compare img,
.home-v2 #stealth .stealth-method-visual img {
  filter: saturate(0.94) brightness(0.99) contrast(1.01) !important;
}

/* ── 2. Button system: yellow only for the hero and closing CTAs; others are quiet outlines ── */
.home-v2 .btn-primary {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.20) !important;
  color: #fff !important;
  font-weight: 600 !important;
}
.home-v2 .btn-primary:hover {
  background: rgba(255, 255, 255, 0.08) !important;
}
.home-v2 .btn-secondary {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  color: #fff !important;
}
.home-v2 #contact .cta .btn-primary {
  background: #ebcb8b !important;
  border-color: #ebcb8b !important;
  color: #090b10 !important;
  font-weight: 700 !important;
}

/* ── 3. Final CTA: dark card, no big white block ── */
.home-v2 main > section#contact {
  background: #06080d !important;
}
.home-v2 #contact .cta {
  background:
    radial-gradient(120% 120% at 50% 0%, rgba(37, 99, 235, 0.18), transparent 55%),
    linear-gradient(180deg, #0d1424 0%, #090d17 100%) !important;
  border: 1px solid rgba(148, 180, 255, 0.16) !important;
  border-radius: 16px !important;
  color: #e6edf8 !important;
  padding: 56px 32px !important;
  box-shadow: none !important;
}
.home-v2 #contact .cta h2 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
}
.home-v2 #contact .cta p {
  color: #9aa6b6 !important;
}
.home-v2 #contact .cta .btn-secondary {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  color: #fff !important;
}
.home-v2 #contact .refund-promise {
  background: rgba(255, 255, 255, 0.035) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}
.home-v2 #contact .refund-promise strong {
  color: #fff !important;
}
.home-v2 #contact .refund-promise-mark {
  color: #ebcb8b !important;
  background: rgba(235, 203, 139, 0.12) !important;
}
.home-v2 #contact .refund-promise p,
.home-v2 #contact .refund-promise a,
.home-v2 #contact .mobile-contact-note {
  color: #8b95a5 !important;
}
@media (max-width: 640px) {
  .home-v2 #contact .cta {
    padding: 36px 20px !important;
    border-radius: 14px !important;
  }
}

/* ── 4. Mock interview: dark frame around the bright product UI ── */
.home-v2 #mock-interview .v2-media {
  position: relative;
  background: #0d1424 !important;
  border: 6px solid #0d1424 !important;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: none !important;
}
.home-v2 #mock-interview .v2-media img {
  position: relative;
  z-index: 0;
  border-radius: 10px !important;
  filter: brightness(0.90) saturate(0.94);
}
.home-v2 #mock-interview .v2-media::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 6px;
  border-radius: 10px;
  background: rgba(6, 10, 20, 0.22);
  pointer-events: none;
}
.home-v2 #mock-interview .v2-media .v2-zoom,
.home-v2 #mock-interview .v2-media .v2-media-toggle {
  z-index: 2;
}

/* ── 5. Eye-contact photos: dark inner frame, quieter border ── */
.home-v2 #eye-contact .eye-comparison.eye-faces {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.home-v2 #eye-contact .eye-faces .eye-comparison-frame {
  padding: 6px !important;
  border-color: rgba(148, 180, 255, 0.14) !important;
}
.home-v2 #eye-contact .eye-faces .eye-comparison-frame.after {
  border-color: rgba(255, 255, 255, 0.18) !important;
}
.home-v2 #eye-contact .eye-faces .eye-comparison-frame img {
  border-radius: 9px !important;
}

/* ── 6. FAQ: quieter surfaces ── */
.home-v2 #faq .faq-item {
  background: rgba(13, 20, 36, 0.72) !important;
  border-color: rgba(148, 180, 255, 0.10) !important;
  box-shadow: none !important;
}

/* ── 7. Balanced headings; keep the support email on one line ── */
.home-v2 h1,
.home-v2 h2,
.home-v2 h3 {
  text-wrap: balance;
}

/* ── 8. Mobile persistent download entry ── */
.mobile-sticky-cta {
  display: none;
}
@media (max-width: 640px) {
  .mobile-sticky-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    left: 14px;
    bottom: 14px;
    z-index: 60;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 999px;
    background: #ebcb8b;
    color: #090b10;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 0.2s ease, transform 0.2s ease;
  }
  .mobile-sticky-cta.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mobile-sticky-cta {
    transition: none;
  }
}

/* ── 9. Scroll smoothness (2026-10-21): cut compositing cost, keep the still frame ──
   ① On phones, freeze the hero halo glow (500vw + mix-blend-mode layer) where it is:
      same look, no per-frame blending / re-rasterisation. Biggest single win in attribution.
   ② Entrance animations no longer blur the whole section on phones; fade + slide remains.
   ③ When the hero scrolls out of view, pause hero CSS animations; resume on the way back.
   Measured on a Huawei P30 (full page scroll, 3 rounds each): ~53 → 59 fps,
   frames over 50ms 10 → 1, long tasks 4 (636ms) → 1 (76ms). */
@media (max-width: 900px) {
  .home-v2 .xm-reveal { filter: none !important; }
  .home-v2 .v2-hero-halo::before,
  .home-v2 .v2-hero-halo::after,
  .home-v2 .v2-hero-copy::before { animation: none !important; }
}
html.v2-hero-off .home-v2 .hero,
html.v2-hero-off .home-v2 .hero * { animation-play-state: paused !important; }
