body{margin:0;background:var(--bg)}:root{--bg:#ebeae5;--ink:#211f1a;--ink-muted:#5b584e;--surface:#e3e1dc;--surface-2:#dad8d2;--accent:#2c5fc4;--accent-hover:#2450a3;--on-accent:#fbf8f1;--hairline:#d9d7d1;--tile-ochre:#f2b134;--tile-teal:#2f6e63;--tile-clay:#e0563a;--tile-indigo:#3b4a6b;--accent-ink:#2557a8;--ochre-ink:#87600f;--teal-ink:#2f6e63;--clay-ink:#943214;--indigo-ink:#3b4a6b;--focus-ring:#2557a8;--ease-out:cubic-bezier(0.23,1,0.32,1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1c1b18;--ink:#f1eee6;--ink-muted:#a8a398;--surface:#242320;--surface-2:#2c2b27;--hairline:#3c3b37;--accent:#5b9af0;--accent-hover:#6fa8f5;--on-accent:#1c1b18;--accent-ink:#5b9af0;--ochre-ink:#f2b134;--teal-ink:#4fa294;--clay-ink:#f0785c;--indigo-ink:#7b8cbf;--focus-ring:#5b9af0}}:root[data-theme=dark]{--bg:#1c1b18;--ink:#f1eee6;--ink-muted:#a8a398;--surface:#242320;--surface-2:#2c2b27;--hairline:#3c3b37;--accent:#5b9af0;--accent-hover:#6fa8f5;--on-accent:#1c1b18;--accent-ink:#5b9af0;--ochre-ink:#f2b134;--teal-ink:#4fa294;--clay-ink:#f0785c;--indigo-ink:#7b8cbf;--focus-ring:#5b9af0}.mosaic-root,.mosaic-root *{box-sizing:border-box}.mosaic-root{background:var(--bg);color:var(--ink);font-family:Source Sans\ 3,-apple-system,Segoe UI,sans-serif;font-size:106.25%;line-height:1.6;max-width:100vw;overflow-x:hidden;-webkit-font-smoothing:antialiased;scrollbar-color:var(--hairline) transparent;transition:background-color .2s ease,color .2s ease}.mosaic-root,.mosaic-root *{transition:border-color .2s ease,background-color .2s ease}@media (prefers-reduced-motion:no-preference){.mosaic-root{scroll-behavior:smooth}}.mosaic-root h1,.mosaic-root h2,.mosaic-root h3{font-family:Onest,Georgia,serif;font-weight:600;margin:0;color:var(--ink);text-wrap:balance}.mosaic-root h1{line-height:1.05;letter-spacing:-.01em}.mosaic-root h2{line-height:1.1;letter-spacing:-.005em}.mosaic-root h3{line-height:1.25;letter-spacing:0}.mosaic-root p{margin:0}.mosaic-root a{color:inherit}.mosaic-root a:focus-visible,.mosaic-root button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.mosaic-root ::selection{background:var(--accent-ink);color:var(--on-accent)}.mono{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,monospace}p .mono{font-weight:600;color:var(--ink)}.container{max-width:1160px;margin:0 auto;padding:0 1.5rem}@media (min-width:1600px){.container{max-width:1400px}}.grout{border:none;border-top:1px solid var(--hairline);margin:0}section{padding:4rem 0}@media (max-width:640px){section{padding:3.25rem 0}}#honesty,#how,.final-cta{background:var(--surface)}.mosaic-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--hairline)}.mosaic-nav .brand{font-family:Onest,serif;font-weight:600;font-size:1.3rem;letter-spacing:.01em}.brand-lockup{display:flex;align-items:center;gap:.6rem}.mosaic-nav .brand em{font-style:italic;color:var(--accent-ink)}.mosaic-nav .links{display:flex;gap:1.75rem;flex-wrap:wrap;align-items:center}.mosaic-nav .links a{text-decoration:none;font-size:.95rem;color:var(--ink-muted);border-bottom:1px solid transparent;padding-bottom:2px;transition:color .15s ease,border-bottom-color .15s ease}.mosaic-nav .links a:hover{color:var(--ink);border-bottom-color:var(--accent-ink)}.mosaic-nav .links a:active{color:var(--accent-ink);border-bottom-color:var(--accent-ink);transition-duration:60ms}.theme-toggle{font-family:IBM Plex Mono,monospace;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;background:transparent;border:1px solid var(--hairline);color:var(--ink-muted);padding:.45rem .75rem;border-radius:8px;cursor:pointer;transition:border-color .12s ease,color .12s ease,transform .12s var(--ease-out)}.theme-toggle:hover{border-color:var(--accent-ink);color:var(--ink)}.theme-toggle:active{transform:scale(.97)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:Source Sans\ 3,sans-serif;font-weight:600;font-size:1rem;text-decoration:none;padding:.85rem 1.5rem;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .16s var(--ease-out),box-shadow .16s var(--ease-out)}.btn:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px -6px color-mix(in srgb,var(--accent) 45%,transparent)}.btn:hover:active{transform:translateY(-1px) scale(.97)}}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--hairline)}.btn-ghost:hover{border-color:var(--accent-ink);color:var(--accent-ink)}.auth-form{gap:1.25rem;max-width:420px}.auth-form,.auth-form .field{display:flex;flex-direction:column}.auth-form .field{gap:.4rem}.auth-form label{font-family:IBM Plex Mono,monospace;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.auth-form input{font-family:Source Sans\ 3,sans-serif;font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);border-radius:10px;padding:.75rem 1rem;transition:border-color .12s ease}.auth-form input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent-ink)}.auth-form .btn{align-self:flex-start}.auth-form .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-form [role=alert]{color:var(--clay-ink);font-size:.875rem;margin:0}.auth-form [role=status]{color:var(--ink-muted);font-size:.9rem;margin:0}.auth-mode-toggle{display:flex;gap:.5rem}.auth-mode-toggle button{font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;background:transparent;border:1px solid var(--hairline);color:var(--ink-muted);padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:border-color .12s ease,color .12s ease}.auth-mode-toggle button.active{border-color:var(--accent-ink);color:var(--accent-ink)}.hero{padding:4.5rem 0 4rem}.hero-grid{display:grid;grid-template-columns:1fr;grid-gap:3rem;gap:3rem;align-items:center}@media (min-width:900px){.hero-grid{grid-template-columns:1.05fr .95fr;gap:2.5rem}}.hero-copy h1{font-size:clamp(2.4rem,5vw,4.2rem);max-width:12ch}.hero-copy .lede{margin-top:1.5rem;font-size:1.15rem;color:var(--ink-muted);max-width:46ch}.hero-copy .actions{margin-top:2.25rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-start}.hero-illustration{display:flex;flex-direction:column;align-items:flex-end}.hero-illustration svg{width:100%;height:auto;max-width:480px}.hero-illustration figcaption{margin-top:.75rem;font-size:.78rem;color:var(--ink-muted);align-self:flex-end}.hero-illustration figcaption b{color:var(--ink);font-weight:600}.trust-strip{padding:1.5rem 0;background:var(--surface)}.trust-strip-row{display:flex;flex-direction:column}.trust-item{font-family:Source Sans\ 3,sans-serif;font-size:.92rem;font-weight:500;color:var(--ink-muted);padding:.6rem 0;border-top:1px solid var(--hairline)}.trust-item:first-child{border-top:none}@media (min-width:700px){.trust-strip-row{flex-direction:row;align-items:center}.trust-item{padding:0 1.5rem;border-top:none;border-left:1px solid var(--hairline)}.trust-item:first-child{padding-left:0;border-left:none}}.tile{transform-box:fill-box;transform-origin:center;animation:assemble .82s cubic-bezier(.22,.8,.24,1) both,tile-drift 7s ease-in-out infinite;animation-delay:var(--d),calc(.82s + var(--d))}@keyframes assemble{0%{transform:translate(var(--sx),var(--sy)) scale(.55);opacity:0}55%{opacity:1}to{transform:translate(0) scale(1);opacity:1}}@keyframes tile-drift{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.tile{animation:none;transform:none;opacity:1}}.section-header{max-width:640px;margin-bottom:3rem}.section-header h2{font-size:clamp(1.8rem,3.4vw,2.8rem)}.section-header .lede{margin-top:1rem;color:var(--ink-muted);font-size:1.05rem}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-family:Onest,Georgia,serif;font-weight:600;font-size:clamp(1.8rem,3.4vw,2.8rem);color:var(--ink);padding:.75rem 0;transition:background-color .2s ease}summary::-webkit-details-marker{display:none}summary:after{content:"+";flex:none;margin-left:1rem;font-size:.8em;color:var(--accent-ink);transition:transform .18s var(--ease-out)}details[open] summary:after{transform:rotate(45deg)}@media (hover:hover) and (pointer:fine){summary:hover{background:var(--surface-2)}}.compare-grid{display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;border:1px solid var(--hairline)}@media (min-width:800px){.compare-grid{grid-template-columns:1fr 1fr}}.compare-col{padding:2.25rem}.compare-col+.compare-col{border-top:1px solid var(--hairline)}@media (min-width:800px){.compare-col+.compare-col{border-top:none;border-left:1px solid var(--hairline)}}.compare-col.bad h3{color:var(--ink-muted)}.compare-col.good h3{color:var(--accent-ink)}.compare-col h3{font-size:1.1rem;font-family:IBM Plex Mono,monospace;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.compare-col ol{margin:1.5rem 0 0;padding:0;list-style:none;counter-reset:step}.compare-col li{counter-increment:step;display:flex;gap:.9rem;padding:.6rem 0;font-size:.98rem}.compare-col li:before{content:counter(step);font-family:IBM Plex Mono,monospace;font-size:.8rem;color:var(--ink-muted);border:1px solid var(--hairline);border-radius:50%;width:1.5rem;height:1.5rem;flex:none;display:flex;align-items:center;justify-content:center}.compare-col.good li:before{color:var(--accent-ink);border-color:var(--accent-ink)}.compare-col{transition:background-color .2s ease}@media (hover:hover) and (pointer:fine){.compare-col:hover{background:var(--surface-2)}}.compare-col .repeat-note{margin-top:1.25rem;font-size:.88rem;color:var(--ink-muted);font-style:italic}.steps{display:flex;flex-direction:column}.step{position:relative;padding:2.25rem 0 2.25rem 3rem;border-left:1px solid var(--hairline)}.step .step-num{position:absolute;left:-.95rem;top:2.25rem;width:1.9rem;height:1.9rem;border-radius:50%;border:1px solid var(--hairline);background:var(--bg);display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,monospace;color:var(--accent-ink);font-size:.85rem;letter-spacing:.06em}.step h3{margin-top:.6rem;font-size:1.3rem}.step p{margin-top:.85rem;color:var(--ink-muted)}@media (max-width:480px){.step{padding-left:2.25rem}.step .step-num{width:1.6rem;height:1.6rem;left:-.8rem;font-size:.75rem}}.badge-row{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.5rem}.badge{font-family:IBM Plex Mono,monospace;font-size:.72rem;letter-spacing:.03em;border:1px solid var(--hairline);padding:.3rem .55rem;border-radius:3px;color:var(--ink-muted)}.badge.native{border-color:var(--teal-ink);color:var(--teal-ink)}.badge.approx{border-color:var(--ochre-ink);color:var(--ochre-ink)}.badge.raster{border-color:var(--indigo-ink);color:var(--indigo-ink)}.badge.unrep{border-color:var(--clay-ink);color:var(--clay-ink)}.usecases{display:grid;grid-template-columns:1fr;grid-gap:0;gap:0}@media (min-width:860px){.usecases{grid-template-columns:repeat(12,1fr)}}.usecase{padding:2.25rem 0;border-top:1px solid var(--hairline)}@media (min-width:860px){.usecase{padding:2.5rem 2rem 2.5rem 0}.usecase:first-child{grid-column:1/span 7}.usecase:nth-child(2){grid-column:8/span 5;padding-right:0;padding-left:2rem;border-left:1px solid var(--hairline)}.usecase:nth-child(3){grid-column:1/span 5}.usecase:nth-child(4){grid-column:6/span 7;padding-left:2rem;border-left:1px solid var(--hairline)}}.usecase{transition:background-color .2s ease}@media (hover:hover) and (pointer:fine){.usecase:hover{background:var(--surface-2)}}.usecase .who{font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-ink)}.usecase h3{margin-top:.6rem;font-size:1.35rem;max-width:24ch}.usecase p{margin-top:.9rem;color:var(--ink-muted)}.honesty-list{display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;border-top:1px solid var(--hairline)}.honesty-item{display:grid;grid-template-columns:1fr;grid-gap:.5rem;gap:.5rem;padding:1.5rem 0;border-bottom:1px solid var(--hairline)}@media (min-width:760px){.honesty-item{grid-template-columns:220px 1fr;gap:2rem;align-items:baseline}}.honesty-item .label{font-family:IBM Plex Mono,monospace;font-size:.82rem;letter-spacing:.04em;color:var(--accent-ink);text-transform:uppercase}.honesty-item p{color:var(--ink-muted)}.honesty-grid{display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;border-top:1px solid var(--hairline);border-left:1px solid var(--hairline)}@media (min-width:760px){.honesty-grid{grid-template-columns:1fr 1fr}}.honesty-grid-item{padding:1.5rem 1.75rem;border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);transition:background-color .2s ease}@media (hover:hover) and (pointer:fine){.honesty-grid-item:hover{background:var(--surface-2)}}.honesty-grid-item .label{display:block;font-family:IBM Plex Mono,monospace;font-size:.82rem;letter-spacing:.04em;color:var(--accent-ink);text-transform:uppercase;margin-bottom:.6rem}.honesty-grid-item p{color:var(--ink-muted)}.trial-banner{border:1px solid var(--hairline);padding:1.25rem 1.5rem;margin-bottom:2.5rem;display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap}.trial-banner .tag{font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.pricing-grid{display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;border:1px solid var(--hairline)}@media (min-width:760px){.pricing-grid{grid-template-columns:1fr 1fr}}.price-card{padding:2.5rem;transition:background-color .2s ease}@media (hover:hover) and (pointer:fine){.price-card:hover{background:var(--surface-2)}}.price-card+.price-card{border-top:1px solid var(--hairline)}@media (min-width:760px){.price-card+.price-card{border-top:none;border-left:1px solid var(--hairline)}}.price-card .plan-name{font-family:IBM Plex Mono,monospace;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.price-card .price{margin-top:.9rem;font-family:IBM Plex Mono,monospace;font-size:2.6rem;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.price-card .price span{font-size:1rem;color:var(--ink-muted);font-weight:400}.price-card .save{margin-top:.5rem;font-size:.9rem;color:var(--accent-ink)}.price-card ul{margin:1.5rem 0 0;padding:0;list-style:none;color:var(--ink-muted);font-size:.95rem}.price-card li{padding:.4rem 0 .4rem 1.1rem;position:relative}.price-card li:before{content:"▪";position:absolute;left:0;color:var(--accent-ink)}.price-card .btn{margin-top:1.75rem;width:100%}.store-note{margin-top:2rem;font-size:.92rem;color:var(--ink-muted);border-left:1px solid var(--hairline);padding-left:1rem}.final-cta{text-align:left}.final-cta h2{font-size:clamp(1.9rem,4vw,3rem);max-width:16ch}.final-cta .lede{margin-top:1rem;color:var(--ink-muted);max-width:48ch;font-size:1.05rem}.final-cta .actions{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}.local-note{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--hairline);display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}@media (min-width:760px){.local-note{grid-template-columns:repeat(3,1fr)}}.local-note .item .mono-tag{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--accent-ink);letter-spacing:.06em;text-transform:uppercase}.local-note .item p{margin-top:.4rem;font-size:.92rem;color:var(--ink-muted)}footer{border-top:1px solid var(--hairline);padding:2.5rem 0}.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1.5rem;font-size:.85rem;color:var(--ink-muted)}.footer-grid .brand{font-family:Onest,serif;font-size:1.05rem;color:var(--ink)}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap}.footer-links a{text-decoration:none;color:var(--ink-muted)}.footer-links a:hover{color:var(--accent-ink)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation:reveal-in linear both;animation-timeline:view();animation-range:entry 0 cover 30%}@keyframes reveal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}}