.ps{--ps-fill:var(--ps-strong,var(--accent));--ps-track:color-mix(in srgb, var(--foreground) 14%, transparent);flex-direction:column;gap:.75rem;display:flex}.ps-label{color:var(--foreground);font-size:.9375rem;font-weight:600}.ps-head{justify-content:space-between;align-items:center;gap:.25rem;display:flex}.ps-pill{border:1px solid var(--line);border-radius:999px;flex:none;align-items:center;padding:2px;display:inline-flex}.ps-number{text-align:center;font-variant-numeric:tabular-nums;width:2.75rem;min-width:0;color:var(--foreground);background:0 0;border:0;padding:0;font-size:1rem;font-weight:700}.ps-pill-step{background:color-mix(in srgb, var(--foreground) 8%, transparent);width:44px;height:44px;color:var(--foreground);cursor:pointer;touch-action:manipulation;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.375rem;line-height:1;display:grid}.ps-pill-step:hover:not(:disabled){border-color:var(--ps-fill)}.ps-pill-step:disabled{color:var(--muted);cursor:default;background:0 0}.ps-pill-step:focus-visible,.ps-number:focus-visible{outline:2px solid var(--ps-fill);outline-offset:2px}.ps-head+.ps-range{flex:none;width:100%}.ps-range{appearance:none;cursor:pointer;touch-action:pan-y;background:0 0;flex:1;min-width:0;height:2.75rem;margin:0}.ps-range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ps-fill) var(--ps-at,0%), var(--ps-track) var(--ps-at,0%));border-radius:999px;height:.5rem}.ps-range::-moz-range-track{background:var(--ps-track);border-radius:999px;height:.5rem}.ps-range::-moz-range-progress{background:var(--ps-fill);border-radius:999px;height:.5rem}.ps-range::-webkit-slider-thumb{appearance:none;background:var(--ps-fill);border:3px solid var(--background);width:1.75rem;height:1.75rem;box-shadow:0 0 0 1px var(--ps-fill);border-radius:50%;margin-top:-.625rem;transition:transform .15s}.ps-range::-moz-range-thumb{box-sizing:border-box;background:var(--ps-fill);border:3px solid var(--background);width:1.75rem;height:1.75rem;box-shadow:0 0 0 1px var(--ps-fill);border-radius:50%}.ps-range:active::-webkit-slider-thumb{transform:scale(1.1)}.ps-range:focus-visible{outline:2px solid var(--ps-fill);outline-offset:4px;border-radius:.5rem}.ps-price{flex-direction:column;gap:.375rem;margin-top:.25rem;display:flex}.ps-line{flex-wrap:wrap;align-items:baseline;column-gap:.625rem;margin:0;display:flex}.ps-was{color:var(--muted);-webkit-text-decoration-color:var(--ps-fill);text-decoration-color:var(--ps-fill);font-variant-numeric:tabular-nums;font-size:1.125rem;text-decoration-thickness:2px}.ps-now{font-family:var(--font-inter-tight), var(--font-sora), sans-serif;letter-spacing:-.03em;color:var(--ps-heading,var(--ps-fill));font-variant-numeric:tabular-nums;font-size:clamp(2.25rem,10vw,3rem);font-weight:800;line-height:1.1}.ps-unit{color:var(--foreground);font-size:.9375rem}.ps-price p{margin:0}.ps-sub{color:var(--muted);font-size:.9375rem}.ps-total{border-top:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.625rem;font-size:.9375rem}.ps-total strong{color:var(--foreground);font-size:1.0625rem}.ps-note{border:1px solid var(--line);color:var(--foreground);border-radius:.875rem;align-items:flex-start;gap:.5rem;padding:.75rem .5rem .75rem 1rem;font-size:.875rem;line-height:1.45;display:flex}.ps-note p{flex:1;margin:0}.ps-note a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ps-fill);text-decoration-color:var(--ps-fill);text-underline-offset:3px;font-weight:600}.ps-optional{color:var(--muted)}.ps-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin-top:-.25rem;font-size:1.25rem;line-height:1;display:grid}.ps-close:hover{color:var(--foreground)}.ps-note a:focus-visible,.ps-close:focus-visible{outline:2px solid var(--ps-fill);outline-offset:2px}.ps-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
.o2{--o2-ease:cubic-bezier(.16, 1, .3, 1);--o2-header:68px;background:var(--background);color:var(--foreground);font-family:var(--font-inter), sans-serif;overflow-x:clip}.o2-header{z-index:50;height:var(--o2-header);background:color-mix(in srgb, var(--background) 92%, transparent);border-bottom:1px solid #0000;transition:background-color .3s,border-color .3s;position:fixed;inset:0 0 auto}@media (max-width:767px){.o2-header.scrolled{border-bottom-color:var(--line)}}@media (hover:hover) and (pointer:fine){.o2-header{background:color-mix(in srgb, var(--background) 55%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4)}.o2-header.scrolled{background:color-mix(in srgb, var(--background) 94%, transparent)}}.o2-bar{align-items:center;gap:24px;max-width:1240px;height:100%;margin:0 auto;padding:0 24px;display:flex}.o2-logo{font-family:var(--font-logo);letter-spacing:-.01em;color:var(--heading);font-size:1.5rem;font-weight:900;text-decoration:none}.o2-links{gap:30px;margin:0 auto;display:flex}.o2-links a,.o2-phone-menu a{color:var(--muted);font-size:.94rem;font-weight:500;text-decoration:none;transition:color .2s}.o2-links a:hover{color:var(--heading)}.o2-cta{align-items:center;gap:10px;display:flex}.o2-btn{white-space:nowrap;height:40px;transition:transform .25s var(--o2-ease), background-color .2s, border-color .2s, box-shadow .25s;border-radius:999px;justify-content:center;align-items:center;padding:0 18px;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.o2-btn:hover{transform:translateY(-1px)}.o2-btn:focus-visible,.o2-logo:focus-visible,.o2-links a:focus-visible,.o2-menu-btn:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}.o2-btn-solid{background:var(--accent-fill);color:var(--on-accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--on-accent) 14%, transparent) inset, 0 8px 26px -10px color-mix(in srgb, var(--accent) 90%, transparent)}.o2-btn-solid:hover{background:var(--accent-fill-hover);box-shadow:0 0 0 1px color-mix(in srgb, var(--on-accent) 20%, transparent) inset, 0 12px 34px -8px color-mix(in srgb, var(--accent) 100%, transparent)}.o2-btn-line{color:var(--heading);border:1px solid color-mix(in srgb, var(--foreground) 24%, transparent)}.o2-btn-line:hover{border-color:color-mix(in srgb, var(--foreground) 50%, transparent);background:color-mix(in srgb, var(--foreground) 6%, transparent)}.o2-btn-big{height:clamp(42px,5.8vh,50px);padding:0 26px;font-size:1rem}.o2-menu-btn{width:40px;height:40px;color:var(--heading);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;place-items:center;display:none}.o2-menu-btn svg{width:20px;height:20px}.o2-phone-menu{display:none}@media (max-width:860px){.o2-links{display:none}.o2-cta{margin-left:auto}.o2-menu-btn{display:grid}.o2-phone-menu{background:var(--background);border-bottom:1px solid var(--line);opacity:0;visibility:hidden;transition:transform .3s var(--o2-ease), opacity .2s, visibility 0s .3s;flex-direction:column;padding:6px 20px 14px;display:flex;transform:translateY(-8px)}.o2-phone-menu.open{opacity:1;visibility:visible;transition:transform .3s var(--o2-ease), opacity .2s;transform:none}.o2-phone-menu a{color:var(--heading);padding:12px 0;font-size:1rem}}@media (max-width:440px){.o2-bar{gap:10px;padding:0 14px}.o2-logo{font-size:1.15rem}.o2-cta{gap:6px}.o2-cta .o2-btn{height:36px;padding:0 11px;font-size:.8rem}.o2-menu-btn{width:36px;height:36px}}.o2-hero{height:100svh;min-height:520px;padding:calc(var(--o2-header) + clamp(14px, 3.4vh, 56px)) 20px clamp(10px, 2.2vh, 26px);background:var(--background);flex-direction:column;display:flex;position:relative;overflow:hidden}.o2-light{pointer-events:none;position:absolute;inset:0}.o2-light:before{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 26%, transparent), transparent);opacity:.6;width:70%;height:90%;position:absolute;top:-25%;left:15%}.o2-copy{z-index:2;text-align:center;max-width:880px;margin:0 auto;position:relative}.o2-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-bright);margin:0 0 clamp(8px,1.6vh,14px);font-size:.78rem;font-weight:600}.o2-title{font-family:var(--font-sora), sans-serif;letter-spacing:-.035em;color:var(--heading);margin:0;font-size:clamp(min(1.85rem,6.9vw),min(5.4vw,6.4vh),4.3rem);font-weight:600;line-height:1.05}.o2-line{display:block}.o2-glow,.t2-glow{background:var(--accent-glow);color:#0000;-webkit-background-clip:text;background-clip:text}.o2-w{white-space:pre;display:inline-block}@media (prefers-reduced-motion:no-preference){html[data-o2-intro] .o2-hero .o2-eyebrow,html[data-o2-intro] .o2-hero .o2-w,html[data-o2-intro] .o2-hero-after>*{opacity:0;transform:translateY(18px)}html[data-o2-intro] .o2-hero .o2-glow{color:var(--heading)}html[data-o2-intro][data-o2-words] .o2-hero .o2-eyebrow,html[data-o2-intro][data-o2-words] .o2-hero .o2-w,html[data-o2-intro][data-o2-after] .o2-hero-after>*{opacity:1;transition:opacity .8s cubic-bezier(.22, 1, .36, 1) var(--o2-at,0s), transform .9s cubic-bezier(.22, 1, .36, 1) var(--o2-at,0s), color .7s ease-in-out;transform:none}html[data-o2-intro] .o2-hero .o2-w{--o2-at:calc((var(--i) + 1) * 60ms)}html[data-o2-intro] .o2-hero-after .o2-actions,html[data-o2-intro] .o2-hero-after .o2-note{--o2-at:80ms}html[data-o2-intro][data-o2-glow] .o2-hero .o2-glow{color:#0000}}.o2-lead{max-width:600px;color:var(--muted);margin:clamp(8px,1.8vh,18px) auto 0;font-size:clamp(.95rem,min(1.6vw,2.1vh),1.15rem);line-height:1.5}.o2-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(12px,2.6vh,24px);display:flex}.o2-note{color:var(--muted);margin:clamp(6px,1.4vh,14px) 0 0;font-size:.85rem}.o2-stage{z-index:1;opacity:0;flex:1 1 0;width:100%;max-width:1240px;min-height:0;margin:clamp(6px,1.6vh,22px) auto 0;position:relative}.o2-stage[data-ready]{opacity:1}.o2-gl{display:none}.o2-stage[data-mode="3d"]{position:static}.o2-stage[data-mode="3d"] .o2-gl{z-index:0;display:block;position:absolute;inset:0}.o2-gl canvas{cursor:grab;touch-action:pan-y;display:block;width:100%!important;height:100%!important}.o2-gl canvas.dragging{cursor:grabbing}.o2-stage[data-mode="3d"] .o2-css{display:none}.o2-css{perspective:1800px;perspective-origin:50% 30%;place-items:center;display:grid;position:absolute;inset:0;container-type:size}.o2-laptop{--turn:0;width:min(840px,64cqw,112cqh);transform-style:preserve-3d;transform:translateY(calc(var(--turn) * 4% + var(--rise,0%))) rotateX(calc(5deg + var(--turn) * 22deg + var(--dy,0deg))) rotateY(calc(var(--turn) * -16deg + var(--dx,0deg) + var(--spin,0deg))) scale(calc(1 - var(--turn) * .06));transform-origin:50% 70%;cursor:grab;touch-action:pan-y;position:relative}.o2-laptop.dragging{cursor:grabbing}.o2-lid{background:linear-gradient(160deg, color-mix(in srgb, var(--heading) 7%, transparent), transparent 45%), var(--shade);border:2px solid color-mix(in srgb, var(--device-alu) 70%, var(--heading));box-shadow:0 0 0 1px color-mix(in srgb, var(--heading) 22%, transparent), 0 2px 0 color-mix(in srgb, var(--heading) 10%, transparent) inset, 0 30px 60px -30px color-mix(in srgb, var(--shade) 90%, transparent), 0 50px 110px -40px color-mix(in srgb, var(--accent) 30%, transparent);transform-origin:50% 100%;transform-style:preserve-3d;border-radius:18px 18px 6px 6px;padding:2.2% 2.2% 4.6%;position:relative}.o2-screen{aspect-ratio:1280/800;background:var(--shade);backface-visibility:hidden;border-radius:6px;position:relative;overflow:hidden}.o2-dark{background:var(--shade);pointer-events:none;position:absolute;inset:0}.o2-deck{background:repeating-linear-gradient(90deg, color-mix(in srgb, var(--heading) 3%, transparent) 0 1px, transparent 1px 4px), linear-gradient(180deg, color-mix(in srgb, var(--device-alu) 75%, var(--heading)), var(--device-alu) 40%, color-mix(in srgb, var(--device-alu) 70%, var(--shade)));height:0;box-shadow:0 0 0 1px color-mix(in srgb, var(--heading) 18%, transparent);transform-origin:50% 0;border-radius:0 0 22px 22px;padding-bottom:66%;position:absolute;top:100%;left:-3%;right:-3%;transform:rotateX(90deg)}.o2-keys{background:repeating-linear-gradient(90deg, transparent 0 5.4%, color-mix(in srgb, var(--device-alu) 60%, var(--shade)) 5.4% 6.6%), repeating-linear-gradient(0deg, transparent 0 14%, color-mix(in srgb, var(--device-alu) 60%, var(--shade)) 14% 16.6%), color-mix(in srgb, var(--shade) 75%, var(--device-alu));border-radius:8px;height:38%;position:absolute;top:7%;left:9%;right:9%}.o2-pad{background:color-mix(in srgb, var(--device-alu) 85%, var(--heading));height:36%;box-shadow:0 0 0 1px color-mix(in srgb, var(--heading) 18%, transparent);border-radius:10px;position:absolute;top:52%;left:32%;right:32%}.o2-beam{background:var(--accent-glow);height:2px;box-shadow:0 0 18px 3px color-mix(in srgb, var(--accent-2) 55%, transparent);opacity:0;transform-origin:0;border-radius:2px;position:absolute;top:100%;left:-3%;right:-3%;transform:scaleX(0)}@media (max-width:767px){.o2-hero{height:var(--o2-hero-h,100svh);--o2-u:calc(var(--o2-hero-h,100svh) / 100);padding-top:calc(var(--o2-header) + clamp(14px, calc(3.4 * var(--o2-u)), 56px));padding-bottom:22px}.o2-hero .o2-eyebrow{margin-bottom:clamp(8px, calc(1.6 * var(--o2-u)), 14px)}.o2-stage{margin-top:clamp(6px, calc(1.6 * var(--o2-u)), 22px)}.o2-stage[data-mode="3d"][data-device=phone]{position:static}.o2-stage[data-mode="3d"][data-device=phone] .o2-gl{z-index:0;inset:0}body:has(.o2) .cookie-banner{min-height:44px;padding:6px 8px 6px 12px;padding-bottom:calc(6px + env(safe-area-inset-bottom));box-shadow:none;align-items:center;gap:8px;font-size:.75rem;line-height:1.2;display:flex}body:has(.o2) .cookie-banner-short{display:none}body:has(.o2) .cookie-banner .cookie-text-button{display:none}body:has(.o2) .cookie-banner-tiny{flex:auto;min-width:0;margin:0;font-size:.6875rem;display:block}body:has(.o2) .cookie-banner .cookie-actions{flex:none;grid-template-columns:1fr 1fr;gap:5px;margin-top:0}body:has(.o2) .cookie-banner .cookie-button{white-space:nowrap;min-height:32px;padding:0 8px;font-size:.6875rem}}.o2-stage[data-device=phone] .o2-css{perspective:1100px;perspective-origin:50% 0}.o2-stage[data-device=phone] .o2-laptop{width:min(84cqw,100cqh);transform:translateY(calc(-29% + var(--turn) * 6%)) rotateX(-16deg);opacity:calc(1 - var(--turn) * .85);cursor:auto}.o2-stage[data-device=phone] .o2-lid{border-radius:12px 12px 5px 5px}.o2-stage[data-device=phone] .o2-screen{border-radius:4px}.o2-stage[data-device=phone] .o2-deck{border-radius:0 0 14px 14px}.o2-stage[data-device=phone] .o2-keys{border-radius:5px}.o2-stage[data-device=phone] .o2-pad{border-radius:6px}@media (max-width:700px){.o2-hero{padding-left:16px;padding-right:16px}}@media (min-width:701px) and (max-height:940px){.o2-hero{padding-top:calc(var(--o2-header) + 12px);padding-bottom:6px}.o2-title{font-size:clamp(1.9rem,5.4vh,3.3rem)}.o2-hero .o2-eyebrow{margin-bottom:6px}.o2-stage{margin-top:4px}}@media (min-width:701px) and (max-height:820px){.o2-hero{padding-top:calc(var(--o2-header) + 8px);padding-bottom:4px}.o2-hero .o2-eyebrow{margin-bottom:4px}.o2-title{font-size:clamp(1.5rem,4.2vh,2.1rem);line-height:1.1}.o2-title .o2-line{display:inline}.o2-stage{margin-top:2px}}@media (prefers-reduced-motion:reduce){.o2 *,.o2 :before,.o2 :after{transition:none!important;animation:none!important}}@media (prefers-reduced-motion:no-preference){body:has(.o2) .cookie-banner{transition:opacity .6s,transform .8s cubic-bezier(.2,.7,.2,1)}html:not([data-o2-cookies=show]) body:has(.o2) .cookie-banner{opacity:0;pointer-events:none;visibility:hidden;transition:none;transform:translateY(calc(100% + 1rem))}}@media (min-width:768px) and (min-height:501px){body:has(.o2) .cookie-banner{width:300px;max-width:none;margin:0;padding:12px 14px 8px;font-size:.8125rem;line-height:1.4;display:block;bottom:16px;left:16px;right:auto}body:has(.o2) .cookie-banner-long{display:none}body:has(.o2) .cookie-banner-short{margin:0;display:block}body:has(.o2) .cookie-banner .cookie-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}body:has(.o2) .cookie-banner .cookie-button{min-height:36px;padding:0 8px;font-size:.8125rem}body:has(.o2) .cookie-banner .cookie-text-button{grid-column:1/-1;min-height:30px;font-size:.8125rem}}@media (min-width:768px) and (max-width:1199px) and (min-height:501px){body:has(.o2) .cookie-banner{width:150px;padding:10px 10px 4px;font-size:.75rem}body:has(.o2) .cookie-banner-short{display:none}body:has(.o2) .cookie-banner-tiny{margin:0;display:block}body:has(.o2) .cookie-banner .cookie-actions{grid-template-columns:1fr;gap:5px}body:has(.o2) .cookie-banner .cookie-button{min-height:32px;font-size:.75rem}body:has(.o2) .cookie-banner .cookie-text-button{font-size:.75rem}}.o2-hero-after{z-index:2;text-align:center;background:var(--background);padding:4px 16px 44px;position:relative}.o2-hero-after .o2-lead{margin-top:0}.o2-hero{background:radial-gradient(ellipse 48% 44% at 50% 56%, var(--halo) 0%, color-mix(in srgb, var(--halo) 73%, transparent) 18%, color-mix(in srgb, var(--halo) 47%, transparent) 36%, color-mix(in srgb, var(--halo) 23%, transparent) 56%, color-mix(in srgb, var(--halo) 10%, transparent) 74%, color-mix(in srgb, var(--halo) 3%, transparent) 88%, transparent 100%), var(--background)}@media (max-width:767px){.o2-hero{height:auto;min-height:0;padding-bottom:0}.o2-stage{height:80vw;margin-top:clamp(10px, calc(2 * var(--o2-u)), 22px);flex:none}}.o2-cta-features,html[data-cta=none] .o2-cta-how,html[data-cta=features] .o2-cta-how{display:none}html[data-cta=features] .o2-cta-features{display:inline-flex}
[data-fx] [data-reveal]{opacity:0;transition:none;transform:translateY(18px)}[data-fx] [data-reveal].in{opacity:1;transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transition-delay:var(--rd,0s);transform:none}[data-fx] [data-linked]{opacity:calc(var(--r,0) * var(--ro,1));transform:translate3d(0, calc((1 - var(--r,0)) * 24px), 0);transition:none}[data-fx] [data-linked][data-shown]{opacity:var(--ro,1);transform:none}@media (prefers-reduced-motion:reduce){[data-fx] [data-reveal]{opacity:1;transform:none}}
