:root{--bg: #fff6fb;--bg-soft: #fffafd;--bg-panel: rgba(255, 255, 255, .84);--bg-panel-strong: rgba(255, 248, 252, .94);--surface-border: rgba(184, 128, 150, .16);--surface-border-strong: rgba(184, 128, 150, .24);--text: #2d1b28;--muted: #6e5162;--muted-strong: #6f4c5f;--accent-cyan: #f0a8c4;--accent-blue: #d28ad6;--accent-gold: #f1b6c8;--accent-rose: #e47aa8;--accent-indigo: #c487d8;--accent-orange: #f3a5b7;--shadow: 0 24px 80px rgba(185, 124, 151, .14);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 18px;--container: min(1180px, calc(100vw - 2rem) );--section-space: clamp(2rem, 4.2vw, 3.5rem);--nav-height: 82px;color-scheme:light;scroll-behavior:smooth}@keyframes sectionGlyph{50%{transform:rotate(190deg) scale(1.12);border-color:#68bcb366}}@keyframes sectionDot{50%{transform:translate(-18px,12px) scale(1.25)}}*{box-sizing:border-box}html{font-size:16px}body{margin:0;min-width:0;overflow-x:hidden;font-family:Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(240,168,196,.28),transparent 34%),radial-gradient(circle at 85% 15%,rgba(210,138,214,.2),transparent 28%),radial-gradient(circle at 50% 100%,rgba(228,122,168,.16),transparent 25%),linear-gradient(180deg,#fffafd,#fff1f7);color:var(--text)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(111,76,95,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(111,76,95,.03) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 88%);mask-image:radial-gradient(circle at center,black,transparent 88%);opacity:.5;animation:meshFloat 18s ease-in-out infinite alternate}body:after{content:"";position:fixed;top:-10%;right:-10%;bottom:-10%;left:-10%;pointer-events:none;background:radial-gradient(circle at 18% 20%,rgba(240,168,196,.18),transparent 20%),radial-gradient(circle at 80% 18%,rgba(210,138,214,.14),transparent 22%),radial-gradient(circle at 72% 72%,rgba(228,122,168,.12),transparent 18%),radial-gradient(circle at 24% 82%,rgba(255,255,255,.55),transparent 20%);filter:blur(24px);opacity:.9;animation:auroraDrift 24s ease-in-out infinite alternate}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid rgba(228,122,168,.4);outline-offset:3px}#root{isolation:isolate}.app-loading{min-height:100vh;overflow:hidden;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(circle at 15% 15%,rgba(240,106,169,.18),transparent 28%),radial-gradient(circle at 85% 80%,rgba(196,135,216,.2),transparent 32%),#120b19}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;transition:opacity .55s cubic-bezier(.16,1,.3,1),visibility .55s ease}.loading-overlay.is-exiting{opacity:0;visibility:hidden;pointer-events:none}.loading-logo{width:min(360px,68vw);height:auto;opacity:.96;filter:drop-shadow(0 14px 34px rgba(0,0,0,.42))}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:200;padding:.75rem 1rem;border-radius:999px;background:#6f4c5ff5;color:#fff;transform:translateY(-180%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}.page-shell{position:relative;min-height:100vh;overflow:clip;perspective:1400px}.section-content-depth{position:relative;transform-style:preserve-3d;will-change:transform,opacity}.flower-fall{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;overflow:hidden;pointer-events:none}.section-burst{position:fixed;top:50%;right:clamp(1rem,8vw,8rem);z-index:180;width:clamp(12rem,25vw,22rem);height:clamp(12rem,25vw,22rem);pointer-events:none;transform-origin:center}.burst-core{position:absolute;top:50%;left:50%;z-index:2;color:#fff4fa;font-size:clamp(3.5rem,8vw,7rem);line-height:1;text-shadow:0 8px 30px rgba(45,27,40,.25);transform:translate(-50%,-50%) rotate(-14deg)}.burst-petal{position:absolute;top:50%;left:50%;width:45%;height:76%;border-radius:52% 48% 64% 36%;transform-origin:50% 92%;opacity:.88;filter:drop-shadow(0 14px 18px rgba(45,27,40,.12))}.burst-petal-one{background:#e47aa8;transform:translate(-50%,-92%) rotate(0)}.burst-petal-two{background:#c487d8;transform:translate(-50%,-92%) rotate(90deg)}.burst-petal-three{background:#68bcb3;transform:translate(-50%,-92%) rotate(180deg)}.burst-petal-four{background:#f1b6c8;transform:translate(-50%,-92%) rotate(270deg)}.hero-panel,.section-inner,.navbar,.footer-inner{transition:box-shadow .6s ease}.hero-title,.section-title,.project-title,.experience-title,.card-title,.skill-title,.education-title,.contact-title{position:relative;z-index:1;text-wrap:balance}.hero-title{background:linear-gradient(110deg,var(--text) 18%,var(--accent-rose) 48%,var(--accent-indigo) 74%,var(--text) 95%);background-size:230% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:titleColorJourney 7s ease-in-out infinite alternate}.section-title:after,.hero-title:after{content:"";display:block;width:min(8rem,32%);height:.35rem;margin-top:.7rem;border-radius:80% 20% 70% 30%;background:linear-gradient(90deg,var(--accent-rose),var(--accent-indigo),var(--accent-cyan));transform:rotate(-2deg);transform-origin:left;animation:titleStroke 3.5s ease-in-out infinite alternate}.eyebrow,.workbench-label,.meta-line,.tag,.stack-chip,.pill,.badge-list,.experience-number{transition:transform .35s cubic-bezier(.2,.8,.2,1),color .35s ease,background .35s ease,box-shadow .35s ease}.eyebrow:hover,.tag:hover,.stack-chip:hover,.pill:hover{color:#fff;background:var(--accent-rose);box-shadow:0 8px 20px #e47aa842;transform:translateY(-5px) rotate(-3deg) scale(1.06)}.glass-card,.skill-card,.education-card,.project-card,.contact-card,.experience-card,.summary-item,.stat-card,.certification-item{transition:filter .3s ease}.glass-card:hover,.skill-card:hover,.education-card:hover,.project-card:hover,.contact-card:hover,.experience-card:hover,.summary-item:hover,.stat-card:hover,.certification-item:hover{z-index:4;transform:translateY(-6px)!important;border-color:var(--accent-rose);box-shadow:0 20px 40px #e47aa829}.cards-grid .glass-card:nth-child(1):hover,.skill-card:nth-child(1):hover,.project-card:nth-child(1):hover,.cards-grid .glass-card:nth-child(2):hover,.skill-card:nth-child(2):hover,.project-card:nth-child(2):hover,.cards-grid .glass-card:nth-child(3):hover,.skill-card:nth-child(3):hover,.project-card:nth-child(3):hover,.cards-grid .glass-card:nth-child(4):hover,.skill-card:nth-child(4):hover,.project-card:nth-child(4):hover,.experience-card:nth-child(1):hover,.experience-card:nth-child(2):hover,.experience-card:nth-child(3):hover,.experience-card:nth-child(4):hover,.contact-grid .contact-card:nth-child(1):hover,.contact-grid .contact-card:nth-child(2):hover,.contact-grid .contact-card:nth-child(3):hover,.contact-grid .contact-card:nth-child(4):hover,.education-card:hover,.certification-item:hover{transform:translateY(-6px)!important}.project-card:nth-child(1) .project-media:before,.project-card:nth-child(2) .project-media:before,.project-card:nth-child(3) .project-media:before{content:"";position:absolute;top:12%;right:10%;width:2.2rem;height:2.2rem;border:2px solid rgba(228,122,168,.48);border-radius:50%;animation:orbitMark 5s ease-in-out infinite;pointer-events:none}.project-card:nth-child(2) .project-media:before{border-color:#c487d88c;border-radius:38% 62% 55% 45%;animation-delay:-1.5s}.project-card:nth-child(3) .project-media:before{border-color:#68bcb399;border-radius:60% 40% 30% 70%;animation-delay:-3s}.hero-tagline .pill:nth-child(1){animation:chipDrift 4s ease-in-out infinite}.hero-tagline .pill:nth-child(2){animation:chipDrift 4.8s ease-in-out -1.3s infinite}.hero-tagline .pill:nth-child(3){animation:chipDrift 5.2s ease-in-out -2.4s infinite}.stack-chip:nth-child(3n){animation:chipPop 3.8s ease-in-out infinite}.stack-chip:nth-child(3n+1){animation-delay:-1.1s}.stack-chip:nth-child(3n+2){animation-delay:-2.2s}.timeline:after{content:"";position:absolute;top:0;left:.84rem;width:.34rem;height:2.5rem;border-radius:99px;background:linear-gradient(#e47aa8,#68bcb3);box-shadow:0 0 18px #e47aa88c;animation:timelineRunner 5s ease-in-out infinite}.engineering-map-line{animation:mapPulse 3s ease-in-out infinite alternate}.section-head:hover .eyebrow{transform:translate(10px) rotate(-3deg)}.section-head:hover .section-title:after{width:min(15rem,58%);transform:rotate(4deg) scaleY(1.5)}@keyframes orbitMark{0%,to{transform:translate(0) rotate(0) scale(.8)}50%{transform:translate(-18px,20px) rotate(180deg) scale(1.3)}}@keyframes chipDrift{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-2deg)}}@keyframes chipPop{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.06) rotate(1.5deg)}}@keyframes timelineRunner{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(8rem);opacity:1}}@keyframes mapPulse{0%{opacity:.35;filter:blur(0)}to{opacity:.95;filter:blur(.5px)}}.summary-item:hover,.stat-card:hover,.certification-item:hover{transform:translateY(-6px)!important;box-shadow:0 14px 28px #e47aa81f}.education-card:hover{transform:translateY(-6px)!important}.contact-grid .contact-card:nth-child(1):hover,.contact-grid .contact-card:nth-child(2):hover,.contact-grid .contact-card:nth-child(3):hover,.contact-grid .contact-card:nth-child(4):hover{transform:translateY(-6px)!important}.project-media,.project-shot,.workbench-preview,.engineering-map-visual,.creative-interest,.journey-card{overflow:hidden;transform-style:preserve-3d}.project-media:after,.project-shot:after,.workbench-preview:after,.creative-interest:after,.journey-card:after{content:"";position:absolute;inset:-50% auto -50% -40%;width:35%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.4),transparent);transform:translate(-220%) rotate(18deg);pointer-events:none;animation:lightSweep 6s ease-in-out infinite}.project-preview-image,.project-media img,.workbench-image-wrap img,.profile-image{transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .8s ease}.project-card:hover .project-preview-image,.project-card:hover .project-media img,.workbench-preview:hover img,.profile-frame:hover .profile-image{transform:scale(1.08) rotate(1.5deg);filter:saturate(1.2) contrast(1.08)}.button,.text-button,.nav-link,.theme-button,.menu-button,.close-button{position:relative;overflow:hidden;isolation:isolate}.button:before,.text-button:before,.nav-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.55),transparent 80%);transform:translate(-130%);transition:transform .7s ease}.button:hover:before,.text-button:hover:before,.nav-link:hover:before{transform:translate(130%)}.hero-actions .button-primary{animation:callToActionPulse 2.8s ease-in-out infinite}.experience-card:nth-child(2n) .experience-number,.project-card:nth-child(2n) .project-title,.skill-card:nth-child(2n) .skill-title{color:var(--accent-indigo)}.experience-card:nth-child(3n) .experience-number,.project-card:nth-child(3n) .project-title,.skill-card:nth-child(3n) .skill-title{color:#4c9c95}@keyframes livingSurface{0%{box-shadow:var(--shadow)}to{box-shadow:0 30px 95px #e47aa833,0 0 0 1px #c487d814}}@keyframes titleColorJourney{0%{background-position:0% 50%}to{background-position:100% 50%}}@keyframes titleStroke{0%{transform:rotate(-3deg) scaleX(.65)}to{transform:rotate(3deg) scaleX(1.15)}}@keyframes cardBreath{0%,to{filter:saturate(1)}50%{filter:saturate(1.08)}}@keyframes lightSweep{0%,55%{transform:translate(-220%) rotate(18deg)}80%,to{transform:translate(520%) rotate(18deg)}}@keyframes callToActionPulse{0%,to{box-shadow:0 16px 28px #e47aa833}50%{box-shadow:0 20px 38px #e47aa866,0 0 0 7px #e47aa814}}.falling-flower{position:absolute;top:-2rem;left:var(--flower-x);color:#e47aa8c7;font-size:var(--flower-size);line-height:1;text-shadow:0 0 10px rgba(228,122,168,.35);animation:flowerFall var(--flower-duration) cubic-bezier(.2,.65,.35,1) var(--flower-delay) 1 both;will-change:transform,opacity}.falling-flower:nth-child(3n){color:#c487d8b3;animation-name:flowerFallWide}.falling-flower:nth-child(4n){color:#f1b6c8e6;font-size:calc(var(--flower-size) * 1.25)}.falling-flower:nth-child(5n){color:#68bcb3b8;animation-duration:calc(var(--flower-duration) * 1.2)}.falling-flower:nth-child(7n){text-shadow:0 0 16px rgba(255,188,220,.78),0 0 30px rgba(228,122,168,.42)}@keyframes flowerFall{0%{opacity:0;transform:translate3d(0,-8vh,0) rotate(0) scale(.6)}12%{opacity:.9}to{opacity:0;transform:translate3d(28px,112vh,0) rotate(260deg) scale(1)}}@keyframes flowerFallWide{0%{opacity:0;transform:translate3d(0,-8vh,0) rotate(0) scale(.5)}15%{opacity:.85}to{opacity:0;transform:translate3d(-42px,112vh,0) rotate(-220deg) scale(1.1)}}.hero-visual .profile-frame{animation:portraitFloat 5.5s ease-in-out infinite;transform-style:preserve-3d}.hero-visual .profile-frame:hover{animation-play-state:paused;transform:translateY(-6px)}.project-card,.experience-card,.glass-card,.skill-card{transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease}.project-card:hover{transform:translateY(-6px)!important;box-shadow:0 20px 40px #e47aa829}@keyframes portraitFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(1deg)}}.container{width:var(--container);margin-inline:auto}.section{position:relative;padding:var(--section-space) 0}.section-inner{position:relative;z-index:1}.section-inner:after{content:"";position:absolute;top:1.2rem;right:1.4rem;width:3.2rem;height:3.2rem;border:1px solid rgba(228,122,168,.28);border-radius:42% 58% 63% 37%;transform:rotate(18deg);pointer-events:none;animation:sectionGlyph 8s ease-in-out infinite}.section-inner:before{content:"";position:absolute;right:2.15rem;top:2.45rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--accent-rose);box-shadow:0 0 0 .45rem #e47aa81f,0 0 1.2rem #e47aa866;pointer-events:none;animation:sectionDot 3.5s ease-in-out infinite}.section:before,.section:after{content:"";position:absolute;pointer-events:none}.section:before{top:18%;right:-8rem;width:18rem;height:5rem;border-radius:50%;background:var(--section-brush, rgba(228,122,168,.12));filter:blur(1px);transform:rotate(-18deg);opacity:.8}.section:after{bottom:8%;left:-10rem;width:22rem;height:2.5rem;border-radius:50%;background:var(--section-brush-two, rgba(196,135,216,.11));transform:rotate(21deg);filter:blur(2px)}.section-about{--section-brush: rgba(104,188,179,.16);--section-brush-two: rgba(228,122,168,.13)}.section-experience{--section-brush: rgba(196,135,216,.18);--section-brush-two: rgba(240,168,196,.16)}.section-projects{--section-brush: rgba(228,122,168,.2);--section-brush-two: rgba(104,188,179,.12)}.section-skills{--section-brush: rgba(104,188,179,.15);--section-brush-two: rgba(196,135,216,.12)}.section-contact{--section-brush: rgba(240,168,196,.2);--section-brush-two: rgba(228,122,168,.12)}.section+.section{padding-top:clamp(.85rem,1.8vw,1.4rem)}.section-inner{padding:clamp(1.6rem,3.5vw,2.35rem);border:1px solid var(--surface-border);border-radius:var(--radius-xl);background:linear-gradient(180deg,#ffffffb8,#fff4f9d1);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.section-head{display:grid;gap:.9rem;margin-bottom:clamp(2.3rem,4vw,3.35rem);max-width:760px}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;width:fit-content;padding:.45rem .8rem;border-radius:999px;border:1px solid rgba(228,122,168,.18);background:#f0a8c41f;color:var(--muted-strong);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.section-title,.hero-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(2rem,5vw,4.8rem);line-height:.98;letter-spacing:-.04em}.section-title{font-size:clamp(1.7rem,3.7vw,3rem);line-height:1.04}.section-description,.lead{margin:0;color:var(--muted);font-size:clamp(1rem,1.8vw,1.1rem);line-height:1.8}.navbar-wrap{position:sticky;top:0;z-index:120;padding-top:1rem}.navbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--nav-height);padding:.85rem 1rem;border:1px solid rgba(184,128,150,.12);border-radius:28px;background:#ffffffc2;box-shadow:0 16px 34px #b97c971a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.navbar:after{content:"";position:absolute;inset:auto 1.1rem .65rem 1.1rem;height:1px;background:linear-gradient(90deg,transparent,rgba(228,122,168,.18),rgba(240,168,196,.26),transparent);pointer-events:none}.brand{display:flex;align-items:center;gap:.9rem}.brand-copy strong,.hero-copy strong{display:block;font-size:.97rem}.brand-copy span,.hero-copy span,.meta-line{color:var(--muted);font-size:.9rem}.nav-links{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;padding:.25rem;border-radius:999px;border:1px solid rgba(184,128,150,.08);background:#fff3f8e6}.nav-link,.inline-link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;padding:.72rem 1rem;border-radius:999px;color:var(--muted-strong);background:transparent;transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.nav-link:hover,.nav-link[aria-current=location]{background:#fffffffa;color:var(--text);box-shadow:0 8px 20px #b97c971a}.nav-actions{display:flex;align-items:center;gap:.8rem}.button,.menu-button,.icon-button,.close-button,.nav-link,.text-button{border:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3rem;padding:.9rem 1.2rem;border-radius:999px;font-weight:700;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.button:hover,.icon-button:hover,.menu-button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg,var(--accent-cyan),var(--accent-blue));color:#fff;box-shadow:0 16px 28px #e47aa833}.button-secondary{background:#ffffffc7;color:var(--text);border:1px solid rgba(184,128,150,.12)}.menu-button{display:none;place-items:center;width:3rem;height:3rem;border-radius:50%;background:#fff3f8eb;color:var(--text)}.hero{padding-top:clamp(1rem,2.5vw,1.85rem)}.hero-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.9fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;padding:clamp(1.5rem,4vw,2.25rem);border:1px solid rgba(184,128,150,.12);border-radius:calc(var(--radius-xl) + 6px);background:radial-gradient(circle at 20% 20%,rgba(240,168,196,.22),transparent 26%),radial-gradient(circle at 90% 20%,rgba(210,138,214,.18),transparent 24%),radial-gradient(circle at 60% 120%,rgba(228,122,168,.14),transparent 30%),linear-gradient(180deg,#fffffff0,#fff1f7fa);box-shadow:var(--shadow)}.hero-panel:before{content:"";position:absolute;top:-9rem;left:42%;width:12rem;height:32rem;border-radius:48% 52% 38% 62%;background:linear-gradient(180deg,#e47aa838,#68bcb314);transform:rotate(24deg);filter:blur(1px);animation:characterBrush 12s ease-in-out infinite alternate;pointer-events:none}.hero-panel:after{content:"";position:absolute;right:-5rem;bottom:-7rem;width:18rem;height:18rem;border-radius:50%;background:radial-gradient(circle,rgba(228,122,168,.22),transparent 68%);pointer-events:none}.hero-grid{display:grid;gap:1.25rem}.hero-tagline{display:flex;flex-wrap:wrap;gap:.8rem}.pill{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .85rem;border-radius:999px;border:1px solid rgba(184,128,150,.12);background:#fff8fbb8;color:var(--muted-strong);font-size:.9rem}.pill svg{color:var(--accent-rose)}.hero-actions,.social-links,.footer-links{display:flex;flex-wrap:wrap;gap:.9rem}.hero-meta,.stat-grid,.cards-grid,.summary-grid,.skills-grid,.project-grid,.contact-grid,.footer-grid,.education-grid{display:grid;gap:1rem}.hero-meta{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.45rem}.meta-card,.glass-card,.skill-card,.project-card,.contact-card,.education-card,.experience-card{border:1px solid rgba(184,128,150,.12);border-radius:var(--radius-lg);background:#ffffff9e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.meta-card,.glass-card,.skill-card,.project-card,.contact-card,.education-card,.experience-card,.summary-item,.stat-card{position:relative;overflow:hidden}.meta-card:before,.glass-card:before,.skill-card:before,.project-card:before,.contact-card:before,.education-card:before,.experience-card:before,.summary-item:before,.stat-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,#f0a8c4f2,#d28ad6d9,#e47aa8c7)}.meta-card{padding:1rem;background:linear-gradient(135deg,#f0a8c424,#ffffffc7),#ffffffb3}.meta-card strong{display:block;margin-top:.35rem;font-size:1.1rem}.hero-visual{position:relative;min-height:38rem;display:grid;place-items:center;isolation:isolate}.hero-visual:before{content:"";position:absolute;width:min(25rem,90%);aspect-ratio:1;border:1px solid rgba(228,122,168,.35);border-radius:43% 57% 62% 38%;transform:rotate(-18deg);box-shadow:0 0 0 2rem #e47aa80a,0 0 0 5rem #68bcb309;animation:characterOrbit 16s linear infinite}.hero-artwork{position:absolute;top:2%;right:-8%;bottom:4%;left:-8%;z-index:0;pointer-events:none;transform-style:preserve-3d;perspective:900px}.hero-art-ring{position:absolute;top:12%;left:12%;width:76%;height:76%;border:1px solid rgba(228,122,168,.5);border-radius:47% 53% 58% 42%;transform:rotateX(62deg) rotate(-20deg);box-shadow:0 0 0 1rem #e47aa80a,0 0 3rem #e47aa81f;animation:heroRingSpin 14s linear infinite}.hero-art-ring-two{top:19%;left:18%;width:64%;height:64%;border-color:#68bcb394;transform:rotateX(68deg) rotate(28deg);animation-duration:19s;animation-direction:reverse}.hero-art-sphere{position:absolute;width:1rem;height:1rem;border-radius:50%;background:#e47aa8;box-shadow:0 0 0 .5rem #e47aa81f,0 0 1.4rem #e47aa88c;animation:heroSphereFloat 4.5s ease-in-out infinite}.hero-art-sphere-one{top:21%;right:13%}.hero-art-sphere-two{bottom:24%;left:11%;width:.7rem;height:.7rem;background:#68bcb3;box-shadow:0 0 0 .45rem #68bcb31f,0 0 1.2rem #68bcb380;animation-delay:-2s}.hero-art-ribbon{position:absolute;inset:15% 0 auto;width:100%;height:65%;overflow:visible;opacity:.72;transform:rotate(-5deg) translateZ(20px)}.hero-art-ribbon path{fill:none;stroke:url(#heroRibbonGradient);stroke:#d28ad6;stroke-width:2;stroke-linecap:round;stroke-dasharray:10 15;animation:ribbonFlow 7s linear infinite}.hero-art-flower{position:absolute;z-index:3;color:#e47aa8;font-size:1.4rem;text-shadow:0 0 1rem rgba(228,122,168,.5);animation:flowerOrbit 8s ease-in-out infinite}.hero-art-flower-one{top:8%;left:20%}.hero-art-flower-two{right:8%;bottom:16%;color:#c487d8;animation-delay:-3.5s;font-size:1rem}.hero-art-flower.is-still{animation:none}@keyframes heroRingSpin{to{transform:rotateX(62deg) rotate(340deg)}}@keyframes heroSphereFloat{50%{transform:translate3d(18px,-24px,40px) scale(1.3)}}@keyframes ribbonFlow{to{stroke-dashoffset:-100}}@keyframes flowerOrbit{50%{transform:translate3d(18px,-16px,30px) rotate(24deg) scale(1.2)}}.world-stage{position:relative;min-height:39rem;overflow:hidden;border-radius:28px;background:#160d1c;box-shadow:0 30px 80px #2f123647}.world-stage-heading{position:absolute;top:1.1rem;left:1.25rem;z-index:2;display:grid;gap:.35rem;color:#fff3fa;pointer-events:none}.world-stage-heading span,.world-quest>span{color:#f39cc8;font:800 .62rem DM Mono,monospace;letter-spacing:.14em}.world-stage-heading strong{font:700 clamp(1.25rem,2vw,1.8rem) "Space Grotesk",sans-serif;letter-spacing:-.04em}.world-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.world-photo{position:absolute;top:13%;right:7%;bottom:8%;z-index:2;width:37%;overflow:hidden;border:1px solid rgba(255,255,255,.3);border-radius:48% 48% 18% 18%/28% 28% 12% 12%;background:#36203e;box-shadow:0 24px 50px #00000059,0 0 0 12px #ee75ae14;transform:rotate(2deg)}.world-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#160d1c05,#160d1c80);pointer-events:none}.world-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.9) contrast(1.06)}.world-photo span{position:absolute;right:.8rem;bottom:.8rem;z-index:1;color:#fff2fa;font:800 .58rem DM Mono,monospace;letter-spacing:.13em}.world-character{display:grid;justify-items:center;gap:.25rem;width:7rem;pointer-events:none}.world-character img{width:3.4rem;height:3.4rem;border:3px solid #f5c0d9;border-radius:50%;object-fit:cover;box-shadow:0 0 0 8px #ee75ae1f,0 10px 28px #0000004d}.world-character span{color:#f7d8e9;font:800 .5rem DM Mono,monospace;letter-spacing:.08em}.world-portal{display:grid;gap:.3rem;width:145px;min-height:112px;padding:.8rem;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:#1f0e27e0;color:#fff3fa;text-align:left;box-shadow:0 14px 35px #00000040;transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}.world-portal:hover,.world-portal.is-active{border-color:var(--portal-color);box-shadow:0 0 0 1px var(--portal-color),0 18px 38px #00000059;transform:translateY(-5px)}.world-portal span{color:var(--portal-color);font:800 .55rem DM Mono,monospace}.world-portal strong{font:700 1rem/1.05 Space Grotesk,sans-serif}.world-portal small{color:#fff3faad;font-size:.62rem;line-height:1.3}.world-quest{position:absolute;right:1.1rem;bottom:1.1rem;z-index:2;display:grid;gap:.3rem;width:min(18rem,calc(100% - 2.2rem));padding:1rem;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#1f0e27c7;color:#fff3fa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.world-quest strong{font:700 1.15rem Space Grotesk,sans-serif}.world-quest p{margin:0 0 .5rem;color:#fff3fab8;font-size:.74rem;line-height:1.45}.world-quest .button{min-height:2.5rem;padding:.65rem .9rem;font-size:.78rem}.world-fallback{display:none}.story-experience{position:relative}.story-scene{position:relative;display:grid;align-items:center;min-height:calc(100vh - 110px);padding:clamp(5rem,10vh,8rem) clamp(1rem,6vw,7rem);overflow:hidden;scroll-margin-top:1rem}.story-scene:before,.story-scene:after{content:"";position:absolute;pointer-events:none}.story-scene:before{width:50vw;height:50vw;border-radius:48% 52% 64% 36%;background:var(--scene-color, rgba(228,122,168,.18));filter:blur(2px);opacity:.55;transform:rotate(-18deg);animation:storyBlob 16s ease-in-out infinite alternate}.story-scene:after{top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(45,27,40,.12) 1px,transparent 1px);background-size:13px 13px;opacity:.18;mix-blend-mode:multiply}.story-scene-number{position:absolute;top:2rem;right:clamp(1rem,6vw,7rem);z-index:1;color:var(--muted);font:800 .65rem DM Mono,monospace;letter-spacing:.15em}.story-scene-content{position:relative;z-index:2;width:min(1100px,100%);margin:auto}.story-kicker{margin:0 0 .8rem;color:var(--accent-rose);font:800 .7rem DM Mono,monospace;letter-spacing:.16em;text-transform:uppercase}.story-scene h2{max-width:850px;margin:0 0 2rem;font:700 clamp(2.8rem,8vw,8rem)/.9 "Space Grotesk",sans-serif;letter-spacing:-.08em}.story-prologue{--scene-color: rgba(240,168,196,.28);background:linear-gradient(135deg,#fff8fb,#f5dbe9 52%,#dcebea)}.prologue-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(2rem,7vw,7rem)}.prologue-copy{max-width:39rem}.story-lead{margin:0;color:var(--text);font-size:clamp(1.2rem,2.2vw,1.8rem);line-height:1.45}.story-mission{max-width:34rem;margin:1.6rem 0 0;padding-left:1rem;border-left:4px solid var(--accent-rose);color:var(--muted-strong);font:700 clamp(1rem,1.6vw,1.35rem)/1.4 "Space Grotesk",sans-serif}.story-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.story-button{display:inline-flex;align-items:center;gap:.55rem;min-height:3rem;padding:.85rem 1.15rem;border:1px solid rgba(45,27,40,.18);border-radius:999px;color:var(--text);background:#ffffff80;font-weight:700;transition:transform .25s ease,background .25s ease}.story-button:hover{transform:translateY(-4px) rotate(-1deg);background:#ffffffe6}.story-button-solid{color:#fff;border-color:transparent;background:var(--text);box-shadow:0 15px 30px #2d1b282e}.prologue-character{position:relative;justify-self:center;width:min(27rem,90%);transform:rotate(2deg)}.prologue-character img{position:relative;z-index:2;width:100%;max-height:65vh;object-fit:cover;object-position:center top;border-radius:48% 52% 14% 14%/22% 22% 10% 10%;filter:saturate(.92) contrast(1.05);box-shadow:24px 30px #2d1b281a}.prologue-character span{position:absolute;right:1rem;bottom:1rem;z-index:3;color:#fff;font:800 .65rem DM Mono,monospace;letter-spacing:.14em}.character-paint{position:absolute;border-radius:46% 54% 62% 38%}.character-paint-one{top:-8%;right:-12%;bottom:20%;left:20%;background:#e47aa8;transform:rotate(-12deg)}.character-paint-two{top:28%;right:10%;bottom:-8%;left:-14%;background:#68bcb3;transform:rotate(18deg)}.story-maker{--scene-color: rgba(104,188,179,.24);background:#dcebea}.maker-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,9rem);align-items:center}.maker-collage{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;transform:rotate(-4deg)}.maker-collage span{display:grid;place-items:center;min-height:9rem;padding:1rem;color:#fff;font:700 clamp(1rem,2vw,1.8rem) "Space Grotesk",sans-serif;letter-spacing:-.05em}.maker-collage span:nth-child(1){background:#e47aa8;border-radius:54% 46% 32% 68%}.maker-collage span:nth-child(2){background:#2d1b28;border-radius:28% 72% 55% 45%;transform:translateY(1.5rem) rotate(7deg)}.maker-collage span:nth-child(3){background:#68bcb3;border-radius:65% 35% 44% 56%;transform:translate(1rem)}.maker-collage span:nth-child(4){background:#c487d8;border-radius:40% 60% 70% 30%;transform:rotate(-8deg)}.story-copy-block{max-width:35rem}.story-copy-block>p{margin:0;font-size:clamp(1.25rem,2.5vw,2.1rem);line-height:1.35;letter-spacing:-.04em}.story-thread{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:2rem;color:var(--muted-strong);font:800 .68rem DM Mono,monospace;text-transform:uppercase}.story-thread i{width:2rem;height:2px;background:var(--accent-rose)}.story-projects{--scene-color: rgba(196,135,216,.23);background:linear-gradient(125deg,#f4e8f5,#f9dce9)}.story-project-stage{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,5vw,5rem);align-items:center}.project-scene-image{position:relative;min-height:30rem;overflow:hidden;border-radius:43% 57% 12% 18%/13% 17% 9% 11%;transform:rotate(-2deg);box-shadow:20px 25px #2d1b281a}.project-scene-image img{width:100%;height:100%;min-height:30rem;object-fit:cover}.project-scene-wash{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#2d1b2814,#e47aa86b);mix-blend-mode:multiply}.project-scene-image span{position:absolute;top:1.2rem;left:1.2rem;color:#fff;font:800 .65rem DM Mono,monospace;letter-spacing:.14em}.project-scene-image strong{position:absolute;right:1rem;bottom:1rem;left:1rem;color:#fff;font:700 clamp(2rem,5vw,5rem)/.85 "Space Grotesk",sans-serif;letter-spacing:-.08em}.project-scene-copy h3{max-width:28rem;margin:0;font:700 clamp(1.8rem,4vw,3.6rem)/.95 "Space Grotesk",sans-serif;letter-spacing:-.06em}.project-scene-copy>p:not(.story-kicker):not(.project-outcome){max-width:32rem;color:var(--muted-strong);line-height:1.7}.project-outcome{padding:.8rem 0;border-block:1px solid rgba(45,27,40,.15);color:var(--text);font-weight:700;line-height:1.5}.story-tags{display:flex;flex-wrap:wrap;gap:.4rem}.story-tags span{padding:.45rem .65rem;border-radius:99px;background:#ffffffb3;color:var(--muted-strong);font:700 .62rem DM Mono,monospace}.scene-controls{display:flex;align-items:center;gap:.5rem;margin-top:1.5rem}.scene-controls button{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid rgba(45,27,40,.18);border-radius:50%;background:transparent;color:var(--text)}.scene-controls button.is-active{background:var(--text);color:#fff}.story-journey{--scene-color: rgba(240,168,196,.25);background:#f9e4ed}.journey-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem;align-items:center}.journey-path{display:grid;gap:.8rem}.journey-path button{display:grid;grid-template-columns:2rem 1rem 1fr;gap:.6rem;align-items:center;padding:.8rem;border:0;border-bottom:1px solid rgba(45,27,40,.15);background:transparent;color:var(--muted);text-align:left;font:700 1rem Space Grotesk,sans-serif}.journey-path button span{font:.62rem DM Mono,monospace}.journey-path button i{width:.6rem;height:.6rem;border-radius:50%;background:currentColor}.journey-path button.is-active{color:var(--text);transform:translate(1rem)}.journey-card{min-height:18rem;padding:clamp(1.5rem,4vw,3rem);border-radius:39% 61% 19% 81%/18% 24% 76% 82%;background:var(--text);color:#fff;box-shadow:18px 18px #e47aa873}.journey-card h3{margin:0 0 1rem;font:700 clamp(2rem,5vw,4rem)/.95 "Space Grotesk",sans-serif;letter-spacing:-.07em}.journey-card p:not(.story-kicker){max-width:35rem;color:#efddea;line-height:1.7}.journey-card>span{color:#f4a7c9;font:700 .7rem DM Mono,monospace}.story-language{--scene-color: rgba(104,188,179,.2);background:#e2f0ed}.skill-cloud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(.45rem,1vw,1rem);max-width:900px}.skill-cloud span{display:inline-block;padding:.45rem .7rem;color:var(--text);font:700 clamp(1rem,2.3vw,2rem) "Space Grotesk",sans-serif;letter-spacing:-.05em;transform:rotate(calc((var(--cloud-index) % 5 - 2) * 2deg))}.skill-cloud span:nth-child(3n){color:var(--accent-rose);font-size:1.4em}.skill-cloud span:nth-child(4n){color:#4c9c95;font-style:italic}.story-finale{--scene-color: rgba(196,135,216,.25);min-height:80vh;background:linear-gradient(135deg,#2d1b28,#633b72);color:#fff}.story-finale .story-scene-number,.story-finale .story-kicker{color:#f3a5c7}.finale-layout{max-width:700px}.finale-layout>p{margin:0;font:700 clamp(1.8rem,4vw,4rem)/1.05 "Space Grotesk",sans-serif;letter-spacing:-.06em}.story-finale .story-button{color:#fff;border-color:#ffffff47;background:#ffffff14}.story-finale .story-button-solid{background:#e47aa8;border-color:#e47aa8}@keyframes storyBlob{0%{transform:rotate(-18deg) translate(-2%,-2%) scale(1)}to{transform:rotate(12deg) translate(5%,4%) scale(1.08)}}.portfolio-game{position:relative;width:100%;height:100vh;min-height:620px;overflow:hidden;background:#f9dce9}.portfolio-game .low-power-warning{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:var(--text);font-size:1.2rem;pointer-events:none;z-index:10;transition:opacity .3s ease}.portfolio-game.low-power .low-power-warning{opacity:0;pointer-events:none}.game-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.game-hud{position:absolute;top:1.1rem;right:1.3rem;left:1.3rem;z-index:5;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.game-brand,.game-controls{pointer-events:auto}.game-brand{display:grid;gap:.15rem;color:#2d1b28}.game-brand span{font:800 1rem Space Grotesk,sans-serif;letter-spacing:.12em}.game-brand small{color:#6f4c5f;font:700 .55rem DM Mono,monospace;letter-spacing:.1em}.game-controls{display:flex;align-items:center;gap:.6rem;padding:.45rem .55rem .45rem .8rem;border:1px solid rgba(45,27,40,.16);border-radius:99px;background:#ffffff73;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#6f4c5f;font:700 .6rem DM Mono,monospace}.game-controls span,.game-controls a{display:inline-flex;align-items:center;gap:.35rem}.game-controls button,.game-controls a{border:0;border-radius:99px;padding:.55rem .7rem;background:#fff9;color:#2d1b28}.game-intro{position:absolute;top:50%;left:clamp(1.2rem,8vw,8rem);z-index:4;max-width:30rem;transform:translateY(-50%);pointer-events:none}.game-intro p{margin:0 0 .8rem;color:#e47aa8;font:800 .7rem DM Mono,monospace;letter-spacing:.16em}.game-intro h1{margin:0;color:#2d1b28;font:700 clamp(3rem,8vw,7rem)/.84 "Space Grotesk",sans-serif;letter-spacing:-.09em}.game-intro span{display:block;margin-top:1.2rem;color:#6f4c5f;font-size:.9rem}.game-start{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;padding:.85rem 1.1rem;border:0;border-radius:99px;background:#2d1b28;color:#fff;font-weight:800;pointer-events:auto}.game-panel{position:absolute;right:clamp(1rem,5vw,5rem);bottom:4.8rem;z-index:4;width:min(24rem,calc(100% - 2rem));padding:1.2rem;border-left:5px solid var(--panel-color);border-radius:20px 20px 5px;background:#2d1b28eb;color:#fff8fc;box-shadow:14px 16px color-mix(in srgb,var(--panel-color),transparent 55%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:panelIn .35s ease both}.game-panel-close{position:absolute;top:.65rem;right:.75rem;border:0;background:transparent;color:#fff;font-size:1.5rem}.game-panel>span{color:var(--panel-color);font:800 .6rem DM Mono,monospace;letter-spacing:.12em}.game-panel h2{margin:.35rem 0 .6rem;font:700 clamp(1.5rem,3vw,2.5rem)/.95 "Space Grotesk",sans-serif;letter-spacing:-.06em}.game-panel strong{font-size:.85rem}.game-panel p{color:#e8d5e3;font-size:.78rem;line-height:1.6}.game-panel-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.8rem}.game-panel-tags small{padding:.3rem .45rem;border-radius:99px;background:#ffffff1f;color:#fff8fc;font:.58rem DM Mono,monospace}.game-contact-link{display:inline-flex;align-items:center;gap:.4rem;color:#fff;font-weight:800}.game-touch-controls{position:absolute;right:1.2rem;bottom:1.2rem;z-index:5;display:flex;gap:.45rem}.game-touch-controls button{display:grid;place-items:center;width:3rem;height:3rem;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:#2d1b28d1;color:#fff}.game-progress{position:absolute;right:1.2rem;bottom:.7rem;left:1.2rem;z-index:5;height:3px;overflow:hidden;border-radius:99px;background:#2d1b282e}.game-progress i{display:block;height:100%;border-radius:inherit;background:#e47aa8;transition:width .2s ease}@keyframes panelIn{0%{opacity:0;transform:translateY(12px) rotate(1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}.character-label{position:absolute;z-index:3;color:var(--muted-strong);font:800 .65rem DM Mono,monospace;letter-spacing:.18em}.character-label-top{top:1.2rem;right:1rem;padding:.55rem .7rem;border:1px solid var(--surface-border);border-radius:99px;background:var(--bg-panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.character-label-side{left:-.9rem;bottom:8rem;color:var(--accent-rose);writing-mode:vertical-rl;transform:rotate(180deg)}.profile-frame{position:relative;padding:clamp(.9rem,2vw,1.1rem);border-radius:calc(var(--radius-xl) + 10px);background:linear-gradient(180deg,#fffffff5,#fff4f9fa);border:1px solid rgba(184,128,150,.12);z-index:1;width:min(100%,23rem);box-shadow:0 28px 80px #3f1d4033;transform:none;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.profile-frame:hover{transform:translateY(-6px)}.profile-mark{position:absolute;top:-1.4rem;left:-1.4rem;z-index:3;display:grid;place-items:center;width:4.2rem;height:4.2rem;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:#fff8fce6;box-shadow:0 15px 30px #4c23482e;transform:rotate(-12deg)}.profile-mark img{width:3rem;height:3rem;object-fit:contain}.signature-stroke{position:absolute;right:-1rem;bottom:1rem;z-index:3;width:13rem;overflow:visible;transform:rotate(-7deg)}.signature-stroke path{fill:none;stroke:var(--accent-rose);stroke-width:3;stroke-linecap:round;stroke-dasharray:3 8}.profile-image{aspect-ratio:.78;width:100%;max-height:40rem;object-fit:cover;border-radius:calc(var(--radius-lg) + 4px);filter:saturate(.92) contrast(1.04)}.social-link,.icon-button{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.7rem 1rem;border-radius:999px;background:#ffffffc2;border:1px solid rgba(184,128,150,.12);color:var(--muted-strong)}.social-link:hover,.contact-card:hover,.project-card:hover,.glass-card:hover,.skill-card:hover,.education-card:hover{border-color:#e47aa838;box-shadow:0 18px 36px #e47aa81f}.cards-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-grid .glass-card:hover{transform:translateY(-6px)!important}.glass-card,.skill-card,.education-card,.project-card,.contact-card{padding:1.45rem}.card-icon{display:inline-grid;place-items:center;width:3rem;height:3rem;margin-bottom:1rem;border-radius:16px;background:#f0a8c424;color:var(--accent-rose)}.card-title,.project-title,.experience-title{margin:0;font-size:1.15rem}.card-text,.bullet-list,.stack-list,.project-overview,.contact-card span{color:var(--muted);line-height:1.75}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.summary-item{padding:1.35rem 1.4rem;border-radius:var(--radius-lg);border:1px solid rgba(184,128,150,.12);background:#fffbfd9e}.timeline{position:relative;display:grid;gap:1.3rem}.timeline:before{content:"";position:absolute;top:.5rem;bottom:.5rem;left:1rem;width:3px;border-radius:99px;background:linear-gradient(180deg,rgba(228,122,168,.8),rgba(104,188,179,.55),transparent);box-shadow:0 0 18px #e47aa840}.experience-card{position:relative;margin-left:2.2rem;padding:1.5rem;background:linear-gradient(135deg,#ffffffc7,#fff2f7e6),#ffffffa3}.experience-card:hover{transform:translateY(-6px)!important}.experience-card:before{content:"";position:absolute;left:-1.73rem;top:1.7rem;width:.85rem;height:.85rem;border-radius:50%;background:var(--node-accent, var(--accent-cyan));box-shadow:0 0 0 8px #e47aa81f}.experience-head,.project-top,.contact-card,.education-top{display:flex;justify-content:space-between;gap:1rem}.experience-company{display:flex;gap:1rem}.logo-mark{width:3rem;height:3rem;padding:.35rem;border-radius:16px;object-fit:contain;background:#fffffff5}.bullet-list{margin:1rem 0 0;padding-left:1.25rem}.stack-list,.badge-list,.language-list{display:flex;flex-wrap:wrap;gap:.8rem}.language-list{margin-top:.95rem}.stack-chip,.tag{display:inline-flex;align-items:center;min-height:2rem;padding:.4rem .75rem;border-radius:999px;background:#f0a8c41f;border:1px solid rgba(228,122,168,.14);color:var(--muted-strong);font-size:.86rem}.education-grid,.skills-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-card ul,.education-card ul{margin:1rem 0 0;padding-left:1.1rem;color:var(--muted);line-height:1.8}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem}.project-card{display:grid;gap:1rem;padding:1.25rem;background:#ffffffb8;box-shadow:0 14px 28px #b97c9714}.project-card:before{display:none}.project-media{position:relative;overflow:hidden;min-height:auto;border-radius:22px;border:1px solid rgba(184,128,150,.12);background:linear-gradient(135deg,#f0a8c433,#d28ad62e),radial-gradient(circle at 90% 10%,rgba(228,122,168,.16),transparent 28%),linear-gradient(180deg,#fffffff0,#fff1f7fa);box-shadow:inset 0 1px #ffffffa6}.project-media-copy{position:relative;z-index:1;display:grid;gap:.85rem;padding:1rem}.project-shot{overflow:hidden;border-radius:18px;border:1px solid rgba(184,128,150,.1);background:linear-gradient(135deg,#fffffffa,#ffeef6eb),#ffffffd6;box-shadow:inset 0 1px #ffffffa6}.project-shot-top{display:flex;gap:.45rem;align-items:center;padding:.7rem .9rem;border-bottom:1px solid rgba(184,128,150,.08);background:linear-gradient(90deg,#ffebf4f0,#fff8fbf5)}.project-shot-dot{width:.65rem;height:.65rem;border-radius:50%;background:#e47aa86b}.project-shot-body{display:grid;place-items:center;padding:.8rem}.project-preview-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;object-position:center;border-radius:14px;border:1px solid rgba(184,128,150,.12);background:#ffffffe6}.project-top{align-items:flex-start}.project-actions{display:flex;flex-wrap:wrap;gap:.75rem}.text-button{min-height:2.6rem;padding:0;background:transparent;color:var(--accent-rose);font-weight:700}.contact-form{display:grid;gap:1.1rem}.field{display:grid;gap:.55rem}.field label{font-weight:600}.field input,.field textarea{width:100%;padding:.95rem 1rem;border-radius:18px;border:1px solid rgba(184,128,150,.14);background:#fffbfde0;color:var(--text)}.field input:focus,.field textarea:focus{border-color:#e47aa857;box-shadow:0 0 0 4px #e47aa81a;outline:none}.field textarea{min-height:10rem;resize:vertical}.form-status{margin:0;padding:.9rem 1rem;border-radius:16px;font-weight:600}.form-status-loading{background:#d28ad61f;color:var(--muted-strong)}.form-status-success{background:#f0a8c429;color:#8f4767}.form-status-error{background:#e47aa824;color:#9b4566}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footer{padding-bottom:2rem}.footer-shell{display:grid;gap:1.5rem;padding:1.75rem}.footer-grid{align-items:start;grid-template-columns:1.5fr .8fr .8fr 1fr;gap:1.4rem}.footer-copy{color:var(--muted)}.footer-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(1.4rem,3vw,2rem)}.footer-brand-block,.footer-column{display:grid;gap:.8rem}.footer-heading{margin:0;font-size:1rem;color:var(--text)}.footer-link-list,.footer-contact-list{display:grid;gap:.7rem}.footer-text-link,.footer-contact-item{color:var(--muted);transition:color .2s ease,transform .2s ease}.footer-text-link:hover,.footer-contact-item:hover{color:var(--accent-rose);transform:translate(2px)}.footer-status{display:inline-flex;align-items:center;gap:.6rem;width:fit-content;padding:.7rem .95rem;border-radius:999px;background:#ffffffb3;border:1px solid rgba(184,128,150,.12);color:var(--muted-strong);font-size:.95rem}.footer-status-dot{width:.7rem;height:.7rem;border-radius:50%;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-rose));box-shadow:0 0 0 6px #e47aa81a}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid rgba(184,128,150,.12)}.footer-cta{white-space:nowrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;display:grid;place-items:center;padding:1rem;background:#7953653d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-card{width:min(860px,100%);max-height:min(90vh,980px);overflow:auto;padding:1.4rem;border-radius:28px;border:1px solid rgba(184,128,150,.14);background:linear-gradient(180deg,#fffffffa,#fff4f9fc);box-shadow:var(--shadow)}.modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.close-button{width:2.8rem;height:2.8rem;border-radius:50%;background:#fff0f7f2;color:var(--text)}.modal-content{display:grid;gap:1.45rem}.mobile-nav-backdrop{justify-items:end}.mobile-nav-panel{width:min(25rem,calc(100vw - 1rem));max-height:calc(100vh - 1rem);margin-left:auto}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:1.15rem}.stat-card{padding:1rem;border-radius:22px;border:1px solid rgba(184,128,150,.1);background:linear-gradient(135deg,#ffffffdb,#ffeef6c7),#ffffff9e}.stat-card strong{display:block;font-family:Space Grotesk,sans-serif;font-size:clamp(1.5rem,3vw,2.2rem)}@keyframes auroraDrift{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(2%,-1.5%,0) scale(1.04)}to{transform:translate3d(-2%,2%,0) scale(1.02)}}@keyframes meshFloat{0%{transform:translateZ(0)}50%{transform:translate3d(.8%,-.6%,0)}to{transform:translate3d(-.8%,.8%,0)}}@media(max-width:1080px){.cards-grid,.project-grid,.skills-grid,.contact-grid,.education-grid,.summary-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-panel{grid-template-columns:1fr;gap:1.25rem}.hero-visual{max-width:26rem;width:100%;justify-self:center}.profile-image{max-height:31rem}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-links,.nav-actions .button-secondary{display:none}.menu-button{display:inline-grid}}@media(max-width:900px){.hero-meta,.summary-grid,.contact-grid,.education-grid,.skills-grid,.project-grid,.stat-grid{grid-template-columns:1fr}@media(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-trail{display:none}}.hero-actions,.social-links{gap:.7rem}.button,.social-link{width:100%;justify-content:center}.hero-visual{max-width:22rem}.profile-image{max-height:27rem}}@media(max-width:720px){:root{--container: min(100vw - 1rem, 100%);--nav-height: 74px}:root .cards-grid .glass-card,:root .experience-card,:root .experience-card:nth-child(2n),:root .experience-card:nth-child(odd){transform:none}:root .hero-panel:before{left:58%;opacity:.55}:root .hero-visual:before{width:19rem}.navbar-wrap{padding-top:.5rem}.navbar{border-radius:24px;padding:.8rem .9rem}.brand-copy span{display:none}.hero-panel{padding:1.2rem}.hero-title{font-size:clamp(2.1rem,11vw,3.3rem)}.hero-visual{max-width:20rem}.profile-image{max-height:24rem}.mobile-nav-backdrop{padding:.5rem .5rem .5rem 3rem;align-items:stretch}.mobile-nav-panel{width:min(22rem,calc(100vw - 1rem));height:calc(100vh - 1rem);border-radius:24px}.mobile-nav-panel .modal-content{gap:.75rem}.footer-shell{padding:1.35rem}.cards-grid,.project-grid,.skills-grid,.contact-grid,.education-grid,.summary-grid,.hero-meta,.stat-grid{grid-template-columns:1fr}.experience-head,.project-top,.contact-card,.education-top,.footer-bottom{flex-direction:column}.footer-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.flower-fall{display:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root[data-theme=dark]{--bg: #140d1c;--bg-soft: #1d1226;--bg-panel: rgba(36, 22, 45, .88);--bg-panel-strong: rgba(41, 24, 51, .96);--surface-border: rgba(235, 166, 218, .2);--surface-border-strong: rgba(240, 106, 169, .34);--text: #f8edf7;--muted: #b9a6ba;--muted-strong: #ead4e8;--shadow: 0 24px 80px rgba(8, 3, 16, .34);color-scheme:dark}:root[data-theme=dark] body{background:radial-gradient(circle at top left,rgba(228,122,168,.2),transparent 34%),radial-gradient(circle at 85% 15%,rgba(147,91,194,.2),transparent 28%),linear-gradient(180deg,#140d1c,#1d1226);color:var(--text)}:root[data-theme=dark] body:before{opacity:.22}:root[data-theme=dark] body:after{opacity:.42}:root[data-theme=dark] .navbar,:root[data-theme=dark] .nav-links{background:#201228db;border-color:var(--surface-border)}:root[data-theme=dark] .nav-link,:root[data-theme=dark] .brand-copy span,:root[data-theme=dark] .meta-line,:root[data-theme=dark] .section-description,:root[data-theme=dark] .lead,:root[data-theme=dark] .card-text,:root[data-theme=dark] .project-overview,:root[data-theme=dark] .bullet-list,:root[data-theme=dark] .stack-list,:root[data-theme=dark] .contact-card span,:root[data-theme=dark] .footer-copy,:root[data-theme=dark] .footer-text-link,:root[data-theme=dark] .footer-contact-item{color:var(--muted)}:root[data-theme=dark] .nav-link:hover,:root[data-theme=dark] .nav-link[aria-current=location]{color:#fff;background:#f06aa92e}:root[data-theme=dark] .section-inner,:root[data-theme=dark] .hero-panel,:root[data-theme=dark] .profile-frame,:root[data-theme=dark] .meta-card,:root[data-theme=dark] .glass-card,:root[data-theme=dark] .skill-card,:root[data-theme=dark] .project-card,:root[data-theme=dark] .contact-card,:root[data-theme=dark] .education-card,:root[data-theme=dark] .experience-card,:root[data-theme=dark] .summary-item,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .footer-shell,:root[data-theme=dark] .modal-card,:root[data-theme=dark] .project-shot,:root[data-theme=dark] .project-media{background:linear-gradient(180deg,#271830f2,#1a0f22fa);border-color:var(--surface-border)}:root[data-theme=dark] .button-secondary,:root[data-theme=dark] .social-link,:root[data-theme=dark] .icon-button,:root[data-theme=dark] .menu-button,:root[data-theme=dark] .theme-button,:root[data-theme=dark] .close-button{color:var(--text);background:#371d3cc7;border-color:var(--surface-border)}:root[data-theme=dark] .pill,:root[data-theme=dark] .stack-chip,:root[data-theme=dark] .tag,:root[data-theme=dark] .eyebrow{color:#f3d6ee;background:#f06aa91f;border-color:var(--surface-border)}:root[data-theme=dark] .field input,:root[data-theme=dark] .field textarea{color:var(--text);background:#1b1024;border-color:var(--surface-border)}:root[data-theme=dark] .mobile-nav-panel{background:#21122b}:root[data-theme=dark] .footer-heading,:root[data-theme=dark] .card-title,:root[data-theme=dark] .project-title,:root[data-theme=dark] .experience-title{color:var(--text)}.theme-button{display:inline-grid;place-items:center;width:3rem;height:3rem;border-radius:50%;border:1px solid rgba(184,128,150,.12);background:#fff3f8eb;color:var(--text)}.language-button{min-width:2.35rem;min-height:2.35rem;padding:0 .55rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text);font:700 .68rem/1 DM Mono,monospace;letter-spacing:.08em;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}.language-button:hover,.language-button:focus-visible{transform:translateY(-2px);background:#e47aa829;border-color:var(--accent-rose)}.theme-button:hover{transform:translateY(-2px);background:#e47aa829}.brand-logo{width:2.8rem;height:2.8rem;object-fit:contain}.hero-kicker,.availability-line{margin:0;color:var(--accent-rose);font:.72rem DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.availability-line{color:var(--muted-strong);letter-spacing:.02em;text-transform:none}.availability-primary{display:grid;gap:.35rem;max-width:42rem;margin:1.4rem 0 1.1rem;padding:.9rem 1rem;border-left:4px solid var(--accent-rose);color:var(--ink);background:linear-gradient(90deg,rgba(228,122,168,.14),transparent);font:700 clamp(1.15rem,2.2vw,1.7rem)/1.25 "Space Grotesk",sans-serif;letter-spacing:-.025em}.availability-label{color:var(--accent-rose);font:800 .62rem DM Mono,monospace;letter-spacing:.16em}.button-ghost{background:transparent;color:var(--accent-rose);border:1px solid rgba(228,122,168,.22)}.button-ghost:hover{background:#e47aa81f}.profile-caption{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-top:.8rem;padding:.8rem .3rem 0;color:var(--muted);font-size:.75rem}.profile-caption strong{color:var(--muted-strong);font-size:.72rem}.hero-signal-card{position:absolute;left:-1rem;bottom:2rem;width:min(18rem,82%);padding:1rem;border:1px solid rgba(228,122,168,.25);border-radius:20px;background:#271830e6;color:#fff;box-shadow:0 20px 45px #33143947;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-signal-heading,.hero-signal-footer{display:flex;align-items:center;gap:.55rem;font:.62rem DM Mono,monospace;letter-spacing:.06em}.hero-signal-heading strong{margin-left:auto;color:#7fe4bb;font-size:.6rem}.signal-dot{width:.45rem;height:.45rem;border-radius:50%;background:#7fe4bb;box-shadow:0 0 0 5px #7fe4bb21}.signal-bars{height:3.5rem;display:flex;align-items:end;gap:.3rem;margin:1rem 0 .7rem}.signal-bars i{flex:1;min-height:.4rem;transform-origin:bottom;border-radius:.25rem .25rem 0 0;background:linear-gradient(180deg,var(--accent-rose),var(--accent-blue))}.hero-signal-footer{justify-content:space-between;color:#bea9bf;font-size:.54rem}.creative-ticker{margin-top:1.2rem;overflow:hidden;border-block:1px solid var(--surface-border)}.creative-ticker-track{display:flex;width:max-content;animation:creativeTicker 28s linear infinite}.creative-ticker span{display:flex;gap:1rem;align-items:center;padding:.8rem 1.4rem;color:var(--muted-strong);font:.68rem DM Mono,monospace;letter-spacing:.12em;white-space:nowrap}.creative-ticker i{color:var(--accent-rose);font-style:normal}@keyframes creativeTicker{to{transform:translate(-50%)}}@keyframes tabUnderline{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.signal-field{position:absolute;top:-2rem;right:-2rem;bottom:3rem;left:-2rem;overflow:hidden;border-radius:28px;pointer-events:auto;opacity:.9}.signal-field-stage{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;transform:translateZ(0);transition:transform .5s cubic-bezier(.2,.7,.2,1)}.signal-field-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.signal-grid-line,.signal-pulse{fill:none;stroke:url(#signalGradient);stroke-width:1.2;opacity:.5}.signal-pulse{stroke-width:3;stroke-dasharray:12 14;opacity:.9}.signal-field-core{position:absolute;top:47%;left:51%;color:#e47aa852;transform:translate(-50%,-50%);font:700 clamp(4rem,10vw,8rem)/1 "Space Grotesk",sans-serif;letter-spacing:-.1em}.signal-field-core span{color:#c487d8cc}.signal-node{position:absolute;display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid rgba(240,168,196,.45);border-radius:50%;color:#f9eaf5;background:#351c3ec2;font:.58rem DM Mono,monospace;box-shadow:0 0 0 8px #e47aa80f}.engineering-map{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;padding:clamp(1.3rem,3vw,2rem);overflow:hidden;border-radius:var(--radius-xl);background:linear-gradient(135deg,#26162efa,#411f41eb);color:#fff}.engineering-map-copy{display:grid;align-content:center;gap:1rem}.engineering-map-copy .eyebrow{color:#f8cbe5;background:#f06aa929;border-color:#f06aa947}.engineering-map-copy h3,.creative-strip-heading h3{margin:0;font:700 clamp(1.6rem,3vw,2.7rem)/1.05 "Space Grotesk",sans-serif;letter-spacing:-.04em}.engineering-map-copy>p:not(.eyebrow),.creative-strip-heading>p:not(.eyebrow){margin:0;color:#c9b4c8;line-height:1.7}.engineering-map-detail{display:grid;grid-template-columns:auto 1fr;gap:.9rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.15)}.engineering-map-detail-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:16px;color:var(--layer-color);background:#ffffff14}.engineering-map-detail span{display:block;color:var(--layer-color);font:.65rem DM Mono,monospace;text-transform:uppercase}.engineering-map-detail strong{display:block;margin:.3rem 0;font-size:1rem}.engineering-map-detail p{margin:0;color:#c9b4c8;line-height:1.55}.engineering-tools{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem}.engineering-tools em{padding:.3rem .45rem;color:#ead5e7;border:1px solid rgba(255,255,255,.16);border-radius:999px;font:.62rem DM Mono,monospace;font-style:normal}.engineering-map-visual{position:relative;display:grid;align-content:center;gap:.65rem;padding:1.2rem}.engineering-map-line{position:absolute;top:2rem;bottom:2rem;left:3rem;width:1px;background:linear-gradient(180deg,transparent,rgba(240,106,169,.7),rgba(196,135,216,.7),transparent)}.engineering-layer{position:relative;display:grid;grid-template-columns:2rem 2.7rem 1fr;align-items:center;gap:.7rem;padding:.65rem;color:#cdb9cc;border:1px solid transparent;border-radius:16px;background:transparent;text-align:left;transition:background .2s,color .2s,transform .2s}.engineering-layer:hover,.engineering-layer.is-active{color:#fff;border-color:color-mix(in srgb,var(--layer-color),transparent 55%);background:#ffffff14;transform:translate(4px)}.engineering-layer-number{color:var(--layer-color);font:.64rem DM Mono,monospace}.engineering-layer-icon{display:grid;place-items:center;width:2.7rem;height:2.7rem;color:var(--layer-color);border:1px solid color-mix(in srgb,var(--layer-color),transparent 55%);border-radius:13px;background:#ffffff0f}.engineering-layer>span:last-child{font-weight:700}.creative-strip{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;margin-top:2rem;padding:1.5rem;border:1px solid var(--surface-border);border-radius:var(--radius-xl);background:#ffffff6b}.creative-interest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.creative-interest{padding:1rem;border-radius:18px;background:#ffffffb8;border:1px solid var(--surface-border)}.creative-interest>span{color:var(--accent-rose);font:.68rem DM Mono,monospace;text-transform:uppercase}.creative-interest h4{margin:.55rem 0 .3rem;font-size:1rem}.creative-interest p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.6}:root[data-theme=dark] .creative-strip{background:#281730ad}:root[data-theme=dark] .creative-interest{background:#311c38cc;border-color:var(--surface-border)}.impact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.8rem;padding-top:1.3rem;border-top:1px solid var(--surface-border)}.impact-stat{padding:.8rem;border-right:1px solid var(--surface-border)}.impact-stat:last-child{border-right:0}.impact-stat strong{display:block;font:700 clamp(1.5rem,3vw,2.5rem) "Space Grotesk",sans-serif;color:var(--accent-rose)}.impact-stat span{display:block;margin-top:.3rem;color:var(--muted);font-size:.74rem;line-height:1.35}.process-block{display:grid;grid-template-columns:.6fr 1.4fr;gap:1.5rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--surface-border)}.section-subtitle{margin:0;font:700 1.6rem/1.05 Space Grotesk,sans-serif}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.process-step{padding:.9rem;border-radius:16px;background:#ffffff85;border:1px solid var(--surface-border)}.process-number{color:var(--accent-rose);font:.66rem DM Mono,monospace}.process-step h4{margin:.7rem 0 .35rem}.process-step p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.55}:root[data-theme=dark] .process-step{background:#301c37cc}.workbench-selector{display:grid;grid-template-columns:.6fr 1.4fr;gap:1rem;align-items:end;margin-bottom:1.3rem}.workbench-selector-intro{display:grid;gap:.4rem}.workbench-label{color:var(--accent-rose);font:.68rem DM Mono,monospace;letter-spacing:.08em}.workbench-selector-intro strong{color:var(--text);font:700 1.35rem Space Grotesk,sans-serif}.workbench-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.workbench-tab{position:relative;display:grid;grid-template-columns:auto 1fr;gap:.15rem .55rem;padding:.75rem;border:1px solid var(--surface-border);border-radius:16px;background:#ffffff7a;color:var(--muted);text-align:left;transition:transform .2s,border-color .2s,background .2s}.workbench-tab:hover,.workbench-tab.is-selected{border-color:var(--accent-rose);background:#f0a8c424;transform:translateY(-2px)}.workbench-tab.is-selected:after{content:"";position:absolute;right:.75rem;bottom:.55rem;left:.75rem;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--accent-rose),var(--accent-blue));transform-origin:left;animation:tabUnderline .35s ease-out}.workbench-tab>span{grid-row:1 / span 2;color:var(--accent-rose);font:.62rem DM Mono,monospace}.workbench-tab strong{color:var(--text);font-size:.86rem}.workbench-tab small{grid-column:2;font-size:.67rem}.project-workbench{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;padding:1.15rem;border:1px solid var(--surface-border);border-radius:var(--radius-xl);background:#ffffff94;box-shadow:var(--shadow)}.studio-shell{display:grid;grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);min-height:31rem;overflow:hidden;border:1px solid rgba(245,183,222,.18);border-radius:var(--radius-xl);background:linear-gradient(135deg,#24152d,#4b2752 58%,#1c3740);box-shadow:0 28px 80px #34183c40}.studio-copy{display:grid;align-content:center;gap:.7rem;padding:clamp(1.25rem,3vw,2rem);color:#fff5fb}.studio-overline{color:#f2b1d7;font:800 .65rem DM Mono,monospace;letter-spacing:.14em}.studio-copy h3{margin:0;font:700 clamp(1.6rem,3vw,2.7rem)/1 "Space Grotesk",sans-serif;letter-spacing:-.05em}.studio-copy>p{margin:0;color:#fff5fbb3;line-height:1.65}.studio-selected{display:grid;gap:.35rem;margin-top:.7rem;padding:.95rem;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:#ffffff14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.studio-selected span{color:#8be0c8;font:800 .62rem DM Mono,monospace;letter-spacing:.11em}.studio-selected strong{font:700 1.15rem Space Grotesk,sans-serif}.studio-selected p{margin:0 0 .5rem;color:#fff5fbb8;font-size:.8rem;line-height:1.5}.studio-canvas{min-height:31rem;cursor:grab}.studio-canvas:active{cursor:grabbing}.studio-panel-content{display:grid;gap:.35rem;width:175px;min-height:205px;padding:1rem;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:linear-gradient(145deg,#44244bf5,#1a1728f5);color:#fff5fb;text-align:left;box-shadow:0 16px 30px #0000003d;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.studio-panel-content:hover,.studio-panel-content.is-active{transform:translateY(-7px);border-color:var(--studio-accent);box-shadow:0 0 0 1px var(--studio-accent),0 18px 38px #00000052}.studio-panel-content span{color:var(--studio-accent);font:800 .58rem DM Mono,monospace}.studio-panel-content strong{font:700 1.05rem/1.05 Space Grotesk,sans-serif}.studio-panel-content small{color:#fff5fba6;font-size:.7rem}.studio-panel-content i{width:100%;height:3px;margin-top:auto;border-radius:99px;background:var(--studio-accent)}.studio-fallback{display:none}html[data-theme=dark] .studio-shell{border-color:#f5b7de3d}.workbench-preview{overflow:hidden;border-radius:20px;background:linear-gradient(145deg,#2c1836,#633b72);color:#fff}.workbench-preview-header,.workbench-preview-footer{display:flex;justify-content:space-between;gap:.6rem;padding:.8rem;color:#eacfe8;font:.6rem DM Mono,monospace}.workbench-image-wrap{position:relative;min-height:310px;overflow:hidden}.workbench-image-wrap img{width:100%;height:100%;min-height:310px;object-fit:cover;opacity:.9}.workbench-image-label{position:absolute;right:.9rem;bottom:.9rem;left:.9rem;display:grid;gap:.25rem;padding:.8rem;border:1px solid rgba(255,255,255,.2);background:#1c0d25b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.workbench-image-label span{color:#ddb9d6;font-size:.65rem}.workbench-image-label strong{font:700 1.5rem Space Grotesk,sans-serif}.workbench-live-dot:before{content:"";display:inline-block;width:.45rem;height:.45rem;margin-right:.35rem;border-radius:50%;background:#7fe4bb}.workbench-story{display:grid;align-content:center;gap:1rem;padding:.8rem}.workbench-story-heading h3{margin:.5rem 0;font:700 clamp(1.6rem,3vw,2.8rem)/1 "Space Grotesk",sans-serif}.workbench-story-heading>p:last-child{margin:0;color:var(--muted);line-height:1.65}.workbench-outcome{padding:.9rem 0;border-block:1px solid var(--surface-border)}.workbench-outcome span{color:var(--accent-rose);font:.62rem DM Mono,monospace}.workbench-outcome strong{display:block;margin-top:.35rem;color:var(--text);font-size:.92rem}.architecture-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.architecture-node{position:relative;display:grid;gap:.25rem;padding:.45rem}.architecture-node>span{color:var(--accent-rose);font:.58rem DM Mono,monospace}.architecture-node small{display:block;color:var(--muted);font-size:.61rem}.architecture-node strong{display:block;color:var(--text);font-size:.67rem;line-height:1.25}.architecture-node i{position:absolute;top:.7rem;right:-.4rem;width:.8rem;height:1px;background:var(--surface-border-strong)}.workbench-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}@keyframes characterBrush{0%{transform:rotate(18deg) translateY(-1rem)}to{transform:rotate(29deg) translateY(2rem)}}@keyframes characterOrbit{0%{transform:rotate(-18deg) scale(1)}to{transform:rotate(342deg) scale(1.04)}}.certifications-block{display:grid;grid-template-columns:.55fr 1.45fr;gap:1.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--surface-border)}.certification-list{display:grid;gap:.55rem}.certification-item{display:grid;grid-template-columns:1.4fr 1fr auto;gap:.8rem;align-items:center;padding:.7rem .8rem;border:1px solid var(--surface-border);border-radius:14px;background:#ffffff73}.certification-item strong{color:var(--text);font-size:.8rem}.certification-item span,.certification-item time{color:var(--muted);font-size:.7rem}:root[data-theme=dark] .workbench-tab,:root[data-theme=dark] .project-workbench,:root[data-theme=dark] .certification-item{background:#2e1a35d1}:root[data-theme=dark] .profile-mark{background:#331d3ae6}:root[data-theme=dark] .profile-mark img{content:url(/assets/zaineb-logo-dark.webp)}.scroll-progress{position:fixed;inset:0 0 auto;z-index:200;height:3px;transform-origin:0 50%;background:linear-gradient(90deg,var(--accent-rose),var(--accent-blue))}.pointer-glow{position:fixed;z-index:-1;width:220px;height:220px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(228,122,168,.12),transparent 70%);transform:translate(-50%,-50%)}.cursor-trail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;pointer-events:none}.cursor-core,.cursor-ring{position:fixed;top:0;left:0;display:block;border-radius:50%;transform:translate(-50%,-50%)}.cursor-core{width:8px;height:8px;background:var(--accent-rose);box-shadow:0 0 0 5px #e47aa829,0 0 22px #e47aa88c}.cursor-ring{border:1px solid rgba(228,122,168,.45);transition:width .25s ease,height .25s ease,border-color .25s ease}.cursor-ring-one{width:38px;height:38px}.cursor-ring-two{width:72px;height:72px;border-color:#c487d833}@media(max-width:900px){.engineering-map,.creative-strip,.process-block,.certifications-block,.workbench-selector,.project-workbench{grid-template-columns:1fr}.engineering-map-visual{min-height:280px}.hero-visual{min-height:34rem}.character-label-side{left:0;bottom:5rem}.world-stage{min-height:34rem}.story-scene{min-height:auto;padding-top:7rem;padding-bottom:7rem}.prologue-layout,.maker-layout,.story-project-stage,.journey-layout{grid-template-columns:1fr;gap:2.5rem}.prologue-character{order:-1;width:min(23rem,80%)}.story-scene h2{max-width:680px}.journey-card{min-height:14rem}.studio-shell{grid-template-columns:1fr}.studio-copy{order:2}.studio-canvas{min-height:25rem}}@media(max-width:720px){.hero-signal-card{left:.5rem;bottom:4rem}.profile-caption{align-items:flex-start;flex-direction:column}.creative-interest-grid,.process-grid,.impact-strip{grid-template-columns:repeat(2,1fr)}.workbench-tabs{grid-template-columns:1fr}.architecture-flow{grid-template-columns:repeat(2,1fr)}.architecture-node i{display:none}.hero-visual{min-height:29rem}.world-stage{min-height:31rem}.story-scene{padding:5rem 1.1rem}.story-scene-number{top:1.2rem;right:1.1rem}.story-scene h2{font-size:clamp(2.8rem,15vw,5rem)}.prologue-character{width:92%}.project-scene-image,.project-scene-image img{min-height:21rem}.maker-collage span{min-height:6rem}.journey-path button.is-active{transform:none}.story-finale{min-height:70vh}.world-stage-heading{top:.8rem;left:.8rem}.world-canvas{top:2.2rem;right:0;bottom:7rem;left:0}.world-quest{right:.7rem;bottom:.7rem;left:.7rem;width:auto}.world-fallback{position:absolute;right:.7rem;bottom:-3.2rem;left:.7rem;display:flex;gap:.35rem;overflow-x:auto}.world-fallback button{flex:0 0 auto;padding:.5rem .65rem;border:1px solid rgba(228,122,168,.3);border-radius:99px;background:var(--bg-panel);color:var(--muted-strong);font:700 .62rem DM Mono,monospace}.world-fallback button.is-active{border-color:var(--accent-rose);color:var(--text)}.character-label-top{top:.5rem;right:.5rem}.character-label-side{display:none}.profile-mark{top:-.7rem;left:-.5rem;width:3.4rem;height:3.4rem}.profile-mark img{width:2.4rem;height:2.4rem}.signature-stroke{right:-.2rem;bottom:1rem;width:9rem}.certification-item{grid-template-columns:1fr;gap:.2rem}.studio-shell{min-height:0}.studio-canvas{min-height:21rem}.studio-fallback{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.studio-fallback button{padding:.55rem .7rem;border:1px solid var(--surface-border);border-radius:99px;background:var(--bg-panel);color:var(--muted-strong);font:700 .72rem DM Mono,monospace}.project-actions{flex-wrap:wrap;gap:.6rem}}.project-links{display:flex;align-items:center;gap:.5rem}.icon-link{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border:1px solid var(--surface-border);border-radius:50%;background:var(--bg-panel);color:var(--muted-strong);transition:color .2s ease,border-color .2s ease,transform .2s ease}.icon-link:hover,.icon-link:focus-visible{color:var(--text);border-color:var(--accent-rose);transform:translateY(-2px)}.decision-list{display:grid;gap:.85rem;margin-top:.75rem}.decision-item{padding:.95rem 1.1rem;border:1px solid var(--surface-border);border-left:3px solid var(--accent-rose);border-radius:.7rem;background:var(--bg-panel)}.decision-item strong{display:block;margin-bottom:.35rem;font-size:.95rem;color:var(--text)}.decision-item p{margin:0;color:var(--muted-strong);font-size:.9rem;line-height:1.6}.page-shell[data-modal-open=true] .flower-fall,.page-shell[data-modal-open=true] .section-burst,.page-shell[data-modal-open=true] .pointer-glow,.page-shell[data-modal-open=true] .cursor-trail{opacity:0;animation-play-state:paused;transition:opacity .2s ease}.page-shell[data-modal-open=true] .flower-fall *,.page-shell[data-modal-open=true] .section-burst *{animation-play-state:paused}.project-media-copy>.pill{justify-self:start;width:fit-content}*{scrollbar-width:thin;scrollbar-color:var(--accent-rose) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border-radius:999px;border:3px solid transparent;background-clip:padding-box;background-image:linear-gradient(180deg,var(--accent-rose),var(--accent-indigo))}::-webkit-scrollbar-thumb:hover{background-image:linear-gradient(180deg,var(--accent-rose),var(--accent-blue))}::-webkit-scrollbar-corner{background:transparent}:root[data-theme=dark]{scrollbar-color:var(--accent-rose) rgba(255,255,255,.04)}:root[data-theme=dark] ::-webkit-scrollbar-track{background:#ffffff08}.world-fallback::-webkit-scrollbar,.studio-fallback::-webkit-scrollbar{height:6px}.world-fallback::-webkit-scrollbar-thumb,.studio-fallback::-webkit-scrollbar-thumb{border-width:1px}:root{--game-night: #09111c;--game-blue: #20394c;--game-lilac: #a8cad7;--game-peach: #ff9a91;--game-mint: #84e2cf;--game-gold: #ffd27b;--game-white: #f7f4ff;--game-muted: #c6c7d2;--font-display: "Outfit", "Trebuchet MS", sans-serif;--font-body: "Atkinson Hyperlegible", "Trebuchet MS", sans-serif;--font-code: "IBM Plex Mono", Consolas, monospace;scroll-behavior:smooth}html,body,#root,.game-portfolio{min-width:280px;min-height:100%;background:var(--game-night);color:var(--game-white)}body{font-family:var(--font-body)}body:before,body:after{display:none}.game-portfolio{overflow:clip;--text: var(--game-white);--muted: var(--game-muted);--bg-panel: #111a2a;--bg-panel-strong: #17233a;--surface-border: rgb(152 196 194 / 27%);--surface-border-strong: rgb(169 215 204 / 44%);--accent-rose: #ff9a91;--accent-blue: #88beff;--accent-cyan: #84e2cf;--accent-indigo: #a8cad7;--accent-gold: #ffd27b;--shadow: 0 24px 70px rgb(3 8 18 / 42%)}.game-portfolio .navbar-wrap{position:fixed;top:0;right:0;left:0;z-index:20;width:min(1500px,calc(100% - 64px));min-height:74px;padding-top:0;border:0;background:linear-gradient(180deg,#09111cdb,#09111c00);pointer-events:none}.game-portfolio .navbar{pointer-events:auto}.game-portfolio .navbar{min-height:74px;gap:16px;padding:8px 0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.game-portfolio .nav-links{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.game-portfolio .brand{min-width:185px;gap:9px}.game-portfolio .brand-logo{width:42px;height:42px}.game-portfolio .brand-copy strong{color:var(--game-white);font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:0;text-transform:none}.game-portfolio .brand-copy span{color:var(--game-muted);font-family:var(--font-code);font-size:.56rem;letter-spacing:.035em;text-transform:uppercase}.game-portfolio .nav-links{gap:clamp(2px,.65vw,10px);margin-left:auto}.game-portfolio .nav-link{min-height:42px;padding:8px clamp(4px,.6vw,9px);border:0;border-radius:9px;color:#f7f4ffd9;font-family:var(--font-body);font-size:clamp(.7rem,.86vw,.83rem);font-weight:600;letter-spacing:0;text-transform:none;transition:background-color .18s ease,color .18s ease}.game-portfolio .nav-link:after{display:none}.game-portfolio .nav-link:hover,.game-portfolio .nav-link[aria-current=location]{background:#f7f4ff1c;color:#fff}.game-portfolio .nav-link[aria-current=location]{box-shadow:inset 0 -2px 0 var(--game-gold)}.game-portfolio .nav-actions{gap:7px;margin-left:4px}.game-portfolio .language-button,.game-portfolio .menu-button{min-width:42px;min-height:42px;border:1px solid rgb(239 236 255 / 36%);border-radius:50%;background:#0e14236b;color:var(--game-white);font-family:var(--font-code)}.game-portfolio .language-button:hover{border-color:var(--game-gold);background:var(--game-gold);color:#101520}.game-portfolio .menu-button{display:none;place-items:center}.game-portfolio .skip-link,.game-skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:12px 16px;transform:translateY(-150%);border-radius:8px;background:var(--game-gold);color:#101520;font-weight:700}.game-portfolio .skip-link:focus,.game-skip-link:focus{transform:translateY(0)}.game-skip-link{left:215px}.game-portfolio main{padding:0}.game-hero{position:relative;min-height:min(820px,94vh);min-height:max(660px,min(820px,94svh));overflow:hidden;background:linear-gradient(180deg,#121b2c,#243d50 78%,#2c4b57);isolation:isolate}.game-hero-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-3;background:radial-gradient(ellipse at 74% 21%,rgb(255 221 190 / 38%) 0,transparent 30%),linear-gradient(180deg,#152039,#536078 43%,#d69a8c 82%,#efc29b)}.game-world{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;overflow:hidden;background:radial-gradient(ellipse at 70% 41%,rgb(255 219 182 / 31%),transparent 36%),linear-gradient(180deg,#202943,#59657b 45%,#e0a18d 82%,#f0c196)}.game-world-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:block;width:100%;height:100%;touch-action:pan-y}.world-stop-labels{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.world-stop-label{position:absolute;top:0;left:0;display:inline-flex;min-height:34px;align-items:center;gap:7px;padding:7px 10px;transform:translate(-50%,-50%);border:1px solid rgb(255 242 219 / 75%);border-radius:5px 12px 12px;background:#0f1727e8;box-shadow:0 8px 20px #0409145e;color:#fff;font-family:var(--font-code);font-size:.62rem;font-weight:600;letter-spacing:.025em;white-space:nowrap;cursor:pointer;pointer-events:auto;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.world-stop-label:hover,.world-stop-label:focus-visible,.world-stop-label[data-current=true]{transform:translate(-50%,-50%) scale(1.06);border-color:var(--game-gold);background:#263149}.world-stop-label:focus-visible{outline:3px solid var(--game-gold);outline-offset:3px}.world-stop-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--game-mint);box-shadow:0 0 0 3px #84e2cf2e}.game-world-canvas{cursor:grab}.game-world.has-hotspot .game-world-canvas,.game-world.has-hotspot{cursor:pointer}.world-fallback{position:absolute;top:29%;right:0;bottom:-7%;left:0;z-index:0;perspective:800px;background:radial-gradient(ellipse at 18% 36%,rgb(183 201 165 / 95%) 0 8%,transparent 8.5%),radial-gradient(ellipse at 73% 26%,rgb(182 196 161 / 85%) 0 13%,transparent 13.5%),radial-gradient(ellipse at 46% 70%,rgb(80 139 126 / 92%) 0 25%,transparent 25.5%),linear-gradient(145deg,transparent 22%,#293b55 22% 30%,#294e5e 30% 59%,#223d51 59% 68%,transparent 68%);filter:drop-shadow(0 40px 30px rgb(7 17 32 / 38%));transform:rotateX(56deg) scale(1.38)}.fallback-island{position:absolute;top:20%;right:8%;bottom:8%;left:8%;border:24px solid #1e344a;border-radius:43% 57% 47% 53%/49% 42% 58% 51%;background:linear-gradient(145deg,#7d9c86 2%,#578877 37%,#345f69 67%,#3b5064);box-shadow:inset 0 26px 34px #e3e3c15c,0 36px 50px #09111c7a}.fallback-traveler{position:absolute;top:28%;left:34%;display:grid;width:48px;height:62px;place-items:center;transform:rotate(-20deg);border:3px solid rgb(255 255 255 / 62%);border-radius:48% 48% 39% 39%;background:#e87991;box-shadow:0 15px 35px #0b162587;color:#fff;font-family:var(--font-display);font-size:27px;font-weight:800}.game-world[data-webgl-unavailable=true] .game-world-canvas{display:none}.game-world[data-webgl-unavailable=true] .world-fallback{opacity:1}.world-vignette{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgb(9 15 28 / 86%) 0%,rgb(9 15 28 / 62%) 23%,rgb(9 15 28 / 10%) 56%,transparent 77%),linear-gradient(0deg,rgb(10 19 32 / 52%) 0%,transparent 30%,rgb(14 20 35 / 14%) 100%)}.world-intro{position:absolute;z-index:3;right:clamp(24px,5vw,76px);bottom:clamp(96px,11vw,148px);display:grid;max-width:330px;gap:7px;color:#fff;text-align:right;text-shadow:0 2px 16px rgb(20 24 38 / 75%);pointer-events:none}.world-intro span,.world-coordinates,.world-caption,.player-rank{font-family:var(--font-code);font-size:.61rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.world-intro strong{font-family:var(--font-display);font-size:clamp(1.5rem,2.4vw,2.4rem);font-weight:600;line-height:1}.world-coordinates{position:absolute;z-index:3;bottom:86px;color:#ffffffd1;text-shadow:0 1px 5px rgb(0 0 0 / 60%);pointer-events:none}.world-coordinate-left{left:max(32px,calc((100% - 1440px)/2))}.world-coordinate-right{right:max(32px,calc((100% - 1440px)/2))}.game-hero-copy{position:absolute;z-index:5;top:clamp(112px,17vh,174px);left:max(32px,calc((100% - 1440px)/2));display:flex;width:min(500px,40vw);flex-direction:column;align-items:flex-start;gap:21px;pointer-events:none}.player-card,.player-quest{pointer-events:auto}.player-card{display:flex;align-items:center;gap:18px}.player-card>img{width:78px;height:96px;flex:0 0 auto;border:3px solid rgb(255 255 255 / 85%);border-radius:22px 22px 16px 16px;object-fit:cover;object-position:center 26%;box-shadow:0 18px 38px #080e1d63}.player-rank{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border:1px solid rgb(255 255 255 / 52%);border-radius:999px;background:#10172761;color:#fff;font-size:.53rem}.player-card h1{margin:8px 0 4px;color:#fff;font-family:var(--font-display);font-size:clamp(2.7rem,5vw,4.85rem);font-weight:750;letter-spacing:-.065em;line-height:.84;text-shadow:0 6px 23px rgb(17 24 39 / 28%)}.player-card p{max-width:31ch;margin:8px 0 2px;color:#fffffff2;font-size:clamp(.83rem,1.05vw,.98rem);font-weight:700;line-height:1.3;text-shadow:0 1px 6px rgb(10 16 28 / 55%)}.player-location{color:#ffffffe3;font-size:.78rem;text-shadow:0 1px 6px rgb(10 16 28 / 60%)}.player-quest{display:grid;width:min(390px,100%);grid-template-columns:12px minmax(0,1fr);align-items:center;gap:8px 10px;padding:14px 16px;border:1px solid rgb(255 255 255 / 62%);border-radius:16px;background:#0f1626b8;box-shadow:0 18px 42px #080e1d45;color:#fff;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.quest-pip{width:10px;height:10px;border-radius:50%;background:var(--game-gold);box-shadow:0 0 0 4px #ffd27b2e}.player-quest p{margin:0;font-size:.84rem;font-weight:700;line-height:1.45}.player-quest button{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin-top:2px;color:var(--game-gold);background:none;border:0;font-family:var(--font-code);font-size:.59rem;letter-spacing:.08em;text-align:left;cursor:pointer}.player-quest button:hover,.player-quest button:focus-visible{color:#fff}.hero-quest-actions{display:flex;grid-column:2;flex-wrap:wrap;align-items:center;gap:8px 18px}.hero-quest-actions a{display:inline-flex;min-height:38px;align-items:center;gap:7px;color:var(--game-gold);font-family:var(--font-code);font-size:.59rem;letter-spacing:.08em;text-decoration:none}.hero-quest-actions a:hover,.hero-quest-actions a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:4px}.world-bottom-fade{position:absolute;right:0;bottom:0;left:0;z-index:3;height:100px;pointer-events:none;background:linear-gradient(0deg,#10182a,transparent)}.world-caption{position:absolute;z-index:4;right:max(32px,calc((100% - 1440px)/2));bottom:27px;left:max(32px,calc((100% - 1440px)/2));display:flex;justify-content:space-between;color:#ffffffc9;font-size:.54rem;pointer-events:none}.journey-map-section{position:relative;z-index:4;margin-top:-1px;scroll-margin-top:74px;background:radial-gradient(ellipse at 50% 0%,rgb(85 80 121 / 22%),transparent 55%),#10182a}.journey-map-inner{width:min(1300px,calc(100% - 64px));margin:0 auto;padding:34px 0 28px}.journey-heading{display:flex;align-items:end;justify-content:space-between;gap:22px}.journey-heading>div>p,.journey-progress>span{margin:0;color:var(--game-mint);font-family:var(--font-code);font-size:.58rem;font-weight:500;letter-spacing:.13em}.journey-heading h2{margin:7px 0 0;font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:650;letter-spacing:-.045em;line-height:.95}.journey-current{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgb(198 169 255 / 46%);border-radius:999px;color:#eee6ff;font-family:var(--font-code);font-size:.61rem;letter-spacing:.06em;text-transform:uppercase}.journey-current i{width:7px;height:7px;border-radius:50%;background:var(--game-mint);box-shadow:0 0 10px #84e2cfe5}.journey-route{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));margin-top:30px}.journey-route-line{position:absolute;top:12px;right:5.2%;left:5.2%;height:4px;overflow:hidden;border-radius:999px;background:#e0def838}.journey-route-line>span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--game-peach),var(--game-lilac),var(--game-mint));transform:scaleX(var(--journey-scale, 0));transform-origin:left center;transition:transform .42s cubic-bezier(.16,1,.3,1)}.journey-stop{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;min-width:0;padding:0 3px;border:0;background:transparent;color:var(--game-muted);cursor:pointer;text-align:center}.journey-stop-marker{display:grid;width:27px;height:27px;place-items:center;border:1px solid rgb(235 230 255 / 51%);border-radius:50%;background:#192338;transition:transform .2s ease,border-color .2s ease,background .2s ease}.journey-stop-marker span{width:8px;height:8px;border-radius:50%;background:currentColor}.journey-stop strong{overflow:hidden;max-width:100%;color:inherit;font-size:clamp(.59rem,.79vw,.76rem);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.journey-stop-number{color:#d6d6e89c;font-family:var(--font-code);font-size:.5rem}.journey-stop:hover{color:#fff}.journey-stop:hover .journey-stop-marker,.journey-stop.is-active .journey-stop-marker{transform:scale(1.13);border-color:var(--game-gold);background:var(--game-gold);color:#25233c}.journey-stop.is-active strong{color:#fff}.journey-stop.is-visited .journey-stop-marker{border-color:var(--game-mint);color:var(--game-mint)}.journey-stop.is-visited .journey-stop-marker span{width:7px;height:7px;background:var(--game-mint)}.journey-hint{display:flex;align-items:center;gap:8px;margin:18px 0 0;color:var(--game-muted);font-size:.75rem}.journey-hint svg{color:var(--game-lilac)}.journey-progress{display:flex;align-items:center;gap:12px;margin-top:17px;color:var(--game-muted)}.journey-progress>span{min-width:142px;font-size:.53rem}.journey-progress>div{height:3px;flex:1;overflow:hidden;border-radius:5px;background:#ffffff26}.journey-progress>div i{display:block;width:100%;height:100%;background:var(--game-mint);transform:scaleX(var(--progress-scale, 0));transform-origin:left center;transition:transform .36s ease}.journey-progress>strong{min-width:58px;color:#fff;font-family:var(--font-code);font-size:.55rem;font-weight:500;text-align:right}.journey-chapters{display:flex;width:min(1300px,calc(100% - 64px));align-items:center;gap:14px;margin:26px auto 0;color:#d3caea;font-family:var(--font-code);font-size:.57rem;letter-spacing:.12em;text-transform:uppercase}.journey-chapters>span:nth-child(2){height:1px;flex:1;background:linear-gradient(90deg,rgb(198 169 255 / 60%),transparent)}.game-portfolio .section{padding:clamp(40px,6vw,76px) 0;scroll-margin-top:76px}.game-portfolio .experience-card,.game-portfolio .project-details{scroll-margin-top:92px}.game-portfolio .section+.section{padding-top:clamp(40px,6vw,76px)}.game-portfolio .section .container,.game-portfolio .footer.container{width:min(1300px,calc(100% - 64px))}.game-portfolio .section-inner{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.game-portfolio .section-inner:before,.game-portfolio .section-inner:after{display:none}.game-portfolio .section-head{max-width:820px;margin-bottom:clamp(23px,3.2vw,38px)}.game-portfolio .eyebrow{display:inline-flex;min-height:26px;align-items:center;padding:4px 11px;border:1px solid rgb(198 169 255 / 40%);border-radius:999px;background:#c6a9ff1a;color:#e5d9ff;font-family:var(--font-code);font-size:.61rem;letter-spacing:.08em;text-transform:uppercase}.game-portfolio .section-title{margin:10px 0 11px;color:#fff;font-family:var(--font-display);font-size:clamp(2.4rem,5vw,4rem);font-weight:650;letter-spacing:-.055em;line-height:.96}.game-portfolio .section-description{max-width:66ch;margin:0;color:var(--game-muted);font-size:.98rem;line-height:1.65}.game-portfolio .section-content-depth{transform-style:preserve-3d}.game-portfolio .glass-card,.game-portfolio .skill-card,.game-portfolio .education-card,.game-portfolio .experience-card,.game-portfolio .summary-item,.game-portfolio .project-card,.game-portfolio .stat-card,.game-portfolio .certification-item,.game-portfolio .contact-card,.game-portfolio .modal-card{border:1px solid rgb(183 177 255 / 22%);border-radius:18px;background:linear-gradient(145deg,#1c273df5,#101828fa);box-shadow:0 17px 38px #04091440;-webkit-backdrop-filter:none;backdrop-filter:none}.game-portfolio .card-icon,.game-portfolio .engineering-map-detail-icon{border-radius:13px;background:#84e2cf1f;color:var(--game-mint)}.game-portfolio .card-title,.game-portfolio .project-title,.game-portfolio .experience-title,.game-portfolio .footer-heading{color:#fff;font-family:var(--font-display);font-size:1.75rem;font-weight:650;letter-spacing:-.02em;line-height:1}.game-portfolio .card-text,.game-portfolio .project-overview,.game-portfolio .bullet-list,.game-portfolio .summary-item,.game-portfolio .section-description,.game-portfolio .experience-card p,.game-portfolio .education-card p,.game-portfolio .education-card li,.game-portfolio .process-step p,.game-portfolio .creative-interest p{color:#d4d7e5;line-height:1.65}.game-portfolio .meta-line{color:#c4c7d6}.game-portfolio .pill,.game-portfolio .stack-chip,.game-portfolio .tag{border:1px solid rgb(183 177 255 / 28%);border-radius:999px;background:#c6a9ff1c;color:#eee8ff}.game-portfolio .button,.game-portfolio .button-primary,.game-portfolio .button-secondary,.game-portfolio .button-ghost{min-height:44px;border:1px solid rgb(198 169 255 / 51%);border-radius:12px;background:#c6a9ff21;color:#fff;box-shadow:none}.game-portfolio .button:hover,.game-portfolio .button-secondary:hover{border-color:var(--game-gold);background:var(--game-gold);color:#1d2032}.game-portfolio .project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.game-portfolio .project-card{min-width:0;padding:clamp(15px,2vw,24px);border-radius:8px 18px 18px;transition:transform .24s cubic-bezier(.16,1,.3,1),border-color .24s ease,box-shadow .24s ease}.game-portfolio .project-card:hover{transform:perspective(900px) translateY(-5px) rotateX(1deg);border-color:#ffd27ba6;box-shadow:0 24px 52px #0409146b}.game-portfolio .glass-card,.game-portfolio .skill-card,.game-portfolio .education-card,.game-portfolio .experience-card,.game-portfolio .summary-item,.game-portfolio .stat-card,.game-portfolio .certification-item,.game-portfolio .contact-card{border-radius:8px 16px 16px;transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s ease,box-shadow .22s ease}.game-portfolio .glass-card:hover,.game-portfolio .skill-card:hover,.game-portfolio .education-card:hover,.game-portfolio .experience-card:hover,.game-portfolio .summary-item:hover,.game-portfolio .stat-card:hover,.game-portfolio .certification-item:hover,.game-portfolio .contact-card:hover{transform:translateY(-4px);border-color:#ffd27b94;box-shadow:0 22px 44px #04091461}.game-portfolio .project-media,.game-portfolio .project-shot{border-color:#b3acff4d;border-radius:14px;background:#18273d}.game-portfolio .project-media{overflow:hidden}.game-portfolio .project-shot{overflow:hidden;min-height:0}.game-portfolio .project-shot-body{display:grid;min-height:230px;place-items:center;overflow:hidden;background:linear-gradient(145deg,#314766,#8a627c 46%,#d38d83)}.game-portfolio .project-preview-image{width:100%;height:250px;object-fit:cover;object-position:center top}.game-portfolio .project-shot:has(video) .project-preview-image{height:auto;max-height:320px;object-fit:contain}.project-media-placeholder{display:grid;width:100%;min-height:230px;align-content:center;justify-items:center;gap:12px;padding:22px;background:radial-gradient(ellipse at 24% 29%,rgb(255 217 183 / 36%),transparent 27%),radial-gradient(ellipse at 73% 74%,rgb(125 215 204 / 33%),transparent 35%),linear-gradient(145deg,#263d5a,#544469 54%,#9a6d78);color:#fff;text-align:center}.project-media-placeholder span:first-child{font-family:var(--font-display);font-size:2.5rem;font-weight:700;line-height:1}.project-media-placeholder span:last-child{max-width:38ch;font-family:var(--font-code);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.game-portfolio .project-actions{align-items:center;margin-top:14px}.game-portfolio .icon-link{border:1px solid rgb(198 169 255 / 40%);border-radius:50%;background:#c6a9ff1a;color:#fff}.game-portfolio .icon-link:hover{border-color:var(--game-gold);background:var(--game-gold);color:#172032}.game-portfolio .experience-card{position:relative}.game-portfolio .experience-card:nth-child(odd),.game-portfolio .experience-card:nth-child(2n){transform:none}.game-portfolio .experience-number{border:1px solid rgb(255 210 123 / 55%);border-radius:50%;background:#293149;color:var(--game-gold)}.game-portfolio .engineering-map,.game-portfolio .creative-strip{border:1px solid rgb(183 177 255 / 21%);border-radius:22px;background:linear-gradient(135deg,#17243a,#111b2d)}.game-portfolio .engineering-map-visual{border-radius:22px;background:radial-gradient(ellipse at 50% 60%,rgb(198 169 255 / 18%),transparent 64%)}.game-portfolio .engineering-layer{border:1px solid rgb(198 169 255 / 35%);border-radius:15px;background:#19263b;color:#fff}.game-portfolio .engineering-layer.is-active{border-color:var(--game-gold);background:#ffd27b21}.game-portfolio .impact-stat{border-color:#b7b1ff3b}.game-portfolio .impact-stat strong{color:var(--game-mint);font-family:var(--font-display)}.game-portfolio .certification-item strong,.game-portfolio .footer-copy,.game-portfolio .footer-text-link,.game-portfolio .footer-contact-item,.game-portfolio .contact-card span{color:#d8d8e6}.game-portfolio .contact-form input,.game-portfolio .contact-form textarea{border:1px solid rgb(183 177 255 / 36%);border-radius:10px;background:#0c1525;color:#fff}.game-portfolio .contact-form input:focus,.game-portfolio .contact-form textarea:focus{border-color:var(--game-mint)}.game-portfolio .footer-shell{border:1px solid rgb(183 177 255 / 24%);border-radius:24px;background:linear-gradient(140deg,#17243a,#10192a)}.game-portfolio .footer-status{border-color:#84e2cf66;background:#84e2cf1a;color:#e0fff8}.game-portfolio .footer-cta{text-decoration:none}.game-portfolio .scroll-progress{background:linear-gradient(90deg,var(--game-peach),var(--game-lilac),var(--game-mint))}.game-portfolio :focus-visible{outline:3px solid var(--game-gold);outline-offset:3px}@media(max-width:1150px){.game-portfolio .nav-links{gap:2px}.game-portfolio .nav-link{padding-inline:5px;font-size:.69rem}.game-portfolio .brand{min-width:155px}.game-portfolio .brand-copy strong{font-size:1.02rem}}@media(max-width:900px){.game-portfolio .nav-links{display:none}.game-portfolio .menu-button{display:grid}.game-hero-copy{width:min(470px,54vw)}.game-portfolio .project-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.game-portfolio .navbar-wrap,.game-portfolio .section .container,.game-portfolio .footer.container,.journey-map-inner,.journey-chapters{width:calc(100% - 36px)}.game-hero{min-height:760px;min-height:max(720px,98svh)}.game-world{top:168px;right:0;bottom:0;left:0}.world-stop-labels{display:none}.world-vignette{background:linear-gradient(180deg,#182037 0%,rgb(24 32 55 / 78%) 14%,transparent 45%),linear-gradient(0deg,rgb(13 23 39 / 64%) 0%,transparent 28%)}.world-intro{right:20px;bottom:88px;max-width:240px;text-align:right}.world-intro strong{font-size:1.5rem}.world-coordinates{bottom:66px;font-size:.5rem}.world-coordinate-left{left:20px}.world-coordinate-right{right:20px}.game-hero-copy{top:89px;left:18px;width:calc(100% - 36px);gap:12px}.player-card{gap:12px}.player-card>img{width:61px;height:75px;border-radius:16px 16px 11px 11px}.player-rank{min-height:21px;padding:3px 7px;font-size:.45rem}.player-card h1{max-width:9ch;margin:6px 0 1px;font-size:clamp(2rem,9.4vw,3.25rem)}.player-card p{max-width:34ch;margin:5px 0 1px;font-size:.73rem}.player-location{font-size:.65rem}.player-quest{width:min(410px,100%);grid-template-columns:9px minmax(0,1fr);padding:10px 12px;border-radius:12px}.quest-pip{width:8px;height:8px}.player-quest p{font-size:.73rem}.player-quest a{font-size:.53rem}.world-caption{right:18px;bottom:17px;left:18px;font-size:.46rem}.world-bottom-fade{height:75px}.journey-map-inner{padding:26px 0 22px}.journey-heading{display:grid;gap:14px}.journey-heading h2{font-size:2.5rem}.journey-current{width:fit-content;padding:7px 11px;font-size:.55rem}.journey-route{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 6px;margin-top:21px}.journey-route-line{display:none}.journey-stop{gap:4px}.journey-stop-marker{width:25px;height:25px}.journey-stop strong{font-size:.64rem}.journey-stop-number{font-size:.47rem}.journey-hint{align-items:start;font-size:.69rem;line-height:1.4}.journey-progress{gap:8px}.journey-progress>span{min-width:106px;font-size:.47rem}.journey-progress>strong{min-width:45px;font-size:.49rem}.journey-chapters{margin-top:23px;font-size:.52rem}.game-portfolio .section{padding:38px 0;scroll-margin-top:12px}.game-portfolio .section+.section{padding-top:38px}.game-portfolio .section-head{margin-bottom:22px}.game-portfolio .section-title{font-size:clamp(2.35rem,10vw,3.4rem)}.game-portfolio .section-description{font-size:.91rem}.game-portfolio .project-card{padding:14px}.game-portfolio .project-shot-body,.project-media-placeholder{min-height:188px}.game-portfolio .project-preview-image{height:210px}}@media(max-width:370px){.game-portfolio .navbar-wrap,.game-portfolio .section .container,.game-portfolio .footer.container,.journey-map-inner,.journey-chapters{width:calc(100% - 24px)}.game-portfolio .brand-copy strong{font-size:.96rem}.game-portfolio .brand-copy span{display:none}.game-portfolio .nav-actions{margin-left:auto}.game-hero-copy{left:12px;width:calc(100% - 24px)}}@media(max-width:1023px){.game-portfolio.is-game-mode .game-hero{display:block;height:100svh;min-height:100svh;padding-top:0}.game-portfolio.is-game-mode .game-hero-copy{position:absolute;top:clamp(84px,11svh,118px);left:18px;width:min(420px,43vw);gap:12px;margin:0}.game-portfolio.is-game-mode .player-card>img{width:62px;height:76px}.game-portfolio.is-game-mode .player-card h1{max-width:none;font-size:clamp(1.5rem,4.5vw,2.3rem);line-height:.94}.game-portfolio.is-game-mode .player-card p{font-size:.72rem}.game-portfolio.is-game-mode .player-location{font-size:.64rem}.game-portfolio.is-game-mode .player-quest{width:min(460px,100%);grid-template-columns:9px minmax(0,1fr) auto;gap:0 10px;padding:10px 12px}.game-portfolio.is-game-mode .player-quest p{font-size:.73rem}.game-portfolio.is-game-mode .player-quest button{margin-top:0}.game-portfolio.is-game-mode .hero-quest-actions{grid-column:3;grid-row:1;flex-direction:column;align-items:flex-start;gap:3px}.game-portfolio.is-game-mode .hero-quest-actions a{min-height:28px;font-size:.54rem}.game-portfolio.is-game-mode .game-world,.game-portfolio.is-game-mode.has-branch-roads .game-world{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;margin:0}.game-portfolio.is-game-mode .world-intro,.game-portfolio.is-game-mode .world-coordinates{display:none}.game-portfolio.is-game-mode.has-branch-roads .game-hero{height:100svh;min-height:100svh}.game-portfolio.is-game-mode.has-branch-roads .game-hero-copy{display:none}.game-portfolio.is-game-mode.has-branch-roads .game-world{height:100%}.game-portfolio.is-game-mode .journey-hud{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:min(340px,calc(100vw - 24px))}.game-portfolio.is-game-mode .journey-hud-track{display:none}.game-portfolio.is-game-mode .journey-hud-status{min-height:54px;padding:6px 9px}.game-portfolio.is-game-mode .journey-hud-compass,.game-portfolio.is-game-mode .journey-hud-toggle{width:36px;height:36px}.game-portfolio.is-game-mode .journey-hud-controls{padding:4px 8px 7px}.game-portfolio.is-game-mode .journey-hud-controls button{width:40px;height:40px}.game-portfolio.is-game-mode .journey-hud-map{max-height:min(28svh,250px)}.game-portfolio.is-game-mode .world-branch-label{max-width:min(190px,42vw);min-height:44px;padding:6px 9px;font-size:clamp(.65rem,1.15vw,.75rem);line-height:1.2;white-space:normal}}@media(max-width:700px){.game-portfolio.is-game-mode .game-hero-copy{width:calc(100% - 36px);margin-top:12px}.game-portfolio.is-game-mode .game-world{height:100%}.game-portfolio.is-game-mode.has-branch-roads .game-world{height:clamp(350px,55svh,460px)}.game-portfolio.is-game-mode .journey-hud{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom))}.game-portfolio.is-game-mode .journey-hud-map{max-height:min(25svh,190px)}}:root[data-theme=dark] .game-portfolio .navbar,:root[data-theme=dark] .game-portfolio .nav-links{border-color:transparent;background:transparent}.game-portfolio .section .creative-interest,.game-portfolio .section .process-step{border:1px solid rgb(var(--region-rgb) / .3);border-radius:5px 13px 13px;background:linear-gradient(145deg,#172b35,#101f2a);color:#f4f4e9}.game-portfolio .section .creative-interest>span{color:var(--region-accent);font-family:var(--font-code);font-size:.62rem;letter-spacing:.09em}.game-portfolio .section .creative-interest h4,.game-portfolio .section .process-step h4{color:#f4f4e9}.game-portfolio .section .process-number{display:inline-flex;min-width:36px;min-height:28px;align-items:center;justify-content:center;border:1px solid rgb(var(--region-rgb) / .42);border-radius:4px 8px 8px;background:rgb(var(--region-rgb) / .13);color:var(--region-accent);font-family:var(--font-code)}.game-portfolio .section .engineering-map-copy h3,.game-portfolio .section .creative-strip-heading h3,.game-portfolio .section .section-subtitle{color:#f5f4e9}.game-portfolio .section .engineering-map-copy>p:not(.eyebrow),.game-portfolio .section .creative-strip-heading>p:not(.eyebrow){color:#c4d0cd}.game-portfolio .section .certification-item{color:#d3ded8}:root[data-theme=dark] .game-portfolio .footer-shell{border:1px solid rgb(132 226 207 / .28);border-radius:6px 24px 24px;background:linear-gradient(140deg,#172d35,#101f29)}.game-portfolio .footer-shell:before,.game-portfolio .footer-shell:after{display:none}:root[data-theme=dark] .game-portfolio .mobile-nav-panel{border-color:#84e2cf59;background:linear-gradient(145deg,#172b35,#101f2a)}.game-portfolio .section{--region-rgb: 83 163 139;--region-accent: #84e2cf;position:relative;isolation:isolate;overflow:hidden;background-color:#0b1521;background-image:repeating-radial-gradient(ellipse at 92% 18%,transparent 0 42px,rgb(var(--region-rgb) / .075) 43px 44px,transparent 45px 67px),radial-gradient(ellipse at 92% 14%,rgb(var(--region-rgb) / .22),transparent 35%),linear-gradient(180deg,#0d1925,#0a141f 82%)}.game-portfolio .section:before,.game-portfolio .section:after{display:none}.game-portfolio .section-about{--region-rgb: 65 162 119;--region-accent: #9fe278}.game-portfolio .section-summary{--region-rgb: 80 152 195;--region-accent: #88beff}.game-portfolio .section-experience{--region-rgb: 55 153 133;--region-accent: #84e2cf}.game-portfolio .section-education{--region-rgb: 198 155 83;--region-accent: #ffd27b}.game-portfolio .section-projects{--region-rgb: 211 128 82;--region-accent: #ffad79}.game-portfolio .section-skills{--region-rgb: 119 164 92;--region-accent: #b7dc83}.game-portfolio .section-contact{--region-rgb: 65 161 168;--region-accent: #84e2cf;background-image:repeating-radial-gradient(ellipse at 85% 22%,transparent 0 42px,rgb(var(--region-rgb) / .075) 43px 44px,transparent 45px 67px),radial-gradient(ellipse at 82% 18%,rgb(var(--region-rgb) / .27),transparent 38%),linear-gradient(180deg,#10232c,#0b1821 82%)}.game-portfolio .section .section-inner{position:relative;z-index:1;padding:clamp(24px,4vw,46px);border:1px solid rgb(var(--region-rgb) / .2);border-radius:6px 26px 26px;background:linear-gradient(155deg,#101d27c7,#09121cd4);box-shadow:0 28px 75px #03090e47}.game-portfolio .section .section-inner:before,.game-portfolio .section .section-inner:after{display:none}.chapter-banner{display:grid;grid-template-columns:auto minmax(24px,1fr) auto;align-items:center;gap:12px;width:100%;margin:0 0 12px;color:#d3ded8;font-family:var(--font-code);font-size:.57rem;letter-spacing:.085em;text-transform:uppercase}.chapter-banner-mark,.chapter-banner-location{display:inline-flex;align-items:center;gap:7px}.chapter-banner-mark{color:var(--region-accent);font-weight:700}.chapter-banner-line{height:1px;background:linear-gradient(90deg,rgb(var(--region-rgb) / .65),transparent)}.chapter-banner-location{color:#e6e5d7}.chapter-banner-mode{grid-column:1 / -1;color:#a7b5b4;font-size:.49rem;letter-spacing:.14em}.section-head-visual{margin-top:16px;margin-bottom:24px;display:flex;align-items:center;justify-content:center}.chapter-visual{width:280px;height:auto;filter:url(#chapter-visual-filter)}.chapter-visual-bg{filter:var(--chapter-visual-bg-filter)}@supports (color: color-mix(in srgb,red,blue)){.chapter-visual{filter:none}}@keyframes chapter-visual-blend{0%,to{opacity:.8}50%{opacity:1}}.chapter-visual{animation:chapter-visual-blend 6s ease-in-out infinite}.game-portfolio .section .eyebrow{border-color:rgb(var(--region-rgb) / .42);background:rgb(var(--region-rgb) / .1);color:var(--region-accent)}.game-portfolio .section .section-title{margin-top:5px;color:#f5f4e9;font-size:clamp(2.45rem,5.2vw,4.25rem);letter-spacing:-.052em;text-shadow:0 8px 36px rgb(var(--region-rgb) / .14)}.game-portfolio .section .section-title:after{display:none}.game-portfolio .section .section-description{color:#c4d0cd}.game-portfolio .section .glass-card,.game-portfolio .section .skill-card,.game-portfolio .section .education-card,.game-portfolio .section .experience-card,.game-portfolio .section .summary-item,.game-portfolio .section .project-card,.game-portfolio .section .stat-card,.game-portfolio .section .certification-item,.game-portfolio .section .contact-card,:root[data-theme=dark] .game-portfolio .modal-card{border:1px solid rgb(var(--region-rgb, 83 163 139) / .3);border-radius:5px 16px 16px;background:linear-gradient(145deg,#172b35,#101f2a);box-shadow:0 18px 42px #03080d52}.game-portfolio .section .glass-card:before,.game-portfolio .section .skill-card:before,.game-portfolio .section .education-card:before,.game-portfolio .section .experience-card:before,.game-portfolio .section .summary-item:before,.game-portfolio .section .project-card:before,.game-portfolio .section .stat-card:before,.game-portfolio .section .certification-item:before,.game-portfolio .section .contact-card:before{height:2px;background:linear-gradient(90deg,var(--region-accent),rgb(var(--region-rgb) / .3),transparent 78%)}.game-portfolio .section .card-icon,.game-portfolio .section .engineering-map-detail-icon{border:1px solid rgb(var(--region-rgb) / .35);background:rgb(var(--region-rgb) / .14);color:var(--region-accent)}.game-portfolio .section .card-title,.game-portfolio .section .project-title,.game-portfolio .section .experience-title,.game-portfolio .section .footer-heading{color:#f7f5eb}.game-portfolio .section .card-text,.game-portfolio .section .project-overview,.game-portfolio .section .bullet-list,.game-portfolio .section .experience-card p,.game-portfolio .section .education-card p,.game-portfolio .section .education-card li,.game-portfolio .section .process-step p,.game-portfolio .section .creative-interest p{color:#cbd6d1}.game-portfolio .section .meta-line{color:#b2c2bf}.game-portfolio .section .pill,.game-portfolio .section .stack-chip,.game-portfolio .section .tag{border-color:rgb(var(--region-rgb) / .4);background:rgb(var(--region-rgb) / .14);color:#e6f0e9}.game-portfolio .section .button,.game-portfolio .section .button-primary,.game-portfolio .section .button-secondary,.game-portfolio .section .button-ghost{border-color:rgb(var(--region-rgb) / .5);background:rgb(var(--region-rgb) / .15);color:#f7f5eb}.game-portfolio .section .button:hover,.game-portfolio .section .button-secondary:hover{border-color:var(--region-accent);background:var(--region-accent);color:#102027}.game-portfolio .section .timeline:before{width:2px;background:linear-gradient(180deg,var(--region-accent),rgb(var(--region-rgb) / .38),transparent);box-shadow:0 0 18px rgb(var(--region-rgb) / .2)}.game-portfolio .section .experience-card:before{width:12px;height:12px;border:2px solid #0e1b25;border-radius:3px;background:var(--region-accent);box-shadow:0 0 0 4px rgb(var(--region-rgb) / .2);transform:rotate(45deg)}.game-portfolio .section .experience-number{display:grid;place-items:center;border:1px solid rgb(var(--region-rgb) / .5);border-radius:5px;background:#203841;color:var(--region-accent);font-family:var(--font-code);box-shadow:0 5px 14px #03080d40}.game-portfolio .section .engineering-map,.game-portfolio .section .creative-strip{border:1px solid rgb(var(--region-rgb) / .32);border-radius:5px 20px 20px;background:repeating-linear-gradient(135deg,transparent 0 38px,rgb(var(--region-rgb) / .025) 39px 40px),linear-gradient(140deg,#1a3039,#101e28)}.game-portfolio .section .engineering-map-visual{border-radius:12px;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 17px,rgb(var(--region-rgb) / .1) 18px 19px,transparent 20px 34px),radial-gradient(ellipse at 50% 50%,rgb(var(--region-rgb) / .16),transparent 68%)}.game-portfolio .section .engineering-layer{border-color:rgb(var(--region-rgb) / .34);border-radius:5px 12px 12px;background:#152732;color:#d8e2dc}.game-portfolio .section .engineering-layer.is-active{border-color:var(--region-accent);background:rgb(var(--region-rgb) / .2);color:#fff}.game-portfolio .section .impact-stat{border-color:rgb(var(--region-rgb) / .34);color:#cbd6d1}.game-portfolio .section .impact-stat strong{color:var(--region-accent);font-family:var(--font-display)}.game-portfolio .section .project-shot,.game-portfolio .section .project-media,:root[data-theme=dark] .game-portfolio .modal-card .project-shot,:root[data-theme=dark] .game-portfolio .modal-card .project-media{border-color:rgb(var(--region-rgb, 83 163 139) / .34);background:#0d1b25}.game-portfolio .section .project-shot-body,.game-portfolio .section .project-media-placeholder{background:radial-gradient(ellipse at 72% 18%,rgb(var(--region-rgb) / .46),transparent 32%),linear-gradient(145deg,#26444b,#192e39 53%,#101e2b)}:root[data-theme=dark] .game-portfolio .section .project-media:before{content:none}.game-portfolio .section .project-artifact-label{display:flex;min-height:34px;align-items:center;gap:8px;margin:0 clamp(15px,2vw,24px);color:#c4d2cc;font-family:var(--font-code);font-size:.53rem;letter-spacing:.09em}.project-artifact-label>span:first-child{display:grid;width:23px;height:23px;place-items:center;border:1px solid rgb(var(--region-rgb) / .48);border-radius:4px 8px 8px;background:rgb(var(--region-rgb) / .12);color:var(--region-accent)}.project-artifact-label>span:nth-child(2){flex:1}.project-artifact-label>span:last-child{color:var(--region-accent)}.game-portfolio .section .project-shot-top{border-bottom-color:rgb(var(--region-rgb) / .25);background:#142630}.game-portfolio .section .project-shot-dot{width:7px;height:7px;border-radius:2px;background:#68827e}.game-portfolio .section .project-shot-dot:first-child{background:var(--region-accent)}.game-portfolio .section .project-shot-dot:last-child{background:var(--game-gold)}.game-portfolio .section .project-card:hover{transform:perspective(900px) translateY(-5px) rotateX(1deg)!important}.game-portfolio .section .ability-readout{display:flex;align-items:center;gap:10px;margin-top:15px;color:#c4d2cc;font-family:var(--font-code);font-size:.52rem;letter-spacing:.09em}.ability-meter{height:5px;flex:1;overflow:hidden;border-radius:4px;background:#ffffff21}.ability-meter span{display:block;width:var(--ability-fill, 0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--region-accent),var(--game-gold));transform-origin:left center;animation:ability-charge .7s cubic-bezier(.16,1,.3,1) both}@keyframes ability-charge{0%{transform:scaleX(.2)}to{transform:scaleX(1)}}.game-portfolio .section .icon-link{border-color:rgb(var(--region-rgb) / .45);background:rgb(var(--region-rgb) / .12);color:#eff5e9}.game-portfolio .section .icon-link:hover{border-color:var(--region-accent);background:var(--region-accent);color:#102027}.game-portfolio .section .engineering-map-copy,.game-portfolio .section .creative-strip-heading,.game-portfolio .section .process-heading{color:#f4f4e9}.game-portfolio .section .contact-form input,.game-portfolio .section .contact-form textarea{border-color:rgb(var(--region-rgb) / .46);border-radius:5px 10px 10px;background:#0b1922;color:#f7f5eb}.game-portfolio .section .contact-form input:focus,.game-portfolio .section .contact-form textarea:focus{border-color:var(--region-accent);box-shadow:0 0 0 3px rgb(var(--region-rgb) / .18)}.game-portfolio .section .contact-card strong{color:#f5f4e9}.game-portfolio .section .contact-card span,:root[data-theme=dark] .game-portfolio .section .contact-card span{color:#c3d0cb}.game-portfolio .section .footer-status{border-color:#84e2cf70;background:#84e2cf1f;color:#e0fff8}.game-portfolio .section :focus-visible,:root[data-theme=dark] .game-portfolio .modal-card :focus-visible{outline-color:var(--game-gold)}.journey-hud{position:fixed;right:max(18px,calc((100vw - 1440px)/2));bottom:max(18px,env(safe-area-inset-bottom));z-index:60;width:min(340px,calc(100vw - 36px));overflow:hidden;border:1px solid rgb(132 226 207 / .48);border-radius:6px 15px 15px;background:linear-gradient(145deg,#13252cf7,#09151df7);box-shadow:0 16px 44px #01070b8a;color:#f6f5eb;animation:hud-arrive .38s cubic-bezier(.16,1,.3,1) both}@keyframes hud-arrive{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.journey-hud-status{display:flex;min-height:68px;align-items:center;gap:11px;padding:10px 12px}.journey-hud-compass{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:1px solid rgb(132 226 207 / .35);border-radius:5px 11px 11px;background:#84e2cf1a;color:var(--game-mint)}.journey-hud-copy{display:grid;min-width:0;gap:3px;flex:1}.journey-hud-copy span,.journey-hud-count{color:#b9c9c4;font-family:var(--font-code);font-size:.52rem;letter-spacing:.075em}.journey-hud-copy strong{overflow:hidden;color:#fff;font-family:var(--font-display);font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.journey-hud-toggle{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid rgb(132 226 207 / .42);border-radius:5px 11px 11px;background:#203a3e;color:#f5f4e9}.journey-hud-toggle:hover,.journey-hud-toggle:focus-visible{border-color:var(--game-gold);background:#354c45}.journey-hud-track{position:relative;height:3px;margin-inline:6px;background:#ffffff1f}.journey-hud-track span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--game-mint),var(--game-gold));transform:scaleX(var(--hud-progress, 0));transform-origin:left center;transition:transform .42s cubic-bezier(.16,1,.3,1)}.journey-hud-track>i{position:absolute;top:50%;display:grid;width:15px;height:15px;place-items:center;color:#17241f;background:var(--game-gold);border:2px solid #17241f;border-radius:50%;transform:translate(-50%,-50%);transition:left .42s cubic-bezier(.16,1,.3,1)}.journey-hud-track>i svg{stroke-width:2.5}.journey-hud-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-height:min(46vh,360px);overflow:auto;padding:9px}.journey-hud-stop{display:flex;min-height:38px;align-items:center;gap:8px;padding:7px 8px;border:1px solid transparent;border-radius:4px 9px 9px;background:transparent;color:#d2ded8;font-size:.75rem;text-align:left}.journey-hud-stop:hover,.journey-hud-stop.is-current{border-color:#84e2cf57;background:#84e2cf1f;color:#fff}.journey-hud-stop-number{color:var(--game-gold);font-family:var(--font-code);font-size:.58rem}.journey-hud-stop svg{margin-left:auto;color:var(--game-mint)}.journey-hud-return{display:flex;min-height:42px;grid-column:1 / -1;align-items:center;justify-content:center;gap:9px;margin-top:5px;padding:8px 10px;border:1px solid rgb(255 210 123 / 42%);border-radius:7px;background:#ffd27b17;color:#ffe3a2;font:700 .73rem var(--font-body);cursor:pointer}.journey-hud-return:hover,.journey-hud-return:focus-visible{border-color:var(--game-gold);background:#ffd27b2e;color:#fff}.journey-hud-return:disabled{opacity:.55;cursor:wait}@media(prefers-reduced-motion:reduce){.game-world-canvas,.world-vignette,.world-intro,.world-coordinates{animation:none!important}.game-portfolio .section-content-depth{transform:none!important}.game-portfolio .project-card,.game-portfolio .glass-card,.game-portfolio .skill-card,.game-portfolio .education-card,.game-portfolio .experience-card,.game-portfolio .summary-item,.game-portfolio .stat-card,.game-portfolio .certification-item,.game-portfolio .contact-card,.world-stop-label,.journey-hud-track>span,.journey-hud-track>i{transition-duration:.01ms!important}}.game-portfolio.is-game-mode{position:relative;min-height:100svh;overflow:visible}.game-portfolio.is-game-mode .navbar-wrap{position:fixed;top:0;left:0;z-index:130;width:100%;min-height:74px;padding:0 clamp(14px,4vw,58px);border-bottom:1px solid rgb(132 226 207 / .22);background:linear-gradient(180deg,#08111af7,#08111ad6);transform:none}.game-portfolio.is-game-mode .navbar{max-width:1500px;margin-inline:auto;background:transparent}.game-portfolio.is-game-mode .section{scroll-margin-top:84px}.game-portfolio.is-game-mode.is-chapter-open .journey-hud-controls,.game-portfolio.is-game-mode.is-reading .journey-hud-controls,.game-portfolio.is-game-mode.is-chapter-open .journey-hud-track,.game-portfolio.is-game-mode.is-reading .journey-hud-track{display:none}.game-portfolio.is-game-mode.is-chapter-open .journey-hud-status,.game-portfolio.is-game-mode.is-reading .journey-hud-status{min-height:56px}.game-portfolio.is-game-mode .game-hero{scroll-margin-top:74px}.game-portfolio.is-game-mode.has-branch-roads .game-hero{height:100svh;min-height:100svh}.game-portfolio.is-game-mode.has-branch-roads .game-hero-copy{display:none}.game-portfolio.is-game-mode.has-branch-roads .game-world{top:0;right:0;bottom:0;left:0}.game-portfolio.is-game-mode.has-branch-roads .world-intro,.game-portfolio.is-game-mode.has-branch-roads .world-coordinates{display:none}.game-portfolio.is-game-mode .world-branch-label{z-index:5;max-width:min(190px,24vw);border-color:#ffd27bc2;background:#0e1f25f5;font-size:clamp(.56rem,.72vw,.72rem)}.game-portfolio.is-game-mode .world-branch-label[data-current=true]{border-color:#fff0bc;background:#334542;box-shadow:0 0 0 3px #ffd27b38,0 8px 20px #0409145e}.game-chapter-close{position:fixed;top:88px;right:clamp(18px,4vw,58px);z-index:70;display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:6px 10px;border:1px solid rgb(255 210 123 / .55);border-radius:5px 12px 12px;background:#182b36;color:#fff3d4;font-family:var(--font-code);font-size:.64rem;font-weight:600;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}.game-chapter-close:hover,.game-chapter-close:focus-visible{border-color:var(--game-gold);background:#29413f}.journey-hud-controls{display:flex;justify-content:center;gap:6px;padding:7px 10px 9px;border-top:1px solid rgb(132 226 207 / .14)}.journey-hud-controls button{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgb(132 226 207 / .32);border-radius:5px 9px 9px;background:#1c3439;color:#f7f4e8;cursor:pointer}.journey-hud-controls button:hover,.journey-hud-controls button:focus-visible{border-color:var(--game-gold);background:#354c45}.game-portfolio.is-game-mode .project-details{display:grid;gap:22px;padding:clamp(16px,3vw,30px);border:1px solid rgb(132 226 207 / .3);border-radius:8px 18px 18px;background:linear-gradient(145deg,#172b35,#101f2a)}.project-details-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.project-details-heading .eyebrow{margin-bottom:6px}.project-details-heading .section-subtitle{margin-bottom:5px}.project-details-back{display:inline-flex;min-height:36px;align-items:center;gap:6px;flex:0 0 auto;padding:6px 9px;border:1px solid rgb(132 226 207 / .36);border-radius:5px 10px 10px;background:#84e2cf14;color:#e4fff7;cursor:pointer}.project-details-media{display:grid;min-height:clamp(190px,30vw,360px);overflow:hidden;place-items:center;border:1px solid rgb(132 226 207 / .24);border-radius:7px 16px 16px;background:#0e1c25}.project-details-media img,.project-details-media video{display:block;width:100%;max-height:430px;object-fit:contain}.project-details-outcome{margin:-12px 0 0;color:#ffe0a4;font-weight:700}.project-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-details-grid>section{min-width:0}.game-portfolio.is-game-mode :focus-visible{outline-color:var(--game-gold)}.game-portfolio .section-head-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(24px,5vw,72px);margin-bottom:clamp(2.3rem,4vw,3.35rem)}.game-portfolio .section-head-layout .section-head{max-width:860px;margin-bottom:0}.about-portrait{position:relative;display:grid;width:clamp(210px,23vw,310px);height:clamp(210px,23vw,310px);aspect-ratio:1;place-items:center;margin:0 14px 0 0;isolation:isolate}.about-portrait:before,.about-portrait:after{position:absolute;top:3%;right:3%;bottom:3%;left:3%;border:1px solid rgb(159 226 120 / 48%);border-radius:50%;content:"";pointer-events:none}.about-portrait:before{top:-5%;right:-5%;bottom:-5%;left:-5%;border-style:dashed;border-color:#84e2cf85;animation:portrait-orbit 32s linear infinite}.about-portrait:after{top:-13%;right:-13%;bottom:-13%;left:-13%;border-color:#ffd27b40}.about-portrait-orbit{position:absolute;z-index:-1;top:-22%;right:-22%;bottom:-22%;left:-22%;border-radius:50%;background:radial-gradient(circle,rgb(132 226 207 / 19%),transparent 68%);filter:blur(7px);pointer-events:none}.about-portrait img{display:block;width:85%;height:85%;border:3px solid #d5f1ce;border-radius:50%;background:#192b34;box-shadow:0 16px 38px #03090e7a,0 0 0 7px #9fe2781f;object-fit:cover;object-position:center 38%}.about-portrait figcaption{position:absolute;right:-7%;bottom:3%;padding:7px 10px;border:1px solid rgb(159 226 120 / 48%);border-radius:999px;background:#102127;color:#e5f3d9;font-family:var(--font-code);font-size:.62rem;white-space:nowrap}@keyframes portrait-orbit{to{transform:rotate(1turn)}}@media(max-width:700px){.game-portfolio.is-game-mode .navbar-wrap{min-height:68px;padding-inline:10px}.game-portfolio.is-game-mode .navbar{min-height:68px}.game-portfolio.is-game-mode .section{scroll-margin-top:74px}.game-portfolio.is-game-mode.has-branch-roads .game-hero{height:min(48svh,430px);min-height:340px}.game-portfolio .section-head-layout{grid-template-columns:minmax(0,1fr);gap:20px}.game-portfolio .section-head-layout .section-head{max-width:none}.about-portrait{width:clamp(190px,55vw,230px);height:clamp(190px,55vw,230px);justify-self:center;margin:0 14px 8px}.game-portfolio.is-game-mode.has-branch-roads .world-stop-labels{display:block}.game-portfolio.is-game-mode .world-branch-label{max-width:min(132px,37vw);min-height:44px;gap:4px;padding:5px 7px;font-size:.53rem}.game-chapter-close{top:76px;right:12px;min-height:32px;font-size:.56rem}.project-details-heading{flex-direction:column}.project-details-grid{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.game-chapter-close,.journey-hud-controls button,.about-portrait:before{transition-duration:.01ms!important;animation:none!important}}.game-portfolio .footer-shell{gap:2rem;padding:clamp(1.5rem,3vw,2.5rem);border-color:#84e2cf52;border-radius:8px 22px 22px;background:radial-gradient(ellipse at 2% 0%,rgb(132 226 207 / .1),transparent 34%),linear-gradient(145deg,#142630,#0d1b25)}.game-portfolio .footer-grid{grid-template-columns:minmax(0,1.8fr) repeat(3,minmax(0,1fr));gap:clamp(1.25rem,3vw,3rem)}.game-portfolio .footer-brand-block,.game-portfolio .footer-column{min-width:0;gap:.9rem}.game-portfolio .footer-brand{display:flex;align-items:center;gap:.9rem}.game-portfolio .footer-brand-mark{position:relative;display:grid;width:3rem;height:3rem;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid rgb(132 226 207 / .34);border-radius:7px 14px 14px;background:#19333a;color:#d7fff4;font-family:var(--font-code);font-size:.8rem;font-weight:700}.game-portfolio .footer-brand-mark>span:last-child{position:relative}.game-portfolio .footer-logo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:.3rem;object-fit:contain;background:#19333a}:root[data-theme=dark] .game-portfolio .footer-logo{display:block}.game-portfolio .experience-logo{position:relative;display:grid;width:3rem;height:3rem;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid rgb(var(--region-rgb) / .3);border-radius:8px 14px 14px;background:#eaf3ef;color:#172a32;font-family:var(--font-code);font-size:.68rem;font-weight:700}.game-portfolio .experience-logo .logo-mark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:inherit}.game-portfolio .footer-brand .eyebrow{width:fit-content;margin:0 0 .25rem;padding:0;border:0;background:transparent;color:var(--game-mint);font-size:.56rem}.game-portfolio .footer-title{font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.15}.game-portfolio .footer-copy{max-width:48ch;margin:0;color:#c6d3cf;line-height:1.6}.game-portfolio .footer-status{max-width:100%;width:fit-content;border-radius:6px 12px 12px;font-size:.82rem;line-height:1.4}.game-portfolio .footer-heading{margin:0;color:#f7f5eb;font-family:var(--font-display);font-size:1.02rem}.game-portfolio .footer-link-list,.game-portfolio .footer-contact-list{gap:.8rem}.game-portfolio .footer-text-link,.game-portfolio .footer-contact-item{min-width:0;color:#c6d3cf;line-height:1.45;overflow-wrap:anywhere}.game-portfolio .footer-text-link:hover,.game-portfolio .footer-contact-item:hover{color:var(--game-mint)}.game-portfolio .footer-bottom{justify-content:flex-start;padding-top:1.15rem;border-color:#84e2cf33}.game-portfolio .footer-bottom .footer-copy{flex:0 1 auto}.game-portfolio.is-game-mode .experience-number{position:absolute;top:1.25rem;right:1.25rem;z-index:1;display:grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid rgb(132 226 207 / .36);border-radius:50%;background:#132830;box-shadow:0 4px 14px #03080d42;color:var(--game-mint);font-family:var(--font-code);font-size:.66rem;font-weight:700;line-height:1}@media(min-width:1024px){.game-portfolio.is-game-mode .game-hero{height:100svh;min-height:100svh}}@media(max-width:1023px){.game-portfolio.is-game-mode .game-hero{min-height:100svh}.game-portfolio.is-game-mode.has-branch-roads .game-hero{height:100svh;min-height:100svh}.game-portfolio.is-game-mode.has-branch-roads .game-world{height:100%}.game-portfolio .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 1.25rem}.game-portfolio .footer-brand-block{grid-column:1 / -1}}@media(max-width:420px){.game-portfolio .footer-shell{padding:1.25rem}.game-portfolio .footer-status{font-size:.75rem}.game-portfolio .experience-number{top:1rem;right:1rem}}.game-portfolio .section .project-infographic{display:grid;min-height:250px;grid-template-columns:minmax(0,1fr) minmax(132px,.62fr);align-items:center;gap:clamp(10px,2vw,22px);padding:clamp(12px,2vw,22px);border:1px solid rgb(var(--region-rgb, 83 163 139) / .42);border-radius:12px;background:radial-gradient(ellipse at 18% 82%,rgb(var(--region-rgb, 83 163 139) / .14),transparent 40%),linear-gradient(145deg,#10232d,#142d38 58%,#0d1b25);color:#eff8f1;text-align:left}.game-portfolio .project-infographic-stage{display:grid;min-width:0;min-height:190px;place-items:center;overflow:hidden}.project-infographic-art{display:block;width:min(100%,440px);height:auto;overflow:visible}.legal-graph-art{width:min(100%,310px)}.game-portfolio .project-infographic-copy{display:grid;align-content:center;justify-items:start;gap:9px;min-width:0}.game-portfolio .infographic-copy-kicker,.game-portfolio .infographic-eyebrow,.game-portfolio .infographic-small-label{color:#c3d6cc;font-family:var(--font-code);font-size:.58rem;letter-spacing:.045em}.game-portfolio .section .project-infographic-copy .infographic-copy-kicker{color:var(--region-accent, var(--game-gold));font-size:.54rem;letter-spacing:.1em}.game-portfolio .project-infographic-copy strong{color:var(--game-white);font-family:var(--font-display);font-size:clamp(1.05rem,1.8vw,1.6rem);line-height:1.05}.game-portfolio .project-infographic-copy>span:last-child{color:#d3e2dc;font-size:.76rem;line-height:1.45}.project-infographic-art text{fill:#e7f2eb;font-family:var(--font-code);font-size:8px}.project-infographic-art .infographic-flow-line{fill:none;stroke:var(--region-accent, #84e2cf);stroke-dasharray:4 8;stroke-width:1.5}.project-infographic-art .infographic-core{fill:#1a3640;stroke:var(--region-accent, #84e2cf);stroke-width:1.5}.project-infographic-art .infographic-core-label{fill:var(--game-gold);font-size:9px;font-weight:700}.project-infographic-art .infographic-core-caption,.project-infographic-art .infographic-small-label{fill:#c5d8d1;font-size:7px}.infographic-graph-node circle{fill:#152c36;stroke:rgb(var(--region-rgb, 83 163 139) / .8);stroke-width:1.5;transform-box:fill-box;transform-origin:center}.infographic-window{fill:#10232d;stroke:rgb(var(--region-rgb, 83 163 139) / .48);stroke-width:1.5}.infographic-window-line{stroke:rgb(var(--region-rgb, 83 163 139) / .32)}.infographic-window-dot{fill:var(--region-accent, #84e2cf)}.infographic-eyebrow{fill:var(--region-accent, #84e2cf)!important;font-size:7px!important;letter-spacing:.08em}.infographic-course,.infographic-assistant,.infographic-practice,.infographic-equipment-card rect{fill:#19333c;stroke:rgb(var(--region-rgb, 83 163 139) / .35)}.infographic-course-cover{fill:rgb(var(--region-rgb, 83 163 139) / .28)}.infographic-course-symbol{fill:var(--game-gold)}.infographic-progress-track{stroke:#39514f;stroke-linecap:round;stroke-width:4}.infographic-progress-fill{stroke:var(--region-accent, #84e2cf);stroke-linecap:round;stroke-width:4}.infographic-assistant-orb{fill:var(--game-gold)}.infographic-wave{fill:none;stroke:var(--region-accent, #84e2cf);stroke-linecap:round;stroke-width:1.5}.infographic-search{fill:#192f38;stroke:rgb(var(--region-rgb, 83 163 139) / .45)}.infographic-search-icon,.infographic-search-handle,.infographic-equipment-icon,.infographic-solar-panel,.infographic-assistant-mark{fill:none;stroke:var(--region-accent, #84e2cf);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.infographic-equipment-card rect{fill:#19333c}.infographic-equipment-card:nth-of-type(3) rect{fill:#1c3940}.infographic-equipment-label{font-size:7px!important}.project-infographic-stack{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;width:min(100%,360px)}.infographic-stack-node{display:inline-flex;min-height:36px;align-items:center;padding:0 12px;border:1px solid rgb(var(--region-rgb, 83 163 139) / .5);border-radius:7px;background:#19333c;color:#e8f4ec;font-family:var(--font-code);font-size:.68rem}.project-infographic-stage[data-motion-active=true] .infographic-flow-line{animation:infographic-flow 12s linear infinite}.project-infographic-stage[data-motion-active=true] .infographic-graph-node circle,.project-infographic-stage[data-motion-active=true] .infographic-assistant-orb{animation:infographic-pulse 3.8s ease-in-out infinite alternate}.project-infographic-stage[data-motion-active=true] .infographic-graph-node:nth-of-type(3) circle{animation-delay:-1.2s}.project-infographic-stage[data-motion-active=true] .infographic-graph-node:nth-of-type(4) circle{animation-delay:-2.4s}.project-infographic-stage[data-motion-active=true] .infographic-wave{stroke-dasharray:4 5;animation:infographic-flow 8s linear infinite}@keyframes infographic-flow{to{stroke-dashoffset:-120}}@keyframes infographic-pulse{to{transform:scale(1.12)}}@media(max-width:700px){.game-portfolio .project-infographic{grid-template-columns:minmax(0,1fr);gap:0}.game-portfolio .project-infographic-stage{min-height:150px}.game-portfolio .project-infographic-copy{grid-template-columns:auto 1fr;column-gap:10px;padding-top:10px;border-top:1px solid rgb(var(--region-rgb, 83 163 139) / .28)}.game-portfolio .infographic-copy-kicker{grid-column:1 / -1}.game-portfolio .project-infographic-copy>span:last-child{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.project-infographic-stage[data-motion-active=true] *,.project-infographic-stage[data-motion-active=true] *:before,.project-infographic-stage[data-motion-active=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.section-chapter-visual{position:relative;display:grid;width:100%;min-height:260px;place-items:center;overflow:hidden;color:var(--region-accent, #84e2cf);isolation:isolate}.section-chapter-visual:before,.section-chapter-visual:after{position:absolute;z-index:-1;border:1px solid rgb(var(--region-rgb, 83 163 139) / .18);border-radius:50%;content:"";pointer-events:none}.section-chapter-visual:before{width:min(76%,290px);aspect-ratio:1}.section-chapter-visual:after{width:min(58%,220px);aspect-ratio:1;border-style:dashed;opacity:.65}.section-chapter-visual svg{display:block;width:min(100%,430px);max-height:260px;overflow:visible;filter:drop-shadow(0 14px 26px rgb(3 12 19 / .35))}.section-chapter-visual svg path,.section-chapter-visual svg ellipse{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.chapter-visual-orbit{stroke:rgb(var(--region-rgb, 83 163 139) / .55)!important;stroke-dasharray:3 9}.chapter-visual-orbit-tilted{transform:rotate(-32deg);transform-origin:202px 120px;stroke-dasharray:1 11}.chapter-visual-route{stroke:rgb(var(--region-rgb, 83 163 139) / .72)!important;stroke-dasharray:4 8}.chapter-visual-route-dash{stroke-dasharray:5 10;stroke-width:2.5!important}.chapter-visual-node,.chapter-visual-core,.chapter-visual-stop circle,.chapter-visual-portal{fill:rgb(var(--region-rgb, 83 163 139) / .16);stroke:currentColor;stroke-width:1.5}.chapter-visual-core{fill:var(--game-gold);stroke:#ffe8ad}.chapter-visual-stop-core{fill:var(--game-gold);stroke:#fff0c8}.chapter-visual-book{fill:rgb(var(--region-rgb, 83 163 139) / .1)!important;stroke-width:2!important}.chapter-visual-cap{fill:rgb(var(--region-rgb, 83 163 139) / .12)!important;stroke:var(--game-gold)!important;stroke-width:2!important}.chapter-visual-portal{fill:rgb(var(--region-rgb, 83 163 139) / .08);stroke-width:3}.chapter-visual-envelope{fill:#10232d!important;stroke:var(--game-gold)!important;stroke-width:2!important}.chapter-visual-summary .chapter-visual-orbit{animation:chapter-orbit 36s linear infinite}.chapter-visual-experience .chapter-visual-route{animation:infographic-flow 10s linear infinite}.chapter-visual-experience .chapter-visual-stop{animation:infographic-pulse 3.6s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.chapter-visual-experience .chapter-visual-stop-2{animation-delay:-1.2s}.chapter-visual-experience .chapter-visual-stop-3{animation-delay:-2.4s}.chapter-visual-education .chapter-visual-cap{animation:chapter-float 4s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.chapter-visual-projects .chapter-visual-node{animation:infographic-pulse 3.4s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.chapter-visual-projects .chapter-visual-node:nth-of-type(2n){animation-delay:-1.7s}.chapter-visual-skills .chapter-visual-node{animation:infographic-pulse 4s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.chapter-visual-skills .chapter-visual-node:nth-of-type(odd){animation-delay:-2s}.chapter-visual-contact .chapter-visual-portal{animation:chapter-portal 3.8s ease-in-out infinite alternate;transform-origin:center}@keyframes chapter-orbit{to{transform:rotate(328deg)}}@keyframes chapter-float{to{transform:translateY(-5px)}}@keyframes chapter-portal{to{opacity:.52}}@media(max-width:900px){.section-chapter-visual{min-height:210px}.section-chapter-visual svg{max-height:220px}}@media(max-width:700px){.section-chapter-visual{min-height:150px;max-height:170px}.section-chapter-visual svg{width:min(100%,300px);max-height:165px}.section-chapter-visual:before{width:min(56%,170px)}.section-chapter-visual:after{width:min(43%,130px)}}@media(prefers-reduced-motion:reduce){.section-chapter-visual *,.section-chapter-visual *:before,.section-chapter-visual *:after{animation:none!important}}
