@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/hanken-grotesk-latin.woff2) format("woff2");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:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/hanken-grotesk-latin-ext.woff2) format("woff2");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:"Source Serif 4";font-style:italic;font-weight:560;font-display:swap;src:url(/fonts/source-serif-4-italic.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}:root{--paper: #fafbfc;--paper-2: #f3f5f7;--sheet: #fbfcfe;--ink: #161b24;--ink-2: #4b5563;--ink-3: #6b7380;--line: #d2d8e1;--line-strong: #b7c0cc;--steel: #2563a5;--steel-hover: #1d4f85;--steel-ink: #c8ddf2;--steel-wash: #e7eef6;--ok: #0b7d57;--ok-wash: #e6f4ee;--warn: #9c6007;--danger: #c2410c;--ink-band: #141820;--ink-band-2: #1c222c;--ink-band-line: rgba(255, 255, 255, .08);--paper-on-ink: #eceff4;--muted-on-ink: #9aa3b0;--r-ctl: 7px;--r-card: 11px;--r-over: 16px;--r-pill: 999px;--shadow-lift: 0 1px 2px rgb(20 24 32 / 6%), 0 8px 24px rgb(20 24 32 / 6%);--shadow-pop: 0 2px 4px rgb(20 24 32 / 6%), 0 16px 40px rgb(20 24 32 / 10%);--font: "Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--serif: "Source Serif 4", "Iowan Old Style", "Palatino Linotype", Palatino, serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--motion-fast: .12s;--motion-base: .2s;--motion-medium: .28s;--motion-slow: .4s;--motion-slower: .6s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--gutter: clamp(20px, 4vw, 48px);--measure: 1120px;--nav-h: 64px;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;hanging-punctuation:first last}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5;font-weight:450;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{background:#fff}#root{min-height:100svh}img{max-width:100%;display:block}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}button,input,select,textarea{font:inherit}:focus{outline:none}:focus-visible{outline:2px solid var(--steel);outline-offset:3px}.skip{position:absolute;left:12px;top:-80px;z-index:80;background:var(--ink);color:#fff;padding:8px 12px;border-radius:var(--r-ctl)}.skip:focus-visible{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{width:min(var(--measure),calc(100% - 2 * var(--gutter)));margin-inline:auto}.wrap-wide{width:min(1280px,calc(100% - 2 * var(--gutter)));margin-inline:auto}.italic{font-family:var(--serif);font-style:italic;font-weight:560;letter-spacing:-.02em}.mono{font-family:var(--mono);font-weight:500;font-size:.78em;letter-spacing:.01em}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.eyebrow:before{content:"";width:18px;height:1px;background:var(--steel)}h1,h2,h3,.display{font-weight:580;letter-spacing:-.038em;line-height:1.05;text-wrap:balance;margin:0}h1,.display{font-size:clamp(40px,6.4vw,72px)}h2{font-size:clamp(28px,4vw,48px)}h3{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.028em;line-height:1.2}.lede{font-size:clamp(17px,1.6vw,19px);line-height:1.45;color:var(--ink-2);max-width:42rem;text-wrap:pretty}.muted{color:var(--ink-2)}.quiet{color:var(--ink-3)}.tabular{font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r-ctl);border:1px solid transparent;cursor:pointer;text-decoration:none;font-weight:560;letter-spacing:-.015em;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out);touch-action:manipulation}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--steel);color:#fff;box-shadow:0 1px #ffffff2e inset,0 1px 2px #1418202e}.btn-primary:hover{background:var(--steel-hover)}.btn-ink{background:var(--ink);color:#f4f6f9}.btn-ink:hover{background:#0c1016}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn-ghost:hover{background:#1418200a}.btn-ghost-on-ink{background:transparent;color:var(--paper-on-ink);border-color:#ffffff2e}.btn-ghost-on-ink:hover{background:#ffffff0f}.btn-sm{min-height:36px;padding:0 12px;font-size:14px}.nav{position:sticky;top:0;z-index:40;height:var(--nav-h);display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--line)}.nav-inner{width:min(1280px,calc(100% - 2 * var(--gutter)));margin-inline:auto;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:640;letter-spacing:-.03em;font-size:17px}.brand-mark{width:28px;height:28px;flex:none}.nav-links{display:flex;align-items:center;gap:4px;flex:1}.nav-links a{text-decoration:none;padding:8px 10px;border-radius:6px;color:var(--ink-2);font-size:14px;font-weight:520;letter-spacing:-.01em;transition:color var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out)}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--ink);background:#1418200a}.nav-cta{display:flex;align-items:center;gap:8px;margin-left:auto}.nav-toggle{display:none;margin-left:auto;width:44px;height:44px;border:0;background:transparent;border-radius:8px}.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{display:block;width:18px;height:1.5px;background:var(--ink);position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";position:absolute;left:0}.nav-toggle span:before{top:-6px}.nav-toggle span:after{top:6px}@media(max-width:860px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-links,.nav-cta{display:none}.nav.open .nav-links,.nav.open .nav-cta{display:flex}.nav.open{height:auto;flex-wrap:wrap;padding-bottom:16px}.nav.open .nav-inner{flex-wrap:wrap}.nav.open .nav-links{flex-basis:100%;flex-direction:column;align-items:stretch;padding-top:8px}.nav.open .nav-cta{flex-basis:100%;margin:8px 0 0}.nav.open .nav-cta .btn{flex:1}}.hero-stack{padding:48px 0 56px;background:#fff}.hero-copy{padding-bottom:28px;max-width:44rem;margin-inline:auto;text-align:center}.hero-copy h1{margin-top:12px}.hero-copy .lede{margin-top:14px;margin-inline:auto}.hero-copy .eyebrow,.hero-copy .hero-actions{justify-content:center}.hero-stage{position:relative;margin:0;border-radius:var(--r-over);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-lift);background:#fff}.hero-stage img{width:100%;height:auto;display:block}.hero-caption{margin:12px 0 0;text-align:center;color:var(--ink-3);font-size:13px}.hero-band{background:var(--ink-band);color:var(--paper-on-ink);min-height:calc(100svh - var(--nav-h));display:flex;flex-direction:column;position:relative;overflow:hidden}.hero-band:before{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgb(255 255 255 / 4%) 1px,transparent 1px);background-size:calc(100% / 6) 100%;pointer-events:none}.hero-head{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:end;padding:36px var(--gutter) 28px;width:min(1280px,100%);margin-inline:auto}.hero-kicker{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:var(--muted-on-ink);font-family:var(--mono);font-size:12px;letter-spacing:.04em}.hero-kicker .dot{width:7px;height:7px;border-radius:50%;background:#3cc492;box-shadow:0 0 0 4px #3cc49229}.hero-band h1{color:#f5f7fb;max-width:16ch}.hero-band .lede{color:var(--muted-on-ink);margin:16px 0 0}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-aside{justify-self:end;align-self:end;width:min(280px,100%);text-align:left;color:var(--muted-on-ink);font-size:13px;line-height:1.45;padding:16px 16px 14px;border:1px solid var(--ink-band-line);border-radius:10px;background:#ffffff08}.hero-aside strong{display:block;color:#f5f7fb;font-size:15px;font-weight:580;letter-spacing:-.02em;font-family:var(--mono)}.hero-aside span{display:block;margin-top:6px}.stations{position:relative;flex:1;display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--ink-band-line);min-height:340px}.station{position:relative;padding:18px 16px 22px;border-right:1px solid var(--ink-band-line);display:flex;flex-direction:column;gap:12px;background:transparent;color:inherit;text-align:left;cursor:pointer;min-width:0;transition:background-color var(--motion-base) var(--ease-out)}.station:last-child{border-right:0}.station[aria-pressed=true]{background:#ffffff0e}.station[aria-pressed=true]:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--steel)}.station-id{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-on-ink);display:flex;justify-content:space-between;align-items:center}.station[aria-pressed=true] .station-id{color:var(--steel-ink)}.station-body{flex:1;border:1px solid rgb(255 255 255 / 8%);background:var(--ink-band-2);border-radius:8px;padding:12px;min-height:180px;position:relative;overflow:hidden}.station-title{font-size:15px;font-weight:580;letter-spacing:-.02em;color:#f3f5f8;margin:0}.station p{margin:6px 0 0;font-size:12.5px;line-height:1.4;color:var(--muted-on-ink)}.doc-line{height:6px;border-radius:99px;background:#ffffff1a;margin-bottom:7px}.doc-line.w-80{width:80%}.doc-line.w-62{width:62%}.doc-line.w-94{width:94%}.doc-line.w-40{width:40%}.doc-line.accent{background:#6ea8dd8c;width:48%}.caret{display:inline-block;width:7px;height:13px;background:var(--steel-ink);margin-left:3px;vertical-align:text-bottom;animation:blink 1.05s steps(1) infinite}@keyframes blink{50%{opacity:0}}.chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 8px;font-size:11px;font-family:var(--mono);border:1px solid rgb(255 255 255 / 10%);color:var(--muted-on-ink)}.chip.ok{color:#8ee0bc;border-color:#3cc4924d}.chip.warn{color:#e0b25e;border-color:#e0b25e4d}.progress{height:4px;background:#ffffff14;border-radius:99px;overflow:hidden;margin-top:10px}.progress>i{display:block;height:100%;width:100%;background:var(--steel);transform:scaleX(0);transform-origin:left center;transition:transform var(--motion-slower) var(--ease-out)}.station[aria-pressed=true] .progress>i{transform:scaleX(calc(var(--pct, 70) / 100))}.stamp{position:absolute;right:10px;bottom:10px;width:86px;height:86px;border:2.5px solid #d0451f;color:#d0451f;border-radius:8px;display:grid;place-items:center;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;line-height:1.2;transform:rotate(-14deg) scale(.7);opacity:0;pointer-events:none}.stamp b{display:block;font-size:13px;letter-spacing:.16em}.station[data-stamped=true] .stamp{opacity:.92;transform:rotate(-12deg) scale(1);animation:stamp-in .42s var(--ease-emphasized) both}@keyframes stamp-in{0%{opacity:0;transform:rotate(-28deg) scale(1.35)}70%{opacity:1;transform:rotate(-10deg) scale(.96)}to{opacity:.92;transform:rotate(-12deg) scale(1)}}.meter-ring{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--steel) calc(var(--v, 0) * 1%),rgb(255 255 255 / 8%) 0);margin-top:8px}.meter-ring span{width:52px;height:52px;border-radius:50%;background:var(--ink-band-2);display:grid;place-items:center;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}@media(max-width:980px){.hero-head{grid-template-columns:1fr;gap:18px;padding-top:28px}.hero-aside{justify-self:stretch;width:100%}.stations{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(220px,78vw);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;min-height:300px}.station{scroll-snap-align:start;border-right:1px solid var(--ink-band-line)}}.section{padding:112px 0}.section.tight{padding:80px 0}.section.loose{padding:144px 0}.section-head{max-width:38rem;margin-bottom:40px}.section-head p{margin:12px 0 0;color:var(--ink-2)}.proof{border-block:1px solid var(--line);background:#fff}.proof-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:0}.proof-item{padding:28px 24px;border-left:1px solid var(--line)}.proof-item:first-child{border-left:0;padding-left:0}.proof-item .n{font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:-.035em;font-variant-numeric:tabular-nums;line-height:1}.proof-item .l{display:block;margin-top:8px;color:var(--ink-2);font-size:14px}.proof-copy{padding:28px 28px 28px 0;color:var(--ink-2);font-size:15px}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.split.start{align-items:start}.split.reverse{grid-template-columns:1.1fr .9fr}.split.reverse .split-copy{order:2}.split-copy .lede{margin-top:14px}.split-list{list-style:none;padding:0;margin:22px 0 0}.split-list li{display:grid;grid-template-columns:18px 1fr;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:15px}.split-list li:last-child{border-bottom:1px solid var(--line)}.split-list i{color:var(--steel);font-style:normal;font-weight:600}.shot{position:relative;border-radius:var(--r-over);overflow:hidden;background:var(--sheet);box-shadow:var(--shadow-pop);border:1px solid var(--line)}.shot img{width:100%;height:auto}.shot.crop-right{-webkit-mask-image:linear-gradient(to right,#000 86%,transparent);mask-image:linear-gradient(to right,#000 86%,transparent)}.shot.crop-bottom img{display:block}.shot-float{position:absolute;left:18px;bottom:18px;background:var(--sheet);border:1px solid var(--line);border-radius:var(--r-card);padding:12px 14px;box-shadow:var(--shadow-lift);min-width:180px}.shot-float .n{font-size:22px;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.shot-float .l{color:var(--ink-3);font-size:12px;margin-top:2px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-over);overflow:hidden}.step{background:var(--sheet);padding:28px 24px 32px}.step .num{font-family:var(--mono);font-size:12px;color:var(--steel);letter-spacing:.06em}.step h3{margin-top:10px}.step p{margin:10px 0 0;color:var(--ink-2);font-size:15px}.bento{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:auto auto;gap:16px}.tile{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r-card);padding:24px;box-shadow:0 1px #14182008}.tile.span{grid-row:span 2}.tile h3{margin:8px 0}.tile p{margin:0;color:var(--ink-2);font-size:15px}.tile .mono{color:var(--ink-3)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.price{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r-over);padding:28px 24px;display:flex;flex-direction:column;min-height:100%}.price.featured{border-color:var(--steel);box-shadow:var(--shadow-lift);position:relative}.price.featured:before{content:"Most teams start here";position:absolute;top:-11px;left:20px;background:var(--steel);color:#fff;font-size:11px;font-weight:600;letter-spacing:.02em;padding:3px 8px;border-radius:999px}.price .amt{font-size:40px;font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:12px 0 4px}.price .amt small{font-size:15px;font-weight:500;color:var(--ink-3);letter-spacing:-.01em;margin-left:8px}.price ul{list-style:none;padding:0;margin:18px 0 24px}.price li{padding:7px 0;border-top:1px solid var(--line);font-size:14px}.price .btn{margin-top:auto}.cta-band{background:#fff;color:var(--ink);padding:88px 0;border-top:1px solid var(--line)}.cta-band h2{max-width:16ch}.cta-band .lede{color:var(--ink-2);margin:14px 0 24px}.footer{padding:48px 0 36px;border-top:1px solid var(--line);background:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}.footer a{text-decoration:none;color:var(--ink-2)}.footer a:hover{color:var(--ink)}.footer h4{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:-.01em}.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:14px}.footer-base{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;color:var(--ink-3);font-size:13px}.page-hero{padding:56px 0 8px}.page-hero .lede{margin-top:14px}.feature-index{display:grid;gap:0;border-top:1px solid var(--line)}.feature-row{display:grid;grid-template-columns:180px 1fr 220px;gap:28px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}.feature-row .id{font-family:var(--mono);font-size:12px;color:var(--ink-3);padding-top:6px}.feature-row h3{margin-bottom:6px}.feature-row p{margin:0;color:var(--ink-2);max-width:58ch}.feature-row .meta{font-size:13px;color:var(--ink-3);text-align:right}.form{display:grid;gap:14px;max-width:36rem}.field{display:grid;gap:6px}.field label{font-size:13px;font-weight:550}.field input,.field select,.field textarea{min-height:44px;border:1px solid var(--line-strong);border-radius:var(--r-ctl);background:var(--sheet);padding:10px 12px;color:var(--ink);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.field textarea{min-height:120px;resize:vertical}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--steel);box-shadow:0 0 0 3px #2563a533;outline:none}.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}.form-status{padding:12px 14px;border-radius:var(--r-ctl);font-size:14px}.form-status.ok{background:var(--ok-wash);color:var(--ok)}.form-status.err{background:#fde8e4;color:var(--danger)}.legal{max-width:72ch}.legal h1{font-size:clamp(32px,4vw,44px)}.legal h2{font-size:22px;margin:36px 0 10px}.legal h3{font-size:16px;margin:22px 0 8px;letter-spacing:-.02em}.legal p,.legal li{color:var(--ink-2)}.legal ul,.legal ol{padding-left:1.25em;margin:8px 0 16px}.legal li{margin:6px 0}.legal-meta{color:var(--ink-3);font-size:13px;margin:0 0 8px}.dl-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.dl-card{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r-over);padding:24px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit}.dl-card:hover{border-color:var(--line-strong)}.dl-card h3{margin:0}.dl-meta{color:var(--ink-3);font-size:13px;font-family:var(--mono)}.sol-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sol{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r-over);padding:28px}.sol p{color:var(--ink-2);margin:10px 0 0}.compare{width:100%;border-collapse:collapse;font-size:14px}.compare th,.compare td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.compare th{font-weight:560}.compare td:not(:first-child),.compare th:not(:first-child){text-align:center}.log{display:grid;gap:0}.log article{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.log time{font-family:var(--mono);font-size:12px;color:var(--ink-3);padding-top:4px}@media(max-width:860px){.section{padding:80px 0}.section.loose{padding:96px 0}.proof-grid,.split,.split.reverse,.steps,.bento,.price-grid,.footer-grid,.feature-row,.dl-grid,.sol-grid,.log article{grid-template-columns:1fr}.split.reverse .split-copy{order:0}.proof-item,.proof-copy{border-left:0;border-top:1px solid var(--line);padding:22px 0}.feature-row .meta{text-align:left}.footer-base{flex-direction:column}.shot-float{position:static;margin:12px}.compare-wrap{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.caret{animation:none}}
