:root{--cloud:#d97706;--cloud-bright:#fbbf24;--self:#0f766e;--self-bright:#2dd4bf;--c-bg:#fcf9f4;--c-bg2:#f4ece0;--c-ink:#1a1714;--c-ink-soft:#6b6157;--d-bg:#0c0d11;--d-bg2:#15171d;--d-ink:#f3efe9;--d-ink-soft:#9aa0ab;--d-line:#262a32}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:Inter,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;background:var(--d-bg);color:var(--c-ink)}a{text-decoration:none;color:inherit}.split{display:flex;min-height:100svh;width:100%}.panel{position:relative;flex:1 1 50%;display:flex;align-items:center;justify-content:center;padding:clamp(2rem,6vw,6rem) clamp(1.5rem,5vw,5rem);overflow:hidden;transition:flex-grow .55s cubic-bezier(.22,1,.36,1)}.panel .inner{max-width:30rem;width:100%;position:relative;z-index:2}.cloud{background:radial-gradient(120% 90% at 15% 10%,#fffdf9 0%,var(--c-bg) 45%,var(--c-bg2) 100%);color:var(--c-ink)}.selfhost{background:radial-gradient(120% 90% at 85% 90%,#1b1e26 0%,var(--d-bg2) 40%,var(--d-bg) 100%);color:var(--d-ink)}.cloud:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E")}.selfhost:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.6;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(120% 90% at 85% 90%,#000 0%,transparent 75%);mask-image:radial-gradient(120% 90% at 85% 90%,#000 0%,transparent 75%)}@media(min-width:861px)and (hover:hover){.split:hover .panel{flex-grow:.85}.split:hover .panel:hover{flex-grow:1.3}}.eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.4rem}.cloud .eyebrow{color:var(--cloud)}.eyebrow.mono{font-family:JetBrains Mono,monospace;letter-spacing:.02em;text-transform:none;font-size:.8rem;font-weight:500;color:var(--self-bright);border:1px solid var(--d-line);padding:.35rem .7rem;border-radius:6px;background:#ffffff05}.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.eyebrow .cursor{width:8px;height:1.05em;background:var(--self-bright);display:inline-block;animation:blink 1.1s step-end infinite;margin-left:2px}@keyframes blink{50%{opacity:0}}h1{font-weight:700;font-size:clamp(2.5rem,5.4vw,3.9rem);line-height:1.04;letter-spacing:-.025em;margin-bottom:1.1rem}.cloud h1 .accent{color:var(--cloud)}.selfhost h1 .accent{color:var(--self-bright)}.teaser{font-size:1.06rem;line-height:1.6;max-width:26rem}.cloud .teaser{color:var(--c-ink-soft)}.selfhost .teaser{color:var(--d-ink-soft)}.meta{margin-top:1.6rem;display:flex;flex-wrap:wrap;gap:.45rem .9rem;font-size:.84rem}.meta span{display:inline-flex;align-items:center;gap:.4rem}.cloud .meta{color:var(--c-ink-soft)}.selfhost .meta{color:var(--d-ink-soft);font-family:JetBrains Mono,monospace;font-size:.76rem}.cloud .meta .tick{color:var(--cloud)}.selfhost .meta .tick{color:var(--self-bright)}.cta{margin-top:2.3rem;display:inline-flex;align-items:center;gap:.6rem;height:3.1rem;padding:0 1.5rem;border-radius:9px;font-weight:600;font-size:.98rem;letter-spacing:.01em;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,border-color .2s,color .2s}.cta .arrow{transition:transform .3s cubic-bezier(.22,1,.36,1)}.cta:hover{transform:translateY(-2px)}.cta:hover .arrow{transform:translate(4px)}.cloud .cta{background:var(--cloud);color:#fff;box-shadow:0 10px 30px -10px #d977068c}.cloud .cta:hover{box-shadow:0 16px 40px -12px #d97706b3}.selfhost .cta{background:transparent;color:var(--d-ink);border:1px solid #3a3f49}.selfhost .cta:hover{border-color:var(--self-bright);color:var(--self-bright);box-shadow:0 0 0 1px var(--self-bright) inset}.seam{position:fixed;top:0;bottom:0;left:50%;width:1px;z-index:5;pointer-events:none;background:linear-gradient(to bottom,transparent,#c9a86a,transparent);opacity:.5}.badge{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:6;display:flex;flex-direction:column;align-items:center;gap:.55rem;pointer-events:none;text-align:center}.badge .mark{border-radius:13px;box-shadow:0 10px 34px -8px #0000008c,0 0 0 6px #0c0d1159}.badge .choose{font-family:JetBrains Mono,monospace;font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:#cdb38a;background:#0c0d118c;backdrop-filter:blur(4px);padding:.3rem .7rem;border-radius:999px;border:1px solid rgba(232,183,101,.25)}.lang{position:fixed;top:1.1rem;right:1.2rem;z-index:7;display:flex;gap:.15rem;font-family:JetBrains Mono,monospace;font-size:.72rem;background:#14161c99;backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.22rem}.lang button{cursor:pointer;border:0;background:transparent;color:#c9cdd4;padding:.28rem .6rem;border-radius:999px;font:inherit;letter-spacing:.06em;transition:.2s}.lang button.active{background:var(--cloud);color:#1a1410;font-weight:600}.reveal{opacity:0;transform:translateY(14px);animation:rise .8s cubic-bezier(.22,1,.36,1) forwards}.cloud .reveal{animation-delay:.15s}.cloud .d2{animation-delay:.25s}.cloud .d3{animation-delay:.35s}.cloud .d4{animation-delay:.45s}.selfhost .reveal{animation-delay:.22s}.selfhost .d2{animation-delay:.32s}.selfhost .d3{animation-delay:.42s}.selfhost .d4{animation-delay:.52s}.badge{opacity:0;animation:pop .7s cubic-bezier(.22,1,.36,1) .6s forwards}@keyframes rise{to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(max-width:860px){.split{flex-direction:column}.panel{flex:none;min-height:62svh;justify-content:flex-start;padding:5.5rem 1.6rem 4rem}.panel .inner{max-width:34rem}.seam{top:62svh;left:0;right:0;width:auto;height:1px;background:linear-gradient(to right,transparent,#c9a86a,transparent)}.badge{top:62svh}.selfhost:before{-webkit-mask-image:none;mask-image:none;opacity:.4}}@media(max-width:380px){.panel{min-height:60svh}.seam,.badge{top:60svh}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.badge{opacity:1;transform:translate(-50%,-50%)}}
