/* Spade Design v2.0 — minor refinement layer (mockup only, not published)
   Keeps Beaver Builder layout, Roboto headings, Public Sans body, purple→blue brand gradient. */
:root{
  --sv-purple: rgb(104,12,205);
  --sv-blue: rgb(8,152,216);
  --sv-ink: #15121f;
  --sv-text: #2b2b33;
  --sv-muted: #5d5a6b;
  --sv-line: #e6e2f0;
  --sv-soft: #f6f4fb;
  --sv-grad: linear-gradient(90deg, var(--sv-purple) 0%, var(--sv-blue) 100%);
  --sv-radius: 12px;
  --sv-shadow: 0 1px 2px rgba(21,18,31,.06), 0 8px 24px rgba(21,18,31,.07);
}
/* 1. Content always visible (no blank sections while fade-in scripts wait) */
.fl-animation{opacity:1!important;animation:none!important;transform:none!important}

/* 2. Headings: tighter, darker, consistent rhythm */
.fl-builder-content-primary h1,.fl-builder-content-primary h2,.fl-post-content h1,.fl-post-content h2,.fl-content h1,.fl-content h2{letter-spacing:-.01em;line-height:1.15}
.fl-builder-content-primary h1:not([style*="color"]),.fl-builder-content-primary h2:not([style*="color"]){color:var(--sv-ink)}
.fl-builder-content-primary p,.fl-post-content p{line-height:1.65}

/* 3. Buttons: same gradient, rounded, gentle lift */
.fl-builder-content-primary a.fl-button,.fl-builder-content-primary .pp-button,.woocommerce a.button,.woocommerce button.button,.gform_button,.sv-btn{
  border-radius:8px!important;box-shadow:0 2px 0 rgba(0,0,0,.04),0 6px 16px rgba(104,12,205,.18)!important;transition:transform .15s ease,box-shadow .15s ease!important;letter-spacing:.02em}
.fl-builder-content-primary a.fl-button:hover,.sv-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(104,12,205,.25)!important}

/* 4. Page title band for interior pages */
.sv-band{background:var(--sv-grad);color:#fff;padding:26px 0 24px}
.sv-band__in{max-width:1200px;margin:0 auto;padding:0 20px}
.sv-crumb{font:500 13px/1.2 "Public Sans",sans-serif;opacity:.88;letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px}
.sv-crumb a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45)}
.sv-band h1.sv-title{font:700 34px/1.1 Roboto,sans-serif;color:#fff!important;margin:0;letter-spacing:-.01em}
.sv-band p.sv-sub{font:400 17px/1.5 "Public Sans",sans-serif;margin:8px 0 0;max-width:760px;opacity:.95;color:#fff}

/* 5. Cards: pricing tiers, products, team, timeline */
.sv-card{border-radius:var(--sv-radius)!important;border:1px solid var(--sv-line)!important;box-shadow:var(--sv-shadow)!important;overflow:hidden;background-clip:padding-box}
.sv-feature{outline:3px solid transparent;border:2px solid var(--sv-purple)!important;transform:translateY(-6px)}
.sv-tag{display:inline-block;background:var(--sv-grad);color:#fff;font:700 11px/1 "Public Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;margin:0 0 8px}
.woocommerce ul.products li.product{border-radius:var(--sv-radius);border:1px solid var(--sv-line);box-shadow:var(--sv-shadow);padding:0 0 16px!important;overflow:hidden;background:#fff}
.woocommerce ul.products li.product img{border-radius:0!important;margin-bottom:12px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price{padding:0 14px!important}

/* 6. Tables: zebra rows, sticky header, roomier cells */
.fl-builder-content-primary table{border-collapse:separate!important;border-spacing:0!important;border:1px solid var(--sv-line)!important;border-radius:var(--sv-radius);overflow:hidden}
.fl-builder-content-primary table thead th{background:var(--sv-ink)!important;color:#fff!important;position:sticky;top:0}
.fl-builder-content-primary table tbody tr:nth-child(even) td{background:var(--sv-soft)!important}
.fl-builder-content-primary table td,.fl-builder-content-primary table th{padding:12px 14px!important;border-color:var(--sv-line)!important}

/* 7. Readable legal pages */
.sv-legal .fl-post-content,.sv-legal .fl-builder-content-primary .fl-rich-text{max-width:820px;margin-left:auto;margin-right:auto}
.sv-legal .fl-post-content h2,.sv-legal .fl-post-content h3{margin-top:1.6em;padding-top:.6em;border-top:1px solid var(--sv-line)}
.sv-toc{max-width:820px;margin:24px auto 8px;padding:16px 20px;border:1px solid var(--sv-line);border-radius:var(--sv-radius);background:var(--sv-soft);font:400 15px/1.6 "Public Sans",sans-serif}
.sv-toc strong{display:block;font:700 13px/1 "Public Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--sv-muted);margin-bottom:8px}
.sv-toc ul{margin:0;columns:2;column-gap:32px}
.sv-toc a{color:var(--sv-purple);text-decoration:none}

/* 8. Empty-state / helper panels */
.sv-panel{max-width:960px;margin:40px auto;padding:32px;border:1px solid var(--sv-line);border-radius:16px;background:#fff;box-shadow:var(--sv-shadow);font-family:"Public Sans",sans-serif;color:var(--sv-text)}
.sv-panel h2{font:700 26px/1.2 Roboto,sans-serif;color:var(--sv-ink);margin:0 0 8px}
.sv-panel p{margin:0 0 18px;font-size:17px;line-height:1.6;color:var(--sv-muted)}
.sv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.sv-tile{border:1px solid var(--sv-line);border-radius:12px;padding:18px;background:var(--sv-soft)}
.sv-tile b{display:block;font:700 17px/1.3 Roboto,sans-serif;color:var(--sv-ink);margin-bottom:4px}
.sv-tile span{font-size:15px;line-height:1.5;color:var(--sv-muted)}
.sv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.sv-btn{display:inline-block;background:var(--sv-grad);color:#fff!important;font:600 15px/1 "Public Sans",sans-serif;text-transform:uppercase;padding:14px 20px;text-decoration:none!important}
.sv-btn--ghost{background:#fff;color:var(--sv-purple)!important;border:2px solid var(--sv-purple);box-shadow:none!important}

/* 9. Mailing list band: value line + rounded fields */
.sv-mail-note{font:400 15px/1.5 "Public Sans",sans-serif;color:#fff;opacity:.92;text-align:center;margin:6px auto 0;max-width:640px}
.fl-node-jxms6p8nh7q9 input[type=text],.fl-node-jxms6p8nh7q9 input[type=email]{border-radius:8px!important}

/* 10. Contact chips */
.sv-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.sv-chip{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--sv-soft);border:1px solid var(--sv-line);font:600 14px/1.2 "Public Sans",sans-serif;color:var(--sv-ink)}

@media (max-width:768px){
  .sv-band{padding:18px 0}
  .sv-band h1.sv-title{font-size:26px}
  .sv-grid{grid-template-columns:1fr}
  .sv-toc ul{columns:1}
  .sv-panel{margin:24px 16px;padding:22px}
  .sv-feature{transform:none}
}
