@font-face{font-family:geologica;font-style:normal;font-weight:200 500;font-display:swap;src:url(/fonts/geologica-latin.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}:root{--vt-paper:#0A0F1C;--vt-paper-2:#111827;--vt-paper-3:#141B2E;--vt-ink:#E8F1FF;--vt-ink-2:#B8C5E0;--vt-muted:#8C9AB5;--vt-rule:#1F2A40;--vt-rule-2:#2C3A56;--vt-accent:#00A8E8;--vt-accent-hi:#33BDF0;--vt-accent-ink:#04121C;--vt-font:"Geologica", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, sans-serif;--vt-text-display:clamp(2.5rem, 4vw + 0.75rem, 4.5rem);--vt-text-section:clamp(1.75rem, 1.6vw + 1rem, 2.75rem);--vt-text-title:clamp(1.125rem, 0.5vw + 0.95rem, 1.375rem);--vt-text-lead:clamp(1.0625rem, 0.35vw + 0.95rem, 1.3125rem);--vt-container:1360px;--vt-gutter:64px;--vt-gap:32px;--vt-section:112px;--vt-radius:4px;--vt-tick:10px;--vt-ease:cubic-bezier(0.16, 1, 0.3, 1)}@media(max-width:60rem){:root{--vt-gutter:24px;--vt-section:96px}}@media(max-width:40rem){:root{--vt-gutter:16px;--vt-section:72px;--vt-gap:16px}}html,body{overflow-x:clip}.vt-body{background:var(--vt-paper);color:var(--vt-ink);font-family:var(--vt-font);-webkit-font-smoothing:antialiased}.vt{background:var(--vt-paper);color:var(--vt-ink);font-family:var(--vt-font);font-weight:300;font-variation-settings:"SHRP" 0;-webkit-font-smoothing:antialiased}.vt-wrap{width:100%;max-width:var(--vt-container);margin-inline:auto;padding-inline:var(--vt-gutter)}.vt-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--vt-gap)}.vt-section{padding-block:var(--vt-section)0}.vt-section:last-of-type{padding-bottom:var(--vt-section)}.vt h1,.vt h2,.vt h3{font-family:var(--vt-font);font-weight:300;font-variation-settings:"SHRP" 100;letter-spacing:-.02em;line-height:1.08;margin:0;overflow-wrap:break-word;min-width:0;text-wrap:balance;color:var(--vt-ink)}.vt h1{font-size:var(--vt-text-display)}:lang(zh) .vt h1,:lang(zh) .vt h2{word-break:keep-all;overflow-wrap:anywhere}.vt h1,.vt h2{hyphens:manual}.vt h2{font-size:var(--vt-text-section)}.vt h3{font-size:var(--vt-text-title);font-weight:400;letter-spacing:0;line-height:1.3}.vt p{text-wrap:pretty}.vt .num{font-variant-numeric:tabular-nums;font-weight:400}.vt-ticks{position:relative}.vt-ticks::before{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid var(--vt-rule-2);-webkit-mask:conic-gradient(at var(--vt-tick) var(--vt-tick),transparent 75%,#000 0)0 0/calc(100% - var(--vt-tick))calc(100% - var(--vt-tick));mask:conic-gradient(at var(--vt-tick) var(--vt-tick),transparent 75%,#000 0)0 0/calc(100% - var(--vt-tick))calc(100% - var(--vt-tick))}.vt-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 28px;border-radius:999px;font-family:var(--vt-font);font-size:1rem;font-weight:400;white-space:nowrap;text-decoration:none;transition:background-color 220ms var(--vt-ease),color 220ms var(--vt-ease),box-shadow 220ms var(--vt-ease)}.vt-btn--primary{background:var(--vt-accent);color:var(--vt-accent-ink)}.vt-btn--primary:hover{background:var(--vt-accent-hi)}.vt-btn--primary:active{background:var(--vt-accent);box-shadow:inset 0 0 0 2px var(--vt-accent-ink)}.vt-btn--line{background:0 0;color:var(--vt-ink);box-shadow:inset 0 0 0 1px var(--vt-rule-2)}.vt-btn--line:hover{box-shadow:inset 0 0 0 1px var(--vt-ink-2)}.vt-btn--line:active{background:var(--vt-paper-2)}.vt a:focus-visible,.vt button:focus-visible{outline:2px solid var(--vt-accent);outline-offset:3px}.vt-hero{padding-block:96px 0}.vt-hero__head{grid-column:1/span 5;align-self:center}.vt-hero__lead{margin-top:24px;font-size:var(--vt-text-lead);line-height:1.5;color:var(--vt-ink-2);max-width:30em}.vt-hero__actions{margin-top:40px;display:flex;flex-wrap:wrap;gap:12px}.vt-hero__render{grid-column:6/span 7;aspect-ratio:16/10}.vt-hero__render img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:32px}.vt-figures{margin-top:72px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--vt-gap)}.vt-figure{padding:24px 24px 28px}.vt-figure__label{font-size:.875rem;font-weight:400;color:var(--vt-muted)}.vt-figure__value{margin-top:12px;font-size:clamp(1.125rem,.6vw + .95rem,1.5rem);font-weight:300;line-height:1.35;color:var(--vt-ink);font-variant-numeric:tabular-nums}.vt-video__head{grid-column:1/span 4}.vt-video__body{grid-column:5/span 8}.vt-doc{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--vt-gap);color:var(--vt-ink-2);font-size:1.0625rem;line-height:1.75}.vt-doc>*{grid-column:5/span 8;margin:0 0 20px}.vt-doc>h2{grid-column:1/span 4;margin:0;word-break:keep-all;padding-right:16px;font-size:clamp(1.5rem,.9vw + 1.1rem,2rem);font-weight:300;font-variation-settings:"SHRP" 100;letter-spacing:-.01em;line-height:1.2;color:var(--vt-ink)}.vt-doc>h2,.vt-doc>h2+*{border-top:1px solid var(--vt-rule-2);padding-top:28px}.vt-doc>h2~h2,.vt-doc>h2~h2+*{margin-top:64px}.vt-doc>h2+*{margin-top:0}.vt-doc>h3{margin:40px 0 16px;font-size:1.0625rem;font-weight:400;color:var(--vt-ink)}.vt-doc>p{max-width:none}.vt-doc strong{color:var(--vt-ink);font-weight:500}.vt-doc a{color:var(--vt-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.vt-doc a:hover{color:var(--vt-accent-hi)}.vt-doc ul{padding:0;list-style:none}.vt-doc>ul:not(h2+ul){border-top:1px solid var(--vt-rule)}.vt-doc ul>li{padding:16px 0;border-bottom:1px solid var(--vt-rule)}.vt-doc table{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.5}.vt-doc thead th{padding:0 16px 12px 0;text-align:left;font-weight:400;font-size:.875rem;color:var(--vt-muted);border-bottom:1px solid var(--vt-rule-2);vertical-align:bottom}.vt-doc tbody td{padding:16px 16px 16px 0;border-bottom:1px solid var(--vt-rule);color:var(--vt-ink);font-variant-numeric:tabular-nums;vertical-align:top}.vt-doc tbody td:first-child{color:var(--vt-ink-2)}.vt-doc table:has(thead th:nth-child(2):last-child) th:first-child,.vt-doc table:has(thead th:nth-child(2):last-child) td:first-child{width:38%}.vt-doc .vt-scroll{overflow-x:auto}@media(max-width:64rem){.vt-hero__head,.vt-hero__render,.vt-video__head,.vt-video__body{grid-column:1/-1}.vt-hero__render{margin-top:48px}.vt-video__body{margin-top:24px}.vt-doc>*,.vt-doc>h2{grid-column:1/-1}.vt-doc>h2~h2{margin-top:56px}.vt-doc>h2+*,.vt-doc>h2~h2+*{margin-top:0;border-top:0;padding-top:16px}.vt-video__body{border-top:0;padding-top:0}}@media(max-width:40rem){.vt-doc>h2,.vt-ledger-h{font-size:1.375rem !important}.vt-hero{padding-top:56px}.vt-figures{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:48px}.vt-hero__actions .vt-btn{flex:auto}}.vt-ledger-h{word-break:keep-all;font-size:clamp(1.5rem,.9vw + 1.1rem,2rem) !important;line-height:1.2 !important;border-top:1px solid var(--vt-rule-2);padding-top:28px}.vt-video__body{border-top:1px solid var(--vt-rule-2);padding-top:28px}.vt-video__body button[data-video-play]{border-radius:var(--vt-radius)var(--vt-radius)0 0}@media(max-width:40rem){.vt-doc table,.vt-prose table{display:table;width:100%;white-space:normal;font-size:.875rem}.vt-doc table:has(th:nth-child(4)),.vt-prose table:has(th:nth-child(4)){font-size:.8125rem}.vt-doc th,.vt-doc td{padding-right:10px}}.vt-figure-scroll{overflow-x:auto;margin-block:32px}.vt-figure-scroll>svg{min-width:640px;width:100%;height:auto}.vt-page-hero{padding-block:88px 0}.vt-page-hero__head{grid-column:1/span 8}.vt-page-hero h1{font-size:var(--vt-text-display-s,clamp(2.25rem,3vw + .75rem,3.75rem))}.vt-page-hero__lead{margin-top:20px;font-size:var(--vt-text-lead);line-height:1.55;color:var(--vt-ink-2);max-width:36em}.vt-page-hero__actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}.vt-head{margin-bottom:40px}.vt-head h2{font-size:var(--vt-text-section)}.vt-head p{margin-top:16px;max-width:40em;color:var(--vt-ink-2);font-size:var(--vt-text-lead);line-height:1.55}.vt-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--vt-gap)}.vt-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}.vt-card{display:flex;flex-direction:column;background:var(--vt-paper-2);border-radius:var(--vt-radius);overflow:hidden;color:var(--vt-ink);text-decoration:none;transition:background-color 220ms var(--vt-ease)}a.vt-card:hover{background:var(--vt-paper-3)}a.vt-card:active{background:var(--vt-paper-2)}.vt-card__media{aspect-ratio:16/10;background:var(--vt-paper-3);position:relative;overflow:hidden}.vt-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vt-card__body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:10px;flex:1}.vt-card__title,.vt .vt-card__title{font-size:var(--vt-text-title);font-weight:400;letter-spacing:0;line-height:1.35;color:var(--vt-ink)}.vt-card__text{font-size:.9375rem;line-height:1.65;color:var(--vt-ink-2)}.vt-card__meta{margin-top:auto;padding-top:12px;font-size:.875rem;color:var(--vt-muted)}.vt-rows{border-top:1px solid var(--vt-rule-2)}.vt-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--vt-gap);align-items:baseline;padding:24px 0;border-bottom:1px solid var(--vt-rule);color:var(--vt-ink);text-decoration:none;transition:background-color 220ms var(--vt-ease)}a.vt-row:hover{background:var(--vt-paper-2)}a.vt-row:active{background:var(--vt-paper-3)}.vt-row__title{grid-column:1/span 4}.vt-row__title,.vt .vt-row__title{font-size:var(--vt-text-title);font-weight:400;letter-spacing:0;line-height:1.35}.vt-row__text{grid-column:5/span 5;color:var(--vt-ink-2);font-size:.9375rem;line-height:1.65}.vt-row__meta{grid-column:10/span 3;justify-self:end;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px;color:var(--vt-muted);font-size:.875rem}.vt-tag{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;font-size:.8125rem;font-weight:400;color:var(--vt-ink-2);box-shadow:inset 0 0 0 1px var(--vt-rule-2);white-space:nowrap}.vt-tag--on{color:var(--vt-accent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--vt-accent) 55%,transparent)}.vt-tags{display:flex;flex-wrap:wrap;gap:8px}.vt-link{color:var(--vt-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.vt-link:hover{color:var(--vt-accent-hi)}.vt-prose{color:var(--vt-ink-2);font-size:1.0625rem;line-height:1.8;max-width:46em}.vt-prose>*+*{margin-top:20px}.vt-prose h2{margin-top:56px;font-size:clamp(1.5rem,.9vw + 1.1rem,2rem);color:var(--vt-ink)}.vt-prose h3{margin-top:36px;font-size:1.125rem;font-weight:400;color:var(--vt-ink)}.vt-prose strong{color:var(--vt-ink);font-weight:500}.vt-prose a{color:var(--vt-accent);text-decoration:underline;text-underline-offset:.2em}.vt-prose ul,.vt-prose ol{padding-left:1.25em}.vt-prose li+li{margin-top:8px}.vt-prose table{width:100%;border-collapse:collapse;font-size:.9375rem}.vt-prose th{text-align:left;font-weight:400;color:var(--vt-muted);padding:0 16px 12px 0;border-bottom:1px solid var(--vt-rule-2)}.vt-prose td{padding:16px 16px 16px 0;border-bottom:1px solid var(--vt-rule);color:var(--vt-ink);font-variant-numeric:tabular-nums}.vt-callout{padding-block:96px;background:var(--vt-paper-2)}.vt-callout__text{grid-column:1/span 7}.vt-callout__text h2{font-size:var(--vt-text-section)}.vt-callout__text p{margin-top:16px;color:var(--vt-ink-2);font-size:var(--vt-text-lead);line-height:1.55;max-width:34em}.vt-callout__actions{grid-column:9/span 4;align-self:end;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.vt-callout__more{grid-column:1/-1;margin-top:56px;padding-top:24px;border-top:1px solid var(--vt-rule-2);display:flex;flex-wrap:wrap;gap:12px 32px;font-size:.9375rem}.vt-callout__more span{color:var(--vt-muted)}@media(max-width:64rem){.vt-page-hero__head,.vt-callout__text,.vt-callout__actions{grid-column:1/-1}.vt-callout__actions{justify-content:flex-start;margin-top:32px}.vt-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.vt-row__title,.vt-row__text,.vt-row__meta{grid-column:1/-1;text-align:left;justify-self:start;align-items:flex-start}.vt-row__text,.vt-row__meta{margin-top:8px}}@media(max-width:40rem){.vt-cards,.vt-cards--2{grid-template-columns:minmax(0,1fr)}.vt-page-hero{padding-top:56px}.vt-callout{padding-block:72px}}.vt-g-cases .vt-callout{margin-top:var(--vt-section)}.vt-case-group+.vt-case-group{margin-top:72px}.vt .vt-case-group__head{grid-column:1/span 4;padding:28px 16px 0 0;border-top:1px solid var(--vt-rule-2);word-break:keep-all;font-size:clamp(1.5rem,.9vw + 1.1rem,2rem);line-height:1.2}.vt-case-group__cards{grid-column:5/span 8;padding-top:28px;border-top:1px solid var(--vt-rule-2)}.vt-case-card__initial{display:flex;align-items:center;justify-content:center}.vt-case-card__initial span{font-size:2.5rem;font-weight:300;color:var(--vt-muted)}.vt-case-facts{grid-column:1/-1;margin:48px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--vt-gap);border-top:1px solid var(--vt-rule-2);padding-top:24px}.vt-case-facts dt{font-size:.875rem;font-weight:400;color:var(--vt-muted)}.vt-case-facts dd{margin:8px 0 0;font-size:clamp(1.0625rem,.4vw + .95rem,1.25rem);line-height:1.4;color:var(--vt-ink);font-variant-numeric:tabular-nums}.vt-case-back{grid-column:1/-1;margin-top:32px;font-size:.9375rem}.vt-prose.vt-case{max-width:none}.vt-case>:not(div){max-width:46em}.vt-case>div{margin-block:48px;border-radius:var(--vt-radius);background:var(--vt-paper-2)}.vt-case>div h3{margin:0 0 8px}.vt-case-row__text{grid-column:5/span 8}.vt-collab-seeking{color:var(--vt-ink)}.vt-collab-seeking span{color:var(--vt-muted)}.vt-collab-view{color:var(--vt-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color 220ms var(--vt-ease)}a.vt-card:hover .vt-collab-view{color:var(--vt-accent-hi)}.vt-collab-projects .vt-card__body{padding:28px 28px 32px;gap:14px}.vt-collab-tags{margin-top:28px}.vt-collab-tag--wrap{white-space:normal;min-height:28px;padding-block:4px;line-height:1.45}@media(max-width:64rem){.vt .vt-case-group__head,.vt-case-group__cards{grid-column:1/-1}.vt-case-group__cards{border-top:0;padding-top:24px}.vt-case-group+.vt-case-group{margin-top:56px}.vt-case-facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}.vt-case-row__text{grid-column:1/-1}}@media(max-width:40rem){.vt .vt-case-group__head{font-size:1.375rem}.vt-case>div{margin-block:32px}.vt-collab-projects .vt-card__body{padding:24px 20px 28px}}@media(max-width:40rem){.vt-g-cases .vt-doc table{display:table;white-space:normal}}#main-header.scrolled{background:color-mix(in oklab,var(--vt-paper) 92%,transparent);box-shadow:0 1px 0 var(--vt-rule)}.vt-footer{background:var(--vt-paper);border-top:1px solid var(--vt-rule-2);color:var(--vt-ink-2);font-size:.9375rem}.vt-footer__inner{padding-block:72px 40px}.vt-footer__h{margin:0 0 16px;font-size:.875rem;font-weight:400;color:var(--vt-muted)}.vt-footer a{transition:color 220ms var(--vt-ease)}.vt-footer a:hover{color:var(--vt-accent)}.vt-footer a:focus-visible{outline:2px solid var(--vt-accent);outline-offset:3px}.vt-footer__bar{margin-top:56px;padding-top:24px;border-top:1px solid var(--vt-rule)}@media(max-width:40rem){.vt-footer__inner{padding-block:56px 32px}}.vt-forms .vt-forms-callout{margin-top:var(--vt-section)}.vt-forms .vt-back{display:inline-block;margin-bottom:20px;font-size:.9375rem}.vt-forms .vt-hero-tags{margin-top:24px}.vt-job-row .vt-row__title{transition:color 220ms var(--vt-ease)}.vt-job-row__more{display:inline-block;margin-top:12px;color:var(--vt-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color 220ms var(--vt-ease)}.vt-job-row:hover .vt-job-row__more{color:var(--vt-accent-hi)}.vt-job-row .vt-row__meta{flex-direction:row;flex-wrap:wrap;justify-content:flex-end}.vt-contact__form{grid-column:1/span 7}.vt-contact__aside{grid-column:9/span 4}.vt-contact__h,.vt .vt-contact__h{font-size:clamp(1.375rem,.6vw + 1.1rem,1.75rem);line-height:1.25;margin-bottom:24px}.vt-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.vt-chip{min-height:40px;padding:0 16px;border-radius:999px;background:0 0;color:var(--vt-ink);font:inherit;font-size:.9375rem;font-weight:400;box-shadow:inset 0 0 0 1px var(--vt-rule-2);cursor:pointer;transition:color 220ms var(--vt-ease),background-color 220ms var(--vt-ease),box-shadow 220ms var(--vt-ease)}.vt-chip:hover{box-shadow:inset 0 0 0 1px var(--vt-ink-2)}.vt-chip:active{background:var(--vt-paper-2)}.vt-chip[aria-pressed=true]{color:var(--vt-accent);box-shadow:inset 0 0 0 1px var(--vt-accent)}.vt-context{margin:-8px 0 32px;padding:14px 16px;border-radius:var(--vt-radius);background:var(--vt-paper-2);box-shadow:inset 0 0 0 1px var(--vt-rule-2);color:var(--vt-ink);font-size:.9375rem;line-height:1.6}.vt-context.hidden{display:none}.vt-form{display:flex;flex-direction:column;gap:24px}.vt-field{display:flex;flex-direction:column;gap:8px}.vt-label{font-size:.9375rem;font-weight:400;color:var(--vt-ink-2)}.vt-input{width:100%;min-height:48px;padding:12px 16px;border:0;border-radius:var(--vt-radius);background:var(--vt-paper-2);box-shadow:inset 0 0 0 1px var(--vt-rule-2);color:var(--vt-ink);font:inherit;font-size:1rem;font-weight:300;line-height:1.5;transition:box-shadow 220ms var(--vt-ease)}.vt-input::placeholder{color:var(--vt-muted);opacity:1}.vt-input:hover{box-shadow:inset 0 0 0 1px var(--vt-ink-2)}.vt-input:focus{outline:none}.vt-input:focus-visible{outline:2px solid var(--vt-accent);outline-offset:2px;box-shadow:inset 0 0 0 1px var(--vt-accent)}.vt-textarea{min-height:160px;resize:vertical}.vt-select{appearance:none;padding-right:44px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--vt-ink-2) 50%),linear-gradient(135deg,var(--vt-ink-2) 50%,transparent 50%);background-position:calc(100% - 22px),calc(100% - 17px);background-size:5px 5px;background-repeat:no-repeat}.vt-select option{background:var(--vt-paper-2);color:var(--vt-ink)}.vt-contact__info{border-top:1px solid var(--vt-rule-2)}.vt-contact__info>div{padding:16px 0;border-bottom:1px solid var(--vt-rule)}.vt-contact__info dt{font-size:.875rem;font-weight:400;color:var(--vt-muted)}.vt-contact__info dd{margin:6px 0 0;color:var(--vt-ink);line-height:1.6}.vt-contact__qr{margin-top:32px}.vt-contact__qr>div{background:var(--vt-paper-2) !important;border-radius:var(--vt-radius)}.vt-contact__qr svg{display:none}.vt-contact__qr h3{font-size:1rem}.vt-contact__qr p{color:var(--vt-ink-2)}.vt-contact__links{margin-top:40px}.vt-contact__links h3{margin-bottom:12px}.vt-contact__links ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.vt-faq .vt-row{padding-block:28px}.vt-faq .vt-row__text{grid-column:5/span 8;margin:0;font-size:1rem}.vt-faq__mark{color:var(--vt-muted);font-weight:400}.vt-404__links{grid-column:1/span 6}.vt-404__help{grid-column:8/span 5;align-self:start}.vt-404__h,.vt .vt-404__h{font-size:var(--vt-text-title);font-weight:400;letter-spacing:0;margin-bottom:20px}.vt-404 .vt-row{padding-block:18px}.vt-404__name{grid-column:1/-1;font-size:1.0625rem;font-weight:400;transition:color 220ms var(--vt-ease)}.vt-404 a.vt-row:hover .vt-404__name{color:var(--vt-accent)}.vt-404__help p{margin-bottom:20px;color:var(--vt-ink-2);font-size:var(--vt-text-title);line-height:1.3}.vt-404 .vt-section:last-of-type{padding-bottom:var(--vt-section)}.vt-legal__date{margin-top:16px;font-size:.875rem;color:var(--vt-muted)}.vt-forms .vt-prose h1{font-size:var(--vt-text-section)}.vt-forms .vt-prose>:first-child{margin-top:0}.vt-forms .vt-prose blockquote{margin:0;padding-left:20px;border-left:1px solid var(--vt-rule-2);color:var(--vt-muted)}.vt-forms .vt-prose a:hover{color:var(--vt-accent-hi)}.vt-forms .vt-prose--wide{max-width:none}.vt-forms .vt-prose--wide>:is(p,ul,ol,blockquote,h2,h3,table){max-width:46em}.vt-simple .vt-page-hero{min-height:60vh;padding-bottom:var(--vt-section)}.vt-simple .vt-prose h2{font-size:var(--vt-text-section)}@media(max-width:64rem){.vt-contact__form,.vt-contact__aside,.vt-404__links,.vt-404__help{grid-column:1/-1}.vt-contact__aside{margin-top:64px}.vt-404__help{padding-top:48px}.vt-faq .vt-row__text{grid-column:1/-1;margin-top:8px}.vt-job-row .vt-row__meta{justify-content:flex-start}}.vt-forms .vt-prose ul{list-style:disc}.vt-forms .vt-prose ol{list-style:decimal}.vt-forms .vt-prose li::marker{color:var(--vt-muted)}.vt-home-hero__head{grid-column:1/span 7;padding-block:48px}#hero h1{font-size:clamp(2.25rem,4.2vw + .5rem,4.75rem);line-height:1.04;max-width:none}.vt-home-hero__sub{margin-top:28px;font-size:clamp(1.125rem,.6vw + 1rem,1.5rem);font-weight:400;color:var(--vt-ink)}.vt-home-hero__lead{margin-top:12px;font-size:var(--vt-text-lead);line-height:1.55;color:var(--vt-ink-2);max-width:32em}.vt-home-sample{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border-radius:999px;font-size:.8125rem;color:var(--vt-ink-2);background:color-mix(in oklab,var(--vt-paper) 70%,transparent);box-shadow:inset 0 0 0 1px var(--vt-rule-2);transition:color 220ms var(--vt-ease)}.vt-home-sample:hover{color:var(--vt-ink)}.vt-home-flag__view{grid-column:1/span 7}.vt-home-flag__frame{padding:12px}.vt-home-flag__text{grid-column:9/span 4;align-self:center}.vt-home-flag__text h2{font-size:var(--vt-text-section)}.vt-home-flag__lead{margin-top:16px;font-size:var(--vt-text-lead);line-height:1.5;color:var(--vt-ink)}.vt-home-flag__note{margin-top:16px;color:var(--vt-ink-2);line-height:1.7}.vt-home-caption{margin-top:12px;font-size:.875rem;color:var(--vt-muted)}.vt-home-facts{margin-top:32px;border-top:1px solid var(--vt-rule-2)}.vt-home-facts>div{display:grid;grid-template-columns:7em minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--vt-rule)}.vt-home-facts dt{color:var(--vt-muted);font-size:.875rem;font-weight:400}.vt-home-facts dd{color:var(--vt-ink);font-variant-numeric:tabular-nums}.vt-head--split{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.vt-home-product__media{aspect-ratio:16/9}.vt-home-product__media img{object-fit:contain;padding:24px}.vt .vt-home-app__title{font-size:clamp(1.375rem,1vw + 1rem,2rem);font-weight:300}.vt-section-gap-top{margin-top:var(--vt-section)}@media(max-width:64rem){.vt-home-hero__head,.vt-home-flag__view,.vt-home-flag__text{grid-column:1/-1}.vt-home-flag__text{margin-top:40px}}#hero h1 span{display:block}.vt-home-count{font-size:.8125rem;color:var(--vt-muted);font-variant-numeric:tabular-nums}.vt-pg .vt-callout{margin-top:var(--vt-section)}.vt-pg-lead-cards{margin-top:64px}.vt-pg-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}.vt-pg-list{margin:0;padding:0;list-style:none}.vt-pg-list li+li{margin-top:6px}.vt-pg-paras>p+p{margin-top:20px}.vt-pg-place h3{margin-bottom:12px}.vt-pg-place p+p{margin-top:8px}.vt-pg-place__addr{color:var(--vt-muted);font-size:.9375rem}.vt-pg .vt-doc>blockquote{padding-left:20px;border-left:1px solid var(--vt-rule-2);color:var(--vt-muted);font-size:.9375rem;line-height:1.7}.vt-pg .vt-doc>svg{display:block;width:100%;height:auto;margin-bottom:28px}.vt-pg .vt-doc>div:has(>svg){padding:24px;background:var(--vt-paper-2);border-radius:var(--vt-radius);margin-bottom:28px}.vt-pg .vt-doc>div>svg{display:block;width:100%;height:auto}.vt-pg .vt-doc>pre{padding:20px 24px;background:var(--vt-paper-2);border-radius:var(--vt-radius);overflow-x:auto;font-size:.875rem;line-height:1.6;color:var(--vt-ink-2)}.vt-pg .vt-doc code{font-size:.875em}.vt-pg .vt-doc a.btn-primary,.vt-pg-apps .vt-doc>a{display:inline-flex;align-items:center;justify-content:center;justify-self:start;width:auto;min-height:48px;margin:8px 0 0;padding:0 28px;border-radius:999px;background:0 0;color:var(--vt-ink);box-shadow:inset 0 0 0 1px var(--vt-rule-2);font-size:1rem;font-weight:400;text-decoration:none;transition:box-shadow 220ms var(--vt-ease),background-color 220ms var(--vt-ease)}.vt-pg .vt-doc a.btn-primary:hover,.vt-pg-apps .vt-doc>a:hover{color:var(--vt-ink);box-shadow:inset 0 0 0 1px var(--vt-ink-2)}.vt-pg .vt-doc a.btn-primary:active,.vt-pg-apps .vt-doc>a:active{background:var(--vt-paper-2)}.vt-pg-apps .vt-doc>div.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--vt-gap);margin:8px 0 48px}.vt-pg-apps .vt-doc>div.grid>div:has(>h3){display:flex;flex-direction:column;padding:24px 24px 28px;background:var(--vt-paper-2);border-radius:var(--vt-radius);transition:none}.vt-pg-apps .vt-doc>div.grid>div:has(>h3):hover{background:var(--vt-paper-2)}.vt-pg-apps .vt-doc>div.grid>div>div:first-child:has(>svg){display:none}.vt-pg-apps .vt-doc>div.grid h3{margin:0 0 8px}.vt-pg-apps .vt-doc>div.grid h3+p{margin:0 0 16px;color:var(--vt-ink-2);font-size:.9375rem;line-height:1.6}.vt-pg-apps .vt-doc>div.grid ul{margin:0;border-top:1px solid var(--vt-rule)}.vt-pg-apps .vt-doc>div.grid ul>li{margin:0;padding:10px 0;font-size:.9375rem;line-height:1.5}.vt-pg-apps .vt-doc>div.grid>div>a{margin-top:auto;padding-top:20px;font-size:.9375rem}.vt-pg-apps .vt-doc>div.grid:has(>div.text-center){grid-template-columns:repeat(2,minmax(0,1fr))}.vt-pg-apps .vt-doc>div.grid>div.text-center{text-align:left;padding-top:20px;border-top:1px solid var(--vt-rule-2)}.vt-pg-apps .vt-doc>div.grid>div.text-center>div{margin:0 0 8px;color:var(--vt-ink);font-size:clamp(1.5rem,1vw + 1.1rem,2rem);font-weight:300;line-height:1.2;font-variant-numeric:tabular-nums}.vt-pg-apps .vt-doc>div.grid>div.text-center>p{color:var(--vt-muted);font-size:.875rem;line-height:1.5}@media(max-width:64rem){.vt-pg-apps .vt-doc>div.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:40rem){.vt-pg-apps .vt-doc>div.grid,.vt-pg-apps .vt-doc>div.grid:has(>div.text-center){grid-template-columns:minmax(0,1fr)}.vt-pg .vt-doc>div:has(>svg){padding:12px}.vt-pg-lead-cards{margin-top:40px}}.vt-section--first{padding-top:64px}.vt-prod-card__media{aspect-ratio:16/10}.vt-prod-card__media img{object-fit:contain;padding:24px}.vt-prod-card__best{font-size:.875rem;color:var(--vt-ink);line-height:1.6}.vt-prod-card__best span{color:var(--vt-muted)}.vt-prod-card__facts{margin-top:8px;border-top:1px solid var(--vt-rule)}.vt-prod-card__facts>div{display:grid;grid-template-columns:6.5em minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--vt-rule);font-size:.875rem}.vt-prod-card__facts dt{color:var(--vt-muted);font-weight:400}.vt-prod-card__facts dd{color:var(--vt-ink);font-variant-numeric:tabular-nums}.vt-traits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--vt-gap)}.vt-traits>div{padding:28px 24px}.vt-traits dt{font-size:var(--vt-text-title);font-weight:400;color:var(--vt-ink)}.vt-traits dd{margin-top:8px;color:var(--vt-ink-2)}@media(max-width:40rem){.vt-traits{grid-template-columns:minmax(0,1fr)}}.vt-sol .vt-callout{margin-top:var(--vt-section)}.vt-sol .vt-sol-row{padding-block:28px}.vt-sol .vt-sol-row .vt-row__title{font-size:var(--vt-text-title);font-weight:400;letter-spacing:0;line-height:1.35}.vt-sol .vt-sol-row .vt-tag{white-space:normal;padding-block:4px;line-height:1.4}.vt-sol-row__more{display:inline-block;margin-top:12px;color:var(--vt-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color 220ms var(--vt-ease)}.vt-sol .vt-sol-row:hover .vt-sol-row__more{color:var(--vt-accent-hi)}.vt-sol-hero__tags{margin-top:28px}.vt-sol .vt-sol-hero__tags .vt-tag{white-space:normal;padding-block:4px;line-height:1.4}.vt-sol-hero__back{margin-top:28px;font-size:.9375rem}.vt-sol .vt-doc>blockquote{padding-left:20px;border-left:1px solid var(--vt-rule-2);color:var(--vt-muted);font-size:.9375rem;line-height:1.7}.vt-sol .vt-doc>svg{display:block;width:100%;height:auto;margin-bottom:28px}