@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/onest-cyrillic-wght-normal.DXI_y_WF.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/onest-latin-ext-wght-normal.CnNj8hVb.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/onest-latin-wght-normal.CUIqqgP9.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--graphite-950:#111214;--graphite-900:#1b1c1f;--graphite-800:#26282c;--graphite-700:#303236;--white-alpha-12:#ffffff1f;--white-alpha-24:#ffffff3d;--zinc-100:#f4f4f5;--zinc-400:#a1a1aa;--orange-500:#ff6a2b;--orange-400:#ff8247;--mint-300:#7df0c4;--pink-300:#ff8cc6;--pink-600:#b24a82;--pink-100:#ffd1e8;--red-400:#f87171;--pink-alpha-24:#ff8cc63d;--pink-alpha-0:#ff8cc600;--black-alpha-16:#00000029;--black-alpha-5:#0000000d;--black-alpha-10:#0000001a;--black-alpha-64:#000000a3;--color-bg:var(--graphite-950);--color-surface:var(--graphite-900);--color-surface-2:var(--graphite-800);--color-surface-3:var(--graphite-700);--color-border:var(--white-alpha-12);--color-border-strong:var(--white-alpha-24);--color-text:var(--zinc-100);--color-text-muted:var(--zinc-400);--color-accent:var(--orange-500);--color-accent-hover:var(--orange-400);--color-on-accent:var(--graphite-950);--color-focus-ring:var(--zinc-100);--color-signal:var(--mint-300);--color-danger:var(--red-400);--color-visual-pink:var(--pink-300);--color-visual-pink-dark:var(--pink-600);--color-visual-pink-light:var(--pink-100);--color-glow:var(--pink-alpha-24);--color-glow-fade:var(--pink-alpha-0);--color-shadow:var(--black-alpha-16);--color-scrim:var(--black-alpha-64);--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:24px;--space-2xl:32px;--space-3xl:40px;--space-4xl:48px;--space-5xl:64px;--space-6xl:80px;--space-7xl:96px;--space-8xl:112px;--space-9xl:128px;--space-1-5:6px;--space-2-5:10px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--radius-2xl:16px;--radius-full:999px;--radius-4:4px;--radius-12:12px;--shadow-xs:0 1px 2px 0 var(--black-alpha-5);--shadow-sm:0 1px 3px 0 var(--black-alpha-10), 0 1px 2px -1px var(--black-alpha-10);--shadow-xl:0 20px 25px -5px var(--black-alpha-10), 0 8px 10px -6px var(--black-alpha-10);--shadow-glass-pill:0 0 10px 0 var(--color-shadow);--glass-fill:color-mix(in srgb, var(--color-surface) 52%, transparent);--glass-fill-hover:color-mix(in srgb, var(--color-surface-2) 72%, transparent);--glass-blur:blur(20px) saturate(160%);--glass-highlight:inset 0 1px 0 0 #ffffff1a, inset 0 -1px 0 0 #0000002e;--font:"Onest Variable", Onest, system-ui, -apple-system, "Segoe UI", sans-serif;--page-margin:16px;--grid-gap:16px;--content-max:1216px;--header-h:66px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.16s;--dur:.32s;color-scheme:dark}@media (width>=768px){:root{--page-margin:32px;--grid-gap:24px}}@media (width>=1024px){:root{--page-margin:48px;--grid-gap:24px}}@media (width>=1280px){:root{--page-margin:112px;--grid-gap:32px}}.t-display{letter-spacing:-4px;font-size:120px;font-weight:500;line-height:120px}.t-h1{letter-spacing:0;font-size:40px;font-weight:500;line-height:48px}.t-h2{letter-spacing:-1px;font-size:32px;font-weight:500;line-height:38px}.t-section{letter-spacing:-.5px;font-size:26px;font-weight:500;line-height:32px}.t-h3{letter-spacing:-.5px;font-size:22px;font-weight:500;line-height:26.4px}.t-h4{font-size:18px;font-weight:500;line-height:21.6px}.t-p-lg{font-size:18px;line-height:27px}.t-p{font-size:16px;line-height:24px}.t-p-sm{font-size:14px;line-height:20px}.t-p-mini{font-size:12px;line-height:16px}@media (width<=767px){.t-h1{letter-spacing:-1px;font-size:32px;line-height:38px}.t-display{letter-spacing:-3px;font-size:88px;line-height:88px}}@media (width<=374px){.t-h1{font-size:28px;line-height:34px}h1,h2{overflow-wrap:break-word}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scrollbar-gutter:stable}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (width>=768px){html{scroll-padding-top:calc(var(--header-h) + var(--space-md))}}html:has(dialog[open]){overflow:hidden}[data-needs-js][hidden]{display:none!important}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font:400 16px/24px var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;margin:0;display:flex}main{flex:1 0 auto}img,video,svg{max-width:100%;display:block}img,video{height:auto}h1,h2,h3,h4,p,figure,dl,dd,ol,ul{margin:0}ol,ul{padding:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.container{width:100%;max-width:calc(var(--content-max) + 2 * var(--page-margin));padding-inline:var(--page-margin);margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--space-md);z-index:100;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);font-weight:500;position:absolute;top:-100px}.skip-link:focus{top:var(--space-md)}.icon{flex:none;width:16px;height:16px}.btn{justify-content:center;align-items:center;gap:var(--space-1-5);height:32px;padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-lg);white-space:nowrap;transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease;border:1px solid #0000;font-size:14px;font-weight:500;line-height:20px;display:inline-flex}.btn--sm{height:28px;padding:var(--space-2xs) var(--space-2-5);border-radius:var(--radius-md)}.btn--lg{height:36px;padding:var(--space-xs) var(--space-2-5)}.btn--xl{height:48px;padding:var(--space-sm) var(--space-lg);gap:var(--space-xs);border-radius:var(--radius-md)}.btn--block{width:100%}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover{background:var(--color-accent-hover)}.btn--secondary{background:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text)}.btn--secondary:hover{background:var(--color-surface-3);border-color:var(--color-border-strong)}.btn--ghost{color:var(--color-text)}.btn--ghost:hover{background:var(--color-surface-2)}@media (pointer:coarse){.btn--sm,.btn:not(.btn--lg):not(.btn--xl),.btn--lg{min-height:44px}}@media (width<=374px){.btn{white-space:normal;text-align:center;height:auto;min-height:44px}.btn--xl{min-height:48px}}.chip{align-items:center;gap:var(--space-1-5);padding:var(--space-2xs) var(--space-2-5);border-radius:var(--radius-full);white-space:nowrap;border:1px solid #0000;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.chip--filled{background:var(--color-surface-2);color:var(--color-text)}.chip--outline{border-color:var(--color-border);color:var(--color-text-muted)}.chip--strong{border-color:var(--color-text);color:var(--color-text)}.chip--overlay{padding:var(--space-2xs) var(--space-xs);background:color-mix(in srgb, var(--color-bg) 80%, transparent);color:var(--color-text);box-shadow:var(--shadow-xs)}@media (width<=767px){.chip{font-size:14px;line-height:20px}}.status-tag{align-items:center;gap:var(--space-2xs);padding:var(--space-xs);border-radius:var(--radius-full);background:var(--color-signal);color:var(--color-on-accent);white-space:nowrap;font-size:12px;font-weight:600;line-height:16px;display:inline-flex}.site-header{z-index:40;padding-block:var(--space-xs);pointer-events:none;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.site-header__inner>*{pointer-events:auto}.nav-pill{justify-content:center;align-items:center;gap:var(--space-xs);height:48px;padding:var(--space-2xs) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:var(--shadow-glass-pill);white-space:nowrap;transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease;font-size:14px;line-height:20px;display:inline-flex}.nav-pill:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.nav-pill--avatar{height:50px;padding:var(--space-2xs) 18px var(--space-2xs) var(--space-2xs);font-weight:500}.nav-pill--avatar img{border-radius:var(--radius-full);object-fit:cover;width:40px;height:40px}.nav-pill--icon{width:50px;height:50px;padding:0}.nav-pill--icon .icon{width:24px;height:24px}.nav-menu{align-items:center;gap:var(--space-3xs);height:48px;padding:var(--space-2xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:var(--shadow-glass-pill);display:flex}.nav-link{height:40px;padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-full);transition:background-color var(--dur-fast) ease;align-items:center;font-size:14px;line-height:20px;display:inline-flex}.nav-link:hover{background:var(--color-surface-2)}@supports (backdrop-filter:blur(1px)){.site-header .nav-pill,.site-header .nav-menu{background:var(--glass-fill);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-glass-pill), var(--glass-highlight)}.site-header .nav-pill:hover{background:var(--glass-fill-hover)}.site-header .nav-link:hover{background:#ffffff14}}.site-header__actions{align-items:center;gap:var(--space-xs);display:flex}.site-header__mobile-only{display:none}@media (width<=767px){.nav-menu{display:none}.site-header{padding-inline:0;position:relative}.site-header__desktop-only{display:none}.site-header__mobile-only{display:inline-flex}.site-header__inner{gap:var(--space-xs)}.site-header .nav-pill{padding-inline:var(--space-sm)}.site-header .nav-pill--avatar{padding-inline:var(--space-2xs) var(--space-sm);gap:var(--space-1-5)}}.nav-pill--avatar .nav-pill__short{display:none}@media (width>=360px) and (width<=429px){.nav-pill--avatar .nav-pill__full{white-space:normal;width:min-content;font-size:13px;line-height:16px}}@media (width<=359px){.nav-pill--avatar .nav-pill__full{display:none}.nav-pill--avatar .nav-pill__short{display:inline}}.breadcrumbs{padding-top:var(--space-2xl);padding-bottom:var(--space-xl)}.breadcrumbs ol{align-items:center;gap:var(--space-xs);color:var(--color-text-muted);flex-wrap:wrap;font-size:14px;line-height:20px;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:var(--space-xs);display:inline-flex}.breadcrumbs li+li:before{content:"/";opacity:.55}.breadcrumbs a{border-radius:var(--radius-4);transition:color var(--dur-fast) ease}.breadcrumbs a:hover,.breadcrumbs [aria-current=page]{color:var(--color-text)}@media (pointer:coarse){.breadcrumbs a{min-height:44px;padding-inline:var(--space-2xs);margin-block:-12px;margin-inline:calc(-1 * var(--space-2xs));align-items:center;display:inline-flex}}@media (width<=767px){.breadcrumbs{padding-top:var(--space-md);padding-bottom:var(--space-md)}}.project-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-12);box-shadow:var(--shadow-sm);transition:border-color var(--dur) ease, transform var(--dur) var(--ease-out), box-shadow var(--dur) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}.project-card:hover{border-color:var(--color-border-strong)}.projects__grid.is-flipping .project-card{transition:none;transform:none}.project-card:focus-visible{outline-offset:2px}@media (hover:hover) and (prefers-reduced-motion:no-preference){.project-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}}.project-card__cover{aspect-ratio:4/3;background:var(--color-surface-2);position:relative;overflow:hidden}.project-card__cover img{object-fit:cover;will-change:transform;width:100%;height:100%}.project-card__chip{top:var(--space-lg);position:absolute}.project-card__chip--sphere{left:var(--space-lg)}.project-card__chip--period{right:var(--space-lg)}.project-card__body{gap:var(--space-sm);padding:var(--space-lg);flex-direction:column;display:flex}.project-card__title{letter-spacing:-.5px;min-height:26.4px;font-size:22px;font-weight:500;line-height:26.4px}.project-card__product{min-height:48px;font-size:16px;line-height:24px}.project-card__status{color:var(--color-text-muted);min-height:40px;font-size:14px;line-height:20px}.project-card__title-row{position:relative}.project-card__title-row.is-cramped .card-sprite{display:none}.card-sprite{margin-top:calc(var(--h) / -2);width:var(--w);height:var(--h);background:var(--src) 0 0 / calc(var(--w) * var(--frames)) var(--h) no-repeat;image-rendering:pixelated;position:absolute;top:50%;right:0}@keyframes card-sprite-in{0%{background-position-x:calc(var(--w) * var(--in-a) * -1)}to{background-position-x:calc(var(--w) * var(--in-b) * -1)}}@keyframes card-sprite-out{0%{background-position-x:calc(var(--w) * var(--out-a) * -1)}to{background-position-x:calc(var(--w) * var(--out-b) * -1)}}@media (prefers-reduced-motion:no-preference){.card-sprite.is-played,.project-card:focus-visible .card-sprite{animation:card-sprite-in calc(var(--in-n) * 1s / 12) steps(var(--in-n), jump-none) forwards}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.project-card:hover .card-sprite{animation:card-sprite-in calc(var(--in-n) * 1s / 12) steps(var(--in-n), jump-none) forwards}.card-sprite.is-leaving{animation:card-sprite-out calc(var(--out-n) * 1s / 12) steps(var(--out-n), jump-none) forwards}}@media (prefers-reduced-motion:reduce){.project-card:is(:hover,:focus-visible) .card-sprite,.card-sprite.is-played{background-position-x:calc(var(--w) * var(--in-b) * -1)}}.card{background:var(--color-surface);border-radius:var(--radius-12);padding:var(--space-xs) var(--space-xl)}.toast-region{z-index:60;top:82px;right:max(var(--page-margin), calc((100vw - var(--content-max)) / 2));gap:var(--space-xs);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--space-sm);width:370px;max-width:calc(100vw - 2 * var(--space-md));padding:var(--space-md) var(--space-lg) var(--space-md) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-12);box-shadow:var(--shadow-xl);pointer-events:auto;transform-origin:100% 0;transition:opacity var(--dur) ease, transform .5s var(--ease-spring);display:flex}.toast[data-state=enter]{opacity:0;transform:translateY(-12px)scale(.92)}.toast[data-state=leave]{opacity:0;transition-duration:var(--dur-fast);transform:translateY(-6px)scale(.98)}.toast .icon{width:20px;height:20px}.toast__text{gap:var(--space-3xs);flex-direction:column;font-size:14px;line-height:20px;display:flex}.toast__title{font-weight:500}.toast--error .toast__title{color:var(--color-danger)}.toast__desc{color:var(--color-text-muted)}@media (width<=767px){.toast-region{top:var(--space-md);left:var(--space-md);right:var(--space-md);align-items:stretch}.toast{transform-origin:top;width:auto}}@media (prefers-reduced-motion:reduce){.toast{transition:none}}.cookie-notice{z-index:55;left:max(var(--page-margin), calc((100% - var(--content-max)) / 2));bottom:var(--space-xl);align-items:center;gap:var(--space-sm);max-width:calc(100vw - 2 * var(--space-md));padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-12);box-shadow:var(--shadow-xl);transition:opacity var(--dur) ease, transform .5s var(--ease-spring);display:flex;position:fixed}.cookie-notice[hidden]{display:none}.cookie-notice[data-state=enter]{opacity:0;transform:translateY(16px)}.cookie-notice[data-state=leave]{opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;transform:translateY(16px)}.cookie-notice__desc{color:var(--color-text-muted);white-space:nowrap;font-size:14px;line-height:20px}.cookie-notice__ok{flex:none}.cookie-notice__ok-short{display:none}.cookie-notice__desc a{color:var(--color-text);text-underline-offset:3px;border-radius:var(--radius-4);transition:color var(--dur-fast) ease;text-decoration:underline}.cookie-notice__desc a:hover{color:var(--color-accent)}@media (width<=767px){.cookie-notice{left:var(--space-md);right:var(--space-md);bottom:calc(var(--space-md) + env(safe-area-inset-bottom));max-width:none;min-height:64px;padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md)}[data-has-sticky-cta] .cookie-notice{bottom:calc(73px + env(safe-area-inset-bottom) + var(--space-xs))}.cookie-notice__desc{white-space:normal;flex:1;min-width:0}.cookie-notice__ok{min-width:64px;min-height:44px}.cookie-notice__ok-long{display:none}.cookie-notice__ok-short{display:inline}}@media (prefers-reduced-motion:reduce){.cookie-notice{transition:none}}.cookie-sprite{width:64px;height:40px;image-rendering:pixelated;background:url(/media/cookie-sprite.png) -256px 0/2496px 40px no-repeat;flex:none}.cookie-sprite[data-sprite=enter]{animation:.333s steps(4,jump-none) forwards cookie-a}.cookie-sprite[data-sprite=idle]{animation:.5s steps(6,jump-none) infinite cookie-b}.cookie-sprite[data-sprite=peek]{animation:.417s steps(5,jump-none) forwards cookie-c}.cookie-sprite[data-sprite=unpeek]{animation:.417s steps(5,jump-none) reverse forwards cookie-c}.cookie-sprite[data-sprite=wait]{animation:1s steps(12,jump-none) infinite cookie-w}.cookie-sprite[data-sprite=chomp]{animation:1s steps(12,jump-none) forwards cookie-d}@keyframes cookie-a{0%{background-position-x:0}to{background-position-x:-192px}}@keyframes cookie-b{0%{background-position-x:-256px}to{background-position-x:-576px}}@keyframes cookie-c{0%{background-position-x:-640px}to{background-position-x:-896px}}@keyframes cookie-w{0%{background-position-x:-960px}to{background-position-x:-1664px}}@keyframes cookie-d{0%{background-position-x:-1728px}to{background-position-x:-2432px}}@media (prefers-reduced-motion:reduce){.cookie-sprite[data-sprite]{animation:none}}.text-link{align-items:center;gap:var(--space-1-5);border-radius:var(--radius-4);color:var(--color-text);transition:color var(--dur-fast) ease;font-size:14px;line-height:20px;display:inline-flex}.text-link .icon{width:14px;height:14px}.text-link:hover{color:var(--color-accent)}@media (pointer:coarse){.text-link{min-height:44px}.cookie-notice__desc a{padding-block:var(--space-sm);margin-block:calc(-1 * var(--space-sm));display:inline-block}}.site-footer{background:var(--color-surface)}.site-footer__inner{gap:var(--space-xl);padding-block:var(--space-3xl);flex-direction:column;display:flex}.site-footer__row{justify-content:space-between;align-items:center;gap:var(--space-xl);flex-wrap:wrap;display:flex}.site-footer__who{gap:var(--space-2xs);flex-direction:column;display:flex}.site-footer__name{font-weight:500}.site-footer__role{color:var(--color-text-muted);font-size:14px;line-height:20px}.site-footer__channels{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}@media (pointer:coarse){.site-footer__channels .btn,.site-footer__legal .btn{min-height:44px}}.site-footer__sep{background:var(--color-border);height:1px}.site-footer__legal{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.site-footer__copy{color:var(--color-text-muted);font-size:14px;line-height:20px}.site-footer__list{display:none}@media (width<=767px){.site-footer__inner{gap:var(--space-md);padding-block:var(--space-xl)}.site-footer__channels,.site-footer__sep{display:none}.site-footer__list{flex-direction:column;display:flex}.site-footer__legal{align-items:flex-start;gap:var(--space-2xs);flex-direction:column}.site-footer__legal .btn{height:auto;padding:var(--space-sm) var(--space-lg)}}.channel-row{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--color-border);min-height:56px;display:flex}.channel-row>.icon{width:20px;height:20px}.channel-row__text{flex-direction:column;flex:1;min-width:0;display:flex}.channel-row__value{overflow-wrap:anywhere;font-size:16px;line-height:24px}.channel-row__text{justify-content:center;min-height:44px}.sticky-cta,.sticky-cta-spacer{display:none}@media (width<=767px){.sticky-cta{z-index:45;padding:12px var(--space-md) calc(12px + env(safe-area-inset-bottom));gap:var(--space-xs);background:var(--color-bg);border-top:1px solid var(--color-border);transition:transform .45s var(--ease-out), visibility 0s linear 0s;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-cta__main{flex:auto;min-width:0}.sticky-cta__mail{flex:none}.sticky-cta[data-hidden=true]{visibility:hidden;transition:transform .35s var(--ease-out), visibility 0s linear .35s;transform:translateY(110%)}.sticky-cta-spacer{height:73px;display:block}}@media (width<=359px){.sticky-cta__mail{width:48px;padding-inline:0}.sticky-cta__mail-label{display:none}}@media (prefers-reduced-motion:reduce){.sticky-cta,.sticky-cta[data-hidden=true]{transition:none}}.sheet{width:100%;max-width:100%;max-height:90vh;padding:var(--space-xs) var(--space-md) calc(var(--space-2xl) + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--color-border);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;background:var(--color-surface);color:var(--color-text);margin:0;position:fixed;inset:auto 0 0}.sheet[open]{align-items:stretch;gap:var(--space-md);flex-direction:column;display:flex}.sheet::backdrop{background:var(--color-scrim)}@media (prefers-reduced-motion:no-preference){.sheet[open]{animation:sheet-in .42s var(--ease-out)}.sheet[open]::backdrop{animation:.3s fade-in}}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet__head{gap:var(--space-xs);margin:calc(-1 * var(--space-xs)) calc(-1 * var(--space-md)) 0;padding:var(--space-xs) var(--space-md) 0;touch-action:none;cursor:grab;flex-direction:column;display:flex;position:relative}.sheet__grabber{border-radius:var(--radius-full);background:var(--color-border-strong);align-self:center;width:36px;height:4px}.sheet__title{letter-spacing:-.5px;align-items:center;min-height:44px;padding-right:52px;font-size:22px;font-weight:500;line-height:26.4px;display:flex}.sheet__email{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-xs) var(--space-sm) var(--space-md);border-radius:var(--radius-lg);background:var(--color-surface-2);display:flex}.sheet__email-value{overflow-wrap:anywhere;align-items:center;min-height:44px;display:inline-flex}.sheet__note{color:var(--color-text-muted);font-size:14px;line-height:20px}.sheet__close{right:var(--space-xs);position:absolute;bottom:0}.sheet__close-btn{border-radius:var(--radius-full);background:var(--color-surface-2);width:44px;height:44px;color:var(--color-text);transition:background-color var(--dur-fast) ease;justify-content:center;align-items:center;display:inline-flex}.sheet__close-btn:hover{background:var(--color-surface-3)}.sheet__close-btn .icon{width:20px;height:20px}.lightbox{background:color-mix(in srgb, var(--color-bg) 96%, transparent);width:100%;max-width:none;height:100%;max-height:none;color:var(--color-text);border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.lightbox[open]{flex-direction:column;display:flex}.lightbox::backdrop{background:var(--color-scrim)}@media (prefers-reduced-motion:no-preference){.lightbox[open]{animation:.2s fade-in}}.lightbox__stage{min-height:0;padding:var(--space-5xl) var(--space-xl) var(--space-md);overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.lightbox__img{object-fit:contain;border-radius:var(--radius-xl);background:var(--color-surface-2);cursor:zoom-in;width:auto;max-width:100%;height:auto;max-height:100%}.lightbox.is-zoomed .lightbox__stage{display:block}.lightbox.is-zoomed .lightbox__img{cursor:zoom-out;max-width:none;max-height:none;margin:auto}.lightbox__caption{max-width:696px;padding:0 var(--space-xl) var(--space-xl);color:var(--color-text-muted);text-align:center;flex:none;margin:0 auto;font-size:14px;line-height:20px}.lightbox__close{top:var(--space-md);right:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);width:44px;height:44px;box-shadow:var(--shadow-glass-pill);color:var(--color-text);transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease;justify-content:center;align-items:center;display:inline-flex;position:absolute}.lightbox__close:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.lightbox__close .icon{width:20px;height:20px}@media (width<=767px){.lightbox__stage{padding:var(--space-6xl) var(--space-md) var(--space-md)}.lightbox__caption{padding:0 var(--space-md) calc(var(--space-md) + env(safe-area-inset-bottom));text-align:left}}.motion:not(.intro-done) [data-intro],.motion:not(.intro-done) [data-card],.motion [data-reveal]:not([data-revealed]){opacity:0;transform:translateY(24px)}
