@font-face{font-family:Onest;src:url("jcenters/onboarding/Onest-Variable.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:VT323;src:url("fonts/vt323/VT323-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Unbounded;src:url("jcenters/Unbounded-Variable.ttf") format("truetype");font-style:normal;font-weight:300 900;font-display:swap}
:root{--night:#06100c;--paper:#eff8ef;--soft:#b7cbbb;--mint:#a1e7b0;--line:rgba(152,210,165,.25);--display:Unbounded,Arial,sans-serif;--body:Onest,Arial,sans-serif;--pixel:VT323,"Courier New",monospace;--mono:"Courier New",monospace}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--night)}
body{min-width:320px;margin:0;overflow-x:hidden;background:var(--night);color:var(--paper);font:400 16px/1.55 var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
a:focus-visible{outline:2px solid #e8ffd6;outline-offset:5px}
img{display:block;max-width:100%}
::selection{background:#c6ecca;color:#08160b}
.skip-link{position:fixed;z-index:100;left:1rem;top:-5rem;padding:.65rem .9rem;background:var(--paper);color:var(--night)}
.skip-link:focus{top:1rem}
.page-scene{position:absolute;z-index:0;top:0;left:0;right:0;height:100svh;min-height:560px;pointer-events:none;background:linear-gradient(180deg,rgba(4,12,9,.36),rgba(4,12,9,.12) 45%,rgba(4,13,10,.45) 78%,#07130e 100%),url("3D ARTS_Modeling/dreamcore1.webp") 43% 38%/cover no-repeat}
.page-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,14,9,.16),transparent 36%,rgba(3,11,11,.18))}
.site-header,main,.site-footer{position:relative;z-index:1}
.site-header{display:flex;align-items:center;min-height:72px;padding:1rem clamp(20px,3.4vw,56px)}
.brand{display:inline-flex;align-items:baseline;color:#edfaed;font:400 clamp(1.7rem,2.8vw,2.3rem)/1 var(--pixel);letter-spacing:.005em;text-shadow:0 2px 14px rgba(1,8,3,.7)}
.brand span{color:#86efac}
.portal-stage{position:relative;min-height:max(490px,calc(100svh - 72px));isolation:isolate}
.portal-stack{--bar:84px;--leaf-top:32px;--leaf-bottom:52px;--peek:194px;--open:min(64svh,calc(100svh - 210px));position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);display:grid;grid-template-rows:var(--bar) var(--bar);gap:10px;background:var(--night);transition:grid-template-rows 245ms cubic-bezier(.22,.8,.24,1)}
.portal-stack:has(.portal--art:is(:hover,:focus-visible,.is-hovered)){grid-template-rows:var(--peek) var(--bar)}
.portal-stack:has(.portal--products:is(:hover,:focus-visible,.is-hovered)){grid-template-rows:var(--bar) var(--peek)}
.portal-stack:has(.portal--art.is-opening){grid-template-rows:var(--open) var(--bar)}
.portal-stack:has(.portal--products.is-opening){grid-template-rows:var(--bar) var(--open)}
.portal{--material:radial-gradient(ellipse at 13% 68%,rgba(237,255,198,.36),transparent 29%),radial-gradient(ellipse at 77% 19%,rgba(74,129,79,.18),transparent 41%),linear-gradient(108deg,#a9dba9,#96cc9c 54%,#afd8a6);--ink:#263d2b;position:relative;display:block;min-height:0;overflow:hidden;isolation:isolate;background:#173625;cursor:pointer}
.portal--products{--material:radial-gradient(ellipse at 17% 74%,rgba(247,225,255,.32),transparent 32%),radial-gradient(ellipse at 83% 21%,rgba(101,77,130,.13),transparent 45%),linear-gradient(108deg,#b8add1,#a799c6 54%,#c6b4d2);--ink:#383047;background:#36275a}
.portal:focus-visible{outline:3px solid #fff;outline-offset:4px}
.portal-image{position:absolute;z-index:0;inset:-5%;display:block;pointer-events:none;background-repeat:no-repeat;background-size:cover;opacity:0;transform:translate3d(var(--image-x,0px),var(--image-y,0px),0) scale(1.075);transition:transform 180ms cubic-bezier(.2,.7,.2,1),filter 280ms ease,opacity 180ms ease-out;will-change:transform}
.portal--art .portal-image{background-image:linear-gradient(180deg,rgba(24,11,9,.03),rgba(20,7,9,.12)),url("cinematics/w2.webp");background-position:center 51%;filter:saturate(1.05) contrast(1.03)}
.portal--products .portal-image{background-image:linear-gradient(180deg,rgba(24,8,47,.08),rgba(14,12,40,.17)),url("products-delivery/forum-hub.png");background-position:center 11%;filter:saturate(1.05) contrast(1.04)}
.portal:is(:hover,:focus-visible,.is-hovered,.is-opening) .portal-image{opacity:1;filter:saturate(1.07) contrast(1.08)}
.portal-shutter{position:absolute;z-index:2;left:0;right:0;overflow:hidden;background:var(--material);color:var(--ink);box-shadow:inset 0 3px 9px rgba(255,255,255,.14),inset 0 -3px 9px rgba(32,56,36,.12);animation:glass-tick-a 520ms steps(1,end) infinite;transition:border-radius 220ms ease}
.portal--products .portal-shutter{animation-name:glass-tick-b}
.portal:is(:hover,:focus-visible,.is-hovered,.is-opening) .portal-shutter{animation:none}
.portal-shutter--top{top:0;height:calc(var(--leaf-top) + 1px);border-top:1px solid rgba(238,255,224,.48);border-bottom:1px solid rgba(45,71,47,.15)}
.portal-shutter--bottom{bottom:0;height:calc(var(--leaf-bottom) + 1px);display:flex;align-items:center;padding:0 clamp(20px,2.1vw,34px);border-top:1px solid rgba(243,255,226,.36);border-bottom:1px solid rgba(37,56,38,.25)}
.portal:is(:hover,:focus-visible,.is-hovered,.is-opening) .portal-shutter--top{border-radius:0 0 46% 12%/0 0 4px 2px}
.portal:is(:hover,:focus-visible,.is-hovered,.is-opening) .portal-shutter--bottom{border-radius:17% 39% 0 0/2px 4px 0 0}
.portal-title{position:relative;display:block;white-space:nowrap;font:400 clamp(2.35rem,3.2vw,2.85rem)/1 var(--pixel);letter-spacing:.005em;text-shadow:0 1px 0 rgba(255,255,255,.22)}
.portal-shatter{position:absolute;z-index:4;inset:0;width:100%;height:100%;pointer-events:none}
.portal.is-shattering{opacity:0}
@keyframes glass-tick-a{0%,39%,100%{transform:translateX(0)}40%,56%{transform:translateX(1px)}57%,69%{transform:translateX(-1px)}}
@keyframes glass-tick-b{0%,42%,100%{transform:translateX(0)}43%,54%{transform:translateX(-1px)}55%,69%{transform:translateX(1px)}}.resume-section{position:relative;padding:clamp(3.5rem,5vw,5.25rem) clamp(1.25rem,4vw,4rem);border-top:1px solid var(--line);background:linear-gradient(180deg,#0b1d13,#0a1a12);overflow-x:clip}
.resume-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 20%,rgba(77,146,90,.13),transparent 44%)}
.resume-section>*{position:relative;max-width:1260px;margin-left:auto;margin-right:auto}
.resume-layout{display:grid;grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:clamp(2rem,4.5vw,4.5rem);align-items:center}
.portrait-wrap{position:relative;max-width:270px;width:100%}
.portrait-wrap::before{content:none}
.portrait-frame{position:relative;z-index:1;aspect-ratio:3/4;overflow:hidden;border:1px solid rgba(188,211,188,.24);background:#273b2b}
.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:saturate(.82)}
.eyebrow{margin:0;color:#cfe3c9;font:650 .9rem/1.4 var(--body);letter-spacing:.01em;text-transform:none}
.resume-copy{min-width:0;max-width:760px}
.resume-copy h1{margin:.55rem 0 1rem;font:750 clamp(2.6rem,3.6vw,3.25rem)/1 var(--body);letter-spacing:-.045em}
.resume-copy h1 em{font-style:normal;color:inherit}
.resume-intro{max-width:580px;margin:0;color:#dce6d9;font-size:.95rem;line-height:1.55}
.resume-link{display:inline-flex;align-items:center;justify-content:space-between;gap:3rem;min-height:48px;margin-top:1.45rem;padding:.7rem 1rem;background:#c7eccf;color:#07150b;font-weight:750;transition:background .22s ease,transform .22s ease}
.resume-link:hover{background:#eef8e9;transform:translateY(-2px)}
.resume-skills{margin-top:clamp(2.75rem,4vw,3.5rem)}
.resume-skills h2{margin:0 0 1rem;color:#edf2e7;font:730 clamp(1.15rem,1.5vw,1.35rem)/1.2 var(--body);letter-spacing:-.035em}
.skill-row{display:grid;grid-template-columns:minmax(180px,245px) 1fr;gap:1.3rem 2rem;align-items:center;padding:.9rem 0;border-top:1px solid rgba(155,207,168,.16)}
.resume-skills > .skill-row:first-of-type{padding-top:0;border-top:0}
.skill-row h3{margin:0;color:#e5f3e5;font-size:.98rem;font-weight:700}
.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.skill-tags span{display:inline-block;padding:.4rem .7rem;border:1px solid rgba(135,204,153,.27);background:rgba(9,31,18,.36);color:#d7e2d4;font:580 .8rem/1.35 var(--body);white-space:nowrap;transition:border-color .2s ease,background .2s ease}
.skill-tags span:hover{border-color:rgba(162,235,178,.75);background:rgba(45,95,55,.25)}
.contact-section{padding:clamp(4rem,6vw,6rem) clamp(1.25rem,4vw,4rem);border-top:1px solid var(--line);background:#08170f;text-align:center}
.contact-section h2{margin:.65rem 0 0;font:730 clamp(2.1rem,3.5vw,3.15rem)/1.12 var(--body);letter-spacing:-.045em}
.contact-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.contact-actions a{display:inline-flex;justify-content:space-between;align-items:center;gap:2.4rem;min-width:155px;min-height:48px;padding:.7rem .9rem;border:1px solid #7caf87;font-size:.88rem;font-weight:700;transition:background .2s ease,color .2s ease}
.contact-actions a:hover{background:#d4ebd7;color:#07160d}
.site-footer{display:flex;justify-content:space-between;gap:1rem;padding:1.8rem clamp(1.25rem,4vw,4rem);border-top:1px solid var(--line);color:#a9bda9;background:#06100b;font:650 .75rem/1.5 var(--body);letter-spacing:.01em}
.site-footer a:hover{color:#e4f5e4}
@media(max-width:850px){.resume-layout{grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:2.5rem}.resume-copy h1{font-size:clamp(2.35rem,6vw,3.8rem)}}
@media(max-width:600px){.site-header{min-height:64px}.portal-stage{min-height:max(500px,calc(100svh - 64px))}.portal-stack{--bar:76px;--leaf-top:29px;--leaf-bottom:47px;--peek:166px;--open:min(62svh,calc(100svh - 176px));left:0;right:0;gap:8px}.portal-shutter--bottom{padding-inline:20px}.portal-title{font-size:2.55rem}.portal--art .portal-image{background-position:50% 51%}.portal--products .portal-image{background-size:cover;background-position:42% 0%}.page-scene{background-position:38% 32%}.resume-section{padding-top:3.75rem}.resume-layout{grid-template-columns:minmax(0,1fr);gap:2.1rem}.portrait-wrap{max-width:220px;margin:0 auto}.resume-copy h1{font-size:clamp(1.95rem,8vw,2.25rem)}.resume-skills{margin-top:2.75rem}.skill-row{display:block;padding:.85rem 0}.skill-row h3{margin-bottom:.65rem}.skill-tags span{font-size:.77rem}.contact-section h2{font-size:clamp(2rem,8.5vw,3.5rem)}}
@media(max-width:360px){.portal-title{font-size:2.3rem}.resume-copy h1{font-size:2.04rem}.skill-tags{gap:.4rem}.skill-tags span{padding:.38rem .55rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portal-stack{transition-duration:180ms}.portal-image{transition-duration:100ms}}
