/* MailPerch — shared marketing styles (all public pages) */
:root{
  --ink:#13162a;--ink-2:#565b78;--ink-3:#8b90a8;--line:#e9eaf3;--bg:#ffffff;
  --soft:#f6f7fc;--brand:#6366f1;--brand-2:#7c5bff;--brand-ink:#4f46e5;--brand-soft:#eef0fe;
  --green:#0f9d6b;--green-soft:#e6f7f0;--amber:#c47d12;--amber-soft:#fdf3e2;--red:#dc3a3a;
  --grad:linear-gradient(120deg,#6366f1 0%,#7c5bff 50%,#9b6bff 100%);
  --radius:16px;--shadow:0 4px 14px rgba(28,30,60,.06);--shadow-lg:0 24px 60px rgba(40,40,90,.16);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.narrow{max-width:820px;margin:0 auto;padding:0 24px}

.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;
  padding:12px 22px;border-radius:12px;cursor:pointer;border:1px solid transparent;transition:.18s}
.btn.primary{background:var(--grad);color:#fff;box-shadow:0 6px 18px rgba(99,102,241,.34)}
.btn.primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(99,102,241,.42)}
.btn.ghost{background:#fff;border-color:var(--line);color:var(--ink)}
.btn.ghost:hover{border-color:var(--brand);color:var(--brand-ink)}
.btn.lg{padding:15px 28px;font-size:16px}

/* Nav */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.02em}
.logo .mark{width:34px;height:34px;border-radius:10px;background:var(--grad);display:grid;place-items:center;color:#fff;font-size:17px;box-shadow:0 4px 12px rgba(99,102,241,.4)}
.navlinks{display:flex;align-items:center;gap:26px}
.navlinks>a,.dd>button{font-size:15px;color:var(--ink-2);font-weight:500;transition:.15s;background:none;border:0;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:5px}
.navlinks>a:hover,.dd>button:hover{color:var(--ink)}
.navcta{display:flex;align-items:center;gap:12px}
.dd{position:relative}
.dd-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);background:#fff;
  border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px;min-width:250px;display:none;z-index:60}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}
.dd-menu a{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:10px;font-size:14px;color:var(--ink);font-weight:500}
.dd-menu a:hover{background:var(--brand-soft);color:var(--brand-ink)}
.dd-menu .ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:16px;flex:none}
.dd-menu small{display:block;color:var(--ink-3);font-weight:400;font-size:12px}
/* Mobile / tablet navigation */
.menu-btn{display:none;background:#fff;border:1px solid #d8dbe8;border-radius:10px;
  width:42px;height:42px;font-size:20px;color:var(--ink);cursor:pointer;
  align-items:center;justify-content:center;transition:.15s}
.menu-btn:hover{border-color:var(--brand);color:var(--brand-ink)}
.dd.open .dd-menu{display:block}
@media(max-width:900px){
  .navlinks{display:none}
  .menu-btn{display:inline-flex}
  header nav{position:relative}
  .navlinks.open{display:flex;flex-direction:column;align-items:flex-start;gap:2px;
    position:absolute;top:67px;left:-24px;right:-24px;background:#fff;
    border-bottom:1px solid var(--line);padding:14px 24px 20px;
    box-shadow:var(--shadow-lg);z-index:55}
  .navlinks.open>a{padding:11px 4px;width:100%;font-size:16px}
  .navlinks.open .dd{width:100%}
  .navlinks.open .dd>button{padding:11px 4px;font-size:16px;width:100%;justify-content:space-between}
  .navlinks.open .dd-menu{position:static;transform:none;min-width:100%;box-shadow:none;
    border:0;padding:0 0 6px 6px;display:none}
  .navlinks.open .dd.open .dd-menu{display:block}
  .navcta .btn.ghost{display:none}
  .navcta .btn{padding:10px 16px;font-size:14px}
}

/* Page scaffolding */
.pagehero{padding:64px 0 40px;text-align:center;position:relative;overflow:hidden}
.pagehero:before{content:"";position:absolute;top:-220px;left:50%;transform:translateX(-50%);
  width:800px;height:520px;background:radial-gradient(ellipse,rgba(124,91,255,.14),transparent 62%);z-index:-1}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--brand-soft);color:var(--brand-ink);
  font-size:13px;font-weight:600;padding:7px 15px;border-radius:30px;margin-bottom:18px;border:1px solid #dfe1fb}
.pagehero h1{font-size:42px;line-height:1.12;font-weight:800;letter-spacing:-.025em;max-width:760px;margin:0 auto 16px}
.pagehero h1 .grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.pagehero p.sub{font-size:18px;color:var(--ink-2);max-width:640px;margin:0 auto 26px}
@media(max-width:680px){.pagehero h1{font-size:32px}}

section.block{padding:56px 0}
.eyebrow{text-align:center;color:var(--brand-ink);font-weight:700;font-size:13px;letter-spacing:.05em;margin-bottom:10px}
.h2{text-align:center;font-size:32px;font-weight:800;letter-spacing:-.02em;margin:0 auto 12px;max-width:660px;line-height:1.18}
.lead{text-align:center;font-size:16.5px;color:var(--ink-2);max-width:600px;margin:0 auto 40px}

.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);transition:.18s}
.card.hov:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#dfe1fb}
.card .ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:22px;margin-bottom:14px}
.card h3{font-size:18px;font-weight:700;margin-bottom:7px;letter-spacing:-.01em}
.card p{color:var(--ink-2);font-size:14.5px}
.card ul{list-style:none;margin-top:12px}
.card li{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--ink-2);margin-bottom:6px}
.card li i{color:var(--green);font-size:16px;margin-top:2px}

.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;text-align:center}
.stat-strip .stat{background:var(--soft);border-radius:14px;padding:24px 16px}
.stat-strip .n{font-size:34px;font-weight:800;letter-spacing:-.02em}
.stat-strip .l{font-size:13px;color:var(--ink-2);margin-top:4px}

.prose{font-size:16.5px;color:#2c2f45;line-height:1.8}
.prose h2{font-size:24px;font-weight:750;font-weight:700;margin:34px 0 12px;letter-spacing:-.015em}
.prose h3{font-size:18px;font-weight:700;margin:26px 0 10px}
.prose p{margin-bottom:16px}
.prose blockquote{border-left:3px solid var(--brand);padding:10px 20px;background:var(--brand-soft);
  border-radius:0 12px 12px 0;color:var(--brand-ink);font-weight:500;margin:20px 0}

.cta-band{background:var(--grad);border-radius:24px;padding:48px 36px;text-align:center;color:#fff;box-shadow:var(--shadow-lg)}
.cta-band h2{font-size:30px;font-weight:800;letter-spacing:-.02em;margin-bottom:10px}
.cta-band p{font-size:16px;opacity:.92;margin-bottom:24px}
.cta-band .btn.primary{background:#fff;color:var(--brand-ink);box-shadow:0 8px 24px rgba(0,0,0,.18)}

footer{border-top:1px solid var(--line);padding:44px 0 28px;color:var(--ink-2);font-size:14px;margin-top:40px}
.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}
.foot .col h5{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin-bottom:12px}
.foot .col a{display:block;margin-bottom:8px;color:var(--ink-2)}
.foot .col a:hover{color:var(--brand-ink)}
.copy{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3);text-align:center}

.notice{background:var(--amber-soft);border:1px solid #f3e0bd;border-left:3px solid var(--amber);
  padding:12px 15px;border-radius:10px;color:#8a6411;font-size:13px;margin:14px 0}
.tag{display:inline-block;background:var(--brand-soft);color:var(--brand-ink);font-size:11.5px;font-weight:700;
  padding:4px 11px;border-radius:20px;letter-spacing:.02em}
.tag.soon{background:var(--amber-soft);color:var(--amber)}
