@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.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}:root{--accent:#0074a2;--accent-dark:#005678;--accent-bright:#00a3e0;--accent-tint:#e8f6fc;--accent-tint-line:#bfe6f7;--ink:#1a1c20;--body:#4a4a4c;--muted:#6b7078;--surface:#fff;--surface-alt:#f4f6f8;--surface-deep:#1a1c20;--line:#e2e6ea;--line-strong:#cfd6dd;--font-sans:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--r-pill:999px;--r-card:16px;--r-sm:10px;--section-y:96px;--container:1240px;--gutter:24px;--nav-h:72px;--shadow-card:0 1px 2px #1a1c200d;--shadow-lift:0 12px 28px -14px #1a1c2038}@media (width<=860px){:root{--section-y:64px;--gutter:20px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{font-family:var(--font-sans);color:var(--body);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:1rem;line-height:1.65;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,figure{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent-tint);color:var(--ink)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);position:relative}.section--tight{padding-block:calc(var(--section-y) * .66)}.section--alt{background:var(--surface-alt)}.section+.section--alt,.section--alt+.section{border-top:1px solid var(--line)}.skip-link{z-index:200;background:var(--accent);color:#fff;border-radius:0 0 var(--r-sm) 0;padding:12px 20px;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.eyebrow{font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:.8125rem;font-weight:500;display:block}.h-display{letter-spacing:-.02em;color:var(--ink);font-size:clamp(2.25rem,4.4vw,3.5rem);font-weight:600;line-height:1.08}.h-section{letter-spacing:-.01em;color:var(--ink);font-size:clamp(1.6875rem,3vw,2.1875rem);font-weight:600;line-height:1.2}.h-card{color:var(--ink);font-size:1.25rem;font-weight:600;line-height:1.4}.h-sub{color:var(--ink);font-size:1.0625rem;font-weight:600;line-height:1.45}.lede{color:var(--body);font-size:clamp(1.0625rem,1.4vw,1.1875rem);line-height:1.6}.measure{max-width:62ch}.measure-sm{max-width:46ch}.muted{color:var(--muted)}.btn{border-radius:var(--r-pill);white-space:nowrap;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:12px 32px;font-size:1rem;font-weight:500;line-height:1.2;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:var(--accent-dark)}.btn--secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong)}.btn--secondary:hover{border-color:var(--accent);color:var(--accent)}.btn--sm{min-height:44px;padding:10px 22px;font-size:.9375rem}.btn[disabled],.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed}.btn-row{flex-wrap:wrap;gap:14px;display:flex}.link-arrow{color:var(--accent);align-items:center;gap:8px;font-weight:500;text-decoration:none;display:inline-flex}.link-arrow:after{content:"→"}.link-arrow:hover{color:var(--accent-dark);text-decoration:underline}.site-header{z-index:100;height:var(--nav-h);background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.nav{height:var(--nav-h);align-items:center;gap:40px;display:flex}.brand{letter-spacing:-.035em;color:var(--ink);flex-shrink:0;align-items:center;font-size:1.5rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.brand em{color:var(--accent-bright);font-style:normal}.nav-links{align-items:center;gap:30px;margin-right:auto;display:flex}.nav-links a{color:var(--body);padding-block:6px;font-size:1rem;text-decoration:none;position:relative}.nav-links a:hover{color:var(--ink)}.nav-links a[aria-current=page]{color:var(--ink);font-weight:500}.nav-links a[aria-current=page]:after{content:"";background:var(--accent-bright);height:2px;position:absolute;bottom:-6px;left:0;right:0}.nav-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.nav-toggle{border-radius:var(--r-sm);width:44px;height:44px;color:var(--ink);justify-content:center;align-items:center;margin-left:auto;display:none}.nav-toggle span{background:currentColor;width:20px;height:2px;position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";background:currentColor;width:20px;height:2px;transition:transform .18s;position:absolute;left:0}.nav-toggle span:before{top:-6px}.nav-toggle span:after{top:6px}.nav-toggle[aria-expanded=true] span{background:0 0}.nav-toggle[aria-expanded=true] span:before{transform:translateY(6px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:after{transform:translateY(-6px)rotate(-45deg)}@media (width<=900px){.nav-toggle{display:inline-flex}.nav-links,.nav-actions{display:none}.site-header.is-open{height:auto;max-height:100vh;overflow-y:auto}.site-header.is-open .nav{flex-wrap:wrap;row-gap:0;height:auto;padding-bottom:22px}.site-header.is-open .nav-links,.site-header.is-open .nav-actions{flex-direction:column;align-items:stretch;gap:2px;display:flex}.site-header.is-open .nav-links{border-top:1px solid var(--line);order:3;width:100%;margin-top:6px;padding-top:10px}.site-header.is-open .nav-links a{padding:12px 2px;font-size:1.0625rem}.site-header.is-open .nav-links a[aria-current=page]:after{display:none}.site-header.is-open .nav-actions{order:4;width:100%;margin-top:14px}.site-header.is-open .nav-actions .btn{width:100%}}.hero{background:var(--surface);border-bottom:1px solid var(--line);padding-block:clamp(56px,8vw,104px)}.hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(40px,5vw,64px);display:grid}@media (width<=960px){.hero-grid{grid-template-columns:1fr}}.hero h1{margin-bottom:22px}.hero .lede{max-width:54ch;margin-bottom:32px}.hero-note{color:var(--muted);max-width:52ch;margin-top:24px;font-size:.9375rem}.section-head{max-width:760px;margin-bottom:48px}.section-head .h-section{margin-bottom:14px}.section-head--split{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px;max-width:none;display:flex}.section-head--split>div{max-width:700px}.grid{gap:20px;display:grid}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=1000px){.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.grid--2,.grid--3{grid-template-columns:1fr}}.card{border-radius:var(--r-card);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;padding:24px;transition:border-color .15s,box-shadow .15s;display:flex}.card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift)}.card .h-card{margin-bottom:10px}.card p{font-size:.9375rem}.card-icon{background:var(--accent-tint);border:1px solid var(--accent-tint-line);width:44px;height:44px;color:var(--accent);border-radius:11px;flex-shrink:0;place-items:center;margin-bottom:18px;display:grid}.card-icon svg{width:21px;height:21px}.example-list{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:16px;display:grid}.example-list li{color:var(--muted);padding-left:16px;font-size:.9375rem;position:relative}.example-list li:before{content:"";background:var(--accent-bright);width:6px;height:1px;position:absolute;top:.62em;left:0}.compare{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:20px;display:grid}.compare__col{border-radius:var(--r-card);border:1px solid var(--line);background:var(--surface);padding:28px}.compare__col--con{box-shadow:none}.compare__col--pro{border-color:var(--accent-tint-line);box-shadow:var(--shadow-lift)}.compare__head{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;display:flex}.compare__badge{border:1px solid;border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.compare__badge svg{width:20px;height:20px}.compare__badge--con{background:var(--surface-alt);border-color:var(--line-strong);color:var(--muted)}.compare__badge--pro{background:var(--accent-tint);border-color:var(--accent-tint-line);color:var(--accent)}.compare__title{letter-spacing:-.01em;color:var(--ink);font-size:1.0625rem;font-weight:600}.compare__list{gap:14px;display:grid}.compare__list li{align-items:flex-start;gap:10px;font-size:.9375rem;line-height:1.55;display:flex}.compare__mark{flex-shrink:0}.compare__mark svg{width:18px;height:18px;margin-top:2px;display:block}.compare__col--con .compare__list li,.compare__col--con .compare__mark{color:var(--muted)}.compare__col--pro .compare__list li{color:var(--body)}.compare__col--pro .compare__mark{color:var(--accent-bright)}.compare__vs{border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line-strong);width:46px;height:46px;color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-self:center;place-items:center;font-size:.6875rem;font-weight:600;display:grid}@media (width<=860px){.compare{grid-template-columns:1fr;gap:14px}.compare__vs{justify-self:center}}.steps{counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}@media (width<=1000px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.steps{grid-template-columns:1fr}}.step{counter-increment:step;border-top:2px solid var(--line-strong);padding-top:22px;position:relative}.step__icon{background:var(--accent-tint);border:1px solid var(--accent-tint-line);width:48px;height:48px;color:var(--accent);border-radius:13px;place-items:center;margin-bottom:16px;display:grid;position:relative}.step__icon svg{width:23px;height:23px}.step__icon:after{content:"0" counter(step);border-radius:var(--r-pill);background:var(--accent);border:2px solid var(--surface-alt);color:#fff;min-width:23px;height:23px;font-family:var(--font-mono);place-items:center;padding:0 5px;font-size:.625rem;font-weight:600;line-height:1;display:grid;position:absolute;top:-9px;right:-11px}@media (width>=1001px){.step:not(:last-child):after{content:"";border-top:1px dashed var(--line-strong);position:absolute;top:48px;left:62px;right:-20px}}.step h3{margin-bottom:8px}.step p{font-size:.9375rem}.process-note{border-radius:var(--r-card);background:var(--accent-tint);border:1px solid var(--accent-tint-line);color:var(--ink);max-width:76ch;margin-top:36px;padding:20px 24px;font-size:.9375rem}.tags{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.tags li{border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--body);padding:8px 16px;font-size:.9375rem}.faq{max-width:820px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;color:var(--ink);padding:20px 44px 20px 0;font-size:1.0625rem;font-weight:500;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--accent)}.faq summary:after{content:"";border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);width:10px;height:10px;margin-top:-7px;position:absolute;top:50%;right:6px;transform:rotate(45deg)}.faq details[open] summary:after{margin-top:-3px;transform:rotate(-135deg)}.faq details>p{max-width:72ch;padding:0 44px 22px 0;font-size:.9375rem}.cta{background:var(--surface-alt);border-top:1px solid var(--line)}.cta .h-section{margin-bottom:14px}.cta p{max-width:60ch;margin-bottom:30px}.project{border-radius:var(--r-card);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);padding:clamp(26px,3.4vw,40px)}.project+.project{margin-top:24px}.project-head{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:22px}.project-head .h-section{margin-bottom:10px}.badge{border-radius:var(--r-pill);background:var(--accent-tint);border:1px solid var(--accent-tint-line);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;padding:5px 13px;font-size:.75rem;display:inline-block}.project-block+.project-block{margin-top:22px}.project-block h3{font-size:.8125rem;font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;font-weight:500}.project-block p{max-width:72ch}.project-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px;margin-top:22px;padding-top:22px;display:grid}.project-grid .project-block{margin-top:0}.project-grid+.project-block{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}@media (width<=700px){.project-grid{grid-template-columns:1fr}}.inline-list{flex-wrap:wrap;gap:8px;display:flex}.inline-list li{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface-alt);padding:5px 12px;font-size:.875rem}.dash-list{gap:7px;display:grid}.dash-list li{padding-left:16px;font-size:.9375rem;position:relative}.dash-list li:before{content:"";background:var(--accent-bright);width:6px;height:1px;position:absolute;top:.62em;left:0}.updated{color:var(--muted);margin-top:36px;font-size:.875rem}.breadcrumb{font-family:var(--font-mono);color:var(--muted);flex-wrap:wrap;gap:8px;margin-bottom:20px;font-size:.8125rem;display:flex}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--accent)}.page-hero{background:var(--surface-alt);border-bottom:1px solid var(--line);padding-block:clamp(48px,6vw,76px)}.page-hero .h-display{margin-bottom:18px}.page-hero .h-display:last-child{margin-bottom:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}@media (width<=640px){.form-grid{grid-template-columns:1fr}}.field--full{grid-column:1/-1}.field{flex-direction:column;gap:7px;display:flex}.field label{color:var(--ink);font-size:.9375rem;font-weight:500}.field .req{color:var(--accent)}.field input,.field select,.field textarea{font:inherit;width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:13px 14px;font-size:1rem;transition:border-color .15s,box-shadow .15s}.field textarea{resize:vertical;min-height:148px}.field input::placeholder,.field textarea::placeholder{color:#9aa1aa}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0074a229}:is(.field input:user-invalid,.field textarea:user-invalid,.field select:user-invalid){border-color:#c0392b}.field-hint{color:var(--muted);font-size:.875rem}.checkbox{align-items:flex-start;gap:11px;font-size:.9375rem;line-height:1.55;display:flex}.checkbox input{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0;margin:2px 0 0}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-note{color:var(--muted);max-width:66ch;margin-top:16px;font-size:.875rem}.contact-list{gap:24px;margin-top:28px;display:grid}.contact-list li{align-items:flex-start;gap:14px;display:flex}.contact-list .card-icon{width:40px;height:40px;margin-bottom:0}.contact-list h3{color:var(--ink);margin-bottom:3px;font-size:.9375rem;font-weight:600}.contact-list p,.contact-list a{font-size:.9375rem}.prose{max-width:72ch}.prose h2{color:var(--ink);margin:40px 0 12px;font-size:1.375rem;font-weight:600;line-height:1.35}.prose h2:first-child{margin-top:0}.prose p{margin-bottom:14px}.prose ul{gap:7px;margin-bottom:14px;display:grid}.prose ul li{padding-left:16px;position:relative}.prose ul li:before{content:"";background:var(--accent-bright);width:6px;height:1px;position:absolute;top:.68em;left:0}.team{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}@media (width<=1000px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.team{grid-template-columns:1fr}}.team-card{border-radius:var(--r-card);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.team-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift)}.team-photo{aspect-ratio:1;object-fit:cover;background:var(--surface-alt);width:100%;display:block}.team-body{padding:22px 24px 24px}.team-body .h-card{margin-bottom:10px}.team-body p{font-size:.9375rem}.team-link{align-items:center;gap:8px;margin-top:16px;font-size:.9375rem;font-weight:500;display:inline-flex}.team-link svg{flex-shrink:0;width:18px;height:18px}.site-footer{background:var(--surface-deep);color:#b8bdc5;padding-block:56px 28px}.site-footer a{color:#b8bdc5;text-decoration:none}.site-footer a:hover{color:#fff}.footer-grid{grid-template-columns:1.6fr repeat(3,minmax(0,1fr));gap:40px;padding-bottom:40px;display:grid}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}}.footer-col address{font-size:.9375rem;font-style:normal;line-height:1.7}.footer-brand .brand{color:#fff;margin-bottom:14px}.footer-brand p{max-width:38ch;font-size:.9375rem}.footer-col h4{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#fff;margin-bottom:16px;font-size:.75rem;font-weight:500}.footer-col li+li{margin-top:10px}.footer-col a,.footer-col span{font-size:.9375rem}.footer-bottom{border-top:1px solid #ffffff24;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-top:24px;font-size:.8125rem;display:flex}.centered-page{text-align:center;place-items:center;padding-block:clamp(72px,12vw,140px);display:grid}.centered-page .h-display{margin-bottom:18px}.centered-page p{margin-inline:auto;max-width:54ch;margin-bottom:30px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
