html.motion-gate [data-reveal]:not(.is-revealed){opacity:0;transform:translateY(1rem)}[data-reveal]{transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0s)}@media (prefers-reduced-motion:reduce){html.motion-gate [data-reveal]:not(.is-revealed){opacity:1;transform:none}[data-reveal]{transition:none}}
.lo-site{--s-ground:var(--lo-paper);--s-page:var(--lo-ground);--s-void:var(--lo-paper);--s-panel:var(--lo-card);--s-glow:var(--lo-moon);--s-text:var(--lo-ink);--s-dim:var(--lo-ink-muted);--s-faint:var(--lo-ink-soft);--s-hair:color-mix(in srgb, var(--lo-ink) 16%, transparent);--s-hair-2:color-mix(in srgb, var(--lo-ink) 9%, transparent);--s-ring-line:color-mix(in srgb, var(--lo-ink) 22%, transparent);--s-star:color-mix(in srgb, var(--lo-ink) 55%, transparent);--s-accent:var(--lo-ink);--s-mark:var(--lo-sun);--s-tag:var(--lo-ink);--s-live:var(--lo-ink);--background:var(--s-ground);--foreground:var(--s-text);--muted-foreground:var(--s-dim);--border:var(--s-hair);--card:var(--s-panel);--primary:var(--lo-coral);--primary-foreground:var(--lo-ink);--accent:var(--s-hair-2);--accent-foreground:var(--s-text);--ring:var(--lo-focus);--radius:4px;isolation:isolate;background:var(--s-ground) var(--s-page);color:var(--s-text);font-family:var(--font-sans-stack), "Bricolage Grotesque", system-ui, sans-serif;-webkit-font-smoothing:antialiased;font-weight:300;position:relative;overflow:clip}.dark .lo-site{--s-ground:var(--lo-navy);--s-page:linear-gradient(180deg, var(--lo-deep) 0, var(--lo-deep) 320px, var(--lo-navy) 1100px, var(--lo-navy) calc(100% - 1100px), var(--lo-navy-glow) 100%);--s-void:var(--lo-deep);--s-panel:var(--lo-navy);--s-glow:var(--lo-navy-glow);--s-text:var(--lo-paper);--s-dim:var(--lo-moon);--s-faint:color-mix(in srgb, var(--lo-moon) 80%, transparent);--s-hair:color-mix(in srgb, var(--lo-paper) 14%, transparent);--s-hair-2:color-mix(in srgb, var(--lo-paper) 8%, transparent);--s-ring-line:color-mix(in srgb, var(--lo-paper) 18%, transparent);--s-star:var(--lo-paper);--s-accent:var(--lo-sun);--s-mark:transparent;--s-tag:var(--lo-sun);--s-live:var(--lo-mint);--lo-focus:var(--lo-sun)}html:has(.lo-site) body{background:var(--lo-paper)}html.dark:has(.lo-site) body{background:var(--lo-deep)}.lo-site>div{z-index:1;position:relative}.lo-site>div.bg-background,.lo-site>div>footer.bg-background{background:0 0}.lo-site:before{content:"";z-index:0;pointer-events:none;border:1px solid var(--s-ring-line);background:radial-gradient(ellipse 60% 30% at 50% 0%, color-mix(in srgb, var(--lo-moss) 55%, transparent), transparent 70%);border-radius:50%;width:3200px;height:2800px;margin-left:-1600px;position:absolute;bottom:-2400px;left:50%}.dark .lo-site:before{border-color:color-mix(in srgb, var(--lo-mint) 42%, transparent);background:radial-gradient(ellipse 70% 26% at 50% 0%, color-mix(in srgb, var(--lo-moss) 16%, var(--lo-deep)) 0%, color-mix(in srgb, var(--lo-soil) 6%, var(--lo-deep)) 40%, var(--lo-deep) 100%);box-shadow:0 -10px 60px color-mix(in srgb, var(--lo-mint) 20%, transparent), 0 -2px 14px color-mix(in srgb, var(--lo-mint) 26%, transparent)}.lo-site a{color:inherit}.lo-site :focus-visible{outline:2px solid var(--lo-focus);outline-offset:3px}.lo-site>div>header.sticky{background:color-mix(in srgb, var(--s-ground) 88%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.2);border-bottom-color:var(--s-hair-2)}.lo-site>div>header.sticky>div{max-width:1312px}.lo-site>div>header.sticky a.bg-primary{color:var(--s-text);border:1px solid var(--s-hair);background:0 0;border-radius:999px;padding-inline:20px;font-weight:400}.lo-site>div>header.sticky a.bg-primary:hover{border-color:var(--s-text);opacity:1}.lo-site>div>footer{border-top-color:var(--s-hair-2)}.lo-site>div>footer>div{max-width:1312px}.lo-site>div>footer h2{font-family:var(--font-mono-face), "DM Mono", monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--s-faint);font-size:11px;font-weight:400}.s-mono{font-family:var(--font-mono-face), "DM Mono", ui-monospace, monospace;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:400;line-height:1.5}.s-display{letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(52px,8.6vw,116px);font-weight:600;line-height:.94}.s-h1{letter-spacing:-.05em;text-wrap:balance;margin:0;font-size:clamp(44px,6.4vw,88px);font-weight:600;line-height:.98}.s-h2{letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(36px,4.6vw,64px);font-weight:600;line-height:1}.s-h3{letter-spacing:-.03em;margin:0;font-size:clamp(24px,2.4vw,34px);font-weight:600;line-height:1.08}.s-lede{color:var(--s-dim);max-width:36em;margin:0;font-size:clamp(18px,1.6vw,21px);font-weight:300;line-height:1.5}.s-body{color:var(--s-dim);margin:0;font-size:17px;font-weight:300;line-height:1.6}.s-accent{color:var(--s-accent);background:linear-gradient(transparent 62%, var(--s-mark) 62% 92%, transparent 92%);padding:0 .04em}.s-faint{color:var(--s-faint)}.s-tag{color:var(--s-tag)}.s-wrap{box-sizing:border-box;width:100%;max-width:1312px;margin:0 auto;padding-inline:64px}.s-section{padding-top:clamp(96px,12vw,168px)}.s-rule{border:0;border-top:1px solid var(--s-hair-2);margin:0}.s-grid-3{border-top:1px solid var(--s-hair);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.s-grid-3>*{border-right:1px solid var(--s-hair-2);padding:32px 32px 8px 0}.s-grid-3>*+*{padding-left:32px}.s-grid-3>:last-child{border-right:0}.s-grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;display:grid}.s-stack>*+*{margin-top:18px}.s-btn{background:var(--lo-coral);min-height:56px;color:var(--lo-ink);border:2px solid var(--lo-ink);letter-spacing:-.01em;box-shadow:0 0 0 0 color-mix(in srgb, var(--lo-coral) 40%, transparent);border-radius:999px;align-items:center;gap:12px;padding:0 28px;font-size:17px;font-weight:600;text-decoration:none;transition:box-shadow .4s,transform .4s;display:inline-flex}.lo-site a.s-btn{color:var(--lo-ink)}.s-btn:hover{box-shadow:0 0 0 8px color-mix(in srgb, var(--lo-coral) 26%, transparent)}.s-link{min-height:44px;color:var(--s-dim);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.s-link:hover{color:var(--s-text)}.s-line-link{text-decoration:underline;-webkit-text-decoration-color:var(--s-hair);text-decoration-color:var(--s-hair);text-underline-offset:6px}.s-line-link:hover{text-decoration-color:currentColor}.s-stars{pointer-events:none;background-image:radial-gradient(var(--s-star) 1px, transparent 1.4px), radial-gradient(var(--s-star) .8px, transparent 1.2px), radial-gradient(var(--lo-sun) 1px, transparent 1.4px);opacity:.45;background-position:7px 13px,31px 5px,70px 120px;background-size:97px 89px,53px 61px,211px 197px;position:absolute;inset:0}html:not(.dark) .lo-site .s-stars{opacity:.22}.s-hero .s-stars{-webkit-mask-image:linear-gradient(#000 25%,#0000 92%);mask-image:linear-gradient(#000 25%,#0000 92%)}.s-svg-text{font-family:var(--font-mono-face), "DM Mono", monospace;letter-spacing:.14em;text-transform:uppercase;fill:var(--s-dim)}.s-svg-faint{fill:var(--s-faint)}.s-svg-ring{fill:none;stroke:var(--s-ring-line)}.s-svg-ring-2{fill:none;stroke:var(--s-hair-2)}.s-svg-ink{stroke:var(--lo-ink)}.s-svg-label{fill:var(--s-text);font-weight:300}@keyframes s-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes s-spin{to{transform:rotate(360deg)}}@keyframes s-twinkle{0%,to{opacity:.3}50%{opacity:.6}}@keyframes s-breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.06)}}.s-bob{transform-box:fill-box;animation:5s ease-in-out infinite s-bob}.s-spin{transform-box:view-box;transform-origin:50%;animation:240s linear infinite s-spin}.s-spinr{transform-box:view-box;transform-origin:50%;animation:360s linear infinite reverse s-spin}.s-tw{animation:6s ease-in-out infinite s-twinkle}.s-breathe{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite s-breathe}.s-hero{isolation:isolate;min-height:max(980px,100svh);position:relative;overflow:clip}.s-hero-ground{z-index:-2;background:radial-gradient(ellipse 70% 60% at 50% 78%, color-mix(in srgb, var(--s-glow) 85%, transparent) 0%, transparent 72%);position:absolute;inset:0}html:not(.dark) .lo-site .s-hero-ground{background:radial-gradient(ellipse 70% 60% at 50% 78%, var(--lo-card) 0%, transparent 64%)}.s-hero-copy{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:26px;padding-top:clamp(64px,9vh,112px);display:flex;position:relative}.s-hero-copy .s-lede{max-width:560px}.s-hero-ctas{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 30px;margin-top:6px;display:flex}.s-hero-sky{z-index:-1;transform-origin:50%;width:1300px;height:1300px;margin:-650px 0 0 -650px;position:absolute;top:740px;left:50%}.s-hero-sky svg{width:100%;height:100%;overflow:visible}.s-hero-legend{z-index:2;color:var(--s-faint);flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute;top:50%;right:40px}.s-hero-legend li:first-child{color:var(--s-tag)}.s-hero-legend li:before{content:"○ "}.s-hero-legend li:first-child:before{content:"● "}.s-hero-foot{z-index:2;color:var(--s-faint);position:absolute;bottom:36px}.s-hero-foot.left{left:40px}.s-hero-foot.center{flex-direction:column;align-items:center;gap:10px;display:flex;left:50%;transform:translate(-50%)}.s-hero-foot.center:after{content:"";background:linear-gradient(var(--s-text), transparent);width:1px;height:36px}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.s-hero-sky{animation:linear both s-hero-out;animation-timeline:scroll(root);animation-range:0 100svh}@keyframes s-hero-out{0%{opacity:1;transform:scale(1)}to{opacity:.25;transform:scale(.66)translateY(-40px)}}}}.s-pull-head{padding-bottom:24px}.s-pull-track{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;display:grid;position:relative}.s-pull-steps{margin:0;padding:0;list-style:none}.s-pull-step{border-bottom:1px solid var(--s-hair-2);flex-direction:column;justify-content:center;gap:18px;min-height:92svh;padding:48px 0;display:flex}.s-pull-step:last-child{border-bottom:0}.s-pull-n{color:var(--s-tag)}.s-pull-stage{place-items:center;height:calc(100svh - 64px);min-height:520px;display:grid;position:sticky;top:64px}.s-pull-frame{aspect-ratio:1;border:1px solid var(--s-hair);background:radial-gradient(circle at 50% 50%, var(--s-glow), var(--s-void) 70%);border-radius:4px;width:min(100%,78svh);position:relative;overflow:hidden}html:not(.dark) .lo-site .s-pull-frame{background:radial-gradient(circle at 50% 50%, var(--lo-card), var(--s-void) 75%)}.s-pull-frame svg{width:100%;height:100%;position:absolute;inset:0}.s-world{transform-box:view-box;transform-origin:50%;transform:scale(var(--s-zoom,3.2));transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.s-layer{transition:opacity .9s}.s-pull[data-step="1"]{--s-zoom:3.2}.s-pull[data-step="2"]{--s-zoom:1.55}.s-pull[data-step="3"]{--s-zoom:.72}.s-pull[data-step="4"]{--s-zoom:.36}.s-pull[data-step="1"] .s-layer-orbit,.s-pull[data-step="1"] .s-layer-galaxy,.s-pull[data-step="2"] .s-layer-galaxy,.s-pull[data-step="1"] .s-layer-universe,.s-pull[data-step="2"] .s-layer-universe,.s-pull[data-step="3"] .s-layer-universe{opacity:0}.s-pull-scale{color:var(--s-faint);position:absolute;bottom:14px;left:16px}.s-pull-scale span{display:none}.s-pull[data-step="1"] .s-pull-scale span:first-child,.s-pull[data-step="2"] .s-pull-scale span:nth-child(2),.s-pull[data-step="3"] .s-pull-scale span:nth-child(3),.s-pull[data-step="4"] .s-pull-scale span:nth-child(4){display:inline}.s-pull-ruler{gap:6px;display:flex;position:absolute;bottom:14px;right:16px}.s-pull-ruler i{background:var(--s-hair);width:18px;height:2px}.s-pull[data-step="1"] .s-pull-ruler i:nth-child(-n+1),.s-pull[data-step="2"] .s-pull-ruler i:nth-child(-n+2),.s-pull[data-step="3"] .s-pull-ruler i:nth-child(-n+3),.s-pull[data-step="4"] .s-pull-ruler i:nth-child(-n+4){background:var(--s-tag)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.s-pull-track{view-timeline:--s-pull block}.s-world{transition:none;animation:linear both s-pull-zoom;animation-timeline:--s-pull;animation-range:contain}.s-layer{transition:none}.s-layer-orbit{animation:linear both s-pull-orbit;animation-timeline:--s-pull;animation-range:contain}.s-layer-galaxy{animation:linear both s-pull-galaxy;animation-timeline:--s-pull;animation-range:contain}.s-layer-universe{animation:linear both s-pull-universe;animation-timeline:--s-pull;animation-range:contain}@keyframes s-pull-zoom{0%,16%{transform:scale(3.2)}34%,46%{transform:scale(1.55)}62%,72%{transform:scale(.72)}90%,to{transform:scale(.36)}}@keyframes s-pull-orbit{0%,14%{opacity:0}30%,to{opacity:1}}@keyframes s-pull-galaxy{0%,44%{opacity:0}60%,to{opacity:1}}@keyframes s-pull-universe{0%,70%{opacity:0}88%,to{opacity:1}}}}.s-cols-3{border-top:1px solid var(--s-hair);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.s-cols-3>*{padding:36px 36px 12px 0}.s-cols-3>*+*{border-left:1px solid var(--s-hair-2);padding-left:36px}.s-cols-4{border-top:1px solid var(--s-hair);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.s-cols-4>*{padding:32px 28px 12px 0}.s-cols-4>*+*{border-left:1px solid var(--s-hair-2);padding-left:28px}.s-list{border-top:1px solid var(--s-hair);margin:0;padding:0;list-style:none}.s-list>li{border-bottom:1px solid var(--s-hair-2);justify-content:space-between;align-items:baseline;gap:24px;padding:20px 0;display:flex}.s-list-dated>li{justify-content:flex-start}.s-list-dated>li>.s-mono{color:var(--s-faint);flex:0 0 120px}.s-panel{border:1px solid var(--s-hair);background:radial-gradient(circle at 50% 50%, var(--s-glow), var(--s-void) 72%);border-radius:4px;position:relative;overflow:hidden}html:not(.dark) .lo-site .s-panel{background:radial-gradient(circle at 50% 50%, var(--lo-card), var(--s-void) 80%)}.s-close{text-align:center;flex-direction:column;align-items:center;gap:36px;padding-bottom:clamp(96px,12vw,160px);display:flex}.s-huge{letter-spacing:-.06em;text-wrap:balance;margin:0;font-size:clamp(56px,10vw,136px);font-weight:600;line-height:.92}.s-fine{color:var(--s-faint);flex-wrap:wrap;justify-content:center;gap:8px 22px;margin:0;padding:0;list-style:none;display:flex}.s-pill{border:1px solid var(--s-hair);color:var(--s-tag);border-radius:999px;padding:2px 10px;display:inline-block}.s-chip{border:1px solid var(--s-hair);min-height:44px;color:var(--s-dim);border-radius:999px;align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}.s-chip[aria-current=page]{border-color:var(--s-text);color:var(--s-text)}.s-onpage{flex-wrap:wrap;gap:10px;display:flex}.s-faq details{border-bottom:1px solid var(--s-hair-2);padding:22px 0}.s-faq summary{cursor:pointer;letter-spacing:-.02em;justify-content:space-between;align-items:center;gap:24px;min-height:44px;font-size:20px;font-weight:600;list-style:none;display:flex}.s-faq summary::-webkit-details-marker{display:none}.s-faq summary:after{content:"+";color:var(--s-faint);font-size:26px;font-weight:300}.s-faq details[open] summary:after{content:"−"}.s-faq p{margin:10px 0 0}.s-dl{grid-template-columns:40px 1fr;gap:18px 12px;margin:0;display:grid}.s-dl dt{color:var(--s-tag);padding-top:4px}.s-dl dd{color:var(--s-dim);margin:0;font-size:17px;line-height:1.55}.s-dl dd strong{color:var(--s-text);font-weight:600}.s-steps{counter-reset:s-step;margin:0;padding:0;list-style:none}.s-num{border:2px solid var(--lo-ink);width:44px;height:44px;color:var(--lo-ink);border-radius:50%;place-items:center;font-size:18px;font-weight:600;display:inline-grid}.s-switch{align-items:center;gap:12px;display:inline-flex}.s-switch b{background:var(--lo-mint);border:2px solid var(--lo-ink);border-radius:999px;width:44px;height:24px;position:relative}.s-switch b:after{content:"";background:var(--lo-paper);border:2px solid var(--lo-ink);box-sizing:border-box;border-radius:50%;width:16px;height:16px;position:absolute;top:2px;right:2px}.s-price{letter-spacing:-.05em;font-size:clamp(56px,7vw,88px);font-weight:600;line-height:1}.s-plan{border:1px solid var(--s-hair);border-radius:4px;flex-direction:column;gap:24px;padding:40px;display:flex}.s-plan ul{margin:0;padding:0;list-style:none}.s-plan li{border-top:1px solid var(--s-hair-2);color:var(--s-dim);padding:12px 0}.s-plan li:before{content:"○";color:var(--s-tag);margin-right:12px}.s-band{border:1px solid var(--s-hair);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding:clamp(28px,4vw,56px);display:grid}.s-talk{background:var(--lo-paper);color:var(--lo-ink);border:1px solid var(--s-hair);--lo-focus:var(--lo-ink);border-radius:4px;padding:clamp(20px,3vw,40px)}.s-talk:empty{display:none}.s-talk a{color:var(--lo-ink)}.s-theme{color:var(--s-faint);justify-content:flex-end;align-items:center;gap:14px;padding:18px 0;display:flex}.s-theme button{border:1px solid var(--s-hair);min-width:44px;min-height:44px;color:var(--s-dim);cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border-radius:999px;padding:0 14px}.s-theme button[aria-pressed=true]{border-color:var(--s-text);color:var(--s-text)}@media (prefers-reduced-motion:reduce){.s-bob,.s-spin,.s-spinr,.s-tw,.s-breathe{animation:none}.s-world,.s-layer{transition:none}.s-pull .s-world{animation:none;transform:scale(.72)}.s-pull .s-layer{opacity:1;animation:none}.s-btn{transition:none}}@media (max-width:760px){.s-wrap{padding-inline:16px}.dark .lo-site{--s-page:linear-gradient(180deg, var(--lo-deep) 0, var(--lo-deep) 220px, var(--lo-navy) 760px, var(--lo-navy) calc(100% - 900px), var(--lo-navy-glow) 100%)}.lo-site:before{width:1500px;height:1500px;margin-left:-750px;bottom:-1220px}.s-hide-sm{display:none!important}.s-hero{min-height:780px}.s-hero-sky{width:820px;height:820px;margin:-410px 0 0 -410px;top:600px}.s-svg-text,.s-svg-label{display:none}.s-grid-2{grid-template-columns:1fr;gap:56px}.s-cols-3,.s-cols-4{grid-template-columns:1fr;gap:0}.s-cols-3>*,.s-cols-4>*{padding:28px 0 8px}.s-cols-3>*+*,.s-cols-4>*+*{border-left:0;border-top:1px solid var(--s-hair-2);padding-left:0}.s-pull-track{grid-template-columns:1fr;gap:0}.s-pull-stage{z-index:2;background:var(--s-ground);height:50svh;min-height:300px;box-shadow:0 18px 18px var(--s-ground);grid-row:1;top:64px}.s-pull-frame{width:min(100%,44svh)}.s-pull-steps{z-index:1;grid-row:2;position:relative}.s-pull-step{border-bottom:0;justify-content:flex-start;min-height:62svh;padding:4svh 0 0}.s-list-dated>li{flex-direction:column;gap:6px}.s-list-dated>li>.s-mono{flex:none}.s-band{grid-template-columns:1fr}.s-plan{padding:28px}}
