@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}:root{--brand-red:#ff161f;--brand-black:#0b0b0d;--brand-blue:#445cff;--brand-paper:#f4f0e8;--brand-graphite:#303036;--font-sans:"Archivo Variable", "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:800;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:clamp(1.25rem, 1.1rem + .5vw, 1.5rem);--fs-xl:clamp(1.5rem, 1.2rem + 1.1vw, 2.125rem);--fs-2xl:clamp(2rem, 1.4rem + 2.2vw, 3.25rem);--fs-3xl:clamp(2.5rem, 1.5rem + 4vw, 5rem);--fs-display:clamp(2.75rem, 1.2rem + 7.2vw, 8.5rem);--lh-tight:.95;--lh-snug:1.15;--lh-normal:1.5;--lh-relaxed:1.7;--ls-tight:-.03em;--ls-normal:0;--ls-wide:.08em;--ls-wider:.16em;--fstretch-normal:100%;--fstretch-expanded:118%;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--space-section:clamp(4rem, 2.5rem + 7vw, 9rem);--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--radius-pill:999px;--border-width:1px;--dur-instant:80ms;--dur-fast:.14s;--dur-base:.24s;--dur-slow:.42s;--dur-theme:.32s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-accelerate:cubic-bezier(.55, 0, 1, .45);--ease-racing:cubic-bezier(.7, 0, .1, 1);--ease-elastic:cubic-bezier(.34, 1.45, .64, 1);--dur-scene:.7s;--motion-stagger:60ms;--motion-distance-sm:8px;--motion-distance-md:16px;--motion-distance-lg:32px;--motion-intensity:1;--motion-time:1;--motion-parallax:1;--transition-colors:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);--container-max:80rem;--container-narrow:48rem;--container-wide:96rem;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--gutter:max(clamp(1rem, .4rem + 3vw, 2.5rem), var(--safe-left), var(--safe-right));--size-touch:2.75rem;--header-bar:4.5rem;--header-height:calc(var(--header-bar) + var(--safe-top));--space-fluid-sm:clamp(.75rem, .55rem + 1vw, 1.25rem);--space-fluid-md:clamp(1rem, .7rem + 1.6vw, 2rem);--space-fluid-lg:clamp(1.5rem, .9rem + 3vw, 4rem);--heading-fluid-lg:clamp(2rem, 1.4rem + 2.8vw, 4.5rem);--size-target:2.75rem;--focus-ring-width:2px;--focus-ring-offset:3px;--z-below:-1;--z-base:0;--z-content:1;--z-sticky:10;--z-nav:100;--z-dropdown:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-skip-link:1000;--color-header-bg:color-mix(in srgb, var(--color-bg) 84%, transparent);--scene-scrim:80%}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:var(--brand-black);--color-bg-subtle:#101013;--color-surface:#151519;--color-surface-raised:#1c1c21;--color-surface-hover:#232329;--color-surface-active:#2b2b32;--color-overlay:color-mix(in srgb, var(--brand-black) 78%, transparent);--color-text:var(--brand-paper);--color-text-secondary:#c4c0b8;--color-text-muted:#9c99a1;--color-border:#2a2a30;--color-border-strong:#6a6a74;--color-divider:#26262b;--color-accent:var(--brand-red);--color-accent-text:#ff3b43;--color-accent-hover:#ff4a51;--color-accent-active:#f20f19;--color-on-accent:var(--brand-black);--color-secondary:var(--brand-blue);--color-on-secondary:#fff;--color-secondary-text:#8d9cff;--color-focus:#8d9cff;--color-disabled-bg:#1a1a1e;--color-disabled-text:#66666e;--color-disabled-border:#2a2a30;--shadow-sm:0 1px 2px color-mix(in srgb, var(--brand-black) 55%, transparent);--shadow-md:0 10px 28px -10px color-mix(in srgb, var(--brand-black) 70%, transparent);--shadow-lg:0 28px 64px -18px color-mix(in srgb, var(--brand-black) 80%, transparent);--shadow-glow:0 0 0 1px color-mix(in srgb, var(--brand-red) 40%, transparent), 0 10px 36px -8px color-mix(in srgb, var(--brand-red) 50%, transparent);--scene-bg:var(--brand-black);--scene-ink:var(--brand-paper);--scene-grid:#4a5072;--scene-glow:1.9;--scene-bloom:.8;--scene-light-red:var(--brand-red);--scene-light-blue:var(--brand-blue)}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:var(--brand-paper);--color-bg-subtle:#ece7dc;--color-surface:#fbf9f4;--color-surface-raised:#fff;--color-surface-hover:#efeae0;--color-surface-active:#e6e0d3;--color-overlay:color-mix(in srgb, var(--brand-paper) 82%, transparent);--color-text:var(--brand-black);--color-text-secondary:var(--brand-graphite);--color-text-muted:#5c5b63;--color-border:#d9d3c6;--color-border-strong:#7d7a72;--color-divider:#ddd7ca;--color-accent:var(--brand-red);--color-accent-text:#c7000b;--color-accent-hover:#ff4a51;--color-accent-active:#f20f19;--color-on-accent:var(--brand-black);--color-secondary:var(--brand-blue);--color-on-secondary:#fff;--color-secondary-text:#2f44e6;--color-focus:#2f44e6;--color-disabled-bg:#e8e3d8;--color-disabled-text:#8f8c84;--color-disabled-border:#d9d3c6;--shadow-sm:0 1px 2px color-mix(in srgb, var(--brand-graphite) 14%, transparent);--shadow-md:0 12px 28px -12px color-mix(in srgb, var(--brand-graphite) 26%, transparent);--shadow-lg:0 30px 60px -22px color-mix(in srgb, var(--brand-graphite) 32%, transparent);--shadow-glow:0 0 0 1px color-mix(in srgb, var(--brand-red) 35%, transparent), 0 12px 32px -10px color-mix(in srgb, var(--brand-red) 40%, transparent);--scene-bg:var(--brand-paper);--scene-ink:var(--brand-graphite);--scene-grid:#8d8a9a;--scene-glow:3.4;--scene-bloom:.12;--scene-light-red:var(--brand-red);--scene-light-blue:var(--brand-blue)}[data-motion-scope=portfolio]{--motion-intensity:1;--motion-time:1}[data-motion-scope=shop]{--motion-intensity:.5;--motion-time:.6}[data-motion-scope=checkout]{--motion-intensity:.25;--motion-time:.4}[data-motion-scope=lab]{--motion-intensity:1.35;--motion-time:1.25}@media (pointer:coarse){:root{--motion-parallax:.5;--size-target:3rem}}@media (prefers-reduced-motion:reduce){:root,[data-motion-scope]{--dur-instant:.01ms;--dur-fast:.01ms;--dur-base:.01ms;--dur-slow:.01ms;--dur-scene:.01ms;--dur-theme:.01ms;--motion-stagger:0s;--motion-intensity:0;--motion-parallax:0}}@keyframes language-cue{50%{opacity:.55}}html[data-lang-switch] main{animation:language-cue var(--dur-base) var(--ease-in-out)}@media (hover:none){:where(a,button,summary,label):active{-webkit-tap-highlight-color:transparent}}@media (prefers-reduced-motion:reduce){html[data-lang-switch] main{animation:none}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--color-bg);scroll-padding-top:calc(var(--header-height) + var(--space-4));scrollbar-gutter:stable}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}html:has(dialog[open]){overflow:hidden}body{background-color:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{font-weight:var(--fw-black);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);text-wrap:balance;margin:0}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0;list-style:none}img,svg,video,canvas{max-width:100%;display:block}img{height:auto}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}button{font:inherit;color:inherit}a,button,summary,label,select,[role=button],[role=tab],[role=switch],input:not([type=range]){touch-action:manipulation}html{-webkit-tap-highlight-color:color-mix(in srgb, var(--brand-red) 16%, transparent)}@media (pointer:coarse){input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select,textarea{font-size:max(1rem,16px)}}::selection{background-color:var(--color-accent);color:var(--color-on-accent)}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-ring-offset)}:focus:not(:focus-visible){outline:none}::view-transition-old(root){animation-duration:var(--dur-theme);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--dur-theme);animation-timing-function:var(--ease-out)}html[data-theme-transition],html[data-theme-transition] *,html[data-theme-transition] :before,html[data-theme-transition] :after{transition:background-color var(--dur-theme) var(--ease-out), color var(--dur-theme) var(--ease-out), border-color var(--dur-theme) var(--ease-out), fill var(--dur-theme) var(--ease-out), stroke var(--dur-theme) var(--ease-out), box-shadow var(--dur-theme) var(--ease-out)!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
