/* Competitors-Followers reskin — composes on top of colors_and_type.css */

.cf-page { background:#fff; color:var(--color-body); }
.cf-container { max-width:1080px; margin:0 auto; padding:0 24px; }
.cf-eyebrow { display:inline-block; color:var(--color-purple); font-size:12px; font-weight:400; text-transform:uppercase; letter-spacing:.14em; font-feature-settings:"ss01"; margin-bottom:16px; }

/* ============== Nav ============== */
.cf-nav {
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.85); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  box-shadow: 0 1px 0 rgba(0,55,112,0.08);
}
.cf-nav-inner { max-width:1080px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; gap:32px; }
.cf-logo { font-family:var(--font-sans); font-size:22px; font-weight:500; letter-spacing:-0.5px; color:#533afd; font-feature-settings:"ss01"; text-decoration:none; }
.cf-logo small { color:var(--color-heading); font-weight:300; }
.cf-nav-links { display:flex; gap:22px; }
.cf-nav-links a { color:var(--color-heading); font-size:14px; font-weight:400; }
.cf-nav-links a:hover { color:#533afd; text-decoration:none; }
.cf-nav-cta { margin-left:auto; display:flex; gap:14px; align-items:center; }

/* ============== Hero ============== */
.cf-hero { position:relative; overflow:hidden; padding:72px 24px 56px; }
.cf-hero-ornament {
  position:absolute; top:-60px; right:-180px; width:680px; height:520px;
  background: radial-gradient(closest-side,#f96bee 0%, rgba(249,107,238,0) 70%),
              radial-gradient(closest-side,#ea2261 0%, rgba(234,34,97,0) 60%),
              radial-gradient(closest-side,#533afd 0%, rgba(83,58,253,0) 70%);
  background-position:30% 30%, 60% 30%, 70% 60%;
  filter:blur(40px); opacity:.5; pointer-events:none;
}
.cf-hero-inner { max-width:1080px; margin:0 auto; position:relative; z-index:1; }
.cf-hero-title { font-size:56px; line-height:1.03; letter-spacing:-1.4px; font-weight:300; color:var(--color-heading); margin:0 0 18px; max-width:840px; font-feature-settings:"ss01"; }
.cf-hero-title em { font-style:normal; color:var(--color-purple); }
.cf-hero-sub { font-size:18px; line-height:1.45; font-weight:300; color:var(--color-body); max-width:600px; margin:0 0 24px; }
.cf-hero-cta { display:flex; gap:12px; margin-bottom:48px; align-items:center; }
.cf-hero-meta { display:flex; gap:18px; align-items:center; color:var(--color-body); font-size:13px; font-weight:300; font-feature-settings:"ss01"; }
.cf-hero-meta strong { color:var(--color-heading); font-weight:400; }

/* Followers preview table */
.cf-table {
  background:#fff; border:1px solid var(--color-border); border-radius:8px; overflow:hidden;
  box-shadow: rgba(50,50,93,0.25) 0 30px 45px -30px, rgba(0,0,0,0.1) 0 18px 36px -18px;
}
.cf-table-head, .cf-table-row {
  display:grid;
  grid-template-columns: 1fr 1fr 1.6fr 1.4fr 1.3fr 1.1fr 1fr;
  align-items:center;
  padding:10px 16px; gap:12px;
  font-size:12px; font-weight:300; font-feature-settings:"ss01";
}
.cf-table-head { background:#f6f9fc; color:var(--color-body); text-transform:uppercase; letter-spacing:.06em; font-size:10px; font-weight:400; border-bottom:1px solid var(--color-border); }
.cf-table-row { color:var(--color-heading); border-top:1px solid var(--color-border); }
.cf-table-row:first-child { border-top:none; }
.cf-table-row .mono { font-family:var(--font-mono); font-size:11px; color:var(--color-body); }

.cf-table-toolbar { display:flex; align-items:center; gap:10px; padding:10px 16px; border-bottom:1px solid var(--color-border); background:#fff; }
.cf-table-tab { padding:4px 10px; font-size:12px; color:var(--color-body); border-radius:4px; cursor:pointer; }
.cf-table-tab.active { background:rgba(83,58,253,0.08); color:#533afd; font-weight:400; }
.cf-table-toolbar .right { margin-left:auto; display:flex; gap:8px; align-items:center; color:var(--color-body); font-size:12px; }

/* ============== Trusted by ============== */
.cf-trust { padding:64px 24px; }
.cf-trust h4 { text-align:center; font-size:22px; line-height:1.10; letter-spacing:-0.22px; font-weight:300; color:var(--color-heading); margin:0 0 24px; }
.cf-trust-tabs { display:flex; gap:6px; justify-content:center; margin-bottom:32px; }
.cf-trust-tab { padding:6px 14px; border:1px solid var(--color-border); background:#fff; font-size:13px; color:var(--color-heading); border-radius:4px; cursor:pointer; font-feature-settings:"ss01"; }
.cf-trust-tab.active { background:#533afd; color:#fff; border-color:#533afd; }
.cf-trust-grid {
  display:grid; grid-template-columns:repeat(6, 1fr); gap:1px;
  background:var(--color-border); border:1px solid var(--color-border); border-radius:6px; overflow:hidden;
}
.cf-trust-cell { background:#fff; padding:18px 20px; display:flex; align-items:center; justify-content:center; color:var(--color-label); font-size:14px; font-weight:400; letter-spacing:-0.2px; font-feature-settings:"ss01"; }

/* ============== Why it works ============== */
.cf-why { padding:80px 24px; background:#fff; }
.cf-section-head { text-align:center; max-width:680px; margin:0 auto 40px; }
.cf-section-head h3 { font-size:32px; line-height:1.10; letter-spacing:-0.64px; font-weight:300; color:var(--color-heading); margin:0 0 12px; }
.cf-section-head p { font-size:16px; color:var(--color-body); margin:0; }
.cf-why-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:18px; }
.cf-why-card { background:#fff; border:1px solid var(--color-border); border-radius:6px; padding:24px; transition: box-shadow 200ms ease-out; }
.cf-why-card:hover { box-shadow: rgba(50,50,93,0.25) 0 30px 45px -30px, rgba(0,0,0,0.1) 0 18px 36px -18px; }
.cf-why-icon { width:40px; height:40px; border-radius:6px; background:rgba(83,58,253,0.08); color:#533afd; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.cf-why-card h5 { font-size:20px; line-height:1.15; letter-spacing:-0.2px; font-weight:300; color:var(--color-heading); margin:0 0 6px; }
.cf-why-card p { font-size:14px; line-height:1.5; color:var(--color-body); margin:0; font-weight:300; font-feature-settings:"ss01"; }

/* ============== Process ============== */
.cf-process { padding:80px 24px; background:#fff; }
.cf-process-grid { display:grid; grid-template-columns: 1fr 1.1fr; gap:48px; }
.cf-step { display:grid; grid-template-columns: 36px 1fr; gap:14px; padding:14px 0; border-top:1px solid var(--color-border); cursor:pointer; }
.cf-step:first-child { border-top:none; }
.cf-step-num { width:28px; height:28px; border-radius:4px; background:#fff; color:var(--color-body); border:1px solid var(--color-border); font-size:13px; font-weight:400; display:flex; align-items:center; justify-content:center; font-feature-settings:"ss01"; transition: background 150ms; }
.cf-step.active .cf-step-num { background:#533afd; color:#fff; border-color:#533afd; }
.cf-step h5 { font-size:16px; font-weight:400; color:var(--color-heading); margin:4px 0 4px; font-feature-settings:"ss01"; line-height:1.2; }
.cf-step.active h5 { color:#533afd; }
.cf-step p { font-size:13px; color:var(--color-body); margin:0; font-weight:300; font-feature-settings:"ss01"; line-height:1.45; }

.cf-step-card {
  background:#fff; border:1px solid var(--color-border); border-radius:8px; padding:24px;
  box-shadow: rgba(50,50,93,0.25) 0 30px 45px -30px, rgba(0,0,0,0.1) 0 18px 36px -18px;
  align-self:flex-start; min-height:380px;
}
.cf-step-card-h { color:var(--color-body); font-size:11px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:10px; font-feature-settings:"ss01"; }
.cf-step-card-title { color:var(--color-heading); font-size:18px; font-weight:300; letter-spacing:-0.18px; margin-bottom:14px; }
.cf-url { font-family:var(--font-mono); font-size:12px; padding:10px 12px; border:1px solid var(--color-border); border-radius:4px; color:var(--color-heading); background:#f6f9fc; margin-bottom:14px; }
.cf-url b { color:#533afd; font-weight:700; }
.cf-progress { height:6px; background:#eef0fa; border-radius:3px; overflow:hidden; margin:10px 0 8px; }
.cf-progress-fill { height:100%; background:#533afd; border-radius:3px; }
.cf-progress-row { display:flex; justify-content:space-between; font-size:12px; color:var(--color-body); font-feature-settings:"tnum"; }
.cf-csv { background:#0d253d; color:#c5d4f3; font-family:var(--font-mono); font-size:11px; padding:14px; border-radius:6px; line-height:1.8; margin-bottom:14px; }
.cf-csv .h { color:#fff; }
.cf-pills-row { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.cf-pill-chip { padding:4px 10px; border-radius:4px; font-size:12px; border:1px solid var(--color-border); color:var(--color-heading); }
.cf-pill-chip.purple { background:rgba(83,58,253,0.08); border-color:#d6d9fc; color:#533afd; }
.cf-pill-chip.green { background:rgba(21,190,83,0.10); border-color:rgba(21,190,83,0.30); color:#108c3d; }
.cf-pill-chip.magenta { background:#ffd7ef; border-color:#ffd7ef; color:#a4156a; }
.cf-filter-row { display:flex; align-items:baseline; gap:8px; padding:10px 0; border-top:1px solid var(--color-border); font-size:13px; }
.cf-filter-row:first-child { border-top:none; }
.cf-filter-row span:first-child { color:var(--color-body); width:130px; }
.cf-filter-row span:last-child { color:var(--color-heading); font-weight:400; }
.cf-metric-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.cf-metric { padding:18px; border:1px solid var(--color-border); border-radius:6px; }
.cf-metric .v { font-size:32px; font-weight:300; letter-spacing:-0.64px; color:var(--color-heading); font-feature-settings:"tnum"; }
.cf-metric .l { font-size:11px; color:var(--color-body); text-transform:uppercase; letter-spacing:.08em; margin-top:4px; font-feature-settings:"ss01"; }

/* ============== Data fields ============== */
.cf-fields { padding:80px 24px; background:#1c1e54; color:#fff; }
.cf-fields .cf-section-head h3 { color:#fff; }
.cf-fields .cf-section-head p { color:rgba(255,255,255,0.7); }
.cf-fields .cf-eyebrow { color:#b9b9f9; }
.cf-fields-grid { display:grid; grid-template-columns: 1fr 1fr 1.6fr; gap:18px; }
.cf-field-col { display:flex; flex-direction:column; gap:10px; }
.cf-field-pill { background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.10); padding:14px 16px; border-radius:6px; display:flex; align-items:center; gap:10px; }
.cf-field-pill i { color:#b9b9f9; }
.cf-field-pill span { color:#fff; font-size:14px; font-weight:300; font-feature-settings:"ss01"; }
.cf-live { background:#fff; border-radius:8px; overflow:hidden; box-shadow: rgba(3,3,39,0.25) 0 14px 21px -14px, rgba(0,0,0,0.10) 0 8px 17px -8px; color:var(--color-heading); }
.cf-live-head { display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid var(--color-border); background:#f6f9fc; }
.cf-live-head .dot { width:8px; height:8px; border-radius:50%; background:#15be53; box-shadow:0 0 0 4px rgba(21,190,83,0.18); }
.cf-live-head .ttl { font-size:13px; font-weight:400; }
.cf-live-head .right { margin-left:auto; }
.cf-live-table { padding:6px 0; }
.cf-live-row { display:grid; grid-template-columns: 1.2fr 1.2fr 1.2fr 1.6fr; padding:8px 16px; gap:12px; font-size:12px; font-weight:300; font-feature-settings:"ss01"; }
.cf-live-row.h { color:var(--color-body); text-transform:uppercase; letter-spacing:.06em; font-size:10px; font-weight:400; border-bottom:1px solid var(--color-border); padding-bottom:10px; margin-bottom:4px; }
.cf-live-row .mono { font-family:var(--font-mono); font-size:11px; color:var(--color-body); }
.cf-stats-row { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:24px; }
.cf-stat { padding:18px 0; }
.cf-stat .v { font-size:40px; font-weight:300; letter-spacing:-0.8px; color:#fff; font-feature-settings:"tnum"; line-height:1; }
.cf-stat .l { font-size:11px; color:#b9b9f9; text-transform:uppercase; letter-spacing:.10em; margin-top:8px; font-feature-settings:"ss01"; }
.cf-stat + .cf-stat { border-left:1px solid rgba(255,255,255,0.10); padding-left:24px; }

/* ============== Pricing ============== */
.cf-pricing { padding:80px 24px; }
.cf-pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:stretch; }
.cf-tier { background:#fff; border:1px solid var(--color-border); border-radius:6px; padding:28px; display:flex; flex-direction:column; }
.cf-tier.featured { border-top:3px solid #533afd; box-shadow: rgba(50,50,93,0.25) 0 30px 45px -30px, rgba(0,0,0,0.1) 0 18px 36px -18px; }
.cf-tier-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.cf-tier-name { font-size:18px; font-weight:400; color:var(--color-heading); font-feature-settings:"ss01"; }
.cf-tier-tag { font-size:10px; padding:2px 6px; border-radius:4px; background:rgba(83,58,253,0.08); color:#533afd; border:1px solid #d6d9fc; }
.cf-tier-price { font-size:48px; line-height:1; font-weight:300; letter-spacing:-0.96px; color:var(--color-heading); font-feature-settings:"tnum"; margin-bottom:6px; }
.cf-tier-unit { font-size:12px; color:var(--color-body); margin-bottom:18px; }
.cf-tier-list { list-style:none; padding:0; margin:0 0 22px; display:flex; flex-direction:column; gap:8px; }
.cf-tier-list li { display:flex; gap:8px; align-items:flex-start; font-size:14px; color:var(--color-body); font-weight:300; font-feature-settings:"ss01"; }
.cf-tier-list i.check { color:#533afd; flex-shrink:0; margin-top:2px; }
.cf-tier-list i.minus { color:var(--color-body); flex-shrink:0; margin-top:2px; opacity:.5; }
.cf-tier .btn { margin-top:auto; }

/* ============== Testimonials ============== */
.cf-test { padding:80px 24px; background:#f6f9fc; }
.cf-test-grid { display:grid; grid-template-columns: 1fr 1.4fr 1fr; gap:18px; }
.cf-test-card { background:#fff; border:1px solid var(--color-border); border-radius:6px; padding:24px; display:flex; flex-direction:column; gap:14px; }
.cf-test-card.featured { box-shadow: rgba(50,50,93,0.25) 0 30px 45px -30px, rgba(0,0,0,0.1) 0 18px 36px -18px; }
.cf-test-quote { font-size:18px; line-height:1.45; color:var(--color-heading); font-weight:300; font-feature-settings:"ss01"; }
.cf-test-quote b { color:var(--color-heading); font-weight:400; }
.cf-test-author { display:flex; align-items:center; gap:12px; margin-top:auto; }
.cf-avatar { width:40px; height:40px; border-radius:50%; background:linear-gradient(135deg,#533afd,#f96bee); flex-shrink:0; }
.cf-test-name { color:var(--color-heading); font-size:14px; font-weight:400; font-feature-settings:"ss01"; }
.cf-test-role { color:var(--color-body); font-size:12px; font-weight:300; }
.cf-test-mini { display:flex; flex-direction:column; gap:6px; }
.cf-test-mini h6 { font-size:14px; font-weight:300; color:var(--color-heading); margin:0; }

/* ============== FAQ ============== */
.cf-faq { padding:80px 24px; }
.cf-faq-grid { display:grid; grid-template-columns: 1fr 1.6fr; gap:48px; align-items:start; }
.cf-faq-h h3 { font-size:32px; line-height:1.10; letter-spacing:-0.64px; font-weight:300; color:var(--color-heading); margin:0 0 14px; }
.cf-faq-h a { color:#533afd; font-size:14px; }
.cf-faq-list { display:flex; flex-direction:column; gap:0; border-top:1px solid var(--color-border); }
.cf-faq-item { border-bottom:1px solid var(--color-border); }
.cf-faq-q { display:flex; align-items:center; justify-content:space-between; padding:18px 0; cursor:pointer; gap:14px; }
.cf-faq-q span { color:var(--color-heading); font-size:16px; font-weight:400; font-feature-settings:"ss01"; }
.cf-faq-q i { color:var(--color-body); transition: transform 200ms; flex-shrink:0; }
.cf-faq-item.open .cf-faq-q i { transform: rotate(45deg); color:#533afd; }
.cf-faq-a { max-height:0; overflow:hidden; transition: max-height 240ms ease-out; }
.cf-faq-item.open .cf-faq-a { max-height:300px; }
.cf-faq-a p { font-size:14px; color:var(--color-body); padding:0 0 18px; margin:0; line-height:1.5; max-width:560px; font-weight:300; font-feature-settings:"ss01"; }

/* ============== Final CTA (dark) ============== */
.cf-final { padding:96px 24px; background:#1c1e54; }
.cf-final-inner { max-width:1080px; margin:0 auto; display:grid; grid-template-columns: 1fr 1fr; gap:48px; align-items:center; }
.cf-final h3 { color:#fff; font-size:40px; line-height:1.10; letter-spacing:-0.8px; font-weight:300; margin:14px 0 24px; }
.cf-final h3 em { font-style:normal; color:#b9b9f9; }
.cf-final-tags { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.cf-final-tag { padding:5px 10px; border:1px solid rgba(255,255,255,0.18); border-radius:4px; color:#fff; font-size:12px; font-weight:300; font-feature-settings:"ss01"; }
.cf-final-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:28px; }
.cf-final-stat { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.10); border-radius:6px; padding:14px 16px; }
.cf-final-stat .l { color:#b9b9f9; font-size:11px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; font-feature-settings:"ss01"; }
.cf-final-stat .v { color:#fff; font-size:24px; font-weight:300; letter-spacing:-0.36px; font-feature-settings:"tnum"; }
.cf-final-stat .d { color:#15be53; font-size:11px; margin-top:4px; }

.cf-final-viz { position:relative; height:380px; border-radius:8px; overflow:hidden; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.10); padding:20px; display:flex; flex-direction:column; gap:10px; }
.cf-final-viz .bar { height:18px; border-radius:3px; background:linear-gradient(90deg,#533afd,#665efd); }
.cf-final-viz .bar.b2 { width:78%; opacity:.85; }
.cf-final-viz .bar.b3 { width:62%; background:linear-gradient(90deg,#f96bee,#533afd); }
.cf-final-viz .bar.b4 { width:50%; opacity:.7; }
.cf-final-viz .bar.b5 { width:88%; }
.cf-final-viz .bar.b6 { width:35%; opacity:.6; }
.cf-final-viz .bar.b7 { width:72%; background:linear-gradient(90deg,#ea2261,#f96bee); }
.cf-final-viz .bar.b8 { width:48%; opacity:.5; }
.cf-final-viz .bar.b9 { width:64%; opacity:.4; }
.cf-final-viz .lbl { display:flex; justify-content:space-between; color:rgba(255,255,255,0.6); font-size:11px; font-feature-settings:"ss01,tnum"; }

/* ============== Footer ============== */
.cf-foot { background:#0d253d; color:#fff; padding:64px 24px 24px; }
.cf-foot-inner { max-width:1080px; margin:0 auto; display:grid; grid-template-columns:1fr 2fr; gap:48px; }
.cf-foot p.tag { color:rgba(255,255,255,0.6); font-size:14px; max-width:280px; margin-top:14px; font-weight:300; }
.cf-foot-cols { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.cf-foot-h { color:rgba(255,255,255,0.5); font-size:11px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:12px; font-feature-settings:"ss01"; }
.cf-foot-row { display:flex; align-items:center; gap:10px; color:rgba(255,255,255,0.85); font-size:14px; margin-bottom:8px; font-weight:300; font-feature-settings:"ss01"; }
.cf-foot-row i { color:#b9b9f9; }
.cf-foot-base { max-width:1080px; margin:48px auto 0; padding-top:24px; border-top:1px solid rgba(255,255,255,0.10); display:flex; gap:24px; color:rgba(255,255,255,0.5); font-size:12px; }
.cf-foot-base a { color:rgba(255,255,255,0.7); font-size:12px; }
.cf-foot-base .spacer { flex:1; }

/* ============== Mobile menu ============== */
.cf-nav-toggle { display:none; background:transparent; border:1px solid var(--color-border); border-radius:6px; padding:6px; cursor:pointer; color:var(--color-heading); margin-left:auto; }
.cf-mobile-menu { display:none; }
.cf-mobile-menu.open { display:flex; flex-direction:column; gap:14px; padding:18px 24px 24px; border-top:1px solid var(--color-border); background:#fff; }
.cf-mobile-menu a { color:var(--color-heading); font-size:16px; padding:6px 0; }
.cf-mobile-menu .cf-mobile-cta { display:flex; flex-direction:column; gap:10px; margin-top:8px; }

/* ============== Tablet ============== */
@media (max-width: 1024px) {
  .cf-container, .cf-hero-inner, .cf-final-inner, .cf-foot-inner, .cf-nav-inner { padding-left:20px; padding-right:20px; }
  .cf-trust-grid { grid-template-columns:repeat(4, 1fr); }
  .cf-why-grid { grid-template-columns:repeat(2, 1fr); }
  .cf-pricing-grid { grid-template-columns:1fr; max-width:520px; margin:0 auto; }
  .cf-test-grid { grid-template-columns:1fr; max-width:560px; margin:0 auto; }
  .cf-fields-grid { grid-template-columns:1fr 1fr; }
  .cf-fields-grid > .cf-live { grid-column:1 / -1; }
  .cf-process-grid, .cf-faq-grid, .cf-final-inner, .cf-foot-inner { grid-template-columns:1fr; gap:32px; }
  .cf-hero-title { font-size:44px; letter-spacing:-1px; }
}

/* ============== Mobile ============== */
@media (max-width: 720px) {
  /* nav: collapse to hamburger */
  .cf-nav-inner { padding:12px 16px; gap:12px; }
  .cf-nav-links { display:none; }
  .cf-nav-cta { display:none; }
  .cf-nav-toggle { display:flex; align-items:center; justify-content:center; }
  .cf-logo { font-size:18px; }

  /* spacing */
  .cf-container, .cf-hero-inner, .cf-final-inner, .cf-foot-inner { padding-left:16px; padding-right:16px; }
  .cf-hero { padding:40px 16px 32px; }
  .cf-trust { padding:48px 16px; }
  .cf-why, .cf-process, .cf-fields, .cf-pricing, .cf-test, .cf-faq { padding:56px 16px; }
  .cf-final { padding:64px 16px; }
  .cf-foot { padding:48px 16px 24px; }

  /* hero */
  .cf-hero-ornament { width:420px; height:340px; right:-160px; top:-60px; opacity:.35; }
  .cf-hero-title { font-size:30px; line-height:1.08; letter-spacing:-0.6px; }
  .cf-hero-sub { font-size:15px; }
  .cf-hero-cta { flex-direction:column; align-items:stretch; gap:10px; margin-bottom:32px; }
  .cf-hero-cta .btn { width:100%; justify-content:center; }
  .cf-hero-meta { justify-content:flex-start; font-size:12px; }

  /* hero table -> horizontal scroll */
  .cf-table { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .cf-table-toolbar { min-width:640px; }
  .cf-table-head, .cf-table-row { min-width:640px; }
  .cf-table-toolbar .right { gap:6px; }
  .cf-table-toolbar .right > *:not(.badge) { display:none; }

  /* sections head */
  .cf-section-head h3 { font-size:26px; letter-spacing:-0.4px; }
  .cf-section-head p { font-size:14px; }

  /* trust */
  .cf-trust h4 { font-size:18px; }
  .cf-trust-grid { grid-template-columns:repeat(2, 1fr); }
  .cf-trust-cell { padding:14px 10px; font-size:13px; }

  /* why */
  .cf-why-grid { grid-template-columns:1fr; gap:12px; }
  .cf-why-card { padding:20px; }

  /* process */
  .cf-process-grid { grid-template-columns:1fr; gap:24px; }
  .cf-step { grid-template-columns:32px 1fr; gap:10px; padding:12px 0; }
  .cf-step-card { padding:18px; min-height:auto; }
  .cf-metric-row { grid-template-columns:1fr 1fr; gap:10px; }
  .cf-metric { padding:14px; }
  .cf-metric .v { font-size:24px; }
  .cf-pills-row { gap:6px; }

  /* fields (dark) */
  .cf-fields-grid { grid-template-columns:1fr; gap:12px; }
  .cf-fields-grid > .cf-live { grid-column:auto; }
  .cf-live-table { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .cf-live-row { min-width:560px; }
  .cf-stats-row { grid-template-columns:1fr; gap:0; margin-top:18px; border-top:1px solid rgba(255,255,255,0.10); }
  .cf-stat { padding:18px 0; border-top:1px solid rgba(255,255,255,0.10); }
  .cf-stat:first-child { border-top:none; }
  .cf-stat + .cf-stat { border-left:none; padding-left:0; }
  .cf-stat .v { font-size:32px; }

  /* pricing */
  .cf-pricing-grid { grid-template-columns:1fr; max-width:none; }
  .cf-tier { padding:22px; }
  .cf-tier-price { font-size:40px; }

  /* testimonials */
  .cf-test-grid { grid-template-columns:1fr; gap:12px; max-width:none; }
  .cf-test-card { padding:20px; }
  .cf-test-quote { font-size:16px; }

  /* faq */
  .cf-faq-grid { grid-template-columns:1fr; gap:24px; }
  .cf-faq-h h3 { font-size:24px; }
  .cf-faq-q span { font-size:14px; }

  /* final cta */
  .cf-final-inner { grid-template-columns:1fr; gap:32px; }
  .cf-final h3 { font-size:28px; letter-spacing:-0.4px; }
  .cf-final-stats { grid-template-columns:1fr; gap:8px; }
  .cf-final-viz { height:280px; padding:16px; }
  .cf-final .cf-hero-cta, .cf-final > div > div:last-child { flex-direction:column; }

  /* footer */
  .cf-foot-inner { grid-template-columns:1fr; gap:32px; }
  .cf-foot-cols { grid-template-columns:1fr; gap:24px; }
  .cf-foot-base { flex-direction:column; gap:8px; align-items:flex-start; }
  .cf-foot-base .spacer { display:none; }
}

@media (max-width: 380px) {
  .cf-hero-title { font-size:26px; }
  .cf-section-head h3 { font-size:22px; }
  .cf-tier-price { font-size:32px; }
}
