:root{--bg:#0a0a0b;--bg-2:#101014;--ink:#e9e9ec;--ink-dim:#9b9ba5;--line:#e9e9ec1a;--accent:#b8ff3c;--accent-ink:#0a0a0b;--accent-soft:#b8ff3c59;--font-display:"Syne", system-ui, sans-serif;--font-body:"Manrope", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--pad-x:clamp(1.25rem, 5vw, 5rem);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-skin=core]{--bg:#050505;--bg-2:#0d0c0a;--ink:#f3efe7;--ink-dim:#aaa195;--line:#d7b7712b;--accent:#d7b771;--accent-ink:#0b0905;--accent-soft:#d7b7715c}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;scrollbar-gutter:stable;-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100svh;font-size:16px;line-height:1.6;overflow-x:clip}html[data-skin=core] body{background:radial-gradient(ellipse at 78% 3%, #caa4541a, transparent 34%), radial-gradient(ellipse at 14% 78%, #84602612, transparent 38%), linear-gradient(145deg, #020202 0%, var(--bg) 52%, #090805 100%);background-attachment:fixed}html[data-skin=core] body:before{content:"";z-index:0;pointer-events:none;opacity:.2;background-image:linear-gradient(115deg,#0000 0 48%,#d7b7711c 49%,#0000 50%),repeating-linear-gradient(90deg,#0000 0 119px,#d7b7710b 120px);background-size:100% 100%,120px 100%;position:fixed;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(at 50% 30%,#000,#0000 82%);mask-image:radial-gradient(at 50% 30%,#000,#0000 82%)}html[data-skin=core] body:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--core-x,72vw) var(--core-y,28vh), #d7b77113, transparent 68%);mix-blend-mode:screen;position:fixed;top:0;bottom:0;left:0;right:0}html.js body.is-loaded{overflow:clip visible}main{z-index:1;position:relative}img,svg,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}ul,ol{list-style:none}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}html{scrollbar-width:thin;scrollbar-color:#2a2a30 transparent}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#2a2a30;border-radius:8px}#webgl{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;bottom:0;left:0;right:0}html.no-webgl #webgl{display:none}html.no-webgl body{background:radial-gradient(60% 50% at 50% 35%, #15151c 0%, var(--bg) 70%)}.noise{z-index:2;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.noise:before{content:"";opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:.9s step-end infinite grain;position:absolute;top:-100%;bottom:-100%;left:-100%;right:-100%}.noise:after{content:"";background:radial-gradient(#0000 52%,#00000080 100%);position:absolute;top:0;bottom:0;left:0;right:0}html[data-skin=core] .noise:before{opacity:.04}html[data-skin=core] .noise:after{background:linear-gradient(#d7b77105,#0000 20%),radial-gradient(#0000 45%,#000000c7 100%)}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-8%)}20%{transform:translate(-12%,3%)}30%{transform:translate(7%,-10%)}40%{transform:translate(-3%,12%)}50%{transform:translate(-10%,-4%)}60%{transform:translate(12%)}70%{transform:translateY(8%)}80%{transform:translate(3%,12%)}90%{transform:translate(-8%,2%)}}.section{min-height:100svh;padding:clamp(6rem, 13vh, 10rem) var(--pad-x);position:relative}.skip-link{z-index:300;background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);border-radius:6px;padding:.6rem 1rem;font-size:.7rem;transition:transform .25s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-300%)}.skip-link:focus-visible{transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.cursor-dot,.cursor-ring{display:none!important}.mq-track{animation:none!important}}.display{font-family:var(--font-display);font-weight:800}.mono{font-family:var(--font-mono);font-weight:400}.eyebrow{font-family:var(--font-mono);letter-spacing:.22em;color:var(--accent);text-transform:uppercase;font-size:.72rem}.heading{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;margin-top:1.2rem;font-size:clamp(2.6rem,6vw,5.4rem);font-weight:800;line-height:.98}.heading.big{font-size:clamp(2.15rem,12.5vw,8rem)}.section-sub{color:var(--ink-dim);max-width:46ch;margin-top:1.5rem;font-size:.95rem}.section-sub code{color:var(--accent);font-size:.8em}.hl{display:block;overflow:hidden}.hl-in{will-change:transform;display:block}.char,.w{will-change:transform, opacity;display:inline-block}.wm{vertical-align:bottom;display:inline-block;overflow:hidden}#preloader{z-index:200;background:var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.pre-inner{text-align:center}.pre-name{letter-spacing:.5em;color:var(--ink-dim);font-size:.68rem}.pre-count{font-family:var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums;margin:1rem 0 1.4rem;font-size:clamp(4.5rem,15vw,9rem);font-weight:800;line-height:1}.pre-pct{color:var(--accent);vertical-align:super;font-size:.35em}.pre-bar{background:var(--line);width:min(240px,50vw);height:1px;margin:0 auto 1.4rem;overflow:hidden}#pre-bar-fill{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.pre-hint{letter-spacing:.4em;color:var(--ink-dim);min-height:1.2em;font-size:.58rem}.pre-count.done{color:var(--accent);transition:color .25s}#preloader:after{content:"";background:var(--accent);opacity:.7;height:2px;position:absolute;bottom:-2px;left:0;right:0}.pre-veil{z-index:195;background:#131318;position:fixed;top:0;bottom:0;left:0;right:0}.nav{z-index:50;padding:1.3rem var(--pad-x);justify-content:space-between;align-items:center;transition:transform .45s cubic-bezier(.65,0,.35,1),opacity .45s;display:flex;position:fixed;top:0;left:0;right:0}.nav.nav-hidden{transform:translateY(-110%)}.nav-logo{font-family:var(--font-display);font-size:1.5rem;font-weight:800;line-height:1;display:inline-flex}.nav-logo-dot{color:var(--accent)}.nav-links{gap:1.8rem;display:flex}.nav-links a{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);padding:.3rem 0;font-size:.66rem;transition:color .3s;position:relative}.nav-links a:after{content:"";background:var(--accent);transform-origin:100%;width:100%;height:1px;transition:transform .35s cubic-bezier(.65,0,.35,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a.is-active{color:var(--ink)}.nav-links a:hover:after,.nav-links a.is-active:after{transform-origin:0;transform:scaleX(1)}.nav-links .nav-cta{color:var(--accent)}.nav-links .nav-play{color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:.3rem .85rem;transition:color .3s,border-color .3s}.nav-links .nav-play:after{display:none}.nav-links .nav-play:hover{color:var(--accent);border-color:var(--accent-soft)}.skin-toggle{-webkit-appearance:none;appearance:none;border:1px solid var(--line);font:inherit;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .85rem;font-size:.66rem;transition:color .3s,border-color .3s,background .3s}.skin-toggle:hover,.skin-toggle.is-on{color:var(--accent);border-color:var(--accent-soft)}.skin-toggle.is-on{background:color-mix(in srgb, var(--accent) 12%, transparent)}html[data-skin=core] .pre-veil{background:#0a0907}html[data-skin=core] .nav{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#050505e6,#05050500)}html[data-skin=core] .nav-logo{letter-spacing:.08em;text-shadow:0 0 28px #d7b7712b}html[data-skin=core] .skin-toggle.is-on{color:#f5e7c6;background:linear-gradient(135deg,#d7b77129,#52391214);border-color:#d7b77199;border-radius:2px;box-shadow:inset 0 1px #fff4da14,0 8px 28px #00000038}html[data-skin=core] .nav-links .nav-cta{text-shadow:0 0 16px #d7b7713d}html[data-skin=core] .nav-links .nav-play{border-color:#d7b77138;border-radius:2px}html[data-skin=core] :-webkit-any(.cursor-dot,.cursor-ring){filter:drop-shadow(0 0 8px #d7b77194)}html[data-skin=core] :is(.cursor-dot,.cursor-ring){filter:drop-shadow(0 0 8px #d7b77194)}.core-interface{pointer-events:none;letter-spacing:.22em;font-size:.54rem}.core-corner,.core-status{z-index:45;opacity:0;color:var(--ink-dim);transition:opacity .45s;position:fixed}html[data-skin=core] :-webkit-any(.core-corner,.core-status){opacity:1}html[data-skin=core] :is(.core-corner,.core-status){opacity:1}.core-corner{align-items:center;gap:.8rem;display:flex}.core-corner:before{content:"";background:var(--accent);width:18px;height:1px;box-shadow:0 0 10px var(--accent-soft)}.core-corner b,.core-status b{color:var(--accent);font-weight:500}.core-corner-b{right:var(--pad-x);writing-mode:vertical-rl;top:6rem}.core-corner-b:before{width:1px;height:18px}.core-status{right:var(--pad-x);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070605ad;border:1px solid #d7b77138;align-items:center;gap:.55rem;padding:.5rem .7rem;display:flex;bottom:1.25rem}.core-status i{background:var(--accent);width:5px;height:5px;box-shadow:0 0 10px var(--accent);border-radius:50%;animation:1.8s ease-in-out infinite corePulse}.core-progress{z-index:46;opacity:0;background:#d7b77114;height:1px;transition:opacity .45s;position:fixed;bottom:0;left:0;right:0}html[data-skin=core] .core-progress{opacity:1}.core-progress span{transform-origin:0;will-change:transform;background:linear-gradient(90deg,#72552b,#f0d69a);width:100%;height:100%;display:block;transform:scaleX(0);box-shadow:0 0 14px #d7b77180}html[data-skin=core] .hud{left:var(--pad-x);color:#aaa195c7;letter-spacing:.24em}html[data-skin=core] .hud:before{content:"◈ ";color:var(--accent);text-shadow:0 0 10px var(--accent-soft)}.core-scan{z-index:3;opacity:0;pointer-events:none;background:linear-gradient(#0000,#d7b7710b,#0000);height:12vh;position:fixed;top:-12vh;left:0;right:0}html[data-skin=core] .core-scan{opacity:1;animation:9s linear infinite coreScan}.skin-wipe{z-index:210;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#090806 18%,#d7b771 49.8%,#090806 50.2%,#0000 100%);position:fixed;top:0;bottom:0;left:0;right:0;transform:translate(-110%)}.skin-wipe.is-playing{animation:.8s cubic-bezier(.76,0,.24,1) skinWipe}@keyframes skinWipe{0%{transform:translate(-110%)}to{transform:translate(110%)}}@keyframes coreScan{0%{transform:translateY(-12vh)}to{transform:translateY(112vh)}}@keyframes corePulse{50%{opacity:.4;transform:scale(.72)}}@media (max-width:700px){.core-corner,.core-status,.core-scan{display:none}}.rail{z-index:40;flex-direction:column;align-items:center;gap:.9rem;display:flex;position:fixed;top:50%;right:1.5rem;transform:translateY(-50%)}.rail-bar{background:var(--line);width:1px;height:64px;position:relative;overflow:hidden}#rail-progress{background:var(--accent);transform-origin:top;position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleY(0)}.rail-list{flex-direction:column;gap:.55rem;display:flex}.rail-item{letter-spacing:.12em;color:var(--ink-dim);opacity:.55;font-size:.56rem;transition:color .3s,opacity .3s,transform .3s}.rail-item.is-active{color:var(--accent);opacity:1;transform:translate(-3px)}.cursor-dot,.cursor-ring{z-index:130;pointer-events:none;opacity:0;border-radius:50%;position:fixed;top:0;left:0}html.fine-pointer .cursor-dot,html.fine-pointer .cursor-ring{opacity:1}.cursor-dot{background:var(--accent);width:6px;height:6px;margin:-3px 0 0 -3px}.cursor-ring{mix-blend-mode:difference;border:1px solid #e9e9ec8c;justify-content:center;align-items:center;width:36px;height:36px;margin:-18px 0 0 -18px;transition:width .3s,height .3s,margin .3s,border-color .3s,background-color .3s,mix-blend-mode .3s;display:flex}.cursor-label{font-family:var(--font-mono);letter-spacing:.14em;color:var(--accent-ink);opacity:0;font-size:.56rem;transition:opacity .2s}.cursor-ring.is-hover{border-color:var(--accent);width:64px;height:64px;margin:-32px 0 0 -32px}.cursor-ring.is-label{background:var(--accent);border-color:var(--accent);mix-blend-mode:normal;width:84px;height:84px;margin:-42px 0 0 -42px}.cursor-ring.is-label .cursor-label{opacity:1}.cursor-dot.is-down{transform:scale(2.4)}.marquee{z-index:1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0;position:relative;overflow:hidden}.mq-track{white-space:nowrap;will-change:transform;width:max-content;animation:22s linear infinite mqScroll;display:flex}.mq-track span{letter-spacing:.3em;color:var(--ink-dim);font-size:.8rem}@keyframes mqScroll{to{transform:translate(-50%)}}.btn{isolation:isolate;border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);will-change:transform;background:0 0;border-radius:999px;align-items:center;gap:.6rem;padding:.85rem 1.6rem;font-size:.66rem;transition:border-color .35s,color .35s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--accent);border-radius:inherit;transition:transform .45s cubic-bezier(.65,0,.35,1);position:absolute;top:-1px;bottom:-1px;left:-1px;right:-1px;transform:translateY(102%)}.btn:hover{border-color:var(--accent);color:var(--accent-ink)}.btn:hover:before{transform:translateY(0)}.btn-primary:before{display:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{color:var(--accent-ink);filter:brightness(1.08)}.hud{z-index:40;letter-spacing:.2em;color:var(--ink-dim);pointer-events:none;font-size:.56rem;display:none;position:fixed;bottom:1.3rem;left:1.6rem}.hud .hud-acc{color:var(--accent)}@media (min-width:900px) and (prefers-reduced-motion:no-preference){.hud{display:block}}.chip,.tag{font-family:var(--font-mono);letter-spacing:.1em;border:1px solid var(--line);color:var(--ink-dim);border-radius:999px;padding:.42rem .8rem;font-size:.62rem;transition:border-color .3s,color .3s;display:inline-block}.site-toast{z-index:120;text-align:center;letter-spacing:.16em;max-width:min(92vw,420px);color:var(--accent-ink);background:var(--accent);opacity:0;pointer-events:none;border-radius:999px;padding:.85rem 1.2rem;font-size:.62rem;transition:transform .35s cubic-bezier(.65,0,.35,1),opacity .35s;position:fixed;bottom:1.6rem;left:50%;transform:translate(-50%)translateY(120%);box-shadow:0 16px 48px #00000073}.site-toast.is-on{opacity:1;transform:translate(-50%)translateY(0)}a.is-unavailable{opacity:.55}.hero{flex-direction:column;padding-top:0;padding-bottom:0;display:flex}.hero-inner{flex-direction:column;flex:1;justify-content:center;padding-top:5rem;display:flex}.hero-eyebrow{letter-spacing:.26em;color:var(--ink-dim);align-items:center;margin-bottom:clamp(1.4rem,3vh,2.6rem);font-size:.66rem;display:flex}.avail-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;margin-right:.7rem;animation:2.2s ease-out infinite availPulse}@keyframes availPulse{0%{box-shadow:0 0 0 0 var(--accent-soft)}70%{box-shadow:0 0 0 9px #0000}to{box-shadow:0 0 #0000}}.hero-name{font-family:var(--font-display);letter-spacing:-.015em;text-transform:uppercase;font-size:clamp(2.9rem,12.2vw,11.5rem);font-weight:800;line-height:.94}.hn-line{display:block}.hn-outline .char{color:#0000;-webkit-text-stroke:2px var(--ink)}.hero-name .char{transition:color .25s,-webkit-text-stroke-color .25s}.hero-name .char:hover{color:var(--accent);-webkit-text-stroke-color:var(--accent)}.hero-foot{justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:clamp(1.8rem,4vh,3.2rem);display:flex}.hero-tag{color:var(--ink-dim);max-width:36ch;min-height:2.8em;font-size:clamp(1rem,1.5vw,1.25rem)}.caret{background:var(--accent);vertical-align:text-bottom;width:2px;height:1.05em;margin-left:3px;animation:.9s steps(2,end) infinite caretBlink;display:inline-block}@keyframes caretBlink{50%{opacity:0}}.hero-role{text-align:right;letter-spacing:.2em;color:var(--ink-dim);font-size:.62rem;line-height:1.9}.local-time{color:var(--accent);font-variant-numeric:tabular-nums}.scroll-cue{flex-direction:column;align-items:center;gap:.7rem;display:flex;position:absolute;bottom:1.8rem;left:50%;transform:translate(-50%)}.cue-label{letter-spacing:.42em;color:var(--ink-dim);font-size:.54rem}.cue-track{background:var(--line);width:1px;height:54px;position:relative;overflow:hidden}.cue-dot{background:var(--accent);border-radius:2px;width:4px;height:10px;animation:2.1s cubic-bezier(.65,0,.35,1) infinite cueDrop;position:absolute;left:-1.5px}@keyframes cueDrop{0%{top:-18%}65%{top:108%}to{top:108%}}.section-head:after{content:"";background:var(--line);transform-origin:0;height:1px;margin-top:clamp(1.6rem,3vh,2.4rem);transition:transform 1.1s cubic-bezier(.65,0,.35,1) .15s;display:block;transform:scaleX(0)}.section-head.is-inview:after{transform:scaleX(1)}.about-grid{grid-template-columns:1.35fr .65fr;gap:clamp(2.5rem,6vw,5rem);margin-top:clamp(2.5rem,6vh,4.5rem);display:grid}.about-bio{font-size:clamp(1.35rem,2.6vw,2.1rem);font-weight:500;line-height:1.45}.stats{flex-direction:column;justify-content:center;gap:2.2rem;display:flex}.stat{border-top:1px solid var(--line);padding-top:1.1rem}.stat-num{color:var(--accent);font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,5vw,4rem);line-height:1}.stat-label{letter-spacing:.24em;color:var(--ink-dim);margin-top:.45rem;font-size:.62rem}.skills .section-head{margin-bottom:.25rem}.skills-grid{z-index:2;grid-template-columns:repeat(2,1fr);gap:1.2rem;margin-top:clamp(1.8rem,4vh,3rem);display:grid;position:relative}.skill-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:default;opacity:1;visibility:visible;background:#101014d1;border-radius:16px;padding:1.7rem;transition:border-color .35s,transform .35s,opacity .35s;position:relative}.skill-card:hover,.skill-card.is-active{border-color:var(--accent-soft);transform:translateY(-4px)}.skill-card:focus-visible{border-color:var(--accent-soft);transform:translateY(-4px)}.skill-card-head{align-items:baseline;gap:.9rem;margin-bottom:1.1rem;display:flex}.skill-card-index{font-family:var(--font-mono);letter-spacing:.14em;color:var(--accent);font-size:.62rem}.skill-card-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-size:1.05rem;font-weight:700}.skill-chips{flex-wrap:wrap;gap:.5rem;display:flex}.skill-card:hover .chip{color:var(--ink);border-color:#e9e9ec47}@media (hover:hover) and (pointer:fine){#skills-grid:hover .skill-card:not(:hover){opacity:.55}}.work{min-height:auto;padding:0}.work-viewport{position:relative;overflow:hidden}.work-track{display:block}.panel{min-height:100svh;padding:clamp(5rem, 12vh, 8rem) var(--pad-x);flex-direction:column;justify-content:center;display:flex;position:relative}.work.is-horizontal .work-track{width:max-content;display:flex}.work.is-horizontal .panel{flex-shrink:0;width:100vw;height:100svh}.panel-intro .heading{margin-top:1.4rem}.panel-intro-cue{letter-spacing:.3em;color:var(--accent);margin-top:3rem;font-size:.7rem}.panel-project{grid-template-columns:1fr;align-content:center;gap:2.5rem;display:grid}@media (min-width:900px){.panel-project{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2.5rem,5vw,5rem)}}.p-num{z-index:0;font-family:var(--font-display);color:#0000;-webkit-text-stroke:1px #e9e9ec12;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(9rem,24vw,22rem);font-weight:800;line-height:1;position:absolute;top:50%;left:1%;transform:translateY(-50%)}.p-mock{z-index:1;aspect-ratio:16/10;border:1px solid var(--line);background:linear-gradient(140deg, hsl(var(--ph) 35% 9%) 0%, hsl(var(--ph) 50% 15%) 55%, hsl(var(--ph) 75% 24%) 100%);transform-style:preserve-3d;will-change:transform;border-radius:16px;display:block;position:relative;overflow:hidden}.p-mock img{object-fit:contain;object-position:center;background:hsl(var(--ph) 28% 8%);width:100%;height:100%;display:block}.p-mock img.is-broken{object-fit:contain;opacity:.35;filter:grayscale();padding:2rem}.p-mock:not(.has-gallery):after{content:"";opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff1a 50%,#0000 58%);transition:opacity .4s;position:absolute;top:0;bottom:0;left:0;right:0}.p-mock:not(.has-gallery):hover:after{opacity:1}.p-gallery{touch-action:pan-y;position:absolute;top:0;bottom:0;left:0;right:0}.p-gallery-track{will-change:transform;width:100%;height:100%;transition:transform .45s cubic-bezier(.65,0,.35,1);display:flex}.p-gallery-track img{object-fit:contain;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;background:hsl(var(--ph) 28% 8%);flex:0 0 100%;width:100%;height:100%}.p-gal-btn{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:36px;height:36px;color:var(--ink);cursor:pointer;opacity:0;background:#0a0a0b8c;border:1px solid #e9e9ec2e;border-radius:999px;place-items:center;font-size:1.4rem;line-height:1;transition:opacity .25s,background .25s,border-color .25s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.p-mock:hover .p-gal-btn{opacity:1}.p-gal-btn:focus-visible{opacity:1}.p-gal-btn.prev{left:.7rem}.p-gal-btn.next{right:.7rem}.p-gal-btn:hover{border-color:var(--accent);color:var(--accent)}.p-gal-dots{z-index:3;gap:.35rem;display:flex;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.p-gal-dot{cursor:pointer;background:#e9e9ec59;border:none;border-radius:999px;width:7px;height:7px;padding:0;transition:transform .2s,background .2s}.p-gal-dot.is-on{background:var(--accent);transform:scale(1.25)}.p-gal-count{z-index:3;letter-spacing:.14em;color:var(--ink-dim);background:#0a0a0b8c;border:1px solid #e9e9ec1f;border-radius:999px;padding:.3rem .55rem;font-size:.55rem;position:absolute;top:.7rem;right:.7rem}.p-gal-count b{color:var(--accent);font-weight:500}@media (pointer:coarse){.p-gal-btn{opacity:.85}}.mock-chrome{align-items:center;gap:6px;padding:13px 16px;display:flex}.mock-chrome i{background:hsl(var(--ph) 30% 38% / .6);border-radius:50%;width:8px;height:8px}.mock-url{background:hsl(var(--ph) 25% 30% / .35);border-radius:5px;flex:1;height:10px;margin-left:10px}.mock-body{background-image:radial-gradient(circle, hsl(var(--ph) 45% 45% / .12) 1px, transparent 1px);background-size:16px 16px;gap:12px;height:calc(100% - 34px);padding:6px 18px 18px;display:flex}.mock-side{flex-direction:column;gap:9px;width:22%;padding-top:4px;display:flex}.mock-main{flex-direction:column;flex:1;gap:10px;display:flex}.mk-hero{background:radial-gradient(120% 140% at 15% 10%, hsl(var(--ph) 90% 62% / .3) 0%, transparent 55%), hsl(var(--ph) 40% 14% / .8);border:1px solid hsl(var(--ph) 45% 35% / .35);border-radius:10px;flex:1}.mk-line{background:hsl(var(--ph) 30% 42% / .45);border-radius:5px;height:8px}.mk-line.short{width:46%}.mk-line.mid{width:74%}.mk-row{background:hsl(var(--ph) 32% 36% / .32);border-radius:6px;height:12px}.mk-row.dim{background:hsl(var(--ph) 30% 34% / .2);width:82%}.p-info{z-index:1;position:relative}.p-index{letter-spacing:.22em;color:var(--accent);font-size:.6rem}.p-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.015em;margin-top:.65rem;font-size:clamp(1.55rem,3.2vw,2.65rem);font-weight:800;line-height:1.05;overflow:hidden}.p-desc{color:var(--ink-dim);max-width:42ch;margin:.9rem 0 1.15rem;font-size:clamp(.9rem,1.35vw,1.02rem);line-height:1.55}.p-tags{flex-wrap:wrap;gap:.5rem;display:flex}.p-links{gap:.9rem;margin-top:1.9rem;display:flex}.work-progress{left:var(--pad-x);right:var(--pad-x);z-index:5;align-items:center;gap:1.4rem;display:none;position:absolute;bottom:1.8rem}.work.is-horizontal .work-progress{display:flex}.wp-count{letter-spacing:.2em;color:var(--ink-dim);font-size:.66rem}.wp-name{letter-spacing:.24em;color:var(--ink);min-width:11ch;font-size:.62rem}.wp-bar{background:var(--line);flex:1;height:1px;overflow:hidden}#wp-bar-fill{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.xp-wrap{margin-top:clamp(3rem,7vh,5rem);position:relative}.xp-line{background:var(--line);width:1px;position:absolute;top:.4rem;bottom:0;left:50%}#xp-line-fill{background:var(--accent);transform-origin:top;width:100%;height:100%;display:block;transform:scaleY(0)}.xp-item{text-align:right;width:50%;padding:0 3.2rem 4.2rem 0;position:relative}.xp-item:nth-child(2n){text-align:left;margin-left:50%;padding:0 0 4.2rem 3.2rem}.xp-dot{background:var(--bg);border:1px solid var(--ink-dim);border-radius:50%;width:11px;height:11px;transition:background-color .4s,border-color .4s,box-shadow .4s;position:absolute;top:.35rem;right:-5.5px}.xp-item:nth-child(2n) .xp-dot{left:-5.5px;right:auto}.xp-item.is-active .xp-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 18px var(--accent-soft)}.xp-date{letter-spacing:.22em;color:var(--accent);font-size:.62rem}.xp-role{font-family:var(--font-display);text-transform:uppercase;margin-top:.5rem;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:700}.xp-co{color:var(--ink);margin-top:.15rem;font-size:.92rem}.xp-desc{color:var(--ink-dim);max-width:38ch;margin-top:.55rem;font-size:.88rem;display:inline-block}.cloud-grid{grid-template-columns:1.15fr .85fr;gap:clamp(2.5rem,6vw,5rem);margin-top:clamp(2.5rem,6vh,4rem);display:grid}.cloud-copy{max-width:48ch;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.55}.side-label{letter-spacing:.3em;color:var(--ink-dim);margin-bottom:.9rem;font-size:.56rem}.cert-list{flex-direction:column;gap:.8rem;display:flex}.cert-chip{border:1px solid var(--accent-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-mono);letter-spacing:.1em;background:#1010148c;border-radius:12px;align-items:center;gap:.9rem;padding:.95rem 1.15rem;font-size:.68rem;display:flex}.cert-chip:before{content:"";background:var(--accent);border-radius:2px;flex-shrink:0;width:8px;height:8px;transform:rotate(45deg)}.cloud-stats{flex-wrap:wrap;gap:1.4rem 2.4rem;margin-top:2.2rem;display:flex}.cstat-num{font-family:var(--font-display);color:var(--accent);font-size:1.9rem;font-weight:800;line-height:1}.cstat-label{font-family:var(--font-mono);letter-spacing:.2em;color:var(--ink-dim);text-transform:uppercase;margin-top:.4rem;font-size:.56rem}.contact{flex-direction:column;justify-content:space-between;display:flex}.contact-inner{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:clamp(1.8rem,4vh,3rem);width:100%;min-width:0;max-width:100%;padding-top:4rem;display:flex}.cta-title{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-size:clamp(3rem,10.5vw,9.5rem);font-weight:800;line-height:.95}.cta-title .char{transition:color .2s}.email-link{font-family:var(--font-display);border-bottom:2px solid var(--line);will-change:transform;word-break:break-all;overflow-wrap:anywhere;max-width:100%;padding-bottom:.3rem;font-size:clamp(1.15rem,3.6vw,3rem);font-weight:700;line-height:1.25;transition:color .3s,border-color .3s}.email-link:hover{color:var(--accent);border-color:var(--accent)}.socials{flex-wrap:wrap;gap:.9rem;display:flex}.foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:2.6rem;display:flex}.foot p,.foot-top{letter-spacing:.2em;color:var(--ink-dim);font-size:.58rem}.foot-top{color:var(--ink);will-change:transform;padding:.5rem}.foot-top:hover{color:var(--accent)}html[data-skin=core] .hero-name{letter-spacing:-.055em;text-shadow:0 0 54px #d7b77112}html[data-skin=core] .hn-outline .char{-webkit-text-stroke-color:#d7b771b8;filter:drop-shadow(0 0 16px #d7b7711a)}html[data-skin=core] .hero-eyebrow,html[data-skin=core] .side-label{letter-spacing:.38em}html[data-skin=core] .hero:after{content:"CORE\a ACCESS";aspect-ratio:1;width:94px;color:var(--accent);white-space:pre;text-align:center;font-family:var(--font-mono);letter-spacing:.24em;border:1px solid #d7b77161;border-radius:50%;place-items:center;font-size:.55rem;line-height:1.7;animation:5s ease-in-out infinite sealFloat;display:grid;position:absolute;bottom:clamp(8rem,18vh,12rem);right:clamp(1.5rem,10vw,9rem);box-shadow:inset 0 0 0 7px #d7b77106,inset 0 0 0 8px #d7b77124,0 0 40px #d7b77112}html[data-skin=core] :-webkit-any(#about,#skills,#work,#experience,#cloud,#contact):before{top:clamp(5.8rem,10vh,8rem);right:var(--pad-x);color:#d7b77180;font-family:var(--font-mono);letter-spacing:.25em;writing-mode:vertical-rl;font-size:.52rem;position:absolute}html[data-skin=core] :is(#about,#skills,#work,#experience,#cloud,#contact):before{top:clamp(5.8rem,10vh,8rem);right:var(--pad-x);color:#d7b77180;font-family:var(--font-mono);letter-spacing:.25em;writing-mode:vertical-rl;font-size:.52rem;position:absolute}html[data-skin=core] #about:before{content:"CORE / 01 — PROFILE"}html[data-skin=core] #skills:before{content:"CORE / 02 — SYSTEMS"}html[data-skin=core] #work:before{content:"CORE / 03 — ARCHIVE"}html[data-skin=core] #experience:before{content:"CORE / 04 — HISTORY"}html[data-skin=core] #cloud:before{content:"CORE / 05 — NETWORK"}html[data-skin=core] #contact:before{content:"CORE / 06 — UPLINK"}html[data-skin=core] .section-head:after{box-shadow:0 0 20px #d7b7714d}html[data-skin=core] .skill-card{background:linear-gradient(145deg,#14120ee6,#070706c7);border-color:#d7b7712e;border-radius:3px;overflow:hidden;box-shadow:inset 0 1px #fff4da0a,0 22px 70px #00000040}html[data-skin=core] .skill-card:before{content:"";opacity:.45;background:linear-gradient(90deg,#0000,#f0d69ab8,#0000);height:1px;transition:transform .5s,opacity .5s;position:absolute;top:0;left:12%;right:12%;transform:scaleX(.2)}html[data-skin=core] .skill-card:hover,html[data-skin=core] .skill-card.is-active{border-color:#d7b77180;box-shadow:inset 0 1px #fff4da12,0 20px 52px #5e42121a}html[data-skin=core] .skill-card:focus-visible{border-color:#d7b77180;box-shadow:inset 0 1px #fff4da12,0 20px 52px #5e42121a}html[data-skin=core] .skill-card:hover:before,html[data-skin=core] .skill-card.is-active:before{opacity:1;transform:scaleX(1)}html[data-skin=core] .skill-card:focus-visible:before{opacity:1;transform:scaleX(1)}html[data-skin=core] .p-mock{border-color:#d7b77138;border-radius:3px;box-shadow:0 32px 100px #00000070,0 0 42px #d7b77106}html[data-skin=core] .p-info:before{content:"CURATED CASE FILE";color:#d7b77199;font-family:var(--font-mono);letter-spacing:.3em;margin-bottom:.8rem;font-size:.5rem;display:block}html[data-skin=core] :-webkit-any(.p-gal-btn,.p-gal-count){background:#0a0907c7;border-color:#d7b7713d}html[data-skin=core] :is(.p-gal-btn,.p-gal-count){background:#0a0907c7;border-color:#d7b7713d}html[data-skin=core] .xp-line{background:linear-gradient(#0000,#d7b7716b,#0000)}html[data-skin=core] .cert-chip{background:linear-gradient(110deg,#14120ec7,#07070694);border-color:#d7b77147;border-radius:3px;box-shadow:inset 0 1px #fff4da0a}html[data-skin=core] .email-link{text-shadow:0 0 30px #d7b7711f}html[data-skin=core] .contact-inner:before{content:"SECURE UPLINK · CHANNEL 06";color:#d7b7719e;font-family:var(--font-mono);letter-spacing:.32em;margin-bottom:clamp(1.5rem,4vh,3rem);font-size:.54rem;display:block}html[data-skin=core] .socials a{border-radius:2px}@keyframes sealFloat{50%{transform:translateY(-8px)rotate(3deg)}}@media (max-width:900px){html[data-skin=core] .hero:after{display:none}html[data-skin=core] :-webkit-any(#about,#skills,#work,#experience,#cloud,#contact):before{display:none}html[data-skin=core] :is(#about,#skills,#work,#experience,#cloud,#contact):before{display:none}.rail,.nav-links a{display:none}.nav-links .nav-cta,.nav-links .nav-play,.nav-links .skin-toggle{display:inline-block}.panel-intro .heading.big{letter-spacing:-.03em;max-width:100%;font-size:clamp(2.1rem,11vw,3.4rem)}.skills .heading{letter-spacing:-.02em;font-size:clamp(2rem,9vw,3rem)}.skills .section-sub{max-width:34ch;font-size:.88rem}.skill-card{background:var(--bg-2);border-color:#e9e9ec29;opacity:1!important}.hero-foot{flex-direction:column;align-items:flex-start;gap:1.4rem}.hero-role{text-align:left}.about-grid,.cloud-grid{grid-template-columns:1fr}.stats{flex-flow:wrap;gap:1.6rem 2.6rem}.skills-grid{grid-template-columns:1fr}.p-num{display:none}.xp-line{left:5px}.xp-item,.xp-item:nth-child(2n){text-align:left;width:100%;margin-left:0;padding:0 0 3.2rem 2.2rem}.xp-item .xp-dot,.xp-item:nth-child(2n) .xp-dot{left:0;right:auto}}@media (max-width:560px){.panel-intro .heading.big{font-size:clamp(1.95rem,10.5vw,2.55rem)}.skills .heading{font-size:clamp(1.85rem,8.5vw,2.4rem)}.email-link{letter-spacing:-.01em;font-size:clamp(.98rem,4.6vw,1.25rem)}.cta-title{font-size:clamp(2.4rem,12vw,3.4rem)}.skills-grid{grid-template-columns:1fr}.p-links{flex-wrap:wrap}.foot{text-align:center;justify-content:center}}
