/* AI Finds Me — design system v2 (Oct 30 2026). Mobile-first, no framework. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-var-latin.woff2) format("woff2")}
@font-face{font-family:"JB Mono";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jbmono-500-latin.woff2) format("woff2")}
:root{
 --bg:#fbfaf7;--surface:#fff;--ink:#0e0e10;--text:#2a2a2e;--muted:#6b6b72;--faint:#9a9aa1;
 --line:#e9e6df;--line-2:#dedad2;--soft:#f3f1ec;
 --accent:#2f5bff;--accent-d:#2246d9;--accent-soft:#eef2ff;
 --red:#d93d2b;--red-soft:#fdeeec;--green:#138a52;--green-soft:#e8f6ee;
 --r:14px;--r-lg:22px;
 --shadow:0 1px 2px rgba(14,14,16,.04),0 8px 24px -8px rgba(14,14,16,.08);
 --shadow-lg:0 2px 4px rgba(14,14,16,.04),0 24px 60px -20px rgba(14,14,16,.18);
 --sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --mono:"JB Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01"}
img,svg{max-width:100%;display:block}
a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(14,14,16,.25);text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}
a:hover{color:var(--accent);text-decoration-color:currentColor}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
::selection{background:#dfe6ff}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:50}.skip:focus{left:8px;top:8px}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}.narrow{max-width:780px}
h1,h2,h3{color:var(--ink);margin:0 0 .5em;font-weight:650;text-wrap:balance}
h1{font-size:clamp(2.25rem,7.4vw,4.1rem);line-height:1.04;letter-spacing:-.04em}
h2{font-size:clamp(1.7rem,4.6vw,2.6rem);line-height:1.1;letter-spacing:-.032em}
h3{font-size:1.06rem;line-height:1.35;letter-spacing:-.012em;font-weight:620}
p{margin:0 0 1em}
strong{color:var(--ink);font-weight:620}
.lead{font-size:clamp(1.06rem,2.2vw,1.22rem);line-height:1.55;color:var(--muted);text-wrap:pretty}
.small{font-size:.875rem;color:var(--muted)}
.sub{color:var(--muted);max-width:640px;font-size:1.05rem}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.eyebrow:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--accent)}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:.84rem;color:var(--text);box-shadow:0 1px 2px rgba(14,14,16,.04)}
.pill b{font-family:var(--mono);font-weight:500;font-size:.7rem;letter-spacing:.04em;background:var(--ink);color:#fff;border-radius:999px;padding:2px 8px}

/* nav */
.top{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.82);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s,background .2s}
.top.scrolled{border-bottom-color:var(--line);background:rgba(251,250,247,.92)}
.bar{display:flex;align-items:center;gap:12px;height:64px}
.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);margin-right:auto;font-weight:680;letter-spacing:-.025em;font-size:1.08rem}
.brand:hover{color:var(--ink)}
.brand .mark{width:28px;height:28px;flex:none}
.top nav{display:none}
.top nav a{color:var(--text);text-decoration:none;font-size:.93rem;font-weight:500;padding:8px 12px;border-radius:999px;transition:background .15s,color .15s}
.top nav a:hover{background:rgba(14,14,16,.05);color:var(--ink)}
.top nav a[aria-current]{color:var(--ink);background:rgba(14,14,16,.06)}
.menu{position:relative}
.menu summary{list-style:none;cursor:pointer;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);background:var(--surface)}
.menu summary::-webkit-details-marker{display:none}
.menu summary span,.menu summary span:before,.menu summary span:after{display:block;width:16px;height:1.6px;background:var(--ink);border-radius:2px;position:relative;transition:transform .2s}
.menu summary span:before,.menu summary span:after{content:"";position:absolute;left:0}
.menu summary span:before{top:-5px}.menu summary span:after{top:5px}
.menu[open] summary span{background:transparent}.menu[open] summary span:before{transform:translateY(5px) rotate(45deg)}.menu[open] summary span:after{transform:translateY(-5px) rotate(-45deg)}
.menu-panel{position:absolute;right:0;top:50px;width:min(300px,calc(100vw - 40px));background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);padding:8px;display:flex;flex-direction:column}
.menu-panel a{padding:12px 14px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:520}
.menu-panel a:hover{background:var(--soft);color:var(--ink)}
.menu-panel hr{border:0;border-top:1px solid var(--line);margin:6px 8px}
.menu-panel .mp-label{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);padding:8px 14px 2px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#fff;text-decoration:none;font-weight:580;font-size:.98rem;letter-spacing:-.01em;line-height:1.2;padding:14px 22px;border-radius:999px;border:1px solid var(--ink);cursor:pointer;font-family:inherit;transition:transform .15s,background .15s,box-shadow .15s;box-shadow:0 1px 2px rgba(14,14,16,.12),inset 0 1px 0 rgba(255,255,255,.12)}
.btn:hover{background:#26262b;color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px -6px rgba(14,14,16,.4)}
.btn:active{transform:translateY(0)}
.btn .arr{transition:transform .15s}.btn:hover .arr{transform:translateX(3px)}
.btn-sm{padding:9px 16px;font-size:.88rem}
.btn-block{display:flex;width:100%}
.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line-2);box-shadow:0 1px 2px rgba(14,14,16,.04)}
.btn-ghost:hover{background:var(--surface);color:var(--ink);border-color:var(--ink);box-shadow:none}
.btn-light{background:#fff;color:var(--ink);border-color:#fff}.btn-light:hover{background:#f1f1f1;color:var(--ink)}
.btn[disabled]{opacity:.6;cursor:wait;transform:none}

/* hero */
.hero{position:relative;padding:44px 0 56px;overflow:hidden}
.hero:before{content:"";position:absolute;inset:-20% -10% auto;height:620px;background:radial-gradient(50% 60% at 50% 30%,rgba(47,91,255,.10),transparent 70%),radial-gradient(30% 40% at 85% 20%,rgba(255,171,94,.10),transparent 70%);pointer-events:none}
.hero:after{content:"";position:absolute;inset:0 0 auto;height:560px;background-image:linear-gradient(rgba(14,14,16,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(14,14,16,.045) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(60% 70% at 50% 0,#000 20%,transparent 75%);mask-image:radial-gradient(60% 70% at 50% 0,#000 20%,transparent 75%);pointer-events:none}
.hero .wrap{position:relative;z-index:1}
.hero-copy{text-align:center;max-width:860px;margin:0 auto}
.hero-copy .pill{margin-bottom:22px}
.hero h1 .soft{color:var(--faint)}
.hero .lead{max-width:640px;margin:18px auto 0}
.cta-row{display:flex;flex-direction:column;gap:10px;margin:28px 0 14px}
.hero .cta-row{align-items:stretch}
.hero-note{font-size:.86rem;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:0}
.hero-note span{display:inline-flex;align-items:center;gap:6px}
.hero-note span:before{content:"";width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23138a52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.engines{margin:44px auto 0;text-align:center}
.engines p{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--faint);margin:0 0 12px}
.engines ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px}
.engines li{font-weight:600;color:#8b8b92;letter-spacing:-.015em;font-size:1rem}

/* product mock */
.mock{margin:40px auto 0;max-width:1000px;position:relative}
.mock-frame{background:rgba(255,255,255,.65);border:1px solid var(--line);border-radius:26px;padding:8px;box-shadow:var(--shadow-lg)}
.mock-win{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.mock-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:#fcfcfb}
.dots{display:flex;gap:6px}.dots i{width:10px;height:10px;border-radius:50%;background:#e4e1da}
.mock-title{font-size:.8rem;color:var(--muted);font-weight:520;margin-right:auto}
.tag{font-family:var(--mono);font-size:.64rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border:1px dashed var(--line-2);border-radius:999px;padding:3px 9px;white-space:nowrap}
.mock-body{display:grid;grid-template-columns:minmax(0,1fr)}.chatpane,.reportpane,.ans{min-width:0}
.chatpane{padding:20px 18px 22px}
.msg-q{display:flex;justify-content:flex-end;margin-bottom:16px}
.msg-q p{margin:0;background:var(--ink);color:#fff;padding:11px 16px;border-radius:18px 18px 4px 18px;font-size:.95rem;max-width:85%}
.msg-a{display:flex;gap:12px;align-items:flex-start}
.ai-av{flex:none;width:30px;height:30px;border-radius:50%;background:conic-gradient(from 200deg,#2f5bff,#8a6bff,#ff9a5b,#2f5bff);display:grid;place-items:center}
.ai-av:after{content:"";width:12px;height:12px;background:#fff;border-radius:3px;transform:rotate(45deg)}
.ans{flex:1;min-width:0}
.ans>p{margin:3px 0 12px;font-size:.94rem;color:var(--text)}
.ans ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ans li{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fdfdfc}
.ans li .n{font-family:var(--mono);font-size:.72rem;color:var(--muted);width:20px;height:20px;border-radius:6px;background:var(--soft);display:grid;place-items:center;flex:none}
.ans li .nm{font-weight:600;color:var(--ink);font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ans li .sk{flex:1;height:7px;border-radius:4px;background:linear-gradient(90deg,#eeece6,#f5f3ef);min-width:20px}
.ans li .st{font-size:.78rem;color:var(--muted);white-space:nowrap}
.ans .src{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
.ans .src span{font-size:.72rem;color:var(--muted);background:var(--soft);border-radius:999px;padding:3px 9px}
.reportpane{border-top:1px solid var(--line);background:#fcfcfb;padding:18px}
.rp-h{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:0 0 12px}
.rp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.rp-row:last-of-type{border-bottom:0}
.rp-row .k{color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;border-radius:999px;padding:4px 10px;white-space:nowrap}
.badge.bad{color:var(--red);background:var(--red-soft)}
.badge.bad:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.badge.neu{color:var(--ink);background:var(--soft)}
.rp-fix{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.rp-fix li{display:flex;gap:10px;align-items:center;font-size:.86rem;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 11px}
.rp-fix li i{flex:none;width:18px;height:18px;border-radius:5px;background:var(--accent-soft);color:var(--accent);font-style:normal;font-size:.7rem;font-weight:700;display:grid;place-items:center}
.mock-cap{font-size:.78rem;color:var(--faint);text-align:center;margin:14px auto 0;max-width:620px}
.mock-sm{margin:28px 0 0}
.mock-sm .mock-body{grid-template-columns:1fr}
.mock-sm .reportpane{border-left:0;border-top:1px solid var(--line)}
.mock-sm .mock-cap{text-align:left;margin-left:0}
/* reveal animation for the mock (only when JS is on) */
.js .mock .ans>p,.js .mock .ans li,.js .mock .ans .src,.js .mock .rp-row,.js .mock .rp-fix li{opacity:0;transform:translateY(6px)}
.js .mock.play .ans>p,.js .mock.play .ans li,.js .mock.play .ans .src,.js .mock.play .rp-row,.js .mock.play .rp-fix li{animation:rise .5s cubic-bezier(.2,.7,.2,1) forwards}
.js .mock.play .ans>p{animation-delay:.25s}.js .mock.play .ans li:nth-child(1){animation-delay:.55s}.js .mock.play .ans li:nth-child(2){animation-delay:.75s}.js .mock.play .ans li:nth-child(3){animation-delay:.95s}.js .mock.play .ans .src{animation-delay:1.15s}
.js .mock.play .rp-row:nth-of-type(1){animation-delay:1.4s}.js .mock.play .rp-row:nth-of-type(2){animation-delay:1.55s}.js .mock.play .rp-row:nth-of-type(3){animation-delay:1.7s}
.js .mock.play .rp-fix li:nth-child(1){animation-delay:1.9s}.js .mock.play .rp-fix li:nth-child(2){animation-delay:2.02s}.js .mock.play .rp-fix li:nth-child(3){animation-delay:2.14s}
@keyframes rise{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.js .mock .ans>p,.js .mock .ans li,.js .mock .ans .src,.js .mock .rp-row,.js .mock .rp-fix li{opacity:1;transform:none;animation:none!important}}

/* sections */
.sec{padding:72px 0}
.sec.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-head{max-width:720px;margin:0 0 36px}
.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}
.sec-head.center .sub{margin-left:auto;margin-right:auto}
.sec-head h2{margin-bottom:14px}
.pagehead{position:relative;padding:56px 0 8px;overflow:hidden}
.pagehead:after{content:"";position:absolute;inset:0 0 auto;height:360px;background-image:linear-gradient(rgba(14,14,16,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(14,14,16,.04) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(70% 80% at 30% 0,#000 10%,transparent 70%);mask-image:radial-gradient(70% 80% at 30% 0,#000 10%,transparent 70%);pointer-events:none}
.pagehead .wrap{position:relative;z-index:1}
.pagehead h1{font-size:clamp(2.1rem,6vw,3.4rem)}
.pagehead .lead{max-width:640px}
.pagehead .btn{margin-top:10px}
.sec .narrow h2{font-size:clamp(1.45rem,3.6vw,1.9rem);margin-top:1.6em}
.sec .narrow>h2:first-child{margin-top:0}
.two{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow)}
.card h2{font-size:1.4rem}
.card .btn{margin-top:6px}
.ticks{list-style:none;padding:0;margin:0 0 1.2em}
.ticks li{position:relative;padding-left:32px;margin:.6em 0}
.ticks li:before{content:"";position:absolute;left:0;top:.2em;width:20px;height:20px;border-radius:7px;background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%232f5bff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.plain{padding-left:1.2em}.plain li{margin:.6em 0;padding-left:4px}
.plain li::marker{color:var(--faint);font-family:var(--mono);font-size:.85em}

/* what we fix */
.fixes{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:14px}
.fixes li{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s}
.fixes li:hover{border-color:var(--line-2);box-shadow:var(--shadow);transform:translateY(-2px)}
.sec.alt .fixes li{background:var(--bg)}
.fixes .ic{width:40px;height:40px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;margin-bottom:18px;box-shadow:0 1px 2px rgba(14,14,16,.05)}
.fixes .ic svg{width:20px;height:20px}
.fixes p{margin:0;color:var(--muted);font-size:.95rem}
.fixes li.wide{background:var(--ink)!important;border-color:var(--ink);color:#c9c9cf}
.fixes li.wide h3{color:#fff}.fixes li.wide p{color:#b4b4bb}
.fixes li.wide .ic{background:#1d1d21;border-color:#2c2c31}
.termline{margin:22px 0 0;font-size:.92rem;color:var(--muted)}

/* steps */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:14px;counter-reset:s}
.steps li{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;background:var(--surface)}
.num{display:inline-flex;gap:5px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:4px 10px;margin-bottom:16px}
.num:before{content:"STEP ";}
.steps p{margin:0;color:var(--muted)}
.steps h3{font-size:1.15rem}

/* pricing */
.pricing-row{align-items:center}
.price-card{position:relative;background:var(--ink);color:#c9c9cf;border-radius:26px;padding:30px 26px 26px;box-shadow:var(--shadow-lg);overflow:hidden}
.price-card:before{content:"";position:absolute;inset:-40% -30% auto auto;width:360px;height:360px;background:radial-gradient(closest-side,rgba(47,91,255,.35),transparent);pointer-events:none}
.price-card>*{position:relative}
.plan{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#9a9aa3;margin:0 0 14px}
.plan span{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:3px 10px;letter-spacing:.03em}
.price{margin:0 0 6px;display:flex;align-items:baseline;gap:6px}
.amt{font-size:3.6rem;font-weight:650;color:#fff;letter-spacing:-.05em;line-height:1}
.per{font-size:1rem;color:#9a9aa3}
.terms{color:#e6e6ea;font-weight:500;margin-bottom:20px}
.checks{list-style:none;padding:0;margin:0 0 24px;border-top:1px solid rgba(255,255,255,.1)}
.checks li{padding:11px 0 11px 30px;border-bottom:1px solid rgba(255,255,255,.08);position:relative;font-size:.95rem;color:#dcdce1}
.checks li:before{content:"";position:absolute;left:0;top:13px;width:18px;height:18px;border-radius:6px;background:rgba(255,255,255,.1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.price-card .btn{background:#fff;color:var(--ink);border-color:#fff}
.price-card .btn:hover{background:#ececef;color:var(--ink)}
.price-card .small{color:#9a9aa3;margin:14px 0 0;text-align:center}
.price-card .small a{color:#fff}
.note{background:var(--surface);border:1px solid var(--line);border-left:3px solid #e2a23b;border-radius:var(--r);padding:20px 22px;margin:24px 0}
.note h3{margin-bottom:.35em;font-size:1rem}.note p{margin:0;color:var(--muted);font-size:.95rem}

/* chips, industries */
.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.chips a{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink);font-weight:550;background:var(--surface);transition:border-color .15s,transform .15s,box-shadow .15s}
.chips a:after{content:"→";color:var(--faint);transition:transform .15s,color .15s}
.chips a:hover{border-color:var(--ink);transform:translateY(-1px);box-shadow:var(--shadow);color:var(--ink)}
.chips a:hover:after{transform:translateX(2px);color:var(--ink)}
.chips-sm{gap:8px;margin:0 0 24px}
.chips-sm a,.chips-sm span{padding:6px 12px;font-size:.86rem;font-weight:550;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;display:inline-block}
.chips-sm a:after{content:none}
.quotes{list-style:none;padding:0;margin:0 0 1.4em;display:grid;gap:10px}
.quotes li{background:var(--surface);border:1px solid var(--line);padding:12px 16px 12px 46px;border-radius:16px 16px 16px 4px;font-weight:520;color:var(--ink);position:relative}
.quotes li:before{content:"";position:absolute;left:14px;top:50%;margin-top:-10px;width:20px;height:20px;border-radius:50%;background:conic-gradient(from 200deg,#2f5bff,#8a6bff,#ff9a5b,#2f5bff)}

/* FAQ accordion */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:600;color:var(--ink);padding:20px 44px 20px 0;list-style:none;position:relative;font-size:1.03rem;letter-spacing:-.012em}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"";position:absolute;right:4px;top:50%;width:28px;height:28px;margin-top:-14px;border-radius:50%;border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 3.5v9M3.5 8h9' stroke='%230e0e10' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/12px no-repeat;transition:transform .25s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq summary:hover{color:var(--accent)}
.faq details p{color:var(--muted);margin:0 0 22px;padding-right:40px}
.faq-all{margin-top:22px}

/* contact */
.contact-card address{font-style:normal;color:var(--muted);margin-bottom:1em}
.contact-card p{margin-bottom:.6em}
.founder{display:flex;gap:14px;align-items:center;margin:0 0 18px}
.founder .av{width:46px;height:46px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:650;letter-spacing:-.02em}
.founder p{margin:0;line-height:1.35}.founder .small{display:block}

/* CTA band */
.band{padding:24px 0 80px}
.band-in{position:relative;background:var(--ink);color:#b8b8bf;border-radius:30px;padding:44px 26px;overflow:hidden;display:flex;flex-direction:column;gap:22px}
.band-in:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(60% 90% at 100% 0,#000,transparent 70%);mask-image:radial-gradient(60% 90% at 100% 0,#000,transparent 70%)}
.band-in:after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;background:radial-gradient(closest-side,rgba(47,91,255,.4),transparent);pointer-events:none}
.band-in>*{position:relative;z-index:1}
.band h2{color:#fff;margin-bottom:10px}.band p{margin:0;max-width:520px}
.band-cta{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.band .btn{background:#fff;color:var(--ink);border-color:#fff}.band .btn:hover{background:#ececef;color:var(--ink)}
.link-light{color:#e6e6ea;text-decoration-color:rgba(255,255,255,.3);text-align:center;font-size:.93rem}
.link-light:hover{color:#fff}

/* form */
.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow);margin-bottom:16px}
.form label{display:block;font-weight:560;color:var(--ink);margin-bottom:16px;font-size:.9rem}
.form input,.form select{display:block;width:100%;margin-top:7px;padding:13px 14px;font:inherit;font-size:16px;border:1px solid var(--line-2);border-radius:12px;background:var(--bg);color:var(--ink);transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;appearance:none}
.form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%236b6b72' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px}
.form input::placeholder{color:var(--faint)}
.form input:focus,.form select:focus{outline:none;border-color:var(--ink);background:var(--surface);box-shadow:0 0 0 4px rgba(47,91,255,.12)}
.form .btn{margin-top:6px;padding:16px 22px}
.row2{display:grid;grid-template-columns:1fr;gap:0 14px}.opt{font-weight:400;color:var(--faint)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.msg{margin:12px 0 0;font-weight:560;font-size:.92rem}.msg:empty{display:none}.msg.ok{color:var(--green)}.msg.err{color:var(--red)}
.form .small{margin:12px 0 0}

/* tables, glossary */
.tablewrap{overflow-x:auto;margin:0 0 1.4em;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.cmp{width:100%;border-collapse:collapse;font-size:.94rem}
.cmp th,.cmp td{border-bottom:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}
.cmp tr:last-child th,.cmp tr:last-child td{border-bottom:0}
.cmp thead th{background:var(--soft);color:var(--ink);font-weight:600;font-size:.85rem}
.cmp tbody th{color:var(--ink);font-weight:600;white-space:nowrap}
.gloss .term{border-top:1px solid var(--line);padding:22px 0 6px;scroll-margin-top:84px}
.gloss .term h2{font-size:1.2rem;margin-top:0}
.gloss .term p{color:var(--text)}

/* footer */
.foot{border-top:1px solid var(--line);background:var(--surface);padding:56px 0 28px;font-size:.92rem;color:var(--muted)}
.foot a{color:var(--text);text-decoration:none}.foot a:hover{color:var(--accent)}
.fcols{display:grid;grid-template-columns:1fr 1fr;gap:32px 20px}
.fcol-brand{grid-column:1/-1}
.fbrand{display:inline-flex;align-items:center;gap:9px;font-weight:680;color:var(--ink);font-size:1.08rem;letter-spacing:-.025em;margin:0 0 12px}
.fbrand .mark{width:28px;height:28px}
.fcol-brand p{max-width:340px}
.fh{font-family:var(--mono);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--faint);margin:0 0 12px}
.flinks{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.foot address{font-style:normal;line-height:1.55}
.fcontact a{font-weight:560;color:var(--ink)}
.fine{font-size:.78rem;color:var(--faint);margin:28px 0 0;border-top:1px solid var(--line);padding-top:20px;max-width:none}
.fine+.fine{border-top:0;padding-top:0;margin-top:10px}
.bigmark{font-weight:700;letter-spacing:-.06em;font-size:clamp(3.4rem,15vw,11rem);line-height:.8;color:#f1eee8;margin:36px 0 0;user-select:none;white-space:nowrap;overflow:hidden}

/* scroll reveal */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}}

/* ≥ 600px */
@media (min-width:600px){
 .wrap{padding:0 28px}
 .cta-row{flex-direction:row;flex-wrap:wrap}
 .hero .cta-row{justify-content:center}
 .row2{grid-template-columns:1fr 1fr}
 .fixes{grid-template-columns:1fr 1fr}
 .fixes li.wide{grid-column:1/-1}
 .band-cta{flex-direction:row;align-items:center}
 .form{padding:30px}
 .fcols{grid-template-columns:repeat(3,1fr)}
}
/* ≥ 900px */
@media (min-width:900px){
 body{font-size:17px}
 .top nav{display:flex;gap:2px;margin-right:12px}
 .menu{display:none}
 .hero{padding:72px 0 88px}
 .mock{margin-top:60px}
 .mock-body{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
 .chatpane{padding:28px 28px 30px}
 .reportpane{border-top:0;border-left:1px solid var(--line);padding:26px 24px}
 .sec{padding:104px 0}
 .pagehead{padding:84px 0 16px}
 .two{grid-template-columns:1fr 1fr;gap:56px}
 .fixes{grid-template-columns:repeat(3,1fr);gap:16px}
 .fixes li.wide{grid-column:span 3;display:grid;grid-template-columns:auto 1fr;gap:4px 20px;align-items:center}
 .fixes li.wide .ic{grid-row:span 2;margin:0}
 .steps{grid-template-columns:repeat(3,1fr);gap:16px}
 .narrow .steps{grid-template-columns:1fr}
 .band-in{flex-direction:row;align-items:center;justify-content:space-between;padding:60px 56px}
 .band-cta{flex-direction:column;align-items:stretch;min-width:260px}
 .price-card{padding:36px 34px 30px}
 .fcols{grid-template-columns:1.6fr 1fr 1fr 1fr 1fr}
 .fcol-brand{grid-column:auto}
 .mock-sm .mock-body{grid-template-columns:1fr}
 .mock-sm .reportpane{border-left:0;border-top:1px solid var(--line)}
}
@media (min-width:1100px){.fixes li.wide{grid-column:span 3}}

@media (max-width:599px){.ans li .st{display:none}.ans li{padding:10px}.rp-row{font-size:.86rem}.badge{font-size:.74rem;padding:4px 9px}.hero .lead{font-size:1.04rem}.msg-q p{font-size:.92rem}.chatpane{padding:18px 14px 20px}.reportpane{padding:16px 14px}.mock-bar{padding:10px 12px}.mock-frame{padding:6px;border-radius:22px}.mock-win{border-radius:17px}}
html,body{overflow-x:clip}
.sec-tight{padding-top:32px}
@media (max-width:899px){.price-first .price-card{order:-1}}
.phead-wide>*{max-width:780px}
@media (max-width:640px){.cmp{min-width:620px}.tablewrap{margin-right:-20px;border-radius:var(--r) 0 0 var(--r);border-right:0}}
@media (max-width:599px){.hero{padding:26px 0 44px}.hero-copy .pill{margin-bottom:18px;font-size:.78rem}.hero h1{font-size:2.2rem}.hero .lead{font-size:1rem;margin-top:14px}.cta-row{margin:22px 0 12px}.hero-note{font-size:.78rem;gap:4px 12px}.hero-note span:before{width:12px;height:12px;background-size:12px}.mock{margin-top:28px}}

/* industries v2 (Oct 30 2026) */
.inds{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:12px}
.inds a{display:block;height:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;text-decoration:none;color:var(--ink);transition:border-color .2s,box-shadow .2s,transform .2s}
.inds a:hover{border-color:var(--line-2);box-shadow:var(--shadow);transform:translateY(-2px);color:var(--ink)}
.sec.alt .inds a{background:var(--bg)}
.inds h3{margin:0 0 6px;font-size:1.08rem}
.inds p{margin:0 0 12px;color:var(--muted);font-size:.93rem;line-height:1.5}
.inds .go{font-size:.85rem;font-weight:600;color:var(--accent,#2f5bff)}
.inds-other{margin-top:18px;color:var(--muted)}
@media (max-width:639px){.inds .go{display:none}.inds a{padding:16px 18px}.inds p{margin:0}}
.fother{font-size:.85rem;color:var(--muted);margin:12px 0 0;line-height:1.5}
@media (min-width:640px){.inds{grid-template-columns:1fr 1fr}}
@media (min-width:980px){.inds{grid-template-columns:repeat(4,1fr)}.inds li:nth-child(5),.inds li:nth-child(6),.inds li:nth-child(7){grid-column:auto}}
