:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d11;--bg-subtle:#0e1116;--surface:#12151b;--surface-2:#181c23;--surface-hover:#1d222a;--border:#94a3b81a;--border-strong:#94a3b833;--text-primary:#eef1f5;--text-secondary:#a3abba;--text-muted:#7a8292;--nav-bg:#0e1116b8;--scrim:#0406099e;--dot:#94a3b824;--highlight:#ffffff0d;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--container:1180px;--gutter:clamp(1rem, 4vw, 2rem);--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 1px 2px #02060c66;--shadow-md:0 1px 2px #02060c4d, 0 14px 32px -14px #02060cb3;--shadow-lg:0 2px 6px #02060c59, 0 36px 72px -28px #02060cd9;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--dur-press:.16s;--dur-fast:.2s;--dur-base:.25s}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f8fa;--bg-subtle:#f1f3f6;--surface:#fff;--surface-2:#f4f6f8;--surface-hover:#eef1f4;--border:#0f172a14;--border-strong:#0f172a26;--text-primary:#14171c;--text-secondary:#4a5263;--text-muted:#687083;--nav-bg:#ffffffbd;--scrim:#0f172a66;--dot:#0f172a17;--highlight:#fffc;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 1px 2px #0f172a0d, 0 14px 32px -16px #0f172a29;--shadow-lg:0 2px 6px #0f172a0f, 0 36px 72px -30px #0f172a42}:root{--accent:#4dbaff;--accent-strong:#84d2ff;--accent-soft:#4dbaff1a;--accent-soft-strong:#4dbaff33;--accent-ink:#04182b;--success:#3ecf8e;--code-keyword:#4dbaff;--code-string:#e6c07b;--code-variable:#7fd1c1;--code-property:#eef1f5;--code-punct:#7a8292}:root[data-theme=light]{--accent:#2a72a8;--accent-strong:#1f5b88;--accent-soft:#2a72a814;--accent-soft-strong:#2a72a829;--accent-ink:#fff;--success:#12805a;--code-keyword:#2a72a8;--code-string:#9a5b13;--code-variable:#0f766e;--code-property:#14171c;--code-punct:#687083}:root[data-accent=good-blue]{--accent:#61dafb;--accent-strong:#9be8fd;--accent-soft:#61dafb1a;--accent-soft-strong:#61dafb33;--accent-ink:#062430;--code-keyword:#61dafb;--code-string:#e6c07b;--code-variable:#b4c4ff}:root[data-accent=good-blue][data-theme=light]{--accent:#0a7396;--accent-strong:#075b78;--accent-soft:#0a739614;--accent-soft-strong:#0a739629;--accent-ink:#fff;--code-keyword:#0a7396;--code-string:#9a5b13;--code-variable:#2f5fb3}:root[data-accent=blue]{--accent:#5e9df0;--accent-strong:#8dbaf6;--accent-soft:#5e9df01a;--accent-soft-strong:#5e9df033;--accent-ink:#04142b;--code-keyword:#5e9df0;--code-string:#7fd1c1;--code-variable:#e6c07b}:root[data-accent=blue][data-theme=light]{--accent:#2563c9;--accent-strong:#1b4fa6;--accent-soft:#2563c914;--accent-soft-strong:#2563c929;--accent-ink:#fff;--code-keyword:#2563c9;--code-string:#0f766e;--code-variable:#9a5b13}:root[data-accent=emerald]{--accent:#3ecf8e;--accent-strong:#79e2b3;--accent-soft:#3ecf8e1a;--accent-soft-strong:#3ecf8e33;--accent-ink:#04210f;--code-keyword:#3ecf8e;--code-string:#e2c08d;--code-variable:#8fb8ff}:root[data-accent=emerald][data-theme=light]{--accent:#12805a;--accent-strong:#0b6646;--accent-soft:#12805a14;--accent-soft-strong:#12805a29;--accent-ink:#fff;--code-keyword:#12805a;--code-string:#9a5b13;--code-variable:#2f5fb3}:root[data-accent=ember]{--accent:#ee8b57;--accent-strong:#f6ad85;--accent-soft:#ee8b571a;--accent-soft-strong:#ee8b5733;--accent-ink:#2a1206;--code-keyword:#ee8b57;--code-string:#7fd1c1;--code-variable:#8fb8ff}:root[data-accent=ember][data-theme=light]{--accent:#b84c14;--accent-strong:#9a3d0c;--accent-soft:#b84c1414;--accent-soft-strong:#b84c1429;--accent-ink:#fff;--code-keyword:#b84c14;--code-string:#0f766e;--code-variable:#2f5fb3}:root[data-accent=rose]{--accent:#ef7393;--accent-strong:#f59ab1;--accent-soft:#ef73931a;--accent-soft-strong:#ef739333;--accent-ink:#2b0711;--code-keyword:#ef7393;--code-string:#7fd1c1;--code-variable:#8fb8ff}:root[data-accent=rose][data-theme=light]{--accent:#c22a55;--accent-strong:#a01f44;--accent-soft:#c22a5514;--accent-soft-strong:#c22a5529;--accent-ink:#fff;--code-keyword:#c22a55;--code-string:#0f766e;--code-variable:#2f5fb3}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;-webkit-text-size-adjust:100%;scroll-padding-top:96px}body{font-family:var(--font-sans);background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent;counter-reset:section;margin:0;font-size:1rem;line-height:1.65;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;opacity:.35;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/></svg>");position:fixed;inset:0}.fluid-bg{z-index:0;pointer-events:none;background:radial-gradient(60% 50% at 85% -10%, var(--accent-soft), transparent 70%), radial-gradient(50% 40% at 0% 100%, var(--accent-soft), transparent 70%);position:fixed;inset:0;overflow:hidden}.fluid-bg canvas{mix-blend-mode:screen;opacity:.4;width:100%;height:100%;display:block}:root[data-theme=light] .fluid-bg canvas{mix-blend-mode:multiply;opacity:.22}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}ul,ol{margin:0;padding:0;list-style:none}p{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:600;line-height:1.15}::selection{background:var(--accent-soft-strong);color:var(--text-primary)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:2px solid var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-xs)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}.app{position:relative}.container{width:100%;max-width:var(--container);padding:0 var(--gutter);z-index:1;margin:0 auto;position:relative}.section{counter-increment:section;padding:clamp(5rem,10vw,8.5rem) 0;position:relative}.section__header{max-width:640px;margin-bottom:clamp(2.5rem,5vw,3.75rem)}.section__header--split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:1.5rem 4rem;max-width:none;display:grid}.section__header--split .section__title{margin-bottom:0}.eyebrow{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;margin-bottom:1.1rem;font-size:.75rem;font-weight:500;display:inline-flex}.eyebrow:before{content:counter(section, decimal-leading-zero);color:var(--accent);border-right:1px solid var(--border-strong);margin-right:.75rem;padding-right:.75rem;line-height:1}.section__title{letter-spacing:-.04em;margin-bottom:1rem;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.06}.section__subtitle{color:var(--text-secondary);max-width:52ch;font-size:1.0625rem;line-height:1.6}.skip-link{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);z-index:3000;transition:transform var(--dur-base) var(--ease-out);padding:.7rem 1.1rem;font-weight:600;position:fixed;top:1rem;left:1rem;transform:translateY(-160%)}.skip-link:focus{transform:none}.scroll-progress{background:var(--accent);transform-origin:0;z-index:2500;pointer-events:none;width:100%;height:2px;position:fixed;top:0;left:0;transform:scaleX(0)}[data-reveal]{opacity:0}[data-reveal].is-visible{opacity:1;animation:reveal .7s var(--ease-out) backwards;animation-delay:var(--reveal-delay,0s)}@keyframes reveal{0%{opacity:0;translate:0 18px}}.intro{opacity:0}.app.is-ready .intro{opacity:1;animation:intro-rise .8s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 70ms)}.app.is-ready .intro--visual{animation:intro-visual 1s var(--ease-out) backwards;animation-delay:.18s}@keyframes intro-rise{0%{opacity:0;filter:blur(4px);translate:0 16px}}@keyframes intro-visual{0%{opacity:0;translate:0 24px;scale:.97}}.spotlight{isolation:isolate;position:relative}.spotlight:before,.spotlight:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;position:absolute;inset:0}.spotlight:before{z-index:1;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%), var(--accent), transparent 65%);-webkit-mask-composite:xor;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.spotlight:after{z-index:-1;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), var(--accent-soft), transparent 60%)}@media (hover:hover) and (pointer:fine){.spotlight:hover:before,.spotlight:hover:after{opacity:1}}.btn{border-radius:var(--radius-sm);height:44px;font-family:var(--font-sans);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:transform var(--dur-press) var(--ease-out), background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;padding:0 1.15rem;font-size:.9375rem;font-weight:500;display:inline-flex}.btn i{transition:transform var(--dur-base) var(--ease-out);font-size:.85em}.btn:active{transform:scale(.97)}.btn--primary{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px 0 #ffffff40, var(--shadow-sm)}.btn--ghost{background:var(--surface);color:var(--text-primary);border-color:var(--border-strong);box-shadow:inset 0 1px 0 var(--highlight)}.btn--lg{height:48px;padding:0 1.35rem;font-size:1rem}.btn--sm{border-radius:9px;height:36px;padding:0 .9rem;font-size:.875rem}@media (hover:hover) and (pointer:fine){.btn--primary:hover{background:var(--accent-strong)}.btn--ghost:hover{background:var(--surface-hover);border-color:var(--border-strong)}.btn:hover .icon-nudge-x{transform:translate(3px)}.btn:hover .icon-nudge-y{transform:translateY(2px)}}.badge{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);height:32px;color:var(--text-secondary);box-shadow:inset 0 1px 0 var(--highlight);align-items:center;gap:.5rem;padding:0 .8rem;font-size:.8125rem;font-weight:500;display:inline-flex}.badge i{color:var(--text-muted);font-size:.8em}.badge--dot:before{content:"";background:var(--success);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 45%, transparent);animation:status-pulse 2.4s var(--ease-out) infinite;border-radius:50%}@keyframes status-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 45%, transparent)}70%,to{box-shadow:0 0 0 7px color-mix(in srgb, var(--success) 0%, transparent)}}.chip{background:var(--surface-2);height:28px;color:var(--text-secondary);border:1px solid var(--border);white-space:nowrap;border-radius:8px;align-items:center;padding:0 .65rem;font-size:.8125rem;font-weight:500;display:inline-flex}.chip--mono{font-family:var(--font-mono);background:0 0;font-size:.75rem;font-weight:400}.chip-row{flex-wrap:wrap;gap:.45rem;display:flex}.tag{border-radius:var(--radius-xs);background:var(--accent-soft);height:24px;color:var(--accent-strong);font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap;align-items:center;padding:0 .55rem;font-size:.72rem;display:inline-flex}.icon-tile{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border:1px solid var(--accent-soft-strong);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.social-icon{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);box-shadow:inset 0 1px 0 var(--highlight);transition:transform var(--dur-press) var(--ease-out), color var(--dur-fast) ease, border-color var(--dur-fast) ease, background-color var(--dur-fast) ease;justify-content:center;align-items:center;display:inline-flex}.social-icon:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.social-icon:hover{color:var(--accent);border-color:var(--accent-soft-strong);background:var(--accent-soft);transform:translateY(-2px)}.social-icon:hover:active{transform:translateY(-2px)scale(.94)}}.brand-mark{width:34px;height:34px;transition:transform var(--dur-press) var(--ease-out);border-radius:50%;flex-shrink:0;display:inline-block;position:relative}.brand-mark__ring{background:conic-gradient(from 210deg, var(--accent), var(--accent-soft-strong) 45%, var(--accent-strong) 75%, var(--accent));transition:transform .9s var(--ease-out);border-radius:50%;position:absolute;inset:0}.brand-mark__photo{object-fit:cover;object-position:50% 18%;border:2px solid var(--bg);background:var(--surface-2);border-radius:50%;width:calc(100% - 4px);height:calc(100% - 4px);position:absolute;inset:2px}.brand-mark__status{background:var(--success);border:2px solid var(--bg);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.nav--scrolled .brand-mark__photo,.nav--scrolled .brand-mark__status,.nav--open .brand-mark__photo,.nav--open .brand-mark__status{border-color:var(--surface)}.nav__brand:active .brand-mark{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.nav__brand:hover .brand-mark__ring{transform:rotate(180deg)}}.brand-mark--lg{width:72px;height:72px}.brand-mark--lg .brand-mark__ring{animation:1.4s linear infinite spin}.brand-mark--lg .brand-mark__photo{border-width:3px;width:calc(100% - 6px);height:calc(100% - 6px);inset:3px}.brand-mark--lg .brand-mark__status{border-width:3px;width:16px;height:16px;bottom:1px;right:1px}@keyframes spin{to{transform:rotate(360deg)}}.loader-container{background:var(--bg);z-index:3000;transition:opacity .4s var(--ease-out), visibility 0s linear .4s;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;display:flex;position:fixed;inset:0}.loader-container.is-leaving{opacity:0;visibility:hidden;pointer-events:none}.loader-container.is-leaving .loader-inner{transform:scale(.96)}.loader-inner{transition:transform .4s var(--ease-out);flex-direction:column;align-items:center;gap:1.1rem;display:flex}.loader-mark{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem}.nav{z-index:1000;pointer-events:none;padding-top:14px;position:fixed;top:0;left:0;right:0}.nav__bar{pointer-events:auto;border:1px solid #0000;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;height:60px;padding:0 10px 0 14px;transition:background-color .3s,border-color .3s,box-shadow .3s;display:flex}.nav--scrolled .nav__bar,.nav--open .nav__bar{background:var(--nav-bg);border-color:var(--border);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-md);-webkit-backdrop-filter:blur(16px)saturate(1.4)}.nav__brand{letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:.65rem;font-size:1rem;font-weight:600;display:inline-flex}.nav__links-wrap{position:relative}.nav__links{align-items:center;gap:2px;display:flex}.nav__link{border-radius:var(--radius-pill);height:36px;color:var(--text-secondary);transition:color var(--dur-fast) ease;align-items:center;padding:0 .85rem;font-size:.875rem;font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.nav__link:hover{color:var(--text-primary)}}.nav__links--active{pointer-events:none;background:var(--accent-soft-strong);border-radius:var(--radius-pill);transition:clip-path .3s var(--ease-in-out), opacity var(--dur-fast) ease;position:absolute;inset:0}.nav__links--active .nav__link{color:var(--text-primary)}:root[data-theme=light] .nav__links--active .nav__link{color:var(--accent-strong)}.nav__actions{align-items:center;gap:.5rem;display:flex}.icon-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;box-shadow:inset 0 1px 0 var(--highlight);transition:transform var(--dur-press) var(--ease-out), color var(--dur-fast) ease, border-color var(--dur-fast) ease;justify-content:center;align-items:center;display:inline-flex;position:relative}.icon-btn:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.icon-btn:hover{color:var(--text-primary);border-color:var(--border-strong)}}.theme-toggle i{transition:opacity var(--dur-base) var(--ease-out), transform .3s var(--ease-out), filter var(--dur-base) var(--ease-out);font-size:.9rem;position:absolute}.theme-toggle .theme-toggle__off{opacity:0;filter:blur(2px);transform:rotate(-90deg)scale(.6)}.theme-toggle .theme-toggle__on{opacity:1;filter:blur();transform:none}.nav__toggle{flex-direction:column;justify-content:center;gap:4px;display:none}.nav__toggle-line{width:16px;height:1.5px;transition:transform .3s var(--ease-out), opacity var(--dur-fast) ease;background:currentColor;border-radius:2px}.nav__toggle[aria-expanded=true] .nav__toggle-line:first-child{transform:translateY(5.5px)rotate(45deg)}.nav__toggle[aria-expanded=true] .nav__toggle-line:nth-child(2){opacity:0;transform:scaleX(.4)}.nav__toggle[aria-expanded=true] .nav__toggle-line:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.nav__mobile{pointer-events:auto;background:var(--nav-bg);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-lg);-webkit-backdrop-filter:blur(16px)saturate(1.4);transform-origin:100% 0;opacity:0;visibility:hidden;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), visibility 0s linear var(--dur-fast);border-radius:16px;flex-direction:column;gap:2px;margin-top:8px;padding:8px;display:none;transform:translateY(-6px)scale(.97)}.nav__mobile.is-open{opacity:1;visibility:visible;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out), visibility 0s;transform:none}.nav__mobile .nav__link{border-radius:var(--radius-sm);opacity:0;height:46px;transition:opacity var(--dur-fast) ease, transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) ease, color var(--dur-fast) ease;justify-content:space-between;padding:0 .9rem;font-size:.975rem;transform:translateY(-4px)}.nav__mobile.is-open .nav__link{opacity:1;transition-delay:calc(var(--i,0) * 35ms + 40ms);transform:none}.nav__mobile .nav__link[aria-current=true]{color:var(--text-primary);background:var(--accent-soft)}.nav__mobile .nav__link i{color:var(--text-muted);font-size:.75rem}.nav__mobile .btn{height:46px;margin-top:6px}.hero{align-items:center;min-height:min(100dvh,940px);padding:120px 0 clamp(4rem,8vw,6rem);display:flex;position:relative;overflow:hidden}.hero:before{content:"";background-image:radial-gradient(var(--dot) 1px, transparent 1px);pointer-events:none;background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 70% 45%,#000 20%,#0000 75%);mask-image:radial-gradient(70% 60% at 70% 45%,#000 20%,#0000 75%)}.hero>.container{width:100%}.hero__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(2.5rem,6vw,5rem);display:grid}.hero__eyebrow-row{align-items:center;gap:.75rem;margin-bottom:1.75rem;display:flex}.hero__greeting{color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.125rem;font-weight:500}.hero__name{letter-spacing:-.05em;color:var(--text-primary);margin-bottom:1rem;font-size:clamp(2.75rem,6.6vw,5rem);font-weight:600;line-height:.98}.hero__subtitle{letter-spacing:-.02em;min-height:1.6em;color:var(--text-secondary);align-items:center;margin-bottom:2rem;font-size:clamp(1.125rem,2.2vw,1.5rem);font-weight:400;display:flex}.hero__subtitle .cursor{background:var(--accent);border-radius:1px;flex-shrink:0;width:2px;height:1.05em;margin-left:3px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero__badges{flex-wrap:wrap;gap:.45rem;max-width:520px;margin-bottom:2.25rem;display:flex}.hero__actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:2.25rem;display:flex}.hero__social{gap:.5rem;display:flex}.hero__visual{perspective:1200px;justify-content:center;align-items:center;min-height:520px;display:flex;position:relative}.hero__glow{background:radial-gradient(circle, var(--accent-soft-strong), transparent 70%);filter:blur(24px);pointer-events:none;border-radius:50%;width:420px;height:420px;position:absolute;top:50%;left:50%;translate:-50% -50%}.hero__window-wrap{width:min(100%,460px);transform-style:preserve-3d;will-change:transform;position:relative}.code-window{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-strong);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-lg);position:relative;overflow:hidden}.code-window__bar{background:var(--bg-subtle);border-bottom:1px solid var(--border);align-items:center;gap:1rem;height:46px;padding:0 1rem;display:flex}.code-window__dots{gap:6px;display:flex}.code-window__dots span{background:var(--border-strong);border-radius:50%;width:10px;height:10px}.code-window__tab{background:var(--surface);border:1px solid var(--border);height:28px;font-family:var(--font-mono);color:var(--text-secondary);border-radius:8px;align-items:center;gap:.5rem;padding:0 .75rem;font-size:.72rem;display:inline-flex}.code-window__tab:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.code-window__body{font-family:var(--font-mono);margin:0;padding:1.1rem 0 1.3rem;font-size:.8125rem;line-height:1.85;overflow-x:auto}.code-window__body code{font:inherit;display:block}.code-line{padding-right:1.25rem;display:flex}.code-line:nth-child(3){background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.code-line__no{text-align:right;width:3rem;color:var(--text-muted);opacity:.55;-webkit-user-select:none;user-select:none;flex-shrink:0;padding-right:1.1rem}.code-line__text{white-space:pre}.tok-k{color:var(--code-keyword)}.tok-v{color:var(--code-variable)}.tok-p{color:var(--code-property)}.tok-s{color:var(--code-string)}.tok-x{color:var(--code-punct)}.app.is-ready .code-line{animation:code-line-in .5s var(--ease-out) backwards;animation-delay:calc(.42s + var(--l,0) * 45ms)}@keyframes code-line-in{0%{opacity:0;translate:-6px}}.hero__portrait{background:var(--surface);border:1px solid var(--border-strong);width:108px;height:108px;box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-lg);border-radius:30px;padding:4px;animation:7s ease-in-out infinite float;position:absolute;top:-36px;right:-28px;transform:translateZ(40px)}.hero__portrait img{object-fit:cover;object-position:50% 20%;border-radius:25px;width:100%;height:100%}.hero__portrait-status{background:var(--success);border:4px solid var(--surface);border-radius:50%;width:20px;height:20px;position:absolute;bottom:-4px;right:-4px}@keyframes float{0%,to{translate:0}50%{translate:0 -8px}}.about__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:clamp(2.5rem,6vw,5.5rem);display:grid}.about__grid .section__header{margin-bottom:2rem}.about__lead{letter-spacing:-.02em;color:var(--text-primary);max-width:34ch;margin-bottom:1.5rem;font-size:clamp(1.25rem,2.2vw,1.5rem);font-weight:500;line-height:1.45}.about__paragraphs p:not(.about__lead){color:var(--text-secondary);max-width:60ch;margin-bottom:1rem}.about__paragraphs p:last-child{margin-bottom:0}.panel{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-md)}.facts-card{padding:.5rem}.facts-card__title{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:1rem 1rem .75rem;font-size:.75rem;font-weight:500}.fact-item{align-items:center;gap:.9rem;padding:.8rem 1rem;display:flex}.fact-item+.fact-item{border-top:1px solid var(--border)}.fact-icon{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);width:36px;height:36px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex}.fact-item>div{min-width:0}.fact-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.1rem;font-size:.6875rem;font-weight:400}.fact-value{color:var(--text-primary);overflow-wrap:anywhere;font-size:.9375rem;font-weight:500}.skills__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem;display:grid}.skill-card{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-md);flex-direction:column;gap:1.25rem;padding:clamp(1.5rem,3vw,2rem);display:flex;position:relative;overflow:hidden}.skill-card--feature{grid-row:span 2;justify-content:space-between;min-height:340px}.skill-card__title{letter-spacing:-.025em;margin-bottom:.35rem;font-size:1.25rem;font-weight:600}.skill-card--feature .skill-card__title{letter-spacing:-.035em;font-size:clamp(1.5rem,2.6vw,1.875rem)}.skill-card__desc{color:var(--text-secondary);font-size:.9375rem}.skill-card__head{align-items:flex-start;gap:1rem;display:flex}.skill-card--feature .skill-card__head{flex-direction:column;gap:1.5rem}.skill-card--feature{background:radial-gradient(70% 60% at 100% 0%, var(--accent-soft), transparent 70%), var(--surface)}.timeline{max-width:960px;position:relative}.timeline__rail{background:var(--border-strong);width:1px;position:absolute;top:8px;bottom:8px;left:calc(191px + 1.5rem);overflow:hidden}.timeline__fill{background:linear-gradient(180deg, var(--accent), var(--accent-soft-strong));transform-origin:50% 0;width:100%;height:100%;display:block;transform:scaleY(0)}.timeline__item{grid-template-columns:180px 24px minmax(0,1fr);grid-template-areas:"meta marker card";column-gap:1.5rem;padding-bottom:1.25rem;display:grid;position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__meta{text-align:right;grid-area:meta;padding-top:1.6rem}.timeline__date{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:-.01em;font-size:.78rem}.timeline__marker{background:var(--bg);border:2px solid var(--border-strong);width:11px;height:11px;transition:border-color .5s,box-shadow .5s,background-color .5s;transition-delay:calc(var(--reveal-delay,0s) + .25s);border-radius:50%;grid-area:marker;justify-self:center;margin-top:1.75rem;position:relative}.timeline__item.is-visible .timeline__marker{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft-strong)}.timeline__card{grid-area:card;padding:clamp(1.25rem,3vw,1.75rem)}.timeline__head{align-items:center;gap:.9rem;margin-bottom:1rem;display:flex}.timeline__logo{object-fit:cover;border:1px solid var(--border);background:#fff;border-radius:12px;flex-shrink:0;width:44px;height:44px}.timeline__company{letter-spacing:-.02em;font-size:1.125rem;font-weight:600}.timeline__role{color:var(--accent);letter-spacing:-.005em;margin-top:.15rem;font-size:.875rem;font-weight:500}.timeline__desc{color:var(--text-secondary);max-width:64ch;margin-bottom:1.15rem;font-size:.9375rem}.projects__list{flex-direction:column;gap:.75rem;display:flex}.project-row{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);min-height:132px;box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-sm);cursor:pointer;outline-offset:4px;transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), border-color var(--dur-fast) ease;grid-template-columns:1.75rem 56px minmax(0,1.5fr) minmax(0,1fr) auto;grid-template-areas:"index icon main tags cta";align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;display:grid}.project-row:focus-visible{border-radius:var(--radius-lg)}.project-row__index{font-family:var(--font-mono);color:var(--text-muted);grid-area:index;font-size:.75rem}.app-icon{width:56px;height:56px;box-shadow:0 0 0 1px var(--border), var(--shadow-sm);transition:transform .4s var(--ease-out);background:#fff;border-radius:15px;flex-shrink:0;grid-area:icon;display:block;overflow:hidden}.app-icon img{object-fit:cover;width:100%;height:100%}.project-row__main{grid-area:main;min-width:0}.project-row__title{letter-spacing:-.02em;flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;margin-bottom:.35rem;font-size:1.125rem;font-weight:600;display:flex}.project-row__title small{font-family:var(--font-mono);letter-spacing:0;color:var(--text-muted);font-size:.72rem;font-weight:400}.project-row__summary{color:var(--text-secondary);max-width:60ch;font-size:.9rem;line-height:1.55}.project-row__tags{flex-wrap:wrap;grid-area:tags;gap:.35rem;display:flex}.project-row__cta{color:var(--text-secondary);white-space:nowrap;transition:color var(--dur-fast) ease;grid-area:cta;align-items:center;gap:.75rem;font-size:.875rem;font-weight:500;display:inline-flex}.project-row__arrow{border:1px solid var(--border-strong);width:36px;height:36px;color:var(--text-muted);transition:transform .3s var(--ease-out), color var(--dur-fast) ease, background-color var(--dur-fast) ease, border-color var(--dur-fast) ease;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.project-row:active{transform:scale(.995)}@media (hover:hover) and (pointer:fine){.project-row:hover{border-color:var(--border-strong);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-md);transform:translateY(-2px)}.project-row:hover:active{transform:translateY(-2px)scale(.995)}.project-row:hover .project-row__cta{color:var(--text-primary)}.project-row:hover .project-row__arrow{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);transform:rotate(-45deg)}.project-row:hover .app-icon{transform:scale(1.04)rotate(-3deg)}}.project-modal-overlay{z-index:2000;background:var(--scrim);-webkit-backdrop-filter:blur(6px);animation:overlay-in var(--dur-base) var(--ease-out) both;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.project-modal-overlay[data-state=closing]{animation:overlay-out .2s var(--ease-out) both}@keyframes overlay-in{0%{opacity:0}}@keyframes overlay-out{to{opacity:0}}.project-modal{overscroll-behavior:contain;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border-strong);width:100%;max-width:620px;max-height:min(88vh,760px);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-lg);animation:modal-in .3s var(--ease-out) both;position:relative;overflow-y:auto}.project-modal-overlay[data-state=closing] .project-modal{animation:modal-out .2s var(--ease-out) both}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}@keyframes modal-out{to{opacity:0;transform:translateY(6px)scale(.98)}}.project-modal__close{z-index:1;position:absolute;top:1rem;right:1rem}.project-modal__close.icon-btn{border-radius:50%}.project-modal__body{padding:clamp(1.5rem,4.5vw,2.25rem)}.project-modal__title-row{align-items:center;gap:1rem;padding-right:2.75rem;display:flex}.project-modal__icon{object-fit:cover;width:64px;height:64px;box-shadow:0 0 0 1px var(--border), var(--shadow-sm);background:#fff;border-radius:17px;flex-shrink:0}.project-modal__title{letter-spacing:-.035em;font-size:clamp(1.375rem,3vw,1.75rem)}.project-modal__title small{font-family:var(--font-mono);letter-spacing:0;color:var(--text-muted);margin-top:.35rem;font-size:.75rem;font-weight:400;display:block}.project-modal__tags{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.4rem;margin:1.5rem 0;padding-bottom:1.5rem;display:flex}.project-modal__desc{color:var(--text-secondary);margin-bottom:1.75rem;line-height:1.75}.project-modal__actions{flex-wrap:wrap;gap:.6rem;display:flex}#contact{padding-bottom:clamp(2.5rem,5vw,4rem)}.contact-panel{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--highlight), var(--shadow-lg);isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);padding:clamp(1.5rem,5vw,3.5rem);display:grid;position:relative;overflow:hidden}.contact-panel:before{content:"";z-index:-1;background:radial-gradient(50% 70% at 100% 0%, var(--accent-soft-strong), transparent 70%), radial-gradient(var(--dot) 1px, transparent 1px);background-size:auto,20px 20px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(225deg,#000,#0000 60%);mask-image:linear-gradient(225deg,#000,#0000 60%)}.contact-panel__intro .section__subtitle{max-width:42ch}.contact-panel__actions{flex-direction:column;justify-content:center;min-width:0;display:flex}.contact-email{border-radius:var(--radius-lg);background:var(--bg-subtle);border:1px solid var(--border-strong);box-shadow:inset 0 1px 0 var(--highlight);transition:transform var(--dur-press) var(--ease-out), border-color var(--dur-fast) ease, background-color var(--dur-fast) ease;align-items:center;gap:.9rem;padding:1rem 1.1rem;display:flex}.contact-email:active{transform:scale(.985)}.contact-email__icon{background:var(--accent);width:44px;height:44px;color:var(--accent-ink);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.contact-email__text{letter-spacing:-.025em;min-width:0;color:var(--text-primary);overflow-wrap:anywhere;flex:1;font-size:clamp(1rem,2.1vw,1.3rem);font-weight:500}.contact-email__arrow{color:var(--text-muted);transition:transform .3s var(--ease-out), color var(--dur-fast) ease;flex-shrink:0;font-size:.85rem}@media (hover:hover) and (pointer:fine){.contact-email:hover{border-color:var(--accent)}.contact-email:hover .contact-email__arrow{color:var(--accent);transform:translate(3px,-3px)}}.contact-card__hint{color:var(--text-muted);margin-top:.9rem;font-size:.875rem}.contact-meta{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.contact-card__social{border-top:1px solid var(--border);gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.footer{z-index:1;padding:0 0 2rem;position:relative}.footer__inner{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.75rem;padding:2.5rem 0 2rem;display:flex}.footer__brand{letter-spacing:-.02em;align-items:center;gap:.65rem;font-weight:600;display:inline-flex}.footer__tagline{color:var(--text-muted);margin-top:.5rem;font-size:.875rem}.footer__nav{flex-wrap:wrap;gap:.25rem 1.5rem;display:flex}.footer__nav a{color:var(--text-secondary);transition:color var(--dur-fast) ease;font-size:.875rem}@media (hover:hover) and (pointer:fine){.footer__nav a:hover{color:var(--text-primary)}}.footer__social{gap:.5rem;display:flex}.footer__bottom{border-top:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;font-size:.75rem;display:flex}.back-to-top{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);height:34px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:transform var(--dur-press) var(--ease-out), color var(--dur-fast) ease, border-color var(--dur-fast) ease;align-items:center;gap:.5rem;padding:0 .9rem;font-size:.8125rem;font-weight:500;display:inline-flex}.back-to-top i{transition:transform .3s var(--ease-out);font-size:.7rem}.back-to-top:active{transform:scale(.96)}@media (hover:hover) and (pointer:fine){.back-to-top:hover{color:var(--text-primary);border-color:var(--border-strong)}.back-to-top:hover i{transform:translateY(-2px)}}@media (width<=1024px){.nav__links-wrap,.nav__cta--desktop{display:none}.nav__toggle{display:inline-flex}.nav__mobile{display:flex}}@media (width<=960px){.hero{min-height:0;padding-top:112px}.hero__grid{grid-template-columns:1fr}.hero__visual{min-height:0;padding:3.5rem 1.75rem 1rem 0}.project-row{grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"icon main cta""icon tags cta";row-gap:.9rem}.project-row__index{display:none}.about__grid{grid-template-columns:1fr}.skills__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-card--feature{grid-area:auto/1/auto/-1;min-height:0}.section__header--split{grid-template-columns:1fr;gap:1rem}.contact-panel{grid-template-columns:1fr}}@media (width<=760px){.timeline__rail{left:5px}.timeline__item{grid-template-columns:11px minmax(0,1fr);grid-template-areas:"marker meta"".card";column-gap:1.1rem;padding-bottom:1.5rem}.timeline__meta{text-align:left;margin-bottom:.6rem;padding-top:0}.timeline__marker{margin-top:.3rem}}@media (width<=640px){.section{padding:4.5rem 0}.skills__grid{grid-template-columns:1fr}.hero__actions{grid-template-columns:1fr 1fr;display:grid}.hero__actions .btn{width:100%;padding:0 .75rem}.hero{padding-bottom:1rem}.hero__visual{min-height:0;padding:1.5rem 0 1rem}.contact-panel{padding:1.5rem 1.25rem}.contact-email{gap:.75rem;padding:.75rem}.contact-email__icon{border-radius:10px;width:38px;height:38px}.contact-email__text{letter-spacing:-.015em;font-size:.9375rem}.contact-email__arrow{display:none}.hero__visual{padding:3rem 0 .5rem}.hero__glow{width:280px;height:280px}.hero__portrait{border-radius:24px;width:84px;height:84px;top:-30px;right:-6px}.hero__portrait img{border-radius:19px}.code-window__body{padding:.9rem 0 1rem;font-size:.72rem}.code-line{padding-right:.9rem}.code-line__no{width:2.25rem;padding-right:.8rem}.project-row{grid-template-columns:52px minmax(0,1fr);grid-template-areas:"icon cta""main main""tags tags";align-items:start;gap:1rem;padding:1.15rem}.project-row .app-icon{border-radius:14px;width:52px;height:52px}.project-row__cta{place-self:center end}.footer__inner,.footer__bottom{flex-direction:column;align-items:flex-start}.project-modal-overlay{align-items:flex-end;padding:0}.project-modal{max-width:none;max-height:88dvh;padding-bottom:env(safe-area-inset-bottom);animation:sheet-in .45s var(--ease-drawer) both;border-bottom:0;border-radius:24px 24px 0 0}.project-modal:before{content:"";background:var(--border-strong);border-radius:2px;width:36px;height:4px;margin:10px auto 0;display:block}.project-modal-overlay[data-state=closing] .project-modal{animation:sheet-out .24s var(--ease-out) both}.project-modal__actions .btn{flex:100%}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes sheet-out{to{transform:translateY(100%)}}@media (width<=380px){.hero__actions{grid-template-columns:1fr}.nav__brand-text{font-size:.9375rem}}@media (height<=640px) and (orientation:landscape) and (width>=961px){.hero{min-height:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal].is-visible,.app.is-ready .intro,.app.is-ready .intro--visual{animation:.4s backwards fade-only}.hero__portrait,.badge--dot:before{animation:none}.brand-mark--lg .brand-mark__ring{animation-duration:3s}.nav__brand:hover .brand-mark__ring{transform:none}.app.is-ready .code-line{animation:.4s backwards fade-only}.project-modal,.project-modal-overlay[data-state=closing] .project-modal{animation-name:fade-only}.project-modal-overlay[data-state=closing] .project-modal{animation-direction:reverse}.nav__mobile,.nav__mobile .nav__link,.project-row,.project-row:hover,.project-row:hover:active,.project-row:hover .app-icon,.social-icon:hover{transform:none}}@keyframes fade-only{0%{opacity:0}}
