@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/jost-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/jost-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin-500-italic.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}:root{--bg: #f3efe9;--surface: #fbfaf8;--surface-2: #ece6dd;--ink: #1b1a18;--ink-2: #57514a;--ink-3: #7c756b;--line: #e3ddd3;--line-2: #d3ccc0;--brand: #1b1a18;--brand-hover: #3a3733;--brand-ink: #fbfaf8;--brand-soft: #e9e3d9;--accent: #8a5a2b;--accent-soft: #f1e4d2;--good: #2f6b3f;--bad: #a8321f;--bad-soft: #f8e9e5;--good-soft: #e7f0e6;--ann: #d9cfc1;--hero-ink: #1b1a18;--serif: "Cormorant Garamond", "Iowan Old Style", Georgia, "Times New Roman", serif;--font: "Jost", "Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--r: 12px;--r-btn: 4px;--wrap: 1200px;--shadow: 0 1px 2px rgba(60, 45, 25, .05), 0 6px 20px rgba(60, 45, 25, .07);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #131211;--surface: #1b1917;--surface-2: #25221f;--ink: #f1ece4;--ink-2: #bdb5aa;--ink-3: #928a7f;--line: #2b2825;--line-2: #3a3631;--brand: #f1ece4;--brand-hover: #ffffff;--brand-ink: #131211;--brand-soft: #2a2622;--accent: #e0b27a;--accent-soft: #35291a;--good: #7fd08f;--bad: #f08a76;--bad-soft: #3a1b15;--good-soft: #17301d;--ann: #25221f;--shadow: none;color-scheme:dark}}:root[data-theme=dark]{--bg: #131211;--surface: #1b1917;--surface-2: #25221f;--ink: #f1ece4;--ink-2: #bdb5aa;--ink-3: #928a7f;--line: #2b2825;--line-2: #3a3631;--brand: #f1ece4;--brand-hover: #ffffff;--brand-ink: #131211;--brand-soft: #2a2622;--accent: #e0b27a;--accent-soft: #35291a;--good: #7fd08f;--bad: #f08a76;--bad-soft: #3a1b15;--good-soft: #17301d;--ann: #25221f;--shadow: none;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 var(--font);-webkit-font-smoothing:antialiased}img,svg,canvas{max-width:100%}a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--line-2)}a:hover{color:var(--accent);text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}h1,h2,h3{margin:0;font-weight:500;text-wrap:balance}h1,h2{font-family:var(--serif);line-height:1.08;letter-spacing:-.01em;font-weight:500}h3{font-family:var(--font);line-height:1.3}p{margin:0 0 1em}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}.skip{position:absolute;left:-999px;top:8px;background:var(--brand);color:var(--brand-ink);padding:8px 14px;border-radius:4px;z-index:100}.skip:focus{left:8px}.mono{font-family:var(--mono)}.muted{color:var(--ink-3);font-size:.875rem}.center{text-align:center}.eyebrow{font:500 .75rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em;color:var(--ink-2)}.hdr{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.hdr-in{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:76px}.logo{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--ink);line-height:1;gap:5px}.logo:hover{color:var(--ink)}.logo b{font:500 1.75rem/1 var(--serif);letter-spacing:.26em;padding-left:.26em}.logo i{font:500 .625rem/1 var(--font);letter-spacing:.5em;padding-left:.5em;font-style:normal;color:var(--ink-2)}.nav{display:flex;justify-content:center;gap:30px}.nav a{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;text-decoration:none;color:var(--ink);padding-block:6px;border-bottom:1px solid transparent}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);border-color:var(--ink)}.tools{display:flex;align-items:center;gap:10px}.search{position:relative}.search input[type=search]{width:210px;height:40px;border:1px solid transparent;border-radius:999px;background:var(--surface-2);padding:0 14px 0 40px;font:inherit;font-size:.875rem;color:var(--ink);transition:width .2s,background .2s}.search input[type=search]:focus{width:300px;background:var(--surface);border-color:var(--ink);outline:0;box-shadow:none}.search svg{position:absolute;left:13px;top:11px;width:18px;height:18px;color:var(--ink-2);pointer-events:none}.sr{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-width:92vw;background:var(--surface);border:1px solid var(--line-2);border-radius:12px;box-shadow:0 18px 40px #281e0f33;padding:6px;max-height:70vh;overflow:auto;z-index:60}.sr a{display:flex;gap:12px;align-items:center;padding:9px 10px;border-radius:8px;text-decoration:none;color:var(--ink)}.sr a:hover,.sr a.on{background:var(--surface-2);color:var(--ink)}.sr small{color:var(--ink-3);display:block;line-height:1.3}.sr .none{padding:14px;color:var(--ink-3)}.iconbtn{width:40px;height:40px;border:0;background:transparent;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:var(--ink);flex:none}.iconbtn:hover{background:var(--surface-2)}.iconbtn svg{width:20px;height:20px}.menu-btn{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:42px;padding:0 20px;border:1px solid var(--line-2);border-radius:var(--r-btn);background:var(--surface);color:var(--ink);font:500 .8125rem var(--font);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.btn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--ink-3)}.btn.pri{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.pri:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:var(--brand-ink)}.btn.sm{height:30px;padding:0 12px;font-size:.6875rem}.btn.lg{height:50px;padding:0 28px}.btn svg{width:16px;height:16px}label{display:block;font-weight:500;font-size:.8125rem;margin:0 0 7px;color:var(--ink);letter-spacing:.02em}input[type=text],input[type=number],input[type=date],input[type=datetime-local],select,textarea{width:100%;border:1px solid var(--line-2);background:var(--bg);color:var(--ink);border-radius:6px;padding:10px 13px;font:inherit;font-size:.9375rem;min-height:42px}textarea{resize:vertical;line-height:1.55;font-family:var(--mono);font-size:.8125rem}input:focus,select:focus,textarea:focus{border-color:var(--ink);outline:0;box-shadow:0 0 0 3px var(--brand-soft)}input[type=color]{width:56px;height:42px;padding:3px;border:1px solid var(--line-2);border-radius:6px;background:var(--bg);cursor:pointer}input[type=range]{width:100%;accent-color:var(--ink)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);flex:none}input[type=file]{width:100%;padding:18px;border:1px dashed var(--line-2);border-radius:10px;background:var(--bg);font:inherit;font-size:.9375rem;color:var(--ink-2);cursor:pointer}input[type=file]:hover{border-color:var(--ink)}.field{margin-bottom:18px;min-width:0}.field.chk{display:flex;align-items:center;gap:10px;margin-bottom:12px}.field.chk label{margin:0;font-weight:400}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.fields .field.wide{grid-column:1 / -1}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;margin-bottom:14px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}output{font-family:var(--mono);font-weight:500}.hero{background:var(--surface);border-bottom:1px solid var(--line)}.hero .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:center;padding-block:76px 68px}.hero .eyebrow{display:block;margin-bottom:22px}.hero h1{font-size:clamp(2.75rem,5.4vw,4.5rem);line-height:1.02;max-width:14ch}.hero h1 em{font-style:italic;color:var(--accent)}.hero p.sub{font-size:1.125rem;max-width:46ch;margin:22px 0 30px;color:var(--ink-2)}.hsearch{position:relative;max-width:560px}.hsearch input[type=search]{width:100%;height:58px;border:1px solid var(--line-2);border-radius:var(--r-btn);background:var(--bg);padding:0 18px 0 52px;font:inherit;font-size:1.0625rem;color:var(--ink)}.hsearch input[type=search]:focus{border-color:var(--ink);background:var(--surface);outline:0;box-shadow:0 0 0 4px var(--brand-soft)}.hsearch>span{position:absolute;left:18px;top:18px;width:22px;height:22px;color:var(--ink-2);pointer-events:none}.hsearch svg{width:22px;height:22px;position:static}.x-unused{position:absolute;left:18px;top:18px;width:22px;height:22px;color:var(--ink-2);pointer-events:none}.hsearch .sr{left:0;right:auto;width:100%}.try{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin-top:16px;font-size:.8125rem;color:var(--ink-3)}.hero-facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-2)}.hero-facts div{padding:26px 0 22px;border-bottom:1px solid var(--line-2)}.hero-facts div:nth-child(odd){padding-right:24px;border-right:1px solid var(--line-2)}.hero-facts div:nth-child(2n){padding-left:28px}.hero-facts b{display:block;font:500 2.75rem/1 var(--font);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hero-facts span{font-size:.6875rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3)}.sec{padding-block:56px 8px}.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.sec-h h2{font:500 .8125rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em}.sec-h p{color:var(--ink-3);margin:6px 0 0;font-size:.9375rem;text-transform:none;letter-spacing:0}.more{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;font-weight:500;display:inline-flex;gap:8px;align-items:center}.more svg{width:14px;height:14px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:16px}.grid.cols4{grid-template-columns:repeat(5,minmax(0,1fr))}.cat-card{padding:22px}.cat-card h3{font-size:1.25rem}.card{position:relative;display:flex;flex-direction:column;gap:14px;background:var(--surface);border-radius:var(--r);padding:20px 20px 18px;text-decoration:none;color:var(--ink);min-width:0;border:1px solid transparent;box-shadow:var(--shadow);transition:transform .18s,border-color .18s;min-height:190px}.card:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}.card h3{font-size:.9375rem;text-transform:uppercase;letter-spacing:.07em;font-weight:500;margin-bottom:6px;line-height:1.35}.card p{margin:0;color:var(--ink-3);font-size:.875rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card .go{position:absolute;right:14px;bottom:14px;width:30px;height:30px;border-radius:50%;background:var(--brand);color:var(--brand-ink);display:grid;place-items:center}.card .go svg{width:14px;height:14px}.card .tx{padding-bottom:28px}.card svg{width:14px;height:14px}.tile{width:46px;height:46px;flex:none;border-radius:10px;display:grid;place-items:center;font:500 .8125rem/1 var(--mono);letter-spacing:-.02em;background:var(--surface-2);color:var(--ink)}.tile.sm{width:34px;height:34px;font-size:.6875rem;border-radius:8px}.tag{display:inline-block;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);background:var(--accent-soft);padding:3px 8px;border-radius:3px;vertical-align:2px}.cat-card{position:relative;display:flex;flex-direction:column;gap:10px;background:var(--surface);border-radius:var(--r);padding:24px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);border:1px solid transparent;transition:transform .18s,border-color .18s}.cat-card:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}.cat-card svg.ic{width:32px;height:32px;stroke-width:1.3;margin-bottom:6px}.cat-card h3{font:500 1.375rem/1.2 var(--serif);letter-spacing:0;text-transform:none}.cat-card p{margin:0;color:var(--ink-3);font-size:.875rem}.cat-card .n{font:500 .6875rem var(--font);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);margin-top:auto;padding-top:6px}.pills{display:flex;flex-wrap:wrap;gap:8px}.pill{display:inline-flex;padding:7px 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);font-size:.8125rem;color:var(--ink);text-decoration:none}.pill:hover{border-color:var(--ink);color:var(--ink)}.recent[hidden]{display:none}.built{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;padding-block:44px 8px}.built .eyebrow{flex:none}.built ul{list-style:none;display:flex;gap:14px 40px;flex-wrap:wrap;margin:0;padding:0;font:italic 500 1.5rem/1 var(--serif);color:var(--ink-2)}.suggest{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:44px;padding:32px 36px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow)}.suggest h2{font-size:1.75rem;margin-bottom:4px}.suggest p{margin:0;color:var(--ink-3)}.crumbs{font-size:.75rem;letter-spacing:.06em;color:var(--ink-3);padding-block:22px 0;text-transform:uppercase}.crumbs a{color:var(--ink-3);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.crumbs span[aria-hidden]{margin:0 8px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;padding-block:18px 64px;align-items:start}.main{min-width:0}.aside{position:sticky;top:100px;display:flex;flex-direction:column;gap:22px;min-width:0}.ph{display:flex;gap:18px;align-items:center;margin-bottom:10px}.ph h1{font-size:clamp(2.125rem,4vw,3rem)}.lead{color:var(--ink-2);font-size:1.0625rem;margin:4px 0 24px;max-width:66ch}.panel{background:var(--surface);border-radius:var(--r);padding:28px;box-shadow:var(--shadow)}.panel+.panel,.panel+.ad,.ad+.panel{margin-top:22px}.out{margin-top:22px;border-top:1px solid var(--line);padding-top:20px}.out-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.out-h strong{font-size:.6875rem;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-3);font-weight:500}.err{color:var(--bad);background:var(--bad-soft);border:1px solid color-mix(in srgb,var(--bad) 30%,transparent);padding:11px 15px;border-radius:6px;font-size:.9375rem;margin:0}.hint{color:var(--ink-3);font-size:.9375rem;margin:0}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:14px}.stat{background:var(--bg);border-radius:8px;padding:14px 16px;min-width:0}.stat b{display:block;font:500 1.375rem/1.25 var(--font);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat span{font-size:.6875rem;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em}.tbl{overflow-x:auto;margin-bottom:14px;border:1px solid var(--line);border-radius:8px}table{border-collapse:collapse;width:100%;font-size:.875rem;font-variant-numeric:tabular-nums}th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--bg);font-weight:500;font-size:.6875rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-2);white-space:nowrap}tr:last-child td{border-bottom:0}td input{min-width:80px}pre{background:var(--bg);border-radius:8px;padding:14px;overflow:auto;font:.8125rem/1.6 var(--mono);margin:0 0 14px;white-space:pre-wrap;word-break:break-word}mark{background:var(--accent-soft);color:inherit;border-radius:3px;padding:0 2px;outline:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.rows .row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.rows .row:last-child{border:0}.row .lbl{width:110px;flex:none;font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3)}.row .val{flex:1;min-width:0;overflow-wrap:anywhere}.swatch{height:64px;border-radius:10px;border:1px solid var(--line);margin-bottom:14px}.swatch.big{height:160px}.stage{display:grid;place-items:center;background:var(--surface-2);border-radius:10px;height:200px;margin-bottom:16px}.demo-box{width:120px;height:120px;background:var(--surface);border-radius:12px}.diff{font:.8125rem/1.6 var(--mono);border:1px solid var(--line);border-radius:8px;overflow:auto}.df{padding:1px 12px;white-space:pre-wrap}.df.add{background:var(--good-soft);color:var(--good)}.df.del{background:var(--bad-soft);color:var(--bad)}.hl{white-space:pre-wrap}.good{color:var(--good)}.bad{color:var(--bad)}.preview{border:1px solid var(--line);border-radius:8px;padding:14px 18px;background:var(--surface)}.clock{font:500 clamp(3.5rem,12vw,6rem)/1 var(--mono);text-align:center;padding:28px 0;font-variant-numeric:tabular-nums}.laps{font:.9375rem var(--mono);color:var(--ink-2);padding-left:22px}.pal{display:grid;grid-template-columns:repeat(5,1fr);height:240px;border-radius:10px;overflow:hidden;margin-bottom:14px}.pc{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:10px}.pc .btn{background:#ffffffe6;color:#1b1a18;border-color:transparent;font-family:var(--mono);letter-spacing:0;text-transform:none}.serp{border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin-bottom:14px;background:#fff;font-family:Arial,sans-serif}.serp-u{color:#202124;font-size:14px}.serp-t{color:#1a0dab;font-size:20px;margin:3px 0}.serp-d{color:#4d5156;font-size:14px;line-height:1.58}.qr-out{display:grid;place-items:center;padding:16px;background:var(--surface-2);border-radius:10px;margin-bottom:14px}canvas.pick{cursor:crosshair;border:1px solid var(--line);border-radius:8px;margin-block:12px}.winners{font:500 1.5rem/1.5 var(--font);padding-left:28px}.dl{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:14px}.dl img{max-height:220px;border-radius:8px;border:1px solid var(--line);background:repeating-conic-gradient(var(--surface-2) 0 25%,var(--surface) 0 50%) 0 0 / 16px 16px}.next{margin-top:24px;border-radius:10px;padding:18px;background:var(--bg)}.next[hidden]{display:none}.next h3{font-size:.6875rem;text-transform:uppercase;letter-spacing:.16em;font-weight:500;margin-bottom:12px;color:var(--ink-2)}.next .grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.next .card{padding:14px;flex-direction:row;align-items:center;min-height:0;box-shadow:none;border:1px solid var(--line);gap:12px}.next .card h3{font-size:.8125rem;margin:0;color:var(--ink);letter-spacing:.04em}.next .card p,.next .card .go{display:none}.next .card .tx{padding-bottom:0}.prose h2{font-size:1.875rem;margin:0 0 14px}.prose h3{font-size:1.0625rem;margin:22px 0 8px;font-weight:500}.prose p,.prose li{color:var(--ink-2);max-width:72ch}.prose ol,.prose ul{padding-left:22px;margin:0 0 1em}.prose li{margin-bottom:8px}.prose .meta{color:var(--ink-3);font-size:.875rem}.prose h2:not(:first-child){margin-top:34px}details.faq{border-bottom:1px solid var(--line)}details.faq summary{cursor:pointer;padding:16px 0;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:16px}details.faq summary::-webkit-details-marker{display:none}details.faq summary:after{content:"+";font:400 1.375rem/1 var(--font);color:var(--ink-3)}details.faq[open] summary:after{content:"\2013"}details.faq p{color:var(--ink-2);margin:0 0 18px;max-width:72ch}.side-list{display:flex;flex-direction:column}.side-list a{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:.9375rem}.side-list a:first-child{border-top:0}.side-list a:hover{color:var(--accent)}.aside .panel{padding:22px}.aside .panel h2{font:500 .75rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em;margin-bottom:10px}.ad{display:block;text-align:center;margin-block:24px;min-height:100px}.ad:before{content:"Advertisement";display:block;font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.ad ins{min-height:90px}.ad.side{margin:0;min-height:250px}.ad.side ins{min-height:250px}.ad.off{display:none}.ftr{background:var(--surface);border-top:1px solid var(--line);padding-block:56px 28px;margin-top:48px}.ftr-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr) 1.3fr;gap:36px}.ftr h2{font:500 .6875rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em;margin-bottom:14px}.ftr ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.ftr a{color:var(--ink-2);text-decoration:none;font-size:.875rem}.ftr a:hover{color:var(--ink);text-decoration:underline}.ftr p{color:var(--ink-3);font-size:.875rem;max-width:34ch}.ftr .logo{align-items:flex-start}.ftr .logo b{font-size:1.5rem;padding-left:0}.ftr .logo i{padding-left:0}.svc{display:grid;gap:18px}.svc div{display:flex;gap:14px;align-items:flex-start;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500;line-height:1.4}.svc svg{width:26px;height:26px;flex:none;stroke-width:1.3}.svc small{display:block;text-transform:none;letter-spacing:0;color:var(--ink-3);font-weight:400;font-size:.8125rem}.ftr-base{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:36px;padding-top:22px;color:var(--ink-3);font-size:.75rem;letter-spacing:.04em}.ftr-base a{font-size:.75rem}@media(max-width:1080px){.grid.cols4{grid-template-columns:repeat(2,minmax(0,1fr))}.ftr-grid{grid-template-columns:repeat(3,1fr)}.ftr-grid>:first-child,.ftr-grid>:last-child{grid-column:1 / -1}.svc{grid-template-columns:repeat(3,1fr)}}@media(max-width:980px){.layout{grid-template-columns:minmax(0,1fr)}.aside{position:static}.hero .wrap{grid-template-columns:1fr;gap:36px;padding-block:52px 44px}.nav{display:none}.hdr-in{grid-template-columns:auto 1fr auto}.nav.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--surface);padding:12px 24px 20px;gap:4px;border-bottom:1px solid var(--line)}.nav.open a{padding:12px 0;border-bottom:1px solid var(--line)}.menu-btn{display:grid}}@media(max-width:720px){.hdr-in{min-height:64px;gap:8px}.logo b{font-size:1.375rem}.search input[type=search],.search input[type=search]:focus{width:100%}.search,.tools{min-width:0}.hero h1{max-width:none}.hero-facts b{font-size:2.25rem}.fields,.grid2{grid-template-columns:minmax(0,1fr)}.panel{padding:18px}.grid,.grid.cols4{grid-template-columns:minmax(0,1fr)}.card{min-height:0}.row .lbl{width:80px}.rows .row{flex-wrap:wrap}.pal{height:320px}.pc .btn{padding:0 4px;font-size:.5625rem}.ftr-grid{grid-template-columns:1fr 1fr}.svc{grid-template-columns:1fr}.suggest{padding:24px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.card:hover,.cat-card:hover{transform:none}}.qt{background:var(--surface);border-radius:14px;box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden}.qt-tabs{display:flex;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.qt-tabs button{flex:1 0 auto;background:none;border:0;border-bottom:2px solid transparent;padding:15px 16px 13px;font:500 .6875rem var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);cursor:pointer;white-space:nowrap}.qt-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--ink)}.qt-tabs button:hover{color:var(--ink)}.qt-body{padding:22px}.qt-body textarea{min-height:108px}.qt-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;background:var(--bg);border-top:1px solid var(--line);font-size:.8125rem;color:var(--ink-3)}.qt-foot a{font-weight:500;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;display:inline-flex;gap:8px;align-items:center;color:var(--ink)}.qt-foot svg{width:14px;height:14px}.qt .stats{margin:14px 0 0;grid-template-columns:repeat(3,1fr)}.qt .stat{padding:10px 12px}.qt .stat b{font-size:1.125rem}.qt-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:4px}.intents{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:18px;align-items:center}.intents .lbl{font-size:.6875rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);margin-right:4px}.intents a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--bg);font-size:.875rem;text-decoration:none;color:var(--ink)}.intents a:hover{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.intents svg{width:15px;height:15px}.flows{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.flow{background:var(--surface);border-radius:var(--r);padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px}.flow h3{font:500 1.375rem/1.2 var(--serif)}.flow>p{color:var(--ink-3);font-size:.875rem;margin:0 0 8px}.flow ol{list-style:none;margin:0;padding:0;counter-reset:s;border-top:1px solid var(--line)}.flow li{counter-increment:s;border-bottom:1px solid var(--line)}.flow li a{display:flex;align-items:center;gap:12px;padding:11px 0;text-decoration:none;font-size:.9375rem}.flow li a:before{content:counter(s);width:22px;height:22px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;font:500 .6875rem var(--mono);color:var(--ink-3);flex:none}.flow li a:hover{color:var(--accent)}.flow li a svg{width:14px;height:14px;margin-left:auto;color:var(--ink-3)}.sib{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-block:2px 18px;align-items:center}.sib span.lbl{font-size:.6875rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);flex:none;margin-right:4px}.sib a{flex:none;padding:6px 13px;border:1px solid var(--line-2);border-radius:999px;font-size:.8125rem;text-decoration:none;background:var(--surface)}.sib a:hover{border-color:var(--ink)}.sib a[aria-current=page]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.star{margin-left:auto;flex:none}.star[aria-pressed=true]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.handoff{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px;font-size:.8125rem;color:var(--ink-3)}.handoff .btn{height:32px;font-size:.6875rem;padding:0 12px}.chain{margin-top:22px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--bg)}.chain-h{padding:14px 18px;font-size:.6875rem;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-2);font-weight:500;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}.chain a{display:flex;align-items:center;gap:14px;padding:14px 18px;text-decoration:none;border-bottom:1px solid var(--line);background:var(--surface)}.chain a:last-child{border-bottom:0}.chain a:hover{background:var(--surface-2);color:var(--ink)}.chain a b{display:block;font-weight:500;font-size:.9375rem}.chain a small{color:var(--ink-3);font-size:.8125rem}.chain a svg{width:16px;height:16px;margin-left:auto;flex:none}.keep{margin-top:40px}.dock{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:40;display:none;align-items:center;gap:14px;background:var(--brand);color:var(--brand-ink);padding:10px 12px 10px 20px;border-radius:999px;box-shadow:0 10px 30px #00000040;font-size:.875rem;max-width:calc(100vw - 24px)}.dock.show{display:flex}.dock a{color:var(--brand-ink);font-weight:500;text-decoration:none;background:#ffffff29;padding:8px 14px;border-radius:999px;white-space:nowrap}.dock button{background:none;border:0;color:inherit;cursor:pointer;font-size:1.125rem;line-height:1;padding:4px 8px;opacity:.7}@media(max-width:980px){.qt-foot{flex-wrap:wrap}}.statband{display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);margin-top:-1px;transform:translateY(-50%);position:relative;margin-bottom:-24px}.statband div{padding:20px 24px;border-left:1px solid var(--line)}.statband div:first-child{border-left:0}.statband b{display:block;font:500 1.75rem/1.1 var(--font);font-variant-numeric:tabular-nums}.statband span{font-size:.6875rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3)}.ptabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-bottom:18px;padding-bottom:2px}.ptabs button{flex:none;padding:8px 16px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);font:500 .8125rem var(--font);cursor:pointer;color:var(--ink)}.ptabs button:hover{border-color:var(--ink)}.ptabs button.on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.card[hidden],.sec[hidden]{display:none}.cathead{display:flex;gap:22px;align-items:flex-start;padding-block:18px 8px}.cathead h1{font-size:clamp(2.25rem,4.5vw,3.5rem);margin-bottom:12px}.cathead .lead{margin:0;max-width:78ch}.catic{width:60px;height:60px;flex:none;border-radius:14px;background:var(--surface);box-shadow:var(--shadow);display:grid;place-items:center}.catic svg{width:30px;height:30px;stroke-width:1.3}.filterbar{margin:18px 0 14px;max-width:420px}.filterbar input{border-radius:999px;padding-inline:18px}.hero{padding-bottom:28px}@media(max-width:720px){.statband{grid-template-columns:repeat(2,1fr);transform:none;margin-top:20px;margin-bottom:0}.statband div:nth-child(3){border-left:0}.statband div:nth-child(n+3){border-top:1px solid var(--line)}.cathead{flex-direction:column;gap:14px}}.prose .sec-h h2,.sec.prose .sec-h h2{font:500 .8125rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em;margin:0}.keep .grid,.flows{grid-template-columns:repeat(3,minmax(0,1fr))}.keep h2{font:500 .8125rem/1.2 var(--font);text-transform:uppercase;letter-spacing:.16em}@media(max-width:980px){.flows,.keep .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.flows,.keep .grid{grid-template-columns:minmax(0,1fr)}}.ph{flex-wrap:wrap}.ph h1{flex:1 1 0;min-width:0;overflow-wrap:anywhere}@media(max-width:720px){.ph h1{flex-basis:calc(100% - 70px)}.ph .star{margin-left:0;order:3}}.story{padding:16px 0;border-bottom:1px solid var(--line)}.story:last-of-type{border-bottom:0}.story h3{font:500 1.0625rem/1.35 var(--font);margin:0 0 4px}.story h3 a{text-decoration:none}.story h3 a:hover{color:var(--accent);text-decoration:underline}.smeta{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px!important}.story p{margin:0}.vs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0 26px}.vs-c{background:var(--bg);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:10px}.vs-c h3{font:500 1.375rem/1.2 var(--serif);margin:0}.vs-c ul{margin:0 0 8px;flex:1}.vs-c .btn{align-self:flex-start}.cta{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-block:36px;padding:28px 32px;background:var(--brand);color:var(--brand-ink);border-radius:var(--r)}.cta h2{font-size:1.625rem;color:var(--brand-ink);margin-bottom:4px}.cta p{margin:0;opacity:.8;max-width:56ch}.cta .btn{background:var(--brand-ink);color:var(--brand);border-color:var(--brand-ink)}.cta .btn:hover{background:var(--surface-2);color:var(--ink)}.prose .tbl td,.prose .tbl th{white-space:normal;min-width:130px}@media(max-width:720px){.vs{grid-template-columns:minmax(0,1fr)}.cta{padding:22px}}.nav{gap:22px}.nav a{white-space:nowrap}@media(max-width:1240px){.nav{gap:16px}.search input[type=search]{width:160px}}
