/* cache-bust 1776891181662 */
/* cache-bust 2026-04-22T11:33:11.210Z v8 — forces all browsers to re-fetch */
/* =========================================================
   ReplyWorks — Direction 05 "Polished Current"
   HERO: lifted verbatim from /sessions/.../01-redesign-references.html
   BELOW-THE-FOLD: drawn from v6 content architecture
   (problems, comparison, results, testimonials, fit, FAQ, CTA)
   Brand tokens: primary hsl(222,67%,48%), bg hsl(220,20%,97%),
   fg hsl(222,47%,11%), green dot hsl(160,84%,39%), red X hsl(0,84%,60%).
   Blue ONLY on: primary CTA, eyebrow pill, "generate pipeline",
   step/tool icons, checkmarks, comparison column, section-eyebrow dots.
   No gradients. No aurora. No particles.
   ========================================================= */

*, *::before, *::after{ margin:0; padding:0; box-sizing:border-box; }
:root{ --mx:-30%; --my:-30%; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body, body *{ font-family:'Inter', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important; }
body{
  background:hsl(220,20%,97%);
  color:hsl(222,47%,11%);
  line-height:1.5;
  font-size:15px;
  -webkit-font-smoothing:antialiased;
}
a{ color:hsl(222,67%,48%); text-decoration:none; }
img{ max-width:100%; display:block; }

/* --- Page shell --- */
.container{ max-width:1280px; margin:0 auto; padding:0 40px; }

/* --- Mock banner --- */
.mock-banner{
  background:hsl(222,47%,11%); color:#fff;
  padding:10px 0; font-size:13px; text-align:center;
  letter-spacing:0.02em;
}
.mock-banner strong{ color:#9bb4e8; font-weight:700; }

/* =========================================================
   TOPBAR
   ========================================================= */
.topbar{
  max-width:1280px; margin:0 auto;
  display:flex; justify-content:space-between; align-items:center;
  padding:24px 40px;
  font-size:14px;
}
.topbar .logo{
  font-size:18px; font-weight:700; letter-spacing:-0.02em;
  color:hsl(222,47%,11%);
}
.topbar .logo .logo-link{
  display:inline-flex; align-items:center; gap:8px;
  color:inherit; text-decoration:none;
}
.topbar .logo .logo-mark{
  display:block; height:26px; width:auto; flex:0 0 auto;
}
.topbar .logo .logo-word{ line-height:1; }
.topbar nav{
  display:flex; gap:30px;
  color:hsl(220,9%,46%); font-weight:500;
}
.topbar nav a{ color:hsl(220,9%,46%); }
.topbar nav a:hover{ color:hsl(222,47%,11%); }
.topbar-right{ display:flex; gap:16px; align-items:center; }
.topbar .ghost{
  color:hsl(222,47%,11%); font-weight:500; font-size:14px;
}
.topbar .cta{
  padding:8px 18px;
  background:hsl(222,67%,48%); color:#fff;
  border-radius:10px;
  font-weight:600; font-size:14px;
  box-shadow:0 1px 3px hsla(222,67%,48%,0.3);
}
.topbar .cta:hover{ background:hsl(222,67%,42%); }

/* =========================================================
   HERO BLOCK (locked — do not change)
   ========================================================= */
.hero-wrap{
  padding:28px 40px 40px;
  position:relative; overflow:hidden;
  isolation:isolate;
}
.hero{
  text-align:center;
  max-width:940px;
  margin:0 auto;
  position:relative;
  z-index:2;
}

/* --- Cursor-reactive dot-grid + breath glow (medium intensity) --- */
.hero-bg{
  position:absolute; inset:0;
  pointer-events:none;
  z-index:0;
}
.bg-breath-glow{
  position:absolute; inset:-80px;
  background:
    radial-gradient(60% 55% at 50% 35%,
      hsla(222,67%,50%,0.09) 0%,
      hsla(222,67%,50%,0.04) 35%,
      hsla(222,67%,50%,0) 70%);
  animation:bgBreathe 9s ease-in-out infinite;
  pointer-events:none;
}
@keyframes bgBreathe{
  0%,100%{ opacity:0.7; transform:scale(1); }
  50%{ opacity:1; transform:scale(1.03); }
}
.bg-dots-base{
  position:absolute; inset:0;
  background-image:
    radial-gradient(hsla(222,22%,60%,0.11) 1px, transparent 1.4px);
  background-size:22px 22px;
  background-position:0 0;
  /* Radial hole behind the text column so dots "frame" the copy
     rather than sit underneath it, then fade out near the bottom. */
  -webkit-mask-image:
    radial-gradient(ellipse 58% 52% at 50% 38%,
      transparent 0%,
      rgba(0,0,0,0.12) 42%,
      rgba(0,0,0,0.55) 68%,
      #000 92%),
    linear-gradient(to bottom, #000 0%, #000 78%, transparent 100%);
  mask-image:
    radial-gradient(ellipse 58% 52% at 50% 38%,
      transparent 0%,
      rgba(0,0,0,0.12) 42%,
      rgba(0,0,0,0.55) 68%,
      #000 92%),
    linear-gradient(to bottom, #000 0%, #000 78%, transparent 100%);
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
  pointer-events:none;
}
.bg-dots-spotlight{
  position:absolute; inset:0;
  background-image:
    radial-gradient(hsl(222,62%,52%) 1.2px, transparent 1.7px);
  background-size:22px 22px;
  background-position:0 0;
  opacity:0;
  -webkit-mask-image:
    radial-gradient(180px 180px at var(--mx) var(--my),
      #000 0%, rgba(0,0,0,0.55) 42%, transparent 72%);
  mask-image:
    radial-gradient(180px 180px at var(--mx) var(--my),
      #000 0%, rgba(0,0,0,0.55) 42%, transparent 72%);
  pointer-events:none;
  transition:opacity 0.45s ease;
}
.hero-wrap.is-hot .bg-dots-spotlight{ opacity:0.55; }
.bg-cursor-glow{
  position:absolute; inset:0;
  background:
    radial-gradient(220px 220px at var(--mx) var(--my),
      hsla(222,70%,55%,0.08) 0%,
      hsla(222,70%,55%,0.03) 45%,
      transparent 72%);
  pointer-events:none;
  opacity:0;
  transition:opacity 0.45s ease;
}
.hero-wrap.is-hot .bg-cursor-glow{ opacity:1; }

/* --- Typewriter on blue-line word --- */
.tw-wrap{
  color:hsl(222,67%,48%);
  display:inline-block;
  position:relative;
  white-space:nowrap;
}
.tw-word{
  display:inline-block;
  min-width:1ch;
}
.tw-caret{
  display:inline-block;
  width:3px;
  height:0.95em;
  background:hsl(222,67%,48%);
  margin-left:4px;
  vertical-align:-0.08em;
  border-radius:1px;
  animation:twBlink 0.95s steps(1) infinite;
}
@keyframes twBlink{
  0%,49%{ opacity:1; }
  50%,100%{ opacity:0; }
}

/* =========================================================
   LIVE REPLY INBOX SECTION (2-col, below hero)
   ========================================================= */
.inbox-section{
  background:#fff;
  border-top:1px solid hsl(220,13%,87%);
  border-bottom:1px solid hsl(220,13%,87%);
  padding:72px 0 76px;
  position:relative;
}
.inbox-section::before{
  content:"";
  position:absolute; top:-1px; left:50%;
  transform:translateX(-50%);
  width:60px; height:2px;
  background:hsl(222,67%,48%);
  border-radius:2px;
}
.inbox-grid{
  max-width:1280px;
  margin:0 auto;
  padding:0 40px;
  display:grid;
  grid-template-columns:1fr 1.05fr;
  gap:56px;
  align-items:center;
}
.inbox-copy .section-eyebrow{ margin-bottom:14px; }
.inbox-copy h2{
  font-size:30px;
  font-weight:700;
  letter-spacing:-0.02em;
  line-height:1.2;
  color:hsl(222,47%,11%);
  margin:0 0 14px;
}
.inbox-copy h2 .hl{ color:hsl(222,67%,48%); }
.inbox-copy p.sub{
  font-size:15px;
  color:hsl(220,9%,46%);
  line-height:1.6;
  margin:0 0 24px;
  max-width:460px;
}
.inbox-stats{
  display:flex; gap:32px;
  padding-top:4px;
}
.inbox-stat strong{
  display:block;
  font-size:22px; font-weight:700;
  color:hsl(222,47%,11%);
  letter-spacing:-0.02em;
  line-height:1.1;
}
.inbox-stat span{
  font-size:11.5px;
  color:hsl(220,9%,46%);
  font-weight:500;
  margin-top:4px;
  display:block;
  letter-spacing:0.01em;
}

/* Inbox card */
.inbox-card{
  position:relative;
  max-width:560px;
  width:100%;
  margin:0 0 0 auto;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:14px;
  box-shadow:
    0 1px 2px rgba(0,0,0,0.04),
    0 12px 28px -12px rgba(16,24,40,0.14);
  overflow:hidden;
}
.inbox-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 16px;
  border-bottom:1px solid hsl(220,13%,92%);
  background:hsl(220,20%,98.5%);
}
.inbox-header-left{
  display:flex; align-items:center; gap:10px;
  font-size:12.5px; font-weight:600;
  color:hsl(222,47%,11%);
  letter-spacing:-0.005em;
}
.inbox-live-dot{
  position:relative;
  width:8px; height:8px;
  border-radius:50%;
  background:hsl(160,84%,39%);
  box-shadow:0 0 0 2px hsla(160,84%,39%,0.18);
}
.inbox-live-dot::after{
  content:"";
  position:absolute; inset:-3px;
  border-radius:50%;
  border:1.5px solid hsla(160,84%,39%,0.55);
  animation:livePulse 2s ease-out infinite;
}
@keyframes livePulse{
  0%{ transform:scale(1); opacity:0.8; }
  80%,100%{ transform:scale(2.2); opacity:0; }
}
.inbox-header-right{
  font-size:11.5px;
  color:hsl(220,9%,46%);
  font-weight:500;
}
.inbox-scroll{
  position:relative;
  height:340px;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom,
    transparent 0%, #000 6%, #000 94%, transparent 100%);
  mask-image:linear-gradient(to bottom,
    transparent 0%, #000 6%, #000 94%, transparent 100%);
}
.inbox-track{
  display:flex;
  flex-direction:column;
  animation:inboxScroll 32s linear infinite;
}
.inbox-track:hover{ animation-play-state:paused; }
@keyframes inboxScroll{
  0%{ transform:translateY(0); }
  100%{ transform:translateY(-50%); }
}
.reply-row{
  display:flex; gap:12px; align-items:flex-start;
  padding:14px 16px;
  border-bottom:1px solid hsl(220,13%,94%);
  background:#fff;
}
.reply-avatar{
  flex-shrink:0;
  width:30px; height:30px;
  border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:11px; font-weight:700;
  color:hsl(222,67%,48%);
  background:hsla(222,67%,48%,0.09);
  border:1px solid hsla(222,67%,48%,0.18);
  letter-spacing:0.02em;
}
.reply-body{ flex:1; min-width:0; }
.reply-top{
  display:flex; justify-content:space-between; align-items:center;
  gap:10px;
  margin-bottom:4px;
}
.reply-name{
  font-size:12.5px; font-weight:600;
  color:hsl(222,47%,11%);
  letter-spacing:-0.005em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  max-width:180px;
}
.reply-meta{
  font-size:10.5px;
  color:hsl(220,9%,55%);
  flex-shrink:0;
  font-weight:500;
}
.reply-snippet{
  font-size:12px;
  color:hsl(220,9%,40%);
  line-height:1.45;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  margin-bottom:6px;
}
.reply-pill{
  display:inline-flex; align-items:center; gap:5px;
  font-size:10px; font-weight:600;
  padding:2px 8px;
  border-radius:9999px;
  letter-spacing:0.02em;
  text-transform:uppercase;
}
.reply-pill .pd{
  width:5px; height:5px; border-radius:50%;
  display:inline-block;
}
.reply-pill.positive{
  background:hsla(160,84%,39%,0.1);
  color:hsl(160,70%,30%);
}
.reply-pill.positive .pd{ background:hsl(160,84%,39%); }
.reply-pill.meeting{
  background:hsla(222,67%,48%,0.09);
  color:hsl(222,67%,40%);
}
.reply-pill.meeting .pd{ background:hsl(222,67%,48%); }
.reply-pill.referred{
  background:hsla(270,50%,55%,0.1);
  color:hsl(270,40%,38%);
}
.reply-pill.referred .pd{ background:hsl(270,50%,55%); }

/* =========================================================
   SCROLL-REVEAL MOTION (subtle fade-up + card glow-on-enter)
   ========================================================= */
.reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity 0.7s cubic-bezier(0.2,0.7,0.2,1),
             transform 0.7s cubic-bezier(0.2,0.7,0.2,1);
  will-change:opacity, transform;
}
.reveal.in{
  opacity:1;
  transform:none;
}
.reveal[data-delay="1"]{ transition-delay:0.06s; }
.reveal[data-delay="2"]{ transition-delay:0.12s; }
.reveal[data-delay="3"]{ transition-delay:0.18s; }
.reveal[data-delay="4"]{ transition-delay:0.24s; }

/* Momentary "glow" when a card first enters the viewport */
.card-glow{
  position:relative;
}
.card-glow.in::after{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:0 0 0 0 hsla(222,67%,48%,0.22);
  animation:cardGlowPulse 1.4s ease-out 0.15s 1 forwards;
}
@keyframes cardGlowPulse{
  0%{ box-shadow:0 0 0 0 hsla(222,67%,48%,0.0); }
  40%{ box-shadow:0 0 0 6px hsla(222,67%,48%,0.18); }
  100%{ box-shadow:0 0 0 0 hsla(222,67%,48%,0.0); }
}

/* Persistent lift-on-hover (for cards that don't already have it) */
.problem-card, .tool-card, .case-card, .fit-col, .faq-item, .result, .inbox-card{
  transition:transform 0.25s cubic-bezier(0.4,0,0.2,1),
             border-color 0.25s ease,
             box-shadow 0.25s ease;
}
.problem-card:hover, .tool-card:hover, .case-card:hover,
.fit-col:hover, .faq-item:hover, .result:hover{
  transform:translateY(-3px);
  border-color:hsla(222,67%,48%,0.25);
  box-shadow:0 6px 18px -8px rgba(16,24,40,0.15);
}
.inbox-card:hover{
  transform:translateY(-2px);
  box-shadow:
    0 1px 2px rgba(0,0,0,0.04),
    0 18px 36px -14px rgba(16,24,40,0.18);
}

@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1; transform:none; transition:none; }
  .card-glow.in::after{ animation:none; }
}
.hero .eyebrow{
  font-size:13px;
  color:hsl(222,67%,48%) !important;
  margin-bottom:24px;
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 14px;
  background:hsla(222,67%,48%,0.08) !important;
  border:1px solid hsla(222,67%,48%,0.15) !important;
  border-radius:9999px;
  font-weight:500;
}
.hero .eyebrow .dot{
  width:6px; height:6px;
  background:hsl(160,84%,39%);
  border-radius:50%;
  display:inline-block;
}
.hero h1{
  font-size:54px;
  line-height:1.15;
  font-weight:700;
  letter-spacing:-0.02em;
  margin-bottom:20px;
  color:hsl(222,47%,11%);
  max-width:780px;
  margin-left:auto; margin-right:auto;
}
.hero h1 .blue-line{ color:hsl(222,67%,48%); }
.hero .sub{
  font-size:16px;
  color:hsl(222,18%,32%);
  max-width:600px;
  margin:0 auto 16px;
  line-height:1.6;
  font-weight:400;
}
.hero .icp-line{
  display:inline-block;
  font-size:13px;
  color:hsl(222,47%,11%);
  font-weight:500;
  padding:7px 16px;
  background:hsl(220,14%,93%);
  border:1px solid hsl(220,13%,87%);
  border-radius:9999px;
  margin-bottom:26px;
  letter-spacing:-0.005em;
  line-height:1.4;
}
.hero .icp-line .dollar{
  color:hsl(222,67%,48%);
  font-weight:600;
}
.hero .ctas{
  display:flex; gap:16px;
  align-items:center; justify-content:center;
  margin-bottom:14px;
  flex-wrap:wrap;
}
.hero .risk-line{
  font-size:12.5px;
  color:hsl(222,15%,38%);
  font-weight:500;
  margin-bottom:10px;
  letter-spacing:0.005em;
  display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; justify-content:center;
}
.hero .risk-line strong{
  color:hsl(222,47%,11%); font-weight:600;
}
.hero .risk-line .dot{
  width:6px; height:6px;
  background:hsl(160,84%,39%);
  border-radius:50%;
  display:inline-block;
  flex-shrink:0;
}
.hero .risk-line .sep{ color:hsl(220,13%,80%); margin:0 4px; }
.hero .auth-line{
  font-size:12px;
  color:hsl(222,15%,40%);
  font-style:italic;
  max-width:560px;
  margin:0 auto 22px;
  line-height:1.55;
  opacity:0.95;
}
.btn-primary{
  background:hsl(222,67%,48%); color:#fff;
  padding:12px 28px;
  border-radius:10px;
  font-weight:600; font-size:15px;
  text-decoration:none;
  box-shadow:0 1px 3px hsla(222,67%,48%,0.3);
  display:inline-flex; align-items:center; gap:8px;
  line-height:1.4;
  transition:background .15s;
}
.btn-primary:hover{ background:hsl(222,67%,42%); color:#fff; }
.btn-text{
  font-size:15px;
  color:hsl(222,47%,11%);
  text-decoration:none;
  font-weight:600;
  padding:12px 20px;
  border:1px solid hsl(220,13%,87%);
  background:#fff;
  border-radius:10px;
  line-height:1.4;
  transition:border-color .15s;
}
.btn-text:hover{ border-color:hsl(222,47%,11%); }

/* --- Proof-strip "Why outbound breaks" (one-line on desktop) --- */
.proof-strip{
  display:flex; gap:20px;
  flex-wrap:nowrap;
  justify-content:center;
  font-size:13px;
  color:hsl(222,15%,38%);
  padding:10px 24px;
  max-width:980px;
  margin:0 auto 22px;
  font-weight:500;
  white-space:nowrap;
}
.proof-strip span{
  display:inline-flex; align-items:center; gap:8px;
  white-space:nowrap;
}
.proof-strip span::before{
  content:""; width:4px; height:4px;
  background:hsl(220,9%,46%);
  border-radius:50%;
  display:inline-block;
}
.proof-strip .proof-lead{
  font-size:12px; font-weight:600;
  letter-spacing:0.04em; text-transform:uppercase;
  color:hsl(222,47%,11%);
  align-self:center;
}
.proof-strip .proof-lead::before{ content:none; }

/* --- 7-step arc --- */
.arc{
  max-width:1280px;
  margin:0 auto 0;
  position:relative;
  padding:0 0 8px;
}
.arc-row{
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:10px;
  position:relative;
  z-index:1;
  align-items:stretch;
}
.arc-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:10px;
  padding:16px 10px 14px;
  text-align:center;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  position:relative;
  display:flex; flex-direction:column;
  align-items:center; justify-content:flex-start;
  transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
}
.arc-card:hover{
  border-color:hsla(222,67%,48%,0.3);
  box-shadow:0 4px 6px -1px rgba(0,0,0,0.07);
  transform:translateY(-2px);
}
.arc-card.optional{
  border-style:dashed;
  background:hsl(220,20%,97%);
}
.arc-card .step-num{
  position:absolute; top:8px; left:10px;
  font-size:10px; font-weight:600;
  color:hsl(220,9%,46%);
  letter-spacing:0.04em;
}
.arc-icon{
  width:34px; height:34px;
  border-radius:8px;
  background:hsla(222,67%,48%,0.08) !important;   /* mockup-exact translucent blue — v6 Apr 21 2026 */
  color:hsl(222,67%,48%) !important;
  display:inline-flex; align-items:center; justify-content:center;
  margin:6px auto 10px;
  font-size:15px; font-weight:600;
  border:1px solid hsla(222,67%,48%,0.15) !important;
}
.arc-card.optional .arc-icon{
  background:#fff !important;
  color:hsl(220,9%,46%) !important;
  border:1px dashed hsl(220,13%,87%) !important;
}
.arc-title{
  font-size:13px; font-weight:600;
  color:hsl(222,47%,11%);
  margin-bottom:4px;
  letter-spacing:-0.005em;
  line-height:1.25;
}
.arc-desc{
  font-size:11px;
  color:hsl(220,9%,46%);
  line-height:1.4;
  font-weight:400;
}
.opt-tag{
  display:inline-block;
  font-size:9px; font-weight:600;
  color:hsl(220,9%,46%);
  letter-spacing:0.06em;
  margin-top:6px;
  padding:2px 7px;
  background:hsl(220,14%,93%);
  border-radius:4px;
  text-transform:uppercase;
}

/* --- KPI strip --- */
.kpi-strip{
  display:flex; gap:40px;
  justify-content:center; flex-wrap:wrap;
  margin-top:32px;
  padding:20px 28px;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:10px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
}
.kpi-strip .k{ text-align:center; }
.kpi-strip .k strong{
  display:block;
  font-size:24px; font-weight:700;
  color:hsl(222,47%,11%);
  line-height:1;
  letter-spacing:-0.02em;
}
.kpi-strip .k span{
  font-size:11px;
  color:hsl(220,9%,46%);
  margin-top:6px;
  display:block;
  font-weight:500;
}
.kpi-strip .k-label{
  font-size:12px; font-weight:600;
  color:hsl(222,47%,11%);
  align-self:center;
}

/* =========================================================
   BELOW-THE-FOLD — v6 content in Direction 05 discipline
   ========================================================= */
.section{ padding:56px 0; }
.section--alt{
  background:#fff;
  border-top:1px solid hsl(220,13%,87%);
  border-bottom:1px solid hsl(220,13%,87%);
}
.section-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  padding:4px 12px;
  background:hsla(222,67%,48%,0.08) !important;
  border:1px solid hsla(222,67%,48%,0.15) !important;
  border-radius:9999px;
  font-size:12px; font-weight:600;
  color:hsl(222,67%,48%) !important;
  margin-bottom:16px;
}
.section-eyebrow .dot{
  width:5px; height:5px;
  background:hsl(222,67%,48%);
  border-radius:50%;
}
.section-head{ text-align:center; max-width:720px; margin:0 auto 36px; }
.section-h2{
  font-size:30px;
  font-weight:700;
  letter-spacing:-0.02em;
  line-height:1.2;
  color:hsl(222,47%,11%);
  margin:0 0 12px;
}
.section-sub{
  font-size:15px;
  color:hsl(220,9%,46%);
  line-height:1.6;
  margin:0;
}

/* --- Problems grid (3 cards, red X bullets) --- */
.problems{
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:18px;
  max-width:1280px; margin:0 auto;
}
.problem-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:24px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
}
.problem-card h3{
  font-size:16px; font-weight:700;
  line-height:1.4; margin:0 0 16px;
  color:hsl(222,47%,11%);
  letter-spacing:-0.01em;
}
.problem-card ul{ list-style:none; padding:0; margin:0; }
.problem-card li{
  display:flex; gap:10px;
  font-size:13.5px;
  color:hsl(220,9%,46%);
  line-height:1.55;
  margin-bottom:12px;
}
.problem-card li:last-child{ margin-bottom:0; }
.x-icon{
  flex-shrink:0;
  width:16px; height:16px;
  color:hsl(0,84%,60%);
  margin-top:2px;
}

/* --- Cost of Inaction (centered card on gray) --- */
.cost-card{
  max-width:820px; margin:0 auto;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-left:3px solid hsl(0,78%,55%);
  border-radius:12px;
  padding:34px 40px 30px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  text-align:left;
}
.cost-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  padding:4px 12px;
  background:hsla(0,84%,60%,0.08);
  border:1px solid hsla(0,84%,60%,0.2);
  border-radius:9999px;
  font-size:11.5px; font-weight:700;
  color:hsl(0,70%,45%);
  letter-spacing:0.04em;
  margin-bottom:14px;
  text-transform:uppercase;
}
.cost-eyebrow .dot{
  width:5px; height:5px;
  background:hsl(0,84%,60%);
  border-radius:50%;
}
.cost-card .cost-h2{
  font-size:26px;
  font-weight:700;
  letter-spacing:-0.02em;
  line-height:1.25;
  color:hsl(222,47%,11%);
  margin:2px 0 14px;
}
.cost-intro{
  font-size:14.5px;
  color:hsl(220,9%,46%);
  line-height:1.6;
  margin:0 0 16px;
}
.cost-intro strong{ color:hsl(222,47%,11%); font-weight:600; }
.cost-list{ list-style:none; padding:0; margin:0 0 22px; }
.cost-list li{
  display:flex; gap:12px;
  font-size:14px;
  color:hsl(222,47%,11%);
  line-height:1.55;
  margin-bottom:10px;
  font-weight:500;
}
.cost-list li:last-child{ margin-bottom:0; }
.cost-arrow{
  flex-shrink:0; width:16px; height:16px;
  color:hsl(0,78%,55%);
  margin-top:2px;
}
.cost-close{
  font-size:14.5px;
  color:hsl(222,67%,48%);
  font-weight:600;
  line-height:1.55;
  margin:0;
  padding-top:16px;
  border-top:1px solid hsl(220,14%,93%);
}

/* --- What makes us different / narrative blocks --- */
.alt-grid{
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:14px;
  max-width:1280px; margin:0 auto 22px;
}
.alt-card{
  background:hsl(220,20%,97%);
  border:1px solid hsl(220,13%,87%);
  border-radius:10px;
  padding:20px 20px 18px;
}
.alt-label{
  font-size:11px; font-weight:700;
  color:hsl(0,70%,48%);
  letter-spacing:0.08em; text-transform:uppercase;
  margin:0 0 12px;
  display:flex; align-items:center; gap:8px;
}
.alt-label::before{
  content:""; width:6px; height:6px;
  background:hsl(0,78%,55%);
  border-radius:50%;
  flex-shrink:0;
}
.alt-list{ list-style:none; padding:0; margin:0; }
.alt-list li{
  display:flex; gap:10px;
  font-size:13px;
  color:hsl(220,9%,40%);
  line-height:1.5;
  margin-bottom:8px;
}
.alt-list li:last-child{ margin-bottom:0; }
.alt-x{
  flex-shrink:0; width:13px; height:13px;
  color:hsl(0,78%,55%);
  margin-top:3px;
}

/* --- ReplyWorks solution card --- */
.rw-card{
  max-width:1280px; margin:0 auto 0;
  background:#fff;
  border:1px solid hsla(222,67%,48%,0.3);
  border-radius:12px;
  padding:28px 32px 24px;
  box-shadow:0 2px 12px rgba(15,23,42,0.04);
  position:relative;
  overflow:hidden;
}
.rw-card::before{
  content:""; position:absolute; top:0; left:0; right:0;
  height:3px;
  background:hsl(222,67%,48%);
}
.rw-card-head{
  display:flex; align-items:center; justify-content:space-between;
  gap:14px; flex-wrap:wrap;
  margin-bottom:18px;
}
.rw-label{
  font-size:11.5px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:0.08em; text-transform:uppercase;
  display:flex; align-items:center; gap:8px;
  margin:0;
}
.rw-label::before{
  content:""; width:7px; height:7px;
  background:hsl(222,67%,48%);
  border-radius:50%;
}
.rw-badge{
  font-size:11px; font-weight:600;
  color:#fff;
  background:hsl(222,67%,48%);
  padding:5px 11px; border-radius:9999px;
  letter-spacing:0.02em;
  box-shadow:0 1px 3px hsla(222,67%,48%,0.3);
}
.rw-list{
  list-style:none; padding:0;
  margin:0 0 18px;
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.rw-list li{
  display:flex; gap:10px;
  font-size:13.5px;
  color:hsl(222,47%,11%);
  line-height:1.5;
  font-weight:500;
}
.rw-check{
  flex-shrink:0; width:16px; height:16px;
  color:hsl(222,67%,48%);
  margin-top:2px;
}
.rw-close{
  font-size:14px;
  color:hsl(220,9%,46%);
  line-height:1.6;
  margin:0;
  padding-top:16px;
  border-top:1px solid hsl(220,14%,93%);
}
.rw-close strong{ color:hsl(222,47%,11%); font-weight:700; }

/* --- At a glance (mini summary) --- */
.at-glance{
  max-width:1280px; margin:40px auto 0;
  padding-top:36px;
  border-top:1px solid hsl(220,14%,93%);
}
.at-title{
  text-align:center;
  font-size:11px; font-weight:700;
  color:hsl(220,9%,46%);
  letter-spacing:0.12em; text-transform:uppercase;
  margin:0 0 20px;
}
.at-grid{
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.at-card{
  background:hsl(220,20%,97%);
  border:1px solid hsl(220,13%,87%);
  border-radius:10px;
  padding:18px 20px 18px;
}
.at-card--primary{
  background:#fff;
  border-color:hsla(222,67%,48%,0.35);
  box-shadow:0 1px 4px hsla(222,67%,48%,0.06);
  position:relative;
}
.at-head{
  font-size:12px; font-weight:700;
  color:hsl(220,9%,46%);
  letter-spacing:0.06em; text-transform:uppercase;
  margin-bottom:12px;
}
.at-card--primary .at-head{ color:hsl(222,67%,48%); }
.at-card ul{ list-style:none; padding:0; margin:0; }
.at-card li{
  font-size:13px;
  color:hsl(222,47%,11%);
  line-height:1.5;
  margin-bottom:7px;
  padding-left:14px;
  position:relative;
}
.at-card li:last-child{ margin-bottom:0; }
.at-card li::before{
  content:""; position:absolute;
  left:0; top:8px;
  width:4px; height:4px;
  background:hsl(220,9%,60%);
  border-radius:50%;
}
.at-card--primary li::before{ background:hsl(222,67%,48%); }

/* --- Comparison table (legacy; section removed but styles kept harmless) --- */
.compare-wrap{
  max-width:1280px; margin:0 auto;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
}
.compare-scroll{ overflow-x:auto; }
.compare-table{
  width:100%; min-width:720px;
  border-collapse:collapse;
  font-size:14px;
}
.compare-table thead{
  background:hsl(220,20%,97%);
}
.compare-table th{
  padding:16px 18px;
  text-align:center;
  font-weight:600;
  color:hsl(220,9%,46%);
  border-bottom:1px solid hsl(220,13%,87%);
  font-size:13px;
}
.compare-table th:first-child{
  text-align:left;
  width:32%;
}
.compare-table th.rw-col{
  background:hsla(222,67%,48%,0.06);
  color:hsl(222,67%,48%);
  font-weight:700;
  font-size:14px;
  letter-spacing:-0.005em;
}
.compare-table td{
  padding:14px 18px;
  border-bottom:1px solid hsl(220,14%,93%);
  text-align:center;
  color:hsl(220,9%,46%);
}
.compare-table td:first-child{
  text-align:left;
  color:hsl(222,47%,11%);
  font-weight:500;
}
.compare-table td.rw-col{
  background:hsla(222,67%,48%,0.03);
  color:hsl(222,67%,48%);
  font-weight:600;
}
.compare-table tr:last-child td{ border-bottom:none; }
.check-icon{
  width:18px; height:18px; color:hsl(222,67%,48%);
  display:inline-block;
}
.x-icon-sm{
  width:16px; height:16px; color:hsl(0,84%,60%);
  display:inline-block;
}

/* --- Results stats (4 cards) --- */
.results{
  display:grid; grid-template-columns:repeat(4, 1fr);
  gap:18px;
  max-width:1280px; margin:0 auto;
}
.result-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:26px 20px;
  text-align:center;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
}
.result-num{
  font-size:32px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:-0.02em; line-height:1;
  margin-bottom:10px;
}
.result-label{
  font-size:14px; font-weight:600;
  color:hsl(222,47%,11%);
  margin-bottom:4px;
}
.result-desc{
  font-size:12px;
  color:hsl(220,9%,46%);
}
.results-note{
  max-width:560px; margin:28px auto 0;
  text-align:center;
  font-size:12px;
  color:hsl(220,9%,46%);
  line-height:1.6;
}

/* --- Mini case studies (2-card, after results) --- */
.cases{
  display:grid; grid-template-columns:repeat(2, 1fr);
  gap:20px;
  max-width:1280px; margin:0 auto;
}
.case-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:26px 26px 22px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  display:flex; flex-direction:column; gap:16px;
}
.case-head{
  display:flex; align-items:flex-start;
  justify-content:space-between;
  gap:18px; flex-wrap:wrap;
  padding-bottom:14px;
  border-bottom:1px solid hsl(220,14%,93%);
}
.case-industry{
  font-size:11px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:0.08em; text-transform:uppercase;
  display:block; margin-bottom:6px;
}
.case-headline{
  font-size:22px; font-weight:700;
  letter-spacing:-0.015em;
  color:hsl(222,47%,11%);
  line-height:1.2;
  margin:0;
}
.case-status{
  flex-shrink:0;
  font-size:11px; font-weight:600;
  color:hsl(160,84%,29%);
  background:hsla(160,84%,39%,0.08);
  border:1px solid hsla(160,84%,39%,0.2);
  padding:4px 10px; border-radius:9999px;
  letter-spacing:0.02em;
  white-space:nowrap;
  align-self:center;
}
.case-row{
  display:grid; grid-template-columns:90px 1fr;
  gap:14px; align-items:start;
  font-size:13.5px; line-height:1.55;
}
.case-row .k{
  font-size:11px; font-weight:700;
  color:hsl(220,9%,46%);
  letter-spacing:0.08em; text-transform:uppercase;
  padding-top:2px;
}
.case-row .v{ color:hsl(222,47%,11%); font-weight:400; }
.case-row .v em{
  font-style:normal;
  color:hsl(222,67%,48%); font-weight:600;
}
.case-metrics{
  margin-top:auto;
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:8px;
  padding-top:16px;
  border-top:1px solid hsl(220,14%,93%);
}
.case-metric{
  text-align:center;
  padding:10px 6px;
  background:hsl(220,20%,97%);
  border:1px solid hsl(220,13%,87%);
  border-radius:8px;
}
.case-metric .m-num{
  display:block;
  font-size:18px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:-0.015em;
  line-height:1;
  margin-bottom:4px;
}
.case-metric .m-lbl{
  font-size:10px; font-weight:600;
  color:hsl(220,9%,46%);
  letter-spacing:0.05em; text-transform:uppercase;
}

/* --- Testimonials (marquee — restored from v6) --- */
.marquee-wrap{
  position:relative;
  margin:0 -40px;
  overflow:hidden;
}
.marquee-wrap::before,
.marquee-wrap::after{
  content:""; position:absolute; top:0; bottom:0;
  width:90px; z-index:2; pointer-events:none;
}
.marquee-wrap::before{
  left:0;
  background:linear-gradient(to right, hsl(220,20%,97%), transparent);
}
.marquee-wrap::after{
  right:0;
  background:linear-gradient(to left, hsl(220,20%,97%), transparent);
}
.section--alt .marquee-wrap::before{
  background:linear-gradient(to right, #fff, transparent);
}
.section--alt .marquee-wrap::after{
  background:linear-gradient(to left, #fff, transparent);
}
.marquee-track{
  display:flex; gap:18px;
  width:max-content;
  animation:marquee-scroll 48s linear infinite;
}
.marquee-track:hover{ animation-play-state:paused; }
@keyframes marquee-scroll{
  0%   { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}
.testimonial{
  flex-shrink:0;
  width:340px;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:22px 22px 20px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  display:flex; flex-direction:column;
}
.stars{ display:flex; gap:2px; margin-bottom:12px; color:hsl(45,93%,47%); }
.stars svg{ width:13px; height:13px; }
.t-body{
  font-size:13.5px; color:hsl(220,9%,46%);
  line-height:1.55;
  margin:0 0 16px;
  flex:1;
}
.t-meta{
  display:flex; align-items:center; gap:12px;
  padding-top:14px;
  border-top:1px solid hsl(220,14%,93%);
}
.t-avatar{
  width:34px; height:34px;
  border-radius:8px;
  background:hsla(222,67%,48%,0.1);
  color:hsl(222,67%,48%);
  display:grid; place-items:center;
  font-weight:700; font-size:13px;
  border:1px solid hsla(222,67%,48%,0.2);
}
.t-who{ font-size:12.5px; }
.t-who strong{ display:block; font-weight:600; color:hsl(222,47%,11%); font-size:13px; }
.t-who span{ color:hsl(220,9%,46%); font-size:11px; }
.t-result{
  display:flex; align-items:center; gap:8px;
  margin-top:auto; margin-bottom:14px;
  padding:8px 12px;
  background:hsla(222,67%,48%,0.06);
  border:1px solid hsla(222,67%,48%,0.15);
  border-radius:8px;
  font-size:12px;
  color:hsl(222,47%,11%);
  font-weight:500;
  line-height:1.4;
}
.t-result .r-label{
  font-size:10px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:0.08em; text-transform:uppercase;
  flex-shrink:0;
}
.t-result strong{ color:hsl(222,67%,48%); font-weight:700; }
.upwork-links{
  display:flex; gap:16px; justify-content:center;
  margin-top:28px;
  font-size:13px;
}
.upwork-links a{
  display:inline-flex; align-items:center; gap:6px;
  color:hsl(222,67%,48%);
  font-weight:600;
}

/* --- Fit / Not Fit (2-card) --- */
.fit-grid{
  display:grid; grid-template-columns:repeat(2, 1fr);
  gap:18px;
  max-width:1000px; margin:0 auto;
}
.fit-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:26px 24px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
}
.fit-card h3{
  font-size:17px; font-weight:700;
  margin:0 0 16px;
  display:flex; align-items:center; gap:10px;
  color:hsl(222,47%,11%);
}
.fit-card ul{ list-style:none; padding:0; margin:0; }
.fit-card li{
  display:flex; gap:10px;
  font-size:14px;
  line-height:1.55;
  margin-bottom:12px;
  color:hsl(222,47%,11%);
}
.fit-card li:last-child{ margin-bottom:0; }
.fit-card .ic{
  width:18px; height:18px; flex-shrink:0;
  margin-top:1px;
}
.fit-yes .ic{ color:hsl(222,67%,48%); }
.fit-no li{ color:hsl(220,9%,46%); }
.fit-no .ic{ color:hsl(0,84%,60%); width:16px; height:16px; }

/* --- Toolkit trio --- */
.toolkit{
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:18px;
  max-width:1280px; margin:0 auto;
}
.tool-card{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  padding:26px 24px;
  display:flex; flex-direction:column;
  min-height:210px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
}
.tool-card:hover{
  border-color:hsla(222,67%,48%,0.3);
  transform:translateY(-2px);
  box-shadow:0 4px 6px -1px rgba(0,0,0,0.07);
}
.tool-eyebrow{
  font-size:11px; font-weight:700;
  color:hsl(222,67%,48%);
  letter-spacing:0.1em; text-transform:uppercase;
  margin-bottom:14px;
}
.tool-title{
  font-size:19px; font-weight:700;
  letter-spacing:-0.01em;
  margin:0 0 10px;
  color:hsl(222,47%,11%);
}
.tool-body{
  font-size:14px;
  color:hsl(220,9%,46%);
  line-height:1.55;
  margin:0 0 18px;
}
.tool-link{
  margin-top:auto;
  color:hsl(222,67%,48%);
  font-weight:600; font-size:14px;
  display:inline-flex; align-items:center; gap:6px;
}
.tool-link:hover{ color:hsl(222,67%,42%); }

/* --- FAQ (details/summary, no JS) --- */
.faq{ max-width:780px; margin:0 auto; }
.faq-item{
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:12px;
  margin-bottom:10px;
  box-shadow:0 1px 2px 0 rgba(0,0,0,0.05);
  overflow:hidden;
}
.faq-item summary{
  padding:18px 22px;
  cursor:pointer;
  list-style:none;
  display:flex; align-items:center; justify-content:space-between;
  gap:16px;
  font-size:15.5px; font-weight:600;
  color:hsl(222,47%,11%);
  letter-spacing:-0.005em;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-chev{
  width:18px; height:18px; flex-shrink:0;
  color:hsl(220,9%,46%);
  transition:transform 0.2s ease;
}
.faq-item[open] .faq-chev{ transform:rotate(180deg); }
.faq-a{
  padding:0 22px 20px;
  font-size:14.5px; color:hsl(220,9%,46%);
  line-height:1.6;
}

/* --- Final CTA card (white card, dialed-blue discipline) --- */
.final{ padding:40px 0 72px; }
.final-card{
  max-width:780px; margin:0 auto;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:14px;
  padding:40px 36px;
  text-align:center;
  box-shadow:0 2px 8px rgba(15,23,42,0.04);
}
.final-card h2{
  font-size:28px; font-weight:700;
  letter-spacing:-0.02em;
  line-height:1.2;
  margin:0 0 12px;
  color:hsl(222,47%,11%);
}
.final-card .sub{
  font-size:15px;
  color:hsl(220,9%,46%);
  max-width:540px;
  margin:0 auto 24px;
  line-height:1.6;
}
.final-card .ctas{
  display:flex; gap:14px;
  justify-content:center; flex-wrap:wrap;
}
.final-trust{
  margin-top:26px;
  display:flex; gap:22px;
  justify-content:center; flex-wrap:wrap;
  font-size:12.5px;
  color:hsl(220,9%,46%);
}
.final-trust span{
  display:inline-flex; align-items:center; gap:6px;
}
.check-mini{
  width:14px; height:14px; color:hsl(222,67%,48%);
}

/* --- Platforms strip --- */
.platforms-strip{
  border-top:1px solid hsl(220,13%,87%);
  background:hsl(220,20%,97%);
  padding:28px 0;
}
.platforms-inner{
  max-width:1280px; margin:0 auto;
  padding:0 40px; text-align:center;
}
.platforms-label{
  font-size:11px; font-weight:700;
  letter-spacing:0.12em; text-transform:uppercase;
  color:hsl(220,9%,46%);
  margin:0 0 14px;
}
.platforms-list{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap;
  gap:10px 12px; justify-content:center;
}
.platforms-list li{
  font-size:13px; color:hsl(222,47%,11%);
  padding:6px 14px;
  background:#fff;
  border:1px solid hsl(220,13%,87%);
  border-radius:999px;
  line-height:1.2;
}

/* --- Credentials bar --- */
.creds-strip{
  border-top:1px solid hsl(220,13%,87%);
  background:#fff;
  padding:16px 0;
}
.creds-inner{
  max-width:1280px; margin:0 auto;
  padding:0 40px;
  display:flex; flex-wrap:wrap;
  align-items:center; justify-content:center;
  gap:10px 16px;
  font-size:13px; color:hsl(220,9%,46%);
}
.creds-inner a{ color:inherit; }
.cred-item{
  display:inline-flex; align-items:center; gap:8px;
}
.cred-item svg{
  width:16px; height:16px;
  color:hsl(222,67%,48%);
  flex-shrink:0;
}
.cred-item strong{ color:hsl(222,47%,11%); font-weight:600; }
.cred-sep{ color:hsl(220,13%,75%); font-weight:600; }

/* --- Footer --- */
.site-footer{
  border-top:1px solid hsl(220,13%,87%);
  background:#fff;
  padding:48px 0 24px;
  font-size:14px;
  color:hsl(220,9%,46%);
}
.footer-grid{
  max-width:1280px; margin:0 auto;
  padding:0 40px;
  display:grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap:40px;
}
.footer-col h3{
  font-size:12px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase;
  color:hsl(222,47%,11%);
  margin:0 0 14px;
}
.footer-col ul{
  list-style:none; margin:0; padding:0;
  display:flex; flex-direction:column; gap:10px;
}
.footer-col ul a{
  color:hsl(220,9%,46%);
}
.footer-col ul a:hover{ color:hsl(222,47%,11%); }

.footer-brand .brand-row{
  display:flex; align-items:center; gap:8px;
  font-size:18px; font-weight:700;
  color:hsl(222,47%,11%);
  margin-bottom:10px;
  letter-spacing:-0.01em;
}
.footer-brand .brand-mark{
  display:block; height:24px; width:auto; flex:0 0 auto;
}
.footer-brand .brand-word{ line-height:1; }
.brand-blurb{
  color:hsl(220,9%,46%);
  margin:0 0 18px;
  line-height:1.55;
}
.footer-eyebrow{
  font-size:11px; font-weight:700;
  letter-spacing:0.12em; text-transform:uppercase;
  color:hsl(220,9%,46%);
  margin:0 0 8px;
}
.newsletter-form{ display:flex; gap:6px; }
.newsletter-form input[type="email"]{
  flex:1; min-width:0;
  padding:9px 12px;
  border:1px solid hsl(220,13%,87%);
  border-radius:8px;
  font-size:13px;
  color:hsl(222,47%,11%);
  background:#fff;
}
.newsletter-form input[type="email"]:focus{
  outline:none;
  border-color:hsl(222,67%,48%);
  box-shadow:0 0 0 3px hsla(222,67%,48%,0.12);
}
.newsletter-form button{
  padding:9px 16px;
  background:hsl(222,67%,48%); color:#fff;
  border:none; border-radius:8px;
  font-weight:600; font-size:13px;
  cursor:pointer;
  white-space:nowrap;
}
.newsletter-form button:hover{ background:hsl(222,67%,42%); }
.newsletter-hp{
  position:absolute; left:-9999px; top:-9999px;
  width:0; height:0; overflow:hidden;
}
.newsletter-micro{
  font-size:12px; color:hsl(220,9%,46%);
  margin:8px 0 0;
}
.newsletter-ok{
  font-size:12px; color:hsl(160,84%,29%);
  margin:8px 0 0; font-weight:500;
}

.touch-list{ gap:12px !important; }
.touch-cta{
  display:inline-flex; padding:8px 14px;
  background:hsl(222,67%,48%) !important; color:#fff !important;
  border-radius:8px; font-weight:600; font-size:13px;
}
.touch-cta:hover{ background:hsl(222,67%,42%) !important; }
.touch-ghost{
  display:inline-flex; padding:8px 14px;
  background:hsla(222,67%,48%,0.08) !important;
  color:hsl(222,67%,48%) !important;
  border-radius:8px; font-weight:500; font-size:13px;
}
.touch-ghost:hover{ background:hsla(222,67%,48%,0.14) !important; }
.touch-link{ color:hsl(220,9%,46%); }

.footer-bottom{
  max-width:1280px; margin:36px auto 0;
  padding:18px 40px 0;
  border-top:1px solid hsl(220,13%,87%);
  display:flex; justify-content:space-between;
  align-items:center; flex-wrap:wrap; gap:12px;
  font-size:12px; color:hsl(220,9%,46%);
}
.footer-bottom p{ margin:0; }
.footer-legal{ display:flex; gap:18px; }
.footer-legal a{ color:hsl(220,9%,46%); }
.footer-legal a:hover{ color:hsl(222,47%,11%); }

/* Legacy v8 minimal footer classes (kept for backward compat) */
.footer-inner{
  max-width:1280px; margin:0 auto;
  padding:0 40px;
  display:flex; justify-content:space-between;
  align-items:center; gap:24px;
  flex-wrap:wrap;
}
.footer-links{ display:flex; gap:22px; }
.footer-links a{ color:hsl(220,9%,46%); }
.footer-links a:hover{ color:hsl(222,47%,11%); }

@media (max-width: 960px){
  .footer-grid{ grid-template-columns: 1fr 1fr; gap:32px; }
  .footer-brand{ grid-column: 1 / -1; }
}
@media (max-width: 560px){
  .footer-grid{ grid-template-columns: 1fr; gap:28px; }
  .cred-sep{ display:none; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }
}

/* --- Responsive --- */
@media (max-width: 980px){
  .hero h1{ font-size:40px; }
  .hero-wrap{ padding:24px 20px 56px; }
  .arc-row{ grid-template-columns:repeat(4,1fr); gap:8px; }
  .kpi-strip{ gap:20px; }
  .problems, .toolkit, .cases, .alt-grid, .rw-list, .at-grid{ grid-template-columns:1fr; }
  .marquee-wrap{ margin:0 -20px; }
  .testimonial{ width:290px; }
  .case-row{ grid-template-columns:80px 1fr; }
  .cost-card{ padding:26px 22px 24px; }
  .results{ grid-template-columns:repeat(2,1fr); }
  .fit-grid{ grid-template-columns:1fr; }
  .topbar nav{ display:none; }
  .section-h2{ font-size:24px; }
  .section{ padding:44px 0; }
  .proof-strip{ flex-wrap:wrap; white-space:normal; gap:14px; padding:14px 16px; }
  .proof-strip span, .proof-strip .proof-lead{ white-space:normal; }
  .container{ padding:0 20px; }
  .inbox-grid{ grid-template-columns:1fr; gap:36px; padding:0 20px; }
  .inbox-card{ margin:0 auto; }
  .inbox-copy h2{ font-size:24px; }
  .inbox-stats{ flex-wrap:wrap; gap:24px; }
}
@media (hover: none){
  .bg-dots-spotlight, .bg-cursor-glow{ display:none; }
}
@media (prefers-reduced-motion: reduce){
  .bg-breath-glow,
  .inbox-track,
  .tw-caret,
  .inbox-live-dot::after{ animation:none !important; }
  .tw-caret{ opacity:1; }
}
@media (max-width: 620px){
  .arc-row{ grid-template-columns:repeat(2,1fr); }
  .final-card{ padding:32px 20px; }
  .results{ grid-template-columns:1fr; }
}
