/* TechConcepts — dealer landing. Tokens copied from techconcepts.org (Oct 2026). */
:root{
  --ink:#12181C;--lead:#5B6670;--paper:#FAFAF9;--surface:#FFFFFF;--hair:#DDE2E5;
  --accent:#0E7C86;--accent-text:#0E7C86;--focus-ring:#0E7C86;
  --font-display:"Manrope","Inter",Helvetica,Arial,sans-serif;--font-body:"Inter",Helvetica,Arial,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;
  --r-md:8px;--r-lg:14px;--bt:1px;--bk:2px;
  --t-xs:.75rem;--t-sm:.875rem;--t-md:1.125rem;--t-lg:1.375rem;--t-xl:1.75rem;--t-2xl:2.25rem;--t-3xl:3rem;--t-4xl:3.75rem;
}
@media (prefers-color-scheme: dark){:root{--ink:#F3F5F6;--lead:#9AA4AC;--paper:#12181C;--surface:#1A2126;--hair:#2C353C;--accent-text:#5FC3CC;--focus-ring:#5FC3CC;}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
a{color:inherit;text-decoration:none}
svg{display:block}
:focus-visible{outline:var(--bk) solid var(--focus-ring);outline-offset:2px;border-radius:4px}
h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0 0 var(--s4);color:var(--ink)}
h1{font-size:2.5rem}h2{font-size:var(--t-xl)}h3{font-size:var(--t-md)}
@media(min-width:768px){h1{font-size:var(--t-3xl)}h2{font-size:var(--t-2xl)}}
@media(min-width:1024px){h1{font-size:var(--t-4xl)}.hero h1{font-size:3.25rem}}
p{margin:0 0 var(--s4)}
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:var(--r-md);z-index:100}.skip:focus{left:8px}
.container{max-width:1120px;margin-inline:auto;padding-inline:var(--s5)}.narrow{max-width:760px}
.section{padding-block:var(--s8)}@media(min-width:768px){.section{padding-block:var(--s9)}}
.grid{display:grid;grid-template-columns:1fr;gap:var(--s5)}
@media(min-width:768px){.grid--2{grid-template-columns:1fr 1fr}.grid--3{grid-template-columns:repeat(3,1fr)}}
.row{display:flex;gap:var(--s4);flex-wrap:wrap;align-items:center}
.lead-text{font-size:var(--t-md);color:var(--lead);max-width:60ch}
.muted{color:var(--lead)}.small{font-size:var(--t-sm)}
.rule{height:var(--bk);width:var(--s8);background:var(--accent);border:0;margin:var(--s3) 0 var(--s5)}
.eyebrow{display:block;color:var(--accent-text);font-weight:600;font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;margin:0 0 var(--s2)}
.wordmark{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;font-size:var(--t-lg);color:var(--ink);display:inline-block;line-height:1}
.wordmark--big{font-size:var(--t-2xl)}
.descriptor{display:block;margin-top:var(--s2);padding-top:var(--s2);border-top:var(--bk) solid var(--accent);font-weight:500;font-size:var(--t-xs);letter-spacing:.06em;color:var(--lead);text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--s3) var(--s5);border-radius:var(--r-md);font-weight:600;font-size:var(--t-sm);line-height:1.2;border:var(--bk) solid transparent;transition:background .12s,color .12s,border-color .12s;text-align:center}
.btn--primary{background:var(--ink);color:var(--paper)}.btn--primary:hover{background:var(--accent);color:#FAFAF9}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--hair)}.btn--ghost:hover{border-color:var(--accent);color:var(--accent-text)}
.btn--lg{padding:var(--s4) var(--s5);font-size:1rem}
.btn svg{width:18px;height:18px}
/* nav */
.top{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(8px);border-bottom:var(--bt) solid var(--hair)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s4)}
.nav__links{display:none;gap:var(--s5);font-size:var(--t-sm);color:var(--lead)}.nav__links a:hover{color:var(--accent-text)}
@media(min-width:960px){.nav__links{display:flex}}
.nav__right{display:flex;align-items:center;gap:var(--s3)}
.lang{display:flex;border:var(--bt) solid var(--hair);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}
.lang a{font-size:var(--t-xs);font-weight:600;letter-spacing:.06em;padding:6px 9px;color:var(--lead)}
.lang a:hover{color:var(--accent-text)}
.lang a[aria-current]{background:var(--ink);color:var(--paper)}
.nav .btn{display:none}@media(min-width:600px){.nav .btn{display:inline-flex}}
/* hero */
.hero{display:grid;gap:var(--s7);align-items:center}
@media(min-width:960px){.hero{grid-template-columns:1.1fr .9fr}}
.cta-note{margin-top:var(--s4);font-size:var(--t-sm);color:var(--lead)}
.demo{border:var(--bt) solid var(--hair);border-radius:var(--r-lg);background:var(--surface);padding:var(--s5);margin:0;box-shadow:0 4px 16px rgba(0,0,0,.04)}
.demo__meta{display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;font-size:var(--t-xs);color:var(--lead);margin-bottom:var(--s4)}
.msg{max-width:88%;padding:var(--s3) var(--s4);border-radius:var(--r-lg);font-size:var(--t-sm);margin-bottom:var(--s3);line-height:1.5}
.msg--in{background:color-mix(in srgb,var(--lead) 10%,transparent);border-bottom-left-radius:4px}
.msg--out{margin-left:auto;background:var(--accent);color:#fff;border-bottom-right-radius:4px}
.msg small{display:block;font-size:var(--t-xs);opacity:.75;margin-bottom:2px}
.demo__foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap;border-top:var(--bt) solid var(--hair);padding-top:var(--s4);margin-top:var(--s4);font-size:var(--t-sm);color:var(--lead)}
.badge{display:inline-block;padding:var(--s1) var(--s3);border-radius:999px;font-size:var(--t-xs);font-weight:600;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-text)}
.badge--neutral{background:color-mix(in srgb,var(--lead) 14%,transparent);color:var(--ink)}
/* band + stats */
.band{background:var(--surface);border-top:var(--bt) solid var(--hair);border-bottom:var(--bt) solid var(--hair)}
.stat__num{font-family:var(--font-display);font-size:var(--t-xl);font-weight:700;line-height:1.1}
@media(min-width:768px){.stat__num{font-size:var(--t-2xl)}}
.stat__label{color:var(--lead);font-size:var(--t-sm);margin-top:var(--s2)}
/* problem → fix rows */
.fixes{display:grid;gap:var(--s4);margin-top:var(--s6)}
.fix{display:grid;grid-template-columns:1fr;gap:var(--s4);border:var(--bt) solid var(--hair);border-radius:var(--r-lg);background:var(--surface);padding:var(--s5);transition:border-color .2s}
.fix:hover{border-color:var(--accent)}
@media(min-width:900px){.fix{grid-template-columns:1.05fr 1.2fr 1.3fr 1fr;gap:var(--s5);padding:var(--s5) var(--s6)}}
.fix__head{display:flex;gap:var(--s3);align-items:flex-start}
.fix__head h3{margin:0;font-size:var(--t-md)}
.tile{flex:0 0 auto;width:44px;height:44px;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center}
.tile svg{width:22px;height:22px}
.tile--txt{font-family:var(--font-display);font-weight:700;font-size:var(--t-md)}
.fix__lbl{display:block;font-size:var(--t-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--lead);margin-bottom:var(--s1)}
.fix p{margin:0;font-size:var(--t-sm);color:var(--lead);line-height:1.6}
.fix .fix__win p{color:var(--ink);font-weight:600}
.fix__win .fix__lbl{color:var(--accent-text)}
.hint{margin-top:var(--s5);font-size:var(--t-sm);color:var(--lead)}
/* small cards */
.card{border:var(--bt) solid var(--hair);border-radius:var(--r-lg);padding:var(--s5);background:var(--surface);transition:border-color .2s}
.card:hover{border-color:var(--accent)}
.card--app{display:grid;grid-template-columns:44px 1fr;gap:var(--s4);align-items:start}
.card__title{font-family:var(--font-display);font-size:var(--t-md);font-weight:700;margin:0 0 var(--s1)}
.card__body{color:var(--lead);font-size:var(--t-sm);line-height:1.6;margin:0}
/* proof */
.proof .stat{border-left:var(--bk) solid var(--accent);padding-left:var(--s4)}
.proof .stat p{color:var(--lead);font-size:var(--t-sm);margin:var(--s3) 0 0}
.disclaimer{font-size:var(--t-xs);color:var(--lead);margin-top:var(--s6)}
/* steps */
.steps{list-style:none;padding:0;margin:var(--s6) 0 0}
.step .tile{margin-bottom:var(--s4)}
.step h3{margin-bottom:var(--s2)}
/* about */
.about{display:grid;grid-template-columns:52px 1fr;gap:var(--s4);align-items:start}
.about .tile{width:52px;height:52px}
.chips{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;padding:0;margin:var(--s4) 0 0}
/* final */
.final{background:var(--surface);border-top:var(--bt) solid var(--hair)}
/* footer — same as techconcepts.org */
.footer{background:#12181C;color:#F3F5F6;padding-block:var(--s7)}
.footer__grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s5)}
.footer__blurb{opacity:.75;margin-top:var(--s3);max-width:40ch;font-size:var(--t-sm)}
.footer__links{display:flex;gap:var(--s5);flex-wrap:wrap;font-size:var(--t-sm)}
.footer__link{color:#F3F5F6;opacity:.85}.footer__link:hover{opacity:1;color:#5FC3CC}
.footer__note{display:block;margin-top:var(--s5);color:#DDE2E5;font-size:var(--t-xs);line-height:1.6;opacity:.8}
.footer .wordmark{color:#F3F5F6}.footer .descriptor{color:#DDE2E5}
.footer details{margin-top:var(--s4);font-size:var(--t-xs);color:#DDE2E5}
.footer summary{cursor:pointer;opacity:.85}
.footer details p{margin-top:var(--s2);max-width:70ch}
