*{box-sizing:border-box;font-family:inherit}html,body{max-width:100%;overflow-x:hidden}:root{--color-1:#fff;--color-2:#e0e0e0;--color-3:#ccc;--color-4:#f5f5f5;--bg:#000;--fg:#fff}body{background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:var(--fg)}button{background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 5%}@media (width<=768px){.container{padding:0 6%}}h1,h2,h3,h4,h5,h6,p{margin:0}.portfolio-moon{background:var(--bg);width:100%;height:clamp(150px,24vw,280px);overflow:hidden}.portfolio-moon img{object-fit:cover;object-position:center bottom;width:100%;height:100%;display:block}@media (width<=768px){.portfolio-moon{height:170px}}:root{--linear-ease:linear(0, .068, .19 2.7%, .804 8.1%, 1.037, 1.199 13.2%, 1.245, 1.27 15.8%, 1.274, 1.272 17.4%, 1.249 19.1%, .996 28%, .949, .928 33.3%, .926, .933 36.8%, 1.001 45.6%, 1.013, 1.019 50.8%, 1.018 54.4%, 1 63.1%, .995 68%, 1.001 85%, 1)}.gooey-nav-container{isolation:isolate;background:#000;border:none;border-bottom:1px solid #ffffff26;border-radius:0;width:100%;min-height:56px;padding:.3em 0;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d}.gooey-nav-container nav{z-index:4;justify-content:center;display:flex;position:relative;transform:translateZ(.01px)}.gooey-nav-container nav ul{z-index:3;color:#fff;text-shadow:0 1px 1px #121b2133;flex-wrap:nowrap;justify-content:center;gap:1.2em;margin:0;padding:0 1em;font-size:1.1rem;list-style:none;display:flex;position:relative}.gooey-nav-container nav ul li{cursor:pointer;color:#fff;border-radius:100vw;transition:background-color .3s,color .3s,font-weight .3s,box-shadow .3s;position:relative;box-shadow:0 0 .5px 1.5px #0000}.gooey-nav-container nav ul li a{color:inherit;white-space:nowrap;padding:.6em .9em;text-decoration:none;transition:transform .15s;display:inline-block}.gooey-nav-container nav ul li:active a{transform:scale(.92)}.gooey-nav-container nav ul li:focus-within:has(:focus-visible){box-shadow:none}.gooey-nav-container nav ul li:after{content:"";opacity:0;z-index:-1;background:#fff;border-radius:10px;transition:all .3s;position:absolute;inset:0;transform:scale(0)}.gooey-nav-container nav ul li.active{color:#000;text-shadow:none;z-index:2;background:#fff;font-weight:900;box-shadow:0 0 0 1.5px #ffffff59,0 4px 14px #ffffff2e}.gooey-nav-container nav ul li.active a{z-index:1;position:relative;color:#000!important}.gooey-nav-container nav ul li.active:after{opacity:1;transform:scale(1)}.gooey-nav-container .effect{opacity:0;pointer-events:none;z-index:1;white-space:nowrap;place-items:center;width:0;height:0;font-size:1.1rem;font-weight:900;display:grid;position:absolute;top:0;left:0}.gooey-nav-container .effect.positioned{opacity:1}.gooey-nav-container .effect.filter{z-index:0;filter:blur(7px)contrast(100)blur();mix-blend-mode:lighten}.gooey-nav-container .effect.filter:before{content:"";z-index:-2;background:#000;position:absolute;inset:-75px}.gooey-nav-container .effect.filter:after{content:"";opacity:0;z-index:-1;background:#fff;border-radius:100vw;position:absolute;inset:0;transform:scale(0)}.gooey-nav-container .effect.active:after{animation:.3s both pill}.gooey-nav-container .effect.text{color:#fff;z-index:2;transition:color .3s}.gooey-nav-container .effect.text.active{color:#000}@keyframes pill{to{opacity:1;transform:scale(1)}}@keyframes mobile-pill-pop{0%{opacity:0;transform:scale(.72)}70%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.particle,.point{opacity:0;transform-origin:50%;border-radius:100%;width:20px;height:20px;display:block}.particle{--time:5s;animation:particle calc(var(--time)) ease 1 -350ms;position:absolute;top:calc(50% - 8px);left:calc(50% - 8px)}.point{background:var(--color);opacity:1;animation:point calc(var(--time)) ease 1 -350ms}@keyframes particle{0%{transform:rotate(0deg) translate(calc(var(--start-x)), calc(var(--start-y)));opacity:1;animation-timing-function:cubic-bezier(.55,0,1,.45)}70%{transform:rotate(calc(var(--rotate) * .5)) translate(calc(var(--end-x) * 1.2), calc(var(--end-y) * 1.2));opacity:1;animation-timing-function:ease}85%{transform:rotate(calc(var(--rotate) * .66)) translate(calc(var(--end-x)), calc(var(--end-y)));opacity:1}to{transform:rotate(calc(var(--rotate) * 1.2)) translate(calc(var(--end-x) * .5), calc(var(--end-y) * .5));opacity:1}}@keyframes point{0%{opacity:0;animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(0)}25%{transform:scale(calc(var(--scale) * .25))}38%{opacity:1}65%{transform:scale(var(--scale));opacity:1;animation-timing-function:ease}85%{transform:scale(var(--scale));opacity:1}to{opacity:0;transform:scale(0)}}@media (width<=1024px){.gooey-nav-container nav ul{gap:1em;font-size:1rem}}@media (width<=768px){.gooey-nav-container nav ul{flex-wrap:wrap;gap:.75em 1.5em;font-size:.95rem}}@media (width<=480px){.gooey-nav-container nav ul{flex-wrap:wrap;gap:.5em 1em;padding:0 .5em;font-size:.85rem}}.gooey-nav-toggle{cursor:pointer;z-index:10;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;display:none;position:absolute;top:50%;right:1.2em;transform:translateY(-50%)}.gooey-nav-toggle span{background:#fff;border-radius:2px;width:100%;height:2px;transition:transform .3s,opacity .3s;display:block}.gooey-nav-toggle span:first-child,.gooey-nav-toggle span:nth-child(3){transform-origin:50%}.gooey-nav-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.gooey-nav-toggle.open span:nth-child(2){opacity:0}.gooey-nav-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=768px){.gooey-nav-container{overflow:visible}.gooey-nav-toggle{display:flex}.gooey-nav-container nav{background:#000;border-bottom:1px solid #ffffff26;width:100%;padding:1rem 0;display:none;position:absolute;top:100%;left:0}.gooey-nav-container nav.mobile-open{display:block}.gooey-nav-container nav{z-index:auto;overflow:visible}.gooey-nav-container nav ul{z-index:6;flex-direction:column;align-items:center;gap:.75em;position:relative}.gooey-nav-container nav ul li.active{box-shadow:none;background:0 0}.gooey-nav-container nav ul li.active:after{animation:.42s cubic-bezier(.34,1.56,.64,1) both mobile-pill-pop}}.navbar-header{z-index:50;background:0 0;width:100%;padding:1rem 0;position:fixed;top:0;left:0}.navbar-inner{max-width:900px;height:80px;margin:0 auto;position:relative}.navbar-shell{width:100%;position:relative}.navbar-brand{z-index:10;color:#fff;letter-spacing:.08em;background:linear-gradient(110deg,#fff 0%,#c9d6e6 48%,#fff 100%);-webkit-text-fill-color:transparent;text-shadow:0 1px 1px #fff3;-webkit-background-clip:text;background-clip:text;font-family:Calibri,Segoe UI,sans-serif;font-size:1.35rem;font-weight:900;text-decoration:none;transition:filter .25s,transform .25s;position:absolute;top:50%;left:1.5rem;transform:translateY(-50%)}.navbar-brand:hover{filter:brightness(1.25);transform:translateY(-50%)scale(1.03)}.navbar-brand:focus-visible{outline-offset:4px;outline:2px solid #fff}@media (width<=480px){.navbar-brand{font-size:1.05rem;left:1rem}}@media (width<=1024px){.navbar-inner{max-width:90%}}@media (width<=768px){.navbar-inner{max-width:95%}}.text-type{white-space:pre-wrap;display:inline-block}.text-type__cursor{opacity:1;margin-left:.25rem;display:inline-block}.text-type__cursor--hidden{display:none}:root{--pointer-x:50%;--pointer-y:50%;--pointer-from-center:0;--pointer-from-top:.5;--pointer-from-left:.5;--card-opacity:0;--rotate-x:0deg;--rotate-y:0deg;--background-x:50%;--background-y:50%;--grain:none;--icon:none;--behind-gradient:none;--behind-glow-color:#7dbeffab;--behind-glow-size:25%;--inner-gradient:none;--sunpillar-1:#ff7a75;--sunpillar-2:#ffed61;--sunpillar-3:#a8ff61;--sunpillar-4:#85fff7;--sunpillar-5:#7a95ff;--sunpillar-6:#d875ff;--sunpillar-clr-1:var(--sunpillar-1);--sunpillar-clr-2:var(--sunpillar-2);--sunpillar-clr-3:var(--sunpillar-3);--sunpillar-clr-4:var(--sunpillar-4);--sunpillar-clr-5:var(--sunpillar-5);--sunpillar-clr-6:var(--sunpillar-6);--card-radius:30px}.pc-card-wrapper{perspective:500px;touch-action:none;position:relative;transform:translateZ(.1px)}.pc-behind{z-index:0;pointer-events:none;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y), var(--behind-glow-color) 0%, transparent var(--behind-glow-size));filter:blur(50px)saturate(1.1);opacity:calc(.8 * var(--card-opacity));transition:opacity .2s;position:absolute;inset:0}.pc-card-wrapper:hover,.pc-card-wrapper.active{--card-opacity:1}.pc-card{aspect-ratio:.718;border-radius:var(--card-radius);background-blend-mode:color-dodge, normal, normal, normal;height:80svh;max-height:540px;box-shadow:#000c calc((var(--pointer-from-left) * 10px) - 3px) calc((var(--pointer-from-top) * 20px) - 6px) 20px -5px;backface-visibility:hidden;background:#000000e6;transition:transform 1s;animation:12s linear infinite glow-bg;display:grid;position:relative;overflow:hidden;transform:translateZ(0)rotateX(0)rotateY(0)}.pc-card:hover,.pc-card.active{transform:translateZ(0) rotateX(var(--rotate-y)) rotateY(var(--rotate-x));transition:none}.pc-card-shell.entering .pc-card{transition:transform .18s ease-out}.pc-card-shell{z-index:1;position:relative}.pc-card *{border-radius:var(--card-radius);pointer-events:none;grid-area:1/-1;display:grid}.pc-inside{background-image:var(--inner-gradient);background-color:#000000e6;position:absolute;inset:0;transform:none}.pc-shine{-webkit-mask-image:var(--icon);mask-image:var(--icon);-webkit-mask-size:150%;mask-size:150%;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-source-type:luminance;mask-mode:luminance;-webkit-mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));filter:brightness(.66)contrast(1.33)saturate(.33)opacity(.5);mix-blend-mode:color-dodge;transition:filter .8s;animation:18s linear infinite holo-bg}.pc-shine,.pc-shine:after{--space:5%;--angle:-45deg;z-index:3;background:50%/cover;background-image:repeating-linear-gradient(0deg, var(--sunpillar-clr-1) calc(var(--space) * 1), var(--sunpillar-clr-2) calc(var(--space) * 2), var(--sunpillar-clr-3) calc(var(--space) * 3), var(--sunpillar-clr-4) calc(var(--space) * 4), var(--sunpillar-clr-5) calc(var(--space) * 5), var(--sunpillar-clr-6) calc(var(--space) * 6), var(--sunpillar-clr-1) calc(var(--space) * 7)), repeating-linear-gradient(var(--angle), #0e152e 0%, #8fa3a3 3.8%, #8fc1c1 4.5%, #8fa3a3 5.2%, #0e152e 10%, #0e152e 12%), radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y), #0000001a 12%, #00000026 20%, #00000040 120%);background-position:0 var(--background-y), var(--background-x) var(--background-y), center;background-blend-mode:color, hard-light;background-repeat:repeat;background-size:500% 500%,300% 300%,200% 200%;overflow:hidden;transform:translateZ(1px)}.pc-shine:before,.pc-shine:after{content:"";opacity:0;background-position:50%;background-size:cover;grid-area:1/1;transition:opacity .8s}.pc-card:hover .pc-shine,.pc-card.active .pc-shine{filter:brightness(.85)contrast(1.5)saturate(.5);animation-play-state:paused}.pc-card:hover .pc-shine:before,.pc-card.active .pc-shine:before,.pc-card:hover .pc-shine:after,.pc-card.active .pc-shine:after{opacity:1}.pc-shine:before{background-image:linear-gradient(45deg, var(--sunpillar-4), var(--sunpillar-5), var(--sunpillar-6), var(--sunpillar-1), var(--sunpillar-2), var(--sunpillar-3)), radial-gradient(circle at var(--pointer-x) var(--pointer-y), #b3b3b3 0%, #4d4d4d33 90%), var(--grain);background-size:250% 250%,100% 100%,220px 220px;background-position:var(--pointer-x) var(--pointer-y), center, calc(var(--pointer-x) * .01) calc(var(--pointer-y) * .01);background-blend-mode:color-dodge;filter:brightness(calc(2 - var(--pointer-from-center))) contrast(calc(var(--pointer-from-center) + 2)) saturate(calc(.5 + var(--pointer-from-center)));mix-blend-mode:luminosity}.pc-shine:after{background-position:0 var(--background-y), calc(var(--background-x) * .4) calc(var(--background-y) * .5), center;mix-blend-mode:difference;filter:brightness(.8)contrast(1.5);background-size:200% 300%,700% 700%,100% 100%}.pc-glare{background-image:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y), #c3bfd9 12%, #2e506bcc 90%);mix-blend-mode:overlay;filter:brightness(.8)contrast(1.2);z-index:4;overflow:hidden;transform:translateZ(1.1px)}.pc-avatar-content{mix-blend-mode:luminosity;backface-visibility:hidden;overflow:visible;transform:translateZ(2px)}.pc-avatar-content .avatar{transform-origin:50% 100%;width:100%;transform:translateX(calc(-50% + (var(--pointer-from-left) - .5) * 6px)) translateZ(0) scaleY(calc(1 + (var(--pointer-from-top) - .5) * .02)) scaleX(calc(1 + (var(--pointer-from-left) - .5) * .01));backface-visibility:hidden;will-change:transform;transition:transform .12s ease-out;position:absolute;bottom:-1px;left:50%}.pc-avatar-content:before{content:"";z-index:1;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;position:absolute;inset:0}.pc-user-info{--ui-inset:20px;--ui-radius-bias:6px;bottom:var(--ui-inset);left:var(--ui-inset);right:var(--ui-inset);z-index:2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-radius:calc(max(0px, var(--card-radius) - var(--ui-inset) + var(--ui-radius-bias)));pointer-events:auto;background:#ffffff1a;border:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:12px 14px;display:flex;position:absolute}.pc-user-details{align-items:center;gap:12px;display:flex}.pc-mini-avatar{border:1px solid #ffffff1a;border-radius:50%;flex-shrink:0;width:48px;height:48px;overflow:hidden}.pc-mini-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.pc-user-text{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.pc-handle{color:#ffffffe6;font-size:14px;font-weight:500;line-height:1}.pc-status{color:#ffffffb3;font-size:14px;line-height:1}.pc-contact-btn{-webkit-backdrop-filter:blur(16px);color:#fff;letter-spacing:.3px;cursor:pointer;pointer-events:auto;background:linear-gradient(135deg,#ffffff2e,#ffffff14);border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:120px;padding:12px 20px;font-size:13px;font-weight:600;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s;display:inline-flex}.pc-contact-btn:hover{background:linear-gradient(135deg,#58a6ff59,#7c3aed40);border-color:#ffffff59;transform:translateY(-2px)scale(1.03);box-shadow:0 8px 24px #58a6ff40,inset 0 1px 1px #ffffff26}.pc-contact-btn:active{transform:translateY(0)scale(.98)}.pc-contact-btn:focus-visible{outline-offset:3px;outline:2px solid #58a6ffcc}.pc-details{flex-direction:column;width:100%;display:flex;position:absolute;top:3em}.pc-details h3{-webkit-text-fill-color:transparent;background-image:linear-gradient(#fff,#6f6fbe);background-size:1em 1.5em;-webkit-background-clip:text;background-clip:text;margin:0;font-size:min(5svh,3em);font-weight:600}.pc-details p{white-space:nowrap;-webkit-text-fill-color:transparent;background-image:linear-gradient(#fff,#4a4ac0);background-size:1em 1.5em;-webkit-background-clip:text;background-clip:text;width:min-content;margin:0 auto;font-size:16px;font-weight:600;position:relative;top:-12px}@keyframes glow-bg{0%{--bgrotate:0deg}to{--bgrotate:360deg}}@keyframes holo-bg{0%{background-position:0 var(--background-y), 0 0, center}to{background-position:0 var(--background-y), 90% 90%, center}}@media (width<=768px){.pc-card{height:70svh;max-height:450px}.pc-details{top:2em}.pc-details h3{font-size:min(4svh,2.5em)}.pc-details p{font-size:14px}.pc-user-info{--ui-inset:15px;padding:10px 12px}.pc-mini-avatar{width:28px;height:28px}.pc-user-details{gap:10px}.pc-handle{font-size:13px}.pc-status{font-size:10px}.pc-contact-btn{padding:6px 12px;font-size:11px}}@media (width<=480px){.pc-card{height:60svh;max-height:380px}.pc-details{top:1.5em}.pc-details h3{font-size:min(3.5svh,2em)}.pc-details p{font-size:12px;top:-8px}.pc-user-info{--ui-inset:12px;padding:8px 10px}.pc-mini-avatar{width:24px;height:24px}.pc-user-details{gap:8px}.pc-handle{font-size:12px}.pc-status{font-size:9px}.pc-contact-btn{border-radius:50px;padding:5px 10px;font-size:10px}}@media (width<=320px){.pc-card{height:55svh;max-height:320px}.pc-details h3{font-size:min(3svh,1.5em)}.pc-details p{font-size:11px}.pc-user-info{padding:6px 8px}.pc-mini-avatar{width:20px;height:20px}.pc-user-details{gap:6px}.pc-handle{font-size:11px}.pc-status{font-size:8px}.pc-contact-btn{border-radius:50px;padding:4px 8px;font-size:9px}}.social-links-wrapper{align-items:flex-start;gap:2rem;margin-top:2rem;display:flex}.social-link-item{cursor:pointer;flex-direction:column;align-items:center;gap:.6rem;text-decoration:none;display:flex}.social-link-circle{color:#ffffffd9;background:#ffffff0f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.3rem;transition:transform .25s,background-color .25s,border-color .25s,color .25s;display:flex}.social-link-item:hover .social-link-circle{color:#fff;background:#ffffff26;border-color:#ffffff59;transform:translateY(-4px)}.social-link-label{letter-spacing:.03em;text-transform:uppercase;color:#fff9;font-size:.75rem;font-weight:600;transition:color .25s}.social-link-item:hover .social-link-label{color:#fff}.social-link-circle svg{width:1em;height:1em;display:block}@media (width<=768px){.social-links-wrapper{gap:1.5rem}.social-link-circle{width:44px;height:44px;font-size:1.1rem}.social-link-label{font-size:.65rem}}@media (width<=480px){.social-links-wrapper{gap:1rem}}.hero-section{background:var(--bg);width:100%;height:100vh;padding-top:80px;position:relative;overflow:hidden}.hero-content{z-index:1;text-align:center;height:100%;color:var(--fg);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:0 1.5rem;display:flex;position:relative}.hero-text-type{font-size:clamp(1.5rem,5vw,3rem)}@media (width<=1024px){.hero-content{padding:0 1.5rem}}@media (width<=768px){.hero-content{text-align:center;align-items:center;padding:1.5rem 1rem}}@media (width<=480px){.hero-content{padding:0 .75rem}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-profile-card,.hero-bio{width:min(100%, var(--hero-profile-width));max-width:var(--hero-profile-width);box-sizing:border-box}.hero-profile-card{--hero-profile-width:calc(min(80svh, 540px) * .718)}.hero-profile-card .pc-card{width:100%}.hero-bio{--hero-profile-width:calc(min(80svh, 540px) * .718);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);will-change:transform;background:#ffffff08;border-radius:1rem;padding:1rem 1.1rem;transition:transform .3s,box-shadow .3s,background-color .3s}.hero-bio-name{transition:transform .3s,color .3s;animation:.8s ease-out .3s both fadeSlideUp;display:inline-block}.hero-bio:hover .hero-bio-name{color:#fff;transform:scale(1.03)translate(4px)}.hero-bio-text{transition:opacity .3s,transform .3s;animation:.8s ease-out .6s both fadeSlideUp}.hero-bio:hover .hero-bio-text{opacity:1;transform:translate(4px)}@media (width<=768px){.hero-profile-card,.hero-bio{--hero-profile-width:calc(min(70svh, 450px) * .718)}}@media (width<=480px){.hero-profile-card,.hero-bio{--hero-profile-width:calc(min(60svh, 380px) * .718)}}@media (width<=320px){.hero-profile-card,.hero-bio{--hero-profile-width:calc(min(55svh, 320px) * .718)}}@media (width<=768px){.hero-section{height:auto;min-height:0;padding-bottom:2rem}.hero-content{height:auto}}.logoloop{width:100%;position:relative;overflow:hidden}.logoloop--vertical{height:100%}.logoloop__track{gap:var(--logoloop-gap,32px);will-change:transform;width:max-content;display:flex}.logoloop--vertical .logoloop__track{flex-direction:column}.logoloop__list{align-items:center;gap:var(--logoloop-gap,32px);flex-shrink:0;margin:0;padding:0;list-style:none;display:flex}.logoloop--vertical .logoloop__list{flex-direction:column}.logoloop__item{width:var(--logoloop-logoHeight,28px);flex-shrink:0;justify-content:center;align-items:center;display:flex}.logoloop__item img{height:var(--logoloop-logoHeight,28px);object-fit:contain;filter:grayscale()brightness(1.4);opacity:.75;width:auto;transition:opacity .3s,filter .3s,transform .3s}.logoloop__item:hover img{opacity:1;filter:grayscale(0%)brightness()}.logoloop__node{height:var(--logoloop-logoHeight,28px);color:#ffffffb3;justify-content:center;align-items:center;transition:color .3s,transform .3s;display:flex}.logoloop__node svg{width:auto;max-width:100%;height:100%}.logoloop__item:hover .logoloop__node{color:#fff}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform:scale(1.15)}.logoloop__link{text-decoration:none;display:flex}.logoloop--fade:before,.logoloop--fade:after{content:"";z-index:2;pointer-events:none;width:60px;position:absolute;top:0;bottom:0}.logoloop--fade:before{background:linear-gradient(to right, var(--logoloop-fadeColor,#000), transparent);left:0}.logoloop--fade:after{background:linear-gradient(to left, var(--logoloop-fadeColor,#000), transparent);right:0}.text-rotate{white-space:pre-wrap;flex-wrap:wrap;display:flex;position:relative}.text-rotate-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-rotate-word{display:inline-flex}.text-rotate-lines{flex-direction:column;width:100%;display:flex}.text-rotate-element{display:inline-block}.text-rotate-space{white-space:pre}.about-rotating-wrapper{color:#fff;text-align:center;flex-direction:row;justify-content:center;align-items:center;gap:.6rem;margin-top:5rem;font-size:2.8rem;font-weight:600;display:flex}.rotating-text-pill{color:#000;background-color:#fff;border-radius:8px;align-items:center;padding:.4rem 1.1rem;font-size:2.8rem;font-weight:600;display:inline-flex;overflow:hidden}.rotating-text-split{padding-bottom:.15rem;overflow:hidden}@media (width<=600px){.about-rotating-wrapper,.rotating-text-pill{font-size:1.3rem}}.about-section{background:var(--bg);width:100%;color:var(--fg);padding:5rem 5%;position:relative}.about-container{max-width:1100px;margin:0 auto}.about-heading{text-align:left;opacity:0;margin:2.5rem 0 4.35rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;transition:opacity 1.3s ease-out,transform 1.3s ease-out;transform:translateY(20px)}.about-heading.in-view{opacity:1;transform:translateY(0)}.about-text p{color:#fffc;opacity:0;margin-top:0;margin-bottom:1.25rem;font-size:clamp(.95rem,1.5vw,1.05rem);line-height:1.75;transition:opacity 1.3s ease-out,transform 1.3s ease-out;transform:translateY(20px)}.about-text p.in-view{opacity:1;transform:translateY(0)}.about-text p.in-view:nth-of-type(2){transition-delay:.15s}.about-logoloop-wrapper{opacity:0;margin-bottom:3rem;transition:opacity 1.3s ease-out,transform 1.3s ease-out;transform:translateY(20px)}.about-logoloop-wrapper.in-view{opacity:1;transform:translateY(0)}.about-main-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:1rem;margin-top:0;display:grid}.about-character-wrapper{width:100%;min-width:0;min-height:460px;margin-top:-2rem}.about-cv-button{color:#fff;cursor:pointer;opacity:0;background:0 0;border:1px solid #fff6;border-radius:.6rem;justify-content:center;align-items:center;width:fit-content;margin-top:1.5rem;padding:.8rem 1.8rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .25s,background-color .25s,border-color .25s;display:flex;transform:translateY(20px)}.about-cv-button.in-view{opacity:1;transition:opacity 1.3s ease-out .3s,transform 1.3s ease-out .3s,background-color .25s .3s,border-color .25s .3s;transform:translateY(0)}.about-cv-button:hover{background:#ffffff1a;border-color:#ffffffb3;transform:translateY(-3px)}@media (width<=768px){.about-section{padding:4rem 6%}.about-heading,.about-text p{text-align:center}.about-cv-button{margin-left:auto;margin-right:auto}}@media (width<=480px){.about-section{padding:3rem 6%}}@media (width<=900px){.about-main-grid{grid-template-columns:1fr}.about-character-wrapper{min-height:340px;margin-top:2rem}.about-cv-button{margin-left:auto;margin-right:auto}}.journey-wrapper{max-width:1000px;margin:5rem auto 0;padding:0 1rem;position:relative;overflow:hidden}.journey-wrapper>div:not(.shard-bg-wrapper){z-index:2;position:relative}.journey-title{z-index:1;text-align:center;margin-bottom:4rem;position:relative}.journey-track{z-index:1;position:relative;overflow:visible}.journey-track>.journey-line-bg,.journey-track>.journey-line-progress,.journey-track>.journey-row{z-index:1}.journey-line-bg{background:#ffffff1f;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.journey-line-progress{background:#fff;width:2px;transition:height .15s linear;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 8px #fff9}.journey-row{opacity:.3;justify-content:center;align-items:flex-start;gap:1.5rem;margin-bottom:4rem;transition:opacity .6s;display:flex;position:relative}.journey-row.active{opacity:1}.journey-row:last-child{margin-bottom:0}.journey-side{flex:1;display:flex}.row-left .journey-side.card-side{order:1;justify-content:flex-end}.row-left .journey-side.year-side{order:3;justify-content:flex-start;padding-left:.5rem}.row-right .journey-side.card-side{order:3;justify-content:flex-start}.row-right .journey-side.year-side{order:1;justify-content:flex-end;padding-right:.5rem}.journey-node-icon{z-index:2;box-sizing:border-box;background:#fff;border:2px solid #ffffff40;border-radius:50%;flex-shrink:0;order:2;justify-content:center;align-items:center;width:56px;height:56px;padding:10px;transition:border-color .4s,box-shadow .4s,transform .3s;display:flex;overflow:hidden}.journey-logo-img{object-fit:contain;width:100%;height:100%}.journey-row.active .journey-node-icon{border-color:#fff;transform:scale(1.05);box-shadow:0 0 14px #ffffff80}.journey-year{color:#fff9;white-space:nowrap;font-size:.95rem;font-weight:700;transition:color .4s}.journey-row.active .journey-year{color:#ffffffe6}.journey-card{box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:1rem;flex-direction:column;justify-content:flex-start;width:420px;min-height:220px;padding:1.5rem 1.75rem;transition:transform .3s,background-color .3s,border-color .3s;display:flex}.journey-card:hover{background:#ffffff12;border-color:#ffffff40}.journey-node-title{color:var(--fg);margin:0 0 .3rem;font-size:1.15rem;font-weight:700}.journey-place{color:#ffffff8c;margin-bottom:1rem;font-size:.88rem;display:block}.journey-detail-list{flex-direction:column;gap:.5rem;margin:0;padding-left:1.1rem;display:flex}.journey-detail-list li{color:#ffffffbf;font-size:.88rem;line-height:1.5}@media (width<=768px){.journey-row{gap:.5rem .75rem;justify-content:initial;grid-template-columns:40px minmax(0,1fr);align-items:start;display:grid}.journey-side.card-side,.row-left .journey-side.card-side,.row-right .journey-side.card-side{order:initial;grid-area:1/2;justify-content:stretch;min-width:0}.journey-side.year-side,.row-left .journey-side.year-side,.row-right .journey-side.year-side{order:initial;grid-area:2/2;justify-content:flex-start;padding-left:0;padding-right:0}.journey-node-icon{grid-area:1/1;justify-self:center;padding:7px}.journey-line-bg,.journey-line-progress{left:20px}.journey-card{width:100%;min-height:0;padding:1.25rem}.journey-node-icon{width:40px;height:40px;padding:6px}.journey-year{font-size:.85rem}.journey-node-title{font-size:1rem}.journey-place{font-size:.8rem}.journey-detail-list li{font-size:.82rem}}@media (width<=480px){.journey-row{gap:.5rem}.journey-card{padding:1rem}.journey-node-icon{width:34px;height:34px;padding:6px}.journey-line-bg,.journey-line-progress{left:17px}.journey-year{font-size:.75rem}}.shard-bg-wrapper{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.shard-piece{clip-path:polygon(50% 0%,100% 35%,78% 100%,22% 100%,0% 35%);filter:blur(.5px);will-change:transform, opacity;background:linear-gradient(135deg,#ffffff4d 0%,#ffffff08 100%);animation:linear infinite shard-float;position:absolute}@keyframes shard-float{0%{transform:translate(0, 0) rotate(var(--rot,0deg)) scale(1)}25%{transform:translate(15px, -25px) rotate(calc(var(--rot,0deg) + 8deg)) scale(1.03)}50%{transform:translate(-10px, -45px) rotate(calc(var(--rot,0deg) - 6deg)) scale(.97)}75%{transform:translate(-20px, -20px) rotate(calc(var(--rot,0deg) + 4deg)) scale(1.02)}to{transform:translate(0, 0) rotate(var(--rot,0deg)) scale(1)}}@media (prefers-reduced-motion:reduce){.shard-piece{animation:none}}@media (width<=600px){.shard-piece:nth-child(2n){display:none}}.skills-section{background:var(--bg);width:100%;color:var(--fg);padding:5rem 5%;position:relative}.skills-container{max-width:1100px;margin:0 auto}.skills-heading{text-align:center;margin-bottom:2rem}.skills-orbit-container{margin-bottom:3rem}.skills-list-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2.5rem;margin-top:2rem;display:grid}.skills-category{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(20px)}.skills-list-grid.in-view .skills-category{opacity:1;transform:translateY(0)}.skills-category-title{color:var(--fg);margin-bottom:1rem;padding-bottom:.6rem;font-size:1.05rem;font-weight:700;position:relative}.skills-category-title:after{content:"";background:#ffffff80;width:32px;height:2px;position:absolute;bottom:0;left:0}.skills-category-items{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.skills-category-items li{color:#fffc;opacity:0;cursor:default;background:#ffffff08;border:1px solid #ffffff14;border-radius:.6rem;align-items:center;gap:.7rem;padding:.65rem .9rem;font-size:.9rem;transition:opacity .6s,transform .6s,background-color .25s,border-color .25s,box-shadow .25s;display:flex;transform:translate(-10px)}.skills-list-grid.in-view .skills-category-items li{opacity:1;transform:translate(0)}.skills-category-items li:hover{background:#ffffff17;border-color:#ffffff4d;transform:translate(4px);box-shadow:0 4px 14px #00000059}.skill-item-icon{color:#fff9;flex-shrink:0;justify-content:center;align-items:center;width:22px;font-size:1.1rem;transition:color .25s,transform .25s;display:flex}.skills-category-items li:hover .skill-item-icon{color:#fff;transform:scale(1.15)}.skill-item-name{font-weight:500}@media (width<=768px){.skills-section{padding:4rem 6%}.skills-list-grid{grid-template-columns:1fr 1fr;gap:1.75rem}}@media (width<=480px){.skills-list-grid{grid-template-columns:1fr}}.projects-section{background:var(--bg);width:100%;color:var(--fg);padding:5rem 5%;position:relative}.projects-container{max-width:1100px;margin:0 auto}.projects-heading{text-align:center;margin-bottom:3rem}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.75rem;display:grid}.project-card{opacity:0;background:#ffffff08;border:1px solid #ffffff1a;border-radius:1rem;transition:opacity .8s ease-out,transform .8s ease-out,background-color .3s,border-color .3s,box-shadow .3s;overflow:hidden;transform:translateY(20px)}.projects-grid.in-view .project-card{opacity:1;transform:translateY(0)}.project-card:hover{border-color:#ffffff40;transform:translateY(-6px);box-shadow:0 14px 34px #00000073}.project-image-wrapper{aspect-ratio:16/10;background:#ffffff0a;width:100%;position:relative;overflow:hidden}.project-image{object-fit:cover;width:100%;height:100%;transition:transform .5s,filter .5s;display:block}.project-card:hover .project-image{filter:brightness(.55);transform:scale(1.08)}.project-image-overlay{opacity:0;justify-content:center;align-items:center;transition:opacity .35s;display:flex;position:absolute;inset:0}.project-card:hover .project-image-overlay{opacity:1}.project-links{gap:1rem;display:flex}.project-links a{color:#fff;opacity:0;background:#ffffff1a;border:1px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;text-decoration:none;transition:transform .35s,opacity .35s,background-color .25s,border-color .25s;display:flex;transform:translateY(10px)}.project-card:hover .project-links a{opacity:1;transform:translateY(0)}.project-links a:nth-child(2){transition-delay:50ms}.project-links a:hover{background:#fff3;border-color:#fff}.project-card-body{padding:1.4rem 1.5rem 1.6rem}.project-title{color:var(--fg);margin:0 0 .6rem;font-size:1.1rem;font-weight:700}.project-description{color:#ffffffb3;margin:0 0 1rem;font-size:.88rem;line-height:1.6}.project-tags{flex-wrap:wrap;gap:.5rem;display:flex}.project-tag{color:#ffffffb3;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:100vw;padding:.3rem .7rem;font-size:.73rem;font-weight:600}@media (width<=768px){.projects-section{padding:4rem 6%}.projects-grid{grid-template-columns:1fr}}.certifications-section{background:var(--bg);width:100%;color:var(--fg);padding:5rem 5%;position:relative}.certifications-container{opacity:0;max-width:1200px;margin:0 auto;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(20px)}.certifications-section.in-view .certifications-container{opacity:1;transform:translateY(0)}.certifications-heading{text-align:center;margin-bottom:.75rem}.certifications-subtitle{text-align:center;color:#fff9;max-width:560px;margin:0 auto 3rem;font-size:.95rem;line-height:1.6}.cert-stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;margin-bottom:3rem;display:grid}.cert-stat-card{text-align:center;background:#ffffff08;border:1px solid #ffffff1a;border-top:2px solid #fff6;border-radius:.9rem;padding:1.5rem;transition:transform .3s,background-color .3s}.cert-stat-card:hover{background:#ffffff0f;transform:translateY(-4px)}.cert-stat-icon{color:#fff;background:#ffffff0f;border-radius:.6rem;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.75rem;font-size:1.1rem;display:inline-flex}.cert-stat-value{color:#fff;margin-bottom:.25rem;font-size:1.8rem;font-weight:700}.cert-stat-label{color:#ffffff8c;font-size:.8rem}.cert-mode-switch{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:100vw;margin-bottom:1.5rem;padding:.3rem;display:inline-flex}.cert-mode-btn{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:100vw;padding:.5rem 1.2rem;font-size:.85rem;font-weight:600;transition:background-color .25s,color .25s}.cert-mode-btn.active{color:#000;background:#fff}.cert-mode-btn:not(.active):hover{color:#fff}.cert-filter-tabs{flex-wrap:wrap;gap:.6rem;margin-bottom:2.5rem;display:flex}.cert-filter-tab{color:#ffffffb3;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:100vw;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background-color .25s,border-color .25s,color .25s,transform .2s;display:flex}.cert-filter-tab:hover{background:#ffffff14;border-color:#ffffff4d;transform:translateY(-2px)}.cert-filter-tab.active{color:#000;background:#fff;border-color:#fff}.cert-filter-count{background:#ffffff26;border-radius:100vw;padding:.05rem .4rem;font-size:.72rem}.cert-filter-tab.active .cert-filter-count{background:#00000026}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:stretch;gap:1.5rem;display:grid}.cert-card-v2{opacity:0;background:#ffffff08;border:1px solid #ffffff1a;border-radius:1rem;flex-direction:column;min-height:380px;transition:opacity .7s ease-out,transform .7s ease-out,background-color .3s,border-color .3s,box-shadow .3s;display:flex;overflow:hidden;transform:translateY(20px)}.cert-grid.in-view .cert-card-v2{opacity:1;transform:translateY(0)}.cert-card-v2:hover{background:#ffffff0f;border-color:#ffffff40;transform:translateY(-5px);box-shadow:0 10px 28px #0006}.cert-badge-wrapper{aspect-ratio:4/3;background:#ffffff0a;flex-shrink:0;justify-content:center;align-items:center;width:100%;padding:.4rem;display:flex}.cert-badge-img{object-fit:contain;border-radius:.5rem;max-width:100%;max-height:100%}.cert-badge-placeholder{color:#ffffff4d;background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.6rem;display:flex}.cert-card-v2-body{flex-direction:column;flex:1;padding:1.2rem 1.3rem 1.4rem;display:flex}.cert-tags-row{gap:.5rem;min-height:26px;margin-bottom:.75rem;display:flex}.cert-category-tag{color:#ffffffbf;background:#ffffff0f;border:1px solid #ffffff26;border-radius:100vw;padding:.25rem .65rem;font-size:.72rem;font-weight:600}.cert-featured-tag{color:#000;background:#ffffffe6;border-radius:100vw;align-items:center;gap:.3rem;padding:.25rem .65rem;font-size:.72rem;font-weight:600;display:flex}.cert-main-row{flex:1;align-items:flex-start;gap:.6rem;display:flex}.cert-title-icon{color:#fff6;flex-shrink:0;margin-top:.2rem;font-size:1.1rem}.cert-main-column{flex-direction:column;flex:1;gap:.4rem;min-width:0;display:flex}.cert-title-v2{color:var(--fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;margin:0;font-size:1rem;font-weight:700;display:-webkit-box;overflow:hidden}.cert-issuer-row{flex-wrap:wrap;align-items:center;gap:.6rem;min-height:20px;display:flex}.cert-issuer-v2{color:#ffffff8c;margin-bottom:.35rem;font-size:.82rem;display:block}.cert-credential-code{color:#ffffff73;letter-spacing:.03em;background:#ffffff0a;border:1px solid #ffffff14;border-radius:.35rem;width:fit-content;margin-bottom:.7rem;padding:.15rem .5rem;font-family:Courier New,Courier,monospace;font-size:.72rem;display:inline-flex}.cert-verify-link{width:fit-content;color:var(--fg);align-items:center;gap:.35rem;font-size:.78rem;line-height:1.2;text-decoration:none;display:inline-flex}.cert-verify-link:hover,.cert-verify-link:focus-visible{color:#fff;text-decoration:none}@media (width<=768px){.certifications-section{padding:4rem 6%}.cert-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.cert-stat-card{padding:1.1rem .75rem}.cert-mode-switch{justify-content:center;width:100%}.cert-mode-btn{flex:1;padding:.45rem .8rem;font-size:.8rem}.cert-filter-tabs{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;gap:.5rem;margin:0 -6% 2rem;padding:6px 6% .6rem;overflow-x:auto}.cert-filter-tabs::-webkit-scrollbar{display:none}.cert-filter-tab{scroll-snap-align:start;flex-shrink:0;padding:.4rem .85rem;font-size:.78rem}.cert-filter-count{font-size:.65rem}.cert-grid{grid-template-columns:1fr}.cert-filter-tabs-wrapper{position:relative}.cert-filter-tabs-wrapper:after{display:none}}@media (prefers-reduced-motion:reduce){.certifications-container{opacity:1;transition:none;transform:none}}.contact-section{background:var(--bg);width:100%;color:var(--fg);padding:5rem 5% 1rem;scroll-margin-top:30px;position:relative}.contact-container{max-width:1000px;margin:0 auto}.contact-eyebrow{text-align:center;color:#ffffff73;letter-spacing:.18em;text-transform:uppercase;opacity:0;margin-bottom:1.5rem;font-size:.75rem;font-weight:700;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(15px)}.contact-eyebrow.in-view{opacity:1;transform:translateY(0)}.contact-heading{text-align:center;margin-top:0;margin-bottom:.75rem}.contact-subtitle{text-align:center;color:#fff9;opacity:0;max-width:480px;margin:0 auto 3rem;font-size:.95rem;line-height:1.6;transition:opacity .8s ease-out,transform .8s ease-out;transform:translateY(15px)}.contact-subtitle.in-view{opacity:1;transform:translateY(0)}.contact-intro{color:#ffffffad;align-items:flex-start;gap:.85rem;margin-bottom:.5rem;font-size:.92rem;line-height:1.65;display:flex}.contact-intro-line{background:#ffffffa6;width:2px;min-width:2px;min-height:3.2rem}.contact-grid{opacity:0;grid-template-columns:1fr 1.3fr;gap:2.5rem;transition:opacity .8s ease-out,transform .8s ease-out;display:grid;transform:translateY(20px)}.contact-grid.in-view{opacity:1;transform:translateY(0)}.contact-info{flex-direction:column;gap:1rem;display:flex}.contact-info-item{color:inherit;background:#ffffff08;border:1px solid #ffffff1a;border-radius:.8rem;align-items:center;gap:1rem;padding:1rem 1.1rem;text-decoration:none;transition:background-color .25s,border-color .25s,transform .25s;display:flex}a.contact-info-item{cursor:pointer}.contact-info-item:hover{background:#ffffff12;border-color:#ffffff40;transform:translate(4px)}.contact-info-icon{color:#fff;background:#ffffff0f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.05rem;display:flex}.contact-info-item div:not(.contact-info-icon),.contact-info-copy{flex-direction:column;gap:.15rem;min-width:0;display:flex}.contact-info-label{text-transform:uppercase;letter-spacing:.03em;color:#ffffff73;font-size:.75rem;font-weight:600}.contact-info-value{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.contact-form{flex-direction:column;gap:1.1rem;display:flex}.contact-form-row{grid-template-columns:1fr 1fr;gap:1.1rem;display:grid}.contact-form-group{flex-direction:column;gap:.4rem;display:flex}.contact-form-group label{color:#ffffffb3;font-size:.82rem;font-weight:600}.contact-form-group input,.contact-form-group textarea{color:var(--fg);resize:vertical;background:#ffffff08;border:1px solid #ffffff26;border-radius:.6rem;padding:.75rem .9rem;font-family:inherit;font-size:.9rem;transition:border-color .25s,background-color .25s}.contact-form-group input:focus,.contact-form-group textarea:focus{background:#ffffff0f;border-color:#ffffff80;outline:none}.contact-form-group input::placeholder,.contact-form-group textarea::placeholder{color:#ffffff4d}.contact-submit-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:.6rem;justify-content:center;align-items:center;gap:.6rem;margin-top:.5rem;padding:.85rem 1.5rem;font-size:.92rem;font-weight:700;transition:transform .25s,background-color .25s,opacity .25s;display:flex}.contact-submit-btn:hover:not(:disabled){background:#ffffffd9;transform:translateY(-3px)}.contact-submit-btn:disabled{opacity:.6;cursor:not-allowed}.contact-status{border-radius:.5rem;margin-top:.5rem;padding:.7rem 1rem;font-size:.85rem}.contact-status-success{color:#ffffffe6;background:#ffffff14;border:1px solid #fff3}.contact-status-error{color:#ff9696e6;background:#ff505014;border:1px solid #ff505040}@media (width<=768px){.contact-section{padding:1.5rem 6% 4rem}.contact-grid{grid-template-columns:1fr;gap:2rem}.contact-form-row{grid-template-columns:1fr}}
