:root{box-sizing:border-box;color-scheme:light;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0)}html{scroll-padding-top:env(safe-area-inset-top,0)}body{background:var(--c-white);color:#000;font:14px -apple-system,BlinkMacSystemFont,sans-serif;padding:0}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}html{scroll-behavior:smooth}body{background:var(--night);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;margin:0;-webkit-font-smoothing:antialiased}html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 24px)}body{background:var(--pg-page);color:var(--pg-text);font-size:var(--fs-button);line-height:1.5}.p-hero-grid.as{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}.p-hero-grid.as .p-h1{font-size:clamp(40px,4.4vw,62px)}.asfig{margin:0}.ashero{display:block;height:auto;overflow:visible;width:100%}@media (prefers-reduced-motion:no-preference){.ashero .as-en{animation:asIn .7s cubic-bezier(.2,.7,.2,1) .2s both}.ashero .as-l{animation:asFade .5s ease both;stroke-dashoffset:0}.ashero .l1{animation-delay:.7s}.ashero .l2{animation-delay:1.1s}.ashero .l3{animation-delay:1.5s}.ashero .as-ev{animation:asIn .6s cubic-bezier(.2,.7,.2,1) both}.ashero .e1{animation-delay:.85s}.ashero .e2{animation-delay:1.25s}.ashero .e3{animation-delay:1.65s}.ashero .as-pill{animation:asPop .45s cubic-bezier(.3,1.6,.5,1) both;transform-box:fill-box;transform-origin:left center}.ashero .e1 .as-pill{animation-delay:1.35s}.ashero .e2 .as-pill{animation-delay:1.75s}.ashero .e3 .as-pill{animation-delay:2.15s}.ashero .as-chip{animation:asFade .5s ease 2.4s both}.ashero .as-l{animation:asFade .5s ease both,asFlow 1.6s linear infinite}.ashero .l1{animation-delay:.7s,2.6s}.ashero .l2{animation-delay:1.1s,2.6s}.ashero .l3{animation-delay:1.5s,2.6s}}@keyframes asIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes asFade{0%{opacity:0}to{opacity:1}}@keyframes asPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes asFlow{to{stroke-dashoffset:-22}}.why3{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.wc{background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.14);border-radius:var(--radius-card);padding:26px}.wc .ic{color:var(--c-cyan);font-size:30px;margin-bottom:12px}.wc h3{color:var(--c-white);font:600 19px var(--display);margin:0 0 8px}.wc p{color:hsla(0,0%,100%,.8);font-size:var(--fs-body);line-height:1.5;margin:0}.caps5{display:grid;gap:16px;grid-template-columns:repeat(6,1fr)}.c5{display:flex;flex-direction:column;gap:10px;grid-column:span 2;padding:28px;scroll-margin-top:24px}.c5.w3{grid-column:span 3}.c5>.ic{color:var(--pg-link);font-size:34px;margin-bottom:6px}.c5 .tagline{color:var(--pg-link);font:600 var(--fs-body-sm) var(--body)}.c5>p{color:var(--pg-muted);font-size:var(--fs-body);line-height:1.5;margin:0}.c5 .facts{grid-template-columns:84px 1fr;margin-top:auto}.how3{display:grid;gap:16px;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0}.how3 li{display:flex;flex-direction:column;gap:10px;padding:26px;position:relative}.how3 .n{color:var(--pg-stat);font:500 40px/1 var(--display);letter-spacing:-.03em}.how3 p{color:var(--pg-muted);font-size:var(--fs-body);line-height:1.5;margin:0}.how3 .pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.how3 .pill{font-size:9.5px;width:96px}.how3 li:not(:last-child):after{background:var(--pg-page);border-radius:var(--radius-round);color:var(--pg-link);content:"→";display:grid;font-weight:700;height:24px;place-items:center;position:absolute;right:-14px;top:50%;transform:translateY(-50%);width:24px;z-index:1}.comp{align-items:start;display:grid;gap:clamp(32px,5vw,64px);grid-template-columns:.9fr 1.1fr}.comp .btn{margin-top:26px}.badges{display:grid;gap:10px;grid-template-columns:1fr 1fr}.badge2{display:grid;gap:4px 12px;grid-template-columns:28px 1fr;padding:18px 20px}.badge2 .ic{color:var(--pg-link);font-size:26px;grid-row:span 2}.badge2 b{font-weight:600}.badge2 span{color:var(--pg-muted);font-size:14.5px}.dev{align-items:start;display:grid;gap:clamp(32px,5vw,64px);grid-template-columns:.85fr 1.15fr}.dev .p-lede{margin-top:16px}.dev .btn{margin-top:26px}.codebox{background:var(--c-night);border:1px solid hsla(0,0%,100%,.1);border-radius:var(--radius-card);color:#d9d5e6;overflow:hidden}.codebox .bar{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);color:var(--c-muted-dark);display:flex;font:600 12.5px var(--body);justify-content:space-between;padding:12px 18px}.codebox pre{font:500 13.5px/1.7 ui-monospace,SF Mono,Menlo,Consolas,monospace;margin:0;overflow-x:auto;padding:20px 22px}.codebox .k{color:var(--c-blue-300)}.codebox .s{color:var(--c-cyan)}.codebox .c{color:#857e98}@media (max-width:1060px){.comp,.dev,.p-hero-grid.as{grid-template-columns:minmax(0,1fr)}.c5,.c5.w3{grid-column:span 3}.c5:last-child{grid-column:1/-1}.why3{grid-template-columns:1fr}}@media (max-width:820px){.how3{grid-template-columns:1fr}.how3 li:not(:last-child):after{bottom:-14px;content:"↓";right:50%;top:auto;transform:translateX(50%)}}@media (max-width:640px){.c5,.c5.w3,.c5:last-child{grid-column:1/-1}.badges,.c5 .facts{grid-template-columns:1fr}}.c5>.p-more{font-size:var(--fs-body-sm);margin-top:14px}.axfig{margin:0}.axhero{display:block;height:auto;overflow:visible;width:100%}@media (prefers-reduced-motion:no-preference){.axhero .hx-phone,.axhero .hx-rec{animation:axIn .7s cubic-bezier(.2,.7,.2,1) .2s both}.axhero .hx-rec.b{animation-delay:.4s}.axhero .hx-card{animation:axIn .7s cubic-bezier(.2,.7,.2,1) .55s both}.axhero .hx-row{animation:axFade .45s ease both}.axhero .r1{animation-delay:1s}.axhero .r2{animation-delay:1.35s}.axhero .r3{animation-delay:1.7s}.axhero .hx-final{animation:axPop .5s cubic-bezier(.3,1.6,.5,1) 2.1s both;transform-box:fill-box;transform-origin:left center}.axhero .hx-ring{animation:axDash 1.4s linear infinite}.axhero .hx-link{animation:axFade .5s ease .8s both,axDash 1.6s linear 1.4s infinite}}@keyframes axIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes axFade{0%{opacity:0}to{opacity:1}}@keyframes axPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes axDash{to{stroke-dashoffset:-24}}.how4{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0}.how4 li{display:flex;flex-direction:column;gap:8px;padding:24px;position:relative}.how4 .n{color:var(--pg-stat);font:500 var(--fs-stat-sm)/1 var(--display);letter-spacing:-.03em}.how4 p{color:var(--pg-muted);font-size:var(--fs-body);line-height:1.5;margin:0}.how4 li:not(:last-child):after{background:var(--pg-page);border-radius:var(--radius-round);color:var(--pg-link);content:"→";display:grid;font-weight:700;height:24px;place-items:center;position:absolute;right:-14px;top:50%;transform:translateY(-50%);width:24px;z-index:1}.tiles6{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.t6{display:flex;flex-direction:column;gap:8px;padding:26px}.t6 .ic{color:var(--pg-link);font-size:32px;margin-bottom:6px}.t6 p{color:var(--pg-muted);font-size:var(--fs-body);line-height:1.5;margin:0}.rel5{display:grid;gap:16px;grid-template-columns:repeat(5,1fr)}.rel5 .relc.hub{background:var(--pg-tint);border-color:transparent}@media (max-width:1060px){.how4{grid-template-columns:1fr 1fr}.how4 li:nth-child(2):after{display:none}.rel5,.tiles6{grid-template-columns:1fr 1fr}}@media (max-width:640px){.how4,.rel5,.tiles6{grid-template-columns:1fr}.how4 li:after{display:none}}.p-hero-grid.as .p-h1{font-size:var(--fs-h1)}.how4 li.img .shot{background:var(--pg-tint);border-radius:var(--radius-inner);display:grid;margin:-8px -8px 8px;padding:18px 0 16px;place-items:center}.how4 li.img.done{background:var(--pg-tint);border-color:transparent}.how4 li.img.done .shot{background:hsla(0,0%,100%,.55)}.how4 li.img .shot svg{display:block;filter:drop-shadow(0 14px 22px rgba(47,34,71,.18));height:auto;width:118px}.how4 li.img:after{top:110px}@media (max-width:640px){.how4 li.img .shot svg{width:132px}}.t6 h3 .opt{background:var(--pg-tint);border-radius:var(--radius-pill);color:var(--pg-kicker);display:inline-block;font:600 11px var(--body);letter-spacing:.04em;margin-left:6px;padding:2px 8px;text-transform:uppercase;vertical-align:middle}.qa .a a,.t6 p a{color:var(--pg-link);font-weight:600;text-decoration:underline;text-underline-offset:3px}.costs{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.cost{display:flex;flex-direction:column;gap:10px;padding:28px}.cost .amt{color:var(--pg-stat);font:500 clamp(48px,5.4vw,72px)/1 var(--display);letter-spacing:-.04em}.cost .p-h3{font-size:19px}.cost p{color:var(--pg-muted);flex:1;font-size:var(--fs-body);line-height:1.5;margin:0}.cost .src{color:var(--pg-link);font-size:13px;font-weight:600;text-decoration:none}.cost .src:hover{text-decoration:underline;text-underline-offset:3px}.cost-note{background:var(--pg-tint);border-radius:var(--radius-card);color:var(--pg-text);font-size:var(--fs-body);margin:22px 0 0;max-width:none;padding:18px 22px}.cost-note a{color:var(--pg-link);font-weight:600;white-space:nowrap}.p-sec.pt0{padding-top:0}@media (max-width:1060px){.costs{grid-template-columns:1fr}}.wc{display:flex;flex-direction:column}.wex{border-top:1px solid hsla(0,0%,100%,.16);margin-top:18px;padding-top:16px}.wex+.wex{margin-top:14px}.wex b{color:var(--c-cyan);display:block;font:500 clamp(34px,3.4vw,44px)/1 var(--display);letter-spacing:-.035em;margin-bottom:6px}.wex p{color:hsla(0,0%,100%,.85);font-size:14.5px;line-height:1.5;margin:0}.wex a{color:var(--c-blue-300);display:inline-block;font-size:12.5px;font-weight:600;margin-top:8px;text-decoration:none}.wex a:hover{color:var(--c-white);text-decoration:underline;text-underline-offset:3px}.wex.wl .wl-h{color:var(--c-cyan);display:block;font:700 var(--fs-eyebrow) var(--display);letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}.wex.wl ul{display:grid;gap:10px;list-style:none;margin:0;padding:0}.wex.wl li{color:hsla(0,0%,100%,.88);display:grid;font-size:14.5px;gap:10px;grid-template-columns:20px 1fr;line-height:1.45}.wex.wl li .ic{color:var(--c-cyan);font-size:var(--fs-label);margin-top:1px}.p-dark .p-lede a{color:var(--c-cyan);font-weight:600;text-decoration:underline;text-underline-offset:3px}.kyfig{margin:0}.kyhero{display:block;height:auto;overflow:visible;width:100%}@media (prefers-reduced-motion:no-preference){.kyhero .ky-c1,.kyhero .ky-c2{animation:kyIn .7s cubic-bezier(.2,.7,.2,1) both}.kyhero .ky-c2{animation-delay:.35s}.kyhero .ky-row{animation:kyFade .45s ease both}.kyhero .r1{animation-delay:.7s}.kyhero .r2{animation-delay:.95s}.kyhero .r3{animation-delay:1.2s}.kyhero .r4{animation-delay:1.45s}.kyhero .r5{animation-delay:1.7s}.kyhero .ky-chain{animation:kyFade .6s ease 1.1s both}.kyhero .ky-fin{animation:kyFade .6s ease 1.6s both}}@keyframes kyIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes kyFade{0%{opacity:0}to{opacity:1}}.how4 li.img.win .shot svg{max-width:210px;width:100%}.xgrid{display:grid;gap:16px}.xgrid.c2{grid-template-columns:1fr 1fr}.xgrid.c4{grid-template-columns:repeat(4,1fr)}.xc{padding:24px}.xc h3{color:var(--pg-head);font:600 var(--fs-label) var(--display);margin:0 0 6px}.xc p{color:var(--pg-muted);font-size:var(--fs-body);line-height:1.5;margin:0}.conf{margin-top:16px}.conf .cmp td,.conf .cmp th{padding:12px 16px}.use.nolink{cursor:default}.use.nolink:hover{background:var(--pg-card);box-shadow:none;transform:none}.p-head .p-more{display:inline-block;margin-top:12px}@media (max-width:1060px){.xgrid.c4{grid-template-columns:1fr 1fr}}@media (max-width:640px){.xgrid.c2,.xgrid.c4{grid-template-columns:1fr}}.wex .src-t{color:hsla(0,0%,100%,.62);display:inline-block;font-size:12.5px;font-weight:600;margin-top:8px}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) main :focus-visible{outline-color:var(--c-blue)}:root:not([data-theme=dark]) main .p-dark :focus-visible{outline-color:var(--cyan)}}:root[data-theme=light] main :focus-visible{outline-color:var(--c-blue)}:root[data-theme=light] main .p-dark :focus-visible{outline-color:var(--cyan)}.p-hero .p-kick{align-items:center;background:var(--c-pill);border-radius:var(--radius-pill);color:var(--cyan);display:inline-flex;line-height:1.2;margin-bottom:18px;padding:6px 14px}@media (max-width:640px){.p-hero .p-kick{border-radius:var(--radius-card);font-size:var(--fs-eyebrow);letter-spacing:.02em;max-width:100%;padding:5px 11px}}.nl-vh{height:1px;overflow:hidden;position:absolute;width:1px;clip:rect(0 0 0 0);white-space:nowrap}.nl-row{display:flex;flex-wrap:wrap;gap:10px}.nl-row input{border-radius:var(--radius-btn);flex:1 1 220px;font:400 16px var(--body);height:45px;min-width:0;padding:0 16px}.nl-row .btn{flex:none;height:45px}.nl-msg{font-size:14.5px;font-weight:600;margin:10px 0 0}.nl-form.done .nl-fine,.nl-form.done .nl-row,.nl-msg:empty{display:none}.nl-form.done .nl-msg{margin-top:0}.nl-hero{border-top:1px solid hsla(0,0%,100%,.28);margin-top:28px;max-width:34em;padding-top:22px}.nl-hero .nl-lab{color:hsla(0,0%,100%,.92);font-size:var(--fs-body-sm);line-height:1.45;margin:0 0 12px}.nl-hero .nl-lab b{color:var(--c-cyan);display:inline-block;font:700 var(--fs-eyebrow)/1 var(--display);letter-spacing:.06em;margin-right:8px;text-transform:uppercase}.nl-hero input{background:hsla(0,0%,100%,.14);border:1px solid hsla(0,0%,100%,.6);color:var(--c-white)}.nl-hero input::placeholder{color:hsla(0,0%,100%,.78)}.nl-hero input:focus-visible{background:hsla(0,0%,100%,.2);outline:2px solid var(--c-cyan);outline-offset:1px}.nl-hero .nl-msg{color:var(--c-white)}.nl-hero .nl-msg a{color:var(--c-cyan)}.nl-sec{padding:0 0 clamp(48px,6vw,72px)}.nl-band{align-items:center;background:var(--pg-tint);border:1px solid var(--pg-rule);border-radius:var(--radius-card);display:grid;gap:24px clamp(32px,5vw,64px);grid-template-columns:1.05fr .95fr;padding:clamp(28px,4vw,48px)}.nl-band .p-h2{font-size:clamp(28px,3vw,40px)}.nl-sub{color:var(--pg-muted);font-size:var(--fs-button);margin:12px 0 0;max-width:46ch}.nl-strip input{background:var(--pg-hover);border:1.5px solid var(--pg-outline);color:var(--pg-text)}.nl-strip input::placeholder{color:var(--pg-muted)}.nl-fine{color:var(--pg-muted);font-size:13.5px;margin:12px 0 0}.nl-fine a,.nl-strip .nl-msg a{color:var(--pg-link);font-weight:600}.nl-strip .nl-msg{color:var(--pg-text)}@media (max-width:1060px){.nl-band{grid-template-columns:1fr}}.nl-inline{align-items:center;display:grid;gap:12px 40px;grid-template-columns:1fr 1fr;margin-top:clamp(36px,4vw,56px);max-width:none;padding-top:28px}.nl-inline .nl-lab{font-size:16px;margin:0}.nl-inline .nl-msg{grid-column:1/-1}@media (max-width:820px){.nl-inline{grid-template-columns:1fr}}