/* ============================================================
   FlipFlop — shared landing-page styles
   ============================================================ */
:root{
  --ink:#15232b; --ink-soft:#3c4f58;
  --blue:#4b92d4; --blue-dk:#2c6bb0; --jandal:#2f86d6; --navy:#173653;
  --sage:#5aa39a; --sage-dk:#3f8a81;
  --pink:#e07f8d; --pink-dk:#cf6675;
  --yellow:#ffd23f; --green:#34b27a; --green-dk:#26905f;
  --shadow:6px 7px 0 var(--ink); --shadow-sm:3px 4px 0 var(--ink);
  --section-y:96px; --inner-pad:56px; --head-mb:52px; --block-gap:60px;
  --font-display:"Fredoka",system-ui,sans-serif;
  --font-body:"Hanken Grotesk",system-ui,sans-serif;
  --font-mono:"DM Mono",ui-monospace,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:#fff;font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased}
img,svg{display:block}
a{color:inherit}

/* ---------- bands ---------- */
.band{position:relative;width:100%;overflow:hidden;padding:var(--section-y) 0}
.band.paper{background:#fcfdfe}
.band.grey{background:#eef4f6}
.band.mint{background:#e2efe9}
.band.blue{background:#e7f0fa}
.band.ink{background:#15232b;color:#eaf2f4}
.inner{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 var(--inner-pad)}

/* ---------- shared header bits ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:13px;
  letter-spacing:.12em;text-transform:uppercase;font-weight:500;background:#fff;color:var(--ink);border:2.5px solid var(--ink);
  border-radius:999px;padding:7px 15px;box-shadow:var(--shadow-sm)}
.eyebrow .led{width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px rgba(75,146,212,.25)}
.eyebrow.green .led{background:var(--green);box-shadow:0 0 0 3px rgba(52,178,122,.25)}
.eyebrow.yellow .led{background:var(--yellow);box-shadow:0 0 0 3px rgba(255,210,63,.3)}
.head-wrap{text-align:center;margin-bottom:var(--head-mb)}
h2.head{font-family:var(--font-display);font-weight:600;font-size:54px;line-height:1.04;letter-spacing:-.02em;margin:20px 0 0;text-wrap:balance}
h2.head .hl{position:relative;white-space:nowrap;color:var(--blue-dk)}
h2.head .hl::after{content:"";position:absolute;left:-2px;right:-2px;bottom:3px;height:13px;background:var(--yellow);z-index:-1;border-radius:3px}
h2.head .u{position:relative;white-space:nowrap;color:var(--sage-dk)}
h2.head .u::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:11px;background:var(--yellow);z-index:-1;border-radius:3px}
.sub{font-size:19px;line-height:1.55;color:var(--ink-soft);max-width:52ch;margin:18px auto 0;text-wrap:pretty}

/* ---------- buttons & fields ---------- */
.btn{font-family:var(--font-display);font-weight:600;font-size:18px;color:#fff;background:var(--blue);
  border:2.5px solid var(--ink);border-radius:999px;padding:13px 26px;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:10px;box-shadow:var(--shadow-sm);transition:transform .08s,box-shadow .08s;white-space:nowrap}
.btn:hover{transform:translate(-1px,-1px);box-shadow:4px 5px 0 var(--ink)}
.btn:active{transform:translate(2px,3px);box-shadow:1px 1px 0 var(--ink)}
.btn.dark{background:var(--ink)}
.btn.sm{font-size:16px;padding:10px 20px}
.btn-ghost{font-family:var(--font-display);font-weight:600;font-size:18px;color:inherit;background:transparent;border:none;
  cursor:pointer;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.btn-ghost .arr{transition:transform .12s}.btn-ghost:hover .arr{transform:translateX(4px)}
.signup{display:flex;gap:12px;max-width:480px}
.signup .field{flex:1;display:flex;align-items:center;gap:10px;background:#fff;border:2.5px solid var(--ink);
  border-radius:999px;padding:4px 6px 4px 18px;box-shadow:var(--shadow-sm)}
.signup .field .cc{font-family:var(--font-mono);font-size:15px;color:#7a8a92;font-weight:500}
.signup input{border:none;outline:none;background:transparent;flex:1;min-width:0;font-family:var(--font-body);font-size:17px;font-weight:600;color:var(--ink)}
.signup input::placeholder{color:#9fb1bd;font-weight:500}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:rgba(252,253,254,.85);backdrop-filter:blur(10px);
  border-bottom:2.5px solid transparent;transition:border-color .2s,box-shadow .2s}
.nav.scrolled{border-color:var(--ink);box-shadow:0 3px 0 rgba(21,35,43,.06)}
.nav .row{max-width:1180px;margin:0 auto;padding:14px var(--inner-pad);display:flex;align-items:center;gap:28px}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.logo .logo-mark{height:40px;width:auto;display:block}
.logo .word{font-family:var(--font-display);font-weight:600;font-style:italic;font-size:27px;letter-spacing:-.01em;line-height:1}
.logo .word .lo-a{color:var(--ink)}.logo .word .lo-b{color:var(--ink)}
.nav-links{display:flex;gap:26px;margin-left:6px}
.nav-links a{font-family:var(--font-body);font-weight:600;font-size:16px;color:var(--ink-soft);text-decoration:none}
.nav-links a:hover{color:var(--ink)}
.nav .spacer{flex:1}

/* ---------- device + chat ---------- */
.phone{width:332px;background:#fff;border:3px solid var(--ink);border-radius:42px;box-shadow:8px 10px 0 var(--ink);padding:13px}
.screen{background:#e9eff2;border-radius:30px;overflow:hidden;border:2px solid var(--ink)}
.chead{display:flex;align-items:center;gap:11px;padding:13px 15px;background:#fff;border-bottom:2px solid var(--ink)}
.chead .av{width:38px;height:38px;border-radius:50%;background:#eaf3fb;border:2px solid var(--ink);display:grid;place-items:center;overflow:hidden}
.chead .nm{font-family:var(--font-display);font-weight:600;font-size:16px;display:flex;align-items:center;gap:5px;line-height:1}
.chead .st{font-family:var(--font-mono);font-size:10.5px;color:var(--green);font-weight:500;margin-top:3px;display:flex;align-items:center;gap:5px}
.chead .st .dot{width:7px;height:7px;border-radius:50%;background:var(--green)}
.thread{padding:16px 14px;display:flex;flex-direction:column;gap:10px}
.b{max-width:84%;padding:11px 13px;font-size:14.5px;line-height:1.4;font-weight:500;border:2px solid var(--ink)}
.b.in{background:#fff;border-radius:16px 16px 16px 5px;align-self:flex-start}
.b.out{background:var(--blue);color:#fff;border-radius:16px 16px 5px 16px;align-self:flex-end}
.chead .av img.face{width:100%;height:100%;object-fit:contain;padding:4px;margin:0;display:block}
.b.card{background:#eaf3fb;border-radius:16px;width:92%;align-self:flex-start;padding:13px 14px}
.b.card .top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:7px}
.b.card .who{font-family:var(--font-display);font-weight:600;font-size:15px}
.b.card .tag{font-family:var(--font-mono);font-size:10px;font-weight:500;background:var(--green);color:#fff;border:2px solid var(--ink);border-radius:999px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em}
.b.card .big{font-family:var(--font-display);font-weight:600;font-size:34px;line-height:1;color:var(--blue-dk);margin:2px 0}
.b.card .rate{font-family:var(--font-mono);font-size:12px;color:var(--ink-soft);font-weight:500}
.replies{display:flex;gap:7px;align-self:flex-start;margin-top:2px;flex-wrap:wrap}
.qr{font-family:var(--font-display);font-weight:600;font-size:13px;border:2px solid var(--ink);border-radius:999px;padding:6px 13px;white-space:nowrap}
.qr.solid{background:var(--blue-dk);color:#fff}.qr.ghost{background:#fff;color:var(--blue-dk)}
.typing{align-self:flex-start;display:flex;gap:4px;background:#fff;border:2px solid var(--ink);border-radius:16px;padding:11px 14px}
.typing i{width:7px;height:7px;border-radius:50%;background:#9fb1bd;animation:tp 1.2s infinite}
.typing i:nth-child(2){animation-delay:.18s}.typing i:nth-child(3){animation-delay:.36s}
@keyframes tp{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}

/* ---------- #hero ---------- */
#hero .grid2{display:grid;grid-template-columns:1fr .82fr;align-items:center;gap:40px}
#hero h1{font-family:var(--font-display);font-weight:600;font-size:60px;line-height:1.02;letter-spacing:-.02em;margin:22px 0 0;text-wrap:balance}
#hero .lead{font-size:20px;line-height:1.5;color:var(--ink-soft);max-width:34ch;margin:22px 0 0;text-wrap:pretty}
#hero .flist{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:13px}
#hero .flist li{display:flex;align-items:center;gap:13px;font-size:17px;font-weight:600}
#hero .flist .tick{width:26px;height:26px;border-radius:50%;background:#fff;border:2px solid var(--ink);display:grid;place-items:center;flex-shrink:0}
#hero .flist .tick svg{width:13px;height:13px;stroke:var(--green-dk);stroke-width:3.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
#hero .cted{display:flex;gap:16px;align-items:center;margin-top:30px;flex-wrap:wrap}
#hero .phone-wrap{position:relative;display:grid;place-items:center}
#hero .blob{position:absolute;width:380px;height:380px;border-radius:50%;background:#dcebf7;z-index:0}
#hero .phone{position:relative;z-index:2}
#hero .spark{position:absolute;color:var(--blue);font-size:26px;font-family:var(--font-display);z-index:2}

/* ---------- #howitworks ---------- */
#howitworks .stage-wrap{--s:.9;position:relative;height:calc(720px * var(--s));display:block}
#howitworks .stage{position:absolute;top:0;left:50%;margin-left:-640px;transform:scale(var(--s));transform-origin:top center;
  width:1280px;height:720px;border-radius:30px;overflow:hidden;background:#eef4f6;border:4px solid var(--ink);box-shadow:9px 11px 0 var(--ink)}
#howitworks .pipes{position:absolute;inset:0;width:100%;height:100%;z-index:1}
#howitworks .d-title{position:absolute;top:0;left:0;right:0;text-align:center;z-index:4;background:#fff;border-bottom:2.5px solid var(--ink);padding:18px 24px 16px}
#howitworks .d-title h3{font-family:var(--font-mono);font-weight:500;font-size:20px;letter-spacing:.14em;margin:0;text-transform:uppercase}
#howitworks .d-title p{font-family:var(--font-body);font-size:16px;color:#4a5d66;margin:9px 0 0}
#howitworks .d-title p b{color:var(--blue-dk);font-weight:700}
#howitworks .box{position:absolute;z-index:3;border-radius:22px;border:2.5px solid var(--ink);background:#fff;padding:18px 18px 16px}
#howitworks .box .blabel{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;text-align:center;margin-bottom:14px;color:var(--ink)}
#howitworks .box.blue{background:#eaf3fb;border-color:var(--blue)}
#howitworks .box.sage{background:#e8f3f1;border-color:var(--sage)}
#howitworks .box.pink{background:#fdeef1;border-color:var(--pink)}
#howitworks .num{position:absolute;top:-16px;left:-16px;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;
  font-family:var(--font-display);font-weight:600;font-size:17px;display:grid;place-items:center;z-index:5;border:2.5px solid #fff;box-shadow:0 2px 0 rgba(0,0,0,.15)}
#howitworks #read{left:70px;top:144px;width:312px;height:200px}
#howitworks .conn{display:flex;flex-direction:column;gap:10px}
#howitworks .crow{display:flex;align-items:center;gap:11px;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:10px 12px}
#howitworks .crow.soon{opacity:.5}
#howitworks .cico{width:30px;flex-shrink:0;display:grid;place-items:center}
#howitworks .cinfo{flex:1;min-width:0}
#howitworks .cname{font-family:var(--font-display);font-weight:600;font-size:15px;line-height:1.05}
#howitworks .cmeta{font-family:var(--font-mono);font-size:10.5px;color:#5a6b73;margin-top:2px}
#howitworks .cpill{font-family:var(--font-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:2px solid var(--ink);border-radius:999px;padding:3px 8px;white-space:nowrap}
#howitworks .cpill.on{background:var(--green);color:#fff;display:flex;align-items:center;gap:5px}
#howitworks #node{left:565px;top:285px;width:150px;height:150px;border:3.5px solid var(--ink);border-radius:28px;background:#fff;display:grid;place-items:center;box-shadow:6px 7px 0 var(--ink);z-index:4}
#howitworks #node img.mark{width:112px;height:auto;display:block}
#howitworks .nodelabel{position:absolute;left:565px;top:251px;width:150px;text-align:center;z-index:5;font-family:var(--font-mono);font-size:13px;letter-spacing:.1em;font-weight:500;text-transform:uppercase}
#howitworks #plans{left:70px;top:406px;width:312px;height:200px}
#howitworks .lgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
#howitworks .lchip{background:#fff;border:2px solid var(--ink);border-radius:9px;height:34px;display:flex;align-items:center;justify-content:center;padding:4px 6px;transition:transform .35s ease,box-shadow .35s ease,background .35s ease,border-color .35s ease}
#howitworks .lchip.lit{border-color:var(--green-dk);background:#eafaf1;box-shadow:0 0 0 4px rgba(52,178,122,.28);transform:scale(1.12)}
#howitworks .lchip img{max-height:17px;max-width:100%;width:auto;display:block}
#howitworks .lchip.more{font-family:var(--font-mono);font-size:11px;font-weight:500;background:var(--ink);color:#fff}
#howitworks #out{left:905px;top:176px;width:306px;height:330px}
#howitworks .sms{background:#fff;border:2px solid var(--ink);border-radius:16px;padding:13px 14px}
#howitworks .sms .head{display:flex;align-items:center;gap:9px;margin-bottom:11px}
#howitworks .sms .av{width:34px;height:34px;border-radius:50%;background:#eaf3fb;border:2px solid var(--ink);display:grid;place-items:center;overflow:hidden}
#howitworks .sms .nm{font-family:var(--font-display);font-weight:600;font-size:15px;display:flex;align-items:center;gap:5px}
#howitworks .sms .nm .st{display:block;font-family:var(--font-mono);font-size:10px;color:var(--green);font-weight:500}
#howitworks .sms .save{font-family:var(--font-display);font-weight:600;color:var(--blue-dk)}
#howitworks .sms .replies{display:flex;gap:7px;margin-top:10px}
#howitworks .sms .qr{font-family:var(--font-display);font-weight:600;font-size:12.5px;border:2px solid var(--ink);border-radius:999px;padding:5px 12px;white-space:nowrap}
#howitworks .sms .qr.solid{background:var(--blue-dk);color:#fff}
#howitworks .sms .qr.ghost{background:#fff;color:var(--blue-dk)}
#howitworks .sms .av img.face{height:100%;width:100%;object-fit:contain;padding:3px}
#howitworks #introbubble{font-size:14px;line-height:1.4;font-weight:500;background:#eef4f6;border:2px solid var(--ink);border-radius:12px 12px 12px 4px;padding:9px 11px;margin-bottom:8px;min-height:20px}
#howitworks #smsbubble{font-size:14px;line-height:1.4;font-weight:500;background:#eef4f6;border:2px solid var(--ink);border-radius:12px 12px 12px 4px;padding:9px 11px;min-height:20px}
#howitworks #smsbubble .save{font-family:var(--font-display);font-weight:600;color:var(--blue-dk)}
#howitworks .fx{position:absolute;top:0;left:0;offset-rotate:0deg;offset-anchor:50% 50%;opacity:0;pointer-events:none;z-index:6}
#howitworks .fx-pdf{filter:drop-shadow(2px 2px 0 var(--ink))}
#howitworks .fx-logo{background:#fff;border:2px solid var(--ink);border-radius:8px;padding:3px 8px;display:flex;align-items:center;box-shadow:2px 2px 0 var(--ink);height:28px}
#howitworks .fx-logo img{height:16px;width:auto;display:block}
#howitworks .fx-save{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--blue-dk);background:#fff;border:2px solid var(--ink);border-radius:999px;padding:4px 11px;box-shadow:2px 2px 0 var(--ink);white-space:nowrap}
@media(max-width:1200px){#howitworks .stage-wrap{--s:.74}}
@media(max-width:920px){#howitworks .stage-wrap{--s:.56}}

/* ---------- #privacy ---------- */
#privacy .top{display:grid;grid-template-columns:1.02fr .98fr;gap:40px;align-items:center;margin-bottom:var(--block-gap)}
#privacy h2.head{text-align:left;margin-top:22px}
#privacy .lead{font-size:20px;line-height:1.55;color:var(--ink-soft);max-width:46ch;margin:22px 0 0;text-wrap:pretty}
#privacy .art{position:relative;max-width:540px;margin:0 auto;min-height:0}
#privacy .art svg{width:100%;height:auto;display:block}
#privacy .privacy-mascot{position:absolute;left:3%;bottom:14%;height:49%;width:auto;transform:scaleX(-1);filter:drop-shadow(4px 6px 0 rgba(21,35,43,.12));z-index:2;pointer-events:none}
#privacy .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
#privacy .tcard{background:#fff;border:2.5px solid var(--ink);border-radius:22px;box-shadow:var(--shadow);padding:24px 22px 26px;display:flex;flex-direction:column;gap:14px}
#privacy .tcard .ico{width:62px;height:62px;border-radius:16px;border:2.5px solid var(--ink);display:grid;place-items:center}
#privacy .tcard.c1 .ico{background:#eaf3fb}#privacy .tcard.c2 .ico{background:#fdeef1}
#privacy .tcard.c3 .ico{background:#e8f3f1}#privacy .tcard.c4 .ico{background:#fff7e0}
#privacy .tcard h3{font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.12;margin:2px 0 0;letter-spacing:-.01em;text-wrap:balance}
#privacy .tcard p{font-size:15px;line-height:1.5;color:#52636c;margin:0}
#privacy .tcard p b{color:var(--ink);font-weight:700}

/* ---------- #savings ---------- */
#savings .body{display:grid;grid-template-columns:340px 1fr;gap:46px;align-items:start}
#savings .phone-col{display:flex;flex-direction:column;align-items:center;gap:14px}
#savings .calc{background:#fff;border:2.5px solid var(--ink);border-radius:24px;box-shadow:7px 8px 0 var(--ink);overflow:hidden}
#savings .calc h3{font-family:var(--font-display);font-weight:600;font-size:23px;margin:0;padding:22px 26px 0;letter-spacing:-.01em}
#savings .usage{display:flex;align-items:center;gap:12px;margin:16px 26px 0;background:#fcfdfe;border:2px solid var(--ink);border-radius:14px;padding:12px 16px}
#savings .usage .k{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1;white-space:nowrap}
#savings .usage .l{font-size:13.5px;color:#52636c;line-height:1.3}
#savings .plans{display:flex;flex-direction:column;gap:12px;padding:18px 26px 4px}
#savings .plan{display:flex;align-items:center;gap:14px;border:2px solid var(--ink);border-radius:14px;padding:13px 16px;position:relative}
#savings .plan.best{background:#eafaf1;border-color:var(--green-dk);box-shadow:3px 4px 0 var(--green-dk)}
#savings .plan .pdot{width:13px;height:13px;border-radius:50%;border:2px solid var(--ink);flex-shrink:0}
#savings .plan .pname{font-family:var(--font-display);font-weight:600;font-size:17px;line-height:1}
#savings .plan.cur .pname{color:#52636c}
#savings .plan .prate{font-family:var(--font-mono);font-size:12px;color:#52636c;font-weight:500;margin-top:4px}
#savings .plan .ptot{margin-left:auto;text-align:right}
#savings .plan .ptot .m{font-family:var(--font-display);font-weight:600;font-size:21px;line-height:1}
#savings .plan .ptot .per{font-family:var(--font-mono);font-size:11px;color:#7a8a92}
#savings .plan .besttag{position:absolute;top:-11px;right:14px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;background:var(--green);color:#fff;border:2px solid var(--ink);border-radius:999px;padding:2px 9px}
#savings .save{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 0;padding:20px 26px;background:var(--yellow);border-top:2.5px solid var(--ink)}
#savings .save .lab{font-family:var(--font-display);font-weight:600;font-size:19px;line-height:1.1}
#savings .save .lab span{display:block;font-family:var(--font-body);font-size:13.5px;font-weight:600;color:#6b5a1e}
#savings .save .amt{text-align:right}
#savings .save .amt .yr{font-family:var(--font-display);font-weight:700;font-size:42px;line-height:.95;color:var(--ink)}
#savings .save .amt .mo{font-family:var(--font-mono);font-size:12.5px;color:#6b5a1e;font-weight:500}
#savings .strip{display:grid;grid-template-columns:208px 1fr;gap:24px;align-items:center;margin-top:30px;background:#fff;border:2.5px dashed #b9c6cd;border-radius:22px;padding:20px 24px}
#savings .strip .txt h4{font-family:var(--font-display);font-weight:600;font-size:18px;margin:0 0 6px}
#savings .strip .txt p{font-size:15px;line-height:1.5;color:#52636c;margin:0}
#savings .strip .txt p b{color:var(--ink)}
#savings .disc{text-align:center;font-family:var(--font-mono);font-size:12px;color:#8a98a0;margin-top:26px}

/* ---------- #faq ---------- */
#faq .layout{display:grid;grid-template-columns:380px 1fr;gap:44px;align-items:start}
#faq .guar{position:sticky;top:100px;background:#fff;border:3px solid var(--ink);border-radius:26px;box-shadow:8px 9px 0 var(--ink);overflow:hidden}
#faq .guar .ribbon{background:var(--ink);color:#fff;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:9px 10px;font-weight:500}
#faq .guar .price{display:flex;align-items:baseline;justify-content:center;gap:6px;padding:26px 24px 4px}
#faq .guar .price .amt{font-family:var(--font-display);font-weight:700;font-size:62px;line-height:.9;letter-spacing:-.02em}
#faq .guar .price .per{font-family:var(--font-body);font-weight:600;font-size:18px;color:#52636c}
#faq .guar .promise{text-align:center;font-family:var(--font-display);font-weight:600;font-size:20px;color:var(--green-dk);padding:8px 24px 0;line-height:1.2}
#faq .guar .promise b{color:var(--ink)}
#faq .guar .gsub{text-align:center;font-size:14.5px;color:#52636c;padding:8px 28px 18px;line-height:1.5}
#faq .guar ul{list-style:none;margin:0;padding:0 22px 8px;display:flex;flex-direction:column;gap:11px}
#faq .guar li{display:flex;align-items:flex-start;gap:11px;font-size:15px;font-weight:600;line-height:1.35}
#faq .guar li .ck{width:24px;height:24px;border-radius:50%;background:var(--green);border:2px solid var(--ink);flex-shrink:0;display:grid;place-items:center;margin-top:1px}
#faq .guar li .ck svg{width:12px;height:12px;stroke:#fff;stroke-width:3.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
#faq .guar .foot{display:flex;align-items:center;gap:13px;background:#eaf3fb;border-top:2.5px solid var(--ink);padding:16px 22px}
#faq .guar .foot .ft{font-size:13.5px;line-height:1.4;color:#3c4f58}
#faq .guar .foot .ft b{color:var(--ink)}
#faq .faq{display:flex;flex-direction:column;gap:14px}
#faq details.q{background:#fff;border:2.5px solid var(--ink);border-radius:18px;box-shadow:5px 6px 0 var(--ink);overflow:hidden}
#faq details.q[open]{box-shadow:5px 6px 0 var(--blue-dk)}
#faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:19px 22px;font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:-.01em;color:var(--ink)}
#faq summary::-webkit-details-marker{display:none}
#faq summary .qn{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--blue-dk);flex-shrink:0}
#faq summary .pm{margin-left:auto;flex-shrink:0;width:30px;height:30px;border-radius:50%;border:2.5px solid var(--ink);background:#e7f0fa;display:grid;place-items:center;transition:transform .22s ease,background .2s}
#faq summary .pm svg{width:14px;height:14px;stroke:var(--ink);stroke-width:3;fill:none;stroke-linecap:round}
#faq details.q[open] summary .pm{transform:rotate(45deg);background:var(--yellow)}
#faq .ans{padding:0 22px 20px;font-size:16px;line-height:1.6;color:#3c4f58;text-wrap:pretty}
#faq .ans b{color:var(--ink);font-weight:700}
#faq .ans .big{font-family:var(--font-display);font-weight:600;color:var(--green-dk)}

/* ---------- #cta ---------- */
#cta{text-align:center}
#cta .prints{display:flex;justify-content:center;margin-bottom:8px}
#cta h2{font-family:var(--font-display);font-weight:600;font-size:52px;line-height:1.04;letter-spacing:-.02em;margin:14px 0 0;color:#fff;text-wrap:balance}
#cta h2 .hl{position:relative;white-space:nowrap;color:#fff}
#cta h2 .hl::after{content:"";position:absolute;left:-2px;right:-2px;bottom:3px;height:13px;background:var(--yellow);z-index:-1;border-radius:3px}
#cta .sub{color:#b7c6cc;max-width:46ch}
#cta .signup{margin:32px auto 0;justify-content:center}
#cta .field{background:#fff}
#cta .micro{margin-top:16px;font-family:var(--font-mono);font-size:12.5px;color:#9fb1b8;display:flex;align-items:center;justify-content:center;gap:8px}
#cta .micro b{color:#eaf2f4;font-weight:600}

/* ---------- footer ---------- */
.foot{background:#10191f;color:#9fb1b8;padding:54px 0 30px}
.foot .row{max-width:1180px;margin:0 auto;padding:0 var(--inner-pad)}
.foot .grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;padding-bottom:34px;border-bottom:1.5px solid #243038}
.foot .word{font-family:var(--font-display);font-weight:600;font-style:italic;font-size:25px;color:#fff;display:flex;align-items:center;gap:10px}
.foot .blurb{font-size:14.5px;line-height:1.55;margin:14px 0 0;max-width:32ch;color:#9fb1b8}
.foot h5{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6b7e87;margin:0 0 14px;font-weight:500}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.foot ul a{font-size:15px;color:#c4d2d8;text-decoration:none;font-weight:500}
.foot ul a:hover{color:#fff}
.foot .base{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;font-size:13px;color:#6b7e87;flex-wrap:wrap}

/* ---------- responsive ---------- */
@media(max-width:1080px){
  .band{padding:72px 0}
  h2.head{font-size:44px}
  .sub{font-size:17px}
  #hero .grid2{grid-template-columns:1fr;gap:48px}
  #hero h1{font-size:46px}
  #hero .copy{text-align:center;display:flex;flex-direction:column;align-items:center}
  #hero .lead{max-width:52ch}
  #hero .flist{align-items:flex-start;text-align:left}
  #hero .cted{justify-content:center}
  #hero .phone-wrap{display:flex;justify-content:center}
  #privacy .top{grid-template-columns:1fr;gap:40px}
  #privacy .copy{text-align:center;display:flex;flex-direction:column;align-items:center}
  #privacy h2.head{text-align:center}
  #privacy .lead{max-width:52ch}
  #privacy .art{display:flex;justify-content:center}
  #privacy .cards{grid-template-columns:repeat(2,1fr)}
  #savings .body{grid-template-columns:1fr;gap:40px;justify-items:center}
  #savings .strip{grid-template-columns:1fr;justify-items:center;text-align:center}
  #faq .layout{grid-template-columns:1fr;gap:36px}
  #faq .guar{position:static}
  .nav-links{display:none}
}
@media(min-width:801px){
  .hiw-mobile{display:none}
}
@media(max-width:800px){
  #howitworks .stage-wrap{display:none}
  .hiw-mobile{display:flex;flex-direction:column;gap:14px}
}
@media(max-width:768px){
  .band{padding:56px 0}
  :root{--inner-pad:28px;--head-mb:40px}
  h2.head{font-size:36px}
  #hero h1{font-size:36px}
  #faq .guar .price .amt{font-size:52px}
  .foot .grid{grid-template-columns:1fr 1fr;gap:28px}
}
@media(max-width:520px){
  .band{padding:44px 0}
  :root{--inner-pad:18px;--head-mb:32px}
  h2.head{font-size:30px}
  #hero h1{font-size:30px}
  #hero .lead{font-size:16px}
  #hero .grid2{gap:28px}
  #hero .phone-wrap{transform:scale(.82);transform-origin:top center;margin-bottom:-72px}
  #hero .blob{width:260px;height:260px}
  #privacy .lead{font-size:16px}
  #privacy .art svg{width:100%;max-width:340px;height:auto}
  #privacy .art{justify-content:center;overflow:hidden}
  #privacy .cards{grid-template-columns:1fr}
  #savings .phone{transform:scale(.82);transform-origin:top center;margin-bottom:-72px}
  #savings .body{gap:16px}
  #savings .strip{padding:16px}
  #faq .guar .price .amt{font-size:46px}
  #cta h2{font-size:30px}
  .signup{flex-direction:column}
  .foot .grid{grid-template-columns:1fr;gap:24px}
  .foot .base{flex-direction:column;gap:6px;text-align:center}
}

/* ---------- mobile how-it-works stack ---------- */
.hiw-mobile .hiw-step{background:#fff;border:2.5px solid var(--ink);border-radius:20px;box-shadow:5px 6px 0 var(--ink);padding:20px;position:relative}
.hiw-mobile .hiw-step.blue{background:#eaf3fb;border-color:var(--blue)}
.hiw-mobile .hiw-step.sage{background:#e8f3f1;border-color:var(--sage)}
.hiw-mobile .hiw-step.pink{background:#fdeef1;border-color:var(--pink)}
.hiw-mobile .step-num{position:absolute;top:-14px;left:-14px;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--font-display);font-weight:600;font-size:15px;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 2px 0 rgba(0,0,0,.15)}
.hiw-mobile .step-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;text-align:center;margin-bottom:14px;color:var(--ink)}
.hiw-mobile .hiw-arrow{text-align:center;font-size:28px;color:var(--ink-soft);padding:6px 0;line-height:1}
.hiw-mobile .hiw-node{display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;border:2.5px solid var(--ink);border-radius:20px;box-shadow:5px 6px 0 var(--ink);padding:20px 20px 16px}
.hiw-mobile .hiw-node img{width:80px;height:80px;object-fit:contain}
.hiw-mobile .hiw-node-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--ink)}
.hiw-mobile .conn{display:flex;flex-direction:column;gap:10px}
.hiw-mobile .crow{display:flex;align-items:center;gap:11px;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:10px 12px}
.hiw-mobile .crow.soon{opacity:.5}
.hiw-mobile .cico{width:30px;flex-shrink:0;display:grid;place-items:center}
.hiw-mobile .cinfo{flex:1;min-width:0}
.hiw-mobile .cname{font-family:var(--font-display);font-weight:600;font-size:15px;line-height:1.05}
.hiw-mobile .cmeta{font-family:var(--font-mono);font-size:10.5px;color:#5a6b73;margin-top:2px}
.hiw-mobile .cpill{font-family:var(--font-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;border:2px solid var(--ink);border-radius:999px;padding:3px 8px;white-space:nowrap}
.hiw-mobile .cpill.on{background:var(--green);color:#fff}
.hiw-mobile .lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.hiw-mobile .lchip{background:#fff;border:2px solid var(--ink);border-radius:9px;height:34px;display:flex;align-items:center;justify-content:center;padding:4px 6px}
.hiw-mobile .lchip img{max-height:17px;max-width:100%;width:auto;display:block}
.hiw-mobile .lchip.more{font-family:var(--font-mono);font-size:11px;font-weight:500;background:var(--ink);color:#fff}
.hiw-mobile .sms{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:13px 14px}
.hiw-mobile .sms .head{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.hiw-mobile .sms .av{width:32px;height:32px;border-radius:50%;background:#eaf3fb;border:2px solid var(--ink);display:grid;place-items:center;overflow:hidden}
.hiw-mobile .sms .av img{height:100%;width:100%;object-fit:contain;padding:3px}
.hiw-mobile .sms .nm{font-family:var(--font-display);font-weight:600;font-size:14px}
.hiw-mobile .sms .st{display:block;font-family:var(--font-mono);font-size:10px;color:var(--green);font-weight:500}
.hiw-mobile .sms .msg{font-size:14px;line-height:1.4;font-weight:500;background:#eef4f6;border:2px solid var(--ink);border-radius:10px 10px 10px 3px;padding:9px 11px;margin-bottom:8px}
.hiw-mobile .sms .replies{display:flex;gap:7px;flex-wrap:wrap}
.hiw-mobile .sms .qr{font-family:var(--font-display);font-weight:600;font-size:12px;border:2px solid var(--ink);border-radius:999px;padding:5px 12px}
.hiw-mobile .sms .qr.solid{background:var(--blue-dk);color:#fff}
.hiw-mobile .sms .qr.ghost{background:#fff;color:var(--blue-dk)}
