/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.top-\[calc\(100\%-3px\)\]{top:calc(100% - 3px)}.-bottom-\[3px\]{bottom:-3px}.left-0{left:0}.block{display:block}.flex{display:flex}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-px{height:1px}.w-full{width:100%}.min-w-fit{min-width:fit-content}.grow{flex-grow:1}.flex-wrap{flex-wrap:wrap}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-current{--tw-gradient-via:currentcolor;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-current\/70{--tw-gradient-via:currentcolor}@supports (color:color-mix(in lab, red, red)){.via-current\/70{--tw-gradient-via:color-mix(in oklab, currentcolor 70%, transparent)}}.via-current\/70{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.whitespace-pre{white-space:pre}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[letter-spacing\,color\]{transition-property:letter-spacing,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[top\,opacity\]{transition-property:top,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\]{--tw-ease:cubic-bezier(.22,1,.36,1);transition-timing-function:cubic-bezier(.22,1,.36,1)}@media (hover:hover){.group-hover\/underline\:-top-px:is(:where(.group\/underline):hover *){top:-1px}.group-hover\/underline\:opacity-50:is(:where(.group\/underline):hover *){opacity:.5}.group-hover\/underline\:opacity-100:is(:where(.group\/underline):hover *){opacity:1}.hover\:tracking-\[-0\.01em\]:hover{--tw-tracking:-.01em;letter-spacing:-.01em}}}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:optional;src:url(/fonts/source-serif-4-latin.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-500.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/ibm-plex-mono-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/ibm-plex-mono-latin-500.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:optional;src:url(/fonts/source-serif-4-latin-ext.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-ext-500.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/ibm-plex-sans-latin-ext-600.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/ibm-plex-mono-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/ibm-plex-mono-latin-ext-500.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Serif Fallback;font-weight:400;src:local(Georgia);size-adjust:91.3%;ascent-override:113.5%;descent-override:36.7%;line-gap-override:0%}@font-face{font-family:Serif Fallback;font-weight:500 900;src:local(Georgia Bold),local(Georgia-Bold);size-adjust:80.3%;ascent-override:128.9%;descent-override:41.7%;line-gap-override:0%}@font-face{font-family:Sans Fallback;src:local(Segoe UI),local(SegoeUI);size-adjust:102.6%;ascent-override:99.9%;descent-override:26.8%;line-gap-override:0%}@font-face{font-family:Mono Fallback;src:local(Consolas);size-adjust:109.1%;ascent-override:93.9%;descent-override:25.2%;line-gap-override:0%}:root{--ink:#0d2137;--ink-2:#1b3554;--paper:#f5f7f9;--rule:#c9d6e3;--muted:#4a5a6b;--tick:#b3322d;--tick-soft:#b3322d47;--white:#fff;--serif:"Source Serif 4", "Serif Fallback", Georgia, "Times New Roman", serif;--sans:"IBM Plex Sans", "Sans Fallback", "Segoe UI", system-ui, sans-serif;--mono:"IBM Plex Mono", "Mono Fallback", Consolas, monospace;--line:28px;--gutter:clamp(16px, 4vw, 40px);--margin:88px;--ease:cubic-bezier(.2, .7, .2, 1)}:lang(zh){--serif:"Source Serif 4", "Noto Serif SC", "Songti SC", "SimSun", serif;--sans:"IBM Plex Sans", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}::selection{background:var(--tick-soft);color:var(--ink)}body{background:var(--paper);color:var(--ink);font:400 17px/var(--line) var(--sans);font-variant-numeric:lining-nums tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:clip}p,li,td,dd{text-wrap:pretty}h1,h2,h3,th,dt{text-wrap:balance}a{color:var(--ink);transition:background-size .35s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;text-decoration:none}a:hover{background-size:100% 1px}p a,.box td:first-child a{background-image:linear-gradient(var(--rule), var(--rule)), linear-gradient(currentColor, currentColor);background-position:0 100%,0 100%;background-size:100% 1px,0 1px}p a:hover,.box td:first-child a:hover{background-size:100% 1px,100% 1px}a.link-hover,.foot-links a,.foot-links a:hover{background:0 0!important}:focus-visible{outline:2px solid var(--tick);outline-offset:3px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--ink);color:var(--white);line-height:var(--line);z-index:10;padding:0 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.wrap{max-width:calc(1040px + var(--margin));padding:0 var(--gutter);margin:0 auto}.ledger-page{position:relative}.ledger-page:before{content:"";top:0;bottom:0;left:calc(var(--gutter) + var(--margin) - 14px);background:var(--tick-soft);pointer-events:none;width:1px;position:absolute}.block,.hero,.page-head,.group{padding-left:var(--margin);position:relative}.ref{width:calc(var(--margin) - 28px);text-align:right;font:400 13px/var(--line) var(--mono);color:var(--muted);letter-spacing:.02em;position:absolute;left:0}.top{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--rule);background:#f5f7f9eb;position:sticky;top:0}.top-in{height:calc(var(--line) * 2);padding-left:calc(var(--gutter) + var(--margin));justify-content:space-between;align-items:center;gap:16px;display:flex}.mark{font:600 18px/1 var(--serif);white-space:nowrap;background:0 0;align-items:center;gap:8px;display:inline-flex}.tick{color:var(--tick);font-family:var(--sans);font-weight:600}nav{align-items:center;gap:clamp(14px,2.6vw,28px);font-size:15px;display:flex}nav a{color:var(--muted)}nav a:hover,nav a[aria-current]{color:var(--ink)}nav .lang{font:500 13px/1 var(--mono);border:1px solid var(--rule);padding:6px 8px}.hero{column-gap:calc(var(--line) * 3);padding-top:calc(var(--line) * 5);padding-bottom:var(--line);grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:start;display:grid}.hero .ref{top:calc(var(--line) * 5 + 14px)}.hero-main{min-width:0}.hero h1{margin:0 0 calc(var(--line) * 2);font:600 clamp(48px, 8.4vw, 118px)/.98 var(--serif);letter-spacing:-.035em;grid-column:1/-1;max-width:12ch}.hero h1:lang(zh){letter-spacing:-.01em;max-width:9em;line-height:1.08}.hero h1 .total{padding-bottom:.2em;display:inline-block;position:relative}.hero h1 .total:after{content:"";border-top:.022em solid var(--ink);border-bottom:.022em solid var(--ink);transform-origin:0;height:.075em;position:absolute;bottom:0;left:0;right:0}.hero h1 .blur-text{display:inline}.lede{margin:0 0 var(--line);color:var(--muted);max-width:54ch;font-size:clamp(18px,1.6vw,20px)}.cta{flex-wrap:wrap;gap:12px;margin:0;display:flex}.btn{font:500 15px/calc(var(--line) * 1.5) var(--sans);color:var(--white);background:var(--ink);border:1px solid var(--ink);isolation:isolate;transition:color .3s var(--ease);white-space:nowrap;padding:0 22px;display:inline-block;position:relative;overflow:hidden}.btn:before{content:"";background:var(--ink-2);transform-origin:0;transition:transform .35s var(--ease);z-index:-1;position:absolute;inset:0;transform:scaleX(0)}.btn:hover:before{transform:scaleX(1)}.btn.ghost{color:var(--ink);background:0 0}.btn.ghost:before{background:var(--ink)}.btn.ghost:hover{color:var(--white)}.controls{background:var(--white);border:1px solid var(--rule);margin:0;padding:14px 16px}.controls h2{font:500 13px/var(--line) var(--sans);color:var(--muted);border-bottom:2px solid var(--ink);margin:0 0 14px}.controls dl{margin:0}.controls dl>div{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:12px;display:flex}.controls dt{color:var(--muted);font-size:15px}.controls dd{font:400 15px/var(--line) var(--mono);color:var(--ink);align-items:center;margin:0;display:flex}.controls .var{border-bottom:0;padding-top:6px}.controls .var dt{color:var(--ink);font-weight:600}.controls .var dd{border-bottom:4px double var(--ink);font-weight:500}.controls .var .tick{margin-left:8px;display:inline-block}@media (prefers-reduced-motion:no-preference){.hero h1 .total:after{animation:draw 1.1s .9s var(--ease) forwards;transform:scaleX(0)}.controls .var .tick{opacity:0;animation:stamp-sm .45s 2s var(--ease) forwards}}@keyframes draw{to{transform:scaleX(1)}}@keyframes stamp-sm{0%{opacity:0;transform:scale(1.3)rotate(-10deg)}to{opacity:1;transform:none}}.block{padding-top:calc(var(--line) * 3)}.block .ref{top:calc(var(--line) * 3 + 14px)}.block h2{font:600 clamp(32px, 3.6vw, 44px)/calc(var(--line) * 2) var(--serif);letter-spacing:-.015em;margin:0}.sub{margin:0 0 var(--line);color:var(--muted);max-width:62ch}.products{border-top:2px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.product{padding:14px 24px var(--line) 0;flex-direction:column;display:flex}.product+.product{border-left:1px solid var(--rule);padding-left:24px}.product .code{font:400 13px/var(--line) var(--mono);color:var(--muted);justify-content:space-between;gap:8px;display:flex}.product .status{color:var(--tick)}.product h3{font:600 24px/calc(var(--line) * 1.2) var(--serif);letter-spacing:-.01em;margin:0 0 8px}.product .summary{color:var(--muted);margin:0 0 14px;font-size:15.5px}.product ul{margin:0 0 14px;padding:0;font-size:15px;list-style:none}.product li{border-top:1px solid var(--rule);padding-top:6px;padding-bottom:6px;padding-left:24px;line-height:22px;position:relative}.product li:before{content:"✓";color:var(--tick);font-weight:600;position:absolute;top:6px;left:2px}.product .format{margin:0 0 var(--line);color:var(--muted);font:400 13px/20px var(--mono)}.product .buy{margin-top:auto}.product .price{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 14px;display:flex}.product .price .label{color:var(--muted);font-size:14px}.product .price .amount{font:500 clamp(30px, 3vw, 38px)/calc(var(--line) * 1.5) var(--mono);border-bottom:4px double var(--ink);align-items:baseline;gap:4px;padding-bottom:2px;display:inline-flex}.product .price .cur{color:var(--muted);font-size:15px}.product .btn{text-align:center;width:100%}.free{margin:var(--line) 0 0;color:var(--muted)}.ledger{border-collapse:collapse;background:var(--white);border:1px solid var(--rule);width:100%}.ledger thead th{text-align:left;font:500 13px/var(--line) var(--sans);color:var(--muted);border-bottom:2px solid var(--ink);padding:0 16px}.ledger td,.ledger tbody th{border-bottom:1px solid var(--rule);vertical-align:top;text-align:left;transition:background-color .25s var(--ease);padding:14px 16px}.ledger tbody tr:hover td,.ledger tbody tr:hover th{background:#f8fafc}.ledger tr:last-child td,.ledger tr:last-child th{border-bottom:0}.ledger tbody th{font:600 18px/var(--line) var(--serif);width:30%}.ledger td{color:var(--muted)}.ledger .ck{color:var(--tick);text-align:center;width:1%;font-weight:600}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.ledger .ck{animation:linear both stamp-sm;animation-timeline:view();animation-range:entry 40% cover 35%}}}.faq{border-top:2px solid var(--ink);margin:0}.faq>div{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:0 40px;padding:14px 0;display:grid}.faq dt{font:600 19px/var(--line) var(--serif)}.faq dd{color:var(--muted);margin:0}.split{grid-template-columns:1fr 1fr;gap:56px;display:grid}.split h2{margin-bottom:8px}.split p{color:var(--muted);max-width:52ch}.contact p{max-width:60ch;margin:0}.total-line{margin-top:var(--line);border-bottom:4px double var(--ink);font:500 clamp(20px, 3vw, 32px)/calc(var(--line) * 2) var(--mono);padding-bottom:6px;display:inline-block}.total-line a{background:0 0}.total-line a:hover{color:var(--tick)}.page-head{padding-top:calc(var(--line) * 4)}.page-head .ref{top:calc(var(--line) * 4 + 14px)}.page-head h1{margin:0 0 var(--line);font:600 clamp(48px, 7vw, 96px)/1 var(--serif);letter-spacing:-.03em}.page-head p{color:var(--muted);max-width:62ch;margin:0}.group{padding-top:calc(var(--line) * 2)}.group .ref{top:calc(var(--line) * 2)}.group h2{font:600 clamp(24px, 2.6vw, 30px)/var(--line) var(--serif);margin:0 0 14px}.box{table-layout:fixed}.box th:first-child{width:22%}.box th:nth-child(2){width:32%}.box th:nth-child(4){width:12%}.box td:first-child{color:var(--ink);font-weight:600}.box .verdict{white-space:nowrap;font:400 14px/var(--line) var(--mono);color:var(--ink)}.disclaimer{color:var(--muted);margin:calc(var(--line) * 2) 0 0;max-width:70ch;padding-left:var(--margin);font-size:14px}.nf{padding-top:calc(var(--line) * 6);padding-bottom:calc(var(--line) * 4)}.nf h1{margin:0 0 var(--line);font:600 clamp(44px, 7vw, 88px)/1 var(--serif);letter-spacing:-.02em}.foot{margin-top:calc(var(--line) * 4);border-top:1px solid var(--rule)}.foot-in{padding-top:var(--line);padding-bottom:var(--line);padding-left:calc(var(--gutter) + var(--margin));color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:0 24px;font-size:14px;display:flex}.foot-in a{color:var(--muted);margin-right:16px}.foot-links a:last-child{margin-right:0}.colophon{flex-basis:100%;margin:0;font-size:13px}@media (width<=960px){:root{--margin:0px}.ledger-page:before,.ref{display:none}.top-in,.foot-in{padding-left:var(--gutter)}.hero{padding-top:calc(var(--line) * 4);grid-template-columns:1fr}.hero h1{font-size:clamp(56px,11vw,96px)}.controls{max-width:420px;margin-top:calc(var(--line) * 2)}.products{grid-template-columns:1fr}.product,.product+.product{padding:14px 0 var(--line);border-left:0;border-bottom:1px solid var(--rule)}.product .btn{width:auto}.split{grid-template-columns:1fr;gap:0}.split>div+div{padding-top:var(--line)}.faq>div{grid-template-columns:1fr}}@media (width<=600px){nav .hide-sm{display:none}.hero{padding-top:calc(var(--line) * 3)}.hero h1{font-size:clamp(46px,13vw,72px)}.ledger thead{display:none}.ledger,.ledger tbody,.ledger tr,.ledger td,.ledger tbody th{display:block;width:100%!important}.ledger tr{border-bottom:1px solid var(--rule);padding:14px 0;position:relative}.ledger tr:last-child{border-bottom:0}.ledger td,.ledger tbody th{border:0;padding:0 44px 0 16px}.ledger .ck{position:absolute;top:14px;right:12px;width:auto!important}.product .btn{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before{transition:none!important}}.page-head .cta{margin-top:var(--line)}.svc .note{margin:var(--line) 0 0;color:var(--muted);max-width:70ch;font-size:15px}.svc .note strong{color:var(--ink);font-weight:600}.contact .note{margin-top:var(--line);color:var(--muted);font-size:14px}.rate{table-layout:fixed}.rate thead th:first-child{width:22%}.rate thead th:nth-child(3){width:14%}.rate thead th:nth-child(4){text-align:right;width:16%}.rate tbody th{width:auto}.rate td.num{font:400 14px/var(--line) var(--mono);color:var(--ink);text-align:right}.rate td.time{font:400 14px/var(--line) var(--mono);color:var(--ink);white-space:nowrap}.steps{counter-reset:step}.steps tbody th{width:26%}.steps tbody th:before{counter-increment:step;content:counter(step) ". ";font:400 14px/var(--line) var(--mono);color:var(--muted)}.nots{max-width:70ch;margin:0;padding:0;list-style:none}.nots li{color:var(--muted);border-bottom:1px solid var(--rule);padding:7px 0 7px 28px;position:relative}.nots li:before{content:"✕";color:var(--ink);font-size:13px;position:absolute;top:7px;left:4px}@media (width<=600px){.rate td.num{text-align:left}.rate td.time{padding-top:4px}}.legal .group p{max-width:68ch;margin:0 0 14px}.legal .group ul{max-width:68ch;margin:0 0 14px;padding-left:1.25em}.legal .group li{margin:0 0 6px}.legal .group:last-child{padding-bottom:calc(var(--line) * 3)}.calc-grid{gap:var(--line) 40px;grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;display:grid}.calc-form{gap:14px;display:grid}.calc-field{gap:4px;display:grid}.calc-field label{color:var(--muted);font-size:14px;line-height:20px}.calc-input{background:var(--white);border:1px solid var(--rule);align-items:center;display:flex}.calc-input:focus-within{border-color:var(--ink)}.calc-input input{width:100%;min-width:0;color:var(--ink);font:400 17px/42px var(--mono);background:0 0;border:0;outline:none;flex:1;padding:0 12px}.calc-input span{color:var(--muted);font:400 15px/42px var(--mono);padding:0 12px}.calc-input:has(input[aria-invalid]){border-color:var(--tick)}.calc-err{color:var(--tick);font-size:14px;line-height:20px}.calc-seg{border:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.calc-seg label{text-align:center;cursor:pointer;color:var(--ink);background:var(--white);transition:background-color .25s var(--ease), color .25s var(--ease);padding:8px 10px;font-size:14px;line-height:20px;position:relative}.calc-seg label+label{border-left:1px solid var(--ink)}.calc-seg label.on{background:var(--ink);color:var(--white)}.calc-seg input{opacity:0;pointer-events:none;position:absolute}.calc-seg label:has(input:focus-visible){outline:2px solid var(--tick);outline-offset:2px}.calc-line{border:0;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;min-width:0;margin:0;padding:0;display:grid}.calc-line>*,.calc-grid>*,.calc-form>*{min-width:0}.calc-line legend{font:400 13px/var(--line) var(--mono);color:var(--muted);padding:0}.calc-x{border:1px solid var(--rule);background:var(--white);width:44px;height:44px;color:var(--muted);cursor:pointer;font-size:14px}.calc-x:hover{color:var(--tick);border-color:var(--tick)}.calc-actions{margin:0}.calc button.btn{cursor:pointer}.calc-out{gap:14px;min-width:0;display:grid}.calc-work tbody th{width:28%;font-size:16px}.calc-formula{font:400 14px/var(--line) var(--mono);overflow-wrap:anywhere}.ledger td.calc-value{font:500 16px/var(--line) var(--mono);color:var(--ink);text-align:right;white-space:nowrap}.calc-work tr.calc-total td.calc-value span,.calc-work tr.calc-total .calc-value{text-underline-offset:6px;-webkit-text-decoration:underline double;text-decoration:underline double}.ledger td.calc-ok{color:#1e6b3a}.ledger td.calc-off{color:var(--tick)}.calc-work thead th:last-child{text-align:right}.calc-sched{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.calc-sched summary{cursor:pointer;color:var(--ink);font-size:15px;line-height:var(--line)}.calc-sched table{margin-top:14px}.calc-sched td,.calc-sched tbody th{font:400 14px/20px var(--mono);text-align:right;color:var(--ink);width:auto;padding:6px 12px}.calc-sched thead th{text-align:right;padding:0 12px}@media (width<=960px){.calc-grid{grid-template-columns:1fr}.calc-form{max-width:420px}}@media (width<=600px){.ledger td.calc-value{text-align:left;padding-top:4px}.calc-sched thead{display:table-header-group}.calc-sched table{width:100%;display:table}.calc-sched tbody{display:table-row-group}.calc-sched tr{border:0;padding:0;display:table-row}.calc-sched td,.calc-sched tbody th{border-bottom:1px solid var(--rule);white-space:nowrap;padding:4px 6px;font-size:12px;display:table-cell;width:auto!important}.calc-sched thead th{padding:0 6px;font-size:12px}}.art-list tbody th{width:auto}.art-list tbody th a{font:600 20px/var(--line) var(--serif)}.art-sum{font:400 15px/24px var(--sans);color:var(--muted);max-width:60ch;margin-top:4px;display:block}.art-list thead th:last-child,.art-list .art-date{white-space:nowrap;width:22%}.art-list .art-date{font:400 14px/var(--line) var(--mono);color:var(--ink)}.article .byline{margin-top:14px;font-size:15px}.article .group p,.article .group ol{max-width:68ch;margin:0 0 14px}.article .group ol{padding-left:1.4em}.article .group li{margin:0 0 6px}.article code{white-space:nowrap;font:400 .9em/1 var(--mono);color:var(--ink);background:var(--white);border:1px solid var(--rule);padding:1px 4px}.article pre{background:var(--white);border:1px solid var(--rule);border-left:3px solid var(--ink);max-width:68ch;margin:0 0 14px;padding:14px 16px;overflow-x:auto}.article pre code{font:400 14px/22px var(--mono);white-space:pre;background:0 0;border:0;padding:0}.art-figs{max-width:68ch;margin:0 0 var(--line)}.art-figs tbody th{font:400 16px/var(--line) var(--sans);color:var(--muted);width:auto}.art-figs td{font:500 16px/var(--line) var(--mono);color:var(--ink);text-align:right;white-space:nowrap}.art-figs .art-total th{color:var(--ink);font-weight:600}.art-figs .art-total td span{text-underline-offset:6px;-webkit-text-decoration:underline double;text-decoration:underline double}.art-rule{font:600 clamp(22px, 2.6vw, 28px)/1.3 var(--serif);color:var(--ink);border-left:3px solid var(--tick);padding-left:16px}.art-foot{padding:calc(var(--line) * 2) 0 0 var(--margin);color:var(--muted);font-size:15px}.art-foot p{max-width:68ch;margin:0 0 14px}@media (width<=600px){.art-list .art-date{padding-top:4px}.art-figs td{text-align:left;white-space:normal;padding-top:2px}.article pre code{font-size:13px}}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}.link-hover{cursor:pointer;white-space:nowrap;color:currentColor;outline:none;width:fit-content;text-decoration:none;display:inline-flex;position:relative}.link-hover:before,.link-hover:after{pointer-events:none;background:currentColor;width:100%;height:1px;position:absolute;top:100%;left:0}.link-hover:before{content:""}.link-hover:focus-visible{outline:2px solid color-mix(in srgb, currentColor 45%, transparent);outline-offset:.25rem;border-radius:.25rem}.link-hover--slide:before{transform-origin:100%;transition:transform .3s;transform:scaleX(0)}.link-hover--slide:hover:before,.link-hover--slide:focus-visible:before{transform-origin:0%;transform:scale(1)}.link-hover--double:before{transform-origin:100%;transition:transform .3s cubic-bezier(.7,0,.2,1);transform:scaleX(0)}.link-hover--double:hover:before,.link-hover--double:focus-visible:before{transform-origin:0%;transition-timing-function:cubic-bezier(.4,1,.8,1);transform:scale(1)}.link-hover--double:after{content:"";transform-origin:0%;transition:transform .3s cubic-bezier(.7,0,.2,1);top:calc(100% + 4px);transform:scaleX(0)}.link-hover--double:hover:after,.link-hover--double:focus-visible:after{transform-origin:100%;transition-timing-function:cubic-bezier(.4,1,.8,1);transform:scale(1)}.link-hover--grow:before{transform-origin:100%;transition:transform .3s cubic-bezier(.2,1,.8,1);transform:scaleX(0)}.link-hover--grow:hover:before,.link-hover--grow:focus-visible:before{transform-origin:0%;transition-timing-function:cubic-bezier(.7,0,.2,1);transform:scaleY(2)}.link-hover--grow:after{content:"";transform-origin:100%;transition:transform .4s cubic-bezier(.2,1,.8,1) .1s;top:calc(100% + 4px);transform:scaleX(0)}.link-hover--grow:hover:after,.link-hover--grow:focus-visible:after{transform-origin:0%;transform:scale(1)}.link-hover--strike{padding-inline:.625rem}.link-hover--strike:before{transform-origin:100%;height:2px;transition:transform .3s cubic-bezier(.4,1,.8,1);top:50%;transform:scaleX(0)}.link-hover--strike:hover:before,.link-hover--strike:focus-visible:before{transform-origin:0%;transform:scale(1)}.link-hover--strike span{transition:transform .3s cubic-bezier(.4,1,.8,1);display:inline-block}.link-hover--strike:hover span,.link-hover--strike:focus-visible span{transform:scale(1.08)}.link-hover--fade:before,.link-hover--fade:after{opacity:0;transform-origin:50% 0;transition:transform .3s cubic-bezier(.2,1,.8,1),opacity .3s cubic-bezier(.2,1,.8,1);transform:translateY(3px)}.link-hover--fade:after{content:"";width:70%;top:calc(100% + 4px);left:15%}.link-hover--fade:hover:before,.link-hover--fade:hover:after,.link-hover--fade:focus-visible:before,.link-hover--fade:focus-visible:after{opacity:1;transform:translate(0,0)}.link-hover--fade:before,.link-hover--fade:hover:after,.link-hover--fade:focus-visible:after{transition-delay:.1s}.link-hover--pulse:before{opacity:0;height:10px;top:100%}.link-hover--pulse:hover:before,.link-hover--pulse:focus-visible:before{opacity:1;animation:.3s forwards line-hover-line-up}.link-hover--pulse:after{content:"";opacity:0;transition:opacity .3s}.link-hover--pulse:hover:after,.link-hover--pulse:focus-visible:after{opacity:1;transition-delay:.3s}.link-hover--swap:before{transform-origin:0%;transition:transform .3s;transform:scaleX(0)}.link-hover--swap:hover:before,.link-hover--swap:focus-visible:before{transform:scale(1)}.link-hover--swap:after{content:"";transform-origin:100%;transition:transform .3s;top:calc(100% + 4px)}.link-hover--swap:hover:after,.link-hover--swap:focus-visible:after{transform:scaleX(0)}.link-hover--sweep{padding-inline:.25rem}.link-hover--sweep:before{background:color-mix(in srgb, currentColor 12%, transparent);opacity:0;height:100%;top:0}.link-hover--sweep:hover:before,.link-hover--sweep:focus-visible:before{opacity:1;animation:.3s forwards line-hover-cover-up}.link-hover--sweep:after{content:"";transition:opacity .3s}.link-hover--sweep:hover:after,.link-hover--sweep:focus-visible:after{opacity:0}.link-hover--bounce:before{border-radius:999px;height:7px;transition:transform .2s cubic-bezier(.2,.57,.67,1.53),opacity .2s cubic-bezier(.2,.57,.67,1.53);transform:scale(1)}.link-hover--bounce:hover:before,.link-hover--bounce:focus-visible:before{opacity:1;transition-duration:.4s;transition-timing-function:cubic-bezier(.8,0,.1,1);transform:scale(1.18,.1)}.link-hover--bounce span{transition:transform .2s cubic-bezier(.2,.57,.67,1.53) 50ms;display:inline-block;transform:translateY(-4px)}.link-hover--bounce:hover span,.link-hover--bounce:focus-visible span{transition-duration:.4s;transition-delay:0s;transition-timing-function:cubic-bezier(.8,0,.1,1);transform:translate(0,0)}.link-hover__graphic{fill:none;stroke:currentColor;stroke-width:1px;pointer-events:none;position:absolute;top:0;left:0}.link-hover__graphic--stroke path{stroke-dasharray:1;stroke-dashoffset:1px}.link-hover:hover .link-hover__graphic--stroke path,.link-hover:focus-visible .link-hover__graphic--stroke path{stroke-dashoffset:0}.link-hover--arc:before,.link-hover--scribble:before{display:none}.link-hover__graphic--arc{top:73%;left:-23%}.link-hover__graphic--arc path{transition:stroke-dashoffset .4s cubic-bezier(.7,0,.3,1)}.link-hover:hover .link-hover__graphic--arc path,.link-hover:focus-visible .link-hover__graphic--arc path{transition-duration:.3s;transition-timing-function:cubic-bezier(.8,1,.7,1)}.link-hover__graphic--scribble{top:100%}.link-hover__graphic--scribble path{transition:stroke-dashoffset .6s cubic-bezier(.7,0,.3,1)}.link-hover:hover .link-hover__graphic--scribble path,.link-hover:focus-visible .link-hover__graphic--scribble path{transition-duration:.3s;transition-timing-function:cubic-bezier(.8,1,.7,1)}@keyframes line-hover-line-up{0%{transform-origin:50% 100%;transform:scaleY(.045)}50%{transform-origin:50% 100%;transform:scale(1)}51%{transform-origin:50% 0;transform:scale(1)}to{transform-origin:50% 0;transform:scaleY(.045)}}@keyframes line-hover-cover-up{0%{transform-origin:50% 100%;transform:scaleY(.045)}50%{transform-origin:50% 100%;transform:scale(1)}51%{transform-origin:50% 0;transform:scale(1)}to{transform-origin:50% 0;transform:scaleY(.045)}}@media (prefers-reduced-motion:reduce){.link-hover,.link-hover *,.link-hover:before,.link-hover:after{transition-duration:.01ms!important;animation:none!important}}
