/* Not Final Price — shared stylesheet */
:root{
  --bg:#0b0b0a; --s1:#151514; --s2:#1e1e1c; --s3:#282825;
  --line:rgba(255,255,255,.08); --line2:rgba(255,255,255,.15);
  --tp:#fff; --ts:#c5c4b9; --tm:#8a8980;
  --acc:#3987e5; --acc2:#5b9df0;
  --good:#2fc42f; --good-d:#0ca30c; --warn:#fab219; --crit:#e66767;
  --max:1120px; --r:14px; --r-l:22px;
  --f:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--tp);font-family:var(--f);line-height:1.6;
  font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--acc2);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.narrow{max-width:760px;margin:0 auto;padding:0 24px}

/* ---------- NAV ---------- */
header.nav{position:sticky;top:0;z-index:100;background:rgba(11,11,10,.82);
  backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;gap:20px}
.logo{display:flex;flex-direction:column;line-height:1;text-decoration:none!important}
.logo .l1{font-size:8.5px;letter-spacing:.32em;font-weight:800;color:var(--tm)}
.logo .l2{font-size:17px;font-weight:850;letter-spacing:-.035em;margin-top:3px;color:var(--tp)}
.logo .l2 em{font-style:normal;color:var(--acc)}
.navlinks{display:flex;gap:26px;align-items:center}
.navlinks a{color:var(--ts);font-size:13.5px;font-weight:550}
.navlinks a:hover{color:var(--tp);text-decoration:none}
.navtoggle{display:none;background:none;border:0;color:var(--tp);cursor:pointer;padding:6px}
.navtoggle svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 24px;border-radius:12px;border:0;cursor:pointer;
  font:inherit;font-size:15px;font-weight:700;letter-spacing:-.01em;
  background:var(--acc);color:#fff;transition:transform .12s,filter .12s}
.btn:hover{filter:brightness(1.1);text-decoration:none}
.btn:active{transform:scale(.985)}
.btn.ghost{background:var(--s2);color:var(--tp);border:1px solid var(--line2)}
.btn.money{background:var(--good-d)}
.btn.sm{padding:10px 17px;font-size:13.5px;border-radius:10px}
.btn.lg{padding:17px 30px;font-size:16.5px}
.btn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- TYPE ---------- */
h1{font-size:clamp(38px,6.4vw,66px);font-weight:850;letter-spacing:-.042em;line-height:1.03}
h2{font-size:clamp(26px,3.7vw,38px);font-weight:800;letter-spacing:-.032em;line-height:1.12}
h3{font-size:19px;font-weight:750;letter-spacing:-.018em;line-height:1.3}
h4{font-size:15px;font-weight:700;letter-spacing:-.012em}
.eyebrow{font-size:10.5px;letter-spacing:.19em;text-transform:uppercase;color:var(--tm);font-weight:800}
.lede{font-size:clamp(16px,2vw,19.5px);line-height:1.55;color:var(--ts)}
p{font-size:16px;color:var(--ts);margin-bottom:15px}
.sm{font-size:13.5px;color:var(--tm);line-height:1.55}
.xs{font-size:11.5px;color:var(--tm);line-height:1.5}
.center{text-align:center}
section{padding:88px 0}
section.tight{padding:58px 0}
.sechead{max-width:720px;margin-bottom:38px}
.sechead .eyebrow{margin-bottom:12px;display:block}
.sechead h2{margin-bottom:14px}

/* ---------- HERO ---------- */
.hero{padding:82px 0 72px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;top:-340px;left:50%;transform:translateX(-50%);
  width:1100px;height:700px;background:radial-gradient(closest-side,rgba(57,135,229,.17),transparent 70%);pointer-events:none}
.hero::after{content:"";position:absolute;bottom:-260px;right:-120px;width:700px;height:600px;
  background:radial-gradient(closest-side,rgba(12,163,12,.11),transparent 70%);pointer-events:none}
.hero .wrap{position:relative;z-index:2}
.herogrid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.hero h1{margin-bottom:20px}
.hero .lede{margin-bottom:28px;max-width:520px}
.heroctas{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:16px}

/* ---------- RECEIPT DEMO ---------- */
.demo{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-l);padding:22px;
  box-shadow:0 30px 70px -25px rgba(0,0,0,.8)}
.demo .dh{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.demo .dh .t{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);font-weight:800}
.rline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;
  padding:12px 0;border-bottom:1px solid var(--line)}
.rline:last-of-type{border-bottom:0}
.rline .nm{font-size:13px;font-weight:600;color:var(--ts);line-height:1.35}
.rline .nm span{display:block;font-size:10.5px;color:var(--tm);font-weight:500;margin-top:2px}
.rline .amt{font-size:13.5px;font-weight:750;white-space:nowrap;color:var(--tm)}
.rline.hit .nm{color:var(--tp)}
.rline.hit .amt{color:var(--good);font-size:15px}
.demototal{display:flex;justify-content:space-between;align-items:center;
  margin-top:16px;padding-top:16px;border-top:1px solid var(--line2)}
.demototal .l{font-size:12px;color:var(--tm);letter-spacing:.05em;text-transform:uppercase;font-weight:750}
.demototal .v{font-size:30px;font-weight:850;letter-spacing:-.035em;color:var(--good)}

/* ---------- PILL / BADGE ---------- */
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;
  font-size:11px;font-weight:750;letter-spacing:.03em;white-space:nowrap}
.pill.good{background:rgba(47,196,47,.14);color:var(--good)}
.pill.info{background:rgba(57,135,229,.15);color:var(--acc2)}
.pill.warn{background:rgba(250,178,25,.14);color:var(--warn)}
.pill.crit{background:rgba(230,103,103,.14);color:var(--crit)}
.pill.idle{background:var(--s3);color:var(--ts)}

/* ---------- CARDS / GRID ---------- */
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--s1);border:1px solid var(--line);border-radius:var(--r-l);padding:26px}
.card h3{margin-bottom:9px}
.card p:last-child{margin-bottom:0}
.card.acc{border-color:rgba(57,135,229,.3);background:linear-gradient(160deg,rgba(57,135,229,.08),var(--s1) 62%)}
.card.grn{border-color:rgba(47,196,47,.28);background:linear-gradient(160deg,rgba(47,196,47,.07),var(--s1) 62%)}
.num{width:34px;height:34px;border-radius:10px;background:var(--s3);display:grid;place-items:center;
  font-size:13px;font-weight:850;color:var(--acc2);margin-bottom:14px}

/* ---------- STAT ---------- */
.stat .k{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);font-weight:800;margin-bottom:9px}
.stat .v{font-size:36px;font-weight:850;letter-spacing:-.04em;line-height:1}
.stat .v.g{color:var(--good)}
.stat .d{font-size:12px;color:var(--tm);margin-top:7px;line-height:1.45}

/* ---------- HONEST BOX ---------- */
.honest{border:1px solid rgba(250,178,25,.3);background:rgba(250,178,25,.055);
  border-radius:var(--r-l);padding:26px}
.honest .h{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:850;
  letter-spacing:.13em;text-transform:uppercase;color:var(--warn);margin-bottom:12px}
.honest p{font-size:15px;color:var(--ts)}
.honest p:last-child{margin-bottom:0}
.honest strong{color:var(--tp);font-weight:700}

/* ---------- TABLE ---------- */
.tbl{width:100%;border-collapse:collapse;font-size:14px;margin:18px 0}
.tbl th{text-align:left;padding:11px 12px;color:var(--tm);font-size:10.5px;font-weight:800;
  letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid var(--line2)}
.tbl td{padding:13px 12px;border-bottom:1px solid var(--line);color:var(--ts);vertical-align:top}
.tbl td.n,.tbl th.n{text-align:right;font-variant-numeric:tabular-nums}
.tbl tr:last-child td{border-bottom:0}
.tbl .g{color:var(--good);font-weight:700}
.tbl .r{color:var(--crit);font-weight:650}
.tbl strong{color:var(--tp)}

/* ---------- FORM ---------- */
.form{display:flex;gap:10px;flex-wrap:wrap;max-width:520px}
.form input[type=email]{flex:1;min-width:230px;background:var(--s2);border:1px solid var(--line2);
  border-radius:12px;padding:14px 16px;font:inherit;font-size:15px;color:var(--tp)}
.form input[type=email]::placeholder{color:var(--tm)}
.form input[type=email]:focus{outline:0;border-color:var(--acc)}
.formnote{font-size:12px;color:var(--tm);margin-top:11px}

/* ---------- FAQ ---------- */
details.faq{border-bottom:1px solid var(--line);padding:4px 0}
details.faq summary{cursor:pointer;list-style:none;padding:18px 0;font-size:16.5px;font-weight:650;
  display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--tp)}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:22px;font-weight:400;color:var(--tm);flex:0 0 auto;line-height:1}
details.faq[open] summary::after{content:"\2212"}
details.faq .a{padding:0 0 20px;max-width:760px}
details.faq .a p:last-child{margin-bottom:0}

/* ---------- STEPS ---------- */
.steps{counter-reset:s}
.step{display:flex;gap:20px;padding:26px 0;border-bottom:1px solid var(--line)}
.step:last-child{border-bottom:0}
.step .si{flex:0 0 42px;height:42px;border-radius:12px;background:var(--s2);border:1px solid var(--line2);
  display:grid;place-items:center;font-size:15px;font-weight:850;color:var(--acc2)}
.step .sc{flex:1}
.step h3{margin-bottom:7px}
.step p:last-child{margin-bottom:0}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid var(--line);padding:52px 0 34px;margin-top:40px}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;margin-bottom:38px}
footer h5{font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);
  font-weight:800;margin-bottom:14px}
footer ul{list-style:none}
footer li{margin-bottom:9px}
footer li a{color:var(--ts);font-size:13.5px}
.fdis{border-top:1px solid var(--line);padding-top:24px;font-size:11.5px;color:var(--tm);line-height:1.65}
.fdis p{font-size:11.5px;color:var(--tm);margin-bottom:9px}

/* ---------- ARTICLE ---------- */
article h2{margin:44px 0 16px;font-size:27px}
article h3{margin:30px 0 11px;font-size:18.5px}
article p{margin-bottom:16px;font-size:16.5px;line-height:1.72}
article ul,article ol{margin:0 0 18px 22px}
article li{font-size:16.5px;color:var(--ts);margin-bottom:9px;line-height:1.65}
article strong{color:var(--tp);font-weight:650}
.meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:30px;
  padding-bottom:22px;border-bottom:1px solid var(--line)}
blockquote{border-left:3px solid var(--acc);padding:4px 0 4px 20px;margin:22px 0;color:var(--ts);font-style:italic}
code{background:var(--s2);padding:2px 6px;border-radius:5px;font-size:13.5px;color:#e8c48a}
.callout{background:var(--s1);border:1px solid var(--line2);border-left:3px solid var(--acc);
  border-radius:10px;padding:20px;margin:24px 0}
.callout p:last-child{margin-bottom:0}

/* ---------- MISC ---------- */
.hr{height:1px;background:var(--line);margin:0}
.tag{display:inline-block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tm);font-weight:800;margin-bottom:8px}
.cta-band{background:linear-gradient(150deg,rgba(57,135,229,.13),rgba(12,163,12,.07));
  border:1px solid var(--line2);border-radius:26px;padding:52px 40px;text-align:center}
.cta-band h2{margin-bottom:12px}
.cta-band .lede{margin:0 auto 26px;max-width:520px}
.glist{list-style:none}
.glist li{padding:16px 0;border-bottom:1px solid var(--line)}
.glist li:last-child{border-bottom:0}
.glist a{font-size:17px;font-weight:700;color:var(--tp);letter-spacing:-.015em}
.glist a:hover{color:var(--acc2);text-decoration:none}
.glist p{font-size:14px;margin:5px 0 0}

@media(max-width:900px){
  .herogrid{grid-template-columns:1fr;gap:38px}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  .fgrid{grid-template-columns:1fr 1fr;gap:26px}
  section{padding:62px 0}
  .navlinks{display:none;position:absolute;top:66px;left:0;right:0;background:var(--bg);
    border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 18px}
  .navlinks.open{display:flex}
  .navlinks a{padding:12px 0;border-bottom:1px solid var(--line)}
  .navtoggle{display:block}
  .nav .wrap{position:relative}
}
@media(max-width:620px){
  .g2,.g3,.g4{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .cta-band{padding:36px 22px}
  section{padding:50px 0}
}

@media(max-width:620px){
  .heroctas{flex-direction:column;align-items:stretch}
  .heroctas .btn{width:100%}
  .form{flex-direction:column}
  .form input[type=email]{min-width:0;width:100%}
  .form .btn{width:100%}
  h1{font-size:clamp(32px,8.5vw,44px)}
}

/* ═══════════ WEB APP ═══════════ */
.app{max-width:640px;margin:0 auto;padding:34px 22px 90px}
.stepbar{display:flex;gap:6px;margin-bottom:30px}
.stepbar i{flex:1;height:3px;border-radius:2px;background:var(--s3)}
.stepbar i.on{background:var(--acc)}
.stepbar i.done{background:var(--good)}
.pane{display:none;animation:fadein .25s ease}
.pane.on{display:block}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.drop{border:2px dashed var(--line2);border-radius:var(--r-l);padding:44px 24px;text-align:center;
  cursor:pointer;transition:border-color .15s,background .15s;background:var(--s1)}
.drop:hover,.drop.over{border-color:var(--acc);background:rgba(57,135,229,.06)}
.drop svg{width:38px;height:38px;stroke:var(--tm);fill:none;stroke-width:1.6;stroke-linecap:round;
  stroke-linejoin:round;margin-bottom:14px}
.drop h3{margin-bottom:7px}
.itemrow{display:flex;gap:14px;align-items:flex-start;background:var(--s1);border:1px solid var(--line);
  border-radius:var(--r);padding:15px;margin-bottom:10px;cursor:pointer;transition:border-color .15s}
.itemrow:hover{border-color:var(--line2)}
.itemrow.sel{border-color:var(--acc);background:rgba(57,135,229,.07)}
.itemrow .box{width:21px;height:21px;border-radius:6px;border:2px solid var(--line2);flex:0 0 21px;
  display:grid;place-items:center;margin-top:2px}
.itemrow.sel .box{background:var(--acc);border-color:var(--acc)}
.itemrow .box svg{width:12px;height:12px;stroke:#fff;fill:none;stroke-width:3;opacity:0}
.itemrow.sel .box svg{opacity:1}
.itemrow .nm{font-size:14.5px;font-weight:650;line-height:1.35;color:var(--tp)}
.itemrow .meta{font-size:11.5px;color:var(--tm);margin-top:3px;display:block;
  margin-bottom:0;padding-bottom:0;border-bottom:0;gap:0}
.itemrow .px{font-size:15px;font-weight:750;margin-left:auto;white-space:nowrap}
.itemrow.cheap .nm{color:var(--ts)}
.bar{position:fixed;bottom:0;left:0;right:0;background:rgba(11,11,10,.94);backdrop-filter:blur(20px);
  border-top:1px solid var(--line);padding:14px 22px;z-index:60}
.bar .in{max-width:640px;margin:0 auto;display:flex;gap:14px;align-items:center;justify-content:space-between}
.spin{width:34px;height:34px;border:3px solid var(--s3);border-top-color:var(--acc);border-radius:50%;
  animation:sp .8s linear infinite;margin:0 auto 18px}
@keyframes sp{to{transform:rotate(360deg)}}
.result{border-radius:var(--r-l);padding:28px;text-align:center;margin-bottom:18px}
.result.found{border:1px solid rgba(47,196,47,.4);background:linear-gradient(160deg,rgba(47,196,47,.12),var(--s1) 65%)}
.result.none{border:1px solid var(--line);background:var(--s1)}
.result .amt{font-size:52px;font-weight:850;letter-spacing:-.045em;line-height:1;color:var(--good);margin:8px 0}
.blur{filter:blur(7px);user-select:none;pointer-events:none}
.chk{display:flex;gap:11px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}
.chk:last-child{border-bottom:0}
.chk .i{width:20px;height:20px;border-radius:50%;flex:0 0 20px;display:grid;place-items:center;margin-top:1px}
.chk .i svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.chk.y .i{background:rgba(47,196,47,.18);color:var(--good)}
.chk.n .i{background:rgba(230,103,103,.18);color:var(--crit)}
.chk .t{font-size:13px;line-height:1.45;color:var(--ts)}
.chk .t b{display:block;color:var(--tp);font-size:13.5px;font-weight:650;margin-bottom:1px}
.scriptbox{background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:17px;
  font-size:13.5px;line-height:1.7;color:var(--ts);white-space:pre-wrap}
.toast{position:fixed;bottom:96px;left:50%;transform:translateX(-50%) translateY(10px);background:var(--s3);
  border:1px solid var(--line2);border-radius:12px;padding:12px 18px;font-size:13.5px;font-weight:650;
  opacity:0;transition:.22s;z-index:80;pointer-events:none}
.toast.show{opacity:1;transform:translateX(-50%)}
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pack{background:var(--s1);border:1px solid var(--line);border-radius:var(--r);padding:16px 12px;
  text-align:center;cursor:pointer}
.pack:hover,.pack.sel{border-color:var(--acc);background:rgba(57,135,229,.07)}
.pack .c{font-size:22px;font-weight:800;letter-spacing:-.03em}
.pack .p{font-size:12.5px;color:var(--tm);margin-top:3px}
.pack .e{font-size:10.5px;color:var(--good);margin-top:5px;font-weight:700}

/* ---------- BETA BANNER ---------- */
.betabar{position:sticky;top:0;z-index:120;
  background:linear-gradient(90deg,#8a5a00,#b47400 55%,#8a5a00);
  color:#fff;text-align:center;padding:9px 18px;font-size:13px;line-height:1.45;
  font-weight:600;letter-spacing:-.005em;border-bottom:1px solid rgba(0,0,0,.35)}
.betabar b{font-weight:900;letter-spacing:.14em;font-size:11px;
  background:rgba(0,0,0,.28);padding:3px 8px;border-radius:5px;margin-right:9px;
  vertical-align:middle;text-transform:uppercase;white-space:nowrap}
.betabar span{opacity:.96;vertical-align:middle}
.betabar a{color:#fff;text-decoration:underline;text-underline-offset:2px}
body.hasbeta header.nav{top:37px}
@media(max-width:640px){
  .betabar{font-size:12px;padding:8px 12px}
  .betabar b{display:inline-block;margin-bottom:0}
  body.hasbeta header.nav{top:36px}
}
