@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.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{--bg:#0b0c0e;--bg-inset:#08090a;--surface:#121417;--surface-2:#191c21;--surface-3:#21252b;--line:#23272e;--line-strong:#3a4048;--line-input:#5a626d;--text:#e8eaed;--text-dim:#8a9099;--text-faint:#5a626d;--accent:#c6f24e;--accent-dim:#7e9b22;--accent-wash:#c6f24e14;--accent-glow:#c6f24e38;--on-accent:#0b0c0e;--ok:#3ecf8e;--warn:#e8a33d;--danger:#f2685c;--font-display:"Archivo Variable", "Archivo", "Helvetica Neue", Arial, sans-serif;--font-sans:"Inter Variable", "Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", monospace;--display-1:clamp(3.4rem, 1.4rem + 8.6vw, 9.5rem);--display-2:clamp(2.6rem, 1.5rem + 5.4vw, 6.5rem);--display-3:clamp(1.9rem, 1.3rem + 3vw, 3.6rem);--heading:clamp(1.35rem, 1.15rem + 1vw, 2rem);--lead:clamp(1.05rem, .98rem + .5vw, 1.35rem);--body:clamp(.95rem, .93rem + .15vw, 1.0625rem);--body-sm:.875rem;--mono-lg:.8125rem;--mono:.75rem;--mono-sm:.6875rem;--mono-xs:.625rem;--tracking-display:-.05em;--tracking-tight:-.02em;--tracking-mono:.08em;--leading-display:.92;--leading-heading:1.1;--leading-body:1.65;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:2.5rem;--sp-8:3rem;--sp-9:4rem;--sp-10:5rem;--sp-11:6rem;--sp-12:7.5rem;--gutter:clamp(1.25rem, 4vw, 4.75rem);--section-y:clamp(4.5rem, 9vw, 8.75rem);--measure:68ch;--radius-sm:2px;--radius:4px;--radius-pill:999px;--hairline:1px;--dur-fast:.14s;--dur:.32s;--dur-slow:.72s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--stagger:55ms;--z-canvas:0;--z-content:1;--z-header:40;--z-overlay:60;--z-modal:70}@media (prefers-reduced-motion:reduce){:root{--dur-fast:1ms;--dur:1ms;--dur-slow:1ms;--stagger:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}html.lenis{scroll-behavior:auto}[id]{scroll-margin-top:100px}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--body);line-height:var(--leading-body);font-synthesis-weight:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--tracking-display);font-weight:700;font-stretch:88%;line-height:var(--leading-display);text-wrap:balance;margin:0}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}img,svg,canvas{max-width:100%;display:block}svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1em;height:1em}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.mono{font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--sp-3);left:var(--sp-3);z-index:var(--z-modal);padding:var(--sp-2) var(--sp-4);background:var(--accent);color:var(--on-accent);font-family:var(--font-mono);font-size:var(--mono);text-transform:uppercase;letter-spacing:var(--tracking-mono);transition:transform var(--dur) var(--ease-out);position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}@media (max-width:900px){[id]{scroll-margin-top:84px}}.btn{align-items:center;gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);font-weight:500;display:inline-flex}.btn svg{transition:transform var(--dur) var(--ease-out);font-size:1.1em}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}.btn--solid{padding:var(--sp-4) var(--sp-5);background:var(--accent);color:var(--on-accent);border:var(--hairline) solid var(--accent)}.btn--solid:hover:not(:disabled){color:var(--accent);background:0 0;transform:translateY(-2px)}.btn--ghost{padding:var(--sp-4) var(--sp-5);color:var(--text);border:var(--hairline) solid var(--line-input)}.btn--ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-wash);transform:translateY(-2px)}.btn--inline{padding-bottom:var(--sp-2);border-bottom:var(--hairline) solid var(--line-input);color:var(--text)}.btn--inline:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn--inline:hover svg{transform:translate(3px,-3px)}.tag{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:.04em;color:var(--text-dim);border:var(--hairline) solid var(--line);background:var(--surface);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:baseline;gap:.15em;padding:.3em .55em;display:inline-flex}.tag:before{content:"--";color:var(--text-faint)}.tag--accent{color:var(--accent);border-color:var(--accent-dim);background:var(--accent-wash)}.tag--accent:before{color:var(--accent-dim)}.tag--bare:before{content:none}.tag-row{gap:var(--sp-2);flex-wrap:wrap;display:flex}.panel{background:var(--surface);border:var(--hairline) solid var(--line-strong);overflow:hidden}.panel__chrome{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:var(--hairline) solid var(--line-strong);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);display:flex}.panel__dot{background:var(--ok);border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 0 3px #3ecf8e24}.panel__dot--idle{background:var(--text-faint);box-shadow:none}.panel__dot--warn{background:var(--warn);box-shadow:0 0 0 3px #e8a33d24}.panel__status{color:var(--accent);margin-left:auto}.panel__body{padding:var(--sp-4);font-family:var(--font-mono);font-size:var(--mono);color:var(--text-dim);line-height:1.9}.panel--numbered .panel__body{counter-reset:line;padding-left:0}.panel--numbered .panel__body>*{gap:var(--sp-3);counter-increment:line;grid-template-columns:3.25rem 1fr;align-items:baseline;display:grid}.panel--numbered .panel__body>:before{content:counter(line, decimal-leading-zero);color:var(--text-faint);text-align:right;border-right:var(--hairline) solid var(--line);padding-right:var(--sp-3);user-select:none}.section-label{align-items:center;gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);display:flex}.section-label__slash{color:var(--accent)}.section-label__index{color:var(--text-faint)}.status-line{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border:var(--hairline) solid var(--line-strong);background:var(--surface);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:.04em;color:var(--text);display:inline-flex}.status-line__pip{background:var(--ok);border-radius:50%;flex:none;width:7px;height:7px;position:relative}.status-line__pip:after{content:"";background:var(--ok);animation:pip-pulse 2.4s var(--ease-in-out) infinite;border-radius:50%;position:absolute;inset:0}@keyframes pip-pulse{0%{opacity:.6;transform:scale(1)}70%,to{opacity:0;transform:scale(3.2)}}.counter{gap:var(--sp-2);flex-direction:column;display:flex}.counter__value{font-family:var(--font-display);font-weight:700;font-stretch:88%;font-size:var(--display-3);letter-spacing:var(--tracking-display);color:var(--accent);font-variant-numeric:tabular-nums;line-height:1}.counter__label{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim)}.rule{height:var(--hairline);background:var(--line);border:0;margin:0}.bracket{padding:var(--sp-5);position:relative}.bracket:before,.bracket:after{content:"";border:var(--hairline) solid var(--accent-dim);width:10px;height:10px;position:absolute}.bracket:before{border-bottom:0;border-right:0;top:0;left:0}.bracket:after{border-top:0;border-left:0;bottom:0;right:0}.reveal{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger));transform:translateY(18px)}.reveal--clip{clip-path:inset(0 0 100%);transition:opacity var(--dur-slow) var(--ease-out), clip-path var(--dur-slow) var(--ease-out);transform:none}.reveal.is-visible{opacity:1;clip-path:inset(0);transform:none}@media (prefers-reduced-motion:reduce){.reveal,.reveal--clip{opacity:1;clip-path:none;transition:none;transform:none}.status-line__pip:after{animation:none}}.atmosphere{z-index:var(--z-canvas);pointer-events:none;position:fixed;inset:0;overflow:hidden}.atmosphere__rules{inset:0 var(--gutter);background-image:repeating-linear-gradient(to right, var(--line) 0 var(--hairline), transparent var(--hairline) 25%);opacity:.5;position:absolute;-webkit-mask-image:linear-gradient(#0000 0,#000 22% 78%,#0000 100%);mask-image:linear-gradient(#0000 0,#000 22% 78%,#0000 100%)}.atmosphere__glow{aspect-ratio:1;background:radial-gradient(circle at center, var(--accent-glow) 0%, transparent 62%);opacity:.12;width:min(120vw,1500px);transform:translate(-50%, calc(-30vh + var(--scroll-progress,0) * 120vh));will-change:transform;position:absolute;top:0;left:50%}.atmosphere__noise{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;inset:0}.scroll-progress{background:var(--accent);height:2px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;position:absolute;inset:auto 0 -1px}html.has-cursor,html.has-cursor a,html.has-cursor button{cursor:none}html.has-modal,html.has-modal a,html.has-modal button{cursor:auto}html.has-modal a,html.has-modal button{cursor:pointer}html.has-modal .cursor-dot,html.has-modal .cursor-ring{display:none}.cursor-dot,.cursor-ring{z-index:var(--z-overlay);pointer-events:none;opacity:0;transition:opacity var(--dur-fast) linear;position:fixed;top:0;left:0}.cursor-dot.is-visible,.cursor-ring.is-visible{opacity:1}.cursor-dot{background:var(--accent);width:4px;height:4px;margin:-2px 0 0 -2px}.cursor-ring{width:30px;height:30px;margin:-15px 0 0 -15px}.cursor-ring span{background:var(--accent-dim);transition:background var(--dur-fast) var(--ease-out);position:absolute}.cursor-ring span:first-child{width:var(--hairline);top:0;bottom:0;left:50%;transform:translate(-50%)}.cursor-ring span:last-child{height:var(--hairline);top:50%;left:0;right:0;transform:translateY(-50%)}.cursor-ring:after{content:"";border:var(--hairline) solid var(--accent-dim);transition:inset var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);position:absolute;inset:8px}.cursor-ring.is-active:after{border-color:var(--accent);inset:0;transform:rotate(45deg)}.cursor-ring.is-active span{background:var(--accent)}@media (prefers-reduced-motion:reduce){.atmosphere__glow{transform:translate(-50%,10vh)}}.site-header{z-index:var(--z-header);align-items:center;gap:var(--sp-5);height:76px;padding:0 var(--gutter);border-bottom:var(--hairline) solid transparent;transition:background var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);grid-template-columns:auto 1fr auto;display:grid;position:fixed;inset:0 0 auto}.site-header.is-scrolled{backdrop-filter:blur(14px);border-bottom-color:var(--line);background:#0b0c0ed1}.site-header__mark{font-family:var(--font-mono);font-size:var(--mono-lg);letter-spacing:.12em;color:var(--text);font-weight:600}.site-header__mark span{color:var(--accent);animation:1.2s steps(2,end) infinite caret}@keyframes caret{50%{opacity:0}}.site-nav{justify-content:center;align-items:center;gap:clamp(var(--sp-4), 2.5vw, var(--sp-7));font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);display:flex}.site-nav a{transition:color var(--dur-fast) var(--ease-out);position:relative}.site-nav a:before{content:"[";opacity:0;color:var(--accent);transition:opacity var(--dur-fast) var(--ease-out);margin-right:.2em}.site-nav a:after{content:"]";opacity:0;color:var(--accent);transition:opacity var(--dur-fast) var(--ease-out);margin-left:.2em}.site-nav a:hover{color:var(--text)}.site-nav a:hover:before,.site-nav a:hover:after{opacity:1}.site-nav__resume{align-items:center;gap:var(--sp-2);color:var(--accent);display:inline-flex}.site-nav__resume:before,.site-nav__resume:after{content:none!important}.site-header__cta{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border:var(--hairline) solid var(--line-strong);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-self:end;display:inline-flex}.site-header__cta:hover{border-color:var(--accent);color:var(--accent)}.menu-toggle{flex-direction:column;justify-self:end;place-items:center;gap:6px;width:40px;height:40px;display:none}.menu-toggle span{background:var(--text);width:22px;height:1px;transition:transform var(--dur) var(--ease-out);display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}main,footer{z-index:var(--z-content);position:relative}.hero{isolation:isolate;justify-content:flex-end;gap:var(--sp-8);min-height:100svh;padding:132px var(--gutter) var(--sp-8);flex-direction:column;display:flex;position:relative;overflow:hidden}.ambient{width:100%;height:100%;z-index:var(--z-canvas);pointer-events:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(78% 68% at 62% 42%,#000 12%,#0000 74%);mask-image:radial-gradient(78% 68% at 62% 42%,#000 12%,#0000 74%)}.ambient--static{background-image:radial-gradient(circle, var(--text-faint) 1.2px, transparent 1.2px);opacity:.18;background-size:34px 34px}.hero__scene{z-index:var(--z-content);opacity:0;width:100%;min-height:0;transition:opacity 1.4s var(--ease-out) .6s;flex:1 1 0;position:relative}.hero.is-entered .hero__scene{opacity:.9}@media (max-height:640px){.hero__scene{display:none}}.hero__inner{z-index:var(--z-content);gap:clamp(var(--sp-7), 6vh, var(--sp-10));flex-direction:column;margin-top:auto;display:flex;position:relative}.hero__meta{gap:var(--sp-3) var(--sp-6);padding-top:var(--sp-3);border-top:var(--hairline) solid var(--line-strong);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);flex-wrap:wrap;display:flex}.hero__meta span:first-child{color:var(--accent)}.hero__headline{font-size:var(--display-1);max-width:18ch}.hero__line{padding-bottom:.06em;display:block;overflow:hidden}.hero__word{opacity:0;transition:transform .9s var(--ease-out), opacity .9s var(--ease-out);transition-delay:calc(var(--i,0) * 70ms);margin-right:.24em;display:inline-block;transform:translateY(105%)}.hero.is-entered .hero__word{opacity:1;transform:none}.hero__foot{align-items:end;gap:var(--sp-5) clamp(var(--sp-6), 6vw, var(--sp-10));grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.hero__positioning{max-width:46ch;font-size:var(--lead);color:var(--text-dim);letter-spacing:var(--tracking-tight);grid-column:1}.hero__actions{gap:var(--sp-4);flex-wrap:wrap;grid-column:2;display:flex}.hero__foot .status-line{grid-column:1/-1;justify-self:start}@media (prefers-reduced-motion:reduce){.hero__word{opacity:1;transition:none;transform:none}.site-header__mark span{animation:none}}@media (max-width:900px){.site-header{grid-template-columns:1fr auto;height:64px}.site-header__cta{display:none}.menu-toggle{display:flex}.site-nav{align-items:flex-start;gap:var(--sp-5);padding:var(--sp-6) var(--gutter) var(--sp-7);background:var(--bg);border-bottom:var(--hairline) solid var(--line-strong);font-size:var(--mono-lg);visibility:hidden;transition:transform var(--dur) var(--ease-out), visibility var(--dur);flex-direction:column;position:fixed;inset:64px 0 auto;transform:translateY(-120%)}.site-nav.is-open{visibility:visible;transform:none}.hero{padding-top:108px}.hero__foot{grid-template-columns:minmax(0,1fr)}.hero__positioning,.hero__actions{grid-column:1}}@media (min-width:701px) and (max-height:860px){.hero{gap:var(--sp-5);padding-top:100px}.hero__inner{gap:var(--sp-6)}}@media (max-width:700px){.hero{padding-top:96px}.hero__scene{display:none}.hero__inner{gap:var(--sp-6)}}@media (max-width:560px){.hero__headline{max-width:none}.hero__actions .btn{flex:100%;justify-content:space-between}}.section{padding:var(--section-y) var(--gutter);position:relative}.section__head{gap:var(--sp-4);margin-bottom:var(--sp-9);display:grid;position:relative}.section__head:before{content:"";top:calc(var(--sp-5) * -1);height:var(--hairline);background:var(--line-strong);transform-origin:0;transition:transform var(--dur-slow) var(--ease-out);position:absolute;left:0;right:0;transform:scaleX(0)}.section__head.is-visible:before{transform:scaleX(1)}.section__head h2{font-size:var(--display-2);clip-path:inset(0 0 100%);max-width:22ch;transition:clip-path var(--dur-slow) var(--ease-out) .12s}.section__head.is-visible h2{clip-path:inset(0 0 -12%)}.section__intro{max-width:54ch;color:var(--text-dim)}.case{padding-top:var(--sp-6);border-top:var(--hairline) solid var(--line-strong)}.case+.case{margin-top:var(--sp-10)}.case__head{margin-bottom:var(--sp-6)}.case__index{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);display:flex}.case__index span{color:var(--accent)}.case h3{font-size:var(--display-3)}.case__body{gap:clamp(var(--sp-6), 5vw, var(--sp-10));grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:start;display:grid}.case__block{padding-top:var(--sp-4);border-top:var(--hairline) solid var(--line)}.case__block+.case__block{margin-top:var(--sp-5)}.case__label{margin-bottom:var(--sp-2);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--accent)}.case__block p:not(.case__label){color:var(--text-dim);max-width:62ch}.case__integrity{margin-top:var(--sp-5);padding-left:var(--sp-4);border-left:2px solid var(--accent-dim);font-size:var(--body-sm);color:var(--text-dim);max-width:62ch}.case__integrity span{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint);display:block}.case__actions{gap:var(--sp-5);margin-top:var(--sp-6);flex-wrap:wrap;display:flex}.case__aside{gap:var(--sp-6);display:grid}.case__metrics{gap:var(--sp-5);padding:var(--sp-5) 0;border-top:var(--hairline) solid var(--line-strong);border-bottom:var(--hairline) solid var(--line-strong);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.trace__objective{gap:var(--sp-2);padding-bottom:var(--sp-4);margin-bottom:var(--sp-4);border-bottom:var(--hairline) solid var(--line);color:var(--text);font-family:var(--font-sans);font-size:var(--body-sm);line-height:1.5;display:grid}.trace__objective span{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint)}.trace__lines{gap:2px;margin:0;padding:0;list-style:none;display:grid}.trace__line{gap:var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-2) 0;font-size:var(--mono-sm);grid-template-columns:3.1rem minmax(0,1fr) auto;align-items:baseline;line-height:1.55;display:grid}.trace__step{color:var(--text-faint)}.trace__text{color:var(--text-dim);overflow-wrap:anywhere}.trace__note{color:var(--text-faint);text-align:right}.trace__line.is-key{padding-left:var(--sp-3);background:var(--accent-wash);border-left:2px solid var(--accent)}.trace__line.is-key .trace__text{color:var(--text)}.trace__line.is-key .trace__note,.trace__line.is-key .trace__step{color:var(--accent)}.trace__line.is-pending{opacity:.45;min-height:1.85em}.trace__line.is-typing .trace__text{color:var(--text)}.trace__caret{vertical-align:text-bottom;background:var(--accent);width:.55em;height:1em;margin-left:.15em;animation:1s steps(2,end) infinite caret;display:inline-block}.trace__line.is-key{animation:none}.trace__line.is-key.is-landed{animation:key-pulse 1.1s var(--ease-out) 1}@keyframes key-pulse{0%{background:var(--accent);color:var(--on-accent)}to{background:var(--accent-wash)}}.trace__stats{gap:var(--hairline);margin:var(--sp-4) 0 0;background:var(--line);opacity:0;transition:opacity var(--dur-slow) var(--ease-out);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.trace__stats.is-visible{opacity:1}.trace__replay{margin-top:var(--sp-4);padding:var(--sp-2) var(--sp-3);border:var(--hairline) solid var(--line-strong);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out)}.trace__replay:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.trace__replay:disabled{opacity:.35;cursor:default}.flow__stages{gap:0;margin:0;padding:0;list-style:none;display:grid}.flow__stage{gap:var(--sp-3);padding:var(--sp-3) 0;font-size:var(--mono-sm);opacity:0;transition:opacity var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);transition-delay:calc(var(--i,0) * 90ms);grid-template-columns:1.4rem minmax(0,auto) minmax(0,1fr);align-items:baseline;line-height:1.5;display:grid;position:relative;transform:translate(-6px)}.flow__stages.is-live .flow__stage{opacity:1;transform:none}.flow__stage:not(:last-child):before{content:"";width:var(--hairline);background:var(--line-strong);position:absolute;top:1.55em;bottom:-.35em;left:.4rem}.flow__marker{border:var(--hairline) solid var(--line-input);background:var(--surface);width:7px;height:7px;margin-top:.42em}.flow__stage.is-key .flow__marker{border-color:var(--accent);background:var(--accent)}.flow__label{letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text);font-weight:500}.flow__stage.is-key .flow__label{color:var(--accent)}.flow__detail{color:var(--text-dim)}.flow__caption{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:var(--hairline) solid var(--line);font-family:var(--font-sans);font-size:var(--body-sm);color:var(--text-dim)}.trace__stats div{gap:var(--sp-1);padding:var(--sp-3);background:var(--surface-2);display:grid}.trace__stats dt{font-size:var(--mono-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint)}.trace__stats dd{font-size:var(--mono-lg);color:var(--accent);margin:0}.more-list{border-top:var(--hairline) solid var(--line-strong)}.more-row{gap:var(--sp-5);padding:var(--sp-6) 0;border-bottom:var(--hairline) solid var(--line);transition:background var(--dur) var(--ease-out);grid-template-columns:3.5rem minmax(0,1.6fr) minmax(0,1fr);display:grid}.more-row:hover{background:var(--surface)}.more-row__index{font-family:var(--font-mono);font-size:var(--mono);color:var(--text-faint)}.more-row__main{gap:var(--sp-3);display:grid}.more-row h3{font-size:var(--heading)}.more-row__kind{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--accent)}.more-row__description{color:var(--text-dim);max-width:60ch}.more-row__side{gap:var(--sp-4);align-content:start;display:grid}.more-row__metrics{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.more-row__metrics li{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint);gap:2px;display:grid}.more-row__metrics b{font-family:var(--font-display);font-stretch:88%;font-size:var(--heading);letter-spacing:var(--tracking-display);color:var(--accent)}.more-row__links{gap:var(--sp-3);display:grid}.more-row__links a{align-items:center;gap:var(--sp-2);width:fit-content;padding-bottom:var(--sp-1);border-bottom:var(--hairline) solid var(--line-input);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex-wrap:wrap;display:inline-flex}.more-row__links a:hover{color:var(--accent);border-color:var(--accent)}.more-row__links em{font-style:normal;font-size:var(--mono-xs);text-transform:none;letter-spacing:.02em;color:var(--text-faint);flex:1 0 100%}.timeline{border-top:var(--hairline) solid var(--line-strong)}.timeline__item{gap:var(--sp-6);padding:var(--sp-7) 0;border-bottom:var(--hairline) solid var(--line);grid-template-columns:10rem minmax(0,1.5fr) minmax(0,1fr);display:grid}.timeline__period{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint)}.timeline__main{gap:var(--sp-2);display:grid}.timeline__main h3{font-size:var(--heading)}.timeline__org{font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--accent)}.timeline__summary{margin-top:var(--sp-2);color:var(--text-dim);max-width:62ch}.timeline__metrics{gap:var(--sp-5);align-content:start;display:grid}.timeline__metrics .counter__value{font-size:var(--heading)}.about__grid{gap:clamp(var(--sp-6), 6vw, var(--sp-11));grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;display:grid}.about__prose{gap:var(--sp-5);font-size:var(--lead);color:var(--text-dim);max-width:56ch;display:grid}.about__emphasis{padding-top:var(--sp-5);border-top:var(--hairline) solid var(--line-strong);color:var(--text)}.about__capabilities{gap:var(--sp-5);display:grid}.capability{gap:var(--sp-3);padding-top:var(--sp-4);border-top:var(--hairline) solid var(--line);display:grid}.capability__label{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--accent)}.recognition{gap:var(--hairline);margin-top:var(--sp-10);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.recognition p{padding:var(--sp-5);background:var(--bg);font-family:var(--font-mono);font-size:var(--mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim)}.contact{border-top:var(--hairline) solid var(--line-strong)}.contact .section__head .status-line{margin-top:var(--sp-3);width:fit-content}.channels{gap:var(--hairline);background:var(--line-strong);border:var(--hairline) solid var(--line-strong);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.channel{gap:var(--sp-3);padding:var(--sp-6) var(--sp-5);background:var(--bg);min-height:260px;transition:background var(--dur) var(--ease-out);align-content:start;display:grid;position:relative}.channel:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform var(--dur) var(--ease-out);position:absolute;inset:auto 0 0;transform:scaleX(0)}.channel:hover{background:var(--surface)}.channel:hover:after{transform:scaleX(1)}.channel:hover .channel__arrow{color:var(--accent);transform:translate(4px,-4px)}.channel__index,.channel__label{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint)}.channel__icon{color:var(--accent);font-size:26px}.channel__label{color:var(--accent);margin-top:auto}.channel__value{font-family:var(--font-display);font-weight:700;font-stretch:88%;font-size:var(--heading);letter-spacing:var(--tracking-display);overflow-wrap:anywhere}.channel__arrow{top:var(--sp-5);right:var(--sp-5);color:var(--text-dim);transition:transform var(--dur) var(--ease-out), color var(--dur) var(--ease-out);font-size:22px;position:absolute}.contact__foot{justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:var(--hairline) solid var(--line);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-faint);flex-wrap:wrap;display:flex}.contact__foot a{color:var(--text-dim);border-bottom:var(--hairline) solid var(--line-input)}.contact__foot a:hover{color:var(--accent);border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.section__head:before{transition:none;transform:none}.section__head h2{clip-path:none;transition:none}.trace__caret{display:none}.trace__line.is-key.is-landed{animation:none}.trace__stats{opacity:1}.flow__stage{opacity:1;transition:none;transform:none}}@media (max-width:1024px){.case__body{grid-template-columns:minmax(0,1fr)}.timeline__item{grid-template-columns:8rem minmax(0,1fr)}.timeline__metrics{gap:var(--sp-6);grid-column:2;grid-auto-flow:column}.about__grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.more-row{grid-template-columns:2.5rem minmax(0,1fr)}.more-row__side{grid-column:2}.recognition,.channels{grid-template-columns:minmax(0,1fr)}.channel{min-height:0;padding:var(--sp-5)}.channel__arrow{top:var(--sp-4);right:var(--sp-4)}.timeline__item{gap:var(--sp-4);grid-template-columns:minmax(0,1fr)}.timeline__metrics{gap:var(--sp-4);grid-column:1;grid-auto-flow:row}.trace__line{grid-template-columns:2.6rem minmax(0,1fr)}.trace__note{text-align:left;grid-column:2}}.resume{border:var(--hairline) solid var(--line-strong);background:var(--surface);width:min(94vw,900px);max-width:none;height:min(90svh,1080px);color:var(--text);flex-direction:column;padding:0}.resume[open]{display:flex}.resume::backdrop{backdrop-filter:blur(6px);background:#060708d1}.resume__chrome{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:var(--hairline) solid var(--line-strong);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim);display:flex}.resume__chrome-actions{align-items:center;gap:var(--sp-5);margin-left:auto;display:flex}.resume__close{font-family:var(--font-mono);font-size:var(--mono-lg);color:var(--text-dim);transition:color var(--dur-fast) var(--ease-out)}.resume__close:hover{color:var(--accent)}.resume__doc{background:var(--bg-inset);border:0;flex:1;width:100%}.resume__fallback{gap:var(--sp-4);height:100%;padding:var(--sp-6);text-align:center;color:var(--text-dim);place-content:center;justify-items:center;display:grid}.contact__grid{gap:clamp(var(--sp-6), 5vw, var(--sp-9));margin-bottom:var(--sp-9);grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;display:grid}.contact__form-panel,.contact__direct{gap:var(--sp-4);padding-top:var(--sp-4);border-top:var(--hairline) solid var(--line-strong);display:grid}.contact__direct-note{color:var(--text-dim);font-size:var(--body-sm);max-width:40ch}.contact__direct .btn{justify-self:start}.form{gap:var(--sp-5);display:grid}.form__field{gap:var(--sp-2);display:grid}.form__field label{font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-dim)}.form__field input,.form__field textarea{width:100%;padding:var(--sp-3) var(--sp-4);background:var(--surface);border:var(--hairline) solid var(--line-input);color:var(--text);font-family:var(--font-sans);font-size:var(--body);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border-radius:0}.form__field textarea{resize:vertical;min-height:8rem;line-height:1.6}.form__field input:hover,.form__field textarea:hover{border-color:var(--text-dim)}.form__field input:focus,.form__field textarea:focus{border-color:var(--accent);background:var(--surface-2);box-shadow:0 0 0 3px var(--accent-wash);outline:none}.form__field input[aria-invalid=true],.form__field textarea[aria-invalid=true]{border-color:var(--danger)}.form__error{font-family:var(--font-mono);font-size:var(--mono-sm);color:var(--danger)}.form__verify-row{isolation:isolate;position:relative}.form__field--verify.is-verifying input#contact-email{border-color:var(--line-strong);color:var(--text-dim);padding-right:54%}.form__otp{inset-block:0;pointer-events:none;clip-path:inset(0 0 0 100%);width:52%;transition:clip-path var(--dur) var(--ease-out);align-items:center;display:flex;position:absolute;right:0;overflow:hidden}.form__field--verify.is-verifying .form__otp{pointer-events:auto;clip-path:inset(0)}.form__otp-inner{align-items:center;gap:var(--sp-3);width:100%;height:100%;padding:0 var(--sp-3);background:var(--surface-2);border:var(--hairline) solid var(--accent);box-shadow:-12px 0 24px -12px #000000b3, inset 0 0 0 100vmax var(--accent-wash);opacity:0;transition:transform var(--dur) var(--ease-out), opacity var(--dur-fast) var(--ease-out);display:flex;transform:translate(6%)}.form__field--verify.is-verifying .form__otp-inner{opacity:1;transform:translate(0)}.form__otp-label{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--mono-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--accent);white-space:nowrap;display:flex}.form__otp-dot{border-radius:var(--radius-pill);background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 0 var(--accent-glow);animation:otp-pulse 2s var(--ease-in-out) infinite}@keyframes otp-pulse{50%{box-shadow:0 0 0 5px #0000}}.form__otp-entry{--otp-track:.34em;font-family:var(--font-mono);font-size:var(--mono-lg);width:calc(6ch + 5 * var(--otp-track));flex:none;position:relative}.form__otp .form__otp-input{width:100%;padding:var(--sp-2) 0;box-shadow:none;color:var(--text);font-family:var(--font-mono);font-size:var(--mono-lg);letter-spacing:var(--otp-track);background:0 0;border:0;border-radius:0}.form__otp .form__otp-input::placeholder{color:var(--text-faint)}.form__otp .form__otp-input:hover,.form__otp .form__otp-input:focus{box-shadow:none;background:0 0;border:0;outline:none}.form__otp .form__otp-input[aria-invalid=true]{color:var(--danger);border:0}.form__otp-ticks{inset-inline:0;gap:var(--otp-track);pointer-events:none;display:flex;position:absolute;bottom:0}.form__otp-tick{background:var(--line-input);width:1ch;height:2px;transition:background var(--dur-fast) var(--ease-out)}.form__otp-tick.is-filled{background:var(--accent)}.form__otp-back{width:22px;height:22px;color:var(--text-faint);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;place-items:center;margin-left:auto;padding:0;display:grid}.form__otp-back:hover{color:var(--text)}.form__hint{font-family:var(--font-mono);font-size:var(--mono-sm);color:var(--text-dim)}.form__hint.is-error{color:var(--danger)}@media (max-width:620px){.form__otp{width:100%}.form__field--verify.is-verifying input#contact-email{padding-right:var(--sp-4)}.form__otp-label{display:none}}.form__honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.form__actions{align-items:center;gap:var(--sp-4) var(--sp-5);flex-wrap:wrap;display:flex}.form__status{font-family:var(--font-mono);font-size:var(--mono-sm);color:var(--danger)}.form--sent{gap:var(--sp-3);padding:var(--sp-6) 0;justify-items:start}.form__sent-mark{border:var(--hairline) solid var(--accent);width:42px;height:42px;color:var(--accent);font-family:var(--font-mono);place-items:center;display:grid}.form--sent h3{font-size:var(--heading)}.form--sent p{color:var(--text-dim);max-width:44ch}.dock{right:var(--gutter);bottom:var(--sp-5);z-index:var(--z-header);gap:var(--sp-3);padding:var(--sp-2);backdrop-filter:blur(12px);border:var(--hairline) solid var(--line-strong);opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), visibility var(--dur);background:#0b0c0ee6;display:none;position:fixed;transform:translateY(14px)}.dock.is-visible{opacity:1;visibility:visible;transform:none}.dock__action{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);font-family:var(--font-mono);font-size:var(--mono-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text);border:var(--hairline) solid transparent;transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);display:inline-flex}.dock__action:hover{border-color:var(--accent);color:var(--accent)}.dock__action--primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.dock__action--primary:hover{color:var(--accent);background:0 0}@media (prefers-reduced-motion:reduce){.dock{transition:none;transform:none}}@media (max-width:900px){.contact__grid{grid-template-columns:minmax(0,1fr)}.dock{display:flex}}@media (max-width:560px){.dock{left:var(--gutter);right:var(--gutter);bottom:var(--sp-4)}.dock__action{flex:1;justify-content:center}.resume{width:100vw;height:100svh;max-height:none}}
