:root{--ink:#1c1c1a;--paper:#faf9f6;--muted:#6b6a64;--rule:#e2dfd6}@media (prefers-color-scheme:dark){:root{--ink:#ecebe6;--paper:#161615;--muted:#9c9a92;--rule:#2e2d2a}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font:18px/1.65 Georgia,Times New Roman,serif}a{color:inherit;text-underline-offset:3px}.site-header,.site-footer,main{max-width:64rem;margin:0 auto;padding:1.5rem 1rem}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.brand{letter-spacing:.04em;text-decoration:none}nav{gap:1.5rem;display:flex}nav a{color:var(--muted);text-decoration:none}.hero{max-width:40rem;padding:5rem 0 3rem}h1{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.2}h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:400}.pair{border-top:1px solid var(--rule);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:3rem;padding:2rem 0 4rem;display:grid}.site-footer{border-top:1px solid var(--rule);color:var(--muted);font-size:.9rem}.agent-block{font-style:normal}.agent-name{color:var(--ink);margin:0 0 .5rem}.agent-block dl{grid-template-columns:max-content 1fr;gap:.15rem 1rem;margin:0;display:grid}.agent-block dd{margin:0}.form-page{max-width:40rem;padding-bottom:3rem}.lede{color:var(--muted)}.field{border:0;margin:0 0 1.5rem;padding:0}.field>label:not(.check),legend{margin-bottom:.25rem;padding:0;display:block}.help{color:var(--muted);margin:0 0 .4rem;font-size:.9rem;line-height:1.45}input[type=text],input[type=tel],input[type=email],select,textarea{width:100%;font:inherit;color:inherit;border:1px solid var(--muted);background:0 0;border-radius:3px;padding:.55rem .65rem}.check{align-items:flex-start;gap:.6rem;margin:.5rem 0;display:flex}.check input{flex:none;margin-top:.45rem}.check small{color:var(--muted);font-size:.85rem;line-height:1.4;display:block}.field-error{border-left:3px solid var(--ink);margin:.35rem 0 0;padding-left:.6rem;font-size:.9rem}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}button[type=submit]{font:inherit;color:var(--paper);background:var(--ink);cursor:pointer;border:0;border-radius:3px;padding:.7rem 1.8rem}button[type=submit][aria-disabled=true]{opacity:.55;cursor:default}.notice{border:1px solid var(--rule);border-left:3px solid var(--ink);margin:0 0 2rem;padding:1rem 1.25rem}.notice:focus{outline:none}.notice h2{margin-top:0}.button-link{border:1px solid var(--ink);border-radius:3px;padding:.5rem 1rem;text-decoration:none;display:inline-block}.alt{color:var(--muted);margin-top:2rem}.shortlist{margin:2rem 0 3rem}.caption{color:var(--muted);font-size:.95rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem;line-height:1.4}th,td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:.45rem .6rem}thead th{color:var(--muted);font-weight:400}tbody th{white-space:nowrap;font-weight:400}.article-index{max-width:40rem;padding-bottom:3rem}.article{padding-bottom:3rem}.article-list{padding:0;list-style:none}.article-list li{border-top:1px solid var(--rule);padding:1.25rem 0}.article-list h2 a{text-decoration:none}.article-body img{max-width:100%;height:auto}.sources,.article-next{border-top:1px solid var(--rule);margin-top:2.5rem;padding-top:1rem}.sources ul{padding-left:1.2rem}.budget-slider{width:100%;accent-color:var(--ink);margin:.5rem 0}.budget-readout{margin:0 0 .5rem;font-weight:600}.budget-not-sure{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brief{max-width:40rem}.brief-progress{background:var(--rule);border-radius:2px;height:4px;overflow:hidden}.brief-progress span{background:var(--ink);height:100%;transition:width .45s;display:block}.brief .budget-readout{min-height:1.65em}.brief-step{color:var(--muted);margin:.5rem 0 1rem;font-size:.9rem}.brief-window{margin:-4px;padding:4px;overflow:hidden}.brief-track{align-items:flex-start;transition:transform .45s;display:flex}.brief-panel{flex:0 0 100%;min-width:0;padding:0 4px 4px}.brief-panel h2{margin-bottom:1rem;font-size:1.5rem}.brief-panel h2:focus{outline:none}.brief-cards{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.brief-card{font:inherit;color:inherit;border:1px solid var(--ink);cursor:pointer;text-align:left;background:0 0;border-radius:3px;padding:1.4rem 1rem}.brief-card:hover,.brief-card[aria-pressed=true]{background:var(--ink);color:var(--paper)}.brief-chips{flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem;display:flex}.brief-chip{position:relative}.brief-chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.brief-chip span{border:1px solid var(--ink);border-radius:2rem;padding:.45rem 1rem;display:block}.brief-chip input:checked+span{background:var(--ink);color:var(--paper)}.brief-chip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.brief-panel textarea{width:100%;font:inherit;color:inherit;background:var(--paper);border:1px solid var(--rule);border-radius:3px;margin:.25rem 0 1.5rem;padding:.6rem;display:block}.brief-panel input[type=text],.brief-panel input[type=tel]{font:inherit;color:inherit;background:var(--paper);border:1px solid var(--rule);border-radius:3px;width:100%;max-width:22rem;padding:.5rem .6rem;display:block}.brief-nav{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.brief-back{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.5rem 0;text-decoration:underline}.brief-back:disabled{visibility:hidden}.brief-next{font:inherit;color:var(--paper);background:var(--ink);cursor:pointer;border:0;border-radius:3px;padding:.7rem 1.8rem}.brief-next[aria-disabled=true]{opacity:.45;cursor:default}@media (prefers-reduced-motion:reduce){.brief-track,.brief-progress span{transition:none}}.home-launches,.home-articles{border-top:1px solid var(--rule);padding:2rem 0 3rem}.launch-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.launch-card{border:1px solid var(--rule);border-radius:10px;flex-direction:column;display:flex;position:relative;overflow:hidden}.launch-card-small{color:var(--muted);padding:.75rem 1rem}.launch-card-small h3{margin:0;font-size:1rem;font-weight:400}.lc-media{aspect-ratio:4/3;background:var(--rule);margin:0;position:relative;overflow:hidden}.lc-media img{object-fit:cover;width:100%;height:100%;transition:transform 1.6s ease-out;display:block}.lc-media .launch-fallback{aspect-ratio:auto;height:100%}.launch-card:hover .lc-media img{transform:scale(1.04)}.lc-note{color:#fff;background:#00000073;border-radius:3px;padding:.1rem .45rem;font-size:.7rem;line-height:1.4;position:absolute;bottom:.5rem;left:.5rem}.lc-chip{background:var(--paper);color:var(--ink);border-radius:2rem;padding:.15rem .65rem;font-size:.75rem;position:absolute;top:.6rem;left:.6rem}.lc-body{flex-direction:column;flex:1;padding:.9rem 1rem 1rem;display:flex}.lc-body h3{margin:0 0 .3rem;font-size:1.2rem;font-weight:400;line-height:1.3}.lc-meta{color:var(--muted);margin:0 0 .9rem;font-size:.85rem;line-height:1.45}.lc-link{margin-top:auto;font-size:.9rem}.lc-link:after{content:"";position:absolute;inset:0}.lc-link:focus-visible{outline:none}.launch-card:has(.lc-link:focus-visible){outline:2px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion:reduce){.lc-media img{transition:none}.launch-card:hover .lc-media img{transform:none}}.launch-more{border-style:dashed}.site-footer .engine-line{color:var(--muted);margin:0 0 .75rem;font-size:.9rem}.launch-fallback{aspect-ratio:16/9;background:var(--rule);color:var(--muted);place-items:center;font-size:.9rem;display:grid}.chip{border:1px solid var(--muted);border-radius:2rem;margin:0 0 .5rem;padding:.05rem .65rem;font-size:.85rem;display:inline-block}.banner{margin:0 0 1rem}.banner img{width:100%;height:auto;display:block}.banner-fallback{aspect-ratio:16/6;background:var(--rule)}.sticky-brief{z-index:10;font:inherit;color:var(--paper);background:var(--ink);cursor:pointer;border:0;border-radius:3px;padding:.7rem 1.4rem;position:fixed;bottom:1rem;right:1rem;box-shadow:0 2px 8px #00000040}@media (max-width:760px){.site-footer{padding-bottom:4.5rem}.sticky-brief{border-radius:0;width:100%;padding:1rem;bottom:0;left:0;right:0}}.hero-engine{--h-ink:#0f1b2d;--h-cream:#f6f1e8;--h-accent:#e0a356;perspective:1200px;height:640px;color:var(--h-cream);background:#0f1b2d;border-radius:20px;margin:0 0 2rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;position:relative;overflow:hidden}.hero-engine .slides{position:absolute;inset:0}.hero-engine .slide{object-fit:cover;object-position:center;opacity:0;width:112%;height:112%;transition:opacity 1.4s,transform 7s linear;position:absolute;inset:-6%;transform:scale(1.12)}.hero-engine .slide.on{opacity:1;transform:scale(1.02)}.hero-engine .shade{background:linear-gradient(90deg,#0a121ee0 0%,#0a121e8c 45%,#0a121e26 100%);position:absolute;inset:0}.hero-engine .caption{letter-spacing:.04em;color:var(--h-cream);margin:0;font-size:13px;line-height:1.4;position:absolute;bottom:40px;left:48px}.hero-engine .caption b{color:var(--h-accent);font-weight:600}.hero-engine .credit{opacity:.7;letter-spacing:0;margin-top:2px;font-size:11px;display:block}.hero-engine .copy{width:470px;position:absolute;top:56px;left:48px}.hero-engine .brand-line{letter-spacing:.08em;opacity:.8;font-size:13px}.hero-engine h1{margin:18px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:46px;font-weight:400;line-height:1.1}.hero-engine h1 span{display:block}.hero-engine .sub{margin:0 0 24px;font-size:16.5px;line-height:1.55}.hero-engine .cta{gap:10px;display:flex}.hero-engine .btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #f6f1e899;border-radius:999px;padding:12px 20px;font-size:14px}.hero-engine .btn.primary{background:var(--h-accent);border-color:var(--h-accent);color:#1b1206;font-weight:600}.hero-engine .btn:focus-visible{outline:2px solid var(--h-cream);outline-offset:2px}.hero-engine .card-wrap{width:440px;transform-style:preserve-3d;transition:transform .2s;position:absolute;top:70px;right:44px}.hero-engine .hero-card{color:var(--h-ink);background:#f6f1e8f5;border-radius:18px;padding:18px 18px 14px;box-shadow:0 30px 70px #00000073}.hero-engine .hd{letter-spacing:.1em;text-transform:uppercase;color:#7a7366;margin-bottom:8px;font-size:11px}.hero-engine .brief-lines{min-height:68px;font-size:15px;line-height:1.5}.hero-engine .seg{opacity:1}.hero-engine .seg mark{color:inherit;background:0 0;box-shadow:inset 0 -.45em #e0a35673}.hero-engine .tags{flex-wrap:wrap;gap:6px;min-height:58px;margin:12px 0 10px;display:flex}.hero-engine .tag{border-radius:999px;padding:5px 10px;font-size:11.5px}.hero-engine .tag.you{background:#f6dfc2}.hero-engine .tag.pub{background:#d6e7ef}.hero-engine .tag.know{background:#dcebdf}.hero-engine .scan{height:2px;margin:4px 0 8px}.hero-engine .row{border-top:1px solid #e7e0d4;grid-template-columns:1fr 92px;align-items:center;gap:10px;padding:10px 0;display:grid}.hero-engine .row .nm{font-size:14px;font-weight:600}.hero-engine .row small{color:#6f6a60;margin-top:2px;font-size:12px;font-weight:400;display:block}.hero-engine .meter{background:#ece5d9;border-radius:6px;height:6px;overflow:hidden}.hero-engine .meter i{height:100%;width:var(--w);background:linear-gradient(90deg,#8fc29b,#4f7d5c);display:block}.hero-engine .fit{color:#4f7d5c;text-align:right;margin-top:4px;font-size:11px}.hero-engine .src{color:#7a7366;margin-top:6px;font-size:11px}.hero-engine .caption{transition:opacity .5s}.hero-engine .caption.off{opacity:0}.hero-engine .credit{color:inherit;text-decoration:none}.hero-engine .credit:hover,.hero-engine .credit:focus-visible{text-decoration:underline}.hero-engine h1 span{opacity:0;animation:.5s forwards h-up;transform:translateY(18px)}.hero-engine h1 span:first-child{animation-delay:.1s}.hero-engine h1 span:nth-child(2){animation-delay:.25s}.hero-engine .sub{opacity:0;animation:.5s .5s forwards h-fade}.hero-engine .cta{opacity:0;animation:.5s .7s forwards h-fade}.hero-engine .hero-card{opacity:0;animation:.7s cubic-bezier(.22,1,.36,1) .2s forwards h-card}.hero-engine .seg{opacity:0;animation:h-fade .5s ease forwards var(--d)}.hero-engine .seg mark{animation:h-mark .6s ease forwards calc(var(--d) + .2s);box-shadow:inset 0 -.45em #e0a35600}.hero-engine .tag{opacity:0;animation:.45s cubic-bezier(.22,1,.36,1) forwards h-up;transform:translateY(6px)}.hero-engine .scan{opacity:0;background:linear-gradient(90deg, transparent, var(--h-accent), transparent) no-repeat 0 0 / 40% 100%;animation:.6s ease-in-out 1.05s forwards h-scan,.6s ease-in-out 1.05s forwards h-pulse}.hero-engine .row{opacity:0;animation:.5s cubic-bezier(.22,1,.36,1) forwards h-up;transform:translateY(10px)}.hero-engine .meter i{width:0;animation:.8s cubic-bezier(.22,1,.36,1) forwards h-grow}.hero-engine .src{opacity:0;animation:.4s 1.6s forwards h-fade}@keyframes h-up{to{opacity:1;transform:none}}@keyframes h-fade{to{opacity:1}}@keyframes h-card{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes h-scan{0%{background-position:-40% 0}to{background-position:140% 0}}@keyframes h-pulse{0%{opacity:0}15%,80%{opacity:1}to{opacity:0}}@keyframes h-mark{to{box-shadow:inset 0 -.45em #e0a35673}}@keyframes h-grow{to{width:var(--w)}}@media (prefers-reduced-motion:reduce){.hero-engine .slide,.hero-engine .slide.on{transition:none;transform:scale(1.02)}.hero-engine .caption,.hero-engine .card-wrap{transition:none}.hero-engine h1 span,.hero-engine .sub,.hero-engine .cta,.hero-engine .hero-card,.hero-engine .seg,.hero-engine .tag,.hero-engine .row,.hero-engine .src{opacity:1;animation:none;transform:none}.hero-engine .seg mark{animation:none;box-shadow:inset 0 -.45em #e0a35673}.hero-engine .meter i{width:var(--w);animation:none}.hero-engine .scan{opacity:0;animation:none}}@media (max-width:900px){.hero-engine{border-radius:12px;flex-direction:column;height:auto;min-height:0;display:flex}.hero-engine .slides,.hero-engine .shade{position:absolute}.hero-engine .copy,.hero-engine .card-wrap,.hero-engine .caption{width:auto;position:relative;inset:auto}.hero-engine .copy{padding:28px 20px 16px}.hero-engine h1{font-size:34px}.hero-engine .card-wrap{margin:0 16px}.hero-engine .caption{margin-top:auto;padding:16px 20px 20px}.hero-engine .shade{background:#0a121ebd}.hero-engine .copy,.hero-engine .caption{text-shadow:0 1px 3px #00000080}}:root{--ok:#2f6b3f;--warn:#8a5a14;--bad:#a4512f;--okbg:#e3efe5;--warnbg:#f6ead2;--badbg:#f6e4da}@media (prefers-color-scheme:dark){:root{--ok:#8fc29b;--warn:#e0b25a;--bad:#e39a7b;--okbg:#1f2e23;--warnbg:#33291a;--badbg:#36241c}}.fit{max-width:64rem}.fit-top{background:var(--rule);border-radius:12px;margin:0 0 1rem;position:relative;overflow:hidden}.fit-render{margin:0}.fit-render img{object-fit:cover;width:100%;height:18rem;display:block}.fit-render-note{color:#fff;text-shadow:0 1px 3px #000000b3;font-size:.7rem;position:absolute;top:.6rem;right:.8rem}.fit-top-text{padding:1.25rem 1.5rem}.fit-render+.fit-top-text{color:#fff;background:linear-gradient(#0000,#050a12cc);padding-top:3rem;position:absolute;bottom:0;left:0;right:0}.fit-top-text h1{margin:.25rem 0;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400;line-height:1.15}.fit-top-text p{margin:0}.fit-kicker{letter-spacing:.1em;text-transform:uppercase;opacity:.85;font-size:.75rem}.fit-stage{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.8rem;display:flex}.fit-st{border:1px solid var(--rule);border-radius:2rem;padding:.2rem .65rem}.fit-st.ok{background:var(--okbg);border-color:var(--okbg);color:var(--ok)}.fit-st.sold{background:var(--ink);color:var(--paper);border-color:var(--ink)}.fit-grid{grid-template-columns:22rem 1fr;align-items:start;gap:1.5rem;margin-bottom:1.5rem;display:grid}.fit-ask{border:1px solid var(--rule);border-radius:12px;padding:1.25rem;position:sticky;top:1rem}.fit-ask h2{margin:0 0 .25rem;font-size:1.4rem;font-weight:400}.fit-answer{gap:1rem;min-width:0;display:grid}.fit-block{border:1px solid var(--rule);border-radius:12px;padding:1.1rem 1.25rem}.fit-block h3{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin:0 0 .75rem;font-size:1.05rem;display:flex}.fit-block p{margin:0 0 .5rem}.fit-project dl{gap:.6rem;margin:0;display:grid}.fit-project-row{grid-template-columns:6.5rem 1fr;gap:.75rem;display:grid}.fit-project dt{color:var(--muted);font-size:.9rem}.fit-project dd{overflow-wrap:anywhere;margin:0}.fit-project dd .caption{display:block}.fit-verdict{background:var(--okbg);color:var(--ok);border-radius:2rem;padding:.15rem .65rem;font-size:.75rem;font-weight:600}.fit-verdict.warn{background:var(--warnbg);color:var(--warn)}.fit-units{border-collapse:collapse;width:100%;font-size:.95rem}.fit-units td{border-top:1px solid var(--rule);padding:.55rem .4rem .55rem 0}.fit-units td.p,.fit-units td.f{text-align:right;font-variant-numeric:tabular-nums}.fit-units td.f{font-size:.8rem}.fit-units tr.no td{color:var(--muted)}.fit-units tr.no td.f{color:var(--bad)}.fit-units tr.yes td.f{color:var(--ok);font-weight:600}.fit-tags{flex-wrap:wrap;gap:.45rem;margin:0 0 1rem;display:flex}.fit-tag,.fit-tab{font:inherit;color:inherit;border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:2rem;padding:.3rem .8rem;font-size:.85rem}.fit-tag[aria-pressed=true],.fit-tab[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.fit-tag:focus-visible,.fit-tab:focus-visible,.fit-clear:focus-visible,.fit-book:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.fit-tabs{flex-wrap:wrap;gap:.4rem;margin:0 0 .75rem;display:flex}.fit-facts{color:var(--muted);font-size:.9rem}.fit-plan-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:1.75rem;display:grid}.fit-plan{margin:0;position:sticky;top:1rem}.fit-plan-img{position:relative}.fit-plan-img img{border:1px solid var(--rule);border-radius:8px;width:100%;height:auto;display:block}.fit-plan-missing{aspect-ratio:4/3;background:var(--rule);color:var(--muted);border-radius:8px;place-items:center;font-size:.9rem;display:grid}.fit-pin{background:var(--ink);width:1.5rem;height:1.5rem;color:var(--paper);border-radius:50%;place-items:center;margin:-.75rem 0 0 -.75rem;font-size:.75rem;font-weight:700;animation:.35s both fit-pin;display:grid;position:absolute;box-shadow:0 2px 6px #0000004d}.fit-pin.hl{transform:scale(1.25)}@keyframes fit-pin{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}.fit-qa{margin:0;padding:0;list-style:none}.fit-qa li{border-top:1px solid var(--rule);border-radius:6px;grid-template-columns:1.5rem 1fr auto;align-items:start;gap:.6rem;padding:.5rem .3rem;display:grid}.fit-qa li.hl{background:var(--rule)}.fit-n{border-radius:50%;place-items:center;width:1.25rem;height:1.25rem;font-size:.7rem;font-weight:700;display:grid}.fit-qa li .fit-n:not(:empty){background:var(--ink);color:var(--paper)}.fit-why{color:var(--muted);margin-top:.15rem;font-size:.8rem;line-height:1.45;display:block}.fit-ans{white-space:nowrap;background:var(--rule);color:var(--muted);border-radius:2rem;padding:.15rem .65rem;font-size:.75rem;font-weight:700}.fit-ans.yes{background:var(--okbg);color:var(--ok)}.fit-ans.tight{background:var(--warnbg);color:var(--warn)}.fit-ans.no{background:var(--badbg);color:var(--bad)}.fit-near{margin:0;padding:0;list-style:none}.fit-near li{border-top:1px solid var(--rule);grid-template-columns:1fr auto;gap:.75rem;padding:.65rem 0;display:grid}.fit-near small{color:var(--muted);margin-top:.15rem;font-size:.8rem;display:block}.fit-kind{letter-spacing:.06em;text-transform:uppercase;background:var(--rule);border-radius:2rem;align-self:center;padding:.15rem .6rem;font-size:.7rem}.fit-cta{background:var(--ink);color:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.fit-cta p{margin:0}.fit-book,.fit-clear{font:inherit;cursor:pointer;color:inherit;background:0 0;border:1px solid;border-radius:2rem;padding:.7rem 1.3rem}.fit-book{background:var(--paper);color:var(--ink);border-color:var(--paper);font-weight:600}.fit-empty{padding:.5rem 0 1rem}.fit-empty .fit-clear{color:var(--ink)}.plans-page{max-width:64rem}.plans-filters{gap:.5rem;max-width:30rem;margin-bottom:1rem;display:grid}.plans-filters select{font:inherit;color:inherit;background:var(--paper);border:1px solid var(--rule);border-radius:3px;padding:.4rem}.plans-table table{border-collapse:collapse;width:100%;font-size:.95rem}.plans-table th,.plans-table td{text-align:left;border-top:1px solid var(--rule);vertical-align:top;padding:.55rem .6rem .55rem 0}.plans-table .chip{margin-bottom:0;margin-left:.5rem}.plans-cards{gap:1rem;margin:0;padding:0;list-style:none;display:none}.plans-cards p{margin:.15rem 0}@media (max-width:860px){.fit-grid{grid-template-columns:1fr}.fit-ask{position:static}.fit-plan-grid{grid-template-columns:1fr}.fit-plan{position:static}.fit-render img{height:14rem}.fit-top-text h1{font-size:1.6rem}.plans-table{display:none}.plans-cards{display:grid}}@media (prefers-reduced-motion:reduce){.fit-pin{animation:none}}.fit-qa strong{font-size:.88rem;font-weight:600;line-height:1.35}.fit>.fit-block{margin-bottom:1rem}.fit-render-note{background:#0006;border-radius:3px;padding:.15rem .5rem}.fit-qa li:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.fit-askbtn{font:inherit;border:1px solid var(--ink);color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border-radius:2rem;padding:.15rem .75rem;font-size:.75rem;font-weight:700}.fit-askbtn:hover{background:var(--ink);color:var(--paper)}.fit-steps{margin:.4rem 0;padding-left:1.25rem}.fit-askbtn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fit-cta{margin-bottom:1rem}.fit-checks h3{margin-bottom:.25rem}.fit-check{border-top:1px solid var(--rule)}.fit-check summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 0;font-size:.95rem;list-style:none;display:flex}.fit-check summary::-webkit-details-marker{display:none}.fit-check summary>span:first-child:before{content:"+";width:1.1rem;color:var(--muted);display:inline-block}.fit-check[open] summary>span:first-child:before{content:"−"}.fit-check summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.fit-check-body{padding:0 0 .85rem 1.1rem;font-size:.92rem}.fit-units td.p{white-space:nowrap}.fit-qa li>span:nth-child(2){line-height:1.35}.fit-qa .fit-n:empty{display:none}.fit-qa li:has(.fit-n:empty){grid-template-columns:1fr auto}@media (max-width:860px){.fit-tabs{scrollbar-width:none;flex-wrap:nowrap;margin:0 -1.25rem .75rem;padding:0 1.25rem .25rem;overflow-x:auto}.fit-tabs::-webkit-scrollbar{display:none}.fit-tab{flex:none}}.brief-modal{background:var(--paper);width:min(40rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--ink);border:0;border-radius:12px;padding:0;box-shadow:0 20px 60px #00000059}.brief-modal::backdrop{background:#1414128c}.brief-modal[open]{animation:.22s ease-out brief-in}@keyframes brief-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.brief-modal-head{z-index:1;background:var(--paper);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem .5rem;display:flex;position:sticky;top:0}.brief-modal-head h2{margin:0}.brief-modal-close{font:inherit;width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.6rem;line-height:1}.brief-modal-close:hover{background:var(--rule);color:var(--ink)}.brief-modal-close:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.brief-modal-body{padding:0 1.25rem 1.25rem}@media (max-width:600px){.brief-modal{border-radius:12px 12px 0 0;width:100vw;max-width:100vw;max-height:92dvh;margin:auto 0 0}}@media (prefers-reduced-motion:reduce){.brief-modal[open]{animation:none}}.brief-modal .brief-panel[inert]{height:0;overflow:hidden}.fit-tab-sold{opacity:.75;margin-left:.4rem;font-size:.7rem}.fit-units tr.has-plan{cursor:pointer}.fit-units tr.has-plan:hover td{background:var(--rule)}.fit-unit-link{font:inherit;color:inherit;cursor:pointer;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.fit-unit-link:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.fit-plans{scroll-margin-top:1rem;transition:box-shadow .4s}.fit-plans.flash{box-shadow:0 0 0 3px var(--ink)}@media (prefers-reduced-motion:reduce){.fit-plans{transition:none}}.hero-engine .hero-card.is-link{cursor:pointer}.brand{align-items:center;gap:.45rem;display:inline-flex}.brand-mark{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1.15em;height:1.15em}.street{z-index:-1;pointer-events:none;color:var(--ink);opacity:.32;display:none;position:fixed;inset:0}@media (min-width:1360px){.street{display:block}}.street-col{width:calc(50vw - 33.5rem);position:absolute;top:0;bottom:0}.street-l{left:.75rem}.street-r{right:.75rem}.street-l:after,.street-r:after{content:"";border-left:1px dashed;position:absolute;top:6%;bottom:6%}.street-l:after{left:4.6rem}.street-r:after{right:4.6rem}.street pre{white-space:pre;margin:0;font:12px/1.15 ui-monospace,SF Mono,Menlo,Consolas,monospace}.street-bldg{position:absolute}.street-l .street-bldg{left:0}.street-r .street-bldg{right:0}.bot{flex-direction:column;align-items:center;animation-duration:30s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;display:flex;position:absolute}.street-l .bot{left:6rem}.street-r .bot{right:6.6rem}.bot-art{background:var(--paper);animation:1.2s steps(2,end) infinite bot-bob}.bot-say{background:var(--paper);opacity:0;border:1px solid;border-radius:.6rem;width:max-content;max-width:9rem;margin-bottom:.3rem;padding:.15rem .45rem;font:11px/1.3 ui-monospace,SF Mono,Menlo,Consolas,monospace;animation-duration:30s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;position:absolute;bottom:100%}.street-l .bot-say{left:0}.street-r .bot-say{right:-1rem}@keyframes bot-bob{0%{transform:translateY(0)}to{transform:translateY(-1px)}}.bot-1{animation-name:bot-1}@keyframes bot-1{0%{top:20%}18%{top:20%}34%{top:50%}58%{top:50%}74%{top:80%}to{top:80%}}.bot-1 .say-1{animation-name:say-1-1}@keyframes say-1-1{0%,1%{opacity:0}2%,16%{opacity:1}17%,to{opacity:0}}.bot-1 .say-2{animation-name:say-1-2}@keyframes say-1-2{0%,35%{opacity:0}36%,46%{opacity:1}47%,to{opacity:0}}.bot-1 .say-3{animation-name:say-1-3}@keyframes say-1-3{0%,75%{opacity:0}76%,96%{opacity:1}97%,to{opacity:0}}.bot-2{animation-name:bot-2}@keyframes bot-2{0%{top:56%}40%{top:56%}58%{top:26%}to{top:26%}}.bot-2 .say-1{animation-name:say-2-1}@keyframes say-2-1{0%,3%{opacity:0}4%,14%{opacity:1}15%,to{opacity:0}}.bot-2 .say-2{animation-name:say-2-2}@keyframes say-2-2{0%,46%{opacity:0}47%,57%{opacity:1}58%,to{opacity:0}}.bot-2 .say-3{animation-name:say-2-3}@keyframes say-2-3{0%,79%{opacity:0}80%,96%{opacity:1}97%,to{opacity:0}}.bot-3{animation-name:bot-3}@keyframes bot-3{0%{top:24%}20%{top:24%}36%{top:54%}60%{top:54%}76%{top:84%}to{top:84%}}.bot-3 .say-1{animation-name:say-3-1}@keyframes say-3-1{0%,3%{opacity:0}4%,16%{opacity:1}17%,to{opacity:0}}.bot-3 .say-2{animation-name:say-3-2}@keyframes say-3-2{0%,39%{opacity:0}40%,52%{opacity:1}53%,to{opacity:0}}.bot-3 .say-3{animation-name:say-3-3}@keyframes say-3-3{0%,79%{opacity:0}80%,96%{opacity:1}97%,to{opacity:0}}.bot-4{animation-name:bot-4}@keyframes bot-4{0%{top:60%}42%{top:60%}60%{top:30%}to{top:30%}}.bot-4 .say-1{animation-name:say-4-1}@keyframes say-4-1{0%,5%{opacity:0}6%,18%{opacity:1}19%,to{opacity:0}}.bot-4 .say-2{animation-name:say-4-2}@keyframes say-4-2{0%,52%{opacity:0}53%,58%{opacity:1}59%,to{opacity:0}}.bot-4 .say-3{animation-name:say-4-3}@keyframes say-4-3{0%,81%{opacity:0}82%,96%{opacity:1}97%,to{opacity:0}}.street-r:after{border-left:3px double}.street-r .bot-say{border-style:dotted;border-radius:0}.street-r .bot-art{animation:2.4s ease-in-out infinite drone-hover}@keyframes drone-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.train{background:var(--paper);animation:18s linear infinite train-run;position:absolute;top:-12%;right:calc(4.6rem - 1.05em)}@keyframes train-run{0%{top:-12%}to{top:104%}}.street-l .bot-say:before{content:"> "}@media (prefers-reduced-motion:reduce){.bot,.bot-art,.bot-say,.train{animation:none}.train{top:30%}.bot-1{top:50%}.bot-2{top:56%}.bot-3{top:24%}.bot-4{top:60%}.bot-1 .say-2,.bot-4 .say-1{opacity:1}}body{z-index:0;position:relative}.fit-units td:nth-child(2){white-space:nowrap}.article-head{max-width:48rem;margin:1rem 0 2rem}.article-kind{color:var(--muted);margin:0 0 .5rem;font-size:.9rem}.article-head h1{margin:0 0 1rem;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.18}.article-dek{color:var(--muted);margin:0 0 1rem;font-size:1.15rem;line-height:1.55}.article-grid{grid-template-columns:minmax(0,1fr) 15rem;align-items:start;gap:3.5rem;display:grid}.article-main{min-width:0}.article-side{gap:1.5rem;font-size:.92rem;display:grid;position:sticky;top:1.5rem}.article-side-h{margin:0 0 .5rem;font-weight:600}.article-toc ol{border-left:1px solid var(--rule);gap:.45rem;margin:0;padding:0 0 0 .9rem;list-style:none;display:grid}.article-toc a{color:var(--muted);line-height:1.35;text-decoration:none;display:block}.article-toc a:hover{color:var(--ink)}.article-cta{border:1px solid var(--rule);border-radius:10px;padding:1rem 1.1rem}.article-cta p{margin:0 0 .75rem;line-height:1.45}.article-cta-btn{background:var(--ink);color:var(--paper);border-radius:2rem;padding:.5rem 1rem;font-weight:600;text-decoration:none;display:inline-block}.article-body{font-size:1.05rem}.article-body h2{border-top:1px solid var(--rule);margin:2.75rem 0 .9rem;padding-top:1.25rem;scroll-margin-top:1rem;font-size:1.5rem;font-weight:400}.article-body h3{margin:1.75rem 0 .4rem;scroll-margin-top:1rem;font-size:1.1rem;font-weight:600}.article-body p,.article-body ul,.article-body ol{margin:0 0 1rem}.article-body li{margin:0 0 .5rem}.article-body blockquote{border-left:3px solid var(--ink);background:color-mix(in srgb, var(--rule) 45%, transparent);border-radius:0 8px 8px 0;margin:1.25rem 0;padding:.9rem 1.1rem;font-size:.98rem}.article-body blockquote p:last-child,.article-body blockquote ol:last-child{margin-bottom:0}.article-body blockquote ol{padding-left:1.2rem}.article-body table{border-collapse:collapse;width:100%;margin:1.25rem 0 1.5rem;font-size:.95rem}.article-body th,.article-body td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:.65rem .75rem}.article-body thead th{background:color-mix(in srgb, var(--rule) 60%, transparent);font-weight:600}.article-body tbody td:first-child{width:34%;font-weight:600}.article-body em{color:var(--muted)}@media (max-width:900px){.article-grid{grid-template-columns:1fr;gap:2rem}.article-side{order:-1;position:static}.article-toc,.article-cta{display:none}.article-body table{display:block;overflow-x:auto}}.article-toc{display:block}.street-l .bot-say,.street-r .bot-say{max-width:7rem}body:has(.article) .street{display:none}.article .banner{margin:0 0 2rem}.article .banner img{aspect-ratio:21/8;object-fit:cover;border-radius:10px}.article .banner .caption{margin-top:.35rem;font-size:.8rem}.article-index.wide{max-width:none}.article-cards{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.75rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.article-card{border:1px solid var(--rule);border-radius:10px;flex-direction:column;display:flex;position:relative;overflow:hidden}.ac-media{aspect-ratio:16/9;background:var(--rule);margin:0;overflow:hidden}.ac-media img{object-fit:cover;width:100%;height:100%;transition:transform 1.6s ease-out;display:block}.article-card:hover .ac-media img{transform:scale(1.04)}.ac-fallback{width:100%;height:100%}.ac-body{flex-direction:column;flex:1;padding:1rem 1.1rem 1.1rem;display:flex}.ac-kind{color:var(--muted);margin:0 0 .35rem;font-size:.8rem}.ac-body h2{margin:0 0 .5rem;font-size:1.2rem;line-height:1.3}.ac-link{text-decoration:none}.ac-link:after{content:"";position:absolute;inset:0}.ac-link:focus-visible{outline:none}.article-card:has(.ac-link:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.ac-dek{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 .75rem;font-size:.92rem;line-height:1.5;display:-webkit-box;overflow:hidden}.ac-body .caption{margin:auto 0 0;font-size:.8rem}@media (prefers-reduced-motion:reduce){.ac-media img{transition:none}.article-card:hover .ac-media img{transform:none}}.ac-body h3{margin:0 0 .5rem;font-size:1.2rem;font-weight:400;line-height:1.3}.home-articles .article-cards{margin-top:1rem}.comic{padding-bottom:3rem}.comic-head{max-width:40rem;padding:1rem 0 1.5rem}.comic-head .button-link{margin-top:.25rem}.comic-reader{--stage:#1c1c1a;--stage-ink:#f2f1ec;--stage-rule:#3a3936;background:var(--stage);color:var(--stage-ink);border-radius:10px;margin:0 -1rem;overflow:clip}@media (min-width:48rem){.comic-reader{margin:0}}.cr-bar{z-index:5;background:var(--stage);border-bottom:1px solid var(--stage-rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.55rem .75rem;font-size:.9rem;display:flex;position:sticky;top:0}.cr-bar button{font:inherit;color:inherit;border:1px solid var(--stage-rule);cursor:pointer;background:0 0;border-radius:2rem;padding:.3rem .85rem}.cr-bar button:focus-visible,.cr-resume button:focus-visible{outline:2px solid var(--stage-ink);outline-offset:2px}.cr-modes{gap:.35rem;display:flex}.cr-modes button[aria-pressed=true]{background:var(--stage-ink);color:var(--stage);border-color:var(--stage-ink)}.cr-turn{align-items:center;gap:.5rem;display:flex}.cr-turn button{place-items:center;width:2.1rem;height:2.1rem;padding:0;display:grid}.cr-turn button:disabled{opacity:.35;cursor:default}.cr-turn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.cr-count{text-align:center;font-variant-numeric:tabular-nums;min-width:8.5em}.cr-progress{background:var(--stage-rule);flex:1 0 100%;height:2px;margin:0 -.75rem -.55rem}.cr-progress span{background:var(--stage-ink);height:100%;transition:width .25s;display:block}.cr-resume{text-align:center;margin:0;padding:.75rem}.cr-resume button{font:inherit;color:var(--stage);background:var(--stage-ink);cursor:pointer;border:0;border-radius:2rem;padding:.45rem 1.1rem}.cr-stage{flex-direction:column;align-items:center;gap:.6rem;padding:.6rem 0;display:flex}.cr-page{width:100%;max-width:48rem;scroll-margin-top:var(--bar-h,3.5rem);margin:0}.cr-page img{background:#fff;width:100%;height:auto;display:block}.comic-reader[data-mode=page]{scroll-margin-top:0}.comic-reader[data-mode=page] .cr-stage{height:calc(100svh - var(--bar-h,3.4rem));cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;padding:.5rem;scroll-margin-top:0}.comic-reader[data-mode=page] .cr-page{height:100%;display:none}.comic-reader[data-mode=page] .cr-page[data-current=true]{justify-content:center;display:flex}.comic-reader[data-mode=page] .cr-page img{object-fit:contain;width:auto;max-width:100%;height:100%}.cr-keys{text-align:center;color:#a9a79f;margin:0;padding:0 .75rem .75rem}@media (prefers-reduced-motion:reduce){.cr-progress span{transition:none}}.comic-end{border-top:1px solid var(--rule);max-width:40rem;margin-top:2rem;padding-top:1rem}.comic-end ul,.comic-transcript ul{padding-left:1.2rem}.comic-transcript{border-top:1px solid var(--rule);max-width:40rem;margin-top:2.5rem;padding-top:1rem}.comic-transcript>ol{margin:0;padding:0;list-style:none}.comic-transcript>ol>li{border-top:1px solid var(--rule);padding:1rem 0}.comic-transcript h3{margin:0 0 .25rem;font-size:1rem;font-weight:400}.comic-transcript h3 a{color:var(--muted);text-decoration:none}.ct-summary{color:var(--muted);margin:0 0 .4rem;font-style:italic}.comic-transcript ul{margin:0}.crumbs{margin:0 0 .5rem}.crumbs a{color:inherit}.cs-page,.cs-panels figure{max-width:48rem;margin:0 0 1rem}.cs-page img,.cs-panels img{border:1px solid var(--rule);width:100%;height:auto;display:block}.cs-turn{flex-wrap:wrap;justify-content:space-between;gap:1rem;max-width:48rem;margin:0 0 1rem;display:flex}.cs-panels{border-top:1px solid var(--rule);max-width:48rem;margin-top:2.5rem;padding-top:1rem}.cs-panels figcaption{margin-top:.35rem}.licence h2{margin-top:2rem}.licence-code{white-space:pre-wrap;word-break:break-word;border:1px solid var(--rule);border-radius:3px;padding:.75rem 1rem;font-size:.8rem;line-height:1.5;overflow-x:auto}
