.landing-grain{pointer-events:none;z-index:999;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:300px 300px;position:fixed;inset:0}.home-main{flex-direction:column;display:flex;position:relative}.home-stage{--hero-h:calc(100dvh - 56px);grid-template-rows:auto auto;grid-template-columns:1fr;display:grid;position:relative;overflow:clip}@media (width>=1024px){.home-stage{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);grid-template-rows:var(--hero-h) auto}}.home-stage__canvas{z-index:3;border-bottom:1px solid var(--line-default);background:oklch(6% .01 42);flex-direction:column;grid-area:1/1/-1;justify-content:center;align-self:start;align-items:center;gap:clamp(8px,1.6vw,24px);height:48dvh;padding:clamp(12px,3vw,48px) clamp(12px,4vw,64px);display:flex;position:sticky;top:0;overflow:hidden}@media (width>=1024px){.home-stage__canvas{height:var(--hero-h);border-bottom:none;border-right:1px solid var(--line-default);gap:clamp(12px,1.6vw,24px);padding:clamp(20px,4vw,48px) clamp(16px,4vw,64px)}}.home-mosaic{opacity:0;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);gap:3px;padding:0;animation:1.2s cubic-bezier(.16,1,.3,1) .3s forwards home-mosaic-in;display:grid;position:absolute;inset:0;overflow:hidden}@media (width>=768px){.home-mosaic{grid-template-columns:repeat(5,1fr)}}.home-mosaic__thumb{object-fit:cover;opacity:.13;filter:blur(1.5px)saturate(1.4);width:100%;height:100%;transition:opacity .4s;display:block}@media (prefers-reduced-motion:reduce){.home-mosaic{opacity:1;animation:none}}.home-hero-overlay{z-index:2;height:auto;min-height:var(--hero-h);pointer-events:none;flex-direction:column;grid-area:1/1;justify-content:flex-start;align-items:flex-start;gap:clamp(12px,1.8vw,24px);padding:48dvh clamp(20px,5vw,56px) clamp(48px,8dvh,96px);transition:opacity .48s cubic-bezier(.16,1,.3,1);display:flex;position:relative}@media (width>=1024px){.home-hero-overlay{height:var(--hero-h);border-bottom:1px solid var(--line-default);grid-column:2;justify-content:center;gap:clamp(16px,2vw,30px);min-height:0;padding:clamp(56px,8vw,132px) clamp(48px,7vw,120px) clamp(48px,6vw,88px)}}.home-hero-overlay>*{pointer-events:auto}.home-hero-overlay--faded{opacity:0;pointer-events:none}.home-hero__eyebrow{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-secondary);text-transform:uppercase;margin:0;font-size:.7rem;animation:.4s cubic-bezier(.16,1,.3,1) both landing-rise}.home-hero__headline{font-family:var(--display);letter-spacing:-.02em;color:var(--text-primary);text-transform:uppercase;text-wrap:balance;max-width:6.1ch;margin:0;font-size:clamp(2.4rem,13vw,12rem);font-weight:900;line-height:.86;animation:.55s cubic-bezier(.16,1,.3,1) .1s both landing-rise}@media (width>=1024px){.home-hero__headline{max-width:6.6ch;font-size:clamp(4.75rem,8.6vw,9.6rem)}}.home-hero__deck{font-family:var(--font-mono);color:var(--text-secondary);max-width:34ch;margin:0;font-size:clamp(.85rem,1.1vw,1rem);line-height:1.55;animation:.5s cubic-bezier(.16,1,.3,1) .26s both landing-rise}.home-hero__actions{flex-wrap:wrap;align-items:center;gap:12px;animation:.5s cubic-bezier(.16,1,.3,1) .38s both landing-rise;display:flex}.home-hero__hint{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-secondary);text-transform:uppercase;opacity:.4;align-self:flex-end;margin:auto 0 0;padding-top:clamp(18px,3vw,40px);font-size:.7rem;animation:2.2s ease-in-out .7s infinite home-hint;display:none}@media (width>=1024px){.home-hero__hint{display:block}}.home-hero__hint--used{opacity:0;pointer-events:none;animation:none}@media (prefers-reduced-motion:reduce){.home-hero__eyebrow,.home-hero__deck,.home-hero__headline,.home-hero__actions,.home-hero__hint,.home-hero-overlay{opacity:1;transition:none;animation:none}}.home-canvas-frame{aspect-ratio:1;border:1px solid var(--line-default);will-change:transform, opacity;background:oklch(8% .012 42);flex-shrink:0;width:min(72vw,38dvh,360px);animation:.7s cubic-bezier(.16,1,.3,1) 60ms both landing-rise;position:relative}@media (width>=1024px){.home-canvas-frame{width:min(36vw,70dvh,560px)}}.home-canvas--layer{width:100%;height:100%;transition:opacity .45s cubic-bezier(.16,1,.3,1);display:block;position:absolute;inset:0}.home-canvas--front{opacity:1;z-index:1}.home-canvas--back{opacity:0;z-index:0}.home-canvas-noise{pointer-events:none;width:100%;height:100%;image-rendering:pixelated;mix-blend-mode:normal;z-index:3;opacity:.16;will-change:contents;transition:opacity .7s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.home-canvas-noise--faded{opacity:0}@media (prefers-reduced-motion:reduce){.home-canvas-noise{transition:none;animation:none}}.home-canvas-mark{pointer-events:none;width:14px;height:14px;animation:.5s cubic-bezier(.16,1,.3,1) both landing-fade;position:absolute}.home-canvas-mark:before,.home-canvas-mark:after{content:"";background:var(--accent-primary);position:absolute}.home-canvas-mark:before{width:14px;height:1px}.home-canvas-mark:after{width:1px;height:14px}.home-canvas-mark--tl{animation-delay:.3s;top:-22px;left:-22px}.home-canvas-mark--tl:before{top:13px;left:0}.home-canvas-mark--tl:after{top:0;left:13px}.home-canvas-mark--tr{animation-delay:.36s;top:-22px;right:-22px}.home-canvas-mark--tr:before{top:13px;right:0}.home-canvas-mark--tr:after{top:0;right:13px}.home-canvas-mark--bl{animation-delay:.42s;bottom:-22px;left:-22px}.home-canvas-mark--bl:before{bottom:13px;left:0}.home-canvas-mark--bl:after{bottom:0;left:13px}.home-canvas-mark--br{animation-delay:.48s;bottom:-22px;right:-22px}.home-canvas-mark--br:before{bottom:13px;right:0}.home-canvas-mark--br:after{bottom:0;right:13px}.home-canvas-meta{width:min(72vw,38dvh,360px);font-family:var(--font-mono);letter-spacing:.14em;color:var(--text-secondary);text-transform:uppercase;justify-content:space-between;font-size:.65rem;transition:opacity .48s cubic-bezier(.16,1,.3,1);display:flex}@media (width>=1024px){.home-canvas-meta{width:min(36vw,70dvh,560px)}}.home-canvas-meta--hidden{opacity:0;pointer-events:none}.home-progress{flex-direction:row;gap:4px;width:min(36vw,70dvh,560px);margin:0;padding:0;list-style:none;transition:opacity .48s cubic-bezier(.16,1,.3,1);display:none}.home-mobile-dots{align-items:center;gap:0;transition:opacity .48s cubic-bezier(.16,1,.3,1);display:flex}.home-mobile-dots--hidden{opacity:0;pointer-events:none}.home-mobile-dot{width:var(--touch);height:var(--touch);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.home-mobile-dot:before{content:"";background:oklch(35% .012 42);border-radius:50%;width:6px;height:6px;transition:background .25s cubic-bezier(.16,1,.3,1),width .25s cubic-bezier(.16,1,.3,1),height .25s cubic-bezier(.16,1,.3,1)}.home-mobile-dot--reached:before{background:oklch(55% .018 42)}.home-mobile-dot--current:before{background:var(--accent-primary);width:9px;height:9px}@media (width>=1024px){.home-mobile-dots{display:none}.home-progress{display:flex}}.home-progress__item{font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-secondary);text-transform:uppercase;flex-direction:column;flex:1;gap:6px;font-size:.6rem;transition:color .22s cubic-bezier(.16,1,.3,1);display:flex}.home-progress__btn{width:100%;min-height:var(--touch);cursor:pointer;color:inherit;font:inherit;text-align:left;background:0 0;border:none;flex-direction:column;justify-content:flex-end;gap:6px;margin:0;padding:8px 0;display:flex}.home-progress__item:hover .home-progress__bar,.home-progress__btn:hover .home-progress__bar{opacity:.7;filter:brightness(1.4)}.home-progress__bar{background:oklch(20% .012 42);height:2px;transition:background .22s cubic-bezier(.16,1,.3,1);display:block}.home-progress__item--reached .home-progress__bar{background:var(--accent-primary)}.home-progress__item--current .home-progress__bar{background:var(--accent-primary);height:3px}.home-stage__copy{z-index:1;flex-direction:column;grid-area:2/1;display:flex;position:relative}@media (width>=1024px){.home-stage__copy{grid-area:2/2;min-width:0}}.home-step{opacity:.4;contain:style layout;border-bottom:1px dashed oklch(20% .018 42);flex-direction:column;justify-content:center;gap:14px;min-height:60dvh;padding:clamp(32px,5vw,48px) clamp(24px,6vw,36px) clamp(36px,6vw,80px);transition:opacity .38s cubic-bezier(.16,1,.3,1);display:flex}@media (width>=1024px){.home-step{justify-content:center;min-height:100dvh;padding:clamp(64px,9vw,144px) clamp(48px,7vw,120px)}}.home-step--active{opacity:1}.home-step--active .home-step__index{animation:.35s cubic-bezier(.16,1,.3,1) both step-content-in}.home-step--active .home-step__title{animation:.4s cubic-bezier(.16,1,.3,1) 35ms both step-content-in}.home-step--active .home-step__body{animation:.4s cubic-bezier(.16,1,.3,1) 85ms both step-content-in}.home-step__index{font-family:var(--font-mono);letter-spacing:.18em;color:var(--accent-primary);text-transform:uppercase;align-items:center;gap:12px;font-size:.7rem;display:flex}.home-step__num{color:var(--accent-primary)}.home-step__rule{background:linear-gradient(to right, var(--accent-primary), transparent);flex:0 96px;height:1px}.home-step__kind{color:var(--text-secondary);letter-spacing:.16em;font-size:.65rem}.home-step__title{font-family:var(--display);letter-spacing:-.015em;color:var(--text-primary);text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(2.2rem,7vw,5.5rem);font-weight:900;line-height:.9}.home-step__body{font-family:var(--body);letter-spacing:.01em;color:var(--text-secondary);max-width:38ch;margin:0;font-size:clamp(.95rem,1.05vw,1.05rem);font-weight:500;line-height:1.45}@media (prefers-reduced-motion:reduce){.home-step,.home-step--active .home-step__index,.home-step--active .home-step__title,.home-step--active .home-step__body,.home-progress__item,.home-progress__bar{transition:none;animation:none}.home-step--active .home-step__index,.home-step--active .home-step__title,.home-step--active .home-step__body{opacity:1;transform:none}}.home-cta-section{background:linear-gradient(#0000,oklch(11% .014 42));flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;min-height:55dvh;padding:clamp(48px,8vw,112px) clamp(24px,6vw,88px);display:flex}.home-cta-section>*{opacity:0;transform:translateY(16px)}.home-cta-section--visible>:first-child{animation:.5s cubic-bezier(.16,1,.3,1) forwards landing-rise}.home-cta-section--visible>:nth-child(2){animation:.5s cubic-bezier(.16,1,.3,1) 70ms forwards landing-rise}.home-cta-section--visible>:nth-child(3){animation:.5s cubic-bezier(.16,1,.3,1) .15s forwards landing-rise}.home-cta-section--visible>:nth-child(4){animation:.5s cubic-bezier(.16,1,.3,1) .22s forwards landing-rise}@media (width>=1024px){.home-cta-section{min-height:70dvh;padding:clamp(64px,9vw,144px) clamp(48px,7vw,120px)}}.home-cta-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;color:var(--accent-primary);text-transform:uppercase;margin:0;font-size:.7rem}.home-cta-title{font-family:var(--display);letter-spacing:-.015em;color:var(--text-primary);text-transform:uppercase;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(2.4rem,6vw,4.8rem);font-weight:900;line-height:.92}.home-cta-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.home-cta-fineprint{font-family:var(--font-mono);color:var(--text-secondary);max-width:44ch;margin:0;font-size:.7rem;line-height:1.55}@media (prefers-reduced-motion:reduce){.home-canvas-frame,.home-canvas-mark,.home-canvas-meta,.home-progress,.home-cta-section>*{opacity:1;animation:none;transform:none}}.product-discovery-route{overflow-x:clip}@keyframes landing-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-fade{0%{opacity:0}to{opacity:1}}@keyframes step-content-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes home-mosaic-in{to{opacity:1}}@keyframes home-hint{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:.85;transform:translateY(4px)}}
