@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url("./media/space-grotesk-vietnamese-400-normal-VYALUVHJ.woff2") format("woff2"),url("./media/space-grotesk-vietnamese-400-normal-HYAY6YMN.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url("./media/space-grotesk-latin-ext-400-normal-6RDUJ6X4.woff2") format("woff2"),url("./media/space-grotesk-latin-ext-400-normal-SFKLEDM4.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url("./media/space-grotesk-latin-400-normal-LF3ZIHND.woff2") format("woff2"),url("./media/space-grotesk-latin-400-normal-OMAEQ2EW.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url("./media/space-grotesk-vietnamese-500-normal-BJV4DSHS.woff2") format("woff2"),url("./media/space-grotesk-vietnamese-500-normal-MGE4IPKK.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url("./media/space-grotesk-latin-ext-500-normal-6YC3BUQW.woff2") format("woff2"),url("./media/space-grotesk-latin-ext-500-normal-MRHXUI62.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url("./media/space-grotesk-latin-500-normal-GESQWJQV.woff2") format("woff2"),url("./media/space-grotesk-latin-500-normal-HV4TE4RA.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url("./media/space-grotesk-vietnamese-600-normal-ECYXVPF5.woff2") format("woff2"),url("./media/space-grotesk-vietnamese-600-normal-JBMSDBCY.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url("./media/space-grotesk-latin-ext-600-normal-KHPPWF2T.woff2") format("woff2"),url("./media/space-grotesk-latin-ext-600-normal-22KGZP7V.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url("./media/space-grotesk-latin-600-normal-27GH5ZT3.woff2") format("woff2"),url("./media/space-grotesk-latin-600-normal-WYFP6PJR.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url("./media/space-grotesk-vietnamese-700-normal-PU32LQ5W.woff2") format("woff2"),url("./media/space-grotesk-vietnamese-700-normal-F4TVIWWM.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url("./media/space-grotesk-latin-ext-700-normal-VUMKC3YE.woff2") format("woff2"),url("./media/space-grotesk-latin-ext-700-normal-GTZL6LEG.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url("./media/space-grotesk-latin-700-normal-I3MXRIUZ.woff2") format("woff2"),url("./media/space-grotesk-latin-700-normal-6Z7GHSI6.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-cyrillic-ext-400-normal-6VZLC4H3.woff2") format("woff2"),url("./media/inter-cyrillic-ext-400-normal-FIY4AS7B.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-cyrillic-400-normal-G4TQJ72A.woff2") format("woff2"),url("./media/inter-cyrillic-400-normal-U23O635P.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-greek-ext-400-normal-JTQ56XIH.woff2") format("woff2"),url("./media/inter-greek-ext-400-normal-RDW6D2QK.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-greek-400-normal-24BA4PDP.woff2") format("woff2"),url("./media/inter-greek-400-normal-ZRMMCGZA.woff") format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-vietnamese-400-normal-3ZH4IT4J.woff2") format("woff2"),url("./media/inter-vietnamese-400-normal-VHOS7L4B.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-latin-ext-400-normal-GKRFIQRI.woff2") format("woff2"),url("./media/inter-latin-ext-400-normal-J3OKVTXA.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:400;src:url("./media/inter-latin-400-normal-55WT6UWF.woff2") format("woff2"),url("./media/inter-latin-400-normal-FR5HOXA4.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-cyrillic-ext-500-normal-7YGZWFHX.woff2") format("woff2"),url("./media/inter-cyrillic-ext-500-normal-LJV3DWSQ.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-cyrillic-500-normal-PQK3XKF6.woff2") format("woff2"),url("./media/inter-cyrillic-500-normal-XH4MSKNN.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-greek-ext-500-normal-ZPKR4LNJ.woff2") format("woff2"),url("./media/inter-greek-ext-500-normal-PJFKOJVL.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-greek-500-normal-6QPUHW6Z.woff2") format("woff2"),url("./media/inter-greek-500-normal-3GRTEB6X.woff") format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-vietnamese-500-normal-PQFGSX3P.woff2") format("woff2"),url("./media/inter-vietnamese-500-normal-UOTTXFJL.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-latin-ext-500-normal-3G2JDXWM.woff2") format("woff2"),url("./media/inter-latin-ext-500-normal-UGNIJJWL.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:500;src:url("./media/inter-latin-500-normal-W62DVTXI.woff2") format("woff2"),url("./media/inter-latin-500-normal-ZNGIZ2YB.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-cyrillic-ext-600-normal-66Z4CWZK.woff2") format("woff2"),url("./media/inter-cyrillic-ext-600-normal-5S66ZLPP.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-cyrillic-600-normal-F5BISKXR.woff2") format("woff2"),url("./media/inter-cyrillic-600-normal-YOMHVXBS.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-greek-ext-600-normal-D4Z5GF6D.woff2") format("woff2"),url("./media/inter-greek-ext-600-normal-BCNJL3T4.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-greek-600-normal-ZRJSSN4C.woff2") format("woff2"),url("./media/inter-greek-600-normal-J3AMDQNF.woff") format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-vietnamese-600-normal-TVIYLGI7.woff2") format("woff2"),url("./media/inter-vietnamese-600-normal-YXHD7S3I.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-latin-ext-600-normal-HCYHLWH6.woff2") format("woff2"),url("./media/inter-latin-ext-600-normal-JH5KI6RD.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:600;src:url("./media/inter-latin-600-normal-R6Y2SZCR.woff2") format("woff2"),url("./media/inter-latin-600-normal-ZYHV6QZT.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--maxw: 1080px;--pad-x: 56px;--page-bg: radial-gradient(1100px 700px at 78% -8%, rgba(245, 158, 11, .2), transparent 60%), radial-gradient(900px 600px at 10% 110%, rgba(251, 191, 36, .1), transparent 55%), #1c1814;--bg: #1c1814;--text: #f5f0e8;--text-body: #d9cfc0;--muted: #b8aa96;--muted-2: #948674;--faint: #948674;--accent: #fbbf24;--accent-light: #fcd34d;--accent-deep: #f59e0b;--on-accent: #fff;--tag-text: #fef3c7;--grad-btn: linear-gradient(135deg, #f59e0b, #dc2626);--grad-logo: linear-gradient(135deg, #fbbf24, #b45309);--grad-heading: linear-gradient(120deg, #fcd34d, #fbbf24 40%, #f59e0b);--grad-card: linear-gradient(180deg, rgba(58, 48, 36, .78), rgba(42, 34, 26, .88));--contact-bg: linear-gradient(160deg, rgba(72, 56, 32, .72), rgba(42, 34, 26, .78));--header-bg: rgba(28, 24, 20, .6);--badge-bg: rgba(251, 191, 36, .1);--input-bg: rgba(28, 24, 20, .55);--border-soft: rgba(251, 191, 36, .16);--border: rgba(251, 191, 36, .18);--border-mid: rgba(251, 191, 36, .24);--border-strong: rgba(251, 191, 36, .3);--border-hover: rgba(251, 191, 36, .55);--pill-hover: rgba(251, 191, 36, .14);--pill-accent-bg: rgba(251, 191, 36, .1);--pill-accent-hover: rgba(251, 191, 36, .18);--focus-ring: rgba(251, 191, 36, .18);--link-underline: rgba(252, 211, 77, .35);--glow: rgba(251, 191, 36, .26);--btn-glow: rgba(251, 191, 36, .4);--btn-glow-strong: rgba(251, 191, 36, .6);--card-shadow: 0 24px 60px -20px rgba(220, 38, 38, .45);--selection-fg: #1c1814;--scroll-track: rgba(251, 191, 36, .1);--scroll-thumb: rgba(251, 191, 36, .42);--scroll-thumb-hover: rgba(251, 191, 36, .7)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}::selection{background:var(--accent);color:var(--selection-fg)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:12px;left:12px;z-index:200;padding:10px 16px;border-radius:99px;background:var(--grad-btn);color:var(--on-accent);font-weight:600;font-size:14px;transform:translateY(-160%);transition:transform .2s ease}.skip-link:focus-visible{transform:translateY(0);outline:2px solid var(--accent-light);outline-offset:2px}a{color:var(--accent-light);text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}section[id]{scroll-margin-top:96px}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-x)}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-weight:600;font-size:15px;border-radius:99px;padding:14px 26px;cursor:pointer;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn-primary{background:var(--grad-btn);color:var(--on-accent);box-shadow:0 0 28px var(--btn-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 38px var(--btn-glow-strong);color:var(--on-accent)}.btn-primary.lg{padding:17px 36px;font-size:16px;box-shadow:0 0 36px var(--btn-glow)}.btn-primary.lg:hover{box-shadow:0 0 48px var(--btn-glow-strong)}.btn-outline{background:transparent;border-color:var(--border-mid);color:var(--text)}.btn-outline:hover{background:var(--pill-accent-bg);border-color:var(--border-hover);color:var(--text)}.projects-scroll::-webkit-scrollbar{height:8px}.projects-scroll::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:99px}.projects-scroll::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:99px}.projects-scroll::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}@keyframes pulseGlow{0%,to{opacity:.5}50%{opacity:.85}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@media(max-width:720px){:root{--pad-x: 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
