@font-face{font-family:Host Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url("./media/host-grotesk-latin-ext-wght-normal-FHLRB4TE.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Host Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 800;src:url("./media/host-grotesk-latin-wght-normal-XVJVBJQF.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-cyrillic-ext-wght-normal-QXKVIKFD.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-cyrillic-wght-normal-GOIAQAGU.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-symbols2-wght-normal-WZJJVLQO.woff2") format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-vietnamese-wght-normal-KW5NM6YV.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-latin-ext-wght-normal-HU3ZAWN6.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/geist-mono-latin-wght-normal-CJNQKXUG.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0a0b0d;--surface: #101216;--surface-2: #171a1f;--line: rgb(255 255 255 / .1);--line-strong: rgb(255 255 255 / .22);--text: #e8ebef;--muted: #9ca3ad;--bright: #f7f9fb;--stage: #e3e6ea;--stage-ink: #0a0b0d;--font: "Host Grotesk Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Geist Mono Variable", ui-monospace, "SFMono-Regular", Menlo, monospace;--t-display: clamp(2.5rem, 6.4vw, 5.5rem);--t-h2: clamp(1.875rem, 3.6vw, 3rem);--t-h3: 1.375rem;--t-lead: clamp(1.125rem, 1.4vw, 1.3125rem);--t-body: 1rem;--t-small: .875rem;--t-mono: .875rem;--radius: 8px;--gutter: clamp(1.25rem, 4vw, 3rem);--max: 84rem;--section: clamp(5rem, 11vw, 9.5rem);--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--t-body);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--bright);outline-offset:3px;border-radius:2px}::selection{background:var(--bright);color:var(--bg)}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--section)}.section--line{border-top:1px solid var(--line)}.page-head{padding-block:clamp(4rem,10vw,8.5rem) clamp(3rem,6vw,5rem)}.eyebrow{display:block;margin-bottom:1.5rem;font-family:var(--mono);font-size:var(--t-mono);font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.display{max-width:17ch;font-size:var(--t-display);font-weight:300;line-height:1.03;letter-spacing:-.035em;color:var(--bright);text-wrap:balance}.h2{max-width:20ch;font-size:var(--t-h2);font-weight:300;line-height:1.1;letter-spacing:-.03em;color:var(--bright);text-wrap:balance}.h3{font-size:var(--t-h3);font-weight:400;line-height:1.25;letter-spacing:-.015em;color:var(--bright)}.lead{max-width:46ch;font-size:var(--t-lead);line-height:1.55;color:var(--muted);text-wrap:pretty}.display+.lead,.h2+.lead{margin-top:1.75rem}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:var(--t-mono);letter-spacing:.04em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:3rem;padding:.7rem 1.4rem;border:1px solid var(--bright);border-radius:var(--radius);background:var(--bright);color:var(--bg);font-size:var(--t-body);font-weight:500;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .15s var(--ease)}.btn:hover{background:transparent;color:var(--bright)}.btn:active{transform:scale(.98)}.btn--ghost{border-color:var(--line-strong);background:transparent;color:var(--bright)}.btn--ghost:hover{border-color:var(--bright)}.arrow-link{display:inline-flex;align-items:center;gap:.6em;min-height:2.75rem;color:var(--bright);font-weight:500}.arrow-link:after{content:"\2192";transition:transform .3s var(--ease)}.arrow-link:hover:after{transform:translate(.3em)}.arrow-link span{background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1px no-repeat;padding-bottom:.15em}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}.rules{border-top:1px solid var(--line)}.rules>li{display:grid;gap:.5rem 2rem;padding-block:1.75rem;border-bottom:1px solid var(--line)}.rules .muted{max-width:52ch}@media(min-width:48rem){.rules>li{grid-template-columns:4rem minmax(0,1fr) minmax(0,1.4fr);align-items:baseline}.rules--plain>li{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}.rules .num{font-family:var(--mono);font-size:var(--t-mono);color:var(--muted)}.split{display:grid;gap:2rem;margin-bottom:clamp(2.5rem,5vw,4.5rem)}@media(min-width:60rem){.split{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:end}.split>.lead{margin-top:0;justify-self:end}}.reveal{opacity:0;transform:translateY(1.25rem);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-in{opacity:1;transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}.tool{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;padding-block:clamp(2.5rem,6vw,5rem) var(--section)}.tool__head .eyebrow{margin-bottom:1rem}.tool__head app-crumbs{margin-bottom:.75rem}.tool__head p{margin-top:.75rem}.tool__stage{position:sticky;top:0;z-index:5;margin-inline:calc(var(--gutter) * -1);padding:.75rem var(--gutter);background:var(--bg);border-bottom:1px solid var(--line)}.tool__stage>:first-child{max-width:26rem;margin-inline:auto}.tool__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.75rem}.tool__bar p{font-size:var(--t-small);text-align:right}.tool__options{display:grid;gap:2rem}.tool__group{display:grid;gap:1.25rem}.tool__title{padding-top:2rem;border-top:1px solid var(--line)}.range{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;font-size:var(--t-small)}.range label{color:var(--muted)}.range output{color:var(--bright)}.range input{grid-column:1 / -1;width:100%;height:2.75rem;margin:0;background:none;cursor:pointer;-webkit-appearance:none;appearance:none}.range input::-webkit-slider-runnable-track{height:2px;background:var(--line-strong)}.range input::-moz-range-track{height:2px;background:var(--line-strong)}.range input::-webkit-slider-thumb{-webkit-appearance:none;width:1.5rem;height:1.5rem;margin-top:calc(-.75rem + 1px);border:0;border-radius:50%;background:var(--bright)}.range input::-moz-range-thumb{width:1.5rem;height:1.5rem;border:0;border-radius:50%;background:var(--bright)}.parts{width:100%;margin-top:1rem;border-collapse:collapse;font-size:var(--t-small)}.parts th,.parts td{padding:.625rem 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}.parts thead th{color:var(--muted)}.parts th:last-child,.parts td:last-child{text-align:right;white-space:nowrap}.parts .mono{color:var(--muted);padding-right:1rem}.parts .parts__qty{padding-inline:1rem;text-align:right;white-space:nowrap}.parts__total th,.parts__total td{border-bottom:0;font-size:var(--t-body);font-weight:600}.parts__note{margin-top:.5rem;font-size:var(--t-small)}.tool__actions{display:flex;flex-wrap:wrap;gap:.75rem}.tool__actions .btn{flex:1 1 auto}@media(min-width:60rem){.tool{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:"stage head" "stage options";grid-template-rows:auto 1fr;gap:2.5rem 4rem}.tool__head{grid-area:head}.tool__stage{grid-area:stage;align-self:start;top:5.5rem;margin:0;padding:0;border:0}.tool__stage>:first-child{max-width:none}.tool__bar{margin-top:1.25rem}.tool__options{grid-area:options}}.bench{padding-top:clamp(1.25rem,3vw,2.25rem)}.bench__head{display:grid;gap:.75rem;margin-bottom:1.25rem}.bench__title .eyebrow{margin-bottom:.5rem}.bench__title>p{margin-top:.5rem;font-size:var(--t-small)}.bench__stage{position:sticky;top:0;z-index:5;height:min(48svh,30rem);background:var(--stage)}.bench__stage>:first-child{border-radius:0}.bench__views{position:absolute;top:.75rem;left:.75rem;padding:.25rem;border-radius:calc(var(--radius) + .25rem);background:#0a0b0de0}.bench .bench__views label{min-height:2.25rem;padding-inline:.875rem;border-color:transparent}.bench__hint{position:absolute;bottom:.875rem;left:1rem;max-width:calc(100% - 5rem);color:#4b5159;font-size:var(--t-small);pointer-events:none}.bench__panel{display:grid}.bench__options{display:grid;gap:2rem;padding:1.75rem var(--gutter) 2rem}.bench__summary{position:sticky;bottom:0;z-index:4;display:grid;gap:.75rem;padding:.875rem var(--gutter) calc(.875rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#0a0b0df0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bench__price{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:var(--t-small)}.bench__price strong{color:var(--bright);font-size:1.375rem;font-weight:600;white-space:nowrap}@media(max-width:59.99rem){.bench__summary{grid-template-columns:auto 1fr;align-items:center}.bench__price{display:grid;gap:0}.bench__summary .btn--ghost{display:none}}@media(min-width:60rem){.bench{display:flex;flex-direction:column;height:calc(100svh - 4.25rem);min-height:40rem;max-height:66rem;padding-block:1rem 1.25rem}.bench__head{gap:.5rem;margin-bottom:1rem}.bench__title{display:flex;align-items:baseline;justify-content:space-between;gap:2rem}.bench__title .eyebrow{display:none}.bench__title h1{font-size:2rem}.bench__title>p{margin-top:0}.bench__body{display:grid;flex:1;grid-template-columns:minmax(0,1fr) clamp(21rem,28vw,26rem);min-height:0;margin-inline:var(--gutter);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.bench__stage{position:relative;height:auto}.bench__hint{bottom:1rem;left:1.25rem}.bench__panel{display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--line);background:var(--bg)}.bench__options{flex:1;min-height:0;overflow-y:auto;padding:1.5rem;overscroll-behavior:contain}.bench__summary{position:static;padding:1.125rem 1.5rem 1.25rem;background:var(--surface)}}.how{display:grid;gap:2rem}.how__text{display:grid;gap:1rem;justify-items:start}.how__text p{max-width:60ch}.how__text p+.arrow-link{margin-top:.5rem}@media(min-width:60rem){.how{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:5rem}}
