@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/schibsted-grotesk-latin-400-normal-DPhJBilQ.woff2)format("woff2"),url(/assets/schibsted-grotesk-latin-400-normal-BkiRe4WW.woff)format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/schibsted-grotesk-latin-500-normal-rf9C4Thp.woff2)format("woff2"),url(/assets/schibsted-grotesk-latin-500-normal-Ba39e-CX.woff)format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/schibsted-grotesk-latin-600-normal-Czv9Obfv.woff2)format("woff2"),url(/assets/schibsted-grotesk-latin-600-normal-BieE9YjJ.woff)format("woff")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/schibsted-grotesk-latin-700-normal-BkH0uJ1o.woff2)format("woff2"),url(/assets/schibsted-grotesk-latin-700-normal-Dz-okVa0.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2)format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff)format("woff")}:root,[data-theme=light]{--ink:#242b5e;--ink-soft:#3a3f78;--paper:#f4f4f1;--surface:#fff;--line:#e5e4e0;--muted:#5d6178;--joy:#f0c24b;--nav-bg:#f4f4f1d1;--shadow-rest:0 1px 2px #242b5e0d;--shadow-hover:0 16px 40px #242b5e1f;--code:#0c3028;--code-text:#d9f4e8;--code-dim:#a4caba;--code-comment:#8de5b3;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--ink:#fff;--ink-soft:#dadcee;--paper:#242b5e;--surface:#2d3472;--line:#3e4585;--muted:#b7bcd9;--joy:#f2c75a;--nav-bg:#242b5edb;--shadow-rest:0 1px 2px #00000040;--shadow-hover:0 18px 46px #00000073;--code:#102b22;--code-text:#def2e7;--code-dim:#a9c9b9;--code-comment:#8de5b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--brand-happie:#242b5e;--brand-wappie:#137659;--brand-vaultie:#262a62;--brand-authie:#176b80;--brand-sophie:#7040a0;--brand-nova:#a33960;--r-sm:12px;--r-md:18px;--r-lg:24px;--pill:999px;--ease:cubic-bezier(.22, .61, .36, 1);--pop:cubic-bezier(.34, 1.56, .64, 1);--maxw:1120px;--pad-inline:clamp(1.25rem, 4vw, 2.5rem);--section:clamp(4.5rem, 9vw, 8rem);--font-sans:"Schibsted Grotesk", system-ui, -apple-system, sans-serif;--fill:var(--ink);--on-fill:var(--paper);--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}html[data-brand-theme=wappie]{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;--ink:#173d33;--ink-soft:#47645b;--paper:#f8faf9;--surface:#fff;--line:#d4e1dc;--muted:#60766d;--joy:#08705a;--fill:#09694f;--on-fill:#fff;--nav-bg:#f8faf9db;--shadow-rest:0 1px 2px #0c30280f;--shadow-hover:0 16px 40px #0c302824}html[data-theme=dark][data-brand-theme=wappie]{--ink:#e4f0e9;--ink-soft:#b2c6ba;--paper:#0f1916;--surface:#17251f;--line:#2d4137;--muted:#93aa9c;--joy:#7adeb6;--fill:#81dfb7;--on-fill:#103628;--nav-bg:#0f1916db;--shadow-rest:0 1px 2px #00000059;--shadow-hover:0 18px 46px #0000008c}html[data-brand-theme=vaultie]{--brand:var(--brand-vaultie)}html[data-brand-theme=authie]{--brand:var(--brand-authie)}html[data-brand-theme=sophie]{--brand:var(--brand-sophie)}html[data-brand-theme=nova]{--brand:var(--brand-nova)}html[data-brand-theme=vaultie],html[data-brand-theme=authie],html[data-brand-theme=sophie],html[data-brand-theme=nova]{--ink:var(--brand);--ink-soft:color-mix(in oklab, var(--brand) 85%, #202020);--paper:color-mix(in oklab, var(--brand) 4%, #f9f9f7);--surface:#fff;--line:color-mix(in oklab, var(--brand) 16%, #e6e6e2);--muted:color-mix(in oklab, var(--brand) 60%, #6e6e7a);--joy:var(--brand);--fill:var(--brand);--on-fill:#fff;--nav-bg:color-mix(in srgb, var(--paper) 86%, transparent)}html[data-theme=dark][data-brand-theme=vaultie],html[data-theme=dark][data-brand-theme=authie],html[data-theme=dark][data-brand-theme=sophie],html[data-theme=dark][data-brand-theme=nova]{--ink:#fff;--ink-soft:color-mix(in oklab, #fff 85%, var(--brand));--paper:color-mix(in oklab, var(--brand) 42%, #0a0b14);--surface:color-mix(in oklab, var(--brand) 56%, #0a0b14);--line:color-mix(in oklab, var(--brand) 68%, #0a0b14);--muted:color-mix(in oklab, #fff 70%, var(--brand));--joy:color-mix(in oklab, var(--brand) 40%, #fff);--fill:color-mix(in oklab, var(--brand) 40%, #fff);--on-fill:color-mix(in oklab, var(--brand) 70%, #0a0b14);--nav-bg:color-mix(in srgb, var(--paper) 86%, transparent)}:root{--accent-wappie:var(--brand-wappie)}[data-theme=dark]{--accent-wappie:#7adeb6}.nav{z-index:50;transition:background .3s var(--ease), border-color .3s var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.nav.scrolled,.nav.menu-open{background:var(--nav-bg);-webkit-backdrop-filter:saturate(140%)blur(12px);border-bottom-color:var(--line)}.nav-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding-block:.9rem;display:flex}.brand{align-items:center;gap:.6rem;display:flex}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:var(--ink-soft);font-size:.95rem;transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-right{align-items:center;gap:1.1rem;display:flex}.menu-btn,.menu-btn .ico-close,.menu-open .menu-btn .ico-menu{display:none}.menu-open .menu-btn .ico-close{display:block}.nav-mobile{border-top:1px solid var(--line)}.nav-mobile-inner{flex-direction:column;align-items:flex-start;gap:.1rem;padding-block:.6rem 1.2rem;display:flex}.nav-mobile-inner a{color:var(--ink-soft);padding:.55rem 0;font-size:1.1rem;font-weight:500}.nav-mobile-inner a:hover{color:var(--ink)}.nav .nav-mobile .lang-mobile{margin-top:.8rem;display:none}@media (width>=861px){.nav .nav-mobile{display:none}}.foot{border-top:1px solid var(--line);padding-block:2.8rem 3.2rem}.foot-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.foot-brand{flex-direction:column;gap:.4rem;font-weight:700;display:flex}.foot-brand .muted{font-size:.85rem;font-weight:400}.foot-brand .foot-company{color:var(--ink);font-size:.85rem}.foot-meta{font-family:var(--font-mono);color:var(--muted);text-align:right;font-size:.74rem;line-height:1.9}.foot-meta a{color:var(--muted);transition:color .2s}.foot-meta a:hover{color:var(--ink)}.foot-links{margin-top:.4rem}.foot-links a{margin-left:1rem}.hero{contain:paint;padding-block:clamp(3.5rem,8vw,6.5rem) clamp(3rem,7vw,5.5rem);position:relative;overflow:hidden}.hero>.wrap{z-index:1;position:relative}.hero-inner{text-align:center}.hero-inner .hero-mark{margin:0 auto 2.4rem}.hero h1{letter-spacing:-.025em;max-width:14ch;margin:0 auto;font-size:clamp(2.7rem,7vw,5rem);font-weight:700;line-height:1.02}.hero .lead{color:var(--muted);max-width:46ch;margin:1.6rem auto 0;font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55}.hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:.85rem;margin-top:2.4rem;display:flex}.eyebrow.eyebrow-center{justify-content:center;display:flex}.fine{color:var(--muted);margin:1.4rem 0 0;font-size:.88rem}.backdrop{z-index:0;pointer-events:none;--bd-a:var(--joy);--bd-b:var(--brand-happie);--bd-c:var(--brand-sophie);position:absolute;inset:0;overflow:hidden}.backdrop[data-brand=wappie]{--bd-b:var(--brand-wappie);--bd-c:var(--brand-authie)}.backdrop[data-brand=vaultie]{--bd-b:var(--brand-vaultie)}.backdrop[data-brand=authie]{--bd-b:var(--brand-authie);--bd-c:var(--brand-wappie)}.backdrop[data-brand=sophie]{--bd-b:var(--brand-sophie);--bd-c:var(--brand-nova)}.backdrop[data-brand=nova]{--bd-b:var(--brand-nova);--bd-c:var(--brand-sophie)}.blob{background:radial-gradient(circle at center, var(--blob-color) 0%, transparent 62%);opacity:.28;will-change:transform;border-radius:50%;width:56vmax;height:56vmax;animation:26s ease-in-out infinite alternate blob-drift;position:absolute}.blob-1{--blob-color:var(--bd-a);top:-28vmax;left:-14vmax}.blob-2{--blob-color:var(--bd-b);animation-duration:31s;animation-delay:-9s;top:-18vmax;right:-20vmax}.blob-3{--blob-color:var(--bd-c);animation-duration:36s;animation-delay:-17s;bottom:-34vmax;left:30%}.backdrop.is-paused .blob{animation-play-state:paused}[data-theme=dark] .blob{opacity:.14}@keyframes blob-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(6vw,4vh)scale(1.08)}to{transform:translate(-4vw,7vh)scale(.96)}}.about{border-top:1px solid var(--line);padding-block:var(--section)}.about-grid{grid-template-columns:1.4fr .9fr;align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.about-grid .statement{letter-spacing:-.01em;margin:0;font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.4}.facts{font-family:var(--font-mono);color:var(--ink-soft);flex-direction:column;margin:0;padding:0;font-size:.82rem;display:flex}.facts li{border-bottom:1px solid var(--line);align-items:baseline;gap:.7rem;padding:.95rem 0;list-style:none;display:flex}.facts li:first-child{padding-top:0}.facts li:last-child{border-bottom:0}.facts .dot{background:var(--joy);border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-1px)}.products{border-top:1px solid var(--line);padding-block:var(--section)}.products-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:3rem;display:flex}.products-head h2{letter-spacing:-.02em;margin:.2rem 0 0;font-size:clamp(1.9rem,4vw,2.9rem);font-weight:700;line-height:1.05}.products-head .intro{color:var(--muted);max-width:34ch;margin:0;font-size:1rem}.fam{margin-top:3.2rem}.fam:first-of-type{margin-top:0}.fam-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.9rem;margin:0 0 1.2rem;font-size:.74rem;display:flex}.fam-label:after{content:"";background:var(--line);flex:1;height:1px}.grid{grid-template-columns:1fr 1fr;gap:1.1rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-rest);color:inherit;transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);flex-direction:column;min-height:100%;padding:clamp(1.5rem,2.5vw,2rem);display:flex}.card:hover{box-shadow:var(--shadow-hover);border-color:color-mix(in oklab, var(--line) 60%, var(--ink));transform:translateY(-4px)}.card-top{align-items:center;gap:.9rem;margin-bottom:1.15rem;display:flex}.card-top .tag{align-self:flex-start;margin-left:auto}.card .lockup-mark{border-radius:var(--r-sm);transition:transform .4s var(--ease)}.card:hover .lockup-mark{transform:rotate(-4deg)scale(1.04)}.card .desc{color:var(--ink-soft);margin:1rem 0 0;font-size:.98rem;line-height:1.55}.card .num{font-family:var(--font-mono);color:var(--joy);letter-spacing:.1em;font-size:.74rem}.card h3{letter-spacing:-.01em;margin:.7rem 0 0;font-size:1.2rem;font-weight:600}.product-hero .hero-inner .hero-mark{margin-bottom:2rem}.product-hero .eyebrow-center{margin-bottom:1.2rem}.highlights{padding-block:0 var(--section)}.see-all{text-align:center;margin:2.6rem 0 0}.how{border-top:1px solid var(--line);padding-block:var(--section)}.how-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1.6rem,3vw,3rem);margin-top:2.6rem;display:grid}.principle .num{font-family:var(--font-mono);color:var(--joy);letter-spacing:.1em;font-size:.74rem}.principle h3{letter-spacing:-.01em;margin:.7rem 0 .55rem;font-size:1.2rem;font-weight:600}.principle p{color:var(--muted);margin:0;font-size:.96rem;line-height:1.55}.contact{border-top:1px solid var(--line);padding-block:var(--section);text-align:center}.contact h2{letter-spacing:-.025em;margin:.4rem auto 0;font-size:clamp(2rem,5vw,3.2rem);font-weight:700}.contact p{color:var(--muted);max-width:42ch;margin:1.2rem auto 0;font-size:1.08rem}.mailto{letter-spacing:-.01em;border-bottom:2px solid var(--joy);align-items:center;gap:.6rem;margin-top:2rem;padding-bottom:.2rem;font-size:clamp(1.2rem,2.4vw,1.7rem);font-weight:600;transition:opacity .2s;display:inline-flex}.mailto:hover{opacity:.7}.mailto .arr{transition:transform .25s var(--ease)}.mailto:hover .arr{transform:translate(3px,-3px)}.text-link{border-bottom:2px solid var(--joy);align-items:center;gap:.4rem;padding-bottom:.1rem;font-weight:600;display:inline-flex}.text-link .arr{transition:transform .25s var(--ease)}.text-link:hover .arr{transform:translate(3px)}.wappie-hero-grid{grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(2.5rem,6vw,4rem);display:grid}.wappie-hero-top{align-items:center;gap:1.2rem;margin-bottom:1.8rem;display:flex}.wappie-hero-copy .eyebrow{color:var(--accent-wappie);margin-bottom:1rem}.wappie-hero-copy h1{letter-spacing:-.045em;max-width:16ch;margin:0 0 1.2rem;font-size:clamp(2.5rem,5.5vw,4.25rem);line-height:1.05}.wappie-hero-copy .lead{max-width:520px;margin:0}.wappie-hero-copy .hero-cta{justify-content:flex-start;margin-top:1.9rem}.code{background:var(--code);color:var(--code-text);border-radius:var(--r-md);min-width:0;overflow:hidden;box-shadow:0 20px 65px #0c302821}.code-title{font-family:var(--font-mono);color:var(--code-dim);border-bottom:1px solid #ffffff20;padding:1rem 1.5rem;font-size:.82rem}.code pre{font-family:var(--font-mono);margin:0;padding:1rem 1.6rem 1.5rem;font-size:.9rem;line-height:1.9;overflow:auto}.code em{color:var(--code-comment);font-style:normal}.section{border-top:1px solid var(--line);padding-block:clamp(3rem,6vw,5rem)}.columns{grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);display:grid}.columns-3{grid-template-columns:repeat(3,1fr)}.wappie-section h2{letter-spacing:-.03em;margin:0 0 1.6rem;font-size:clamp(1.7rem,3.4vw,2.2rem);font-weight:700;line-height:1.15}.wappie-section h3{letter-spacing:-.01em;margin:.8rem 0 .4rem;font-size:1.25rem;font-weight:600}.wappie-section article p{color:var(--ink-soft);margin:0 0 1.2rem}.wappie-section article .eyebrow{margin-bottom:1rem}.wappie-section .intro{color:var(--ink-soft);max-width:60ch;margin:0 0 2.2rem}.number{font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent-wappie);font-size:.8rem}.wrap.docs{max-width:900px;padding-block:clamp(2.4rem, 6vw, 4rem) var(--section)}.docs h1{letter-spacing:-.03em;margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3rem);font-weight:700;line-height:1.05}.docs .lead{color:var(--muted);max-width:60ch;margin:0 0 1.6rem;font-size:1.15rem}.docs h2{letter-spacing:-.02em;margin:3.2rem 0 .8rem;scroll-margin-top:90px;font-size:1.6rem;font-weight:700}.docs h3{margin:2rem 0 .6rem;font-size:1.2rem;font-weight:600}.docs p,.docs li{color:var(--ink-soft)}.docs p{margin:0 0 1rem}.docs ol{padding-left:1.3rem}.docs li{margin-bottom:.5rem;line-height:1.8}.docs code{font-family:var(--font-mono);background:color-mix(in oklab, var(--ink) 7%, transparent);border-radius:6px;padding:.1em .38em;font-size:.86em}.docs a{color:var(--ink);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--joy);text-decoration-color:var(--joy);text-decoration-thickness:1.5px}.docs a.btn{margin-top:.4rem;text-decoration:none}.docs-toolbar{border-block:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem 1.5rem;padding:.8rem 0;font-size:.78rem;display:flex}.docs-nav,.docs-links{flex-wrap:wrap;gap:1.2rem;display:flex}.docs-toolbar a{color:var(--muted);text-decoration:none;transition:color .2s}.docs-toolbar a:hover{color:var(--ink)}.code-block{background:var(--code);color:var(--code-text);border-radius:var(--r-sm);font-family:var(--font-mono);margin:1rem 0;padding:1.3rem;font-size:.86rem;line-height:1.7;overflow:auto}.docs .code-block code{font-size:inherit;background:0 0;padding:0}.table-wrap{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);margin:1.2rem 0;overflow-x:auto}.docs table{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}.docs th,.docs td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.75rem .8rem}.docs th{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:500}.docs tbody tr:last-child td{border-bottom:0}.docs-foot{font-family:var(--font-mono);margin-top:3rem;font-size:.74rem}.legal{max-width:760px;padding:clamp(2.4rem, 6vw, 4rem) var(--pad-inline) clamp(3rem, 7vw, 5rem);margin:0 auto}.back{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);margin-bottom:1.5rem;font-size:.74rem;transition:color .2s;display:inline-block}.back:hover{color:var(--ink)}.legal h1{letter-spacing:-.025em;margin:0 0 .55rem;font-size:clamp(2rem,5vw,2.8rem);font-weight:700;line-height:1.05}.legal .meta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);margin:0 0 2.3rem;font-size:.76rem}.legal h2{letter-spacing:-.01em;margin:2.1rem 0 .5rem;font-size:1.12rem;font-weight:700}.legal p{color:var(--ink-soft);margin:0 0 1rem}.legal section a{color:var(--ink);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--joy);text-decoration-color:var(--joy);text-decoration-thickness:1.5px}.legal-foot{border-top:1px solid var(--line);font-family:var(--font-mono);color:var(--muted);margin-top:3rem;padding-top:1.4rem;font-size:.74rem}.neutral{padding-block:clamp(4rem,10vw,7rem)}.neutral h1{letter-spacing:-.02em;max-width:30ch;margin:0;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;line-height:1.15}.neutral .muted{margin:.8rem 0 0}.neutral-links{flex-wrap:wrap;gap:1.5rem;margin:2rem 0 0;padding:0;list-style:none;display:flex}.neutral-links a{border-bottom:2px solid var(--joy);font-weight:600}@media (width<=860px){.nav-links{display:none}.menu-btn{display:inline-flex}.about-grid{grid-template-columns:1fr}.how-grid{grid-template-columns:1fr;gap:2rem}.grid-3,.columns-3{grid-template-columns:1fr}.wappie-hero-grid{grid-template-columns:1fr;gap:2.5rem}.columns{grid-template-columns:1fr;gap:2rem}}@media (width<=620px){.grid{grid-template-columns:1fr}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{justify-content:center}.hero-cta .tag{align-self:center}.wappie-hero-copy .hero-cta{align-items:stretch}.nav .lang-desktop{display:none}.nav .nav-mobile .lang-mobile{display:inline-flex}.code pre{padding:1rem;font-size:.8rem}.foot-inner{flex-direction:column}.foot-meta{text-align:left}.foot-links a{margin-left:0;margin-right:1rem}.nav-inner{gap:.75rem}.nav-right{gap:.6rem}.nav .nav-right>.lang-desktop{display:none}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.62}::selection{background:var(--joy);color:#242b5e}a{color:inherit;text-decoration:none}img,svg{display:block}button{font:inherit}:focus-visible{outline:2.5px solid var(--ink);outline-offset:3px;border-radius:4px}[hidden]{display:none!important}.wrap{max-width:var(--maxw);padding-inline:var(--pad-inline);margin:0 auto}.skip{z-index:100;background:var(--surface);color:var(--ink);border-radius:0 0 var(--r-sm) 0;padding:.8rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{left:0}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.55rem;margin:0 0 1.4rem;font-size:.72rem;font-weight:500;display:inline-flex}.eyebrow:before{content:"";border:1.6px solid var(--joy);border-top:none;border-radius:0 0 18px 18px;flex:none;width:18px;height:9px}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.btn{border-radius:var(--pill);cursor:pointer;transition:transform .2s var(--ease), background .2s var(--ease), border-color .2s, color .2s;border:1px solid #0000;align-items:center;gap:.5rem;padding:.78rem 1.35rem;font-size:.98rem;font-weight:500;display:inline-flex}.btn .arr{transition:transform .25s var(--ease)}.btn:hover .arr{transform:translate(3px)}.btn-primary{background:var(--fill);color:var(--on-fill)}.btn-primary:hover{filter:brightness(.94)}.btn-ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn-ghost:hover{border-color:var(--ink)}.tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:var(--pill);white-space:nowrap;padding:.3rem .65rem;font-size:.66rem}.tag-pilot{color:var(--brand-wappie);border-color:color-mix(in oklab, var(--brand-wappie) 45%, transparent)}html[data-brand-theme=wappie] body{font-synthesis:none}html[data-brand-theme=wappie] h1{letter-spacing:-.045em}html[data-brand-theme=wappie] h2{letter-spacing:-.03em}.page-enter-active,.page-leave-active{transition:opacity .22s var(--ease), transform .22s var(--ease)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}::view-transition-old(root){animation-duration:.3s;animation-timing-function:var(--ease)}::view-transition-new(root){animation-duration:.3s;animation-timing-function:var(--ease)}.js .reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(18px)}.js .reveal.in{opacity:1;transform:none}.words .w{animation:word-in .55s var(--ease) both;display:inline-block}.words .w:nth-child(2){animation-delay:55ms}.words .w:nth-child(3){animation-delay:.11s}.words .w:nth-child(4){animation-delay:.165s}.words .w:nth-child(5){animation-delay:.22s}.words .w:nth-child(6){animation-delay:.275s}.words .w:nth-child(7){animation-delay:.33s}.words .w:nth-child(8){animation-delay:.385s}.words .w:nth-child(9){animation-delay:.44s}.words .w:nth-child(10){animation-delay:.495s}.words .w:nth-child(11){animation-delay:.55s}.words .w:nth-child(12){animation-delay:.605s}.words .w:nth-child(n+13){animation-delay:.66s}@keyframes word-in{0%{opacity:0;transform:translateY(.45em)}to{opacity:1;transform:none}}.rise-in{animation:rise-in .7s var(--ease) both}.rise-in.d1{animation-delay:.12s}.rise-in.d2{animation-delay:.24s}.rise-in.d3{animation-delay:.36s}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}.backdrop{display:none}}.bm{display:block;overflow:visible}.bm[data-brand=happie]{--bm-color:#242b5e}.bm[data-brand=wappie]{--bm-color:#137659}.bm[data-brand=vaultie]{--bm-color:#262a62}.bm[data-brand=authie]{--bm-color:#176b80}.bm[data-brand=sophie]{--bm-color:#7040a0}.bm[data-brand=nova]{--bm-color:#a33960}.bm[data-mode=outline],.bm[data-mode=auto],[data-theme=light] .bm[data-mode=auto]{--bm-frame:var(--bm-color);--bm-interior:#fff;--bm-symbol:var(--bm-color)}.bm[data-mode=tile],[data-theme=dark] .bm[data-mode=auto]{--bm-frame:#fff;--bm-interior:var(--bm-color);--bm-symbol:#fff}.bm path{transition:fill .3s,stroke .3s}.bm-frame{fill:var(--bm-frame)}.bm-interior{fill:var(--bm-interior)}.bm-fill{fill:var(--bm-symbol)}.bm-stroke{fill:none;stroke:var(--bm-symbol)}.bm-cut{fill:none;stroke:var(--bm-interior)}.bm--play{transform-origin:50%;animation:bm-pop .65s var(--ease) both}.bm--play .bm-part,.bm--play .bm-part-wrap{transform-box:fill-box;transform-origin:50%}@keyframes bm-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes bm-draw{to{stroke-dashoffset:0}}.bm--play .bm-wappie-bubble{animation:bm-bubble .45s var(--pop) .25s both}.bm--play .bm-wappie-tail-wrap{animation:bm-tail .25s var(--ease) .6s both}.bm--play .bm-wappie-chevronL{animation:.3s ease-out .55s both bm-draw}.bm--play .bm-wappie-chevronR{animation:.3s ease-out .9s both bm-draw}@keyframes bm-bubble{0%{transform:scale(.6)}to{transform:scale(1)}}@keyframes bm-tail{0%{opacity:0;transform:translate(6px,-6px)}to{opacity:1;transform:none}}.bm--play .bm-vaultie-shield{animation:.65s ease-in-out .3s both bm-draw}.bm--play .bm-vaultie-shield-wrap{animation:bm-pulse .25s var(--ease) .95s both}@keyframes bm-pulse{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.bm--play .bm-authie-check{animation:.9s ease-in-out .3s both bm-check}@keyframes bm-check{0%{stroke-dashoffset:59.4385px}40%{stroke-dashoffset:38.976px}50%{stroke-dashoffset:38.976px}to{stroke-dashoffset:0}}.bm--play .bm-sophie-knot{animation:bm-drop .5s var(--pop) .2s both}.bm--play .bm-sophie-blade{transform-origin:50% 0;animation:bm-unroll .55s var(--pop) .65s both}@keyframes bm-drop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes bm-unroll{0%{transform:scaleY(.15)}to{transform:scaleY(1)}}.bm--play .bm-nova-dress{transform-origin:50% 100%;animation:bm-rise .55s var(--pop) .25s both}.bm--play .bm-nova-dress-wrap{transform-origin:50% 100%;animation:bm-sway .4s var(--ease) .8s both}@keyframes bm-rise{0%{transform:translateY(8px)scale(.8)}to{transform:none}}@keyframes bm-sway{0%{transform:rotate(0)}50%{transform:rotate(-1.5deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.bm,.bm *{animation:none!important}.bm [stroke-dasharray]{stroke-dasharray:none!important}}.lockup[data-v-fa52a63e]{--lk:34px;color:var(--lk-color);align-items:center;gap:0;display:inline-flex}.lockup[data-size="30"][data-v-fa52a63e]{--lk:30px}.lockup[data-size="44"][data-v-fa52a63e]{--lk:44px}.lockup[data-brand=happie][data-v-fa52a63e]{--lk-color:var(--brand-happie)}.lockup[data-brand=wappie][data-v-fa52a63e]{--lk-color:var(--brand-wappie)}.lockup[data-brand=vaultie][data-v-fa52a63e]{--lk-color:var(--brand-vaultie)}.lockup[data-brand=authie][data-v-fa52a63e]{--lk-color:var(--brand-authie)}.lockup[data-brand=sophie][data-v-fa52a63e]{--lk-color:var(--brand-sophie)}.lockup[data-brand=nova][data-v-fa52a63e]{--lk-color:var(--brand-nova)}[data-theme=dark] .lockup[data-v-fa52a63e]{--lk-color:#fff}.lockup-mark[data-v-fa52a63e]{flex:none;display:block}.lockup-lettering[data-v-fa52a63e]{animation:lockup-reveal-fa52a63e .45s var(--ease) .25s both;flex:none;display:block;overflow:visible}.lockup-text[data-v-fa52a63e]{margin-left:calc(var(--lk) * .2);animation:lockup-reveal-fa52a63e .45s var(--ease) .25s both;flex-direction:column;justify-content:space-between;align-self:stretch;display:flex}.lockup-name[data-v-fa52a63e]{font-family:var(--font-sans);letter-spacing:-.03em;font-weight:800;font-size:calc(var(--lk) * .6);margin:calc(var(--lk) * -.085) 0 0;white-space:nowrap;line-height:1}.lockup-by[data-v-fa52a63e]{font-family:var(--font-mono);font-size:calc(var(--lk) * .28);letter-spacing:.01em;word-spacing:-.12em;color:var(--muted);white-space:nowrap;line-height:1}@keyframes lockup-reveal-fa52a63e{0%{clip-path:inset(-30% 100% -30% -10%)}to{clip-path:inset(-30% -20% -30% -10%)}}@media (prefers-reduced-motion:reduce){.lockup-lettering[data-v-fa52a63e],.lockup-text[data-v-fa52a63e]{animation:none}}.lang[data-v-8ef79a26]{border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);font-family:var(--font-mono);padding:3px;display:inline-flex}.lang button[data-v-8ef79a26]{cursor:pointer;color:var(--muted);letter-spacing:.06em;border-radius:var(--pill);transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:0;padding:.32rem .6rem;font-size:.72rem}.lang button[aria-pressed=true][data-v-8ef79a26]{background:var(--ink);color:var(--paper)}.icon-btn{border-radius:var(--pill);border:1px solid var(--line);background:var(--surface);cursor:pointer;width:38px;height:38px;color:var(--ink);transition:border-color .2s, color .2s, background .2s, transform .2s var(--ease);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{border-color:var(--ink)}.icon-btn:active{transform:scale(.94)}.icon-btn svg{width:18px;height:18px}.icon-btn .sun{display:none}[data-theme=dark] .icon-btn .sun{display:block}[data-theme=dark] .icon-btn .moon{display:none}
