:root{
  --navy:#12166D;
  --blue:#678ED0;
  --white:#FFFFFF;
  --ink:#171B3D;
  --ink-soft:#4A4F72;
  --mist:#F5F7FC;
  --line:#DFE4F3;
  --cta:#3454C9;
  --cta-dark:#25409E;
  --sky:#EAF0FB;
  --gradient: linear-gradient(135deg, #7C9FDC 0%, #678ED0 38%, #12166D 100%);
  --radius-sm:8px;
  --radius-lg:12px;
  --font-head:'Manrope', -apple-system, sans-serif;
  --font-body:'Inter', -apple-system, sans-serif;
  --font-data:'Space Grotesk', var(--font-head);
  --maxw:1160px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{ font-family:var(--font-body); color:var(--ink); background:var(--white); line-height:1.65; font-size:16px; }
h1,h2,h3{ font-family:var(--font-head); font-weight:600; letter-spacing:-0.015em; color:var(--navy); }
a{ color:inherit; }
img{ max-width:100%; display:block; }
.wrap{ max-width:var(--maxw); margin:0 auto; padding:0 32px; }
.btn{ display:inline-flex; align-items:center; gap:8px; font-family:var(--font-head); font-weight:700; font-size:14.5px; padding:13px 26px; border-radius:var(--radius-sm); text-decoration:none; border:none; cursor:pointer; transition:.15s; white-space:nowrap; }
.btn-primary{ background:var(--cta); color:var(--white); }
.btn-primary:hover{ background:var(--cta-dark); }
a:focus-visible, button:focus-visible, summary:focus-visible{ outline:2px solid var(--cta); outline-offset:3px; }

header.site{
  position:sticky; top:0; z-index:1000;
  background:rgba(255,255,255,.92); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
header.site .wrap{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 32px; flex-wrap:wrap; }
.logo{ font-family:var(--font-head); font-weight:800; font-size:22px; color:var(--navy); letter-spacing:-0.015em; text-decoration:none; }
.site-nav{ display:flex; align-items:center; gap:22px; }
.nav-link{ font-family:var(--font-head); font-weight:600; font-size:15px; color:var(--navy); text-decoration:none; }
.nav-link:hover{ color:var(--cta); }
.nav-link.is-active{ color:var(--cta); box-shadow:inset 0 -2px 0 var(--cta); padding-bottom:2px; }

.kicker{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--blue); font-weight:700; margin-bottom:12px; font-family:var(--font-head); }

.page{ padding:56px 0 72px; }
.page h1{ font-size:42px; line-height:1.15; font-weight:700; max-width:740px; }
.lede{ font-size:17px; color:var(--ink-soft); max-width:640px; margin-top:14px; }

.crumbs{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:13px; color:var(--ink-soft); margin-bottom:18px; }
.crumbs a{ color:var(--cta); text-decoration:none; font-weight:600; }
.crumbs a:hover{ text-decoration:underline; }
.crumbs [aria-current="page"]{ color:var(--ink); font-weight:600; }

.feature{
  display:block; margin-top:36px; background:var(--white); border:1px solid var(--line);
  border-radius:var(--radius-lg); padding:32px 30px; text-decoration:none; max-width:760px;
}
.feature:hover{ border-color:var(--blue); }
.feature h2{ font-size:28px; line-height:1.25; margin:4px 0 12px; }
.feature .excerpt{ color:var(--ink-soft); font-size:16px; max-width:620px; }
.byline{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; font-size:13.5px; color:var(--ink-soft); }
.avatar{ width:28px; height:28px; border-radius:50%; background:var(--sky); border:1px solid var(--line); display:inline-block; }

.article{ max-width:760px; margin:0 auto; padding:48px 32px 24px; }
.article h1{ font-size:40px; line-height:1.15; font-weight:700; margin:0 0 16px; }
.article .byline{ margin:0 0 22px; }
.article h2{ font-size:28px; line-height:1.25; margin:40px 0 12px; scroll-margin-top:84px; }
.article h3{ font-size:18px; line-height:1.35; margin:26px 0 8px; scroll-margin-top:84px; }
.article p{ color:var(--ink-soft); margin:0 0 14px; }
.article a{ color:var(--cta); font-weight:600; }
.article a:hover{ text-decoration:underline; }
.article a.btn{ color:var(--white); text-decoration:none; font-weight:700; }
.article a.btn:hover{ color:var(--white); text-decoration:none; background:var(--cta-dark); }

.quick{
  background:var(--sky); border-radius:var(--radius-lg); padding:22px 24px; margin:8px 0 22px;
}
.quick .label{
  font-family:var(--font-head); font-size:11px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--blue); font-weight:700; margin-bottom:8px;
}
.quick p{ color:var(--ink); margin:0; }

.toc{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 8px; }
.toc .label{
  width:100%; font-family:var(--font-head); font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--blue); font-weight:700; margin-bottom:2px;
}
.toc a{
  text-decoration:none; border:1px solid var(--line); background:var(--white); border-radius:999px;
  padding:6px 12px; font-size:13px; color:var(--navy); font-family:var(--font-head); font-weight:600;
}
.toc a:hover{ border-color:var(--blue); background:var(--sky); }

.burden{
  background:var(--mist); border:1px solid var(--line); border-radius:var(--radius-lg);
  padding:8px 22px; margin:8px 0 16px;
}
.burden ul{ list-style:none; }
.burden li{
  position:relative; padding:12px 0 12px 16px; color:var(--ink-soft); font-size:15.5px;
  border-bottom:1px solid var(--line);
}
.burden li:last-child{ border-bottom:none; }
.burden li::before{
  content:""; position:absolute; left:0; top:20px; width:6px; height:6px; border-radius:50%; background:var(--navy);
}
.burden strong{ color:var(--navy); font-family:var(--font-head); font-weight:700; }

.stat{
  display:flex; gap:18px; align-items:center; border:1px solid var(--line); border-radius:var(--radius-lg);
  padding:18px 20px; margin:8px 0 16px; background:var(--white);
}
.stat .num{ font-family:var(--font-data); font-weight:700; font-size:40px; color:var(--navy); line-height:1; letter-spacing:-0.03em; }
.stat .copy{ min-width:0; }
.stat .lbl{ font-family:var(--font-head); font-weight:700; color:var(--navy); font-size:15px; }
.stat .desc{ color:var(--ink-soft); font-size:14px; margin-top:2px; }
.case-label{ margin-bottom:0; }

.table-scroll{
  overflow-x:auto; margin:8px 0 18px;
  border:1px solid var(--line); border-radius:var(--radius-lg);
  -webkit-overflow-scrolling:touch;
}
table.compare{ width:100%; border-collapse:collapse; min-width:520px; font-size:14.5px; }
table.compare caption{
  caption-side:bottom; text-align:left; padding:10px 14px 12px;
  color:var(--ink-soft); font-size:12.5px; font-weight:400;
}
table.compare th, table.compare td{
  text-align:left; vertical-align:top; padding:12px 14px;
  border-bottom:1px solid var(--line); font-weight:400;
}
table.compare thead th{
  font-family:var(--font-head); font-weight:700; color:var(--navy);
  background:var(--mist); font-size:13.5px;
}
table.compare tbody th{
  font-family:var(--font-head); font-weight:700; color:var(--navy);
  font-size:14px; width:28%; background:var(--white);
}
table.compare td{ color:var(--ink-soft); }
table.compare tr:last-child th, table.compare tr:last-child td{ border-bottom:none; }
.article table.compare a{ font-weight:600; }
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
@media (max-width:560px){
  .table-scroll{ overflow:visible; border:none; }
  table.compare{ min-width:0; }
  table.compare caption{ display:block; }
  table.compare thead{
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
  }
  table.compare, table.compare tbody, table.compare tr, table.compare th, table.compare td{
    display:block; width:auto;
  }
  table.compare tr{
    border:1px solid var(--line); border-radius:var(--radius-lg);
    margin:0 0 12px; overflow:hidden;
  }
  table.compare tbody th{
    width:auto; background:var(--mist); border-bottom:1px solid var(--line);
  }
  table.compare td{ border-bottom:1px solid var(--line); }
  table.compare td::before{
    content:""; display:block; font-family:var(--font-head); font-weight:700;
    color:var(--navy); font-size:11px; letter-spacing:.06em; text-transform:uppercase;
    margin-bottom:4px;
  }
  table.compare td:nth-child(2)::before{ content:"Appointment setter"; }
  table.compare td:nth-child(3)::before{ content:"Done-for-you reactivation"; }
  table.compare tr:last-child th,
  table.compare tr:last-child td{ border-bottom:1px solid var(--line); }
  table.compare tr td:last-child{ border-bottom:none; }
}

.cta-band{
  background:var(--gradient); color:var(--white); border-radius:var(--radius-lg);
  padding:36px 32px; margin:28px 0 8px;
}
.cta-band h2{ color:var(--white); font-size:28px; line-height:1.25; margin:0 0 10px; max-width:520px; }
.cta-band p{ color:#E3E9FA; margin:0 0 18px; max-width:520px; }
.cta-band .url{ display:block; width:fit-content; margin-top:14px; color:#D5DEF8; font-size:13.5px; font-weight:600; text-decoration:none; }
.cta-band .url:hover{ color:var(--white); }
.fineprint{ font-size:12.5px; color:#B9C6EC; margin-top:14px; line-height:1.6; }
.inline-cta{ margin:8px 0 18px; }

.faq{ margin-top:8px; }
.faq details{ border-bottom:1px solid var(--line); padding:18px 0; }
.faq summary{
  font-family:var(--font-head); font-weight:600; font-size:16px; color:var(--navy);
  cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary .plus{ font-size:20px; color:var(--blue); font-weight:400; flex-shrink:0; }
.faq details[open] summary .plus{ transform:rotate(45deg); }
.faq details p{ margin-top:12px; }

footer{ background:var(--navy); color:#AFC0EA; padding:44px 0 0; margin-top:24px; }
footer .wrap{ display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:20px; padding-bottom:32px; }
footer .f-logo{ font-family:var(--font-head); font-weight:800; font-size:18px; color:var(--white); text-decoration:none; }
footer .f-contact{ display:block; margin-top:14px; font-size:13.5px; font-weight:600; color:var(--white); text-decoration:none; }
footer .f-legal{ display:flex; gap:18px; align-items:center; font-size:12.5px; margin-top:10px; flex-wrap:wrap; }
footer .f-legal a{ text-decoration:none; color:#9FB0DE; }
footer .f-legal a:hover{ color:var(--white); }
footer .f-social{ display:flex; gap:14px; }
footer .f-social a{ width:36px; height:36px; border:1.3px solid #3B4590; border-radius:50%; display:flex; align-items:center; justify-content:center; }
footer .f-social svg{ width:16px; height:16px; stroke:#C6D2F0; fill:none; }
footer .f-legalbar{
  border-top:1px solid #2A2F72; padding:18px 32px; text-align:center;
  font-family:var(--font-body); font-size:11.5px; line-height:1.6; color:#7C8FC4;
}
footer .f-legalbar a{ color:#9FB0DE; text-decoration:none; }
footer .f-legalbar a:hover{ color:var(--white); }

@media (max-width:980px){
  .page h1, .article h1{ font-size:32px; }
  .feature h2, .article h2, .cta-band h2{ font-size:24px; }
}
@media (max-width:560px){
  .wrap{ padding:0 20px; }
  header.site .wrap{ padding:14px 16px; }
  .site-nav{ gap:12px; }
  header.site .btn{ padding:11px 14px; font-size:13px; }
  .page{ padding:36px 0 48px; }
  .page h1, .article h1{ font-size:28px; }
  .article{ padding:32px 20px 12px; }
  .feature, .quick, .cta-band{ padding:22px 18px; }
  .stat{ align-items:flex-start; }
  .stat .num{ font-size:34px; }
  footer .wrap{ flex-direction:column; align-items:flex-start; }
  footer .f-legalbar{ padding:18px 20px; }
}
