@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}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--bg:#04040a;--fg:#f4f5ff;--muted:#eceeff9e;--dim:#eceeff61;--line:#ffffff14;--line-2:#ffffff29;--blue:#0a84ff;--accent:#9d8cff;--accent-2:#5ac8fa;--font:"Inter Variable", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--gutter:clamp(18px, 5vw, 72px);--max:1240px;--ease:cubic-bezier(.16, 1, .3, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--glass-bg:linear-gradient(145deg, #ffffff21, #ffffff0a 48%, #ffffff14);--glass-blur:blur(22px) saturate(185%) brightness(1.06);--glass-rim:inset 1.5px 1.5px 1px -1px #fff9, inset -1.5px -1.5px 1px -1px #ffffff4d, inset 0 0 0 1px #ffffff17, inset 0 22px 34px -26px #ffffff47;--glass-drop:0 1px 2px #0000004d, 0 28px 56px -28px #000000b3}*,:before,:after{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}::-webkit-scrollbar{width:0;height:0;display:none}html.lenis,html.lenis body{scroll-behavior:auto!important}body{background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6;overflow-x:hidden}h1,h2,h3,p{margin:0}ul{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:#04040a}:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:12px}.glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-rim), var(--glass-drop);position:relative}.glass:after{content:"";border-radius:inherit;background:radial-gradient(280px circle at var(--mx,50%) var(--my,0%), #ffffff29, transparent 62%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.glass:hover:after{opacity:1}#scene{z-index:0;opacity:0;width:100vw;height:100vh;transition:opacity 1.4s .1s;display:block;position:fixed;inset:0}.scene-ready #scene{opacity:1}.vignette{z-index:1;pointer-events:none;background:radial-gradient(55% 45% at 10% 6%,#0a84ff33,#0000 70%),radial-gradient(50% 42% at 94% 16%,#a855f72e,#0000 70%),radial-gradient(60% 45% at 68% 104%,#5ac8fa21,#0000 70%),radial-gradient(85% 75% at 50% 45%,#0000 40%,#04040a99 100%);position:fixed;inset:0}.pixelbg{z-index:1;pointer-events:none;opacity:0;position:fixed;inset:0}.pixelbg:before{content:"";background-image:radial-gradient(#ffffff1a 1px,#0000 1.4px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 65%,#000 15%,#0000 80%);mask-image:radial-gradient(75% 65%,#000 15%,#0000 80%)}.pixelbg canvas{width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.fallback-logo{filter:invert();opacity:.75;z-index:0;pointer-events:none;width:min(46vw,640px);display:none;position:fixed;top:50%;right:4vw;transform:translateY(-50%)}.no-webgl .fallback-logo{display:block}.no-webgl #scene{display:none}.progress{z-index:70;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0}.progress i{transform-origin:0;background:linear-gradient(90deg, var(--blue), var(--accent), var(--accent-2));height:100%;display:block;transform:scaleX(0)}#loader{z-index:100;background:var(--bg);place-content:center;justify-items:center;gap:16px;transition:opacity .6s,visibility .6s;display:grid;position:fixed;inset:0}#loader.done{opacity:0;visibility:hidden}.loader-logo{object-fit:cover;filter:invert();border-radius:50%;width:76px;height:76px;animation:2s ease-in-out infinite float}.loader-name{letter-spacing:.28em;text-transform:uppercase;color:var(--dim);font-size:.8rem;font-weight:600}@keyframes float{50%{transform:translateY(-6px)}}.cursor-dot,.cursor-ring{z-index:90;pointer-events:none;border-radius:50%;display:none;position:fixed;top:0;left:0}.has-cursor,.has-cursor a,.has-cursor button{cursor:none}.has-cursor .cursor-dot,.has-cursor .cursor-ring{display:block}.cursor-dot{mix-blend-mode:difference;background:#fff;width:6px;height:6px;margin:-3px 0 0 -3px}.cursor-ring{-webkit-backdrop-filter:brightness(1.18)saturate(1.3);backdrop-filter:brightness(1.18)saturate(1.3);width:38px;height:38px;transition:width .45s var(--spring), height .45s var(--spring), margin .45s var(--spring), background .35s, border-color .35s;border:1px solid #ffffff59;margin:-19px 0 0 -19px}.cursor-ring.hover{background:#ffffff12;border-color:#ffffff8c;width:62px;height:62px;margin:-31px 0 0 -31px}.cursor-ring.down{width:28px;height:28px;margin:-14px 0 0 -14px}.nav{top:max(12px, env(safe-area-inset-top));z-index:50;border-radius:999px;justify-content:space-between;align-items:center;gap:14px;width:min(1160px,100% - 24px);padding:7px 8px 7px 14px;transition:background .4s,box-shadow .4s;display:flex;position:fixed;left:50%;translate:-50%}.nav.scrolled{background:linear-gradient(145deg,#1c1c2e8c,#0c0c1873)}.nav:after{display:none}.brand{letter-spacing:-.01em;align-items:center;gap:11px;font-size:1.02rem;font-weight:650;display:flex}.brand img{object-fit:cover;filter:invert();width:36px;height:36px;box-shadow:0 0 0 1px var(--line-2);background:#000;border-radius:50%}.nav-links{gap:2px;padding:4px;display:flex;position:relative}.nav-links a{z-index:1;color:var(--muted);border-radius:999px;padding:8px 17px;font-size:.92rem;font-weight:500;transition:color .25s;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--fg)}.nav-lens{opacity:0;pointer-events:none;width:0;transition:transform .55s var(--spring), width .55s var(--spring), opacity .3s;background:#ffffff21;border-radius:999px;position:absolute;top:4px;bottom:4px;left:0;box-shadow:inset 1px 1px 1px -1px #ffffffbf,inset 0 0 0 1px #ffffff1a,0 6px 16px -6px #0000008c}.btn{font-family:var(--font);white-space:nowrap;cursor:pointer;transition:transform .5s var(--spring), box-shadow .35s, background .35s;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:14px 26px;font-size:1rem;font-weight:600;line-height:1;display:inline-flex}.btn:active{transform:scale(.95)}.btn .arrow{transition:transform .45s var(--spring)}.btn:hover .arrow{transform:translate(4px)}.btn-primary{color:#fff;background:linear-gradient(#55a6ff 0%,#1f7cff 55%,#0a62ee 100%);box-shadow:inset 0 1px #ffffff8c,inset 0 -1px #0000002e,0 0 0 1px #ffffff1f,0 10px 28px -8px #0a84ff99}.btn-primary:hover{box-shadow:inset 0 1px #ffffffa6,inset 0 -1px #0000002e,0 0 0 1px #ffffff29,0 14px 38px -8px #0a84ffd9}.btn-glass{color:var(--fg);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-rim), 0 10px 24px -14px #0009}.btn-glass:hover{background:linear-gradient(145deg,#fff3,#ffffff12)}.btn-sm{padding:10px 19px;font-size:.9rem}.btn-lg{padding:20px 34px;font-size:clamp(1rem,2.4vw,1.25rem)}main{z-index:2;position:relative}.container{width:100%;max-width:var(--max);margin:0 auto}.section{padding:clamp(110px, 18vh, 200px) var(--gutter);position:relative}.label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:22px;font-size:.8rem;font-weight:650;display:inline-block}.h2{letter-spacing:-.045em;font-size:clamp(2.3rem,6vw,4.6rem);font-weight:700;line-height:1}.grad{background:linear-gradient(100deg,#fff 0%,#c7bdff 45%,#7fdcff 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.lead{max-width:33em;color:var(--muted);font-size:clamp(1.02rem,1.6vw,1.25rem);line-height:1.55}.outline{color:#0000;-webkit-text-stroke:1.5px #ffffffe6}.reveal{opacity:0;transition:opacity .9s var(--ease) var(--d,0s), transform 1s var(--ease) var(--d,0s);transform:translateY(30px)}.reveal.in{opacity:1;transform:none}.rise{transition:transform .95s var(--ease) var(--d,0s);transform:translateY(46px)scale(.97)}.rise.in{transform:none}.reveal-hero{opacity:0;transition:opacity .8s var(--ease) var(--d,0s), transform .9s var(--ease) var(--d,0s);transform:translateY(20px)}.ready .reveal-hero{opacity:1;transform:none}.hero{min-height:100svh;padding:120px var(--gutter) 150px;align-items:center;display:flex;position:relative}.hero-inner{position:relative}.hero-copy{max-width:660px}.eyebrow{color:var(--muted);border-radius:999px;align-items:center;gap:10px;margin-bottom:28px;padding:9px 17px 9px 14px;font-size:.85rem;font-weight:550;display:inline-flex}.eyebrow:after{display:none}.pulse{background:#34d399;border-radius:50%;width:8px;height:8px;position:relative}.pulse:after{content:"";background:inherit;border-radius:50%;animation:2s ease-out infinite ping;position:absolute;inset:0}@keyframes ping{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.title{letter-spacing:-.06em;perspective:900px;font-size:clamp(3.6rem,10.2vw,9.2rem);font-weight:750;line-height:.9}.title .line{margin-bottom:-.04em;padding:.04em .06em .1em 0;display:block;overflow:hidden}.char{transform-origin:50% 100%;opacity:0;transition:transform .9s var(--ease) calc(var(--i) * 40ms + 60ms), opacity .5s ease calc(var(--i) * 40ms + 60ms);display:inline-block;transform:translateY(105%)rotateX(-80deg)}.ready .char{opacity:1;transform:none}.title .outline{-webkit-text-stroke:2px #ffffffeb}.role{letter-spacing:.04em;color:var(--accent);margin:30px 0 14px;font-size:.95rem;font-weight:650}.hero .lead{margin-bottom:34px}.cta-row{flex-wrap:wrap;gap:12px;display:flex}.scroll-hint{left:var(--gutter);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);align-items:center;gap:14px;font-size:.72rem;font-weight:600;display:flex;position:absolute;bottom:112px}.scroll-line{background:var(--line-2);width:1px;height:44px;position:relative;overflow:hidden}.scroll-line:after{content:"";background:var(--fg);width:100%;height:40%;animation:scrolldown 2s var(--ease) infinite;position:absolute;top:0;left:0}@keyframes scrolldown{0%{transform:translateY(-100%)}to{transform:translateY(260%)}}.marquee{left:var(--gutter);right:var(--gutter);border-radius:999px;padding:14px 0;position:absolute;bottom:22px}.marquee:after{display:none}.marquee-inner{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-track{will-change:transform;letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:34px;width:max-content;font-size:clamp(1.15rem,2.2vw,1.7rem);font-weight:650;display:flex}.marquee-track span{color:#ffffffc7}.marquee-track i{color:var(--accent);font-size:.55em;font-style:normal}.statement{letter-spacing:-.04em;max-width:19em;font-size:clamp(1.9rem,4.6vw,3.9rem);font-weight:600;line-height:1.12}.statement .w{color:#f4f5ff29;transition:color .5s}.statement .w.lit{color:var(--fg)}.facts{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(56px,9vh,110px);display:grid}.facts li{border-radius:28px;padding:26px 26px 28px}.facts h3{letter-spacing:-.02em;margin-bottom:8px;font-size:1.15rem;font-weight:650}.facts p{color:var(--muted);font-size:.95rem}.skills .h2{margin-bottom:clamp(40px,7vh,72px)}.skills-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.tile{perspective:1100px}.card{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;min-height:270px;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .8s var(--ease);border-radius:30px;flex-direction:column;justify-content:flex-end;padding:26px;display:flex;position:relative}.card.tilting{transition:transform .12s linear}.card:before{content:"";border-radius:inherit;background:radial-gradient(120% 90% at 0% 0%, color-mix(in srgb, var(--c) 16%, transparent), transparent 62%), var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-rim), var(--glass-drop);transition:box-shadow .4s;position:absolute;inset:0}.card:after{content:"";border-radius:inherit;background:radial-gradient(380px circle at var(--mx) var(--my), color-mix(in srgb, var(--c) 30%, transparent), transparent 62%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.card:hover:before{box-shadow:var(--glass-rim), 0 0 0 1px color-mix(in srgb, var(--c) 40%, transparent), 0 30px 70px -28px color-mix(in srgb, var(--c) 50%, #000)}.card:hover:after{opacity:1}.tag{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);transform-origin:100% 0;background:#ffffff12;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:600;position:absolute;top:22px;right:22px;transform:translateZ(26px)scale(.9764);box-shadow:inset 0 0 0 1px #ffffff1f}.glyph{filter:drop-shadow(0 0 16px color-mix(in srgb, var(--c) 50%, transparent));transform-origin:0 0;position:absolute;top:20px;left:24px;transform:translateZ(70px)scale(.9364)}.glyph canvas{image-rendering:pixelated;display:block}.card h3{letter-spacing:-.035em;transform-origin:0 100%;font-size:1.6rem;font-weight:650;transform:translateZ(40px)scale(.9636)}.card p{color:var(--muted);transform-origin:0 0;margin-top:2px;font-size:.93rem;transform:translateZ(24px)scale(.9782)}.projects .h2{margin-bottom:clamp(40px,7vh,72px)}.project-list{border-radius:38px;flex-direction:column;gap:2px;padding:8px;display:flex}.project{--mx:50%;--my:50%;border-radius:30px;grid-template-columns:36px 56px 1fr auto 48px;align-items:center;gap:22px;padding:20px 22px;transition:background .35s;display:grid;position:relative;overflow:hidden}.project:before{content:"";background:radial-gradient(520px circle at var(--mx) var(--my), #ffffff17, transparent 60%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.project:after{content:"";background:var(--line);height:1px;transition:opacity .3s;position:absolute;top:-1px;left:22px;right:22px}.project:first-child:after{display:none}.project:hover{background:#ffffff0d}.project:hover:before{opacity:1}.project:hover:after,.project:hover+.project:after{opacity:0}.p-idx{font-variant-numeric:tabular-nums;color:var(--dim);font-size:.82rem;font-weight:600;transition:color .3s}.p-logo{justify-content:center;align-items:center;width:56px;height:56px;display:flex}.p-logo img{object-fit:contain;filter:drop-shadow(0 6px 18px #828cff4d);width:auto;max-width:100%;height:auto;max-height:100%;transition:transform .6s var(--spring)}.project:hover .p-logo img{transform:scale(1.12)rotate(-3deg)}.p-main h3{letter-spacing:-.04em;font-size:clamp(1.45rem,3vw,2.2rem);font-weight:650;line-height:1.1}.p-main p{color:var(--muted);max-width:36em;margin-top:6px;font-size:.97rem}.p-tags{gap:8px;display:flex}.p-tags span{color:var(--muted);background:#ffffff0f;border-radius:999px;padding:6px 13px;font-size:.78rem;font-weight:550;box-shadow:inset 0 0 0 1px #ffffff1a}.p-arrow{width:46px;height:46px;transition:transform .55s var(--spring), background .3s, color .3s;background:#ffffff12;border-radius:50%;justify-self:end;place-items:center;font-size:1.15rem;display:grid;box-shadow:inset 0 0 0 1px #ffffff1f}.project:hover .p-idx{color:var(--accent-2)}.project:hover .p-arrow{color:#04040a;background:#fff;transform:rotate(45deg)scale(1.06)}.watch .h2{margin-bottom:clamp(36px,6vh,64px)}.player{border-radius:38px;max-width:1040px;margin:0 auto;padding:8px;position:relative}.player:after,.player-bar:after{display:none}.player video{aspect-ratio:16/9;object-fit:contain;cursor:pointer;background:#000;border-radius:30px;width:100%;display:block}.player-center{color:#fff;background:var(--glass-bg);width:88px;height:88px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-rim), 0 18px 40px -12px #000000b3;cursor:pointer;transition:transform .55s var(--spring), opacity .35s;border:0;border-radius:50%;place-items:center;margin:auto;padding:0;display:grid;position:absolute;inset:0}.player-center:hover{transform:scale(1.08)}.player-center svg{fill:currentColor;width:34px;height:34px;margin-left:4px}.player.is-playing .player-center{opacity:0;pointer-events:none;transform:scale(.8)}.player-bar{transition:opacity .4s, transform .55s var(--spring);border-radius:999px;align-items:center;gap:10px;padding:7px 10px;display:flex;position:absolute;bottom:24px;left:24px;right:24px}.player.is-playing.idle .player-bar{opacity:0;pointer-events:none;transform:translateY(10px)}.player.is-playing.idle video{cursor:none}.pl-btn{color:#fff;cursor:pointer;width:38px;height:38px;transition:background .25s, transform .45s var(--spring);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.pl-btn:hover{background:#ffffff26}.pl-btn:active{transform:scale(.9)}.pl-btn svg{fill:currentColor;width:20px;height:20px}.pl-play .i-pause,.pl-mute .i-muted,.player.is-playing .pl-play .i-play,.player.is-muted .pl-mute .i-vol{display:none}.player.is-playing .pl-play .i-pause,.player.is-muted .pl-mute .i-muted{display:block}.pl-time{font-variant-numeric:tabular-nums;min-width:34px;color:var(--muted);flex:none;font-size:.78rem;font-weight:550}.pl-dur{text-align:right}.pl-track{--p:0%;background:#fff3;border-radius:999px;flex:1;height:6px;position:relative}.pl-fill{width:var(--p);border-radius:inherit;background:#fff;position:absolute;inset:0 auto 0 0;box-shadow:0 0 12px #ffffff80}.pl-seek{opacity:0;cursor:pointer;width:100%;height:28px;margin:0;position:absolute;top:50%;left:0;translate:0 -50%}.player:fullscreen{background:#000;border-radius:0;place-items:center;max-width:none;padding:0;display:grid}.player:fullscreen video{aspect-ratio:auto;border-radius:0;height:100%}:is(.player:fullscreen,.player:fullscreen *){cursor:auto!important}.player:fullscreen button{cursor:pointer!important}:is(.player:fullscreen.is-playing.idle,.player:fullscreen.is-playing.idle *){cursor:none!important}.guard{z-index:200;text-align:center;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#04040aeb;place-items:center;padding:24px;display:none;position:fixed;inset:0}.guard-box{background:var(--glass-bg);max-width:420px;box-shadow:var(--glass-rim), var(--glass-drop);border-radius:32px;padding:36px 32px}.guard-box h2{letter-spacing:-.03em;margin-bottom:8px;font-size:1.4rem;font-weight:650}.guard-box p{color:var(--muted)}html.devtools-open .guard{display:grid}html.devtools-open main,html.devtools-open .nav,html.devtools-open #scene,html.devtools-open .pixelbg{visibility:hidden}.contact{flex-direction:column;justify-content:space-between;min-height:100svh;padding-bottom:28px;display:flex}.mega{letter-spacing:-.055em;margin-bottom:30px;font-size:clamp(2.9rem,6.6vw,6.2rem);font-weight:750;line-height:.96}.contact .lead{margin-bottom:38px}.socials{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.footer{width:100%;max-width:var(--max);border-top:1px solid var(--line);color:var(--dim);justify-content:space-between;gap:20px;margin:80px auto 0;padding-top:24px;font-size:.82rem;font-weight:500;display:flex}.footer a:hover{color:var(--fg)}@media (max-width:1100px){.facts{grid-template-columns:repeat(2,1fr)}}@media (max-width:960px){.skills-grid{grid-template-columns:repeat(2,1fr)}.nav-links{display:none}.project{grid-template-columns:28px 48px 1fr 46px;gap:16px}.p-tags{display:none}}@media (max-width:640px),(max-aspect-ratio:17/20){body{font-size:16px}.hero{align-items:flex-end;padding-top:100px;padding-bottom:120px}.title{font-size:clamp(3.2rem,15.5vw,5.4rem)}.eyebrow{margin-bottom:20px}.role{margin:18px 0 10px}.hero .lead{margin-bottom:24px}.scroll-hint{display:none}.marquee{padding:11px 0;bottom:16px}.facts{grid-template-columns:1fr}.skills-grid{grid-template-columns:1fr;gap:14px}.card{min-height:200px}.project{grid-template-columns:48px 1fr 44px;gap:14px;padding:18px 12px}.p-idx{display:none}.p-logo{width:48px;height:48px}.p-arrow{width:42px;height:42px}.player{border-radius:28px;padding:5px}.player video{border-radius:23px}.player-center{width:68px;height:68px}.player-bar{gap:6px;padding:5px 8px;bottom:12px;left:12px;right:12px}.pl-time{display:none}.btn{padding:13px 22px}.footer{flex-direction:column;gap:8px}}
