/* Colours sampled from brand/logo.jpg (median of solid pixels): purple #52308c (primary, 9.7:1 on white), pink #cf5f8a (accent; 3.7:1, graphics only), teal #1996a2 (secondary; 3.6:1, graphics only). Ink variants for any coloured text: pink-ink #a8406a, teal-ink #12707a. */
:root{--navy:#52308c;--navy-d:#3d2269;--teal:#cf5f8a;--teal-ink:#a8406a;--teal-tint:#fbeef3;--sec:#1996a2;--sec-ink:#12707a;--blue:var(--navy);--blue-d:var(--navy-d);--ink:#3d2269;--body:#2a2236;--muted:#5a5266;--bg:#fff;--alt:#f8f5fb;--line:#e6dff0;--radius:12px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--body);background:var(--bg);line-height:1.55;font-size:17px}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
a{color:var(--blue)}
.topbar{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.97);border-bottom:3px solid var(--teal)}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;height:68px;gap:12px}
.brand{display:flex;align-items:center;text-decoration:none;min-width:0}
.brand-logo{display:block;height:44px;width:auto;max-width:100%}
.topnav{white-space:nowrap}
.topnav a{margin-left:18px;text-decoration:none;color:var(--navy);font-size:15px;font-weight:500}
.topnav a:hover{color:var(--teal-ink)}
.hero{padding:72px 0 64px;background:linear-gradient(180deg,var(--teal-tint) 0%,#fff 100%)}
h1,h2{color:var(--ink)}
.hero h1{font-size:clamp(28px,4.6vw,44px);line-height:1.15;margin:0 0 18px;max-width:820px}
.h1-brand{color:var(--navy);box-shadow:inset 0 -.14em 0 var(--teal)}
.sub{font-size:clamp(17px,2.2vw,20px);color:var(--muted);max-width:720px;margin:0 0 30px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;padding:13px 24px;border-radius:8px;font-weight:600;text-decoration:none;font-size:16px;border:2px solid var(--blue);transition:background .15s}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-d);border-color:var(--blue-d)}
.btn-secondary{background:#fff;color:var(--blue)}
.btn-secondary:hover{background:var(--teal-tint)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.section{padding:56px 0}
.section-alt{background:var(--alt)}
h2{font-size:28px;margin:0 0 18px}
.lead{font-size:18px;color:var(--muted);margin:0 0 20px}
.features{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.features li{background:#fff;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:var(--radius);padding:16px 18px 16px 46px;position:relative}
.features li::before{content:"";position:absolute;left:18px;top:21px;width:14px;height:8px;border-left:3px solid var(--teal);border-bottom:3px solid var(--teal);transform:rotate(-45deg)}
.price-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;max-width:420px;box-shadow:0 4px 18px rgba(2,40,92,.08);border-top:4px solid var(--teal)}
.price{font-size:20px;margin:0 0 10px}
.price .amount{font-size:44px;font-weight:700;color:var(--navy)}
.price-points{padding-left:20px;margin:0 0 22px;color:var(--muted)}
.demo-note{font-size:14px;color:var(--muted);margin:12px 0 0}
.footer{padding:30px 0;border-top:3px solid var(--teal);color:var(--muted);font-size:15px}
.footer .small{font-size:13px;margin-top:4px}
.thanks{padding:90px 0;min-height:60vh}
@media (max-width:600px){.brand-logo{height:34px}.topbar-inner{height:58px}.topnav a:not(.js-open-demo){display:none}.hero{padding:48px 0 44px}.section{padding:44px 0}.btn{width:100%;text-align:center}}


.footer{border-top:3px solid var(--sec)}
.steps li::marker{color:var(--sec-ink);font-weight:700}
